[TSF] Make `TSFEmptyTextStore` for disabled document manager
Categories
(Core :: DOM: UI Events & Focus Handling, task)
Tracking
()
| Tracking | Status | |
|---|---|---|
| firefox139 | --- | fixed |
People
(Reporter: masayuki, Assigned: masayuki)
References
Details
(Keywords: inputmethod)
Attachments
(4 files)
We should create new TSFEmptyTextStore for avoiding to make TSFTextStore has new paths for disabled cases since TSFTextStore is enough complicated.
I think we should split TSFTextStore to implement common base class with TSFEmptyTextStore and move some utility classes and methods into new file like TSFUtils.h and TSFUtils.cpp. Then, implement TSFEmptyTextStore which won't access actual content.
| Assignee | ||
Comment 1•1 year ago
|
||
We want another TSFTextStore class which always has empty content but
allows to reply to retrieving the properties and supports sink.
For avoiding to duplicate some methods and basic parameter checks, we
should have a base class, TSFTextStoreBase.
| Assignee | ||
Comment 2•1 year ago
|
||
This should've already been done when creating TSFUtils, though.
Depends on D242679
| Assignee | ||
Comment 3•1 year ago
|
||
TSFEmptyTextStore will share them. For making the changes for it clearer in
the previous patch, this patch moves them.
Depends on D242680
| Assignee | ||
Comment 4•1 year ago
|
||
Even while IME is disabled (i.e., when non-editable element or nobody has
focus), we'll expose active tab's URL and whether it's in the private browsing
mode via the input scope. Therefore, we need to handle requests for retrieving
attributes. So, we need a TextStore instance for that. However, they may
require special behavior due to its context is marked as empty and not editable.
Unfortunately, TSFTextStore is enough complicated and big even after some
features are moved to TSFUtils and TSFTextStoreBase. Therefore, this patch
creates TSFEmptyTextStore to isolate the implementation from TSFTextStore.
Depends on D242681
Comment 6•1 year ago
|
||
| bugherder | ||
https://hg.mozilla.org/mozilla-central/rev/b8be89d687f0
https://hg.mozilla.org/mozilla-central/rev/f2c694bf075d
https://hg.mozilla.org/mozilla-central/rev/1b2dddf7bbd7
https://hg.mozilla.org/mozilla-central/rev/3b54b7bad260
Updated•1 year ago
|
Description
•