This guy isn't complicated, just run it open a ton of windows, cascade and play around with alt tab and moving your mouse over windows.
All it does is make all windows transparent other than the active window. It also partially fades in windows when your mouse moves over it.
Also pressing control + alt + A makes toggles always on top for the window currently under the mouse.
Code:
#persistent
settimer, transman, 100
settimer, partunfade, 100
onexit, exiter
transstart()
return
^!a:: ;***
mousegetpos,,,win
wingettitle, title, ahk_id %win%
winset, AlwaysOnTop,TOGGLE, ahk_id %Win%
if instr(title, " - Always on top")
winsettitle, ahk_id %win%,,% substr(title, 1, instr(title, " - Always on top") - 1)
else winsettitle, ahk_id %win%,,%title% - Always on top
return ;*
transman: ;***
makemtrans()
return ;*
partunfade: ;***
makemabittrans()
return ;***
exiter: ;***
winget, allwindows, list
Loop, %allwindows% {
win := allwindows%A_index%
wingettitle, tit, ahk_id %win%
wingetclass, cls, ahk_id %win%
if a_index = 1
wingettitle, activetit, A
if isitlegal(cls) and !(tit = activetit) {
winset, Transparent, OFF, ahk_id %win%
}
}
exitapp
return ;*
;fix always on top mover
;fix for active windows that shouldn't change transparency eg (find dialogues)
transstart() {
loop, 200
{
thistime := a_index
winget, allwindows, list
Loop, %allwindows% {
win := allwindows%A_index%
wingettitle, tit, ahk_id %win%
wingetclass, cls, ahk_id %win%
if a_index = 1
wingettitle, activetit, A
if isitlegal(cls) and !(tit = activetit)
winset, Transparent,% 255 - thistime, ahk_id %win%
}
}
oldwin := newwin
}
makemtrans() {
static oldwin
winget, newwin,, A
if !(newwin = oldwin) {
loop, 200
{
if a_index = 1
wingetclass, cls, ahk_id %oldwin%
if isitlegal(cls)
winset, Transparent,% 255 - a_index, ahk_id %oldwin%
if a_index = 1
wingetclass, cls2, ahk_id %newwin%
if isitlegal(cls2)
winset, Transparent,% 55 + a_index, ahk_id %newwin%
}
}
oldwin := newwin
}
makemabittrans() {
static oldwin
mousegetpos,,,newwin
if !(newwin = oldwin) {
loop, 150
{
if (a_index = 1) {
wingetclass, cls, ahk_id %oldwin%
winget,activewin,, A
}
if isitlegal(cls) and !(oldwin = activewin)
winset, Transparent,% 205 - a_index, ahk_id %oldwin%
if (a_index = 1) {
wingetclass, cls2, ahk_id %newwin%
winget,activewin2,, A
}
if isitlegal(cls2) and !(newwin = activewin2)
winset, Transparent,% 55 + a_index, ahk_id %newwin%
}
}
oldwin := newwin
}
isitlegal(cls) {
wingettitle, activetit, A
return !(cls = "Button") and
!(cls = "Progman") and
!(cls = "SynTrackCursorWindowClass") and
!(cls = "Shell_TrayWnd")
}
please give feedback for ideas for additional features or bug fixes.
SCREENSHOT