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

Programmer Humor

18961 readers
473 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
1467
Good luck web devs (lemmy.world)
submitted 7 months ago* (last edited 7 months ago) by [email protected] to c/[email protected]
 

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 24 points 7 months ago (3 children)

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

[–] [email protected] 31 points 7 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

[–] [email protected] 17 points 7 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.

[–] [email protected] 13 points 7 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?

[–] [email protected] 2 points 7 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.

[–] [email protected] 1 points 7 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.

[–] [email protected] 15 points 7 months ago (1 children)
[–] [email protected] 5 points 7 months ago

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

[–] [email protected] 11 points 7 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 12 points 7 months ago* (last edited 7 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.

[–] [email protected] 2 points 7 months ago (1 children)

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

[–] [email protected] 1 points 7 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.