forked from external/yambar
We do it differently from everybody else... A traditional HiDPI implementation typically scales up everything. I.e. if the user wants a 1px border, it's scaled up to 2px. The wayland server typically presents an output width/height that has been scaled *down*. This is all a bit backwards, but perhaps was the best choice to make legacy applications at least work. f00bar on the other hand, wants to give the user absolute control. Thus, we don't scale up at all. If the user wants a 25px bar height, that's what he gets. This does mean however, that we need to scale *down* the surface size since it's in logical pixels, not physical. So we scale *down* the surface size (which then gets scaled back up by the wayland server), and then render everything *on* that surface without any scaling. |
||
---|---|---|
.. | ||
backend.h | ||
bar.c | ||
bar.h | ||
CMakeLists.txt | ||
private.h | ||
wayland.c | ||
wayland.h | ||
xcb.c | ||
xcb.h |