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

  • lynx@sh.itjust.works
    link
    fedilink
    English
    arrow-up
    5
    ·
    11 months ago

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

    • Chewy@discuss.tchncs.de
      link
      fedilink
      arrow-up
      8
      ·
      11 months ago

      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
        link
        fedilink
        English
        arrow-up
        4
        arrow-down
        1
        ·
        11 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.

    • AgnosticMammal@lemmy.zip
      link
      fedilink
      arrow-up
      0
      ·
      11 months ago

      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
        link
        fedilink
        English
        arrow-up
        1
        ·
        edit-2
        11 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.