Leave() and Enter() do not both occur if both are called in one frame callback.

Issue #34 resolved
Scott Mooney created an issue

Leave() and Enter() do not work together properly if called in the same frame. In the example below, they alternate on every key press instead of the latter immediately undoing the former.

Possible solution: deferred Leave() call is aborted if an Enter() call occurs first, and vice versa? Or maybe it’s just a simple issue of ordering the deferred calls…

Comments (1)

  1. Jeremy Hill

    Fixed in cab7f19c3af1. It was an accelerator-specific side-effect of recent changes to the implementation of the UpdatedKeys registry. To maintain consistency of the updated keys, all Leave() operations were deferred, inside the accelerator, until the next time the stimulus would have been drawn. Enter() operations did not need to be deferred, and they were forgetting to cancel any pending Leave() operation.

  2. Log in to comment