You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Qt4 backend windows don't have WM_CLASS property #4746
Thanks @woky for telling us about this. Currently I work on refactoring all the windowing code, so consider this on my todo list when I continue the work on the qt backend.
In your opinion, should all matplotlib windows have the same class, or should we differentiate between plot windows and other windows such as the subplot config window?
All programs I've checked so far use one only single class name (well, two, but both same). For instance all Octave figures have
WM_CLASS(STRING) = "Octave", "Octave"
which is fine because Octave GUI elements I use are only figures which I want floating most of time. However, in some programs I wish for different types of windows to have different classes (for instance to make diff window floating in Intellij IDEA). As far as I know all sane tiling WMs can match class by wildcard or regex so if all classes started with matplotlib_ it'd still be easy to match all matplotlib windows (or perhaps more classes could be used). But for me, there'd not be much use for it here as I want all figure related windows floating. So I think it should be what you find most simple and elegant =).
Should be closed by #8394 (except for WX which doesn't expose such an API at all, and for macos where it isn't even clear that WM_CLASS exists at all). Feel free to reopen if a solution appears for WX or if this is actually useful on OSX as well.
Activity
OceanWolf commentedon Jul 20, 2015
Thanks @woky for telling us about this. Currently I work on refactoring all the windowing code, so consider this on my todo list when I continue the work on the qt backend.
In your opinion, should all matplotlib windows have the same class, or should we differentiate between plot windows and other windows such as the subplot config window?
woky commentedon Jul 20, 2015
@OceanWolf Thank you for your efforts.
All programs I've checked so far use one only single class name (well, two, but both same). For instance all Octave figures have
WM_CLASS(STRING) = "Octave", "Octave"which is fine because Octave GUI elements I use are only figures which I want floating most of time. However, in some programs I wish for different types of windows to have different classes (for instance to make diff window floating in Intellij IDEA). As far as I know all sane tiling WMs can match class by wildcard or regex so if all classes started with
matplotlib_it'd still be easy to match all matplotlib windows (or perhaps more classes could be used). But for me, there'd not be much use for it here as I want all figure related windows floating. So I think it should be what you find most simple and elegant =).tacaswell commentedon Jul 20, 2015
I looked into doing something about this awhile ago and got lost in the details of where you set this in pyqt.
I don't know if any of the other backends do this either.
wmvanvliet commentedon Aug 17, 2015
some backends do set something, others do not (notably the qt4agg backend doesn't set anything)
languitar commentedon Mar 28, 2017
This is also valid for the
Qt5Aggin recent matplotlib versions.anntzer commentedon Aug 31, 2017
Should be closed by #8394 (except for WX which doesn't expose such an API at all, and for macos where it isn't even clear that WM_CLASS exists at all). Feel free to reopen if a solution appears for WX or if this is actually useful on OSX as well.