#include <stdbool.h>
struct wlr_scene_node;
-struct wlr_scene_rect;
-struct wlr_scene_tree;
struct wlr_surface;
struct wlr_scene_output;
-struct wlr_scene_rect *lab_wlr_scene_get_rect(struct wlr_scene_node *node);
-struct wlr_scene_tree *lab_scene_tree_from_node(struct wlr_scene_node *node);
struct wlr_surface *lab_wlr_surface_from_node(struct wlr_scene_node *node);
/**
#include <wlr/util/log.h>
#include "common/scene-helpers.h"
-struct wlr_scene_rect *
-lab_wlr_scene_get_rect(struct wlr_scene_node *node)
-{
- assert(node->type == WLR_SCENE_NODE_RECT);
- return (struct wlr_scene_rect *)node;
-}
-
-struct wlr_scene_tree *
-lab_scene_tree_from_node(struct wlr_scene_node *node)
-{
- assert(node->type == WLR_SCENE_NODE_TREE);
- return (struct wlr_scene_tree *)node;
-}
-
struct wlr_surface *
lab_wlr_surface_from_node(struct wlr_scene_node *node)
{
if (node->type == WLR_SCENE_NODE_TREE) {
struct wlr_scene_node *child;
- struct wlr_scene_tree *tree = lab_scene_tree_from_node(node);
+ struct wlr_scene_tree *tree = wlr_scene_tree_from_node(node);
wl_list_for_each(child, &tree->children, link) {
dump_tree(server, child, pos + INDENT_SIZE,
x + child->x, y + child->y);
/* Update all items for the new size */
wl_list_for_each(item, &menu->menuitems, link) {
wlr_scene_rect_set_size(
- lab_wlr_scene_get_rect(item->normal.background),
+ wlr_scene_rect_from_node(item->normal.background),
menu->size.width, item->height);
if (!item->selected.background) {
/* This is a separator. They don't have a selected background. */
wlr_scene_rect_set_size(
- lab_wlr_scene_get_rect(item->normal.text),
+ wlr_scene_rect_from_node(item->normal.text),
menu->size.width - 2 * theme->menu_separator_padding_width,
theme->menu_separator_line_thickness);
} else {
/* Usual menu item */
wlr_scene_rect_set_size(
- lab_wlr_scene_get_rect(item->selected.background),
+ wlr_scene_rect_from_node(item->selected.background),
menu->size.width, item->height);
if (item->native_width > max_width || item->submenu) {
scaled_font_buffer_set_max_width(item->normal.buffer,
: rc.theme->window_active_border_color;
struct ssd_part *part = ssd_get_part(&ssd->border.active.parts, LAB_SSD_PART_TOP);
- struct wlr_scene_rect *rect = lab_wlr_scene_get_rect(part->node);
+ struct wlr_scene_rect *rect = wlr_scene_rect_from_node(part->node);
wlr_scene_rect_set_color(rect, color);
}
struct ssd_sub_tree *subtree;
FOR_EACH_STATE(ssd, subtree) {
wl_list_for_each(part, &subtree->parts, link) {
- rect = lab_wlr_scene_get_rect(part->node);
+ rect = wlr_scene_rect_from_node(part->node);
switch (part->type) {
case LAB_SSD_PART_LEFT:
wlr_scene_rect_set_size(rect,
struct wlr_box *target;
wl_list_for_each(part, &ssd->extents.parts, link) {
- rect = lab_wlr_scene_get_rect(part->node);
+ rect = wlr_scene_rect_from_node(part->node);
target = part->geometry;
switch (part->type) {
case LAB_SSD_PART_TOP:
struct ssd_button *button = node_ssd_button_from_node(part->node);
/* Toggle background between invisible and titlebar background color */
- struct wlr_scene_rect *rect = lab_wlr_scene_get_rect(button->background);
+ struct wlr_scene_rect *rect = wlr_scene_rect_from_node(button->background);
wlr_scene_rect_set_color(rect, !enable ? (float[4]) {0, 0, 0, 0} : (
subtree == &ssd->titlebar.active
? rc.theme->window_active_title_bg_color
switch (part->type) {
case LAB_SSD_PART_TITLEBAR:
wlr_scene_rect_set_size(
- lab_wlr_scene_get_rect(part->node),
+ wlr_scene_rect_from_node(part->node),
width - SSD_BUTTON_WIDTH * SSD_BUTTON_COUNT,
theme->title_height);
continue;