-
commit-queue@webkit.org authored
https://bugs.webkit.org/show_bug.cgi?id=109879 Patch by John Bauman <jbauman@chromium.org> on 2013-02-27 Reviewed by Simon Fraser. Source/WebCore: Changing the cliprect on a layer containing an iframe may change the cliprect of plugins inside the iframe, so recursively tell all plugins in iframes that their cliprect has changed after doing layout on the outer frame. Test: plugins/plugin-clip-subframe.html * platform/ScrollView.cpp: (WebCore::ScrollView::clipRectChanged): * platform/ScrollView.h: * platform/Widget.h: (WebCore::Widget::clipRectChanged): * plugins/PluginView.cpp: (WebCore::PluginView::clipRectChanged): * plugins/PluginView.h: * rendering/RenderWidget.cpp: (WebCore::RenderWidget::setWidgetGeometry): Source/WebKit/chromium: Use clipRectChanged to update the geometry. * src/WebPluginContainerImpl.cpp: (WebKit::WebPluginContainerImpl::clipRectChanged): * src/WebPluginContainerImpl.h: Source/WebKit/mac: Ensure NetscapePluginWidget informs the plugin view of the cliprect change directly. * Plugins/WebBaseNetscapePluginView.h: * WebCoreSupport/WebFrameLoaderClient.mm: (NetscapePluginWidget::clipRectChanged): Source/WebKit2: Update geometry when cliprect changes. * WebProcess/Plugins/PluginView.cpp: (WebKit::PluginView::clipRectChanged): * WebProcess/Plugins/PluginView.h: Tools: LogNPPSetWindow will be used with other ports as well. * DumpRenderTree/DumpRenderTree.gypi: * DumpRenderTree/TestNetscapePlugIn/CMakeLists.txt: LayoutTests: Use log-npp-set-window to ensure plugin clip changes correctly. * platform/mac-wk2/plugins/plugin-clip-subframe-expected.txt: Added. * platform/mac/plugins/plugin-clip-subframe-expected.txt: Added. * plugins/plugin-clip-subframe-expected.txt: Added. * plugins/plugin-clip-subframe.html: Added. * plugins/resources/plugin-clip-subframe-iframe.html: Added. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@144236 268f45cc-cd09-0410-ab3c-d52691b4dbfc
216b5ea8