[SCM] WebKit Debian packaging branch, webkit-1.1, updated. upstream/1.1.16-1409-g5afdf4d
kdecker at apple.com
kdecker at apple.com
Thu Dec 3 13:42:44 UTC 2009
The following commit has been merged in the webkit-1.1 branch:
commit 0445c1f249ad479c0910d8b8335e336c97c1a9de
Author: kdecker at apple.com <kdecker at apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date: Mon Nov 23 16:05:13 2009 +0000
Reviewed by Adam Roben.
<rdar://problem/7401503>
Added a workaround for plug-ins not drawing immediately.
* Plugins/WebBaseNetscapePluginView.mm: Added new constant.
(-[WebBaseNetscapePluginView _clearSubstituteImage]): Added.
(-[WebBaseNetscapePluginView resumeFromHalt]): Call above new method.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@51309 268f45cc-cd09-0410-ab3c-d52691b4dbfc
diff --git a/WebKit/mac/ChangeLog b/WebKit/mac/ChangeLog
index c600c80..3992281 100644
--- a/WebKit/mac/ChangeLog
+++ b/WebKit/mac/ChangeLog
@@ -1,3 +1,15 @@
+2009-11-23 Kevin Decker <kdecker at apple.com>
+
+ Reviewed by Adam Roben.
+
+ <rdar://problem/7401503>
+
+ Added a workaround for plug-ins not drawing immediately.
+
+ * Plugins/WebBaseNetscapePluginView.mm: Added new constant.
+ (-[WebBaseNetscapePluginView _clearSubstituteImage]): Added.
+ (-[WebBaseNetscapePluginView resumeFromHalt]): Call above new method.
+
2009-11-20 Dave Hyatt <hyatt at apple.com>
Reviewed by Darin Adler.
diff --git a/WebKit/mac/Plugins/WebBaseNetscapePluginView.mm b/WebKit/mac/Plugins/WebBaseNetscapePluginView.mm
index 0b4d56a..bba36e4 100644
--- a/WebKit/mac/Plugins/WebBaseNetscapePluginView.mm
+++ b/WebKit/mac/Plugins/WebBaseNetscapePluginView.mm
@@ -64,6 +64,8 @@
#define LoginWindowDidSwitchFromUserNotification @"WebLoginWindowDidSwitchFromUserNotification"
#define LoginWindowDidSwitchToUserNotification @"WebLoginWindowDidSwitchToUserNotification"
+static const NSTimeInterval ClearSubstituteImageDelay = 0.5;
+
using namespace WebCore;
class WebHaltablePlugin : public HaltablePlugin {
@@ -498,6 +500,19 @@ Node* WebHaltablePlugin::node() const
_hasBeenHalted = YES;
}
+- (void)_clearSubstituteImage
+{
+ Element* element = [self element];
+ if (!element)
+ return;
+
+ RenderObject* renderer = element->renderer();
+ if (!renderer)
+ return;
+
+ toRenderWidget(renderer)->showSubstituteImage(0);
+}
+
- (void)resumeFromHalt
{
ASSERT(_isHalted);
@@ -508,7 +523,9 @@ Node* WebHaltablePlugin::node() const
_isHalted = NO;
ASSERT([self element]->renderer());
- toRenderWidget([self element]->renderer())->showSubstituteImage(0);
+ // FIXME 7417484: This is a workaround for plug-ins not drawing immediately. We'd like to detect when the
+ // plug-in actually draws instead of just assuming it will do so within 0.5 seconds of being restarted.
+ [self performSelector:@selector(_clearSubstituteImage) withObject:nil afterDelay:ClearSubstituteImageDelay];
}
- (BOOL)isHalted
--
WebKit Debian packaging
More information about the Pkg-webkit-commits
mailing list