After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 648079 - Setting dialog parent with XSetTransientForHint or group leader with XSetWMHints fails if the window in request is not mapped.
Setting dialog parent with XSetTransientForHint or group leader with XSetWMHi...
Status: RESOLVED WONTFIX
Product: mutter
Classification: Core
Component: general
git master
Other Linux
: Normal normal
: ---
Assigned To: Metacity maintainers list
Metacity maintainers list
Depends on:
Blocks:
 
 
Reported: 2011-04-18 08:41 UTC by Dmitry Timoshkov
Modified: 2014-12-29 02:36 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description Dmitry Timoshkov 2011-04-18 08:41:29 UTC
I'm filing this report against Metacity 2.28.x, but as far as I see current
git sources have the same problem.

src/core/window-props.c,reload_transient_for() uses meta_display_lookup_x_window()
to validate a passed in xwindow handle.
src/core/window-props.c,reload_wm_hints() does the same indirectly by calling
meta_window_group_leader_changed().

But meta_display_lookup_x_window() fails for a not mapped window. Unfortunately
Metacity registers a window only in the MapRequest handler.

Neither XSetTransientForHint/XSetWMHints man pages nor ICCCM mention such
a limitation.
Comment 1 Dmitry Timoshkov 2011-06-20 05:40:14 UTC
Obviously mutter has the same codebase and exactly the same problem. Changing
component in the hope that this bug report takes more attention.
Comment 2 Dmitry Timoshkov 2011-08-03 07:54:56 UTC
Is there any hope to get at least some comment to this bug report?
Comment 3 Jasper St. Pierre (not reading bugmail) 2014-12-29 02:36:30 UTC
This is technically against ICCCM spec. From careful reading, it's supposed to be that from the perspective of the WM, unmapped windows are effectively unknown windows. So you can't specify an XID of an unmapped window in any old field.

I know that Wine relies on this behavior, but I'd recommend just fixing wine instead.