gnustep-dev
[Top][All Lists]
Advanced

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

Re: gui patch for review: -[NSView setBounds*:] - remove setNeedsDisplay


From: Eric Wasylishen
Subject: Re: gui patch for review: -[NSView setBounds*:] - remove setNeedsDisplay: YES calls
Date: Tue, 24 Jan 2012 11:05:55 -0700

I investigated this and committed a fix for scrolling in a zoomed TextEdit document yesterday because the fix was quite simple (r34614).

On 2012-01-23, at 4:05 PM, Eric Wasylishen wrote:

I just found a bug caused by re-enabling copy-on-scroll.

Open TextEdit (https://github.com/ericwa/TextEdit), open a document or paste in some text, Choose "Format->Wrap to Page", set the zoom to 150%, and scroll horizontally, slowly. You'll see horizontal blurring. Seems that the regions being copied aren't pixel-aligned.

Should we just disable copy-on-scroll for this release? Ship with this bug? Try using -centerScanRect in 
-[NSView scrollRect: (NSRect)aRect by: (NSSize)delta]? I just fear trying to fix it now will create more bugs at the last minute...

Eric

On 2012-01-20, at 11:54 PM, Eric Wasylishen wrote:

Hi, 
This patch reverts part of r32955 which I committed last april but I now see was a mistake, and I just discovered is breaking the  copy-on-scroll behaviour of NSClipView - we end up always redrawing the entire visible portion of the document view right now.

In r32955 I added [self setNeedsDisplay: YES] calls to -[NSView setBounds:], -setBoundsOrigin:, and -setBoundsSize:, even though these are documented explicitly as not marking the view for needing display. 
(With r32955 I was trying to fix a bug in TextEdit, which calls setBoundsSize: on NSClipView when you change the page zoom, and expects the view to mark itself as needing display. This is actually a bug in TextEdit - it should mark the clip view as needing redisplay itself.)

-Eric

<NSViewBoundsRemoveSetNeedsDisplay.diff>



reply via email to

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