mirror of
https://github.com/swaywm/sway.git
synced 2026-02-12 04:28:25 -05:00
container: Assign container scene descriptor to view aswell
We have to do with for fullscreen surfaces: Fullscreen surfaces technically aren't part of their container anymore visually (so the scene doesn't have it) but we want acknowledge the container it belongs to for input reasons. This will allow us to simplify node_at_coords later.
This commit is contained in:
parent
bd8f12915f
commit
e944e03751
3 changed files with 3 additions and 8 deletions
|
|
@ -76,14 +76,6 @@ struct sway_node *node_at_coords(
|
|||
struct sway_container *con = scene_descriptor_try_get(current,
|
||||
SWAY_SCENE_DESC_CONTAINER);
|
||||
|
||||
if (!con) {
|
||||
struct sway_view *view = scene_descriptor_try_get(current,
|
||||
SWAY_SCENE_DESC_VIEW);
|
||||
if (view) {
|
||||
con = view->container;
|
||||
}
|
||||
}
|
||||
|
||||
if (!con) {
|
||||
struct sway_popup_desc *popup =
|
||||
scene_descriptor_try_get(current, SWAY_SCENE_DESC_POPUP);
|
||||
|
|
|
|||
|
|
@ -556,6 +556,7 @@ void container_destroy(struct sway_container *con) {
|
|||
|
||||
if (con->view && con->view->container == con) {
|
||||
con->view->container = NULL;
|
||||
scene_descriptor_destroy(&con->view->scene_tree->node, SWAY_SCENE_DESC_CONTAINER);
|
||||
wlr_scene_node_destroy(&con->output_handler->node);
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -750,6 +750,8 @@ void view_map(struct sway_view *view, struct wlr_surface *wlr_surface,
|
|||
view->surface = wlr_surface;
|
||||
view_populate_pid(view);
|
||||
view->container = container_create(view);
|
||||
scene_descriptor_assign(&view->scene_tree->node,
|
||||
SWAY_SCENE_DESC_CONTAINER, view->container);
|
||||
|
||||
if (view->ctx == NULL) {
|
||||
struct launcher_ctx *ctx = launcher_ctx_find_pid(view->pid);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue