зеркало из https://github.com/mozilla/gecko-dev.git
servo: Merge #5759 - Skip computing fragment position and return early if visibility property is not set (from Adenilson:visibleReturn01); r=pcwalton
Source-Repo: https://github.com/servo/servo Source-Revision: 23945f2ea865710751e9c822b367598eddd86e1f
This commit is contained in:
Родитель
e03698dc86
Коммит
21fd0da8d3
|
@ -790,6 +790,10 @@ impl FragmentDisplayListBuilding for Fragment {
|
||||||
relative_containing_block_mode: WritingMode,
|
relative_containing_block_mode: WritingMode,
|
||||||
background_and_border_level: BackgroundAndBorderLevel,
|
background_and_border_level: BackgroundAndBorderLevel,
|
||||||
clip: &ClippingRegion) {
|
clip: &ClippingRegion) {
|
||||||
|
if self.style().get_inheritedbox().visibility != visibility::T::visible {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
// Compute the fragment position relative to the parent stacking context. If the fragment
|
// Compute the fragment position relative to the parent stacking context. If the fragment
|
||||||
// itself establishes a stacking context, then the origin of its position will be (0, 0)
|
// itself establishes a stacking context, then the origin of its position will be (0, 0)
|
||||||
// for the purposes of this computation.
|
// for the purposes of this computation.
|
||||||
|
@ -807,10 +811,6 @@ impl FragmentDisplayListBuilding for Fragment {
|
||||||
stacking_relative_flow_origin,
|
stacking_relative_flow_origin,
|
||||||
self);
|
self);
|
||||||
|
|
||||||
if self.style().get_inheritedbox().visibility != visibility::T::visible {
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
if !stacking_relative_border_box.intersects(&layout_context.shared.dirty) {
|
if !stacking_relative_border_box.intersects(&layout_context.shared.dirty) {
|
||||||
debug!("Fragment::build_display_list: Did not intersect...");
|
debug!("Fragment::build_display_list: Did not intersect...");
|
||||||
return
|
return
|
||||||
|
|
Загрузка…
Ссылка в новой задаче