Hello community,

here is the log from the commit of package epiphany for openSUSE:Factory 
checked in at 2020-02-18 13:29:16
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/epiphany (Old)
 and      /work/SRC/openSUSE:Factory/.epiphany.new.26092 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "epiphany"

Tue Feb 18 13:29:16 2020 rev:173 rq:775014 version:3.34.4

Changes:
--------
--- /work/SRC/openSUSE:Factory/epiphany/epiphany.changes        2020-01-24 
13:12:11.789457972 +0100
+++ /work/SRC/openSUSE:Factory/.epiphany.new.26092/epiphany.changes     
2020-02-18 13:29:19.248692644 +0100
@@ -1,0 +2,16 @@
+Fri Feb 14 21:51:29 UTC 2020 - Bjørn Lie <[email protected]>
+
+- Update to version 3.34.4:
+  + Changing web app icon in preferences dialog should copy icon.
+  + Fix new tab page with few items in history.
+  + Fix Favorites and Mobile bookmarks not tagged correctly when
+    localized.
+  + Fix password manager user account selector.
+  + Hide view source context menu item when on view source page.
+  + Fix memory corruption in view source mode.
+  + Fix crash when parsing session state.
+  + Fix improper warning when closing multiple tabs.
+  + Fix occasional failure to start up.
+  + Fix memory corruption when loading adblock filters. 
+
+-------------------------------------------------------------------

Old:
----
  epiphany-3.34.3.1.tar.xz

New:
----
  epiphany-3.34.4.tar.xz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ epiphany.spec ++++++
--- /var/tmp/diff_new_pack.mnQ4zy/_old  2020-02-18 13:29:19.952694014 +0100
+++ /var/tmp/diff_new_pack.mnQ4zy/_new  2020-02-18 13:29:19.956694021 +0100
@@ -17,7 +17,7 @@
 
 
 Name:           epiphany
-Version:        3.34.3.1
+Version:        3.34.4
 Release:        0
 Summary:        GNOME Web Browser
 License:        GPL-3.0-or-later

++++++ epiphany-3.34.3.1.tar.xz -> epiphany-3.34.4.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/epiphany-3.34.3.1/NEWS new/epiphany-3.34.4/NEWS
--- old/epiphany-3.34.3.1/NEWS  2020-01-04 05:20:29.000000000 +0100
+++ new/epiphany-3.34.4/NEWS    2020-02-14 22:39:23.000000000 +0100
@@ -1,3 +1,17 @@
+3.34.4 - February 14, 2020
+==========================
+
+ * Changing web app icon in preferences dialog should copy icon (#810, ignapk)
+ * Fix new tab page with few items in history (#986)
+ * Fix Favorites and Mobile bookmarks not tagged correctly when localized 
(#1015, Jonathan Kang)
+ * Fix password manager user account selector (#1018)
+ * Hide view source context menu item when on view source page (#1046)
+ * Fix memory corruption in view source mode (#1065)
+ * Fix crash when parsing session state (#1092)
+ * Fix improper warning when closing multiple tabs (#1093)
+ * Fix occasional failure to start up (!537)
+ * Fix memory corruption when loading adblock filters
+
 3.34.3.1 - January 3, 2020
 ==========================
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/epiphany-3.34.3.1/embed/ephy-about-handler.c 
new/epiphany-3.34.4/embed/ephy-about-handler.c
--- old/epiphany-3.34.3.1/embed/ephy-about-handler.c    2020-01-04 
05:20:29.000000000 +0100
+++ new/epiphany-3.34.4/embed/ephy-about-handler.c      2020-02-14 
22:39:23.000000000 +0100
@@ -347,6 +347,7 @@
   gsize data_length;
   char *lang;
   GList *l;
+  guint list_length;
 
   snapshot_service = ephy_snapshot_service_get_default ();
   shell = ephy_embed_shell_get_default ();
@@ -371,7 +372,9 @@
                           _(OVERVIEW_PAGE_TITLE));
   g_free (lang);
 
-  if (g_list_length (urls) == 0 || !success) {
+  list_length = g_list_length (urls);
+
+  if (list_length == 0 || !success) {
     GtkIconInfo *icon_info;
     g_autofree gchar *icon = g_strconcat (APPLICATION_ID, "-symbolic", NULL);
 
@@ -423,6 +426,14 @@
                             thumbnail_style ? thumbnail_style : "", 
url->title);
   }
 
+  for (guint idx = list_length; idx < 9; idx++) {
+    g_string_append_printf (data_str,
+                            "<i class=\"overview-item\">"
+                            "  <span class=\"overview-thumbnail\"></span>"
+                            "  <span class=\"overview-title\"></span>"
+                            "</i>");
+  }
+
   data_str = g_string_append (data_str,
                               "  </div>\n"
                               "  </div>\n"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/epiphany-3.34.3.1/embed/ephy-filters-manager.c 
new/epiphany-3.34.4/embed/ephy-filters-manager.c
--- old/epiphany-3.34.3.1/embed/ephy-filters-manager.c  2020-01-04 
05:20:29.000000000 +0100
+++ new/epiphany-3.34.4/embed/ephy-filters-manager.c    2020-02-14 
22:39:23.000000000 +0100
@@ -636,7 +636,7 @@
   g_assert (self);
   g_assert (store == self->manager->store);
 
-  g_clear_object (&self->manager->wk_filter);
+  g_clear_pointer (&self->manager->wk_filter, 
webkit_user_content_filter_unref);
   self->manager->wk_filter = webkit_user_content_filter_store_load_finish 
(self->manager->store,
                                                                            
result,
                                                                            
&error);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/epiphany-3.34.3.1/embed/ephy-view-source-handler.c 
new/epiphany-3.34.4/embed/ephy-view-source-handler.c
--- old/epiphany-3.34.3.1/embed/ephy-view-source-handler.c      2020-01-04 
05:20:29.000000000 +0100
+++ new/epiphany-3.34.4/embed/ephy-view-source-handler.c        2020-02-14 
22:39:23.000000000 +0100
@@ -158,8 +158,12 @@
                  WebKitLoadEvent        load_event,
                  EphyViewSourceRequest *request)
 {
-  if (load_event == WEBKIT_LOAD_FINISHED)
+  if (load_event == WEBKIT_LOAD_FINISHED) {
+    g_signal_handler_disconnect (request->web_view, request->load_changed_id);
+    request->load_changed_id = 0;
+
     ephy_view_source_request_begin_get_source_from_web_view (request, 
web_view);
+  }
 }
 
 static void
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/epiphany-3.34.3.1/embed/ephy-web-view.c 
new/epiphany-3.34.4/embed/ephy-web-view.c
--- old/epiphany-3.34.3.1/embed/ephy-web-view.c 2020-01-04 05:20:29.000000000 
+0100
+++ new/epiphany-3.34.4/embed/ephy-web-view.c   2020-02-14 22:39:23.000000000 
+0100
@@ -2843,15 +2843,13 @@
 script_dialog_cb (WebKitWebView      *web_view,
                   WebKitScriptDialog *dialog)
 {
-  if (webkit_script_dialog_get_dialog_type (dialog) != 
WEBKIT_SCRIPT_DIALOG_BEFORE_UNLOAD_CONFIRM)
-    return FALSE;
-
-  /* Ignore beforeunload events for now until we properly support 
webkit_web_view_try_close()
-   * See https://bugzilla.gnome.org/show_bug.cgi?id=722032.
+  /* FIXME: Ignore beforeunload events for now until we properly support 
webkit_web_view_try_close()
+   * See https://gitlab.gnome.org/GNOME/epiphany/issues/220.
    */
-  webkit_script_dialog_confirm_set_confirmed (dialog, TRUE);
+  if (webkit_script_dialog_get_dialog_type (dialog) == 
WEBKIT_SCRIPT_DIALOG_BEFORE_UNLOAD_CONFIRM)
+    webkit_script_dialog_confirm_set_confirmed (dialog, TRUE);
 
-  return TRUE;
+  return WEBKIT_WEB_VIEW_CLASS (ephy_web_view_parent_class)->script_dialog 
(web_view, dialog);
 }
 
 static const char *
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/epiphany-3.34.3.1/embed/web-process-extension/resources/js/ephy.js 
new/epiphany-3.34.4/embed/web-process-extension/resources/js/ephy.js
--- old/epiphany-3.34.3.1/embed/web-process-extension/resources/js/ephy.js      
2020-01-04 05:20:29.000000000 +0100
+++ new/epiphany-3.34.4/embed/web-process-extension/resources/js/ephy.js        
2020-02-14 22:39:23.000000000 +0100
@@ -103,12 +103,13 @@
 
 Ephy.PreFillUserMenu = class PreFillUserMenu
 {
-    constructor(manager, userElement, users, passwordElement)
+    constructor(manager, formAuth, users)
     {
         this._manager = manager;
-        this._userElement = userElement;
+        this._formAuth = formAuth;
+        this._userElement = formAuth.usernameNode;
         this._users = users;
-        this._passwordElement = passwordElement;
+        this._passwordElement = formAuth.passwordNode;
         this._selected = null;
         this._wasEdited = false;
 
@@ -165,7 +166,7 @@
         if (newSelect) {
             this._selected = newSelect;
             this._userElement.value = 
this._selected.firstElementChild.textContent;
-            this._manager.preFill();
+            this._usernameSelected();
         } else {
             this._passwordElement.value = '';
         }
@@ -186,13 +187,14 @@
             'z-index: 2147483647;' +
             'cursor: default;' +
             'background-color: white;' +
-            'box-shadow: 5px 5px 5px black;' +
+            'box-shadow: 5px 5px 5px rgba(0,0,0,0.2);' +
             'border-top: 0px;' +
             'border-radius: 8px;' +
+            'padding: 12px 0px;' +
             '-webkit-user-modify: read-only ! important;';
-        mainDiv.style.width = this._userElement.offsetWidth;
-        mainDiv.style.left = elementRect.left + document.body.scrollLeft;
-        mainDiv.style.top = elementRect.top + document.body.scrollTop;
+        mainDiv.style.width = this._userElement.offsetWidth + 'px';
+        mainDiv.style.left = elementRect.left + document.body.scrollLeft + 
'px';
+        mainDiv.style.top = elementRect.top + elementRect.height + 
document.body.scrollTop + 'px';
 
         let ul = document.createElement('ul');
         ul.style.cssText = 'margin: 0; padding: 0;';
@@ -209,6 +211,7 @@
             li.style.cssText = 'list-style-type: none ! important;' +
                 'background-image: none ! important;' +
                 'padding: 3px 6px ! important;' +
+                'color: black;' +
                 'margin: 0px;';
             // FIXME: selection colors.
             li.tabindex = -1;
@@ -221,6 +224,7 @@
             anchor.style.cssText = 'font-weight: normal ! important;' +
                 'font-family: sans ! important;' +
                 'text-decoration: none ! important;' +
+                'color: black;' +
                 '-webkit-user-modify: read-only ! important;';
             // FIXME: selection colors.
             anchor.textContent = user;
@@ -230,7 +234,7 @@
                 this._userElement.value = user;
                 this._selected = li;
                 this._removeMenu();
-                this._manager.preFill();
+                this._usernameSelected();
             }, true);
         }
 
@@ -246,6 +250,13 @@
         if (menu)
             menu.parentNode.removeChild(menu);
     }
+
+    _usernameSelected()
+    {
+        this._formAuth.username = this._userElement.value;
+        this._passwordElement.value = '';
+        this._manager.preFill(this._formAuth);
+    }
 }
 
 Ephy.formControlsAssociated = function(pageID, frameID, forms, serializer)
@@ -332,9 +343,7 @@
     {
         let element = this._takePendingPromise(id);
         if (element) {
-            if (username === '')
-                username = null;
-            if (password !== '')
+            if (password)
                 element.resolver({username, password});
             else
                 element.resolver(null);
@@ -445,7 +454,7 @@
             Ephy.passwordManager.queryUsernames(formAuth.origin).then(users => 
{
                 if (users.length > 1) {
                     Ephy.log('More than one saved username, hooking menu for 
choosing which one to select');
-                    this._preFillUserMenu = new Ephy.PreFillUserMenu(this, 
formAuth.usernameNode, users, formAuth.passwordNode);
+                    this._preFillUserMenu = new Ephy.PreFillUserMenu(this, 
formAuth, users);
                 }
                 this.preFill(formAuth);
             });
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/epiphany-3.34.3.1/lib/ephy-web-app-utils.c 
new/epiphany-3.34.4/lib/ephy-web-app-utils.c
--- old/epiphany-3.34.3.1/lib/ephy-web-app-utils.c      2020-01-04 
05:20:29.000000000 +0100
+++ new/epiphany-3.34.4/lib/ephy-web-app-utils.c        2020-02-14 
22:39:23.000000000 +0100
@@ -818,6 +818,18 @@
   return matched;
 }
 
+static void
+ephy_web_icon_copy_cb (GFile        *file,
+                       GAsyncResult *result,
+                       gpointer      user_data)
+{
+  GError *error = NULL;
+  if (!g_file_copy_finish (file, result, &error)) {
+    g_warning ("Failed to update web app icon: %s", error->message);
+    g_error_free (error);
+  }
+}
+
 gboolean
 ephy_web_application_save (EphyWebApplication *app)
 {
@@ -850,8 +862,14 @@
 
     icon = g_key_file_get_string (key, "Desktop Entry", "Icon", NULL);
     if (g_strcmp0 (icon, app->icon_url) != 0) {
+      GFile *new_icon;
+      GFile *old_icon;
       changed = TRUE;
-      g_key_file_set_string (key, "Desktop Entry", "Icon", app->icon_url);
+      new_icon = g_file_new_for_path (app->icon_url);
+      old_icon = g_file_new_for_path (icon);
+      g_file_copy_async (new_icon, old_icon, G_FILE_COPY_OVERWRITE,
+                         G_PRIORITY_DEFAULT, NULL, NULL, NULL,
+                         (GAsyncReadyCallback)ephy_web_icon_copy_cb, NULL);
     }
     g_free (icon);
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/epiphany-3.34.3.1/meson.build 
new/epiphany-3.34.4/meson.build
--- old/epiphany-3.34.3.1/meson.build   2020-01-04 05:20:29.000000000 +0100
+++ new/epiphany-3.34.4/meson.build     2020-02-14 22:39:23.000000000 +0100
@@ -1,6 +1,6 @@
 project('epiphany', 'c',
   license: 'GPL3+',
-  version: '3.34.3.1',
+  version: '3.34.4',
   meson_version: '>= 0.46.0',
   default_options: ['c_std=gnu11',
                     'warning_level=2']
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/epiphany-3.34.3.1/org.gnome.Epiphany.json 
new/epiphany-3.34.4/org.gnome.Epiphany.json
--- old/epiphany-3.34.3.1/org.gnome.Epiphany.json       2020-01-04 
05:20:29.000000000 +0100
+++ new/epiphany-3.34.4/org.gnome.Epiphany.json 2020-02-14 22:39:23.000000000 
+0100
@@ -46,7 +46,8 @@
             "sources" : [
                 {
                     "type" : "git",
-                    "url" : "https://source.puri.sm/Librem5/libhandy.git";
+                    "url" : "https://source.puri.sm/Librem5/libhandy.git";,
+                    "branch" : "libhandy-0-0"
                 }
             ]
         },
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/epiphany-3.34.3.1/src/bookmarks/ephy-bookmark-properties-grid.c 
new/epiphany-3.34.4/src/bookmarks/ephy-bookmark-properties-grid.c
--- old/epiphany-3.34.3.1/src/bookmarks/ephy-bookmark-properties-grid.c 
2020-01-04 05:20:29.000000000 +0100
+++ new/epiphany-3.34.4/src/bookmarks/ephy-bookmark-properties-grid.c   
2020-02-14 22:39:23.000000000 +0100
@@ -169,7 +169,7 @@
     gtk_box_pack_start (GTK_BOX (box), image, FALSE, FALSE, 0);
   }
 
-  label_text = default_tag ? _(EPHY_BOOKMARKS_FAVORITES_TAG) : tag;
+  label_text = default_tag ? EPHY_BOOKMARKS_FAVORITES_TAG : tag;
   label = gtk_label_new (label_text);
   gtk_box_pack_start (GTK_BOX (box), label, FALSE, FALSE, 0);
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/epiphany-3.34.3.1/src/bookmarks/ephy-bookmarks-manager.h 
new/epiphany-3.34.4/src/bookmarks/ephy-bookmarks-manager.h
--- old/epiphany-3.34.3.1/src/bookmarks/ephy-bookmarks-manager.h        
2020-01-04 05:20:29.000000000 +0100
+++ new/epiphany-3.34.4/src/bookmarks/ephy-bookmarks-manager.h  2020-02-14 
22:39:23.000000000 +0100
@@ -31,7 +31,7 @@
 
 G_DECLARE_FINAL_TYPE (EphyBookmarksManager, ephy_bookmarks_manager, EPHY, 
BOOKMARKS_MANAGER, GObject)
 
-#define EPHY_BOOKMARKS_FAVORITES_TAG    N_("Favorites")
+#define EPHY_BOOKMARKS_FAVORITES_TAG    _("Favorites")
 #define EPHY_BOOKMARKS_MOBILE_TAG       N_("Mobile")
 #define FIREFOX_BOOKMARKS_MOBILE_FOLDER "Mobile Bookmarks"
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/epiphany-3.34.3.1/src/bookmarks/ephy-bookmarks-popover.c 
new/epiphany-3.34.4/src/bookmarks/ephy-bookmarks-popover.c
--- old/epiphany-3.34.3.1/src/bookmarks/ephy-bookmarks-popover.c        
2020-01-04 05:20:29.000000000 +0100
+++ new/epiphany-3.34.4/src/bookmarks/ephy-bookmarks-popover.c  2020-02-14 
22:39:23.000000000 +0100
@@ -240,11 +240,10 @@
 
   if (g_strcmp0 (tag, EPHY_BOOKMARKS_FAVORITES_TAG) == 0) {
     image = gtk_image_new_from_icon_name ("emblem-favorite-symbolic", 
GTK_ICON_SIZE_MENU);
-    label = gtk_label_new (_(EPHY_BOOKMARKS_FAVORITES_TAG));
   } else {
     image = gtk_image_new_from_icon_name ("ephy-bookmark-tag-symbolic", 
GTK_ICON_SIZE_MENU);
-    label = gtk_label_new (tag);
   }
+  label = gtk_label_new (tag);
 
   gtk_box_pack_start (GTK_BOX (box), image, FALSE, FALSE, 0);
   gtk_box_pack_start (GTK_BOX (box), label, TRUE, FALSE, 0);
@@ -411,10 +410,7 @@
     gtk_container_add (GTK_CONTAINER (self->tag_detail_list_box), row);
   }
 
-  if (strcmp (tag, EPHY_BOOKMARKS_FAVORITES_TAG) == 0)
-    gtk_label_set_label (GTK_LABEL (self->tag_detail_label), 
_(EPHY_BOOKMARKS_FAVORITES_TAG));
-  else
-    gtk_label_set_label (GTK_LABEL (self->tag_detail_label), tag);
+  gtk_label_set_label (GTK_LABEL (self->tag_detail_label), tag);
 
   gtk_stack_set_visible_child_name (GTK_STACK (self->toplevel_stack), 
"tag_detail");
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/epiphany-3.34.3.1/src/ephy-session.c 
new/epiphany-3.34.4/src/ephy-session.c
--- old/epiphany-3.34.3.1/src/ephy-session.c    2020-01-04 05:20:29.000000000 
+0100
+++ new/epiphany-3.34.4/src/ephy-session.c      2020-02-14 22:39:23.000000000 
+0100
@@ -1080,6 +1080,7 @@
   guint32 user_time;
 
   EphyWindow *window;
+  gulong destroy_id;
   gboolean is_first_window;
   gint active_tab;
 
@@ -1105,6 +1106,11 @@
 {
   g_object_unref (context->session);
 
+  if (context->window) {
+    /* This can only happen if the session state is malformed. */
+    g_signal_handler_disconnect (context->window, context->destroy_id);
+  }
+
   g_free (context);
 }
 
@@ -1116,7 +1122,13 @@
   GdkRectangle geometry = { -1, -1, 0, 0 };
   guint i;
 
+  if (context->window) {
+    /* This should only happen if the session state is malformed. */
+    return;
+  }
+
   context->window = ephy_window_new ();
+  context->destroy_id = g_signal_connect (context->window, "destroy", 
G_CALLBACK (gtk_widget_destroyed), &context->window);
 
   for (i = 0; names[i]; i++) {
     gulong int_value;
@@ -1159,6 +1171,13 @@
   gboolean is_pin = FALSE;
   guint i;
 
+  if (!context->window) {
+    /* This can happen if the session is malformed, or if the window is
+     * destroyed before the session finishes loading.
+     */
+    return;
+  }
+
   notebook = ephy_window_get_notebook (context->window);
 
   for (i = 0; names[i]; i++) {
@@ -1288,6 +1307,13 @@
     GtkWidget *notebook;
     EphyEmbedShell *shell = ephy_embed_shell_get_default ();
 
+    if (!context->window) {
+      /* This can happen if the session is malformed, or if the window is
+       * destroyed before the session finishes loading.
+       */
+      return;
+    }
+
     notebook = ephy_window_get_notebook (context->window);
     gtk_notebook_set_current_page (GTK_NOTEBOOK (notebook), 
context->active_tab);
 
@@ -1301,6 +1327,7 @@
 
     ephy_embed_shell_restored_window (shell);
 
+    g_clear_signal_handler (&context->destroy_id, context->window);
     context->window = NULL;
     context->active_tab = 0;
     context->is_first_window = FALSE;
@@ -1744,3 +1771,9 @@
 
   ephy_session_save (session);
 }
+
+gboolean
+ephy_session_is_closing (EphySession *session)
+{
+  return session->closing;
+}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/epiphany-3.34.3.1/src/ephy-session.h 
new/epiphany-3.34.4/src/ephy-session.h
--- old/epiphany-3.34.3.1/src/ephy-session.h    2020-01-04 05:20:29.000000000 
+0100
+++ new/epiphany-3.34.4/src/ephy-session.h      2020-02-14 22:39:23.000000000 
+0100
@@ -69,5 +69,6 @@
 
 void             ephy_session_clear                   (EphySession *session);
 
+gboolean         ephy_session_is_closing              (EphySession *session);
 
 G_END_DECLS
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/epiphany-3.34.3.1/src/ephy-shell.c 
new/epiphany-3.34.4/src/ephy-shell.c
--- old/epiphany-3.34.3.1/src/ephy-shell.c      2020-01-04 05:20:29.000000000 
+0100
+++ new/epiphany-3.34.4/src/ephy-shell.c        2020-02-14 22:39:23.000000000 
+0100
@@ -30,6 +30,7 @@
 #include "ephy-gui.h"
 #include "ephy-header-bar.h"
 #include "ephy-history-dialog.h"
+#include "ephy-link.h"
 #include "ephy-lockdown.h"
 #include "ephy-notification.h"
 #include "ephy-prefs.h"
@@ -127,6 +128,9 @@
     /* since session autoresume will open one for us. */
     ephy_shell_open_uris (shell, (const char **)ctx->arguments,
                           ctx->startup_mode, ctx->user_time);
+  } else if (ephy_shell_get_n_windows (shell) == 0) {
+    EphyWindow *window = ephy_window_new ();
+    ephy_link_open (EPHY_LINK (window), NULL, NULL, EPHY_LINK_HOME_PAGE);
   }
 }
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/epiphany-3.34.3.1/src/ephy-window.c 
new/epiphany-3.34.4/src/ephy-window.c
--- old/epiphany-3.34.3.1/src/ephy-window.c     2020-01-04 05:20:29.000000000 
+0100
+++ new/epiphany-3.34.4/src/ephy-window.c       2020-02-14 22:39:23.000000000 
+0100
@@ -53,6 +53,7 @@
 #include "ephy-title-box.h"
 #include "ephy-title-widget.h"
 #include "ephy-type-builtins.h"
+#include "ephy-view-source-handler.h"
 #include "ephy-web-app-utils.h"
 #include "ephy-web-view.h"
 #include "ephy-zoom.h"
@@ -1509,6 +1510,7 @@
   gboolean can_search_selection = FALSE;
   char *search_selection_action_name = NULL;
   const char *selected_text = NULL;
+  const char *uri = NULL;
 
   window_action_group = gtk_widget_get_action_group (GTK_WIDGET (window),
                                                      "win");
@@ -1767,8 +1769,12 @@
 
     webkit_context_menu_append (context_menu,
                                 webkit_context_menu_item_new_separator ());
-    add_action_to_context_menu (context_menu, window_action_group,
-                                "page-source", window);
+    uri = webkit_web_view_get_uri (web_view);
+    if (uri && !strstr (uri, EPHY_VIEW_SOURCE_SCHEME)) {
+      add_action_to_context_menu (context_menu, window_action_group,
+                                  "page-source", window);
+    }
+
     webkit_context_menu_append (context_menu,
                                 webkit_context_menu_item_new_from_stock_action 
(WEBKIT_CONTEXT_MENU_ACTION_INSPECT_ELEMENT));
   }
@@ -4243,6 +4249,8 @@
 gboolean
 ephy_window_close (EphyWindow *window)
 {
+  EphySession *session;
+
   /* We ignore the delete_event if the disable_quit lockdown has been set
    */
   if (g_settings_get_boolean (EPHY_SETTINGS_LOCKDOWN,
@@ -4263,8 +4271,10 @@
     return FALSE;
   }
 
+  session = ephy_shell_get_session (ephy_shell_get_default ());
   if (ephy_shell_get_n_windows (ephy_shell_get_default ()) > 1 &&
       gtk_notebook_get_n_pages (window->notebook) > 1 &&
+      !ephy_session_is_closing (session) &&
       !confirm_close_with_multiple_tabs (window)) {
     /* stop window close */
     return FALSE;


Reply via email to