00:27 Consolatis: I'd strictly differentiate between the compositor and the desktop environment though. In some cases a desktop environment also provides the compositor but in other cases that is not true.
00:28 Consolatis: which btw is an issue for some specific cases like for example having an up-to-date keyboard layout indicator in a panel without having keyboard focus
07:55 KarenTheDorf: Is it normal for a compositor to need write access to wl_shm buffers? (I noticed kwin has a fast path if they have SEAL_SHRINK, so I thought, I know, I'll try adding SEAL_FUTURE_WRITE too, and that went boom)
07:57 emersion: wl_shm buffers may be written to for some use-cases, e.g. screen capture
07:58 KarenTheDorf: True, I guess I should specifically say that it's a buffer being used to back a wl_surface. So in a general case absolutely because I could use a buffer and ask the compositor to fill it with data.
07:59 emersion: right, the problem is that the compositor doesn't know up-front what the buffer will be used for
07:59 emersion: so kind-of needs to assume it can be used for any usage
08:00 KarenTheDorf: Right, that makes sense. It won't know my use case at wl_shm_pool_create_buffer time. sure, I know it will be client->server only, but the server doesn't. Thanks.
09:59 DonAlex: garnacho, I hear you are someone who knows how to allocate touch inputs to external monitors on Wayland?
10:02 emersion: it depends on your compositor
10:02 emersion: are you using GNOME, KDE, Sway, …?
10:02 DonAlex: Well Gnome 3. so ?
10:02 DonAlex: v46
10:02 emersion: i think you can do it in settings
10:02 DonAlex: I can't see anything there?
10:03 garnacho: DonAlex: hey
10:04 garnacho: yeah, touchscreen mapping to monitors is meant to be automagic, there's a GSetting underneath though
10:04 garnacho: it's drawing tablets which do offer the full mapping options
10:04 DonAlex: I mean only mouse and touchpad but that is for the laptop I know the touch inputs are detected because if I touch the external display it moved the mouse on my primary display
10:05 garnacho: DonAlex: the mouse moving doesn't sound like a wayland session, though...
10:05 DonAlex: So which gsetting should I look at? I am familar with using dconf
10:06 DonAlex: Well the display is 'extended' in gnome. .but the touch movement is translated to the primary display.
10:08 DonAlex: https://imgur.com/a/gnome-wayland-display-settings-o6TtQlq
10:11 DonAlex: I mean I looked at this. But seems it is not wayland specific?
10:11 DonAlex: https://who-t.blogspot.com/2024/03/enforcing-touchscreen-mapping-in-gnome.html
10:15 garnacho: DonAlex: you'd need something like `gsettings set org.gnome.desktop.peripherals:/org/gnome/desktop/peripherals/touchscreens/VID:PID output "['VENDOR', 'PRODUCT', 'MODEL']" `, but that blogpost does indeed explain more in detail.
10:16 DonAlex: Yeah.. I tried that.. but it came back saying it had no schema ?
10:19 garnacho: DonAlex: I typoed mine, but whot did not. The schema should be "org.gnome.desktop.peripherals.touchscreen", the first piece of info right after "gsettings set"
10:20 garnacho: that relocatable schema is defined at /usr/share/glib-2.0/schemas/org.gnome.desktop.peripherals.gschema.xml
10:21 DonAlex: hmm lemme check
10:26 DonAlex: Well it is correct as far asI can tell
10:26 DonAlex: https://imgur.com/a/external-touchscreen-settings-gnome-wayland-mgOnJCQ
10:28 garnacho: DonAlex: ah, in dconf-editor, nevermind that. It doesn't play well with relocatable schemas
10:28 DonAlex: Oh?
10:28 DonAlex: well I added it via gsettings though
10:30 DonAlex: gsettings list-recursively org.gnome.desktop.peripherals.touchscreen:/org/gnome/desktop/peripherals/touchscreens/27c0:0859/
10:30 DonAlex: org.gnome.desktop.peripherals.touchscreen output ['XKY', 'Display', 'demoset-1']
10:31 garnacho: yeah, `gsettings get org.gnome.desktop.peripherals.touchscreen:/org/gnome/desktop/peripherals/touchscreens/27c0:0859 output` should tell the truth
10:32 garnacho: if you're sure that's the VID/PID of the touchscreen input device, it should work as far as I can see...
10:33 DonAlex: Same key
10:33 DonAlex: `gsettings get org.gnome.desktop.peripherals.touchscreen:/org/gnome/desktop/peripherals/touchscreens/27c0:0859 output
10:33 DonAlex: ['XKY', 'Display', 'demoset-1']
10:34 DonAlex: Yup pretty sure that is correct Bus 001 Device 007: ID 27c0:0859 Cadwell Laboratories, Inc. TouchScreen
10:41 garnacho: DonAlex: that sounds like bug territory, might also be interesting to find out why it didn't get automatically mapped to the right output.
10:41 garnacho: I don't have an external touchscreen, but will be testing multimonitor...
10:42 DonAlex: Well quite.. Could just be my bad luck.. But then again it is a USB powered monitor as well so maybe that confuses it ?
10:42 kennylevinsen: garnacho: What does GNOME use as heuristic to associate the digitizer with the display panel?
10:42 DonAlex: Well this one one is super cheap but nice.. light USB powered comes with it's own kickstand
10:43 DonAlex: https://www.amazon.co.uk/dp/B0C1NLK5SX for anyone interested
10:44 kennylevinsen: The well-known ZFTVNIE brand
10:45 DonAlex: Is that sarcasm ? ;)
10:47 kennylevinsen: yes, amazon drop-shippers just hammer on the keyboard to create their continously replaced throwaway brand-names
10:48 DonAlex: Fairy nuff.
10:49 garnacho: kennylevinsen: the most relevant for touchscreens is based on reported sizes in millimeters, from the absolute coords input device and edid. There's others through libwacom, for the devices supported there.
10:50 DonAlex: libwacom ? Hmmmm
10:52 garnacho: cheap brands have a tendency to blatantly lie in those, so perhaps the GSettings escape hatch is being well used here
10:54 garnacho: DonAlex: is the device connected via a single cable? I wonder if it's sensitive to the connection order
10:55 DonAlex: Well no. one HDMI and one USB. I can do USB video but my laptop does not support it. FWIW it does show two devices in libinput. https://pastebin.com/Zxd9iWVL
10:58 garnacho: "Capabilities: pointer " in the second? interesting...
10:58 garnacho: might be worth checking which of both devices gets triggered on touch input...
11:02 DonAlex: Hang on just ran libinput debug-gui Will upload it so you can see the behaviour/
11:15 DonAlex: garnacho, Here you go. If it makes and sense. Not sure why the touchpad moves on the external display but oh well https://vimeo.com/946148458
11:34 DonAlex: oh that is kinda cool. Libinput shows how many fingers are touching and in what order.
11:35 DonAlex: Anyway, lunchtime here atm. So back in about an hour
11:55 garnacho: DonAlex: plain text output from "libinput debug-events" might be clearer :). I forget the libinput debug-gui feedback all the time, and can't easily check on silverblue...
11:55 garnacho: if the output lines start with "event15", that'd be the wrong device
12:13 wlb: weston Merge request !1515 opened by Alexandros Frantzis (afrantzis) clients/simple-egl: Allow exercising EGL_EXT_present_opaque https://gitlab.freedesktop.org/wayland/weston/-/merge_requests/1515
12:43 YaLTeR[m]: Is it intended when a client acks a configure dropping the resizing state but then doesn't commit, if it doesn't have anything else it wants to commit?
12:43 YaLTeR[m]: Resulting in the toplevel kind of hanging with the resizing state for a while
12:50 DonAlex: garnacho, Ok well here is a pastbin of that dragging a finger and touch up and down. https://pastebin.com/1qr8tLaw
12:57 YaLTeR[m]: How do you tell if the client committed new size after a minute in response to the last configure that dropped the resizing state, or just because it decided to change size on its own?
12:58 YaLTeR[m]: (in the former case the client should move on screen if it was a top-left resize, in the latter case the client should not move)
12:58 emersion: acks are double-buffered
12:59 emersion: IOW, acks have no effect until the next commit
12:59 garnacho: DonAlex: thanks, that looks correct... perhaps it's time for a Mutter bug report
13:00 DonAlex: Hmm ok
13:02 YaLTeR[m]: emersion: yeah exactly, and I'm seeing Firefox and Chromium just not commit their toplevel after acking a configure that dropped the resizing state (but did not request a new size). Which means that if they commit a different size in a minute, I don't know if that's their response to the last resizing commit, or if that's an unrelated new size
13:03 emersion: are you describing a Firefox bug then?
13:03 jadahl: sounds like it
13:03 YaLTeR[m]: I'm asking if that's a firefox and chromium bug, or if it's expected behavior that I should figure out a way to deal with
13:05 jadahl: YaLTeR[m]: fwiw: https://gitlab.gnome.org/GNOME/gtk/-/merge_requests/7139
13:05 jadahl: maybe thats the firefox bug
13:05 YaLTeR[m]: This sounds like that I want from firefox/chromium here
13:06 YaLTeR[m]: s/that/what
13:06 jadahl: firefox uses gtk3, so maybe that gtk MR fixes the firefox issue, I dunno
13:06 YaLTeR[m]: Electron apps also do this. So uh
13:07 jadahl: an ozone-wayland bug then?
13:09 YaLTeR[m]: I'm just thinking that since electron does this, I need at least some working around in the compositor because it ain't getting fixed for a while in apps
13:13 mclasen: jadahl: should I merge that gtk3 mr ? let me know
13:16 jadahl: mclasen: you did a month ago
13:16 mclasen: ah, well. Just need to get a release out
13:19 jadahl: yea
14:06 pq: Sounds like firefox and chromium might be sending their acks from configure event handlers instead of from the drawing path. That might be nice to fix, too.
14:20 kennylevinsen: relying on paint to commit is fine assuming the configure path can schedule a forced paint...
14:21 jadahl: kennylevinsen: on gtk3 I just scheduled an empty paint just for the commit
15:36 Max1: YaLTeR: regarding Chromium not committing after ack'ing a configure, can you please file a bug at https://issues.chromium.org/ and ping me about it?
15:37 YaLTeR[m]: Hmm, alright, I'll see
15:37 Max1: Thanks!
15:50 ifreund: YaLTeR[m], Max1: perhaps related https://codeberg.org/river/river/issues/1020
15:51 YaLTeR[m]: idk if related to this specifically, but I did notice upon creating a new window chromium is a bit glitched out until the next configure
15:52 Max1: There have been a few changes recently which might be related to this, it might make sense to grab the latest build from https://download-chromium.appspot.com/ and test with that
17:02 YaLTeR[m]: Max (usually off on Fridays): https://issues.chromium.org/issues/340500574
17:02 YaLTeR[m]: oh that log got screwed up
17:35 codecolla: Hi, for brand new xdg protocol, generative IAs are no longer useful, so I drop issues here :
17:36 codecolla: For compilation : `pkg-config --variable=wayland_scanner wayland-scanner` client-header `pkg-config wayland-protocols --variable=pkgdatadir`/stable/xdg-shell/xdg-shell.xml xdg-shell-client-protocol.h
17:36 codecolla: pkg-config wayland-protocols --variable=pkgdatadir gives nothing. Any idea why?
17:39 bl4ckb0ne: have generative ia ever been useful?
17:39 bl4ckb0ne: https://gitlab.freedesktop.org/wlroots/wlroots/-/blob/master/tinywl/Makefile tinywl does it fairly easily
17:40 codecolla: Yes for what is well known, but wrongly documented...
17:41 codecolla: I took the hole https://github.com/emersion/hello-wayland/blob/opengl-cube you first sent to me, I'm on this compil issue
17:42 codecolla: I'm jumping on tinywl as you sent to me, thx
17:42 bl4ckb0ne: hm i do get compilation issues as well
17:42 codecolla: same?
17:43 bl4ckb0ne: shell escape and missing dep
18:29 codecolla: In both cases /stable/xdg-shell/xdg-shell.xml might be missing ls: cannot access '/stable/xdg-shell/xdg-shell.xml': No such file or directory
18:31 bl4ckb0ne: did you replace the `pkgXXX` with $(shell pkgXXX)` like tinywl does
18:31 codecolla: Ho, once again WAYLAND_PROTOCOLS=$(shell pkg-config --variable=pkgdatadir wayland-protocols) is void
18:31 codecolla: pkg-config --variable=pkgdatadir wayland-protocols gives nothing in shell
18:31 vyivel: do you have wayland-protocols installed
18:31 bl4ckb0ne: do you have the wayland-protocols installed
18:31 vyivel: lel
18:32 bl4ckb0ne: kek vyivel
18:32 codecolla: Im checking
18:33 codecolla: Only wayland-protocols-devel.noarch on dnf, that's it?
18:34 bl4ckb0ne: i think so
18:35 bl4ckb0ne: https://fedora.pkgs.org/40/fedora-x86_64/wayland-protocols-devel-1.34-1.fc40.noarch.rpm.html it has the pc file
18:38 codecolla: Thx, one step ahead, I now have fatal error: wlr/backend.h: No such file or directory but I'm gonna switch back to opengl-cube
18:40 wlb: weston Merge request !1516 opened by Jonas Ådahl (jadahl) terminal: Avoid too large character grid when resized https://gitlab.freedesktop.org/wayland/weston/-/merge_requests/1516 [Clients]
18:43 bl4ckb0ne: thats a wlroots file
18:43 bl4ckb0ne: you dont need it for clients
18:46 codecolla: I face other issues on the wayland_egl : undefined reference to symbol 'sqrtf@@GLIBC_2.2.5
18:47 vyivel: add -lm somewhere in Makefile
18:47 codecolla: yeah
18:55 codecolla: CGLM_FLAGS = `pkg-config cglm --cflags --libs` -lm worked