2009-03-27 Anders Carlsson <andersca@apple.com>
authorandersca@apple.com <andersca@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Fri, 27 Mar 2009 18:00:50 +0000 (18:00 +0000)
committerandersca@apple.com <andersca@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Fri, 27 Mar 2009 18:00:50 +0000 (18:00 +0000)
        Reviewed by Darin Adler.

        <rdar://problem/6642221>
        REGRESSION: With the Movie widget, movie trailer fails to load if movie had been previously viewed

        Add a dashboard specific workaround so that we always create renderers for object elements, even if display:none is set.

        I've filed <rdar://problem/6731022> against the Movies widget.

        * html/HTMLObjectElement.cpp:
        (WebCore::HTMLObjectElement::rendererIsNeeded):

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

WebCore/ChangeLog
WebCore/html/HTMLObjectElement.cpp

index cf8e62e..323ee65 100644 (file)
@@ -1,3 +1,17 @@
+2009-03-27  Anders Carlsson  <andersca@apple.com>
+
+        Reviewed by Darin Adler.
+
+        <rdar://problem/6642221>
+        REGRESSION: With the Movie widget, movie trailer fails to load if movie had been previously viewed
+        
+        Add a dashboard specific workaround so that we always create renderers for object elements, even if display:none is set.
+        
+        I've filed <rdar://problem/6731022> against the Movies widget.
+        
+        * html/HTMLObjectElement.cpp:
+        (WebCore::HTMLObjectElement::rendererIsNeeded):
+
 2009-03-25  Timothy Hatcher  <timothy@apple.com>
 
         Expose new DOM methods as public Objective-C API.
index a41e037..030747a 100644 (file)
@@ -37,6 +37,7 @@
 #include "RenderPartObject.h"
 #include "RenderWidget.h"
 #include "ScriptController.h"
+#include "Settings.h"
 #include "Text.h"
 
 
@@ -123,6 +124,14 @@ bool HTMLObjectElement::rendererIsNeeded(RenderStyle* style)
     if (!frame)
         return false;
     
+#if ENABLE(DASHBOARD_SUPPORT)
+    // Workaround for <rdar://problem/6642221>. 
+    if (Settings* settings = frame->settings()) {
+        if (settings->usesDashboardBackwardCompatibilityMode())
+            return true;
+    }
+#endif
+    
     // Temporary Workaround for Gears plugin - see bug 24215 for details and bug 24346 to track removal.
     // Gears expects the plugin to be instantiated even if display:none is set
     // for the object element.