/* Tree for built in menu */
struct wlr_scene_tree *menu_tree;
- struct multi_rect *osd_preview_outline;
-
/* Workspaces */
struct wl_list workspaces; /* struct workspace.link */
struct workspace *workspace_current;
bool preview_was_enabled;
struct wlr_scene_node *preview_node;
struct wlr_scene_node *preview_anchor;
+ struct multi_rect *preview_outline;
} osd_state;
struct theme *theme;
{
/* Create / Update preview outline tree */
struct server *server = view->server;
- struct multi_rect *rect = view->server->osd_preview_outline;
+ struct multi_rect *rect = view->server->osd_state.preview_outline;
if (!rect) {
int line_width = server->theme->osd_border_width;
float *colors[] = {
};
rect = multi_rect_create(&server->scene->tree, colors, line_width);
wlr_scene_node_place_above(&rect->tree->node, &server->menu_tree->node);
- server->osd_preview_outline = rect;
+ server->osd_state.preview_outline = rect;
}
struct wlr_box geo = ssd_max_extents(view);
destroy_osd_nodes(output);
wlr_scene_node_set_enabled(&output->osd_tree->node, false);
}
- if (server->osd_preview_outline) {
+ if (server->osd_state.preview_outline) {
/* Destroy the whole multi_rect so we can easily react to new themes */
- wlr_scene_node_destroy(&server->osd_preview_outline->tree->node);
- server->osd_preview_outline = NULL;
+ wlr_scene_node_destroy(&server->osd_state.preview_outline->tree->node);
+ server->osd_state.preview_outline = NULL;
}
}