Closed Bug 1083638 Opened 10 years ago Closed 10 years ago

Implement a promise queue to govern the loading/unloading of keyboard layouts

Categories

(Firefox OS Graveyard :: Gaia::Keyboard, defect)

x86
macOS
defect
Not set
normal

Tracking

(Not tracked)

RESOLVED FIXED

People

(Reporter: timdream, Assigned: timdream)

References

Details

Attachments

(1 file)

Currently loading/unloading concurrency is prevented in various places in keyboard app. Let me centralize that in the StateManager by implementing a AbortablePromiseQueue so that we can ensure nothing is run in parallel from state changes. It would be an improved patch from bug 1077124 comment 11.
This pull request implements an AbortablePromiseQueue interface, and adds a marionette test for testing switching between inputs of the same frame.
Attachment #8506685 - Flags: review?(rlu)
Attachment #8506685 - Flags: review?(jlu)
Comment on attachment 8506685 [details] [review] Github: https://github.com/mozilla-b2g/gaia/pull/25252 The architecture looks good, but as offline discussed, unfortunately that never-ending Promise chaining seems to not play well with Gecko. Let's see how bug 1084324 turns out.
Attachment #8506685 - Flags: review?(jlu) → review+
Comment on attachment 8506685 [details] [review] Github: https://github.com/mozilla-b2g/gaia/pull/25252 Looks good to me as well. Thanks.
Attachment #8506685 - Flags: review?(rlu) → review+
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: