summaryrefslogtreecommitdiffstats
path: root/source/textbox.c
diff options
context:
space:
mode:
Diffstat (limited to 'source/textbox.c')
-rw-r--r--source/textbox.c31
1 files changed, 16 insertions, 15 deletions
diff --git a/source/textbox.c b/source/textbox.c
index 4a456a56..bb784eb8 100644
--- a/source/textbox.c
+++ b/source/textbox.c
@@ -24,6 +24,7 @@
*/
#include <config.h>
+#include <xcb/xcb.h>
#include <X11/X.h>
#include <X11/Xatom.h>
#include <X11/Xlib.h>
@@ -532,7 +533,7 @@ static void textbox_cursor_del_word ( textbox *tb )
// 0 = unhandled
// 1 = handled
// -1 = handled and return pressed (finished)
-int textbox_keypress ( textbox *tb, XEvent *ev, char *pad, int pad_len, KeySym key, Status stat )
+int textbox_keypress ( textbox *tb, xcb_key_press_event_t *ev, char *pad, int pad_len, KeySym key, Status stat )
{
if ( !( tb->flags & TB_EDITABLE ) ) {
return 0;
@@ -541,67 +542,67 @@ int textbox_keypress ( textbox *tb, XEvent *ev, char *pad, int pad_len, KeySym k
tb->blink = 2;
if ( stat == XLookupKeySym || stat == XLookupBoth ) {
// Left or Ctrl-b
- if ( abe_test_action ( MOVE_CHAR_BACK, ev->xkey.state, key ) ) {
+ if ( abe_test_action ( MOVE_CHAR_BACK, ev->state, key ) ) {
textbox_cursor_dec ( tb );
return 2;
}
// Right or Ctrl-F
- else if ( abe_test_action ( MOVE_CHAR_FORWARD, ev->xkey.state, key ) ) {
+ else if ( abe_test_action ( MOVE_CHAR_FORWARD, ev->state, key ) ) {
textbox_cursor_inc ( tb );
return 2;
}
// Ctrl-U: Kill from the beginning to the end of the line.
- else if ( abe_test_action ( CLEAR_LINE, ev->xkey.state, key ) ) {
+ else if ( abe_test_action ( CLEAR_LINE, ev->state, key ) ) {
textbox_text ( tb, "" );
return 1;
}
// Ctrl-A
- else if ( abe_test_action ( MOVE_FRONT, ev->xkey.state, key ) ) {
+ else if ( abe_test_action ( MOVE_FRONT, ev->state, key ) ) {
textbox_cursor ( tb, 0 );
return 2;
}
// Ctrl-E
- else if ( abe_test_action ( MOVE_END, ev->xkey.state, key ) ) {
+ else if ( abe_test_action ( MOVE_END, ev->state, key ) ) {
textbox_cursor_end ( tb );
return 2;
}
// Ctrl-Alt-h
- else if ( abe_test_action ( REMOVE_WORD_BACK, ev->xkey.state, key ) ) {
+ else if ( abe_test_action ( REMOVE_WORD_BACK, ev->state, key ) ) {
textbox_cursor_bkspc_word ( tb );
return 1;
}
// Ctrl-Alt-d
- else if ( abe_test_action ( REMOVE_WORD_FORWARD, ev->xkey.state, key ) ) {
+ else if ( abe_test_action ( REMOVE_WORD_FORWARD, ev->state, key ) ) {
textbox_cursor_del_word ( tb );
return 1;
} // Delete or Ctrl-D
- else if ( abe_test_action ( REMOVE_CHAR_FORWARD, ev->xkey.state, key ) ) {
+ else if ( abe_test_action ( REMOVE_CHAR_FORWARD, ev->state, key ) ) {
textbox_cursor_del ( tb );
return 1;
}
// Alt-B
- else if ( abe_test_action ( MOVE_WORD_BACK, ev->xkey.state, key ) ) {
+ else if ( abe_test_action ( MOVE_WORD_BACK, ev->state, key ) ) {
textbox_cursor_dec_word ( tb );
return 2;
}
// Alt-F
- else if ( abe_test_action ( MOVE_WORD_FORWARD, ev->xkey.state, key ) ) {
+ else if ( abe_test_action ( MOVE_WORD_FORWARD, ev->state, key ) ) {
textbox_cursor_inc_word ( tb );
return 2;
}
// BackSpace, Ctrl-h
- else if ( abe_test_action ( REMOVE_CHAR_BACK, ev->xkey.state, key ) ) {
+ else if ( abe_test_action ( REMOVE_CHAR_BACK, ev->state, key ) ) {
textbox_cursor_bkspc ( tb );
return 1;
}
- else if ( abe_test_action ( ACCEPT_CUSTOM, ev->xkey.state, key ) ) {
+ else if ( abe_test_action ( ACCEPT_CUSTOM, ev->state, key ) ) {
return -2;
}
- else if ( abe_test_action ( ACCEPT_ENTRY_CONTINUE, ev->xkey.state, key ) ) {
+ else if ( abe_test_action ( ACCEPT_ENTRY_CONTINUE, ev->state, key ) ) {
return -3;
}
- else if ( abe_test_action ( ACCEPT_ENTRY, ev->xkey.state, key ) ) {
+ else if ( abe_test_action ( ACCEPT_ENTRY, ev->state, key ) ) {
return -1;
}
}