From 1f8301774c59e539e5fa3e841f53c262554904dd Mon Sep 17 00:00:00 2001 From: Bill Currie Date: Thu, 26 Mar 2020 09:19:22 +0900 Subject: [PATCH] [qwaq] Fix over-consumption of editor events This lets the window scroll again. --- ruamoko/qwaq/qwaq-debugger.r | 26 +++++++++++++++----------- 1 file changed, 15 insertions(+), 11 deletions(-) diff --git a/ruamoko/qwaq/qwaq-debugger.r b/ruamoko/qwaq/qwaq-debugger.r index a90eb1216..d944abcd5 100644 --- a/ruamoko/qwaq/qwaq-debugger.r +++ b/ruamoko/qwaq/qwaq-debugger.r @@ -135,24 +135,28 @@ void traceon() = #0; [TextContext refresh]; } --(void)key_event: (ed_event_t *)_event +static int +key_event (Debugger *self, Editor *file, qwaq_event_t *event) { - Editor *file = _event.editor; - qwaq_event_t *event = _event.event; - if (event.what == qe_mouseclick) { + if (event.what == qe_mouseclick && !(event.mouse.buttons & 0x78)) { printf ("%s\n", [file getWordAt: {event.mouse.x, event.mouse.y}]); - [source_window redraw]; + [self.source_window redraw]; } else if (event.what == qe_keydown) { switch (event.key.code) { case QFK_F7: - qdb_set_trace (debug_target, 1); - qdb_continue (debug_target); - break; - default: - return; + qdb_set_trace (self.debug_target, 1); + qdb_continue (self.debug_target); + return 1; } } - event.what = qe_none; + return 0; +} + +-(void)key_event: (ed_event_t *)event +{ + if (key_event (self, event.editor, event.event)) { + event.event.what = qe_none; + } } -handleDebugEvent