Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 /* | 1 /* |
| 2 * Copyright (C) 2003 Lars Knoll (knoll@kde.org) | 2 * Copyright (C) 2003 Lars Knoll (knoll@kde.org) |
| 3 * Copyright (C) 2005 Allan Sandfeld Jensen (kde@carewolf.com) | 3 * Copyright (C) 2005 Allan Sandfeld Jensen (kde@carewolf.com) |
| 4 * Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012 Apple Inc. All rights reserved. | 4 * Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012 Apple Inc. All rights reserved. |
| 5 * Copyright (C) 2007 Nicholas Shanks <webkit@nickshanks.com> | 5 * Copyright (C) 2007 Nicholas Shanks <webkit@nickshanks.com> |
| 6 * Copyright (C) 2008 Eric Seidel <eric@webkit.org> | 6 * Copyright (C) 2008 Eric Seidel <eric@webkit.org> |
| 7 * Copyright (C) 2009 Torch Mobile Inc. All rights reserved. (http://www.torchmo bile.com/) | 7 * Copyright (C) 2009 Torch Mobile Inc. All rights reserved. (http://www.torchmo bile.com/) |
| 8 * Copyright (C) 2012 Adobe Systems Incorporated. All rights reserved. | 8 * Copyright (C) 2012 Adobe Systems Incorporated. All rights reserved. |
| 9 * Copyright (C) 2012 Intel Corporation. All rights reserved. | 9 * Copyright (C) 2012 Intel Corporation. All rights reserved. |
| 10 * | 10 * |
| (...skipping 5797 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 5808 class BorderImageParseContext { | 5808 class BorderImageParseContext { |
| 5809 STACK_ALLOCATED(); | 5809 STACK_ALLOCATED(); |
| 5810 public: | 5810 public: |
| 5811 BorderImageParseContext() | 5811 BorderImageParseContext() |
| 5812 : m_canAdvance(false) | 5812 : m_canAdvance(false) |
| 5813 , m_allowCommit(true) | 5813 , m_allowCommit(true) |
| 5814 , m_allowImage(true) | 5814 , m_allowImage(true) |
| 5815 , m_allowImageSlice(true) | 5815 , m_allowImageSlice(true) |
| 5816 , m_allowRepeat(true) | 5816 , m_allowRepeat(true) |
| 5817 , m_allowForwardSlashOperator(false) | 5817 , m_allowForwardSlashOperator(false) |
| 5818 , m_requireWidth(false) | 5818 , m_allowWidth(false) |
|
rwlbuis
2014/08/21 15:54:25
Renaming this variable makes the review much harde
je_julie(Not used)
2014/08/22 00:31:39
From the spec,http://www.w3.org/TR/css3-background
| |
| 5819 , m_requireOutset(false) | 5819 , m_requireOutset(false) |
| 5820 {} | 5820 {} |
| 5821 | 5821 |
| 5822 bool canAdvance() const { return m_canAdvance; } | 5822 bool canAdvance() const { return m_canAdvance; } |
| 5823 void setCanAdvance(bool canAdvance) { m_canAdvance = canAdvance; } | 5823 void setCanAdvance(bool canAdvance) { m_canAdvance = canAdvance; } |
| 5824 | 5824 |
| 5825 bool allowCommit() const { return m_allowCommit; } | 5825 bool allowCommit() const { return m_allowCommit; } |
| 5826 bool allowImage() const { return m_allowImage; } | 5826 bool allowImage() const { return m_allowImage; } |
| 5827 bool allowImageSlice() const { return m_allowImageSlice; } | 5827 bool allowImageSlice() const { return m_allowImageSlice; } |
| 5828 bool allowRepeat() const { return m_allowRepeat; } | 5828 bool allowRepeat() const { return m_allowRepeat; } |
| 5829 bool allowForwardSlashOperator() const { return m_allowForwardSlashOperator; } | 5829 bool allowForwardSlashOperator() const { return m_allowForwardSlashOperator; } |
| 5830 bool allowWidth() const { return m_allowWidth; } | |
| 5830 | 5831 |
| 5831 bool requireWidth() const { return m_requireWidth; } | |
| 5832 bool requireOutset() const { return m_requireOutset; } | 5832 bool requireOutset() const { return m_requireOutset; } |
| 5833 | 5833 |
| 5834 void commitImage(PassRefPtrWillBeRawPtr<CSSValue> image) | 5834 void commitImage(PassRefPtrWillBeRawPtr<CSSValue> image) |
| 5835 { | 5835 { |
| 5836 m_image = image; | 5836 m_image = image; |
| 5837 m_canAdvance = true; | 5837 m_canAdvance = true; |
| 5838 m_allowCommit = true; | 5838 m_allowCommit = true; |
| 5839 m_allowImage = m_allowForwardSlashOperator = m_requireWidth = m_requireO utset = false; | 5839 m_allowImage = m_allowForwardSlashOperator = m_allowWidth = m_requireOut set = false; |
| 5840 m_allowImageSlice = !m_imageSlice; | 5840 m_allowImageSlice = !m_imageSlice; |
| 5841 m_allowRepeat = !m_repeat; | 5841 m_allowRepeat = !m_repeat; |
| 5842 } | 5842 } |
| 5843 void commitImageSlice(PassRefPtrWillBeRawPtr<CSSBorderImageSliceValue> slice ) | 5843 void commitImageSlice(PassRefPtrWillBeRawPtr<CSSBorderImageSliceValue> slice ) |
| 5844 { | 5844 { |
| 5845 m_imageSlice = slice; | 5845 m_imageSlice = slice; |
| 5846 m_canAdvance = true; | 5846 m_canAdvance = true; |
| 5847 m_allowCommit = m_allowForwardSlashOperator = true; | 5847 m_allowCommit = m_allowForwardSlashOperator = true; |
| 5848 m_allowImageSlice = m_requireWidth = m_requireOutset = false; | 5848 m_allowImageSlice = m_allowWidth = m_requireOutset = false; |
| 5849 m_allowImage = !m_image; | 5849 m_allowImage = !m_image; |
| 5850 m_allowRepeat = !m_repeat; | 5850 m_allowRepeat = !m_repeat; |
| 5851 } | 5851 } |
| 5852 void commitForwardSlashOperator() | 5852 void commitForwardSlashOperator() |
| 5853 { | 5853 { |
| 5854 m_canAdvance = true; | 5854 m_canAdvance = true; |
| 5855 m_allowCommit = m_allowImage = m_allowImageSlice = m_allowRepeat = m_all owForwardSlashOperator = false; | 5855 m_allowCommit = m_allowImage = m_allowImageSlice = m_allowRepeat = false ; |
| 5856 if (!m_borderWidth) { | 5856 if (!m_borderWidth && !m_allowWidth) { |
| 5857 m_requireWidth = true; | 5857 m_allowForwardSlashOperator = true; |
| 5858 m_allowWidth = true; | |
| 5858 m_requireOutset = false; | 5859 m_requireOutset = false; |
| 5859 } else { | 5860 } else { |
| 5861 m_allowForwardSlashOperator = false; | |
| 5860 m_requireOutset = true; | 5862 m_requireOutset = true; |
| 5861 m_requireWidth = false; | 5863 m_allowWidth = false; |
| 5862 } | 5864 } |
| 5863 } | 5865 } |
| 5864 void commitBorderWidth(PassRefPtrWillBeRawPtr<CSSPrimitiveValue> width) | 5866 void commitBorderWidth(PassRefPtrWillBeRawPtr<CSSPrimitiveValue> width) |
| 5865 { | 5867 { |
| 5866 m_borderWidth = width; | 5868 m_borderWidth = width; |
| 5867 m_canAdvance = true; | 5869 m_canAdvance = true; |
| 5868 m_allowCommit = m_allowForwardSlashOperator = true; | 5870 m_allowCommit = m_allowForwardSlashOperator = true; |
| 5869 m_allowImageSlice = m_requireWidth = m_requireOutset = false; | 5871 m_allowImageSlice = m_allowWidth = m_requireOutset = false; |
| 5870 m_allowImage = !m_image; | 5872 m_allowImage = !m_image; |
| 5871 m_allowRepeat = !m_repeat; | 5873 m_allowRepeat = !m_repeat; |
| 5872 } | 5874 } |
| 5873 void commitBorderOutset(PassRefPtrWillBeRawPtr<CSSPrimitiveValue> outset) | 5875 void commitBorderOutset(PassRefPtrWillBeRawPtr<CSSPrimitiveValue> outset) |
| 5874 { | 5876 { |
| 5875 m_outset = outset; | 5877 m_outset = outset; |
| 5876 m_canAdvance = true; | 5878 m_canAdvance = true; |
| 5877 m_allowCommit = true; | 5879 m_allowCommit = true; |
| 5878 m_allowImageSlice = m_allowForwardSlashOperator = m_requireWidth = m_req uireOutset = false; | 5880 m_allowImageSlice = m_allowForwardSlashOperator = m_allowWidth = m_requi reOutset = false; |
| 5879 m_allowImage = !m_image; | 5881 m_allowImage = !m_image; |
| 5880 m_allowRepeat = !m_repeat; | 5882 m_allowRepeat = !m_repeat; |
| 5881 } | 5883 } |
| 5882 void commitRepeat(PassRefPtrWillBeRawPtr<CSSValue> repeat) | 5884 void commitRepeat(PassRefPtrWillBeRawPtr<CSSValue> repeat) |
| 5883 { | 5885 { |
| 5884 m_repeat = repeat; | 5886 m_repeat = repeat; |
| 5885 m_canAdvance = true; | 5887 m_canAdvance = true; |
| 5886 m_allowCommit = true; | 5888 m_allowCommit = true; |
| 5887 m_allowRepeat = m_allowForwardSlashOperator = m_requireWidth = m_require Outset = false; | 5889 m_allowRepeat = m_allowForwardSlashOperator = m_allowWidth = m_requireOu tset = false; |
| 5888 m_allowImageSlice = !m_imageSlice; | 5890 m_allowImageSlice = !m_imageSlice; |
| 5889 m_allowImage = !m_image; | 5891 m_allowImage = !m_image; |
| 5890 } | 5892 } |
| 5891 | 5893 |
| 5892 PassRefPtrWillBeRawPtr<CSSValue> commitCSSValue() | 5894 PassRefPtrWillBeRawPtr<CSSValue> commitCSSValue() |
| 5893 { | 5895 { |
| 5894 return createBorderImageValue(m_image, m_imageSlice.get(), m_borderWidth .get(), m_outset.get(), m_repeat.get()); | 5896 return createBorderImageValue(m_image, m_imageSlice.get(), m_borderWidth .get(), m_outset.get(), m_repeat.get()); |
| 5895 } | 5897 } |
| 5896 | 5898 |
| 5897 void commitMaskBoxImage(CSSPropertyParser* parser, bool important) | 5899 void commitMaskBoxImage(CSSPropertyParser* parser, bool important) |
| (...skipping 25 matching lines...) Expand all Loading... | |
| 5923 static bool buildFromParser(CSSPropertyParser&, CSSPropertyID, BorderImagePa rseContext&); | 5925 static bool buildFromParser(CSSPropertyParser&, CSSPropertyID, BorderImagePa rseContext&); |
| 5924 | 5926 |
| 5925 bool m_canAdvance; | 5927 bool m_canAdvance; |
| 5926 | 5928 |
| 5927 bool m_allowCommit; | 5929 bool m_allowCommit; |
| 5928 bool m_allowImage; | 5930 bool m_allowImage; |
| 5929 bool m_allowImageSlice; | 5931 bool m_allowImageSlice; |
| 5930 bool m_allowRepeat; | 5932 bool m_allowRepeat; |
| 5931 bool m_allowForwardSlashOperator; | 5933 bool m_allowForwardSlashOperator; |
| 5932 | 5934 |
| 5933 bool m_requireWidth; | 5935 bool m_allowWidth; |
| 5934 bool m_requireOutset; | 5936 bool m_requireOutset; |
| 5935 | 5937 |
| 5936 RefPtrWillBeMember<CSSValue> m_image; | 5938 RefPtrWillBeMember<CSSValue> m_image; |
| 5937 RefPtrWillBeMember<CSSBorderImageSliceValue> m_imageSlice; | 5939 RefPtrWillBeMember<CSSBorderImageSliceValue> m_imageSlice; |
| 5938 RefPtrWillBeMember<CSSPrimitiveValue> m_borderWidth; | 5940 RefPtrWillBeMember<CSSPrimitiveValue> m_borderWidth; |
| 5939 RefPtrWillBeMember<CSSPrimitiveValue> m_outset; | 5941 RefPtrWillBeMember<CSSPrimitiveValue> m_outset; |
| 5940 | 5942 |
| 5941 RefPtrWillBeMember<CSSValue> m_repeat; | 5943 RefPtrWillBeMember<CSSValue> m_repeat; |
| 5942 }; | 5944 }; |
| 5943 | 5945 |
| (...skipping 30 matching lines...) Expand all Loading... | |
| 5974 if (parser.parseBorderImageSlice(propId, imageSlice)) | 5976 if (parser.parseBorderImageSlice(propId, imageSlice)) |
| 5975 context.commitImageSlice(imageSlice.release()); | 5977 context.commitImageSlice(imageSlice.release()); |
| 5976 } | 5978 } |
| 5977 | 5979 |
| 5978 if (!context.canAdvance() && context.allowRepeat()) { | 5980 if (!context.canAdvance() && context.allowRepeat()) { |
| 5979 RefPtrWillBeRawPtr<CSSValue> repeat = nullptr; | 5981 RefPtrWillBeRawPtr<CSSValue> repeat = nullptr; |
| 5980 if (parser.parseBorderImageRepeat(repeat)) | 5982 if (parser.parseBorderImageRepeat(repeat)) |
| 5981 context.commitRepeat(repeat.release()); | 5983 context.commitRepeat(repeat.release()); |
| 5982 } | 5984 } |
| 5983 | 5985 |
| 5984 if (!context.canAdvance() && context.requireWidth()) { | 5986 if (!context.canAdvance() && context.allowWidth()) { |
| 5985 RefPtrWillBeRawPtr<CSSPrimitiveValue> borderWidth = nullptr; | 5987 RefPtrWillBeRawPtr<CSSPrimitiveValue> borderWidth = nullptr; |
| 5986 if (parser.parseBorderImageWidth(borderWidth)) | 5988 if (parser.parseBorderImageWidth(borderWidth)) |
| 5987 context.commitBorderWidth(borderWidth.release()); | 5989 context.commitBorderWidth(borderWidth.release()); |
| 5988 } | 5990 } |
| 5989 | 5991 |
| 5990 if (!context.canAdvance() && context.requireOutset()) { | 5992 if (!context.canAdvance() && context.requireOutset()) { |
| 5991 RefPtrWillBeRawPtr<CSSPrimitiveValue> borderOutset = nullptr; | 5993 RefPtrWillBeRawPtr<CSSPrimitiveValue> borderOutset = nullptr; |
| 5992 if (parser.parseBorderImageOutset(borderOutset)) | 5994 if (parser.parseBorderImageOutset(borderOutset)) |
| 5993 context.commitBorderOutset(borderOutset.release()); | 5995 context.commitBorderOutset(borderOutset.release()); |
| 5994 } | 5996 } |
| (...skipping 2433 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 8428 parsedValues->append(CSSPrimitiveValue::createIdentifier(CSSValueFill)); | 8430 parsedValues->append(CSSPrimitiveValue::createIdentifier(CSSValueFill)); |
| 8429 if (!seenStroke) | 8431 if (!seenStroke) |
| 8430 parsedValues->append(CSSPrimitiveValue::createIdentifier(CSSValueStroke) ); | 8432 parsedValues->append(CSSPrimitiveValue::createIdentifier(CSSValueStroke) ); |
| 8431 if (!seenMarkers) | 8433 if (!seenMarkers) |
| 8432 parsedValues->append(CSSPrimitiveValue::createIdentifier(CSSValueMarkers )); | 8434 parsedValues->append(CSSPrimitiveValue::createIdentifier(CSSValueMarkers )); |
| 8433 | 8435 |
| 8434 return parsedValues.release(); | 8436 return parsedValues.release(); |
| 8435 } | 8437 } |
| 8436 | 8438 |
| 8437 } // namespace blink | 8439 } // namespace blink |
| OLD | NEW |