Auto merge of #20386 - emilio:computed-style-rename, r=jwatt

style: Rename StyleContext to ComputedStyle.

Bug: 1447483
Reviewed-by: jwatt
MozReview-Commit-ID: KATZ6DkmpVY

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/20386)
<!-- Reviewable:end -->
This commit is contained in:
bors-servo 2018-03-22 13:48:24 -04:00 committed by GitHub
commit 563f0ec824
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
9 changed files with 5503 additions and 6715 deletions

View file

@ -116,19 +116,19 @@ pub unsafe extern "C" fn Servo_RuleNode_Release(obj: &RawServoRuleNode) {
ptr::read(ptr as *const StrongRuleNode);
}
// ServoStyleContext is not an opaque type on any side of FFI.
// ComputedStyle is not an opaque type on any side of FFI.
// This means that doing the HasArcFFI type trick is actually unsound,
// since it gives us a way to construct an Arc<ServoStyleContext> from
// an &ServoStyleContext, which in general is not allowed. So we
// since it gives us a way to construct an Arc<ComputedStyle> from
// an &ComputedStyle, which in general is not allowed. So we
// implement the restricted set of arc type functionality we need.
#[no_mangle]
pub unsafe extern "C" fn Servo_StyleContext_AddRef(obj: &ComputedValues) {
pub unsafe extern "C" fn Servo_ComputedStyle_AddRef(obj: &ComputedValues) {
mem::forget(ArcBorrow::from_ref(obj).clone_arc());
}
#[no_mangle]
pub unsafe extern "C" fn Servo_StyleContext_Release(obj: &ComputedValues) {
pub unsafe extern "C" fn Servo_ComputedStyle_Release(obj: &ComputedValues) {
ArcBorrow::from_ref(obj).with_arc(|a: &Arc<ComputedValues>| {
let _: Arc<ComputedValues> = ptr::read(a);
});

View file

@ -980,8 +980,6 @@ cfg_if! {
pub static nsGkAtoms_graphicsSymbol: *mut nsStaticAtom;
#[link_name = "_ZN9nsGkAtoms4gridE"]
pub static nsGkAtoms_grid: *mut nsStaticAtom;
#[link_name = "_ZN9nsGkAtoms6grippyE"]
pub static nsGkAtoms_grippy: *mut nsStaticAtom;
#[link_name = "_ZN9nsGkAtoms5groupE"]
pub static nsGkAtoms_group: *mut nsStaticAtom;
#[link_name = "_ZN9nsGkAtoms8groupboxE"]
@ -3286,10 +3284,14 @@ cfg_if! {
pub static nsGkAtoms_saturate: *mut nsStaticAtom;
#[link_name = "_ZN9nsGkAtoms10saturationE"]
pub static nsGkAtoms_saturation: *mut nsStaticAtom;
#[link_name = "_ZN9nsGkAtoms3setE"]
pub static nsGkAtoms_set: *mut nsStaticAtom;
#[link_name = "_ZN9nsGkAtoms4seedE"]
pub static nsGkAtoms_seed: *mut nsStaticAtom;
#[link_name = "_ZN9nsGkAtoms15shape_renderingE"]
pub static nsGkAtoms_shape_rendering: *mut nsStaticAtom;
#[link_name = "_ZN9nsGkAtoms16simpleScopeChainE"]
pub static nsGkAtoms_simpleScopeChain: *mut nsStaticAtom;
#[link_name = "_ZN9nsGkAtoms5skewXE"]
pub static nsGkAtoms_skewX: *mut nsStaticAtom;
#[link_name = "_ZN9nsGkAtoms5skewYE"]
@ -3934,8 +3936,6 @@ cfg_if! {
pub static nsGkAtoms_sep_: *mut nsStaticAtom;
#[link_name = "_ZN9nsGkAtoms8setdiff_E"]
pub static nsGkAtoms_setdiff_: *mut nsStaticAtom;
#[link_name = "_ZN9nsGkAtoms4set_E"]
pub static nsGkAtoms_set_: *mut nsStaticAtom;
#[link_name = "_ZN9nsGkAtoms6share_E"]
pub static nsGkAtoms_share_: *mut nsStaticAtom;
#[link_name = "_ZN9nsGkAtoms6shift_E"]
@ -6205,8 +6205,6 @@ cfg_if! {
pub static nsGkAtoms_graphicsSymbol: *mut nsStaticAtom;
#[link_name = "?grid@nsGkAtoms@@2PEAVnsStaticAtom@@EA"]
pub static nsGkAtoms_grid: *mut nsStaticAtom;
#[link_name = "?grippy@nsGkAtoms@@2PEAVnsStaticAtom@@EA"]
pub static nsGkAtoms_grippy: *mut nsStaticAtom;
#[link_name = "?group@nsGkAtoms@@2PEAVnsStaticAtom@@EA"]
pub static nsGkAtoms_group: *mut nsStaticAtom;
#[link_name = "?groupbox@nsGkAtoms@@2PEAVnsStaticAtom@@EA"]
@ -8511,10 +8509,14 @@ cfg_if! {
pub static nsGkAtoms_saturate: *mut nsStaticAtom;
#[link_name = "?saturation@nsGkAtoms@@2PEAVnsStaticAtom@@EA"]
pub static nsGkAtoms_saturation: *mut nsStaticAtom;
#[link_name = "?set@nsGkAtoms@@2PEAVnsStaticAtom@@EA"]
pub static nsGkAtoms_set: *mut nsStaticAtom;
#[link_name = "?seed@nsGkAtoms@@2PEAVnsStaticAtom@@EA"]
pub static nsGkAtoms_seed: *mut nsStaticAtom;
#[link_name = "?shape_rendering@nsGkAtoms@@2PEAVnsStaticAtom@@EA"]
pub static nsGkAtoms_shape_rendering: *mut nsStaticAtom;
#[link_name = "?simpleScopeChain@nsGkAtoms@@2PEAVnsStaticAtom@@EA"]
pub static nsGkAtoms_simpleScopeChain: *mut nsStaticAtom;
#[link_name = "?skewX@nsGkAtoms@@2PEAVnsStaticAtom@@EA"]
pub static nsGkAtoms_skewX: *mut nsStaticAtom;
#[link_name = "?skewY@nsGkAtoms@@2PEAVnsStaticAtom@@EA"]
@ -9159,8 +9161,6 @@ cfg_if! {
pub static nsGkAtoms_sep_: *mut nsStaticAtom;
#[link_name = "?setdiff_@nsGkAtoms@@2PEAVnsStaticAtom@@EA"]
pub static nsGkAtoms_setdiff_: *mut nsStaticAtom;
#[link_name = "?set_@nsGkAtoms@@2PEAVnsStaticAtom@@EA"]
pub static nsGkAtoms_set_: *mut nsStaticAtom;
#[link_name = "?share_@nsGkAtoms@@2PEAVnsStaticAtom@@EA"]
pub static nsGkAtoms_share_: *mut nsStaticAtom;
#[link_name = "?shift_@nsGkAtoms@@2PEAVnsStaticAtom@@EA"]
@ -11430,8 +11430,6 @@ cfg_if! {
pub static nsGkAtoms_graphicsSymbol: *mut nsStaticAtom;
#[link_name = "\x01?grid@nsGkAtoms@@2PAVnsStaticAtom@@A"]
pub static nsGkAtoms_grid: *mut nsStaticAtom;
#[link_name = "\x01?grippy@nsGkAtoms@@2PAVnsStaticAtom@@A"]
pub static nsGkAtoms_grippy: *mut nsStaticAtom;
#[link_name = "\x01?group@nsGkAtoms@@2PAVnsStaticAtom@@A"]
pub static nsGkAtoms_group: *mut nsStaticAtom;
#[link_name = "\x01?groupbox@nsGkAtoms@@2PAVnsStaticAtom@@A"]
@ -13736,10 +13734,14 @@ cfg_if! {
pub static nsGkAtoms_saturate: *mut nsStaticAtom;
#[link_name = "\x01?saturation@nsGkAtoms@@2PAVnsStaticAtom@@A"]
pub static nsGkAtoms_saturation: *mut nsStaticAtom;
#[link_name = "\x01?set@nsGkAtoms@@2PAVnsStaticAtom@@A"]
pub static nsGkAtoms_set: *mut nsStaticAtom;
#[link_name = "\x01?seed@nsGkAtoms@@2PAVnsStaticAtom@@A"]
pub static nsGkAtoms_seed: *mut nsStaticAtom;
#[link_name = "\x01?shape_rendering@nsGkAtoms@@2PAVnsStaticAtom@@A"]
pub static nsGkAtoms_shape_rendering: *mut nsStaticAtom;
#[link_name = "\x01?simpleScopeChain@nsGkAtoms@@2PAVnsStaticAtom@@A"]
pub static nsGkAtoms_simpleScopeChain: *mut nsStaticAtom;
#[link_name = "\x01?skewX@nsGkAtoms@@2PAVnsStaticAtom@@A"]
pub static nsGkAtoms_skewX: *mut nsStaticAtom;
#[link_name = "\x01?skewY@nsGkAtoms@@2PAVnsStaticAtom@@A"]
@ -14384,8 +14386,6 @@ cfg_if! {
pub static nsGkAtoms_sep_: *mut nsStaticAtom;
#[link_name = "\x01?setdiff_@nsGkAtoms@@2PAVnsStaticAtom@@A"]
pub static nsGkAtoms_setdiff_: *mut nsStaticAtom;
#[link_name = "\x01?set_@nsGkAtoms@@2PAVnsStaticAtom@@A"]
pub static nsGkAtoms_set_: *mut nsStaticAtom;
#[link_name = "\x01?share_@nsGkAtoms@@2PAVnsStaticAtom@@A"]
pub static nsGkAtoms_share_: *mut nsStaticAtom;
#[link_name = "\x01?shift_@nsGkAtoms@@2PAVnsStaticAtom@@A"]
@ -16658,8 +16658,6 @@ macro_rules! atom {
{{ #[allow(unsafe_code)] #[allow(unused_unsafe)]unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_graphicsSymbol as *mut _) } }};
("grid") =>
{{ #[allow(unsafe_code)] #[allow(unused_unsafe)]unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_grid as *mut _) } }};
("grippy") =>
{{ #[allow(unsafe_code)] #[allow(unused_unsafe)]unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_grippy as *mut _) } }};
("group") =>
{{ #[allow(unsafe_code)] #[allow(unused_unsafe)]unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_group as *mut _) } }};
("groupbox") =>
@ -18964,10 +18962,14 @@ macro_rules! atom {
{{ #[allow(unsafe_code)] #[allow(unused_unsafe)]unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_saturate as *mut _) } }};
("saturation") =>
{{ #[allow(unsafe_code)] #[allow(unused_unsafe)]unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_saturation as *mut _) } }};
("set") =>
{{ #[allow(unsafe_code)] #[allow(unused_unsafe)]unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_set as *mut _) } }};
("seed") =>
{{ #[allow(unsafe_code)] #[allow(unused_unsafe)]unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_seed as *mut _) } }};
("shape-rendering") =>
{{ #[allow(unsafe_code)] #[allow(unused_unsafe)]unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_shape_rendering as *mut _) } }};
("simpleScopeChain") =>
{{ #[allow(unsafe_code)] #[allow(unused_unsafe)]unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_simpleScopeChain as *mut _) } }};
("skewX") =>
{{ #[allow(unsafe_code)] #[allow(unused_unsafe)]unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_skewX as *mut _) } }};
("skewY") =>
@ -19612,8 +19614,6 @@ macro_rules! atom {
{{ #[allow(unsafe_code)] #[allow(unused_unsafe)]unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_sep_ as *mut _) } }};
("setdiff") =>
{{ #[allow(unsafe_code)] #[allow(unused_unsafe)]unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_setdiff_ as *mut _) } }};
("set") =>
{{ #[allow(unsafe_code)] #[allow(unused_unsafe)]unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_set_ as *mut _) } }};
("share") =>
{{ #[allow(unsafe_code)] #[allow(unused_unsafe)]unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_share_ as *mut _) } }};
("shift") =>

View file

@ -5,8 +5,8 @@ use gecko_bindings::structs::nsStyleTransformMatrix;
use gecko_bindings::structs::nsTArray;
type nsACString_internal = nsACString;
type nsAString_internal = nsAString;
pub type ServoStyleContextBorrowed<'a> = &'a ::properties::ComputedValues;
pub type ServoStyleContextBorrowedOrNull<'a> = Option<&'a ::properties::ComputedValues>;
pub type ComputedStyleBorrowed<'a> = &'a ::properties::ComputedValues;
pub type ComputedStyleBorrowedOrNull<'a> = Option<&'a ::properties::ComputedValues>;
pub type ServoComputedDataBorrowed<'a> = &'a ServoComputedData;
pub type RawServoAnimationValueTableBorrowed<'a> = &'a ();
use gecko_bindings::structs::mozilla::css::GridTemplateAreasValue;
@ -118,9 +118,7 @@ unsafe impl Sync for nsStyleContentData_CounterFunction {}
use gecko_bindings::structs::nsStyleContentType;
unsafe impl Send for nsStyleContentType {}
unsafe impl Sync for nsStyleContentType {}
use gecko_bindings::structs::nsStyleContext;
unsafe impl Send for nsStyleContext {}
unsafe impl Sync for nsStyleContext {}
use gecko_bindings::structs::ComputedStyle;
use gecko_bindings::structs::nsStyleCoord;
unsafe impl Send for nsStyleCoord {}
unsafe impl Sync for nsStyleCoord {}
@ -238,8 +236,7 @@ use gecko_bindings::structs::LoaderReusableStyleSheets;
use gecko_bindings::structs::SheetLoadData;
use gecko_bindings::structs::ServoStyleSheet;
use gecko_bindings::structs::ServoComputedData;
use gecko_bindings::structs::ServoStyleContext;
use gecko_bindings::structs::ServoStyleContextStrong;
use gecko_bindings::structs::ComputedStyleStrong;
use gecko_bindings::structs::EffectCompositor_CascadeLevel;
use gecko_bindings::structs::UpdateAnimationsTasks;
use gecko_bindings::structs::ParsingMode;
@ -586,9 +583,9 @@ extern "C" {
pub fn Gecko_DestroyAnonymousContentList(anon_content: *mut nsTArray<*mut nsIContent>);
}
extern "C" {
pub fn Gecko_ServoStyleContext_Init(
context: *mut ServoStyleContext,
parent_context: ServoStyleContextBorrowedOrNull,
pub fn Gecko_ComputedStyle_Init(
context: *mut ComputedStyle,
parent_context: ComputedStyleBorrowedOrNull,
pres_context: RawGeckoPresContextBorrowed,
values: ServoComputedDataBorrowed,
pseudo_type: CSSPseudoElementType,
@ -596,7 +593,7 @@ extern "C" {
);
}
extern "C" {
pub fn Gecko_ServoStyleContext_Destroy(context: *mut ServoStyleContext);
pub fn Gecko_ComputedStyle_Destroy(context: *mut ComputedStyle);
}
extern "C" {
pub fn Gecko_ConstructStyleChildrenIterator(
@ -879,8 +876,8 @@ extern "C" {
extern "C" {
pub fn Gecko_UpdateAnimations(
aElementOrPseudo: RawGeckoElementBorrowed,
aOldComputedValues: ServoStyleContextBorrowedOrNull,
aComputedValues: ServoStyleContextBorrowedOrNull,
aOldComputedValues: ComputedStyleBorrowedOrNull,
aComputedValues: ComputedStyleBorrowedOrNull,
aTasks: UpdateAnimationsTasks,
);
}
@ -1173,8 +1170,8 @@ extern "C" {
}
extern "C" {
pub fn Gecko_CalcStyleDifference(
old_style: ServoStyleContextBorrowed,
new_style: ServoStyleContextBorrowed,
old_style: ComputedStyleBorrowed,
new_style: ComputedStyleBorrowed,
any_style_changed: *mut bool,
reset_only_changed: *mut bool,
) -> u32;
@ -1989,7 +1986,7 @@ extern "C" {
extern "C" {
pub fn Servo_Element_GetPrimaryComputedValues(
node: RawGeckoElementBorrowed,
) -> ServoStyleContextStrong;
) -> ComputedStyleStrong;
}
extern "C" {
pub fn Servo_Element_HasPseudoComputedValues(
@ -2001,7 +1998,7 @@ extern "C" {
pub fn Servo_Element_GetPseudoComputedValues(
node: RawGeckoElementBorrowed,
index: usize,
) -> ServoStyleContextStrong;
) -> ComputedStyleStrong;
}
extern "C" {
pub fn Servo_Element_IsDisplayNone(element: RawGeckoElementBorrowed) -> bool;
@ -2160,9 +2157,9 @@ extern "C" {
extern "C" {
pub fn Servo_StyleSet_ResolveForDeclarations(
set: RawServoStyleSetBorrowed,
parent_style: ServoStyleContextBorrowedOrNull,
parent_style: ComputedStyleBorrowedOrNull,
declarations: RawServoDeclarationBlockBorrowed,
) -> ServoStyleContextStrong;
) -> ComputedStyleStrong;
}
extern "C" {
pub fn Servo_SelectorList_Parse(selector_list: *const nsACString) -> *mut RawServoSelectorList;
@ -2257,10 +2254,10 @@ extern "C" {
) -> usize;
}
extern "C" {
pub fn Servo_StyleContext_AddRef(ctx: ServoStyleContextBorrowed);
pub fn Servo_ComputedStyle_AddRef(ctx: ComputedStyleBorrowed);
}
extern "C" {
pub fn Servo_StyleContext_Release(ctx: ServoStyleContextBorrowed);
pub fn Servo_ComputedStyle_Release(ctx: ComputedStyleBorrowed);
}
extern "C" {
pub fn Servo_StyleSet_MightHaveAttributeDependency(
@ -2637,20 +2634,20 @@ extern "C" {
pub fn Servo_GetComputedKeyframeValues(
keyframes: RawGeckoKeyframeListBorrowed,
element: RawGeckoElementBorrowed,
style: ServoStyleContextBorrowed,
style: ComputedStyleBorrowed,
set: RawServoStyleSetBorrowed,
result: RawGeckoComputedKeyframeValuesListBorrowedMut,
);
}
extern "C" {
pub fn Servo_ComputedValues_ExtractAnimationValue(
computed_values: ServoStyleContextBorrowed,
computed_values: ComputedStyleBorrowed,
property: nsCSSPropertyID,
) -> RawServoAnimationValueStrong;
}
extern "C" {
pub fn Servo_ComputedValues_SpecifiesAnimationsOrTransitions(
computed_values: ServoStyleContextBorrowed,
computed_values: ComputedStyleBorrowed,
) -> bool;
}
extern "C" {
@ -2682,7 +2679,7 @@ extern "C" {
pub fn Servo_GetAnimationValues(
declarations: RawServoDeclarationBlockBorrowed,
element: RawGeckoElementBorrowed,
style: ServoStyleContextBorrowed,
style: ComputedStyleBorrowed,
style_set: RawServoStyleSetBorrowed,
animation_values: RawGeckoServoAnimationValueListBorrowedMut,
);
@ -2770,7 +2767,7 @@ extern "C" {
pub fn Servo_AnimationValue_Compute(
element: RawGeckoElementBorrowed,
declarations: RawServoDeclarationBlockBorrowed,
style: ServoStyleContextBorrowed,
style: ComputedStyleBorrowed,
raw_data: RawServoStyleSetBorrowed,
) -> RawServoAnimationValueStrong;
}
@ -2807,7 +2804,7 @@ extern "C" {
declarations: RawServoDeclarationBlockBorrowed,
property: nsCSSPropertyID,
buffer: *mut nsAString,
computed_values: ServoStyleContextBorrowedOrNull,
computed_values: ComputedStyleBorrowedOrNull,
custom_properties: RawServoDeclarationBlockBorrowedOrNull,
);
}
@ -3049,21 +3046,21 @@ extern "C" {
}
extern "C" {
pub fn Servo_ComputedValues_GetForAnonymousBox(
parent_style_or_null: ServoStyleContextBorrowedOrNull,
parent_style_or_null: ComputedStyleBorrowedOrNull,
pseudo_tag: *mut nsAtom,
set: RawServoStyleSetBorrowed,
) -> ServoStyleContextStrong;
) -> ComputedStyleStrong;
}
extern "C" {
pub fn Servo_ComputedValues_Inherit(
set: RawServoStyleSetBorrowed,
pseudo_tag: *mut nsAtom,
parent_style: ServoStyleContextBorrowedOrNull,
parent_style: ComputedStyleBorrowedOrNull,
target: InheritTarget,
) -> ServoStyleContextStrong;
) -> ComputedStyleStrong;
}
extern "C" {
pub fn Servo_ComputedValues_GetStyleBits(values: ServoStyleContextBorrowed) -> u64;
pub fn Servo_ComputedValues_GetStyleBits(values: ComputedStyleBorrowed) -> u64;
}
extern "C" {
pub fn Servo_ComputedValues_EqualCustomProperties(
@ -3073,7 +3070,7 @@ extern "C" {
}
extern "C" {
pub fn Servo_ComputedValues_GetStyleRuleList(
values: ServoStyleContextBorrowed,
values: ComputedStyleBorrowed,
rules: RawGeckoServoStyleRuleListBorrowedMut,
);
}
@ -3100,35 +3097,35 @@ extern "C" {
pub fn Servo_ResolveStyle(
element: RawGeckoElementBorrowed,
set: RawServoStyleSetBorrowed,
) -> ServoStyleContextStrong;
) -> ComputedStyleStrong;
}
extern "C" {
pub fn Servo_ResolvePseudoStyle(
element: RawGeckoElementBorrowed,
pseudo_type: CSSPseudoElementType,
is_probe: bool,
inherited_style: ServoStyleContextBorrowedOrNull,
inherited_style: ComputedStyleBorrowedOrNull,
set: RawServoStyleSetBorrowed,
) -> ServoStyleContextStrong;
) -> ComputedStyleStrong;
}
extern "C" {
pub fn Servo_ComputedValues_ResolveXULTreePseudoStyle(
element: RawGeckoElementBorrowed,
pseudo_tag: *mut nsAtom,
inherited_style: ServoStyleContextBorrowed,
inherited_style: ComputedStyleBorrowed,
input_word: *const AtomArray,
set: RawServoStyleSetBorrowed,
) -> ServoStyleContextStrong;
) -> ComputedStyleStrong;
}
extern "C" {
pub fn Servo_SetExplicitStyle(
element: RawGeckoElementBorrowed,
primary_style: ServoStyleContextBorrowed,
primary_style: ComputedStyleBorrowed,
);
}
extern "C" {
pub fn Servo_HasAuthorSpecifiedRules(
style: ServoStyleContextBorrowed,
style: ComputedStyleBorrowed,
element: RawGeckoElementBorrowed,
pseudo_type: CSSPseudoElementType,
rule_type_mask: u32,
@ -3142,17 +3139,17 @@ extern "C" {
rule_inclusion: StyleRuleInclusion,
snapshots: *const ServoElementSnapshotTable,
set: RawServoStyleSetBorrowed,
) -> ServoStyleContextStrong;
) -> ComputedStyleStrong;
}
extern "C" {
pub fn Servo_ReparentStyle(
style_to_reparent: ServoStyleContextBorrowed,
parent_style: ServoStyleContextBorrowed,
parent_style_ignoring_first_line: ServoStyleContextBorrowed,
layout_parent_style: ServoStyleContextBorrowed,
style_to_reparent: ComputedStyleBorrowed,
parent_style: ComputedStyleBorrowed,
parent_style_ignoring_first_line: ComputedStyleBorrowed,
layout_parent_style: ComputedStyleBorrowed,
element: RawGeckoElementBorrowedOrNull,
set: RawServoStyleSetBorrowed,
) -> ServoStyleContextStrong;
) -> ComputedStyleStrong;
}
extern "C" {
pub fn Servo_TraverseSubtree(
@ -3175,18 +3172,18 @@ extern "C" {
pub fn Servo_StyleSet_GetBaseComputedValuesForElement(
set: RawServoStyleSetBorrowed,
element: RawGeckoElementBorrowed,
existing_style: ServoStyleContextBorrowed,
existing_style: ComputedStyleBorrowed,
snapshots: *const ServoElementSnapshotTable,
) -> ServoStyleContextStrong;
) -> ComputedStyleStrong;
}
extern "C" {
pub fn Servo_StyleSet_GetComputedValuesByAddingAnimation(
set: RawServoStyleSetBorrowed,
element: RawGeckoElementBorrowed,
existing_style: ServoStyleContextBorrowed,
existing_style: ComputedStyleBorrowed,
snapshots: *const ServoElementSnapshotTable,
animation: RawServoAnimationValueBorrowed,
) -> ServoStyleContextStrong;
) -> ComputedStyleStrong;
}
extern "C" {
pub fn Servo_SerializeFontValueForCanvas(
@ -3196,17 +3193,17 @@ extern "C" {
}
extern "C" {
pub fn Servo_GetCustomPropertyValue(
computed_values: ServoStyleContextBorrowed,
computed_values: ComputedStyleBorrowed,
name: *const nsAString,
value: *mut nsAString,
) -> bool;
}
extern "C" {
pub fn Servo_GetCustomPropertiesCount(computed_values: ServoStyleContextBorrowed) -> u32;
pub fn Servo_GetCustomPropertiesCount(computed_values: ComputedStyleBorrowed) -> u32;
}
extern "C" {
pub fn Servo_GetCustomPropertyNameAt(
arg1: ServoStyleContextBorrowed,
arg1: ComputedStyleBorrowed,
index: u32,
name: *mut nsAString,
) -> bool;
@ -3287,6 +3284,9 @@ extern "C" {
weight: nsCSSValueBorrowedMut,
) -> bool;
}
extern "C" {
pub fn Servo_Property_IsShorthand(name: *const nsACString, found: *mut bool) -> bool;
}
extern "C" {
pub fn Gecko_CreateCSSErrorReporter(
sheet: *mut ServoStyleSheet,

File diff suppressed because it is too large Load diff

View file

@ -78,7 +78,7 @@ pub mod style_structs {
pub type ComputedValuesInner = ::gecko_bindings::structs::ServoComputedData;
#[repr(C)]
pub struct ComputedValues(::gecko_bindings::structs::mozilla::ServoStyleContext);
pub struct ComputedValues(::gecko_bindings::structs::mozilla::ComputedStyle);
impl ComputedValues {
pub fn new(
@ -126,7 +126,7 @@ impl ComputedValues {
pub fn pseudo(&self) -> Option<PseudoElement> {
use string_cache::Atom;
let atom = (self.0)._base.mPseudoTag.mRawPtr;
let atom = (self.0).mPseudoTag.mRawPtr;
if atom.is_null() {
return None;
}
@ -136,7 +136,7 @@ impl ComputedValues {
}
fn get_pseudo_type(&self) -> CSSPseudoElementType {
let bits = (self.0)._base.mBits;
let bits = (self.0).mBits;
let our_type = bits >> NS_STYLE_CONTEXT_TYPE_SHIFT;
unsafe { transmute(our_type as u8) }
}
@ -167,7 +167,7 @@ impl ComputedValues {
impl Drop for ComputedValues {
fn drop(&mut self) {
unsafe {
bindings::Gecko_ServoStyleContext_Destroy(&mut self.0);
bindings::Gecko_ComputedStyle_Destroy(&mut self.0);
}
}
}
@ -197,7 +197,7 @@ impl Clone for ComputedValuesInner {
}
type PseudoInfo = (*mut structs::nsAtom, structs::CSSPseudoElementType);
type ParentStyleContextInfo<'a> = Option< &'a ComputedValues>;
type ParentComputedStyleInfo<'a> = Option< &'a ComputedValues>;
impl ComputedValuesInner {
pub fn new(custom_properties: Option<Arc<CustomPropertiesMap>>,
@ -224,7 +224,7 @@ impl ComputedValuesInner {
fn to_outer(
self,
pres_context: RawGeckoPresContextBorrowed,
parent: ParentStyleContextInfo,
parent: ParentComputedStyleInfo,
info: Option<PseudoInfo>
) -> Arc<ComputedValues> {
let (tag, ty) = if let Some(info) = info {
@ -239,13 +239,13 @@ impl ComputedValuesInner {
unsafe fn to_outer_helper(
self,
pres_context: bindings::RawGeckoPresContextBorrowed,
parent: ParentStyleContextInfo,
parent: ParentComputedStyleInfo,
pseudo_ty: structs::CSSPseudoElementType,
pseudo_tag: *mut structs::nsAtom
) -> Arc<ComputedValues> {
let arc = {
let arc: Arc<ComputedValues> = Arc::new(uninitialized());
bindings::Gecko_ServoStyleContext_Init(&arc.0 as *const _ as *mut _,
bindings::Gecko_ComputedStyle_Init(&arc.0 as *const _ as *mut _,
parent, pres_context,
&self, pseudo_ty, pseudo_tag);
// We're simulating a move by having C++ do a memcpy and then forgetting

View file

@ -2422,10 +2422,11 @@ pub struct ComputedValuesInner {
pub struct ComputedValues {
/// The actual computed values
///
/// In Gecko the outer ComputedValues is actually a style context,
/// whereas ComputedValuesInner is the core set of computed values.
/// In Gecko the outer ComputedValues is actually a ComputedStyle, whereas
/// ComputedValuesInner is the core set of computed values.
///
/// We maintain this distinction in servo to reduce the amount of special casing.
/// We maintain this distinction in servo to reduce the amount of special
/// casing.
inner: ComputedValuesInner,
}

View file

@ -667,8 +667,7 @@ impl<E: TElement> StyleSharingCache<E> {
}
// We do not ignore visited state here, because Gecko needs to store
// extra bits on visited style contexts, so these contexts cannot be
// shared.
// extra bits on visited styles, so these contexts cannot be shared.
if target.element.state() != candidate.state() {
trace!("Miss: User and Author State");
return None;

View file

@ -598,7 +598,7 @@ impl<'a, 'b: 'a> StyleAdjuster<'a, 'b> {
/// into the cascade.
///
/// When comparing to Gecko, this is similar to the work done by
/// `nsStyleContext::ApplyStyleFixups`, plus some parts of
/// `ComputedStyle::ApplyStyleFixups`, plus some parts of
/// `nsStyleSet::GetContext`.
pub fn adjust<E>(
&mut self,