HomePhabricator

Retain keyboard cursor state across more inline edit operations in Differential

Description

Retain keyboard cursor state across more inline edit operations in Differential

Summary:
Ref T12634. Fixes T8131. Currently, most edit operations (edit, reply, collapse, mark done) lose the keyboard cursor state.

Instead, bind the state more tighlty to the inline object itself (instead of the rows which happen to be in the document), and then do a bit of recalculation to try to keep it selected across edits.

Test Plan:

  • Used "n" to select an inline.
  • Clicked "Done" checkbox.
  • Pressed "n".
  • Went to the next inline (previously: lost position in document).
  • Behavior is also better for: edit, reply, collapse/expand.

Reviewers: chad

Reviewed By: chad

Maniphest Tasks: T12634, T8131

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