FLTK logo

STR #2152

FLTK matrix user chat room
(using Element browser app)   FLTK gitter user chat room   GitHub FLTK Project   FLTK News RSS Feed  
  FLTK Apps      FLTK Library      Forums      Links     Login 
 Home  |  Articles & FAQs  |  Bugs & Features  |  Documentation  |  Download  |  Screenshots  ]
 

Return to Bugs & Features | Roadmap 1.3 | SVN ⇄ GIT ]

STR #2152

Application:FLTK Library
Status:1 - Closed w/Resolution
Priority:3 - Moderate, e.g. unable to compile the software
Scope:3 - Applies to all machines and operating systems
Subsystem:X11
Summary:Resize / redraw problems with X11
Version:1.3-current
Created By:AlbrechtS
Assigned To:AlbrechtS
Fix Version:1.3-current (SVN: v7636)
Update Notification:

Receive EMails Don't Receive EMails

Trouble Report Files:


Name/Time/Date Filename/Size  
 
#1 a.rburgers.quicknet
09:54 Feb 15, 2009
editor_X11_stipple.bmp
2.2M
 
     

Trouble Report Comments:


Name/Time/Date Text  
 
#1 AlbrechtS
09:17 Feb 15, 2009
This is a reminder for some strange resize / display problems with X11 and some X servers. The problem appeared when X11 support was added to FLTK 1.3 with cygwin, but it is not directly related to cygwin/X11. There are some strange combinations WRT which client, which server, and which mode (cygwin/X server in multiwindow or single/rooted window mode), and if xdbe support is enabled on the client (application) side.

For further information, please refer to STR 2147 [1]. More test results should be added here ...

There is also a current discussion about a resizing/redrawing problem in the cygwin xfree mailing list [2], that seem related (and maybe will solve our problem ? We should watch this and see if it helps, when a new X server will be released.

The current workaround is to disable xdbe on the client side.

-----
[1] http://www.fltk.org/str.php?L2147
[2] http://cygwin.com/ml/cygwin-xfree/2009-02/msg00118.html
 
 
#2 AlbrechtS
00:17 Feb 25, 2009
There's a new release [1] of cygwin's xorg-server-1.5.3-7 with a "fix for flickering when resizing in multiwindow mode", but this doesn't solve our problem :-(

In my tests I can still see the same resizing problem with --enable-xdbe.
-----
[1] http://cygwin.com/ml/cygwin-xfree-announce/2009-02/msg00007.html
 
 
#3 matt
02:00 Apr 05, 2010
Is this a dupe of 2039? Please test!  
 
#4 AlbrechtS
09:49 Apr 06, 2010
No, I don't think so (i.e. no duplicate). I checked this already, but IMHO it's more the opposite. This STR is about enlarging a window with XDBE enabled, and STR #2039 seems to be a problem with shrinking a window, but with only some (or maybe one) window manager(s).

However, I could also be wrong.

To this STR (#2152): I'm not familiar with X11/XDBE internals, but my impression was that FLTK is doing something like its own double buffering - maybe only if "real" double buffering is not available. Is this possible, maybe with an Fl_Offscreen? Then, when the window is enlarged, the increased window size is "lost" somehow, and the new (bigger) part of the window is never drawn. At least that's how it looks. The widgets seem to resize, but there's a black or otherwise undrawn part of the window.

New tests: It looks like an interaction with X servers and/or window managers. I just started the app (test/tabs) on an Ubuntu Linux system (a VM = virtual machine) and redirected the output to different X servers:

 (1) local: works
 (2) VM with Fedora 11: works
 (3) Windows 7 with Cygwin X server: fails
 (4) Windows XP with older Cygwin X server: fails with warning

The warning written to stderr is:
'Xlib:  extension "Generic Event Extension" missing on display "localhost:12.0".'

The server localhost:12.0 is the correct server (ssh X forwarding), and the app runs, but shows the fault.

Does anybody know what X server part (module/lib) might contain this? I tried with libxcb (runtime), but this didn't change the symptoms.

If this is a Cygwin X server problem, then we could probably close this STR. Continuing tests...
 
 
#5 a.rburgers.quicknet
14:10 May 10, 2010
this issue still exists. It affects cygwin's xwin in multiwindow mode.

I notided the cube demo on 1.1.3 behaves well on resizing, no issue.
This demo does not use Fl::run() but implements its own mainloop.

fltk 1.1.10 demos also have no issus when displaying on xwin -multiwindow.
It does not matter whether they are compiled on cygwin or e.g. linux
 
 
#6 AlbrechtS
01:48 Jun 09, 2010
After some more investigation it looks as if some X servers (e.g. Cygwin)
don't work correctly if XDBE is active and the window size is increased.

This can be fixed by deallocating the current back buffer (name) in
Fl_Double_Window::resize() and thus forcing the allocation of a new back
buffer later (in Fl_Double_Window::flush()).

This shouldn't be necessary, but some X servers (e.g. Cygwin, maybe only
in multi-window mode) appear not to enlarge the back buffer if necessary.

Reference: http://www.xfree86.org/current/dbelib.pdf

Chapter 3 Concepts:
        "Both buffers associated with a window have the same
         visual type, depth, width, height, and shape as the window."

Chapter 3.1 Window Management Operations:
        "If the core ConfigureWindow request changes the size of
         a window, both buffers assume the new size."
 
 
#7 AlbrechtS
01:53 Jun 09, 2010
Teun, this is fixed now for FLTK 1.3. Please note that the same bug is in FLTK 1.1, but in FLTK 1.1 the default is --disable-xdbe. This might explain why you didn't see the effects in FLTK 1.1.

Please test and confirm that svn -r 7636 fixes the issue for you.

FWIW: the same patch can also be applied to 1.1.10.
 
 
#8 AlbrechtS
01:55 Jun 09, 2010
Fixed in Subversion repository.

This STR will be closed after confirmation or about two weeks.
 
     

Return to Bugs & Features ]

 
 

Comments are owned by the poster. All other content is copyright 1998-2024 by Bill Spitzak and others. This project is hosted by The FLTK Team. Please report site problems to 'erco@seriss.com'.