From b27f3e5ac46bb85f605e27516c94d64a089c66c0 Mon Sep 17 00:00:00 2001 From: Michael Drake Date: Fri, 24 Oct 2014 17:57:15 +0100 Subject: Open select menu via content msg, instead of breaking encapsulation. Fixes bw deref and browser_private.h #include in render/ --- render/html_interaction.c | 14 +++----------- render/html_object.c | 1 + 2 files changed, 4 insertions(+), 11 deletions(-) (limited to 'render') diff --git a/render/html_interaction.c b/render/html_interaction.c index 7e78fc034..781c9c1de 100644 --- a/render/html_interaction.c +++ b/render/html_interaction.c @@ -55,13 +55,6 @@ #include "render/imagemap.h" #include "render/search.h" -/* TODO: - * This is currently needed here because the forms stuff (select menu - * specifically) is badly designed. But I'd rather it were here in the - * core than in all the front ends. We should fix this so we communicate - * with the browser window layer via the content message system. -- tlsa */ -#include - /** * Get pointer shape for given box * @@ -665,10 +658,9 @@ void html_mouse_action(struct content *c, struct browser_window *bw, c); pointer = BROWSER_POINTER_DEFAULT; } else if (mouse & BROWSER_MOUSE_CLICK_1) { - struct browser_window *rbw = - browser_window_get_root(bw); - guit->browser->create_form_select_menu( - rbw->window, gadget); + msg_data.select_menu.gadget = gadget; + content_broadcast(c, CONTENT_MSG_SELECTMENU, + msg_data); } break; case GADGET_CHECKBOX: diff --git a/render/html_object.c b/render/html_object.c index d048253a7..455733d0a 100644 --- a/render/html_object.c +++ b/render/html_object.c @@ -375,6 +375,7 @@ html_object_callback(hlcache_handle *object, case CONTENT_MSG_SAVELINK: case CONTENT_MSG_POINTER: + case CONTENT_MSG_SELECTMENU: case CONTENT_MSG_GADGETCLICK: /* These messages are for browser window layer. * we're not interested, so pass them on. */ -- cgit v1.2.3