Re: Smooth window resizing

2004-10-01 Thread Daniel Brockman
Igor Gorbounov [EMAIL PROTECTED] writes:

 Hi, All!

 I wonder if there is a way to resize a window gradually (as if
 animated) when a, for examle, set_size_request(...) is issued. Now
 the window is resized abruptly as a treeview is expanded (and that
 bothers the users).

That kind of thing is very annoying if you use a window manager that
insists on windows being a particular size (ratpoison, ion, etc.).  In
fact, it usually renders the application completely unusable (see
xmbdfed for a good example).

So I'd recommend against[1] trying to animate-resize windows.

-- 
Daniel Brockman
[EMAIL PROTECTED]

[1] beg for the avoidance of

___
gtk-list mailing list
[EMAIL PROTECTED]
http://mail.gnome.org/mailman/listinfo/gtk-list


Re: Smooth window resizing

2004-10-01 Thread Michael L Torrie
On Fri, 2004-10-01 at 16:36 +0200, Daniel Brockman wrote:
 Igor Gorbounov [EMAIL PROTECTED] writes:
 
  Hi, All!
 
  I wonder if there is a way to resize a window gradually (as if
  animated) when a, for examle, set_size_request(...) is issued. Now
  the window is resized abruptly as a treeview is expanded (and that
  bothers the users).
 
 That kind of thing is very annoying if you use a window manager that
 insists on windows being a particular size (ratpoison, ion, etc.).  In
 fact, it usually renders the application completely unusable (see
 xmbdfed for a good example).
 
 So I'd recommend against[1] trying to animate-resize windows.

Smooth resizing is really going to be a function of synchronization with
the X server.  X.org will soon support this.  This will allow normal
resizing to always be smooth (and fast).  This is the best way to do it.


-- 

___
gtk-list mailing list
[EMAIL PROTECTED]
http://mail.gnome.org/mailman/listinfo/gtk-list


Re: Smooth window resizing

2004-10-01 Thread David Necas (Yeti)
On Fri, Oct 01, 2004 at 10:08:06AM -0600, Michael L Torrie wrote:
 
 Smooth resizing is really going to be a function of synchronization with
 the X server.  X.org will soon support this.  This will allow normal
 resizing to always be smooth (and fast).  This is the best way to do it.

I always thought you can have at most two of smooth, fast,
and opaque when resizing.  Could you elaborate on how can
you achieve all?

Yeti


--
Do not use tab characters. Their effect is not predictable.
___
gtk-list mailing list
[EMAIL PROTECTED]
http://mail.gnome.org/mailman/listinfo/gtk-list


Re: Smooth window resizing

2004-10-01 Thread Michael L Torrie
On Fri, 2004-10-01 at 18:38 +0200, David Necas (Yeti) wrote:
 On Fri, Oct 01, 2004 at 10:08:06AM -0600, Michael L Torrie wrote:
  
  Smooth resizing is really going to be a function of synchronization with
  the X server.  X.org will soon support this.  This will allow normal
  resizing to always be smooth (and fast).  This is the best way to do it.
 
 I always thought you can have at most two of smooth, fast,
 and opaque when resizing.  Could you elaborate on how can
 you achieve all?

Use a mac!

Seriously, though, on Windows XP, turn on opaque resizing, and size an
average window.  You'll find it sizes both smooth and fast.  Mac is the
same way.  Now try it on Linux with a gtk app.  You see the gtk app
stutter and redraw like mad.  That's because there's no synchronization
between the windowing system and the widget set. The widgets are merely
reacting (not very quickly at that) to the window system.  With the new
X.org and the compositing manager, we have the concept of framerate.
Essentially the composite manager composites all the windows together
and paints them to the screen at a certain rate.  If the widget set has
a way of synchronizing to this rate, then as the window sizes, the rate
tells us how many resize events to compress into one event and then the
widgets redraw at most once per every frame redraw.  This gives us as
smooth a redraw as the video hardware can handle.  In some cases we
might not be so smooth, but at least the widgets inside the window will
keep up with the window.

Syncing the composite rate with the hardware refresh rate is another
thing that Mac OS X does to eliminate the tearing effect as windows are
dragged opaquely.  

This type of thing doesn't really improve the speed, but it makes things
*look* faster and feel smoother.

Michael


 
 Yeti
 
 
 --
 Do not use tab characters. Their effect is not predictable.
 ___
 gtk-list mailing list
 [EMAIL PROTECTED]
 http://mail.gnome.org/mailman/listinfo/gtk-list
-- 

___
gtk-list mailing list
[EMAIL PROTECTED]
http://mail.gnome.org/mailman/listinfo/gtk-list


Re: Smooth window resizing

2004-10-01 Thread Daniel Brockman
Michael L Torrie [EMAIL PROTECTED] writes:

 On Fri, 2004-10-01 at 16:36 +0200, Daniel Brockman wrote:

 Igor Gorbounov [EMAIL PROTECTED] writes:
 
 Hi, All!

 I wonder if there is a way to resize a window gradually (as if
 animated) when a, for examle, set_size_request(...) is issued. Now
 the window is resized abruptly as a treeview is expanded (and that
 bothers the users).
 
 That kind of thing is very annoying if you use a window manager
 that insists on windows being a particular size (ratpoison, ion,
 etc.).  In fact, it usually renders the application completely
 unusable (see xmbdfed for a good example).
 
 So I'd recommend against[1] trying to animate-resize windows.

 Smooth resizing is really going to be a function of synchronization
 with the X server.  X.org will soon support this.  This will allow
 normal resizing to always be smooth (and fast).  This is the best
 way to do it.

Oh, that's not how I interpreted the question.  I took ``resize a
window gradually (as if animated)'' to mean programatically issuing a
series of resize requests to make a window expand slowly instead of
instantly taking on another size.

The xmbdfed font editor, for instance, does this --- rendering it
completely useless under ratpoison.  Just try to make the xmbdfed
window bigger, and you'll see that under a traditional window manager
the application will *animate* itself back to its desired size.

-- 
Daniel Brockman
[EMAIL PROTECTED]

___
gtk-list mailing list
[EMAIL PROTECTED]
http://mail.gnome.org/mailman/listinfo/gtk-list


Smooth window resizing

2004-09-08 Thread Igor Gorbounov
Hi, All!
I wonder if there is a way to resize a window gradually (as if animated) 
when
a, for examle, set_size_request(...) is issued. Now the window is resized
abruptly as a treeview is expanded (and that bothers the users).
   Igor Gorbounov
___
gtk-list mailing list
[EMAIL PROTECTED]
http://mail.gnome.org/mailman/listinfo/gtk-list


Re: Smooth window resizing

2004-09-08 Thread Tristan Van Berkom
Igor Gorbounov wrote:
Hi, All!
I wonder if there is a way to resize a window gradually (as if animated) 
when
a, for examle, set_size_request(...) is issued. Now the window is resized
abruptly as a treeview is expanded (and that bothers the users).
I'm not sure about this one, but I think that this will help:
http://developer.gnome.org/doc/API/2.0/gtk/GtkContainer.html#gtk-container-set-resize-mode
Cheers,
  -Tristan
___
gtk-list mailing list
[EMAIL PROTECTED]
http://mail.gnome.org/mailman/listinfo/gtk-list