I use Epiphany web applications for Facebook and Google+. If I click an external link within the web application window, it is supposed to open in a normal browser window or tab and not inside the web application. This worked well in webkitgtk3-2.2.2, but does not work with webkitgtk3-2.2.3. External URLs now open up inside the web application.
Nothing has changed in webkit related to that, I think.
Maybe something changed in Epiphany recently. Claudio, does this ring a bell?
Nope…
I did not change the version of Epiphany (3.10.2) that I had. Upgrading to webkitgtk-2.2.3 from 2.2.2 was enough to expose this bug. It went away after I downgraded to 2.2.2.
I can actually reproduce this with a Debian jessie setup, after upgrading webkit to 2.2.3. I'll take a look at this.
So when I click on a Facebook link, Epiphany tries to figure out if it's an internal or an external link (decide_policy_cb). The actual URL is one of these http://www.facebook.com/l.php?u=http... What happens is that webkit_uri_request_get_uri() should return the final uri ("http://ow.ly/rAvPU" in my test), but it seems to be returning the Facebook wrapper uri instead. I haven't seen any change in webkit that might be causing this, though. I'll keep investigating.
So it seems the User-Agent change from bug 124229. Here's the previous code for the link: <a href="http://ow.ly/rAvxq" target="_blank" rel="nofollow" onmouseover="LinkshimAsyncLink.swap(this, "http:\/\/ow.ly\/rAvxq");" onclick="LinkshimAsyncLink.referrer_log(this, "http:\/\/ow.ly\/rAvxq", "\/si\/ajax\/l\/render_linkshim_log\/?u=http\u00253A\u00252F\u00252Fow.ly\u00252FrAvxq&h=eAQEROmEaAQE_llmCJCdgplQ1RgZ9hzVxce3pr95cdbaHbw&render_verification=0&enc=AZO4WOlYUxn1C_rJtoCuDQ1TjKG4GL5Gj7P1MgWGspoocaM2ew0pNGnE4AFxqk-wxl2kNWxj5JFpI1OkhV0yvoV-");">link</a> and this is the new one: <a href="http://ow.ly/rAWxA" target="_blank" rel="nofollow" onmouseover="LinkshimAsyncLink.swap(this, "http:\/\/ow.ly\/rAWxA");" onclick="LinkshimAsyncLink.swap(this, "http:\/\/www.facebook.com\/l.php?u=http\u00253A\u00252F\u00252Fow.ly\u00252FrAWxA&h=cAQEyoiS8AQHXItKPMYjaXxhXDcEcMKbbbK1HeqxRl3SE1A&enc=AZMAJEAy1lwe6LEVHYkhsly65ajGxk9thU2acSNZzInmNzFex7h4xLHtL9A-gsbvup6U_aocCtXotIbCNhGxZUTb&s=1");">link</a> For more thinks broken after the UA change, see bug 125444
The problem here is that this doesn't really "break" anything. The new link code works just as fine as the old one, but Epiphany cannot detect now if the link is external. We probably need to change the method used to detect if the link is external or not.
(In reply to comment #8) > The problem here is that this doesn't really "break" anything. The new > link code works just as fine as the old one, but Epiphany cannot > detect now if the link is external. > > We probably need to change the method used to detect if the link is > external or not. Yes. The fix for bug 125444 does not fix this one. So we might have to fix Epiphany for this.
(In reply to comment #9) > > The problem here is that this doesn't really "break" anything. The > > new link code works just as fine as the old one, but Epiphany > > cannot detect now if the link is external. > Yes. The fix for bug 125444 does not fix this one. So we might have > to fix Epiphany for this. Yes, I think this is just one more case of https://bugzilla.gnome.org/show_bug.cgi?id=658395 But I don't see a bug as such in webkit.
Hm, our options for Bugzilla statuses are not very good... anyway, this was fixed in GNOME Bugzilla.