summaryrefslogtreecommitdiff
path: root/render/html.c
diff options
context:
space:
mode:
authorMichael Drake <tlsa@netsurf-browser.org>2013-02-08 13:22:53 +0000
committerMichael Drake <tlsa@netsurf-browser.org>2013-02-08 13:22:53 +0000
commit4747bbbfb21d645f950149bbe173a2618cd3eba9 (patch)
tree531e65e9dab07fbd25f827bea1fc43f7c0e7f7de /render/html.c
parent9ec663f3a95242fe42718d105c478f19be554fd3 (diff)
downloadnetsurf-4747bbbfb21d645f950149bbe173a2618cd3eba9.tar.gz
netsurf-4747bbbfb21d645f950149bbe173a2618cd3eba9.tar.bz2
HTML drags now go via content msg.
Diffstat (limited to 'render/html.c')
-rw-r--r--render/html.c27
1 files changed, 25 insertions, 2 deletions
diff --git a/render/html.c b/render/html.c
index 85e377095..c135db198 100644
--- a/render/html.c
+++ b/render/html.c
@@ -343,8 +343,8 @@ html_create_html_data(html_content *c, const http_parameter *params)
c->iframe = NULL;
c->page = NULL;
c->font_func = &nsfont;
- c->scrollbar = NULL;
- c->textarea = NULL;
+ c->drag_type = HTML_DRAG_NONE;
+ c->drag_owner.no_owner = true;
c->scripts_count = 0;
c->scripts = NULL;
c->jscontext = NULL;
@@ -1308,6 +1308,29 @@ html_object_callback(hlcache_handle *object,
content_broadcast(&c->base, event->type, event->data);
break;
+ case CONTENT_MSG_DRAG:
+ {
+ html_drag_type drag_type = HTML_DRAG_NONE;
+ union html_drag_owner drag_owner;
+ drag_owner.content = box;
+
+ switch (event->data.drag.type) {
+ case CONTENT_DRAG_NONE:
+ drag_type = HTML_DRAG_NONE;
+ drag_owner.no_owner = true;
+ break;
+ case CONTENT_DRAG_SCROLL:
+ drag_type = HTML_DRAG_CONTENT_SCROLL;
+ break;
+ case CONTENT_DRAG_SELECTION:
+ drag_type = HTML_DRAG_CONTENT_SELECTION;
+ break;
+ }
+ html_set_drag_type(c, drag_type, drag_owner,
+ event->data.drag.rect);
+ }
+ break;
+
default:
assert(0);
}