aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMatthew Barnes <mbarnes@redhat.com>2012-11-29 08:01:30 +0800
committerMatthew Barnes <mbarnes@redhat.com>2012-11-29 22:16:11 +0800
commit4bc40f6663d6a809dda4dcbeae27902b5883cad1 (patch)
treee2f80ac7f19125f4bea5069ce493844d78d52f33
parentd50deaf449913deaa71e05960e1c0f97cff05e93 (diff)
downloadgsoc2013-evolution-4bc40f6663d6a809dda4dcbeae27902b5883cad1.tar
gsoc2013-evolution-4bc40f6663d6a809dda4dcbeae27902b5883cad1.tar.gz
gsoc2013-evolution-4bc40f6663d6a809dda4dcbeae27902b5883cad1.tar.bz2
gsoc2013-evolution-4bc40f6663d6a809dda4dcbeae27902b5883cad1.tar.lz
gsoc2013-evolution-4bc40f6663d6a809dda4dcbeae27902b5883cad1.tar.xz
gsoc2013-evolution-4bc40f6663d6a809dda4dcbeae27902b5883cad1.tar.zst
gsoc2013-evolution-4bc40f6663d6a809dda4dcbeae27902b5883cad1.zip
Add the GdkDevice to ETextEventProcessorCommand.
Will be needed for grabs in response to button events.
-rw-r--r--e-util/e-text-event-processor-emacs-like.c1
-rw-r--r--e-util/e-text-event-processor-types.h2
-rw-r--r--widgets/table/e-cell-text.c4
-rw-r--r--widgets/text/e-text.c2
4 files changed, 9 insertions, 0 deletions
diff --git a/e-util/e-text-event-processor-emacs-like.c b/e-util/e-text-event-processor-emacs-like.c
index fa724a2c77..2a42ae939c 100644
--- a/e-util/e-text-event-processor-emacs-like.c
+++ b/e-util/e-text-event-processor-emacs-like.c
@@ -133,6 +133,7 @@ e_text_event_processor_emacs_like_event (ETextEventProcessor *tep,
case GDK_BUTTON_PRESS:
if (event->button.button == 1 || event->button.button == 2) {
command.action = E_TEP_GRAB;
+ command.device = event->button.device;
command.time = event->button.time;
g_signal_emit_by_name (tep, "command", &command);
if (event->button.button == 1 && event->button.state & GDK_SHIFT_MASK)
diff --git a/e-util/e-text-event-processor-types.h b/e-util/e-text-event-processor-types.h
index 6e9d155f8c..d7d0bb3854 100644
--- a/e-util/e-text-event-processor-types.h
+++ b/e-util/e-text-event-processor-types.h
@@ -85,6 +85,7 @@ typedef struct {
ETextEventProcessorCommandAction action;
gint value;
const gchar *string;
+ GdkDevice *device;
guint32 time;
} ETextEventProcessorCommand;
@@ -94,6 +95,7 @@ typedef struct {
guint state;
guint button;
gint position;
+ GdkDevice *device;
} ETextEventProcessorEventButton;
typedef struct {
diff --git a/widgets/table/e-cell-text.c b/widgets/table/e-cell-text.c
index f1d852a951..4d685ae814 100644
--- a/widgets/table/e-cell-text.c
+++ b/widgets/table/e-cell-text.c
@@ -970,6 +970,8 @@ ect_event (ECellView *ecell_view,
e_tep_event.button.state = button.state;
e_tep_event.button.button = button.button;
e_tep_event.button.position = get_position_from_xy (edit, event->button.x, event->button.y);
+ e_tep_event.button.device =
+ gdk_event_get_device (event);
_get_tep (edit);
edit->actions = 0;
return_val = e_text_event_processor_handle_event (
@@ -993,6 +995,8 @@ ect_event (ECellView *ecell_view,
e_tep_event.button.state = button.state;
e_tep_event.button.button = button.button;
e_tep_event.button.position = get_position_from_xy (edit, event->button.x, event->button.y);
+ e_tep_event.button.device =
+ gdk_event_get_device (event);
_get_tep (edit);
edit->actions = 0;
return_val = e_text_event_processor_handle_event (
diff --git a/widgets/text/e-text.c b/widgets/text/e-text.c
index 1a56f9af40..cb97e8e26a 100644
--- a/widgets/text/e-text.c
+++ b/widgets/text/e-text.c
@@ -1785,6 +1785,8 @@ e_text_event (GnomeCanvasItem *item,
e_tep_event.button.position =
get_position_from_xy (
text, button.x, button.y);
+ e_tep_event.button.device =
+ gdk_event_get_device (event);
_get_tep (text);
return_val = e_text_event_processor_handle_event (
text->tep, &e_tep_event);