aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorXan Lopez <xan@gnome.org>2009-07-21 16:12:08 +0800
committerXan Lopez <xan@gnome.org>2009-07-21 16:12:08 +0800
commitf670d8f8c5ffddf2a72fdd91dc40c49f7ac544e9 (patch)
tree7e4750218c48131a0105e739f6e4bdce24546225
parent4085c2c058bb02bbf65a929075edf2dada6dec8a (diff)
downloadgsoc2013-epiphany-f670d8f8c5ffddf2a72fdd91dc40c49f7ac544e9.tar
gsoc2013-epiphany-f670d8f8c5ffddf2a72fdd91dc40c49f7ac544e9.tar.gz
gsoc2013-epiphany-f670d8f8c5ffddf2a72fdd91dc40c49f7ac544e9.tar.bz2
gsoc2013-epiphany-f670d8f8c5ffddf2a72fdd91dc40c49f7ac544e9.tar.lz
gsoc2013-epiphany-f670d8f8c5ffddf2a72fdd91dc40c49f7ac544e9.tar.xz
gsoc2013-epiphany-f670d8f8c5ffddf2a72fdd91dc40c49f7ac544e9.tar.zst
gsoc2013-epiphany-f670d8f8c5ffddf2a72fdd91dc40c49f7ac544e9.zip
Try again to fix bug #588143
Simpler (and working) solution: take into account the loading status of the view when deciding if we should use it, if it's blank, to load new pages passed through the command line.
-rw-r--r--embed/ephy-embed.c6
-rw-r--r--src/ephy-shell.c9
2 files changed, 5 insertions, 10 deletions
diff --git a/embed/ephy-embed.c b/embed/ephy-embed.c
index f7309aeb5..18c943f6b 100644
--- a/embed/ephy-embed.c
+++ b/embed/ephy-embed.c
@@ -202,12 +202,6 @@ load_status_changed_cb (WebKitWebView *view,
} else {
EphyWebViewNetState estate = EPHY_WEB_VIEW_STATE_UNKNOWN;
const char *loading_uri = ephy_web_view_get_typed_address (EPHY_WEB_VIEW (view));
- /* FIXME: typed address might be NULL when, for example, loading
- from command line, so try plain address if that's the
- case. This should be fixed to get the address from just one
- place... */
- if (loading_uri == NULL)
- loading_uri = ephy_web_view_get_address (EPHY_WEB_VIEW (view));
if (status == WEBKIT_LOAD_PROVISIONAL) {
estate = (EphyWebViewNetState) (estate |
diff --git a/src/ephy-shell.c b/src/ephy-shell.c
index d097f4726..27f2de784 100644
--- a/src/ephy-shell.c
+++ b/src/ephy-shell.c
@@ -474,7 +474,8 @@ ephy_shell_new_tab_full (EphyShell *shell,
embed = ephy_embed_container_get_active_child (EPHY_EMBED_CONTAINER (window));
if (embed != NULL)
{
- if (ephy_web_view_get_is_blank (EPHY_GET_EPHY_WEB_VIEW_FROM_EMBED (embed)))
+ if (ephy_web_view_get_is_blank (EPHY_GET_EPHY_WEB_VIEW_FROM_EMBED (embed)) &&
+ ephy_web_view_get_load_status (EPHY_GET_EPHY_WEB_VIEW_FROM_EMBED (embed)) == FALSE)
{
active_is_blank = TRUE;
}
@@ -491,8 +492,8 @@ ephy_shell_new_tab_full (EphyShell *shell,
if (previous_embed != NULL)
{
- ephy_web_view_copy_back_history (EPHY_WEB_VIEW (EPHY_GET_WEBKIT_WEB_VIEW_FROM_EMBED (previous_embed)),
- EPHY_WEB_VIEW (EPHY_GET_WEBKIT_WEB_VIEW_FROM_EMBED (embed)));
+ ephy_web_view_copy_back_history (EPHY_GET_EPHY_WEB_VIEW_FROM_EMBED (previous_embed),
+ EPHY_GET_EPHY_WEB_VIEW_FROM_EMBED (embed));
}
ephy_gui_window_update_user_time (GTK_WIDGET (window), user_time);
@@ -517,7 +518,7 @@ ephy_shell_new_tab_full (EphyShell *shell,
}
else if (flags & EPHY_NEW_TAB_OPEN_PAGE)
{
- ephy_web_view_load_request (EPHY_WEB_VIEW (EPHY_GET_WEBKIT_WEB_VIEW_FROM_EMBED (embed)),
+ ephy_web_view_load_request (EPHY_GET_EPHY_WEB_VIEW_FROM_EMBED (embed),
request);
is_empty = url_is_empty (webkit_network_request_get_uri (request));