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

Side by Side Diff: third_party/WebKit/Source/core/layout/svg/LayoutSVGImage.h

Issue 1427943002: Wrap SVGImage for container during paint (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Use IntSize for SVGImageForContainer Created 5 years, 1 month 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
OLDNEW
1 /* 1 /*
2 * Copyright (C) 2006 Alexander Kellett <lypanov@kde.org> 2 * Copyright (C) 2006 Alexander Kellett <lypanov@kde.org>
3 * Copyright (C) 2006, 2009 Apple Inc. All rights reserved. 3 * Copyright (C) 2006, 2009 Apple Inc. All rights reserved.
4 * Copyright (C) 2007 Rob Buis <buis@kde.org> 4 * Copyright (C) 2007 Rob Buis <buis@kde.org>
5 * Copyright (C) 2009 Google, Inc. 5 * Copyright (C) 2009 Google, Inc.
6 * Copyright (C) 2010 Patrick Gansterer <paroga@paroga.com> 6 * Copyright (C) 2010 Patrick Gansterer <paroga@paroga.com>
7 * 7 *
8 * This library is free software; you can redistribute it and/or 8 * This library is free software; you can redistribute it and/or
9 * modify it under the terms of the GNU Library General Public 9 * modify it under the terms of the GNU Library General Public
10 * License as published by the Free Software Foundation; either 10 * License as published by the Free Software Foundation; either
(...skipping 48 matching lines...) Expand 10 before | Expand all | Expand 10 after
59 FloatRect strokeBoundingBox() const override { return m_objectBoundingBox; } 59 FloatRect strokeBoundingBox() const override { return m_objectBoundingBox; }
60 60
61 void addOutlineRects(Vector<LayoutRect>&, const LayoutPoint& additionalOffse t, IncludeBlockVisualOverflowOrNot) const override; 61 void addOutlineRects(Vector<LayoutRect>&, const LayoutPoint& additionalOffse t, IncludeBlockVisualOverflowOrNot) const override;
62 62
63 void imageChanged(WrappedImagePtr, const IntRect* = nullptr) override; 63 void imageChanged(WrappedImagePtr, const IntRect* = nullptr) override;
64 64
65 void layout() override; 65 void layout() override;
66 void paint(const PaintInfo&, const LayoutPoint&) const override; 66 void paint(const PaintInfo&, const LayoutPoint&) const override;
67 67
68 void updateBoundingBox(); 68 void updateBoundingBox();
69 void updateImageContainerSize();
70 FloatSize computeImageViewportSize(ImageResource&) const;
71 69
72 bool nodeAtFloatPoint(HitTestResult&, const FloatPoint& pointInParent, HitTe stAction) override; 70 bool nodeAtFloatPoint(HitTestResult&, const FloatPoint& pointInParent, HitTe stAction) override;
73 71
74 AffineTransform localTransform() const override { return m_localTransform; } 72 AffineTransform localTransform() const override { return m_localTransform; }
75 73
76 bool m_needsBoundariesUpdate : 1; 74 bool m_needsBoundariesUpdate : 1;
77 bool m_needsTransformUpdate : 1; 75 bool m_needsTransformUpdate : 1;
78 AffineTransform m_localTransform; 76 AffineTransform m_localTransform;
79 FloatRect m_objectBoundingBox; 77 FloatRect m_objectBoundingBox;
80 OwnPtrWillBePersistent<LayoutImageResource> m_imageResource; 78 OwnPtrWillBePersistent<LayoutImageResource> m_imageResource;
81 79
82 RefPtr<const SkPicture> m_bufferedForeground; 80 RefPtr<const SkPicture> m_bufferedForeground;
83 }; 81 };
84 82
85 DEFINE_LAYOUT_OBJECT_TYPE_CASTS(LayoutSVGImage, isSVGImage()); 83 DEFINE_LAYOUT_OBJECT_TYPE_CASTS(LayoutSVGImage, isSVGImage());
86 84
87 } // namespace blink 85 } // namespace blink
88 86
89 #endif // LayoutSVGImage_h 87 #endif // LayoutSVGImage_h
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698