RESOLVED FIXED 16307
[GTK] navigation-requested signal is not stopped
https://bugs.webkit.org/show_bug.cgi?id=16307
Summary [GTK] navigation-requested signal is not stopped
Salvatore De Paolis
Reported 2007-12-05 07:36:04 PST
navigation-requested signal is not stopped if any handler returns a reply different from WEBKIT_NAVIGATION_RESPONSE_ACCEPT.
Attachments
Luca Bruno
Comment 1 2007-12-06 00:43:06 PST
So? In my hopinion it's right. If a callback wants the requested to be ignored, is not a good reason to stop signals. Instead, the IGNORE is relative to the web reqest, while stopping the signal is relative to avoid other callbacks from accepting the request. What's wrong in that?
Salvatore De Paolis
Comment 2 2007-12-06 02:23:26 PST
(In reply to comment #1) > So? In my hopinion it's right. If a callback wants the requested to be ignored, > is not a good reason to stop signals. Instead, the IGNORE is relative to the > web reqest, while stopping the signal is relative to avoid other callbacks from > accepting the request. > > What's wrong in that? > Hi Bruno, yes this could be also handled by the callback and it works good but navigation-requested now doesn't raise on image loading.
Michael Natterer
Comment 3 2007-12-06 06:38:15 PST
Re #1: The problem is that without stopping the signal, *all* requests will always be accepted, because there can be only one return value from a signal emission, and that's the return value of the last handler which is the default handler. The g-ish way to solve this is to have a signal accumulator that automatically stops the emission on certain return values, just as GtkWidget's event signals stop when one callback returns TRUE.
Christian Dywan
Comment 4 2008-01-10 00:21:01 PST
This was fixed in bug 16654.
Note You need to log in before you can comment on or make changes to this bug.