mirror of
https://github.com/labwc/labwc.git
synced 2025-11-30 06:59:52 -05:00
osd: generalize osd_{classic,thumbnail}_item
This allows us to share common codes for dealing with osd items. For example: - Get the clicked osd item to focus its associated window - Scroll the items when their total height is taller than output height
This commit is contained in:
parent
747163fa3e
commit
00f0a46ef7
6 changed files with 43 additions and 31 deletions
|
|
@ -69,6 +69,12 @@ bool osd_field_is_valid(struct window_switcher_field *field);
|
|||
void osd_field_free(struct window_switcher_field *field);
|
||||
|
||||
/* Internal API */
|
||||
struct osd_item {
|
||||
struct view *view;
|
||||
struct wlr_scene_tree *tree;
|
||||
struct wl_list link;
|
||||
};
|
||||
|
||||
struct osd_impl {
|
||||
/*
|
||||
* Create a scene-tree of OSD for an output.
|
||||
|
|
|
|||
|
|
@ -20,7 +20,7 @@ struct output {
|
|||
struct wlr_scene_buffer *workspace_osd;
|
||||
|
||||
struct osd_scene {
|
||||
struct wl_array items; /* struct osd_scene_item */
|
||||
struct wl_list items; /* struct osd_item */
|
||||
struct wlr_scene_tree *tree;
|
||||
} osd_scene;
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue