Logs on 2023-09-25 (liberachat/#xmonad)
| 00:22:25 | <haskellbridge> | <Ren> I was hoping someone could help me understand XMonad's behavior. I've been playing around with making my own GTK app to have as a desktop background so it has the window hint GDK_WINDOW_TYPE_HINT_DESKTOP, and the docks XConfig correctly ignores it letting it sit in the background, but by doing so it puts a complete stop to mouse-over switching screens. Without my desktop backgrou |
| 00:22:25 | <haskellbridge> | <clipped message> |
| 00:22:26 | <haskellbridge> | <Ren> nd app running, the screen focus switches as I move my mouse between monitors even if those screen are devoid of any windows to actually focus on. How can I maintain this feature while still having a desktop app? Is it even possible? |
| 00:23:27 | <geekosaur> | no. X11 limitation |
| 00:23:56 | <geekosaur> | well, might work if your program ignores Xinerama/XRandR and covers the entire root window |
| 00:24:27 | <geekosaur> | but I suspect not because the root window is treated specially by XRandR |
| 00:26:09 | <haskellbridge> | <Ren> That's too bad, and I've gotten so used to the convenience too. This is my first time using GTK and trying to dive into this stuff in general, so I wouldn't know how to try out that root window thing, but I'll keep it in mind as I learn |
| 00:26:41 | <haskellbridge> | <Ren> Thanks for the quick answer |
| 00:26:55 | <geekosaur> | an alternative might be to draw directly into the root window instead of creating your own desktop window |
| 01:00:32 | <haskellbridge> | <Ren> I certainly don't know how to do that at the moment, would that even maintain the interactivity of the program? |
| 01:20:33 | <geekosaur> | no |
| 01:37:06 | <haskellbridge> | <Ren> Yeah, I just experimented some with xwinwrap, I'll wager a guess that the X11 limitation involves the window capturing input since not passing -ni (no input) to xwinwrap also puts an end to automatic screen switching |
| 01:38:18 | <geekosaur> | it's a little more complex than that |
| 01:38:44 | <geekosaur> | multiple screens in X11 are a big hack involving the root window, so only the root window is actually aware of multiple screens |
| 01:43:10 | <haskellbridge> | <Ren> So, mousing over the root window, and information on what screen it is can be gathered, but any other window has no idea what screen it is on? |
| 01:48:08 | <geekosaur> | essentially, yes |
| 01:48:14 | <geekosaur> | that's a large part of the hack |
| 01:49:18 | <geekosaur> | all the monitors are carved out of the root window; normal windows generally stick to a monitor. and mouse position is reported relative to the window's upper left corner, so only the root which spans all monitors knows the mouse's true position |
| 01:49:54 | <geekosaur> | which is why I suggested trying to create a window spanning the entire root; hopefully it'll work the same way. but gtk will fight it |
| 01:58:30 | <haskellbridge> | <Ren> Well just going with what I know, making the window span both my screens results is functionally the same result as just having it on my first monitor, so I think the screen it knows about is the one where it's origin in, even though it spans both monitors. I suppose if one could send a message to XMonad and ask to switch to n screen, It could be possible to recreate the original |
| 01:58:30 | <haskellbridge> | <clipped message> |
| 01:58:31 | <haskellbridge> | <Ren> behavior, since the gdk library has enough info to build a full model of my screens |
| 01:59:46 | <haskellbridge> | <Ren> But that is also probably not so simple, if at all possible since I doubt it is getting mouse events a lot since most of the time, windows are on top of it |
| 02:12:21 | × | td_ quits (~td@i5387092C.versanet.de) (Ping timeout: 258 seconds) |
| 02:13:59 | → | td_ joins (~td@i53870932.versanet.de) |
| 05:34:03 | → | chomwitt joins (~chomwitt@2a02:587:7a2f:d000:1ac0:4dff:fedb:a3f1) |
| 07:11:07 | × | chomwitt quits (~chomwitt@2a02:587:7a2f:d000:1ac0:4dff:fedb:a3f1) (Ping timeout: 264 seconds) |
| 07:17:25 | → | chomwitt joins (~chomwitt@2a02:587:7a2f:d000:1ac0:4dff:fedb:a3f1) |
| 07:43:33 | × | hightower2 quits (~hightower@141-136-211-208.dsl.iskon.hr) (Ping timeout: 258 seconds) |
| 08:10:37 | × | matijja quits (~matijja@193.77.181.201) (Quit: ZNC 1.8.2 - https://znc.in) |
| 08:11:29 | → | matijja joins (~matijja@193.77.181.201) |
| 08:18:13 | → | hightower2 joins (~hightower@85.94.71.188) |
| 08:24:50 | → | cfricke joins (~cfricke@user/cfricke) |
| 08:56:35 | × | cfricke quits (~cfricke@user/cfricke) (Ping timeout: 240 seconds) |
| 09:02:05 | → | cfricke joins (~cfricke@user/cfricke) |
| 09:21:48 | × | chomwitt quits (~chomwitt@2a02:587:7a2f:d000:1ac0:4dff:fedb:a3f1) (Ping timeout: 240 seconds) |
| 10:09:30 | × | ft quits (~ft@p3e9bc680.dip0.t-ipconnect.de) (Quit: leaving) |
| 10:56:13 | → | srk- joins (~sorki@user/srk) |
| 10:58:47 | → | srk| joins (~sorki@user/srk) |
| 10:59:19 | × | srk quits (~sorki@user/srk) (Ping timeout: 244 seconds) |
| 11:01:55 | srk| | is now known as srk |
| 11:02:29 | × | srk- quits (~sorki@user/srk) (Ping timeout: 255 seconds) |
| 11:23:15 | → | raghavgururajan_ joins (ea769b8000@2604:bf00:561:2000::242) |
| 11:23:20 | → | zoglesby_ joins (f0f8ca1525@2604:bf00:561:2000::64) |
| 11:24:00 | → | samhh__ joins (7569f027cf@2604:bf00:561:2000::e4) |
| 11:25:57 | → | chomwitt joins (~chomwitt@2a02:587:7a2f:d000:1ac0:4dff:fedb:a3f1) |
| 11:27:55 | → | alethkit_ joins (23bd17ddc6@sourcehut/user/alethkit) |
| 11:30:55 | × | jludwig quits (~justin@li657-110.members.linode.com) (*.net *.split) |
| 11:30:56 | × | alethkit quits (23bd17ddc6@sourcehut/user/alethkit) (*.net *.split) |
| 11:30:57 | × | samhh quits (7569f027cf@2604:bf00:561:2000::e4) (*.net *.split) |
| 11:30:58 | × | zoglesby quits (f0f8ca1525@user/zoglesby) (*.net *.split) |
| 11:30:58 | × | raghavgururajan quits (ea769b8000@user/raghavgururajan) (*.net *.split) |
| 11:30:58 | × | B-J quits (~BenziJuni@88-149-64-112.du.xdsl.is) (*.net *.split) |
| 11:31:03 | alethkit_ | is now known as alethkit |
| 11:31:06 | zoglesby_ | is now known as zoglesby |
| 11:31:19 | × | alethkit quits (23bd17ddc6@sourcehut/user/alethkit) (Read error: Connection reset by peer) |
| 11:31:19 | × | samhh__ quits (7569f027cf@2604:bf00:561:2000::e4) (Write error: Connection reset by peer) |
| 11:31:19 | × | zoglesby quits (f0f8ca1525@2604:bf00:561:2000::64) (Write error: Connection reset by peer) |
| 11:31:21 | × | raghavgururajan_ quits (ea769b8000@2604:bf00:561:2000::242) (Write error: Connection reset by peer) |
| 11:31:29 | → | zoglesby joins (f0f8ca1525@2604:bf00:561:2000::64) |
| 11:31:30 | → | raghavgururajan joins (ea769b8000@2604:bf00:561:2000::242) |
| 11:31:39 | × | raghavgururajan quits (ea769b8000@2604:bf00:561:2000::242) (Changing host) |
| 11:31:39 | → | raghavgururajan joins (ea769b8000@user/raghavgururajan) |
| 11:31:41 | × | zoglesby quits (f0f8ca1525@2604:bf00:561:2000::64) (Changing host) |
| 11:31:41 | → | zoglesby joins (f0f8ca1525@user/zoglesby) |
| 11:32:56 | → | samhh_ joins (7569f027cf@2604:bf00:561:2000::e4) |
| 11:33:27 | → | alethkit joins (23bd17ddc6@sourcehut/user/alethkit) |
| 11:35:05 | → | jludwig joins (~justin@li657-110.members.linode.com) |
| 11:35:05 | → | B-J joins (~BenziJuni@88-149-64-112.du.xdsl.is) |
| 12:13:51 | × | cfricke quits (~cfricke@user/cfricke) (Quit: WeeChat 4.0.4) |
| 13:15:07 | × | chomwitt quits (~chomwitt@2a02:587:7a2f:d000:1ac0:4dff:fedb:a3f1) (Remote host closed the connection) |
| 13:15:31 | → | chomwitt joins (~chomwitt@2a02:587:7a2f:d000:1ac0:4dff:fedb:a3f1) |
| 13:20:30 | × | pantsu quits (~Urist@archlinux/op/MrElendig) (Quit: all hail donk) |
| 13:21:38 | → | MrElendig joins (~Urist@archlinux/op/MrElendig) |
| 13:41:13 | × | chomwitt quits (~chomwitt@2a02:587:7a2f:d000:1ac0:4dff:fedb:a3f1) (Ping timeout: 240 seconds) |
| 14:29:22 | × | hightower2 quits (~hightower@85.94.71.188) (Ping timeout: 260 seconds) |
| 14:36:02 | → | chomwitt joins (~chomwitt@2a02:587:7a2f:d000:1ac0:4dff:fedb:a3f1) |
| 14:53:00 | × | chomwitt quits (~chomwitt@2a02:587:7a2f:d000:1ac0:4dff:fedb:a3f1) (Ping timeout: 240 seconds) |
| 15:01:49 | → | hightower2 joins (~hightower@141-136-211-208.dsl.iskon.hr) |
| 15:27:52 | → | chomwitt joins (~chomwitt@2a02:587:7a2f:d000:1ac0:4dff:fedb:a3f1) |
| 16:20:04 | × | chomwitt quits (~chomwitt@2a02:587:7a2f:d000:1ac0:4dff:fedb:a3f1) (Remote host closed the connection) |
| 20:52:58 | → | ft joins (~ft@p3e9bc680.dip0.t-ipconnect.de) |
| 21:08:21 | × | exordiri quits (~ex@user/exordiri) (Remote host closed the connection) |
All times are in UTC on 2023-09-25.