summaryrefslogtreecommitdiff
path: root/riscos/window.c
diff options
context:
space:
mode:
authorJohn-Mark Bell <jmb@netsurf-browser.org>2013-01-22 08:51:58 +0000
committerJohn-Mark Bell <jmb@netsurf-browser.org>2013-01-22 08:51:58 +0000
commit64ae9e8693aaaf09cb4e35b63d029d446ef361b0 (patch)
treeb75a79a6c1bb836905b3ff9ec8e5929d97034055 /riscos/window.c
parentdef45f8e55c7cc88c292a7194454efc73a46b974 (diff)
downloadnetsurf-64ae9e8693aaaf09cb4e35b63d029d446ef361b0.tar.gz
netsurf-64ae9e8693aaaf09cb4e35b63d029d446ef361b0.tar.bz2
Fix paste. Store clipboard as UTF-8 internally, to avoid unnecessary data loss when copying internally.
Diffstat (limited to 'riscos/window.c')
-rw-r--r--riscos/window.c11
1 files changed, 10 insertions, 1 deletions
diff --git a/riscos/window.c b/riscos/window.c
index 535105459..2f8bec614 100644
--- a/riscos/window.c
+++ b/riscos/window.c
@@ -74,6 +74,7 @@
#include "riscos/oslib_pre7.h"
#include "riscos/save.h"
#include "riscos/content-handlers/sprite.h"
+#include "riscos/textselection.h"
#include "riscos/toolbar.h"
#include "riscos/thumbnail.h"
#include "riscos/url_complete.h"
@@ -2600,6 +2601,14 @@ void ro_gui_window_menu_warning(wimp_w w, wimp_i i, wimp_menu *menu,
}
+static void ro_gui_window_paste_cb(void *pw)
+{
+ struct browser_window *bw = pw;
+
+ browser_window_key_press(bw, KEY_PASTE);
+}
+
+
/**
* Handle selections from a browser window menu
*
@@ -2833,7 +2842,7 @@ bool ro_gui_window_menu_select(wimp_w w, wimp_i i, wimp_menu *menu,
browser_window_key_press(bw, KEY_CUT_SELECTION);
break;
case BROWSER_SELECTION_PASTE:
- browser_window_key_press(bw, KEY_PASTE);
+ ro_gui_selection_prepare_paste(w, ro_gui_window_paste_cb, bw);
break;
case BROWSER_SELECTION_ALL:
browser_window_key_press(bw, KEY_SELECT_ALL);