From 8fd8d393c64718de5f1e090fcdf7e98a28fffda5 Mon Sep 17 00:00:00 2001 From: Tim Plunkett <git@plnktt.com> Date: Sun, 26 Aug 2012 13:46:40 +0200 Subject: [PATCH] Issue #1756968 by tim.plunkett, dawehner: Remove the ability for a display plugin to prevent its own deletion. --- includes/admin.inc | 22 +++++++++---------- .../Plugin/views/display/DefaultDisplay.php | 1 - 2 files changed, 10 insertions(+), 13 deletions(-) diff --git a/includes/admin.inc b/includes/admin.inc index c1181880bf2f..010c68896520 100644 --- a/includes/admin.inc +++ b/includes/admin.inc @@ -1547,13 +1547,12 @@ function views_ui_get_display_tab_details($view, $display) { // the buttons in a .ctools-dropbutton class if more than one is present. Otherwise, we'll just wrap the // actions in the .ctools-button class. $is_display_deleted = !empty($display->deleted); - $is_deletable = empty($plugin['no remove']); // The master display cannot be cloned. $is_default = $display->id == 'default'; // @todo: Figure out why get_option doesn't work here. $is_enabled = $display->handler->get_option('enabled'); - if (!$is_display_deleted && $is_deletable && !$is_default) { + if (!$is_display_deleted && !$is_default) { $prefix = '<div class="ctools-no-js ctools-button ctools-dropbutton"><div class="ctools-link"><a href="#" class="ctools-twisty ctools-text">open</a></div><div class="ctools-content"><ul class="horizontal right actions">'; $suffix = '</ul></div></div>'; $item_element = 'li'; @@ -1610,16 +1609,15 @@ function views_ui_get_display_tab_details($view, $display) { "#suffix" => '</' . $item_element . '>', ); } - if ($is_deletable) { - $build['top']['actions']['delete'] = array( - '#type' => 'submit', - '#value' => t('delete @display_title', array('@display_title' => $display_title)), - '#limit_validation_errors' => array(), - '#submit' => array('views_ui_edit_form_submit_delete_display', 'views_ui_edit_form_submit_delay_destination'), - '#prefix' => '<' . $item_element . ' class="delete">', - "#suffix" => '</' . $item_element . '>', - ); - } + // Always allow a display to be deleted. + $build['top']['actions']['delete'] = array( + '#type' => 'submit', + '#value' => t('delete @display_title', array('@display_title' => $display_title)), + '#limit_validation_errors' => array(), + '#submit' => array('views_ui_edit_form_submit_delete_display', 'views_ui_edit_form_submit_delay_destination'), + '#prefix' => '<' . $item_element . ' class="delete">', + "#suffix" => '</' . $item_element . '>', + ); if ($is_enabled) { $build['top']['actions']['disable'] = array( '#type' => 'submit', diff --git a/lib/Drupal/views/Plugin/views/display/DefaultDisplay.php b/lib/Drupal/views/Plugin/views/display/DefaultDisplay.php index 012e3404cec1..260a2ac16517 100644 --- a/lib/Drupal/views/Plugin/views/display/DefaultDisplay.php +++ b/lib/Drupal/views/Plugin/views/display/DefaultDisplay.php @@ -21,7 +21,6 @@ * help = @Translation("Default settings for this view."), * theme = "views_view", * no_ui = TRUE, - * no_remove = TRUE, * use_pager = TRUE, * use_more = TRUE, * accept_attachments = TRUE, -- GitLab