myvxwm

[fork] my vxwm config (optimised for my T480)
git clone https://git.lukeonline.net/repos/myvxwm
Log | Files | Refs | README | LICENSE

commit 10cb704b2b927f0751103ddd57c74a77b10e6e23
parent 8393ee244d5f8c3a1e7304cfeb778b2dbdfcd7a5
Author: wh1tepearl <wh1tepearl@gmail.com>
Date:   Tue,  3 Feb 2026 17:00:16 +0000

Support for slowing down animations

Diffstat:
Mmodules.def.h | 25+++++++++++++++----------
Mvxwm.c | 18+++++++++++++-----
2 files changed, 28 insertions(+), 15 deletions(-)

diff --git a/modules.def.h b/modules.def.h @@ -1,4 +1,4 @@ -#ifndef MODULES_H +##ifndef MODULES_H #define MODULES_H /* vxwm compile-time options */ @@ -17,6 +17,20 @@ +/* Tagging */ +#define TAG_TO_TAG 0 // If you switch to tag where you already are, it'll switch to previous tag. +#define SLOWER_TAGS_ANIMATION 0 // This slows down tags animation speed, which results in smoother tags animations (requires picom to see any difference). +#define WINDOWMAP 0 +/* This makes the windows get mapped or unmapped in X11. This results in certain + behaviour being enabled, for example when you use a compositor like picom - your + windows will fade in and out when you switch dwm tags. */ + +#define PDWM_LIKE_TAGS_ANIMATION 0 +/* This makes function showhide be like in pdwm, if using a compositor like picom, + this results in an alternative tags animation. */ + + + /* Bar */ #define ALT_CENTER_OF_BAR_COLOR 0 // changes center of bar color to a dark color. #define BAR_HEIGHT 0 // Support for changing bar height. @@ -41,15 +55,6 @@ #define MOVE_IN_TILED 0 // Support for moving windows in tiled mode. #define EWMH_TAGS 0 // Support for EWMH tags, recommended if you want to use external bars with less pain #define ALWAYS_CENTER_NEW_FLOATING_WINDOWS 0 //so, basically, it does what it says. -#define TAG_TO_TAG 0 // If you switch to tag where you already are, it'll switch to previous tag. -#define WINDOWMAP 0 -/* This makes the windows get mapped or unmapped in X11. This results in certain - behaviour being enabled, for example when you use a compositor like picom - your - windows will fade in and out when you switch dwm tags. */ - -#define PDWM_LIKE_TAGS_ANIMATION 0 -/* This makes function showhide be like in pdwm, if using a compositor like picom, - this results in an alternative tags animation. */ diff --git a/vxwm.c b/vxwm.c @@ -1891,13 +1891,21 @@ showhide(Client *c) /* hide clients bottom up */ showhide(c->snext); #if !WINDOWMAP - #if !PDWM_LIKE_TAGS_ANIMATION - XMoveWindow(dpy, c->win, WIDTH(c) * -2, c->y); + #if !PDWM_LIKE_TAGS_ANIMATION + #if !SLOWER_TAGS_ANIMATION + XMoveWindow(dpy, c->win, WIDTH(c) * -2, c->y); // fast #else - XMoveWindow(dpy, c->win, c->mon->wx + c->mon->ww / 2, -(HEIGHT(c))); - #endif + XMoveWindow(dpy, c->win, WIDTH(c) * -1, c->y); // slow + #endif // SLOWER_TAGS_ANIMATION + #else // PDWM_LIKE_TAGS_ANIMATION + #if !SLOWER_TAGS_ANIMATION + XMoveWindow(dpy, c->win, c->mon->wx + c->mon->ww / 2, -(HEIGHT(c) * 3) / 2); + #else + XMoveWindow(dpy, c->win, c->mon->wx + c->mon->ww / 2, -(HEIGHT(c))); + #endif // close SLOWER_TAGS_ANIMATION + #endif // close PDWM_LIKE_TAGS_ANIMATION #else - window_unmap(dpy, c->win, root, 1); + window_unmap(dpy, c->win, root, 1); #endif } }