Using current CVS head, when I open gtranslator (version 1.0.2) with an existing po-file, it opens a dialog window where I can edit the header of the po file. This dialog window is opened behind the root window and not in the foreground as it should.
Additional information: This is the xprop output of the dialog window except _NET_WM_ICON: _NET_WM_USER_TIME(CARDINAL) = 1903032 WM_TRANSIENT_FOR(WINDOW): window id # 0x1e0004d _NET_WM_ICON_GEOMETRY(CARDINAL) = 350, 832, 168, 28 WM_STATE(WM_STATE): window state: Normal icon window: 0x0 _NET_WM_ALLOWED_ACTIONS(ATOM) = _NET_WM_ACTION_CLOSE, _NET_WM_ACTION_MAXIMIZE_HORZ, _NET_WM_ACTION_MAXIMIZE_VERT, _NET_WM_ACTION_SHADE _NET_WM_DESKTOP(CARDINAL) = 1 _WIN_WORKSPACE(CARDINAL) = 1 _WIN_STATE(CARDINAL) = 0 _NET_WM_STATE(ATOM) = _NET_WM_STATE_MODAL WM_HINTS(WM_HINTS): Client accepts input or input focus: True Initial state is Normal State. bitmap id # to use for icon: 0x1e0001a bitmap id # of mask for icon: 0x1e00021 window id # of group leader: 0x1e00001 XdndAware(ATOM) = ARC _MOTIF_DRAG_RECEIVER_INFO(_MOTIF_DRAG_RECEIVER_INFO) = 0x6c, 0x0, 0x5, 0x40, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x17, 0x8, 0x10, 0x0, _NET_WM_WINDOW_TYPE(ATOM) = _NET_WM_WINDOW_TYPE_DIALOG WM_CLIENT_LEADER(WINDOW): window id # 0x1e00001 _NET_WM_PID(CARDINAL) = 4575 WM_LOCALE_NAME(STRING) = "en_US.UTF-8" WM_CLIENT_MACHINE(STRING) = "medusa.local" WM_NORMAL_HINTS(WM_SIZE_HINTS): program specified minimum size: 552 by 296 window gravity: NorthWest WM_PROTOCOLS(ATOM): protocols WM_DELETE_WINDOW, WM_TAKE_FOCUS, _NET_WM_PING WM_CLASS(STRING) = "gtranslator -- header", "gtranslator" WM_ICON_NAME(STRING) = "gtranslator -- edit header" _NET_WM_ICON_NAME(UTF8_STRING) = 0x67, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x6c, 0x61, 0x74, 0x6f, 0x72, 0x20, 0x2d, 0x2d, 0x20, 0x65, 0x64, 0x69, 0x74, 0x20, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72 WM_NAME(STRING) = "gtranslator -- edit header" _NET_WM_NAME(UTF8_STRING) = 0x67, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x6c, 0x61, 0x74, 0x6f, 0x72, 0x20, 0x2d, 0x2d, 0x20, 0x65, 0x64, 0x69, 0x74, 0x20, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72 0x0, 0x0 and of the gtranslator root window: _NET_WM_USER_TIME(CARDINAL) = 2052805 _NET_WM_ICON_GEOMETRY(CARDINAL) = 266, 832, 126, 28 WM_STATE(WM_STATE): window state: Normal icon window: 0x0 _NET_WM_ALLOWED_ACTIONS(ATOM) = _NET_WM_ACTION_CLOSE, _NET_WM_ACTION_MAXIMIZE_HORZ, _NET_WM_ACTION_MAXIMIZE_VERT, _NET_WM_ACTION_CHANGE_DESKTOP, _NET_WM_ACTION_STICK, _NET_WM_ACTION_SHADE _NET_WM_DESKTOP(CARDINAL) = 1 _WIN_WORKSPACE(CARDINAL) = 1 _WIN_STATE(CARDINAL) = 0 _NET_WM_STATE(ATOM) = WM_HINTS(WM_HINTS): Client accepts input or input focus: True Initial state is Normal State. bitmap id # to use for icon: 0x1e0001a bitmap id # of mask for icon: 0x1e00021 window id # of group leader: 0x1e00001 XdndAware(ATOM) = ARC _MOTIF_DRAG_RECEIVER_INFO(_MOTIF_DRAG_RECEIVER_INFO) = 0x6c, 0x0, 0x5, 0x8, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0xbf, 0x10, 0x0, 0x0, 0x0 _NET_WM_WINDOW_TYPE(ATOM) = _NET_WM_WINDOW_TYPE_NORMAL WM_CLIENT_LEADER(WINDOW): window id # 0x1e00001 _NET_WM_PID(CARDINAL) = 4575 WM_LOCALE_NAME(STRING) = "en_US.UTF-8" WM_CLIENT_MACHINE(STRING) = "medusa.local" WM_NORMAL_HINTS(WM_SIZE_HINTS): program specified location: 0, 0 program specified minimum size: 576 by 322 window gravity: NorthWest WM_PROTOCOLS(ATOM): protocols WM_DELETE_WINDOW, WM_TAKE_FOCUS, _NET_WM_PING WM_CLASS(STRING) = "gtranslator", "Gtranslator" WM_ICON_NAME(STRING) = "gtranslator -- /home/andre/Projects/xfce4-showdesktop-plugin/po/de.po" _NET_WM_ICON_NAME(UTF8_STRING) = 0x67, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x6c, 0x61, 0x74, 0x6f, 0x72, 0x20, 0x2d, 0x2d, 0x20, 0x2f, 0x68, 0x6f, 0x6d, 0x65, 0x2f, 0x61, 0x6e, 0x64, 0x72, 0x65, 0x2f, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x78, 0x66, 0x63, 0x65, 0x34, 0x2d, 0x73, 0x68, 0x6f, 0x77, 0x64, 0x65, 0x73, 0x6b, 0x74, 0x6f, 0x70, 0x2d, 0x70, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x2f, 0x70, 0x6f, 0x2f, 0x64, 0x65, 0x2e, 0x70, 0x6f WM_NAME(STRING) = "gtranslator -- /home/andre/Projects/xfce4-showdesktop-plugin/po/de.po" _NET_WM_NAME(UTF8_STRING) = 0x67, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x6c, 0x61, 0x74, 0x6f, 0x72, 0x20, 0x2d, 0x2d, 0x20, 0x2f, 0x68, 0x6f, 0x6d, 0x65, 0x2f, 0x61, 0x6e, 0x64, 0x72, 0x65, 0x2f, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x78, 0x66, 0x63, 0x65, 0x34, 0x2d, 0x73, 0x68, 0x6f, 0x77, 0x64, 0x65, 0x73, 0x6b, 0x74, 0x6f, 0x70, 0x2d, 0x70, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x2f, 0x70, 0x6f, 0x2f, 0x64, 0x65, 0x2e, 0x70, 0x6f
Are you sure you are running an up-to-date version? CVS HEAD doesn't show such an issue with gtranslator.
Yes, I did a fresh checkout today and xfwm4 --version has [andre@medusa po]$ xfwm4 --version This is xfwm4 version 4.1.4 for Xfce 4.1.0 built with GTK+-2.4.1, linked with GTK+-2.4.1. The problem persists.
Sorry, maybe I misunderstood, you mean that the window is open behind the main window *and* you can't raise it above, or simply that the "edit header" window is opened behind but can be raised normally? If it's the later, that's no bug, as the main window is shown afterwards so it's mapped above and focused, that's not a bug with xfwm4 (in fact, it's a feature in xfwm4 because many apps make wrong use of transients)
Yes, I meant the latter. If it's no xfwm4 bug, I'll ask the gtranslator developer to change it, cause it's really annoying. Thanks anyway.
The problem comes from gtranslator that maps a modal dialog before the window for what it's modal. xfwm4 checks for such a case and ignores the modality in that case. Another problem is that, since the dialog is mapped before the main window, the transient field is updated afterwards. That was not supported in xfwm4 because that could cause some trouble if a window specifies another window that has already a transient relatioship, like e.g.: A transient for B transient for C transient for A I've added support for TRANSIENT_FOR field updates and tried to check for the above case. That works with gtranslator, but I still think that what granslator has some opportunity for improvement here.
Resolving the bug now, is works as well as it can (ie w/out changing gtranslator) with CVS code.
mass closing some old resolved bugs; please reopen if in error