diff options
author | Chris Young <chris@unsatisfactorysoftware.co.uk> | 2009-11-02 23:12:28 +0000 |
---|---|---|
committer | Chris Young <chris@unsatisfactorysoftware.co.uk> | 2009-11-02 23:12:28 +0000 |
commit | 1b89eb8397671707a34aec747ad9384d41bf1dd1 (patch) | |
tree | dfc0dc13ab8ae6c8bba44ecb502cae329e952de0 | |
parent | e5b8264dd84b6450724475be195b92897a09fb91 (diff) | |
download | netsurf-1b89eb8397671707a34aec747ad9384d41bf1dd1.tar.gz netsurf-1b89eb8397671707a34aec747ad9384d41bf1dd1.tar.bz2 |
Basic keyboard scrolling
svn path=/trunk/netsurf/; revision=9658
-rwxr-xr-x | amiga/gui.c | 41 |
1 files changed, 38 insertions, 3 deletions
diff --git a/amiga/gui.c b/amiga/gui.c index 16c50d871..eed917c40 100755 --- a/amiga/gui.c +++ b/amiga/gui.c @@ -1214,10 +1214,13 @@ void ami_handle_msg(void) * key presses. Context menus need to be changed to use MENUVERIFY not RMBTRAP */ switch(nskey) { + case 'a': + browser_window_key_press(gwin->bw, KEY_SELECT_ALL); + break; + case 'c': browser_window_key_press(gwin->bw, KEY_COPY_SELECTION); - browser_window_key_press(gwin->bw, KEY_ESCAPE); - break; + browser_window_key_press(gwin->bw, KEY_CLEAR_SELECTION); case 'v': browser_window_key_press(gwin->bw, KEY_PASTE); break; @@ -1225,7 +1228,39 @@ void ami_handle_msg(void) } else { - browser_window_key_press(gwin->bw, nskey); + if(!browser_window_key_press(gwin->bw, nskey)) + { + gui_window_get_scroll(gwin->bw->window, + &gwin->bw->window->scrollx, + &gwin->bw->window->scrolly); + + switch(nskey) + { + case KEY_UP: + gui_window_set_scroll(gwin->bw->window, + gwin->bw->window->scrollx, + gwin->bw->window->scrolly - 5); + break; + + case KEY_DOWN: + gui_window_set_scroll(gwin->bw->window, + gwin->bw->window->scrollx, + gwin->bw->window->scrolly + 5); + break; + + case KEY_LEFT: + gui_window_set_scroll(gwin->bw->window, + gwin->bw->window->scrollx - 5, + gwin->bw->window->scrolly); + break; + + case KEY_RIGHT: + gui_window_set_scroll(gwin->bw->window, + gwin->bw->window->scrollx + 5, + gwin->bw->window->scrolly); + break; + } + } } break; |