diff options
author | Michael Drake <tlsa@netsurf-browser.org> | 2012-08-16 16:14:15 +0100 |
---|---|---|
committer | Michael Drake <tlsa@netsurf-browser.org> | 2012-08-16 16:14:15 +0100 |
commit | 6daf6c178df8d0b61cc9d7a43a646d5dd43bbab0 (patch) | |
tree | d650ff031ffd37fb79b363b18f7ba530531c232e | |
parent | 195a77a4cd5a0dde92821795caf362b1fef3729b (diff) | |
download | netsurf-6daf6c178df8d0b61cc9d7a43a646d5dd43bbab0.tar.gz netsurf-6daf6c178df8d0b61cc9d7a43a646d5dd43bbab0.tar.bz2 |
Frame drag start function can take child bw. Don't need to get root bw in html handler. Avoids bw dereferences.
-rw-r--r-- | desktop/frames.c | 8 | ||||
-rw-r--r-- | render/html_interaction.c | 18 |
2 files changed, 13 insertions, 13 deletions
diff --git a/desktop/frames.c b/desktop/frames.c index 591342a89..836108aa3 100644 --- a/desktop/frames.c +++ b/desktop/frames.c @@ -933,5 +933,11 @@ bool browser_window_frame_resize_start(struct browser_window *bw, browser_mouse_state mouse, int x, int y, gui_pointer_shape *pointer) { - return browser_window_resize_frames(bw, mouse, x, y, pointer); + struct browser_window *root = browser_window_get_root(bw); + int offx, offy; + + browser_window_get_position(bw, true, &offx, &offy); + + return browser_window_resize_frames(root, mouse, + x + offx, y + offy, pointer); } diff --git a/render/html_interaction.c b/render/html_interaction.c index 016e2a198..4cdff7608 100644 --- a/render/html_interaction.c +++ b/render/html_interaction.c @@ -581,19 +581,13 @@ void html_mouse_action(struct content *c, struct browser_window *bw, bool done = false; /* frame resizing */ - if (bw->parent) { - struct browser_window *parent; - for (parent = bw->parent; parent->parent; - parent = parent->parent); - if (browser_window_frame_resize_start(parent, mouse, - x + bw->x, y + bw->y, - &pointer)) { - if (mouse & (BROWSER_MOUSE_DRAG_1 | - BROWSER_MOUSE_DRAG_2)) { - status = messages_get("FrameDrag"); - } - done = true; + if (browser_window_frame_resize_start(bw, mouse, x, y, + &pointer)) { + if (mouse & (BROWSER_MOUSE_DRAG_1 | + BROWSER_MOUSE_DRAG_2)) { + status = messages_get("FrameDrag"); } + done = true; } /* if clicking in the main page, remove the selection from any |