summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog26
-rw-r--r--ChangeLog.pre-2-026
-rw-r--r--ChangeLog.pre-2-1026
-rw-r--r--ChangeLog.pre-2-226
-rw-r--r--ChangeLog.pre-2-426
-rw-r--r--ChangeLog.pre-2-626
-rw-r--r--ChangeLog.pre-2-826
-rw-r--r--gtk/Makefile.am5
-rw-r--r--gtk/gtklayout.c13
-rw-r--r--gtk/gtkmain.c2
-rw-r--r--gtk/gtkobject.c14
-rw-r--r--gtk/gtktypeutils.h4
-rw-r--r--gtk/gtkwidget.c2
-rw-r--r--gtk/gtkwindow.c22
14 files changed, 216 insertions, 28 deletions
diff --git a/ChangeLog b/ChangeLog
index f468f97672..bfda15d2ba 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,29 @@
+Wed Feb 24 11:19:12 1999 Tim Janik <timj@gtk.org>
+
+ * gtk/gtkwidget.c (gtk_widget_size_request): warn about
+ &widget->requisition, even for toplevels.
+
+ * gtk/gtkwindow.c (gtk_window_move_resize): request size into an
+ automatic variable and check if our size has changed.
+ when we decide to reallocate everything, we need to resize our
+ own GdkWindow as well.
+
+ * gtk/gtkmain.c:
+ * gtk/gtkobject.c: hack time, make --gtk-debug=objects work even
+ after gtk_type_init(), this is to "fix" gnome's arg parsing oddities.
+
+ * gtk/gtktypeutils.h: don't segfault in GTK_CHECK_CLASS_TYPE and
+ GTK_CHECK_TYPE upon NULL pointers.
+
+ * gtk/gtklayout.c: removed bogus prototypes of gtk_layout_gravity_works,
+ gtk_layout_set_static_gravity, gtk_layout_add_child_cb and
+ gtk_layout_remove_child_cb to shut up compiler.
+
+ * gtk/Makefile.am: added an empty rule
+ gtkrc:
+ :
+ so make doesn't try to "update" gtkrc from gtkrc.c.
+
Wed Feb 24 05:53:15 CST 1999 Shawn T. Amundson <amundson@gtk.org>
* gtk/Makefile.am: removed gtkrc rule added by
diff --git a/ChangeLog.pre-2-0 b/ChangeLog.pre-2-0
index f468f97672..bfda15d2ba 100644
--- a/ChangeLog.pre-2-0
+++ b/ChangeLog.pre-2-0
@@ -1,3 +1,29 @@
+Wed Feb 24 11:19:12 1999 Tim Janik <timj@gtk.org>
+
+ * gtk/gtkwidget.c (gtk_widget_size_request): warn about
+ &widget->requisition, even for toplevels.
+
+ * gtk/gtkwindow.c (gtk_window_move_resize): request size into an
+ automatic variable and check if our size has changed.
+ when we decide to reallocate everything, we need to resize our
+ own GdkWindow as well.
+
+ * gtk/gtkmain.c:
+ * gtk/gtkobject.c: hack time, make --gtk-debug=objects work even
+ after gtk_type_init(), this is to "fix" gnome's arg parsing oddities.
+
+ * gtk/gtktypeutils.h: don't segfault in GTK_CHECK_CLASS_TYPE and
+ GTK_CHECK_TYPE upon NULL pointers.
+
+ * gtk/gtklayout.c: removed bogus prototypes of gtk_layout_gravity_works,
+ gtk_layout_set_static_gravity, gtk_layout_add_child_cb and
+ gtk_layout_remove_child_cb to shut up compiler.
+
+ * gtk/Makefile.am: added an empty rule
+ gtkrc:
+ :
+ so make doesn't try to "update" gtkrc from gtkrc.c.
+
Wed Feb 24 05:53:15 CST 1999 Shawn T. Amundson <amundson@gtk.org>
* gtk/Makefile.am: removed gtkrc rule added by
diff --git a/ChangeLog.pre-2-10 b/ChangeLog.pre-2-10
index f468f97672..bfda15d2ba 100644
--- a/ChangeLog.pre-2-10
+++ b/ChangeLog.pre-2-10
@@ -1,3 +1,29 @@
+Wed Feb 24 11:19:12 1999 Tim Janik <timj@gtk.org>
+
+ * gtk/gtkwidget.c (gtk_widget_size_request): warn about
+ &widget->requisition, even for toplevels.
+
+ * gtk/gtkwindow.c (gtk_window_move_resize): request size into an
+ automatic variable and check if our size has changed.
+ when we decide to reallocate everything, we need to resize our
+ own GdkWindow as well.
+
+ * gtk/gtkmain.c:
+ * gtk/gtkobject.c: hack time, make --gtk-debug=objects work even
+ after gtk_type_init(), this is to "fix" gnome's arg parsing oddities.
+
+ * gtk/gtktypeutils.h: don't segfault in GTK_CHECK_CLASS_TYPE and
+ GTK_CHECK_TYPE upon NULL pointers.
+
+ * gtk/gtklayout.c: removed bogus prototypes of gtk_layout_gravity_works,
+ gtk_layout_set_static_gravity, gtk_layout_add_child_cb and
+ gtk_layout_remove_child_cb to shut up compiler.
+
+ * gtk/Makefile.am: added an empty rule
+ gtkrc:
+ :
+ so make doesn't try to "update" gtkrc from gtkrc.c.
+
Wed Feb 24 05:53:15 CST 1999 Shawn T. Amundson <amundson@gtk.org>
* gtk/Makefile.am: removed gtkrc rule added by
diff --git a/ChangeLog.pre-2-2 b/ChangeLog.pre-2-2
index f468f97672..bfda15d2ba 100644
--- a/ChangeLog.pre-2-2
+++ b/ChangeLog.pre-2-2
@@ -1,3 +1,29 @@
+Wed Feb 24 11:19:12 1999 Tim Janik <timj@gtk.org>
+
+ * gtk/gtkwidget.c (gtk_widget_size_request): warn about
+ &widget->requisition, even for toplevels.
+
+ * gtk/gtkwindow.c (gtk_window_move_resize): request size into an
+ automatic variable and check if our size has changed.
+ when we decide to reallocate everything, we need to resize our
+ own GdkWindow as well.
+
+ * gtk/gtkmain.c:
+ * gtk/gtkobject.c: hack time, make --gtk-debug=objects work even
+ after gtk_type_init(), this is to "fix" gnome's arg parsing oddities.
+
+ * gtk/gtktypeutils.h: don't segfault in GTK_CHECK_CLASS_TYPE and
+ GTK_CHECK_TYPE upon NULL pointers.
+
+ * gtk/gtklayout.c: removed bogus prototypes of gtk_layout_gravity_works,
+ gtk_layout_set_static_gravity, gtk_layout_add_child_cb and
+ gtk_layout_remove_child_cb to shut up compiler.
+
+ * gtk/Makefile.am: added an empty rule
+ gtkrc:
+ :
+ so make doesn't try to "update" gtkrc from gtkrc.c.
+
Wed Feb 24 05:53:15 CST 1999 Shawn T. Amundson <amundson@gtk.org>
* gtk/Makefile.am: removed gtkrc rule added by
diff --git a/ChangeLog.pre-2-4 b/ChangeLog.pre-2-4
index f468f97672..bfda15d2ba 100644
--- a/ChangeLog.pre-2-4
+++ b/ChangeLog.pre-2-4
@@ -1,3 +1,29 @@
+Wed Feb 24 11:19:12 1999 Tim Janik <timj@gtk.org>
+
+ * gtk/gtkwidget.c (gtk_widget_size_request): warn about
+ &widget->requisition, even for toplevels.
+
+ * gtk/gtkwindow.c (gtk_window_move_resize): request size into an
+ automatic variable and check if our size has changed.
+ when we decide to reallocate everything, we need to resize our
+ own GdkWindow as well.
+
+ * gtk/gtkmain.c:
+ * gtk/gtkobject.c: hack time, make --gtk-debug=objects work even
+ after gtk_type_init(), this is to "fix" gnome's arg parsing oddities.
+
+ * gtk/gtktypeutils.h: don't segfault in GTK_CHECK_CLASS_TYPE and
+ GTK_CHECK_TYPE upon NULL pointers.
+
+ * gtk/gtklayout.c: removed bogus prototypes of gtk_layout_gravity_works,
+ gtk_layout_set_static_gravity, gtk_layout_add_child_cb and
+ gtk_layout_remove_child_cb to shut up compiler.
+
+ * gtk/Makefile.am: added an empty rule
+ gtkrc:
+ :
+ so make doesn't try to "update" gtkrc from gtkrc.c.
+
Wed Feb 24 05:53:15 CST 1999 Shawn T. Amundson <amundson@gtk.org>
* gtk/Makefile.am: removed gtkrc rule added by
diff --git a/ChangeLog.pre-2-6 b/ChangeLog.pre-2-6
index f468f97672..bfda15d2ba 100644
--- a/ChangeLog.pre-2-6
+++ b/ChangeLog.pre-2-6
@@ -1,3 +1,29 @@
+Wed Feb 24 11:19:12 1999 Tim Janik <timj@gtk.org>
+
+ * gtk/gtkwidget.c (gtk_widget_size_request): warn about
+ &widget->requisition, even for toplevels.
+
+ * gtk/gtkwindow.c (gtk_window_move_resize): request size into an
+ automatic variable and check if our size has changed.
+ when we decide to reallocate everything, we need to resize our
+ own GdkWindow as well.
+
+ * gtk/gtkmain.c:
+ * gtk/gtkobject.c: hack time, make --gtk-debug=objects work even
+ after gtk_type_init(), this is to "fix" gnome's arg parsing oddities.
+
+ * gtk/gtktypeutils.h: don't segfault in GTK_CHECK_CLASS_TYPE and
+ GTK_CHECK_TYPE upon NULL pointers.
+
+ * gtk/gtklayout.c: removed bogus prototypes of gtk_layout_gravity_works,
+ gtk_layout_set_static_gravity, gtk_layout_add_child_cb and
+ gtk_layout_remove_child_cb to shut up compiler.
+
+ * gtk/Makefile.am: added an empty rule
+ gtkrc:
+ :
+ so make doesn't try to "update" gtkrc from gtkrc.c.
+
Wed Feb 24 05:53:15 CST 1999 Shawn T. Amundson <amundson@gtk.org>
* gtk/Makefile.am: removed gtkrc rule added by
diff --git a/ChangeLog.pre-2-8 b/ChangeLog.pre-2-8
index f468f97672..bfda15d2ba 100644
--- a/ChangeLog.pre-2-8
+++ b/ChangeLog.pre-2-8
@@ -1,3 +1,29 @@
+Wed Feb 24 11:19:12 1999 Tim Janik <timj@gtk.org>
+
+ * gtk/gtkwidget.c (gtk_widget_size_request): warn about
+ &widget->requisition, even for toplevels.
+
+ * gtk/gtkwindow.c (gtk_window_move_resize): request size into an
+ automatic variable and check if our size has changed.
+ when we decide to reallocate everything, we need to resize our
+ own GdkWindow as well.
+
+ * gtk/gtkmain.c:
+ * gtk/gtkobject.c: hack time, make --gtk-debug=objects work even
+ after gtk_type_init(), this is to "fix" gnome's arg parsing oddities.
+
+ * gtk/gtktypeutils.h: don't segfault in GTK_CHECK_CLASS_TYPE and
+ GTK_CHECK_TYPE upon NULL pointers.
+
+ * gtk/gtklayout.c: removed bogus prototypes of gtk_layout_gravity_works,
+ gtk_layout_set_static_gravity, gtk_layout_add_child_cb and
+ gtk_layout_remove_child_cb to shut up compiler.
+
+ * gtk/Makefile.am: added an empty rule
+ gtkrc:
+ :
+ so make doesn't try to "update" gtkrc from gtkrc.c.
+
Wed Feb 24 05:53:15 CST 1999 Shawn T. Amundson <amundson@gtk.org>
* gtk/Makefile.am: removed gtkrc rule added by
diff --git a/gtk/Makefile.am b/gtk/Makefile.am
index a17e75d540..e81ee14863 100644
--- a/gtk/Makefile.am
+++ b/gtk/Makefile.am
@@ -312,8 +312,11 @@ libgtk_la_LDFLAGS = \
# $(top_builddir)/gdk/libgdk.la
gtkconfdir = $(sysconfdir)/gtk
-gtkconf_DATA = gtkrc.ja gtkrc.ko gtkrc.ru
+gtkconf_DATA = gtkrc gtkrc.ja gtkrc.ko gtkrc.ru
+gtkrc:
+ :
+
# We create a dummy theme for the default GTK+ theme
install-data-local:
diff --git a/gtk/gtklayout.c b/gtk/gtklayout.c
index 8f4197f653..2b55613f2f 100644
--- a/gtk/gtklayout.c
+++ b/gtk/gtklayout.c
@@ -103,19 +103,6 @@ static GdkFilterReturn gtk_layout_main_filter (GdkXEvent *gdk_xevent,
GdkEvent *event,
gpointer data);
-static gboolean gtk_layout_gravity_works (void);
-static void gtk_layout_set_static_gravity (GdkWindow *win,
- gboolean is_parent,
- gboolean on);
-
-static void gtk_layout_add_child_cb (GdkWindow *parent,
- GdkWindow *child,
- gpointer data);
-static void gtk_layout_remove_child_cb (GdkWindow *parent,
- GdkWindow *child,
- gpointer data);
-
-
static GtkWidgetClass *parent_class = NULL;
static gboolean gravity_works;
diff --git a/gtk/gtkmain.c b/gtk/gtkmain.c
index 975e13f705..08f1e44120 100644
--- a/gtk/gtkmain.c
+++ b/gtk/gtkmain.c
@@ -178,6 +178,7 @@ gboolean
gtk_init_check (int *argc,
char ***argv)
{
+ extern void gtk_object_post_arg_parsing_init (void);
GSList *gtk_modules = NULL;
GSList *slist;
gchar *env_string = NULL;
@@ -385,6 +386,7 @@ gtk_init_check (int *argc,
gtk_colormap = gdk_colormap_get_system ();
gtk_type_init ();
+ gtk_object_post_arg_parsing_init ();
gtk_signal_init ();
gtk_rc_init ();
diff --git a/gtk/gtkobject.c b/gtk/gtkobject.c
index 1a75dfaa0f..2c57960619 100644
--- a/gtk/gtkobject.c
+++ b/gtk/gtkobject.c
@@ -96,6 +96,15 @@ gtk_object_debug (void)
}
#endif /* G_ENABLE_DEBUG */
+void
+gtk_object_post_arg_parsing_init (void)
+{
+#ifdef G_ENABLE_DEBUG
+ if (gtk_debug_flags & GTK_DEBUG_OBJECTS)
+ g_atexit (gtk_object_debug);
+#endif /* G_ENABLE_DEBUG */
+}
+
/****************************************************
* GtkObject type, class and instance initialization
*
@@ -119,11 +128,6 @@ gtk_object_init_type (void)
object_type = gtk_type_unique (0, &object_info);
g_assert (object_type == GTK_TYPE_OBJECT);
-
-#ifdef G_ENABLE_DEBUG
- if (gtk_debug_flags & GTK_DEBUG_OBJECTS)
- g_atexit (gtk_object_debug);
-#endif /* G_ENABLE_DEBUG */
}
GtkType
diff --git a/gtk/gtktypeutils.h b/gtk/gtktypeutils.h
index 1494fa9607..3e657b0cb6 100644
--- a/gtk/gtktypeutils.h
+++ b/gtk/gtktypeutils.h
@@ -107,9 +107,11 @@ typedef enum
/* Determines whether `type_object' and `type_class' are a type of `otype'.
*/
#define GTK_CHECK_TYPE(type_object, otype) ( \
- gtk_type_is_a (((GtkTypeObject*) (type_object))->klass->type, (otype)) \
+ ((GtkTypeObject*) (type_object)) != NULL && \
+ GTK_CHECK_CLASS_TYPE (((GtkTypeObject*) (type_object))->klass, (otype)) \
)
#define GTK_CHECK_CLASS_TYPE(type_class, otype) ( \
+ ((GtkTypeClass*) (type_class)) != NULL && \
gtk_type_is_a (((GtkTypeClass*) (type_class))->type, (otype)) \
)
diff --git a/gtk/gtkwidget.c b/gtk/gtkwidget.c
index cbaf6966e0..b4a2eacb78 100644
--- a/gtk/gtkwidget.c
+++ b/gtk/gtkwidget.c
@@ -2361,7 +2361,7 @@ gtk_widget_size_request (GtkWidget *widget,
g_return_if_fail (GTK_IS_WIDGET (widget));
#ifdef G_ENABLE_DEBUG
- if (!GTK_WIDGET_TOPLEVEL (widget) && (requisition == &widget->requisition))
+ if (requisition == &widget->requisition)
g_warning ("gtk_widget_size_request() called on child widget with widget equal\n to widget->requisition. gtk_widget_set_usize() may not work properly.");
#endif /* G_ENABLE_DEBUG */
diff --git a/gtk/gtkwindow.c b/gtk/gtkwindow.c
index 20e2c98001..04ce74819a 100644
--- a/gtk/gtkwindow.c
+++ b/gtk/gtkwindow.c
@@ -1295,6 +1295,7 @@ gtk_window_move_resize (GtkWindow *window)
{
GtkWidget *widget;
GtkWindowGeometryInfo *info;
+ GtkRequisition requisition;
GtkContainer *container;
gint x, y;
gint width, height;
@@ -1324,33 +1325,37 @@ gtk_window_move_resize (GtkWindow *window)
else
height = widget->requisition.height;
- gtk_widget_size_request (widget, &widget->requisition);
+ size_changed = FALSE;
- /* Figure out the new desired size */
+ gtk_widget_size_request (widget, &requisition);
- size_changed = FALSE;
+ size_changed |= requisition.width != widget->requisition.width;
+ size_changed |= requisition.height != widget->requisition.height;
+ widget->requisition = requisition;
+
+ /* Figure out the new desired size */
if (info && info->width > 0)
{
- size_changed = size_changed || (width != info->last_width);
+ size_changed |= width != info->last_width;
info->last_width = width;
new_width = info->width;
}
else
{
- size_changed = size_changed || (width != widget->requisition.width);
+ size_changed |= width != widget->requisition.width;
new_width = widget->requisition.width;
}
if (info && info->height > 0)
{
- size_changed = size_changed || (height != info->last_height);
+ size_changed |= height != info->last_height;
info->last_height = height;
new_height = info->height;
}
else
{
- size_changed = size_changed || (height != widget->requisition.height);
+ size_changed |= height != widget->requisition.height;
new_height = widget->requisition.height;
}
@@ -1493,6 +1498,9 @@ gtk_window_move_resize (GtkWindow *window)
allocation.height = new_height;
gtk_widget_size_allocate (widget, &allocation);
+ gdk_window_resize (widget->window,
+ new_width,
+ new_height);
}
else
{