r27255 - in /desktop/experimental/gnome-panel/debian: changelog patches/04_modifier_contextmenu.patch patches/series
joss at users.alioth.debian.org
joss at users.alioth.debian.org
Sat Apr 2 19:46:44 UTC 2011
Author: joss
Date: Sat Apr 2 19:46:42 2011
New Revision: 27255
URL: http://svn.debian.org/wsvn/pkg-gnome/?sc=1&rev=27255
Log:
04_modifier_contextmenu.patch: new patch. Make the context menu work
even when there are other keys in the modifier mask.
Added:
desktop/experimental/gnome-panel/debian/patches/04_modifier_contextmenu.patch
Modified:
desktop/experimental/gnome-panel/debian/changelog
desktop/experimental/gnome-panel/debian/patches/series
Modified: desktop/experimental/gnome-panel/debian/changelog
URL: http://svn.debian.org/wsvn/pkg-gnome/desktop/experimental/gnome-panel/debian/changelog?rev=27255&op=diff
==============================================================================
--- desktop/experimental/gnome-panel/debian/changelog [utf-8] (original)
+++ desktop/experimental/gnome-panel/debian/changelog [utf-8] Sat Apr 2 19:46:42 2011
@@ -2,6 +2,8 @@
* 02_launcher_crash.patch: new patch. Fix a crash when clicking on
launchers with the compositor enabled.
+ * 04_modifier_contextmenu.patch: new patch. Make the context menu work
+ even when there are other keys in the modifier mask.
-- Josselin Mouette <joss at debian.org> Sat, 02 Apr 2011 19:06:08 +0200
Added: desktop/experimental/gnome-panel/debian/patches/04_modifier_contextmenu.patch
URL: http://svn.debian.org/wsvn/pkg-gnome/desktop/experimental/gnome-panel/debian/patches/04_modifier_contextmenu.patch?rev=27255&op=file
==============================================================================
--- desktop/experimental/gnome-panel/debian/patches/04_modifier_contextmenu.patch (added)
+++ desktop/experimental/gnome-panel/debian/patches/04_modifier_contextmenu.patch [utf-8] Sat Apr 2 19:46:42 2011
@@ -1,0 +1,203 @@
+Index: gnome-panel-2.91.93/gnome-panel/panel.c
+===================================================================
+--- gnome-panel-2.91.93.orig/gnome-panel/panel.c 2011-04-02 19:41:16.901302001 +0200
++++ gnome-panel-2.91.93/gnome-panel/panel.c 2011-04-02 20:40:24.101302361 +0200
+@@ -355,14 +355,14 @@ static gboolean
+ panel_button_press_event (PanelToplevel *toplevel,
+ GdkEventButton *event)
+ {
+- guint modifiers;
++ guint keymask;
+
+ if (event->button != 3)
+ return FALSE;
+
+- modifiers = event->state & GDK_MODIFIER_MASK;
++ keymask = panel_bindings_get_mouse_button_modifier_keymask ();
+
+- if (modifiers == panel_bindings_get_mouse_button_modifier_keymask ())
++ if ((event->state & keymask) == keymask)
+ return panel_popup_menu (toplevel, event->button, event->time);
+
+ return FALSE;
+Index: gnome-panel-2.91.93/gnome-panel/applet.c
+===================================================================
+--- gnome-panel-2.91.93.orig/gnome-panel/applet.c 2011-04-02 20:44:50.565302001 +0200
++++ gnome-panel-2.91.93/gnome-panel/applet.c 2011-04-02 20:46:17.797302001 +0200
+@@ -676,7 +676,7 @@ applet_button_press (GtkWidget *wid
+ GdkEventButton *event,
+ AppletInfo *info)
+ {
+- guint modifiers;
++ guint keymask;
+
+ if (event->button != 3)
+ return FALSE;
+@@ -684,9 +684,9 @@ applet_button_press (GtkWidget *wid
+ if (applet_must_skip_menu (info))
+ return FALSE;
+
+- modifiers = event->state & GDK_MODIFIER_MASK;
++ keymask = panel_bindings_get_mouse_button_modifier_keymask ();
+
+- if (modifiers == panel_bindings_get_mouse_button_modifier_keymask ())
++ if ((event->state & keymask) == keymask)
+ applet_show_menu (info, panel_applet_get_edit_menu (info), FALSE, event);
+ else
+ applet_show_menu (info, panel_applet_get_menu (info), TRUE, event);
+Index: gnome-panel-2.91.93/gnome-panel/panel-applet-frame.c
+===================================================================
+--- gnome-panel-2.91.93.orig/gnome-panel/panel-applet-frame.c 2011-04-02 20:40:38.817302001 +0200
++++ gnome-panel-2.91.93/gnome-panel/panel-applet-frame.c 2011-04-02 20:44:33.593302001 +0200
+@@ -347,7 +347,7 @@ panel_applet_frame_button_changed (GtkWi
+ {
+ PanelAppletFrame *frame;
+ gboolean handled = FALSE;
+- guint modifiers;
++ guint keymask;
+ GdkDisplay *display;
+ GdkDevice *pointer;
+ GdkDeviceManager *device_manager;
+@@ -360,7 +360,7 @@ panel_applet_frame_button_changed (GtkWi
+ if (event->window != gtk_widget_get_window (widget))
+ return FALSE;
+
+- modifiers = event->state & GDK_MODIFIER_MASK;
++ keymask = panel_bindings_get_mouse_button_modifier_keymask ();
+
+ switch (event->button) {
+ case 1:
+@@ -368,7 +368,7 @@ panel_applet_frame_button_changed (GtkWi
+ if (button_event_in_rect (event, &frame->priv->handle_rect)) {
+ if ((event->type == GDK_BUTTON_PRESS ||
+ event->type == GDK_2BUTTON_PRESS) &&
+- modifiers == panel_bindings_get_mouse_button_modifier_keymask ()){
++ (event->state & keymask) == keymask) {
+ panel_widget_applet_drag_start (
+ frame->priv->panel, GTK_WIDGET (frame),
+ PW_DRAG_OFF_CURSOR, event->time);
+@@ -387,7 +387,7 @@ panel_applet_frame_button_changed (GtkWi
+ pointer = gdk_device_manager_get_client_pointer (device_manager);
+ gdk_device_ungrab (pointer, GDK_CURRENT_TIME);
+
+- if (modifiers == panel_bindings_get_mouse_button_modifier_keymask ())
++ if ((event->state & keymask) == keymask)
+ PANEL_APPLET_FRAME_GET_CLASS (frame)->popup_edit_menu (frame,
+ event->button,
+ event->time);
+Index: gnome-panel-2.91.93/gnome-panel/panel-toplevel.c
+===================================================================
+--- gnome-panel-2.91.93.orig/gnome-panel/panel-toplevel.c 2011-04-02 20:46:38.125302002 +0200
++++ gnome-panel-2.91.93/gnome-panel/panel-toplevel.c 2011-04-02 20:50:30.729301725 +0200
+@@ -2930,6 +2930,7 @@ panel_toplevel_button_press_event (GtkWi
+ {
+ PanelToplevel *toplevel;
+ GtkWidget *event_widget;
++ guint keymask;
+
+ g_return_val_if_fail (PANEL_IS_TOPLEVEL (widget), FALSE);
+
+@@ -2944,8 +2945,9 @@ panel_toplevel_button_press_event (GtkWi
+ /* Get the mouse-button modifier from metacity so that only intentional
+ * moves are considered. We don't this for non-expanded panels since we
+ * only have the handles that the user can grab. */
++ keymask = panel_bindings_get_mouse_button_modifier_keymask ();
+ if (toplevel->priv->expand &&
+- (event->state & GDK_MODIFIER_MASK) != panel_bindings_get_mouse_button_modifier_keymask ())
++ (event->state & keymask) != keymask)
+ return FALSE;
+
+ gdk_window_get_user_data (event->window, (gpointer)&event_widget);
+Index: gnome-panel-2.91.93/gnome-panel/panel-util.c
+===================================================================
+--- gnome-panel-2.91.93.orig/gnome-panel/panel-util.c 2011-04-02 20:54:33.181302001 +0200
++++ gnome-panel-2.91.93/gnome-panel/panel-util.c 2011-04-02 21:07:54.321300280 +0200
+@@ -1119,6 +1119,7 @@ panel_util_key_event_is_binding (GdkEven
+ gboolean popup_modifier = FALSE;
+ char *signal_dash;
+ char *signal_underscore;
++ guint keymask;
+
+ signal_dash = g_strdup (signal_name);
+ g_strdelimit (signal_dash, "_", '-');
+@@ -1140,8 +1141,9 @@ panel_util_key_event_is_binding (GdkEven
+ if (binding_entry->keyval != event->keyval)
+ break;
+
++ keymask = panel_bindings_get_mouse_button_modifier_keymask ();
+ popup = (event->state & GDK_MODIFIER_MASK) == binding_entry->modifiers;
+- popup_modifier = (event->state & GDK_MODIFIER_MASK) == (panel_bindings_get_mouse_button_modifier_keymask ()|binding_entry->modifiers);
++ popup_modifier = (event->state & (keymask|binding_entry->modifiers)) == (keymask|binding_entry->modifiers);
+ break;
+ }
+ }
+Index: gnome-panel-2.91.93/gnome-panel/panel-widget.c
+===================================================================
+--- gnome-panel-2.91.93.orig/gnome-panel/panel-widget.c 2011-04-02 20:50:39.777302001 +0200
++++ gnome-panel-2.91.93/gnome-panel/panel-widget.c 2011-04-02 20:52:55.749300283 +0200
+@@ -1956,7 +1956,7 @@ panel_widget_applet_button_press_event (
+ {
+ GtkWidget *parent;
+ PanelWidget *panel;
+- guint modifiers;
++ guint keymask;
+ guint32 event_time;
+
+ parent = gtk_widget_get_parent (widget);
+@@ -1974,14 +1974,14 @@ panel_widget_applet_button_press_event (
+ return TRUE;
+ }
+
+- modifiers = event->state & GDK_MODIFIER_MASK;
++ keymask = panel_bindings_get_mouse_button_modifier_keymask ();
+
+ /* Begin drag if the middle mouse button and modifier are pressed,
+ * unless the panel is locked down or a grab is active (meaning a menu
+ * is open) */
+ if (panel_lockdown_get_panels_locked_down_s () ||
+ event->button != 2 ||
+- modifiers != panel_bindings_get_mouse_button_modifier_keymask () ||
++ (event->state & keymask) != keymask ||
+ gtk_grab_get_current() != NULL)
+ return FALSE;
+
+Index: gnome-panel-2.91.93/libpanel-applet/panel-applet-bindings.c
+===================================================================
+--- gnome-panel-2.91.93.orig/libpanel-applet/panel-applet-bindings.c 2011-04-02 21:23:28.241302002 +0200
++++ gnome-panel-2.91.93/libpanel-applet/panel-applet-bindings.c 2011-04-02 21:26:51.809301892 +0200
+@@ -260,6 +260,7 @@ panel_applet_bindings_key_event_is_bindi
+ gboolean popup_modifier = FALSE;
+ char *signal_dash;
+ char *signal_underscore;
++ guint keymask;
+
+ signal_dash = g_strdup (signal_name);
+ g_strdelimit (signal_dash, "_", '-');
+@@ -282,7 +283,7 @@ panel_applet_bindings_key_event_is_bindi
+ break;
+
+ popup = (event->state & GDK_MODIFIER_MASK) == binding_entry->modifiers;
+- popup_modifier = (event->state & GDK_MODIFIER_MASK) == (panel_applet_bindings_get_mouse_button_modifier_keymask ()|binding_entry->modifiers);
++ popup_modifier = (event->state & (keymask|binding_entry->modifiers)) == (keymask|binding_entry->modifiers);
+ break;
+ }
+ }
+Index: gnome-panel-2.91.93/libpanel-applet/panel-applet.c
+===================================================================
+--- gnome-panel-2.91.93.orig/libpanel-applet/panel-applet.c 2011-04-02 21:27:22.369302001 +0200
++++ gnome-panel-2.91.93/libpanel-applet/panel-applet.c 2011-04-02 21:28:33.085302001 +0200
+@@ -1264,11 +1264,11 @@ panel_applet_button_press (GtkWidget
+ }
+
+ if (event->button == 3) {
+- guint modifiers;
++ guint keymask;
+
+- modifiers = event->state & GDK_MODIFIER_MASK;
++ keymask = panel_applet_bindings_get_mouse_button_modifier_keymask ();
+
+- if (modifiers == panel_applet_bindings_get_mouse_button_modifier_keymask ())
++ if ((event->state & keymask) == keymask)
+ panel_applet_edit_menu_popup (applet, event->button, event->time);
+ else
+ panel_applet_menu_popup (applet, event->button, event->time);
Modified: desktop/experimental/gnome-panel/debian/patches/series
URL: http://svn.debian.org/wsvn/pkg-gnome/desktop/experimental/gnome-panel/debian/patches/series?rev=27255&op=diff
==============================================================================
--- desktop/experimental/gnome-panel/debian/patches/series [utf-8] (original)
+++ desktop/experimental/gnome-panel/debian/patches/series [utf-8] Sat Apr 2 19:46:42 2011
@@ -1,5 +1,6 @@
01_panel_submenus.patch
02_launcher_crash.patch
03_tasklist_orientation.patch
+04_modifier_contextmenu.patch
09_default_icons.patch
10_bookmarks_limit.patch
More information about the pkg-gnome-commits
mailing list