| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (C) 1999 Antti Koivisto (koivisto@kde.org) | 2 * Copyright (C) 1999 Antti Koivisto (koivisto@kde.org) |
| 3 * Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009, 2010 Apple Inc. All rights | 3 * Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009, 2010 Apple Inc. All rights |
| 4 * reserved. | 4 * reserved. |
| 5 * Copyright (C) 2011 Adobe Systems Incorporated. All rights reserved. | 5 * Copyright (C) 2011 Adobe Systems Incorporated. All rights reserved. |
| 6 * | 6 * |
| 7 * This library is free software; you can redistribute it and/or | 7 * This library is free software; you can redistribute it and/or |
| 8 * modify it under the terms of the GNU Library General Public | 8 * modify it under the terms of the GNU Library General Public |
| 9 * License as published by the Free Software Foundation; either | 9 * License as published by the Free Software Foundation; either |
| 10 * version 2 of the License, or (at your option) any later version. | 10 * version 2 of the License, or (at your option) any later version. |
| (...skipping 396 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 407 for (size_t i = 0; i < cached_pseudo_styles_->size(); ++i) { | 407 for (size_t i = 0; i < cached_pseudo_styles_->size(); ++i) { |
| 408 ComputedStyle* pseudo_style = cached_pseudo_styles_->at(i).Get(); | 408 ComputedStyle* pseudo_style = cached_pseudo_styles_->at(i).Get(); |
| 409 if (pseudo_style->StyleType() == pid) | 409 if (pseudo_style->StyleType() == pid) |
| 410 return pseudo_style; | 410 return pseudo_style; |
| 411 } | 411 } |
| 412 | 412 |
| 413 return 0; | 413 return 0; |
| 414 } | 414 } |
| 415 | 415 |
| 416 ComputedStyle* ComputedStyle::AddCachedPseudoStyle( | 416 ComputedStyle* ComputedStyle::AddCachedPseudoStyle( |
| 417 PassRefPtr<ComputedStyle> pseudo) { | 417 RefPtr<ComputedStyle> pseudo) { |
| 418 if (!pseudo) | 418 if (!pseudo) |
| 419 return 0; | 419 return 0; |
| 420 | 420 |
| 421 DCHECK_GT(pseudo->StyleType(), kPseudoIdNone); | 421 DCHECK_GT(pseudo->StyleType(), kPseudoIdNone); |
| 422 | 422 |
| 423 ComputedStyle* result = pseudo.Get(); | 423 ComputedStyle* result = pseudo.Get(); |
| 424 | 424 |
| 425 if (!cached_pseudo_styles_) | 425 if (!cached_pseudo_styles_) |
| 426 cached_pseudo_styles_ = WTF::WrapUnique(new PseudoStyleCache); | 426 cached_pseudo_styles_ = WTF::WrapUnique(new PseudoStyleCache); |
| 427 | 427 |
| (...skipping 656 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1084 if (!rare_inherited_data_.Access()->cursor_data_) | 1084 if (!rare_inherited_data_.Access()->cursor_data_) |
| 1085 rare_inherited_data_.Access()->cursor_data_ = new CursorList; | 1085 rare_inherited_data_.Access()->cursor_data_ = new CursorList; |
| 1086 rare_inherited_data_.Access()->cursor_data_->push_back( | 1086 rare_inherited_data_.Access()->cursor_data_->push_back( |
| 1087 CursorData(image, hot_spot_specified, hot_spot)); | 1087 CursorData(image, hot_spot_specified, hot_spot)); |
| 1088 } | 1088 } |
| 1089 | 1089 |
| 1090 void ComputedStyle::SetCursorList(CursorList* other) { | 1090 void ComputedStyle::SetCursorList(CursorList* other) { |
| 1091 rare_inherited_data_.Access()->cursor_data_ = other; | 1091 rare_inherited_data_.Access()->cursor_data_ = other; |
| 1092 } | 1092 } |
| 1093 | 1093 |
| 1094 void ComputedStyle::SetQuotes(PassRefPtr<QuotesData> q) { | 1094 void ComputedStyle::SetQuotes(RefPtr<QuotesData> q) { |
| 1095 rare_inherited_data_.Access()->quotes_ = std::move(q); | 1095 rare_inherited_data_.Access()->quotes_ = std::move(q); |
| 1096 } | 1096 } |
| 1097 | 1097 |
| 1098 bool ComputedStyle::QuotesDataEquivalent(const ComputedStyle& other) const { | 1098 bool ComputedStyle::QuotesDataEquivalent(const ComputedStyle& other) const { |
| 1099 return DataEquivalent(Quotes(), other.Quotes()); | 1099 return DataEquivalent(Quotes(), other.Quotes()); |
| 1100 } | 1100 } |
| 1101 | 1101 |
| 1102 void ComputedStyle::ClearCursorList() { | 1102 void ComputedStyle::ClearCursorList() { |
| 1103 if (rare_inherited_data_->cursor_data_) | 1103 if (rare_inherited_data_->cursor_data_) |
| 1104 rare_inherited_data_.Access()->cursor_data_ = nullptr; | 1104 rare_inherited_data_.Access()->cursor_data_ = nullptr; |
| (...skipping 259 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1364 | 1364 |
| 1365 transform.Translate(point.X() - origin_x + origin_shift_x, | 1365 transform.Translate(point.X() - origin_x + origin_shift_x, |
| 1366 point.Y() - origin_y + origin_shift_y); | 1366 point.Y() - origin_y + origin_shift_y); |
| 1367 transform.Rotate(angle + motion_data.rotation_.angle); | 1367 transform.Rotate(angle + motion_data.rotation_.angle); |
| 1368 | 1368 |
| 1369 if (position.X() != Length(kAuto) || anchor.X() != Length(kAuto)) | 1369 if (position.X() != Length(kAuto) || anchor.X() != Length(kAuto)) |
| 1370 // Shift the origin back to transform-origin. | 1370 // Shift the origin back to transform-origin. |
| 1371 transform.Translate(-origin_shift_x, -origin_shift_y); | 1371 transform.Translate(-origin_shift_x, -origin_shift_y); |
| 1372 } | 1372 } |
| 1373 | 1373 |
| 1374 void ComputedStyle::SetTextShadow(PassRefPtr<ShadowList> s) { | 1374 void ComputedStyle::SetTextShadow(RefPtr<ShadowList> s) { |
| 1375 rare_inherited_data_.Access()->text_shadow_ = std::move(s); | 1375 rare_inherited_data_.Access()->text_shadow_ = std::move(s); |
| 1376 } | 1376 } |
| 1377 | 1377 |
| 1378 bool ComputedStyle::TextShadowDataEquivalent(const ComputedStyle& other) const { | 1378 bool ComputedStyle::TextShadowDataEquivalent(const ComputedStyle& other) const { |
| 1379 return DataEquivalent(TextShadow(), other.TextShadow()); | 1379 return DataEquivalent(TextShadow(), other.TextShadow()); |
| 1380 } | 1380 } |
| 1381 | 1381 |
| 1382 void ComputedStyle::SetBoxShadow(PassRefPtr<ShadowList> s) { | 1382 void ComputedStyle::SetBoxShadow(RefPtr<ShadowList> s) { |
| 1383 rare_non_inherited_data_.Access()->box_shadow_ = std::move(s); | 1383 rare_non_inherited_data_.Access()->box_shadow_ = std::move(s); |
| 1384 } | 1384 } |
| 1385 | 1385 |
| 1386 static FloatRoundedRect::Radii CalcRadiiFor(const BorderData& border, | 1386 static FloatRoundedRect::Radii CalcRadiiFor(const BorderData& border, |
| 1387 const LengthSize& top_left, | 1387 const LengthSize& top_left, |
| 1388 const LengthSize& top_right, | 1388 const LengthSize& top_right, |
| 1389 const LengthSize& bottom_left, | 1389 const LengthSize& bottom_left, |
| 1390 const LengthSize& bottom_right, | 1390 const LengthSize& bottom_right, |
| 1391 LayoutSize size) { | 1391 LayoutSize size) { |
| 1392 return FloatRoundedRect::Radii( | 1392 return FloatRoundedRect::Radii( |
| (...skipping 366 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1759 StyleNonInheritedVariables& ComputedStyle::MutableNonInheritedVariables() { | 1759 StyleNonInheritedVariables& ComputedStyle::MutableNonInheritedVariables() { |
| 1760 std::unique_ptr<StyleNonInheritedVariables>& variables = | 1760 std::unique_ptr<StyleNonInheritedVariables>& variables = |
| 1761 rare_non_inherited_data_.Access()->variables_; | 1761 rare_non_inherited_data_.Access()->variables_; |
| 1762 if (!variables) | 1762 if (!variables) |
| 1763 variables = StyleNonInheritedVariables::Create(); | 1763 variables = StyleNonInheritedVariables::Create(); |
| 1764 return *variables; | 1764 return *variables; |
| 1765 } | 1765 } |
| 1766 | 1766 |
| 1767 void ComputedStyle::SetUnresolvedInheritedVariable( | 1767 void ComputedStyle::SetUnresolvedInheritedVariable( |
| 1768 const AtomicString& name, | 1768 const AtomicString& name, |
| 1769 PassRefPtr<CSSVariableData> value) { | 1769 RefPtr<CSSVariableData> value) { |
| 1770 DCHECK(value && value->NeedsVariableResolution()); | 1770 DCHECK(value && value->NeedsVariableResolution()); |
| 1771 MutableInheritedVariables().SetVariable(name, std::move(value)); | 1771 MutableInheritedVariables().SetVariable(name, std::move(value)); |
| 1772 } | 1772 } |
| 1773 | 1773 |
| 1774 void ComputedStyle::SetUnresolvedNonInheritedVariable( | 1774 void ComputedStyle::SetUnresolvedNonInheritedVariable( |
| 1775 const AtomicString& name, | 1775 const AtomicString& name, |
| 1776 PassRefPtr<CSSVariableData> value) { | 1776 RefPtr<CSSVariableData> value) { |
| 1777 DCHECK(value && value->NeedsVariableResolution()); | 1777 DCHECK(value && value->NeedsVariableResolution()); |
| 1778 MutableNonInheritedVariables().SetVariable(name, std::move(value)); | 1778 MutableNonInheritedVariables().SetVariable(name, std::move(value)); |
| 1779 } | 1779 } |
| 1780 | 1780 |
| 1781 void ComputedStyle::SetResolvedUnregisteredVariable( | 1781 void ComputedStyle::SetResolvedUnregisteredVariable( |
| 1782 const AtomicString& name, | 1782 const AtomicString& name, |
| 1783 PassRefPtr<CSSVariableData> value) { | 1783 RefPtr<CSSVariableData> value) { |
| 1784 DCHECK(value && !value->NeedsVariableResolution()); | 1784 DCHECK(value && !value->NeedsVariableResolution()); |
| 1785 MutableInheritedVariables().SetVariable(name, std::move(value)); | 1785 MutableInheritedVariables().SetVariable(name, std::move(value)); |
| 1786 } | 1786 } |
| 1787 | 1787 |
| 1788 void ComputedStyle::SetResolvedInheritedVariable( | 1788 void ComputedStyle::SetResolvedInheritedVariable(const AtomicString& name, |
| 1789 const AtomicString& name, | 1789 RefPtr<CSSVariableData> value, |
| 1790 PassRefPtr<CSSVariableData> value, | 1790 const CSSValue* parsed_value) { |
| 1791 const CSSValue* parsed_value) { | |
| 1792 DCHECK(!!value == !!parsed_value); | 1791 DCHECK(!!value == !!parsed_value); |
| 1793 DCHECK(!(value && value->NeedsVariableResolution())); | 1792 DCHECK(!(value && value->NeedsVariableResolution())); |
| 1794 | 1793 |
| 1795 StyleInheritedVariables& variables = MutableInheritedVariables(); | 1794 StyleInheritedVariables& variables = MutableInheritedVariables(); |
| 1796 variables.SetVariable(name, std::move(value)); | 1795 variables.SetVariable(name, std::move(value)); |
| 1797 variables.SetRegisteredVariable(name, parsed_value); | 1796 variables.SetRegisteredVariable(name, parsed_value); |
| 1798 } | 1797 } |
| 1799 | 1798 |
| 1800 void ComputedStyle::SetResolvedNonInheritedVariable( | 1799 void ComputedStyle::SetResolvedNonInheritedVariable( |
| 1801 const AtomicString& name, | 1800 const AtomicString& name, |
| 1802 PassRefPtr<CSSVariableData> value, | 1801 RefPtr<CSSVariableData> value, |
| 1803 const CSSValue* parsed_value) { | 1802 const CSSValue* parsed_value) { |
| 1804 DCHECK(!!value == !!parsed_value); | 1803 DCHECK(!!value == !!parsed_value); |
| 1805 DCHECK(!(value && value->NeedsVariableResolution())); | 1804 DCHECK(!(value && value->NeedsVariableResolution())); |
| 1806 | 1805 |
| 1807 StyleNonInheritedVariables& variables = MutableNonInheritedVariables(); | 1806 StyleNonInheritedVariables& variables = MutableNonInheritedVariables(); |
| 1808 variables.SetVariable(name, std::move(value)); | 1807 variables.SetVariable(name, std::move(value)); |
| 1809 variables.SetRegisteredVariable(name, parsed_value); | 1808 variables.SetRegisteredVariable(name, parsed_value); |
| 1810 } | 1809 } |
| 1811 | 1810 |
| 1812 void ComputedStyle::RemoveVariable(const AtomicString& name, | 1811 void ComputedStyle::RemoveVariable(const AtomicString& name, |
| (...skipping 489 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2302 else | 2301 else |
| 2303 SetMarginLeft(margin); | 2302 SetMarginLeft(margin); |
| 2304 } else { | 2303 } else { |
| 2305 if (IsLeftToRightDirection()) | 2304 if (IsLeftToRightDirection()) |
| 2306 SetMarginBottom(margin); | 2305 SetMarginBottom(margin); |
| 2307 else | 2306 else |
| 2308 SetMarginTop(margin); | 2307 SetMarginTop(margin); |
| 2309 } | 2308 } |
| 2310 } | 2309 } |
| 2311 | 2310 |
| 2312 void ComputedStyle::SetOffsetPath(PassRefPtr<BasicShape> path) { | 2311 void ComputedStyle::SetOffsetPath(RefPtr<BasicShape> path) { |
| 2313 rare_non_inherited_data_.Access()->transform_.Access()->motion_.path_ = | 2312 rare_non_inherited_data_.Access()->transform_.Access()->motion_.path_ = |
| 2314 std::move(path); | 2313 std::move(path); |
| 2315 } | 2314 } |
| 2316 | 2315 |
| 2317 int ComputedStyle::OutlineOutsetExtent() const { | 2316 int ComputedStyle::OutlineOutsetExtent() const { |
| 2318 if (!HasOutline()) | 2317 if (!HasOutline()) |
| 2319 return 0; | 2318 return 0; |
| 2320 if (OutlineStyleIsAuto()) { | 2319 if (OutlineStyleIsAuto()) { |
| 2321 return GraphicsContext::FocusRingOutsetExtent( | 2320 return GraphicsContext::FocusRingOutsetExtent( |
| 2322 OutlineOffset(), std::ceil(GetOutlineStrokeWidthForFocusRing())); | 2321 OutlineOffset(), std::ceil(GetOutlineStrokeWidthForFocusRing())); |
| (...skipping 171 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2494 if (value < 0) | 2493 if (value < 0) |
| 2495 fvalue -= 0.5f; | 2494 fvalue -= 0.5f; |
| 2496 else | 2495 else |
| 2497 fvalue += 0.5f; | 2496 fvalue += 0.5f; |
| 2498 } | 2497 } |
| 2499 | 2498 |
| 2500 return RoundForImpreciseConversion<int>(fvalue / zoom_factor); | 2499 return RoundForImpreciseConversion<int>(fvalue / zoom_factor); |
| 2501 } | 2500 } |
| 2502 | 2501 |
| 2503 } // namespace blink | 2502 } // namespace blink |
| OLD | NEW |