diff --git a/core/lib/Drupal/Core/Entity/Entity.php b/core/lib/Drupal/Core/Entity/Entity.php
index ec05c1a..642612c 100644
--- a/core/lib/Drupal/Core/Entity/Entity.php
+++ b/core/lib/Drupal/Core/Entity/Entity.php
@@ -284,6 +284,13 @@ public function access($operation = 'view', AccountInterface $account = NULL) {
   }
 
   /**
+   * {@inheritdoc}
+   */
+  public function getLangcode() {
+    return $this->langcode;
+  }
+
+  /**
    * Implements \Drupal\Core\TypedData\TranslatableInterface::language().
    */
   public function language() {
diff --git a/core/lib/Drupal/Core/Entity/EntityBCDecorator.php b/core/lib/Drupal/Core/Entity/EntityBCDecorator.php
index a3ffcb9..fc90a9f 100644
--- a/core/lib/Drupal/Core/Entity/EntityBCDecorator.php
+++ b/core/lib/Drupal/Core/Entity/EntityBCDecorator.php
@@ -411,6 +411,13 @@ public function isDefaultRevision($new_value = NULL) {
   /**
    * Forwards the call to the decorated entity.
    */
+  public function getLangcode() {
+    return $this->decorated->getLangcode();
+  }
+
+  /**
+   * Forwards the call to the decorated entity.
+   */
   public function language() {
     return $this->decorated->language();
   }
diff --git a/core/lib/Drupal/Core/TypedData/TranslatableInterface.php b/core/lib/Drupal/Core/TypedData/TranslatableInterface.php
index 0d5332b..77af339 100644
--- a/core/lib/Drupal/Core/TypedData/TranslatableInterface.php
+++ b/core/lib/Drupal/Core/TypedData/TranslatableInterface.php
@@ -13,6 +13,14 @@
 interface TranslatableInterface {
 
   /**
+   * Returns the default langcode.
+   *
+   * @return string
+   *   The langcode string.
+   */
+  public function getLangcode();
+
+  /**
    * Returns the default language.
    *
    * @return \Drupal\Core\Language\Language
diff --git a/core/modules/menu/lib/Drupal/menu/MenuFormController.php b/core/modules/menu/lib/Drupal/menu/MenuFormController.php
index a709d2e..182d51c 100644
--- a/core/modules/menu/lib/Drupal/menu/MenuFormController.php
+++ b/core/modules/menu/lib/Drupal/menu/MenuFormController.php
@@ -18,6 +18,13 @@
 class MenuFormController extends EntityFormController implements EntityControllerInterface {
 
   /**
+   * The entity being used by this form.
+   *
+   * @var \Drupal\system\MenuInterface
+   */
+  protected $entity;
+
+  /**
    * Overrides Drupal\Core\Entity\EntityFormController::form().
    */
   public function form(array $form, array &$form_state) {
@@ -51,14 +58,14 @@ public function form(array $form, array &$form_state) {
       '#type' => 'textfield',
       '#title' => t('Administrative summary'),
       '#maxlength' => 512,
-      '#default_value' => $menu->description,
+      '#default_value' => $menu->getDescription(),
     );
 
     $form['langcode'] = array(
       '#type' => 'language_select',
       '#title' => t('Menu language'),
       '#languages' => Language::STATE_ALL,
-      '#default_value' => $menu->langcode,
+      '#default_value' => $menu->getLangcode(),
     );
     // Unlike the menu langcode, the default language configuration for menu
     // links only works with language module installed.
diff --git a/core/modules/system/lib/Drupal/system/MenuInterface.php b/core/modules/system/lib/Drupal/system/MenuInterface.php
index 11eca2c..ef916d2 100644
--- a/core/modules/system/lib/Drupal/system/MenuInterface.php
+++ b/core/modules/system/lib/Drupal/system/MenuInterface.php
@@ -14,4 +14,11 @@
  */
 interface MenuInterface extends ConfigEntityInterface {
 
+  /**
+   * Returns the description of the menu.
+   *
+   * @return string
+   */
+  public function getDescription();
+
 }
diff --git a/core/modules/system/lib/Drupal/system/Plugin/Core/Entity/Menu.php b/core/modules/system/lib/Drupal/system/Plugin/Core/Entity/Menu.php
index f12e2a6..0d36668 100644
--- a/core/modules/system/lib/Drupal/system/Plugin/Core/Entity/Menu.php
+++ b/core/modules/system/lib/Drupal/system/Plugin/Core/Entity/Menu.php
@@ -60,4 +60,11 @@ class Menu extends ConfigEntityBase implements MenuInterface {
    */
   public $description;
 
+  /**
+   * {@inheritdoc}
+   */
+  public function getDescription() {
+    return $this->description;
+  }
+
 }
diff --git a/core/modules/views_ui/lib/Drupal/views_ui/ViewUI.php b/core/modules/views_ui/lib/Drupal/views_ui/ViewUI.php
index 78bbeca..017e48b 100644
--- a/core/modules/views_ui/lib/Drupal/views_ui/ViewUI.php
+++ b/core/modules/views_ui/lib/Drupal/views_ui/ViewUI.php
@@ -934,6 +934,13 @@ public function getTranslationLanguages($include_default = TRUE) {
   }
 
   /**
+   * {@inheritdoc}
+   */
+  public function getLangcode() {
+    return $this->storage->getLangcode();
+  }
+
+  /**
    * Implements \Drupal\Core\TypedData\TranslatableInterface::language)().
    */
   public function language() {
