From f64c8ed9ef976618d36f7e07285e4755c0c9c11c Mon Sep 17 00:00:00 2001 From: Steve Fryatt Date: Mon, 30 Dec 2013 16:20:37 +0000 Subject: Update the URL hotlist icon when entries are deleted from the hotlist. This does not currently spot entries which are edited. --- riscos/hotlist.c | 2 ++ riscos/toolbar.c | 15 +++++++++++++++ riscos/toolbar.h | 7 +++++++ 3 files changed, 24 insertions(+) diff --git a/riscos/hotlist.c b/riscos/hotlist.c index 3350ffb8b..714744043 100644 --- a/riscos/hotlist.c +++ b/riscos/hotlist.c @@ -241,6 +241,7 @@ void ro_gui_hotlist_toolbar_click(button_bar_action action) switch (action) { case TOOLBAR_BUTTON_DELETE: hotlist_keypress(KEY_DELETE_LEFT); + ro_toolbar_update_all_hotlists(); break; case TOOLBAR_BUTTON_EXPAND: @@ -410,6 +411,7 @@ bool ro_gui_hotlist_menu_select(wimp_w w, wimp_i i, wimp_menu *menu, return true; case TREE_SELECTION_DELETE: hotlist_keypress(KEY_DELETE_LEFT); + ro_toolbar_update_all_hotlists(); return true; case TREE_SELECT_ALL: hotlist_keypress(KEY_SELECT_ALL); diff --git a/riscos/toolbar.c b/riscos/toolbar.c index d0c68c2b7..93c4438c3 100644 --- a/riscos/toolbar.c +++ b/riscos/toolbar.c @@ -1618,6 +1618,21 @@ const char *ro_toolbar_get_url(struct toolbar *toolbar) } +/* This is an exported interface documented in toolbar.h */ + +void ro_toolbar_update_all_hotlists(void) +{ + struct toolbar *bar; + + bar = ro_toolbar_bars; + while (bar != NULL) { + ro_toolbar_update_hotlist(bar); + + bar = bar->next; + } +} + + /* This is an exported interface documented in toolbar.h */ void ro_toolbar_update_hotlist(struct toolbar *toolbar) diff --git a/riscos/toolbar.h b/riscos/toolbar.h index e568b8c23..336f95d15 100644 --- a/riscos/toolbar.h +++ b/riscos/toolbar.h @@ -385,6 +385,13 @@ void ro_toolbar_set_url(struct toolbar *toolbar, const char *url, const char *ro_toolbar_get_url(struct toolbar *toolbar); +/** + * Update the state of the URL Bar hotlist icons in all open toolbars. + */ + +void ro_toolbar_update_all_hotlists(void); + + /** * Update the state of a toolbar's URL Bar hotlist icon to reflect any changes * to the URL or the hotlist contents. -- cgit v1.2.3