ChanServ changed the topic of #wayland to: https://wayland.freedesktop.org | Discussion about the Wayland protocol and its implementations, plus libinput | register your nick to speak
leon-p has quit []
pnowack has quit [Quit: pnowack]
Lucretia has quit []
rasterman has quit [Quit: Gettin' stinky!]
columbar1 has joined #wayland
columbarius has quit [Ping timeout: 480 seconds]
columbar1 has quit []
columbarius has joined #wayland
hegstal has quit [Remote host closed the connection]
[[OneLegend]] has joined #wayland
boistordu_old has joined #wayland
boistordu has quit [Ping timeout: 480 seconds]
xexaxo_ has quit [Ping timeout: 480 seconds]
<ishitatsuyuki> won't run X? that happens?
<ishitatsuyuki> anyway in Wayland it's up to the compositor to handle global key events (which breaks these use cases that worked in X)
<ishitatsuyuki> sway might work given there's a lot of config options, idk
<ishitatsuyuki> for other compositors, I guess you are out of luck
<danieldg> sway doesn't have a good inject-key command yet
<[[OneLegend]]> hi danieldg!
boistordu_old has quit [Remote host closed the connection]
boistordu_ex has joined #wayland
<technomancy> ishitatsuyuki: I can use Xwayland but certain things (in particular love2d) crash on launch
<technomancy> but that's helpful to know it would need to be sway-specific
<danieldg> yeah, binding global shortcuts in general is compositor-specific on wayland
radu242 has joined #wayland
zebrag has quit [Remote host closed the connection]
boistordu_ex has quit [Remote host closed the connection]
radu242 has quit [Ping timeout: 480 seconds]
boistordu_ex has joined #wayland
naveenk2 has joined #wayland
naveenk2 has quit [Ping timeout: 480 seconds]
naveenk2 has joined #wayland
[[OneLegend]] has quit [Quit: WeeChat 2.8]
naveenk2 has quit []
naveenk2 has joined #wayland
pnowack has joined #wayland
<emersion> the plan for sway is something like `bindsym Ctrl+p keyboard press ArrowUp`
<emersion> but yeah not done yet
naveenk2 has quit []
remanifest has joined #wayland
remanifest has quit []
danvet has joined #wayland
remanifest has joined #wayland
remanifest has quit []
remanifest has joined #wayland
naveenk2 has joined #wayland
remanifest has quit [Remote host closed the connection]
audgirka has joined #wayland
naveenk21 has joined #wayland
naveenk2 has quit [Ping timeout: 480 seconds]
naveenk2 has joined #wayland
naveenk21 has quit [Ping timeout: 480 seconds]
naveenk2 has quit [Ping timeout: 480 seconds]
audgirka_ has joined #wayland
audgirka_ has quit []
audgirka_ has joined #wayland
audgirka has quit [Ping timeout: 480 seconds]
Lucretia has joined #wayland
audgirka_ has quit [Ping timeout: 480 seconds]
audgirka has joined #wayland
rasterman has joined #wayland
gryffus has joined #wayland
gryffus has quit [Remote host closed the connection]
gryffus has joined #wayland
AJ_Z0 has quit [Ping timeout: 480 seconds]
naveenk2 has joined #wayland
<pq> technomancy, those docs you find, are they not about editing and installing a new keymap? I would have thought the same could apply to combos. This doesn't sound like you wanted global shortcuts.
<pq> hmm, but I wonder if a keymap can translate a keysym-combo into another keysym... it's all so complicated.
<emersion> daniels: ah, fwiw, i've bitten the bullet and completely replaced wl_drm with my own impl
<emersion> in wlroots
<daniels> emersion: you what?
<daniels> you've got your own server-side implementation of wl_drm?
<emersion> yes
<pq> to avoid having to pass EGLImage around in your APIs?
<daniels> porquoi?
<daniels> oh
<daniels> is the answer VA-API?
<emersion> yes, basically to make wl_drm buffers behave exactly just like linux-dmabuf ones
<daniels> putain
<emersion> and avoid any interaction between EGL and wayland protocol things
<pq> alright :-)
<daniels> I mean, fair enough, I don't think it'll bite you in any of the non-Mesa stacks who do bind_wayland_display without wl_drm
<emersion> EGL's ext is especially a paiun to support with our API choices
<emersion> pain*
<daniels> (i.e. those aren't the devices you care about)
<daniels> but what do you have left still using wl_drm? is it just VA-API?
<emersion> yes, arm or w/e proprietary driver with their own custom wl protocols, i don't care about
<emersion> wl_drm is used by vulkan's wsi
<emersion> but i fixed it :)
<emersion> so at some point our wl_drm impl will basically just be the device advertisment
<emersion> and will error out if you try to creeate a buffer with it
<daniels> someone should probably make some kind of extension to zwp_linux_dmabuf that does device advertisement :P
<daniels> (I guess you saw leandrohrb is also working on hints for VKWSI?)
<emersion> lol
<emersion> ah, no, that's very nice!
gryffus has quit []
<daniels> we're determined to get there! soon!
<emersion> :D
xexaxo_ has joined #wayland
<naveenk2> Hi pq: I was going through the list of tasks and in progress tasks from CM&HDR implementation roadmap (#467) · Issues · wayland / weston · GitLab (https://gitlab.freedesktop.org/wayland/weston/-/issues/467). I am still trying to understand the current state of the color pipeline.
<naveenk2> As far I could figure out, I see a basic framework is in place and current development for CM is being done through gl-renderer (gl-shaders), out of which gamma blending with EOTF and Inverse of EOTF for default sRGB color is implemented with no-op for color transformation (or mostly due to content & target colorspace is default). Please correct my level of understanding on these.
<naveenk2> what are the pending tasks you see to make sure atleast the basic color pipeline with default colorspace sRGB can be tested.
<pq> naveenk2, you are correct. The color pipeline as in upstream right now is complete and correct for sRGB input with sRGB output, doing the blending in light-linear space.
<pq> naveenk2, you can use the weston.ini option to turn color management on, and you will get the light-linear blending, which you can notice affecting all semi-transparent pixels more or less.
<pq> doing this will also stop most of the KMS hw planes usage, as the color transformations are not implemented in DRM-backend yet.
<pq> the test suite also has a test to ensure both light-linear and the old non-linear blendign keep working: alpha-blending test.
hegstal has joined #wayland
<naveenk2> pq: thats great to hear. I will surely give it a try.
<naveenk2> also do you think, we can start implementing color pipeline using DRM KMS hardware pipe/plane level APIs in parallel to the current gl-renderer/shaders work.
<naveenk2> and try replicating the same using DRM KMS
damjan has quit [Quit: bye]
damjan has joined #wayland
<pq> naveenk2, sure. There is one catch with that: there is code smashing the legacy gamma libdrm function, that needs to be migrated away. I just sketched that a bit in the roadmap today.
<naveenk2> pq: Ok I will work with shankaru offline and get the kernel changes also refreshed (with documented kernel APIs).
<pq> naveenk2, ah, you're working on the per-plane degamma/ctm/gamma?
flacks has quit [Quit: Quitter]
<pq> naveenk2, it may be a while until struct weston_color_transform can actually feed a CTM. It will have 3D LUT first, Vitaly is working on that. And we will be on holidays most of August.
flacks has joined #wayland
leon-p has joined #wayland
<naveenk2> pq: ok I will check the current implementation and try to understand the gaps for feeding CTM in the color pipeline.
<pq> naveenk2, I think the CTM on color-lcms side may be best left for Vitaly to do.
<naveenk2> pq: do you also plan to implement client protocol for them to pass the colorspace attributes. We have done similar implementation in Mutter https://gitlab.gnome.org/pichikaudaykiran/mutter/-/commit/84ebf245e1ec45415853aae9454ee78749e9f80d. Do you think something similar is required in Weston.
<pq> naveenk2, you can still employ the KMS per-plane 1D LUT for the sRGB EOTF.
<pq> naveenk2, this Weston implementation spree is just a little interlude before getting back to the protocol design work, which is still very much WIP.
<pq> naveenk2, I explained this in the Weston CM&HDR roadmap: stuff we can do without a protocol, and stuff we will need the protocol for.
<naveenk2> pq: right I have seen them
<pq> but we can't finish the protocol work without a long period of practical experimentation, so we need as much implementation in Weston first as possible
<pq> committing to a protocol before that would be foolish
<naveenk2> pq: sure I completly agree to that.
<naveenk2> also what you think about the pre-curve and post curve implementations for per layer linearization in case when multiple clients are active at once submitting layers and converting them to linear space and then blending it together. I believe current implementation is all on the whole pipe level blended data
<pq> naveenk2, where's your protocol XML? I don't see it.
<pq> naveenk2, I don't understand what the question there is.
<naveenk2> What I meant is currently EOTF curve is applied on the blended data, but what about the multi plane use case? where each planes will have different colorspace
<pq> naveenk2, what do you mean "on the blended data"? No, that would be wrong.
<pq> EOTF is applied on each surface before blending (during texturing, more like)
<pq> inverse EOTF is applied after blending, before or during scanout
<naveenk2> Ok I think that make sense then
<naveenk2> I was wrong about the EOTF being applied on the blended data. so that should be fine
<naveenk2> >> where's your protocol XML? I don't see it. -> We are using swick's color wayland-protocol from here https://gitlab.freedesktop.org/swick/wayland-protocols/-/commits/color
<naveenk2> pq: you can see the MR created here https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/1898 for CM support in Mutter, which is WIP
<naveenk2> pq: We are planning to try out Weston CM work next week and see if we have any queries which we can check with you before you go for vacation. Hope you are available next week :)
<pq> Alright. Yes, I'll be here next week, but not much after that. :-)
<naveenk2> pq: Okay that would be great. see you soon
<naveenk2> Yes we are aware of it
<pq> cool, getting something from that would help me, as I'm at a point where I start wanting info from EDID myself
<pq> I've already got Weston turn on HDR video mode by hardcoding my monitor parameters.
<naveenk2> pq: we have done some EDID parsing work in Mutter here https://gitlab.gnome.org/pichikaudaykiran/mutter/-/commit/8ba57e9b75cb127cca15385769739d8f9d8d6fb7. Do you think if this is sort of reference to you in Weston.
<pq> there is a weston MR too, and I cannot take code from a Mutter MR because of license.
<pq> what I would prefer most is a library developed and maintained by others
<pq> so any EDID code in weston is likely just temporary
naveenk21 has joined #wayland
naveenk2 has quit [Ping timeout: 480 seconds]
ecloud has quit [Ping timeout: 480 seconds]
ecloud has joined #wayland
audgirka has quit [Quit: Leaving]
naveenk21 has quit []
xexaxo_ has quit [Read error: Connection reset by peer]
xexaxo_ has joined #wayland
<wlb> weston Merge request !662 opened by Derek Foreman (derekf) gl-renderer: Clean up egl attach failure path https://gitlab.freedesktop.org/wayland/weston/-/merge_requests/662
floof58_ has quit [Ping timeout: 480 seconds]
AJ_Z0 has joined #wayland
johnjay has quit [Ping timeout: 480 seconds]
zebrag has joined #wayland
floof58_ has joined #wayland
freshgumbubbles[m] has quit []
onelegend has joined #wayland
johnjay has joined #wayland
st3r4g has joined #wayland
<ManMower> daniels: hey, on !662 you mentioned an AMD/CrOS extension... is there an existing body of work somewhere I should be looking at?
<daniels> ManMower: sure is, it got merged into Mesa then reverted
<daniels> it's all a little bit opaque, but my reading of what went on is that flush/inval was actually secretly for resolving compression when using a compression-aware external sink
<daniels> back when AMD didn't do modifiers
<ManMower> reverted! exciting. :)
<daniels> I think we could revive that to not necessarily do resolve-in-place, but essentially act like Vulkan's transitions between the EXTERNAL queue
<daniels> i.e. flush caches outbound, invalidate caches inbound
<daniels> the client side wouldn't need to do anything, but in the compositor we could invalidate our existing images rather than destroy/create images every alskjdfasdfkj time
* ManMower would love to see an end to the destroy/create cycle
<daniels> srs
<daniels> p sure it annoys emersion just as much as it does me as well :D
<emersion> daniels: no need to craete/destroy textures
<emersion> err
<emersion> no need to create/destroy images
<emersion> only textures
<daniels> ah hmm, this is jogging the faintest of memories, but my brain is like a sieve :\
<emersion> we've discussed about this with… lynxeye? i think
<daniels> ah yes, EGL_KHR_image_base:
<daniels> If an application specifies an EGLImage sibling as the destination for rendering and/or pixel download operations (e.g., as an OpenGL-ES framebuffer object, glTexSubImage2D, etc.), the modified image results will be observed by all EGLImage siblings in all client API contexts.
<daniels> my god, well done EGL
<daniels> though reading that spec has made me realise that we need to set EGL_IMAGE_PRESERVED_KHR = EGL_TRUE in the attribs ...
<daniels> ManMower: ^ so yeah, looks like we can drop the destroy/create and let it live as long as the underlying wl_buffer, provided we just call glEGLImageTargetTexture2DOES with the image handle at the start of every repaint, and EGL_NO_IMAGE_KHR at the end of every repaint
<ManMower> daniels: no need for EGL_EXT_image_flush_external extension at all then?
<emersion> ah, what does EGL_IMAGE_PRESERVED_KHR do?
<daniels> (as a further optimisation, you could cache the texture ID per-buffer and retarget during ->flush_damage(), rather than at every repaint, which would certainly help lame GPUs which need to make shadow copies)
<daniels> ManMower: yeah!
<ManMower> nice. :D
<daniels> emersion: if it is EGL_FALSE, which is the default, then the contents of the image become undefined after you bind a sibling object in a client API (i.e. GLES texture)
<ManMower> I'll play with that a bit later today if I get a chance.
<daniels> ManMower: what better way to spend a Friday afternoon ... ?
<emersion> that's… not great
<emersion> does mesa handle it already?
<daniels> emersion: yeah, it records the attrib you passed in and does absolutely nothing with it
<emersion> cool
<daniels> because this isn't 2006 and we don't do destructive transforms or assume that one producer frame == one consumer source
<emersion> something something nvidia transitions xdc 2019 something
* daniels throws tomatoes
<emersion> lol
<ManMower> I'm now utterly confused as to whether this is actually going to work.
<daniels> ManMower: mm?
<daniels> emersion: as punishment for trolling, how do you feel about reviewing https://gitlab.freedesktop.org/wayland/weston/-/merge_requests/627 (pretty trivial) so we can land https://gitlab.freedesktop.org/wayland/weston/-/merge_requests/559
* daniels suddenly regrets suggesting punishment for trolling after realising who it would affect the most :\
<ManMower> I'll review that just to see it blow back on you, tbf
<daniels> ah, my own grave
<daniels> ManMower: you're probably the second-most affected by this mind :P
<ManMower> suddenly no time for reviews
<daniels> wow is that the time???? see you next week everyone
<emersion> rhaa, gitlab diffs are missing the section headers with the enclosing function name
<technomancy> pq: maybe it's possible but I couldn't find any examples
<daniels> emersion: heh, I think pq was complaining about that exact thing recently
<ManMower> daniels: I know I was
* emersion repeatedly clicks on "Show me liiiiiiiines"
<ManMower> istr finding some years old gitlab feature request to add it that still hasn't happened?
<bl4ckb0ne> that was a fast patch emersion ;)
<emersion> that was a fast review bl4ckb0ne ;)
st3r4g has quit [Quit: おやすみ]
soreau has quit [Read error: Connection reset by peer]
soreau has joined #wayland
vivek has joined #wayland
onelegend is now known as [[OneLegend]]
[[OneLegend]] is now known as onelegend
<wlb> weston/main: Daniel Stone * xdg-shell: Move check for surface having buffer earlier https://gitlab.freedesktop.org/wayland/weston/commit/baa8f6b1af47 libweston-desktop/xdg-shell.c
<wlb> weston/main: Daniel Stone * xdg-shell: Fail xdg_surface creation when surface has role https://gitlab.freedesktop.org/wayland/weston/commit/80e948229243 libweston-desktop/xdg-shell.c
<wlb> weston Merge request !627 merged \o/ (Fail xdg_surface creation when surface has role https://gitlab.freedesktop.org/wayland/weston/-/merge_requests/627)
<wlb> weston Issue #522 opened by Daniel Stone (daniels) weston_surface::committed is not as it seems https://gitlab.freedesktop.org/wayland/weston/-/issues/522 [Core compositor], [xdg_shell and wl_shell], [Good for new contributors]
cedric has joined #wayland
cedric is now known as bluebugs
<onelegend> spam alert
<onelegend> oh wait lol
<daniels> onelegend: ... ?
<wlb> weston/main: Simon Ser * libweston-desktop: introduce a deprecated-wl-shell option https://gitlab.freedesktop.org/wayland/weston/commit/413d2104224d libweston-desktop/libweston-desktop.c meson.build meson_options.txt
<wlb> weston/main: Simon Ser * tests/roles: switch to xdg-shell https://gitlab.freedesktop.org/wayland/weston/commit/b46d0e330495 tests/ meson.build roles-test.c
<wlb> weston Merge request !559 merged \o/ (libweston-desktop: introduce a deprecated-wl-shell option https://gitlab.freedesktop.org/wayland/weston/-/merge_requests/559)
<emersion> nice
technomancy has left #wayland [ERC (IRC client for Emacs 26.1.50)]
onelegend has left #wayland [WeeChat 2.8]
<wlb> weston Issue #378 closed \o/ (Allow to choose launcher and disable systemd-logind at run-time https://gitlab.freedesktop.org/wayland/weston/-/issues/378)
<wlb> weston Merge request !663 opened by Derek Foreman (derekf) launchers: remove launchers https://gitlab.freedesktop.org/wayland/weston/-/merge_requests/663
<daniels> ^ if there's anything left of Weston by next week I'll be disappointed :P
<kennylevinsen> :D
<ManMower> my goal for the year is to post an MR every friday that removes at least as much code as I've added in other places. ;)
<ManMower> <-- pioneering the zero sum development model
* bl4ckb0ne just deletes code in bulk
<ManMower> :)
<emersion> +4 -1770 is def not bad
<jadahl> ManMower: you would enjoy the gtk3 -> gtk4 transition then. a million lines changed, but end diff was -50 or +50 lines or something
<emersion> oh ManMower, i just noticed you're working for collabora now. welcome back!
<ManMower> emersion: thanks! :)
<ManMower> jadahl: haha, that's great
<daniels> jadahl: :D
<daniels> emersion: they all come back in the end
<daniels> (I think the main difference is that he's now working in the kernel team so doesn't ostensibly have to deal with me)
<ManMower> I can't be the only one with a "no daniels in my reporting line" clause in my contract
<emersion> smart
* emersion receives homework from daniels even if he's not under his reporting line
<emersion> nowhere is safe nowadays
* bl4ckb0ne ducks
<ManMower> :)
<daniels> emersion: I promise I wasn't trying to pre-emptively butter you up with the wlroots review ... !
<emersion> such an obvious bait and switch :D
tzimmermann has joined #wayland
<bl4ckb0ne> smart move
<daniels> emersion: I'm just trying to lure you into a false sense of security by letting you think you can see what's coming
remanifest has joined #wayland
* emersion runs away
* daniels whistles innocently
<daniels> /m ManMower are we still on track for gamescope-shell next week?
<ManMower> haha :D
rasterman has quit [Quit: Gettin' stinky!]
<daniels> emersion: also, fair point that I owe you one - what can I pop off your queue?\
danvet has quit [Read error: Connection reset by peer]
zebrag has quit [Quit: Konversation terminated!]
tzimmermann has quit [Quit: Leaving]
erc has quit [Remote host closed the connection]
danvet has joined #wayland
zebrag has joined #wayland
<wlb> weston Merge request !404 merged \o/ (Allow programmatically closing xwayland windows https://gitlab.freedesktop.org/wayland/weston/-/merge_requests/404)
<wlb> weston/main: John Good * Allow programmatically closing xwayland window https://gitlab.freedesktop.org/wayland/weston/commit/f33ddd083917 libweston-desktop/xwayland.c xwayland/window-manager.c xwayland/xwayland-internal-interface.h
ecloud has quit [Ping timeout: 480 seconds]
ecloud has joined #wayland
bodiccea_ has joined #wayland
bodiccea has quit [Ping timeout: 480 seconds]
remanifest has quit [Remote host closed the connection]
johnjay has quit [Ping timeout: 480 seconds]
rasterman has joined #wayland
danvet has quit [Ping timeout: 480 seconds]
emersion has quit [Ping timeout: 480 seconds]
emersion has joined #wayland
rasterman has quit [Quit: Gettin' stinky!]