diff options
Diffstat (limited to 'src')
-rwxr-xr-x | src/history-dialog.c | 15 | ||||
-rwxr-xr-x | src/toolbar.c | 15 | ||||
-rw-r--r-- | src/toolbar.h | 2 |
3 files changed, 32 insertions, 0 deletions
diff --git a/src/history-dialog.c b/src/history-dialog.c index 3ac3be2c7..4c32327a3 100755 --- a/src/history-dialog.c +++ b/src/history-dialog.c @@ -27,6 +27,7 @@ #include "eggtreemodelfilter.h" #include "eggtreemultidnd.h" #include "ephy-tree-model-sort.h" +#include "toolbar.h" #include <gtk/gtktreeview.h> #include <gtk/gtktreestore.h> @@ -474,5 +475,19 @@ void history_clear_button_clicked_cb (GtkWidget *button, HistoryDialog *dialog) { + const GList *windows; + Session *session; + + session = ephy_shell_get_session (ephy_shell); + windows = session_get_windows (session); + + for (; windows != NULL; windows = windows->next) + { + Toolbar *t; + + t = ephy_window_get_toolbar (EPHY_WINDOW (windows->data)); + toolbar_clear_location_history (t); + } + ephy_history_clear (dialog->priv->gh); } diff --git a/src/toolbar.c b/src/toolbar.c index 1df62677c..5ae01edc2 100755 --- a/src/toolbar.c +++ b/src/toolbar.c @@ -469,6 +469,21 @@ toolbar_get_location (Toolbar *t) } void +toolbar_clear_location_history (Toolbar *t) +{ + EggAction *action; + GtkWidget *location; + + action = egg_action_group_get_action + (t->priv->action_group, "Location"); + location = ephy_location_action_get_widget + (EPHY_LOCATION_ACTION (action)); + g_return_if_fail (location != NULL); + + ephy_location_entry_clear_history (EPHY_LOCATION_ENTRY (location)); +} + +void toolbar_update_navigation_actions (Toolbar *t, gboolean back, gboolean forward, gboolean up) { EggActionGroup *action_group; diff --git a/src/toolbar.h b/src/toolbar.h index 649156165..ac98f94c4 100644 --- a/src/toolbar.h +++ b/src/toolbar.h @@ -63,6 +63,8 @@ void toolbar_set_location (Toolbar *t, void toolbar_activate_location (Toolbar *t); +void toolbar_clear_location_history (Toolbar *t); + void toolbar_update_favicon (Toolbar *t); void toolbar_update_navigation_actions (Toolbar *t, |