; http://dev.adiirc.com/boards/5/topics/475 ; v0.4 by pereba ; Hide all idle channels and querys (no new message color): ; /hidle ; Force unhide all windows if need: ; /hidle -u ; Lets hide inactive windows after xx seconds on AdiIRC startup?! on *:START: { .timerhidle 0 1 hidle } ; Global timeout alias -l timeout { return 120 } ; Restore windows on unloading script on *:UNLOAD: hidle -u alias F3 { hidle -u } alias hidle { scon -a dohidle $1 } alias -l dohidle { var %w $window(*,0), %wtype, %wname, %wid, %wcolor, %widle while (%w) { %wtype = $istok(channel query,$window(*,%w).type,32) %wname = $window(*,%w) %wid = $window(*,%w).wid %wcolor = $istok(message highlight,$window(*,%w).sbcolor,32) %widle = $($+(%,hidle_,%wid),2) if (%wtype) && ($activewid != %wid) { if (%widle != 0) dec %hidle_ $+ %wid if (u isin $1) { window -w3 %wname set -e %hidle_ $+ %wid $timeout() } if (!%wcolor) && (!%widle) { window -w0 %wname set -e %hidle_ $+ %wid $timeout() } } dec %w } } ; Unhide on focus on *:ACTIVE:*: { var %lwid = $lactivewid if ($window(@ $+ %lwid).type isin channel querry) && (%lwid != $wid) set -e %hidle_ $+ %lwid 120 if (!$window($active).tbstate) && ($window($active).type isin channel querry) window -w3 $active if ($window($active).type == status) && (%lwid != $wid) .timer -m 1 1 dohidle -u } ; Unhide on activity on *:TEXT:*:#,?: { var %w = @ $+ $wid if (!$window(%w).tbstate) window -w3 %w } menu menubar { - Idle Windows .Hide no new message windows: hidle .Force unhide all: hidle -u .- .Auto hide control $chr(9) $iif($timer(Hidle),On,Off):toggle } alias -l toggle { if ($timer(hidle)) { scon -a hidle -u .timerhidle off } else { .timerhidle 0 1 hidle } }