diff --git a/core/modules/views/views_ui/lib/Drupal/views_ui/ViewEditFormController.php b/core/modules/views/views_ui/lib/Drupal/views_ui/ViewEditFormController.php
index 853d5c9..03692fd 100644
--- a/core/modules/views/views_ui/lib/Drupal/views_ui/ViewEditFormController.php
+++ b/core/modules/views/views_ui/lib/Drupal/views_ui/ViewEditFormController.php
@@ -375,12 +375,12 @@ public function getDisplayDetails($view, $display) {
'#submit' => array(array($this, 'submitDisplayEnable'), array($this, 'submitDelayDestination')),
'#prefix' => '
',
"#suffix" => '',
- );
+ );
}
- // Add a link to view the page.
- elseif ($view->get('executable')->displayHandlers[$display['id']]->hasPath()) {
+ // Add a link to view the page unless the view is disabled or not saved yet.
+ elseif ($view->get('storage')->isEnabled() && !$view->get('storage')->isNew() && $view->get('executable')->displayHandlers[$display['id']]->hasPath()) {
$path = $view->get('executable')->displayHandlers[$display['id']]->getPath();
- if (strpos($path, '%') === FALSE) {
+ if ($path && (strpos($path, '%') === FALSE)) {
$build['top']['actions']['path'] = array(
'#type' => 'link',
'#title' => t('view @display', array('@display' => $display['display_title'])),
@@ -410,16 +410,6 @@ public function getDisplayDetails($view, $display) {
'#prefix' => '',
"#suffix" => '',
);
- if ($is_enabled) {
- $build['top']['actions']['disable'] = array(
- '#type' => 'submit',
- '#value' => t('disable @display_title', array('@display_title' => $display_title)),
- '#limit_validation_errors' => array(),
- '#submit' => array(array($this, 'submitDisplayDisable'), array($this, 'submitDelayDestination')),
- '#prefix' => '',
- "#suffix" => '',
- );
- }
}
else {
$build['top']['actions']['undo_delete'] = array(
@@ -431,6 +421,16 @@ public function getDisplayDetails($view, $display) {
"#suffix" => '',
);
}
+ if ($is_enabled) {
+ $build['top']['actions']['disable'] = array(
+ '#type' => 'submit',
+ '#value' => t('disable @display_title', array('@display_title' => $display_title)),
+ '#limit_validation_errors' => array(),
+ '#submit' => array(array($this, 'submitDisplayDisable'), array($this, 'submitDelayDestination')),
+ '#prefix' => '',
+ "#suffix" => '',
+ );
+ }
$build['top']['actions']['suffix']['#markup'] = '';
// The area above the three columns.