From: Jose Dapena Paz Date: Mon, 14 Dec 2009 16:35:31 +0000 (+0100) Subject: Set Control+q as attachment for closing shell, and Control+w for closing X-Git-Tag: jdapena-ppa-3.90.4-modest0~23 X-Git-Url: http://git.maemo.org/git/?p=modest;a=commitdiff_plain;h=59c703034460df5df59ec73d097dc4b3e307a690 Set Control+q as attachment for closing shell, and Control+w for closing last window --- diff --git a/src/gtk/modest-shell.c b/src/gtk/modest-shell.c index d5e73f4..de1f043 100644 --- a/src/gtk/modest-shell.c +++ b/src/gtk/modest-shell.c @@ -32,6 +32,8 @@ #include #include #include +#include +#include /* 'private'/'protected' functions */ static void modest_shell_class_init (ModestShellClass *klass); @@ -48,6 +50,10 @@ static void on_style_set (GtkWidget *widget, GtkStyle *old_style, ModestShell *s static gboolean on_delete_event (GtkWidget *widget, GdkEvent *event, gpointer user_data); +static gboolean on_control_q (GtkAccelGroup *accel_group, + GObject *acceleratable, + guint keyval, + GdkModifierType modifier); static gboolean on_key_pressed (GtkWidget *widget, GdkEventKey *event, ModestShell *shell); @@ -217,6 +223,11 @@ modest_shell_instance_init (ModestShell *obj) gtk_accelerator_parse ("Escape", &accel_key, &accel_mods); gtk_widget_add_accelerator (GTK_WIDGET (priv->back_button), "clicked", accel_group, accel_key, accel_mods, 0); + gtk_accelerator_parse ("w", &accel_key, &accel_mods); + gtk_widget_add_accelerator (GTK_WIDGET (priv->back_button), "clicked", accel_group, + accel_key, accel_mods, 0); + gtk_accelerator_parse ("q", &accel_key, &accel_mods); + gtk_accel_group_connect (accel_group, accel_key, accel_mods, 0, g_cclosure_new (G_CALLBACK (on_control_q), NULL, NULL)); gtk_accelerator_parse ("F10", &accel_key, &accel_mods); gtk_widget_add_accelerator (GTK_WIDGET (priv->title_button), "clicked", accel_group, accel_key, accel_mods, 0); @@ -616,3 +627,20 @@ on_delete_event (GtkWidget *widget, return FALSE; } + +static gboolean +on_control_q (GtkAccelGroup *accel_group, + GObject *acceleratable, + guint keyval, + GdkModifierType modifier) +{ + ModestWindowMgr *mgr; + GtkWidget *shell; + gboolean ret_value; + + mgr = modest_runtime_get_window_mgr (); + shell = modest_gtk_window_mgr_get_shell (MODEST_GTK_WINDOW_MGR (mgr)); + g_signal_emit_by_name (G_OBJECT (shell), "delete-event", NULL, &ret_value); + + return ret_value; +}