diff --git a/core/modules/node/lib/Drupal/node/Tests/NodeLanguageSelectorTest.php b/core/modules/node/lib/Drupal/node/Tests/NodeLanguageSelectorTest.php
new file mode 100644
index 0000000..5bae3ca
--- /dev/null
+++ b/core/modules/node/lib/Drupal/node/Tests/NodeLanguageSelectorTest.php
@@ -0,0 +1,58 @@
+<?php
+
+/**
+ * @file
+ * Definition of Drupal\node\Tests\NodeLanguageSelectorTest.
+ */
+
+namespace Drupal\node\Tests;
+
+/**
+ * Tests the node language selector.
+ */
+class NodeLanguageSelectorTest extends NodeTestBase {
+
+  /**
+   * Modules to enable.
+   *
+   * @var array
+   */
+  public static $modules = array('language');
+
+  protected $user;
+
+  public static function getInfo() {
+    return array(
+      'name' => 'Node Language Selector',
+      'description' => 'Test multilingual support for forms.',
+      'group' => 'Node',
+    );
+  }
+
+  public function setUp() {
+    parent::setUp();
+
+    // Add German.
+    $language = (object) array(
+      'langcode' => 'de',
+    );
+    language_save($language);
+
+    $this->user = $this->drupalCreateUser(array('create article content', 'create page content'));
+    $this->drupalLogin($this->user);
+  }
+
+  /**
+   * Test the interaction with node language selector.
+   */
+  public function testNodeLanguageSelector() {
+    // Node language selector is hidden.
+    $this->drupalGet('node/add/page');
+    $this->assertFalse($this->xpath('//select[@name="langcode"]'), 'Language selector is not available.');
+
+    // Node language selector is visible.
+    variable_set('node_type_language_hidden_page', FALSE);
+    $this->drupalGet('node/add/page');
+    $this->assertTrue($this->xpath('//select[@name="langcode"]'), 'Language selector is available.');
+  }
+}
diff --git a/core/modules/node/node.module b/core/modules/node/node.module
index 349aab5..03e566c 100644
--- a/core/modules/node/node.module
+++ b/core/modules/node/node.module
@@ -654,7 +654,9 @@ function node_field_extra_fields() {
 
     // Add also the 'language' select if Language module is enabled and the
     // bundle has multilingual support.
-    if ($module_language_enabled && variable_get('node_type_language_' . $bundle->type, 0)) {
+    // Visibility of the ordering of the language selector is the same as on the node/add form,
+    // i.e. node_type_language_hidden_TYPE variable
+    if ($module_language_enabled && !variable_get('node_type_language_hidden_' . $bundle->type, TRUE)) {
       $extra['node'][$bundle->type]['form']['language'] = array(
         'label' => t('Language'),
         'description' => $description,
