@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.

End Cap for Timeline

Summary: End-cap for timeline. Fixes T4438

Test Plan: Tested on a timeline with and without endcap.

Reviewers: epriestley

Reviewed By: epriestley

Subscribers: aran, epriestley, Korvin, chad, btrahan

Maniphest Tasks: T4438

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

+39 -4
+2 -2
resources/celerity/map.php
··· 148 148 'rsrc/css/phui/phui-status.css' => '2f562399', 149 149 'rsrc/css/phui/phui-tag-view.css' => '295d81c4', 150 150 'rsrc/css/phui/phui-text.css' => '23e9b4b7', 151 - 'rsrc/css/phui/phui-timeline-view.css' => 'd3ccba00', 151 + 'rsrc/css/phui/phui-timeline-view.css' => 'cd93f227', 152 152 'rsrc/css/phui/phui-workboard-view.css' => 'bf70dd2e', 153 153 'rsrc/css/phui/phui-workpanel-view.css' => '97b69459', 154 154 'rsrc/css/sprite-actions.css' => '969ad0e5', ··· 765 765 'phui-status-list-view-css' => '2f562399', 766 766 'phui-tag-view-css' => '295d81c4', 767 767 'phui-text-css' => '23e9b4b7', 768 - 'phui-timeline-view-css' => 'd3ccba00', 768 + 'phui-timeline-view-css' => 'cd93f227', 769 769 'phui-workboard-view-css' => 'bf70dd2e', 770 770 'phui-workpanel-view-css' => '97b69459', 771 771 'policy-css' => '957ea14c',
+1
src/applications/project/controller/PhabricatorProjectEditMainController.php
··· 55 55 $timeline = id(new PhabricatorApplicationTransactionView()) 56 56 ->setUser($viewer) 57 57 ->setObjectPHID($project->getPHID()) 58 + ->setShouldTerminate(true) 58 59 ->setTransactions($xactions); 59 60 60 61 return $this->buildApplicationPage(
+7
src/applications/transactions/view/PhabricatorApplicationTransactionView.php
··· 11 11 private $showEditActions = true; 12 12 private $isPreview; 13 13 private $objectPHID; 14 + private $shouldTerminate = false; 14 15 15 16 public function setObjectPHID($object_phid) { 16 17 $this->objectPHID = $object_phid; ··· 48 49 public function setTransactions(array $transactions) { 49 50 assert_instances_of($transactions, 'PhabricatorApplicationTransaction'); 50 51 $this->transactions = $transactions; 52 + return $this; 53 + } 54 + 55 + public function setShouldTerminate($term) { 56 + $this->shouldTerminate = $term; 51 57 return $this; 52 58 } 53 59 ··· 126 132 } 127 133 128 134 $view = new PHUITimelineView(); 135 + $view->setShouldTerminate($this->shouldTerminate); 129 136 $events = $this->buildEvents($with_hiding = true); 130 137 foreach ($events as $event) { 131 138 $view->addEvent($event);
+21
src/view/phui/PHUITimelineView.php
··· 4 4 5 5 private $events = array(); 6 6 private $id; 7 + private $shouldTerminate = false; 7 8 8 9 public function setID($id) { 9 10 $this->id = $id; 11 + return $this; 12 + } 13 + 14 + public function setShouldTerminate($term) { 15 + $this->shouldTerminate = $term; 10 16 return $this; 11 17 } 12 18 ··· 91 97 $events = array($spacer); 92 98 } 93 99 100 + if ($this->shouldTerminate) { 101 + $events[] = self::renderEnder(true); 102 + } 103 + 94 104 return phutil_tag( 95 105 'div', 96 106 array( ··· 109 119 ), 110 120 ''); 111 121 } 122 + 123 + public static function renderEnder() { 124 + return phutil_tag( 125 + 'div', 126 + array( 127 + 'class' => 'phui-timeline-event-view '. 128 + 'the-worlds-end', 129 + ), 130 + ''); 131 + } 132 + 112 133 }
+8 -2
webroot/rsrc/css/phui/phui-timeline-view.css
··· 34 34 35 35 .device-desktop .phui-timeline-spacer { 36 36 min-height: 16px; 37 - border-width: 0 0 0 1px; 37 + } 38 + 39 + .device-desktop .phui-timeline-event-view.the-worlds-end { 40 + background: {$lightblueborder}; 41 + width: 9px; 42 + height: 9px; 43 + border-radius: 2px; 44 + margin-left: 74px; 38 45 } 39 46 40 47 .device-desktop .phui-timeline-wedge { ··· 267 274 text-align: center; 268 275 padding: 12px; 269 276 color: {$darkgreytext}; 270 - margin-top: 16px; 271 277 }