xpra icon
Bug tracker and wiki

Opened 9 days ago

Last modified 7 days ago

#1916 new defect

Bug with satyOnTop function

Reported by: ibuprofene Owned by: ibuprofene
Priority: major Milestone: 2.4
Component: client Version: 2.3.x
Keywords: popup Cc:

Description (last modified by Antoine Martin)

I have been forwarding a software with xpra and everything is fine except one thing. When I want to use the login function, a pop-up window is supposed to appear to let me put login and password but with xpra the windows appears and disappears instantaneously !

So I have investigated and I had reproduced the bug by using the stayOnTop function. stayOnTop is a function over the framework Qt, I cannot really know how it works because it's proprietary software ...

So I succeeded "fixing" the bug with a trick:

while true; do
    xwininfo -display $XPRADISPLAY -root -children | tail -n+7 | head -n-1 | grep -viPe '(xpra|wccoaui|has no name?)' | xargs -L 1 | cut -d' ' -f1 | xargs -i xdotool windowmap {}
    sleep 1

I catch the window and I force it to reappear, but there is probably a much better way to do it.

Here: https://pastecode.xyz/view/raw/0fdc7b5f , there is a diff between before apply the fix and after, it seem that it comes from map state and parent window fields, they differ in the diff.

I hop I gave you enough information to understand the issue, thank you in advance.

Change History (7)

comment:1 Changed 8 days ago by Antoine Martin

Description: modified (diff)
Owner: changed from Antoine Martin to ibuprofene

Please provide a sample application Qt so that I can reproduce the bug.

You may also want to run the server with the "-d window" flag, just long enough to trigger the bug as this is quite verbose.

FYI: in 2.4, you can force map all windows with:

xpra control $XPRADISPLAY show-all-windows

comment:2 Changed 8 days ago by ibuprofene

I didn't find this option:

2018-07-12 00:56:04,500 invalid command: 'show-all-windows' (must be one of: suspend, help, encoding, focus, toggle-feature, set-lock, sound-output, unlock-batch-delay, quality, video-region-detection, min-speed, start-child, compression, reset-video-region, lock-batch-delay, speed, auto-refresh, idle-timeout, video-region, start, min-quality, print, scaling, send-file, resume, video-region-enabled, encoder, open-url, set-sharing, key, client-property, name, scaling-control, server-idle-timeout, ungrab, send-notification, refresh, video-region-exclusion-zones, client, workspace, set-ui-driver, debug, clipboard-direction, hello, close-notification)


$ xpra --version
xpra v2.4-r19869

Do I have the good version ?

comment:3 Changed 8 days ago by Antoine Martin

Milestone: 2.4

xpra v2.4-r19869
Do I have the good version ?

No, that's too old.

You have not specified what distribution you are running, so I can't say if that's expected or not.

Last edited 8 days ago by Antoine Martin (previous) (diff)

comment:4 Changed 8 days ago by ibuprofene

Centos 7.5, I added the beta repository.

comment:5 Changed 8 days ago by Antoine Martin

Centos 7.5, I added the beta repository.

Try now.

comment:6 Changed 8 days ago by ibuprofene

Sorry but I have still the same version.

comment:7 Changed 7 days ago by ibuprofene

Ok, I retried this morning and now it has been updated, unfortunately the option show-all-windows does not fix the problem, I'm trying to reproduce the bug with Qt but I don't know exactly what are the Qt functions that they used to build the stayOnTop function so I don't know how to do

Note: See TracTickets for help on using tickets.