r26826 - in /desktop/experimental/epiphany-browser/debian: changelog patches/16_fix_missing_restore_option.patch

kov at users.alioth.debian.org kov at users.alioth.debian.org
Sat Mar 12 03:23:41 UTC 2011


Author: kov
Date: Sat Mar 12 03:23:22 2011
New Revision: 26826

URL: http://svn.debian.org/wsvn/pkg-gnome/?sc=1&rev=26826
Log:
  * debian/patches/16_fix_missing_restore_option.patch:
  - show restore session infobar even when loading a link


Added:
    desktop/experimental/epiphany-browser/debian/patches/16_fix_missing_restore_option.patch
Modified:
    desktop/experimental/epiphany-browser/debian/changelog

Modified: desktop/experimental/epiphany-browser/debian/changelog
URL: http://svn.debian.org/wsvn/pkg-gnome/desktop/experimental/epiphany-browser/debian/changelog?rev=26826&op=diff
==============================================================================
--- desktop/experimental/epiphany-browser/debian/changelog [utf-8] (original)
+++ desktop/experimental/epiphany-browser/debian/changelog [utf-8] Sat Mar 12 03:23:22 2011
@@ -2,8 +2,10 @@
 
   * debian/patches/15_fix_tab_reuse_after_session_restore.patch:
   - fixes bad behaviour when openning a link after restoring a session
-
- -- Gustavo Noronha Silva <kov at debian.org>  Sat, 12 Mar 2011 00:21:27 -0300
+  * debian/patches/16_fix_missing_restore_option.patch:
+  - show restore session infobar even when loading a link
+
+ -- Gustavo Noronha Silva <kov at debian.org>  Sat, 12 Mar 2011 00:22:37 -0300
 
 epiphany-browser (2.91.90-1) experimental; urgency=low
 

Added: desktop/experimental/epiphany-browser/debian/patches/16_fix_missing_restore_option.patch
URL: http://svn.debian.org/wsvn/pkg-gnome/desktop/experimental/epiphany-browser/debian/patches/16_fix_missing_restore_option.patch?rev=26826&op=file
==============================================================================
--- desktop/experimental/epiphany-browser/debian/patches/16_fix_missing_restore_option.patch (added)
+++ desktop/experimental/epiphany-browser/debian/patches/16_fix_missing_restore_option.patch [utf-8] Sat Mar 12 03:23:22 2011
@@ -1,0 +1,78 @@
+From 760b242cb4b1742eb8166214c07b2ec1b649d58e Mon Sep 17 00:00:00 2001
+From: Gustavo Noronha Silva <gns at gnome.org>
+Date: Sat, 12 Mar 2011 00:08:51 -0300
+Subject: [PATCH] Open requested URI in new tab when a crashed session exists
+
+When you ask Epiphany to load a new URI but a crashed session exists,
+the session was being completely discarded in favour of the new
+URI. This change causes the URI to be loaded in a new tab in the
+background while still presenting the user with the option to recover
+the session.
+
+Bug #625116
+---
+ src/ephy-session.c |   32 +++++++++++++++++++++++---------
+ 1 files changed, 23 insertions(+), 9 deletions(-)
+
+diff --git a/src/ephy-session.c b/src/ephy-session.c
+index 183ef2d..995849f 100644
+--- a/src/ephy-session.c
++++ b/src/ephy-session.c
+@@ -544,7 +544,7 @@ session_command_autoresume (EphySession *session,
+ 
+ 	ephy_session_queue_command (session,
+ 				    EPHY_SESSION_CMD_MAYBE_OPEN_WINDOW_RESTORE,
+-				    NULL, NULL, user_time, FALSE);
++				    NULL, NULL, user_time, TRUE);
+ }
+ 
+ static void
+@@ -612,14 +612,29 @@ session_command_open_uris (EphySession *session,
+ 
+ 		/* For the first URI, if we have a valid recovery
+ 		 * window, reuse the already existing embed instead of
+-		 * creating a new one */
++		 * creating a new one, except if we still want to
++		 * present the option to resume a crashed session, in
++		 * that case use a new tab in the same window */
+ 		if (i == 0 && priv->resume_window != NULL)
+ 		{
+-			EphyWebView *web_view;
+-			
+-			embed = ephy_embed_container_get_active_child (EPHY_EMBED_CONTAINER (priv->resume_window));
+-			web_view = ephy_embed_get_web_view (embed);
+-			ephy_web_view_load_url (web_view, url);
++			if (priv->resume_infobar != NULL)
++			{
++				embed = ephy_shell_new_tab_full (shell, priv->resume_window,
++								 NULL /* parent tab */,
++								 request,
++								 EPHY_NEW_TAB_IN_EXISTING_WINDOW | page_flags,
++								 EPHY_WEB_VIEW_CHROME_ALL,
++								 FALSE /* is popup? */,
++								 user_time);
++			}
++			else
++			{
++				EphyWebView *web_view;
++
++				embed = ephy_embed_container_get_active_child (EPHY_EMBED_CONTAINER (priv->resume_window));
++				web_view = ephy_embed_get_web_view (embed);
++				ephy_web_view_load_url (web_view, url);
++			}
+ 		}
+ 		else
+ 		{
+@@ -795,8 +810,7 @@ session_command_dispatch (EphySession *session)
+ 	}
+ 
+ 	/* Look if there's anything else to dispatch */
+-	if (g_queue_is_empty (priv->queue) ||
+-	    priv->resume_window != NULL)
++	if (g_queue_is_empty (priv->queue))
+ 	{
+ 		priv->queue_idle_id = 0;
+ 		run_again = FALSE;
+-- 
+1.7.4.1
+




More information about the pkg-gnome-commits mailing list