Unreviewed, rolling out r142343.
[WebKit-https.git] / Source / WebCore / rendering / RenderSnapshottedPlugIn.h
index 946af9a..271c646 100644 (file)
@@ -27,6 +27,7 @@
 #define RenderSnapshottedPlugIn_h
 
 #include "RenderBlock.h"
+#include "RenderEmbeddedObject.h"
 #include "RenderImageResource.h"
 #include "Timer.h"
 
@@ -34,11 +35,17 @@ namespace WebCore {
 
 class HTMLPlugInImageElement;
 
-class RenderSnapshottedPlugIn : public RenderBlock {
+class RenderSnapshottedPlugIn : public RenderEmbeddedObject {
 public:
     explicit RenderSnapshottedPlugIn(HTMLPlugInImageElement*);
     virtual ~RenderSnapshottedPlugIn();
 
+    enum LabelSize {
+        LabelSizeSmall,
+        LabelSizeLarge,
+        NoLabel,
+    };
+
     void updateSnapshot(PassRefPtr<Image>);
 
     void handleEvent(Event*);
@@ -53,12 +60,16 @@ private:
     virtual CursorDirective getCursor(const LayoutPoint&, Cursor&) const OVERRIDE;
     virtual bool isSnapshottedPlugIn() const OVERRIDE { return true; }
     virtual void paint(PaintInfo&, const LayoutPoint&) OVERRIDE;
+    virtual void paintReplaced(PaintInfo&, const LayoutPoint&) OVERRIDE;
 
-    void paintSnapshot(PaintInfo&, const LayoutPoint&);
-    void paintSnapshotWithLabel(PaintInfo&, const LayoutPoint&);
-    void paintSnapshotImage(Image*, PaintInfo&, const LayoutPoint&);
+    void paintReplacedSnapshot(PaintInfo&, const LayoutPoint&);
+    void paintReplacedSnapshotWithLabel(PaintInfo&, const LayoutPoint&);
+    void paintSnapshot(Image*, PaintInfo&, const LayoutPoint&);
     void repaintLabel();
 
+    LayoutRect tryToFitStartLabel(LabelSize, const LayoutRect& contentBox) const;
+    Image* startLabelImage(LabelSize) const;
+
     enum ShowReason {
         UserMousedOver,
         ShouldShowAutomatically