2025/11/16

2025-11-16 04:05:01 +0100YamiFrankc(YamiFrankc@2600:3c00::f03c:95ff:fece:ea52)
2025-11-16 04:24:43 +0100td_(~td@i53870938.versanet.de) (Ping timeout: 244 seconds)
2025-11-16 04:26:45 +0100td_(~td@i5387093F.versanet.de)
2025-11-16 04:30:33 +0100 <haskellbridge> <Nexilva> -- Workspaces
2025-11-16 04:30:33 +0100 <haskellbridge> ... long message truncated: https://kf8nh.com/_heisenbridge/media/kf8nh.com/HuGGaJvQAKqIxBMpbWXmBjxR/7pUEcrVERTo (28 lines)
2025-11-16 04:31:13 +0100 <haskellbridge> <Nexilva> https://bpa.st/5ZEA here is the full config
2025-11-16 04:38:05 +0100 <geekosaur> browsers don't obey normal rules
2025-11-16 04:39:09 +0100 <geekosaur> in particular, they don't set any window properties until after the initial JS (including built-in stuff like the start page) has run, which is after the window has been mapped and therefore run through the manageHook
2025-11-16 04:39:35 +0100 <geekosaur> https://hackage.haskell.org/package/xmonad-contrib-0.18.1/docs/XMonad-Hooks-OnPropertyChange.html
2025-11-16 04:41:14 +0100 <geekosaur> this leads to stuff like chrome/chronium having an appName which is the internal id (a long hex string) of the start page or the chrome app used to open the window
2025-11-16 04:42:44 +0100 <geekosaur> which means browser windows, including desktop apps which are secretly browsers like spotify or discord, can't be managed in manageHook or by NamedScratchpads etc.
2025-11-16 04:45:19 +0100 <haskellbridge> <Nexilva> I see.
2025-11-16 04:45:58 +0100 <haskellbridge> <Nexilva> ", handleEventHook = focusOnMouseMove <+> screenCornerEventHook <+> onXPropertyChange "WM_NAME" (title =? "waterfox" --> doShift "1:net")" is there a cleaner way to do this? I am weak in Haskell
2025-11-16 04:47:02 +0100 <geekosaur> composeAll, mconcat, or do
2025-11-16 04:47:57 +0100 <geekosaur> this isn't so much Haskell as (historical) xmonad specific behavior
2025-11-16 04:49:30 +0100 <geekosaur> hooks are monoids and can be combined with <+> (which is an obsolete alias for <>, which didn't exist back then) or mconcat; composeAll is an alias for mconcat; and hooks are actions in the X monad so can be combined with do
2025-11-16 04:51:14 +0100L29Ah(~L29Ah@wikipedia/L29Ah) L29Ah
2025-11-16 05:00:15 +0100 <haskellbridge> <Nexilva> Thank you
2025-11-16 06:17:28 +0100L29Ah(~L29Ah@wikipedia/L29Ah) (Read error: Connection reset by peer)
2025-11-16 06:22:51 +0100ft(~ft@p4fc2aaeb.dip0.t-ipconnect.de) (Quit: leaving)
2025-11-16 10:46:58 +0100uhdhdh(~uhdhdh@dslb-002-205-170-105.002.205.pools.vodafone-ip.de)
2025-11-16 10:52:39 +0100uhdhdh(~uhdhdh@dslb-002-205-170-105.002.205.pools.vodafone-ip.de) (Ping timeout: 250 seconds)
2025-11-16 13:33:19 +0100Enrico63(~Enrico63@2a0b:e541:10d0:0:9efc:e8ff:fe24:3213) Enrico63
2025-11-16 13:37:26 +0100Enrico63(~Enrico63@2a0b:e541:10d0:0:9efc:e8ff:fe24:3213) (Client Quit)
2025-11-16 13:37:48 +0100Enrico63(~Enrico63@2a0b:e541:10d0:0:9efc:e8ff:fe24:3213) Enrico63
2025-11-16 14:27:09 +0100tremon(~tremon@83.80.159.219) tremon
2025-11-16 14:54:01 +0100L29Ah(~L29Ah@wikipedia/L29Ah) L29Ah
2025-11-16 15:39:19 +0100L29Ah(~L29Ah@wikipedia/L29Ah) (Read error: Connection reset by peer)
2025-11-16 17:35:57 +0100L29Ah(~L29Ah@wikipedia/L29Ah) L29Ah
2025-11-16 18:30:09 +0100uhdhdh(~uhdhdh@dslb-002-205-170-105.002.205.pools.vodafone-ip.de)
2025-11-16 19:29:51 +0100Enrico63(~Enrico63@2a0b:e541:10d0:0:9efc:e8ff:fe24:3213) (Quit: Client closed)
2025-11-16 19:32:39 +0100uhdhdh(~uhdhdh@dslb-002-205-170-105.002.205.pools.vodafone-ip.de) (Ping timeout: 250 seconds)
2025-11-16 19:45:07 +0100uhdhdh(~uhdhdh@dslb-002-205-170-105.002.205.pools.vodafone-ip.de)
2025-11-16 19:52:09 +0100uhdhdh(~uhdhdh@dslb-002-205-170-105.002.205.pools.vodafone-ip.de) (Ping timeout: 250 seconds)
2025-11-16 20:15:00 +0100L29Ah(~L29Ah@wikipedia/L29Ah) (Read error: Connection reset by peer)