summaryrefslogtreecommitdiff
path: root/amiga/clipboard.c
diff options
context:
space:
mode:
Diffstat (limited to 'amiga/clipboard.c')
-rwxr-xr-xamiga/clipboard.c24
1 files changed, 19 insertions, 5 deletions
diff --git a/amiga/clipboard.c b/amiga/clipboard.c
index bf09f5f98..d84add7f2 100755
--- a/amiga/clipboard.c
+++ b/amiga/clipboard.c
@@ -257,17 +257,31 @@ bool gui_copy_to_clipboard(struct selection *s)
void ami_drag_selection(struct selection *s)
{
struct box *text_box;
- ULONG x = s->bw->window->shared->win->MouseX;
- ULONG y = s->bw->window->shared->win->MouseY;
+ ULONG x;
+ ULONG y;
+ struct gui_window_2 *gwin = ami_window_at_pointer();
- if(text_box = ami_text_box_at_point(s->bw->window, &x, &y))
+ if(!gwin)
+ {
+ DisplayBeep(scrn);
+ return;
+ }
+
+ x = gwin->win->MouseX;
+ y = gwin->win->MouseY;
+
+ if(text_box = ami_text_box_at_point(gwin, &x, &y))
{
if(gui_copy_to_clipboard(s))
{
- browser_window_mouse_click(s->bw, BROWSER_MOUSE_PRESS_1, x, y);
- browser_window_key_press(s->bw, KEY_PASTE);
+ browser_window_mouse_click(gwin->bw, BROWSER_MOUSE_PRESS_1, x, y);
+ browser_window_key_press(gwin->bw, KEY_PASTE);
}
}
+ else
+ {
+ DisplayBeep(scrn);
+ }
}
bool ami_easy_clipboard(char *text)