Page MenuHomePhabricator

Make reloading workboards with "R" respect workboard ordering
ClosedPublic

Authored by epriestley on Jul 17 2019, 6:03 PM.

Details

Summary

Depends on D20653. Ref T4900. Pass ordering details to the reload endpoint so it can give the client accurate ordering/header information in the response.

The removed comment mentions this, but here's why this is a difficult mess:

  • In window A, view a board with "Group by: Owner" and no tasks owned by "Alice". Since "Alice" owns no tasks, this means the columns do not have an "Assigned to: Alice" header!
  • In window B, edit task T and assign it to Alice.
  • In window A, press "R".

Window A now not only needs to update to properly reflect the state of task T, it actually needs to draw a new "Assigned to: Alice" header in every column.

Fortunately, the "group by" code anticipates this being a big mess, is fairly careful about handling it, and the client can handle this state change and the actual code change here isn't too involved. This is just causing a lot of not-very-obvious indirect effects in the pipeline to handle these situations that need complex redraws.

Test Plan
  • After making various normal edits/creates/moves in window A, pressed "R" in window B. Saw ordering reflected correctly after sync.
  • Went through the whole "Group by: Owner" + assign to unrepresented owner flow above. After pressing "R", saw "Assigned to: Alice" appear on the board.

Diff Detail

Repository
rP Phabricator
Lint
Automatic diff as part of commit; lint not applicable.
Unit
Automatic diff as part of commit; unit tests not applicable.

Event Timeline

epriestley created this revision.Jul 17 2019, 6:03 PM
epriestley edited the test plan for this revision. (Show Details)Jul 17 2019, 6:04 PM
epriestley retitled this revision from Make reloading workboards with "R" respect workboard ordering to Make reloading workboards with "R", respect workboard ordering.
epriestley requested review of this revision.Jul 17 2019, 6:05 PM
amckinley accepted this revision.Jul 17 2019, 7:51 PM
This revision is now accepted and ready to land.Jul 17 2019, 7:51 PM
epriestley retitled this revision from Make reloading workboards with "R", respect workboard ordering to Make reloading workboards with "R" respect workboard ordering.Jul 17 2019, 8:07 PM