per-app-cast: prefix var with ext_ for compatibility with other patches

This commit is contained in:
skeetamine
2026-07-02 17:43:32 +03:00
parent fd64a18e6f
commit 514ad37ea9
@@ -27,7 +27,7 @@ index 8101ffa..7f4d059 100644
struct wlr_xwayland_surface *xwayland;
} surface;
struct wlr_xdg_toplevel_decoration_v1 *decoration;
+ struct wlr_ext_foreign_toplevel_handle_v1 *foreign_toplevel;
+ struct wlr_ext_foreign_toplevel_handle_v1 *ext_foreign_toplevel;
struct wl_listener commit;
struct wl_listener map;
struct wl_listener maximize;
@@ -63,9 +63,9 @@ index 8101ffa..7f4d059 100644
static struct wlr_scene_rect *locked_bg;
static struct wlr_session_lock_v1 *cur_lock;
+static struct wlr_ext_foreign_toplevel_list_v1 *foreign_toplevel_list;
+static struct wlr_ext_foreign_toplevel_list_v1 *ext_foreign_toplevel_list;
+static struct wlr_ext_foreign_toplevel_image_capture_source_manager_v1 *toplevel_capture_mgr;
+static struct wl_listener foreign_toplevel_capture_request = {.notify = handlecapturerequest};
+static struct wl_listener ext_foreign_toplevel_capture_request = {.notify = handlecapturerequest};
+
static struct wlr_seat *seat;
static KeyboardGroup *kb_group;
@@ -90,7 +90,7 @@ index 8101ffa..7f4d059 100644
wl_list_remove(&request_start_drag.link);
wl_list_remove(&start_drag.link);
wl_list_remove(&new_session_lock.link);
+ wl_list_remove(&foreign_toplevel_capture_request.link);
+ wl_list_remove(&ext_foreign_toplevel_capture_request.link);
#ifdef XWAYLAND
wl_list_remove(&new_xwayland_surface.link);
wl_list_remove(&xwayland_ready.link);
@@ -107,7 +107,7 @@ index 8101ffa..7f4d059 100644
+ struct wlr_ext_image_capture_source_v1 *source;
+
+ wl_list_for_each(c, &clients, link) {
+ if (c->foreign_toplevel != req->toplevel_handle)
+ if (c->ext_foreign_toplevel != req->toplevel_handle)
+ continue;
+
+ cs = ecalloc(1, sizeof(*cs));
@@ -145,7 +145,7 @@ index 8101ffa..7f4d059 100644
+ .title = client_get_title(c),
+ .app_id = client_get_appid(c),
+ };
+ c->foreign_toplevel = wlr_ext_foreign_toplevel_handle_v1_create(foreign_toplevel_list, &ft_state);
+ c->ext_foreign_toplevel = wlr_ext_foreign_toplevel_handle_v1_create(ext_foreign_toplevel_list, &ft_state);
+ }
+
/* Set initial monitor, tags, floating status, and focus:
@@ -155,9 +155,9 @@ index 8101ffa..7f4d059 100644
wlr_presentation_create(dpy, backend, 2);
wlr_alpha_modifier_v1_create(dpy);
+ foreign_toplevel_list = wlr_ext_foreign_toplevel_list_v1_create(dpy, 1);
+ ext_foreign_toplevel_list = wlr_ext_foreign_toplevel_list_v1_create(dpy, 1);
+ toplevel_capture_mgr = wlr_ext_foreign_toplevel_image_capture_source_manager_v1_create(dpy, 1);
+ wl_signal_add(&toplevel_capture_mgr->events.new_request, &foreign_toplevel_capture_request);
+ wl_signal_add(&toplevel_capture_mgr->events.new_request, &ext_foreign_toplevel_capture_request);
+
/* Initializes the interface used to implement urgency hints */
activation = wlr_xdg_activation_v1_create(dpy);
@@ -166,9 +166,9 @@ index 8101ffa..7f4d059 100644
wl_list_remove(&c->flink);
}
+ if (c->foreign_toplevel) {
+ wlr_ext_foreign_toplevel_handle_v1_destroy(c->foreign_toplevel);
+ c->foreign_toplevel = NULL;
+ if (c->ext_foreign_toplevel) {
+ wlr_ext_foreign_toplevel_handle_v1_destroy(c->ext_foreign_toplevel);
+ c->ext_foreign_toplevel = NULL;
+ }
+
wlr_scene_node_destroy(&c->scene->node);
@@ -179,12 +179,12 @@ index 8101ffa..7f4d059 100644
if (c == focustop(c->mon))
printstatus();
+
+ if (c->foreign_toplevel) {
+ if (c->ext_foreign_toplevel) {
+ struct wlr_ext_foreign_toplevel_handle_v1_state ft_state = {
+ .title = client_get_title(c),
+ .app_id = client_get_appid(c),
+ };
+ wlr_ext_foreign_toplevel_handle_v1_update_state(c->foreign_toplevel, &ft_state);
+ wlr_ext_foreign_toplevel_handle_v1_update_state(c->ext_foreign_toplevel, &ft_state);
+ }
}