aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authortlatorre <tlatorre@uchicago.edu>2022-11-12 14:06:11 -0600
committertlatorre <tlatorre@uchicago.edu>2022-11-12 14:06:11 -0600
commitb2d44af7d36f31e7497539ef9199d17b3ed519dd (patch)
tree4bb6cbd17df3d4624f079d7e068a4bcce1a8e8f5
parentcd8b13eddec7a01b9c98efa81f6ff14df068cd72 (diff)
downloadmoji-b2d44af7d36f31e7497539ef9199d17b3ed519dd.tar.gz
moji-b2d44af7d36f31e7497539ef9199d17b3ed519dd.tar.bz2
moji-b2d44af7d36f31e7497539ef9199d17b3ed519dd.zip
update code so right click is same as backspace
-rw-r--r--vito.c32
1 files changed, 25 insertions, 7 deletions
diff --git a/vito.c b/vito.c
index 41e763c..2356455 100644
--- a/vito.c
+++ b/vito.c
@@ -138,12 +138,6 @@ void backspace(void)
}
}
-static int pressed(GtkWidget *widget, gpointer data)
-{
- aeGetTime(&pressed_time_sec,&pressed_time_msec);
- return TRUE;
-}
-
static void write_buf(void)
{
GtkTextBuffer *text_buffer;
@@ -159,6 +153,24 @@ static void write_buf(void)
gtk_text_buffer_apply_tag(text_buffer, tag, &start, &end);
}
+static int pressed2(GtkWidget *widget, gpointer data)
+{
+ backspace();
+ write_buf();
+ return TRUE;
+}
+
+static int released2(GtkWidget *widget, gpointer data)
+{
+ return TRUE;
+}
+
+static int pressed(GtkWidget *widget, gpointer data)
+{
+ aeGetTime(&pressed_time_sec,&pressed_time_msec);
+ return TRUE;
+}
+
static int released(GtkWidget *widget, gpointer data)
{
const char *current_char;
@@ -242,6 +254,7 @@ static void activate(GtkApplication *app, gpointer user_data)
GtkCssProvider *provider;
GtkStyleContext *context;
GtkGesture *gesture;
+ GtkGesture *gesture2;
GtkEventController *event_controller;
window = gtk_application_window_new(app);
@@ -250,9 +263,14 @@ static void activate(GtkApplication *app, gpointer user_data)
event_controller = gtk_event_controller_key_new();
g_signal_connect(event_controller, "key-pressed", G_CALLBACK(on_key_press), NULL);
- //gtk_event_controller_set_propagation_phase ((GtkEventController*) event_controller, GTK_PHASE_CAPTURE);
gtk_widget_add_controller(window, event_controller);
+ gesture2 = gtk_gesture_click_new();
+ gtk_gesture_single_set_button(GTK_GESTURE_SINGLE (gesture2), 3);
+ g_signal_connect(gesture2, "pressed", G_CALLBACK(pressed2), NULL);
+ g_signal_connect(gesture2, "released", G_CALLBACK(released2), NULL);
+ gtk_widget_add_controller(window, GTK_EVENT_CONTROLLER(gesture2));
+
gesture = gtk_gesture_click_new();
g_signal_connect(gesture, "pressed", G_CALLBACK(pressed), NULL);
g_signal_connect(gesture, "released", G_CALLBACK(released), NULL);