Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // Copyright (c) 2014 The Chromium Authors. All rights reserved.
- // Use of this source code is governed by a BSD-style license that can be
- // found in the LICENSE file.
- #include "core/ComputedStyleBase.h"
- #include "platform/wtf/SizeAssertions.h"
- namespace blink {
- struct SameSizeAsComputedStyleBase {
- void* dataRefs[4];
- unsigned m_bit_fields[4];
- };
- // If this fails, the packing algorithm in make_computed_style_base.py has
- // failed to produce the optimal packed size. To fix, update the algorithm to
- // ensure that the buckets are placed so that each takes up at most 1 word.
- ASSERT_SIZE(ComputedStyleBase, SameSizeAsComputedStyleBase);
- void ComputedStyleBase::InheritFrom(const ComputedStyleBase& other,
- IsAtShadowBoundary isAtShadowBoundary) {
- inherited_data_ = other.inherited_data_;
- cursor_ = other.cursor_;
- list_style_type_ = other.list_style_type_;
- pointer_events_ = other.pointer_events_;
- text_align_ = other.text_align_;
- white_space_ = other.white_space_;
- inside_link_ = other.inside_link_;
- text_transform_ = other.text_transform_;
- visibility_ = other.visibility_;
- writing_mode_ = other.writing_mode_;
- border_collapse_ = other.border_collapse_;
- box_direction_ = other.box_direction_;
- caption_side_ = other.caption_side_;
- direction_ = other.direction_;
- empty_cells_ = other.empty_cells_;
- has_simple_underline_ = other.has_simple_underline_;
- list_style_position_ = other.list_style_position_;
- print_color_adjust_ = other.print_color_adjust_;
- rtl_ordering_ = other.rtl_ordering_;
- }
- void ComputedStyleBase::CopyNonInheritedFromCached(
- const ComputedStyleBase& other) {
- visual_data_ = other.visual_data_;
- background_data_ = other.background_data_;
- surround_data_ = other.surround_data_;
- display_ = other.display_;
- break_after_ = other.break_after_;
- break_before_ = other.break_before_;
- overflow_x_ = other.overflow_x_;
- overflow_y_ = other.overflow_y_;
- position_ = other.position_;
- unicode_bidi_ = other.unicode_bidi_;
- break_inside_ = other.break_inside_;
- clear_ = other.clear_;
- floating_ = other.floating_;
- overflow_anchor_ = other.overflow_anchor_;
- transform_box_ = other.transform_box_;
- border_collapse_is_inherited_ = other.border_collapse_is_inherited_;
- box_direction_is_inherited_ = other.box_direction_is_inherited_;
- caption_side_is_inherited_ = other.caption_side_is_inherited_;
- empty_cells_is_inherited_ = other.empty_cells_is_inherited_;
- list_style_position_is_inherited_ = other.list_style_position_is_inherited_;
- pointer_events_is_inherited_ = other.pointer_events_is_inherited_;
- print_color_adjust_is_inherited_ = other.print_color_adjust_is_inherited_;
- rtl_ordering_is_inherited_ = other.rtl_ordering_is_inherited_;
- table_layout_ = other.table_layout_;
- text_align_is_inherited_ = other.text_align_is_inherited_;
- text_transform_is_inherited_ = other.text_transform_is_inherited_;
- visibility_is_inherited_ = other.visibility_is_inherited_;
- white_space_is_inherited_ = other.white_space_is_inherited_;
- }
- void ComputedStyleBase::PropagateIndependentInheritedProperties(
- const ComputedStyleBase& parentStyle) {
- if (PointerEventsIsInherited())
- pointer_events_ = parentStyle.pointer_events_;
- if (TextAlignIsInherited())
- text_align_ = parentStyle.text_align_;
- if (WhiteSpaceIsInherited())
- white_space_ = parentStyle.white_space_;
- if (TextTransformIsInherited())
- text_transform_ = parentStyle.text_transform_;
- if (VisibilityIsInherited())
- visibility_ = parentStyle.visibility_;
- if (BorderCollapseIsInherited())
- border_collapse_ = parentStyle.border_collapse_;
- if (BoxDirectionIsInherited())
- box_direction_ = parentStyle.box_direction_;
- if (CaptionSideIsInherited())
- caption_side_ = parentStyle.caption_side_;
- if (EmptyCellsIsInherited())
- empty_cells_ = parentStyle.empty_cells_;
- if (ListStylePositionIsInherited())
- list_style_position_ = parentStyle.list_style_position_;
- if (PrintColorAdjustIsInherited())
- print_color_adjust_ = parentStyle.print_color_adjust_;
- if (RtlOrderingIsInherited())
- rtl_ordering_ = parentStyle.rtl_ordering_;
- }
- } // namespace blink
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement