[nautilus/antonioffix-menus-and-popovers: 5/14] ui-utilities: Rename and simplify pop_up_context_menu()
- From: António Fernandes <antoniof src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [nautilus/antonioffix-menus-and-popovers: 5/14] ui-utilities: Rename and simplify pop_up_context_menu()
- Date: Tue, 23 Jan 2018 16:33:45 +0000 (UTC)
commit 0339b5b3ee18e335f1643d27da24d9d829717f45
Author: António Fernandes <antoniof gnome org>
Date: Tue Jan 16 17:14:22 2018 +0000
ui-utilities: Rename and simplify pop_up_context_menu()
nautilus_pop_up_context_menu() was implemented in bb884cb6 when it was
a wrapper for gtk_menu_popup(). But gtk_menu_popup() has since
deprecated, so it was ported to gtk_menu_popup_at_pointer() in 1f57c5b1.
However, _popup_at_pointer() is not enough for our context menu needs.
We will use _popup_at_rect() and _popup_at_widget in future commits.
Rename to nautilus_pop_up_context_menu_at_pointer() to reflect this
specific use. Also, simplify the code, as GtkMenu's API already
interprets event=NULL as the current event.
src/nautilus-files-view.c | 8 ++++++--
src/nautilus-pathbar.c | 6 +++---
src/nautilus-ui-utilities.c | 19 +++++++++++--------
src/nautilus-ui-utilities.h | 6 +++---
4 files changed, 23 insertions(+), 16 deletions(-)
---
diff --git a/src/nautilus-files-view.c b/src/nautilus-files-view.c
index dd944c351..e2f495b2f 100644
--- a/src/nautilus-files-view.c
+++ b/src/nautilus-files-view.c
@@ -8124,7 +8124,9 @@ nautilus_files_view_pop_up_selection_context_menu (NautilusFilesView *view,
*/
update_context_menus_if_pending (view);
- nautilus_pop_up_context_menu (GTK_WIDGET (view), priv->selection_menu, event);
+ nautilus_pop_up_context_menu_at_pointer (GTK_WIDGET (view),
+ priv->selection_menu,
+ event);
}
/**
@@ -8149,7 +8151,9 @@ nautilus_files_view_pop_up_background_context_menu (NautilusFilesView *view,
*/
update_context_menus_if_pending (view);
- nautilus_pop_up_context_menu (GTK_WIDGET (view), priv->background_menu, event);
+ nautilus_pop_up_context_menu_at_pointer (GTK_WIDGET (view),
+ priv->background_menu,
+ event);
}
static gboolean
diff --git a/src/nautilus-pathbar.c b/src/nautilus-pathbar.c
index dc8ee6dbe..8466e31de 100644
--- a/src/nautilus-pathbar.c
+++ b/src/nautilus-pathbar.c
@@ -1626,9 +1626,9 @@ real_pop_up_pathbar_context_menu (NautilusPathBar *self)
priv = nautilus_path_bar_get_instance_private (self);
- nautilus_pop_up_context_menu (GTK_WIDGET (self),
- priv->context_menu,
- priv->context_menu_event);
+ nautilus_pop_up_context_menu_at_pointer (GTK_WIDGET (self),
+ priv->context_menu,
+ priv->context_menu_event);
}
static void
diff --git a/src/nautilus-ui-utilities.c b/src/nautilus-ui-utilities.c
index 58958e5e4..ad77d22ee 100644
--- a/src/nautilus-ui-utilities.c
+++ b/src/nautilus-ui-utilities.c
@@ -168,12 +168,18 @@ nautilus_gmenu_add_item_in_submodel (GMenu *menu,
g_object_unref (submodel);
}
+/**
+ * nautilus_pop_up_context_menu_at_pointer:
+ *
+ * Pop up a context menu at the pointer's position. If @event_button is NULL,
+ * the current even will be assumed by gtk_menu_popup_at_pointer().
+ */
void
-nautilus_pop_up_context_menu (GtkWidget *parent,
- GMenu *menu,
- GdkEventButton *button_event)
+nautilus_pop_up_context_menu_at_pointer (GtkWidget *parent,
+ GMenu *menu,
+ const GdkEventButton *button_event)
{
- GtkWidget *gtk_menu;
+ g_autoptr (GtkWidget) gtk_menu = NULL;
g_return_if_fail (G_IS_MENU (menu));
g_return_if_fail (GTK_IS_WIDGET (parent));
@@ -181,12 +187,9 @@ nautilus_pop_up_context_menu (GtkWidget *parent,
gtk_menu = gtk_menu_new_from_model (G_MENU_MODEL (menu));
gtk_menu_attach_to_widget (GTK_MENU (gtk_menu), parent, NULL);
- gtk_menu_popup_at_pointer (GTK_MENU (gtk_menu),
- button_event ? (GdkEvent *) button_event :
- gtk_get_current_event ());
+ gtk_menu_popup_at_pointer (GTK_MENU (gtk_menu), (GdkEvent *) button_event);
g_object_ref_sink (gtk_menu);
- g_object_unref (gtk_menu);
}
#define NAUTILUS_THUMBNAIL_FRAME_LEFT 3
diff --git a/src/nautilus-ui-utilities.h b/src/nautilus-ui-utilities.h
index 0dfd31ca9..f6cac6ea8 100644
--- a/src/nautilus-ui-utilities.h
+++ b/src/nautilus-ui-utilities.h
@@ -34,9 +34,9 @@ void nautilus_gmenu_merge (GMenu *original,
GMenu *gmenu_to_merge,
const gchar *submodel_name,
gboolean prepend);
-void nautilus_pop_up_context_menu (GtkWidget *parent,
- GMenu *menu,
- GdkEventButton *button_event);
+void nautilus_pop_up_context_menu_at_pointer (GtkWidget *parent,
+ GMenu *menu,
+ const GdkEventButton *button_event);
void nautilus_ui_frame_image (GdkPixbuf **pixbuf);
void nautilus_ui_frame_video (GdkPixbuf **pixbuf);
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]