Hello, When rotating X's display on the fly using xrandr -o left|normal|inverted|right command, following transitions are performed with black screen delay effect i.e. the display becomes black for a moment then displays rotated screen. The following transitions are performed with a delay - a black screen is shown with ~1 second duration, then rotated screen appears normal > right|left inverted > normal|left|right left > normal|inverted right > normal|inverted The following transitions are performed smoothly with no delays, i.e. "immediately" normal > inverted left > right right > left Steps to reproduce 1. Run following on machine with xorg-x11-drv-intel 2. In terminal run following from normal orientation : xrandr -o left Actual result : Screen is rotated with delay and black screen effect then it shows normal rotated screen Expected result : Should rotate screen with no delays and any black screen effect. Like when rotating from the right orientation to the left orientation. Details : Most time consuming code while rotating the display orientation with xrandr is ret = crtc->funcs->set_mode_major(crtc, mode, rotation, x, y); intel video drivers function call. This call is located in hw/xfree86/modes/xf86Crtc.c file in xf86CrtcSetModeTransform function. HW Platforms: Graphics : Intel GMA 3150 graphics Graphics : Intel Graphics Media Accelerator (GMA) 950 Xorg-server 1:7.5 xserver-xorg-video-intel 2:2.11.0 xserver-xorg-video-intel 2:2.12.0 xserver-xorg-video-intel 2:2.13.0 Regards, Levon
See the proposal for per-crtc pixmaps in RandR 1.4.
Randr1.4 was still born. However, this is indeed quite annoying since it should be possible to achieve a seamless transition to a rotated framebuffer in the current setup. :|
This is just an unnecessary forced disable due to the crtc_disable() in apply(). Comparing xrandr.c with xserver/randr/rrcrtc.c, I think it is a workaround for randr1.0 as randr1.2 drivers handle the situation fine.
Nope, actually missing a bit of protocol to change the screen size and adjust the CRTCs simultaneously.
-- GitLab Migration Automatic Message -- This bug has been migrated to freedesktop.org's GitLab instance and has been closed from further activity. You can subscribe and participate further through the new bug through this link to our GitLab instance: https://gitlab.freedesktop.org/xorg/xserver/issues/216.
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.