aboutsummaryrefslogtreecommitdiffstats
path: root/embed
diff options
context:
space:
mode:
authorCarlos Garcia Campos <cgarcia@igalia.com>2013-02-20 22:04:44 +0800
committerCarlos Garcia Campos <carlosgc@gnome.org>2013-02-20 23:01:29 +0800
commit10163f64235b535f49647a6ad0cfa5e3b0f179a9 (patch)
treeeb3142170ef113f820b4ecc6076f02fae6e70a95 /embed
parent3512e9f5bc93e6518a7a61baab0cd5b6f5ecb260 (diff)
downloadgsoc2013-epiphany-10163f64235b535f49647a6ad0cfa5e3b0f179a9.tar
gsoc2013-epiphany-10163f64235b535f49647a6ad0cfa5e3b0f179a9.tar.gz
gsoc2013-epiphany-10163f64235b535f49647a6ad0cfa5e3b0f179a9.tar.bz2
gsoc2013-epiphany-10163f64235b535f49647a6ad0cfa5e3b0f179a9.tar.lz
gsoc2013-epiphany-10163f64235b535f49647a6ad0cfa5e3b0f179a9.tar.xz
gsoc2013-epiphany-10163f64235b535f49647a6ad0cfa5e3b0f179a9.tar.zst
gsoc2013-epiphany-10163f64235b535f49647a6ad0cfa5e3b0f179a9.zip
Fix loading HTTP auth protected pages from the overview
The switch between overview and normal web page happens when the page load is committed, in case of HTTP auth protected pages we never switch to web page mode because authentication happens before the load is committed. In WebKit2 the auth dialog is attached to the web view, so we need to show the web view before the load is committed to show the auth dialog. https://bugzilla.gnome.org/show_bug.cgi?id=694268
Diffstat (limited to 'embed')
-rw-r--r--embed/ephy-embed.c15
1 files changed, 11 insertions, 4 deletions
diff --git a/embed/ephy-embed.c b/embed/ephy-embed.c
index a91509c26..a465a142a 100644
--- a/embed/ephy-embed.c
+++ b/embed/ephy-embed.c
@@ -298,12 +298,19 @@ load_changed_cb (WebKitWebView *web_view,
WebKitLoadEvent load_event,
EphyEmbed *embed)
{
- const char *address;
+ switch (load_event) {
+ case WEBKIT_LOAD_STARTED: {
+ const char *uri;
- if (load_event == WEBKIT_LOAD_COMMITTED) {
+ uri = webkit_web_view_get_uri (web_view);
+ ephy_embed_set_overview_mode (embed, strcmp (uri, "ephy-about:overview") == 0);
+ break;
+ }
+ case WEBKIT_LOAD_COMMITTED:
ephy_embed_destroy_top_widgets (embed);
- address = ephy_web_view_get_address (EPHY_WEB_VIEW (web_view));
- ephy_embed_set_overview_mode (embed, strcmp (address, "ephy-about:overview") == 0);
+ break;
+ default:
+ break;
}
}
#else