Aerial icon indicating copy to clipboard operation
Aerial copied to clipboard

Borderless Windowed Mode

Open kathampy opened this issue 8 years ago • 10 comments

Please make the screen saver run in borderless window mode. It appears to be switching to a fullscreen mode which causes significant screen flashing when both starting and exiting the screen saver. It's quite jarring when the screen saver starts and I quickly cancel it.

kathampy avatar Jan 10 '17 05:01 kathampy

@kathampy the windows mode is supported; just rename .src to .exe, or download the .exe version, and launch it. It'll start in resizable windowed mode with an [x] in the top-right corner.

cDima avatar Feb 05 '17 01:02 cDima

How will it run as a screensaver then?

kathampy avatar Feb 05 '17 05:02 kathampy

Copy it as a scr and use that as the windows screensaver. They share settings.

On Sun, Feb 5, 2017, 12:48 AM Kurian Thampy [email protected] wrote:

How will it run as a screensaver then?

— You are receiving this because you commented.

Reply to this email directly, view it on GitHub https://github.com/cDima/Aerial/issues/103#issuecomment-277499196, or mute the thread https://github.com/notifications/unsubscribe-auth/AADl3YIrZ6mNCoEAaSpFqpRAffn_4DViks5rZWKhgaJpZM4LfCLL .

cDima avatar Feb 05 '17 07:02 cDima

I renamed the EXE to SCR. It still flickers and enters some kind of exclusive fullscreen mode, and takes equally long to quit. When running the EXE directly, it starts instantly in windowed mode without any artefacts.

kathampy avatar Feb 11 '17 18:02 kathampy

Maybe this can be applied to the Form somehow, even though it's .NET, instead of letting the video player natively go fullscreen. http://stackoverflow.com/questions/34462445/fullscreen-vs-borderless-window

kathampy avatar Feb 11 '17 18:02 kathampy

@kathampy You're referring to the fullscreen/borderless mode debate from the gaming world. I don't think borderless window mode is available to screensavers.

If I'm understanding this correctly borderless window mode means that a game launches a window within the existing logical desktop session (where all your existing applications and the task bar, etc draw their windows) and fullscreen mode means that a game launches into it's own logical desktop (where nothing else is drawing).

But when you launch a screensaver Windows tells it to draw into its own logical desktop session, sometimes referred to as the "screensaver desktop" or the "secure desktop". Screensavers don't have a choice in this. They can't run in the same desktop as all your other applications i.e. borderless window mode. You can read a bit about this concept of logical desktops here... https://msdn.microsoft.com/en-us/library/windows/desktop/ms682573(v=vs.85).aspx

What you might be seeing is the delay caused when the .Net framework launches. Do you only get this flicker the first time you start the screensaver? If you launch the screensaver by right-clicking and selecting Test, then once it's started kill it, and then immediately start it again do you still get the flicker on that second launch?

alistairmcmillan avatar Feb 11 '17 21:02 alistairmcmillan

  • Switching to the secure desktop for UAC, as well as in applications like 1Password (which prompts for the password on the secure desktop) is instantaneous without any artefacts.

  • The built-in screensavers start almost instantaneously with a slight but acceptable delay on a black screen.

  • The built-in screensavers exit instantly with no artefacts. The very next frame after moving the mouse is my desktop with no artefacts in between.

  • It doesn't look like .NET is causing the artefacts.

  • The EXE version draws its window immediately, but the video is black for ~100 ms on launch and even longer on exit.

  • The SCR version exhibits the same delay, but the effect is exaggerated since it goes fullscreen.

  • The screen used to go grey in v3 but now it goes black.

kathampy avatar Feb 11 '17 23:02 kathampy

@kathampy Do you have G-SYNC enabled?

alistairmcmillan avatar Feb 14 '17 11:02 alistairmcmillan

It's disabled for these executables. G-SYNC caused the video playback to stutter.

kathampy avatar Feb 14 '17 12:02 kathampy

@kathampy Could you record a video of the problem for us? Aside from the delay caused by the .Net framework starting up I'm unable to recreate what you're describing.

alistairmcmillan avatar Feb 16 '17 10:02 alistairmcmillan