[BUG]: Bluestacks Player not handled #228

Closed
opened 2026-01-05 14:49:08 +01:00 by adam · 2 comments
Owner

Originally created by @max06 on GitHub (Jul 10, 2023).

Describe the bug
Windows created by the bluestacks player (Android on windows) seem to be exotic enough to not be recognized as windows at all.

To Reproduce
Steps to reproduce the behavior:

  1. Get Bluestacks 5
  2. Launch it (use admin privileges if you're running it on hyper-v and see issues starting)
  3. Check komorebi logs (nothing shown when switching windows)

Operating System
(there's no grep on windows PS)

OS Name:                   Microsoft Windows 11 Pro
OS Version:                22621.1848

komorebic check Output
Provide the output of komorebic check

For example:

No KOMOREBI_CONFIG_HOME detected, defaulting to C:\Users\max06

Looking for configuration files in C:\Users\max06

Found komorebi.ps1; this file will be autoloaded by komorebi

Found ~/.config/whkdrc; key bindings will be loaded from here when whkd is started

Additional context
DisplayFusion Pro shows the window as Class Qt5154QWindowOwnDCIcon. It also doesn't play very nice with the windows tools.

Originally created by @max06 on GitHub (Jul 10, 2023). **Describe the bug** Windows created by the [bluestacks player](https://www.bluestacks.com/download.html) (Android on windows) seem to be exotic enough to not be recognized as windows at all. **To Reproduce** Steps to reproduce the behavior: 1. Get [Bluestacks 5](https://www.bluestacks.com/download.html) 2. Launch it (use admin privileges if you're running it on hyper-v and see issues starting) 3. Check komorebi logs (nothing shown when switching windows) **Operating System** (there's no grep on windows PS) ``` OS Name: Microsoft Windows 11 Pro OS Version: 22621.1848 ``` **`komorebic check` Output** Provide the output of `komorebic check` For example: ``` No KOMOREBI_CONFIG_HOME detected, defaulting to C:\Users\max06 Looking for configuration files in C:\Users\max06 Found komorebi.ps1; this file will be autoloaded by komorebi Found ~/.config/whkdrc; key bindings will be loaded from here when whkd is started ``` **Additional context** DisplayFusion Pro shows the window as Class `Qt5154QWindowOwnDCIcon`. It also doesn't play very nice with the windows tools.
adam added the bug label 2026-01-05 14:49:08 +01:00
adam closed this issue 2026-01-05 14:49:08 +01:00
Author
Owner

@LGUG2Z commented on GitHub (Jul 10, 2023):

Adding a blanket manage-rule for exe "BlueStacks X.exe" gets these windows to be managed; the majority of which are non-visible windows doing background processes.

                  {
                    "windows": {
                      "elements": [
                        {
                          "hwnd": 721080,
                          "title": "Form",
                          "exe": "BlueStacks X.exe",
                          "class": "Qt5158QWindowToolSaveBits",
                          "rect": {
                            "left": 2788,
                            "top": 285,
                            "right": 1029,
                            "bottom": 222
                          }
                        }
                      ],
                      "focused": 0
                    }
                  },
                  {
                    "windows": {
                      "elements": [
                        {
                          "hwnd": 2033550,
                          "title": "Form",
                          "exe": "BlueStacks X.exe",
                          "class": "Qt5158QWindowToolSaveBits",
                          "rect": {
                            "left": 2788,
                            "top": 540,
                            "right": 1029,
                            "bottom": 222
                          }
                        }
                      ],
                      "focused": 0
                    }
                  },
                  {
                    "windows": {
                      "elements": [
                        {
                          "hwnd": 463092,
                          "title": "BlueStacks X",
                          "exe": "BlueStacks X.exe",
                          "class": "Qt5158QWindowToolSaveBits",
                          "rect": {
                            "left": 921,
                            "top": 54,
                            "right": 1998,
                            "bottom": 1443
                          }
                        }
                      ],
                      "focused": 0
                    }
                  },
                  {
                    "windows": {
                      "elements": [
                        {
                          "hwnd": 201138,
                          "title": "BlueStacks X",
                          "exe": "BlueStacks X.exe",
                          "class": "Qt5158QWindowToolSaveBits",
                          "rect": {
                            "left": 921,
                            "top": 54,
                            "right": 1998,
                            "bottom": 1443
                          }
                        }
                      ],
                      "focused": 0
                    }
                  },
                  {
                    "windows": {
                      "elements": [
                        {
                          "hwnd": 1773374,
                          "title": "Form",
                          "exe": "BlueStacks X.exe",
                          "class": "Qt5158QWindowToolTipSaveBits",
                          "rect": {
                            "left": 2788,
                            "top": 1187,
                            "right": 1029,
                            "bottom": 340
                          }
                        }
                      ],
                      "focused": 0
                    }
                  }

You can narrow these down by just setting komorebic manage-rule title "BlueStacks X", however, the application itself has extremely non-standard invisible borders, and does not respond to this foundational Win32 API call: https://learn.microsoft.com/en-us/windows/win32/api/winuser/nf-winuser-setwindowpos

I'm going to close this issue as there is nothing that can be done in komorebi to wrangle applications that deviate so far from widely accepted Win32 GUI application development norms and break compatibility with basic Win32 API calls like SetWindowPos.

Your best bet in this case will be to reach out to the developers of this application if it is open source and request changes.

@LGUG2Z commented on GitHub (Jul 10, 2023): Adding a blanket `manage-rule` for `exe "BlueStacks X.exe"` gets these windows to be managed; the majority of which are non-visible windows doing background processes. ``` { "windows": { "elements": [ { "hwnd": 721080, "title": "Form", "exe": "BlueStacks X.exe", "class": "Qt5158QWindowToolSaveBits", "rect": { "left": 2788, "top": 285, "right": 1029, "bottom": 222 } } ], "focused": 0 } }, { "windows": { "elements": [ { "hwnd": 2033550, "title": "Form", "exe": "BlueStacks X.exe", "class": "Qt5158QWindowToolSaveBits", "rect": { "left": 2788, "top": 540, "right": 1029, "bottom": 222 } } ], "focused": 0 } }, { "windows": { "elements": [ { "hwnd": 463092, "title": "BlueStacks X", "exe": "BlueStacks X.exe", "class": "Qt5158QWindowToolSaveBits", "rect": { "left": 921, "top": 54, "right": 1998, "bottom": 1443 } } ], "focused": 0 } }, { "windows": { "elements": [ { "hwnd": 201138, "title": "BlueStacks X", "exe": "BlueStacks X.exe", "class": "Qt5158QWindowToolSaveBits", "rect": { "left": 921, "top": 54, "right": 1998, "bottom": 1443 } } ], "focused": 0 } }, { "windows": { "elements": [ { "hwnd": 1773374, "title": "Form", "exe": "BlueStacks X.exe", "class": "Qt5158QWindowToolTipSaveBits", "rect": { "left": 2788, "top": 1187, "right": 1029, "bottom": 340 } } ], "focused": 0 } } ``` You can narrow these down by just setting `komorebic manage-rule title "BlueStacks X"`, however, the application itself has extremely non-standard invisible borders, and does not respond to this foundational Win32 API call: https://learn.microsoft.com/en-us/windows/win32/api/winuser/nf-winuser-setwindowpos I'm going to close this issue as there is nothing that can be done in `komorebi` to wrangle applications that deviate so far from widely accepted Win32 GUI application development norms and break compatibility with basic Win32 API calls like `SetWindowPos`. Your best bet in this case will be to reach out to the developers of this application if it is open source and request changes.
Author
Owner

@max06 commented on GitHub (Jul 10, 2023):

That was very fast! Thanks a lot :)

@max06 commented on GitHub (Jul 10, 2023): That was very fast! Thanks a lot :)
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: starred/komorebi#228