aboutsummaryrefslogtreecommitdiffstats
path: root/e-util
diff options
context:
space:
mode:
Diffstat (limited to 'e-util')
-rw-r--r--e-util/e-text-event-processor-emacs-like.c6
-rw-r--r--e-util/e-text-event-processor-types.h3
2 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 d2bf524401..41bcd0c31d 100644
--- a/e-util/e-text-event-processor-emacs-like.c
+++ b/e-util/e-text-event-processor-emacs-like.c
@@ -146,6 +146,9 @@ e_text_event_processor_emacs_like_event (ETextEventProcessor *tep, ETextEventPro
switch (event->type) {
case GDK_BUTTON_PRESS:
if (event->button.button == 1) {
+ command.action = E_TEP_GRAB;
+ command.time = event->button.time;
+ gtk_signal_emit_by_name (GTK_OBJECT (tep), "command", &command);
if (event->button.state & GDK_SHIFT_MASK)
command.action = E_TEP_SELECT;
else
@@ -158,6 +161,9 @@ e_text_event_processor_emacs_like_event (ETextEventProcessor *tep, ETextEventPro
break;
case GDK_BUTTON_RELEASE:
if (event->button.button == 1) {
+ command.action = E_TEP_UNGRAB;
+ command.time = event->button.time;
+ gtk_signal_emit_by_name (GTK_OBJECT (tep), "command", &command);
command.time = event->button.time;
tep_el->mouse_down = FALSE;
} else if (event->button.button == 2) {
diff --git a/e-util/e-text-event-processor-types.h b/e-util/e-text-event-processor-types.h
index eb8e0d4a50..32a39bf0c0 100644
--- a/e-util/e-text-event-processor-types.h
+++ b/e-util/e-text-event-processor-types.h
@@ -82,6 +82,9 @@ enum _ETextEventProcessorCommandAction {
E_TEP_GET_SELECTION,
E_TEP_SET_SELECT_BY_WORD,
E_TEP_ACTIVATE,
+
+ E_TEP_GRAB,
+ E_TEP_UNGRAB,
E_TEP_NOP
};