mirror of
https://github.com/servo/servo.git
synced 2025-08-05 13:40:08 +01:00
style: Implement the CSS line-break property, with values "auto | anywhere".
Note that the "loose | normal | strict" values are not yet parsed/implemented. Differential Revision: https://phabricator.services.mozilla.com/D29817
This commit is contained in:
parent
67909022a0
commit
0dc70cf7f2
6 changed files with 40 additions and 3 deletions
|
@ -325,6 +325,7 @@ class Longhand(object):
|
||||||
"JustifyContent",
|
"JustifyContent",
|
||||||
"JustifyItems",
|
"JustifyItems",
|
||||||
"JustifySelf",
|
"JustifySelf",
|
||||||
|
"LineBreak",
|
||||||
"MozForceBrokenImageIcon",
|
"MozForceBrokenImageIcon",
|
||||||
"MozListReversed",
|
"MozListReversed",
|
||||||
"MozScriptLevel",
|
"MozScriptLevel",
|
||||||
|
|
|
@ -264,6 +264,16 @@ ${helpers.predefined_type(
|
||||||
spec="https://drafts.csswg.org/css-text-3/#tab-size-property",
|
spec="https://drafts.csswg.org/css-text-3/#tab-size-property",
|
||||||
)}
|
)}
|
||||||
|
|
||||||
|
${helpers.predefined_type(
|
||||||
|
"line-break",
|
||||||
|
"LineBreak",
|
||||||
|
"computed::LineBreak::Auto",
|
||||||
|
products="gecko",
|
||||||
|
animation_value_type="discrete",
|
||||||
|
spec="https://drafts.csswg.org/css-text-3/#line-break-property",
|
||||||
|
needs_context=False,
|
||||||
|
)}
|
||||||
|
|
||||||
// CSS Compatibility
|
// CSS Compatibility
|
||||||
// https://compat.spec.whatwg.org
|
// https://compat.spec.whatwg.org
|
||||||
${helpers.predefined_type(
|
${helpers.predefined_type(
|
||||||
|
|
|
@ -77,7 +77,7 @@ pub use self::svg::MozContextProperties;
|
||||||
pub use self::svg::{SVGLength, SVGOpacity, SVGPaint, SVGPaintKind};
|
pub use self::svg::{SVGLength, SVGOpacity, SVGPaint, SVGPaintKind};
|
||||||
pub use self::svg::{SVGPaintOrder, SVGStrokeDashArray, SVGWidth};
|
pub use self::svg::{SVGPaintOrder, SVGStrokeDashArray, SVGWidth};
|
||||||
pub use self::table::XSpan;
|
pub use self::table::XSpan;
|
||||||
pub use self::text::{InitialLetter, LetterSpacing, LineHeight};
|
pub use self::text::{InitialLetter, LetterSpacing, LineBreak, LineHeight};
|
||||||
pub use self::text::{OverflowWrap, TextOverflow, WordBreak, WordSpacing};
|
pub use self::text::{OverflowWrap, TextOverflow, WordBreak, WordSpacing};
|
||||||
pub use self::text::{TextAlign, TextEmphasisPosition, TextEmphasisStyle};
|
pub use self::text::{TextAlign, TextEmphasisPosition, TextEmphasisStyle};
|
||||||
pub use self::time::Time;
|
pub use self::time::Time;
|
||||||
|
|
|
@ -20,7 +20,7 @@ use style_traits::{CssWriter, ToCss};
|
||||||
|
|
||||||
pub use crate::values::specified::TextAlignKeyword as TextAlign;
|
pub use crate::values::specified::TextAlignKeyword as TextAlign;
|
||||||
pub use crate::values::specified::TextTransform;
|
pub use crate::values::specified::TextTransform;
|
||||||
pub use crate::values::specified::{OverflowWrap, WordBreak};
|
pub use crate::values::specified::{LineBreak, OverflowWrap, WordBreak};
|
||||||
pub use crate::values::specified::{TextDecorationLine, TextEmphasisPosition};
|
pub use crate::values::specified::{TextDecorationLine, TextEmphasisPosition};
|
||||||
|
|
||||||
/// A computed value for the `initial-letter` property.
|
/// A computed value for the `initial-letter` property.
|
||||||
|
|
|
@ -81,7 +81,7 @@ pub use self::svg::{SVGPaintOrder, SVGStrokeDashArray, SVGWidth};
|
||||||
pub use self::svg_path::SVGPathData;
|
pub use self::svg_path::SVGPathData;
|
||||||
pub use self::table::XSpan;
|
pub use self::table::XSpan;
|
||||||
pub use self::text::TextTransform;
|
pub use self::text::TextTransform;
|
||||||
pub use self::text::{InitialLetter, LetterSpacing, LineHeight, TextAlign};
|
pub use self::text::{InitialLetter, LetterSpacing, LineBreak, LineHeight, TextAlign};
|
||||||
pub use self::text::{OverflowWrap, TextEmphasisPosition, TextEmphasisStyle, WordBreak};
|
pub use self::text::{OverflowWrap, TextEmphasisPosition, TextEmphasisStyle, WordBreak};
|
||||||
pub use self::text::{TextAlignKeyword, TextDecorationLine, TextOverflow, WordSpacing};
|
pub use self::text::{TextAlignKeyword, TextDecorationLine, TextOverflow, WordSpacing};
|
||||||
pub use self::time::Time;
|
pub use self::time::Time;
|
||||||
|
|
|
@ -1005,6 +1005,32 @@ pub enum WordBreak {
|
||||||
BreakWord,
|
BreakWord,
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// Values for the `line-break` property.
|
||||||
|
#[repr(u8)]
|
||||||
|
#[derive(
|
||||||
|
Clone,
|
||||||
|
Copy,
|
||||||
|
Debug,
|
||||||
|
Eq,
|
||||||
|
MallocSizeOf,
|
||||||
|
Parse,
|
||||||
|
PartialEq,
|
||||||
|
SpecifiedValueInfo,
|
||||||
|
ToComputedValue,
|
||||||
|
ToCss,
|
||||||
|
ToResolvedValue,
|
||||||
|
ToShmem,
|
||||||
|
)]
|
||||||
|
#[allow(missing_docs)]
|
||||||
|
pub enum LineBreak {
|
||||||
|
Auto,
|
||||||
|
/// TODO: additional values not yet implemented
|
||||||
|
/// Loose,
|
||||||
|
/// Normal,
|
||||||
|
/// Strict,
|
||||||
|
Anywhere,
|
||||||
|
}
|
||||||
|
|
||||||
/// Values for the `overflow-wrap` property.
|
/// Values for the `overflow-wrap` property.
|
||||||
#[repr(u8)]
|
#[repr(u8)]
|
||||||
#[derive(
|
#[derive(
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue