bug-gnustep
[Top][All Lists]
Advanced

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

Re: [bugs #12327] Live window resizing


From: Markus Hitter
Subject: Re: [bugs #12327] Live window resizing
Date: Fri, 18 Mar 2005 10:28:10 +0100


Am 18.03.2005 um 08:55 schrieb Stefan Urbanek:

Citát Markus Hitter <mah@jump-ing.de>:

Am 15.03.2005 um 14:53 schrieb Stefan Urbanek:

URL:
  <http://savannah.gnu.org/bugs/?func=detailitem&item_id=12327>

When using a window manager, such as metacity, that draws windows while resizing, GNUstep draws each view in the window. This consumes too much CPU and causes flickering. This is problem mainly for windows with complex views with lots of drawing inside, including text compositing.

This can be avoided if gnustep has implemented NSView methods:

 inLiveResize
 viewWillStartLiveResize
 viewDidEndLiveResize

Not sure wether it's a good idea to burden GNUstep with this
misbehaviour of the window management. If a window manager uses live
window moving, it should move the contents as well and not ask the app
to redraw the window over and over.

Misbehavior of the window manager? There is no problem with window moving, but
with window resizing.

Yepp. It's clearly an advantage to read _every_ word of a message. :-}

While resizing, you need to redraw the window for each size change as you want to see NSView autoresizing changes to be reflected.

So you want to reduce the detail level a view draws under some circumstances. That's a new concept for OpenStep/GNUstep even if it's common in the 3D world already. How about an API similar to this:

typedef enum {
        NSHeavilyReducedDetailLevel,
        NSReducedDetailLevel,
        NSStandardDetailLevel,
        NSExtendedDetailLevel
} NSDetailLevel;

-(NSDeatailLevel) detailLevel
-(void) setDetailLevel(NSDetailLevel)
-(void) detailLevelChanged (?)

You could change the detail level in other situations as well, e.g. for tiny screens (NSReducedDetailLevel) or if the programmer wants this extra fancy GUI (NSExtendedDetailLevel).


Experience in the 3D area tells however, you better live with the flickering than with a suddenly changing appearance of what you see.


Again, just my $0.02


Markus

- - - - - - - - - - - - - - - - - - -
Dipl. Ing. Markus Hitter
http://www.jump-ing.de/







reply via email to

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