#SingleInstance force #NoTrayIcon #NoEnv SetBatchLines, -1 OnExit, GuiClose OnMessage(0x404,"AHK_NotifyTrayIcon") ; AppTitle= WinOnTop vAHK (2/08) After_Click_Action= SysTray ;Normal|SysTray|Minimize|Exit Start_Option= Normal ;Normal|SysTray|Minimized ; Gui, Margin, 6,5 Gui, +AlwaysOnTop ;-Theme Gui, Add, Edit, w234 Disabled Gui, Add, Text, w226 xp+4 yp+4 BackgroundTrans vText , Click any window to select... Gui, Add, Button, w75 gSet vB1 xm, &Fix on Top Gui, Add, Button, w75 gSet vB2 x+5, &Not on Top Gui, Add, Button, w75 gSet vB3 x+5, &Menu Menu, WOTmenu, Add, Hide in SysTray, Hide Menu, WOTmenu, Add Menu, SubMenu, Add, %AppTitle%, MyPage Menu, SubMenu, Add, Fix windows on top of the screen, Return Menu, SubMenu, Add, based on WinOnTop v2.0.01 (2/01):, Return Menu, SubMenu, Add, © Detlev Schäfer`, Germany, DSG Menu, SubMenu, Add, www.AutoHotkey.com, AHK Menu, WOTmenu, Add, About..., :SubMenu Menu, WOTmenu, Add, Exit, GuiClose Menu, Tray, NoStandard Menu, Tray, Icon, Shell32.dll, 99 Menu, Tray, Add, Exit, GuiClose Menu, Tray, Tip, %AppTitle% If Start_Option = SysTray hide = Hide Else If Start_Option = Minimized hide = Minimize Gui, Show, %hide%, %AppTitle% SetTimer, ActiveWin, On If Start_Option = SysTray GoSub, Hide return GuiClose: WinSet,AlwaysOnTop,,ahk_class Shell_TrayWnd ExitApp Set: If A_GuiControl = B1 WinSet, AlwaysOnTop,,%previous% Else If A_GuiControl = B2 WinSet, Bottom,,%previous% Else If A_GuiControl = B3 { Menu, WOTmenu, Show return } If After_Click_Action = SysTray GoSub, Hide Else If After_Click_Action = Minimize WinMinimize, %AppTitle% Else If After_Click_Action = Exit GoTo, GuiClose return Hide: Gui, Cancel Menu, Tray, Icon Return: return MyPage: Run, http://www.autohotkey.net/~jaco0646/ return DSG: Run, http://www.freewarehits.de/ToolsPackage.htm return AHK: Run, http://www.autohotkey.com/ return AHK_NotifyTrayIcon(wParam, lParam) { If lParam = 0x201 Gui, Show return } ActiveWin: WinGetActiveTitle, title If (title != previous) AND (title != AppTitle) AND (title) { GuiControl,,Text, %title% previous := title WinCheck = 1 } Else If !(WinExist(previous)) AND (WinCheck) { WinGet, WinList, List If WinList > 1 Loop, %WinList% { WinGetTitle, title,% "ahk_id" WinList%A_Index% If (title != AppTitle) AND (title) { GuiControl,,Text, %title% previous := title return } } GuiControl,,Text, Click any window to select... WinCheck = 0 } return