2011-02-18 Alexis Menard <alexis.menard@openbossa.org>
authorcommit-queue@webkit.org <commit-queue@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Sat, 19 Feb 2011 03:31:21 +0000 (03:31 +0000)
committercommit-queue@webkit.org <commit-queue@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Sat, 19 Feb 2011 03:31:21 +0000 (03:31 +0000)
        Reviewed by Andreas Kling.

        [Qt] REGRESSION(r67516) : on www.gmail.com a strange rendering issue appears on the
        menu bar due to flash.
        https://bugs.webkit.org/show_bug.cgi?id=54741

        Only show plugins with a valid size. We then don't involve X11 if there is
        nothing to see anyway.

        * plugins/qt/PluginViewQt.cpp:
        (WebCore::PluginView::updatePluginWidget):
        (WebCore::PluginView::platformStart):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@79074 268f45cc-cd09-0410-ab3c-d52691b4dbfc

Source/WebCore/ChangeLog
Source/WebCore/plugins/qt/PluginViewQt.cpp

index cca3b0525b38940b561e3eb99429877963b248a2..bb7551d4eab35e3c588ee8f185a3d376aa59686a 100644 (file)
@@ -1,3 +1,18 @@
+2011-02-18  Alexis Menard  <alexis.menard@openbossa.org>
+
+        Reviewed by Andreas Kling.
+
+        [Qt] REGRESSION(r67516) : on www.gmail.com a strange rendering issue appears on the
+        menu bar due to flash.
+        https://bugs.webkit.org/show_bug.cgi?id=54741
+
+        Only show plugins with a valid size. We then don't involve X11 if there is
+        nothing to see anyway.
+
+        * plugins/qt/PluginViewQt.cpp:
+        (WebCore::PluginView::updatePluginWidget):
+        (WebCore::PluginView::platformStart):
+
 2011-02-18  Ryuan Choi  <ryuan.choi@samsung.com>
 
         Reviewed by Kent Tamura.
index 2561e54e662ced36db5d669566b3b9f19d1dd5ff..a1270c436e5e37bcf5711d71589239b5741cc0ee 100644 (file)
@@ -141,6 +141,10 @@ void PluginView::updatePluginWidget()
     if (m_windowRect == oldWindowRect && m_clipRect == oldClipRect)
         return;
 
+    // The plugin had a zero width or height before but was resized, we need to show it again.
+    if (oldWindowRect.isEmpty())
+        show();
+
     if (!m_isWindowed && m_windowRect.size() != oldWindowRect.size()) {
 #if defined(MOZ_PLATFORM_MAEMO) && (MOZ_PLATFORM_MAEMO >= 5)
         // On Maemo5, Flash always renders to 16-bit buffer
@@ -942,7 +946,9 @@ bool PluginView::platformStart()
 #endif
     }
 
-    show();
+    // If the width and the height are not zero we show the PluginView.
+    if (!frameRect().isEmpty())
+        show();
 
     NPSetWindowCallbackStruct* wsi = new NPSetWindowCallbackStruct();
     wsi->type = 0;