From f9b061aac8b3498390511f141d4e66c51463b1b4 Mon Sep 17 00:00:00 2001 From: NishiOwO Date: Fri, 17 Oct 2025 19:20:03 +0000 Subject: [PATCH] j git-svn-id: http://svn2.nishi.boats/svn/milsko/trunk@402 b9cfdab3-6d41-4d17-bbe4-086880011989 --- include/Mw/LowLevel.h | 3 ++- src/widget/entry.c | 2 +- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/include/Mw/LowLevel.h b/include/Mw/LowLevel.h index c0a1617..056c216 100644 --- a/include/Mw/LowLevel.h +++ b/include/Mw/LowLevel.h @@ -37,8 +37,9 @@ typedef void* MwLLPixmap; #define MwLLDispatch(x, y, z) \ if(x->handler != NULL && x->handler->y != NULL) x->handler->y(x, z) +#define MwLLKeyMask (1 << 31) enum MwLLKeyEnum { - MwLLKeyBackSpace = (1 << 31) | 1, + MwLLKeyBackSpace = MwLLKeyMask | 1, MwLLKeyLeft, MwLLKeyRight, MwLLKeyUp, diff --git a/src/widget/entry.c b/src/widget/entry.c index 79ebfaf..20162cc 100644 --- a/src/widget/entry.c +++ b/src/widget/entry.c @@ -100,7 +100,7 @@ static void key(MwWidget handle, int code) { } else if(code == MwLLKeyRight) { if(t->cursor == MwUTF8Length(str)) return; t->cursor++; - } else { + } else if(!(code & MwLLKeyMask)) { int incr = 0; out = malloc(strlen(str) + 5 + 1); incr += MwUTF8Copy(str, 0, out, 0, t->cursor);