projects
/
rodin
/
chimara.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Placed pager functionality into the idle handler
[rodin/chimara.git]
/
libchimara
/
input.c
diff --git
a/libchimara/input.c
b/libchimara/input.c
index 8b6d4c27662d5296e4b7df1a0ec0caedf40c6b7e..a4511dc57306e6fc2dec661f5496d568b11c8fbf 100644
(file)
--- a/
libchimara/input.c
+++ b/
libchimara/input.c
@@
-417,6
+417,11
@@
on_shutdown_key_press_event(GtkWidget *widget, GdkEventKey *event, winid_t win)
gboolean
on_char_input_key_press_event(GtkWidget *widget, GdkEventKey *event, winid_t win)
{
gboolean
on_char_input_key_press_event(GtkWidget *widget, GdkEventKey *event, winid_t win)
{
+ /* Ignore modifier keys, otherwise the char input will already trigger on
+ the shift key when the user tries to type a capital letter */
+ if(event->is_modifier)
+ return FALSE; /* don't stop the event */
+
glui32 keycode = keyval_to_glk_keycode(event->keyval, win->input_request_type == INPUT_REQUEST_CHARACTER_UNICODE);
ChimaraGlk *glk = CHIMARA_GLK(gtk_widget_get_ancestor(widget, CHIMARA_TYPE_GLK));
glui32 keycode = keyval_to_glk_keycode(event->keyval, win->input_request_type == INPUT_REQUEST_CHARACTER_UNICODE);
ChimaraGlk *glk = CHIMARA_GLK(gtk_widget_get_ancestor(widget, CHIMARA_TYPE_GLK));