summaryrefslogtreecommitdiff
path: root/atari/rootwin.c
diff options
context:
space:
mode:
authorOle Loots <ole@monochrom.net>2013-04-09 00:40:21 +0200
committerOle Loots <ole@monochrom.net>2013-04-09 00:40:21 +0200
commit3fa929938bbb151d9dbc048d2424c7b2dd90a5ce (patch)
tree674b0cb154ec2299f6f47e11db69b0ba5a46daa2 /atari/rootwin.c
parentd64416774d94e0b500dad08bea1459d2f559f669 (diff)
downloadnetsurf-3fa929938bbb151d9dbc048d2424c7b2dd90a5ce.tar.gz
netsurf-3fa929938bbb151d9dbc048d2424c7b2dd90a5ce.tar.bz2
Fix duplicate Ctrl+V (and other shortcuts) key processing,
by catching event callback return value.
Diffstat (limited to 'atari/rootwin.c')
-rwxr-xr-xatari/rootwin.c11
1 files changed, 10 insertions, 1 deletions
diff --git a/atari/rootwin.c b/atari/rootwin.c
index 5b66a25de..775889a4a 100755
--- a/atari/rootwin.c
+++ b/atari/rootwin.c
@@ -174,6 +174,7 @@ static short handle_event(GUIWIN *win, EVMULT_OUT *ev_out, short msg[8])
uint16_t nkc = gem_to_norm( (short)ev_out->emo_kmeta,
(short)ev_out->emo_kreturn);
retval = on_window_key_input(data->rootwin, nkc);
+ // printf("on_window_key_input: %d\n", retval);
}
if ((ev_out->emo_events & MU_BUTTON) != 0) {
@@ -745,7 +746,7 @@ void window_redraw_favicon(ROOTWIN *rootwin, GRECT *clip)
objc_draw(tree, 0, 8, clip->g_x, clip->g_y, clip->g_w, clip->g_h);
} else {
// TODO: consider the clipping rectangle
- printf("window_redraw_favicon image %p\n", rootwin->icon);
+ //printf("window_redraw_favicon image %p\n", rootwin->icon);
struct rect work_clip = { 0,0,work.g_w,work.g_h };
int xoff=0;
if (work.g_w > work.g_h) {
@@ -1256,37 +1257,45 @@ static bool on_content_keypress(struct browser_window *bw, unsigned short nkc)
case KEY_LINE_START:
gemtk_wm_scroll(w, GEMTK_WM_HSLIDER, -(g.g_w/slid->x_unit_px),
false);
+ r = true;
break;
case KEY_LINE_END:
gemtk_wm_scroll(w, GEMTK_WM_HSLIDER, (g.g_w/slid->x_unit_px),
false);
+ r = true;
break;
case KEY_PAGE_UP:
gemtk_wm_scroll(w, GEMTK_WM_VSLIDER, (g.g_h/slid->y_unit_px),
false);
+ r = true;
break;
case KEY_PAGE_DOWN:
gemtk_wm_scroll(w, GEMTK_WM_VSLIDER, (g.g_h/slid->y_unit_px),
false);
+ r = true;
break;
case KEY_RIGHT:
gemtk_wm_scroll(w, GEMTK_WM_HSLIDER, -1, false);
+ r = true;
break;
case KEY_LEFT:
gemtk_wm_scroll(w, GEMTK_WM_HSLIDER, 1, false);
+ r = true;
break;
case KEY_UP:
gemtk_wm_scroll(w, GEMTK_WM_VSLIDER, -1, false);
+ r = true;
break;
case KEY_DOWN:
gemtk_wm_scroll(w, GEMTK_WM_VSLIDER, 1, false);
+ r = true;
break;
default: