diff options
author | Leonardo Hernández Hernández <leohdz172@protonmail.com> | 2022-09-02 18:22:15 -0500 |
---|---|---|
committer | Leonardo Hernández Hernández <leohdz172@protonmail.com> | 2022-09-02 18:22:15 -0500 |
commit | 19a8a095ebe782065903b9a03670560371302206 (patch) | |
tree | b712d686ca4386b2c4c979ed455e8d7ec4dd9aad | |
parent | 1f59b76d7726c83e8131609d806d5c78abb89356 (diff) |
call setfullscreen() in setmon()
this will help when sending to another monitor a fullscreen client
and also will prevent a crash when a client request fullscreen when it has no monitor
-rw-r--r-- | dwl.c | 7 |
1 files changed, 3 insertions, 4 deletions
@@ -1438,9 +1438,6 @@ mapnotify(struct wl_listener *listener, void *data) } printstatus(); - if (c->isfullscreen) - setfullscreen(c, 1); - c->mon->un_map = 1; } @@ -1889,6 +1886,8 @@ void setfullscreen(Client *c, int fullscreen) { c->isfullscreen = fullscreen; + if (!c->mon) + return; c->bw = fullscreen ? 0 : borderpx; client_set_fullscreen(c, fullscreen); @@ -1968,7 +1967,7 @@ setmon(Client *c, Monitor *m, unsigned int newtags) resize(c, c->geom, 0); wlr_surface_send_enter(client_surface(c), m->wlr_output); c->tags = newtags ? newtags : m->tagset[m->seltags]; /* assign tags of target monitor */ - arrange(m); + setfullscreen(c, c->isfullscreen); /* This will call arrange(c->mon) */ } focusclient(focustop(selmon), 1); } |