@recaptime-dev's working patches + fork for Phorge, a community fork of Phabricator. (Upstream dev and stable branches are at upstream/main and upstream/stable respectively.) hq.recaptime.dev/wiki/Phorge
phorge phabricator
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

Merge "Table of Contents", "Local Commits", "Update History" and "Similar Revisions"

Summary: Ref T10628. Turn these into tabs in a single box, since "local commits" and "similar revisions" are of particularly rare use.

Test Plan: {F1707196}

Reviewers: chad

Reviewed By: chad

Maniphest Tasks: T10628

Differential Revision: https://secure.phabricator.com/D16209

+61 -22
+2 -2
src/applications/differential/controller/DifferentialController.php
··· 28 28 $viewer = $this->getViewer(); 29 29 30 30 $toc_view = id(new PHUIDiffTableOfContentsListView()) 31 - ->setUser($viewer) 32 - ->setBackground(PHUIObjectBoxView::BLUE_PROPERTY); 31 + ->setViewer($viewer) 32 + ->setBare(true); 33 33 34 34 $have_owners = PhabricatorApplication::isClassInstalledForViewer( 35 35 'PhabricatorOwnersApplication',
+43 -12
src/applications/differential/controller/DifferentialRevisionViewController.php
··· 292 292 '/differential/comment/inline/edit/'.$revision->getID().'/'); 293 293 } 294 294 295 - $diff_history = id(new DifferentialRevisionUpdateHistoryView()) 295 + $history = id(new DifferentialRevisionUpdateHistoryView()) 296 296 ->setUser($viewer) 297 297 ->setDiffs($diffs) 298 298 ->setSelectedVersusDiffID($diff_vs) ··· 300 300 ->setSelectedWhitespace($whitespace) 301 301 ->setCommitsForLinks($commits_for_links); 302 302 303 - $local_view = id(new DifferentialLocalCommitsView()) 303 + $local_table = id(new DifferentialLocalCommitsView()) 304 304 ->setUser($viewer) 305 305 ->setLocalCommits(idx($props, 'local:commits')) 306 306 ->setCommitsForLinks($commits_for_links); ··· 324 324 $visible_changesets, 325 325 $target->loadCoverageMap($viewer)); 326 326 327 + $tab_group = id(new PHUITabGroupView()) 328 + ->addTab( 329 + id(new PHUITabView()) 330 + ->setName(pht('Files')) 331 + ->setKey('files') 332 + ->appendChild($toc_view)) 333 + ->addTab( 334 + id(new PHUITabView()) 335 + ->setName(pht('History')) 336 + ->setKey('history') 337 + ->appendChild($history)) 338 + ->addTab( 339 + id(new PHUITabView()) 340 + ->setName(pht('Commits')) 341 + ->setKey('commits') 342 + ->appendChild($local_table)); 343 + 344 + if ($other_view) { 345 + $tab_group->addTab( 346 + id(new PHUITabView()) 347 + ->setName(pht('Similar')) 348 + ->setKey('similar') 349 + ->appendChild($other_view)); 350 + } 351 + 352 + $tab_view = id(new PHUIObjectBoxView()) 353 + ->setHeaderText(pht('Revision Contents')) 354 + ->setBackground(PHUIObjectBoxView::BLUE_PROPERTY) 355 + ->addTabGroup($tab_group); 356 + 327 357 $comment_form = null; 328 358 if (!$viewer_is_anonymous) { 329 359 $comment_form = $this->buildCommentForm($revision, $field_list); ··· 348 378 'The content of this revision is hidden until the author has '. 349 379 'signed all of the required legal agreements.')); 350 380 } else { 351 - $footer[] = 352 - array( 353 - $diff_history, 354 - $warning, 355 - $local_view, 356 - $toc_view, 357 - $other_view, 358 - $changeset_view, 359 - ); 381 + $anchor = id(new PhabricatorAnchorView()) 382 + ->setAnchorName('toc') 383 + ->setNavigationMarker(true); 384 + 385 + $footer[] = array( 386 + $anchor, 387 + $warning, 388 + $tab_view, 389 + $changeset_view, 390 + ); 360 391 } 361 392 362 393 if ($comment_form) { ··· 870 901 ->setHeader(pht('Recent Similar Revisions')); 871 902 872 903 $view = id(new DifferentialRevisionListView()) 873 - ->setHeader($header) 874 904 ->setRevisions($revisions) 875 905 ->setBackground(PHUIObjectBoxView::BLUE_PROPERTY) 906 + ->setNoBox(true) 876 907 ->setUser($viewer); 877 908 878 909 $phids = $view->getRequiredHandlePHIDs();
+1 -4
src/applications/differential/view/DifferentialLocalCommitsView.php
··· 125 125 $headers[] = pht('Date'); 126 126 $table->setHeaders($headers); 127 127 128 - return id(new PHUIObjectBoxView()) 129 - ->setHeaderText(pht('Local Commits')) 130 - ->setBackground(PHUIObjectBoxView::BLUE_PROPERTY) 131 - ->setTable($table); 128 + return $table; 132 129 } 133 130 134 131 private static function formatCommit($commit) {
+1 -4
src/applications/differential/view/DifferentialRevisionUpdateHistoryView.php
··· 303 303 $show_diff, 304 304 )); 305 305 306 - return id(new PHUIObjectBoxView()) 307 - ->setHeaderText(pht('Revision Update History')) 308 - ->setBackground(PHUIObjectBoxView::BLUE_PROPERTY) 309 - ->setTable($content); 306 + return $content; 310 307 } 311 308 312 309 const STAR_NONE = 'none';
+14
src/infrastructure/diff/view/PHUIDiffTableOfContentsListView.php
··· 7 7 private $header; 8 8 private $infoView; 9 9 private $background; 10 + private $bare; 10 11 11 12 public function addItem(PHUIDiffTableOfContentsItemView $item) { 12 13 $this->items[] = $item; ··· 36 37 public function setInfoView(PHUIInfoView $infoview) { 37 38 $this->infoView = $infoview; 38 39 return $this; 40 + } 41 + 42 + public function setBare($bare) { 43 + $this->bare = $bare; 44 + return $this; 45 + } 46 + 47 + public function getBare() { 48 + return $this->bare; 39 49 } 40 50 41 51 public function render() { ··· 159 169 $anchor = id(new PhabricatorAnchorView()) 160 170 ->setAnchorName('toc') 161 171 ->setNavigationMarker(true); 172 + 173 + if ($this->bare) { 174 + return $table; 175 + } 162 176 163 177 $header = id(new PHUIHeaderView()) 164 178 ->setHeader(pht('Table of Contents'));