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