diff --git a/core/modules/views/src/Tests/Plugin/PagerTest.php b/core/modules/views/src/Tests/Plugin/PagerTest.php index 46e75bc..3f27302 100644 --- a/core/modules/views/src/Tests/Plugin/PagerTest.php +++ b/core/modules/views/src/Tests/Plugin/PagerTest.php @@ -36,6 +36,9 @@ class PagerTest extends PluginTestBase { * @see http://drupal.org/node/652712 */ public function testStorePagerSettings() { + // Show the master display so the override selection is shown. + \Drupal::configFactory()->getEditable('views.settings')->set('ui.show.master_display', TRUE)->save(); + $admin_user = $this->drupalCreateUser(array('administer views', 'administer site configuration')); $this->drupalLogin($admin_user); // Test behavior described in http://drupal.org/node/652712#comment-2354918. @@ -92,7 +95,7 @@ public function testStorePagerSettings() { $edit = array( 'pager[type]' => 'mini', ); - $this->drupalPostForm('admin/structure/views/nojs/display/test_store_pager_settings/page_1/pager', $edit, t('Apply')); + $this->drupalPostForm('admin/structure/views/nojs/display/test_store_pager_settings/default/pager', $edit, t('Apply')); $this->drupalGet('admin/structure/views/view/test_store_pager_settings/edit'); $this->assertText('Mini', 'Changed pager plugin, should change some text'); diff --git a/core/modules/views_ui/admin.inc b/core/modules/views_ui/admin.inc index 7ee7df4..fa115ec 100644 --- a/core/modules/views_ui/admin.inc +++ b/core/modules/views_ui/admin.inc @@ -284,7 +284,11 @@ function views_ui_standard_display_dropdown(&$form, FormStateInterface $form_sta $form['progress']['#weight'] = -1001; } - if ($current_display->isDefaultDisplay()) { + // The dropdown should not be added when : + // - this is the default display. + // - there is no master shown and just one additional display (mostly page) + // and the current display is defaulted. + if ($current_display->isDefaultDisplay() || ($current_display->isDefaulted($section) && !\Drupal::config('views.settings')->get('ui.show.master_display') && count($displays) <= 2)) { return; } @@ -312,6 +316,7 @@ function views_ui_standard_display_dropdown(&$form, FormStateInterface $form_sta '#title' => t('For'), // @TODO: Translators may need more context than this. '#options' => $display_dropdown, ); + if ($current_display->isDefaulted($section)) { $form['override']['dropdown']['#default_value'] = 'defaults'; }