Bug 132180 - [GTK] Implement iframe shim technique for windowed plugins in WebKit2
Summary: [GTK] Implement iframe shim technique for windowed plugins in WebKit2
Status: RESOLVED CONFIGURATION CHANGED
Alias: None
Product: WebKit
Classification: Unclassified
Component: WebKit2 (show other bugs)
Version: 528+ (Nightly build)
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Nobody
URL:
Keywords: Gtk, InRadar
: 68969 (view as bug list)
Depends on:
Blocks:
 
Reported: 2014-04-25 03:53 PDT by Carlos Garcia Campos
Modified: 2022-06-28 03:49 PDT (History)
14 users (show)

See Also:


Attachments
Patch (31.04 KB, patch)
2014-04-25 04:17 PDT, Carlos Garcia Campos
no flags Details | Formatted Diff | Diff
Try to fix mac and EFL builds (33.00 KB, patch)
2014-04-25 05:12 PDT, Carlos Garcia Campos
mrobinson: review-
Details | Formatted Diff | Diff
Address review comments and try to fix mac build (33.25 KB, patch)
2014-04-28 01:37 PDT, Carlos Garcia Campos
bfulgham: review-
Details | Formatted Diff | Diff
Rebased patch (46.95 KB, patch)
2016-03-18 04:11 PDT, Carlos Garcia Campos
no flags Details | Formatted Diff | Diff
Fox coding style (46.95 KB, patch)
2016-03-18 04:18 PDT, Carlos Garcia Campos
no flags Details | Formatted Diff | Diff
Try to fix mac build (48.90 KB, patch)
2016-03-18 04:41 PDT, Carlos Garcia Campos
no flags Details | Formatted Diff | Diff
Try to fix mac build (48.65 KB, patch)
2016-03-18 04:53 PDT, Carlos Garcia Campos
no flags Details | Formatted Diff | Diff
Updated patch to use Region for occlusions (49.37 KB, patch)
2016-03-21 01:10 PDT, Carlos Garcia Campos
beidson: review-
Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Carlos Garcia Campos 2014-04-25 03:53:28 PDT
It allows to show iframes on top of a windowed plugin. This is covered by layout test plugins/iframe-shims.html that for some reason works when run with WTR. It seems than the fake mouse events used by WTR reach the buttons that are hidden. This doesn't happen when running the test manually.
Comment 1 Carlos Garcia Campos 2014-04-25 04:17:04 PDT
Created attachment 230162 [details]
Patch
Comment 2 Carlos Garcia Campos 2014-04-25 05:12:40 PDT
Created attachment 230170 [details]
Try to fix mac and EFL builds
Comment 3 Martin Robinson 2014-04-25 07:38:14 PDT
Comment on attachment 230170 [details]
Try to fix mac and EFL builds

View in context: https://bugs.webkit.org/attachment.cgi?id=230170&action=review

GTK+ bits look good to me.

> Source/WebKit2/WebProcess/Plugins/PluginView.cpp:1027
> +static bool iframeIsAbovePlugin(const Vector<const RenderObject*>& iframeZIndexStack, const Vector<const RenderObject*>& pluginZIndexStack)
> +{
> +    for (size_t i = 0; i < iframeZIndexStack.size() && i < pluginZIndexStack.size(); ++i) {
> +        // The root is at the end of these stacks. We want to iterate root-downwards so we index backwards from the end.
> +        const RenderObject* iframeStackRootObject = iframeZIndexStack[iframeZIndexStack.size() - 1 - i];
> +        const RenderObject* pluginStackRootObject = pluginZIndexStack[pluginZIndexStack.size() - 1 - i];

This requires preserving the original copyright, I think.
Comment 4 Carlos Garcia Campos 2014-04-28 01:37:10 PDT
Created attachment 230285 [details]
Address review comments and try to fix mac build
Comment 5 Martin Robinson 2015-05-07 18:06:57 PDT
*** Bug 68969 has been marked as a duplicate of this bug. ***
Comment 6 Brent Fulgham 2016-03-14 11:26:25 PDT
Comment on attachment 230285 [details]
Address review comments and try to fix mac build

Marking as r- due to the age of the patch. Could you please update your code against the current source tree and resubmit for review?
Comment 7 Carlos Garcia Campos 2016-03-18 04:11:50 PDT
Created attachment 274403 [details]
Rebased patch
Comment 8 WebKit Commit Bot 2016-03-18 04:13:04 PDT
Attachment 274403 [details] did not pass style-queue:


ERROR: Source/WebKit2/WebProcess/Plugins/Netscape/NetscapePlugin.cpp:784:  Boolean expressions that span multiple lines should have their operators on the left side of the line instead of the right side.  [whitespace/operators] [4]
ERROR: Source/WebKit2/WebProcess/Plugins/Netscape/NetscapePlugin.cpp:786:  Boolean expressions that span multiple lines should have their operators on the left side of the line instead of the right side.  [whitespace/operators] [4]
ERROR: Source/WebKit2/WebProcess/Plugins/PluginProxy.cpp:303:  Boolean expressions that span multiple lines should have their operators on the left side of the line instead of the right side.  [whitespace/operators] [4]
ERROR: Source/WebKit2/WebProcess/Plugins/PluginProxy.cpp:305:  Boolean expressions that span multiple lines should have their operators on the left side of the line instead of the right side.  [whitespace/operators] [4]
Total errors found: 4 in 24 files


If any of these errors are false positives, please file a bug against check-webkit-style.
Comment 9 Carlos Garcia Campos 2016-03-18 04:18:22 PDT
Created attachment 274405 [details]
Fox coding style
Comment 10 Carlos Garcia Campos 2016-03-18 04:41:29 PDT
Created attachment 274406 [details]
Try to fix mac build
Comment 11 Carlos Garcia Campos 2016-03-18 04:53:44 PDT
Created attachment 274407 [details]
Try to fix mac build
Comment 12 Anders Carlsson 2016-03-18 10:11:03 PDT
Can we use a region instead of a list of vectors for occlusions?
Comment 13 Carlos Garcia Campos 2016-03-21 01:09:25 PDT
(In reply to comment #12)
> Can we use a region instead of a list of vectors for occlusions?

Yes, indeed.
Comment 14 Carlos Garcia Campos 2016-03-21 01:10:07 PDT
Created attachment 274576 [details]
Updated patch to use Region for occlusions
Comment 15 Carlos Garcia Campos 2016-04-08 23:50:27 PDT
Any other concern about this?
Comment 16 Carlos Garcia Campos 2016-07-04 00:48:08 PDT
Ping reviewers? This is more than 2 years old now...
Comment 17 Brady Eidson 2017-08-19 16:01:10 PDT
Comment on attachment 274576 [details]
Updated patch to use Region for occlusions

r-, as this has been pending review for over a year now. It is near-impossible that this patch still applies to trunk and unlikely to still be relevant in its current form.
Comment 18 Martin Robinson 2022-06-28 03:48:49 PDT
Support for plugins was removed in https://trac.webkit.org/changeset/265753/webkit.
Comment 19 Radar WebKit Bug Importer 2022-06-28 03:49:25 PDT
<rdar://problem/96050650>