Alt-Tab Toggle

This project is abandoned.

Whether this project is out of date or its author marked it as abandoned, this project is no longer maintained.

If you wish to take this project over, please report it and state your intentions.

Main screen

Alt-Tab Toggle (ATT) will force WoW to the foreground on events when you're alt-tabbed. Optionally you can choose to only play a sound when one of these events fire. Then you can tab back into WoW at your leisure.

Events that ATT will toggle include

  • Auctioneer scan, search and post complete [W]
  • BankStack complete [W]
  • BG Deserter debuff expire,
  • BG idle debuff,
  • BG gates opening
  • Duel request (2.1.5beta),
  • Dungeon Deserter/Cooldown debuff expire
  • Enemy detected,
  • Enter Battleground window,
  • Enter combat,
  • Flight land,
  • Group invite,
  • Group ready check,
  • LFG boot proposal,
  • LFG enter proposal,
  • LFG role check,
  • Mailbox, finished looting (2.1.7beta) [W]
  • Resurrection request (2.1.2beta)
  • Summon request,
  • Trade skill finish crafting [W]
  • Whispers,
  • Wintergrasp Starting,
  • Zeppelin arrival

[W] = window mode only

Leave a ticket if you have another event that should be added.

Q) How does ATT bring WoW to the foreground?
A) ATT uses a console command gxRestart that inadvertently causes WoW to jump to the foreground (in full screen mode).
Q) I'm in window mode and WoW's not coming up.
A) Unfortunately the console gxRestart command doesn't work in window mode. You'll have to use the alert sound.
Q) I'm in window mode and ATT's alerting when I'm not alt tabbed.
A) The Alt-Tab Detection is giving false positive. This usually happens to slow PCs or under heavy load (-10FPS). If this is causing problems, turn off Alt-Tab Detection and manually activate ATT by typing /att before you alt tab out.
Q) How does Alt-Tab Detection work?
A 1) When fullscreen WoW loses focus, frames stop updating. ATT checks if it's been 5+ seconds since the last frame update.
A 2) When windowmode WoW loses focus, FPS drops to -10, ATT checks if your FPS has dropped below 10 for over 5 seconds. this could give false positives on slow PCs.
Q) What does AFK Activate do?
A) AFK Activate is a old feature that activated ATT when you went /afk. Once you returned you could move/jump and ATT would deactivate. AFK Activate isn't needed now with Alt-Tab Detection.
Q) Will you add a toggle for the ingame alarm clock?
A) Currently not possible. When WoW loses focus frames stop firing OnUpdate. The alarm clock uses OnUpdate to fire the alarm.
Q) ATT caused WoW to crash and give error #132.
A) Checkout Blizzard's Error #132 page. If that doesn't help try enabling ATT's Sound Only option on.
Q) AddonUsage / TitanPerformance claims ATT is using lots of CPU usage, why?
A) The Ace3 libraries ATT uses are probably being used by other addons and ATT is getting the blame. Try downloading Ace3 separately from here and see if that helps.
Q) Are there alternatives to Alt-Tab Toggle?
A) Yes, LFGMaximizer, EventNotifier and AltTabber that I know of.

Discussion page: here


  • CUDiLLA - German (deDE) translator
  • kdw112 - Korean (koKR) translator
  • fxpark - Korean (koKR) translator
  • KAPMA - Russian (ruRU) translator
  • zhTW - Traditional Chinese (zhTW) translator
  • Mars1491 - Traditional Chinese (zhTW) translator

Translators needed - apply localizations here.

Donations welcome. There's a donate button here.

Bitcoin address: 13mvJMp8Z38SUAnZ4PgGpio5L2inqWQGsP

You must login to post a comment. Don't have an account? Register to get one!

  • Avatar of Highend Highend Jul 26, 2010 at 21:55 UTC - 0 likes

    1x Alt-Tab_Toggle-r114\modules\BankStack.lua:16: Usage: EmbedLibrary(addon, libname, silent, offset): 'libname' - Cannot find a library instance of "AceHook-3.0". AceAddon-3.0-5:209: in function `EmbedLibrary' AceAddon-3.0-5:191: in function `EmbedLibraries' AceAddon-3.0-5:270: in function `NewModule' Alt-Tab_Toggle-r114\modules\BankStack.lua:16: in main chunk

    Locals: self = <table> { DisableAddon = <function> @ Alt-Tab_Toggle\libs\Ace3\AceAddon-3.0\AceAddon-3.0.lua:566: EnableAddon = <function> @ Alt-Tab_Toggle\libs\Ace3\AceAddon-3.0\AceAddon-3.0.lua:532: EmbedLibrary = <function> @ Alt-Tab_Toggle\libs\Ace3\AceAddon-3.0\AceAddon-3.0.lua:206: InitializeAddon = <function> @ Alt-Tab_Toggle\libs\Ace3\AceAddon-3.0\AceAddon-3.0.lua:509: IterateAddonStatus = <function> @ Alt-Tab_Toggle\libs\Ace3\AceAddon-3.0\AceAddon-3.0.lua:607: EmbedLibraries = <function> @ Alt-Tab_Toggle\libs\Ace3\AceAddon-3.0\AceAddon-3.0.lua:188: initializequeue = <table> {} statuses = <table> {} GetAddon = <function> @ Alt-Tab_Toggle\libs\Ace3\AceAddon-3.0\AceAddon-3.0.lua:173: NewAddon = <function> @ Alt-Tab_Toggle\libs\Ace3\AceAddon-3.0\AceAddon-3.0.lua:126: IterateModulesOfAddon = <function> @ Alt-Tab_Toggle\libs\Ace3\AceAddon-3.0\AceAddon-3.0.lua:612: IterateEmbedsOnAddon = <function> @ Alt-Tab_Toggle\libs\Ace3\AceAddon-3.0\AceAddon-3.0.lua:611: embeds = <table> {} IterateAddons = <function> @ Alt-Tab_Toggle\libs\Ace3\AceAddon-3.0\AceAddon-3.0.lua:597: frame = AceAddon30Frame {} addons = <table> {} enablequeue = <table> {} } addon = <table> { SetDefaultModuleLibraries = <function> @ Alt-Tab_Toggle\libs\Ace3\AceAddon-3.0\AceAddon-3.0.lua:381: Enable = <function> @ Alt-Tab_Toggle\libs\Ace3\AceAddon-3.0\AceAddon-3.0.lua:313: NewModule = <function> @ Alt-Tab_Toggle\libs\Ace3\AceAddon-3.0\AceAddon-3.0.lua:255: EnableModule = <function> @ Alt-Tab_Toggle\libs\Ace3\AceAddon-3.0\AceAddon-3.0.lua:346: modules = <table> {} GetModule = <function> @ Alt-Tab_Toggle\libs\Ace3\AceAddon-3.0\AceAddon-3.0.lua:230: IterateEmbeds = <function> @ Alt-Tab_Toggle\libs\Ace3\AceAddon-3.0\AceAddon-3.0.lua:456: IsModule = <function> @ Alt-Tab_Toggle\libs\Ace3\AceAddon-3.0\AceAddon-3.0.lua:237: defaultModuleLibraries = <table> {} SetEnabledState = <function> @ Alt-Tab_Toggle\libs\Ace3\AceAddon-3.0\AceAddon-3.0.lua:438: enabledState = true SetDefaultModulePrototype = <function> @ Alt-Tab_Toggle\libs\Ace3\AceAddon-3.0\AceAddon-3.0.lua:423: GetName = <function> @ Alt-Tab_Toggle\libs\Ace3\AceAddon-3.0\AceAddon-3.0.lua:298: defaultModuleState = true IterateModules = <function> @ Alt-Tab_Toggle\libs\Ace3\AceAddon-3.0\AceAddon-3.0.lua:451: name = "Alt-Tab_Toggle_BankStack" Disable = <function> @ Alt-Tab_Toggle\libs\Ace3\AceAddon-3.0\AceAddon-3.0.lua:328: IsEnabled = <function> @ Alt-Tab_Toggle\libs\Ace3\AceAddon-3.0\AceAddon-3.0.lua:465: moduleName = "BankStack" SetDefaultModuleState = <function> @ Alt-Tab_Toggle\libs\Ace3\AceAddon-3.0\AceAddon-3.0.lua:401: DisableModule = <function> @ Alt-Tab_Toggle\libs\Ace3\AceAddon-3.0\AceAddon-3.0.lua:364: } libname = "AceHook-3.0" silent = false offset = 4 lib = nil error = <function> defined =[C]:-1 tostring = <function> defined =[C]:-1 type = <function> defined =[C]:-1 tinsert = <function> defined =[C]:-1


  • Avatar of Cyprias Cyprias Jun 24, 2010 at 01:43 UTC - 0 likes

    Sounds in background needs to be enabled for sounds to be played when alt tabbed. It's a wow limitation.

  • Avatar of angrysteel angrysteel May 27, 2010 at 04:44 UTC - 0 likes

    Any chance of making the sounds fire without turning on all the background sounds?

    I know most mods do not require you to turn on all sounds then back off. IE when Big Wigs fires off a raid warning alert, you dont listen to all the background sounds during it.

  • Avatar of Cyprias Cyprias Feb 17, 2010 at 17:31 UTC - 0 likes

    Like when the bulb splashes?

  • Avatar of davidoff davidoff Feb 17, 2010 at 05:49 UTC - 0 likes

    Love this idea and the addon itself should helps. I am wondering if it could works on the fishing bulb? Does the event detectable?

  • Avatar of Cyprias Cyprias Feb 16, 2010 at 21:05 UTC - 0 likes

    @Laren v1.3.7 should only flight land toggle when we're really landing now.

  • Avatar of Cyprias Cyprias Feb 14, 2010 at 16:51 UTC - 0 likes

    Good to know. I'll see what I can do to confirm it's a flight land and not some other player regaining control event.

    Last edited Feb 14, 2010 by Cyprias
  • Avatar of Laren Laren Feb 14, 2010 at 15:49 UTC - 0 likes

    Couldn't find a place to file the following bug report: If I get CCed in PvE combat, the Flight Land event is toggled when the CC wears off.

    Last edited Feb 14, 2010 by Laren
  • Avatar of Cyprias Cyprias Jan 21, 2010 at 18:17 UTC - 0 likes

    Dungeon Cooldown is a debuff separate from Dungeon Deserter.

  • Avatar of Starfox Starfox Jan 21, 2010 at 09:16 UTC - 0 likes

    Two things regarding options:
    a) A option to change sound for everything at once!
    b) Get rid of all those checkboxes, but add an option sound optionn 'None' instead. Also because if you expend the options frame so it displays an odd number per line it looks really weird :)

    [13:44:27] Alt-Tab Toggle: Dungeon Cooldown
    But my 'Dungeon Deserter' was still on me for serveral minutes :O

    Last edited Jan 21, 2010 by Starfox


Date created
Dec 27, 2009
Last update
Sep 19, 2011
Development stage
  • deDE
  • enUS
  • koKR
  • zhCN
GNU General Public License version 3 (GPLv3)
Recent files
  • A: r147 for 4.2.0 Sep 19, 2011
  • A: r146 for 4.2.0 Sep 16, 2011
  • R: 2.3.0 for 4.2.0 Sep 15, 2011
  • A: r144 for 4.2.0 Sep 14, 2011
  • B: 2.2.3beta for 4.2.0 Sep 14, 2011