diff --git a/include/ssd.h b/include/ssd.h index 21ef6d87..06a3e1d3 100644 --- a/include/ssd.h +++ b/include/ssd.h @@ -150,7 +150,6 @@ void ssd_create(struct view *view); void ssd_set_active(struct view *view, bool active); void ssd_update_title(struct view *view); void ssd_update_geometry(struct view *view); -void ssd_reload(struct view *view); void ssd_destroy(struct view *view); void ssd_update_button_hover(struct wlr_scene_node *node, struct ssd_hover_state *hover_state); diff --git a/include/view.h b/include/view.h index 47263311..a174b1b7 100644 --- a/include/view.h +++ b/include/view.h @@ -154,6 +154,7 @@ void view_snap_to_edge(struct view *view, const char *direction, const char *view_get_string_prop(struct view *view, const char *prop); void view_update_title(struct view *view); void view_update_app_id(struct view *view); +void view_reload_ssd(struct view *view); void view_impl_map(struct view *view); void view_adjust_size(struct view *view, int *w, int *h); diff --git a/src/server.c b/src/server.c index 6107c3ea..a1f40f99 100644 --- a/src/server.c +++ b/src/server.c @@ -16,7 +16,6 @@ #include "labwc.h" #include "layers.h" #include "menu/menu.h" -#include "ssd.h" #include "theme.h" #include "view.h" #include "workspaces.h" @@ -40,10 +39,7 @@ reload_config_and_theme(void) struct view *view; wl_list_for_each(view, &g_server->views, link) { - if (!view->mapped || !view->ssd_enabled) { - continue; - } - ssd_reload(view); + view_reload_ssd(view); } menu_reconfigure(g_server); diff --git a/src/ssd/ssd.c b/src/ssd/ssd.c index 2b2feccd..fdfc2cc2 100644 --- a/src/ssd/ssd.c +++ b/src/ssd/ssd.c @@ -191,16 +191,6 @@ ssd_update_geometry(struct view *view) view->ssd.state.y = view->y; } -void ssd_reload(struct view *view) -{ - if (!view->ssd.tree) { - return; - } - - ssd_destroy(view); - ssd_create(view); -} - void ssd_destroy(struct view *view) { diff --git a/src/view.c b/src/view.c index 221c54c4..16803389 100644 --- a/src/view.c +++ b/src/view.c @@ -871,6 +871,16 @@ view_update_app_id(struct view *view) view->toplevel_handle, app_id); } +void +view_reload_ssd(struct view *view) +{ + assert(view); + if (view->ssd_enabled) { + ssd_destroy(view); + ssd_create(view); + } +} + void view_destroy(struct view *view) {