-
Notifications
You must be signed in to change notification settings - Fork 38
try to handle grouping of windows differently #46
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
|
How about setting it to the value of CFBundleIdentifier? That seems to be the closest to "org.gnome.appname". |
That detail seems only to be done for that GNOME app, you may try to inspect random apps you are running. Furthermore, i don't know how to access in an efficient way the CFBundleIdentifier in XGServerWindow |
|
@fredkiefer do we use res_class for anything else? We left this stale... would be nice to make it before release. |
fredkiefer
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think this change is fine. What we should think about is, what we set the variable res_name to. There is no use in setting both variables to the same value. One should check with other X11 applications what is the current usage.
|
…the App name from NSProcessInfo, that way certaain windowmanagers (e.g. Xfce) can group windows per application, and not lump all GS apps together
user-friendly than full bundle identifier alternative.
|
@rfm I cleaned up and use the process name, as suggested. The Bundle Identifier was too verbose and unexpected in most cases, except certain GNOME applications, but we like to be more user friendly. I hope the C handling of string and memory is correct? No Copy needed! I copied it from the root window. |
fredkiefer
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Not sure if we need the type cast.
we do because UTF8String retunrs a const char* and it needs a cast to char* or we get a warning. I worked though for me. |
XFCE windowmanager groups in the task bar windows when there are many for one application. What I found is that with two or more GNUstep applications, everything was put into a "GNUstep" item, different from the expected experience
After some trial-and error using xprops on various apps (internal XFCe,, GTK tools, Firefox...) I found out the issue is the WM_CLASS atoms, which consists of two strings
for most application they were set like this:
"app name", "App Name"
for some others, like this:
"org.gnome.appname", "AppName"or even a functional name, e.g Firefox has: "Navigator", "Firefox" which I bet is a heritage of when there was Navigator, Mail, Composer, Chat
we were setting
"AppName", "GNUstep"Since in the place I only have NSProcessInfo, (using the domain or a functional name like Firefox).. so now we can set e.g.
"Ink", "Ink".At a first test, it works in XFCE!
I wonder: