Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(356)

Side by Side Diff: Source/core/style/StylePendingImage.h

Issue 1164573002: CSSValue Immediates: Change CSSValue to an object instead of a pointer (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: Rebase Created 5 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « Source/core/style/StyleImage.h ('k') | Source/modules/canvas2d/CanvasRenderingContext2D.cpp » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 /* 1 /*
2 * Copyright (C) 2010 Apple Inc. All rights reserved. 2 * Copyright (C) 2010 Apple Inc. All rights reserved.
3 * 3 *
4 * Redistribution and use in source and binary forms, with or without 4 * Redistribution and use in source and binary forms, with or without
5 * modification, are permitted provided that the following conditions 5 * modification, are permitted provided that the following conditions
6 * are met: 6 * are met:
7 * 1. Redistributions of source code must retain the above copyright 7 * 1. Redistributions of source code must retain the above copyright
8 * notice, this list of conditions and the following disclaimer. 8 * notice, this list of conditions and the following disclaimer.
9 * 2. Redistributions in binary form must reproduce the above copyright 9 * 2. Redistributions in binary form must reproduce the above copyright
10 * notice, this list of conditions and the following disclaimer in the 10 * notice, this list of conditions and the following disclaimer in the
(...skipping 23 matching lines...) Expand all
34 #include "platform/graphics/Image.h" 34 #include "platform/graphics/Image.h"
35 35
36 namespace blink { 36 namespace blink {
37 37
38 // StylePendingImage is a placeholder StyleImage that is entered into the Comput edStyle during 38 // StylePendingImage is a placeholder StyleImage that is entered into the Comput edStyle during
39 // style resolution, in order to avoid loading images that are not referenced by the final style. 39 // style resolution, in order to avoid loading images that are not referenced by the final style.
40 // They should never exist in a ComputedStyle after it has been returned from th e style selector. 40 // They should never exist in a ComputedStyle after it has been returned from th e style selector.
41 41
42 class StylePendingImage final : public StyleImage { 42 class StylePendingImage final : public StyleImage {
43 public: 43 public:
44 static PassRefPtr<StylePendingImage> create(CSSValue* value) { return adoptR ef(new StylePendingImage(value)); } 44 static PassRefPtr<StylePendingImage> create(CSSValueObject* value) { return adoptRef(new StylePendingImage(value)); }
45 45
46 virtual WrappedImagePtr data() const override { return m_value; } 46 virtual WrappedImagePtr data() const override { return m_value; }
47 47
48 virtual PassRefPtrWillBeRawPtr<CSSValue> cssValue() const override { return m_value; } 48 virtual NullableCSSValue cssValue() const override { return m_value; }
49 CSSImageValue* cssImageValue() const { return m_value->isImageValue() ? toCS SImageValue(m_value) : 0; } 49 CSSImageValue* cssImageValue() const { return m_value->isImageValue() ? toCS SImageValue(m_value) : 0; }
50 CSSImageGeneratorValue* cssImageGeneratorValue() const { return m_value->isI mageGeneratorValue() ? toCSSImageGeneratorValue(m_value) : 0; } 50 CSSImageGeneratorValue* cssImageGeneratorValue() const { return m_value->isI mageGeneratorValue() ? toCSSImageGeneratorValue(m_value) : 0; }
51 CSSCursorImageValue* cssCursorImageValue() const { return m_value->isCursorI mageValue() ? toCSSCursorImageValue(m_value) : 0; } 51 CSSCursorImageValue* cssCursorImageValue() const { return m_value->isCursorI mageValue() ? toCSSCursorImageValue(m_value) : 0; }
52 CSSImageSetValue* cssImageSetValue() const { return m_value->isImageSetValue () ? toCSSImageSetValue(m_value) : 0; } 52 CSSImageSetValue* cssImageSetValue() const { return m_value->isImageSetValue () ? toCSSImageSetValue(m_value) : 0; }
53 53
54 virtual LayoutSize imageSize(const LayoutObject*, float /*multiplier*/) cons t override { return LayoutSize(); } 54 virtual LayoutSize imageSize(const LayoutObject*, float /*multiplier*/) cons t override { return LayoutSize(); }
55 virtual bool imageHasRelativeWidth() const override { return false; } 55 virtual bool imageHasRelativeWidth() const override { return false; }
56 virtual bool imageHasRelativeHeight() const override { return false; } 56 virtual bool imageHasRelativeHeight() const override { return false; }
57 virtual void computeIntrinsicDimensions(const LayoutObject*, Length& /* intr insicWidth */ , Length& /* intrinsicHeight */, FloatSize& /* intrinsicRatio */) override { } 57 virtual void computeIntrinsicDimensions(const LayoutObject*, Length& /* intr insicWidth */ , Length& /* intrinsicHeight */, FloatSize& /* intrinsicRatio */) override { }
58 virtual bool usesImageContainerSize() const override { return false; } 58 virtual bool usesImageContainerSize() const override { return false; }
59 virtual void setContainerSizeForLayoutObject(const LayoutObject*, const IntS ize&, float) override { } 59 virtual void setContainerSizeForLayoutObject(const LayoutObject*, const IntS ize&, float) override { }
60 virtual void addClient(LayoutObject*) override { } 60 virtual void addClient(LayoutObject*) override { }
61 virtual void removeClient(LayoutObject*) override { } 61 virtual void removeClient(LayoutObject*) override { }
62 virtual PassRefPtr<Image> image(LayoutObject*, const IntSize&) const overrid e 62 virtual PassRefPtr<Image> image(LayoutObject*, const IntSize&) const overrid e
63 { 63 {
64 ASSERT_NOT_REACHED(); 64 ASSERT_NOT_REACHED();
65 return nullptr; 65 return nullptr;
66 } 66 }
67 virtual bool knownToBeOpaque(const LayoutObject*) const override { return fa lse; } 67 virtual bool knownToBeOpaque(const LayoutObject*) const override { return fa lse; }
68 68
69 private: 69 private:
70 StylePendingImage(CSSValue* value) 70 StylePendingImage(CSSValueObject* value)
71 : m_value(value) 71 : m_value(value)
72 { 72 {
73 m_isPendingImage = true; 73 m_isPendingImage = true;
74 } 74 }
75 75
76 CSSValue* m_value; // Not retained; it owns us. 76 CSSValueObject* m_value; // Not retained; it owns us.
77 }; 77 };
78 78
79 DEFINE_STYLE_IMAGE_TYPE_CASTS(StylePendingImage, isPendingImage()); 79 DEFINE_STYLE_IMAGE_TYPE_CASTS(StylePendingImage, isPendingImage());
80 80
81 } 81 }
82 #endif 82 #endif
OLDNEW
« no previous file with comments | « Source/core/style/StyleImage.h ('k') | Source/modules/canvas2d/CanvasRenderingContext2D.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698