Bug 21540 - multiwindow stacking/redraw bug (win32)
Summary: multiwindow stacking/redraw bug (win32)
Status: RESOLVED INVALID
Alias: None
Product: xorg
Classification: Unclassified
Component: Server/DDX/Xwin (show other bugs)
Version: 7.4 (2008.09)
Hardware: Other Windows (All)
: medium normal
Assignee: Jon Turney
QA Contact: Xorg Project Team
URL:
Whiteboard: 2011BRB_Reviewed
Keywords:
Depends on:
Blocks:
 
Reported: 2009-05-04 02:38 UTC by Gary Steele
Modified: 2018-06-12 18:44 UTC (History)
2 users (show)

See Also:
i915 platform:
i915 features:


Attachments

Description Gary Steele 2009-05-04 02:38:21 UTC
Hi,

I've noticed a bug with the redrawing of windows under win32 with multiwindow mode.

I am using Cygwin/X version 1.5.3 (20090222), which I believe (?) is based on xorg 7.4.

I use a program called "VirtualWin" to add virtual desktop functionality under XP. When switching between two desktops that contain Xorg windows, it frequently occurs that the contents of the windows one the new desktop are drawn with the contents of overlapping windows on the previous desktop. I've illustrated this here with some screenshots:

http://qt.tn.tudelft.nl/~gsteele/desktop_emacs.jpg 
http://qt.tn.tudelft.nl/~gsteele/desktop_xterm.jpg 

I have also noticed this bug when using a program "TrueXMouse", which emulates full mouse focus under XP. It seems that using these programs, Xorg sometimes get confused about which window is on top of which, and draws the incorrect window contents. 

Has this bug been reported before? I did not find it my searches of the bug reporting system.

Thanks,
Gary
Comment 1 Jon Turney 2009-05-20 05:43:31 UTC
Thanks for the bug report.  There's actually two separate issues which you are seeing.

1) the Cygwin X server, when run in -multiwindow mode, doesn't actually unmap windows which are minimized, it merely moves them to the bottom of the stacking order.  Obviously this confuses VirtualWin, which uses minimization to hide windows.

I'm not sure if this is a long-standing bug, or historical behaviour needed for some other reason.  

There is a patch being worked on to address this issue, but it is not ready yet. See http://sourceware.org/bugzilla/show_bug.cgi?id=9855 

2) The code for -multiwindow mode which synchronizes the window stacking order between Windows and X seems to sometimes get confused, particually when operating in 'focus-follows-mouse' mode.  A clear sequence of steps to reproduce this problem would help to progress this.
Comment 3 Pete 2010-09-07 08:58:31 UTC
Here's my post on the mailing list regarding this problem, with steps to reproduce:

http://cygwin.com/ml/cygwin-xfree/2010-09/msg00016.html

> VirtuaWin (http://virtuawin.sourceforge.net/) is a virtual desktop
> manager for Windows that lets you switch between several "virtual
> desktops", similar to those provided in KDE & Gnome.
>
> When switching between desktops that have CygwinX windows open,
> occasionally the Xserver draws to the wrong window. This is difficult
> to describe, so will continue with an example:
>
> Using Windows 7, Cygwin/X v1.8.0
>
> Steps to reproduce:
> 1) Install VirtuaWin from http://virtuawin.sourceforge.net/
> 2) Start the CygwinX server
> 3) Open a (DOS) cygwin window
> 4) Type "xterm &" twice, to open two xterm windows. Maximise these two
> windows to full screen.
> 5) Move one of these windows to desktop2
> 6) Type "ping google.com -n 1000" to get a stream of data appearing in
> the xterm window on desktop2
> 7) Go back to desktop1, and make sure the DOS cygwin window is selected
> 8) Switch back to desktop2. The "ping" xterm window should be selected.
> 9) Switch back to desktop1. The cygwin window should be selected.
>
> What should happen:
> The empty xterm session on desktop1 should be displayed in the window
> behind the cygwin window
>
> What happens:
> The ping data stream appears in the xterm window on desktop1, and
> continues receiving updates every second.
> Selecting the xterm window causes the ping data to disappear and the
> empty xterm session to be displayed correctly.
>
> This is reproducible every time. The critical thing is that if the
> xterm window on desktop1 is not selected after a desktop switch, it
> shows the data from the xterm window on desktop 2.
>
> FWIW, this problem doesn't exist with xming [version 6.9.0.31], and 
> I haven't seen the issue with any other applications.
Comment 4 Adam Jackson 2018-06-12 18:44:09 UTC
Mass closure: This bug has been untouched for more than six years, and is not obviously still valid. Please file a new report if you continue to experience issues with a current server.


Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.