GNOME Bugzilla – Bug 60623
resizing problems
Last modified: 2004-12-22 21:47:04 UTC
The new resizing logic seems to have some problems. I observed them in the stock item browser in gtk-demo. Start it up, select a few items (starting with short macros and move to longer ones, to force repeated growth of the selected frame. What sometimes happens is that the toplevel is grown large enough, but the frame stays at its previous size, so that the macro is not displayed completely. Probably just somebody waiting on a (synthesized) configure event, since moving the toplevel around using the wm makes the frame resize properly. I've attached a screenshot.
Created attachment 5613 [details] the screenshot
I saw a similar bug yesterday. Basically queuing resize on a label doesn't seem to resize its parent widgets or something. I don't know if it's a label-specific issue or not but the test case I have is also using a label.
*** Bug 60266 has been marked as a duplicate of this bug. ***
There seems to be lots of problems with resizing in gtk 1.3. If you remove/hide/paned_set_position a widget it doesn't resize automatically. Some new examples: 1. If you hide I child widget the other widgets doesn't resize to the new free area. 2. gtk_widget_reparent() to remove/insert the widget fails to calculating resize. 3. gtk_paned_set_position doesn't resize if widget is realized.
Owen investigated, it turns out that the resize code assumes all configure requests result in a configure notify, but this is not true if the configure request doesn't actually modify the window size, apparently. (Though the ICCCM seems to require it, with many WMs including Sawfish and Metacity it isn't happening.)
Fixed in CVS, I hope. Mon Sep 24 15:09:08 2001 Owen Taylor <otaylor@redhat.com> * gtk/gtkwindow.c (gtk_window_move_resize): Don't wait for a response back from the window manager if our size hasn't changed since we won't get a response back from the window manager; there was code in there to do this, but it was in the wrong place so if the hints change and the size didn't we'd expect a response. Also, optimize the position-only-changed case by running the resize queue immediately, and clean up some comments for the changes.
*** Bug 59721 has been marked as a duplicate of this bug. ***