On Fri, 29 Apr 2022 22:55:31 +0600 NRK <[email protected]> wrote: Dear NRK,
> While you've asked this to Hiltjo, I figured I'd give my 2c on this > since I've been trolling around the dmenu code base a bit recently. > > Most of the heavy-lifting is currently done via libsl, however libsl > is a pretty thin abstraction over X and exposes a lot of the X (and > Xft) specific details in the API. Just taking a look at `drw.h` should > confirm this. > > So in order to support wayland, the entire API will need to reworked > to hide away all low level details so that it can be used for both X > and Wayland. > > But that's not all, dmenu itself makes a good amount of calls to Xlib > functions. So all those will need to be abstracted away as well. > > At the end, I suspect it'll be much simpler to just have a separate > branch or even just a rewrite from scratch rather than trying to cram > support for both wayland and X in the existing codebase. thanks for your overview! One big issue I see is that Wayland offers no way of placing a window "at the top". If there are ways to "request" this these are proprietary extensions to the protocol. I'm a bit torn with regard to Wayland: On the one hand it is being adopted more and more (sway, etc.), but on the other hand, I find it to be a very ill-designed protocol that leads to a lot of fragmentation, extension madness and drops a lot of useful stuff X offers. The chance to design something truly wonderful was wasted on this piece of crap. Maybe on the third try in 2053... With best regards Laslo
