gnustep-dev
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Ugly flickering in some views


From: Fred Kiefer
Subject: Re: Ugly flickering in some views
Date: Tue, 24 Jan 2012 23:55:21 +0100
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:9.0) Gecko/20111220 Thunderbird/9.0

On 24.01.2012 20:04, Eric Wasylishen wrote:
Hi Germán,

On 2012-01-23, at 11:15 PM, Germán Arias wrote:

On 2012-01-23 21:16:01 -0600 Eric Wasylishen<address@hidden>  wrote:

Thanks for the info.. this is bad because it sounds like the NSCopyBits is 
causing flickering.
I have another debugging request:
-update gui/back again
-verify the flickering is back.
-open back/Source/cairo/CairoContext.m
and change this section:
//#    define _CAIRO_SURFACE_CLASSNAME XGCairoSurface
//#    include "cairo/XGCairoSurface.h"
//#    define _CAIRO_SURFACE_CLASSNAME XGCairoXImageSurface
//#    include "cairo/XGCairoXImageSurface.h"
#    define _CAIRO_SURFACE_CLASSNAME XGCairoModernSurface
#    include "cairo/XGCairoModernSurface.h"
to this:
//#    define _CAIRO_SURFACE_CLASSNAME XGCairoSurface
//#    include "cairo/XGCairoSurface.h"
#    define _CAIRO_SURFACE_CLASSNAME XGCairoXImageSurface
#    include "cairo/XGCairoXImageSurface.h"
//#    define _CAIRO_SURFACE_CLASSNAME XGCairoModernSurface
//#    include "cairo/XGCairoModernSurface.h"
-make and install back, and try fisicalab again.

This change solves the problem.

I'm assuing you're using the cairo backend. I'm curious if changing from 
XGCairoModernSurface to XGCairoXImageSurface will fix the problem. Also it 
might be worth trying art or xlib, and see if you still get the same flickering.

Yes, I'm using cairo. And with xlib and art all works fine. The problem is only 
with
cairo. I don't understand this problem. But, for example, the fisicalab's 
chalkboard
works fine. Even when is basically the same. An NSView with a lot of buttons 
that
can display images. The only difference is that its content isn't copied from 
another
window. And why this problem occurs only when I move the scrollbar to down?

Thanks.

Ok, thanks for testing. I'm not sure what we should do; I asked Fred's opinion.

If we end up keeping copy-on-scroll on for the release you can put in this hack 
for the problematic scroll view:

[[aScrollView contentView] setCopiesOnScroll: NO];

Not ideal, but debugging flickering problems tends to be very difficult.

German's problem was before you applied r34614, how did that change affect this problem? But that patch seems to have its own problems.

My main problem is when resizing a whole window, this flickers horribly, but I am not sure whether GNUstep is causing this or my driver for the graphic card. But it happens only with GNUstep windows.


What are our options here?

- Find a proper solution within the next few days.

- Disable copy-on-scroll in all scroll views.

- Revert to the old cairo surface.

- Ignore the problem as it only happens for some views.

None of that (apart from the first one, which isn't that realistic) sounds too attractive. Disabling copy-on-scroll will make scroll views horribly slow and affect everybody, even people not using cairo. I think I hate the option to revert the standard cairo surface the least. This should send us back to the way GNUstep was about a year ago, but we can revert this step if we find a proper fix for the open issues.

Fred



reply via email to

[Prev in Thread] Current Thread [Next in Thread]