Page MenuHomePhabricator

Add a Quicksand-aware page-level container to diffs
ClosedPublic

Authored by epriestley on May 8 2017, 4:01 PM.
Tags
None
Referenced Files
F15576019: D17840.diff
Tue, May 6, 8:00 AM
F15575559: D17840.id43043.diff
Tue, May 6, 5:29 AM
F15543985: D17840.id42918.diff
Sat, Apr 26, 2:03 AM
F15541082: D17840.id.diff
Fri, Apr 25, 10:38 AM
F15538211: D17840.diff
Thu, Apr 24, 6:07 PM
F15532027: D17840.id42917.diff
Wed, Apr 23, 2:14 PM
F15505460: D17840.id42917.diff
Tue, Apr 15, 3:09 AM
F15441341: D17840.id43043.diff
Mar 26 2025, 5:39 PM
Subscribers
None

Details

Summary

Ref T12616. Ref T8047. Ref T11093. We currently have several bugs where diff state sticks across Quicksand pages.

Add a new top-level object to handle this, with sleep() and wake() methods. In sleep(), future changes will remove/deacivate all the reticles/editors/etc.

See T12616 for high-level discussion of plans here.

This general idea is likely to become more formal eventually (e.g. for "sheets" or whatever we call them, in T10469) but I think this is probably a reasonable place to draw a line for now.

Test Plan
  • Added some logging to sleep(), wake() and construct().
  • Viewed changes in Differential.
  • With Quicksand on, browsed around; saw state change logs fire properly.

Diff Detail

Repository
rP Phabricator
Lint
Lint Not Applicable
Unit
Tests Not Applicable

Event Timeline

  • Slightly less debugging code.
  • Make the state change more robust to Quicksand and behaviors firing in any order.
chad added inline comments.
webroot/rsrc/js/application/diff/DiffChangesetList.js
8–26

spacing expected?

This revision is now accepted and ready to land.May 8 2017, 10:08 PM
This revision was automatically updated to reflect the committed changes.