diff options
Diffstat (limited to 'frontends')
-rw-r--r-- | frontends/amiga/gui.c | 49 | ||||
-rw-r--r-- | frontends/atari/gui.c | 45 | ||||
-rw-r--r-- | frontends/beos/window.cpp | 52 | ||||
-rw-r--r-- | frontends/framebuffer/gui.c | 37 | ||||
-rw-r--r-- | frontends/gtk/window.c | 52 | ||||
-rw-r--r-- | frontends/monkey/browser.c | 48 | ||||
-rw-r--r-- | frontends/riscos/window.c | 57 | ||||
-rw-r--r-- | frontends/windows/window.c | 38 |
8 files changed, 328 insertions, 50 deletions
diff --git a/frontends/amiga/gui.c b/frontends/amiga/gui.c index c2fec1b83..995ec4c4d 100644 --- a/frontends/amiga/gui.c +++ b/frontends/amiga/gui.c @@ -6284,6 +6284,48 @@ static char *ami_gui_get_user_dir(STRPTR current_user) } +/** + * process miscellaneous window events + * + * \param gw The window receiving the event. + * \param event The event code. + * \return NSERROR_OK when processed ok + */ +static nserror +gui_window_event(struct gui_window *gw, enum gui_window_event event) +{ + switch (event) { + case GW_EVENT_UPDATE_EXTENT: + gui_window_update_extent(gw); + break; + + case GW_EVENT_REMOVE_CARET: + gui_window_remove_caret(gw); + break; + + case GW_EVENT_NEW_CONTENT: + gui_window_new_content(gw); + break; + + case GW_EVENT_START_SELECTION: + gui_start_selection(gw); + break; + + case GW_EVENT_START_THROBBER: + gui_window_start_throbber(gw); + break; + + case GW_EVENT_STOP_THROBBER: + gui_window_stop_throbber(gw); + break; + + default: + break; + } + return NSERROR_OK; +} + + static struct gui_window_table amiga_window_table = { .create = gui_window_create, .destroy = gui_window_destroy, @@ -6291,28 +6333,23 @@ static struct gui_window_table amiga_window_table = { .get_scroll = gui_window_get_scroll, .set_scroll = gui_window_set_scroll, .get_dimensions = gui_window_get_dimensions, - .update_extent = gui_window_update_extent, + .event = gui_window_event, .set_icon = gui_window_set_icon, .set_title = gui_window_set_title, .set_url = gui_window_set_url, .set_status = gui_window_set_status, .place_caret = gui_window_place_caret, - .remove_caret = gui_window_remove_caret, .drag_start = gui_window_drag_start, - .new_content = gui_window_new_content, .create_form_select_menu = gui_create_form_select_menu, .file_gadget_open = gui_file_gadget_open, .drag_save_object = gui_drag_save_object, .drag_save_selection = gui_drag_save_selection, - .start_selection = gui_start_selection, .console_log = gui_window_console_log, /* from theme */ .set_pointer = gui_window_set_pointer, - .start_throbber = gui_window_start_throbber, - .stop_throbber = gui_window_stop_throbber, /* from download */ .save_link = gui_window_save_link, diff --git a/frontends/atari/gui.c b/frontends/atari/gui.c index 64e83fc8f..e55271c10 100644 --- a/frontends/atari/gui.c +++ b/frontends/atari/gui.c @@ -1040,6 +1040,45 @@ static void gui_init(int argc, char** argv) toolbar_init(); } + +/** + * process miscellaneous window events + * + * \param gw The window receiving the event. + * \param event The event code. + * \return NSERROR_OK when processed ok + */ +static nserror +gui_window_event(struct gui_window *gw, enum gui_window_event event) +{ + switch (event) { + case GW_EVENT_UPDATE_EXTENT: + gui_window_update_extent(gw); + break; + + case GW_EVENT_REMOVE_CARET: + gui_window_remove_caret(gw); + break; + + case GW_EVENT_NEW_CONTENT: + gui_window_new_content(gw); + break; + + case GW_EVENT_START_THROBBER: + gui_window_start_throbber(gw); + break; + + case GW_EVENT_STOP_THROBBER: + gui_window_stop_throbber(gw); + break; + + default: + break; + } + return NSERROR_OK; +} + + static struct gui_window_table atari_window_table = { .create = gui_window_create, .destroy = gui_window_destroy, @@ -1047,7 +1086,7 @@ static struct gui_window_table atari_window_table = { .get_scroll = gui_window_get_scroll, .set_scroll = gui_window_set_scroll, .get_dimensions = gui_window_get_dimensions, - .update_extent = gui_window_update_extent, + .event = gui_window_event, .set_title = gui_window_set_title, .set_url = gui_window_set_url, @@ -1055,10 +1094,6 @@ static struct gui_window_table atari_window_table = { .set_status = atari_window_set_status, .set_pointer = gui_window_set_pointer, .place_caret = gui_window_place_caret, - .remove_caret = gui_window_remove_caret, - .new_content = gui_window_new_content, - .start_throbber = gui_window_start_throbber, - .stop_throbber = gui_window_stop_throbber, }; static struct gui_clipboard_table atari_clipboard_table = { diff --git a/frontends/beos/window.cpp b/frontends/beos/window.cpp index e330a825a..93555ee8e 100644 --- a/frontends/beos/window.cpp +++ b/frontends/beos/window.cpp @@ -1348,6 +1348,49 @@ gui_window_get_dimensions(struct gui_window *g, int *width, int *height) return NSERROR_OK; } + +/** + * process miscellaneous window events + * + * \param gw The window receiving the event. + * \param event The event code. + * \return NSERROR_OK when processed ok + */ +static nserror +gui_window_event(struct gui_window *gw, enum gui_window_event event) +{ + switch (event) { + case GW_EVENT_UPDATE_EXTENT: + gui_window_update_extent(gw); + break; + + case GW_EVENT_REMOVE_CARET: + gui_window_remove_caret(gw); + break; + + case GW_EVENT_NEW_CONTENT: + gui_window_new_content(gw); + break; + + case GW_EVENT_START_SELECTION: + gui_start_selection(gw); + break; + + case GW_EVENT_START_THROBBER: + gui_window_start_throbber(gw); + break; + + case GW_EVENT_STOP_THROBBER: + gui_window_stop_throbber(gw); + break; + + default: + break; + } + return NSERROR_OK; +} + + static struct gui_window_table window_table = { gui_window_create, gui_window_destroy, @@ -1355,7 +1398,7 @@ static struct gui_window_table window_table = { gui_window_get_scroll, gui_window_set_scroll, gui_window_get_dimensions, - gui_window_update_extent, + gui_window_event, /* from scaffold */ gui_window_set_title, @@ -1364,18 +1407,13 @@ static struct gui_window_table window_table = { gui_window_set_status, gui_window_set_pointer, gui_window_place_caret, - gui_window_remove_caret, - gui_window_start_throbber, - gui_window_stop_throbber, NULL, //drag_start NULL, //save_link - NULL, //scroll_start - gui_window_new_content, NULL, //create_form_select_menu NULL, //file_gadget_open NULL, //drag_save_object NULL, //drag_save_selection - gui_start_selection + NULL //console_log }; struct gui_window_table *beos_window_table = &window_table; diff --git a/frontends/framebuffer/gui.c b/frontends/framebuffer/gui.c index 914187ba6..74d8b4c5a 100644 --- a/frontends/framebuffer/gui.c +++ b/frontends/framebuffer/gui.c @@ -2085,6 +2085,38 @@ gui_window_remove_caret(struct gui_window *g) } } +/** + * process miscellaneous window events + * + * \param gw The window receiving the event. + * \param event The event code. + * \return NSERROR_OK when processed ok + */ +static nserror +gui_window_event(struct gui_window *gw, enum gui_window_event event) +{ + switch (event) { + case GW_EVENT_UPDATE_EXTENT: + gui_window_update_extent(gw); + break; + + case GW_EVENT_REMOVE_CARET: + gui_window_remove_caret(gw); + break; + + case GW_EVENT_START_THROBBER: + gui_window_start_throbber(gw); + break; + + case GW_EVENT_STOP_THROBBER: + gui_window_stop_throbber(gw); + break; + + default: + break; + } + return NSERROR_OK; +} static struct gui_window_table framebuffer_window_table = { .create = gui_window_create, @@ -2093,15 +2125,12 @@ static struct gui_window_table framebuffer_window_table = { .get_scroll = gui_window_get_scroll, .set_scroll = gui_window_set_scroll, .get_dimensions = gui_window_get_dimensions, - .update_extent = gui_window_update_extent, + .event = gui_window_event, .set_url = gui_window_set_url, .set_status = gui_window_set_status, .set_pointer = gui_window_set_pointer, .place_caret = gui_window_place_caret, - .remove_caret = gui_window_remove_caret, - .start_throbber = gui_window_start_throbber, - .stop_throbber = gui_window_stop_throbber, }; diff --git a/frontends/gtk/window.c b/frontends/gtk/window.c index 766ae4173..6bf777cbe 100644 --- a/frontends/gtk/window.c +++ b/frontends/gtk/window.c @@ -501,7 +501,7 @@ static gboolean nsgtk_window_keypress_event(GtkWidget *widget, { struct gui_window *g = data; uint32_t nskey; - + if (gtk_im_context_filter_keypress(g->input_method, event)) return TRUE; @@ -617,7 +617,7 @@ static gboolean nsgtk_window_keyrelease_event(GtkWidget *widget, GdkEventKey *event, gpointer data) { struct gui_window *g = data; - + return gtk_im_context_filter_keypress(g->input_method, event); } @@ -1288,7 +1288,7 @@ gui_window_file_gadget_open(struct gui_window *g, NULL); NSLOG(netsurf, INFO, "*** open dialog: %p", dialog); - + int ret = gtk_dialog_run(GTK_DIALOG(dialog)); NSLOG(netsurf, INFO, "*** return value: %d", ret); if (ret == GTK_RESPONSE_ACCEPT) { @@ -1296,7 +1296,7 @@ gui_window_file_gadget_open(struct gui_window *g, filename = gtk_file_chooser_get_filename( GTK_FILE_CHOOSER(dialog)); - + browser_window_set_gadget_filename(g->bw, gadget, filename); g_free(filename); @@ -1305,6 +1305,44 @@ gui_window_file_gadget_open(struct gui_window *g, gtk_widget_destroy(dialog); } + +/** + * process miscellaneous window events + * + * \param gw The window receiving the event. + * \param event The event code. + * \return NSERROR_OK when processed ok + */ +static nserror +gui_window_event(struct gui_window *gw, enum gui_window_event event) +{ + switch (event) { + case GW_EVENT_UPDATE_EXTENT: + gui_window_update_extent(gw); + break; + + case GW_EVENT_REMOVE_CARET: + gui_window_remove_caret(gw); + break; + + case GW_EVENT_START_SELECTION: + gui_window_start_selection(gw); + break; + + case GW_EVENT_START_THROBBER: + gui_window_start_throbber(gw); + break; + + case GW_EVENT_STOP_THROBBER: + gui_window_stop_throbber(gw); + break; + + default: + break; + } + return NSERROR_OK; +} + static struct gui_window_table window_table = { .create = gui_window_create, .destroy = gui_window_destroy, @@ -1312,22 +1350,18 @@ static struct gui_window_table window_table = { .get_scroll = gui_window_get_scroll, .set_scroll = gui_window_set_scroll, .get_dimensions = gui_window_get_dimensions, - .update_extent = gui_window_update_extent, + .event = gui_window_event, .set_icon = gui_window_set_icon, .set_status = gui_window_set_status, .set_pointer = gui_window_set_pointer, .place_caret = gui_window_place_caret, - .remove_caret = gui_window_remove_caret, .create_form_select_menu = gui_window_create_form_select_menu, .file_gadget_open = gui_window_file_gadget_open, - .start_selection = gui_window_start_selection, /* from scaffold */ .set_title = nsgtk_window_set_title, .set_url = gui_window_set_url, - .start_throbber = gui_window_start_throbber, - .stop_throbber = gui_window_stop_throbber, }; struct gui_window_table *nsgtk_window_table = &window_table; diff --git a/frontends/monkey/browser.c b/frontends/monkey/browser.c index b6919940b..26ae09028 100644 --- a/frontends/monkey/browser.c +++ b/frontends/monkey/browser.c @@ -683,6 +683,47 @@ monkey_window_handle_command(int argc, char **argv) } +/** + * process miscellaneous window events + * + * \param gw The window receiving the event. + * \param event The event code. + * \return NSERROR_OK when processed ok + */ +static nserror +gui_window_event(struct gui_window *gw, enum gui_window_event event) +{ + switch (event) { + case GW_EVENT_UPDATE_EXTENT: + gui_window_update_extent(gw); + break; + + case GW_EVENT_REMOVE_CARET: + gui_window_remove_caret(gw); + break; + + case GW_EVENT_SCROLL_START: + gui_window_scroll_start(gw); + break; + + case GW_EVENT_NEW_CONTENT: + gui_window_new_content(gw); + break; + + case GW_EVENT_START_THROBBER: + gui_window_start_throbber(gw); + break; + + case GW_EVENT_STOP_THROBBER: + gui_window_stop_throbber(gw); + break; + + default: + break; + } + return NSERROR_OK; +} + static struct gui_window_table window_table = { .create = gui_window_create, .destroy = gui_window_destroy, @@ -690,7 +731,7 @@ static struct gui_window_table window_table = { .get_scroll = gui_window_get_scroll, .set_scroll = gui_window_set_scroll, .get_dimensions = gui_window_get_dimensions, - .update_extent = gui_window_update_extent, + .event = gui_window_event, .set_title = gui_window_set_title, .set_url = gui_window_set_url, @@ -698,13 +739,8 @@ static struct gui_window_table window_table = { .set_status = gui_window_set_status, .set_pointer = gui_window_set_pointer, .place_caret = gui_window_place_caret, - .remove_caret = gui_window_remove_caret, .drag_start = gui_window_drag_start, .save_link = gui_window_save_link, - .scroll_start = gui_window_scroll_start, - .new_content = gui_window_new_content, - .start_throbber = gui_window_start_throbber, - .stop_throbber = gui_window_stop_throbber, .console_log = gui_window_console_log, }; diff --git a/frontends/riscos/window.c b/frontends/riscos/window.c index e2238ac5b..96346f800 100644 --- a/frontends/riscos/window.c +++ b/frontends/riscos/window.c @@ -4135,6 +4135,53 @@ ro_gui_window_import_text(struct gui_window *g, const char *filename) /** + * process miscellaneous window events + * + * \param gw The window receiving the event. + * \param event The event code. + * \return NSERROR_OK when processed ok + */ +static nserror +ro_gui_window_event(struct gui_window *gw, enum gui_window_event event) +{ + switch (event) { + case GW_EVENT_UPDATE_EXTENT: + gui_window_update_extent(gw); + break; + + case GW_EVENT_REMOVE_CARET: + gui_window_remove_caret(gw); + break; + + case GW_EVENT_SCROLL_START: + gui_window_scroll_start(gw); + break; + + case GW_EVENT_NEW_CONTENT: + gui_window_new_content(gw); + break; + + case GW_EVENT_START_THROBBER: + gui_window_start_throbber(gw); + break; + + case GW_EVENT_STOP_THROBBER: + gui_window_stop_throbber(gw); + break; + + case GW_EVENT_START_SELECTION: + /* from textselection */ + gui_start_selection(gw); + break; + + default: + break; + } + return NSERROR_OK; +} + + +/** * RISC OS browser window operation table */ static struct gui_window_table window_table = { @@ -4144,7 +4191,7 @@ static struct gui_window_table window_table = { .get_scroll = gui_window_get_scroll, .set_scroll = gui_window_set_scroll, .get_dimensions = gui_window_get_dimensions, - .update_extent = gui_window_update_extent, + .event = ro_gui_window_event, .set_title = gui_window_set_title, .set_url = ro_gui_window_set_url, @@ -4152,21 +4199,13 @@ static struct gui_window_table window_table = { .set_status = riscos_window_set_status, .set_pointer = gui_window_set_pointer, .place_caret = gui_window_place_caret, - .remove_caret = gui_window_remove_caret, .save_link = gui_window_save_link, .drag_start = gui_window_drag_start, - .scroll_start = gui_window_scroll_start, - .new_content = gui_window_new_content, - .start_throbber = gui_window_start_throbber, - .stop_throbber = gui_window_stop_throbber, .create_form_select_menu = gui_window_create_form_select_menu, /* from save */ .drag_save_object = gui_drag_save_object, .drag_save_selection =gui_drag_save_selection, - - /* from textselection */ - .start_selection = gui_start_selection, }; struct gui_window_table *riscos_window_table = &window_table; diff --git a/frontends/windows/window.c b/frontends/windows/window.c index e1254d8f2..05d7a54d9 100644 --- a/frontends/windows/window.c +++ b/frontends/windows/window.c @@ -1694,6 +1694,39 @@ static void win32_window_stop_throbber(struct gui_window *w) /** + * process miscellaneous window events + * + * \param gw The window receiving the event. + * \param event The event code. + * \return NSERROR_OK when processed ok + */ +static nserror +win32_window_event(struct gui_window *gw, enum gui_window_event event) +{ + switch (event) { + case GW_EVENT_UPDATE_EXTENT: + win32_window_update_extent(gw); + break; + + case GW_EVENT_REMOVE_CARET: + win32_window_remove_caret(gw); + break; + + case GW_EVENT_START_THROBBER: + win32_window_start_throbber(gw); + break; + + case GW_EVENT_STOP_THROBBER: + win32_window_stop_throbber(gw); + break; + + default: + break; + } + return NSERROR_OK; +} + +/** * win32 frontend browser window handling operation table */ static struct gui_window_table window_table = { @@ -1703,16 +1736,13 @@ static struct gui_window_table window_table = { .get_scroll = win32_window_get_scroll, .set_scroll = win32_window_set_scroll, .get_dimensions = win32_window_get_dimensions, - .update_extent = win32_window_update_extent, + .event = win32_window_event, .set_title = win32_window_set_title, .set_url = win32_window_set_url, .set_status = win32_window_set_status, .set_pointer = win32_window_set_pointer, .place_caret = win32_window_place_caret, - .remove_caret = win32_window_remove_caret, - .start_throbber = win32_window_start_throbber, - .stop_throbber = win32_window_stop_throbber, }; struct gui_window_table *win32_window_table = &window_table; |