diff --git a/ports/geckolib/gecko_style_structs.rs b/ports/geckolib/gecko_style_structs.rs new file mode 100644 index 00000000000..abc265be2b4 --- /dev/null +++ b/ports/geckolib/gecko_style_structs.rs @@ -0,0 +1,891 @@ +/* automatically generated by rust-bindgen */ +#![feature(const_fn)] + +pub const NS_STYLE_INHERIT_MASK: u32 = 16777215; +pub const NS_STYLE_HAS_TEXT_DECORATION_LINES: u32 = 16777216; +pub const NS_STYLE_HAS_PSEUDO_ELEMENT_DATA: u32 = 33554432; +pub const NS_STYLE_RELEVANT_LINK_VISITED: u32 = 67108864; +pub const NS_STYLE_IS_STYLE_IF_VISITED: u32 = 134217728; +pub const NS_STYLE_CHILD_USES_GRANDANCESTOR_STYLE: u32 = 268435456; +pub const NS_STYLE_IS_SHARED: u32 = 536870912; +pub const NS_STYLE_IS_GOING_AWAY: u32 = 1073741824; +pub const NS_STYLE_SUPPRESS_LINEBREAK: u32 = 2147483648; +pub const NS_STYLE_IN_DISPLAY_NONE_SUBTREE: u64 = 4294967296; +pub const NS_STYLE_INELIGIBLE_FOR_SHARING: u64 = 8589934592; +pub const NS_STYLE_HAS_CHILD_THAT_USES_RESET_STYLE: u64 = 17179869184; +pub const NS_STYLE_CONTEXT_TYPE_SHIFT: u32 = 35; +pub const NS_RULE_NODE_IS_ANIMATION_RULE: u32 = 16777216; +pub const NS_RULE_NODE_GC_MARK: u32 = 33554432; +pub const NS_RULE_NODE_USED_DIRECTLY: u32 = 67108864; +pub const NS_RULE_NODE_IS_IMPORTANT: u32 = 134217728; +pub const NS_RULE_NODE_LEVEL_MASK: u32 = 4026531840; +pub const NS_RULE_NODE_LEVEL_SHIFT: u32 = 28; +pub const NS_RULE_NODE_HAS_ANIMATION_DATA: u32 = 2147483648; +pub const BORDER_COLOR_FOREGROUND: u32 = 32; +pub const OUTLINE_COLOR_INITIAL: u32 = 128; +pub const BORDER_COLOR_SPECIAL: u32 = 160; +pub const BORDER_STYLE_MASK: u32 = 31; +pub const NS_SPACING_MARGIN: u32 = 0; +pub const NS_SPACING_PADDING: u32 = 1; +pub const NS_SPACING_BORDER: u32 = 2; +pub enum nsIFrame { } +pub enum nsStyleContext { } +pub enum nsTextFrame { } +pub enum imgIContainer { } +#[repr(i32)] +#[derive(Copy, Clone)] +pub enum nsStyleStructID { + nsStyleStructID_None = -1, + nsStyleStructID_Inherited_Start = 0, + nsStyleStructID_DUMMY1 = -1, + eStyleStruct_Font = 0, + eStyleStruct_Color = 1, + eStyleStruct_List = 2, + eStyleStruct_Text = 3, + eStyleStruct_Visibility = 4, + eStyleStruct_Quotes = 5, + eStyleStruct_UserInterface = 6, + eStyleStruct_TableBorder = 7, + eStyleStruct_SVG = 8, + eStyleStruct_Variables = 9, + nsStyleStructID_Reset_Start = 10, + nsStyleStructID_DUMMY2 = 9, + eStyleStruct_Background = 10, + eStyleStruct_Position = 11, + eStyleStruct_TextReset = 12, + eStyleStruct_Display = 13, + eStyleStruct_Content = 14, + eStyleStruct_UIReset = 15, + eStyleStruct_Table = 16, + eStyleStruct_Margin = 17, + eStyleStruct_Padding = 18, + eStyleStruct_Border = 19, + eStyleStruct_Outline = 20, + eStyleStruct_XUL = 21, + eStyleStruct_SVGReset = 22, + eStyleStruct_Column = 23, + nsStyleStructID_Length = 24, + nsStyleStructID_Inherited_Count = 10, + nsStyleStructID_Reset_Count = 14, +} +pub type nsStyleStructID_size_t = i32; +#[repr(C)] +pub struct nsStyleFont { + pub mFont: nsFont, + pub mSize: nscoord, + pub mGenericID: uint8_t, + pub mScriptLevel: int8_t, + pub mMathVariant: uint8_t, + pub mMathDisplay: uint8_t, + pub mMinFontSizeRatio: uint8_t, + pub mExplicitLanguage: bool, + pub mAllowZoom: bool, + pub mScriptUnconstrainedSize: nscoord, + pub mScriptMinSize: nscoord, + pub mScriptSizeMultiplier: f32, + pub mLanguage: nsCOMPtr, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct nsStyleGradientStop { + pub mLocation: nsStyleCoord, + pub mColor: nscolor, + pub mIsInterpolationHint: bool, +} +#[repr(C)] +pub struct nsStyleGradient { + pub mShape: uint8_t, + pub mSize: uint8_t, + pub mRepeating: bool, + pub mLegacySyntax: bool, + pub mBgPosX: nsStyleCoord, + pub mBgPosY: nsStyleCoord, + pub mAngle: nsStyleCoord, + pub mRadiusX: nsStyleCoord, + pub mRadiusY: nsStyleCoord, + pub mStops: nsTArray, + pub mRefCnt: nsAutoRefCnt, + pub _mOwningThread: nsAutoOwningThread, +} +#[repr(i32)] +#[derive(Copy, Clone)] +pub enum nsStyleImageType { + eStyleImageType_Null = 0, + eStyleImageType_Image = 1, + eStyleImageType_Gradient = 2, + eStyleImageType_Element = 3, +} +/** + * Represents a paintable image of one of the following types. + * (1) A real image loaded from an external source. + * (2) A CSS linear or radial gradient. + * (3) An element within a document, or an ,