[Webkit-unassigned] [Bug 23432] window.open scripts do not trigger newWindowDelegate callback.

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Tue Oct 19 13:07:31 PDT 2010


https://bugs.webkit.org/show_bug.cgi?id=23432





--- Comment #6 from Nicolas Dufresne <nicolas.dufresne at collabora.co.uk>  2010-10-19 13:07:31 PST ---
(In reply to comment #5)
> I'm currently writing a patch for the Gtk platform. There is other issues that > will need fixing before it actually work.

Sorry for replying to my own comment, but it's not possible to implement the check in Gtk's ChromeClient::createWindow(). The reason is that Gtk port allow to queue the decisions for later.

I've compared window.open() with other similar API like history.go() and found that they all return void which make it simple to delay their execution. For window.open(), the return value is a JavaScript Window object, which is currently bound at creation time to the native frame/page object. This function is implemented as one synchronous native call, and thus cannot be interrupted and resumed later.

Base on these facts, I think a potential solution would be to delay the creation of native frame until the navigation policy decision has been taken. The side effect is that call to window.open() will return a JavaScript window even if the window creation is denied. Is this acceptable ?

-- 
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