Re: Gnome-core



George wrote:
> 
> On Tue, Oct 12, 1999 at 08:21:27PM +0200, Raphael Hertzog wrote:
> > I can assure you that the bug does exist. I can reproduce it with 1.0.53.
> > Juste move your mice rapidly over the panel while reducing. Move it again
> > and again to try to catch the panel before it's hidden. :-)
> 
> I tried and tried, I can't reproduce it. Jacob can but he has not figured out
> what is happening either.

I think I've found the problem: basep->shown_alloc isn't always correct.
It is normally set in snapped_widget_size_allocate().

However basep_widget_do_hiding() calls gtk_widget_queue_resize(), but if you
move the mouse quick enough snapped_enter_notify() will be called first which
will call snapped_widget_pop_up() and basep->shown_alloc will be incorrect.

A quick fix is to set basep->shown_alloc as the window is moved/resized in
basep_widget_do_hiding():

--- basep-widget.c.orig Sat Mar 13 01:57:53 1999
+++ basep-widget.c      Wed Oct 13 21:20:31 1999
@@ -269,6 +269,8 @@
                        w = move_step(ow,dw,start_time,end_time,cur_time);
                        h = move_step(oh,dh,start_time,end_time,cur_time);
                        gdk_window_move_resize(wid->window, x,y,w,h);
+                       basep->shown_alloc.x = x;
+                       basep->shown_alloc.y = y;
                        gdk_flush();
                        usleep(1000);
                }


That seems to work, but I don't know much about the panel code so it may
not be a good idea.

Damon




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