(kemona_halftau)
i love that all wayland desktops have their own weird hacky way of getting and setting window positions
(kemona_halftau)
sometimes it is a nonstandard wayland protocol, sometimes it is an ipc interface, sometimes it is an overly-complex qml/javascript plugin sent over dbus commands, sometimes it is dynamically loading and installing window rules just to move a single window somewhere else one time
@kemona_halftau i like how wayland was created in part to replace the decades of hacks that were introduced in x11, but then it has hacks to cover extremely basic functionality
i’m not even anti-wayland, it’s just that some of the decisions are wtf
(kemona_halftau)
@jiub to be fair x11 isnt much better either, but at least moving a window on the screen is easy
@kemona_halftau oh absolutely
i’m sure that overall x11 is worse. but when i hear stuff like this, or how it handles accessibility and screenshotting tools i’m just
@kemona_halftau (correct me if I’m wrong) I’m fairly certain some protocol for this finally got forced through
(kemona_halftau)
@ladypretzal i’m not sure of any such protocol, or if any compositors actually support it if it exists 
@kemona_halftau I mean just (if you decide to visit this site, I recommend an ad blocker)
@kemona_halftau and if you just want to look at the merge:
(kemona_halftau)
@ladypretzal would this allow for the following:
(a): repositioning a window which is already open by exact pixel coordinates relative to the window’s current position, and
(b): determining exactly where a window is positioned (NOT offset by shell components)
?
a) from my understanding yes
b) from my understanding no, wayland has a general allergy to giving windows an idea of what’s going on
I can look into it further in a bit, and actually confirm
(kemona_halftau)
@ladypretzal “allergy” is the best way to put it lol
(kemona_halftau)
@ladypretzal to be fair, my use-case for these is not typical of normal desktop applications
in oneshot (indie video game from 2016), there is a mechanic involving dragging the game window off of the edge of the screen and back to reveal information (like dipping a card with invisible ink into a bucket of water). this is required to progress within a particular area in a normal playthrough (unless the player already knows the hidden information). there is also a non-essential effect where the game window shakes (moves by random offsets). i am modifying oneshot’s engine source code to try to make these mechanics (and several others, such as changing the desktop wallpaper) work in various modern desktops and window managers (plus some miscellaneous quality-of-life improvements). right now i am making a kwin script to get and set window positions using dbus commands, and a while ago i wrote something that interfaces with swaywm’s ipc socket to do the same thing, and i plan on doing something for niri as well
it is funny to me how in x11, one can simply create a window, listen to a handful of events on that window, and bam. your program can see exactly when and how that window is moved, resized, minimized, whatever. in wayland, it is much more complicated to just create a window, but also easier to do other things (like change the mouse cursor (if the compositor supports wp_cursor_shape) or show titlebars (if the compositor supports xdg_decoration (which is everyone except for gnome))) (compared to x11 which achieves these in weird nonstandard ways, and you just sorta have to hope whatever you want is possible with xlib or xcb)
im not anti-wayland, but im also not saying wayland (or x11) is perfect, they just sorta exist
sorry for the rant 
@kemona_halftau don’t feel sorry for ranting! This is a sick use case!!!
And it is very much the sort of use case that it’s really hard to get developers to listen to :p