void ssd_destroy(struct view *view);
void ssd_update_geometry(struct view *view, bool force);
bool ssd_part_contains(enum ssd_part_type whole, enum ssd_part_type candidate);
+bool ssd_is_button(enum ssd_part_type type);
#endif /* __LABWC_SSD_H */
}
}
-static bool
-isbutton(enum ssd_part_type type)
-{
- return type == LAB_SSD_BUTTON_CLOSE ||
- type == LAB_SSD_BUTTON_MAXIMIZE ||
- type == LAB_SSD_BUTTON_ICONIFY ||
- type == LAB_SSD_BUTTON_WINDOW_MENU;
-}
-
static void
render_deco(struct view *view, struct output *output,
pixman_region32_t *output_damage)
struct wlr_cursor *cur = view->server->seat.cursor;
enum ssd_part_type type = ssd_at(view, cur->x, cur->y);
struct wlr_box box = ssd_visible_box(view, type);
- if (isbutton(type) &&
+ if (ssd_is_button(type) &&
wlr_box_contains_point(&box, cur->x, cur->y)) {
float *color = (float[4]) { 0.5, 0.5, 0.5, 0.5 };
render_rect(output, output_damage, &box, color);
box->x = view->x + (box->width - texture->width);
}
+bool
+ssd_is_button(enum ssd_part_type type)
+{
+ return type == LAB_SSD_BUTTON_CLOSE ||
+ type == LAB_SSD_BUTTON_MAXIMIZE ||
+ type == LAB_SSD_BUTTON_ICONIFY ||
+ type == LAB_SSD_BUTTON_WINDOW_MENU;
+}
+
struct wlr_box
ssd_visible_box(struct view *view, enum ssd_part_type type)
{