Originally created by @Insprill on GitHub (Feb 26, 2025).
Summary
When opening any* JavaFX or SWT application, komorebi won't recognize its existence.
I've been able to reproduce this 100% reliably with TuxGuitar (SWT) and MCA Selector (JavaFX). Simply opening either of them will demonstrate the problem.
Adding either of these applications to the manage_rules array in the komorebi config does not solve the issue; however, manually running komorebic manage does.
No KOMOREBI_CONFIG_HOME detected, defaulting to C:\Users\Insprill
Looking for configuration files in C:\Users\Insprill
No komorebi configuration found in C:\Users\Insprill
If running 'komorebic start --await-configuration', you will manually have to call the following command to begin tiling: komorebic complete-configuration
Originally created by @Insprill on GitHub (Feb 26, 2025).
### Summary
When opening any* JavaFX or SWT application, komorebi won't recognize its existence.
I've been able to reproduce this 100% reliably with [TuxGuitar](https://github.com/helge17/tuxguitar) (SWT) and [MCA Selector](https://github.com/Querz/mcaselector) (JavaFX). Simply opening either of them will demonstrate the problem.
Adding either of these applications to the `manage_rules` array in the komorebi config does not solve the issue; however, manually running `komorebic manage` does.
### Version Information
```
komorebic 0.1.34
tag:v0.1.34
commit_hash:80edcadb
build_time:2025-02-21 02:21:41 +00:00
build_env:rustc 1.85.0 (4d91de4e4 2025-02-17),stable-x86_64-pc-windows-msvc
```
### Komorebi Configuration
https://github.com/Insprill/dotfiles/blob/bc5e16ca032ed716b1b391cd39896d1cd94f8381/dot_config/komorebi/komorebi.json
### Hotkey Configuration
https://github.com/Insprill/dotfiles/blob/bc5e16ca032ed716b1b391cd39896d1cd94f8381/dot_config/autohotkey/komorebi.ahk
### Output of komorebic check
```
No KOMOREBI_CONFIG_HOME detected, defaulting to C:\Users\Insprill
Looking for configuration files in C:\Users\Insprill
No komorebi configuration found in C:\Users\Insprill
If running 'komorebic start --await-configuration', you will manually have to call the following command to begin tiling: komorebic complete-configuration
```
adam
added the bug label 2026-01-05 14:51:42 +01:00
Java GUI apps in general don't send a Show notification on launch, you'll need to identify them as object_name_change_applications - this worked for me for both apps in my komorebi.json:
Feel free to upstream these and any other Java apps to the asc repo
@LGUG2Z commented on GitHub (Feb 27, 2025):
Java GUI apps in general don't send a `Show` notification on launch, you'll need to identify them as `object_name_change_applications` - this worked for me for both apps in my `komorebi.json`:
```json
"object_name_change_applications": [
{
"id": "javaw.exe",
"kind": "Exe",
"matching_strategy": "Equals"
},
{
"id": "MCA Selector.exe",
"kind": "Exe",
"matching_strategy": "Equals"
}
],
```
Feel free to upstream these and any other Java apps to the asc repo
The classes of MCA Selector and TuxGuitar are GlassWndClass-GlassWindowClass-2 and SWT_Window0, respectively. I'm not sure what exactly influences them, but would it be worth adding a "catch-all" rule for any windows with classes starting with SWT_Window or GlassWndClass, or running from javaw.exe? Since it seems to be all Java applications that are broken like that, I feel having those rules would be more beneficial than hunting down every possible misbehaving application.
@Insprill commented on GitHub (Feb 27, 2025):
The classes of MCA Selector and TuxGuitar are `GlassWndClass-GlassWindowClass-2` and `SWT_Window0`, respectively. I'm not sure what exactly influences them, but would it be worth adding a "catch-all" rule for any windows with classes starting with `SWT_Window` or `GlassWndClass`, or running from `javaw.exe`? Since it seems to be all Java applications that are broken like that, I feel having those rules would be more beneficial than hunting down every possible misbehaving application.
If there are any other Java GUI framework apps you could check out the classes for to sanity check the uniformity of these class prefixes, I think that would be enough due diligence to add the catch-alls to the asc repo
@LGUG2Z commented on GitHub (Feb 28, 2025):
If there are any other Java GUI framework apps you could check out the classes for to sanity check the uniformity of these class prefixes, I think that would be enough due diligence to add the catch-alls to the asc repo
SWT_WindowN - TuxGuitar (Couldn't find any others)
SunAwtFrame - Minecraft 1.0, Apache NetBeans
These applications are managed correctly, so no rules are needed.
@Insprill commented on GitHub (Feb 28, 2025):
I poked through GitHub topics to find some random Java GUI applications and looked at their classes, here's what I got:
- `GlassWndClass-GlassWindowClass-N` - [MCA Selector](https://github.com/Querz/mcaselector), [dv-custom-car-manager](https://github.com/Insprill/dv-custom-car-manager), [xpipe](https://github.com/xpipe-io/xpipe), [JabRef](https://github.com/JabRef/jabref), [PDFsam](https://github.com/torakiki/pdfsam), [PrettyZoo](https://github.com/vran-dev/PrettyZoo)
I'm not sure what influences N, I've only seen 2 and 3.
- `SWT_WindowN` - [TuxGuitar](https://github.com/helge17/tuxguitar) (Couldn't find any others)
- `SunAwtFrame` - Minecraft 1.0, [Apache NetBeans](https://netbeans.apache.org/)
These applications are managed correctly, so no rules are needed.
@vanillagreencom commented on GitHub (Nov 17, 2025):
I cant seem to get Trader Workstation from Interactive Brokers to manage either. It has SunAwtFrame class as well
tried below also:
"object_name_change_applications": [
{
"kind": "Exe",
"id": "tws.exe",
"matching_strategy": "Equals"
},
]
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Originally created by @Insprill on GitHub (Feb 26, 2025).
Summary
When opening any* JavaFX or SWT application, komorebi won't recognize its existence.
I've been able to reproduce this 100% reliably with TuxGuitar (SWT) and MCA Selector (JavaFX). Simply opening either of them will demonstrate the problem.
Adding either of these applications to the
manage_rulesarray in the komorebi config does not solve the issue; however, manually runningkomorebic managedoes.Version Information
Komorebi Configuration
https://github.com/Insprill/dotfiles/blob/bc5e16ca032ed716b1b391cd39896d1cd94f8381/dot_config/komorebi/komorebi.json
Hotkey Configuration
https://github.com/Insprill/dotfiles/blob/bc5e16ca032ed716b1b391cd39896d1cd94f8381/dot_config/autohotkey/komorebi.ahk
Output of komorebic check
@LGUG2Z commented on GitHub (Feb 27, 2025):
Java GUI apps in general don't send a
Shownotification on launch, you'll need to identify them asobject_name_change_applications- this worked for me for both apps in mykomorebi.json:Feel free to upstream these and any other Java apps to the asc repo
@Insprill commented on GitHub (Feb 27, 2025):
The classes of MCA Selector and TuxGuitar are
GlassWndClass-GlassWindowClass-2andSWT_Window0, respectively. I'm not sure what exactly influences them, but would it be worth adding a "catch-all" rule for any windows with classes starting withSWT_WindoworGlassWndClass, or running fromjavaw.exe? Since it seems to be all Java applications that are broken like that, I feel having those rules would be more beneficial than hunting down every possible misbehaving application.@LGUG2Z commented on GitHub (Feb 28, 2025):
If there are any other Java GUI framework apps you could check out the classes for to sanity check the uniformity of these class prefixes, I think that would be enough due diligence to add the catch-alls to the asc repo
@Insprill commented on GitHub (Feb 28, 2025):
I poked through GitHub topics to find some random Java GUI applications and looked at their classes, here's what I got:
GlassWndClass-GlassWindowClass-N- MCA Selector, dv-custom-car-manager, xpipe, JabRef, PDFsam, PrettyZooI'm not sure what influences N, I've only seen 2 and 3.
SWT_WindowN- TuxGuitar (Couldn't find any others)SunAwtFrame- Minecraft 1.0, Apache NetBeansThese applications are managed correctly, so no rules are needed.
@vanillagreencom commented on GitHub (Nov 17, 2025):
I cant seem to get Trader Workstation from Interactive Brokers to manage either. It has SunAwtFrame class as well
tried below also:
"object_name_change_applications": [
{
"kind": "Exe",
"id": "tws.exe",
"matching_strategy": "Equals"
},
]