mirror of
https://github.com/DreamMaoMao/maomaowm.git
synced 2026-03-21 05:34:05 -04:00
opt: avoid unnecessary action when layer surface commit
This commit is contained in:
parent
263b1845bb
commit
20dbffdfaf
1 changed files with 18 additions and 11 deletions
29
src/mango.c
29
src/mango.c
|
|
@ -2476,19 +2476,26 @@ void commitlayersurfacenotify(struct wl_listener *listener, void *data) {
|
||||||
return;
|
return;
|
||||||
l->mapped = layer_surface->surface->mapped;
|
l->mapped = layer_surface->surface->mapped;
|
||||||
|
|
||||||
if (scene_layer != l->scene->node.parent) {
|
if (layer_surface->current.committed & WLR_LAYER_SURFACE_V1_STATE_LAYER) {
|
||||||
wlr_scene_node_reparent(&l->scene->node, scene_layer);
|
if (scene_layer != l->scene->node.parent) {
|
||||||
wl_list_remove(&l->link);
|
wlr_scene_node_reparent(&l->scene->node, scene_layer);
|
||||||
wl_list_insert(&l->mon->layers[layer_surface->current.layer], &l->link);
|
wl_list_remove(&l->link);
|
||||||
wlr_scene_node_reparent(
|
wl_list_insert(&l->mon->layers[layer_surface->current.layer],
|
||||||
&l->popups->node,
|
&l->link);
|
||||||
(layer_surface->current.layer < ZWLR_LAYER_SHELL_V1_LAYER_TOP
|
wlr_scene_node_reparent(
|
||||||
? layers[LyrTop]
|
&l->popups->node,
|
||||||
: scene_layer));
|
(layer_surface->current.layer < ZWLR_LAYER_SHELL_V1_LAYER_TOP
|
||||||
|
? layers[LyrTop]
|
||||||
|
: scene_layer));
|
||||||
|
}
|
||||||
|
|
||||||
|
arrangelayers(l->mon);
|
||||||
}
|
}
|
||||||
|
|
||||||
arrangelayers(l->mon);
|
if (layer_surface->current.committed &
|
||||||
reset_exclusive_layers_focus(l->mon);
|
WLR_LAYER_SURFACE_V1_STATE_KEYBOARD_INTERACTIVITY) {
|
||||||
|
reset_exclusive_layers_focus(l->mon);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void commitnotify(struct wl_listener *listener, void *data) {
|
void commitnotify(struct wl_listener *listener, void *data) {
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue