[Request] Docky should support WM_CLASS for more accurate window detection.
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Docky |
Fix Released
|
Wishlist
|
Robert Dyer |
Bug Description
I have a few applications that I run that are all based on the eclipse framework (eg. Eclipse, Sametime, & Lotus Notes). No matter what I tried I was unable to get Docky to properly keep these windows separate from one another. After digging around in the source code I saw that Docky distinguishes unique application based on their executable name (w/ exception to a few hard coded workarounds, such as Open Office). In my case, I have three different applications that launch with an exec name of 'eclipse'.
I suggest that Docky add a new feature where it will distinguish applications based on the WM_CLASS property, and then fall back to the exec name in the event that it cannot find a match to StartupWMCLass in an existing .desktop file. I feel this would provide a better way to distinguish applications from one another and probably solve some of the hard-coded workarounds in the code today.
I would be willing to test or help develop a patch for this (although I've never programmed in C# before). Please let me know if there's any other information that I should provide.
Related branches
tags: | removed: docky feature |
Changed in docky: | |
status: | Fix Committed → Fix Released |
Changed in docky: | |
milestone: | none → 2.0.2 |
Good thinking, but not the right solution.
The problem is that Docky needs to be able to automatically take a running application and figure out which .desktop file launched it. This is *hard* to do. Using WM_CLASS makes it almost impossible, as the class is usually not the same string as the launcher. Our current method works for most non-Java programs. Eclipse is a Java program and thus falls into this current deficiency.