summaryrefslogtreecommitdiff
path: root/mate-panel/menu.c
diff options
context:
space:
mode:
Diffstat (limited to 'mate-panel/menu.c')
-rw-r--r--mate-panel/menu.c106
1 files changed, 54 insertions, 52 deletions
diff --git a/mate-panel/menu.c b/mate-panel/menu.c
index 4b8c5343..b72127ff 100644
--- a/mate-panel/menu.c
+++ b/mate-panel/menu.c
@@ -3,6 +3,7 @@
* Copyright (C) 2000 Helix Code, Inc.
* Copyright (C) 2000 Eazel, Inc.
* Copyright (C) 2004 Red Hat Inc.
+ * Copyright (C) 2012-2021 MATE Developers
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as
@@ -31,6 +32,7 @@
#include <gtk/gtk.h>
#include <gdk/gdkkeysyms.h>
#include <libmate-desktop/mate-gsettings.h>
+#include <libmate-desktop/mate-image-menu-item.h>
#include <matemenu-tree.h>
#include <libpanel-util/panel-keyfile.h>
@@ -61,10 +63,9 @@ static gboolean panel_menu_key_press_handler (GtkWidget *widget,
static inline gboolean desktop_is_home_dir(void)
{
gboolean retval = FALSE;
- GSettings *settings;
if (mate_gsettings_schema_exists (CAJA_PREFS_SCHEMA)) {
- settings = g_settings_new (CAJA_PREFS_SCHEMA);
+ GSettings *settings = g_settings_new (CAJA_PREFS_SCHEMA);
retval = g_settings_get_boolean (settings, CAJA_PREFS_DESKTOP_IS_HOME_DIR_KEY);
g_object_unref (settings);
}
@@ -168,7 +169,7 @@ panel_create_menu (void)
gtk_widget_set_name (retval, "mate-panel-main-menu");
- g_signal_connect (retval, "key_press_event",
+ g_signal_connect (retval, "key-press-event",
G_CALLBACK (panel_menu_key_press_handler),
NULL);
@@ -186,7 +187,7 @@ create_empty_menu (void)
/* intercept all right button clicks makes sure they don't
go to the object itself */
- g_signal_connect (retval, "button_press_event",
+ g_signal_connect (retval, "button-press-event",
G_CALLBACK (menu_dummy_button_press_event), NULL);
return retval;
@@ -212,7 +213,6 @@ add_app_to_panel (GtkWidget *item,
matemenu_tree_entry_get_desktop_file_path (entry));
}
-
static void
add_app_to_desktop (GtkWidget *item,
MateMenuTreeEntry *entry)
@@ -256,7 +256,6 @@ add_app_to_desktop (GtkWidget *item,
}
}
-
static void add_drawers_from_dir (MateMenuTreeDirectory *directory,
int pos,
const char *toplevel_id);
@@ -513,7 +512,6 @@ create_item_context_menu (GtkWidget *item,
gtk_menu_shell_append (GTK_MENU_SHELL (menu), menuitem);
gtk_widget_show (menuitem);
-
submenu = create_empty_menu ();
g_object_set_data (G_OBJECT (submenu), "menu_panel", panel_widget);
@@ -771,7 +769,7 @@ setup_menuitem (GtkWidget *menuitem,
gtk_icon_size_lookup (icon_size, NULL, &icon_height);
gtk_widget_show (image);
- gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (menuitem),
+ mate_image_menu_item_set_image (MATE_IMAGE_MENU_ITEM (menuitem),
image);
gtk_image_set_pixel_size (GTK_IMAGE(image), icon_height);
}
@@ -810,15 +808,17 @@ setup_uri_drag (GtkWidget *menuitem,
if (icon != NULL)
gtk_drag_source_set_icon_name (menuitem, icon);
- g_signal_connect (G_OBJECT (menuitem), "drag_begin",
- G_CALLBACK (drag_begin_menu_cb), NULL);
- g_signal_connect_data (G_OBJECT (menuitem), "drag_data_get",
- G_CALLBACK (drag_data_get_string_cb),
- g_strdup (uri),
- (GClosureNotify) G_CALLBACK (g_free),
- 0 /* connect_flags */);
- g_signal_connect (G_OBJECT (menuitem), "drag_end",
- G_CALLBACK (drag_end_menu_cb), NULL);
+ g_signal_connect (menuitem, "drag-begin",
+ G_CALLBACK (drag_begin_menu_cb),
+ NULL);
+ g_signal_connect_data (menuitem, "drag-data-get",
+ G_CALLBACK (drag_data_get_string_cb),
+ g_strdup (uri),
+ (GClosureNotify) G_CALLBACK (g_free),
+ 0 /* connect_flags */);
+ g_signal_connect (menuitem, "drag-end",
+ G_CALLBACK (drag_end_menu_cb),
+ NULL);
}
void
@@ -841,45 +841,47 @@ setup_internal_applet_drag (GtkWidget *menuitem,
gtk_drag_source_set_icon_name (menuitem,
panel_action_get_icon_name (type));
- g_signal_connect (G_OBJECT (menuitem), "drag_begin",
- G_CALLBACK (drag_begin_menu_cb), NULL);
- g_signal_connect_data (G_OBJECT (menuitem), "drag_data_get",
- G_CALLBACK (drag_data_get_string_cb),
- g_strdup (panel_action_get_drag_id (type)),
- (GClosureNotify) G_CALLBACK (g_free),
- 0 /* connect_flags */);
- g_signal_connect (G_OBJECT (menuitem), "drag_end",
- G_CALLBACK (drag_end_menu_cb), NULL);
+ g_signal_connect (menuitem, "drag-begin",
+ G_CALLBACK (drag_begin_menu_cb),
+ NULL);
+ g_signal_connect_data (menuitem, "drag-data-get",
+ G_CALLBACK (drag_data_get_string_cb),
+ g_strdup (panel_action_get_drag_id (type)),
+ (GClosureNotify) G_CALLBACK (g_free),
+ 0 /* connect_flags */);
+ g_signal_connect (menuitem, "drag-end",
+ G_CALLBACK (drag_end_menu_cb),
+ NULL);
}
static void
submenu_to_display (GtkWidget *menu)
{
- MateMenuTree *tree;
- MateMenuTreeDirectory *directory;
- const char *menu_path;
- void (*append_callback) (GtkWidget *, gpointer);
- gpointer append_data;
+ void (*append_callback) (GtkWidget *, gpointer);
+ gpointer append_data;
if (!g_object_get_data (G_OBJECT (menu), "panel-menu-needs-loading"))
return;
g_object_set_data (G_OBJECT (menu), "panel-menu-needs-loading", NULL);
- directory = g_object_get_data (G_OBJECT (menu),
- "panel-menu-tree-directory");
+ MateMenuTreeDirectory *directory =
+ g_object_get_data (G_OBJECT (menu),
+ "panel-menu-tree-directory");
if (!directory) {
- menu_path = g_object_get_data (G_OBJECT (menu),
- "panel-menu-tree-path");
+ const char *menu_path =
+ g_object_get_data (G_OBJECT (menu),
+ "panel-menu-tree-path");
if (!menu_path)
return;
- tree = g_object_get_data (G_OBJECT (menu), "panel-menu-tree");
+ MateMenuTree *tree =
+ g_object_get_data (G_OBJECT (menu),
+ "panel-menu-tree");
if (!tree)
return;
- directory = matemenu_tree_get_directory_from_path (tree,
- menu_path);
+ directory = matemenu_tree_get_directory_from_path (tree, menu_path);
g_object_set_data_full (G_OBJECT (menu),
"panel-menu-tree-directory",
@@ -947,10 +949,9 @@ create_fake_menu (MateMenuTreeDirectory *directory)
GUINT_TO_POINTER (idle_id),
remove_submenu_to_display_idle);
- g_signal_connect (menu, "button_press_event",
+ g_signal_connect (menu, "button-press-event",
G_CALLBACK (menu_dummy_button_press_event), NULL);
-
/* Fix any failures of compiz/other wm's to communicate with gtk for transparency */
GtkWidget *toplevel = gtk_widget_get_toplevel (menu);
GdkScreen *screen = gtk_widget_get_screen(GTK_WIDGET(toplevel));
@@ -964,9 +965,7 @@ panel_image_menu_item_new (void)
{
GtkWidget *menuitem;
- menuitem = gtk_image_menu_item_new ();
- gtk_image_menu_item_set_always_show_image (GTK_IMAGE_MENU_ITEM (menuitem),
- TRUE);
+ menuitem = mate_image_menu_item_new ();
return menuitem;
}
@@ -983,7 +982,7 @@ create_submenu_entry (GtkWidget *menu,
if (force_categories_icon)
menuitem = panel_image_menu_item_new ();
else
- menuitem = gtk_image_menu_item_new ();
+ menuitem = mate_image_menu_item_new ();
setup_menuitem_with_icon (menuitem,
panel_menu_icon_get_size (),
@@ -1097,7 +1096,7 @@ create_menuitem (GtkWidget *menu,
}
}
- g_signal_connect_after (menuitem, "button_press_event",
+ g_signal_connect_after (menuitem, "button-press-event",
G_CALLBACK (menuitem_button_press_event), NULL);
if (!panel_lockdown_get_locked_down ()) {
@@ -1121,12 +1120,15 @@ create_menuitem (GtkWidget *menu,
}
}
- g_signal_connect (G_OBJECT (menuitem), "drag_begin",
- G_CALLBACK (drag_begin_menu_cb), NULL);
- g_signal_connect (menuitem, "drag_data_get",
- G_CALLBACK (drag_data_get_menu_cb), entry);
- g_signal_connect (menuitem, "drag_end",
- G_CALLBACK (drag_end_menu_cb), NULL);
+ g_signal_connect (menuitem, "drag-begin",
+ G_CALLBACK (drag_begin_menu_cb),
+ NULL);
+ g_signal_connect (menuitem, "drag-data-get",
+ G_CALLBACK (drag_data_get_menu_cb),
+ entry);
+ g_signal_connect (menuitem, "drag-end",
+ G_CALLBACK (drag_end_menu_cb),
+ NULL);
}
gtk_menu_shell_append (GTK_MENU_SHELL (menu), menuitem);
@@ -1259,7 +1261,7 @@ create_applications_menu (const char *menu_file,
GUINT_TO_POINTER (idle_id),
remove_submenu_to_display_idle);
- g_signal_connect (menu, "button_press_event",
+ g_signal_connect (menu, "button-press-event",
G_CALLBACK (menu_dummy_button_press_event), NULL);
g_signal_connect (tree, "changed", G_CALLBACK (handle_matemenu_tree_changed), menu);