this post was submitted on 28 Dec 2023
1470 points (99.3% liked)
Programmer Humor
19821 readers
481 users here now
Welcome to Programmer Humor!
This is a place where you can post jokes, memes, humor, etc. related to programming!
For sharing awful code theres also Programming Horror.
Rules
- Keep content in english
- No advertisements
- Posts must be related to programming or programmer topics
founded 2 years ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
How can you do fractional rotation? Does it only work with x11 or is it also supported in wayland?
Rotating the display by a custom angle is possible through xrandr on X.org.
There's no Wayland protocol for custom angle rotation, and I don't expect anyone to create a protocol extension without a use-case.
My wild guess: Theoretically it should be possible for a compositor to support similar custom rotation, as applications simply draw to their surface (window), without knowing how and where it is displayed on the viewport (display).
But it might require quite a bit of work, depending on the project, so I don't expect to ever see custom rotation on anything besides smaller/niche compositors.
[1] https://unix.stackexchange.com/questions/552138/rotate-a-display-by-custom-angle#552140
Puh-lease. It's Wayland; the devs fully and honestly expect every app developer (eg.: calc, Libreoffice, notepad.exe) to implement custom angle rotation on their own.
[gestures at thread] Does this not count??? 😁
Seriously, though: I suspect there might be non-novelty use-cases in mobile devices, especially things like smart watches. Those aren't beyond the scope of Wayland in the long run, are they?
Ok I was joking with the images but now that I think about it this would likely be pretty useful to have on smart watches with circular displays.
E.g. having the watch face rotating to face towards the wearer would be a pretty neat concept. Definitely something I'd want a toggle for though.
Smart watches tend to be microcontroller class devices because even though you can fit something powerful in there, powering it and heat dissipation make it silly.
The usual embedded-type application for wayland that it's even especially designed for is automotive: Things without window management but not particularly hardware-restrained. Also think public transit ticket machines, ATMs, such things. In that sense, from wayland's perspective android is already desktop.
in wayland the compositor is king they can do mhatever they want with the screen
https://m.youtube.com/watch?v=ZBLLC5fOy98&list=PLb7YRKEhWEBUIoT-a29UoJW9mhfzjpNle&index=2&pp=iAQB
Time to ask the wayfire devs to implement fractional screen rotation.
I was looking into this earlier to try fixing a display that was being offset on an old tv screen. The display was going off the left side of the TV, causing a black bar on the right side.
I was trying
xrandr
, and fixed it somewhat by offsetting the display back, but somehow it did not fix the right side - it seemed as if the display had went under the black bar.But yeah you can offset, stretch, skew and rotate with
xrandr
The
--rotate normal,inverted,left,right
does not work, but you can use the transform option to achieve the same effect. To create the transformation matrix you can use something like: https://angrytools.com/css-generator/transform/The final command looks like this:
xrandr --output screen-1 --transform 0.87,-0.50,960,0.50,0.87,540,0,0,1
To restore the original use (type this in first, because if you screw up you might not be able to see anything anymore):
xrandr --output screen-1 --transform 1,0,0,0,1,0,0,0,1
I tested it on x11.
Did you check the actual TV settings? Some of them let you adjust where picture is displayed iirc.
It only had two modes for the VGA source, 16:9 and 4:3. The 16:9 is the right ratio for the laptop but had the offset issue. The 4:3 makes it stretched out / squashed, but it doesn't have the offset issue.