Re: Double buffering flicker on window resize.

Johannes Hofmann <[email protected]>
Newsgroups gmane.comp.web.dillo.devel
Message-ID <[email protected]>
On Wed, Mar 02, 2016 at 06:41:21AM +0200, John Found wrote:
> On Tue, 1 Mar 2016 22:54:34 +0100
> Johannes Hofmann <[email protected]> wrote:
> 
> > with  buffered_drawing=2 dillo uses the Fl_Double_Window class from
> > FLTK, so the result should be similar to e.g. the test/fonts program
> > from FLTK. Do you have it available and can test how that program
> > feels when resizing on your system?
> > In my setup I only get some light flickering at the scroll bars with
> > buffered_drawing=2. Whereas I see heavy flickering with
> > buffered_drawing=0.
> > Do you see any difference between buffered_drawing=0 and
> > buffered_drawing=2?
> > 
> 
> Yes. These are different kind of flickering. On buffered_drawing=0 I see
> how Dillo redraws the page content on the window surface. No artifacts,
> only normal redraws one after another. On buffered_drawing=1 is 
> approximately the same but a little bit rarely. 
> 
> While on buffered_drawing=2, when the user resize the window, the whole window becomes 
> full of garbage - this is specific kind of garbage. It happens when you reuse some 
> memory previously used to store images with different sizes and then allocate it for 
> a new image and draw it on the screen as it is. A mess of graphical scanlines, 
> rectangles full of color, distorted images of different kind.
> 
> Unfortunately, I can't get screenshot, because it is a dynamic effect. After stopping
> resizing window, the last redraw is OK. 

As buffered_drawing=2 uses Fl_Double_Window from FLTK which in turn
tries to use the Xorg DOUBLE-BUFFER extension, you might want to try
xdpyinfo | grep DOUBLE-BUFFER
to see if this extension is enabled on your system and either
disable or enable it in your xorg.conf to see if that makes a
difference.
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.