Closed CtByte closed 5 months ago
I noticed this last night and realized that when all monitors go to sleep they all get removed from the state and the re-added on wakw
Added some guards to protect against this case here: https://github.com/LGUG2Z/komorebi/commit/c1835038f18ccba22cb951262d8db4f0b974d8fb
Edit: looks like you're already on that commit - can you share the logs of what happens just before and after sleep and wake?
Do I somehow need to turn on logging? I do not have a %LOCALAPPDATA%/komorebi/komorebi.log
file. This is all I have:
I know I can use komorebic log
in the console to see current logs, but that does not seem to be giving me logs on this build and I feel like that is not what you are asking for anyway
The plaintext log file should be in Env:TEMP or Env:TMP
I both forcibly put my machine to sleep and also let it timeout and go to sleep and wasn't able to reproduce this again today.
This is the part in the latest revision which prevents the "main" display from being removed (along with its windows from the state) on sleep:
Can you double check the commit hash you're running? I tend to develop these branches with amends and force pushes, it's possible you may be on an older revision of the same commit. A quick way to get it up to date is git fetch && git reset --hard origin/feature/monitor-madness
.
There could be an issue with my process. Please let me know if there is a quicker way for me to install from command line. I use Visual Studio 2022 for work, so I used that.
This is the branch I built and running right now
I then run this command:
cargo +stable install --path komorebi --locked; cargo +stable install --path komorebic --locked; cargo +stable install --path komorebic-no-console --locked
Then I copy the files from c:\Users\{UserName}\.cargo\bin\
to c:\Program Files\komorebi\bin\
There is probably a better way :)
And here is the log:
2024-05-16T16:39:09.247848Z INFO foreground_lock_timeout: komorebi::windows_api: current value of ForegroundLockTimeout is 0
2024-05-16T16:39:09.249839Z INFO komorebi: creating window manager from static configuration file: C:\Users\{UserName}\komorebi.json
2024-05-16T16:39:09.253176Z INFO init: komorebi::window_manager: initialising
2024-05-16T16:39:09.316406Z INFO komorebi::process_command: listening on komorebi.sock
2024-05-16T16:39:09.316930Z INFO komorebi::process_event: listening
2024-05-16T16:39:09.317108Z INFO komorebi::workspace_reconciliator: listening
2024-05-16T16:39:09.317297Z INFO komorebi::border_manager: listening
2024-05-16T16:39:09.320011Z INFO komorebi::monitor_reconciliator: created hidden window to listen for monitor-related events
2024-05-16T16:39:09.320140Z INFO komorebi::monitor_reconciliator: listening
2024-05-16T16:39:11.944343Z INFO process_event{[3mevent[0m[2m=[0mFocusChange(SystemForeground, Window { hwnd: 2099944 })}:focus_window{[3midx[0m[2m=[0m0}: komorebi::container: focusing window
2024-05-16T16:39:11.954183Z INFO process_event{[3mevent[0m[2m=[0mFocusChange(SystemForeground, Window { hwnd: 2099944 })}:update_focused_workspace{[3mfollow_focus[0m[2m=[0mtrue [3mtrigger_focus[0m[2m=[0mfalse}: komorebi::window_manager: updating
2024-05-16T16:39:11.954356Z INFO process_event{[3mevent[0m[2m=[0mFocusChange(SystemForeground, Window { hwnd: 2099944 })}:focus_window{[3midx[0m[2m=[0m0}: komorebi::container: focusing window
2024-05-16T16:39:11.954429Z INFO process_event{[3mevent[0m[2m=[0mFocusChange(SystemForeground, Window { hwnd: 2099944 })}:focus_container{[3midx[0m[2m=[0m1}: komorebi::workspace: focusing container
2024-05-16T16:39:11.954914Z INFO process_event{[3mevent[0m[2m=[0mFocusChange(SystemForeground, Window { hwnd: 2099944 })}: komorebi::process_event: processed: (hwnd: 2099944, title: *new 2 - Notepad++, exe: notepad++.exe, class: Notepad++)
2024-05-16T16:39:12.036432Z INFO process_event{[3mevent[0m[2m=[0mMoveResizeStart(SystemMoveSizeStart, Window { hwnd: 2099944 })}: komorebi::process_event: processed: (hwnd: 2099944, title: *new 2 - Notepad++, exe: notepad++.exe, class: Notepad++)
2024-05-16T16:39:12.705326Z INFO process_event{[3mevent[0m[2m=[0mMoveResizeEnd(SystemMoveSizeEnd, Window { hwnd: 2099944 })}: komorebi::process_event: moving with mouse
2024-05-16T16:39:12.706605Z INFO process_event{[3mevent[0m[2m=[0mMoveResizeEnd(SystemMoveSizeEnd, Window { hwnd: 2099944 })}:focus_container{[3midx[0m[2m=[0m0}: komorebi::workspace: focusing container
2024-05-16T16:39:12.707323Z INFO process_event{[3mevent[0m[2m=[0mMoveResizeEnd(SystemMoveSizeEnd, Window { hwnd: 2099944 })}:update_focused_workspace{[3mfollow_focus[0m[2m=[0mfalse [3mtrigger_focus[0m[2m=[0mfalse}: komorebi::window_manager: updating
2024-05-16T16:39:12.710574Z INFO process_event{[3mevent[0m[2m=[0mMoveResizeEnd(SystemMoveSizeEnd, Window { hwnd: 2099944 })}: komorebi::process_event: processed: (hwnd: 2099944, title: *new 2 - Notepad++, exe: notepad++.exe, class: Notepad++)
2024-05-16T16:39:13.984500Z INFO process_event{[3mevent[0m[2m=[0mMoveResizeStart(SystemMoveSizeStart, Window { hwnd: 2099944 })}: komorebi::process_event: processed: (hwnd: 2099944, title: *new 2 - Notepad++, exe: notepad++.exe, class: Notepad++)
2024-05-16T16:39:15.902736Z INFO process_event{[3mevent[0m[2m=[0mMoveResizeEnd(SystemMoveSizeEnd, Window { hwnd: 2099944 })}: komorebi::process_event: moving with mouse
2024-05-16T16:39:15.903579Z INFO process_event{[3mevent[0m[2m=[0mMoveResizeEnd(SystemMoveSizeEnd, Window { hwnd: 2099944 })}:focus_container{[3midx[0m[2m=[0m1}: komorebi::workspace: focusing container
2024-05-16T16:39:15.904182Z INFO process_event{[3mevent[0m[2m=[0mMoveResizeEnd(SystemMoveSizeEnd, Window { hwnd: 2099944 })}:update_focused_workspace{[3mfollow_focus[0m[2m=[0mfalse [3mtrigger_focus[0m[2m=[0mfalse}: komorebi::window_manager: updating
2024-05-16T16:39:15.907188Z INFO process_event{[3mevent[0m[2m=[0mMoveResizeEnd(SystemMoveSizeEnd, Window { hwnd: 2099944 })}: komorebi::process_event: processed: (hwnd: 2099944, title: *new 2 - Notepad++, exe: notepad++.exe, class: Notepad++)
2024-05-16T16:39:23.340396Z INFO process_event{[3mevent[0m[2m=[0mFocusChange(SystemForeground, Window { hwnd: 2099944 })}:focus_window{[3midx[0m[2m=[0m0}: komorebi::container: focusing window
2024-05-16T16:39:23.343862Z INFO process_event{[3mevent[0m[2m=[0mFocusChange(SystemForeground, Window { hwnd: 2099944 })}:update_focused_workspace{[3mfollow_focus[0m[2m=[0mtrue [3mtrigger_focus[0m[2m=[0mfalse}: komorebi::window_manager: updating
2024-05-16T16:39:23.347121Z INFO process_event{[3mevent[0m[2m=[0mFocusChange(SystemForeground, Window { hwnd: 2099944 })}:focus_window{[3midx[0m[2m=[0m0}: komorebi::container: focusing window
2024-05-16T16:39:23.348877Z INFO process_event{[3mevent[0m[2m=[0mFocusChange(SystemForeground, Window { hwnd: 2099944 })}:focus_container{[3midx[0m[2m=[0m1}: komorebi::workspace: focusing container
2024-05-16T16:39:23.350463Z INFO process_event{[3mevent[0m[2m=[0mFocusChange(SystemForeground, Window { hwnd: 2099944 })}: komorebi::process_event: processed: (hwnd: 2099944, title: *new 2 - Notepad++, exe: notepad++.exe, class: Notepad++)
2024-05-16T16:39:24.130711Z INFO process_event{[3mevent[0m[2m=[0mFocusChange(SystemForeground, Window { hwnd: 198962 })}:focus_monitor{[3midx[0m[2m=[0m1}: komorebi::window_manager: focusing monitor
2024-05-16T16:39:24.131137Z INFO process_event{[3mevent[0m[2m=[0mFocusChange(SystemForeground, Window { hwnd: 198962 })}:focus_window{[3midx[0m[2m=[0m0}: komorebi::container: focusing window
2024-05-16T16:39:24.132511Z INFO process_event{[3mevent[0m[2m=[0mFocusChange(SystemForeground, Window { hwnd: 198962 })}:update_focused_workspace{[3mfollow_focus[0m[2m=[0mtrue [3mtrigger_focus[0m[2m=[0mfalse}: komorebi::window_manager: updating
2024-05-16T16:39:24.132752Z INFO process_event{[3mevent[0m[2m=[0mFocusChange(SystemForeground, Window { hwnd: 198962 })}:focus_window{[3midx[0m[2m=[0m0}: komorebi::container: focusing window
2024-05-16T16:39:24.132946Z INFO process_event{[3mevent[0m[2m=[0mFocusChange(SystemForeground, Window { hwnd: 198962 })}:focus_container{[3midx[0m[2m=[0m0}: komorebi::workspace: focusing container
2024-05-16T16:39:24.133470Z INFO process_event{[3mevent[0m[2m=[0mFocusChange(SystemForeground, Window { hwnd: 198962 })}: komorebi::process_event: processed: (hwnd: 198962, title: [BUG]: `monitor-madness` window snapping does not work after sleep ยท Issue #828 ยท LGUG2Z/komorebi โ Mozilla Firefox, exe: firefox.exe, class: MozillaWindowClass)
2024-05-16T16:39:28.027756Z INFO process_event{[3mevent[0m[2m=[0mDestroy(ObjectDestroy, Window { hwnd: 1773894 })}: komorebi::process_event: processed: (hwnd: 1773894)
2024-05-16T16:43:47.317130Z INFO process_event{[3mevent[0m[2m=[0mShow(ObjectNameChange, Window { hwnd: 198962 })}: komorebi::process_event: processed: (hwnd: 198962, title: (1) [BUG]: `monitor-madness` window snapping does not work after sleep ยท Issue #828 ยท LGUG2Z/komorebi โ Mozilla Firefox, exe: firefox.exe, class: MozillaWindowClass)
2024-05-16T16:43:48.163130Z INFO process_event{[3mevent[0m[2m=[0mShow(ObjectNameChange, Window { hwnd: 198962 })}: komorebi::process_event: processed: (hwnd: 198962, title: [BUG]: `monitor-madness` window snapping does not work after sleep ยท Issue #828 ยท LGUG2Z/komorebi โ Mozilla Firefox, exe: firefox.exe, class: MozillaWindowClass)
Zzzzzz....Zzzzzz
2024-05-16T17:45:23.706210Z INFO process_event{[3mevent[0m[2m=[0mDestroy(ObjectDestroy, Window { hwnd: 3738440 })}: komorebi::process_event: processed: (hwnd: 3738440)
2024-05-16T17:45:24.077666Z INFO process_event{[3mevent[0m[2m=[0mDestroy(ObjectDestroy, Window { hwnd: 1511390 })}: komorebi::process_event: processed: (hwnd: 1511390)
2024-05-16T17:45:29.115556Z INFO process_event{[3mevent[0m[2m=[0mFocusChange(SystemForeground, Window { hwnd: 198962 })}:focus_window{[3midx[0m[2m=[0m0}: komorebi::container: focusing window
2024-05-16T17:45:29.137086Z INFO process_event{[3mevent[0m[2m=[0mFocusChange(SystemForeground, Window { hwnd: 198962 })}:update_focused_workspace{[3mfollow_focus[0m[2m=[0mtrue [3mtrigger_focus[0m[2m=[0mfalse}: komorebi::window_manager: updating
2024-05-16T17:45:29.138103Z INFO process_event{[3mevent[0m[2m=[0mFocusChange(SystemForeground, Window { hwnd: 198962 })}:focus_window{[3midx[0m[2m=[0m0}: komorebi::container: focusing window
2024-05-16T17:45:29.145880Z INFO process_event{[3mevent[0m[2m=[0mFocusChange(SystemForeground, Window { hwnd: 198962 })}:focus_container{[3midx[0m[2m=[0m0}: komorebi::workspace: focusing container
2024-05-16T17:45:29.156884Z INFO process_event{[3mevent[0m[2m=[0mFocusChange(SystemForeground, Window { hwnd: 198962 })}: komorebi::process_event: processed: (hwnd: 198962, title: [BUG]: `monitor-madness` window snapping does not work after sleep ยท Issue #828 ยท LGUG2Z/komorebi โ Mozilla Firefox, exe: firefox.exe, class: MozillaWindowClass)
2024-05-16T17:45:32.072065Z INFO process_event{[3mevent[0m[2m=[0mFocusChange(SystemForeground, Window { hwnd: 2099944 })}:focus_window{[3midx[0m[2m=[0m0}: komorebi::container: focusing window
2024-05-16T17:45:32.075810Z INFO process_event{[3mevent[0m[2m=[0mFocusChange(SystemForeground, Window { hwnd: 2099944 })}:update_focused_workspace{[3mfollow_focus[0m[2m=[0mtrue [3mtrigger_focus[0m[2m=[0mfalse}: komorebi::window_manager: updating
2024-05-16T17:45:32.078156Z ERROR komorebi::process_event: there is no container/window
2024-05-16T17:45:32.775353Z INFO process_event{[3mevent[0m[2m=[0mMoveResizeStart(SystemMoveSizeStart, Window { hwnd: 2099944 })}: komorebi::process_event: processed: (hwnd: 2099944, title: *new 2 - Notepad++, exe: notepad++.exe, class: Notepad++)
2024-05-16T17:45:34.179699Z ERROR komorebi::process_event: cannot get monitor idx from current position
2024-05-16T17:45:35.536621Z INFO process_event{[3mevent[0m[2m=[0mFocusChange(SystemForeground, Window { hwnd: 461458 })}:focus_window{[3midx[0m[2m=[0m0}: komorebi::container: focusing window
2024-05-16T17:45:35.540754Z INFO process_event{[3mevent[0m[2m=[0mFocusChange(SystemForeground, Window { hwnd: 461458 })}:update_focused_workspace{[3mfollow_focus[0m[2m=[0mtrue [3mtrigger_focus[0m[2m=[0mfalse}: komorebi::window_manager: updating
2024-05-16T17:45:35.542100Z ERROR komorebi::process_event: there is no container/window
2024-05-16T17:45:37.681432Z INFO process_event{[3mevent[0m[2m=[0mFocusChange(SystemForeground, Window { hwnd: 2099944 })}:focus_window{[3midx[0m[2m=[0m0}: komorebi::container: focusing window
2024-05-16T17:45:37.685569Z INFO process_event{[3mevent[0m[2m=[0mFocusChange(SystemForeground, Window { hwnd: 2099944 })}:update_focused_workspace{[3mfollow_focus[0m[2m=[0mtrue [3mtrigger_focus[0m[2m=[0mfalse}: komorebi::window_manager: updating
2024-05-16T17:45:37.686767Z ERROR komorebi::process_event: there is no container/window
2024-05-16T17:45:37.752113Z INFO process_event{[3mevent[0m[2m=[0mMoveResizeStart(SystemMoveSizeStart, Window { hwnd: 2099944 })}: komorebi::process_event: processed: (hwnd: 2099944, title: *new 2 - Notepad++, exe: notepad++.exe, class: Notepad++)
2024-05-16T17:45:38.310188Z ERROR komorebi::process_event: cannot get monitor idx from current position
2024-05-16T17:45:39.147162Z INFO process_event{[3mevent[0m[2m=[0mMoveResizeStart(SystemMoveSizeStart, Window { hwnd: 2099944 })}: komorebi::process_event: processed: (hwnd: 2099944, title: *new 2 - Notepad++, exe: notepad++.exe, class: Notepad++)
2024-05-16T17:45:39.639102Z ERROR komorebi::process_event: cannot get monitor idx from current position
2024-05-16T17:45:40.660454Z INFO process_event{[3mevent[0m[2m=[0mFocusChange(SystemForeground, Window { hwnd: 198962 })}:focus_window{[3midx[0m[2m=[0m0}: komorebi::container: focusing window
2024-05-16T17:45:40.662697Z INFO process_event{[3mevent[0m[2m=[0mFocusChange(SystemForeground, Window { hwnd: 198962 })}:update_focused_workspace{[3mfollow_focus[0m[2m=[0mtrue [3mtrigger_focus[0m[2m=[0mfalse}: komorebi::window_manager: updating
2024-05-16T17:45:40.663242Z INFO process_event{[3mevent[0m[2m=[0mFocusChange(SystemForeground, Window { hwnd: 198962 })}:focus_window{[3midx[0m[2m=[0m0}: komorebi::container: focusing window
2024-05-16T17:45:40.663462Z INFO process_event{[3mevent[0m[2m=[0mFocusChange(SystemForeground, Window { hwnd: 198962 })}:focus_container{[3midx[0m[2m=[0m0}: komorebi::workspace: focusing container
2024-05-16T17:45:40.664043Z INFO process_event{[3mevent[0m[2m=[0mFocusChange(SystemForeground, Window { hwnd: 198962 })}: komorebi::process_event: processed: (hwnd: 198962, title: [BUG]: `monitor-madness` window snapping does not work after sleep ยท Issue #828 ยท LGUG2Z/komorebi โ Mozilla Firefox, exe: firefox.exe, class: MozillaWindowClass)
2024-05-16T17:45:40.765039Z INFO process_event{[3mevent[0m[2m=[0mMoveResizeStart(SystemMoveSizeStart, Window { hwnd: 198962 })}: komorebi::process_event: processed: (hwnd: 198962, title: [BUG]: `monitor-madness` window snapping does not work after sleep ยท Issue #828 ยท LGUG2Z/komorebi โ Mozilla Firefox, exe: firefox.exe, class: MozillaWindowClass)
2024-05-16T17:45:41.049147Z ERROR komorebi::process_event: cannot get monitor idx from current position
2024-05-16T17:45:41.583153Z INFO process_event{[3mevent[0m[2m=[0mMoveResizeStart(SystemMoveSizeStart, Window { hwnd: 198962 })}: komorebi::process_event: processed: (hwnd: 198962, title: [BUG]: `monitor-madness` window snapping does not work after sleep ยท Issue #828 ยท LGUG2Z/komorebi โ Mozilla Firefox, exe: firefox.exe, class: MozillaWindowClass)
2024-05-16T17:45:42.235202Z ERROR komorebi::process_event: cannot get monitor idx from current position
2024-05-16T17:45:43.700335Z INFO process_event{[3mevent[0m[2m=[0mFocusChange(SystemForeground, Window { hwnd: 2099944 })}:focus_window{[3midx[0m[2m=[0m0}: komorebi::container: focusing window
2024-05-16T17:45:43.705142Z INFO process_event{[3mevent[0m[2m=[0mFocusChange(SystemForeground, Window { hwnd: 2099944 })}:update_focused_workspace{[3mfollow_focus[0m[2m=[0mtrue [3mtrigger_focus[0m[2m=[0mfalse}: komorebi::window_manager: updating
2024-05-16T17:45:43.708446Z ERROR komorebi::process_event: there is no container/window
2024-05-16T17:45:44.962338Z INFO process_event{[3mevent[0m[2m=[0mFocusChange(SystemForeground, Window { hwnd: 461458 })}:focus_window{[3midx[0m[2m=[0m0}: komorebi::container: focusing window
2024-05-16T17:45:44.966728Z INFO process_event{[3mevent[0m[2m=[0mFocusChange(SystemForeground, Window { hwnd: 461458 })}:update_focused_workspace{[3mfollow_focus[0m[2m=[0mtrue [3mtrigger_focus[0m[2m=[0mfalse}: komorebi::window_manager: updating
2024-05-16T17:45:44.968014Z ERROR komorebi::process_event: there is no container/window
2024-05-16T17:45:46.745350Z ERROR komorebi::process_event: there is no window
2024-05-16T17:45:46.749097Z INFO process_event{[3mevent[0m[2m=[0mFocusChange(SystemForeground, Window { hwnd: 2099944 })}:focus_window{[3midx[0m[2m=[0m0}: komorebi::container: focusing window
2024-05-16T17:45:46.752965Z INFO process_event{[3mevent[0m[2m=[0mFocusChange(SystemForeground, Window { hwnd: 2099944 })}:update_focused_workspace{[3mfollow_focus[0m[2m=[0mtrue [3mtrigger_focus[0m[2m=[0mfalse}: komorebi::window_manager: updating
2024-05-16T17:45:46.753928Z ERROR komorebi::process_event: there is no container/window
2024-05-16T17:45:47.511674Z INFO process_event{[3mevent[0m[2m=[0mFocusChange(SystemForeground, Window { hwnd: 461458 })}:focus_window{[3midx[0m[2m=[0m0}: komorebi::container: focusing window
2024-05-16T17:45:47.514625Z INFO process_event{[3mevent[0m[2m=[0mFocusChange(SystemForeground, Window { hwnd: 461458 })}:update_focused_workspace{[3mfollow_focus[0m[2m=[0mtrue [3mtrigger_focus[0m[2m=[0mfalse}: komorebi::window_manager: updating
2024-05-16T17:45:47.516046Z ERROR komorebi::process_event: there is no container/window
2024-05-16T17:45:47.540054Z INFO komorebi::workspace_reconciliator: running reconciliation
2024-05-16T17:45:47.540618Z INFO process_event{[3mevent[0m[2m=[0mShow(SystemMinimizeEnd, Window { hwnd: 461458 })}: komorebi::process_event: processed: (hwnd: 461458, title: Windows PowerShell, exe: WindowsTerminal.exe, class: CASCADIA_HOSTING_WINDOW_CLASS)
2024-05-16T17:45:47.540817Z INFO focus_monitor{[3midx[0m[2m=[0m0}: komorebi::window_manager: focusing monitor
2024-05-16T17:45:47.540956Z INFO focus_workspace{[3midx[0m[2m=[0m0}: komorebi::monitor: focusing workspace
2024-05-16T17:45:47.545423Z INFO focus_window{[3midx[0m[2m=[0m0}: komorebi::container: focusing window
2024-05-16T17:45:47.548895Z INFO process_event{[3mevent[0m[2m=[0mFocusChange(SystemForeground, Window { hwnd: 2099944 })}:focus_window{[3midx[0m[2m=[0m0}: komorebi::container: focusing window
2024-05-16T17:45:47.552992Z INFO process_event{[3mevent[0m[2m=[0mFocusChange(SystemForeground, Window { hwnd: 2099944 })}:update_focused_workspace{[3mfollow_focus[0m[2m=[0mtrue [3mtrigger_focus[0m[2m=[0mfalse}: komorebi::window_manager: updating
2024-05-16T17:45:47.561309Z INFO process_event{[3mevent[0m[2m=[0mFocusChange(SystemForeground, Window { hwnd: 2099944 })}:focus_window{[3midx[0m[2m=[0m0}: komorebi::container: focusing window
2024-05-16T17:45:47.563600Z INFO process_event{[3mevent[0m[2m=[0mFocusChange(SystemForeground, Window { hwnd: 2099944 })}:focus_container{[3midx[0m[2m=[0m1}: komorebi::workspace: focusing container
2024-05-16T17:45:47.564315Z INFO process_event{[3mevent[0m[2m=[0mFocusChange(SystemForeground, Window { hwnd: 2099944 })}: komorebi::process_event: processed: (hwnd: 2099944, title: *new 2 - Notepad++, exe: notepad++.exe, class: Notepad++)
2024-05-16T17:45:53.781923Z INFO process_event{[3mevent[0m[2m=[0mMoveResizeStart(SystemMoveSizeStart, Window { hwnd: 2099944 })}: komorebi::process_event: processed: (hwnd: 2099944, title: *new 2 - Notepad++, exe: notepad++.exe, class: Notepad++)
2024-05-16T17:45:56.643258Z ERROR komorebi::process_event: cannot get monitor idx from current position
2024-05-16T17:45:58.011905Z INFO process_event{[3mevent[0m[2m=[0mFocusChange(SystemForeground, Window { hwnd: 461458 })}:focus_window{[3midx[0m[2m=[0m0}: komorebi::container: focusing window
2024-05-16T17:45:58.016514Z INFO process_event{[3mevent[0m[2m=[0mFocusChange(SystemForeground, Window { hwnd: 461458 })}:update_focused_workspace{[3mfollow_focus[0m[2m=[0mtrue [3mtrigger_focus[0m[2m=[0mfalse}: komorebi::window_manager: updating
2024-05-16T17:45:58.018555Z INFO process_event{[3mevent[0m[2m=[0mFocusChange(SystemForeground, Window { hwnd: 461458 })}:focus_window{[3midx[0m[2m=[0m0}: komorebi::container: focusing window
2024-05-16T17:45:58.020000Z INFO process_event{[3mevent[0m[2m=[0mFocusChange(SystemForeground, Window { hwnd: 461458 })}:focus_container{[3midx[0m[2m=[0m0}: komorebi::workspace: focusing container
2024-05-16T17:45:58.020697Z INFO process_event{[3mevent[0m[2m=[0mFocusChange(SystemForeground, Window { hwnd: 461458 })}: komorebi::process_event: processed: (hwnd: 461458, title: Windows PowerShell, exe: WindowsTerminal.exe, class: CASCADIA_HOSTING_WINDOW_CLASS)
2024-05-16T17:46:03.549707Z INFO process_event{[3mevent[0m[2m=[0mFocusChange(SystemForeground, Window { hwnd: 2099944 })}:focus_window{[3midx[0m[2m=[0m0}: komorebi::container: focusing window
2024-05-16T17:46:03.553348Z INFO process_event{[3mevent[0m[2m=[0mFocusChange(SystemForeground, Window { hwnd: 2099944 })}:update_focused_workspace{[3mfollow_focus[0m[2m=[0mtrue [3mtrigger_focus[0m[2m=[0mfalse}: komorebi::window_manager: updating
2024-05-16T17:46:03.554203Z INFO process_event{[3mevent[0m[2m=[0mFocusChange(SystemForeground, Window { hwnd: 2099944 })}:focus_window{[3midx[0m[2m=[0m0}: komorebi::container: focusing window
2024-05-16T17:46:03.555091Z INFO process_event{[3mevent[0m[2m=[0mFocusChange(SystemForeground, Window { hwnd: 2099944 })}:focus_container{[3midx[0m[2m=[0m1}: komorebi::workspace: focusing container
2024-05-16T17:46:03.556133Z INFO process_event{[3mevent[0m[2m=[0mFocusChange(SystemForeground, Window { hwnd: 2099944 })}: komorebi::process_event: processed: (hwnd: 2099944, title: *new 2 - Notepad++, exe: notepad++.exe, class: Notepad++)
2024-05-16T17:46:05.193403Z INFO process_event{[3mevent[0m[2m=[0mFocusChange(SystemForeground, Window { hwnd: 2099944 })}:focus_window{[3midx[0m[2m=[0m0}: komorebi::container: focusing window
2024-05-16T17:46:05.195557Z INFO process_event{[3mevent[0m[2m=[0mFocusChange(SystemForeground, Window { hwnd: 2099944 })}:update_focused_workspace{[3mfollow_focus[0m[2m=[0mtrue [3mtrigger_focus[0m[2m=[0mfalse}: komorebi::window_manager: updating
2024-05-16T17:46:05.195893Z INFO process_event{[3mevent[0m[2m=[0mFocusChange(SystemForeground, Window { hwnd: 2099944 })}:focus_window{[3midx[0m[2m=[0m0}: komorebi::container: focusing window
2024-05-16T17:46:05.196188Z INFO process_event{[3mevent[0m[2m=[0mFocusChange(SystemForeground, Window { hwnd: 2099944 })}:focus_container{[3midx[0m[2m=[0m1}: komorebi::workspace: focusing container
2024-05-16T17:46:05.197354Z INFO process_event{[3mevent[0m[2m=[0mFocusChange(SystemForeground, Window { hwnd: 2099944 })}: komorebi::process_event: processed: (hwnd: 2099944, title: C:\Users\{UserName}\AppData\Local\Temp\komorebi_plaintext.log.2024-05-16 - Notepad++, exe: notepad++.exe, class: Notepad++)
2024-05-16T17:46:08.072316Z INFO process_event{[3mevent[0m[2m=[0mFocusChange(SystemForeground, Window { hwnd: 461458 })}:focus_window{[3midx[0m[2m=[0m0}: komorebi::container: focusing window
2024-05-16T17:46:08.076766Z INFO process_event{[3mevent[0m[2m=[0mFocusChange(SystemForeground, Window { hwnd: 461458 })}:update_focused_workspace{[3mfollow_focus[0m[2m=[0mtrue [3mtrigger_focus[0m[2m=[0mfalse}: komorebi::window_manager: updating
2024-05-16T17:46:08.077491Z INFO process_event{[3mevent[0m[2m=[0mFocusChange(SystemForeground, Window { hwnd: 461458 })}:focus_window{[3midx[0m[2m=[0m0}: komorebi::container: focusing window
2024-05-16T17:46:08.077908Z INFO process_event{[3mevent[0m[2m=[0mFocusChange(SystemForeground, Window { hwnd: 461458 })}:focus_container{[3midx[0m[2m=[0m0}: komorebi::workspace: focusing container
2024-05-16T17:46:08.079259Z INFO process_event{[3mevent[0m[2m=[0mFocusChange(SystemForeground, Window { hwnd: 461458 })}: komorebi::process_event: processed: (hwnd: 461458, title: Windows PowerShell, exe: WindowsTerminal.exe, class: CASCADIA_HOSTING_WINDOW_CLASS)
2024-05-16T17:46:09.990551Z INFO process_command{Stop}: komorebi::process_command: received stop command, restoring all hidden windows and terminating process
2024-05-16T17:46:09.991243Z INFO process_command{Stop}:restore_all_windows: komorebi::window_manager: restoring all hidden windows
I moved some windows around before and after the sleep.
I will try to do the git fetch && git reset
as well and try to reproduce the issue.
I've pushed another update which handles suspend/resume notifications separately
I forgot to mention that most of the interesting commits will be in the debug logs, so make sure you are running with RUST_LOG="debug"
: https://github.com/LGUG2Z/komorebi/blob/master/justfile#L33
EDIT: I'm still working on this so the commit hash is probably gonna be out of date before the time you get around to trying it: e6ce23c4b2e8d594e32e925c57d56685994beca6
I think I need to learn a thing or two. I can see that you are very active on the monitor reconciliator module
.
I will run the git fetch && git reset ...
command to make sure that we are on the same version (when I see you are not active for a while ๐ ), but would you mind please letting me know what I need to do to include debug logs in the in the log files? I know what you mean, but I am not sure what I need to do when I build the branch.
Ah just make sure the RUST_LOG
environment variable is set to debug
in the terminal session that you start komorebi
from, for example:
$Env:RUST_LOG = "debug"; cargo run --package komorebi
- running a dev build with cargo
$Env:RUST_LOG = "debug"; komorebic start
- running from a release binary as a background process
I did a quick test while you were not looking ๐
2024-05-16T22:08:10.942701Z INFO foreground_lock_timeout: komorebi::windows_api: current value of ForegroundLockTimeout is 0
2024-05-16T22:08:10.944595Z INFO komorebi: creating window manager from static configuration file: C:\Users\{UserName}\komorebi.json
2024-05-16T22:08:10.948089Z INFO init: komorebi::window_manager: initialising
2024-05-16T22:08:11.009487Z INFO komorebi::process_command: listening on komorebi.sock
2024-05-16T22:08:11.012332Z INFO komorebi::process_event: listening
2024-05-16T22:08:11.012914Z INFO komorebi::border_manager: listening
2024-05-16T22:08:11.013118Z INFO komorebi::workspace_reconciliator: listening
2024-05-16T22:08:11.015101Z INFO komorebi::monitor_reconciliator: created hidden window to listen for monitor-related events
2024-05-16T22:08:11.015293Z INFO komorebi::monitor_reconciliator: listening
2024-05-16T22:08:15.557377Z INFO process_event{[3mevent[0m[2m=[0mFocusChange(SystemForeground, Window { hwnd: 198962 })}:focus_monitor{[3midx[0m[2m=[0m1}: komorebi::window_manager: focusing monitor
2024-05-16T22:08:15.557489Z INFO process_event{[3mevent[0m[2m=[0mFocusChange(SystemForeground, Window { hwnd: 198962 })}:focus_window{[3midx[0m[2m=[0m0}: komorebi::container: focusing window
2024-05-16T22:08:15.564130Z INFO process_event{[3mevent[0m[2m=[0mFocusChange(SystemForeground, Window { hwnd: 198962 })}:update_focused_workspace{[3mfollow_focus[0m[2m=[0mtrue [3mtrigger_focus[0m[2m=[0mfalse}: komorebi::window_manager: updating
2024-05-16T22:08:15.564436Z INFO process_event{[3mevent[0m[2m=[0mFocusChange(SystemForeground, Window { hwnd: 198962 })}:focus_window{[3midx[0m[2m=[0m0}: komorebi::container: focusing window
2024-05-16T22:08:15.564597Z INFO process_event{[3mevent[0m[2m=[0mFocusChange(SystemForeground, Window { hwnd: 198962 })}:focus_container{[3midx[0m[2m=[0m1}: komorebi::workspace: focusing container
2024-05-16T22:08:15.565337Z INFO process_event{[3mevent[0m[2m=[0mFocusChange(SystemForeground, Window { hwnd: 198962 })}: komorebi::process_event: processed: (hwnd: 198962, title: [BUG]: `monitor-madness` window snapping does not work after sleep ยท Issue #828 ยท LGUG2Z/komorebi โ Mozilla Firefox, exe: firefox.exe, class: MozillaWindowClass)
2024-05-16T22:08:16.115615Z INFO process_event{[3mevent[0m[2m=[0mMoveResizeStart(SystemMoveSizeStart, Window { hwnd: 198962 })}: komorebi::process_event: processed: (hwnd: 198962, title: [BUG]: `monitor-madness` window snapping does not work after sleep ยท Issue #828 ยท LGUG2Z/komorebi โ Mozilla Firefox, exe: firefox.exe, class: MozillaWindowClass)
2024-05-16T22:08:16.127539Z DEBUG process_event{[3mevent[0m[2m=[0mShow(ObjectShow, Window { hwnd: 26414904 })}:should_manage{[3mself[0m[2m=[0mWindow { hwnd: 26414904 } [3mevent[0m[2m=[0mSome(Show(ObjectShow, Window { hwnd: 26414904 }))}: komorebi::window: ignoring (exe: explorer.exe, title: DesktopWindowXamlSource, event: Show (WinEvent: ObjectShow, Window: (hwnd: 26414904, title: DesktopWindowXamlSource, exe: explorer.exe, class: Windows.UI.Composition.DesktopWindowContentBridge)))
2024-05-16T22:08:17.194507Z INFO process_event{[3mevent[0m[2m=[0mMoveResizeEnd(SystemMoveSizeEnd, Window { hwnd: 198962 })}: komorebi::process_event: moving with mouse
2024-05-16T22:08:17.195053Z INFO process_event{[3mevent[0m[2m=[0mMoveResizeEnd(SystemMoveSizeEnd, Window { hwnd: 198962 })}:focus_container{[3midx[0m[2m=[0m1}: komorebi::workspace: focusing container
2024-05-16T22:08:17.195528Z INFO process_event{[3mevent[0m[2m=[0mMoveResizeEnd(SystemMoveSizeEnd, Window { hwnd: 198962 })}:update_focused_workspace{[3mfollow_focus[0m[2m=[0mfalse [3mtrigger_focus[0m[2m=[0mfalse}: komorebi::window_manager: updating
2024-05-16T22:08:17.198193Z INFO process_event{[3mevent[0m[2m=[0mMoveResizeEnd(SystemMoveSizeEnd, Window { hwnd: 198962 })}: komorebi::process_event: processed: (hwnd: 198962, title: [BUG]: `monitor-madness` window snapping does not work after sleep ยท Issue #828 ยท LGUG2Z/komorebi โ Mozilla Firefox, exe: firefox.exe, class: MozillaWindowClass)
2024-05-16T22:08:17.378009Z DEBUG process_event{[3mevent[0m[2m=[0mHide(ObjectHide, Window { hwnd: 26414904 })}:should_manage{[3mself[0m[2m=[0mWindow { hwnd: 26414904 } [3mevent[0m[2m=[0mSome(Hide(ObjectHide, Window { hwnd: 26414904 }))}: komorebi::window: ignoring (exe: explorer.exe, title: DesktopWindowXamlSource, event: Hide (WinEvent: ObjectHide, Window: (hwnd: 26414904)))
2024-05-16T22:08:19.602223Z INFO process_event{[3mevent[0m[2m=[0mFocusChange(SystemForeground, Window { hwnd: 20122180 })}:focus_monitor{[3midx[0m[2m=[0m0}: komorebi::window_manager: focusing monitor
2024-05-16T22:08:19.604432Z INFO process_event{[3mevent[0m[2m=[0mFocusChange(SystemForeground, Window { hwnd: 20122180 })}:focus_window{[3midx[0m[2m=[0m0}: komorebi::container: focusing window
2024-05-16T22:08:19.607451Z INFO process_event{[3mevent[0m[2m=[0mFocusChange(SystemForeground, Window { hwnd: 20122180 })}:update_focused_workspace{[3mfollow_focus[0m[2m=[0mtrue [3mtrigger_focus[0m[2m=[0mfalse}: komorebi::window_manager: updating
2024-05-16T22:08:19.607939Z INFO process_event{[3mevent[0m[2m=[0mFocusChange(SystemForeground, Window { hwnd: 20122180 })}:focus_window{[3midx[0m[2m=[0m0}: komorebi::container: focusing window
2024-05-16T22:08:19.608449Z INFO process_event{[3mevent[0m[2m=[0mFocusChange(SystemForeground, Window { hwnd: 20122180 })}:focus_container{[3midx[0m[2m=[0m0}: komorebi::workspace: focusing container
2024-05-16T22:08:19.609187Z INFO process_event{[3mevent[0m[2m=[0mFocusChange(SystemForeground, Window { hwnd: 20122180 })}: komorebi::process_event: processed: (hwnd: 20122180, title: C:\Users\{UserName}\AppData\Local\Temp\komorebi_plaintext.log.2024-05-16 - Notepad++, exe: notepad++.exe, class: Notepad++)
2024-05-16T22:08:21.052346Z INFO process_event{[3mevent[0m[2m=[0mFocusChange(SystemForeground, Window { hwnd: 20122180 })}:focus_window{[3midx[0m[2m=[0m0}: komorebi::container: focusing window
2024-05-16T22:08:21.054727Z INFO process_event{[3mevent[0m[2m=[0mFocusChange(SystemForeground, Window { hwnd: 20122180 })}:update_focused_workspace{[3mfollow_focus[0m[2m=[0mtrue [3mtrigger_focus[0m[2m=[0mfalse}: komorebi::window_manager: updating
2024-05-16T22:08:21.055556Z INFO process_event{[3mevent[0m[2m=[0mFocusChange(SystemForeground, Window { hwnd: 20122180 })}:focus_window{[3midx[0m[2m=[0m0}: komorebi::container: focusing window
2024-05-16T22:08:21.056021Z INFO process_event{[3mevent[0m[2m=[0mFocusChange(SystemForeground, Window { hwnd: 20122180 })}:focus_container{[3midx[0m[2m=[0m0}: komorebi::workspace: focusing container
2024-05-16T22:08:21.057004Z INFO process_event{[3mevent[0m[2m=[0mFocusChange(SystemForeground, Window { hwnd: 20122180 })}: komorebi::process_event: processed: (hwnd: 20122180, title: C:\Users\{UserName}\AppData\Local\Temp\komorebi_plaintext.log.2024-05-16 - Notepad++, exe: notepad++.exe, class: Notepad++)
2024-05-16T22:08:32.496998Z INFO process_event{[3mevent[0m[2m=[0mDestroy(ObjectDestroy, Window { hwnd: 2821386 })}: komorebi::process_event: processed: (hwnd: 2821386)
2024-05-16T22:08:32.514242Z DEBUG process_event{[3mevent[0m[2m=[0mCloak(ObjectCloaked, Window { hwnd: 8587026 })}:should_manage{[3mself[0m[2m=[0mWindow { hwnd: 8587026 } [3mevent[0m[2m=[0mSome(Cloak(ObjectCloaked, Window { hwnd: 8587026 }))}: komorebi::window: ignoring (exe: explorer.exe, title: Backstop Window, event: Cloak (WinEvent: ObjectCloaked, Window: (hwnd: 8587026, title: Backstop Window, exe: explorer.exe, class: LockScreenBackstopFrame)))
2024-05-16T22:08:32.516178Z DEBUG process_event{[3mevent[0m[2m=[0mCloak(ObjectCloaked, Window { hwnd: 6096206 })}:should_manage{[3mself[0m[2m=[0mWindow { hwnd: 6096206 } [3mevent[0m[2m=[0mSome(Cloak(ObjectCloaked, Window { hwnd: 6096206 }))}: komorebi::window: ignoring (exe: explorer.exe, title: Default IME, event: Cloak (WinEvent: ObjectCloaked, Window: (hwnd: 6096206, title: Default IME, exe: explorer.exe, class: IME)))
2024-05-16T22:08:32.517676Z DEBUG process_event{[3mevent[0m[2m=[0mUncloak(ObjectUncloaked, Window { hwnd: 8587026 })}:should_manage{[3mself[0m[2m=[0mWindow { hwnd: 8587026 } [3mevent[0m[2m=[0mSome(Uncloak(ObjectUncloaked, Window { hwnd: 8587026 }))}: komorebi::window: ignoring (exe: explorer.exe, title: Backstop Window, event: Uncloak (WinEvent: ObjectUncloaked, Window: (hwnd: 8587026, title: Backstop Window, exe: explorer.exe, class: LockScreenBackstopFrame)))
2024-05-16T22:08:32.518863Z DEBUG process_event{[3mevent[0m[2m=[0mUncloak(ObjectUncloaked, Window { hwnd: 6096206 })}:should_manage{[3mself[0m[2m=[0mWindow { hwnd: 6096206 } [3mevent[0m[2m=[0mSome(Uncloak(ObjectUncloaked, Window { hwnd: 6096206 }))}: komorebi::window: ignoring (exe: explorer.exe, title: Default IME, event: Uncloak (WinEvent: ObjectUncloaked, Window: (hwnd: 6096206, title: Default IME, exe: explorer.exe, class: IME)))
2024-05-16T22:08:32.522959Z DEBUG process_event{[3mevent[0m[2m=[0mUncloak(ObjectUncloaked, Window { hwnd: 3804002 })}:should_manage{[3mself[0m[2m=[0mWindow { hwnd: 3804002 } [3mevent[0m[2m=[0mSome(Uncloak(ObjectUncloaked, Window { hwnd: 3804002 }))}: komorebi::window: ignoring (exe: explorer.exe, title: Input Occlusion Window, event: Uncloak (WinEvent: ObjectUncloaked, Window: (hwnd: 3804002, title: Input Occlusion Window, exe: explorer.exe, class: LockScreenInputOcclusionFrame)))
2024-05-16T22:08:32.532701Z DEBUG process_event{[3mevent[0m[2m=[0mShow(ObjectShow, Window { hwnd: 8587026 })}:should_manage{[3mself[0m[2m=[0mWindow { hwnd: 8587026 } [3mevent[0m[2m=[0mSome(Show(ObjectShow, Window { hwnd: 8587026 }))}: komorebi::window: ignoring (exe: explorer.exe, title: Backstop Window, event: Show (WinEvent: ObjectShow, Window: (hwnd: 8587026, title: Backstop Window, exe: explorer.exe, class: LockScreenBackstopFrame)))
2024-05-16T22:08:32.537259Z DEBUG process_event{[3mevent[0m[2m=[0mShow(ObjectShow, Window { hwnd: 3804002 })}:should_manage{[3mself[0m[2m=[0mWindow { hwnd: 3804002 } [3mevent[0m[2m=[0mSome(Show(ObjectShow, Window { hwnd: 3804002 }))}: komorebi::window: ignoring (exe: explorer.exe, title: Input Occlusion Window, event: Show (WinEvent: ObjectShow, Window: (hwnd: 3804002, title: Input Occlusion Window, exe: explorer.exe, class: LockScreenInputOcclusionFrame)))
2024-05-16T22:08:32.559445Z DEBUG process_event{[3mevent[0m[2m=[0mUncloak(ObjectUncloaked, Window { hwnd: 265430 })}:should_manage{[3mself[0m[2m=[0mWindow { hwnd: 265430 } [3mevent[0m[2m=[0mSome(Uncloak(ObjectUncloaked, Window { hwnd: 265430 }))}: komorebi::window: ignoring (exe: LockApp.exe, title: Windows Default Lock Screen, event: Uncloak (WinEvent: ObjectUncloaked, Window: (hwnd: 265430, title: Windows Default Lock Screen, exe: LockApp.exe, class: Windows.UI.Core.CoreWindow)))
2024-05-16T22:08:32.560628Z DEBUG process_event{[3mevent[0m[2m=[0mUncloak(ObjectUncloaked, Window { hwnd: 199896 })}:should_manage{[3mself[0m[2m=[0mWindow { hwnd: 199896 } [3mevent[0m[2m=[0mSome(Uncloak(ObjectUncloaked, Window { hwnd: 199896 }))}: komorebi::window: ignoring (exe: LockApp.exe, title: Default IME, event: Uncloak (WinEvent: ObjectUncloaked, Window: (hwnd: 199896, title: Default IME, exe: LockApp.exe, class: IME)))
2024-05-16T22:08:32.561340Z DEBUG process_event{[3mevent[0m[2m=[0mUncloak(ObjectUncloaked, Window { hwnd: 199778 })}:should_manage{[3mself[0m[2m=[0mWindow { hwnd: 199778 } [3mevent[0m[2m=[0mSome(Uncloak(ObjectUncloaked, Window { hwnd: 199778 }))}: komorebi::window: ignoring (exe: LockApp.exe, title: MSCTFIME UI, event: Uncloak (WinEvent: ObjectUncloaked, Window: (hwnd: 199778, title: MSCTFIME UI, exe: LockApp.exe, class: MSCTFIME UI)))
2024-05-16T22:08:32.748537Z DEBUG process_event{[3mevent[0m[2m=[0mFocusChange(SystemForeground, Window { hwnd: 265430 })}:should_manage{[3mself[0m[2m=[0mWindow { hwnd: 265430 } [3mevent[0m[2m=[0mSome(FocusChange(SystemForeground, Window { hwnd: 265430 }))}: komorebi::window: ignoring (exe: LockApp.exe, title: Windows Default Lock Screen, event: FocusChange (WinEvent: SystemForeground, Window: (hwnd: 265430, title: Windows Default Lock Screen, exe: LockApp.exe, class: Windows.UI.Core.CoreWindow)))
2024-05-16T22:08:32.871569Z DEBUG process_event{[3mevent[0m[2m=[0mShow(ObjectShow, Window { hwnd: 1704844 })}:should_manage{[3mself[0m[2m=[0mWindow { hwnd: 1704844 } [3mevent[0m[2m=[0mSome(Show(ObjectShow, Window { hwnd: 1704844 }))}: komorebi::window: ignoring (exe: explorer.exe, title: DesktopWindowXamlSource, event: Show (WinEvent: ObjectShow, Window: (hwnd: 1704844, title: DesktopWindowXamlSource, exe: explorer.exe, class: Windows.UI.Composition.DesktopWindowContentBridge)))
2024-05-16T22:08:58.907463Z DEBUG komorebi::monitor_reconciliator::hidden: WM_DEVICECHANGE event received with DBT_DEVNODES_CHANGED - display added or removed
2024-05-16T22:08:58.908321Z DEBUG komorebi::monitor_reconciliator: handling display connection change notification
2024-05-16T22:08:58.912949Z DEBUG komorebi::monitor_reconciliator: monitor counts match, reconciliation not required
2024-05-16T22:08:59.658650Z DEBUG komorebi::monitor_reconciliator::hidden: WM_DEVICECHANGE event received with DBT_DEVNODES_CHANGED - display added or removed
2024-05-16T22:08:59.658968Z DEBUG komorebi::monitor_reconciliator: handling display connection change notification
2024-05-16T22:08:59.660643Z DEBUG komorebi::monitor_reconciliator: monitor counts match, reconciliation not required
2024-05-16T22:09:03.514769Z DEBUG process_event{[3mevent[0m[2m=[0mCloak(ObjectCloaked, Window { hwnd: 265430 })}:should_manage{[3mself[0m[2m=[0mWindow { hwnd: 265430 } [3mevent[0m[2m=[0mSome(Cloak(ObjectCloaked, Window { hwnd: 265430 }))}: komorebi::window: ignoring (exe: LockApp.exe, title: Windows Default Lock Screen, event: Cloak (WinEvent: ObjectCloaked, Window: (hwnd: 265430, title: Windows Default Lock Screen, exe: LockApp.exe, class: Windows.UI.Core.CoreWindow)))
2024-05-16T22:09:03.516475Z DEBUG process_event{[3mevent[0m[2m=[0mCloak(ObjectCloaked, Window { hwnd: 199896 })}:should_manage{[3mself[0m[2m=[0mWindow { hwnd: 199896 } [3mevent[0m[2m=[0mSome(Cloak(ObjectCloaked, Window { hwnd: 199896 }))}: komorebi::window: ignoring (exe: LockApp.exe, title: Default IME, event: Cloak (WinEvent: ObjectCloaked, Window: (hwnd: 199896, title: Default IME, exe: LockApp.exe, class: IME)))
2024-05-16T22:09:03.518387Z DEBUG process_event{[3mevent[0m[2m=[0mCloak(ObjectCloaked, Window { hwnd: 199778 })}:should_manage{[3mself[0m[2m=[0mWindow { hwnd: 199778 } [3mevent[0m[2m=[0mSome(Cloak(ObjectCloaked, Window { hwnd: 199778 }))}: komorebi::window: ignoring (exe: LockApp.exe, title: MSCTFIME UI, event: Cloak (WinEvent: ObjectCloaked, Window: (hwnd: 199778, title: MSCTFIME UI, exe: LockApp.exe, class: MSCTFIME UI)))
Zzzz...Zzzz....Zzzz
2024-05-16T22:11:24.145540Z DEBUG process_event{[3mevent[0m[2m=[0mUncloak(ObjectUncloaked, Window { hwnd: 265430 })}:should_manage{[3mself[0m[2m=[0mWindow { hwnd: 265430 } [3mevent[0m[2m=[0mSome(Uncloak(ObjectUncloaked, Window { hwnd: 265430 }))}: komorebi::window: ignoring (exe: LockApp.exe, title: Windows Default Lock Screen, event: Uncloak (WinEvent: ObjectUncloaked, Window: (hwnd: 265430, title: Windows Default Lock Screen, exe: LockApp.exe, class: Windows.UI.Core.CoreWindow)))
2024-05-16T22:11:24.148286Z DEBUG process_event{[3mevent[0m[2m=[0mUncloak(ObjectUncloaked, Window { hwnd: 199896 })}:should_manage{[3mself[0m[2m=[0mWindow { hwnd: 199896 } [3mevent[0m[2m=[0mSome(Uncloak(ObjectUncloaked, Window { hwnd: 199896 }))}: komorebi::window: ignoring (exe: LockApp.exe, title: Default IME, event: Uncloak (WinEvent: ObjectUncloaked, Window: (hwnd: 199896, title: Default IME, exe: LockApp.exe, class: IME)))
2024-05-16T22:11:24.150962Z DEBUG process_event{[3mevent[0m[2m=[0mUncloak(ObjectUncloaked, Window { hwnd: 199778 })}:should_manage{[3mself[0m[2m=[0mWindow { hwnd: 199778 } [3mevent[0m[2m=[0mSome(Uncloak(ObjectUncloaked, Window { hwnd: 199778 }))}: komorebi::window: ignoring (exe: LockApp.exe, title: MSCTFIME UI, event: Uncloak (WinEvent: ObjectUncloaked, Window: (hwnd: 199778, title: MSCTFIME UI, exe: LockApp.exe, class: MSCTFIME UI)))
2024-05-16T22:11:24.155084Z DEBUG process_event{[3mevent[0m[2m=[0mCloak(ObjectCloaked, Window { hwnd: 265430 })}:should_manage{[3mself[0m[2m=[0mWindow { hwnd: 265430 } [3mevent[0m[2m=[0mSome(Cloak(ObjectCloaked, Window { hwnd: 265430 }))}: komorebi::window: ignoring (exe: LockApp.exe, title: Windows Default Lock Screen, event: Cloak (WinEvent: ObjectCloaked, Window: (hwnd: 265430, title: Windows Default Lock Screen, exe: LockApp.exe, class: Windows.UI.Core.CoreWindow)))
2024-05-16T22:11:24.158411Z DEBUG process_event{[3mevent[0m[2m=[0mCloak(ObjectCloaked, Window { hwnd: 199896 })}:should_manage{[3mself[0m[2m=[0mWindow { hwnd: 199896 } [3mevent[0m[2m=[0mSome(Cloak(ObjectCloaked, Window { hwnd: 199896 }))}: komorebi::window: ignoring (exe: LockApp.exe, title: Default IME, event: Cloak (WinEvent: ObjectCloaked, Window: (hwnd: 199896, title: Default IME, exe: LockApp.exe, class: IME)))
2024-05-16T22:11:24.160438Z DEBUG process_event{[3mevent[0m[2m=[0mCloak(ObjectCloaked, Window { hwnd: 199778 })}:should_manage{[3mself[0m[2m=[0mWindow { hwnd: 199778 } [3mevent[0m[2m=[0mSome(Cloak(ObjectCloaked, Window { hwnd: 199778 }))}: komorebi::window: ignoring (exe: LockApp.exe, title: MSCTFIME UI, event: Cloak (WinEvent: ObjectCloaked, Window: (hwnd: 199778, title: MSCTFIME UI, exe: LockApp.exe, class: MSCTFIME UI)))
2024-05-16T22:11:24.180525Z DEBUG process_event{[3mevent[0m[2m=[0mDestroy(ObjectDestroy, Window { hwnd: 7604040 })}:should_manage{[3mself[0m[2m=[0mWindow { hwnd: 7604040 } [3mevent[0m[2m=[0mSome(Destroy(ObjectDestroy, Window { hwnd: 7604040 }))}: komorebi::window: ignoring (exe: explorer.exe, title: DesktopWindowXamlSource, event: Destroy (WinEvent: ObjectDestroy, Window: (hwnd: 7604040, title: DesktopWindowXamlSource, exe: explorer.exe, class: Windows.UI.Core.CoreWindow)))
2024-05-16T22:11:24.191767Z DEBUG process_event{[3mevent[0m[2m=[0mFocusChange(SystemForeground, Window { hwnd: 3542082 })}:should_manage{[3mself[0m[2m=[0mWindow { hwnd: 3542082 } [3mevent[0m[2m=[0mSome(FocusChange(SystemForeground, Window { hwnd: 3542082 }))}: komorebi::window: ignoring (exe: explorer.exe, title: UnlockingWindow, event: FocusChange (WinEvent: SystemForeground, Window: (hwnd: 3542082, title: UnlockingWindow, exe: explorer.exe, class: LockScreenControllerProxyWindow)))
2024-05-16T22:11:24.369433Z DEBUG komorebi::monitor_reconciliator::hidden: WM_DEVICECHANGE event received with DBT_DEVNODES_CHANGED - display added or removed
2024-05-16T22:11:24.369894Z DEBUG komorebi::monitor_reconciliator: handling display connection change notification
2024-05-16T22:11:24.372562Z DEBUG komorebi::monitor_reconciliator: monitor counts match, reconciliation not required
2024-05-16T22:11:24.813933Z DEBUG komorebi::monitor_reconciliator::hidden: WM_DEVICECHANGE event received with DBT_DEVNODES_CHANGED - display added or removed
2024-05-16T22:11:24.814658Z DEBUG komorebi::monitor_reconciliator: handling display connection change notification
2024-05-16T22:11:24.817365Z DEBUG komorebi::monitor_reconciliator: monitor counts match, reconciliation not required
2024-05-16T22:11:28.261234Z DEBUG process_event{[3mevent[0m[2m=[0mDestroy(ObjectDestroy, Window { hwnd: 3804002 })}:should_manage{[3mself[0m[2m=[0mWindow { hwnd: 3804002 } [3mevent[0m[2m=[0mSome(Destroy(ObjectDestroy, Window { hwnd: 3804002 }))}: komorebi::window: ignoring (exe: explorer.exe, title: Input Occlusion Window, event: Destroy (WinEvent: ObjectDestroy, Window: (hwnd: 3804002, title: Input Occlusion Window, exe: explorer.exe, class: LockScreenInputOcclusionFrame)))
2024-05-16T22:11:28.280626Z DEBUG process_event{[3mevent[0m[2m=[0mCloak(ObjectCloaked, Window { hwnd: 5181068 })}:should_manage{[3mself[0m[2m=[0mWindow { hwnd: 5181068 } [3mevent[0m[2m=[0mSome(Cloak(ObjectCloaked, Window { hwnd: 5181068 }))}: komorebi::window: ignoring (exe: explorer.exe, title: Input Occlusion Window, event: Cloak (WinEvent: ObjectCloaked, Window: (hwnd: 5181068, title: Input Occlusion Window, exe: explorer.exe, class: LockScreenInputOcclusionFrame)))
2024-05-16T22:11:28.290076Z DEBUG process_event{[3mevent[0m[2m=[0mUncloak(ObjectUncloaked, Window { hwnd: 5181068 })}:should_manage{[3mself[0m[2m=[0mWindow { hwnd: 5181068 } [3mevent[0m[2m=[0mSome(Uncloak(ObjectUncloaked, Window { hwnd: 5181068 }))}: komorebi::window: ignoring (exe: explorer.exe, title: Input Occlusion Window, event: Uncloak (WinEvent: ObjectUncloaked, Window: (hwnd: 5181068, title: Input Occlusion Window, exe: explorer.exe, class: LockScreenInputOcclusionFrame)))
2024-05-16T22:11:28.314822Z DEBUG process_event{[3mevent[0m[2m=[0mShow(ObjectShow, Window { hwnd: 5181068 })}:should_manage{[3mself[0m[2m=[0mWindow { hwnd: 5181068 } [3mevent[0m[2m=[0mSome(Show(ObjectShow, Window { hwnd: 5181068 }))}: komorebi::window: ignoring (exe: explorer.exe, title: Input Occlusion Window, event: Show (WinEvent: ObjectShow, Window: (hwnd: 5181068, title: Input Occlusion Window, exe: explorer.exe, class: LockScreenInputOcclusionFrame)))
2024-05-16T22:11:28.322616Z DEBUG process_event{[3mevent[0m[2m=[0mFocusChange(SystemForeground, Window { hwnd: 5181068 })}:should_manage{[3mself[0m[2m=[0mWindow { hwnd: 5181068 } [3mevent[0m[2m=[0mSome(FocusChange(SystemForeground, Window { hwnd: 5181068 }))}: komorebi::window: ignoring (exe: explorer.exe, title: Input Occlusion Window, event: FocusChange (WinEvent: SystemForeground, Window: (hwnd: 5181068, title: Input Occlusion Window, exe: explorer.exe, class: LockScreenInputOcclusionFrame)))
2024-05-16T22:11:28.341391Z DEBUG process_event{[3mevent[0m[2m=[0mUncloak(ObjectUncloaked, Window { hwnd: 1510822 })}:should_manage{[3mself[0m[2m=[0mWindow { hwnd: 1510822 } [3mevent[0m[2m=[0mSome(Uncloak(ObjectUncloaked, Window { hwnd: 1510822 }))}: komorebi::window: ignoring (exe: explorer.exe, title: Input Occlusion Window, event: Uncloak (WinEvent: ObjectUncloaked, Window: (hwnd: 1510822, title: Input Occlusion Window, exe: explorer.exe, class: LockScreenInputOcclusionFrame)))
2024-05-16T22:11:28.351185Z DEBUG process_event{[3mevent[0m[2m=[0mShow(ObjectShow, Window { hwnd: 1510822 })}:should_manage{[3mself[0m[2m=[0mWindow { hwnd: 1510822 } [3mevent[0m[2m=[0mSome(Show(ObjectShow, Window { hwnd: 1510822 }))}: komorebi::window: ignoring (exe: explorer.exe, title: Input Occlusion Window, event: Show (WinEvent: ObjectShow, Window: (hwnd: 1510822, title: Input Occlusion Window, exe: explorer.exe, class: LockScreenInputOcclusionFrame)))
2024-05-16T22:11:28.361409Z DEBUG process_event{[3mevent[0m[2m=[0mFocusChange(SystemForeground, Window { hwnd: 1510822 })}:should_manage{[3mself[0m[2m=[0mWindow { hwnd: 1510822 } [3mevent[0m[2m=[0mSome(FocusChange(SystemForeground, Window { hwnd: 1510822 }))}: komorebi::window: ignoring (exe: explorer.exe, title: Input Occlusion Window, event: FocusChange (WinEvent: SystemForeground, Window: (hwnd: 1510822, title: Input Occlusion Window, exe: explorer.exe, class: LockScreenInputOcclusionFrame)))
2024-05-16T22:11:28.428557Z DEBUG komorebi::monitor_reconciliator::hidden: WM_DEVICECHANGE event received with DBT_DEVNODES_CHANGED - display added or removed
2024-05-16T22:11:28.440634Z DEBUG komorebi::monitor_reconciliator: handling display connection change notification
2024-05-16T22:11:28.440839Z DEBUG komorebi::monitor_reconciliator::hidden: WM_DEVICECHANGE event received with DBT_DEVNODES_CHANGED - display added or removed
2024-05-16T22:11:28.444310Z DEBUG komorebi::monitor_reconciliator: monitor counts match, reconciliation not required
2024-05-16T22:11:28.444570Z DEBUG komorebi::monitor_reconciliator: handling display connection change notification
2024-05-16T22:11:28.519689Z DEBUG komorebi::monitor_reconciliator: monitor counts match, reconciliation not required
2024-05-16T22:11:28.557706Z DEBUG process_event{[3mevent[0m[2m=[0mHide(ObjectHide, Window { hwnd: 8587026 })}:should_manage{[3mself[0m[2m=[0mWindow { hwnd: 8587026 } [3mevent[0m[2m=[0mSome(Hide(ObjectHide, Window { hwnd: 8587026 }))}: komorebi::window: ignoring (exe: explorer.exe, title: Backstop Window, event: Hide (WinEvent: ObjectHide, Window: (hwnd: 8587026, title: Backstop Window, exe: explorer.exe, class: LockScreenBackstopFrame)))
2024-05-16T22:11:28.563482Z DEBUG process_event{[3mevent[0m[2m=[0mHide(ObjectHide, Window { hwnd: 1510822 })}:should_manage{[3mself[0m[2m=[0mWindow { hwnd: 1510822 } [3mevent[0m[2m=[0mSome(Hide(ObjectHide, Window { hwnd: 1510822 }))}: komorebi::window: ignoring (exe: explorer.exe, title: Input Occlusion Window, event: Hide (WinEvent: ObjectHide, Window: (hwnd: 1510822, title: Input Occlusion Window, exe: explorer.exe, class: LockScreenInputOcclusionFrame)))
2024-05-16T22:11:28.865013Z DEBUG komorebi::monitor_reconciliator::hidden: WM_DISPLAYCHANGE event received with wparam: 32- work area or display resolution changed
2024-05-16T22:11:28.865300Z DEBUG komorebi::monitor_reconciliator: handling resolution/scaling changed notification
2024-05-16T22:11:28.990900Z DEBUG komorebi::monitor_reconciliator: resolutions match, reconciliation not required for DEL4277-5&1047835a&1&UID4352
2024-05-16T22:11:29.132704Z DEBUG komorebi::monitor_reconciliator: resolutions match, reconciliation not required for DEL4279-5&1047835a&1&UID4354
2024-05-16T22:11:29.135040Z DEBUG process_event{[3mevent[0m[2m=[0mFocusChange(SystemForeground, Window { hwnd: 3542082 })}:should_manage{[3mself[0m[2m=[0mWindow { hwnd: 3542082 } [3mevent[0m[2m=[0mSome(FocusChange(SystemForeground, Window { hwnd: 3542082 }))}: komorebi::window: ignoring (exe: explorer.exe, title: UnlockingWindow, event: FocusChange (WinEvent: SystemForeground, Window: (hwnd: 3542082, title: UnlockingWindow, exe: explorer.exe, class: LockScreenControllerProxyWindow)))
2024-05-16T22:11:29.452564Z DEBUG process_event{[3mevent[0m[2m=[0mDestroy(ObjectDestroy, Window { hwnd: 8587026 })}:should_manage{[3mself[0m[2m=[0mWindow { hwnd: 8587026 } [3mevent[0m[2m=[0mSome(Destroy(ObjectDestroy, Window { hwnd: 8587026 }))}: komorebi::window: ignoring (exe: explorer.exe, title: Backstop Window, event: Destroy (WinEvent: ObjectDestroy, Window: (hwnd: 8587026, title: Backstop Window, exe: explorer.exe, class: LockScreenBackstopFrame)))
2024-05-16T22:11:29.481330Z DEBUG process_event{[3mevent[0m[2m=[0mDestroy(ObjectDestroy, Window { hwnd: 6096206 })}:should_manage{[3mself[0m[2m=[0mWindow { hwnd: 6096206 } [3mevent[0m[2m=[0mSome(Destroy(ObjectDestroy, Window { hwnd: 6096206 }))}: komorebi::window: ignoring (exe: explorer.exe, title: Default IME, event: Destroy (WinEvent: ObjectDestroy, Window: (hwnd: 6096206)))
2024-05-16T22:11:29.505384Z INFO process_event{[3mevent[0m[2m=[0mFocusChange(SystemForeground, Window { hwnd: 20122180 })}:focus_window{[3midx[0m[2m=[0m0}: komorebi::container: focusing window
2024-05-16T22:11:29.531635Z INFO process_event{[3mevent[0m[2m=[0mFocusChange(SystemForeground, Window { hwnd: 20122180 })}:update_focused_workspace{[3mfollow_focus[0m[2m=[0mtrue [3mtrigger_focus[0m[2m=[0mfalse}: komorebi::window_manager: updating
2024-05-16T22:11:29.532326Z INFO process_event{[3mevent[0m[2m=[0mFocusChange(SystemForeground, Window { hwnd: 20122180 })}:focus_window{[3midx[0m[2m=[0m0}: komorebi::container: focusing window
2024-05-16T22:11:29.546567Z INFO process_event{[3mevent[0m[2m=[0mFocusChange(SystemForeground, Window { hwnd: 20122180 })}:focus_container{[3midx[0m[2m=[0m0}: komorebi::workspace: focusing container
2024-05-16T22:11:29.564597Z INFO process_event{[3mevent[0m[2m=[0mFocusChange(SystemForeground, Window { hwnd: 20122180 })}: komorebi::process_event: processed: (hwnd: 20122180, title: C:\Users\{UserName}\AppData\Local\Temp\komorebi_plaintext.log.2024-05-16 - Notepad++, exe: notepad++.exe, class: Notepad++)
2024-05-16T22:11:29.739877Z DEBUG komorebi::monitor_reconciliator::hidden: WM_SETTINGCHANGE event received with SPI_SETWORKAREA - work area changed (probably butterytaskbar or something similar)
2024-05-16T22:11:29.740475Z DEBUG komorebi::monitor_reconciliator: handling work area changed notification
2024-05-16T22:11:29.824690Z DEBUG komorebi::monitor_reconciliator::hidden: WM_SETTINGCHANGE event received with SPI_SETWORKAREA - work area changed (probably butterytaskbar or something similar)
2024-05-16T22:11:29.825034Z DEBUG komorebi::monitor_reconciliator: work areas match, reconciliation not required for DEL4277-5&1047835a&1&UID4352
2024-05-16T22:11:29.841298Z DEBUG komorebi::monitor_reconciliator: work areas match, reconciliation not required for DEL4279-5&1047835a&1&UID4354
2024-05-16T22:11:29.841584Z DEBUG komorebi::monitor_reconciliator: handling work area changed notification
2024-05-16T22:11:29.855722Z DEBUG komorebi::monitor_reconciliator: work areas match, reconciliation not required for DEL4277-5&1047835a&1&UID4352
2024-05-16T22:11:29.874130Z DEBUG komorebi::monitor_reconciliator: work areas match, reconciliation not required for DEL4279-5&1047835a&1&UID4354
2024-05-16T22:11:30.423432Z DEBUG komorebi::monitor_reconciliator::hidden: WM_DEVICECHANGE event received with DBT_DEVNODES_CHANGED - display added or removed
2024-05-16T22:11:30.426104Z DEBUG komorebi::monitor_reconciliator: handling display connection change notification
2024-05-16T22:11:30.436098Z DEBUG komorebi::monitor_reconciliator: monitor counts match, reconciliation not required
2024-05-16T22:11:30.458376Z DEBUG komorebi::monitor_reconciliator::hidden: WM_DEVICECHANGE event received with DBT_DEVNODES_CHANGED - display added or removed
2024-05-16T22:11:30.464270Z DEBUG komorebi::monitor_reconciliator: handling display connection change notification
2024-05-16T22:11:30.471084Z DEBUG komorebi::monitor_reconciliator: monitor counts match, reconciliation not required
2024-05-16T22:11:32.366117Z INFO process_event{[3mevent[0m[2m=[0mFocusChange(SystemForeground, Window { hwnd: 20122180 })}:focus_window{[3midx[0m[2m=[0m0}: komorebi::container: focusing window
2024-05-16T22:11:32.368596Z INFO process_event{[3mevent[0m[2m=[0mFocusChange(SystemForeground, Window { hwnd: 20122180 })}:update_focused_workspace{[3mfollow_focus[0m[2m=[0mtrue [3mtrigger_focus[0m[2m=[0mfalse}: komorebi::window_manager: updating
2024-05-16T22:11:32.368882Z INFO process_event{[3mevent[0m[2m=[0mFocusChange(SystemForeground, Window { hwnd: 20122180 })}:focus_window{[3midx[0m[2m=[0m0}: komorebi::container: focusing window
2024-05-16T22:11:32.369380Z INFO process_event{[3mevent[0m[2m=[0mFocusChange(SystemForeground, Window { hwnd: 20122180 })}:focus_container{[3midx[0m[2m=[0m0}: komorebi::workspace: focusing container
2024-05-16T22:11:32.370580Z INFO process_event{[3mevent[0m[2m=[0mFocusChange(SystemForeground, Window { hwnd: 20122180 })}: komorebi::process_event: processed: (hwnd: 20122180, title: C:\Users\{UserName}\AppData\Local\Temp\komorebi_plaintext.log.2024-05-16 - Notepad++, exe: notepad++.exe, class: Notepad++)
2024-05-16T22:11:38.589984Z INFO process_event{[3mevent[0m[2m=[0mFocusChange(SystemForeground, Window { hwnd: 198962 })}:focus_window{[3midx[0m[2m=[0m0}: komorebi::container: focusing window
2024-05-16T22:11:38.592021Z INFO process_event{[3mevent[0m[2m=[0mFocusChange(SystemForeground, Window { hwnd: 198962 })}:update_focused_workspace{[3mfollow_focus[0m[2m=[0mtrue [3mtrigger_focus[0m[2m=[0mfalse}: komorebi::window_manager: updating
2024-05-16T22:11:38.593456Z ERROR komorebi::process_event: there is no container/window
2024-05-16T22:11:38.659451Z INFO process_event{[3mevent[0m[2m=[0mMoveResizeStart(SystemMoveSizeStart, Window { hwnd: 198962 })}: komorebi::process_event: processed: (hwnd: 198962, title: [BUG]: `monitor-madness` window snapping does not work after sleep ยท Issue #828 ยท LGUG2Z/komorebi โ Mozilla Firefox, exe: firefox.exe, class: MozillaWindowClass)
2024-05-16T22:11:38.670833Z DEBUG process_event{[3mevent[0m[2m=[0mShow(ObjectShow, Window { hwnd: 10620228 })}:should_manage{[3mself[0m[2m=[0mWindow { hwnd: 10620228 } [3mevent[0m[2m=[0mSome(Show(ObjectShow, Window { hwnd: 10620228 }))}: komorebi::window: ignoring (exe: explorer.exe, title: DesktopWindowXamlSource, event: Show (WinEvent: ObjectShow, Window: (hwnd: 10620228, title: DesktopWindowXamlSource, exe: explorer.exe, class: Windows.UI.Composition.DesktopWindowContentBridge)))
2024-05-16T22:11:39.161409Z ERROR komorebi::process_event: cannot get monitor idx from current position
2024-05-16T22:11:39.329704Z DEBUG process_event{[3mevent[0m[2m=[0mHide(ObjectHide, Window { hwnd: 10620228 })}:should_manage{[3mself[0m[2m=[0mWindow { hwnd: 10620228 } [3mevent[0m[2m=[0mSome(Hide(ObjectHide, Window { hwnd: 10620228 }))}: komorebi::window: ignoring (exe: explorer.exe, title: DesktopWindowXamlSource, event: Hide (WinEvent: ObjectHide, Window: (hwnd: 10620228)))
2024-05-16T22:11:39.819980Z INFO process_event{[3mevent[0m[2m=[0mMoveResizeStart(SystemMoveSizeStart, Window { hwnd: 198962 })}: komorebi::process_event: processed: (hwnd: 198962, title: [BUG]: `monitor-madness` window snapping does not work after sleep ยท Issue #828 ยท LGUG2Z/komorebi โ Mozilla Firefox, exe: firefox.exe, class: MozillaWindowClass)
2024-05-16T22:11:39.831323Z DEBUG process_event{[3mevent[0m[2m=[0mShow(ObjectShow, Window { hwnd: 10751300 })}:should_manage{[3mself[0m[2m=[0mWindow { hwnd: 10751300 } [3mevent[0m[2m=[0mSome(Show(ObjectShow, Window { hwnd: 10751300 }))}: komorebi::window: ignoring (exe: explorer.exe, title: DesktopWindowXamlSource, event: Show (WinEvent: ObjectShow, Window: (hwnd: 10751300, title: DesktopWindowXamlSource, exe: explorer.exe, class: Windows.UI.Composition.DesktopWindowContentBridge)))
2024-05-16T22:11:40.233450Z ERROR komorebi::process_event: cannot get monitor idx from current position
2024-05-16T22:11:40.413627Z DEBUG process_event{[3mevent[0m[2m=[0mHide(ObjectHide, Window { hwnd: 10751300 })}:should_manage{[3mself[0m[2m=[0mWindow { hwnd: 10751300 } [3mevent[0m[2m=[0mSome(Hide(ObjectHide, Window { hwnd: 10751300 }))}: komorebi::window: ignoring (exe: explorer.exe, title: DesktopWindowXamlSource, event: Hide (WinEvent: ObjectHide, Window: (hwnd: 10751300)))
2024-05-16T22:11:40.866150Z INFO process_event{[3mevent[0m[2m=[0mFocusChange(SystemForeground, Window { hwnd: 37883578 })}:focus_window{[3midx[0m[2m=[0m0}: komorebi::container: focusing window
2024-05-16T22:11:40.870538Z INFO process_event{[3mevent[0m[2m=[0mFocusChange(SystemForeground, Window { hwnd: 37883578 })}:update_focused_workspace{[3mfollow_focus[0m[2m=[0mtrue [3mtrigger_focus[0m[2m=[0mfalse}: komorebi::window_manager: updating
2024-05-16T22:11:40.871674Z ERROR komorebi::process_event: there is no container/window
2024-05-16T22:11:40.875362Z INFO process_event{[3mevent[0m[2m=[0mMoveResizeStart(SystemMoveSizeStart, Window { hwnd: 37883578 })}: komorebi::process_event: processed: (hwnd: 37883578, title: Windows PowerShell, exe: WindowsTerminal.exe, class: CASCADIA_HOSTING_WINDOW_CLASS)
2024-05-16T22:11:40.948942Z ERROR komorebi::process_event: cannot get monitor idx from current position
2024-05-16T22:11:42.722569Z INFO process_event{[3mevent[0m[2m=[0mFocusChange(SystemForeground, Window { hwnd: 198962 })}:focus_window{[3midx[0m[2m=[0m0}: komorebi::container: focusing window
2024-05-16T22:11:42.723724Z INFO process_event{[3mevent[0m[2m=[0mFocusChange(SystemForeground, Window { hwnd: 198962 })}:update_focused_workspace{[3mfollow_focus[0m[2m=[0mtrue [3mtrigger_focus[0m[2m=[0mfalse}: komorebi::window_manager: updating
2024-05-16T22:11:42.724562Z ERROR komorebi::process_event: there is no container/window
2024-05-16T22:11:44.311791Z INFO process_event{[3mevent[0m[2m=[0mFocusChange(SystemForeground, Window { hwnd: 37883578 })}:focus_window{[3midx[0m[2m=[0m0}: komorebi::container: focusing window
2024-05-16T22:11:44.315057Z INFO process_event{[3mevent[0m[2m=[0mFocusChange(SystemForeground, Window { hwnd: 37883578 })}:update_focused_workspace{[3mfollow_focus[0m[2m=[0mtrue [3mtrigger_focus[0m[2m=[0mfalse}: komorebi::window_manager: updating
2024-05-16T22:11:44.316100Z ERROR komorebi::process_event: there is no container/window
2024-05-16T22:11:45.189719Z ERROR komorebi::process_event: there is no window
2024-05-16T22:11:45.201015Z INFO process_event{[3mevent[0m[2m=[0mFocusChange(SystemForeground, Window { hwnd: 198962 })}:focus_window{[3midx[0m[2m=[0m0}: komorebi::container: focusing window
2024-05-16T22:11:45.202668Z INFO process_event{[3mevent[0m[2m=[0mFocusChange(SystemForeground, Window { hwnd: 198962 })}:update_focused_workspace{[3mfollow_focus[0m[2m=[0mtrue [3mtrigger_focus[0m[2m=[0mfalse}: komorebi::window_manager: updating
2024-05-16T22:11:45.203516Z ERROR komorebi::process_event: there is no container/window
2024-05-16T22:11:46.083668Z INFO process_event{[3mevent[0m[2m=[0mFocusChange(SystemForeground, Window { hwnd: 37883578 })}:focus_window{[3midx[0m[2m=[0m0}: komorebi::container: focusing window
2024-05-16T22:11:46.086475Z INFO process_event{[3mevent[0m[2m=[0mFocusChange(SystemForeground, Window { hwnd: 37883578 })}:update_focused_workspace{[3mfollow_focus[0m[2m=[0mtrue [3mtrigger_focus[0m[2m=[0mfalse}: komorebi::window_manager: updating
2024-05-16T22:11:46.088012Z ERROR komorebi::process_event: there is no container/window
2024-05-16T22:11:46.111626Z INFO komorebi::workspace_reconciliator: running reconciliation
2024-05-16T22:11:46.112132Z INFO process_event{[3mevent[0m[2m=[0mShow(SystemMinimizeEnd, Window { hwnd: 37883578 })}: komorebi::process_event: processed: (hwnd: 37883578, title: Windows PowerShell, exe: WindowsTerminal.exe, class: CASCADIA_HOSTING_WINDOW_CLASS)
2024-05-16T22:11:46.112356Z INFO focus_monitor{[3midx[0m[2m=[0m1}: komorebi::window_manager: focusing monitor
2024-05-16T22:11:46.113035Z INFO focus_workspace{[3midx[0m[2m=[0m0}: komorebi::monitor: focusing workspace
2024-05-16T22:11:46.117646Z INFO focus_window{[3midx[0m[2m=[0m0}: komorebi::container: focusing window
2024-05-16T22:11:46.130274Z INFO process_event{[3mevent[0m[2m=[0mFocusChange(SystemForeground, Window { hwnd: 198962 })}:focus_window{[3midx[0m[2m=[0m0}: komorebi::container: focusing window
2024-05-16T22:11:46.131851Z INFO process_event{[3mevent[0m[2m=[0mFocusChange(SystemForeground, Window { hwnd: 198962 })}:update_focused_workspace{[3mfollow_focus[0m[2m=[0mtrue [3mtrigger_focus[0m[2m=[0mfalse}: komorebi::window_manager: updating
2024-05-16T22:11:46.134444Z INFO process_event{[3mevent[0m[2m=[0mFocusChange(SystemForeground, Window { hwnd: 198962 })}:focus_window{[3midx[0m[2m=[0m0}: komorebi::container: focusing window
2024-05-16T22:11:46.134692Z INFO process_event{[3mevent[0m[2m=[0mFocusChange(SystemForeground, Window { hwnd: 198962 })}:focus_container{[3midx[0m[2m=[0m1}: komorebi::workspace: focusing container
2024-05-16T22:11:46.135316Z INFO process_event{[3mevent[0m[2m=[0mFocusChange(SystemForeground, Window { hwnd: 198962 })}: komorebi::process_event: processed: (hwnd: 198962, title: [BUG]: `monitor-madness` window snapping does not work after sleep ยท Issue #828 ยท LGUG2Z/komorebi โ Mozilla Firefox, exe: firefox.exe, class: MozillaWindowClass)
2024-05-16T22:11:51.648190Z INFO process_event{[3mevent[0m[2m=[0mFocusChange(SystemForeground, Window { hwnd: 20122180 })}:focus_window{[3midx[0m[2m=[0m0}: komorebi::container: focusing window
2024-05-16T22:11:51.653581Z INFO process_event{[3mevent[0m[2m=[0mFocusChange(SystemForeground, Window { hwnd: 20122180 })}:update_focused_workspace{[3mfollow_focus[0m[2m=[0mtrue [3mtrigger_focus[0m[2m=[0mfalse}: komorebi::window_manager: updating
2024-05-16T22:11:51.654390Z ERROR komorebi::process_event: there is no container/window
2024-05-16T22:11:53.065119Z INFO process_event{[3mevent[0m[2m=[0mFocusChange(SystemForeground, Window { hwnd: 20122180 })}:focus_window{[3midx[0m[2m=[0m0}: komorebi::container: focusing window
2024-05-16T22:11:53.067301Z INFO process_event{[3mevent[0m[2m=[0mFocusChange(SystemForeground, Window { hwnd: 20122180 })}:update_focused_workspace{[3mfollow_focus[0m[2m=[0mtrue [3mtrigger_focus[0m[2m=[0mfalse}: komorebi::window_manager: updating
2024-05-16T22:11:53.068141Z ERROR komorebi::process_event: there is no container/window
I still have the same issue. After sleep the snapping does not work.
Some follow up questions:
Next steps:
komorebic pause
hotkey and check if there are any containers in the workspaces in komorebic state
removed orphaned containers
either just before or just after the sleep?For reference, this is what the process looks like for me with two monitors connected, and selecting Power > Sleep:
================ SUSPEND NOTIFICATION RECEIVED ========================
2024-05-16T22:26:25.463947Z DEBUG komorebi::monitor_reconciliator::hidden: WM_POWERBROADCAST event received - entering suspended state
================ MONITOR RECONCILIATOR DEACTIVATED ========================
2024-05-16T22:26:25.464288Z DEBUG komorebi::monitor_reconciliator: deactivating reconciliator until system resumes from suspended state
2024-05-16T22:26:25.658762Z DEBUG process_event{event=Destroy(ObjectDestroy, Window { hwnd: 659732 })}:should_manage{self=Window { hwnd: 659732 } event=Some(Destroy(ObjectDestroy, Window { h
wnd: 659732 }))}: komorebi::window: ignoring (exe: msedgewebview2.exe, title: ChatGPT, event: Destroy (WinEvent: ObjectDestroy, Window: (hwnd: 659732, title: ChatGPT, exe: msedgewebview2.exe, class: Chrome_WidgetWin_1)))
2024-05-16T22:26:25.715701Z DEBUG process_event{event=Uncloak(ObjectUncloaked, Window { hwnd: 725268 })}:should_manage{self=Window { hwnd: 725268 } event=Some(Uncloak(ObjectUncloaked, Window
{ hwnd: 725268 }))}: komorebi::window: ignoring (exe: explorer.exe, title: Backstop Window, event: Uncloak (WinEvent: ObjectUncloaked, Window: (hwnd: 725268, title: Backstop Window, exe: explorer.exe, class: LockScreenBackstopFrame)))
2024-05-16T22:26:25.717257Z DEBUG process_event{event=Uncloak(ObjectUncloaked, Window { hwnd: 54071730 })}:should_manage{self=Window { hwnd: 54071730 } event=Some(Uncloak(ObjectUncloaked, Wi
ndow { hwnd: 54071730 }))}: komorebi::window: ignoring (exe: explorer.exe, title: Default IME, event: Uncloak (WinEvent: ObjectUncloaked, Window: (hwnd: 54071730, title: Default IME, exe: explorer.exe, class: IME)))
2024-05-16T22:26:25.733375Z DEBUG process_event{event=Uncloak(ObjectUncloaked, Window { hwnd: 4722340 })}:should_manage{self=Window { hwnd: 4722340 } event=Some(Uncloak(ObjectUncloaked, Wind
ow { hwnd: 4722340 }))}: komorebi::window: ignoring (exe: explorer.exe, title: Input Occlusion Window, event: Uncloak (WinEvent: ObjectUncloaked, Window: (hwnd: 4722340, title: Input Occlusion Window, exe: explorer.exe, class: LockScreenInputOcclusionFrame)))
2024-05-16T22:26:25.759283Z DEBUG process_event{event=Show(ObjectShow, Window { hwnd: 725268 })}:should_manage{self=Window { hwnd: 725268 } event=Some(Show(ObjectShow, Window { hwnd: 725268
}))}: komorebi::window: ignoring (exe: explorer.exe, title: Backstop Window, event: Show (WinEvent: ObjectShow, Window: (hwnd: 725268, title: Backstop Window, exe: explorer.exe, class: LockScreenBackstopFrame)))
2024-05-16T22:26:25.765634Z DEBUG process_event{event=Show(ObjectShow, Window { hwnd: 4722340 })}:should_manage{self=Window { hwnd: 4722340 } event=Some(Show(ObjectShow, Window { hwnd: 47223
40 }))}: komorebi::window: ignoring (exe: explorer.exe, title: Input Occlusion Window, event: Show (WinEvent: ObjectShow, Window: (hwnd: 4722340, title: Input Occlusion Window, exe: explorer.exe, class: LockScreenInputOcclusionFrame)))
2024-05-16T22:27:28.541396Z INFO process_event{event=Destroy(ObjectDestroy, Window { hwnd: 1444406 })}: komorebi::process_event: processed: (hwnd: 1444406, title: 1e7c652f-1b27-40f3-8521-438070bb1d2b.kiros-edge-hit-tracker-window, exe: logioptionsplus_agent.exe, class: 1e7c652f-1b27-40f3-8521-438070bb1d2b.kiros-edge-hit-tracker-class)
================ RESUME FROM SUSPEND NOTIFICATION RECEIVED ========================
2024-05-16T22:27:31.789508Z DEBUG komorebi::monitor_reconciliator::hidden: WM_POWERBROADCAST event received - resume from suspend
================ MONITOR RECONCILIATOR REACTIVATED ========================
2024-05-16T22:27:31.789820Z DEBUG komorebi::monitor_reconciliator: reactivating reconciliator - system has resumed from suspended state
2024-05-16T22:27:31.811129Z DEBUG komorebi::monitor_reconciliator::hidden: WM_POWERBROADCAST event received - resume from suspend
2024-05-16T22:27:33.675124Z INFO process_event{event=Destroy(ObjectDestroy, Window { hwnd: 5117394 })}: komorebi::process_event: processed: (hwnd: 5117394)
2024-05-16T22:27:33.880805Z DEBUG process_event{event=Uncloak(ObjectUncloaked, Window { hwnd: 132340 })}:should_manage{self=Window { hwnd: 132340 } event=Some(Uncloak(ObjectUncloaked, Window
{ hwnd: 132340 }))}: komorebi::window: ignoring (exe: LockApp.exe, title: Windows Default Lock Screen, event: Uncloak (WinEvent: ObjectUncloaked, Window: (hwnd: 132340, title: Windows Default Lock Screen, exe: LockApp.exe, class: Windows.UI.Core.CoreWindow)))
2024-05-16T22:27:33.882189Z DEBUG process_event{event=Uncloak(ObjectUncloaked, Window { hwnd: 196640 })}:should_manage{self=Window { hwnd: 196640 } event=Some(Uncloak(ObjectUncloaked, Window
{ hwnd: 196640 }))}: komorebi::window: ignoring (exe: LockApp.exe, title: Default IME, event: Uncloak (WinEvent: ObjectUncloaked, Window: (hwnd: 196640, title: Default IME, exe: LockApp.exe, class: IME)))
2024-05-16T22:27:33.883554Z DEBUG process_event{event=Uncloak(ObjectUncloaked, Window { hwnd: 66862 })}:should_manage{self=Window { hwnd: 66862 } event=Some(Uncloak(ObjectUncloaked, Window {
hwnd: 66862 }))}: komorebi::window: ignoring (exe: LockApp.exe, title: MSCTFIME UI, event: Uncloak (WinEvent: ObjectUncloaked, Window: (hwnd: 66862, title: MSCTFIME UI, exe: LockApp.exe, class: MSCTFIME UI)))
2024-05-16T22:27:33.966947Z INFO process_event{event=Destroy(ObjectDestroy, Window { hwnd: 855770 })}: komorebi::process_event: processed: (hwnd: 855770)
================ MONITOR CONNECTION/DECONNECTION NOTIFICATION RECEIVED ========================
2024-05-16T22:27:34.727199Z DEBUG komorebi::monitor_reconciliator::hidden: WM_DEVICECHANGE event received with DBT_DEVNODES_CHANGED - display added or removed
2024-05-16T22:27:34.727502Z DEBUG komorebi::monitor_reconciliator: handling display connection change notification
2024-05-16T22:27:34.731331Z DEBUG komorebi::monitor_reconciliator: monitor counts match, reconciliation not required
================ MONITOR CONNECTION/DECONNECTION NOTIFICATION RECEIVED ========================
2024-05-16T22:27:34.733461Z DEBUG komorebi::monitor_reconciliator::hidden: WM_DEVICECHANGE event received with DBT_DEVNODES_CHANGED - display added or removed
2024-05-16T22:27:34.733623Z DEBUG komorebi::monitor_reconciliator: handling display connection change notification
2024-05-16T22:27:34.736361Z DEBUG komorebi::monitor_reconciliator: monitor counts match, reconciliation not required
2024-05-16T22:27:34.881634Z DEBUG process_event{event=Destroy(ObjectDestroy, Window { hwnd: 724780 })}:should_manage{self=Window { hwnd: 724780 } event=Some(Destroy(ObjectDestroy, Window { h
wnd: 724780 }))}: komorebi::window: ignoring (exe: logioptionsplus_agent.exe, title: Logi_Devio_MainWindow, event: Destroy (WinEvent: ObjectDestroy, Window: (hwnd: 724780, title: Logi_Devio_MainWindow, exe: logioptionsplus_agent.exe, class: Logi_Devio_MainWindow)))
2024-05-16T22:27:35.670597Z INFO process_event{event=Destroy(ObjectDestroy, Window { hwnd: 5510610 })}: komorebi::process_event: processed: (hwnd: 5510610)
2024-05-16T22:27:37.405290Z INFO process_event{event=FocusChange(SystemForeground, Window { hwnd: 202336 })}:update_focused_workspace{follow_focus=true trigger_focus=false}: komorebi::window_manager: updating
2024-05-16T22:27:37.413683Z ERROR komorebi::process_event:
0: there is no container/window
Location:
komorebi\src\workspace.rs:466
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ BACKTRACE โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โฎ 11 frames hidden โฎ
12: komorebi::workspace::impl$1::focus_container_by_window::closure$0<unknown>
at C:\Users\LGUG2Z\komorebi\komorebi\src\workspace.rs:466
13: enum2$<core::option::Option<usize> >::ok_or_else<usize,eyre::Report,komorebi::workspace::impl$1::focus_container_by_window::closure_env$0><unknown>
at /rustc/aedd173a2c086e558c2b66d3743b344f977621a7\library\core\src\option.rs:1231
14: komorebi::workspace::Workspace::focus_container_by_window<unknown>
at C:\Users\LGUG2Z\komorebi\komorebi\src\workspace.rs:464
15: komorebi::window_manager::WindowManager::process_event<unknown>
at C:\Users\LGUG2Z\komorebi\komorebi\src\process_event.rs:261
16: komorebi::process_event::listen_for_events::closure$0<unknown>
at C:\Users\LGUG2Z\komorebi\komorebi\src\process_event.rs:44
17: core::hint::black_box<unknown>
at /rustc/aedd173a2c086e558c2b66d3743b344f977621a7\library\core\src\hint.rs:334
โฎ 12 frames hidden โฎ
Run with COLORBT_SHOW_HIDDEN=1 environment variable to disable frame filtering.
Run with RUST_BACKTRACE=full to include source snippets.
Warning: SpanTrace capture is Unsupported.
Ensure that you've setup a tracing-error ErrorLayer and the semver versions are compatible
2024-05-16T22:27:43.573979Z INFO process_event{event=Destroy(ObjectDestroy, Window { hwnd: 5641682 })}: komorebi::process_event: processed: (hwnd: 5641682)
2024-05-16T22:27:44.014185Z DEBUG process_event{event=Cloak(ObjectCloaked, Window { hwnd: 132340 })}:should_manage{self=Window { hwnd: 132340 } event=Some(Cloak(ObjectCloaked, Window { hwnd:
132340 }))}: komorebi::window: ignoring (exe: LockApp.exe, title: Windows Default Lock Screen, event: Cloak (WinEvent: ObjectCloaked, Window: (hwnd: 132340, title: Windows Default Lock Screen, exe: LockApp.exe, class: Windows.UI.Core.CoreWindow)))
2024-05-16T22:27:44.015663Z DEBUG process_event{event=Cloak(ObjectCloaked, Window { hwnd: 196640 })}:should_manage{self=Window { hwnd: 196640 } event=Some(Cloak(ObjectCloaked, Window { hwnd:
196640 }))}: komorebi::window: ignoring (exe: LockApp.exe, title: Default IME, event: Cloak (WinEvent: ObjectCloaked, Window: (hwnd: 196640, title: Default IME, exe: LockApp.exe, class: IME)))
2024-05-16T22:27:44.017071Z DEBUG process_event{event=Cloak(ObjectCloaked, Window { hwnd: 66862 })}:should_manage{self=Window { hwnd: 66862 } event=Some(Cloak(ObjectCloaked, Window { hwnd: 6
6862 }))}: komorebi::window: ignoring (exe: LockApp.exe, title: MSCTFIME UI, event: Cloak (WinEvent: ObjectCloaked, Window: (hwnd: 66862, title: MSCTFIME UI, exe: LockApp.exe, class: MSCTFIME UI)))
2024-05-16T22:27:44.021854Z DEBUG process_event{event=FocusChange(SystemForeground, Window { hwnd: 201356 })}:should_manage{self=Window { hwnd: 201356 } event=Some(FocusChange(SystemForegrou
nd, Window { hwnd: 201356 }))}: komorebi::window: ignoring (exe: explorer.exe, title: UnlockingWindow, event: FocusChange (WinEvent: SystemForeground, Window: (hwnd: 201356, title: UnlockingWindow, exe: explorer.exe, class: LockScreenControllerProxyWindow)))
2024-05-16T22:27:44.596069Z INFO process_event{event=Destroy(ObjectDestroy, Window { hwnd: 595548 })}: komorebi::process_event: processed: (hwnd: 595548)
2024-05-16T22:27:45.032308Z DEBUG process_event{event=FocusChange(SystemForeground, Window { hwnd: 1578510 })}:should_manage{self=Window { hwnd: 1578510 } event=Some(FocusChange(SystemForegr
ound, Window { hwnd: 1578510 }))}: komorebi::window: ignoring (exe: DDM.exe, title: EAGrid, event: FocusChange (WinEvent: SystemForeground, Window: (hwnd: 1578510, title: EAGrid, exe: DDM.exe, class: WindowsForms10.Window.8.app.0.5c39d4_r3_ad1)))
================ MONITOR CONNECTION/DECONNECTION NOTIFICATION RECEIVED ========================
2024-05-16T22:27:45.419312Z DEBUG komorebi::monitor_reconciliator::hidden: WM_DEVICECHANGE event received with DBT_DEVNODES_CHANGED - display added or removed
2024-05-16T22:27:45.419576Z DEBUG komorebi::monitor_reconciliator: handling display connection change notification
2024-05-16T22:27:45.424649Z DEBUG komorebi::monitor_reconciliator: monitor counts match, reconciliation not required
================ MONITOR CONNECTION/DECONNECTION NOTIFICATION RECEIVED ========================
2024-05-16T22:27:45.430830Z DEBUG komorebi::monitor_reconciliator::hidden: WM_DEVICECHANGE event received with DBT_DEVNODES_CHANGED - display added or removed
2024-05-16T22:27:45.431055Z DEBUG komorebi::monitor_reconciliator: handling display connection change notification
2024-05-16T22:27:45.436313Z DEBUG komorebi::monitor_reconciliator: monitor counts match, reconciliation not required
2024-05-16T22:27:48.532561Z DEBUG process_event{event=FocusChange(SystemForeground, Window { hwnd: 1839276 })}:should_manage{self=Window { hwnd: 1839276 } event=Some(FocusChange(SystemForegr
ound, Window { hwnd: 1839276 }))}: komorebi::window: ignoring (exe: DDM.exe, title: EAGrid, event: FocusChange (WinEvent: SystemForeground, Window: (hwnd: 1839276, title: EAGrid, exe: DDM.exe, class: WindowsForms10.Window.8.app.0.5c39d4_r3_ad1)))
2024-05-16T22:27:50.596637Z DEBUG process_event{event=Hide(ObjectHide, Window { hwnd: 725268 })}:should_manage{self=Window { hwnd: 725268 } event=Some(Hide(ObjectHide, Window { hwnd: 725268
}))}: komorebi::window: ignoring (exe: explorer.exe, title: Backstop Window, event: Hide (WinEvent: ObjectHide, Window: (hwnd: 725268, title: Backstop Window, exe: explorer.exe, class: LockScreenBackstopFrame)))
2024-05-16T22:27:50.598534Z DEBUG process_event{event=Hide(ObjectHide, Window { hwnd: 4722340 })}:should_manage{self=Window { hwnd: 4722340 } event=Some(Hide(ObjectHide, Window { hwnd: 47223
40 }))}: komorebi::window: ignoring (exe: explorer.exe, title: Input Occlusion Window, event: Hide (WinEvent: ObjectHide, Window: (hwnd: 4722340, title: Input Occlusion Window, exe: explorer.exe, class: LockScreenInputOcclusionFrame)))
2024-05-16T22:27:50.721371Z INFO process_event{event=Destroy(ObjectDestroy, Window { hwnd: 71288 })}: komorebi::process_event: processed: (hwnd: 71288)
I did the second test by WIN + L keys to lock my screen. My monitors turned off in a minute or so and looking at my power settings, my computer did not seem to go to sleep (set to 5 min, and I logged in after about 2 min)
I have 2 displays connected to a laptop, 1 USB-C the other via HDMI. I don't use the laptop screen as it is closed.
(I will do the test later, it is time for me to sleep ๐ )
Thank you for all the help to debug this. You have been most helpful!
After sleep: When I grab a window by the title bar and move it anywhere, it behaves as if it is in floating mode, but snaps back into its original place when I click an other window.
I think I missed this part of the original issue post - I was thinking that all of the containers had been removed from the state after restoring from a suspended state, but it sounds like they require a single interaction with any one of them before they are all "snappy" again?
Does running the komorebic retile
shortcut also work for making them snappy again?
I did a test and now it seems like that all I need to do is to lock the screen and wait for my monitors to turn off (disconnect from the laptop)
This is what happened:
komorebic retile
and the window snaps back into placeDid this change anything regarding the test with komorebic toggle-pause
command you asked me to do? I can do that now that I have time.
This is what I got this time
PS D:\Workspaces\git\LGUG2Z\komorebi> $Env:RUST_LOG = "debug"; cargo run --package komorebi
Finished dev [unoptimized + debuginfo] target(s) in 0.12s
Running `target\debug\komorebi.exe`
2024-05-17T17:17:00.753722Z INFO foreground_lock_timeout: komorebi::windows_api: current value of ForegroundLockTimeout is 0
2024-05-17T17:17:00.755796Z INFO komorebi: creating window manager from static configuration file: C:\Users\{UserName}\komorebi.json
2024-05-17T17:17:00.762853Z INFO init: komorebi::window_manager: initialising
2024-05-17T17:17:00.881075Z INFO komorebi::process_command: listening on komorebi.sock
2024-05-17T17:17:00.884339Z INFO komorebi::process_event: listening
2024-05-17T17:17:00.884561Z INFO komorebi::workspace_reconciliator: listening
2024-05-17T17:17:00.884621Z INFO komorebi::border_manager: listening
2024-05-17T17:17:00.887483Z INFO komorebi::monitor_reconciliator: created hidden window to listen for monitor-related events
2024-05-17T17:17:00.887793Z INFO komorebi::monitor_reconciliator: listening
2024-05-17T17:17:08.967567Z INFO process_event{event=MoveResizeStart(SystemMoveSizeStart, Window { hwnd: 9440954 })}: komorebi::process_event: processed: (hwnd: 9440954, title: Developer PowerShell Visual Studio Community 2022 17.9.34902.65, exe: WindowsTerminal.exe, class: CASCADIA_HOSTING_WINDOW_CLASS)
2024-05-17T17:17:08.972194Z DEBUG process_event{event=Show(ObjectShow, Window { hwnd: 102109080 })}:should_manage{self=Window { hwnd: 102109080 } event=Some(Show(ObjectShow, Window { hwnd: 102109080 }))}: komorebi::window: ignoring (exe: explorer.exe, title: DesktopWindowXamlSource, event: Show (WinEvent: ObjectShow, Window: (hwnd: 102109080, title: DesktopWindowXamlSource, exe: explorer.exe, class: Windows.UI.Composition.DesktopWindowContentBridge)))
2024-05-17T17:17:09.616386Z INFO process_event{event=MoveResizeEnd(SystemMoveSizeEnd, Window { hwnd: 9440954 })}:focus_monitor{idx=1}: komorebi::window_manager: focusing monitor
2024-05-17T17:17:09.616840Z INFO process_event{event=MoveResizeEnd(SystemMoveSizeEnd, Window { hwnd: 9440954 })}: komorebi::process_event: moving with mouse
2024-05-17T17:17:09.616984Z INFO process_event{event=MoveResizeEnd(SystemMoveSizeEnd, Window { hwnd: 9440954 })}:focus_container{idx=0}: komorebi::workspace: focusing container
2024-05-17T17:17:09.617124Z INFO process_event{event=MoveResizeEnd(SystemMoveSizeEnd, Window { hwnd: 9440954 })}:update_focused_workspace{follow_focus=false trigger_focus=false}: komorebi::window_manager: updating
2024-05-17T17:17:09.619267Z INFO process_event{event=MoveResizeEnd(SystemMoveSizeEnd, Window { hwnd: 9440954 })}: komorebi::process_event: processed: (hwnd: 9440954, title: Developer PowerShell Visual Studio Community 2022 17.9.34902.65, exe: WindowsTerminal.exe, class: CASCADIA_HOSTING_WINDOW_CLASS)
2024-05-17T17:17:09.809894Z DEBUG process_event{event=Hide(ObjectHide, Window { hwnd: 102109080 })}:should_manage{self=Window { hwnd: 102109080 } event=Some(Hide(ObjectHide, Window { hwnd: 102109080 }))}: komorebi::window: ignoring (exe: explorer.exe, title: DesktopWindowXamlSource, event: Hide (WinEvent: ObjectHide, Window: (hwnd: 102109080, title: DesktopWindowXamlSource, exe: explorer.exe, class: Windows.UI.Composition.DesktopWindowContentBridge)))
2024-05-17T17:17:14.330480Z DEBUG process_event{event=Uncloak(ObjectUncloaked, Window { hwnd: 66112 })}:should_manage{self=Window { hwnd: 66112 } event=Some(Uncloak(ObjectUncloaked, Window { hwnd: 66112 }))}: komorebi::window: ignoring (exe: StartMenuExperienceHost.exe, title: Start, event: Uncloak (WinEvent: ObjectUncloaked, Window: (hwnd: 66112, title: Start, exe: StartMenuExperienceHost.exe, class: Windows.UI.Core.CoreWindow)))
2024-05-17T17:17:14.331417Z DEBUG process_event{event=Uncloak(ObjectUncloaked, Window { hwnd: 66116 })}:should_manage{self=Window { hwnd: 66116 } event=Some(Uncloak(ObjectUncloaked, Window { hwnd: 66116 }))}: komorebi::window: ignoring (exe: StartMenuExperienceHost.exe, title: Default IME, event: Uncloak (WinEvent: ObjectUncloaked, Window: (hwnd: 66116, title: Default IME, exe: StartMenuExperienceHost.exe, class: IME)))
2024-05-17T17:17:14.332720Z DEBUG process_event{event=Uncloak(ObjectUncloaked, Window { hwnd: 394566 })}:should_manage{self=Window { hwnd: 394566 } event=Some(Uncloak(ObjectUncloaked, Window { hwnd: 394566 }))}: komorebi::window: ignoring (exe: StartMenuExperienceHost.exe, title: MSCTFIME UI, event: Uncloak (WinEvent: ObjectUncloaked, Window: (hwnd: 394566, title: MSCTFIME UI, exe: StartMenuExperienceHost.exe, class: MSCTFIME UI)))
2024-05-17T17:17:14.333486Z DEBUG process_event{event=Uncloak(ObjectUncloaked, Window { hwnd: 855244 })}:should_manage{self=Window { hwnd: 855244 } event=Some(Uncloak(ObjectUncloaked, Window { hwnd: 855244 }))}: komorebi::window: ignoring (exe: StartMenuExperienceHost.exe, title: PopupHost, event: Uncloak (WinEvent: ObjectUncloaked, Window: (hwnd: 855244, title: PopupHost, exe: StartMenuExperienceHost.exe, class: Xaml_WindowedPopupClass)))
2024-05-17T17:17:14.334526Z DEBUG process_event{event=Uncloak(ObjectUncloaked, Window { hwnd: 153947208 })}:should_manage{self=Window { hwnd: 153947208 } event=Some(Uncloak(ObjectUncloaked, Window { hwnd: 153947208 }))}: komorebi::window: ignoring (exe: StartMenuExperienceHost.exe, title: PopupHost, event: Uncloak (WinEvent: ObjectUncloaked, Window: (hwnd: 153947208, title: PopupHost, exe: StartMenuExperienceHost.exe, class: Xaml_WindowedPopupClass)))
2024-05-17T17:17:14.336161Z DEBUG process_event{event=Uncloak(ObjectUncloaked, Window { hwnd: 131634 })}:should_manage{self=Window { hwnd: 131634 } event=Some(Uncloak(ObjectUncloaked, Window { hwnd: 131634 }))}: komorebi::window: ignoring (exe: SearchHost.exe, title: Search, event: Uncloak (WinEvent: ObjectUncloaked, Window: (hwnd: 131634, title: Search, exe: SearchHost.exe, class: Windows.UI.Core.CoreWindow)))
2024-05-17T17:17:14.337151Z DEBUG process_event{event=Uncloak(ObjectUncloaked, Window { hwnd: 66100 })}:should_manage{self=Window { hwnd: 66100 } event=Some(Uncloak(ObjectUncloaked, Window { hwnd: 66100 }))}: komorebi::window: ignoring (exe: SearchHost.exe, title: Default IME, event: Uncloak (WinEvent: ObjectUncloaked, Window: (hwnd: 66100, title: Default IME, exe: SearchHost.exe, class: IME)))
2024-05-17T17:17:14.337424Z DEBUG process_event{event=Uncloak(ObjectUncloaked, Window { hwnd: 329108 })}:should_manage{self=Window { hwnd: 329108 } event=Some(Uncloak(ObjectUncloaked, Window { hwnd: 329108 }))}: komorebi::window: ignoring (exe: SearchHost.exe, title: MSCTFIME UI, event: Uncloak (WinEvent: ObjectUncloaked, Window: (hwnd: 329108, title: MSCTFIME UI, exe: SearchHost.exe, class: MSCTFIME UI)))
2024-05-17T17:17:14.337634Z DEBUG process_event{event=Uncloak(ObjectUncloaked, Window { hwnd: 66194 })}:should_manage{self=Window { hwnd: 66194 } event=Some(Uncloak(ObjectUncloaked, Window { hwnd: 66194 }))}: komorebi::window: ignoring (exe: SearchHost.exe, title: Default IME, event: Uncloak (WinEvent: ObjectUncloaked, Window: (hwnd: 66194, title: Default IME, exe: SearchHost.exe, class: IME)))
2024-05-17T17:17:14.349992Z DEBUG process_event{event=FocusChange(SystemForeground, Window { hwnd: 131634 })}:should_manage{self=Window { hwnd: 131634 } event=Some(FocusChange(SystemForeground, Window { hwnd: 131634 }))}: komorebi::window: ignoring (exe: SearchHost.exe, title: Search, event: FocusChange (WinEvent: SystemForeground, Window: (hwnd: 131634, title: Search, exe: SearchHost.exe, class: Windows.UI.Core.CoreWindow)))
2024-05-17T17:17:15.865599Z DEBUG process_event{event=Show(ObjectShow, Window { hwnd: 57675710 })}:should_manage{self=Window { hwnd: 57675710 } event=Some(Show(ObjectShow, Window { hwnd: 57675710 }))}: komorebi::window: ignoring (exe: StartMenuExperienceHost.exe, title: PopupHost, event: Show (WinEvent: ObjectShow, Window: (hwnd: 57675710, title: PopupHost, exe: StartMenuExperienceHost.exe, class: Xaml_WindowedPopupClass)))
2024-05-17T17:17:16.466524Z DEBUG process_event{event=FocusChange(SystemForeground, Window { hwnd: 66112 })}:should_manage{self=Window { hwnd: 66112 } event=Some(FocusChange(SystemForeground, Window { hwnd: 66112 }))}: komorebi::window: ignoring (exe: StartMenuExperienceHost.exe, title: Start, event: FocusChange (WinEvent: SystemForeground, Window: (hwnd: 66112, title: Start, exe: StartMenuExperienceHost.exe, class: Windows.UI.Core.CoreWindow)))
2024-05-17T17:17:16.472174Z DEBUG process_event{event=MouseCapture(SystemCaptureStart, Window { hwnd: 66112 })}:should_manage{self=Window { hwnd: 66112 } event=Some(MouseCapture(SystemCaptureStart, Window { hwnd: 66112 }))}: komorebi::window: ignoring (exe: StartMenuExperienceHost.exe, title: Start, event: MouseCapture (WinEvent: SystemCaptureStart, Window: (hwnd: 66112, title: Start, exe: StartMenuExperienceHost.exe, class: Windows.UI.Core.CoreWindow)))
2024-05-17T17:17:16.544464Z DEBUG process_event{event=MouseCapture(SystemCaptureEnd, Window { hwnd: 66112 })}:should_manage{self=Window { hwnd: 66112 } event=Some(MouseCapture(SystemCaptureEnd, Window { hwnd: 66112 }))}: komorebi::window: ignoring (exe: StartMenuExperienceHost.exe, title: Start, event: MouseCapture (WinEvent: SystemCaptureEnd, Window: (hwnd: 66112, title: Start, exe: StartMenuExperienceHost.exe, class: Windows.UI.Core.CoreWindow)))
2024-05-17T17:17:16.553020Z DEBUG process_event{event=Show(ObjectShow, Window { hwnd: 855244 })}:should_manage{self=Window { hwnd: 855244 } event=Some(Show(ObjectShow, Window { hwnd: 855244 }))}: komorebi::window: ignoring (exe: StartMenuExperienceHost.exe, title: PopupHost, event: Show (WinEvent: ObjectShow, Window: (hwnd: 855244, title: PopupHost, exe: StartMenuExperienceHost.exe, class: Xaml_WindowedPopupClass)))
2024-05-17T17:17:16.675876Z DEBUG process_event{event=Hide(ObjectHide, Window { hwnd: 57675710 })}:should_manage{self=Window { hwnd: 57675710 } event=Some(Hide(ObjectHide, Window { hwnd: 57675710 }))}: komorebi::window: ignoring (exe: StartMenuExperienceHost.exe, title: PopupHost, event: Hide (WinEvent: ObjectHide, Window: (hwnd: 57675710, title: PopupHost)))
2024-05-17T17:17:18.260612Z DEBUG process_event{event=Show(ObjectShow, Window { hwnd: 57741246 })}:should_manage{self=Window { hwnd: 57741246 } event=Some(Show(ObjectShow, Window { hwnd: 57741246 }))}: komorebi::window: ignoring (exe: StartMenuExperienceHost.exe, title: PopupHost, event: Show (WinEvent: ObjectShow, Window: (hwnd: 57741246, title: PopupHost, exe: StartMenuExperienceHost.exe, class: Xaml_WindowedPopupClass)))
2024-05-17T17:17:20.776574Z DEBUG process_event{event=Hide(ObjectHide, Window { hwnd: 855244 })}:should_manage{self=Window { hwnd: 855244 } event=Some(Hide(ObjectHide, Window { hwnd: 855244 }))}: komorebi::window: ignoring (exe: StartMenuExperienceHost.exe, title: PopupHost, event: Hide (WinEvent: ObjectHide, Window: (hwnd: 855244, title: PopupHost, exe: StartMenuExperienceHost.exe, class: Xaml_WindowedPopupClass)))
2024-05-17T17:17:21.390982Z DEBUG process_event{event=Cloak(ObjectCloaked, Window { hwnd: 725552 })}:should_manage{self=Window { hwnd: 725552 } event=Some(Cloak(ObjectCloaked, Window { hwnd: 725552 }))}: komorebi::window: ignoring (exe: explorer.exe, title: Backstop Window, event: Cloak (WinEvent: ObjectCloaked, Window: (hwnd: 725552, title: Backstop Window, exe: explorer.exe, class: LockScreenBackstopFrame)))
2024-05-17T17:17:21.392730Z DEBUG process_event{event=Cloak(ObjectCloaked, Window { hwnd: 18026370 })}:should_manage{self=Window { hwnd: 18026370 } event=Some(Cloak(ObjectCloaked, Window { hwnd: 18026370 }))}: komorebi::window: ignoring (exe: explorer.exe, title: Default IME, event: Cloak (WinEvent: ObjectCloaked, Window: (hwnd: 18026370, title: Default IME, exe: explorer.exe, class: IME)))
2024-05-17T17:17:21.395790Z DEBUG process_event{event=Uncloak(ObjectUncloaked, Window { hwnd: 725552 })}:should_manage{self=Window { hwnd: 725552 } event=Some(Uncloak(ObjectUncloaked, Window { hwnd: 725552 }))}: komorebi::window: ignoring (exe: explorer.exe, title: Backstop Window, event: Uncloak (WinEvent: ObjectUncloaked, Window: (hwnd: 725552, title: Backstop Window, exe: explorer.exe, class: LockScreenBackstopFrame)))
2024-05-17T17:17:21.397882Z DEBUG process_event{event=Uncloak(ObjectUncloaked, Window { hwnd: 18026370 })}:should_manage{self=Window { hwnd: 18026370 } event=Some(Uncloak(ObjectUncloaked, Window { hwnd: 18026370 }))}: komorebi::window: ignoring (exe: explorer.exe, title: Default IME, event: Uncloak (WinEvent: ObjectUncloaked, Window: (hwnd: 18026370, title: Default IME, exe: explorer.exe, class: IME)))
2024-05-17T17:17:21.402400Z DEBUG process_event{event=Uncloak(ObjectUncloaked, Window { hwnd: 135402 })}:should_manage{self=Window { hwnd: 135402 } event=Some(Uncloak(ObjectUncloaked, Window { hwnd: 135402 }))}: komorebi::window: ignoring (exe: explorer.exe, title: Input Occlusion Window, event: Uncloak (WinEvent: ObjectUncloaked, Window: (hwnd: 135402, title: Input Occlusion Window, exe: explorer.exe, class: LockScreenInputOcclusionFrame)))
2024-05-17T17:17:21.413887Z DEBUG process_event{event=Show(ObjectShow, Window { hwnd: 725552 })}:should_manage{self=Window { hwnd: 725552 } event=Some(Show(ObjectShow, Window { hwnd: 725552 }))}: komorebi::window: ignoring (exe: explorer.exe, title: Backstop Window, event: Show (WinEvent: ObjectShow, Window: (hwnd: 725552, title: Backstop Window, exe: explorer.exe, class: LockScreenBackstopFrame)))
2024-05-17T17:17:21.417701Z DEBUG process_event{event=Show(ObjectShow, Window { hwnd: 135402 })}:should_manage{self=Window { hwnd: 135402 } event=Some(Show(ObjectShow, Window { hwnd: 135402 }))}: komorebi::window: ignoring (exe: explorer.exe, title: Input Occlusion Window, event: Show (WinEvent: ObjectShow, Window: (hwnd: 135402, title: Input Occlusion Window, exe: explorer.exe, class: LockScreenInputOcclusionFrame)))
2024-05-17T17:17:21.554912Z DEBUG komorebi::monitor_reconciliator::hidden: WM_DEVICECHANGE event received with DBT_DEVNODES_CHANGED - display added or removed
2024-05-17T17:17:21.555506Z DEBUG komorebi::monitor_reconciliator: handling display connection change notification
2024-05-17T17:17:21.559275Z DEBUG komorebi::monitor_reconciliator: monitor counts match, reconciliation not required
2024-05-17T17:17:21.559942Z DEBUG komorebi::monitor_reconciliator::hidden: WM_DEVICECHANGE event received with DBT_DEVNODES_CHANGED - display added or removed
2024-05-17T17:17:21.560107Z DEBUG komorebi::monitor_reconciliator: handling display connection change notification
2024-05-17T17:17:21.562822Z DEBUG komorebi::monitor_reconciliator: monitor counts match, reconciliation not required
2024-05-17T17:17:21.888470Z DEBUG process_event{event=Show(ObjectShow, Window { hwnd: 200932 })}:should_manage{self=Window { hwnd: 200932 } event=Some(Show(ObjectShow, Window { hwnd: 200932 }))}: komorebi::window: ignoring (exe: explorer.exe, title: DesktopWindowXamlSource, event: Show (WinEvent: ObjectShow, Window: (hwnd: 200932, title: DesktopWindowXamlSource, exe: explorer.exe, class: Windows.UI.Composition.DesktopWindowContentBridge)))
2024-05-17T17:17:22.037143Z DEBUG komorebi::monitor_reconciliator::hidden: WM_DEVICECHANGE event received with DBT_DEVNODES_CHANGED - display added or removed
2024-05-17T17:17:22.037511Z DEBUG komorebi::monitor_reconciliator: handling display connection change notification
2024-05-17T17:17:22.040093Z DEBUG komorebi::monitor_reconciliator: monitor counts match, reconciliation not required
2024-05-17T17:17:22.047911Z DEBUG komorebi::monitor_reconciliator::hidden: WM_DEVICECHANGE event received with DBT_DEVNODES_CHANGED - display added or removed
2024-05-17T17:17:22.048139Z DEBUG komorebi::monitor_reconciliator: handling display connection change notification
2024-05-17T17:17:22.052249Z DEBUG komorebi::monitor_reconciliator: monitor counts match, reconciliation not required
Power > Sleep: Zzzz...Zzzzz
2024-05-17T17:20:15.859792Z DEBUG process_event{event=Hide(ObjectHide, Window { hwnd: 200932 })}:should_manage{self=Window { hwnd: 200932 } event=Some(Hide(ObjectHide, Window { hwnd: 200932 }))}: komorebi::window: ignoring (exe: explorer.exe, title: DesktopWindowXamlSource, event: Hide (WinEvent: ObjectHide, Window: (hwnd: 200932, title: DesktopWindowXamlSource, exe: explorer.exe, class: Windows.UI.Composition.DesktopWindowContentBridge)))
2024-05-17T17:20:15.861085Z DEBUG process_event{event=Destroy(ObjectDestroy, Window { hwnd: 200932 })}:should_manage{self=Window { hwnd: 200932 } event=Some(Destroy(ObjectDestroy, Window { hwnd: 200932 }))}: komorebi::window: ignoring (exe: explorer.exe, title: DesktopWindowXamlSource, event: Destroy (WinEvent: ObjectDestroy, Window: (hwnd: 200932, title: DesktopWindowXamlSource, exe: explorer.exe, class: Windows.UI.Composition.DesktopWindowContentBridge)))
2024-05-17T17:20:15.865148Z DEBUG komorebi::monitor_reconciliator::hidden: WM_DEVICECHANGE event received with DBT_DEVNODES_CHANGED - display added or removed
2024-05-17T17:20:15.865395Z DEBUG komorebi::monitor_reconciliator::hidden: WM_DEVICECHANGE event received with DBT_DEVNODES_CHANGED - display added or removed
2024-05-17T17:20:15.865701Z DEBUG komorebi::monitor_reconciliator: handling display connection change notification
2024-05-17T17:20:15.868606Z DEBUG komorebi::monitor_reconciliator: monitor counts match, reconciliation not required
2024-05-17T17:20:15.868813Z DEBUG komorebi::monitor_reconciliator: handling display connection change notification
2024-05-17T17:20:15.872221Z DEBUG komorebi::monitor_reconciliator: monitor counts match, reconciliation not required
2024-05-17T17:20:15.886677Z INFO process_event{event=Destroy(ObjectDestroy, Window { hwnd: 135392 })}: komorebi::process_event: processed: (hwnd: 135392)
2024-05-17T17:20:15.902098Z DEBUG process_event{event=FocusChange(SystemForeground, Window { hwnd: 14356260 })}:should_manage{self=Window { hwnd: 14356260 } event=Some(FocusChange(SystemForeground, Window { hwnd: 14356260 }))}: komorebi::window: ignoring (exe: explorer.exe, title: UnlockingWindow, event: FocusChange (WinEvent: SystemForeground, Window: (hwnd: 14356260, title: UnlockingWindow, exe: explorer.exe, class: LockScreenControllerProxyWindow)))
2024-05-17T17:20:19.545025Z DEBUG process_event{event=Destroy(ObjectDestroy, Window { hwnd: 135402 })}:should_manage{self=Window { hwnd: 135402 } event=Some(Destroy(ObjectDestroy, Window { hwnd: 135402 }))}: komorebi::window: ignoring (exe: explorer.exe, title: Input Occlusion Window, event: Destroy (WinEvent: ObjectDestroy, Window: (hwnd: 135402, title: Input Occlusion Window, exe: explorer.exe, class: LockScreenInputOcclusionFrame)))
2024-05-17T17:20:19.565694Z DEBUG process_event{event=Uncloak(ObjectUncloaked, Window { hwnd: 266400 })}:should_manage{self=Window { hwnd: 266400 } event=Some(Uncloak(ObjectUncloaked, Window { hwnd: 266400 }))}: komorebi::window: ignoring (exe: explorer.exe, title: Input Occlusion Window, event: Uncloak (WinEvent: ObjectUncloaked, Window: (hwnd: 266400, title: Input Occlusion Window, exe: explorer.exe, class: LockScreenInputOcclusionFrame)))
2024-05-17T17:20:19.569873Z DEBUG process_event{event=Show(ObjectShow, Window { hwnd: 266400 })}:should_manage{self=Window { hwnd: 266400 } event=Some(Show(ObjectShow, Window { hwnd: 266400 }))}: komorebi::window: ignoring (exe: explorer.exe, title: Input Occlusion Window, event: Show (WinEvent: ObjectShow, Window: (hwnd: 266400, title: Input Occlusion Window, exe: explorer.exe, class: LockScreenInputOcclusionFrame)))
2024-05-17T17:20:19.571599Z DEBUG process_event{event=FocusChange(SystemForeground, Window { hwnd: 266400 })}:should_manage{self=Window { hwnd: 266400 } event=Some(FocusChange(SystemForeground, Window { hwnd: 266400 }))}: komorebi::window: ignoring (exe: explorer.exe, title: Input Occlusion Window, event: FocusChange (WinEvent: SystemForeground, Window: (hwnd: 266400, title: Input Occlusion Window, exe: explorer.exe, class: LockScreenInputOcclusionFrame)))
2024-05-17T17:20:19.646425Z DEBUG process_event{event=Uncloak(ObjectUncloaked, Window { hwnd: 987276 })}:should_manage{self=Window { hwnd: 987276 } event=Some(Uncloak(ObjectUncloaked, Window { hwnd: 987276 }))}: komorebi::window: ignoring (exe: explorer.exe, title: Input Occlusion Window, event: Uncloak (WinEvent: ObjectUncloaked, Window: (hwnd: 987276, title: Input Occlusion Window, exe: explorer.exe, class: LockScreenInputOcclusionFrame)))
2024-05-17T17:20:19.650408Z DEBUG process_event{event=Show(ObjectShow, Window { hwnd: 987276 })}:should_manage{self=Window { hwnd: 987276 } event=Some(Show(ObjectShow, Window { hwnd: 987276 }))}: komorebi::window: ignoring (exe: explorer.exe, title: Input Occlusion Window, event: Show (WinEvent: ObjectShow, Window: (hwnd: 987276, title: Input Occlusion Window, exe: explorer.exe, class: LockScreenInputOcclusionFrame)))
2024-05-17T17:20:19.653315Z DEBUG process_event{event=FocusChange(SystemForeground, Window { hwnd: 987276 })}:should_manage{self=Window { hwnd: 987276 } event=Some(FocusChange(SystemForeground, Window { hwnd: 987276 }))}: komorebi::window: ignoring (exe: explorer.exe, title: Input Occlusion Window, event: FocusChange (WinEvent: SystemForeground, Window: (hwnd: 987276, title: Input Occlusion Window, exe: explorer.exe, class: LockScreenInputOcclusionFrame)))
2024-05-17T17:20:19.660516Z DEBUG process_event{event=Destroy(ObjectDestroy, Window { hwnd: 266400 })}:should_manage{self=Window { hwnd: 266400 } event=Some(Destroy(ObjectDestroy, Window { hwnd: 266400 }))}: komorebi::window: ignoring (exe: explorer.exe, title: Input Occlusion Window, event: Destroy (WinEvent: ObjectDestroy, Window: (hwnd: 266400, title: Input Occlusion Window, exe: explorer.exe, class: LockScreenInputOcclusionFrame)))
2024-05-17T17:20:20.112029Z DEBUG process_event{event=Hide(ObjectHide, Window { hwnd: 725552 })}:should_manage{self=Window { hwnd: 725552 } event=Some(Hide(ObjectHide, Window { hwnd: 725552 }))}: komorebi::window: ignoring (exe: explorer.exe, title: Backstop Window, event: Hide (WinEvent: ObjectHide, Window: (hwnd: 725552, title: Backstop Window, exe: explorer.exe, class: LockScreenBackstopFrame)))
2024-05-17T17:20:20.139864Z DEBUG process_event{event=Hide(ObjectHide, Window { hwnd: 987276 })}:should_manage{self=Window { hwnd: 987276 } event=Some(Hide(ObjectHide, Window { hwnd: 987276 }))}: komorebi::window: ignoring (exe: explorer.exe, title: Input Occlusion Window, event: Hide (WinEvent: ObjectHide, Window: (hwnd: 987276, title: Input Occlusion Window, exe: explorer.exe, class: LockScreenInputOcclusionFrame)))
2024-05-17T17:20:20.220648Z DEBUG komorebi::monitor_reconciliator::hidden: WM_SETTINGCHANGE event received with SPI_SETWORKAREA - work area changed (probably butterytaskbar or something similar)
2024-05-17T17:20:20.220934Z DEBUG komorebi::monitor_reconciliator: handling work area changed notification
2024-05-17T17:20:20.240101Z DEBUG komorebi::monitor_reconciliator::hidden: WM_SETTINGCHANGE event received with SPI_SETWORKAREA - work area changed (probably butterytaskbar or something similar)
2024-05-17T17:20:20.250970Z DEBUG komorebi::monitor_reconciliator: work areas match, reconciliation not required for DEL4277-5&1047835a&1&UID4352
2024-05-17T17:20:20.273925Z DEBUG komorebi::monitor_reconciliator: work areas match, reconciliation not required for DEL4279-5&1047835a&1&UID4354
2024-05-17T17:20:20.274164Z DEBUG komorebi::monitor_reconciliator: handling work area changed notification
2024-05-17T17:20:20.296989Z DEBUG komorebi::monitor_reconciliator::hidden: WM_DISPLAYCHANGE event received with wparam: 32- work area or display resolution changed
2024-05-17T17:20:20.304846Z DEBUG komorebi::monitor_reconciliator: work areas match, reconciliation not required for DEL4277-5&1047835a&1&UID4352
2024-05-17T17:20:20.317472Z DEBUG komorebi::monitor_reconciliator: work areas match, reconciliation not required for DEL4279-5&1047835a&1&UID4354
2024-05-17T17:20:20.319753Z DEBUG komorebi::monitor_reconciliator: handling resolution/scaling changed notification
2024-05-17T17:20:20.342039Z DEBUG komorebi::monitor_reconciliator: resolutions match, reconciliation not required for DEL4277-5&1047835a&1&UID4352
2024-05-17T17:20:20.354375Z DEBUG komorebi::monitor_reconciliator: resolutions match, reconciliation not required for DEL4279-5&1047835a&1&UID4354
2024-05-17T17:20:20.365680Z INFO process_event{event=Destroy(ObjectDestroy, Window { hwnd: 266596 })}: komorebi::process_event: processed: (hwnd: 266596)
2024-05-17T17:20:20.367140Z DEBUG process_event{event=FocusChange(SystemForeground, Window { hwnd: 14356260 })}:should_manage{self=Window { hwnd: 14356260 } event=Some(FocusChange(SystemForeground, Window { hwnd: 14356260 }))}: komorebi::window: ignoring (exe: explorer.exe, title: UnlockingWindow, event: FocusChange (WinEvent: SystemForeground, Window: (hwnd: 14356260, title: UnlockingWindow, exe: explorer.exe, class: LockScreenControllerProxyWindow)))
2024-05-17T17:20:20.677703Z INFO process_event{event=Destroy(ObjectDestroy, Window { hwnd: 528476 })}: komorebi::process_event: processed: (hwnd: 528476, title: DpiTrackingWindow, exe: devenv.exe, class: Static)
2024-05-17T17:20:21.209509Z DEBUG process_event{event=FocusChange(SystemForeground, Window { hwnd: 131634 })}:should_manage{self=Window { hwnd: 131634 } event=Some(FocusChange(SystemForeground, Window { hwnd: 131634 }))}: komorebi::window: ignoring (exe: SearchHost.exe, title: Search, event: FocusChange (WinEvent: SystemForeground, Window: (hwnd: 131634, title: Search, exe: SearchHost.exe, class: Windows.UI.Core.CoreWindow)))
2024-05-17T17:20:21.850898Z DEBUG komorebi::monitor_reconciliator::hidden: WM_DEVICECHANGE event received with DBT_DEVNODES_CHANGED - display added or removed
2024-05-17T17:20:21.851078Z DEBUG komorebi::monitor_reconciliator: handling display connection change notification
2024-05-17T17:20:21.853111Z DEBUG komorebi::monitor_reconciliator: monitor counts match, reconciliation not required
2024-05-17T17:20:21.872472Z DEBUG komorebi::monitor_reconciliator::hidden: WM_DEVICECHANGE event received with DBT_DEVNODES_CHANGED - display added or removed
2024-05-17T17:20:21.872708Z DEBUG komorebi::monitor_reconciliator: handling display connection change notification
2024-05-17T17:20:21.875084Z DEBUG komorebi::monitor_reconciliator: monitor counts match, reconciliation not required
2024-05-17T17:20:21.924568Z INFO process_command{TogglePause}: komorebi::process_command: pausing
2024-05-17T17:20:21.925634Z INFO process_command{TogglePause}: komorebi::process_command: processed
2024-05-17T17:20:24.542279Z DEBUG komorebi::monitor_reconciliator::hidden: WM_DEVICECHANGE event received with DBT_DEVNODES_CHANGED - display added or removed
2024-05-17T17:20:24.542710Z DEBUG komorebi::monitor_reconciliator: handling display connection change notification
2024-05-17T17:20:24.545028Z DEBUG komorebi::monitor_reconciliator: monitor counts match, reconciliation not required
2024-05-17T17:20:26.482031Z DEBUG komorebi::monitor_reconciliator::hidden: WM_DEVICECHANGE event received with DBT_DEVNODES_CHANGED - display added or removed
2024-05-17T17:20:26.482327Z DEBUG komorebi::monitor_reconciliator: handling display connection change notification
2024-05-17T17:20:26.483913Z DEBUG komorebi::monitor_reconciliator: monitor counts match, reconciliation not required
2024-05-17T17:20:26.820995Z DEBUG komorebi::monitor_reconciliator::hidden: WM_DEVICECHANGE event received with DBT_DEVNODES_CHANGED - display added or removed
2024-05-17T17:20:26.821899Z DEBUG komorebi::monitor_reconciliator: handling display connection change notification
2024-05-17T17:20:26.823955Z DEBUG komorebi::monitor_reconciliator: monitor counts match, reconciliation not required
2024-05-17T17:20:43.876749Z INFO process_command{State}: komorebi::process_command: replying to state
2024-05-17T17:20:43.877195Z INFO process_command{State}: komorebi::process_command: replying to state done
2024-05-17T17:20:43.877613Z INFO process_command{State}: komorebi::process_command: processed
2024-05-17T17:21:13.605533Z INFO process_command{TogglePause}: komorebi::process_command: resuming
2024-05-17T17:21:13.607069Z INFO process_command{TogglePause}: komorebi::process_command: processed
2024-05-17T17:21:19.880355Z INFO process_event{event=FocusChange(SystemForeground, Window { hwnd: 9440954 })}:focus_window{idx=0}:
komorebi::container: focusing window
2024-05-17T17:21:19.891629Z INFO process_event{event=FocusChange(SystemForeground, Window { hwnd: 9440954 })}:update_focused_workspace{follow_focus=true trigger_focus=false}: komorebi::window_manager: updating
2024-05-17T17:21:19.892019Z INFO process_event{event=FocusChange(SystemForeground, Window { hwnd: 9440954 })}:focus_window{idx=0}:
komorebi::container: focusing window
2024-05-17T17:21:19.892182Z INFO process_event{event=FocusChange(SystemForeground, Window { hwnd: 9440954 })}:focus_container{idx=0}: komorebi::workspace: focusing container
2024-05-17T17:21:19.893236Z INFO process_event{event=FocusChange(SystemForeground, Window { hwnd: 9440954 })}: komorebi::process_event: processed: (hwnd: 9440954, title: Developer PowerShell Visual Studio Community 2022 17.9.34902.65, exe: WindowsTerminal.exe, class: CASCADIA_HOSTING_WINDOW_CLASS)
2024-05-17T17:21:20.399803Z INFO process_event{event=MoveResizeStart(SystemMoveSizeStart, Window { hwnd: 9440954 })}: komorebi::process_event: processed: (hwnd: 9440954, title: Developer PowerShell Visual Studio Community 2022 17.9.34902.65, exe: WindowsTerminal.exe, class: CASCADIA_HOSTING_WINDOW_CLASS)
2024-05-17T17:21:20.406699Z DEBUG process_event{event=Show(ObjectShow, Window { hwnd: 397470 })}:should_manage{self=Window { hwnd: 397470 } event=Some(Show(ObjectShow, Window { hwnd: 397470 }))}: komorebi::window: ignoring (exe: explorer.exe, title: DesktopWindowXamlSource, event: Show (WinEvent: ObjectShow, Window: (hwnd: 397470, title: DesktopWindowXamlSource, exe: explorer.exe, class: Windows.UI.Composition.DesktopWindowContentBridge)))
2024-05-17T17:21:21.133407Z ERROR komorebi::process_event:
0: cannot get monitor idx from current position
Location:
komorebi\src\process_event.rs:403
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ BACKTRACE โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โฎ 11 frames hidden โฎ
12: komorebi::process_event::impl$0::process_event::closure$6<unknown>
at D:\Workspaces\git\LGUG2Z\komorebi\komorebi\src\process_event.rs:403
13: enum2$<core::option::Option<usize> >::ok_or_else<usize,eyre::Report,komorebi::process_event::impl$0::process_event::closure_env$6><unknown>
at /rustc/7cf61ebde7b22796c69757901dd346d0fe70bd97\library\core\src\option.rs:1231
14: komorebi::window_manager::WindowManager::process_event<unknown>
at D:\Workspaces\git\LGUG2Z\komorebi\komorebi\src\process_event.rs:401
15: komorebi::process_event::listen_for_events::closure$0<unknown>
at D:\Workspaces\git\LGUG2Z\komorebi\komorebi\src\process_event.rs:47
16: core::hint::black_box<unknown>
at /rustc/7cf61ebde7b22796c69757901dd346d0fe70bd97\library\core\src\hint.rs:334
โฎ 12 frames hidden โฎ
Run with COLORBT_SHOW_HIDDEN=1 environment variable to disable frame filtering.
Run with RUST_BACKTRACE=full to include source snippets.
Warning: SpanTrace capture is Unsupported.
Ensure that you've setup a tracing-error ErrorLayer and the semver versions are compatible
2024-05-17T17:21:21.323483Z DEBUG process_event{event=Hide(ObjectHide, Window { hwnd: 397470 })}:should_manage{self=Window { hwnd: 397470 } event=Some(Hide(ObjectHide, Window { hwnd: 397470 }))}: komorebi::window: ignoring (exe: explorer.exe, title: DesktopWindowXamlSource, event: Hide (WinEvent: ObjectHide, Window: (hwnd: 397470)))
2024-05-17T17:21:29.216005Z INFO process_command{Retile}: komorebi::border_manager: purging known borders: []
2024-05-17T17:21:29.218531Z INFO process_command{Retile}: komorebi::process_command: processed
2024-05-17T17:21:43.507608Z INFO process_event{event=MoveResizeStart(SystemMoveSizeStart, Window { hwnd: 9440954 })}: komorebi::process_event: processed: (hwnd: 9440954, title: Developer PowerShell Visual Studio Community 2022 17.9.34902.65, exe: WindowsTerminal.exe, class: CASCADIA_HOSTING_WINDOW_CLASS)
2024-05-17T17:21:43.508897Z DEBUG process_event{event=Show(ObjectShow, Window { hwnd: 4720766 })}:should_manage{self=Window { hwnd: 4720766 } event=Some(Show(ObjectShow, Window { hwnd: 4720766 }))}: komorebi::window: ignoring (exe: explorer.exe, title: DesktopWindowXamlSource, event: Show (WinEvent: ObjectShow, Window: (hwnd: 4720766, title: DesktopWindowXamlSource, exe: explorer.exe, class: Windows.UI.Composition.DesktopWindowContentBridge)))
2024-05-17T17:21:44.070647Z ERROR komorebi::process_event:
0: cannot get monitor idx from current position
Location:
komorebi\src\process_event.rs:403
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ BACKTRACE โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โฎ 11 frames hidden โฎ
12: komorebi::process_event::impl$0::process_event::closure$6<unknown>
at D:\Workspaces\git\LGUG2Z\komorebi\komorebi\src\process_event.rs:403
13: enum2$<core::option::Option<usize> >::ok_or_else<usize,eyre::Report,komorebi::process_event::impl$0::process_event::closure_env$6><unknown>
at /rustc/7cf61ebde7b22796c69757901dd346d0fe70bd97\library\core\src\option.rs:1231
14: komorebi::window_manager::WindowManager::process_event<unknown>
at D:\Workspaces\git\LGUG2Z\komorebi\komorebi\src\process_event.rs:401
15: komorebi::process_event::listen_for_events::closure$0<unknown>
at D:\Workspaces\git\LGUG2Z\komorebi\komorebi\src\process_event.rs:47
16: core::hint::black_box<unknown>
at /rustc/7cf61ebde7b22796c69757901dd346d0fe70bd97\library\core\src\hint.rs:334
โฎ 12 frames hidden โฎ
Run with COLORBT_SHOW_HIDDEN=1 environment variable to disable frame filtering.
Run with RUST_BACKTRACE=full to include source snippets.
Warning: SpanTrace capture is Unsupported.
Ensure that you've setup a tracing-error ErrorLayer and the semver versions are compatible
2024-05-17T17:21:46.631277Z INFO process_command{Retile}: komorebi::border_manager: purging known borders: []
2024-05-17T17:21:46.633449Z INFO process_command{Retile}: komorebi::process_command: processed
2024-05-17T17:21:57.800435Z ERROR komorebi: received ctrl-c, restoring all hidden windows and terminating process
2024-05-17T17:21:57.800742Z INFO restore_all_windows: komorebi::window_manager: restoring all hidden windows
error: process didn't exit successfully: `target\debug\komorebi.exe` (exit code: 130)
I dont have the WM_POWERBROADCAST event received
in my logs and I get a different error when I move a window by the title bar.
Does this log tell you something useful?
I think this comes down to the displays having different hmonitor
values assigned after the lock/unlock suspend/resume cycles - this will probably need some refactoring to make comparisons against the hardware device id ๐ค
I see, this would also explain why my workspaces are sometimes swapped around as I mentioned here #803
Could this be prevented if we use the monitor name? if there is a check on resume and identify monitors by the name specified in the setting I suggest in that other issue, then you can update the hmonitor value to the new one. I know that this is not ideal, but perhaps it gives an idea to fix this.
The komorebic state
is correct on resume, I have the correct containers with the windows, just without snapping
Your question brings me to another question: Are you using display_index_preferences
already to try to assign monitor configurations to physical displays? This should do all those resume checks you're talking about
I don't think a named monitor configuration is going to be coming in the short term because it's so different to the list-based Win32 APIs for finding monitor information, it will introduce more issues than it will solve
I dont use the display_index_preferences
setting. This is all I have:
{
"$schema": "https://raw.githubusercontent.com/LGUG2Z/komorebi/v0.1.22/schema.json",
"app_specific_configuration_path": "$Env:USERPROFILE/applications.yaml",
"window_hiding_behaviour": "Cloak",
"unmanaged_window_operation_behaviour": "Op",
"cross_monitor_move_behaviour": "Insert",
"default_workspace_padding": 5,
"default_container_padding": 5,
"border_padding": 5,
"border_offset": -1,
"active_window_border": false,
"active_window_border_style": "Rounded",
"active_window_border_colours": {
"single": "#42a5f5",
"stack": "#00a542",
"monocle": "#ff3399"
},
"stackbar": {
"height": 40,
"label": "Title",
"mode": "OnStack",
"tabs": {
"width": 300,
"focused_text": "#bfaa69",
"unfocused_text": "#f2bdf3",
"background": "#121826"
}
},
"global_work_area_offset":
{
"bottom": 45,
"left": 0,
"right": 0,
"top": 45
},
"monitors": [
{
"workspaces": [
{ "name": "P1", "layout": "UltrawideVerticalStack" },
{ "name": "P2", "layout": "UltrawideVerticalStack" },
{ "name": "P3", "layout": "BSP" }
]
},
{
"workspaces": [
{ "name": "W1", "layout": "UltrawideVerticalStack" },
{ "name": "W2", "layout": "BSP" },
{ "name": "W3", "layout": "BSP" }
]
}
],
"float_rules": [
...
]
}
I think it is fair enough that the named monitor configuration is not the right solution. I think I will close that.
It seems to me that we would be smarter if I just try to put more debugging into the code and run that, since you cannot reproduce my issue. Do you have any suggestions other than that display_index_preferences
function?
I think you can try moving this block up above this check:
This way, upon wake your displays should always have the latest hmonitor
handle, even if the full reconciliation process isn't triggered ๐ค
I made those changes and some others to handle lock/unlock the same way that suspend/resume are handled here: https://github.com/LGUG2Z/komorebi/commit/a4f4e607df25c8462f7646881298ebdb3c076624
Hopefully this should be enough to get past the error you're seeing in the MoveResizeEnd
handler when the hmonitor
stored in the state and the hmonitor
registered with the system had changed (which is what is preventing the snapping back into place)
we are snapping! ๐
I will do some more testing, then if all good, close this finally.
Thank you!!
I could not break it again, an other one in the bag!
v0.1.26 will be considerable ๐
Describe the bug I am running the c183503 commit on the
monitor-madness
branch.Before sleep
: When I grab a window by the title bar and move it a bit, it snaps back into place.After sleep
: When I grab a window by the title bar and move it anywhere, it behaves as if it is in floating mode, but snaps back into its original place when I click an other window.To Reproduce Steps to reproduce the behavior:
screenshot 1
(the window does not snap)screenshot 2
(the window snaps back into its original place even if it was moved to another monitor)Expected behavior The window snapping works the same way before and after sleep.
Screenshots
screenshot 1
screenshot 2
Operating System
komorebic check
OutputAdditional context After restarting Komorebi, the snapping works again. It probably has something to do with the
komorebic state
restore after sleep.