Re: [hackers] Re: [dwm][PATCH v3] manage: For isfloating/oldstate check/set, ensure trans client actually exists

From: sir fish <m_AT_srf.sh>
Date: Fri, 11 Mar 2022 17:11:18 +0300

Miles Alan <hackers_AT_suckless.org> wrote:
> On Mon, Feb 21, 2022, at 1:10 AM, m_AT_milesalan.com wrote:
> > From: Miles Alan <m_AT_milesalan.com>
> >
> > In certain instances trans may be set to a window that doesn't actually
> > map to a client via wintoclient; in this case it doesn't make sense
> > to set isfloating/oldstate since trans is essentially invalid in that
> > case / correlates to the above condition check where trans is set /
> > XGetTransientForHint is called.
> > ---
> > dwm.c | 2 +-
> > 1 file changed, 1 insertion(+), 1 deletion(-)
> >
> > diff --git a/dwm.c b/dwm.c
> > index a96f33c..254ebf2 100644
> > --- a/dwm.c
> > +++ b/dwm.c
> > _AT_@ -1063,7 +1063,7 @@ manage(Window w, XWindowAttributes *wa)
> > XSelectInput(dpy, w,
> > EnterWindowMask|FocusChangeMask|PropertyChangeMask|StructureNotifyMask);
> > grabbuttons(c, 0);
> > if (!c->isfloating)
> > - c->isfloating = c->oldstate = trans != None || c->isfixed;
> > + c->isfloating = c->oldstate = t || c->isfixed;
> > if (c->isfloating)
> > XRaiseWindow(dpy, c->win);
> > attach(c);
> > --
> > 2.34.1
>
> You can test this patch with SDL applications which hit this edge case
> by default. Logic in dwm currently forces windows to become floating in
> this edge case.
>
> For example with the SDL games "rue" and "cdogs_sdl" on alpine, in i3wm
> these applications open as tiled windows by default as they should; while
> in dwm they open as floating windows due to this bug.
>
> This patch resolves that and SDL applications open as tiled with default
> flags as they should.
>

Hi,

I tried this patch on a freshly-cloned dwm, but it doesn't open
teeworlds, xonotic, supertuxcart games as tiled. It does, hover, open
the game cdogs as tiled. I couldn't try with the game rue as it wasn't
available on Void.

-- 
srfsh
Received on Fri Mar 11 2022 - 15:11:18 CET

This archive was generated by hypermail 2.3.0 : Fri Mar 11 2022 - 16:48:36 CET