Created
January 16, 2022 19:45
Revisions
-
rbreaves created this gist
Jan 16, 2022 .There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -0,0 +1,71 @@ #NoEnv ; Recommended for performance and compatibility with future AutoHotkey releases. ; #Warn ; Enable warnings to assist with detecting common errors. SendMode Input ; Recommended for new scripts due to its superior speed and reliability. SetWorkingDir %A_ScriptDir% ; Ensures a consistent starting directory. SetTimer, HideTerminal, 1000 ; return WinMatcher := "ahk_class CASCADIA_HOSTING_WINDOW_CLASS" HideTerminal: If WinActive("ahk_exe Code.exe") { WinGet, AllWindows, List loop %AllWindows% { WinGet, Active_Process, ProcessName, % " ahk_id " AllWindows%A_Index% WinGetTitle, WinTitle, % " ahk_id " AllWindows%A_Index% WinGet, State, MinMax, % " ahk_id " AllWindows%A_Index% if ((State != -1 && Active_Process != "Code.exe" && Active_Process != "Explorer.EXE" ) || ( State != -1 && Active_Process == "Explorer.EXE" && WinTitle != "Program Manager" && WinTitle != "" ) ){ ; && Active_Process != "Explorer.EXE" WinMinimize, % "ahk_id " AllWindows%A_Index% ; MsgBox, Process: %Active_Process% %WinTitle% } } } return !`::ToggleTerminal() ShowAndPositionTerminal() { WinShow ahk_class CASCADIA_HOSTING_WINDOW_CLASS WinActivate ahk_class CASCADIA_HOSTING_WINDOW_CLASS SysGet, WorkArea, MonitorWorkArea TerminalWidth := A_ScreenWidth * 0.9 if (A_ScreenWidth / A_ScreenHeight) > 1.5 { TerminalWidth := A_ScreenWidth * 0.8 } WinMove, ahk_class CASCADIA_HOSTING_WINDOW_CLASS,, (A_ScreenWidth - TerminalWidth) / 2, WorkAreaTop - 2, TerminalWidth, } ToggleTerminal() { WinMatcher := "ahk_class CASCADIA_HOSTING_WINDOW_CLASS" DetectHiddenWindows, On if WinExist(WinMatcher) ; Window Exists { DetectHiddenWindows, Off ; Check if its hidden if !WinExist(WinMatcher) || !WinActive(WinMatcher) { ShowAndPositionTerminal() } else if WinExist(WinMatcher) { ; Script sees it without detecting hidden windows, so.. WinHide ahk_class CASCADIA_HOSTING_WINDOW_CLASS Send !{Esc} } } else { Run "C:\Users\%A_UserName%\AppData\Local\Microsoft\WindowsApps\wt.exe" Sleep, 1000 ShowAndPositionTerminal() } }