Re: [webkit-dev] problem with ChromeClient::createWindow NewWindow policy
Thanks, Gustavo. (I also found null URL issue mentioned there. This also interested me.) Gustavo Noronha Silva wrote: On Fri, 2008-09-19 at 10:38 +0400, Anton V. Tarasov wrote: A new window is opened by a client via ChromeClient::createWindow callback. There's also a mechanism to check NewWindow policy, implemented as FrameLoaderClient::dispatchDecidePolicyForNewWindowAction. Now, when I'm clicking the first link, ChromeClient::createWindow is not called at all, FrameLoaderClient::dispatchDecidePolicyForNewWindowAction is called. In that case, FrameLoaderClient::dispatchCreatePage is called. We have had lots of discussions about new window issues for the GTK+ port in bug #19130, which may interest you. Why that difference? How to open new window in the first case, and why policy check is not triggered in the second? I'm also interested in the policy check issue, haven't done a lot of scouting in that area, though. See you, ___ webkit-dev mailing list webkit-dev@lists.webkit.org http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev
[webkit-dev] problem with ChromeClient::createWindow NewWindow policy
Hello, Ones again about creating new window policy. Please, have a look. Say, we have main.html as below: html body a href=main.html target=_blankOpen new window/a a href=javascript:window.open('main.html','_blank')Open new window, JS/a /body /html The first link opens main.html in new window, the second does the same by means of javascript. However, I'm observing quite different behavior of WebCore. A new window is opened by a client via ChromeClient::createWindow callback. There's also a mechanism to check NewWindow policy, implemented as FrameLoaderClient::dispatchDecidePolicyForNewWindowAction. Now, when I'm clicking the first link, ChromeClient::createWindow is not called at all, FrameLoaderClient::dispatchDecidePolicyForNewWindowAction is called. Simple grep in WebCore sources gives the following. ChromeClient::createWindow is called only by: - ContextMenuController (on selecting Open link in new window item) - javascript (in kjs_window.cpp, on executing 'open') With the second link there's another issue. Just the reverse, ChromeClient::createWindow is called, FrameLoaderClient::dispatchDecidePolicyForNewWindowAction is not... Why that difference? How to open new window in the first case, and why policy check is not triggered in the second? Thanks, Anton. ___ webkit-dev mailing list webkit-dev@lists.webkit.org http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev
Re: [webkit-dev] problem with ChromeClient::createWindow NewWindow policy
On Fri, 2008-09-19 at 10:38 +0400, Anton V. Tarasov wrote: A new window is opened by a client via ChromeClient::createWindow callback. There's also a mechanism to check NewWindow policy, implemented as FrameLoaderClient::dispatchDecidePolicyForNewWindowAction. Now, when I'm clicking the first link, ChromeClient::createWindow is not called at all, FrameLoaderClient::dispatchDecidePolicyForNewWindowAction is called. In that case, FrameLoaderClient::dispatchCreatePage is called. We have had lots of discussions about new window issues for the GTK+ port in bug #19130, which may interest you. Why that difference? How to open new window in the first case, and why policy check is not triggered in the second? I'm also interested in the policy check issue, haven't done a lot of scouting in that area, though. See you, -- Gustavo Noronha Silva [EMAIL PROTECTED] GNOME contributor: http://www.gnome.org/ ___ webkit-dev mailing list webkit-dev@lists.webkit.org http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev