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