Page MenuHomePhabricator

Fix an async display issue for tokenizer/typeahead results
ClosedPublic

Authored by epriestley on Feb 16 2014, 7:00 PM.
Tags
None
Referenced Files
F13185436: D8250.diff
Sat, May 11, 2:54 AM
F13175168: D8250.id.diff
Wed, May 8, 3:48 AM
F13175150: D8250.diff
Wed, May 8, 3:42 AM
Unknown Object (File)
Tue, May 7, 5:13 AM
Unknown Object (File)
Fri, May 3, 2:38 AM
Unknown Object (File)
Thu, May 2, 10:14 AM
Unknown Object (File)
Mon, Apr 29, 2:07 PM
Unknown Object (File)
Wed, Apr 24, 9:57 PM
Subscribers

Details

Summary

Ref T4420. After the changes to the tokenizer, I sometimes do this:

  • Type something like "diff" into a project typeahead.
  • Select "differential".
  • A fraction of a second later, the typeahead pops back open.

This is because I selected the result from a partial query (like "diff" running against the "di" results) and then the full results of the "diff" query came back to the browser.

Instead, when showing results, require that the current state match the state that the results are for: don't show "dog" results if the tokenizer now reads "cat", for whatever reason.

Test Plan

Added a 1s delay to results, typed "a", then typed "m" and selected a result in less than a second. Prior to the patch, the tokenizer would pop back open with "am" results afterward. Now, it doesn't.

Diff Detail

Lint
Lint Skipped
Unit
Tests Skipped