WebCore: WebCore part of
authormitz@apple.com <mitz@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Wed, 24 Mar 2010 00:27:12 +0000 (00:27 +0000)
committermitz@apple.com <mitz@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Wed, 24 Mar 2010 00:27:12 +0000 (00:27 +0000)
commite0e425a71aa454850163a29c4e47a0e3c6e22c02
tree1db2be535e721d69d23e32fd0e5a97e4d52cfd94
parent2650de699a6572bd44c86ff1e09c3fe241ec6548
WebCore: WebCore part of
<rdar://problem/7197736> Plug-in clip rect does not update when overflow
clip changes
https://bugs.webkit.org/show_bug.cgi?id=36479.

Reviewed by John Sullivan.

* manual-tests/plugin-visible-rect-change.html: Added.
* platform/mac/WidgetMac.mm:
(WebCore::WidgetPrivate::WidgetPrivate): Added previousVisibleRect.
(WebCore::Widget::setFrameRect): If the visible rect changed but the
frame rect did not, send a -visibleRectDidChange message to the view,
if it responds to it.
(WebCore::Widget::releasePlatformWidget): Reset previousVisibleRect.
* rendering/RenderWidget.cpp:
(WebCore::RenderWidget::setWidgetGeometry): Track changes to the clip rect
imposed by the enclosing layer. Call Widget::setFrameRect when it changes,
even if the frame rect did not.
* rendering/RenderWidget.h:
(WebCore::RenderWidget::windowClipRect): Added this accessor.

WebKit/mac: WebKit part of
<rdar://problem/7197736> Plug-in clip rect does not update when overflow
clip changes
https://bugs.webkit.org/show_bug.cgi?id=36479.

Reviewed by John Sullivan.

* Plugins/Hosted/WebHostedNetscapePluginView.mm:
(-[WebHostedNetscapePluginView visibleRectDidChange]): Added. Calls
WKSyncSurfaceToView().
* Plugins/WebBaseNetscapePluginView.h:
* Plugins/WebBaseNetscapePluginView.mm:
(-[WebBaseNetscapePluginView _windowClipRect]): Changed to use Widget::windowClipRect().
(-[WebBaseNetscapePluginView visibleRectDidChange]): Added. Invokes -renewGState.

WebKitLibraries: WebKitSystemInterface part of
<rdar://problem/7197736> Plug-in clip rect does not update when overflow
clip changes
https://bugs.webkit.org/show_bug.cgi?id=36479.

Reviewed by John Sullivan.

* WebKitSystemInterface.h: Added WKSyncSurfaceToView().
* libWebKitSystemInterfaceSnowLeopard.a: Updated

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@56429 268f45cc-cd09-0410-ab3c-d52691b4dbfc
13 files changed:
WebCore/ChangeLog
WebCore/manual-tests/plugin-visible-rect-change.html [new file with mode: 0644]
WebCore/platform/mac/WidgetMac.mm
WebCore/rendering/RenderWidget.cpp
WebCore/rendering/RenderWidget.h
WebKit/mac/ChangeLog
WebKit/mac/Plugins/Hosted/WebHostedNetscapePluginView.mm
WebKit/mac/Plugins/WebBaseNetscapePluginView.h
WebKit/mac/Plugins/WebBaseNetscapePluginView.mm
WebKit/mac/WebCoreSupport/WebContextMenuClient.mm
WebKitLibraries/ChangeLog
WebKitLibraries/WebKitSystemInterface.h
WebKitLibraries/libWebKitSystemInterfaceSnowLeopard.a