From b18b76d6d612ce86086278652a7d53d828029c94 Mon Sep 17 00:00:00 2001 From: Jose Dapena Paz Date: Thu, 16 Apr 2009 14:51:09 +0000 Subject: [PATCH] Handle properly zoom in hildon 2.2 pmo-trunk-r8869 --- src/hildon2/modest-msg-view-window.c | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) diff --git a/src/hildon2/modest-msg-view-window.c b/src/hildon2/modest-msg-view-window.c index 2ae8df1..2946161 100644 --- a/src/hildon2/modest-msg-view-window.c +++ b/src/hildon2/modest-msg-view-window.c @@ -66,6 +66,11 @@ #include #include #include +#include +#include +#include +#include +#include #define MYDOCS_ENV "MYDOCSDIR" #define DOCS_FOLDER ".documents" @@ -225,6 +230,8 @@ static void setup_menu (ModestMsgViewWindow *self); static gboolean _modest_msg_view_window_map_event (GtkWidget *widget, GdkEvent *event, gpointer userdata); +static void _make_zoom_buttons_grabeable (GtkWidget* widget); + /* list my signals */ enum { @@ -1611,6 +1618,15 @@ modest_msg_view_window_key_event (GtkWidget *window, focus = gtk_window_get_focus (GTK_WINDOW (window)); + if (event->keyval == HILDON_HARDKEY_DECREASE && event->type == GDK_KEY_PRESS) { + modest_ui_actions_on_zoom_minus (NULL, MODEST_WINDOW (window)); + return TRUE; + } + if (event->keyval == HILDON_HARDKEY_INCREASE && event->type == GDK_KEY_PRESS) { + modest_ui_actions_on_zoom_plus (NULL, MODEST_WINDOW (window)); + return TRUE; + } + /* for the find toolbar case */ if (focus && GTK_IS_ENTRY (focus)) { if (event->keyval == GDK_BackSpace) { @@ -3295,5 +3311,21 @@ _modest_msg_view_window_map_event (GtkWidget *widget, hildon_gtk_window_set_progress_indicator (GTK_WINDOW (self), TRUE); } + _make_zoom_buttons_grabeable (GTK_WIDGET (self)); return FALSE; } + +static void +_make_zoom_buttons_grabeable (GtkWidget* widget) +{ + GdkDisplay *display; + Atom atom; + unsigned long val = 1; + + display = gdk_drawable_get_display (widget->window); + atom = gdk_x11_get_xatom_by_name_for_display (display, "_HILDON_ZOOM_KEY_ATOM"); + XChangeProperty (GDK_DISPLAY_XDISPLAY (display), + GDK_WINDOW_XID (widget->window), atom, + XA_INTEGER, 32, PropModeReplace, + (unsigned char *) &val, 1); +} -- 1.7.9.5