2025-01-23 01:40:42 +0100 | <haskellbridge> | <m1mir> Hi, I have simple question. Does anyone know where I could configure what runs when I do a _wmctrl -s_ command? |
2025-01-23 01:42:12 +0100 | <geekosaur> | it's part of EwmhDesktops but I don't know if we have a hook for _NET_CURRENT_DESKTOP |
2025-01-23 01:43:48 +0100 | <geekosaur> | doesn't look like we do. what exactly are you trying to do? |
2025-01-23 01:50:32 +0100 | <haskellbridge> | <m1mir> I'm trying to keep the windows with the independent screens module on the right screen. If the workspace that I'm trying to switch to is on the other screen and it is hidden it grabs that workspace and shows it on the screen where I ran the command instead of switching to the right screen. I managed to replace the doFocus with "doF . focusWindow' =<< ask" but I. |
2025-01-23 01:51:18 +0100 | <haskellbridge> | <m1mir> I'm trying to keep the windows with the independent screens module on the right screen. If the workspace that I'm trying to switch to is on the other screen and it is hidden it grabs that workspace and shows it on the screen where I ran the command instead of switching to the right screen. I managed to replace the doFocus with "doF . focusWindow' =<< ask" but I couldn't find a way to do that with the wmctrl -s... |
2025-01-23 01:51:23 +0100 | <haskellbridge> | ... command handling. |
2025-01-23 01:54:59 +0100 | <geekosaur> | I don't think there's a good way to handle it. wmctrl requests workspaces by number, not name, and the numbers don't necessarily map to anything in your xmonad.hs. (EWMH starts numbering reported workspaces from 0 and uses only those numbers.) |
2025-01-23 01:56:57 +0100 | <geekosaur> | `xprop -root _NET_DESKTOP_NAMES is the workspaces names that wmctrl knows about, and it uses an index into that list when it makes its request |
2025-01-23 03:09:02 +0100 | <haskellbridge> | <m1mir> I got confused by the last reply. After reading the code/docs a lot, think it does deal with the index to workspace conversion by sorting workspaces the same way it listed them and taking the nth element using the "!?" operator. |
2025-01-23 03:09:04 +0100 | <haskellbridge> | If i haven't misunderstood the code( which is not unlikely because), then if I want to make switching action customizable for the "wmctrl -s" type window switching I need to switch the W.view to a config parameter in this line (https://github.com/xmonad/xmonad-contrib/blob/c0a5bc5f0f5263108ad5a144711dceff4fb99cde/XMonad/Hook…). Am I correct? |
2025-01-23 03:09:34 +0100 | <haskellbridge> | <m1mir> * because I haven't done a lot of haskell/Xmonad), |
2025-01-23 03:11:52 +0100 | ft | (~ft@p4fc2a1c1.dip0.t-ipconnect.de) (Ping timeout: 252 seconds) |
2025-01-23 03:13:50 +0100 | ft | (~ft@p3e9bcab6.dip0.t-ipconnect.de) ft |
2025-01-23 03:14:32 +0100 | <geekosaur> | I'm not wntirely clear on your issue, but I think the real problem is that it's picking the workspace on the wrong monitor; note that workspaces as seen by EWMH and therefore wmctrl are in an internal <screen>_<wsname> form, and you need to replace the <screen> part? Or do you want to ensure it's activated on the other monitor, which will need more than just replacing W.view? |
2025-01-23 03:15:26 +0100 | <geekosaur> | in particular you need https://hackage.haskell.org/package/xmonad-contrib-0.18.1/docs/XMonad-Actions-OnScreen.html for the latter |
2025-01-23 03:15:55 +0100 | <geekosaur> | (and internally xmonad will be switching focus to the other screen, doing something, and switching back) |
2025-01-23 03:29:45 +0100 | <haskellbridge> | <m1mir> I'll try to clarify. |
2025-01-23 03:29:45 +0100 | <haskellbridge> | ... long message truncated: https://kf8nh.com/_heisenbridge/media/kf8nh.com/ScFdScYZlfYGsQRcOyOYRAbK/ECx1CjIn-g8 (6 lines) |
2025-01-23 03:37:21 +0100 | <haskellbridge> | <m1mir> I'll try to clarify. |
2025-01-23 03:37:21 +0100 | <haskellbridge> | ... long message truncated: https://kf8nh.com/_heisenbridge/media/kf8nh.com/FVLbbxxHYnbZnFneyTcgZCwR/wVcRLQxShto (8 lines) |
2025-01-23 03:39:00 +0100 | <geekosaur> | okay. so you will have to translate the workspace index to its name, extract the screen number, and use viewOnScreen from the module I listed earlier |
2025-01-23 03:39:04 +0100 | <haskellbridge> | <m1mir> If I'm correct with what needs to be configurable I can probably make a pr if I can figure out what to name the option. |
2025-01-23 03:40:03 +0100 | <haskellbridge> | <m1mir> I'll try to clarify. |
2025-01-23 03:40:03 +0100 | <haskellbridge> | ... long message truncated: https://kf8nh.com/_heisenbridge/media/kf8nh.com/wdjcyyOWKboiIXrLkHHmUAfD/QQAgMXiEPxk (8 lines) |
2025-01-23 03:40:46 +0100 | <geekosaur> | edits don't work well IRC-side |
2025-01-23 03:40:57 +0100 | <haskellbridge> | <m1mir> Sorry- |
2025-01-23 03:41:36 +0100 | <geekosaur> | and the answer is still what I just said, you need to extract the screen number and use viewOnScreen instead of W.view |
2025-01-23 03:42:14 +0100 | <geekosaur> | https://hackage.haskell.org/package/xmonad-contrib-0.18.1/docs/XMonad-Actions-OnScreen.html#v:view… |
2025-01-23 03:46:20 +0100 | <haskellbridge> | <m1mir> Ty for the help. I'll try to make a pr to make that action configurable. |
2025-01-23 03:47:29 +0100 | <geekosaur> | one complication: screen numbers are not simple integers, you need to wrap them in W.S (that is, after extracting the 1 from 1_foo and making an Int out of it, you need to apply "S" to it (https://hackage.haskell.org/package/xmonad-0.18.0/docs/XMonad-Core.html#t:ScreenId) to make it into a screen number acceptable to viewOnScreen) |
2025-01-23 03:49:07 +0100 | <geekosaur> | (the documentation shows using literal numbers, but that's because someone got the bright idea of giving it a Num instance so they get fromInteger applied to them. it doesn't work for variables, only for literals) |
2025-01-23 03:50:59 +0100 | <haskellbridge> | <m1mir> Ty for the tip. If I ran into that one I would probably never figure it out on my own. |
2025-01-23 03:52:08 +0100 | <geekosaur> | that's why I warned you |
2025-01-23 03:52:33 +0100 | <geekosaur> | I disapprove of Num instances thsat exist solely to abuse fromInteger precisely because they lead to this kind of nasty surprise |
2025-01-23 03:53:19 +0100 | <geekosaur> | and unless you know how numeric literals are handled in Haskell you will have trouble figuring out the spooky action at a distance |
2025-01-23 04:02:01 +0100 | horzion | (~horzion@ProtonDB/horzion) horzion |
2025-01-23 04:02:43 +0100 | horzion | (~horzion@ProtonDB/horzion) () |
2025-01-23 04:42:03 +0100 | terrorjack45 | (~terrorjac@2a01:4f8:c17:a66e::) (Quit: The Lounge - https://thelounge.chat) |
2025-01-23 04:44:59 +0100 | terrorjack45 | (~terrorjac@2a01:4f8:c17:a66e::) terrorjack |
2025-01-23 06:00:20 +0100 | ChubaDuba | (~ChubaDuba@46.147.219.211) ChubaDuba |
2025-01-23 06:28:00 +0100 | rekahsoft | (~rekahsoft@70.51.99.237) (Remote host closed the connection) |
2025-01-23 06:29:16 +0100 | rekahsoft | (~rekahsoft@70.51.99.237) rekahsoft |
2025-01-23 06:45:23 +0100 | rekahsoft | (~rekahsoft@70.51.99.237) (Ping timeout: 245 seconds) |
2025-01-23 07:20:58 +0100 | ft | (~ft@p3e9bcab6.dip0.t-ipconnect.de) (Quit: leaving) |
2025-01-23 07:29:42 +0100 | ChubaDuba | (~ChubaDuba@46.147.219.211) (Quit: WeeChat 4.5.1) |
2025-01-23 07:30:08 +0100 | ChubaDuba | (~ChubaDuba@46.147.219.211) ChubaDuba |
2025-01-23 07:45:24 +0100 | m5zs7k | (aquares@web10.mydevil.net) (Ping timeout: 260 seconds) |
2025-01-23 07:48:54 +0100 | m5zs7k | (aquares@web10.mydevil.net) m5zs7k |
2025-01-23 09:00:52 +0100 | mc47 | (~yecinem@p200300ee0f038dc39287614d4759a7ca.dip0.t-ipconnect.de) |
2025-01-23 10:11:39 +0100 | haskellbridge | (~hackager@syn-024-093-192-219.res.spectrum.com) (Remote host closed the connection) |
2025-01-23 10:13:20 +0100 | haskellbridge | (~hackager@syn-024-093-192-219.res.spectrum.com) hackager |
2025-01-23 11:37:23 +0100 | ChubaDuba | (~ChubaDuba@46.147.219.211) (Quit: WeeChat 4.5.1) |
2025-01-23 11:52:57 +0100 | Natch | (~natch@c-92-34-7-158.bbcust.telenor.se) (Ping timeout: 276 seconds) |
2025-01-23 11:54:46 +0100 | Natch | (~natch@c-92-34-7-158.bbcust.telenor.se) |
2025-01-23 12:22:27 +0100 | ash3en | (~Thunderbi@31.16.203.214) ash3en |
2025-01-23 12:22:48 +0100 | ash3en | (~Thunderbi@31.16.203.214) (Client Quit) |
2025-01-23 13:56:13 +0100 | Digitteknohippie | (~user@user/digit) Digit |
2025-01-23 13:57:18 +0100 | Digit | (~user@user/digit) (Ping timeout: 252 seconds) |
2025-01-23 14:31:18 +0100 | redgloboli | (~redglobol@user/redgloboli) (Ping timeout: 252 seconds) |
2025-01-23 14:31:54 +0100 | redgloboli | (~redglobol@user/redgloboli) redgloboli |
2025-01-23 14:38:27 +0100 | ChubaDuba | (~ChubaDuba@46.147.219.211) ChubaDuba |
2025-01-23 15:06:17 +0100 | ChubaDuba | (~ChubaDuba@46.147.219.211) (Quit: WeeChat 4.5.1) |
2025-01-23 16:00:47 +0100 | kaskal | (~kaskal@84-115-237-124.cable.dynamic.surfer.at) (*.net *.split) |
2025-01-23 16:00:47 +0100 | srk | (~sorki@user/srk) (*.net *.split) |
2025-01-23 16:00:47 +0100 | jzargo | (~jzargo@user/jzargo) (*.net *.split) |
2025-01-23 16:00:47 +0100 | Leary | (~Leary@user/Leary/x-0910699) (*.net *.split) |
2025-01-23 16:00:48 +0100 | RMSBach | (~guygastin@137.184.131.156) (*.net *.split) |
2025-01-23 16:05:45 +0100 | kaskal | (~kaskal@84-115-237-124.cable.dynamic.surfer.at) kaskal |
2025-01-23 16:05:45 +0100 | srk | (~sorki@user/srk) srk |
2025-01-23 16:05:45 +0100 | jzargo | (~jzargo@user/jzargo) jzargo |
2025-01-23 16:05:45 +0100 | Leary | (~Leary@user/Leary/x-0910699) Leary |
2025-01-23 16:05:45 +0100 | RMSBach | (~guygastin@137.184.131.156) RMSBach |
2025-01-23 16:14:14 +0100 | ft | (~ft@p3e9bcab6.dip0.t-ipconnect.de) ft |
2025-01-23 16:16:01 +0100 | ft | (~ft@p3e9bcab6.dip0.t-ipconnect.de) (Client Quit) |
2025-01-23 16:18:00 +0100 | ft | (~ft@p3e9bcab6.dip0.t-ipconnect.de) ft |
2025-01-23 17:06:32 +0100 | Digitteknohippie | Digit |
2025-01-23 17:30:13 +0100 | m5zs7k | (aquares@web10.mydevil.net) (Ping timeout: 248 seconds) |
2025-01-23 17:33:02 +0100 | m5zs7k | (aquares@web10.mydevil.net) m5zs7k |
2025-01-23 17:34:46 +0100 | Guest12 | (~Guest12@2a02:2f0f:6109:3500:6bf:1bff:fec0:9354) |