aboutsummaryrefslogtreecommitdiffstats
path: root/widgets/e-timezone-dialog
diff options
context:
space:
mode:
Diffstat (limited to 'widgets/e-timezone-dialog')
-rw-r--r--widgets/e-timezone-dialog/e-timezone-dialog.c15
1 files changed, 10 insertions, 5 deletions
diff --git a/widgets/e-timezone-dialog/e-timezone-dialog.c b/widgets/e-timezone-dialog/e-timezone-dialog.c
index 337cb0ad99..9fd6b91446 100644
--- a/widgets/e-timezone-dialog/e-timezone-dialog.c
+++ b/widgets/e-timezone-dialog/e-timezone-dialog.c
@@ -95,7 +95,7 @@ static gboolean on_map_visibility_changed (GtkWidget *w,
GdkEventVisibility *event,
gpointer data);
static gboolean on_map_button_pressed (GtkWidget *w,
- GdkEventButton *event,
+ GdkEvent *button_event,
gpointer data);
static icaltimezone * get_zone_from_point (ETimezoneDialog *etd,
@@ -591,21 +591,26 @@ on_map_visibility_changed (GtkWidget *w,
static gboolean
on_map_button_pressed (GtkWidget *w,
- GdkEventButton *event,
+ GdkEvent *button_event,
gpointer data)
{
ETimezoneDialog *etd;
ETimezoneDialogPrivate *priv;
+ guint event_button = 0;
+ gdouble event_x_win = 0;
+ gdouble event_y_win = 0;
gdouble longitude, latitude;
etd = E_TIMEZONE_DIALOG (data);
priv = etd->priv;
+ gdk_event_get_button (button_event, &event_button);
+ gdk_event_get_coords (button_event, &event_x_win, &event_y_win);
+
e_map_window_to_world (
- priv->map, (gdouble) event->x, (gdouble) event->y,
- &longitude, &latitude);
+ priv->map, event_x_win, event_y_win, &longitude, &latitude);
- if (event->button != 1) {
+ if (event_button != 1) {
e_map_zoom_out (priv->map);
} else {
if (e_map_get_magnification (priv->map) <= 1.0)