Hello community,

here is the log from the commit of package nautilus for openSUSE:Factory 
checked in at 2019-08-09 16:50:57
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/nautilus (Old)
 and      /work/SRC/openSUSE:Factory/.nautilus.new.9556 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "nautilus"

Fri Aug  9 16:50:57 2019 rev:174 rq:721461 version:3.32.3

Changes:
--------
--- /work/SRC/openSUSE:Factory/nautilus/nautilus.changes        2019-06-03 
18:43:01.632688054 +0200
+++ /work/SRC/openSUSE:Factory/.nautilus.new.9556/nautilus.changes      
2019-08-09 16:51:00.945501666 +0200
@@ -1,0 +2,30 @@
+Tue Aug  6 17:56:22 UTC 2019 - Bjørn Lie <[email protected]>
+
+- Update to version 3.32.3:
+  + Drop unintended string changes.
+
+-------------------------------------------------------------------
+Tue Aug  6 15:39:11 UTC 2019 - Bjørn Lie <[email protected]>
+
+- Update to version 3.32.2:
+  + Add padding to thumbnails in canvas view.
+  + Use “Files” instead of “Nautilus” in appdata.
+  + Add website link to about dialog.
+  + Fix starring being allowed in XDG user directories, set to
+    $HOME.
+  + Fix starring in single indexed directories.
+  + Fix starring in subdirectories of indexed directories.
+  + Add missing menu mnemonics.
+  + Remove extraneous menu separators.
+  + Fix styling being incorrectly applied to GtkFileChooser
+    instances.
+  + Fix crashes when new tab position is set to “end”.
+  + Allow whitespace at the beginning and end of path in location
+    entry.
+  + Fix leaky context menus.
+  + Fix NAUTILUS_SCRIPT_SELECTED_FILE_PATHS not being set for
+    scripts.
+  + Fix critical warnings when window is closed while a
+    notification is displayed.
+
+-------------------------------------------------------------------

Old:
----
  nautilus-3.32.1.tar.xz

New:
----
  nautilus-3.32.3.tar.xz

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

Other differences:
------------------
++++++ nautilus.spec ++++++
--- /var/tmp/diff_new_pack.ygb5Lp/_old  2019-08-09 16:51:01.413501573 +0200
+++ /var/tmp/diff_new_pack.ygb5Lp/_new  2019-08-09 16:51:01.413501573 +0200
@@ -17,12 +17,13 @@
 
 
 Name:           nautilus
-Version:        3.32.1
+Version:        3.32.3
 Release:        0
 Summary:        File Manager for the GNOME Desktop
 License:        GPL-3.0-or-later AND LGPL-2.1-or-later
 Group:          Productivity/File utilities
 URL:            https://wiki.gnome.org/Apps/Nautilus
+
 Source0:        
https://download.gnome.org/sources/nautilus/3.32/%{name}-%{version}.tar.xz
 # fate#308344 bgo#602147
 Source1:        mount-archive.desktop

++++++ nautilus-3.32.1.tar.xz -> nautilus-3.32.3.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/nautilus-3.32.1/NEWS new/nautilus-3.32.3/NEWS
--- old/nautilus-3.32.1/NEWS    2019-05-05 20:20:06.000000000 +0200
+++ new/nautilus-3.32.3/NEWS    2019-08-06 19:46:07.000000000 +0200
@@ -1,3 +1,22 @@
+Major changes in 3.32.3:
+* Drop unintended string changes
+
+Major changes in 3.32.2:
+* Add padding to thumbnails in canvas view (Chris Billington)
+* Use “Files” instead of “Nautilus” in appdata
+* Add website link to about dialog (Ondrej Holy)
+* Fix starring being allowed in XDG user directories, set to $HOME
+* Fix starring in single indexed directories
+* Fix starring in subdirectories of indexed directories (António Fernandes)
+* Add missing menu mnemonics (Tomasz Gąsior)
+* Remove extraneous menu separators (Tomasz Gąsior)
+* Fix styling being incorrectly applied to GtkFileChooser instances (Tomasz 
Gąsior)
+* Fix crashes when new tab position is set to “end” (Ernestas Kulik)
+* Allow whitespace at the beginning and end of path in location entry (Daniels 
Pauls)
+* Fix leaky context menus (Ernestas Kulik)
+* Fix NAUTILUS_SCRIPT_SELECTED_FILE_PATHS not being set for scripts
+* Fix critical warnings when window is closed while a notification is 
displayed (Ernestas Kulik)
+
 Major changes in 3.32.1:
 * Fix Clang builds (Albert Vaca Cintora)
 * Fix crash when opening trash:/// from command line (Andrea Azzarone)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/nautilus-3.32.1/meson.build 
new/nautilus-3.32.3/meson.build
--- old/nautilus-3.32.1/meson.build     2019-05-05 20:20:06.000000000 +0200
+++ new/nautilus-3.32.3/meson.build     2019-08-06 19:46:07.000000000 +0200
@@ -1,6 +1,6 @@
 project('nautilus', 'c',
   default_options: ['c_std=c11'],
-  version: '3.32.1',
+  version: '3.32.3',
   meson_version: '>= 0.47.0',
   license: 'GPL3+'
 )
@@ -34,6 +34,13 @@
 # End compilers #
 #################
 
+add_global_arguments(
+  cc.get_supported_arguments([
+    '-DGLIB_DISABLE_DEPRECATION_WARNINGS',
+  ]),
+  language: 'c',
+)
+
 add_project_arguments(
   cc.get_supported_arguments([
     '-Wall',
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/nautilus-3.32.1/src/gnome-desktop/gnome-desktop-thumbnail-script.c 
new/nautilus-3.32.3/src/gnome-desktop/gnome-desktop-thumbnail-script.c
--- old/nautilus-3.32.1/src/gnome-desktop/gnome-desktop-thumbnail-script.c      
2019-05-05 20:20:06.000000000 +0200
+++ new/nautilus-3.32.3/src/gnome-desktop/gnome-desktop-thumbnail-script.c      
2019-08-06 19:46:07.000000000 +0200
@@ -149,7 +149,9 @@
 
   basename = g_path_get_basename (path);
   p = strrchr (basename, '.');
-  if (p == NULL)
+  if (g_file_test (path, G_FILE_TEST_IS_DIR) ||
+      !p ||
+      p == basename) /* Leading periods on the basename are ignored. */
     return NULL;
   return g_strdup (p + 1);
 }
@@ -717,7 +719,10 @@
   g_free (exec->infile);
   if (exec->infile_tmp)
     {
-      g_unlink (exec->infile_tmp);
+      if (g_file_test (exec->infile_tmp, G_FILE_TEST_IS_DIR))
+        g_rmdir (exec->infile_tmp);
+      else
+        g_unlink (exec->infile_tmp);
       g_free (exec->infile_tmp);
     }
   if (exec->outfile)
@@ -795,7 +800,12 @@
         }
       exec->outfile = g_build_filename (exec->outdir, 
"gnome-desktop-thumbnailer.png", NULL);
       ext = get_extension (exec->infile);
-      infile = g_strdup_printf ("gnome-desktop-file-to-thumbnail.%s", ext);
+
+      if (ext)
+        infile = g_strdup_printf ("gnome-desktop-file-to-thumbnail.%s", ext);
+      else
+        infile = g_strdup_printf ("gnome-desktop-file-to-thumbnail");
+
       exec->infile_tmp = g_build_filename (exec->outdir, infile, NULL);
 
       exec->s_infile = g_build_filename ("/tmp/", infile, NULL);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/nautilus-3.32.1/src/nautilus-file.c 
new/nautilus-3.32.3/src/nautilus-file.c
--- old/nautilus-3.32.1/src/nautilus-file.c     2019-05-05 20:20:06.000000000 
+0200
+++ new/nautilus-3.32.3/src/nautilus-file.c     2019-08-06 19:46:07.000000000 
+0200
@@ -5173,6 +5173,9 @@
         }
         else
         {
+            GdkPixbuf *bg_pixbuf;
+            int bg_size;
+
             pixbuf = gdk_pixbuf_scale_simple (file->details->thumbnail,
                                               MAX (w * thumb_scale, 1),
                                               MAX (h * thumb_scale, 1),
@@ -5198,13 +5201,32 @@
                 }
             }
 
+            /* Copy to a transparent square pixbuf, aligned to the bottom edge 
*/
+            bg_size = MAX (gdk_pixbuf_get_width (pixbuf), 
gdk_pixbuf_get_height (pixbuf));
+            bg_pixbuf = gdk_pixbuf_new (gdk_pixbuf_get_colorspace (pixbuf),
+                                        TRUE,
+                                        gdk_pixbuf_get_bits_per_sample 
(pixbuf),
+                                        bg_size,
+                                        bg_size);
+            gdk_pixbuf_fill (bg_pixbuf, 0);
+            gdk_pixbuf_copy_area (pixbuf,
+                                  0,
+                                  0,
+                                  gdk_pixbuf_get_width (pixbuf),
+                                  gdk_pixbuf_get_height (pixbuf),
+                                  bg_pixbuf,
+                                  (bg_size - gdk_pixbuf_get_width (pixbuf)) / 
2,
+                                  (bg_size - gdk_pixbuf_get_height (pixbuf)));
+            g_clear_object (&pixbuf);
+            pixbuf = bg_pixbuf;
+
             g_clear_object (&file->details->scaled_thumbnail);
             file->details->scaled_thumbnail = pixbuf;
             file->details->thumbnail_scale = thumb_scale;
         }
 
         DEBUG ("Returning thumbnailed image, at size %d %d",
-               (int) (w * thumb_scale), (int) (h * thumb_scale));
+               gdk_pixbuf_get_width (pixbuf), gdk_pixbuf_get_height (pixbuf));
     }
     else if (file->details->thumbnail_path == NULL &&
              file->details->can_read &&
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/nautilus-3.32.1/src/nautilus-files-view.c 
new/nautilus-3.32.3/src/nautilus-files-view.c
--- old/nautilus-3.32.1/src/nautilus-files-view.c       2019-05-05 
20:20:06.000000000 +0200
+++ new/nautilus-3.32.3/src/nautilus-files-view.c       2019-08-06 
19:46:07.000000000 +0200
@@ -235,8 +235,11 @@
 
     GList *subdirectory_list;
 
-    GMenu *selection_menu;
-    GMenu *background_menu;
+    GMenu *selection_menu_model;
+    GMenu *background_menu_model;
+
+    GtkWidget *selection_menu;
+    GtkWidget *background_menu;
 
     GActionGroup *view_action_group;
 
@@ -3219,8 +3222,8 @@
     priv = nautilus_files_view_get_instance_private (view);
 
     g_clear_object (&priv->view_action_group);
-    g_clear_object (&priv->background_menu);
-    g_clear_object (&priv->selection_menu);
+    g_clear_object (&priv->background_menu_model);
+    g_clear_object (&priv->selection_menu_model);
     g_clear_object (&priv->toolbar_menu_sections->zoom_section);
     g_clear_object (&priv->toolbar_menu_sections->extended_section);
     g_clear_object (&priv->extensions_background_menu);
@@ -4985,7 +4988,7 @@
         selection_menu = build_menu_for_extension_menu_items (view, 
"extensions",
                                                               selection_items);
 
-        nautilus_gmenu_merge (priv->selection_menu,
+        nautilus_gmenu_merge (priv->selection_menu_model,
                               selection_menu,
                               "extensions",
                               FALSE);
@@ -4998,7 +5001,7 @@
         background_menu = build_menu_for_extension_menu_items (view, 
"extensions",
                                                                
background_items);
 
-        nautilus_gmenu_merge (priv->background_menu,
+        nautilus_gmenu_merge (priv->background_menu_model,
                               background_menu,
                               "extensions",
                               FALSE);
@@ -5151,7 +5154,8 @@
      */
     directory_uri = nautilus_directory_get_uri (priv->model);
     if (g_str_has_prefix (directory_uri, "file:") ||
-        eel_uri_is_trash (directory_uri))
+        eel_uri_is_trash (directory_uri) ||
+        eel_uri_is_search (directory_uri))
     {
         *file_paths = get_file_paths_as_newline_delimited_string (view, 
selected_files);
     }
@@ -5492,7 +5496,7 @@
     submenu = update_directory_in_scripts_menu (view, directory);
     if (submenu != NULL)
     {
-        nautilus_gmenu_merge (priv->selection_menu,
+        nautilus_gmenu_merge (priv->selection_menu_model,
                               submenu,
                               "scripts-submenu",
                               TRUE);
@@ -5753,7 +5757,7 @@
     submenu = update_directory_in_templates_menu (view, directory);
     if (submenu != NULL)
     {
-        nautilus_gmenu_merge (priv->background_menu,
+        nautilus_gmenu_merge (priv->background_menu_model,
                               submenu,
                               "templates-submenu",
                               FALSE);
@@ -7739,7 +7743,7 @@
                                   selection_count);
     menu_item = g_menu_item_new (item_label, "view.new-folder-with-selection");
     g_menu_item_set_attribute (menu_item, "hidden-when", "s", 
"action-disabled");
-    nautilus_gmenu_add_item_in_submodel (priv->selection_menu,
+    nautilus_gmenu_add_item_in_submodel (priv->selection_menu_model,
                                          menu_item,
                                          "new-folder-with-selection-section",
                                          FALSE);
@@ -7824,7 +7828,7 @@
         g_menu_item_set_icon (menu_item, app_icon);
     }
 
-    nautilus_gmenu_add_item_in_submodel (priv->selection_menu,
+    nautilus_gmenu_add_item_in_submodel (priv->selection_menu_model,
                                          menu_item,
                                          
"open-with-default-application-section",
                                          FALSE);
@@ -7897,7 +7901,7 @@
         }
 
         menu_item = g_menu_item_new (item_label, "view.start-volume");
-        nautilus_gmenu_add_item_in_submodel (priv->selection_menu,
+        nautilus_gmenu_add_item_in_submodel (priv->selection_menu_model,
                                              menu_item,
                                              "drive-section",
                                              FALSE);
@@ -7941,7 +7945,7 @@
         }
 
         menu_item = g_menu_item_new (item_label, "view.stop-volume");
-        nautilus_gmenu_add_item_in_submodel (priv->selection_menu,
+        nautilus_gmenu_add_item_in_submodel (priv->selection_menu_model,
                                              menu_item,
                                              "drive-section",
                                              FALSE);
@@ -7966,17 +7970,20 @@
 real_update_context_menus (NautilusFilesView *view)
 {
     NautilusFilesViewPrivate *priv;
-    GtkBuilder *builder;
+    g_autoptr (GtkBuilder) builder = NULL;
+    GObject *object;
 
     priv = nautilus_files_view_get_instance_private (view);
     builder = gtk_builder_new_from_resource 
("/org/gnome/nautilus/ui/nautilus-files-view-context-menus.ui");
 
-    g_clear_object (&priv->background_menu);
-    g_clear_object (&priv->selection_menu);
+    g_clear_object (&priv->background_menu_model);
+    g_clear_object (&priv->selection_menu_model);
+
+    object = gtk_builder_get_object (builder, "background-menu");
+    priv->background_menu_model = g_object_ref (G_MENU (object));
 
-    priv->background_menu = g_object_ref_sink (G_MENU (gtk_builder_get_object 
(builder, "background-menu")));
-    priv->selection_menu = g_object_ref_sink (G_MENU (gtk_builder_get_object 
(builder, "selection-menu")));
-    g_object_unref (builder);
+    object = gtk_builder_get_object (builder, "selection-menu");
+    priv->selection_menu_model = g_object_ref (G_MENU (object));
 
     update_selection_menu (view);
     update_background_menu (view);
@@ -8082,7 +8089,6 @@
                                                     const GdkEvent    *event)
 {
     NautilusFilesViewPrivate *priv;
-    g_autoptr (GtkWidget) gtk_menu = NULL;
 
     g_assert (NAUTILUS_IS_FILES_VIEW (view));
 
@@ -8093,11 +8099,23 @@
      */
     update_context_menus_if_pending (view);
 
-    gtk_menu = g_object_ref_sink (gtk_menu_new_from_model (G_MENU_MODEL 
(priv->selection_menu)));
-    gtk_menu_attach_to_widget (GTK_MENU (gtk_menu), GTK_WIDGET (view), NULL);
+    if (NULL == priv->selection_menu)
+    {
+        priv->selection_menu = gtk_menu_new ();
+
+        gtk_menu_attach_to_widget (GTK_MENU (priv->selection_menu),
+                                   GTK_WIDGET (view),
+                                   NULL);
+    }
+
+    gtk_menu_shell_bind_model (GTK_MENU_SHELL (priv->selection_menu),
+                               G_MENU_MODEL (priv->selection_menu_model),
+                               NULL,
+                               TRUE);
+
     if (event != NULL)
     {
-        gtk_menu_popup_at_pointer (GTK_MENU (gtk_menu), event);
+        gtk_menu_popup_at_pointer (GTK_MENU (priv->selection_menu), event);
     }
     else
     {
@@ -8107,7 +8125,7 @@
         rectangle = nautilus_files_view_reveal_for_selection_context_menu 
(view);
         g_return_if_fail (rectangle != NULL);
 
-        gtk_menu_popup_at_rect (GTK_MENU (gtk_menu),
+        gtk_menu_popup_at_rect (GTK_MENU (priv->selection_menu),
                                 gtk_widget_get_window (GTK_WIDGET (view)),
                                 rectangle,
                                 GDK_GRAVITY_SOUTH_WEST,
@@ -8128,7 +8146,6 @@
                                                     const GdkEvent    *event)
 {
     NautilusFilesViewPrivate *priv;
-    g_autoptr (GtkWidget) gtk_menu = NULL;
 
     g_assert (NAUTILUS_IS_FILES_VIEW (view));
 
@@ -8139,17 +8156,27 @@
      */
     update_context_menus_if_pending (view);
 
-    gtk_menu = g_object_ref_sink (gtk_menu_new_from_model (G_MENU_MODEL 
(priv->background_menu)));
-    gtk_menu_attach_to_widget (GTK_MENU (gtk_menu), GTK_WIDGET (view), NULL);
+    if (NULL == priv->background_menu)
+    {
+        priv->background_menu = gtk_menu_new ();
+
+        gtk_menu_attach_to_widget (GTK_MENU (priv->background_menu),
+                                   GTK_WIDGET (view),
+                                   NULL);
+    }
+    gtk_menu_shell_bind_model (GTK_MENU_SHELL (priv->background_menu),
+                               G_MENU_MODEL (priv->background_menu_model),
+                               NULL,
+                               TRUE);
     if (event != NULL)
     {
-        gtk_menu_popup_at_pointer (GTK_MENU (gtk_menu), event);
+        gtk_menu_popup_at_pointer (GTK_MENU (priv->background_menu), event);
     }
     else
     {
         /* It was triggered from the keyboard, so pop up from the center of 
view.
          */
-        gtk_menu_popup_at_widget (GTK_MENU (gtk_menu),
+        gtk_menu_popup_at_widget (GTK_MENU (priv->background_menu),
                                   GTK_WIDGET (view),
                                   GDK_GRAVITY_CENTER,
                                   GDK_GRAVITY_CENTER,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/nautilus-3.32.1/src/nautilus-location-entry.c 
new/nautilus-3.32.3/src/nautilus-location-entry.c
--- old/nautilus-3.32.1/src/nautilus-location-entry.c   2019-05-05 
20:20:06.000000000 +0200
+++ new/nautilus-3.32.3/src/nautilus-location-entry.c   2019-08-06 
19:46:07.000000000 +0200
@@ -370,6 +370,8 @@
     editable = GTK_EDITABLE (entry);
     user_location = gtk_editable_get_chars (editable, 0, -1);
     user_location_length = g_utf8_strlen (user_location, -1);
+    user_location = g_strchug (user_location);
+    user_location = g_strchomp (user_location);
     priv->idle_id = 0;
 
     uri_scheme = g_uri_parse_scheme (user_location);
@@ -714,19 +716,23 @@
     NautilusLocationEntryPrivate *priv;
     const gchar *entry_text;
     gchar *full_path, *uri_scheme = NULL;
+    g_autofree char *path = NULL;
 
     loc_entry = NAUTILUS_LOCATION_ENTRY (entry);
     priv = nautilus_location_entry_get_instance_private (loc_entry);
     entry_text = gtk_entry_get_text (entry);
+    path = g_strdup (entry_text);
+    path = g_strchug (path);
+    path = g_strchomp (path);
 
-    if (entry_text != NULL && *entry_text != '\0')
+    if (path != NULL && *path != '\0')
     {
-        uri_scheme = g_uri_parse_scheme (entry_text);
+        uri_scheme = g_uri_parse_scheme (path);
 
-        if (!g_path_is_absolute (entry_text) && uri_scheme == NULL && 
entry_text[0] != '~')
+        if (!g_path_is_absolute (path) && uri_scheme == NULL && path[0] != '~')
         {
             /* Fix non absolute paths */
-            full_path = g_build_filename (priv->current_directory, entry_text, 
NULL);
+            full_path = g_build_filename (priv->current_directory, path, NULL);
             gtk_entry_set_text (entry, full_path);
             g_free (full_path);
         }
@@ -832,10 +838,16 @@
 {
     NautilusLocationEntry *self = user_data;
     const char *entry_text;
+    g_autofree gchar *path = NULL;
 
     entry_text = gtk_entry_get_text (entry);
-    if (entry_text != NULL && *entry_text != '\0')
+    path = g_strdup (entry_text);
+    path = g_strchug (path);
+    path = g_strchomp (path);
+
+    if (path != NULL && *path != '\0')
     {
+        gtk_entry_set_text (entry, path);
         emit_location_changed (self);
     }
 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/nautilus-3.32.1/src/nautilus-tracker-utilities.c 
new/nautilus-3.32.3/src/nautilus-tracker-utilities.c
--- old/nautilus-3.32.1/src/nautilus-tracker-utilities.c        2019-05-05 
20:20:06.000000000 +0200
+++ new/nautilus-3.32.3/src/nautilus-tracker-utilities.c        2019-08-06 
19:46:07.000000000 +0200
@@ -22,85 +22,131 @@
 #include "nautilus-global-preferences.h"
 
 #define TRACKER_KEY_RECURSIVE_DIRECTORIES "index-recursive-directories"
+#define TRACKER_KEY_SINGLE_DIRECTORIES "index-single-directories"
 
-static const gchar *
-path_from_tracker_dir (const gchar *value)
+static GFile *
+location_from_tracker_dir (const gchar *value)
 {
-    const gchar *path;
+    const gchar *special_dir;
+    g_autoptr (GFile) home = NULL;
+    GFile *location;
+
+    home = g_file_new_for_path (g_get_home_dir ());
 
+    if (g_strcmp0 (value, "$HOME") == 0)
+    {
+        return g_steal_pointer (&home);
+    }
+
+    special_dir = NULL;
     if (g_strcmp0 (value, "&DESKTOP") == 0)
     {
-        path = g_get_user_special_dir (G_USER_DIRECTORY_DESKTOP);
+        special_dir = g_get_user_special_dir (G_USER_DIRECTORY_DESKTOP);
     }
     else if (g_strcmp0 (value, "&DOCUMENTS") == 0)
     {
-        path = g_get_user_special_dir (G_USER_DIRECTORY_DOCUMENTS);
+        special_dir = g_get_user_special_dir (G_USER_DIRECTORY_DOCUMENTS);
     }
     else if (g_strcmp0 (value, "&DOWNLOAD") == 0)
     {
-        path = g_get_user_special_dir (G_USER_DIRECTORY_DOWNLOAD);
+        special_dir = g_get_user_special_dir (G_USER_DIRECTORY_DOWNLOAD);
     }
     else if (g_strcmp0 (value, "&MUSIC") == 0)
     {
-        path = g_get_user_special_dir (G_USER_DIRECTORY_MUSIC);
+        special_dir = g_get_user_special_dir (G_USER_DIRECTORY_MUSIC);
     }
     else if (g_strcmp0 (value, "&PICTURES") == 0)
     {
-        path = g_get_user_special_dir (G_USER_DIRECTORY_PICTURES);
+        special_dir = g_get_user_special_dir (G_USER_DIRECTORY_PICTURES);
     }
     else if (g_strcmp0 (value, "&PUBLIC_SHARE") == 0)
     {
-        path = g_get_user_special_dir (G_USER_DIRECTORY_PUBLIC_SHARE);
+        special_dir = g_get_user_special_dir (G_USER_DIRECTORY_PUBLIC_SHARE);
     }
     else if (g_strcmp0 (value, "&TEMPLATES") == 0)
     {
-        path = g_get_user_special_dir (G_USER_DIRECTORY_TEMPLATES);
+        special_dir = g_get_user_special_dir (G_USER_DIRECTORY_TEMPLATES);
     }
     else if (g_strcmp0 (value, "&VIDEOS") == 0)
     {
-        path = g_get_user_special_dir (G_USER_DIRECTORY_VIDEOS);
+        special_dir = g_get_user_special_dir (G_USER_DIRECTORY_VIDEOS);
     }
-    else if (g_strcmp0 (value, "$HOME") == 0)
+
+    if (special_dir != NULL)
     {
-        path = g_get_home_dir ();
+        location = g_file_new_for_commandline_arg (special_dir);
+
+        /* Ignore XDG directories set to $HOME, like the miner does */
+        if (g_file_equal (location, home))
+        {
+            g_clear_object (&location);
+        }
     }
     else
     {
-        path = value;
+        location = g_file_new_for_commandline_arg (value);
     }
 
-    return path;
+    return location;
 }
 
 static GList *
-get_tracker_locations (void)
+get_tracker_locations (const gchar *key)
 {
     g_auto (GStrv) locations = NULL;
     GList *list = NULL;
     gint idx;
     GFile *location;
-    const gchar *path;
 
-    locations = g_settings_get_strv (tracker_preferences, 
TRACKER_KEY_RECURSIVE_DIRECTORIES);
+    locations = g_settings_get_strv (tracker_preferences, key);
 
     for (idx = 0; locations[idx] != NULL; idx++)
     {
-        path = path_from_tracker_dir (locations[idx]);
-        location = g_file_new_for_commandline_arg (path);
-        list = g_list_prepend (list, location);
+        location = location_from_tracker_dir (locations[idx]);
+        if (location != NULL)
+        {
+            list = g_list_prepend (list, location);
+        }
     }
 
     return list;
 }
 
+/**
+ * nautilus_tracker_directory_is_tracked:
+ * @directory: a #GFile representing a directory
+ *
+ * This function reads the "index-recursive-directories" and
+ * "index-single-directories" keys from the org.freedesktop.tracker.miner.files
+ * schema, and assumes the listed directories (and their descendants for the
+ * former key) are tracked.
+ *
+ * Exception: XDG user dirs set to $HOME are ignored.
+ *
+ * FIXME: Tracker's files miner's logic is actually a lot more complex,
+ * including configurable ignore patterns, but we are overlooking that.
+ *
+ * Returns: $TRUE if the @directory is, in principle, tracked. $FALSE 
otherwise.
+ */
 gboolean
 nautilus_tracker_directory_is_tracked (GFile *directory)
 {
-    g_autolist (GFile) locations = NULL;
+    g_autolist (GFile) recursive_locations = NULL;
+    g_autolist (GFile) single_locations = NULL;
     GList *l;
 
-    locations = get_tracker_locations ();
-    for (l = locations; l != NULL; l = l->next)
+    recursive_locations = get_tracker_locations 
(TRACKER_KEY_RECURSIVE_DIRECTORIES);
+    for (l = recursive_locations; l != NULL; l = l->next)
+    {
+        if (g_file_equal (directory, G_FILE (l->data)) ||
+            g_file_has_prefix (directory, G_FILE (l->data)))
+        {
+            return TRUE;
+        }
+    }
+
+    single_locations = get_tracker_locations (TRACKER_KEY_SINGLE_DIRECTORIES);
+    for (l = single_locations; l != NULL; l = l->next)
     {
         if (g_file_equal (directory, G_FILE (l->data)))
         {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/nautilus-3.32.1/src/nautilus-window.c 
new/nautilus-3.32.3/src/nautilus-window.c
--- old/nautilus-3.32.1/src/nautilus-window.c   2019-05-05 20:20:06.000000000 
+0200
+++ new/nautilus-3.32.3/src/nautilus-window.c   2019-08-06 19:46:07.000000000 
+0200
@@ -742,7 +742,6 @@
 nautilus_window_new_tab (NautilusWindow *window)
 {
     NautilusWindowSlot *current_slot;
-    NautilusWindowOpenFlags flags;
     GFile *location;
     g_autofree gchar *uri = NULL;
 
@@ -751,8 +750,6 @@
 
     if (location != NULL)
     {
-        flags = g_settings_get_enum (nautilus_preferences, 
NAUTILUS_PREFERENCES_NEW_TAB_POSITION);
-
         uri = g_file_get_uri (location);
         if (eel_uri_is_search (uri))
         {
@@ -763,8 +760,9 @@
             g_object_ref (location);
         }
 
-        flags |= NAUTILUS_WINDOW_OPEN_FLAG_NEW_TAB;
-        nautilus_window_open_location_full (window, location, flags, NULL, 
NULL);
+        nautilus_window_open_location_full (window, location,
+                                            NAUTILUS_WINDOW_OPEN_FLAG_NEW_TAB,
+                                            NULL, NULL);
         g_object_unref (location);
     }
 }
@@ -1202,10 +1200,7 @@
         return;
     }
 
-    flags = g_settings_get_enum (nautilus_preferences, 
NAUTILUS_PREFERENCES_NEW_TAB_POSITION);
-
-    flags |= NAUTILUS_WINDOW_OPEN_FLAG_NEW_TAB;
-    flags |= NAUTILUS_WINDOW_OPEN_FLAG_DONT_MAKE_ACTIVE;
+    flags = NAUTILUS_WINDOW_OPEN_FLAG_NEW_TAB | 
NAUTILUS_WINDOW_OPEN_FLAG_DONT_MAKE_ACTIVE;
 
     data = g_queue_pop_head (window->tab_data_queue);
 
@@ -2288,6 +2283,8 @@
         window->bookmarks_id = 0;
     }
 
+    g_clear_handle_id (&window->in_app_notification_undo_timeout_id, 
g_source_remove);
+
     GTK_WIDGET_CLASS (nautilus_window_parent_class)->destroy (object);
 }
 
@@ -2867,6 +2864,7 @@
                            "program-name", program_name,
                            "version", VERSION,
                            "comments", _("Access and organize your files"),
+                           "website", 
"https://wiki.gnome.org/action/show/Apps/Files";,
                            "copyright", "© 1999–2018 The Files Authors",
                            "license-type", GTK_LICENSE_GPL_3_0,
                            "artists", artists,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/nautilus-3.32.1/src/resources/css/Adwaita.css 
new/nautilus-3.32.3/src/resources/css/Adwaita.css
--- old/nautilus-3.32.1/src/resources/css/Adwaita.css   2019-05-05 
20:20:06.000000000 +0200
+++ new/nautilus-3.32.3/src/resources/css/Adwaita.css   2019-08-06 
19:46:07.000000000 +0200
@@ -39,7 +39,8 @@
 }
 
 .disclosure-button {
-  padding: 4px;
+  padding-left: 4px;
+  padding-right: 4px;
 }
 
 /* Path bar */
@@ -78,22 +79,22 @@
 
 /* Sidebar */
 
-.sidebar-row:selected {
+.nautilus-window .sidebar-row:selected {
     background: mix(@theme_bg_color, @theme_fg_color, 0.07);
 }
 
-.sidebar-row:selected,
-.sidebar-row:selected image,
-.sidebar-row:selected label {
+.nautilus-window .sidebar-row:selected,
+.nautilus-window .sidebar-row:selected image,
+.nautilus-window .sidebar-row:selected label {
     color: mix(@theme_fg_color, @theme_text_color, 0.5);
 }
 
-.sidebar-row:selected:backdrop {
+.nautilus-window .sidebar-row:selected:backdrop {
     background: mix(@theme_unfocused_bg_color, @theme_unfocused_fg_color, 
0.07);
 }
 
-.sidebar-row:selected:backdrop,
-.sidebar-row:selected:backdrop label {
+.nautilus-window .sidebar-row:selected:backdrop,
+.nautilus-window .sidebar-row:selected:backdrop label {
     color: mix(@theme_unfocused_fg_color, @theme_unfocused_text_color, 0.15);
 }
 


Reply via email to