summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAntónio Fernandes <antoniof@gnome.org>2022-01-01 19:50:09 +0000
committerAntónio Fernandes <antoniof@gnome.org>2022-01-01 22:04:06 +0000
commit6d5af5c1d96965258119652e4b3245dd3676eef0 (patch)
tree2d3a1a32ffb114cb5d8856e78caf0c1df67e0288
parent986f9ff6ee2e4a5b1f435204910f553bbabd8805 (diff)
downloadnautilus-gtk4-preparation-trunk.tar.gz
general: Stop using GtkWidget::popup-menugtk4-preparation-trunk
The signal is gone in GTK 4. Replace the most relevant use with an action and a keyboard accelerator.
-rw-r--r--src/nautilus-files-view.c38
-rw-r--r--src/nautilus-window.c12
2 files changed, 15 insertions, 35 deletions
diff --git a/src/nautilus-files-view.c b/src/nautilus-files-view.c
index ea6d50be1..ac2c0525b 100644
--- a/src/nautilus-files-view.c
+++ b/src/nautilus-files-view.c
@@ -1663,6 +1663,16 @@ action_preview_selection (GSimpleAction *action,
}
static void
+action_popup_menu (GSimpleAction *action,
+ GVariant *state,
+ gpointer user_data)
+{
+ NautilusFilesView *view = NAUTILUS_FILES_VIEW (user_data);
+
+ nautilus_files_view_pop_up_selection_context_menu (view, -1, -1);
+}
+
+static void
pattern_select_response_cb (GtkWidget *dialog,
int response,
gpointer user_data)
@@ -7058,6 +7068,7 @@ const GActionEntry view_entries[] =
{ "select-pattern", action_select_pattern },
{ "invert-selection", action_invert_selection },
{ "preview-selection", action_preview_selection },
+ { "popup-menu", action_popup_menu },
};
static gboolean
@@ -7648,6 +7659,9 @@ real_update_actions_state (NautilusFilesView *view)
action = g_action_map_lookup_action (G_ACTION_MAP (view_action_group),
"preview-selection");
g_simple_action_set_enabled (G_SIMPLE_ACTION (action), selection_count != 0);
+ action = g_action_map_lookup_action (G_ACTION_MAP (view_action_group),
+ "popup-menu");
+ g_simple_action_set_enabled (G_SIMPLE_ACTION (action), selection_count != 0);
/* Drive menu */
show_mount = (selection != NULL);
@@ -8314,25 +8328,6 @@ nautilus_files_view_pop_up_background_context_menu (NautilusFilesView *view,
gtk_popover_popup (GTK_POPOVER (priv->background_menu));
}
-static gboolean
-popup_menu_callback (NautilusFilesView *view)
-{
- g_autolist (NautilusFile) selection = NULL;
-
- selection = nautilus_view_get_selection (NAUTILUS_VIEW (view));
-
- if (selection != NULL)
- {
- nautilus_files_view_pop_up_selection_context_menu (view, -1, -1);
- }
- else
- {
- nautilus_files_view_pop_up_background_context_menu (view, 0, 0);
- }
-
- return TRUE;
-}
-
static void
schedule_update_context_menus (NautilusFilesView *view)
{
@@ -9617,10 +9612,6 @@ nautilus_files_view_init (NautilusFilesView *view)
"event",
G_CALLBACK (on_event),
view);
- g_signal_connect_swapped (priv->scrolled_window,
- "popup-menu",
- G_CALLBACK (popup_menu_callback),
- view);
gtk_overlay_set_child (GTK_OVERLAY (priv->overlay), priv->scrolled_window);
@@ -9783,6 +9774,7 @@ nautilus_files_view_init (NautilusFilesView *view)
nautilus_application_set_accelerators (app, "view.zoom-standard", zoom_standard_accels);
nautilus_application_set_accelerator (app, "view.invert-selection", "<shift><control>i");
nautilus_application_set_accelerator (app, "view.preview-selection", "space");
+ nautilus_application_set_accelerator (app, "view.popup-menu", "Menu");
priv->starred_cancellable = g_cancellable_new ();
priv->tag_manager = nautilus_tag_manager_get ();
diff --git a/src/nautilus-window.c b/src/nautilus-window.c
index 8f3e3baf8..8839c6141 100644
--- a/src/nautilus-window.c
+++ b/src/nautilus-window.c
@@ -1824,15 +1824,6 @@ notebook_button_press_cb (GtkGestureMultiPress *gesture,
}
}
-static gboolean
-notebook_popup_menu_cb (GtkWidget *widget,
- gpointer user_data)
-{
- NautilusWindow *window = user_data;
- notebook_popup_menu_show (window, 0, 0);
- return TRUE;
-}
-
GtkWidget *
nautilus_window_get_toolbar (NautilusWindow *window)
{
@@ -1950,9 +1941,6 @@ notebook_create_window_cb (GtkNotebook *notebook,
static void
setup_notebook (NautilusWindow *window)
{
- g_signal_connect (window->notebook, "popup-menu",
- G_CALLBACK (notebook_popup_menu_cb),
- window);
g_signal_connect (window->notebook, "switch-page",
G_CALLBACK (notebook_switch_page_cb),
window);