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

Always run "behavior-populate" before "behavior-show-more"

Summary:
Ref T2009. This clears the stage for D11977.

Specifically, D11977 moves "show context" logic into ChangesetViewManager, but those objects won't exist if we don't run "behavior-populate" first.

Generally, this increases consistency across changeset views -- which is still very low overall, but getting slightly better.

Both of these should probably move up more and use ChangesetListView, but we don't need to do that quite yet.

Test Plan:
- Took changeset actions in Phriction diff view.
- Took changeset actions in Differential standalone view.
- Took changeset actions in normal Differential view.

Reviewers: btrahan

Reviewed By: btrahan

Subscribers: epriestley

Maniphest Tasks: T2009

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

+23 -8
+11 -8
src/applications/differential/controller/DifferentialChangesetViewController.php
··· 162 162 $parser->setRenderer(new DifferentialChangesetOneUpRenderer()); 163 163 } 164 164 165 - 166 165 if ($left && $right) { 167 166 $parser->setOriginals($left, $right); 168 167 } ··· 229 228 ->setCoverage($coverage); 230 229 } 231 230 232 - Javelin::initBehavior('differential-show-more', array( 233 - 'uri' => '/differential/changeset/', 234 - 'whitespace' => $request->getStr('whitespace'), 235 - )); 236 - 237 - Javelin::initBehavior('differential-comment-jump', array()); 238 - 239 231 // TODO: [HTML] Clean up DifferentialChangesetParser output, but it's 240 232 // undergoing like six kinds of refactoring anyway. 241 233 $output = phutil_safe_html($output); ··· 245 237 ->setChangeset($changeset) 246 238 ->appendChild($output) 247 239 ->setVsChangesetID($left_source); 240 + 241 + Javelin::initBehavior('differential-populate', array( 242 + 'changesetViewIDs' => array($detail->getID()), 243 + )); 244 + 245 + Javelin::initBehavior('differential-show-more', array( 246 + 'uri' => '/differential/changeset/', 247 + 'whitespace' => $request->getStr('whitespace'), 248 + )); 249 + 250 + Javelin::initBehavior('differential-comment-jump', array()); 248 251 249 252 $panel = new DifferentialPrimaryPaneView(); 250 253 $panel->appendChild(
+12
src/applications/phriction/controller/PhrictionDiffController.php
··· 59 59 $engine = new PhabricatorDifferenceEngine(); 60 60 $changeset = $engine->generateChangesetFromFileContent($text_l, $text_r); 61 61 62 + $changeset->setFilename($content_r->getTitle()); 63 + 62 64 $changeset->setOldProperties( 63 65 array( 64 66 'Title' => $content_l->getTitle(), ··· 84 86 $spec = $request->getStr('range'); 85 87 list($range_s, $range_e, $mask) = 86 88 DifferentialChangesetParser::parseRangeSpecification($spec); 89 + 87 90 $output = $parser->render($range_s, $range_e, $mask); 88 91 89 92 if ($request->isAjax()) { ··· 91 94 ->setRenderedChangeset($output); 92 95 } 93 96 97 + $output = id(new DifferentialChangesetDetailView()) 98 + ->setUser($this->getViewer()) 99 + ->setChangeset($changeset) 100 + ->appendChild($output); 101 + 94 102 require_celerity_resource('differential-changeset-view-css'); 95 103 require_celerity_resource('syntax-highlighting-css'); 96 104 require_celerity_resource('phriction-document-css'); 105 + 106 + Javelin::initBehavior('differential-populate', array( 107 + 'changesetViewIDs' => array($output->getID()), 108 + )); 97 109 98 110 Javelin::initBehavior('differential-show-more', array( 99 111 'uri' => '/phriction/diff/'.$document->getID().'/',