* Use an user handler for 'key-press-event' signal on
authorJavier Fernandez Garcia-Boente <jfernandez@igalia.com>
Fri, 29 Jun 2007 15:36:37 +0000 (15:36 +0000)
committerJavier Fernandez Garcia-Boente <jfernandez@igalia.com>
Fri, 29 Jun 2007 15:36:37 +0000 (15:36 +0000)
ModestWindow class.
* Fixes: NB#61828, NB#61825

pmo-trunk-r2501

src/maemo/modest-msg-edit-window.c
src/modest-ui-actions.c
src/widgets/modest-window.c

index 384c7cd..2948e9c 100644 (file)
@@ -148,6 +148,11 @@ static gboolean gtk_text_iter_forward_search_insensitive (const GtkTextIter *ite
                                                          
 
 
+/* static gboolean */
+/* on_key_pressed (GtkWidget *self, */
+/*             GdkEventKey *event, */
+/*             gpointer user_data); */
+
 static void edit_menu_activated (GtkAction *action,
                                 gpointer userdata);
 static void view_menu_activated (GtkAction *action,
@@ -435,6 +440,8 @@ init_window (ModestMsgEditWindow *obj)
        priv->find_toolbar = hildon_find_toolbar_new (NULL);
        gtk_widget_set_no_show_all (priv->find_toolbar, TRUE);
 
+/*     g_signal_connect (G_OBJECT (obj), "key_pressed", G_CALLBACK (on_key_pressed), NULL) */
+
        g_signal_connect (G_OBJECT (priv->text_buffer), "refresh_attributes",
                          G_CALLBACK (text_buffer_refresh_attributes), obj);
        g_signal_connect (G_OBJECT (priv->text_buffer), "delete-range",
index ec7c41d..b9e3f9b 100644 (file)
@@ -2875,8 +2875,9 @@ transfer_msgs_from_viewer_cb (const GObject *object, gpointer user_data)
        first = modest_msg_view_window_first_message_selected (self);   
        if (last & first) {
                /* No more messages to view, so close this window */
-               gboolean ret_value;
-               g_signal_emit_by_name (G_OBJECT (self), "delete-event", NULL, &ret_value);
+/*             gboolean ret_value; */
+/*             g_signal_emit_by_name (G_OBJECT (self), "delete-event", NULL, &ret_value); */
+               modest_ui_actions_on_close_window (NULL, MODEST_WINDOW(self));
        } else if (last)
                modest_msg_view_window_select_previous_message (self);
        else 
index 0a53285..194f4d0 100644 (file)
@@ -29,6 +29,7 @@
 
 #include "modest-window.h"
 #include "modest-window-priv.h"
+#include "modest-ui-actions.h"
 #include "modest-tny-platform-factory.h"
 
 /* 'private'/'protected' functions */
@@ -44,6 +45,9 @@ static gboolean    modest_window_zoom_minus_default     (ModestWindow *window);
 static void        modest_window_show_toolbar_default   (ModestWindow *window,
                                                         gboolean show_toolbar);
 
+static gboolean    on_key_pressed (GtkWidget *self, GdkEventKey *event, gpointer user_data);
+
+
 /* list my signals  */
 enum {
        LAST_SIGNAL
@@ -117,6 +121,11 @@ modest_window_init (ModestWindow *obj)
        priv->menubar        = NULL;
 
        priv->active_account = NULL;
+
+       /* Connect signals */
+       g_signal_connect (G_OBJECT (obj), 
+                         "key-press-event", 
+                         G_CALLBACK (on_key_pressed), NULL);
 }
 
 static void
@@ -303,4 +312,22 @@ modest_window_save_state (ModestWindow *window)
                klass->save_state_func (window);
 }
 
-
+static gboolean
+on_key_pressed (GtkWidget *self,
+               GdkEventKey *event,
+               gpointer user_data)
+{
+       switch (event->keyval) {
+       case GDK_F6: 
+               modest_ui_actions_on_change_fullscreen (NULL, MODEST_WINDOW(self));
+               break;
+       case GDK_F7: 
+               modest_ui_actions_on_zoom_plus (NULL, MODEST_WINDOW(self));
+               break;
+       case GDK_F8: 
+               modest_ui_actions_on_zoom_minus (NULL, MODEST_WINDOW(self));
+               break;
+       }
+       
+       return TRUE;
+}