From 074b27fd47dd814d869995fee6f83a51a6562a98 Mon Sep 17 00:00:00 2001 From: tokyo4j Date: Tue, 2 Sep 2025 17:47:01 +0900 Subject: [PATCH] scaled-scene-buffer: restructure source files - Rename `scaled_scene_buffer` to `scaled_buffer`. This makes it clear that `scaled_{font,img,icon}_buffers` are implementations of it. - Move the files from `src/common` to `src/scaled-buffer` as `scaled_icon_buffer` heavily depends on `server` and `view` etc. --- include/node.h | 8 +-- .../scaled-buffer.h} | 58 +++++++++---------- .../scaled-font-buffer.h | 6 +- .../scaled-icon-buffer.h | 4 +- .../scaled-img-buffer.h | 4 +- src/common/meson.build | 4 -- src/desktop.c | 2 +- src/menu/menu.c | 10 ++-- src/meson.build | 1 + src/node.c | 8 +-- src/osd/osd-classic.c | 4 +- src/osd/osd-thumbnail.c | 4 +- src/osd/osd.c | 4 +- src/scaled-buffer/meson.build | 6 ++ .../scaled-buffer.c} | 44 +++++++------- .../scaled-font-buffer.c | 20 +++---- .../scaled-icon-buffer.c | 28 ++++----- .../scaled-img-buffer.c | 22 +++---- src/server.c | 4 +- src/ssd/resize-indicator.c | 2 +- src/ssd/ssd-part.c | 4 +- src/ssd/ssd-titlebar.c | 6 +- 22 files changed, 128 insertions(+), 125 deletions(-) rename include/{common/scaled-scene-buffer.h => scaled-buffer/scaled-buffer.h} (73%) rename include/{common => scaled-buffer}/scaled-font-buffer.h (96%) rename include/{common => scaled-buffer}/scaled-icon-buffer.h (96%) rename include/{common => scaled-buffer}/scaled-img-buffer.h (98%) create mode 100644 src/scaled-buffer/meson.build rename src/{common/scaled-scene-buffer.c => scaled-buffer/scaled-buffer.c} (83%) rename src/{common => scaled-buffer}/scaled-font-buffer.c (87%) rename src/{common => scaled-buffer}/scaled-icon-buffer.c (92%) rename src/{common => scaled-buffer}/scaled-img-buffer.c (72%) diff --git a/include/node.h b/include/node.h index 1c012392..d28a8517 100644 --- a/include/node.h +++ b/include/node.h @@ -8,7 +8,7 @@ struct lab_layer_surface; struct lab_layer_popup; struct menuitem; struct ssd_part; -struct scaled_scene_buffer; +struct scaled_buffer; enum node_descriptor_type { LAB_NODE_DESC_NODE = 0, @@ -20,7 +20,7 @@ enum node_descriptor_type { LAB_NODE_DESC_IME_POPUP, LAB_NODE_DESC_MENUITEM, LAB_NODE_DESC_TREE, - LAB_NODE_DESC_SCALED_SCENE_BUFFER, + LAB_NODE_DESC_SCALED_BUFFER, LAB_NODE_DESC_SSD_PART, }; @@ -84,10 +84,10 @@ struct ssd_part *node_ssd_part_from_node( struct wlr_scene_node *wlr_scene_node); /** - * node_scaled_scene_buffer_from_node - return scaled_scene_buffer from node + * node_scaled_buffer_from_node - return scaled_buffer from node * @wlr_scene_node: wlr_scene_node from which to return data */ -struct scaled_scene_buffer *node_scaled_scene_buffer_from_node( +struct scaled_buffer *node_scaled_buffer_from_node( struct wlr_scene_node *wlr_scene_node); #endif /* LABWC_NODE_DESCRIPTOR_H */ diff --git a/include/common/scaled-scene-buffer.h b/include/scaled-buffer/scaled-buffer.h similarity index 73% rename from include/common/scaled-scene-buffer.h rename to include/scaled-buffer/scaled-buffer.h index 657b9b57..c2af6054 100644 --- a/include/common/scaled-scene-buffer.h +++ b/include/scaled-buffer/scaled-buffer.h @@ -1,6 +1,6 @@ /* SPDX-License-Identifier: GPL-2.0-only */ -#ifndef LABWC_SCALED_SCENE_BUFFER_H -#define LABWC_SCALED_SCENE_BUFFER_H +#ifndef LABWC_SCALED_BUFFER_H +#define LABWC_SCALED_BUFFER_H #include @@ -9,20 +9,20 @@ struct wlr_buffer; struct wlr_scene_tree; struct lab_data_buffer; -struct scaled_scene_buffer; +struct scaled_buffer; -struct scaled_scene_buffer_impl { +struct scaled_buffer_impl { /* Return a new buffer optimized for the new scale */ struct lab_data_buffer *(*create_buffer) - (struct scaled_scene_buffer *scaled_buffer, double scale); + (struct scaled_buffer *scaled_buffer, double scale); /* Might be NULL or used for cleaning up */ - void (*destroy)(struct scaled_scene_buffer *scaled_buffer); + void (*destroy)(struct scaled_buffer *scaled_buffer); /* Returns true if the two buffers are visually the same */ - bool (*equal)(struct scaled_scene_buffer *scaled_buffer_a, - struct scaled_scene_buffer *scaled_buffer_b); + bool (*equal)(struct scaled_buffer *scaled_buffer_a, + struct scaled_buffer *scaled_buffer_b); }; -struct scaled_scene_buffer { +struct scaled_buffer { struct wlr_scene_buffer *scene_buffer; int width; /* unscaled, read only */ int height; /* unscaled, read only */ @@ -35,7 +35,7 @@ struct scaled_scene_buffer { struct wl_list cache; /* struct scaled_buffer_cache_entry.link */ struct wl_listener destroy; struct wl_listener outputs_update; - const struct scaled_scene_buffer_impl *impl; + const struct scaled_buffer_impl *impl; struct wl_list link; /* all_scaled_buffers */ }; @@ -78,22 +78,22 @@ struct scaled_scene_buffer { * to handle the majority of use cases where a view is moved between no more * than two different scales. * - * scaled_scene_buffer will clean up automatically once the internal + * scaled_buffer will clean up automatically once the internal * wlr_scene_buffer is being destroyed. If implementation->destroy is set * it will also get called so a consumer of this API may clean up its own * allocations. * - * Besides caching buffers for each scale per scaled_scene_buffer, we also - * store all the scaled_scene_buffers from all the implementers in a list + * Besides caching buffers for each scale per scaled_buffer, we also + * store all the scaled_buffers from all the implementers in a list * in order to reuse backing buffers for visually duplicated - * scaled_scene_buffers found via impl->equal(). + * scaled_buffers found via impl->equal(). * * All requested lab_data_buffers via impl->create_buffer() will be locked * during the lifetime of the buffer in the internal cache and unlocked * when being evacuated from the cache (due to LAB_SCALED_BUFFER_MAX_CACHE * or the internal wlr_scene_buffer being destroyed). * - * If drop_buffer was set during creation of the scaled_scene_buffer, the + * If drop_buffer was set during creation of the scaled_buffer, the * backing wlr_buffer behind a lab_data_buffer will also get dropped * (via wlr_buffer_drop). If there are no more locks (consumers) of the * respective buffer this will then cause the lab_data_buffer to be free'd. @@ -103,21 +103,21 @@ struct scaled_scene_buffer { * destroyed until the buffer is evacuated from the internal cache and thus * unlocked. * - * This allows using scaled_scene_buffer for an autoscaling font_buffer + * This allows using scaled_buffer for an autoscaling font_buffer * (which gets free'd automatically) and also for theme components like * rounded corner images or button icons whose buffers only exist once but - * are references by multiple windows with their own scaled_scene_buffers. + * are references by multiple windows with their own scaled_buffers. * * The rough idea is: use drop_buffer = true for one-shot buffers and false - * for buffers that should outlive the scaled_scene_buffer instance itself. + * for buffers that should outlive the scaled_buffer instance itself. */ -struct scaled_scene_buffer *scaled_scene_buffer_create( +struct scaled_buffer *scaled_buffer_create( struct wlr_scene_tree *parent, - const struct scaled_scene_buffer_impl *implementation, + const struct scaled_buffer_impl *implementation, bool drop_buffer); /** - * scaled_scene_buffer_request_update - mark the buffer that needs to be + * scaled_buffer_request_update - mark the buffer that needs to be * updated * @width: the width of the buffer to be rendered, in scene coordinates * @height: the height of the buffer to be rendered, in scene coordinates @@ -125,22 +125,22 @@ struct scaled_scene_buffer *scaled_scene_buffer_create( * This function should be called when the states bound to the buffer are * updated and ready for rendering. */ -void scaled_scene_buffer_request_update(struct scaled_scene_buffer *self, +void scaled_buffer_request_update(struct scaled_buffer *self, int width, int height); /** - * scaled_scene_buffer_invalidate_sharing - clear the list of entire cached - * scaled_scene_buffers used to share visually dupliated buffers. This should + * scaled_buffer_invalidate_sharing - clear the list of entire cached + * scaled_buffers used to share visually dupliated buffers. This should * be called on Reconfigure to force updates of newly created - * scaled_scene_buffers rather than reusing ones created before Reconfigure. + * scaled_buffers rather than reusing ones created before Reconfigure. */ -void scaled_scene_buffer_invalidate_sharing(void); +void scaled_buffer_invalidate_sharing(void); /* Private */ -struct scaled_scene_buffer_cache_entry { - struct wl_list link; /* struct scaled_scene_buffer.cache */ +struct scaled_buffer_cache_entry { + struct wl_list link; /* struct scaled_buffer.cache */ struct wlr_buffer *buffer; double scale; }; -#endif /* LABWC_SCALED_SCENE_BUFFER_H */ +#endif /* LABWC_SCALED_BUFFER_H */ diff --git a/include/common/scaled-font-buffer.h b/include/scaled-buffer/scaled-font-buffer.h similarity index 96% rename from include/common/scaled-font-buffer.h rename to include/scaled-buffer/scaled-font-buffer.h index ddccbc82..6953f9da 100644 --- a/include/common/scaled-font-buffer.h +++ b/include/scaled-buffer/scaled-font-buffer.h @@ -6,7 +6,7 @@ struct wlr_scene_tree; struct wlr_scene_buffer; -struct scaled_scene_buffer; +struct scaled_buffer; struct scaled_font_buffer { struct wlr_scene_buffer *scene_buffer; @@ -19,7 +19,7 @@ struct scaled_font_buffer { float color[4]; float bg_color[4]; struct font font; - struct scaled_scene_buffer *scaled_buffer; + struct scaled_buffer *scaled_buffer; /* * The following fields are used only for the titlebar, where @@ -34,7 +34,7 @@ struct scaled_font_buffer { /** * Create an auto scaling font buffer, providing a wlr_scene_buffer node for - * display. It gets destroyed automatically when the backing scaled_scene_buffer + * display. It gets destroyed automatically when the backing scaled_buffer * is being destroyed which in turn happens automatically when the backing * wlr_scene_buffer (or one of its parents) is being destroyed. * diff --git a/include/common/scaled-icon-buffer.h b/include/scaled-buffer/scaled-icon-buffer.h similarity index 96% rename from include/common/scaled-icon-buffer.h rename to include/scaled-buffer/scaled-icon-buffer.h index 46e71ebf..b6830f3e 100644 --- a/include/common/scaled-icon-buffer.h +++ b/include/scaled-buffer/scaled-icon-buffer.h @@ -10,7 +10,7 @@ struct wlr_scene_node; struct wlr_scene_buffer; struct scaled_icon_buffer { - struct scaled_scene_buffer *scaled_buffer; + struct scaled_buffer *scaled_buffer; struct wlr_scene_buffer *scene_buffer; struct server *server; /* for window icon */ @@ -34,7 +34,7 @@ struct scaled_icon_buffer { /* * Create an auto scaling icon buffer, providing a wlr_scene_buffer node for - * display. It gets destroyed automatically when the backing scaled_scene_buffer + * display. It gets destroyed automatically when the backing scaled_buffer * is being destroyed which in turn happens automatically when the backing * wlr_scene_buffer (or one of its parents) is being destroyed. */ diff --git a/include/common/scaled-img-buffer.h b/include/scaled-buffer/scaled-img-buffer.h similarity index 98% rename from include/common/scaled-img-buffer.h rename to include/scaled-buffer/scaled-img-buffer.h index 938baeb2..48cbd9c4 100644 --- a/include/common/scaled-img-buffer.h +++ b/include/scaled-buffer/scaled-img-buffer.h @@ -10,7 +10,7 @@ struct wlr_scene_buffer; struct lab_img; struct scaled_img_buffer { - struct scaled_scene_buffer *scaled_buffer; + struct scaled_buffer *scaled_buffer; struct wlr_scene_buffer *scene_buffer; struct lab_img *img; int width; @@ -56,7 +56,7 @@ struct scaled_img_buffer { /* * Create an auto scaling image buffer, providing a wlr_scene_buffer node for - * display. It gets destroyed automatically when the backing scaled_scene_buffer + * display. It gets destroyed automatically when the backing scaled_buffer * is being destroyed which in turn happens automatically when the backing * wlr_scene_buffer (or one of its parents) is being destroyed. * diff --git a/src/common/meson.build b/src/common/meson.build index 306a2ba7..eddc6710 100644 --- a/src/common/meson.build +++ b/src/common/meson.build @@ -14,10 +14,6 @@ labwc_sources += files( 'nodename.c', 'parse-bool.c', 'parse-double.c', - 'scaled-font-buffer.c', - 'scaled-icon-buffer.c', - 'scaled-img-buffer.c', - 'scaled-scene-buffer.c', 'scene-helpers.c', 'set.c', 'surface-helpers.c', diff --git a/src/desktop.c b/src/desktop.c index 9eabab93..42b6f436 100644 --- a/src/desktop.c +++ b/src/desktop.c @@ -350,7 +350,7 @@ get_cursor_context(struct server *server) return ret; case LAB_NODE_DESC_NODE: case LAB_NODE_DESC_TREE: - case LAB_NODE_DESC_SCALED_SCENE_BUFFER: + case LAB_NODE_DESC_SCALED_BUFFER: break; } } diff --git a/src/menu/menu.c b/src/menu/menu.c index 4e483989..84db869c 100644 --- a/src/menu/menu.c +++ b/src/menu/menu.c @@ -20,19 +20,19 @@ #include "common/lab-scene-rect.h" #include "common/list.h" #include "common/mem.h" -#include "common/scaled-font-buffer.h" -#include "common/scaled-icon-buffer.h" #include "common/scene-helpers.h" #include "common/spawn.h" #include "common/string-helpers.h" #include "common/xml.h" #include "config/rcxml.h" #include "labwc.h" -#include "output.h" -#include "workspaces.h" -#include "view.h" #include "node.h" +#include "output.h" +#include "scaled-buffer/scaled-font-buffer.h" +#include "scaled-buffer/scaled-icon-buffer.h" #include "theme.h" +#include "view.h" +#include "workspaces.h" #define PIPEMENU_MAX_BUF_SIZE 1048576 /* 1 MiB */ #define PIPEMENU_TIMEOUT_IN_MS 4000 /* 4 seconds */ diff --git a/src/meson.build b/src/meson.build index 24338994..330b5daf 100644 --- a/src/meson.build +++ b/src/meson.build @@ -56,4 +56,5 @@ subdir('input') subdir('menu') subdir('osd') subdir('protocols') +subdir('scaled-buffer') subdir('ssd') diff --git a/src/node.c b/src/node.c index 37c63a7f..7a17c1ed 100644 --- a/src/node.c +++ b/src/node.c @@ -80,11 +80,11 @@ node_ssd_part_from_node(struct wlr_scene_node *wlr_scene_node) return (struct ssd_part *)node_descriptor->data; } -struct scaled_scene_buffer * -node_scaled_scene_buffer_from_node(struct wlr_scene_node *wlr_scene_node) +struct scaled_buffer * +node_scaled_buffer_from_node(struct wlr_scene_node *wlr_scene_node) { assert(wlr_scene_node->data); struct node_descriptor *node_descriptor = wlr_scene_node->data; - assert(node_descriptor->type == LAB_NODE_DESC_SCALED_SCENE_BUFFER); - return (struct scaled_scene_buffer *)node_descriptor->data; + assert(node_descriptor->type == LAB_NODE_DESC_SCALED_BUFFER); + return (struct scaled_buffer *)node_descriptor->data; } diff --git a/src/osd/osd-classic.c b/src/osd/osd-classic.c index 6ec165c5..501a86a2 100644 --- a/src/osd/osd-classic.c +++ b/src/osd/osd-classic.c @@ -7,8 +7,6 @@ #include "common/buf.h" #include "common/font.h" #include "common/lab-scene-rect.h" -#include "common/scaled-font-buffer.h" -#include "common/scaled-icon-buffer.h" #include "common/scene-helpers.h" #include "common/string-helpers.h" #include "config/rcxml.h" @@ -16,6 +14,8 @@ #include "node.h" #include "osd.h" #include "output.h" +#include "scaled-buffer/scaled-font-buffer.h" +#include "scaled-buffer/scaled-icon-buffer.h" #include "theme.h" #include "view.h" #include "window-rules.h" diff --git a/src/osd/osd-thumbnail.c b/src/osd/osd-thumbnail.c index 3ede04d6..9804d1ec 100644 --- a/src/osd/osd-thumbnail.c +++ b/src/osd/osd-thumbnail.c @@ -8,11 +8,11 @@ #include "common/array.h" #include "common/box.h" #include "common/lab-scene-rect.h" -#include "common/scaled-font-buffer.h" -#include "common/scaled-icon-buffer.h" #include "labwc.h" #include "osd.h" #include "output.h" +#include "scaled-buffer/scaled-font-buffer.h" +#include "scaled-buffer/scaled-icon-buffer.h" #include "theme.h" #include "view.h" diff --git a/src/osd/osd.c b/src/osd/osd.c index 28714d72..4103444e 100644 --- a/src/osd/osd.c +++ b/src/osd/osd.c @@ -6,13 +6,13 @@ #include #include "common/array.h" #include "common/lab-scene-rect.h" -#include "common/scaled-font-buffer.h" -#include "common/scaled-icon-buffer.h" #include "common/scene-helpers.h" #include "config/rcxml.h" #include "labwc.h" #include "node.h" #include "output.h" +#include "scaled-buffer/scaled-font-buffer.h" +#include "scaled-buffer/scaled-icon-buffer.h" #include "theme.h" #include "view.h" #include "window-rules.h" diff --git a/src/scaled-buffer/meson.build b/src/scaled-buffer/meson.build new file mode 100644 index 00000000..7bd8fa8b --- /dev/null +++ b/src/scaled-buffer/meson.build @@ -0,0 +1,6 @@ +labwc_sources += files( + 'scaled-font-buffer.c', + 'scaled-icon-buffer.c', + 'scaled-img-buffer.c', + 'scaled-buffer.c', +) diff --git a/src/common/scaled-scene-buffer.c b/src/scaled-buffer/scaled-buffer.c similarity index 83% rename from src/common/scaled-scene-buffer.c rename to src/scaled-buffer/scaled-buffer.c index a86077f5..c478ed00 100644 --- a/src/common/scaled-scene-buffer.c +++ b/src/scaled-buffer/scaled-buffer.c @@ -1,6 +1,6 @@ // SPDX-License-Identifier: GPL-2.0-only #define _POSIX_C_SOURCE 200809L -#include "common/scaled-scene-buffer.h" +#include "scaled-buffer/scaled-buffer.h" #include #include #include @@ -15,14 +15,14 @@ #include "node.h" /* - * This holds all the scaled_scene_buffers from all the implementers. + * This holds all the scaled_buffers from all the implementers. * This is used to share visually duplicated buffers found via impl->equal(). */ static struct wl_list all_scaled_buffers = WL_LIST_INIT(&all_scaled_buffers); /* Internal API */ static void -_cache_entry_destroy(struct scaled_scene_buffer_cache_entry *cache_entry, bool drop_buffer) +_cache_entry_destroy(struct scaled_buffer_cache_entry *cache_entry, bool drop_buffer) { wl_list_remove(&cache_entry->link); if (cache_entry->buffer) { @@ -35,10 +35,10 @@ _cache_entry_destroy(struct scaled_scene_buffer_cache_entry *cache_entry, bool d free(cache_entry); } -static struct scaled_scene_buffer_cache_entry * -find_cache_for_scale(struct scaled_scene_buffer *scene_buffer, double scale) +static struct scaled_buffer_cache_entry * +find_cache_for_scale(struct scaled_buffer *scene_buffer, double scale) { - struct scaled_scene_buffer_cache_entry *cache_entry; + struct scaled_buffer_cache_entry *cache_entry; wl_list_for_each(cache_entry, &scene_buffer->cache, link) { if (cache_entry->scale == scale) { return cache_entry; @@ -48,12 +48,12 @@ find_cache_for_scale(struct scaled_scene_buffer *scene_buffer, double scale) } static void -_update_buffer(struct scaled_scene_buffer *self, double scale) +_update_buffer(struct scaled_buffer *self, double scale) { self->active_scale = scale; /* Search for cached buffer of specified scale */ - struct scaled_scene_buffer_cache_entry *cache_entry = + struct scaled_buffer_cache_entry *cache_entry = find_cache_for_scale(self, scale); if (cache_entry) { /* LRU cache, recently used in front */ @@ -71,8 +71,8 @@ _update_buffer(struct scaled_scene_buffer *self, double scale) struct wlr_buffer *wlr_buffer = NULL; if (self->impl->equal) { - /* Search from other cached scaled-scene-buffers */ - struct scaled_scene_buffer *scene_buffer; + /* Search from other cached scaled-buffers */ + struct scaled_buffer *scene_buffer; wl_list_for_each(scene_buffer, &all_scaled_buffers, link) { if (scene_buffer == self) { continue; @@ -146,8 +146,8 @@ _update_buffer(struct scaled_scene_buffer *self, double scale) static void _handle_node_destroy(struct wl_listener *listener, void *data) { - struct scaled_scene_buffer_cache_entry *cache_entry, *cache_entry_tmp; - struct scaled_scene_buffer *self = wl_container_of(listener, self, destroy); + struct scaled_buffer_cache_entry *cache_entry, *cache_entry_tmp; + struct scaled_buffer *self = wl_container_of(listener, self, destroy); wl_list_remove(&self->destroy.link); wl_list_remove(&self->outputs_update.link); @@ -167,7 +167,7 @@ _handle_node_destroy(struct wl_listener *listener, void *data) static void _handle_outputs_update(struct wl_listener *listener, void *data) { - struct scaled_scene_buffer *self = + struct scaled_buffer *self = wl_container_of(listener, self, outputs_update); double max_scale = 0; @@ -181,16 +181,16 @@ _handle_outputs_update(struct wl_listener *listener, void *data) } /* Public API */ -struct scaled_scene_buffer * -scaled_scene_buffer_create(struct wlr_scene_tree *parent, - const struct scaled_scene_buffer_impl *impl, +struct scaled_buffer * +scaled_buffer_create(struct wlr_scene_tree *parent, + const struct scaled_buffer_impl *impl, bool drop_buffer) { assert(parent); assert(impl); assert(impl->create_buffer); - struct scaled_scene_buffer *self = znew(*self); + struct scaled_buffer *self = znew(*self); self->scene_buffer = wlr_scene_buffer_create(parent, NULL); if (!self->scene_buffer) { wlr_log(WLR_ERROR, "Failed to create scene buffer"); @@ -198,7 +198,7 @@ scaled_scene_buffer_create(struct wlr_scene_tree *parent, return NULL; } node_descriptor_create(&self->scene_buffer->node, - LAB_NODE_DESC_SCALED_SCENE_BUFFER, self); + LAB_NODE_DESC_SCALED_BUFFER, self); self->impl = impl; /* @@ -223,14 +223,14 @@ scaled_scene_buffer_create(struct wlr_scene_tree *parent, } void -scaled_scene_buffer_request_update(struct scaled_scene_buffer *self, +scaled_buffer_request_update(struct scaled_buffer *self, int width, int height) { assert(self); assert(width >= 0); assert(height >= 0); - struct scaled_scene_buffer_cache_entry *cache_entry, *cache_entry_tmp; + struct scaled_buffer_cache_entry *cache_entry, *cache_entry_tmp; wl_list_for_each_safe(cache_entry, cache_entry_tmp, &self->cache, link) { _cache_entry_destroy(cache_entry, self->drop_buffer); } @@ -256,9 +256,9 @@ scaled_scene_buffer_request_update(struct scaled_scene_buffer *self, } void -scaled_scene_buffer_invalidate_sharing(void) +scaled_buffer_invalidate_sharing(void) { - struct scaled_scene_buffer *scene_buffer, *tmp; + struct scaled_buffer *scene_buffer, *tmp; wl_list_for_each_safe(scene_buffer, tmp, &all_scaled_buffers, link) { wl_list_remove(&scene_buffer->link); wl_list_init(&scene_buffer->link); diff --git a/src/common/scaled-font-buffer.c b/src/scaled-buffer/scaled-font-buffer.c similarity index 87% rename from src/common/scaled-font-buffer.c rename to src/scaled-buffer/scaled-font-buffer.c index 8faa9495..7b252481 100644 --- a/src/common/scaled-font-buffer.c +++ b/src/scaled-buffer/scaled-font-buffer.c @@ -1,6 +1,6 @@ // SPDX-License-Identifier: GPL-2.0-only #define _POSIX_C_SOURCE 200809L -#include "common/scaled-font-buffer.h" +#include "scaled-buffer/scaled-font-buffer.h" #include #include #include @@ -10,11 +10,11 @@ #include "common/font.h" #include "common/graphic-helpers.h" #include "common/mem.h" -#include "common/scaled-scene-buffer.h" #include "common/string-helpers.h" +#include "scaled-buffer/scaled-buffer.h" static struct lab_data_buffer * -_create_buffer(struct scaled_scene_buffer *scaled_buffer, double scale) +_create_buffer(struct scaled_buffer *scaled_buffer, double scale) { struct lab_data_buffer *buffer = NULL; struct scaled_font_buffer *self = scaled_buffer->data; @@ -39,7 +39,7 @@ _create_buffer(struct scaled_scene_buffer *scaled_buffer, double scale) } static void -_destroy(struct scaled_scene_buffer *scaled_buffer) +_destroy(struct scaled_buffer *scaled_buffer) { struct scaled_font_buffer *self = scaled_buffer->data; scaled_buffer->data = NULL; @@ -51,8 +51,8 @@ _destroy(struct scaled_scene_buffer *scaled_buffer) } static bool -_equal(struct scaled_scene_buffer *scaled_buffer_a, - struct scaled_scene_buffer *scaled_buffer_b) +_equal(struct scaled_buffer *scaled_buffer_a, + struct scaled_buffer *scaled_buffer_b) { struct scaled_font_buffer *a = scaled_buffer_a->data; struct scaled_font_buffer *b = scaled_buffer_b->data; @@ -69,7 +69,7 @@ _equal(struct scaled_scene_buffer *scaled_buffer_a, && a->bg_pattern == b->bg_pattern; } -static const struct scaled_scene_buffer_impl impl = { +static const struct scaled_buffer_impl impl = { .create_buffer = _create_buffer, .destroy = _destroy, .equal = _equal, @@ -81,7 +81,7 @@ scaled_font_buffer_create(struct wlr_scene_tree *parent) { assert(parent); struct scaled_font_buffer *self = znew(*self); - struct scaled_scene_buffer *scaled_buffer = scaled_scene_buffer_create( + struct scaled_buffer *scaled_buffer = scaled_buffer_create( parent, &impl, /* drop_buffer */ true); if (!scaled_buffer) { free(self); @@ -138,7 +138,7 @@ scaled_font_buffer_update(struct scaled_font_buffer *self, const char *text, &self->width, &computed_height); self->height = (self->fixed_height > 0) ? self->fixed_height : computed_height; - scaled_scene_buffer_request_update(self->scaled_buffer, + scaled_buffer_request_update(self->scaled_buffer, self->width, self->height); } @@ -152,6 +152,6 @@ scaled_font_buffer_set_max_width(struct scaled_font_buffer *self, int max_width) &self->width, &computed_height); self->height = (self->fixed_height > 0) ? self->fixed_height : computed_height; - scaled_scene_buffer_request_update(self->scaled_buffer, + scaled_buffer_request_update(self->scaled_buffer, self->width, self->height); } diff --git a/src/common/scaled-icon-buffer.c b/src/scaled-buffer/scaled-icon-buffer.c similarity index 92% rename from src/common/scaled-icon-buffer.c rename to src/scaled-buffer/scaled-icon-buffer.c index 5dd619f1..b8f08efc 100644 --- a/src/common/scaled-icon-buffer.c +++ b/src/scaled-buffer/scaled-icon-buffer.c @@ -1,19 +1,19 @@ // SPDX-License-Identifier: GPL-2.0-only #define _POSIX_C_SOURCE 200809L -#include "common/scaled-icon-buffer.h" +#include "scaled-buffer/scaled-icon-buffer.h" #include #include #include #include "buffer.h" #include "common/macros.h" #include "common/mem.h" -#include "common/scaled-scene-buffer.h" #include "common/string-helpers.h" #include "config.h" #include "config/rcxml.h" #include "desktop-entry.h" #include "img/img.h" #include "node.h" +#include "scaled-buffer/scaled-buffer.h" #include "view.h" #include "window-rules.h" @@ -97,7 +97,7 @@ load_server_icon(struct scaled_icon_buffer *self, int icon_size, double scale) #endif /* HAVE_LIBSFDO */ static struct lab_data_buffer * -_create_buffer(struct scaled_scene_buffer *scaled_buffer, double scale) +_create_buffer(struct scaled_buffer *scaled_buffer, double scale) { #if HAVE_LIBSFDO struct scaled_icon_buffer *self = scaled_buffer->data; @@ -168,7 +168,7 @@ set_icon_buffers(struct scaled_icon_buffer *self, struct wl_array *buffers) } static void -_destroy(struct scaled_scene_buffer *scaled_buffer) +_destroy(struct scaled_buffer *scaled_buffer) { struct scaled_icon_buffer *self = scaled_buffer->data; if (self->view) { @@ -194,8 +194,8 @@ icon_buffers_equal(struct wl_array *a, struct wl_array *b) } static bool -_equal(struct scaled_scene_buffer *scaled_buffer_a, - struct scaled_scene_buffer *scaled_buffer_b) +_equal(struct scaled_buffer *scaled_buffer_a, + struct scaled_buffer *scaled_buffer_b) { struct scaled_icon_buffer *a = scaled_buffer_a->data; struct scaled_icon_buffer *b = scaled_buffer_b->data; @@ -209,7 +209,7 @@ _equal(struct scaled_scene_buffer *scaled_buffer_a, && a->height == b->height; } -static struct scaled_scene_buffer_impl impl = { +static struct scaled_buffer_impl impl = { .create_buffer = _create_buffer, .destroy = _destroy, .equal = _equal, @@ -222,7 +222,7 @@ scaled_icon_buffer_create(struct wlr_scene_tree *parent, struct server *server, assert(parent); assert(width >= 0 && height >= 0); - struct scaled_scene_buffer *scaled_buffer = scaled_scene_buffer_create( + struct scaled_buffer *scaled_buffer = scaled_buffer_create( parent, &impl, /* drop_buffer */ true); struct scaled_icon_buffer *self = znew(*self); self->scaled_buffer = scaled_buffer; @@ -256,7 +256,7 @@ handle_view_set_icon(struct wl_listener *listener, void *data) } set_icon_buffers(self, &self->view->icon.buffers); - scaled_scene_buffer_request_update(self->scaled_buffer, + scaled_buffer_request_update(self->scaled_buffer, self->width, self->height); } @@ -272,7 +272,7 @@ handle_view_new_title(struct wl_listener *listener, void *data) return; } self->view_icon_prefer_client = prefer_client; - scaled_scene_buffer_request_update(self->scaled_buffer, + scaled_buffer_request_update(self->scaled_buffer, self->width, self->height); } @@ -290,7 +290,7 @@ handle_view_new_app_id(struct wl_listener *listener, void *data) xstrdup_replace(self->view_app_id, app_id); self->view_icon_prefer_client = window_rules_get_property( self->view, "iconPreferClient") == LAB_PROP_TRUE; - scaled_scene_buffer_request_update(self->scaled_buffer, + scaled_buffer_request_update(self->scaled_buffer, self->width, self->height); } @@ -348,14 +348,14 @@ scaled_icon_buffer_set_icon_name(struct scaled_icon_buffer *self, return; } xstrdup_replace(self->icon_name, icon_name); - scaled_scene_buffer_request_update(self->scaled_buffer, self->width, self->height); + scaled_buffer_request_update(self->scaled_buffer, self->width, self->height); } struct scaled_icon_buffer * scaled_icon_buffer_from_node(struct wlr_scene_node *node) { - struct scaled_scene_buffer *scaled_buffer = - node_scaled_scene_buffer_from_node(node); + struct scaled_buffer *scaled_buffer = + node_scaled_buffer_from_node(node); assert(scaled_buffer->impl == &impl); return scaled_buffer->data; } diff --git a/src/common/scaled-img-buffer.c b/src/scaled-buffer/scaled-img-buffer.c similarity index 72% rename from src/common/scaled-img-buffer.c rename to src/scaled-buffer/scaled-img-buffer.c index c66ada7c..488c861c 100644 --- a/src/common/scaled-img-buffer.c +++ b/src/scaled-buffer/scaled-img-buffer.c @@ -1,17 +1,17 @@ // SPDX-License-Identifier: GPL-2.0-only #define _POSIX_C_SOURCE 200809L -#include "common/scaled-img-buffer.h" +#include "scaled-buffer/scaled-img-buffer.h" #include #include #include #include "buffer.h" #include "common/mem.h" -#include "common/scaled-scene-buffer.h" #include "img/img.h" #include "node.h" +#include "scaled-buffer/scaled-buffer.h" static struct lab_data_buffer * -_create_buffer(struct scaled_scene_buffer *scaled_buffer, double scale) +_create_buffer(struct scaled_buffer *scaled_buffer, double scale) { struct scaled_img_buffer *self = scaled_buffer->data; struct lab_data_buffer *buffer = lab_img_render(self->img, @@ -20,7 +20,7 @@ _create_buffer(struct scaled_scene_buffer *scaled_buffer, double scale) } static void -_destroy(struct scaled_scene_buffer *scaled_buffer) +_destroy(struct scaled_buffer *scaled_buffer) { struct scaled_img_buffer *self = scaled_buffer->data; lab_img_destroy(self->img); @@ -28,8 +28,8 @@ _destroy(struct scaled_scene_buffer *scaled_buffer) } static bool -_equal(struct scaled_scene_buffer *scaled_buffer_a, - struct scaled_scene_buffer *scaled_buffer_b) +_equal(struct scaled_buffer *scaled_buffer_a, + struct scaled_buffer *scaled_buffer_b) { struct scaled_img_buffer *a = scaled_buffer_a->data; struct scaled_img_buffer *b = scaled_buffer_b->data; @@ -39,7 +39,7 @@ _equal(struct scaled_scene_buffer *scaled_buffer_a, && a->height == b->height; } -static struct scaled_scene_buffer_impl impl = { +static struct scaled_buffer_impl impl = { .create_buffer = _create_buffer, .destroy = _destroy, .equal = _equal, @@ -53,7 +53,7 @@ scaled_img_buffer_create(struct wlr_scene_tree *parent, struct lab_img *img, assert(img); assert(width >= 0 && height >= 0); - struct scaled_scene_buffer *scaled_buffer = scaled_scene_buffer_create( + struct scaled_buffer *scaled_buffer = scaled_buffer_create( parent, &impl, /* drop_buffer */ true); struct scaled_img_buffer *self = znew(*self); self->scaled_buffer = scaled_buffer; @@ -64,7 +64,7 @@ scaled_img_buffer_create(struct wlr_scene_tree *parent, struct lab_img *img, scaled_buffer->data = self; - scaled_scene_buffer_request_update(scaled_buffer, width, height); + scaled_buffer_request_update(scaled_buffer, width, height); return self; } @@ -72,8 +72,8 @@ scaled_img_buffer_create(struct wlr_scene_tree *parent, struct lab_img *img, struct scaled_img_buffer * scaled_img_buffer_from_node(struct wlr_scene_node *node) { - struct scaled_scene_buffer *scaled_buffer = - node_scaled_scene_buffer_from_node(node); + struct scaled_buffer *scaled_buffer = + node_scaled_buffer_from_node(node); assert(scaled_buffer->impl == &impl); return scaled_buffer->data; } diff --git a/src/server.c b/src/server.c index e8befd55..2b48b5ae 100644 --- a/src/server.c +++ b/src/server.c @@ -48,7 +48,6 @@ #include "drm-lease-v1-protocol.h" #include "action.h" #include "common/macros.h" -#include "common/scaled-scene-buffer.h" #include "config/rcxml.h" #include "config/session.h" #include "decorations.h" @@ -64,6 +63,7 @@ #include "output-virtual.h" #include "regions.h" #include "resize-indicator.h" +#include "scaled-buffer/scaled-buffer.h" #include "session-lock.h" #include "theme.h" #include "view.h" @@ -80,7 +80,7 @@ static void reload_config_and_theme(struct server *server) { - scaled_scene_buffer_invalidate_sharing(); + scaled_buffer_invalidate_sharing(); rcxml_finish(); rcxml_read(rc.config_file); theme_finish(server->theme); diff --git a/src/ssd/resize-indicator.c b/src/ssd/resize-indicator.c index cc5731ae..59a66022 100644 --- a/src/ssd/resize-indicator.c +++ b/src/ssd/resize-indicator.c @@ -4,11 +4,11 @@ #include #include #include "common/macros.h" -#include "common/scaled-font-buffer.h" #include "config/rcxml.h" #include "labwc.h" #include "resize-indicator.h" #include "resize-outlines.h" +#include "scaled-buffer/scaled-font-buffer.h" #include "theme.h" #include "view.h" diff --git a/src/ssd/ssd-part.c b/src/ssd/ssd-part.c index 09dbf6a1..d5430660 100644 --- a/src/ssd/ssd-part.c +++ b/src/ssd/ssd-part.c @@ -4,9 +4,9 @@ #include "config/rcxml.h" #include "common/list.h" #include "common/mem.h" -#include "common/scaled-icon-buffer.h" -#include "common/scaled-img-buffer.h" #include "node.h" +#include "scaled-buffer/scaled-icon-buffer.h" +#include "scaled-buffer/scaled-img-buffer.h" #include "ssd-internal.h" /* Internal helpers */ diff --git a/src/ssd/ssd-titlebar.c b/src/ssd/ssd-titlebar.c index fabcaf7a..13e3ebf6 100644 --- a/src/ssd/ssd-titlebar.c +++ b/src/ssd/ssd-titlebar.c @@ -6,9 +6,6 @@ #include #include "buffer.h" #include "common/mem.h" -#include "common/scaled-font-buffer.h" -#include "common/scaled-icon-buffer.h" -#include "common/scaled-img-buffer.h" #include "common/scene-helpers.h" #include "common/string-helpers.h" #include "config/rcxml.h" @@ -16,6 +13,9 @@ #include "img/img.h" #include "labwc.h" #include "node.h" +#include "scaled-buffer/scaled-font-buffer.h" +#include "scaled-buffer/scaled-icon-buffer.h" +#include "scaled-buffer/scaled-img-buffer.h" #include "ssd-internal.h" #include "theme.h" #include "view.h"