[Webkit-unassigned] [Bug 56631] New: [PopupBlocker]Feature suggestion, Force a new window can only be explicitly opened by "window.open" on the EventTarget to which the event was originally dispatched if the call is triggered by an event
bugzilla-daemon at webkit.org
bugzilla-daemon at webkit.org
Fri Mar 18 01:24:06 PDT 2011
https://bugs.webkit.org/show_bug.cgi?id=56631
Summary: [PopupBlocker]Feature suggestion, Force a new window
can only be explicitly opened by "window.open" on the
EventTarget to which the event was originally
dispatched if the call is triggered by an event
Product: WebKit
Version: 528+ (Nightly build)
Platform: PC
OS/Version: Mac OS X 10.5
Status: NEW
Severity: Normal
Priority: P2
Component: WebCore Misc.
AssignedTo: webkit-unassigned at lists.webkit.org
ReportedBy: jnd at chromium.org
CC: abarth at webkit.org
We have seen lots of pop-up/under bypass done by the following way. (the attachment is demo code to this popup bypass trick)
1. have a normal textNode/anchorElement which does not open any popup windows,
2. register a js function to parent/ancestor node of the textNode/anchorElement as event-listener for click or mouse/key-up/down event, the function opens a popup window,
3. when clicking/pressing key on the textNode/anchorElement, the registered function is called to open popup in event capture/bubbling phase.
Note, the function of event-listener to open popup may be registered by injected external script.
In above case, user may normally do an operate on page contents but get unexpected popup window because the popup is not directly generated by users intended operation. For example, user tries to mark a paragraph text to copy, but may get a popup window created by a function registered in ancestor node of the text to listen mousedown event.
My suggestion is to force a new window can only be explicitly opened by "window.open" on the EventTarget to which the event was originally dispatched if the call is triggered by an event. The underlying meaning is that you have to explicitly open a window in the direct node(content) you are operating, which to eliminate above popup bypass.
Please feel free to share your comments. If most of you like this feature, I will put more implementation details.
Thanks.
--
Configure bugmail: https://bugs.webkit.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.
More information about the webkit-unassigned
mailing list