Fixed bugs from issues #95, #101 and #102

circumvented further warnings
This commit is contained in:
joten 2016-06-11 22:59:46 +02:00
parent c5412d5394
commit f65b711565
6 changed files with 10 additions and 11 deletions

BIN
bugn.exe

Binary file not shown.

View File

@ -117,7 +117,7 @@ Debug_logWindowInfo(wndId) {
isHidden := "*" isHidden := "*"
Else Else
isHidden := " " isHidden := " "
If Window_#%wndId%_isFloating If InStr(Manager_managedWndIds, wndId . ";") Or Window_#%wndId%_isFloating
isFloating := "*" isFloating := "*"
Else Else
isFloating := " " isFloating := " "

View File

@ -24,7 +24,7 @@ SetTitleMatchMode, fast
SetWinDelay, 10 SetWinDelay, 10
#NoEnv #NoEnv
#SingleInstance force #SingleInstance force
#Warn ; Enable warnings to assist with detecting common errors. ;#Warn ; Enable warnings to assist with detecting common errors.
#WinActivateForce #WinActivateForce
;; Pseudo main function ;; Pseudo main function

View File

@ -416,7 +416,7 @@ Manager_maximizeWindow() {
Local aWndId Local aWndId
WinGet, aWndId, ID, A WinGet, aWndId, ID, A
If Not Window_#%aWndId%_isFloating If InStr(Manager_managedWndIds, aWndId ";") And Not Window_#%aWndId%_isFloating
View_toggleFloatingWindow(aWndId) View_toggleFloatingWindow(aWndId)
Window_set(aWndId, "Top", "") Window_set(aWndId, "Top", "")
@ -429,7 +429,7 @@ Manager_minimizeWindow() {
WinGet, aWndId, ID, A WinGet, aWndId, ID, A
aView := Monitor_#%Manager_aMonitor%_aView_#1 aView := Monitor_#%Manager_aMonitor%_aView_#1
StringReplace, View_#%Manager_aMonitor%_#%aView%_aWndIds, View_#%Manager_aMonitor%_#%aView%_aWndIds, % aWndId ";",, All StringReplace, View_#%Manager_aMonitor%_#%aView%_aWndIds, View_#%Manager_aMonitor%_#%aView%_aWndIds, % aWndId ";",, All
If Not Window_#%aWndId%_isFloating If InStr(Manager_managedWndIds, aWndId ";") And Not Window_#%aWndId%_isFloating
View_toggleFloatingWindow(aWndId) View_toggleFloatingWindow(aWndId)
Window_set(aWndId, "Bottom", "") Window_set(aWndId, "Bottom", "")
@ -440,7 +440,7 @@ Manager_moveWindow() {
Local aWndId, SC_MOVE, WM_SYSCOMMAND Local aWndId, SC_MOVE, WM_SYSCOMMAND
WinGet, aWndId, ID, A WinGet, aWndId, ID, A
If Not Window_#%aWndId%_isFloating If InStr(Manager_managedWndIds, aWndId . ";") And Not Window_#%aWndId%_isFloating
View_toggleFloatingWindow(aWndId) View_toggleFloatingWindow(aWndId)
Window_set(aWndId, "Top", "") Window_set(aWndId, "Top", "")
@ -1074,7 +1074,7 @@ Manager_sizeWindow() {
Local aWndId, SC_SIZE, WM_SYSCOMMAND Local aWndId, SC_SIZE, WM_SYSCOMMAND
WinGet, aWndId, ID, A WinGet, aWndId, ID, A
If Not Window_#%aWndId%_isFloating If InStr(Manager_managedWndIds, aWndId . ";") And Not Window_#%aWndId%_isFloating
View_toggleFloatingWindow(aWndId) View_toggleFloatingWindow(aWndId)
Window_set(aWndId, "Top", "") Window_set(aWndId, "Top", "")
@ -1135,12 +1135,11 @@ Manager_initial_sync(doRestore) {
;; those, which have at least a title or class. ;; those, which have at least a title or class.
Manager_sync(ByRef wndIds = "") Manager_sync(ByRef wndIds = "")
{ {
Local a, flag, mCount, shownWndIds, v, visibleWndIds, wndId Local a, flag, shownWndIds, v, visibleWndIds, wndId
a := 0 a := 0
shownWndIds := "" shownWndIds := ""
SysGet, mCount, MonitorCount Loop, % Manager_monitorCount
Loop, % mCount
{ {
v := Monitor_#%A_Index%_aView_#1 v := Monitor_#%A_Index%_aView_#1
shownWndIds .= View_#%A_Index%_#%v%_wndIds shownWndIds .= View_#%A_Index%_#%v%_wndIds

View File

@ -75,7 +75,7 @@ Monitor_activateView(i, d = 0) {
StringTrimRight, wndIds, View_#%m%_#%aView%_wndIds, 1 StringTrimRight, wndIds, View_#%m%_#%aView%_wndIds, 1
Loop, PARSE, wndIds, `; Loop, PARSE, wndIds, `;
{ {
If Not (Window_#%A_LoopField%_tags & (1 << i - 1)) If A_LoopField And Not (Window_#%A_LoopField%_tags & (1 << i - 1))
Window_hide(A_LoopField) Window_hide(A_LoopField)
} }
SetWinDelay, 10 SetWinDelay, 10

View File

@ -50,7 +50,7 @@ View_activateWindow(i, d = 0) {
StringSplit, wndId, wndIds, `; StringSplit, wndId, wndIds, `;
Debug_logMessage("DEBUG[2] wndId count: " . wndId0, 2, False) Debug_logMessage("DEBUG[2] wndId count: " . wndId0, 2, False)
If (wndId0 > 1) { If (wndId0 > 1) {
If Window_#%aWndId%_isFloating If Not InStr(Manager_managedWndIds, aWndId . ";") Or Window_#%aWndId%_isFloating
Window_set(aWndId, "Bottom", "") Window_set(aWndId, "Bottom", "")
Loop, % wndId0 { Loop, % wndId0 {
If (wndId%A_Index% = aWndId) { If (wndId%A_Index% = aWndId) {