Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(63)

Issue 42413: The street view in Google maps, which is implemented with a windowed flash pl... (Closed)

Created:
11 years, 9 months ago by ananta
Modified:
9 years, 6 months ago
Reviewers:
jam
CC:
chromium-reviews_googlegroups.com
Visibility:
Public.

Description

The street view in Google maps, which is implemented with a windowed flash plugin would draw over the iframe DOM element, effectively hiding it. This is handled by our IFrame shim geometry calculation, where we subtract the rect of any IFrame above the plugin in the ZOrder from the plugin rect. Webkit calls Widget::setFrameRect at various times, during layout/size changes/paints, etc. The reason this bug showed up, was due to an optimization in our setFrameRect implementation, where we would bail out if the rect passed in was the same size as the current plugin rect. Basically the IFrame appears above the plugin in the ZOrder much later, which causes us to return without sending over the cutout rects to the browser when it moves the plugin windows. Fix is to move the rects equality check to WebPluginImpl::setFrameRect, where we don't send over the UpdateGeometry IPC to the plugin process if the rects are the same. WebPluginImpl used to implement the webkit Widget interface a long time ago. This is no longer the case. So some of the functions don't need to be virtual anymore. I also made this change. This fixes bug http://b/issue?id=1722236 and http://code.google.com/p/chromium/issues/detail?id=8858 Bug=1722236, 8858 Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=12179

Patch Set 1 #

Patch Set 2 : '' #

Patch Set 3 : '' #

Total comments: 2

Patch Set 4 : '' #

Unified diffs Side-by-side diffs Delta from patch set Stats (+31 lines, -25 lines) Patch
M webkit/glue/webplugin_impl.h View 1 2 3 2 chunks +17 lines, -13 lines 0 comments Download
M webkit/glue/webplugin_impl.cc View 1 2 3 5 chunks +14 lines, -12 lines 0 comments Download

Messages

Total messages: 2 (0 generated)
ananta
11 years, 9 months ago (2009-03-19 21:17:37 UTC) #1
jam
11 years, 9 months ago (2009-03-20 00:00:17 UTC) #2
lgtm, good catch

http://codereview.chromium.org/42413/diff/1004/1006
File webkit/glue/webplugin_impl.h (left):

http://codereview.chromium.org/42413/diff/1004/1006#oldcode202
Line 202: // Widget implementation:
why take this out?  i think it was useful to know that this message overrides
Widget::windowClipRect

http://codereview.chromium.org/42413/diff/1004/1006#oldcode218
Line 218: // Overrides paint so we can notify the underlying widget to repaint.
I like the virtual and override in the comment for the same reason as above,
wdyt?

Powered by Google App Engine
This is Rietveld 408576698