[BUG]: Ghost windows after wake #508

Open
opened 2026-01-05 14:51:11 +01:00 by adam · 9 comments
Owner

Originally created by @alexgorbatchev on GitHub (Oct 25, 2024).

Summary

Seeing ghost windows after wake.

image

I can restore some of them by finding the window in the taskbar and clicking on it. Others don't come back.

image

Version Information

systeminfo | findstr /B /C:"OS Name" /B /C:"OS Version"
OS Name: Microsoft Windows 11 Pro
OS Version: 10.0.22631 N/A Build 22631

komorebic --version
komorebic 0.1.28
tag:v0.1.28
commit_hash:0cdce8fc
build_time:2024-07-15 16:06:31 +00:00
build_env:rustc 1.79.0 (129f3b996 2024-06-10),stable-x86_64-pc-windows-msvc

Komorebi Configuration

{
  "$schema": "https://raw.githubusercontent.com/LGUG2Z/komorebi/v0.1.28/schema.json",
  "app_specific_configuration_path": "$Env:USERPROFILE/applications.yaml",
  "window_hiding_behaviour": "Cloak",
  "cross_monitor_move_behaviour": "Insert",
  "default_workspace_padding": 10,
  "default_container_padding": 10,
  "border": true,
  "border_width": 8,
  "border_offset": -1,
  "border_colours": {
    "single": "#42a5f5",
    "stack": "#00a542",
    "monocle": "#ff3399",
    "unfocused": "#808080"
  },
  "stackbar": {
    "height": 40,
    "mode": "OnStack",
    "label": "Title",
    "tabs": {
      "width": 300,
      "focused_text": "#00a542",
      "unfocused_text": "#b3b3b3",
      "background": "#141414"
    }
  },
  "display_index_preferences": {
    "0": "GSM7750-5&1818b9c1&0&UID4353",
    "1": "GBT3204-5&1818b9c1&0&UID4355",
    "2": "DELA0AA-5&1818b9c1&0&UID4352"
  },
  "monitors": [
    {
      "workspaces": [{ "name": "b", "layout": "Columns" }]
    },
    {
      "workspaces": [{ "name": "a", "layout": "BSP" }]
    },
    {
      "workspaces": [{ "name": "c", "layout": "Rows" }]
    }
  ]
}

Hotkey Configuration

.shell powershell

# Reload whkd configuration
# alt + o                 : taskkill /f /im whkd.exe && start /b whkd # if shell is cmd
alt + o                 : taskkill /f /im whkd.exe && Start-Process whkd -WindowStyle hidden # if shell is pwsh / powershell
alt + shift + o         : komorebic reload-configuration

# App shortcuts - these require shell to be pwsh / powershell
# The apps will be focused if open, or launched if not open
# alt + f                 : if ($wshell.AppActivate('Firefox') -eq $False) { start firefox }
# alt + b                 : if ($wshell.AppActivate('Chrome') -eq $False) { start chrome }

alt + m                 : komorebic minimize
# Focus windows
alt + h                 : komorebic focus left
alt + j                 : komorebic focus down
alt + k                 : komorebic focus up
alt + l                 : komorebic focus right
alt + shift + oem_4     : komorebic cycle-focus previous # oem_4 is [
alt + shift + oem_6     : komorebic cycle-focus next # oem_6 is ]

# Move windows
alt + shift + h         : komorebic move left
alt + shift + j         : komorebic move down
alt + shift + k         : komorebic move up
alt + shift + l         : komorebic move right
alt + shift + return    : komorebic promote

# Stack windows
alt + left              : komorebic stack left
alt + down              : komorebic stack down
alt + up                : komorebic stack up
alt + right             : komorebic stack right
alt + oem_1             : komorebic unstack # oem_1 is ;
alt + oem_4             : komorebic cycle-stack previous # oem_4 is [
alt + oem_6             : komorebic cycle-stack next # oem_6 is ]

# Resize
alt + oem_plus          : komorebic resize-axis horizontal increase
alt + oem_minus         : komorebic resize-axis horizontal decrease
alt + shift + oem_plus  : komorebic resize-axis vertical increase
alt + shift + oem_minus : komorebic resize-axis vertical decrease

# Manipulate windows
alt + t                 : komorebic toggle-float
alt + shift + f         : komorebic toggle-monocle

# Window manager options
alt + shift + r         : komorebic retile
alt + shift + p         : komorebic toggle-pause

# Layouts
alt + x                 : komorebic flip-layout horizontal
alt + y                 : komorebic flip-layout vertical

# Workspaces
alt + 1                 : komorebic focus-workspace 0
alt + 2                 : komorebic focus-workspace 1
alt + 3                 : komorebic focus-workspace 2

# Move windows across workspaces
alt + shift + 1         : komorebic move-to-workspace 0
alt + shift + 2         : komorebic move-to-workspace 1
alt + shift + 3         : komorebic move-to-workspace 2

Output of komorebic check

> komorebic check
No KOMOREBI_CONFIG_HOME detected, defaulting to C:\Users\Alex Gorbatchev

Looking for configuration files in C:\Users\Alex Gorbatchev

Found komorebi.json; this file can be passed to the start command with the --config flag

Found C:\Users\Alex Gorbatchev\.config\whkdrc; key bindings will be loaded from here when whkd is started, and you can start it automatically using the --whkd flag
Originally created by @alexgorbatchev on GitHub (Oct 25, 2024). ### Summary Seeing ghost windows after wake. ![image](https://github.com/user-attachments/assets/c209e34f-1719-495f-bf0c-03fdc98b26b9) I can restore some of them by finding the window in the taskbar and clicking on it. Others don't come back. ![image](https://github.com/user-attachments/assets/2a293bfe-a4f9-44ac-9a5c-cc33544011c0) ### Version Information > systeminfo | findstr /B /C:"OS Name" /B /C:"OS Version" OS Name: Microsoft Windows 11 Pro OS Version: 10.0.22631 N/A Build 22631 > komorebic --version komorebic 0.1.28 tag:v0.1.28 commit_hash:0cdce8fc build_time:2024-07-15 16:06:31 +00:00 build_env:rustc 1.79.0 (129f3b996 2024-06-10),stable-x86_64-pc-windows-msvc ### Komorebi Configuration ```json { "$schema": "https://raw.githubusercontent.com/LGUG2Z/komorebi/v0.1.28/schema.json", "app_specific_configuration_path": "$Env:USERPROFILE/applications.yaml", "window_hiding_behaviour": "Cloak", "cross_monitor_move_behaviour": "Insert", "default_workspace_padding": 10, "default_container_padding": 10, "border": true, "border_width": 8, "border_offset": -1, "border_colours": { "single": "#42a5f5", "stack": "#00a542", "monocle": "#ff3399", "unfocused": "#808080" }, "stackbar": { "height": 40, "mode": "OnStack", "label": "Title", "tabs": { "width": 300, "focused_text": "#00a542", "unfocused_text": "#b3b3b3", "background": "#141414" } }, "display_index_preferences": { "0": "GSM7750-5&1818b9c1&0&UID4353", "1": "GBT3204-5&1818b9c1&0&UID4355", "2": "DELA0AA-5&1818b9c1&0&UID4352" }, "monitors": [ { "workspaces": [{ "name": "b", "layout": "Columns" }] }, { "workspaces": [{ "name": "a", "layout": "BSP" }] }, { "workspaces": [{ "name": "c", "layout": "Rows" }] } ] } ``` ### Hotkey Configuration ``` .shell powershell # Reload whkd configuration # alt + o : taskkill /f /im whkd.exe && start /b whkd # if shell is cmd alt + o : taskkill /f /im whkd.exe && Start-Process whkd -WindowStyle hidden # if shell is pwsh / powershell alt + shift + o : komorebic reload-configuration # App shortcuts - these require shell to be pwsh / powershell # The apps will be focused if open, or launched if not open # alt + f : if ($wshell.AppActivate('Firefox') -eq $False) { start firefox } # alt + b : if ($wshell.AppActivate('Chrome') -eq $False) { start chrome } alt + m : komorebic minimize # Focus windows alt + h : komorebic focus left alt + j : komorebic focus down alt + k : komorebic focus up alt + l : komorebic focus right alt + shift + oem_4 : komorebic cycle-focus previous # oem_4 is [ alt + shift + oem_6 : komorebic cycle-focus next # oem_6 is ] # Move windows alt + shift + h : komorebic move left alt + shift + j : komorebic move down alt + shift + k : komorebic move up alt + shift + l : komorebic move right alt + shift + return : komorebic promote # Stack windows alt + left : komorebic stack left alt + down : komorebic stack down alt + up : komorebic stack up alt + right : komorebic stack right alt + oem_1 : komorebic unstack # oem_1 is ; alt + oem_4 : komorebic cycle-stack previous # oem_4 is [ alt + oem_6 : komorebic cycle-stack next # oem_6 is ] # Resize alt + oem_plus : komorebic resize-axis horizontal increase alt + oem_minus : komorebic resize-axis horizontal decrease alt + shift + oem_plus : komorebic resize-axis vertical increase alt + shift + oem_minus : komorebic resize-axis vertical decrease # Manipulate windows alt + t : komorebic toggle-float alt + shift + f : komorebic toggle-monocle # Window manager options alt + shift + r : komorebic retile alt + shift + p : komorebic toggle-pause # Layouts alt + x : komorebic flip-layout horizontal alt + y : komorebic flip-layout vertical # Workspaces alt + 1 : komorebic focus-workspace 0 alt + 2 : komorebic focus-workspace 1 alt + 3 : komorebic focus-workspace 2 # Move windows across workspaces alt + shift + 1 : komorebic move-to-workspace 0 alt + shift + 2 : komorebic move-to-workspace 1 alt + shift + 3 : komorebic move-to-workspace 2 ``` ### Output of komorebic check ``` > komorebic check No KOMOREBI_CONFIG_HOME detected, defaulting to C:\Users\Alex Gorbatchev Looking for configuration files in C:\Users\Alex Gorbatchev Found komorebi.json; this file can be passed to the start command with the --config flag Found C:\Users\Alex Gorbatchev\.config\whkdrc; key bindings will be loaded from here when whkd is started, and you can start it automatically using the --whkd flag ```
adam added the bugi-will-not-work-on-thiskomorebi labels 2026-01-05 14:51:11 +01:00
Author
Owner

@alexgorbatchev commented on GitHub (Oct 25, 2024):

After komorebic stop some windows come back, others remain black rectangles. The only solution I found to those is to close them via taskbar and reopen.

@alexgorbatchev commented on GitHub (Oct 25, 2024): After `komorebic stop` some windows come back, others remain black rectangles. The only solution I found to those is to close them via taskbar and reopen.
Author
Owner

@LGUG2Z commented on GitHub (Oct 28, 2024):

This looks like a rendering issue - are these all Electron apps by any chance?

Actually, I can't tell if these are new ghost tiles or if I'm looking at actual app windows that are being rendered as black rectangles.

In either case a komorebic visible-windows output when this happens would be useful!

@LGUG2Z commented on GitHub (Oct 28, 2024): This looks like a rendering issue - are these all Electron apps by any chance? Actually, I can't tell if these are new ghost tiles or if I'm looking at actual app windows that are being rendered as black rectangles. In either case a `komorebic visible-windows` output when this happens would be useful!
Author
Owner

@alexgorbatchev commented on GitHub (Oct 28, 2024):

Most of the time it's actually Chrome, but tbh I haven't paid close attention. I have VSCode open at all times and I can say with near certainty that I don't recall this happening to a VSCode window.

I'll run the command next time I get the problem and report back.

@alexgorbatchev commented on GitHub (Oct 28, 2024): Most of the time it's actually Chrome, but tbh I haven't paid close attention. I have VSCode open at all times and I can say with near certainty that I don't recall this happening to a VSCode window. I'll run the command next time I get the problem and report back.
Author
Owner

@alexgorbatchev commented on GitHub (Oct 30, 2024):

> komorebic visible-windows

{
  "GSM7750-5&1818b9c1&0&UID4353": [],
  "DELA0AA-5&1818b9c1&0&UID4352": [
    {
      "title": "clients.ts - ...[WSL: Ubuntu-22.04] - Fronend - Visual Studio Code",
      "exe": "Code.exe",
      "class": "Chrome_WidgetWin_1"
    },
    {
      "title": "DBeaver 24.2.3 - public",   <------------ GHOST
      "exe": "dbeaver.exe",
      "class": "SWT_Window0"
    }
  ],
  "GBT3204-5&1818b9c1&0&UID4355": [
    {
      "title": "pwsh in Alex Gorbatchev",
      "exe": "WindowsTerminal.exe",
      "class": "CASCADIA_HOSTING_WINDOW_CLASS"
    },
    {
      "title": "[BUG]: Ghost windows after wake · Issue #1087 · LGUG2Z/komorebi - Google Chrome",
      "exe": "chrome.exe",
      "class": "Chrome_WidgetWin_1"
    },
    {
      "title": "... - Google Chrome",    <------------ GHOST
      "exe": "chrome.exe",
      "class": "Chrome_WidgetWin_1"
    },
    {
      "title": "Default Project | Default Organization | Supabase - Google Chrome",
      "exe": "chrome.exe",
      "class": "Chrome_WidgetWin_1"
    },
    {
      "title": "DevTools - .../",
      "exe": "chrome.exe",
      "class": "Chrome_WidgetWin_1"
    },
    {
      "title": "Initial Query Data | TanStack Query React Docs - Google Chrome",
      "exe": "chrome.exe",
      "class": "Chrome_WidgetWin_1"
    }
  ]
}
@alexgorbatchev commented on GitHub (Oct 30, 2024): ``` > komorebic visible-windows { "GSM7750-5&1818b9c1&0&UID4353": [], "DELA0AA-5&1818b9c1&0&UID4352": [ { "title": "clients.ts - ...[WSL: Ubuntu-22.04] - Fronend - Visual Studio Code", "exe": "Code.exe", "class": "Chrome_WidgetWin_1" }, { "title": "DBeaver 24.2.3 - public", <------------ GHOST "exe": "dbeaver.exe", "class": "SWT_Window0" } ], "GBT3204-5&1818b9c1&0&UID4355": [ { "title": "pwsh in Alex Gorbatchev", "exe": "WindowsTerminal.exe", "class": "CASCADIA_HOSTING_WINDOW_CLASS" }, { "title": "[BUG]: Ghost windows after wake · Issue #1087 · LGUG2Z/komorebi - Google Chrome", "exe": "chrome.exe", "class": "Chrome_WidgetWin_1" }, { "title": "... - Google Chrome", <------------ GHOST "exe": "chrome.exe", "class": "Chrome_WidgetWin_1" }, { "title": "Default Project | Default Organization | Supabase - Google Chrome", "exe": "chrome.exe", "class": "Chrome_WidgetWin_1" }, { "title": "DevTools - .../", "exe": "chrome.exe", "class": "Chrome_WidgetWin_1" }, { "title": "Initial Query Data | TanStack Query React Docs - Google Chrome", "exe": "chrome.exe", "class": "Chrome_WidgetWin_1" } ] } ```
Author
Owner

@alexgorbatchev commented on GitHub (Oct 30, 2024):

Windows do receive clicks. In the case of Chrome i can close and restore tabs easily, but it's still mildly annoying.

@alexgorbatchev commented on GitHub (Oct 30, 2024): Windows do receive clicks. In the case of Chrome i can close and restore tabs easily, but it's still mildly annoying.
Author
Owner

@mudnug commented on GitHub (Nov 8, 2024):

This bug affects me multiple times every week.

@mudnug commented on GitHub (Nov 8, 2024): This bug affects me multiple times every week.
Author
Owner

@LGUG2Z commented on GitHub (Nov 8, 2024):

Given that there are exactly two reports of this out of tens of thousands of users and no road to reproducibility (yet), I think if someone wants to continue investigating this the next point of call should be opening a bug report on the Chromium issue tracker.

@LGUG2Z commented on GitHub (Nov 8, 2024): Given that there are exactly two reports of this out of tens of thousands of users and no road to reproducibility (yet), I think if someone wants to continue investigating this the next point of call should be opening a bug report on the Chromium issue tracker.
Author
Owner

@CtByte commented on GitHub (Nov 16, 2024):

This bug affects me multiple times every week.

@mudnug I think I experienced this before and I used the komorebic retile command to get it fixed (using a keybind). Could you please try this next time this happens?

@CtByte commented on GitHub (Nov 16, 2024): > This bug affects me multiple times every week. @mudnug I think I experienced this before and I used the `komorebic retile` command to get it fixed (using a keybind). Could you please try this next time this happens?
Author
Owner

@mudnug commented on GitHub (Nov 17, 2024):

@CtByte I tried the komorebic retile command several times to no avail.

I did pull the debug information for an offending window and replaced unnecessary text with [...]

  "should_manage": true,
  "is_window": true,
  "has_minimum_width": true,
  "has_minimum_height": true,
  "has_title": true,
  "is_cloaked": false,
  "allow_cloaked": false,
  "allow_layered_transparency": false,
  "window_style": "BORDER | CAPTION | CLIPCHILDREN | CLIPSIBLINGS | GROUP | MAXIMIZEBOX | OVERLAPPEDWINDOW | VISIBLE",
  "extended_window_style": "WINDOWEDGE",
  "title": "[...]",
  "exe_name": "[...].exe",
  "class": "Chrome_WidgetWin_1",
  "path": "[...]",
  "matches_permaignore_class": null,
  "matches_float_identifier": null,
  "matches_managed_override": null,
  "matches_layered_whitelist": null,
  "matches_wsl2_gui": null,
  "matches_no_titlebar": null
}
@mudnug commented on GitHub (Nov 17, 2024): @CtByte I tried the `komorebic retile `command several times to no avail. I did pull the debug information for an offending window and replaced unnecessary text with [...] ```{ "should_manage": true, "is_window": true, "has_minimum_width": true, "has_minimum_height": true, "has_title": true, "is_cloaked": false, "allow_cloaked": false, "allow_layered_transparency": false, "window_style": "BORDER | CAPTION | CLIPCHILDREN | CLIPSIBLINGS | GROUP | MAXIMIZEBOX | OVERLAPPEDWINDOW | VISIBLE", "extended_window_style": "WINDOWEDGE", "title": "[...]", "exe_name": "[...].exe", "class": "Chrome_WidgetWin_1", "path": "[...]", "matches_permaignore_class": null, "matches_float_identifier": null, "matches_managed_override": null, "matches_layered_whitelist": null, "matches_wsl2_gui": null, "matches_no_titlebar": null } ```
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: starred/komorebi#508