mirror of
https://github.com/LGUG2Z/komorebi.git
synced 2026-01-11 14:40:25 +01:00
[BUG]: Invalid monitor in monitor-info #577
Reference in New Issue
Block a user
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Originally created by @tsukasa on GitHub (Feb 23, 2025).
Summary
With the recent motherlode of changes related to monitor handling, a somewhat troubling behaviour has found its way into Komorebi.
When starting Komorebi via
komorebic startwith just one monitor connected, the output ofkomorebic monitor-infois as expected and presents the proper monitor data:Connecting an additional monitor now causes an invalid entry:
The "null" monitor causes windows to be sent to invalid coordinates. The only way to workaround this is by restarting komorebi completely.
When observing
komorebic log, the reconciliator clearly finds the monitor based on the ID DELA0A2-5&2da744da&0&UID184854 (ID of the monitor being connected):This is a most annoying behaviour that potentially causes data loss because applications being sent to the other monitor end up in purgatory and have to be closed through the task manager.
When all displays are already connected before starting Komorebi,
komorebic monitor-inforesolves them properly and the application works as expected:However, this should not be considered an acceptable workaround, because it is wholly unclear when the cache might expires and a user runs into the issue again.
Version Information
OS Version
Komorebi Version
Komorebi Configuration
Hotkey Configuration
Too long, see https://github.com/tsukasa/dotfiles-komorebi
Output of komorebic check
@LGUG2Z commented on GitHub (Feb 23, 2025):
Can you repro the same behaviour when using serial IDs in the display index preferences?
Also paging @alex-ds13
@tsukasa commented on GitHub (Feb 23, 2025):
I replaced the
display_index_preferencesinkomorebi.jsonwith these updated values, based on theserial_number_idvalues reported bykomorebic monitor-info:For good measure, Komorebi gets a stop and start (with just one monitor connected initially, just like in the opening post). Connecting the second monitor:
komorebic log:
Querying
komorebic monitor-inforesults in the same output:Trying to send applications to the other monitor causes the same issue as before.
Additional information for clarification:
The second (freshly connected) monitor should be aligned to the right side of DISPLAY1 and is so in Windows. Komorebi's logic places it to the left instead, so instead of
komorebic move rightyou can do akomorebic move leftto send the applications to 0,0,0,0.@LGUG2Z commented on GitHub (Feb 23, 2025):
Adding my own attempt at reproduction:
With the following
display_index_preferences:Step 1
Starting komorebi with only
9SZGCP3connectedStep 2
Check
monitor-infooutput:Step 3
Connect
190909Step 4 [reproduction confirmed]
Check
monitor-infooutput:Step 5 [additional]
Disconnect
190909Step 6 [additional]
Reconnect
190909Step 7 [expected state]
Check
monitor-infooutput:@LGUG2Z commented on GitHub (Feb 23, 2025):
Further testing from me shows that this is only the case when the connected monitor is identified in
display_index_preferences:With the following
display_index_preferences:Step 1
Starting komorebi with only
9SZGCP3connectedStep 2
Check monitor-info output:
Step 3
Connect
190909Step 4 [expected state]
Check monitor-info output:
@LGUG2Z commented on GitHub (Feb 23, 2025):
@tsukasa If you want to stay on the bleeding edge I'd suggest removing the index preference for the monitor which may be disconnected and reconnected throughout your session until a fix can be identified
@alex-ds13 commented on GitHub (Feb 23, 2025):
I think I know what's causing this. I'll try to take a look tonight.
@alex-ds13 commented on GitHub (Feb 24, 2025):
This should be fixed with #1295
@tsukasa Thank you for the bug report!
@LGUG2Z commented on GitHub (Feb 24, 2025):
Works as expected for me so I'm gonna merge this in. @tsukasa please report back if the issue is resolved for you and we can close this issue.