Closed
Bug 1074653
(keyboard-render-refactor)
Opened 10 years ago
Closed 6 years ago
[meta] Rearchitect IMERender, LayoutRenderingManager, AlternativesCharMenuView & Manager
Categories
(Firefox OS Graveyard :: Gaia::Keyboard, defect)
Tracking
(feature-b2g:3.0?, tracking-b2g:+)
RESOLVED
WONTFIX
People
(Reporter: mnjul, Unassigned)
References
Details
As we were doing bug 1044525 it began to be apparent that we could re-architect IMERender, LayoutRenderingManager, AlternativesCharMenuView, and AlternativesCharMenuManager (and possibly some other modules if needed). We're currently observing these issues or smelly codes, at least: 1. IMERender is globally referenceable and everyone is free to poke it around. It probably should be known to LayoutRenderingManager only, and anything talking to the view should explicitly go to LayoutRenderingManager (also, does this mean that moving the management of the AlternativesCharMenu instance to the rendering manager is reasonable and/or architecturally sound?) 2. Following 1., what is the best way we expose the forward DOMElem-to-KeyObj and reverse KeyObj-to-DOMElem maps? (and other views such as AltsCharMenuView?) 3. We have a few inner (yet long) functions in IMERender, and the IMERender itself is quite huge. We should dissect it. Also, CandidatePanelManager pokes into IMERender heavily -- we probably want a CandidatePanelView if extracting that from IMERender reasonably allows responsibility separation. 4. Following 3., we're also generating business logic objects directly in IMERender, such as [1]. Coincidentally, those objects are all related to CandidatePanel... so there could be some interplay with separating CandidatePanel logics out. [1] https://github.com/mozilla-b2g/gaia/blob/master/apps/keyboard/js/render.js#L421
Comment 1•10 years ago
|
||
John, thanks for filing this bug. I'd like to start keyboard rendering refactoring with this as a meta bug.
Summary: Rearchitect IMERender, LayoutRenderingManager, AlternativesCharMenuView & Manager → [meta] Rearchitect IMERender, LayoutRenderingManager, AlternativesCharMenuView & Manager
Updated•10 years ago
|
Alias: keyboard-render-refactor
Comment 2•10 years ago
|
||
This is the preparation work for Emoji bug 993888, 2.2+
feature-b2g: --- → 2.2+
Updated•10 years ago
|
blocking-b2g: --- → backlog
Comment 3•10 years ago
|
||
IMERender expose a method, setInputMethodName(), which for the client code to add 'latin' as a className to the candidate panel. I think we should normalize this into a general case, e.g. define a candidatePanel section in each layout definition file, and specify the className there. === candidatePanel: { className: 'latin' }
Comment 4•10 years ago
|
||
Mass-unassign feature-b2g: 2.2+ to re-scope 2.2 features.
feature-b2g: 2.2+ → ---
tracking-b2g:
--- → +
Assignee | ||
Updated•9 years ago
|
blocking-b2g: backlog → ---
Comment 6•6 years ago
|
||
Firefox OS is not being worked on
Status: NEW → RESOLVED
Closed: 6 years ago
Resolution: --- → WONTFIX
You need to log in
before you can comment on or make changes to this bug.
Description
•