Page MenuHomePhabricator

Show user availability dots (red = away, orange = busy) in typeaheads, tokenizer tokens, and autocompletes

Authored by epriestley on Feb 14 2019, 8:42 PM.



Ref T13249. See PHI810. We currently show availability dots in some interfaces (timeline, mentions) but not others (typeheads/tokenizers).

They're potentially quite useful in tokenizers, e.g. when assigning tasks to someone or requesting reviews. Show them in more places.

(The actual rendering here isn't terribly clean, and it would be great to try to unify all these various behaviors some day.)

Test Plan

Diff Detail

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

Event Timeline

epriestley created this revision.Feb 14 2019, 8:42 PM
epriestley requested review of this revision.Feb 14 2019, 8:44 PM
epriestley updated this revision to Diff 48167.Feb 14 2019, 8:45 PM
  • Remove some debugging code.

There are basically five different rendering pathways here, some of which should become more similar eventually:

  • The normal autocomplete in tokenizer fields, e.g. "Subscribers".
  • The @ mention autocomplete in remarkup. This has its own separate rendering because the "autocomplete" menu items don't look quite like normal typeahead items (they're a bit smaller and sleeker).
  • The token which gets rendered in a tokenizer field like "Subscribers" when you use the typeahead to actually select a subscriber.
  • The same token, which gets rendered in PHP and sent over the wire so that the page looks okay before JS runs, if you "Edit" an object which already has some subscribers.
  • The same token, which gets re-rendered in JS based on the PHP definition after JS fires, so that it has control of the nodes and stuff like the "X" that lets you "Remove Token" can work.

There are also two other pathways:

  • The more full-featured global search typeahead, which shows more information.
  • The "Browse" view of possible tokens, which also shows more information.

For now, I'm not touching those.

Some day, it would be nice to get these 7 pathways down to, like, less than 7. But nothing here really makes that any harder.

amckinley accepted this revision.Feb 19 2019, 6:34 PM
This revision is now accepted and ready to land.Feb 19 2019, 6:34 PM
This revision was automatically updated to reflect the committed changes.