]> Pileus Git - ~andy/gtk/blob - ChangeLog.pre-2-2
changed "proximity-in-event", "drop-data-available-event",
[~andy/gtk] / ChangeLog.pre-2-2
1 Mon May 18 04:01:41 1998  Tim Janik  <timj@gtk.org>
2
3         * gtk/gtkwidget.c (gtk_widget_class_init): changed "proximity-in-event",
4         "drop-data-available-event", "drop-enter-event" and "drop-leave-event"
5         to be of runtype GTK_RUN_LAST.
6
7         * gtk/gtkcontainer.c (gtk_container_class_init): likewise for
8         "need-resize".
9
10         * gtk/gtktipsquery.c (gtk_tips_query_class_init): likewise for
11         "widget-selected".
12
13 Sat May 16 09:04:32 1998  Tim Janik  <timj@gtk.org>
14
15         * gtk/gtkfilesel.c (gtk_file_selection_key_press): g_strdup() the
16         text retrived from GtkEntry. only intercept the Tab key if there
17         was some text to complete.
18
19 Fri May 15 21:16:54 1998  Owen Taylor  <otaylor@gtk.org>
20
21         Basic thread-awareness:
22
23         * acconfig.h configure.in: New option --with-threads=[yes/posix/no]
24
25         * gdk/Makefile.am gdk/gdkthreads.c: Added new functions 
26         gdk_threads_[init/enter/leave] for applications, plus
27         gdk_threads_wake to wake the mainloop thread out of
28         the select().
29
30         * gtk/Makefile.am: gtk/testthreads.c: Test program for threads
31
32 Fri May 15 12:08:48 1998  Owen Taylor  <otaylor@gtk.org>
33
34         * gtk/testgtk.c (list_clear): Account for the fact
35         that gtk_list_clear_items is not inclusive. (Clears
36         [start, end))
37
38 Fri May 15 12:31:27 1998  rodo  <doulik@karlin.mff.cuni.cz>
39
40         * gdk/gdk.c: include gdkkeysyms.h always
41         
42
43 Fri May 15 09:44:10 1998  Tim Janik  <timj@gtk.org>
44
45         * gtk/gtkwidget.h (struct _GtkWidgetClass): corrected returntype of
46         the visibility_notify_event method and changed method order.
47
48 Thu May 14 03:04:43 1998  Tim Janik  <timj@gtk.org>
49
50         * gtk/gtk.defs: added GtkButtonBoxStyle and GtkOrientation definitions
51         from Olli Helenius <ollhel@batman.jytol.fi>.
52
53         * gtk/gtktypeutils.c (gtk_type_free): new function to take care about
54         freeing types.
55         (gtk_type_set_chunk_alloc): new function to allow allocation of new
56         types from a mem_chunk of certain size (n_chunks==0 indicates allocation
57         thorugh g_malloc).
58
59         * gtk/gtkobject.c (gtk_object_finalize): free an object through
60         gtk_type_free().
61
62         * gtk/gtkbutton.c (gtk_button_get_type): set chunk preallocation for
63         GtkButtons to 16.
64         * gtk/gtkmenuitem.c (gtk_menu_item_get_type): likewise (16).
65         * gtk/gtklabel.c (gtk_label_get_type): likewise (32).
66
67 Wed May 13 00:53:52 1998  Owen Taylor  <otaylor@gtk.org>
68
69         * gtk/gtktypeutils.c gtk/gtksignal.c gdk/gdkdnd.c: A few more 
70           GPOINTER_TO_UINT fixes.
71
72         * gtk/gtksignal.c: Include <string.h> for memset.
73
74 Tue May 12 23:10:53 1998  Owen Taylor  <otaylor@gtk.org>
75         (Maximilian Bisani <bisani@kawo2.rwth-aachen.de>: gtk-bisani-980320-0)
76
77         * gtk/gtkvruler.c gtk/gtkhruler.c gtk/gtkruler.h: 
78         Cleanups, comments and the ability to have rulers with 
79         a reversed direction.
80
81 Tue May 12 19:37:55 1998  Owen Taylor  <otaylor@gtk.org>
82
83         * gtk/gtkrc.c (gtk_rc_parse_file): Fixed up a stat()
84         that Sopwith missed when changing stat => lstat.
85
86 Tue May 12 19:19:29 1998  Owen Taylor  <otaylor@gtk.org>
87
88         * gtk/gtkinputdialog.c gtk/gtkgamma.c gtk/gtkrc.c
89           gtk/gtkcolorsel.c gtk/gtkclist.c gtk/testgtk.c: Use
90         GPOINTER_TO_INT/GINT_TO_POINTER macros where appropriate.
91
92         * gdk/gdk.c: Print sizeof() results
93         as g_print("%ld", (glong)sizeof(foo)), to deal with
94         sizeof() being long on Alpha's.
95
96         * gtk/testgtk.c: include <string.h> for strlen
97
98 Tue May 12 16:56:35 1998  Owen Taylor  <otaylor@gtk.org>
99         (James A <jamesa@demon.net> : gtk-jamesa-980511-4.patch)
100         
101         * gtk/gtkbbox.h gtk/gtkcolorsel.h gtk/gtkvbbox.h:
102         Changed #include "gtkfoo.h" to #include <gtk/gtkfoo.h>
103
104         * gtk/gtkwindow.[ch]: Added const to gtk_window_set_wmclass
105
106 Tue May 12 15:16:10 1998  Owen Taylor  <otaylor@gtk.org>
107         (From: Christopher James Lahey <clahey@umich.edu>)
108         
109         * gtk/gtkbutton.[ch] gtk/gtkenums.h gtk/gtktoolbar.[ch]
110           gtk/testgtk.c:
111
112         Added 'relief' for buttons - they can be either GTK_RELIEF_NORMAL
113         (old style), or GTK_RELIEF_NONE - no relief in the NORMAL
114         state. Added gtk_toolbar_{set,get}_button_relief, which set/get
115         the default relief for the toolbars buttons. Added an
116         toggle for the toolbar test in testgtk.c.
117
118 Tue May 12 00:24:59 1998  Owen Taylor  <otaylor@gtk.org>
119
120         * docs/gtk-config.1: Rewritten and hopefully improved.
121
122 Mon May 11 20:26:39 PDT 1998 Manish Singh <yosh@gimp.org>
123
124         * docs/Makefile.am
125         * docs/gtk-config.1: added man page for gtk-config by Ben Gertzfield
126
127 1998-05-11  Federico Mena Quintero  <federico@nuclecu.unam.mx>
128
129         * gtk/gtkpreview.c (gtk_preview_realize): Create the window using
130         GtkPreview's visual and colormap, otherwise things can BadMatch.
131
132         * gtk/testgtk.c (create_color_preview): 
133         (create_gray_preview): Removed pushing/popping of visual/colormap
134         now that GtkPreview does things correctly.
135
136         * gtk/gtkcolorsel.c (gtk_color_selection_draw_wheel_frame): 
137         (gtk_color_selection_draw_wheel): Pick the style from the correct
138         place (the colorsel->wheel_area widget) so that the GCs will match
139         with where we are going to paint to.
140
141         * gtk/testgtk.c (create_color_selection): Removed pushing/popping
142         of visual/colormap now that GtkColorSelection does things the
143         right way.
144
145 Mon May 11 21:04:51 1998  Owen Taylor  <otaylor@gtk.org>
146
147         * gtk/gtkwindow.c (gtk_real_window_move_resize): Use the
148         previously unused window->need_resize flag to mark if a window's
149         descendents changed size while the window was not visible. In this
150         case, when the window becomes visible, we reallocate everything,
151         since we didn't keep track of what actually changed.
152
153         (Fixes bug where changing the popdown strings of a
154         combo to something of the same length caused them to
155         blank out, as reported by Todd Dukes <tdukes@ibmoto.com>)
156
157 Tue May 12 02:31:57 1998  Tim Janik  <timj@gtk.org>
158
159         [security audit by Alan Cox]
160
161         * gtk/gtkobject.c (gtk_object_get_arg_type): check for arg_name to not
162         exceed maximum assumed size.
163
164         * gtk/gtkmenufactory.c (gtk_menu_factory_create): check that `path' does
165         not exceed maximum assumed size.
166         (gtk_menu_factory_remove): likewise.
167         (gtk_menu_factory_find_recurse): likewise.
168
169 Mon May 11 23:53:38 1998  Tim Janik  <timj@gtk.org>
170
171         * gtk/gtkwidget.c (gtk_widget_queue_resize): queue the idle_sizer with
172         GTK_PRIORITY_INTERNAL - 1, so widgets get first resized and then
173         redrawn if that is still neccessary. don't allow queueing of already
174         destructed objects.
175         (gtk_widget_idle_sizer): proccess the resize queue in a save manner, so
176         widgets which are in the queue can be destroyed safely, handle
177         requeueing properly.
178         (gtk_widget_idle_draw): proccess the redraw queue in a save manner, so
179         widgets which are in the queue can be destroyed/unrealized safely.
180
181 Mon May 11 17:54:44 BST 1998 Tony Gale  <gale@gtk.org>
182
183         * gtkfaq.sgml: add question on multi-threading,
184           minor URL cleanups.
185
186 Mon May 11 09:56:45 1998  Tim Janik  <timj@gtk.org>
187
188         * configure.in (cflags_set): preserve automake CFLAGS.
189
190         * Makefile.am: fully rename the created libraries to libgtk-1.1.la
191         and libgdk-1.1.la. this means we need to change certain portions of
192         the Makefile.am on major/minor version bumps.
193
194         * ltmain.sh: the -release option is not required anymore.
195         
196         * gtk/gtkobject.h (gtk_trace_referencing): compile time check the type
197         of the first argument to be of type GtkObject. unconditionally compile
198         this function. removed __GNUC__ dependancy of the gtk_object_ref and
199         gtk_object_unref macro wrappers for this function.
200
201 Mon May 11 02:31:19 1998  Tim Janik  <timj@gtk.org>
202
203         * gtk/gtkobject.h:
204         * gtk/gtkobject.c:
205         (gtk_object_data_try_key):
206         (gtk_object_data_force_id): these are now macros substituting the old
207         functions. we just use the corresponding g_dataset_* functions for
208         key->id associations. (this is to assure unique key<->id associations).
209
210 1998-05-10  Stefan Jeske  <stefan@gtk.org>
211
212         * gtk/gtkctree.c (gtk_ctree_is_visible): Changed return value
213         to gboolean.
214
215         * docs/gtk.texi (GtkCTree): Started documentation of GtkCTree.
216
217 Sat May  9 20:11:20 1998  Owen Taylor  <otaylor@gtk.org>
218
219         * configure.in (LIBS): Try to figure out if this
220         is Digital Unix and we need -std1 to get the
221         right prototypes.
222
223 Sat May  9 16:30:33 BST 1998 Tony Gale  <gale@gtk.org>
224
225         * docs/gtk_tut_it.sgml: update of Italian tutorial
226           translation from Daniele Canazza <dcanazz@tin.it>
227
228 Sat May  9 02:34:41 1998  Tim Janik  <timj@gtk.org>
229
230         * gtk/gtkfeatures.h.in: new file used as template for
231         * gtk/gtkfeatures.h: new file to define macros indicating newly
232         introduced features, such as GTK_HAVE_SIGNAL_INIT.
233
234         * gtk/gtksignal.c:
235         (gtk_signal_emitv_by_name):
236         (gtk_signal_emitv):
237         new functions to emit signals with an already provided parameter set.
238         (provided by Kenneth Albanowski <kjahds@kjahds.com>).
239         (gtk_signal_real_emit): prototype changes, so this functions always
240         gets its parameters and signal structure as arguments.
241         (gtk_signal_emit): provide the signal structure and parameter list for
242         gtk_signal_real_emit.
243         (gtk_signal_emit_by_name): likewise.
244
245 Sat May  9 00:03:12 1998  Tim Janik  <timj@gtk.org>
246
247         * gtk/gtksignal.c (gtk_signal_handler_unref): reflect the presence of
248         signal connections through unsetting GTK_CONNECTED.
249         (gtk_signal_handler_insert): reflect the presence of signal connections
250         through setting GTK_CONNECTED.
251         (gtk_signal_real_emit): only check for handler emissions if the object
252         has the GTK_CONNECTED flag set.
253         (gtk_signal_handler_pending): don't check for pending handlers if the
254         GTK_CONNECTED flag is not set for this object.
255
256         * gtk/gtkobject.h (enum): new flag GTK_CONNECTED to indicate whether
257         a GtkObject has signal handler connections.
258
259         * gtk/gtkobject.c (gtk_object_real_destroy): only if GTK_CONNECTED is
260         set for this object call gtk_signal_handlers_destroy().
261         
262         * gtk/gtktypeutils.h (GTK_TYPE_IS_A): deprecated macro, since it caused
263         multiple processing of macro args.
264
265         * gtk/gtktypeutils.c:
266         * gtk/gtkobject.c:
267         * gtk/gtkwidget.c:
268         * gtk/gtksignal.c: reverted GTK_TYPE_IS_A back to gtk_type_is_a.
269
270 Fri May  8 21:31:50 1998  Owen Taylor  <otaylor@gtk.org>
271
272         * gtk/gtkwidget.c (gtk_widget_queue_draw): Free the
273         draw-queue when we are done. 
274
275         (gtk_widget_queue_draw/_queu_resize): Always return
276         FALSE and avoid having two idles at the same time.
277         
278 Fri May  8 21:04:00 1998  Owen Taylor  <otaylor@gtk.org>
279
280         * gtk/gtktext.c: Various fixes to make sure cache
281         lines are freed if line_start_cache doesn't point to the
282         beginning of the cache.
283
284 Thu May  7 09:44:22 1998  Owen Taylor  <otaylor@gtk.org>
285
286         * style_set improvements for GtkText and GtkEntry
287
288 Thu May  7 19:03:50 1998  Tim Janik  <timj@gtk.org>
289
290         * gtk/gtktypeutils.c (gtk_type_unique): asure that the type system has
291         been initialized.
292
293 Thu May  7 12:52:45 1998  Tim Janik  <timj@gtk.org>
294
295         * gtk/gtkobject.c (gtk_object_set_data_by_id_full): allocate object
296         data chunks through a global object data structure list. unlink
297         object data before invoking its destroy function.
298         (gtk_object_finalize): slight modification to allow usage of object
299         data during object finalization.
300
301 Thu May  7 10:29:24 1998  Tim Janik  <timj@gtk.org>
302
303         * gtk/gtksignal.c (gtk_signal_newv): suport middle dashes ('-') in
304         signal names, e.g. "signal-name" is now an alias for "signal_name".
305         (gtk_signal_handler_new): allocate handlers through a global handler
306         structure list, that's faster than memchunks.
307         (gtk_emission_new): allocate emissions through a global emission
308         structure list, that's faster than memchunks.
309
310 Thu May  7 05:14:19 1998  Tim Janik  <timj@gtk.org>
311
312         * gtk-config.in (--libs): postfix -lg* libraries with LT_RELEASE.
313
314         * ltmain.sh: added a new commandline flag -postfix similar to -release,
315         but will immediately change the library name.
316
317         * gdk/Makefile.am:
318         * gtk/Makefile.am: specify -postfix and -version-info
319
320         * configure.in: version bump to 1.1.0. added GTK_INTERFACE_AGE and
321         GTK_BINARY_AGE. calculate LT_* variables for libtool.
322
323 1998-05-06  Federico Mena Quintero  <federico@nuclecu.unam.mx>
324
325         * gtk/gtkclist.c (draw_row): Fixed incorrect painting of row
326         background (fg_set -> bg_set confusion).
327
328 1998-05-06  Stefan Jeske  <stefan@gtk.org>
329
330         * gtk/testgtk.c (unselect_all): Removed code that caused an
331         endless loop.
332
333 Wed May  6 02:16:34 1998  Tim Janik  <timj@gtk.org>
334
335         * gtk/gtksignal.c: reimplemented the signal storage system to use a
336         linear array rather than a hash table.
337         be carefull *not* to keep any GtkSignal pointers across invokations
338         of gtk_signal_next_and_invalidate() and therefore gtk_signal_new[v]().
339         general code cleanups, made all allocations through memchunks.
340         (gtk_signal_lookup): we now do the lookup of signals through a key_id
341         for the signal names to avoid multiple hashing of the signal name on
342         lookups for the several hirarchy levels of an object.
343
344 Tue May  5 19:49:27 1998  Owen Taylor  <otaylor@gtk.org>
345
346         * gdk/gdkpixmap.c: Patches from Gordon Matzigkeit
347         to speed things up and remove code duplication.
348
349         Reintegrated buffer overflow patches, and added
350         some extra paranoia.
351         
352 Tue May  5 17:04:14 1998  Owen Taylor  <otaylor@gtk.org>
353
354         * gdk/gdk.c (gdk_event_translate): A guint * was
355         being passed where X expected a Keysym *, and
356         keysyms are long's on Alpha Linux. This was causing
357         segfaults in Xlib, apparently because of alignment.
358         (Bug located by Juergen Haas <haas@forwiss.uni-passau.de>)
359         
360 Tue May  5 19:11:27 1998  Owen Taylor  <otaylor@gtk.org>
361
362         * gtk/gtkdrawingarea.c (gtk_drawing_area_realize): Always
363         set GDK_EXPOSURE_MASK for DrawingAreas
364
365 Tue May  5 14:32:37 1998  Owen Taylor  <otaylor@gtk.org>
366
367         * gtk/gtkwidget.[ch]: removed gtk_widge_propagate_default_style
368         (superceded by RC file reparsing capabilities)
369
370         * gtk/gtkwindow.c: Add handling for _GDK_READ_RFCILES client
371         events. (Shouldn't be sent to the InputOnly leader, which
372         it is now by gdk_event_send_clientmessage_toall
373
374         * gtk/testgtk.c: Added extra button to rcfiles test
375         to send out _GDK_READ_RCFILES events.
376         
377 Tue May  5 11:03:00 1998  Owen Taylor  <otaylor@gtk.org>
378
379         * gtk/gtkselection.c (gtk_selection_clear): Fixed
380         reversed conditionals that caused segfault on some
381         platforms.
382
383 Tue May  5 00:44:47 1998  Owen Taylor  <otaylor@gtk.org>
384
385         * gtk/gtkcontainer.c (gtk_container_set_focus_[hv]adjustment):
386         cast to GTK_OBJECT for gtk_object_ref.
387
388 Tue May  5 15:33:27 1998  Tim Janik  <timj@gtk.org>
389
390         * gtk/gtkmain.c (gtk_init): added gtk_signal_init() to avoid repeatedly
391         checking for signal initialization in gtksignal.c.
392
393         * gtk/gtktypeutils.c (TYPE_NODES_BLOCK_SIZE): reseted this to 200 after
394         a long debugging period ;)
395
396 1998-05-05  Stefan Jeske  <stefan@gtk.org>
397
398         * gdk/gdkgc.c gdk/gdk.h gtk/gtkctree.c (gdk_gc_set_dashes):
399         New function to wrap XSetDashes; modified gtkctree.c to use it.
400
401 1998-05-04  Federico Mena Quintero  <federico@nuclecu.unam.mx>
402
403         * configure.in: Added $x_libs in the other_libraries field in the
404         check for XShapeCombineMask.
405
406 Mon May  4 00:30:11 1998  Tim Janik  <timj@gtk.org>
407
408         * gtk/gtktypeutils.h (GTK_TYPE_IS_A): new macro to speedup
409         gtk_type_is_a().
410         * gtk/gtktypeutils.c: reimplemented the type storage system to use a
411         linear array rather than a hash table. it actually speeded up testgtk
412         for a *considerable* amount. be carefull *not* to keep any GtkTypeNode
413         pointers across invokations of gtk_type_node_next_and_invalidate() and
414         therefore gtk_type_unique()!
415
416         * gtk/gtkobject.h (GTK_IS_OBJECT_CLASS): new macro to test for the
417         inheritance of a class pointer.
418         (GTK_OBJECT): modifications for speedups.
419         (GTK_IS_OBJECT): likewise.
420         (GTK_OBJECT_CLASS): likewise.
421         (suggested by owen).
422
423         * gtk/gtkcontainer.h (GTK_IS_CONTAINER_CLASS): new macro.
424
425         * gtk/gtkwidget.h (GTK_IS_WIDGET_CLASS): new macro.
426
427         * gtk/gtk.defs (GtkTooltips): define GtkTooltips as object not as boxed,
428         since its derivation changed 4 month ago ;(. showed up with the unique
429         type name checking code in gtk_type_unique().
430
431         * random guint->GtkType and macro fixups.
432
433 Sat May  2 23:14:34 1998  Owen Taylor  <otaylor@gtk.org>
434
435         * gtk/gtkcurve.c (gtk_curve_graph_events): Ignore
436         Configure events that would result in a negative
437         size.
438
439 Sun May  3 14:55:34 1998  Owen Taylor  <otaylor@gtk.org>
440
441         * docs/gtkfaq.sgml (CPPFLAGS): Added a FAQ entry about
442         "glibconfig.h" and another about writing another IRC
443         client.
444
445 Sat May  2 00:14:05 1998  Owen Taylor  <otaylor@gtk.org>
446
447         * gtk/gtkpreview.c (gtk_trim_cmap): Make sure the
448         parameters to log are doubles. Digital Unix apparently
449         is missing the argument in its prototype.
450
451 Sun May  3 19:04:46 1998  Owen Taylor  <otaylor@gtk.org>
452
453         * gtk/gtklabel.c (gtk_label_state_changed): Don't
454         force a clear until the widget is actually on
455         screen.
456
457 Sun May  3 21:32:35 1998  Owen Taylor  <otaylor@gtk.org>
458
459         * gdk/gdk.c (gdk_event_translate): Grab with OwnerEvents = False
460         to make this consistent with the gtk-1-0 tree.
461
462 Sun May  3 13:38:22 1998  Owen Taylor  <otaylor@gtk.org>
463
464         * configure.in acheader.h gdk/gdkwindow.c 
465         Check for Shape extension both on the client and server
466         side. (And, more importantly, check for the shape extension
467         so we may include -lXext even when compiling with --disable-xshm)
468
469         Don't set override_redirect on all shaped windows. It isn't
470         necessary.
471
472         * gdk/gdkwindow.c: Set ->colormap to NULL for root 
473         and foreign windows. Use this to check if we
474         need to get the colormap from X.
475
476 Fri May  1 22:32:47 1998  Owen Taylor  <otaylor@gtk.org>
477
478         * gtk/gtkbutton.c (gtk_button_paint): Draw the areas
479         between the default and the button always in GTK_STATE_NORMAL.
480
481         * gtk/gtkrange.c (gtk_range_style_set): Added a style_set
482         callback.
483
484 Fri May  1 16:40:57 1998  Owen Taylor  <otaylor@gtk.org>
485
486         * gdk/gdkpixmap.c (gdk_pixmap_colormap_create_from_xpmp[_d]):
487           Fix a buffer overflow on pixmaps that claim to have
488           more than 31 characters per pixel.
489
490           (gdk_pixmap_read_string): Don't wrap around strings longer
491           than half of address space ;-)
492
493         * gtk/gtk[vh]ruler.c gtk/gtkinputdialog.c: Expand some buffers
494         that were used for printing integers.
495
496         * */* (almost):
497
498         Style: All 
499           int foo () { ... }
500         changed to
501           int foo (void) { ... }
502
503         Even where there were proper prototypes elsewhere.
504
505         * gdk/gxid.c (handle_claim_device): Some extra checks.
506         It isn't safe against being fed bad X id's, but at
507         least it should be safe against deleting all your
508         files.
509
510 Sun May  3 19:45:09 1998  Tim Janik  <timj@gtk.org>
511
512         * gtk/gtkadjustment.c (gtk_adjustment_assimilate_value): new function
513         to set the adjustments value when there is no current emission.
514         [ Removed by mutual agreement owt 5/3/1998 ]
515
516         * gtk/gtksignal.c: added new functions to retrive the number of
517         existing emissions for a certain signal.
518         (gtk_signal_n_emissions): new function.
519         (gtk_signal_n_emissions_by_name): new function.
520
521 Sun May  3 16:55:43 1998  Tim Janik  <timj@gtk.org>
522
523         * gtk/gtkcontainer.c (gtk_container_set_focus_child): new function to
524         set the current focus_child of a container, does proper referencing and
525         adjusts the vadjustment/hadjustment associated with the focus widget.
526
527         * gtk/gtkwidget.c (gtk_widget_grab_focus): set the focused child on
528         containers via gtk_container_set_focus_child.
529
530         * gtk/gtknotebook.c: modifications to use gtk_container_set_focus_child
531         where appropriate.
532
533         * gtk/gtkcontainer.c (gtk_container_remove): removed unsetting of focus
534         child since not every child removal goes through this function (this
535         showed up after gtk_container_set_focus_child() started to reference the
536         focus_child of a container).
537
538         * gtk/gtkwidget.c (gtk_widget_unparent): moved unsetting the focus_child
539         of a container from gtk_container_remove into this place.
540
541 Sat May  2 22:33:45 1998  Tim Janik  <timj@gtk.org>
542
543         * gtk/gtksignal.c: added new functions to operate on intermediate
544         function pointers. implemented incremental blocking.
545         (gtk_signal_disconnect_by_func): new function.
546         (gtk_signal_handler_block_by_func): new function.
547         (gtk_signal_handler_unblock_by_func): new function
548
549 Fri May  1 22:45:55 1998  Owen Taylor  <otaylor@gtk.org>
550
551         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_allocate):
552         Always show the scrollbars when the policy is
553         GTK_POLICY_ALWAYS...
554
555 Sat May  2 20:19:03 1998  Tim Janik  <timj@gtk.org>
556
557         * gtk/gtkadjustment.c (gtk_adjustment_set_value): only emit
558         "value_changed" if we really passed a new value.
559         (gtk_adjustment_changed): new function to emit the "changed" signal.
560         (gtk_adjustment_set_value): new function to emit the "value_changed"
561         signal.
562
563 Fri May  1 12:28:35 1998  Owen Taylor  <otaylor@gtk.org>
564
565         * gtk/gtkcombo.c: Further changes to the way the window
566         is popped up so that it will be compatible with 
567         auto-scrolling in the future.
568
569 Fri May  1 20:25:29 1998  Tim Janik  <timj@gtk.org>
570
571         * gtk/gtkcombo.c (gtk_combo_popup_list): do not just return if
572         the combo-list is empty since that will cause the combo to operate
573         on a non existing GtkList window.
574         (gtk_combo_get_pos): provide the combo list with a usfull default
575         height if empty.
576         (gtk_combo_popup_button_press): grab the focus.
577         (gtk_combo_activate): grab the focus.
578
579 Fri May  1 12:06:43 1998  Owen Taylor  <otaylor@gtk.org>
580
581         * gtk/gtkwindow.[ch] (gtk_widget_reset_rc_styles): New
582         function to reset the RC styles for a heirarchy
583
584         Clear the window background if necessary in
585         gtk_window_style_set.
586
587         * gtk/gtkrc.[ch]: New function gtk_rc_reparse_all() which
588         rereads all previously read RC files.
589
590         * gdk/gdkwindow.c gdk/gdk.h: New function gdk_window_get_toplevels().
591         (Should it just be called gdk_get_toplevels?)
592
593         * gtk/testgtk.c: New test to reload RC files.
594
595 Fri May  1 13:57:36 1998  Tim Janik  <timj@gtk.org>
596
597         * gtk/gtkclist.h:
598         * gtk/gtkclist.c: prefixed all clist flags with GTK_ to avoid name
599         clashes. redefined GTK_CLIST_SET_FLAGS and GTK_CLIST_UNSET_FLAGS as
600         GTK_CLIST_SET_FLAG and GTK_CLIST_UNSET_FLAG to automatically add
601         the GTK_ prefix (this solution involved less changes in the
602         gtkclist.c code). added a GTK_CLIST_CONSTRUCTED flag to substitute
603         the mem_chunk==NULL test in gtk_clist_construct. merged in changes
604         from lars & stefan to support the derivation of GtkCtree.
605
606         * gtkctree.h:
607         * gtkctree.c:
608         initial import of a tree widget derived from gtkclist, courtesy
609         of Lars Hamann <lars@gtk.org> and Stefan Jeske <jeske@gtk.org>,
610         it just damn rocks!
611
612 Fri May  1 10:05:44 1998  Tim Janik  <timj@gtk.org>
613
614         * gtk/gtklist.c (gtk_list_add): let gtk_list_append_items do the work
615         for us.
616         (gtk_list_insert_items):
617         (gtk_list_remove_items_internal): 
618         (gtk_list_clear_items): 
619         remove a possible pointer grab, we might get thrown into a loop
620         otherwise.
621         (gtk_list_button_press): grab the pointer *before* selecting the child,
622         because selection of items may cause the lists children to change,
623         resulting in a grab release.
624         (gtk_list_clear_items): use gtk_list_unselect_child() for unselection of
625         children.
626         (gtk_list_shutdown): remove all children from the list.
627         (gtk_real_list_unselect_child): 
628         (gtk_real_list_select_child): *always* put our internal structures into
629         sane state *before* signal emisions (i.e. list->selection updates prior
630         to gtk_list_item_[de]select() calls).
631
632         * gtk/gtkcombo.c (gtk_combo_init): adjust the scrollbar if the lists
633         focused child walks out of the window.
634         removed CAN_FOCUS for the combo arrow's button since it doesn't react
635         to keyboard events ("clicked" connection is missing).
636
637 Fri May  1 00:42:25 1998  Owen Taylor  <otaylor@gtk.org>
638
639         * gdk/gdkwindow.c (gdk_window_get_colormap): Fix up
640         getting colormap for FOREIGN windows to go along with
641         Raster's fix for visuals.
642
643 Merges from gtk-1-0
644 ===================
645         
646 Thu Apr 30 23:32:51 1998  Owen Taylor  <otaylor@gtk.org>
647
648         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_allocate):
649         Check to catch the case when the viewport fits in either
650         direction or both, instead of flip-flopping infinitely.
651
652         Only show/hide the scrollbars once at the end.
653
654 Thu Apr 30 21:56:07 1998  Owen Taylor  <otaylor@gtk.org>
655
656         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_foreach): 
657         Include the scrollbars in the foreach call.
658         (gtk-fortier-980405-0.patch; 
659          Patrice Fortier <Patrice.Fortier@aquarel.fr>). 
660
661         The notebook widget
662         really should also include its tabs, but that might cause
663         problems for programs if they
664
665 Thu Apr 30 21:51:52 1998  Owen Taylor  <otaylor@gtk.org>
666
667         * gtk/gtkpixmap.c (gtk_pixmap_set): Only request a
668         resize if the size actually changed. 
669         (gtk-johannes-980414-0.patch ;  
670          johannes@nada.kth.se (Johannes Keukelaar) )
671
672 Thu Apr 30 10:22:59 1998  Owen Taylor  <otaylor@gtk.org>
673
674         * glib/ltmain.sh glib/ltconfig glib/config.sub glib/config.guess:
675           ltmain.sh ltconfig config.sub config.guess:
676
677         Reverted back to libtool-1.2 (plus minor patches) so as not to
678         force the issue for everyone else.
679
680 Thu Apr 30 10:22:59 1998  Owen Taylor  <otaylor@gtk.org>
681
682         * glib/ltmain.sh glib/ltconfig glib/config.sub glib/config.guess:
683         Updated to libtool 1.2a.
684
685         * gtk/gtkclist.c: Draw the in-between lines with style->base
686         instead of style->white.
687         
688 Wed Apr 29 15:46:13 1998  Owen Taylor  <otaylor@gtk.org>
689
690         * gdk/gdkprivate.h gdk/gdkwindow.c gdk/gdkpixmap.c: 
691         Cache the colormap and children of a window locally
692         instead of fetching them from the server when needed.
693         Huge performance difference for creating/destroying
694         windows.
695
696         * gtk/gtkstyle.c: Find the depth from the cached
697         visual, instead of asking the server.
698
699         * gtk.m4: Distribute the new version which tries to
700         figure out what went wrong and give helpful error
701         messages.
702
703         * ltmain.sh ltconfig config.sub config.sh: 
704         Updated to libtool 1.2a
705
706         * gtk/gtktext.c: Fixed a bug where the drawn level
707         was being messed up when the text was scrolled
708         during a deletion.
709         
710 Thu Apr 30 02:42:11 PDT 1998 Manish Singh <yosh@gimp.org>
711
712         * gtk/gtkfilesel.c: don't die when naughty people remove parts of
713         the filesystem under you (fix from Josh)
714
715 Thu Apr 30 09:49:14 1998  Tim Janik  <timj@gtk.org>
716
717         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_foreach): check
718         if the viewport already exists before iterating over it, maybe we
719         haven't been constructed yet.
720
721 Thu Apr 30 01:51:00 1998  Tim Janik  <timj@gtk.org>
722
723         * gtk/gtkbin.c (gtk_bin_add): made this function issue a warning if
724         the GtkBin widget already has a child.
725
726         * gtk/gtkbox.c (gtk_box_pack_{start|end}):
727         check that child->parent == NULL;
728
729 Tue Apr 28 22:13:54 1998  Owen Taylor  <otaylor@gtk.org>
730
731         * gtk/gtkselection.c (gtk_selection_clear): Only return
732         FALSE when the clear event is been rejected, not when
733         widget has already lost the selection. (Which should
734         only happen when we are setting the selection to another
735         widget ourself.)
736         
737 Fri Apr 24 19:07:32 1998  Owen Taylor  <otaylor@gtk.org>
738
739         * gtk/gtkfixed.c gtk/gtkpaned.c gtk/gtktable.c:
740
741         Removed the "check visibility after gtk_widget_unparent" bug 
742         in hopefully the last three places.
743
744 Tue Apr 28 15:46:41 1998  Tim Janik  <timj@gtk.org>
745
746         * gtk/gtkrc.c (gtk_rc_parse_statement): allow the inclusion of other
747         rc-files.
748
749 Mon Apr 27 15:11:52 1998  Tim Janik  <timj@gtk.org>
750
751         * gtk/gtkwidget.c (gtk_widget_grab_focus): only allow grabbing of focus
752         for CAN_FOCUS widgets.
753
754         * gtk/testgtk.c (create_scrolled_windows): feature h/v focus
755         adjustments for the table.
756         (create_list): feature automatic adjustment of the scrolled window to
757         always contain the focused child.
758         (create_main_window): keep the focussed button always inside of the
759         scrolled windoww.
760
761         * gtk/gtkcontainer.c (gtk_real_container_focus): set the h/v focus
762         adjustments, to contain the allocation of the currently focused child.
763         (gtk_container_set_focus_hadjustment): new functin to set the
764         horizontal focus adjustment.
765         (gtk_container_set_focus_vadjustment): new functin to set the vertical
766         focus adjustment.
767
768         * gtk/gtkadjustment.c (gtk_adjustment_clamp_page): new fucntion to
769         clamp the currents adjustment page into a specific range.
770
771         * random GtkType fixups for gtk_*_get_type() functions.
772
773 Fri Apr 24 18:37:16 1998  Owen Taylor  <otaylor@gtk.org>
774
775         * gtk/gtktreeitem.c (gtk_tree_item_remove_subtree): 
776         Account for the fact that gtk_tree_item_remove_subtree
777         will be called recursively. 
778
779         Handle removing a collapsed subtree.
780
781         (From Andy Dustman <adustman@comstar.net>)
782         
783         * gtk/gtktree.c (gtk_tree_remove_items): Look for the
784         root tree when removing items from a non-previously
785         mapped tree.
786
787         * gtk/testgtk.c: Added a remove_subtree button.
788         
789 Thu Apr 23 23:44:17 1998  Owen Taylor  <otaylor@gtk.org>
790
791         * gtk/gtkobject.c (gtk_object_finalize): Notify all weak references
792         before object removing data. This change fixes a bug where 
793         removing the last weak references would cause it to be 
794         triggered.
795
796 Wed Apr 15 20:42:46 1998  Owen Taylor  <otaylor@gtk.org>
797
798         * gdk/Makefile.am: Removed mostly useless dependency that
799         was causing problems for SGI's make, when used with
800         the 'make dist' form of GTK+. (Dependency caused dependencies
801         to be redone when BUILT_SOURCES changed)
802
803 Thu Apr 30 11:18:00 1998  Owen Taylor  <otaylor@gtk.org>
804
805         * gtk/gtkcombo.[ch]: Allow the user to use the popup list
806         like a menu.
807         
808         * gtk/gtkmenuitem.c gtk/gtkitem.c: Moved enter/leave handlers
809         to gtkitem.c so dragging can also work in lists.
810
811         * gtk/gtklist.[ch]: Track child enter events and use
812         those to allow dragging the selection. 
813
814 Thu Apr 30 11:16:06 1998  Owen Taylor  <otaylor@gtk.org>
815
816         * gtk/gtktext.c: Try enabling background pixmaps for editable text
817         widgets.  There is a bit of flashing, but not too bad. If you
818         don't want the flashing, you can always not set a background
819         pixmap.
820
821 Wed Apr 29 15:46:13 1998  Owen Taylor  <otaylor@gtk.org>
822
823         * gtk/gtktext.c: Fixed a bug where the drawn level
824         was being messed up when the text was scrolled
825         during a deletion.
826         
827 1998-04-28  Miguel de Icaza  <miguel@nuclecu.unam.mx>
828
829         * gdk/gdk.c (gdk_event_translate): Random debugging fixed this
830         bug:  There is no need to set the ExposureMask in the XGrabPointer
831         (this caused DnD programs to crash).
832
833 Fri Apr 24 01:29:04 1998  Tim Janik  <timj@gtk.org>
834
835         * gtk/gtkaccelerator.h (struct _GtkAcceleratorTable): changed ref_count
836         field to be of type guint.
837         * gtk/gtkaccelerator.c (gtk_accelerator_table_unref): added check for
838         ref_count>0;
839         (gtk_accelerator_table_install): keep a per object list of accelerator
840         tables that refer to this object.
841         (gtk_accelerator_table_remove): remove the accelerator table from the
842         per object list.
843         (gtk_accelerator_table_clean): warn if there are any object references
844         left in an accelerator table upon destruction.
845         (gtk_accelerator_tables_delete): new function to delete object
846         references from the accelerator tables associated with this object.
847
848         * gtk/gtkwidget.c (gtk_widget_class_init): changed emission of
849         GtkWidget::install_accelerator to GTK_RUN_LAST so the installation
850         of an accelerator can be prevented by gtk_signal_emit_stop().
851         (gtk_widget_real_destroy): call gtk_accelerator_tables_delete (),
852         so there are no stale pointers in accelerator tables left.
853
854 1998-04-22  Federico Mena Quintero  <federico@nuclecu.unam.mx>
855
856         * gtk/gtkbin.c (gtk_bin_remove): Remember whether the widget was
857         visible before we unparent it.
858
859 Wed Apr 22 04:15:26 1998  Tim Janik  <timj@gtk.org>
860
861         * gtk/gtkmain.c (gtk_handle_current_timeouts): prepend the
862         running_timeouts list with the tmp_list link itself, not with a new
863         GList structure pointing to our link. that would fill up memory and
864         causes the GList.data fields of the running_timeouts list to point to
865         GList structures and not GtkTimeoutFunction structures which is a
866         *really* bad thing.
867         (gtk_handle_current_idles): likewise (exchange "timout" with "idle" in
868         the above entry ;).
869
870 Sat Apr 18 22:18:12 1998  Tim Janik  <timj@gtk.org>
871
872         * gtk/gtkradiomenuitem.h: 
873         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_set_group): new function
874         ala gtk_radio_button_set_group.
875         (gtk_radio_menu_item_init): assure that we always have at least a group
876         that points to self.
877
878         * gtk/gtkradiobutton.c (gtk_radio_button_set_group): few cleanups and
879         added g_return_if_fail() statements.
880         (gtk_radio_button_init): assure that we always have at least a group
881         that points to self.
882
883 Fri Apr 17 03:05:05 1998  Tim Janik  <timj@gtk.org>
884
885         * ChangeLog split up into ChangeLog.pre-1-0 and ChangeLog.
886
887 Wed Apr 15 05:13:09 1998  Tim Janik  <timj@gtk.org>
888
889         * gtk/gtklabel.c (gtk_label_size_request): corrected a brace position
890         (Damon Chaplin), which i got wrong when applying Damon's patch the last
891         time.
892
893 Wed Apr 15 20:42:46 1998  Owen Taylor  <otaylor@gtk.org>
894
895         * gtk/gtkpreview.c (gtk_preview_get_visuals): Make sure
896         that when we are running with a non-installed colormap,
897         in 8-bit pseudo-color, we actually are using the system
898         visual. (Fixes *Bad Match* errors on Digital Unix machines
899         with multiple 8-bit pseudo-color visuals)
900
901 1998-04-14  Miguel de Icaza  <miguel@nuclecu.unam.mx>
902
903         * gdk/gdkwindow.c (gdk_window_xid_at): Fix the problem introduced
904         by whoever thought that randomly changing ints to unsigned int
905         without reviewing the code was a good idea.  It is, btw not
906         mentioned in the ChangeLog as usual, but I know it was not Elliot
907         the culprit this time. 
908
909 Mon Apr 13 19:16:22 PDT 1998 Shawn T. Amundson <amundson@gtk.org>
910
911         * Released GTK+ 1.0.0