#1636·komorebi

[BUG]: Window class "WinUIDesktopWin32WindowClass" freezes on first launch

Author: RaptDeptCreated Jan 14, 2026Updated Sep 17, 2026
Labelsbug

Summary

I noticed buggy behavior in two separate applications - Windows Photos (not the legacy one) and Proton VPN. Their main windows have the same class name WinUIDesktopWin32WindowClass.

When I first open either of them, the main window opens up and gets tiled by komorebi. After that, the window doesn't respond to user input, including mouse hovers and clicks, moving and resizing, etc.

To get around this, I can do either:

  • Switch focus to a different window, then komorebic focus back into the faulty window.
  • Alt+Tab and select the faulty window. After that, the window gains focus and user input is processed normally again.

Adding them to the ignore_rules list also prevents the issue.

Version Information

OS Name: Microsoft Windows 11 Pro OS Version: 10.0.26200 N/A Build 26200

komorebic 0.1.39 tag:v0.1.39 commit_hash:8f982e45 build_time:2025-12-11 01:24:19 +00:00 build_env:rustc 1.91.1 (ed61e7d7e 2025-11-07),stable-x86_64-pc-windows-msvc

Komorebi Configuration

json
{
  "$schema": "https://raw.githubusercontent.com/LGUG2Z/komorebi/master/schema.json",
  "active_window_border_colours": {
    "monocle": "#ff3399",
    "single": "#42a5f5",
    "stack": "#00a542"
  },
  "app_specific_configuration_path": "$Env:USERPROFILE/.komorebi/applications.yaml",
  "border_width": 3,
  "border_offset": 0,
  "border_style": "Square",
  "cross_monitor_move_behaviour": "Insert",
  "default_container_padding": 5,
  "default_workspace_padding": 5,
  "mouse_follows_focus": false,
  "stackbar": {
    "height": 28,
    "label": "Title",
    "mode": "OnStack",
    "tabs": {
      "background": "#141414",
      "focused_text": "#42a5f5",
      "unfocused_text": "#b3b3b3",
      "width": 175
    }
  },
  "floating_applications": [
    {
      "id": "BootstrapUpdateUIClass",
      "kind": "Class",
      "matching_strategy": "Equals"
    },
    [
      {
        "id": "darktable.exe",
        "kind": "Exe",
        "matching_strategy": "Equals"
      },
      {
        "id": "darktable",
        "kind": "Title",
        "matching_strategy": "DoesNotEqual"
      }
    ],
    [
      {
        "id": "Discord.exe",
        "kind": "Exe",
        "matching_strategy": "Equals"
      },
      {
        "id": "(Discord P|Camera p)opout",
        "kind": "Title",
        "matching_strategy": "Regex"
      },
      {
        "id": " - Discord",
        "kind": "Title",
        "matching_strategy": "Equals"
      }
    ],
    [
      {
        "id": "DrivePool.UI.exe",
        "kind": "Exe",
        "matching_strategy": "Equals"
      },
      {
        "id": "StableBit DrivePool",
        "kind": "Title",
        "matching_strategy": "DoesNotEqual"
      }
    ],
    [
      {
        "id": "firefox.exe",
        "kind": "Exe",
        "matching_strategy": "Equals"
      },
      {
        "id": "MozillaDialogClass",
        "kind": "Class",
        "matching_strategy": "Equals"
      }
    ],
    [
      {
        "id": "Flow.Launcher.exe",
        "kind": "Exe",
        "matching_strategy": "Equals"
      },
      {
        "id": "Settings",
        "kind": "Title",
        "matching_strategy": "DoesNotEqual"
      }
    ],
    [
      {
        "id": "obs(32|64).exe",
        "kind": "Exe",
        "matching_strategy": "Regex"
      },
      {
        "id": "(Fullscreen|Windowed) Projector.*",
        "kind": "Title",
        "matching_strategy": "Regex"
      }
    ],
    {
      "id": "odriveapp.exe",
      "kind": "Exe",
      "matching_strategy": "Equals"
    },
    [
      {
        "id": "okular.exe",
        "kind": "Exe",
        "matching_strategy": "Equals"
      },
      {
        "id": "^(New Text Note|(\\w+ )+Properties|Select( \\w)+) - Okular$",
        "kind": "Title",
        "matching_strategy": "Regex"
      }
    ],
    {
      "id": "Spyder(Utility| MQA)?.exe",
      "kind": "Exe",
      "matching_strategy": "Regex"
    },
    [
      {
        "id": "steamwebhelper.exe",
        "kind": "Exe",
        "matching_strategy": "Equals"
      },
      {
        "id": "SDL_app",
        "kind": "Class",
        "matching_strategy": "Equals"
      },
      {
        "id": "Steam Big Picture Mode",
        "kind": "Title",
        "matching_strategy": "Equals"
      }
    ],
    [
      {
        "id": "Telegram.exe",
        "kind": "Exe",
        "matching_strategy": "Equals"
      },
      {
        "id": "TelegramDesktop|Media viewer",
        "kind": "Title",
        "matching_strategy": "Regex"
      }
    ],
    [
      {
        "id": "Zoom.exe",
        "kind": "Exe",
        "matching_strategy": "Equals"
      },
      {
        "id": "(VideoPreview|zWaitingMeetingID)WndClass|ZPPTEnhanceLoginMainWindowClassEx",
        "kind": "Class",
        "matching_strategy": "Regex"
      }
    ]
  ],
  "ignore_rules": [
    {
      "id": "CloudDrive.Notifications.exe",
      "kind": "Exe",
      "matching_strategy": "Equals"
    },
    {
      "id": "DrivePool.Notifications.exe",
      "kind": "Exe",
      "matching_strategy": "Equals"
    },
    [
      {
        "id": "ProtonVPN.Client.exe",
        "kind": "Exe",
        "matching_strategy": "Equals"
      },
      {
        "id": "(tray)",
        "kind": "Title",
        "matching_strategy": "EndsWith"
      }
    ],
    [
      {
        "id": "steamwebhelper.exe",
        "kind": "Exe",
        "matching_strategy": "Equals"
      },
      {
        "id": "SDL_app",
        "kind": "Class",
        "matching_strategy": "Equals"
      },
      {
        "id": "Menu",
        "kind": "Title",
        "matching_strategy": "Equals"
      }
    ],
    {
      "id": "yasb.exe",
      "kind": "Exe",
      "matching_strategy": "Equals"
    }
  ],
  "object_name_change_applications": [
    {
      "id": "Bitwarden.exe",
      "kind": "Exe",
      "matching_strategy": "Equals"
    }
  ],
  "tray_and_multi_window_applications": [
    {
      "id": "Bitwarden.exe",
      "kind": "Exe",
      "matching_strategy": "Equals"
    }
  ]
}

Hotkey Configuration

bash
.shell powershell

# Reload whkd configuration
alt + r                     : schtasks /run /tn Jake\whkd
alt + shift + r           : schtasks /run /tn Jake\komorebi
alt + ctrl + shift + r           : schtasks /run /tn Jake\yasb


# Focus windows
alt + f17                 : komorebic focus left
alt + f18                 : komorebic focus down
alt + f19                 : komorebic focus up
alt + f20                 : komorebic focus right

alt + f21                 : komorebic force-focus; komorebic cycle-workspace previous
alt + f22                 : komorebic cycle-monitor next
alt + f23                 : komorebic cycle-monitor previous
alt + f24                 : komorebic force-focus; komorebic cycle-workspace next


# Move windows
alt + f13                 : komorebic promote
alt + oem_2               : komorebic promote # oem_2 is /?

alt + ctrl + f17                : komorebic move left
alt + ctrl + f18                : komorebic move down
alt + ctrl + f19                : komorebic move up
alt + ctrl + f20                : komorebic move right

alt + ctrl + f21                : komorebic cycle-move-to-workspace previous
alt + ctrl + f22                : komorebic cycle-send-to-monitor next
alt + ctrl + f23                : komorebic cycle-send-to-monitor previous
alt + ctrl + f24                : komorebic cycle-move-to-workspace next


# Stack windows
alt + f16                 : komorebic unstack
alt + shift + oem_2       : komorebic unstack # oem_2 is /?

alt + f14                 : komorebic cycle-stack next
alt + f15                 : komorebic cycle-stack previous

alt + ctrl + f13                : komorebic stack left
alt + ctrl + f14                : komorebic stack down
alt + ctrl + f15                : komorebic stack up
alt + ctrl + f16                : komorebic stack right


# Resize
alt + shift + x           : komorebic resize-axis horizontal decrease
alt + x                   : komorebic resize-axis horizontal increase

alt + shift + y           : komorebic resize-axis vertical decrease
alt + y                   : komorebic resize-axis vertical increase


# Manipulate windows
alt + m                   : komorebic toggle-monocle
alt + shift + m           : komorebic toggle-maximize

alt + f                   : komorebic toggle-float
alt + shift + f           : komorebic toggle-tiling

alt + c                   : komorebic minimize
alt + shift + c           : komorebic close


# Window manager options
alt + t                   : komorebic retile
alt + w                   : komorebic manage
alt + shift + w           : komorebic unmanage


# Layouts
alt + shift + h           : komorebic flip-layout horizontal
alt + shift + v           : komorebic flip-layout vertical
alt + shift + l           : komorebic cycle-layout next


# Workspaces
alt + shift + f13                   : komorebic focus-monitor-workspace 1 0
alt + shift + f14                   : komorebic focus-monitor-workspace 1 1
alt + shift + f15                   : komorebic focus-monitor-workspace 1 2
alt + shift + f16                   : komorebic focus-monitor-workspace 1 3
alt + shift + f19                   : komorebic focus-monitor-workspace 1 4
alt + shift + f20                   : komorebic focus-monitor-workspace 1 5

alt + shift + f21                   : komorebic focus-monitor-workspace 0 0
alt + shift + f22                   : komorebic focus-monitor-workspace 0 1
alt + shift + f23                   : komorebic focus-monitor-workspace 0 2
alt + shift + f24                   : komorebic focus-monitor-workspace 0 3
alt + shift + f17                   : komorebic focus-monitor-workspace 0 4
alt + shift + f18                   : komorebic focus-monitor-workspace 0 5

alt + 1                   : komorebic focus-workspace 0
alt + 2                   : komorebic focus-workspace 1
alt + 3                   : komorebic focus-workspace 2
alt + 4                   : komorebic focus-workspace 3
alt + 5                   : komorebic focus-workspace 4
alt + 6                   : komorebic focus-workspace 5
alt + 7                   : komorebic focus-workspace 6
alt + 8                   : komorebic focus-workspace 7
alt + 9                   : komorebic focus-workspace 8


# Send windows across workspaces
alt + shift + ctrl + f13                   : komorebic send-to-monitor-workspace 1 0
alt + shift + ctrl + f14                   : komorebic send-to-monitor-workspace 1 1
alt + shift + ctrl + f15                   : komorebic send-to-monitor-workspace 1 2
alt + shift + ctrl + f16                   : komorebic send-to-monitor-workspace 1 3
alt + shift + ctrl + f19                   : komorebic send-to-monitor-workspace 1 4
alt + shift + ctrl + f20                   : komorebic send-to-monitor-workspace 1 5

alt + shift + ctrl + f21                   : komorebic send-to-monitor-workspace 0 0
alt + shift + ctrl + f22                   : komorebic send-to-monitor-workspace 0 1
alt + shift + ctrl + f23                   : komorebic send-to-monitor-workspace 0 2
alt + shift + ctrl + f24                   : komorebic send-to-monitor-workspace 0 3
alt + shift + ctrl + f17                   : komorebic send-to-monitor-workspace 0 4
alt + shift + ctrl + f18                   : komorebic send-to-monitor-workspace 0 5

alt + shift + 1           : komorebic send-to-workspace 0
alt + shift + 2           : komorebic send-to-workspace 1
alt + shift + 3           : komorebic send-to-workspace 2
alt + shift + 4           : komorebic send-to-workspace 3
alt + shift + 5           : komorebic send-to-workspace 4
alt + shift + 6           : komorebic send-to-workspace 5
alt + shift + 7           : komorebic send-to-workspace 6
alt + shift + 8           : komorebic send-to-workspace 7
alt + shift + 9           : komorebic send-to-workspace 8

Output of komorebic check

bash
KOMOREBI_CONFIG_HOME detected: C:\Users\Jake\.komorebi

Looking for configuration files in C:\Users\Jake\.komorebi

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


Your configuration file contains some options that have been renamed or deprecated:

"active_window_border" is now "border"
"applications.yaml" is now "applications.json"
"active_window_border_colours" is now "border_colours"
Found C:\Users\Jake\.config\whkdrc; key bindings will be loaded from here when whkd is started, and you can start it automatically using the --whkd flag