Switcheroo++ is Alt-Tab replacement for Windows.
The idea of this project of to present windows in a column format: the most recent windows in the center column, the most common applications to the left, and pinned windows to the right.
Switcheroo++ is a fork of Regin Larsen's Switcheroo.
| Action | Shortcut | Remarks |
|---|---|---|
| Activate Switcheroo | Alt + Space |
This shortcut can be customized in Options |
| Activate Switcheroo | Alt + Tab |
Only works if enabled under Options |
| When Switcheroo is open | ||
| Enter search mode | Alt + S |
|
| Switch to selected window | Enter |
Or release Alt if opened with Alt + Tab and _altTabAutoSwitch is enabled in Options. Note: independently from _altTabAutoSwitch, pressing and release Alt will select the currently highlighted window and switch to it. |
| Close selected window | Alt or Ctrl + W |
|
| Dismiss Switcheroo | Esc or Alt + Q |
|
| Up and down in list | Up / Down |
Also works with Alt + J / Alt + K and when holding Alt. Also works with mouse wheel. |
| Navigate columns | Left / Right |
Also works when holding Alt. Alt+Shift+Wheel to scroll columns. |
| Cycle most common apps | Alt + ~ |
|
| Keep Switcheroo open | Ctrl |
Hold while releasing Alt to keep Switcheroo open if in _altTabAutoSwitch mode. |
| Launch Explorer | Alt + E |
Opens a new File Explorer window. |
| Launch current process | Alt + N |
Launches a new instance of the currently selected window's process. |
| Anonymize window titles | Alt + P |
Toggles anonymization of window titles for privacy during screen sharing or screenshots. |
- Double click a window to switch to it. (Configurable in Options if single click is also possible.)
- Mouse wheel scrolls through the current active list.
Shift + Mouse Wheelscrolls through columns.Shift + ClickandCtrl + Clickselect windows for multi-selection (for closing multiple windows at once).
Switcheroo displays windows in five columns:
- The center column shows the 10 most recently used windows and all windows not shown in other columns.
- The three columns to the left show windows from the three most common applications.
- The rightmost column shows pinned windows (defined in Options).
- Performance improvements regarding UI Automation -> Disabled UIA access.
- Allow to highlight some of the windows based:
- Highlight based on regex.
- Highlight based on process name.
- Highlight based on window title.
- Set/unset item color for highlighting.
- Set/unset icon for highlighting.
- Prioritize rules based on order.
- Tagging windows - kvakulo#174
- Support for Virtual Desktops
- Assign shortcut - elig0n#30
- Add option to disable stand-alone
ALTkeypress to switch to selected window. Currently this is enabled by default, but a bit surprising (see: kvakulo#128) - Theme support.
- Fix update checker
- Proper logging/crash reporting
- Alt+p to anonymize window titles for screenhots/demos/privacy
- Slight corner radius and shadow for the main window
- Keyboard support in options menu
- When closing window which asks for feedback, activate it.
- Fix: Pinning doesn't mess up current columns/filtering.
- Support for disabling column-mode.
- Support for limiting maximum number of results during search to improve performance on systems with many windows.
- UWP app search speed improvements.
- Preload window data on startup to improve first invocation speed.
- Support processes at UNC paths
- Performance optimizations for large number of windows (100+)
- Add utility for spawning 50/500 windows for perf testing.
- Dark mode
- Multi-monitor support: Switcheroo will now appear on the monitor where the mouse cursor is located.
- High DPI Fixes: Switcheroo now properly scales on high DPI displays and shows high-resolution icons.
- UWP app support
- Ensure the 10 most recent windows remain in the center column, even if duplicated in other columns.
- Implement a fixed, identical width for all columns.
- Center the entire window so the middle column is perfectly centered on the screen.
- When less than 5 columns are necessary, the central column must still remain on the same exact spot.
- Use mouse-wheel to scroll through the current active list.
- During search results are shown in the center column, while the other columns stay visible.
- Automatically remove common suffixes (e.g., " - Google Chrome") if they appear in more than half of all open windows of the same process.
- Fix navigation with
Alt + Left/Rightarrow keys. - Resolve focus and selection issues when using the mouse to select an item.
- After pressing Alt+W the focus must be moved to the next item in the list.
- Make it user configurable if single or double click is needed to switch to a window.
- Holding Ctrl while releasing Alt in
_altTabAutoSwitchmode keeps Switcheroo open. - Make pinned windows configurable from the UI.
- For left/app columns allow Alt+Shift+W to close all windows in that column.
- Add right click menu to windows for "Close", "Pin/Unpin", "Switch", "Open File Location", "Copy Window Title".
- Add Right Shift key support in shift key checks - from fork georgeyu/Switcheroo
- New screenshot
- Show message bubble when Switcheroo has started.
- Fix: Empty Shortcut will use Backspace as the shortcut - kvakulo#172
- Feat: Support for middle click to close windows - kvakulo#166
- Build of tagged releases doesn't properly show the changelog in the release notes.
- Add Alt+E shortcut to open a new explorer window.
Relative to @kvakulo kvakulo / Switcheroo. This overview was generated from the Github Fork Treeview and using my Github Fork Bookmarklet.
[x] indicates that I have either merged relevant changes or found the fork not applicable to this version.
- @advx9600 advx9600 / Switcheroo - Ahead: 11, Behind: 0
- @bakus522 bakus522 / Switcheroo - Ahead: 4, Behind: 0
- @boisenme boisenme / Switcheroo - Ahead: 1, Behind: 0
- Reads Chrome tabs and allows switching to them. => Out of scope for this fork.
- @byguid byguid / switcheroo - Ahead: 3, Behind: 0
- Hot-key release bug
- @crar01 crar01 / Switcheroo - Ahead: 10, Behind: 0
- Dark/Light/System theme support with auto-switching
- @dvygolov dvygolov / Switcheroo - Ahead: 5, Behind: 0
- Github Actions Release/Build support
- Multi-monitor fixes
- @cutecycle cutecycle / Switcheroo - Ahead: 8, Behind: 28
- Closes all windows of selected process with Ctrl+Shift+W => We are adding this for our columns with Alt+Shift+W
- @daanzu daanzu / Switcheroo - Ahead: 72, Behind: 0
- @jsonMartin jsonMartin / Switcheroo - Ahead: 13, Behind: 0
- Preload window data on startup for performance
- @nqbao1234 nqbao1234 / Switcheroo - Ahead: 3, Behind: 0
- Added MoveWindowToCursor functionality which some people like.
- @jsonMartin jsonMartin / Switcheroo - Ahead: 13, Behind: 0
- @elig0n elig0n / Switcheroo - Ahead: 98, Behind: 0
- @Celend Celend / Switcheroo - Ahead: 3, Behind: 0
- This fork from @elig0n adds a mode which allows searching by process name in Alt+Tab mode. Since we are using many different keyboard shortcuts, we can't merge this.
- @fc1943s fc1943s / Switcheroo - Ahead: 22, Behind: 3
- @rawbeans rawbeans / Switcheroo - Ahead: 4, Behind: 0
- @windedge windedge / Switcheroo - Ahead: 6, Behind: 98
- @meixger meixger / Switcheroo - Ahead: 104, Behind: 6
- @r-Larch r-Larch / Switcheroo - Ahead: 19, Behind: 0
- @yuriiwanchev yuriiwanchev / Switcheroo - Ahead: 1, Behind: 0
- @Celend Celend / Switcheroo - Ahead: 3, Behind: 0
- @georgeyu georgeyu / Switcheroo - Ahead: 1, Behind: 0
- @GrantByrne GrantByrne / Switcheroo - Ahead: 11, Behind: 0
- Moved to .Net 6, but reformatted codebase.
- @hahv hahv / HaHV_Switcheroo - Ahead: 1, Behind: 0
- @insertt insertt / Switcheroo - Ahead: 2, Behind: 0
- @Jijjy Jijjy / Switcheroo - Ahead: 15, Behind: 19
- @joonofafa joonofafa / Switcheroo - Ahead: 11, Behind: 0
- @koglerch13 koglerch13 / Switcheroo - Ahead: 1, Behind: 0
- @lances101 lances101 / Switcheroo-Edited-For-Wox - Ahead: 3, Behind: 19
- For some sort of plugin integration?
- @MichiBaum MichiBaum / Switcheroo - Ahead: 42, Behind: 0
- I didn't see any functionality changes, only migration to different .Net version and reformatting.
- @MuffinK MuffinK / Switcheroo - Ahead: 3, Behind: 0
- Keyboard shortcut changes only.
- @raymond-w-ko raymond-w-ko / Switcheroo - Ahead: 7, Behind: 0
- @ryuslash ryuslash / Switcheroo - Ahead: 7, Behind: 0
- Integrated Everything search into Switcheroo. => Out of scope for this fork.
- @schMarXman schMarXman / Switcheroo - Ahead: 1, Behind: 0
- @sohaibz-leaders sohaibz-leaders / Switcheroo - Ahead: 1, Behind: 0
- @szym1991 szym1991 / Switcheroo - Ahead: 1, Behind: 0
- Scrollbar styling => Investigate.
- @trond-snekvik trond-snekvik / Switcheroo - Ahead: 1, Behind: 19
- J/K Keybindings for up/down navigation
- @tversteeg tversteeg / Switcheroo - Ahead: 12, Behind: 0
- Pulls only commits from other forks.
- @valuex valuex / Switcheroo - Ahead: 6, Behind: 0
- Pinyin support for search functionality => Out of scope for this fork.
- @WizaXxX WizaXxX / Switcheroo_1C - Ahead: 6, Behind: 0
- I think this was an attempt to hide malware in Switcheroo
Switcheroo was originally developed by James Sulak. Regin Larsen took over the project in 2014.
Switcheroo++ is maintained by Christopher Özbek.
Switcheroo doesn't try to be a launcher. There are plenty of those (such as PowerToys Command Palette). Some other Alt-Tab replacements:
- Alt-Tab Terminator - Commercial alt-tab replacement with window previews.
- https://github.com/hdlx/AltAppSwitcher - If you want Alt+Tab to be like MacOS's app switcher.
Please report any bug you encounter by submitting an issue.
If you have an idea how to improve Switcheroo, then don't be shy to submit it as well.
Pull requests are greatly appreciated. If you plan a larger feature, then please get in contact, so we can coordinate the efforts.
nuget.exe restore Switcheroo.sln
msbuild.exe Switcheroo.sln /p:Configuration=Release
Switcheroo is open source and is licensed under the GNU GPL v. 3.
Copyright 2014, 2015 Regin Larsen
Copyright 2009, 2010 James Sulak
Switcheroo is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
Switcheroo is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with Switcheroo. If not, see <http://www.gnu.org/licenses/>.
HellBrick, ovesen, philippotto, tarikguney, holymoo, elig0n and trond-snekvik have contributed to Switcheroo.
Switcheroo makes use of these great open source projects:
- Managed Windows API, Copyright © 2006 Michael Schier, GNU Lesser General Public License (LGPL)
- PortableSettingsProvider, Copyright © crdx, The MIT License (MIT)
- Context menus for windows: Close, Pin/Unpin, Switch, Open File Location, Copy Window Title.
- Alt+E for starting a new explorer window.
- Alt+N for starting another instance of the focused application.
- Show toast notification when Switcheroo is started.
- Column-based re-design.
- Added various short-cuts for navigation and window management.
- Mouse-wheel handling
- Much improved window closing: Switcheroo now stays open, so you can close several windows faster. Thanks to @HellBrick for proposing this idea and sending a pull request! 👍 (#25)
- The focused window is now at the bottom of the list. This makes it faster to switch to the next window as you just need to press Alt+Enter, Enter. No more need to press Arrow Down. This makes Alt+Enter and Alt+Tab work in the same way (#24)
- Add help information to Switcheroo. Features should be more easily discoverable. Just click the question mark in the overlay (#32)
- Add Ctrl+W as a shortcut to close a window. This shortcut fells more intuitive than Ctrl+Enter (#22)
- Allow using Tab and Shift+Tab to navigate the window list (#31)
- Small look and feel adjustments. More prettiness! (#30)
- Deactivate the System Menu for Switcheroo. Because it often gets accidentally activated when using the default Alt+Tab shortcut (#29)
- Key presses in Switcheroo can be sent to other windows. Key presses are now contained within Switcheroo (#34)
- Fix Switcheroo window turning black on activate/dismiss (#30)
- More work around missing Alt+Tab windows. No windows should be forgotten (#36)
- Fix missing scrollbar if list is taller than screen (#37)
- More compatible way of closing windows (#42)
- Crashes on launch in Windows 10 or when .NET 4.6 Preview is installed (#20)
- Use icons from the taskbar (#19)
- Fix crash when opening the Options window while the hotkey is already in use (#18)
- Activate Switcheroo instead of the native task switcher with Alt+Tab [You need to enable this feature under Options] (#16)
- Option whether to start Switcheroo automatically on startup or not (#3)
- Ensure that the input field has a minimum width (#1)
- Remember key bindings and other settings when upgrading (#14)
- The Windows included are closer to those in the native Alt+Tab task switcher (#17)
- Portable version of Switcheroo (#10)
- Icons are now shown for admin processes as well (#11)
- Decrease flickering when closing a window with CTRL+Enter (#12)
- New Switcheroo icon
- Allow circling in the window list (@ovesen)
- Align filtering and highlighting algorithms
- Fix crash when pressing key up or down while the window list is empty (@ovesen)
- Fix potential crash in update check
- Fix crash if process icon could not be found
- Faster load time and filtering
- Grabs focus right away
- Highlights matching characters
- Included windows should be closer to the default alt+tab
- Informs you when a new version of Switcheroo is available
- Requires .NET 4.5
- Development continued by Regin Larsen
- Shows process icon and process title in addition to window title
- No window chrome
- Simple scoring algorithm when filtering
- Support for ReSharper like filtering, e.g. hc for HipChat
- New default key binding
Alt + Space(Windows 8 is usingWin + W)
- Hotkey now hides Switcheroo window in addition to showing it (Issue 4)
- Double-clicking on item now activates that window (Issue 4)
- Added mutex to ensure only one instance is running
- Attempted bugfix of Windows 7 64-bit window-switching bug (Issue 3).
- Long windows titles are now truncated.
- Window now resizes to match height and width of all entries
- Window exception list is now user-editable.
- Tested on 32-bit Windows 7.
- Added ctrl-enter functionality.
- Mostly migrated to using the Managed Windows API instead of custom window class.