Why does the elevation prompt have only the wallpaper as its background?


One small change to the elevation interface in Windows 8 has to do with the image behind the elevation prompt. In earlier versions of Windows, the image was a snapshot of your desktop, including all your open windows. But in Windows 8, it's just a picture of your wallpaper. Why did this change?

We discovered that when you ran an elevated application, the screen capture performed by the elevation prompt often looked ugly because there was a good chance it caught an animation mid-stream. For example, when you run an application elevated from the Windows 8 Start page, the tiles zoom out, your name in the upper right corner fades out, and the entire screen cross-fades to the desktop. As a result, the snapshot showed your tiles in some intermediate location, a faint image of your name in the corner, and a half-visible desktop.

Okay, so work could've been done to, say, wait for all animations to complete before taking the screen capture. That and other solutions were proposed and considered, but the feature simply didn't make the cut. There were too many other things that had to be done, and those other things took higher priority.

Engineering is about trade-offs, and trade-offs are rarely easy. If you decide to do everything, then you find yourself trying to cram two years of work into one month of schedule, and that rarely ends well. You have to prioritize what is important and what is less important, and then exercise your creativity to come up with alternate solutions which, perhaps not ideal, get the job done in less time and with lower risk.

Comments (17)
  1. But when there’s no wallpaper it will not show the desktop background color, but rather the system background color.

    One of the stupider ADA accommodations I have to request is changing the setting in group policy to “User Account Control: Switch to the secure desktop when prompting for elevation”: disabled.

    No, MS doesn’t care about this yet because of the existence of a workaround, no matter how horrifying it is to security teams.

    1. The MAZZTer says:

      It’s almost as if the important part… the UAC dialog on the secure desktop… works properly, and the background isn’t really that important. Hence any glitches or bugs in it would be low priority to fix.

    2. Gee Law says:

      The elevation prompt on secure desktop uses black background if Explorer is not running or if “Require trusted path for credential entry” policy is enabled. Otherwise, it should use a dimmed version of the user’s desktop background (color or wallpaper).

      But I don’t understand how using black background would create an accessibility problem…?

    3. warrens says:

      Have you checked this recently, Joshua? On Windows 10 1809, it shows the current user’s background colour.

      1. Windows 10 might. Windows Server still shows bright green. Black would be nice …

  2. gdalsnes says:

    Replacing one weird thing with another weird thing is…weird.

  3. I always thought the reason was performance gain through simplification. I assumed the wallpaper was already in memory while the screenshot needed to be taken. Fewer things to do. Windows 8 simplified a lot of things and got rid of a lot of others.

    But you are saying the actual reason had something to do with aesthetics? On Windows 8? 😲 O_o

    1. HA. HA. *Slow clap*

  4. Dan Findley says:

    I always assumed it was a security thing – the elevated prompt was deliberately naked so that no details leaked into it. Your explanation is much more pragmatic Raymond :)

  5. MisterZu says:

    IMHO best solution could be just a live (but grayed) view of ‘underlying’ desktop. DWM API must be able to implement this.

    1. Gee Law says:

      The underlying desktop is switched away from and it is not possible to paint the underlying desktop, as there can only be one desktop active in a session at a time. The windows in the underlying desktop might no longer repaint themselves since the desktop has become inactive.

      1. Alex Cohn says:

        This is the whole point of MisterZu‘s proposal: instead of switching away from the underlying desktop, “simply” to overlay it with the elevation prompt, keeping all windows live (and unaware that they are shaded grey). Should be possible, but not very easy.

  6. kantos says:

    Interesting I had always assumed the change was security related to prevent malware from faking UAC prompts.

    1. skSdnW says:

      There is a win32 function that paints the wallpaper for you, it is actually less code than capturing the desktop if you wanted to create a fake elevation screen.

  7. Swisstone says:

    I tought it was for performance reasons…
    Until Windows 8, the UAC took a little longer before drawing the screenshot and displaying the dialog.
    It is still one less operation to perform (no need to take the screenshot, just grab the background)

  8. ender9 says:

    Speaking of elevation prompt, did anybody notice that at least on Vista, the window that requested elevation wasn’t as faded as the rest of the background? I always thought that was a neat effect.

  9. moradi777 says:

    a security thing – the elevated prompt was deliberately naked so that no details leaked into it. Your explanation is much more pragmatic Raymond :)

Comments are closed.

Skip to main content