import nautilus-40.2-11.el9

This commit is contained in:
CentOS Sources 2023-03-28 11:23:02 +00:00 committed by Stepan Oksanichenko
parent 7d0cc72498
commit 88f372610b
6 changed files with 957 additions and 45 deletions

View File

@ -0,0 +1,92 @@
From 5b40335c34a3b920348633274a03d073d1338a09 Mon Sep 17 00:00:00 2001
From: Ondrej Holy <oholy@redhat.com>
Date: Mon, 9 Jan 2023 13:12:17 +0100
Subject: [PATCH] Revert "application: add common startup code"
This reverts commit 23ae53870a39afe43548111b6432db39511a6e97. This
change was needed for split of desktop-related functionality, but it
seems no more needed to me. Let's revert those changes to make the
code a bit easier as a preparation for the next commits.
---
src/nautilus-application.c | 32 ++++++--------------------------
src/nautilus-application.h | 1 -
2 files changed, 6 insertions(+), 27 deletions(-)
diff --git a/src/nautilus-application.c b/src/nautilus-application.c
index 5deae5cc9..9cc435ec3 100644
--- a/src/nautilus-application.c
+++ b/src/nautilus-application.c
@@ -1298,9 +1298,10 @@ icon_theme_changed_callback (GtkIconTheme *icon_theme,
emit_change_signals_for_all_files_in_all_directories ();
}
-void
-nautilus_application_startup_common (NautilusApplication *self)
+static void
+nautilus_application_startup (GApplication *app)
{
+ NautilusApplication *self = NAUTILUS_APPLICATION (app);
NautilusApplicationPrivate *priv;
nautilus_profile_start (NULL);
@@ -1319,6 +1320,9 @@ nautilus_application_startup_common (NautilusApplication *self)
setup_theme_extensions ();
+ /* create DBus manager */
+ priv->fdb_manager = nautilus_freedesktop_dbus_new ();
+
/* initialize preferences and create the global GSettings objects */
nautilus_global_preferences_init ();
@@ -1352,22 +1356,6 @@ nautilus_application_startup_common (NautilusApplication *self)
NULL, 0);
}
-static void
-nautilus_application_startup (GApplication *app)
-{
- NautilusApplication *self = NAUTILUS_APPLICATION (app);
- NautilusApplicationPrivate *priv;
-
- nautilus_profile_start (NULL);
- priv = nautilus_application_get_instance_private (self);
-
- /* create DBus manager */
- priv->fdb_manager = nautilus_freedesktop_dbus_new ();
- nautilus_application_startup_common (self);
-
- nautilus_profile_end (NULL);
-}
-
static gboolean
nautilus_application_dbus_register (GApplication *app,
GDBusConnection *connection,
@@ -1443,14 +1431,6 @@ update_dbus_opened_locations (NautilusApplication *self)
g_return_if_fail (NAUTILUS_IS_APPLICATION (self));
priv = nautilus_application_get_instance_private (self);
-
- /* Children of nautilus application could not handle the dbus, so don't
- * do anything in that case */
- if (!priv->fdb_manager)
- {
- return;
- }
-
dbus_object_path = g_application_get_dbus_object_path (G_APPLICATION (self));
g_return_if_fail (dbus_object_path);
diff --git a/src/nautilus-application.h b/src/nautilus-application.h
index f915b0d4d..d5cfc11b3 100644
--- a/src/nautilus-application.h
+++ b/src/nautilus-application.h
@@ -85,5 +85,4 @@ GtkWidget * nautilus_application_connect_server (NautilusApplication *applicatio
void nautilus_application_search (NautilusApplication *application,
NautilusQuery *query);
-void nautilus_application_startup_common (NautilusApplication *application);
G_END_DECLS
--
2.38.1

View File

@ -0,0 +1,160 @@
From 7de08188d8d012d9aa8f49fe27b7992d081a7307 Mon Sep 17 00:00:00 2001
From: Ondrej Holy <oholy@redhat.com>
Date: Wed, 11 Jan 2023 09:44:25 +0100
Subject: [PATCH] Revert "freedesktop-dbus: Defer D-Bus property setting"
This reverts commit 3014f69485a120bedf0eec5af441346a95fe27f7 and part of
the commit a1751d3d870c6cdc092f893755623c4ff20e1ef3. This extra handling
was needed because `NautilusFreedesktopDBus` methods might be called before
establishing its own D-Bus connection. The follow-up commit is going to use
the already established connection from the `dbus_register` vfunc. It
should be ensured that the `dbus_register` vfunc is called before the
`window_added`, `window_removed`, or `startup` vfunc. Consequently, this
extra handling is going to be redundant. Let's remove it as a preparation
for the next commit.
---
src/nautilus-freedesktop-dbus.c | 79 ++-------------------------------
1 file changed, 3 insertions(+), 76 deletions(-)
diff --git a/src/nautilus-freedesktop-dbus.c b/src/nautilus-freedesktop-dbus.c
index 5cbbbad01..c75678399 100644
--- a/src/nautilus-freedesktop-dbus.c
+++ b/src/nautilus-freedesktop-dbus.c
@@ -40,11 +40,6 @@ struct _NautilusFreedesktopDBus
/* Our DBus implementation skeleton */
NautilusFreedesktopFileManager1 *skeleton;
-
- GStrv pending_open_locations;
- GVariant *pending_open_windows_with_locations;
-
- gboolean name_lost;
};
G_DEFINE_TYPE (NautilusFreedesktopDBus, nautilus_freedesktop_dbus, G_TYPE_OBJECT);
@@ -162,24 +157,6 @@ bus_acquired_cb (GDBusConnection *conn,
G_CALLBACK (skeleton_handle_show_item_properties_cb), fdb);
g_dbus_interface_skeleton_export (G_DBUS_INTERFACE_SKELETON (fdb->skeleton), conn, NAUTILUS_FDO_DBUS_PATH, NULL);
-
- if (G_UNLIKELY (fdb->pending_open_locations != NULL))
- {
- g_auto (GStrv) locations = NULL;
-
- locations = g_steal_pointer (&fdb->pending_open_locations);
-
- nautilus_freedesktop_dbus_set_open_locations (fdb, (const gchar **) locations);
- }
-
- if (G_UNLIKELY (fdb->pending_open_windows_with_locations != NULL))
- {
- g_autoptr (GVariant) locations = NULL;
-
- locations = g_steal_pointer (&fdb->pending_open_windows_with_locations);
-
- nautilus_freedesktop_dbus_set_open_windows_with_locations (fdb, locations);
- }
}
static void
@@ -195,13 +172,7 @@ name_lost_cb (GDBusConnection *connection,
const gchar *name,
gpointer user_data)
{
- NautilusFreedesktopDBus *fdb;
-
DEBUG ("Lost (or failed to acquire) the name %s on the session message bus\n", name);
-
- fdb = NAUTILUS_FREEDESKTOP_DBUS (user_data);
-
- fdb->name_lost = TRUE;
}
static void
@@ -225,24 +196,12 @@ nautilus_freedesktop_dbus_dispose (GObject *object)
G_OBJECT_CLASS (nautilus_freedesktop_dbus_parent_class)->dispose (object);
}
-static void
-nautilus_freedesktop_dbus_finalize (GObject *object)
-{
- NautilusFreedesktopDBus *fdb;
-
- fdb = NAUTILUS_FREEDESKTOP_DBUS (object);
-
- g_clear_pointer (&fdb->pending_open_locations, g_strfreev);
- g_clear_pointer (&fdb->pending_open_windows_with_locations, g_variant_unref);
-}
-
static void
nautilus_freedesktop_dbus_class_init (NautilusFreedesktopDBusClass *klass)
{
GObjectClass *object_class = G_OBJECT_CLASS (klass);
object_class->dispose = nautilus_freedesktop_dbus_dispose;
- object_class->finalize = nautilus_freedesktop_dbus_finalize;
}
static void
@@ -256,10 +215,6 @@ nautilus_freedesktop_dbus_init (NautilusFreedesktopDBus *fdb)
name_lost_cb,
fdb,
NULL);
- fdb->skeleton = NULL;
- fdb->pending_open_locations = NULL;
- fdb->pending_open_windows_with_locations = NULL;
- fdb->name_lost = FALSE;
}
void
@@ -268,21 +223,7 @@ nautilus_freedesktop_dbus_set_open_locations (NautilusFreedesktopDBus *fdb,
{
g_return_if_fail (NAUTILUS_IS_FREEDESKTOP_DBUS (fdb));
- if (G_UNLIKELY (fdb->skeleton == NULL))
- {
- if (G_LIKELY (fdb->name_lost))
- {
- return;
- }
-
- g_clear_pointer (&fdb->pending_open_locations, g_strfreev);
-
- fdb->pending_open_locations = g_strdupv ((gchar **) locations);
- }
- else
- {
- nautilus_freedesktop_file_manager1_set_open_locations (fdb->skeleton, locations);
- }
+ nautilus_freedesktop_file_manager1_set_open_locations (fdb->skeleton, locations);
}
/**
@@ -301,22 +242,8 @@ nautilus_freedesktop_dbus_set_open_windows_with_locations (NautilusFreedesktopDB
{
g_return_if_fail (NAUTILUS_IS_FREEDESKTOP_DBUS (fdb));
- if (G_UNLIKELY (fdb->skeleton == NULL))
- {
- if (G_LIKELY (fdb->name_lost))
- {
- return;
- }
-
- g_clear_pointer (&fdb->pending_open_windows_with_locations, g_variant_unref);
-
- fdb->pending_open_windows_with_locations = g_variant_ref (locations);
- }
- else
- {
- nautilus_freedesktop_file_manager1_set_open_windows_with_locations (fdb->skeleton,
- locations);
- }
+ nautilus_freedesktop_file_manager1_set_open_windows_with_locations (fdb->skeleton,
+ locations);
}
/* Tries to own the org.freedesktop.FileManager1 service name */
--
2.38.1

View File

@ -0,0 +1,305 @@
From 1fa3039c67671fe53416b2575f3c305029ef4854 Mon Sep 17 00:00:00 2001
From: Ondrej Holy <oholy@redhat.com>
Date: Wed, 11 Jan 2023 09:55:41 +0100
Subject: [PATCH] application: Export FileManager1 iface from dbus_register
vfunc
The `org/freedesktop/FileManager1` interface is not currently exported
from the `dbus_register` vfunc. This causes issues for projects (e.g.
desktop-icons extension) that want to use all the Nautilus intefaces
over the `org.gnome.Nautilus` connection. Let's use the already established
connection and export the `FileManager1` interface from the `dbus_register`
vfunc.
https://bugzilla.redhat.com/show_bug.cgi?id=2150894
---
src/nautilus-application.c | 17 ++--
src/nautilus-freedesktop-dbus.c | 153 +++++++++++++++++++++++++-------
src/nautilus-freedesktop-dbus.h | 6 +-
3 files changed, 138 insertions(+), 38 deletions(-)
diff --git a/src/nautilus-application.c b/src/nautilus-application.c
index 9cc435ec3..16725932d 100644
--- a/src/nautilus-application.c
+++ b/src/nautilus-application.c
@@ -578,8 +578,6 @@ nautilus_application_finalize (GObject *object)
g_clear_object (&priv->progress_handler);
g_clear_object (&priv->bookmark_list);
- g_clear_object (&priv->fdb_manager);
-
g_list_free (priv->windows);
g_hash_table_destroy (priv->notifications);
@@ -1320,9 +1318,6 @@ nautilus_application_startup (GApplication *app)
setup_theme_extensions ();
- /* create DBus manager */
- priv->fdb_manager = nautilus_freedesktop_dbus_new ();
-
/* initialize preferences and create the global GSettings objects */
nautilus_global_preferences_init ();
@@ -1372,6 +1367,12 @@ nautilus_application_dbus_register (GApplication *app,
return FALSE;
}
+ priv->fdb_manager = nautilus_freedesktop_dbus_new (connection);
+ if (!nautilus_freedesktop_dbus_register (priv->fdb_manager, error))
+ {
+ return FALSE;
+ }
+
priv->search_provider = nautilus_shell_search_provider_new ();
if (!nautilus_shell_search_provider_register (priv->search_provider, connection, error))
{
@@ -1398,6 +1399,12 @@ nautilus_application_dbus_unregister (GApplication *app,
g_clear_object (&priv->dbus_manager);
}
+ if (priv->fdb_manager)
+ {
+ nautilus_freedesktop_dbus_unregister (priv->fdb_manager);
+ g_clear_object (&priv->fdb_manager);
+ }
+
if (priv->search_provider)
{
nautilus_shell_search_provider_unregister (priv->search_provider);
diff --git a/src/nautilus-freedesktop-dbus.c b/src/nautilus-freedesktop-dbus.c
index c75678399..c253cfaba 100644
--- a/src/nautilus-freedesktop-dbus.c
+++ b/src/nautilus-freedesktop-dbus.c
@@ -40,6 +40,14 @@ struct _NautilusFreedesktopDBus
/* Our DBus implementation skeleton */
NautilusFreedesktopFileManager1 *skeleton;
+
+ GDBusConnection *connection;
+};
+
+enum
+{
+ PROP_0,
+ PROP_CONNECTION,
};
G_DEFINE_TYPE (NautilusFreedesktopDBus, nautilus_freedesktop_dbus, G_TYPE_OBJECT);
@@ -138,27 +146,6 @@ skeleton_handle_show_item_properties_cb (NautilusFreedesktopFileManager1 *object
return TRUE;
}
-static void
-bus_acquired_cb (GDBusConnection *conn,
- const gchar *name,
- gpointer user_data)
-{
- NautilusFreedesktopDBus *fdb = user_data;
-
- DEBUG ("Bus acquired at %s", name);
-
- fdb->skeleton = nautilus_freedesktop_file_manager1_skeleton_new ();
-
- g_signal_connect (fdb->skeleton, "handle-show-items",
- G_CALLBACK (skeleton_handle_show_items_cb), fdb);
- g_signal_connect (fdb->skeleton, "handle-show-folders",
- G_CALLBACK (skeleton_handle_show_folders_cb), fdb);
- g_signal_connect (fdb->skeleton, "handle-show-item-properties",
- G_CALLBACK (skeleton_handle_show_item_properties_cb), fdb);
-
- g_dbus_interface_skeleton_export (G_DBUS_INTERFACE_SKELETON (fdb->skeleton), conn, NAUTILUS_FDO_DBUS_PATH, NULL);
-}
-
static void
name_acquired_cb (GDBusConnection *connection,
const gchar *name,
@@ -175,6 +162,20 @@ name_lost_cb (GDBusConnection *connection,
DEBUG ("Lost (or failed to acquire) the name %s on the session message bus\n", name);
}
+static void
+nautilus_freedesktop_dbus_constructed (GObject *object)
+{
+ NautilusFreedesktopDBus *fdb = NAUTILUS_FREEDESKTOP_DBUS (object);
+
+ fdb->owner_id = g_bus_own_name_on_connection (fdb->connection,
+ NAUTILUS_FDO_DBUS_NAME,
+ G_BUS_NAME_OWNER_FLAGS_NONE,
+ name_acquired_cb,
+ name_lost_cb,
+ fdb,
+ NULL);
+}
+
static void
nautilus_freedesktop_dbus_dispose (GObject *object)
{
@@ -188,33 +189,87 @@ nautilus_freedesktop_dbus_dispose (GObject *object)
if (fdb->skeleton != NULL)
{
- g_dbus_interface_skeleton_unexport (G_DBUS_INTERFACE_SKELETON (fdb->skeleton));
g_object_unref (fdb->skeleton);
fdb->skeleton = NULL;
}
+ g_clear_object (&fdb->connection);
+
G_OBJECT_CLASS (nautilus_freedesktop_dbus_parent_class)->dispose (object);
}
+static void
+nautilus_freedesktop_dbus_set_property (GObject *object,
+ guint prop_id,
+ const GValue *value,
+ GParamSpec *pspec)
+{
+ NautilusFreedesktopDBus *fdb = NAUTILUS_FREEDESKTOP_DBUS (object);
+
+ switch (prop_id)
+ {
+ case PROP_CONNECTION:
+ {
+ g_set_object (&fdb->connection, g_value_get_object (value));
+ }
+ break;
+
+ default:
+ {
+ G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
+ }
+ break;
+ }
+}
+
+static void
+nautilus_freedesktop_dbus_get_property (GObject *object,
+ guint prop_id,
+ GValue *value,
+ GParamSpec *pspec)
+{
+ NautilusFreedesktopDBus *fdb = NAUTILUS_FREEDESKTOP_DBUS (object);
+
+ switch (prop_id)
+ {
+ case PROP_CONNECTION:
+ {
+ g_value_set_object (value, fdb->connection);
+ }
+ break;
+
+ default:
+ {
+ G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
+ }
+ break;
+ }
+}
+
static void
nautilus_freedesktop_dbus_class_init (NautilusFreedesktopDBusClass *klass)
{
GObjectClass *object_class = G_OBJECT_CLASS (klass);
object_class->dispose = nautilus_freedesktop_dbus_dispose;
+ object_class->constructed = nautilus_freedesktop_dbus_constructed;
+ object_class->get_property = nautilus_freedesktop_dbus_get_property;
+ object_class->set_property = nautilus_freedesktop_dbus_set_property;
+
+ g_object_class_install_property (object_class,
+ PROP_CONNECTION,
+ g_param_spec_object ("connection",
+ "Connection",
+ "GDBus connection property",
+ G_TYPE_DBUS_CONNECTION,
+ G_PARAM_CONSTRUCT_ONLY |
+ G_PARAM_READWRITE));
}
static void
nautilus_freedesktop_dbus_init (NautilusFreedesktopDBus *fdb)
{
- fdb->owner_id = g_bus_own_name (G_BUS_TYPE_SESSION,
- NAUTILUS_FDO_DBUS_NAME,
- G_BUS_NAME_OWNER_FLAGS_NONE,
- bus_acquired_cb,
- name_acquired_cb,
- name_lost_cb,
- fdb,
- NULL);
+ fdb->skeleton = nautilus_freedesktop_file_manager1_skeleton_new ();
}
void
@@ -248,7 +303,41 @@ nautilus_freedesktop_dbus_set_open_windows_with_locations (NautilusFreedesktopDB
/* Tries to own the org.freedesktop.FileManager1 service name */
NautilusFreedesktopDBus *
-nautilus_freedesktop_dbus_new (void)
+nautilus_freedesktop_dbus_new (GDBusConnection *connection)
+{
+ return g_object_new (NAUTILUS_TYPE_FREEDESKTOP_DBUS,
+ "connection", connection,
+ NULL);
+}
+
+gboolean
+nautilus_freedesktop_dbus_register (NautilusFreedesktopDBus *fdb,
+ GError **error)
+{
+ gboolean success;
+
+ success = g_dbus_interface_skeleton_export (G_DBUS_INTERFACE_SKELETON (fdb->skeleton),
+ fdb->connection,
+ NAUTILUS_FDO_DBUS_PATH,
+ error);
+
+ if (success)
+ {
+ g_signal_connect (fdb->skeleton, "handle-show-items",
+ G_CALLBACK (skeleton_handle_show_items_cb), fdb);
+ g_signal_connect (fdb->skeleton, "handle-show-folders",
+ G_CALLBACK (skeleton_handle_show_folders_cb), fdb);
+ g_signal_connect (fdb->skeleton, "handle-show-item-properties",
+ G_CALLBACK (skeleton_handle_show_item_properties_cb), fdb);
+ }
+
+ return success;
+}
+
+void
+nautilus_freedesktop_dbus_unregister (NautilusFreedesktopDBus *fdb)
{
- return g_object_new (NAUTILUS_TYPE_FREEDESKTOP_DBUS, NULL);
+ g_dbus_interface_skeleton_unexport (G_DBUS_INTERFACE_SKELETON (fdb->skeleton));
+
+ g_signal_handlers_disconnect_by_data (fdb->skeleton, fdb);
}
diff --git a/src/nautilus-freedesktop-dbus.h b/src/nautilus-freedesktop-dbus.h
index 416900eb9..8fb09e498 100644
--- a/src/nautilus-freedesktop-dbus.h
+++ b/src/nautilus-freedesktop-dbus.h
@@ -21,6 +21,7 @@
#pragma once
#include <glib-object.h>
+#include <gio/gio.h>
#define NAUTILUS_FDO_DBUS_IFACE "org.freedesktop.FileManager1"
#define NAUTILUS_FDO_DBUS_NAME "org.freedesktop.FileManager1"
@@ -30,7 +31,10 @@
G_DECLARE_FINAL_TYPE (NautilusFreedesktopDBus, nautilus_freedesktop_dbus, NAUTILUS, FREEDESKTOP_DBUS, GObject);
-NautilusFreedesktopDBus * nautilus_freedesktop_dbus_new (void);
+NautilusFreedesktopDBus * nautilus_freedesktop_dbus_new (GDBusConnection *connection);
+
+gboolean nautilus_freedesktop_dbus_register (NautilusFreedesktopDBus *fdb, GError **error);
+void nautilus_freedesktop_dbus_unregister (NautilusFreedesktopDBus *fdb);
void nautilus_freedesktop_dbus_set_open_locations (NautilusFreedesktopDBus *fdb, const gchar **locations);
--
2.38.1

View File

@ -1,156 +1,400 @@
diff -ruN nautilus-40.2/po/bg.po nautilus-40.2.translations/po/bg.po
--- nautilus-40.2/po/bg.po 2022-09-22 15:52:30.138654010 +0200
+++ nautilus-40.2.translations/po/bg.po 2022-09-22 15:52:33.477666280 +0200
@@ -5483,3 +5483,7 @@
#: src/resources/ui/nautilus-compress-dialog.ui:226
msgid "Enter a password here."
msgstr "Въведете парола."
+
+#: src/resources/ui/nautilus-pathbar-context-menu.ui:53
+msgid "_Copy Location"
+msgstr "_Копиране на местоположение"
diff -ruN nautilus-40.2/po/ca.po nautilus-40.2.translations/po/ca.po
--- nautilus-40.2/po/ca.po 2022-06-21 17:20:51.823378453 +0200
+++ nautilus-40.2.translations/po/ca.po 2022-06-21 17:22:25.337339247 +0200
--- nautilus-40.2/po/ca.po 2022-09-22 15:52:30.138654010 +0200
+++ nautilus-40.2.translations/po/ca.po 2022-09-22 15:52:33.505666383 +0200
@@ -5907,3 +5907,7 @@
#: src/resources/ui/nautilus-compress-dialog.ui:225
msgid "Enter a password here."
msgstr "Introduïu una contrasenya aquí."
+
+#: src/resources/ui/nautilus-files-view-context-menus.ui:24
+#: src/resources/ui/nautilus-pathbar-context-menu.ui:53
+msgid "_Copy Location"
+msgstr "_Copia la ubicació"
diff -ruN nautilus-40.2/po/cs.po nautilus-40.2.translations/po/cs.po
--- nautilus-40.2/po/cs.po 2022-09-22 15:52:30.139654013 +0200
+++ nautilus-40.2.translations/po/cs.po 2022-09-22 15:52:33.524666453 +0200
@@ -5767,3 +5767,7 @@
#: src/resources/ui/nautilus-compress-dialog.ui:225
msgid "Enter a password here."
msgstr "zde zadejte heslo"
+
+#: src/resources/ui/nautilus-pathbar-context-menu.ui:53
+msgid "_Copy Location"
+msgstr "Z_kopírovat umístění"
diff -ruN nautilus-40.2/po/da.po nautilus-40.2.translations/po/da.po
--- nautilus-40.2/po/da.po 2022-09-22 15:52:30.139654013 +0200
+++ nautilus-40.2.translations/po/da.po 2022-09-22 15:52:33.537666500 +0200
@@ -7522,3 +7522,7 @@
#: src/resources/ui/nautilus-compress-dialog.ui:225
msgid "Enter a password here."
msgstr "Indtast en adgangskode her."
+
+#: src/resources/ui/nautilus-pathbar-context-menu.ui:53
+msgid "_Copy Location"
+msgstr "_Kopiér placering"
diff -ruN nautilus-40.2/po/de.po nautilus-40.2.translations/po/de.po
--- nautilus-40.2/po/de.po 2022-06-21 17:20:51.825378453 +0200
+++ nautilus-40.2.translations/po/de.po 2022-06-21 17:22:25.422339211 +0200
--- nautilus-40.2/po/de.po 2022-09-22 15:52:30.140654017 +0200
+++ nautilus-40.2.translations/po/de.po 2022-09-22 15:52:33.546666534 +0200
@@ -6034,3 +6034,7 @@
#: src/resources/ui/nautilus-compress-dialog.ui:225
msgid "Enter a password here."
msgstr "Geben Sie hier ein Passwort ein."
+
+#: src/resources/ui/nautilus-files-view-context-menus.ui:24
+#: src/resources/ui/nautilus-pathbar-context-menu.ui:53
+msgid "_Copy Location"
+msgstr "Ort _kopieren"
diff -ruN nautilus-40.2/po/el.po nautilus-40.2.translations/po/el.po
--- nautilus-40.2/po/el.po 2022-09-22 15:52:30.140654017 +0200
+++ nautilus-40.2.translations/po/el.po 2022-09-22 15:52:33.559666581 +0200
@@ -6135,3 +6135,8 @@
#: src/resources/ui/nautilus-compress-dialog.ui:225
msgid "Enter a password here."
msgstr "Εισαγωγή συνθηματικού εδώ."
+
+#
+#: src/resources/ui/nautilus-pathbar-context-menu.ui:53
+msgid "_Copy Location"
+msgstr "_Αντιγραφή τοποθεσίας"
diff -ruN nautilus-40.2/po/en_GB.po nautilus-40.2.translations/po/en_GB.po
--- nautilus-40.2/po/en_GB.po 2022-09-22 15:52:30.141654021 +0200
+++ nautilus-40.2.translations/po/en_GB.po 2022-09-22 15:52:33.571666625 +0200
@@ -10323,3 +10323,7 @@
#: src/resources/ui/nautilus-compress-dialog.ui:225
msgid "Enter a password here."
msgstr "Enter a password here."
+
+#: src/resources/ui/nautilus-pathbar-context-menu.ui:53
+msgid "_Copy Location"
+msgstr "_Copy Location"
diff -ruN nautilus-40.2/po/es.po nautilus-40.2.translations/po/es.po
--- nautilus-40.2/po/es.po 2022-06-21 17:20:51.827378452 +0200
+++ nautilus-40.2.translations/po/es.po 2022-06-21 17:22:25.461339195 +0200
--- nautilus-40.2/po/es.po 2022-09-22 15:52:30.142654024 +0200
+++ nautilus-40.2.translations/po/es.po 2022-09-22 15:52:33.589666692 +0200
@@ -11269,3 +11269,8 @@
#| msgid "Enter password…"
msgid "Enter a password here."
msgstr "Introduzca una contraseña aquí."
+
+# src/nautilus-location-bar.c:401
+#: src/resources/ui/nautilus-files-view-context-menus.ui:24
+#: src/resources/ui/nautilus-pathbar-context-menu.ui:53
+msgid "_Copy Location"
+msgstr "Copiar _ubicación"
diff -ruN nautilus-40.2/po/eu.po nautilus-40.2.translations/po/eu.po
--- nautilus-40.2/po/eu.po 2022-09-22 15:52:30.142654024 +0200
+++ nautilus-40.2.translations/po/eu.po 2022-09-22 15:52:33.600666732 +0200
@@ -5688,3 +5688,7 @@
#: src/resources/ui/nautilus-compress-dialog.ui:225
msgid "Enter a password here."
msgstr "Idatzi pasahitza hemen."
+
+#: src/resources/ui/nautilus-pathbar-context-menu.ui:53
+msgid "_Copy Location"
+msgstr "_Kopiatu kokalekua"
diff -ruN nautilus-40.2/po/fa.po nautilus-40.2.translations/po/fa.po
--- nautilus-40.2/po/fa.po 2022-06-21 17:20:51.828378451 +0200
+++ nautilus-40.2.translations/po/fa.po 2022-06-21 17:22:25.482339186 +0200
--- nautilus-40.2/po/fa.po 2022-09-22 15:52:30.143654028 +0200
+++ nautilus-40.2.translations/po/fa.po 2022-09-22 15:52:33.612666776 +0200
@@ -10626,3 +10626,7 @@
#: src/resources/ui/nautilus-compress-dialog.ui:225
msgid "Enter a password here."
msgstr "این‌جا گذرواژه‌ای وارد کنید."
+
+#: src/resources/ui/nautilus-files-view-context-menus.ui:24
+#: src/resources/ui/nautilus-pathbar-context-menu.ui:53
+msgid "_Copy Location"
+msgstr "_رونوشت از مکان"
diff -ruN nautilus-40.2/po/fi.po nautilus-40.2.translations/po/fi.po
--- nautilus-40.2/po/fi.po 2022-09-22 15:52:30.144654032 +0200
+++ nautilus-40.2.translations/po/fi.po 2022-09-22 15:52:33.621666809 +0200
@@ -7375,3 +7375,7 @@
#: src/resources/ui/nautilus-compress-dialog.ui:225
msgid "Enter a password here."
msgstr "Kirjoita salasana tähän."
+
+#: src/resources/ui/nautilus-pathbar-context-menu.ui:53
+msgid "_Copy Location"
+msgstr "Kopioi si_jainti"
diff -ruN nautilus-40.2/po/fr.po nautilus-40.2.translations/po/fr.po
--- nautilus-40.2/po/fr.po 2022-06-21 17:20:51.830378450 +0200
+++ nautilus-40.2.translations/po/fr.po 2022-06-21 17:22:25.496339180 +0200
--- nautilus-40.2/po/fr.po 2022-09-22 15:52:30.144654032 +0200
+++ nautilus-40.2.translations/po/fr.po 2022-09-22 15:52:33.629666839 +0200
@@ -6019,3 +6019,7 @@
#| msgid "Enter password…"
msgid "Enter a password here."
msgstr "Saisissez un mot de passe ici."
+
+#: src/resources/ui/nautilus-files-view-context-menus.ui:34
+#: src/resources/ui/nautilus-pathbar-context-menu.ui:53
+msgid "_Copy Location"
+msgstr "Co_pier lemplacement"
diff -ruN nautilus-40.2/po/fur.po nautilus-40.2.translations/po/fur.po
--- nautilus-40.2/po/fur.po 2022-06-21 17:20:51.830378450 +0200
+++ nautilus-40.2.translations/po/fur.po 2022-06-21 17:22:25.507339176 +0200
--- nautilus-40.2/po/fur.po 2022-09-22 15:52:30.145654035 +0200
+++ nautilus-40.2.translations/po/fur.po 2022-09-22 15:52:33.638666872 +0200
@@ -8140,3 +8140,7 @@
#: src/resources/ui/nautilus-compress-dialog.ui:209
msgid "Enter a password here."
msgstr "Inserìs achì une password."
+
+#: src/resources/ui/nautilus-files-view-context-menus.ui:24
+#: src/resources/ui/nautilus-files-view-context-menus.ui:34
+msgid "_Copy Location"
+msgstr "_Copie posizion"
diff -ruN nautilus-40.2/po/gl.po nautilus-40.2.translations/po/gl.po
--- nautilus-40.2/po/gl.po 2022-06-21 17:20:51.831378450 +0200
+++ nautilus-40.2.translations/po/gl.po 2022-06-21 17:22:25.526339168 +0200
@@ -5897,3 +5897,8 @@
--- nautilus-40.2/po/gl.po 2022-09-22 15:52:30.145654035 +0200
+++ nautilus-40.2.translations/po/gl.po 2022-09-22 15:52:33.658666945 +0200
@@ -5897,3 +5897,7 @@
#| msgid "Enter password…"
msgid "Enter a password here."
msgstr "Escriba un contrasinal aquí…"
+
+#: src/resources/ui/nautilus-files-view-context-menus.ui:24
+#| msgid "Location"
+#: src/resources/ui/nautilus-pathbar-context-menu.ui:53
+msgid "_Copy Location"
+msgstr "_Copiar localización"
diff -ruN nautilus-40.2/po/he.po nautilus-40.2.translations/po/he.po
--- nautilus-40.2/po/he.po 2022-06-21 17:20:51.831378450 +0200
+++ nautilus-40.2.translations/po/he.po 2022-06-21 17:22:25.549339158 +0200
--- nautilus-40.2/po/he.po 2022-09-22 15:52:30.146654039 +0200
+++ nautilus-40.2.translations/po/he.po 2022-09-22 15:52:33.679667022 +0200
@@ -11143,3 +11143,7 @@
#: src/resources/ui/nautilus-compress-dialog.ui:225
msgid "Enter a password here."
msgstr "נא למלא כאן ססמה."
+
+#: src/resources/ui/nautilus-files-view-context-menus.ui:34
+#: src/resources/ui/nautilus-pathbar-context-menu.ui:53
+msgid "_Copy Location"
+msgstr "ה_עתקת מיקום"
diff -ruN nautilus-40.2/po/hr.po nautilus-40.2.translations/po/hr.po
--- nautilus-40.2/po/hr.po 2022-09-22 15:52:30.147654043 +0200
+++ nautilus-40.2.translations/po/hr.po 2022-09-22 15:52:33.692667070 +0200
@@ -6489,3 +6489,7 @@
#: src/resources/ui/nautilus-compress-dialog.ui:225
msgid "Enter a password here."
msgstr "Upišite lozinku ovdje."
+
+#: src/resources/ui/nautilus-pathbar-context-menu.ui:53
+msgid "_Copy Location"
+msgstr "_Kopiraj lokaciju"
diff -ruN nautilus-40.2/po/hu.po nautilus-40.2.translations/po/hu.po
--- nautilus-40.2/po/hu.po 2022-09-22 15:52:30.147654043 +0200
+++ nautilus-40.2.translations/po/hu.po 2022-09-22 15:52:33.700667099 +0200
@@ -5868,3 +5868,8 @@
#| msgid "Enter password…"
msgid "Enter a password here."
msgstr "Adjon meg egy jelszót itt."
+
+#: src/resources/ui/nautilus-pathbar-context-menu.ui:53
+#| msgid "Location"
+msgid "_Copy Location"
+msgstr "Hely má_solása"
diff -ruN nautilus-40.2/po/id.po nautilus-40.2.translations/po/id.po
--- nautilus-40.2/po/id.po 2022-09-22 15:52:30.148654046 +0200
+++ nautilus-40.2.translations/po/id.po 2022-09-22 15:52:33.713667147 +0200
@@ -6368,3 +6368,7 @@
#: src/resources/ui/nautilus-compress-dialog.ui:225
msgid "Enter a password here."
msgstr "Masukkan kata sandi di sini."
+
+#: src/resources/ui/nautilus-pathbar-context-menu.ui:53
+msgid "_Copy Location"
+msgstr "_Salin Lokasi"
diff -ruN nautilus-40.2/po/ka.po nautilus-40.2.translations/po/ka.po
--- nautilus-40.2/po/ka.po 2021-06-04 13:59:15.686239200 +0200
+++ nautilus-40.2.translations/po/ka.po 2022-09-22 15:52:33.742667254 +0200
@@ -6877,3 +6877,7 @@
#~ msgid "Video CD"
#~ msgstr "ვიდეო CD ფორმატში"
+
+#: src/resources/ui/nautilus-pathbar-context-menu.ui:53
+msgid "_Copy Location"
+msgstr "_მდებარეობის კოპირება"
diff -ruN nautilus-40.2/po/kk.po nautilus-40.2.translations/po/kk.po
--- nautilus-40.2/po/kk.po 2022-09-22 15:52:30.151654057 +0200
+++ nautilus-40.2.translations/po/kk.po 2022-09-22 15:52:33.752667291 +0200
@@ -7856,3 +7856,7 @@
#: src/resources/ui/nautilus-compress-dialog.ui:225
msgid "Enter a password here."
msgstr "Парольді осында енгізіңіз."
+
+#: src/resources/ui/nautilus-pathbar-context-menu.ui:53
+msgid "_Copy Location"
+msgstr "Орналасуын _көшіріп алу"
diff -ruN nautilus-40.2/po/ko.po nautilus-40.2.translations/po/ko.po
--- nautilus-40.2/po/ko.po 2022-09-22 15:52:30.151654057 +0200
+++ nautilus-40.2.translations/po/ko.po 2022-09-22 15:52:33.768667349 +0200
@@ -5745,3 +5745,7 @@
#: src/resources/ui/nautilus-compress-dialog.ui:225
msgid "Enter a password here."
msgstr "여기 암호를 입력하십시오."
+
+#: src/resources/ui/nautilus-pathbar-context-menu.ui:53
+msgid "_Copy Location"
+msgstr "위치 복사(_C)"
diff -ruN nautilus-40.2/po/lt.po nautilus-40.2.translations/po/lt.po
--- nautilus-40.2/po/lt.po 2022-09-22 15:52:30.152654061 +0200
+++ nautilus-40.2.translations/po/lt.po 2022-09-22 15:52:33.790667430 +0200
@@ -7516,3 +7516,7 @@
#| msgid "Enter password…"
msgid "Enter a password here."
msgstr "Įveskite slaptažodį čia."
+
+#: src/resources/ui/nautilus-pathbar-context-menu.ui:53
+msgid "_Copy Location"
+msgstr "_Kopijuoti vietą"
diff -ruN nautilus-40.2/po/lv.po nautilus-40.2.translations/po/lv.po
--- nautilus-40.2/po/lv.po 2022-09-22 15:52:30.152654061 +0200
+++ nautilus-40.2.translations/po/lv.po 2022-09-22 15:52:33.799667463 +0200
@@ -6095,3 +6095,8 @@
#: src/resources/ui/nautilus-compress-dialog.ui:225
msgid "Enter a password here."
msgstr "Ievadiet paroli šeit."
+
+#: src/resources/ui/nautilus-pathbar-context-menu.ui:53
+#| msgid "Location"
+msgid "_Copy Location"
+msgstr "_Kopēt atrašanās vietu"
diff -ruN nautilus-40.2/po/nl.po nautilus-40.2.translations/po/nl.po
--- nautilus-40.2/po/nl.po 2022-09-22 15:52:30.153654065 +0200
+++ nautilus-40.2.translations/po/nl.po 2022-09-22 15:52:33.854667665 +0200
@@ -6851,3 +6851,7 @@
#: src/resources/ui/nautilus-compress-dialog.ui:225
msgid "Enter a password here."
msgstr "Voer hier een wachtwoord in."
+
+#: src/resources/ui/nautilus-pathbar-context-menu.ui:53
+msgid "_Copy Location"
+msgstr "Locatie _kopiëren"
diff -ruN nautilus-40.2/po/oc.po nautilus-40.2.translations/po/oc.po
--- nautilus-40.2/po/oc.po 2022-06-21 17:20:51.840378446 +0200
+++ nautilus-40.2.translations/po/oc.po 2022-06-21 17:22:25.719339087 +0200
--- nautilus-40.2/po/oc.po 2022-09-22 15:52:30.154654068 +0200
+++ nautilus-40.2.translations/po/oc.po 2022-09-22 15:52:33.870667724 +0200
@@ -7540,3 +7540,7 @@
#: src/resources/ui/nautilus-compress-dialog.ui:225
msgid "Enter a password here."
msgstr "Picatz un senhal aquí."
+
+#: src/resources/ui/nautilus-files-view-context-menus.ui:34
+#: src/resources/ui/nautilus-pathbar-context-menu.ui:53
+msgid "_Copy Location"
+msgstr "_Copiar l'emplaçament"
diff -ruN nautilus-40.2/po/pl.po nautilus-40.2.translations/po/pl.po
--- nautilus-40.2/po/pl.po 2022-09-22 15:52:30.154654068 +0200
+++ nautilus-40.2.translations/po/pl.po 2022-09-22 15:52:33.886667783 +0200
@@ -5790,3 +5790,7 @@
#: src/resources/ui/nautilus-compress-dialog.ui:225
msgid "Enter a password here."
msgstr "Hasło…"
+
+#: src/resources/ui/nautilus-pathbar-context-menu.ui:53
+msgid "_Copy Location"
+msgstr "S_kopiuj położenie"
diff -ruN nautilus-40.2/po/pt_BR.po nautilus-40.2.translations/po/pt_BR.po
--- nautilus-40.2/po/pt_BR.po 2022-09-22 15:52:30.155654072 +0200
+++ nautilus-40.2.translations/po/pt_BR.po 2022-09-22 15:52:33.898667827 +0200
@@ -7577,3 +7577,7 @@
#: src/resources/ui/nautilus-compress-dialog.ui:225
msgid "Enter a password here."
msgstr "Insira uma senha aqui."
+
+#: src/resources/ui/nautilus-pathbar-context-menu.ui:53
+msgid "_Copy Location"
+msgstr "_Copiar local"
diff -ruN nautilus-40.2/po/pt.po nautilus-40.2.translations/po/pt.po
--- nautilus-40.2/po/pt.po 2022-06-21 17:20:51.841378446 +0200
+++ nautilus-40.2.translations/po/pt.po 2022-06-21 17:22:25.803339052 +0200
--- nautilus-40.2/po/pt.po 2022-09-22 15:52:30.155654072 +0200
+++ nautilus-40.2.translations/po/pt.po 2022-09-22 15:52:33.906667857 +0200
@@ -6495,3 +6495,7 @@
#: src/resources/ui/nautilus-compress-dialog.ui:225
msgid "Enter a password here."
msgstr "Introduza aqui uma palavra-passe."
+
+#: src/resources/ui/nautilus-files-view-context-menus.ui:34
+#: src/resources/ui/nautilus-pathbar-context-menu.ui:53
+msgid "_Copy Location"
+msgstr "_Copiar localização"
diff -ruN nautilus-40.2/po/ru.po nautilus-40.2.translations/po/ru.po
--- nautilus-40.2/po/ru.po 2022-06-21 17:20:51.843378445 +0200
+++ nautilus-40.2.translations/po/ru.po 2022-06-21 17:22:25.840339036 +0200
--- nautilus-40.2/po/ru.po 2022-09-22 15:52:30.157654079 +0200
+++ nautilus-40.2.translations/po/ru.po 2022-09-22 15:52:33.919667904 +0200
@@ -6587,3 +6587,7 @@
#: src/resources/ui/nautilus-compress-dialog.ui:225
msgid "Enter a password here."
msgstr "Введите пароль здесь."
+
+#: src/resources/ui/nautilus-files-view-context-menus.ui:34
+#: src/resources/ui/nautilus-pathbar-context-menu.ui:53
+msgid "_Copy Location"
+msgstr "_Копировать адрес"
diff -ruN nautilus-40.2/po/sl.po nautilus-40.2.translations/po/sl.po
--- nautilus-40.2/po/sl.po 2022-09-22 15:52:30.158654083 +0200
+++ nautilus-40.2.translations/po/sl.po 2022-09-22 15:52:33.938667974 +0200
@@ -7757,3 +7757,7 @@
#: src/resources/ui/nautilus-compress-dialog.ui:225
msgid "Enter a password here."
msgstr "Vnos gesla"
+
+#: src/resources/ui/nautilus-pathbar-context-menu.ui:53
+msgid "_Copy Location"
+msgstr "Kopiraj _mesto"
diff -ruN nautilus-40.2/po/sr.po nautilus-40.2.translations/po/sr.po
--- nautilus-40.2/po/sr.po 2022-09-22 15:52:30.159654087 +0200
+++ nautilus-40.2.translations/po/sr.po 2022-09-22 15:52:33.959668051 +0200
@@ -7564,3 +7564,7 @@
#: src/resources/ui/nautilus-compress-dialog.ui:225
msgid "Enter a password here."
msgstr "Унесите лозинку овде."
+
+#: src/resources/ui/nautilus-pathbar-context-menu.ui:53
+msgid "_Copy Location"
+msgstr "_Копирај путању"
diff -ruN nautilus-40.2/po/sv.po nautilus-40.2.translations/po/sv.po
--- nautilus-40.2/po/sv.po 2022-09-22 15:52:30.159654087 +0200
+++ nautilus-40.2.translations/po/sv.po 2022-09-22 15:52:33.968668084 +0200
@@ -6722,3 +6722,7 @@
#: src/resources/ui/nautilus-compress-dialog.ui:225
msgid "Enter a password here."
msgstr "Ange ett lösenord här."
+
+#: src/resources/ui/nautilus-pathbar-context-menu.ui:53
+msgid "_Copy Location"
+msgstr "_Kopiera plats"
diff -ruN nautilus-40.2/po/tr.po nautilus-40.2.translations/po/tr.po
--- nautilus-40.2/po/tr.po 2022-06-21 17:20:51.845378444 +0200
+++ nautilus-40.2.translations/po/tr.po 2022-06-21 17:22:25.992338972 +0200
--- nautilus-40.2/po/tr.po 2022-09-22 15:52:30.160654090 +0200
+++ nautilus-40.2.translations/po/tr.po 2022-09-22 15:52:33.996668187 +0200
@@ -6606,3 +6606,7 @@
#: src/resources/ui/nautilus-compress-dialog.ui:225
msgid "Enter a password here."
msgstr "Buraya parola gir…"
+
+#: src/resources/ui/nautilus-files-view-context-menus.ui:24
+#: src/resources/ui/nautilus-pathbar-context-menu.ui:53
+msgid "_Copy Location"
+msgstr "Konumu _Kopyala"
diff -ruN nautilus-40.2/po/uk.po nautilus-40.2.translations/po/uk.po
--- nautilus-40.2/po/uk.po 2022-06-21 17:20:51.846378444 +0200
+++ nautilus-40.2.translations/po/uk.po 2022-06-21 17:22:26.013338964 +0200
--- nautilus-40.2/po/uk.po 2022-09-22 15:52:30.160654090 +0200
+++ nautilus-40.2.translations/po/uk.po 2022-09-22 15:52:34.009668235 +0200
@@ -6030,3 +6030,7 @@
#: src/resources/ui/nautilus-compress-dialog.ui:225
msgid "Enter a password here."
msgstr "Тут слід ввести пароль."
+
+#: src/resources/ui/nautilus-files-view-context-menus.ui:34
+#: src/resources/ui/nautilus-pathbar-context-menu.ui:53
+msgid "_Copy Location"
+msgstr "_Копіювати адресу"
diff -ruN nautilus-40.2/po/zh_CN.po nautilus-40.2.translations/po/zh_CN.po
--- nautilus-40.2/po/zh_CN.po 2022-06-21 17:20:51.847378443 +0200
+++ nautilus-40.2.translations/po/zh_CN.po 2022-06-21 17:22:26.070338940 +0200
--- nautilus-40.2/po/zh_CN.po 2022-09-22 15:52:30.161654094 +0200
+++ nautilus-40.2.translations/po/zh_CN.po 2022-09-22 15:52:34.043668360 +0200
@@ -6197,3 +6197,7 @@
#: src/resources/ui/nautilus-compress-dialog.ui:225
msgid "Enter a password here."
msgstr "在此处输入密码。"
+
+#: src/resources/ui/nautilus-files-view-context-menus.ui:34
+#: src/resources/ui/nautilus-pathbar-context-menu.ui:53
+msgid "_Copy Location"
+msgstr "复制位置(_C)"
diff -ruN nautilus-40.2/po/zh_TW.po nautilus-40.2.translations/po/zh_TW.po
--- nautilus-40.2/po/zh_TW.po 2022-09-22 15:52:30.162654098 +0200
+++ nautilus-40.2.translations/po/zh_TW.po 2022-09-22 15:52:34.055668404 +0200
@@ -7679,3 +7679,7 @@
#: src/resources/ui/nautilus-compress-dialog.ui:225
msgid "Enter a password here."
msgstr "請在此輸入密碼。"
+
+#: src/resources/ui/nautilus-pathbar-context-menu.ui:53
+msgid "_Copy Location"
+msgstr "複製位置(_C)"

View File

@ -0,0 +1,96 @@
From ba878013689114bf199ba2260f9282ae82b352c4 Mon Sep 17 00:00:00 2001
From: Ondrej Holy <oholy@redhat.com>
Date: Wed, 22 Feb 2023 16:22:43 +0100
Subject: [PATCH] freedesktop-dbus: Try to own the name until after exporting
skeleton
Currently, the `g_bus_own_name_on_connection` function is called for the
`org.freedesktop.FileManager1` name before exporting the
`/org/freedesktop/FileManager1` skeleton. This seemingly works fine in most
cases, but occasionally the name is acquired too early and D-Bus clients
can get `No such interface` error. This is regression caused by the commit
2293e813d3cd1cc47b2b8750f7140647aa066fc8. Let's try to own the nam until
after exporting the skeleton to avoid this error.
---
src/nautilus-freedesktop-dbus.c | 31 +++++++++++++++----------------
1 file changed, 15 insertions(+), 16 deletions(-)
diff --git a/src/nautilus-freedesktop-dbus.c b/src/nautilus-freedesktop-dbus.c
index c253cfaba..c20166abb 100644
--- a/src/nautilus-freedesktop-dbus.c
+++ b/src/nautilus-freedesktop-dbus.c
@@ -162,20 +162,6 @@ name_lost_cb (GDBusConnection *connection,
DEBUG ("Lost (or failed to acquire) the name %s on the session message bus\n", name);
}
-static void
-nautilus_freedesktop_dbus_constructed (GObject *object)
-{
- NautilusFreedesktopDBus *fdb = NAUTILUS_FREEDESKTOP_DBUS (object);
-
- fdb->owner_id = g_bus_own_name_on_connection (fdb->connection,
- NAUTILUS_FDO_DBUS_NAME,
- G_BUS_NAME_OWNER_FLAGS_NONE,
- name_acquired_cb,
- name_lost_cb,
- fdb,
- NULL);
-}
-
static void
nautilus_freedesktop_dbus_dispose (GObject *object)
{
@@ -252,7 +238,6 @@ nautilus_freedesktop_dbus_class_init (NautilusFreedesktopDBusClass *klass)
GObjectClass *object_class = G_OBJECT_CLASS (klass);
object_class->dispose = nautilus_freedesktop_dbus_dispose;
- object_class->constructed = nautilus_freedesktop_dbus_constructed;
object_class->get_property = nautilus_freedesktop_dbus_get_property;
object_class->set_property = nautilus_freedesktop_dbus_set_property;
@@ -301,7 +286,6 @@ nautilus_freedesktop_dbus_set_open_windows_with_locations (NautilusFreedesktopDB
locations);
}
-/* Tries to own the org.freedesktop.FileManager1 service name */
NautilusFreedesktopDBus *
nautilus_freedesktop_dbus_new (GDBusConnection *connection)
{
@@ -310,6 +294,7 @@ nautilus_freedesktop_dbus_new (GDBusConnection *connection)
NULL);
}
+/* Tries to own the org.freedesktop.FileManager1 service name */
gboolean
nautilus_freedesktop_dbus_register (NautilusFreedesktopDBus *fdb,
GError **error)
@@ -331,12 +316,26 @@ nautilus_freedesktop_dbus_register (NautilusFreedesktopDBus *fdb,
G_CALLBACK (skeleton_handle_show_item_properties_cb), fdb);
}
+ fdb->owner_id = g_bus_own_name_on_connection (fdb->connection,
+ NAUTILUS_FDO_DBUS_NAME,
+ G_BUS_NAME_OWNER_FLAGS_NONE,
+ name_acquired_cb,
+ name_lost_cb,
+ fdb,
+ NULL);
+
return success;
}
void
nautilus_freedesktop_dbus_unregister (NautilusFreedesktopDBus *fdb)
{
+ if (fdb->owner_id != 0)
+ {
+ g_bus_unown_name (fdb->owner_id);
+ fdb->owner_id = 0;
+ }
+
g_dbus_interface_skeleton_unexport (G_DBUS_INTERFACE_SKELETON (fdb->skeleton));
g_signal_handlers_disconnect_by_data (fdb->skeleton, fdb);
--
2.39.1

View File

@ -6,7 +6,7 @@
Name: nautilus
Version: 40.2
Release: 8%{?dist}
Release: 11%{?dist}
Summary: File manager for GNOME
License: GPLv3+
@ -33,6 +33,12 @@ Patch9: compress-dialog-controller-Fit-popover-fit-on-X11.patch
Patch10: files-view-Add-menu-item-to-copy-current-path.patch
Patch11: files-view-Backport-translations.patch
# https://bugzilla.redhat.com/show_bug.cgi?id=2162302
Patch12: Revert-application-add-common-startup-code.patch
Patch13: Revert-freedesktop-dbus-Defer-D-Bus-property-setting.patch
Patch14: application-Export-FileManager1-iface-from-dbus_regi.patch
Patch15: freedesktop-dbus-Try-to-own-the-name-until-after-exp.patch
BuildRequires: desktop-file-utils
BuildRequires: gcc
BuildRequires: gettext
@ -163,6 +169,15 @@ desktop-file-validate $RPM_BUILD_ROOT%{_datadir}/applications/*.desktop
%doc %{_datadir}/gtk-doc/html/libnautilus-extension/
%changelog
* Thu Feb 23 2023 Ondrej Holy <oholy@redhat.com> - 40.2-11
- Try to own the name until after exporting skeleton (#2162302)
* Wed Feb 01 2023 Ondrej Holy <oholy@redhat.com> - 40.2-10
- Export FileManager1 iface from dbus_register vfunc (#2162302)
* Thu Sep 22 2022 Ondrej Holy <oholy@redhat.com> - 40.2-9
- Backport "_Copy Location" translations (#2099982)
* Mon Jun 20 2022 Ondrej Holy <oholy@redhat.com> - 40.2-8
- Add toolbar action to copy current location (#2098578)