summaryrefslogtreecommitdiffhomepage
path: root/patch/togglefullscreen.c
diff options
context:
space:
mode:
Diffstat (limited to 'patch/togglefullscreen.c')
-rw-r--r--patch/togglefullscreen.c31
1 files changed, 19 insertions, 12 deletions
diff --git a/patch/togglefullscreen.c b/patch/togglefullscreen.c
index 0d08e72..02de033 100644
--- a/patch/togglefullscreen.c
+++ b/patch/togglefullscreen.c
@@ -1,17 +1,24 @@
void
togglefullscreen(const Arg *arg)
{
- if (!selmon->sel)
- return;
+ if (!selmon->sel)
+ return;
- #if !FAKEFULLSCREEN_PATCH && FAKEFULLSCREEN_CLIENT_PATCH
- if (selmon->sel->fakefullscreen) {
- selmon->sel->fakefullscreen = 0;
- if (selmon->sel->isfullscreen) {
- selmon->sel->isfullscreen = 0;
- }
- }
- #endif // FAKEFULLSCREEN_CLIENT_PATCH
+ #if !FAKEFULLSCREEN_PATCH && FAKEFULLSCREEN_CLIENT_PATCH
+ if (selmon->sel->fakefullscreen == 1) {
+ selmon->sel->fakefullscreen = 2;
+ if (selmon->sel->isfullscreen) {
+ selmon->sel->isfullscreen = 0;
+ }
+ } else if (selmon->sel->fakefullscreen == 2) {
+ selmon->sel->fakefullscreen = 0;
+ togglefakefullscreen(NULL);
+ arrange(selmon);
+ return;
+ }
+ #endif // FAKEFULLSCREEN_CLIENT_PATCH
- setfullscreen(selmon->sel, !selmon->sel->isfullscreen);
-} \ No newline at end of file
+ setfullscreen(selmon->sel, !selmon->sel->isfullscreen);
+ if (!selmon->sel->isfullscreen)
+ arrange(selmon);
+}