mirror of
https://repo.dactyloidae.xyz/Dactyloidae/UXP.git
synced 2026-10-04 22:37:29 +09:00
Bug 1373798 - Move HTML dir attribute state into event state flags
* Stop calling SetHasDirAuto/ClearHasDirAuto in input element code * Introduce event state flags that track the state of an element's dir attribute * Rewrite our existing checks for the state of the dir attr on top of the new event state flags * Add pseudo-classes for matching on the dir attribute states * Use the new dir attribute pseudoclasses in html.css Tag #1375
This commit is contained in:
parent
4e14355697
commit
3b2a22f085
11 changed files with 139 additions and 72 deletions
|
|
@ -211,6 +211,19 @@ CSS_STATE_PSEUDO_CLASS(mozMathIncrementScriptLevel,
|
|||
":-moz-math-increment-script-level", 0, "",
|
||||
NS_EVENT_STATE_INCREMENT_SCRIPT_LEVEL)
|
||||
|
||||
CSS_STATE_PSEUDO_CLASS(mozHasDirAttr, ":-moz-has-dir-attr",
|
||||
CSS_PSEUDO_CLASS_ENABLED_IN_UA_SHEETS, "",
|
||||
NS_EVENT_STATE_HAS_DIR_ATTR)
|
||||
CSS_STATE_PSEUDO_CLASS(mozDirAttrLTR, ":-moz-dir-attr-ltr",
|
||||
CSS_PSEUDO_CLASS_ENABLED_IN_UA_SHEETS, "",
|
||||
NS_EVENT_STATE_DIR_ATTR_LTR)
|
||||
CSS_STATE_PSEUDO_CLASS(mozDirAttrRTL, ":-moz-dir-attr-rtl",
|
||||
CSS_PSEUDO_CLASS_ENABLED_IN_UA_SHEETS, "",
|
||||
NS_EVENT_STATE_DIR_ATTR_RTL)
|
||||
CSS_STATE_PSEUDO_CLASS(mozDirAttrLikeAuto, ":-moz-dir-attr-like-auto",
|
||||
CSS_PSEUDO_CLASS_ENABLED_IN_UA_SHEETS, "",
|
||||
NS_EVENT_STATE_DIR_ATTR_LIKE_AUTO)
|
||||
|
||||
// CSS 3 UI
|
||||
// http://www.w3.org/TR/2004/CR-css3-ui-20040511/#pseudo-classes
|
||||
CSS_STATE_PSEUDO_CLASS(required, ":required", 0, "", NS_EVENT_STATE_REQUIRED)
|
||||
|
|
|
|||
|
|
@ -7,18 +7,18 @@
|
|||
|
||||
/* bidi */
|
||||
|
||||
[dir] {
|
||||
:-moz-has-dir-attr {
|
||||
unicode-bidi: isolate;
|
||||
}
|
||||
[dir="rtl"] {
|
||||
:-moz-dir-attr-rtl {
|
||||
direction: rtl;
|
||||
}
|
||||
[dir="ltr"] {
|
||||
:-moz-dir-attr-ltr {
|
||||
direction: ltr;
|
||||
}
|
||||
|
||||
bdi:dir(ltr), [dir="auto"]:dir(ltr) { direction: ltr; }
|
||||
bdi:dir(rtl), [dir="auto"]:dir(rtl) { direction: rtl; }
|
||||
:-moz-dir-attr-like-auto:dir(ltr) { direction: ltr; }
|
||||
:-moz-dir-attr-like-auto:dir(rtl) { direction: rtl; }
|
||||
|
||||
/* To ensure http://www.w3.org/TR/REC-html40/struct/dirlang.html#style-bidi:
|
||||
*
|
||||
|
|
@ -89,10 +89,15 @@ xmp {
|
|||
bdi, output {
|
||||
unicode-bidi: isolate;
|
||||
}
|
||||
bdo, bdo[dir] {
|
||||
/* We need the "bdo:-moz-has-dir-attr" bit because "bdo" has lower
|
||||
specificity than the ":-moz-has-dir-attr" selector above. */
|
||||
bdo, bdo:-moz-has-dir-attr {
|
||||
unicode-bidi: isolate-override;
|
||||
}
|
||||
textarea[dir="auto"], pre[dir="auto"] { unicode-bidi: plaintext; }
|
||||
textarea:-moz-dir-attr-like-auto,
|
||||
pre:-moz-dir-attr-like-auto {
|
||||
unicode-bidi: plaintext;
|
||||
}
|
||||
|
||||
/* blocks */
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue