mirror of
https://github.com/DreamMaoMao/maomaowm.git
synced 2026-06-19 14:33:16 -04:00
opt: If nodes are not used, then do not create them
This commit is contained in:
parent
3251e9d3bb
commit
79d9b4aa6b
3 changed files with 28 additions and 15 deletions
|
|
@ -95,4 +95,22 @@ void client_pending_force_kill(Client *c) {
|
|||
if (!c)
|
||||
return;
|
||||
kill(c->pid, SIGKILL);
|
||||
}
|
||||
}
|
||||
|
||||
void client_add_text_node(Client *c) {
|
||||
c->text_node = mango_text_node_create(c->scene, config.textdata);
|
||||
wlr_scene_node_lower_to_bottom(&c->text_node->scene_buffer->node);
|
||||
wlr_scene_node_set_enabled(&c->text_node->scene_buffer->node, false);
|
||||
}
|
||||
|
||||
void client_add_titlebar_node(Client *c) {
|
||||
MangoNodeData *mangonodedata = ecalloc(1, sizeof(MangoNodeData));
|
||||
mangonodedata->node_data = c;
|
||||
mangonodedata->type = MANGO_TITLE_NODE;
|
||||
|
||||
c->titlebar_node = mango_titlebar_node_create(
|
||||
mangonodedata, layers[LyrDecorate], config.textdata, 0, 0);
|
||||
wlr_scene_node_lower_to_bottom(&c->titlebar_node->scene_buffer->node);
|
||||
wlr_scene_node_set_enabled(&c->titlebar_node->scene_buffer->node, false);
|
||||
mango_titlebar_node_update(c->titlebar_node, client_get_title(c), 1.0);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1143,6 +1143,15 @@ void pre_caculate_before_arrange(Monitor *m, bool want_animation,
|
|||
set_size_per(m, c);
|
||||
}
|
||||
|
||||
if (m->is_jump_mode && !c->text_node) {
|
||||
client_add_text_node(c);
|
||||
}
|
||||
|
||||
if (m->pertag->ltidxs[m->pertag->curtag]->id == MONOCLE &&
|
||||
!c->titlebar_node) {
|
||||
client_add_titlebar_node(c);
|
||||
}
|
||||
|
||||
if (c->titlebar_node && c->mon == m) {
|
||||
wlr_scene_node_set_enabled(&c->titlebar_node->scene_buffer->node,
|
||||
false);
|
||||
|
|
|
|||
14
src/mango.c
14
src/mango.c
|
|
@ -4573,20 +4573,6 @@ mapnotify(struct wl_listener *listener, void *data) {
|
|||
#endif
|
||||
// extra node
|
||||
|
||||
c->text_node = mango_text_node_create(c->scene, config.textdata);
|
||||
wlr_scene_node_lower_to_bottom(&c->text_node->scene_buffer->node);
|
||||
wlr_scene_node_set_enabled(&c->text_node->scene_buffer->node, false);
|
||||
|
||||
MangoNodeData *mangonodedata = ecalloc(1, sizeof(MangoNodeData));
|
||||
mangonodedata->node_data = c;
|
||||
mangonodedata->type = MANGO_TITLE_NODE;
|
||||
|
||||
c->titlebar_node = mango_titlebar_node_create(
|
||||
mangonodedata, layers[LyrDecorate], config.textdata, 0, 0);
|
||||
wlr_scene_node_lower_to_bottom(&c->titlebar_node->scene_buffer->node);
|
||||
wlr_scene_node_set_enabled(&c->titlebar_node->scene_buffer->node, false);
|
||||
mango_titlebar_node_update(c->titlebar_node, client_get_title(c), 1.0);
|
||||
|
||||
for (i = 0; i < 2; i++) {
|
||||
c->splitindicator[i] = wlr_scene_rect_create(
|
||||
c->scene, 0, 0,
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue