diff --git a/src/applications/dashboard/engine/PhabricatorDashboardPanelRenderingEngine.php b/src/applications/dashboard/engine/PhabricatorDashboardPanelRenderingEngine.php --- a/src/applications/dashboard/engine/PhabricatorDashboardPanelRenderingEngine.php +++ b/src/applications/dashboard/engine/PhabricatorDashboardPanelRenderingEngine.php @@ -275,8 +275,11 @@ $header = null; break; case self::HEADER_MODE_EDIT: + // In edit mode, include the panel monogram to make managing boards + // a little easier. + $header_text = pht('%s %s', $panel->getMonogram(), $panel->getName()); $header = id(new PHUIHeaderView()) - ->setHeader($panel->getName()); + ->setHeader($header_text); $header = $this->addPanelHeaderActions($header); break; case self::HEADER_MODE_NORMAL: @@ -316,6 +319,11 @@ ->setIcon('fa-pencil') ->setName(pht('Edit Panel')) ->setHref((string)$edit_uri); + + $actions[] = id(new PhabricatorActionView()) + ->setIcon('fa-window-maximize') + ->setName(pht('View Panel Details')) + ->setHref($panel->getURI()); } if ($dashboard_id) { diff --git a/src/applications/dashboard/engine/PhabricatorDashboardRenderingEngine.php b/src/applications/dashboard/engine/PhabricatorDashboardRenderingEngine.php --- a/src/applications/dashboard/engine/PhabricatorDashboardRenderingEngine.php +++ b/src/applications/dashboard/engine/PhabricatorDashboardRenderingEngine.php @@ -11,11 +11,19 @@ return $this; } + public function getViewer() { + return $this->viewer; + } + public function setDashboard(PhabricatorDashboard $dashboard) { $this->dashboard = $dashboard; return $this; } + public function getDashboard() { + return $this->dashboard; + } + public function setArrangeMode($mode) { $this->arrangeMode = $mode; return $this; @@ -26,6 +34,8 @@ $dashboard = $this->dashboard; $viewer = $this->viewer; + $is_editable = $this->arrangeMode; + $layout_config = $dashboard->getLayoutConfigObject(); $panel_grid_locations = $layout_config->getPanelLocations(); $panels = mpull($dashboard->getPanels(), null, 'getPHID'); @@ -35,7 +45,7 @@ ->setFluidLayout(true) ->setGutter(AphrontMultiColumnView::GUTTER_LARGE); - if ($this->arrangeMode) { + if ($is_editable) { $h_mode = PhabricatorDashboardPanelRenderingEngine::HEADER_MODE_EDIT; } else { $h_mode = PhabricatorDashboardPanelRenderingEngine::HEADER_MODE_NORMAL; @@ -77,8 +87,8 @@ } $column_class = $layout_config->getColumnClass( $column, - $this->arrangeMode); - if ($this->arrangeMode) { + $is_editable); + if ($is_editable) { $column_result[] = $this->renderAddPanelPlaceHolder($column); $column_result[] = $this->renderAddPanelUI($column); } @@ -89,7 +99,7 @@ $metadata = array('columnID' => $column)); } - if ($this->arrangeMode) { + if ($is_editable) { Javelin::initBehavior( 'dashboard-move-panels', array( @@ -100,7 +110,10 @@ $view = id(new PHUIBoxView()) ->addClass('dashboard-view') - ->appendChild($result); + ->appendChild( + array( + $result, + )); return $view; }