2026/02/17

2026-02-17 00:15:38 +0000hightower4(~hightower@dh207-83-96.xnet.hr) (Ping timeout: 252 seconds)
2026-02-17 00:19:56 +0000hightower3(~hightower@dh207-83-96.xnet.hr) hightower2
2026-02-17 01:11:48 +0000beastwick(~brian@user/beastwick) beastwick
2026-02-17 01:13:46 +0000 <beastwick> hello, not sure if this is a bug, but I am simply swapping screens with XMonad.Actions.CycleWS swapNextScreen. On one monitor I have tabbed layout, so multiple windows with tabs at the top. When I swap, the workspaces correctly switch, but the tab bar appears over the other workspace and can only be removed if I restart xmonad in place.
2026-02-17 01:14:06 +0000werneta(~werneta@71.83.160.242) werneta
2026-02-17 01:15:53 +0000 <beastwick> oh wait, now it isn't happening not sure why
2026-02-17 01:16:04 +0000 <beastwick> weird
2026-02-17 01:23:11 +0000 <geekosaur> known bug, some layout modifier you're using isn't passing on the Hide message to Tabbed
2026-02-17 01:23:34 +0000 <beastwick> oh :(, can I pass it along, or modify the function?
2026-02-17 01:23:36 +0000 <geekosaur> sadly a lot of layout modifiers don't pass on the Hide or ReleaseResources messages
2026-02-17 01:28:51 +0000 <geekosaur> you'd have to bisect to find the layout modifier that isn't passing them on and make a local copy of it (in ~/.xmonad/lib/XMonad/Layout/whatever.hs) with the handleMessage logic added (see for example https://github.com/xmonad/xmonad-contrib/pull/813/changes#diff-39a8849b1ce55ed5ed86080ca98a422374c…)
2026-02-17 01:29:14 +0000 <beastwick> thanks, this is what I am going to do
2026-02-17 01:29:20 +0000 <beastwick> I already have some other modified classes
2026-02-17 01:29:36 +0000 <geekosaur> if a layout modifier uses the XMonad.Layout.LayoutModifier framework, that already handles them for it
2026-02-17 01:30:33 +0000 <beastwick> oh so, cyclews swapNextScreen can't ensure this, I have to fix the layout modifier itself?
2026-02-17 01:31:00 +0000 <geekosaur> (also if you scroll up on that link, you'll find the old version which actually has the bug in question; note that its handleMess deals only with its own message. I should probably fix that before liskin gets around to reviewing the whole thing)
2026-02-17 01:34:14 +0000 <geekosaur> swapNextScreen itself doesn't process messages, but xmonad sends Hide to the workspace being swapped and then when it's redrawn on its new screen the tabs are recreated
2026-02-17 01:34:26 +0000 <geekosaur> something in the layout stack isn't passing on Hide to Tabbed
2026-02-17 01:34:40 +0000 <geekosaur> so the tabs stay where they were drawn on the old screen
2026-02-17 01:35:16 +0000 <geekosaur> Tabbed itself handles these correctly (well, Decoration handles them for it) but it has to receive them
2026-02-17 01:36:26 +0000 <geekosaur> so you need to take a look at your layoutHook and in particular any modifiers before the actual layouts; usually these are modifier1 $ modifier 2 $ … $ (layout ||| layout ||| …)
2026-02-17 01:42:11 +0000 <geekosaur> sorry, it actually sends ReleaseResources so the windows are removed and later recreated
2026-02-17 01:42:30 +0000 <geekosaur> but generally people don't handle either in layout modifiers 😦
2026-02-17 01:56:02 +0000 <beastwick> much thanks, so is it an issue in the library itself, or perhaps something I can pass via my layout modifier hook?
2026-02-17 01:56:24 +0000 <beastwick> or well, you are saying that tabbed layout might not handle messages?
2026-02-17 02:13:34 +0000 <geekosaur> you can't pass it via your layoutHook, and Tabbed is already doing the right thing. something *leading to* Tabbed isn't doing the right thing, and you can't just wire around it without losing that layout modifier completely
2026-02-17 02:14:28 +0000 <geekosaur> you meed to find out which layout modifier is swallowing the message and make a local copy modified to pass the message on, and file an issue about it so we can fix it here (or open a PR with your modified copy)
2026-02-17 02:15:55 +0000 <geekosaur> https://github.com/xmonad/xmonad-contrib/blob/master/XMonad/Layout/PerScreen.hs#L70-L72 this is a layout modifier that swallows messages instead of passing them on (for which I already have a fix in a PR)
2026-02-17 02:21:20 +0000werneta(~werneta@71.83.160.242) (Quit: Lost terminal)
2026-02-17 02:28:26 +0000 <geekosaur> one of the things I would really like to do but don't see a good way to do with the way we currently do layout messages is message tracing
2026-02-17 02:35:09 +0000freedrul1(~deploy@167.99.155.33) (Server closed connection)
2026-02-17 02:50:25 +0000freedrull(~deploy@167.99.155.33) freedrull
2026-02-17 03:10:46 +0000td_(~td@i5387093C.versanet.de) (Ping timeout: 244 seconds)
2026-02-17 03:12:46 +0000td_(~td@i53870928.versanet.de) td_
2026-02-17 03:41:48 +0000werneta(~werneta@71.83.160.242) werneta
2026-02-17 03:47:09 +0000FatBoyXPC(~FatBoyXPC@user/fatboyxpc) (Server closed connection)
2026-02-17 03:48:21 +0000FatBoyXPC(~FatBoyXPC@user/fatboyxpc) FatBoyXPC
2026-02-17 04:59:54 +0000werneta_(~werneta@71.83.160.242) werneta
2026-02-17 05:03:15 +0000Forkk13(~forkk@li926-228.members.linode.com) (Ping timeout: 245 seconds)
2026-02-17 05:15:10 +0000werneta(~werneta@71.83.160.242) (Quit: Lost terminal)
2026-02-17 05:19:55 +0000sajenim(~sajenim@user/sajenim) (Ping timeout: 245 seconds)
2026-02-17 05:20:58 +0000lambdabot(~lambdabot@haskell/bot/lambdabot) (Read error: Connection reset by peer)
2026-02-17 05:20:58 +0000sajenim(~sajenim@user/sajenim) sajenim
2026-02-17 05:25:36 +0000lambdabot(~lambdabot@haskell/bot/lambdabot) lambdabot
2026-02-17 06:36:36 +0000werneta_(~werneta@71.83.160.242) (Quit: Lost terminal)
2026-02-17 07:09:28 +0000ml|(~ml|@user/ml/x-5298235) (Ping timeout: 244 seconds)
2026-02-17 07:23:50 +0000ml|(~ml|@user/ml/x-5298235) ml|
2026-02-17 09:13:02 +0000ft(~ft@p4fc2afab.dip0.t-ipconnect.de) (Quit: leaving)
2026-02-17 12:32:09 +0000smashgrab(~smashgrab@188.166.8.80) (Server closed connection)
2026-02-17 12:32:52 +0000smashgrab(~smashgrab@188.166.8.80) smashgrab
2026-02-17 13:03:43 +0000T_X(~T_X@diktynna.open-mesh.org) (Read error: Connection reset by peer)
2026-02-17 13:04:20 +0000T_X(~T_X@diktynna.open-mesh.org) T_X
2026-02-17 13:51:01 +0000Enrico63(~Enrico63@host-79-56-90-180.retail.telecomitalia.it) Enrico63
2026-02-17 13:51:40 +0000hightower4(~hightower@dh207-83-96.xnet.hr) hightower2
2026-02-17 13:54:13 +0000hightower3(~hightower@dh207-83-96.xnet.hr) (Ping timeout: 255 seconds)
2026-02-17 14:01:41 +0000hightower3(~hightower@cpe-94-253-236-205.st.cable.xnet.hr) hightower2
2026-02-17 14:03:32 +0000hightower4(~hightower@dh207-83-96.xnet.hr) (Ping timeout: 265 seconds)
2026-02-17 14:05:48 +0000hightower3(~hightower@cpe-94-253-236-205.st.cable.xnet.hr) (Read error: Connection reset by peer)
2026-02-17 14:05:58 +0000hightower3(~hightower@cpe-94-253-236-205.st.cable.xnet.hr) hightower2
2026-02-17 14:07:22 +0000T_X_(~T_X@diktynna.open-mesh.org) T_X
2026-02-17 14:07:28 +0000T_X(~T_X@diktynna.open-mesh.org) (Read error: Connection reset by peer)
2026-02-17 14:32:22 +0000rekahsoft(~rekahsoft@76.67.111.168) rekahsoft
2026-02-17 14:38:12 +0000hightower3(~hightower@cpe-94-253-236-205.st.cable.xnet.hr) (Ping timeout: 264 seconds)
2026-02-17 16:40:41 +0000Enrico63(~Enrico63@host-79-56-90-180.retail.telecomitalia.it) (Ping timeout: 272 seconds)
2026-02-17 16:57:05 +0000Enrico63(~Enrico63@host-79-56-90-180.retail.telecomitalia.it) Enrico63
2026-02-17 16:58:00 +0000Enrico63(~Enrico63@host-79-56-90-180.retail.telecomitalia.it) (Client Quit)
2026-02-17 18:04:10 +0000ChubaDuba(~ChubaDuba@5.167.118.198) ChubaDuba
2026-02-17 18:47:33 +0000ChubaDuba(~ChubaDuba@5.167.118.198) (Quit: WeeChat 4.8.1)
2026-02-17 18:47:50 +0000ChubaDuba(~ChubaDuba@5.167.118.198) ChubaDuba
2026-02-17 18:54:11 +0000ChubaDuba(~ChubaDuba@5.167.118.198) (Quit: WeeChat 4.8.1)
2026-02-17 18:54:24 +0000ChubaDuba(~ChubaDuba@5.167.118.198) ChubaDuba
2026-02-17 18:58:44 +0000ChubaDuba(~ChubaDuba@5.167.118.198) (Ping timeout: 252 seconds)
2026-02-17 19:06:59 +0000de-vri-es(~de-vri-es@voyager.de-vri.es) (Server closed connection)
2026-02-17 19:07:21 +0000de-vri-es(~de-vri-es@voyager.de-vri.es) de-vri-es
2026-02-17 19:52:08 +0000ChubaDuba(~ChubaDuba@5.167.118.198) ChubaDuba
2026-02-17 19:56:29 +0000ChubaDuba(~ChubaDuba@5.167.118.198) (Ping timeout: 252 seconds)
2026-02-17 20:57:24 +0000ChubaDuba(~ChubaDuba@5.167.118.198) ChubaDuba
2026-02-17 21:04:51 +0000Digit(~user@user/digit) (Read error: Connection reset by peer)
2026-02-17 21:06:56 +0000Digit(~user@user/digit) Digit
2026-02-17 21:34:27 +0000ChubaDuba(~ChubaDuba@5.167.118.198) (Quit: WeeChat 4.8.1)
2026-02-17 21:34:44 +0000ChubaDuba(~ChubaDuba@5.167.118.198) ChubaDuba
2026-02-17 22:23:01 +0000ectospasm(~ectospasm@user/ectospasm) (Quit: WeeChat 4.8.1)
2026-02-17 22:23:45 +0000ChubaDuba(~ChubaDuba@5.167.118.198) (Quit: WeeChat 4.8.1)
2026-02-17 23:25:36 +0000ml|(~ml|@user/ml/x-5298235) (Ping timeout: 264 seconds)
2026-02-17 23:39:01 +0000ml|(~ml|@user/ml/x-5298235) ml|