Page MenuHomePhabricator

D18346.diff
No OneTemporary

D18346.diff

diff --git a/src/applications/project/controller/PhabricatorProjectBoardController.php b/src/applications/project/controller/PhabricatorProjectBoardController.php
--- a/src/applications/project/controller/PhabricatorProjectBoardController.php
+++ b/src/applications/project/controller/PhabricatorProjectBoardController.php
@@ -6,7 +6,8 @@
protected function getProfileMenu() {
$menu = parent::getProfileMenu();
- $menu->selectFilter(PhabricatorProject::ITEM_WORKBOARD);
+ $request = $this->getRequest();
+ $menu->selectFilter(PhabricatorProject::ITEM_WORKBOARD, null, $request);
$menu->addClass('project-board-nav');
return $menu;
diff --git a/src/view/layout/AphrontSideNavFilterView.php b/src/view/layout/AphrontSideNavFilterView.php
--- a/src/view/layout/AphrontSideNavFilterView.php
+++ b/src/view/layout/AphrontSideNavFilterView.php
@@ -156,11 +156,25 @@
return $this->baseURI;
}
- public function selectFilter($key, $default = null) {
+ public function selectFilter(
+ $key,
+ $default = null,
+ AphrontRequest $request = null) {
$this->selectedFilter = $default;
if ($this->menu->getItem($key) && strlen($key)) {
$this->selectedFilter = $key;
}
+
+ if ($request) {
+ $path = $request->getRequestURI()->getPath();
+ foreach ($this->menu->getItems() as $item) {
+ $is_link = ($item->getType() == PHUIListItemView::TYPE_LINK);
+ if ($is_link && $item->getHref() == $path) {
+ $this->selectedFilter = $item->getKey();
+ break;
+ }
+ }
+ }
return $this->selectedFilter;
}

File Metadata

Mime Type
text/plain
Expires
Mar 9 2025, 1:15 PM (5 w, 5 d ago)
Storage Engine
blob
Storage Format
Encrypted (AES-256-CBC)
Storage Handle
7388998
Default Alt Text
D18346.diff (1 KB)

Event Timeline