Platform/Features/Vertical text: Difference between revisions

no edit summary
No edit summary
No edit summary
Line 41: Line 41:
* Bug 5 - UI
* Bug 5 - UI
* Bug 6 - Text/Glyph Layout
* Bug 6 - Text/Glyph Layout
|Feature implementation plan=* Prototype of a vertical text layout
|Feature implementation plan=* Prototype of a vertical text layout. This will include:
This will include:
** logicalization of a minimum of frame types
** logicalization of a minimum of frame types
** layout of a minimum of frame types
** layout of a minimum of frame types
** Glyph layout of CJK only
** Glyph layout of CJK only
** Parsing, orthogonal flows and UI will not be included
** Parsing, orthogonal flows and UI will not be included
* Bug 1: Logicalization of layout parameters
* Bug 1: Logicalization of layout parameters
** Renaming
** Renaming
** Note that not all properties get treated the same. For example, the offset of a <code>text-shadow</code> property is unaffected by writing mode.
** Note that not all properties get treated the same. For example, the offset of a <code>text-shadow</code> property is unaffected by writing mode.
** Get all tests to pass with logical params in use
** Get all tests to pass with logical params in use
* Bug 2: Parsing of <code>writing-mode</code> and <code>text-orientation</code>
* Bug 2: Parsing of <code>writing-mode</code> and <code>text-orientation</code><br>(see [[#9._Implementation|Implementation]] below)  
(see [[#Implementation|implementation notes]] below)  
* Bug 3: Layout
* Initial containing block with a vertical writing mode
** i.e., in a document with a vertical writing mode, laying out the whole document with a horizontal block flow and vertical text flow
** i.e. laying out the whole document with a horizontal block flow and vertical text flow
* Bug 4: Orthogonal flows<br>[http://unicode.org/notes/tn22/RobustVerticalLayout.pdf Unicode Technical Note #22]
** UI features
* Bug 5: UI features
*** scrollbars
** scrollbars
*** mapping scrollwheel
** mapping scrollwheel
*** vertical text selection
** vertical text selection
*** vertical text selection cursor
** vertical text selection cursor
*** caret browsing
** caret browsing
*** other?
** UI widgets
* Implement <code>min/max/fit-content</code>, <code>fill-available</code>
** other?
* Orthogonal flows
* Glyph orientation
** Using character properties such as those defined in [http://www.unicode.org/reports/tr50/ UTR-50] (currently under review)
** Supporting different modes as necessary (e.g. stacked vs default, cf. <code>text-orientation</code> which is in flux)
** Glyph selection&mdash;choosing vertical variants, using vertical metrics
** OpenType model for vertical text needs to be flushed out a bit more (e.g. which features are on by default in the vertical case?)
|Feature implementation notes=[https://bugzilla.mozilla.org/show_bug.cgi?id=145503 Main bugzilla entry]
 
* Need to investigate how to pref CSS keyword parsing (and all writing-mode processing) on and off -- put in a separate DOM idl?
* Possibly want to be able to <code>#ifdef</code> it as well? Or just back out the changes after each uplift so we don't pay the perf cost until it's ready?
 
* Multi-column vertical layout
* Multi-column vertical layout
* Form controls
* Form controls
Line 70: Line 77:
* (Probably lots of other HTML elements that require special handling? e.g. list markers. Presumably images don't rotate (i.e. width/height are physical) but form controls do?)
* (Probably lots of other HTML elements that require special handling? e.g. list markers. Presumably images don't rotate (i.e. width/height are physical) but form controls do?)
* Pagination
* Pagination
* Glyph orientation
* Implement <code>min/max/fit-content</code>, <code>fill-available</code>
** Using character properties such as those defined in [http://www.unicode.org/reports/tr50/ UTR-50] (currently under review)
** Supporting different modes as necessary (e.g. stacked vs default, cf. <code>text-orientation</code> which is in flux)
* Glyph selection&mdash;choosing vertical variants, using vertical metrics
* OpenType model for vertical text needs to be flushed out a bit more (e.g. which features are on by default in the vertical case?)
|Feature implementation notes=[https://bugzilla.mozilla.org/show_bug.cgi?id=145503 Main bugzilla entry]
}}
}}
{{FeatureInfo
{{FeatureInfo
Line 82: Line 84:
|Feature engineering team=Layout
|Feature engineering team=Layout
}}
}}
{{FeatureTeamStatus
{{FeatureTeamStatus}}
|Feature engineering notes=* Need to investigate how to pref CSS keyword parsing (and all writing-mode processing) on and off -- put in a separate DOM idl?
* Possibly want to be able to <code>#ifdef</code> it as well? Or just back out the changes after each uplift so we don't pay the perf cost until it's ready?
}}
67

edits