Title: [98905] trunk/Source/WebKit2
Revision
98905
Author
ander...@apple.com
Date
2011-10-31 16:28:37 -0700 (Mon, 31 Oct 2011)

Log Message

Implement PluginProxy::geometryDidChange
https://bugs.webkit.org/show_bug.cgi?id=71251

Reviewed by Sam Weinig.

Keep track of the plug-in size, the clip rect in plug-in coordinates and the
transformation matrix from the root view to the plug-in.

* WebProcess/Plugins/PluginProxy.cpp:
(WebKit::PluginProxy::geometryDidChange):
* WebProcess/Plugins/PluginProxy.h:

Modified Paths

Diff

Modified: trunk/Source/WebKit2/ChangeLog (98904 => 98905)


--- trunk/Source/WebKit2/ChangeLog	2011-10-31 23:19:19 UTC (rev 98904)
+++ trunk/Source/WebKit2/ChangeLog	2011-10-31 23:28:37 UTC (rev 98905)
@@ -1,5 +1,19 @@
 2011-10-31  Anders Carlsson  <ander...@apple.com>
 
+        Implement PluginProxy::geometryDidChange
+        https://bugs.webkit.org/show_bug.cgi?id=71251
+
+        Reviewed by Sam Weinig.
+
+        Keep track of the plug-in size, the clip rect in plug-in coordinates and the
+        transformation matrix from the root view to the plug-in.
+
+        * WebProcess/Plugins/PluginProxy.cpp:
+        (WebKit::PluginProxy::geometryDidChange):
+        * WebProcess/Plugins/PluginProxy.h:
+
+2011-10-31  Anders Carlsson  <ander...@apple.com>
+
         Fix the X11 build.
 
         * WebProcess/Plugins/Netscape/x11/NetscapePluginX11.cpp:

Modified: trunk/Source/WebKit2/WebProcess/Plugins/PluginProxy.cpp (98904 => 98905)


--- trunk/Source/WebKit2/WebProcess/Plugins/PluginProxy.cpp	2011-10-31 23:19:19 UTC (rev 98904)
+++ trunk/Source/WebKit2/WebProcess/Plugins/PluginProxy.cpp	2011-10-31 23:28:37 UTC (rev 98905)
@@ -216,7 +216,14 @@
 
 void PluginProxy::geometryDidChange(const IntSize& pluginSize, const IntRect& clipRect, const AffineTransform& pluginToRootViewTransform)
 {
-    // FIXME: Actually do something here.
+    if (pluginSize == m_pluginSize && m_clipRect == clipRect && m_pluginToRootViewTransform == pluginToRootViewTransform) {
+        // Nothing to do.
+        return;
+    }
+    
+    m_pluginSize = pluginSize;
+    m_clipRect = clipRect;
+    m_pluginToRootViewTransform = pluginToRootViewTransform;
 }
 
 void PluginProxy::visibilityDidChange()

Modified: trunk/Source/WebKit2/WebProcess/Plugins/PluginProxy.h (98904 => 98905)


--- trunk/Source/WebKit2/WebProcess/Plugins/PluginProxy.h	2011-10-31 23:19:19 UTC (rev 98904)
+++ trunk/Source/WebKit2/WebProcess/Plugins/PluginProxy.h	2011-10-31 23:28:37 UTC (rev 98905)
@@ -30,6 +30,7 @@
 
 #include "Connection.h"
 #include "Plugin.h"
+#include <WebCore/AffineTransform.h>
 #include <WebCore/IntRect.h>
 
 #if PLATFORM(MAC)
@@ -139,6 +140,16 @@
     RefPtr<PluginProcessConnection> m_connection;
     uint64_t m_pluginInstanceID;
 
+    WebCore::IntSize m_pluginSize;
+
+    // The clip rect in plug-in coordinates.
+    WebCore::IntRect m_clipRect;
+
+    // A transform that can be used to convert from root view coordinates to plug-in coordinates.
+    WebCore::AffineTransform m_pluginToRootViewTransform;
+
+    // FIXME: Get rid of the window coordinate based rects.
+
     // The plug-in rect in window coordinates.
     WebCore::IntRect m_frameRectInWindowCoordinates;
 
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
http://lists.webkit.org/mailman/listinfo.cgi/webkit-changes

Reply via email to