this post was submitted on 28 Dec 2023
1460 points (99.3% liked)

Programmer Humor

18292 readers
2764 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

founded 1 year ago
MODERATORS
 

Alt text:Twitter post by Daniel Feldman (@d_feldman): Linux is the only major operating system to support diagonal mode (credit [Twitter] @xssfox). Image shows an untrawide monitor rotated about 45 degrees, with a horizontal IDE window taking up a bottom triangle. A web browser and settings menu above it are organized creating a window shape almost like a stepped pyramid.

Edit: alt text

you are viewing a single comment's thread
view the rest of the comments
[–] lynx@sh.itjust.works 24 points 6 months ago (3 children)

How can you do fractional rotation? Does it only work with x11 or is it also supported in wayland?

[–] Chewy7324@discuss.tchncs.de 31 points 6 months ago (2 children)

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

[–] nintendiator@feddit.cl 17 points 6 months ago

There’s no Wayland protocol for custom angle rotation, and I don’t expect anyone to create a protocol extension without a use-case.

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.

[–] grue@lemmy.world 13 points 6 months ago (2 children)

There’s no Wayland protocol for custom angle rotation, and I don’t expect anyone to create a protocol extension without a use-case.

[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?

[–] Zangoose@lemmy.world 2 points 6 months ago

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.

[–] barsoap@lemm.ee 1 points 6 months ago

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.

[–] Vilian@lemmy.ca 15 points 6 months ago (1 children)
[–] backhdlp@lemmy.blahaj.zone 5 points 6 months ago

Time to ask the wayfire devs to implement fractional screen rotation.

[–] AgnosticMammal@lemmy.zip 11 points 6 months ago (2 children)

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

[–] lynx@sh.itjust.works 12 points 6 months ago* (last edited 6 months ago)

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/

  • for translateXY enter half the screen resolution
  • don't copy the generated code, it has the numbers in the wrong order just type out the matrix row wise.

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.

[–] Auzymundius@lemmy.world 2 points 6 months ago (1 children)

Did you check the actual TV settings? Some of them let you adjust where picture is displayed iirc.

[–] AgnosticMammal@lemmy.zip 1 points 6 months ago

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.