12

Up until upgrading to Windows 8, I would use Alt+Esc to make a window go to the end of the Alt-Tab list, and "get out of the way." For example, if my Alt+Tab list looks like:

A B C D E

With A as the active window, hitting Alt+Esc will make it into:

B C D E A

With B active, and Alt+Tabing once will end with window C:

C B D E A

Ever since I got Windows 8, this isn't working any more –– hitting Alt+Esc hides the active window, but Alt+Tab will get it right back.

Why is that? Is there a way to get it back?

aviv
  • 431
  • 4
  • 13
  • I found many a similar questions dated to the move from XP to Windows 7, but nothing from recent years. – aviv Jan 21 '13 at 15:58
  • 2
    For many reasons, I find that "upgrading to Windows 8" is really downgrading the user experience. Your example is not the only one. – harrymc Mar 05 '13 at 19:54
  • 7.5 years later, but I found an interesting clue: It's possible to use the Windows 3.11 style switcher by [holding alt, tapping the other alt, and hitting tab](https://superuser.com/a/114047). This old switcher is using the old ordering, so alt-esc sends things to the end of the queue. – aviv Jul 31 '20 at 09:57

2 Answers2

3

From Wikipedia's Alt-Tab :

When the Alt+Tab task switcher window is not active, Alt+Esc places the active window at the bottom of the Z-order. In Windows 8 the behavior has changed, the window will be moved level down the Z-order instead of going to the end.

If you want Windows 8's Alt-Esc to work as it used to work in Windows 7, the answer is negative - there is no information whether this is possible. Maybe in the future something will come up, but not now.

If you don't need a touch screen and you want your computer to behave like it did in Windows 7, the only solution is to go back to Windows 7.

harrymc
  • 455,459
  • 31
  • 526
  • 924
  • 2
    It looks like the Win32 API function [SetWindowPos](http://msdn.microsoft.com/en-us/library/ms633545%28v=vs.85%29.aspx) may be able to do this. I'll see if I can do something with that when I get a bit of time (maybe tomorrow). (cc @aviv) – Bob Mar 08 '13 at 07:36
  • The Windows API for doing that certainly still exists, the problem is that the Alt+Tab switcher does not use it. Writing your own extension that will hook Alt+Tab and do it your way will surely work. Your best tool may be [Autohotkey](http://www.autohotkey.com/), using the [DllCall](http://www.autohotkey.com/docs/commands/DllCall.htm) command. – harrymc Mar 08 '13 at 08:18
  • Are you saying the task switcher keeps its own independent list of windows? – Bob Mar 08 '13 at 08:32
  • I am saying that it has its own way of calling SetWindowPos that evidently is not what you want. Remark: In Autohotkey it is much easier to use the [WinSet](http://www.autohotkey.com/docs/commands/WinSet.htm) command, rather than DllCall. – harrymc Mar 08 '13 at 08:46
  • I was talking about intercepting `Alt` + `Esc` to set the window as bottommost. This is, as far as I know, a systemwide list. My testing so far (C#) has somehow led to the window being placed as the first item in the task switcher... (if WinSet works, perhaps you can amend your answer? I will continue with what I am currently trying, for now.) – Bob Mar 08 '13 at 08:50
  • 4
    A bit more testing, and it seems that `SetWindowPos` itself has changed as of Windows 8 - I get the expected behaviour on Windows 7. Good job, Microsoft, you broke it. – Bob Mar 08 '13 at 08:58
  • Implementing that behavior for Alt-Esc is a one-liner with Autohotkey. – harrymc Mar 08 '13 at 09:05
  • Unfortunately, while it is a one-liner, it does not work as expected. As I said in my previous comment, `SetWindowPos` itself appears to have changed (from your answer, I assumed it was just the `Alt` + `Esc` hotkey, not the underlying API - I was mistaken). I just tried with AHK/WinSet, and the results are exactly the same as manually calling the API function. I consider this broken, as `HWND_BOTTOM` no longer places the window at the bottom... I'm going to give up for now. – Bob Mar 08 '13 at 09:24
  • You might raise this up in the Autohotkey forums. Some developer might find a solution. – harrymc Mar 08 '13 at 10:11
1

This app does the job and is a little configurable:

vistaswitcher

I would like to speak with the Microsoft genius who decided to eliminate the ALT+ESC functionality.

Matteo Conta
  • 121
  • 3