]> Pileus Git - ~andy/gtk/blob - ChangeLog.pre-2-4
script to convert and package up the tutorial - stick it here so I don't
[~andy/gtk] / ChangeLog.pre-2-4
1 Thu Jan 28 12:14:12 GMT 1999 Tony Gale  <gale@gtk.org>
2
3         * docs/package_tutorial.sh: script to convert and
4           package up the tutorial - stick it here so I don't lose
5           it when I accidentally delete it again.
6  
7 Thu Jan 28 10:16:28 GMT 1999 Tony Gale  <gale@gtk.org>
8
9         * docs/gtk_tut.sgml:
10           - Replace all uses of deprecated functions.
11           - Replace menufactory example with itemfactory example
12             from Nick Scott <mendigo@geocities.com>
13           - Minor bug fixes in the examples.
14
15 1999-01-28  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
16
17         * gdk/gdkim.c:
18         s/XIM_INSTANTIATE_IS_MISSING_OR_STRANGE/XIM_INST_IS_MISSING_OR_STRANGE/
19
20 Thu Jan 28 01:57:06 CST 1999 Shawn T. Amundson <amundson@gtk.org>
21
22         * INSTALL
23           NEWS
24           README
25           configure.in
26           gtk+.spec
27           docs/gtk-config.1: version=1.1.14
28
29         * Released GTK+ 1.1.14
30
31 Thu Jan 28 01:34:29 1999  Owen Taylor  <otaylor@redhat.com>
32
33         * gtkfontsel.c gtkcolorsel.c: When translating
34         N_() strings, use _(), not gettext(), since we
35         really need to call dgettext().
36
37 Wed Jan 27 20:51:25 PST 1999 Manish Singh <yosh@gimp.org>
38
39         * acinclude.m4: Xsed isn't valid here, don't use it
40
41         * ltmain.sh
42         * ltconfig: better file magic regexp for Linux libs
43
44 Wed Jan 27 23:05:55 1999  Owen Taylor  <otaylor@redhat.com>
45
46         * gtk/gtklayout.[ch] (gtk_layout_realize): Move 
47         gravity_works back to a static global variable,
48         since it is a global constant, and this way we
49         keep structure sizes uniform.
50
51 Wed Jan 27 22:59:07 1999  Owen Taylor  <otaylor@redhat.com>
52
53         * gtk/Makefile.am (static_SOURCES): Move gtkintl.h
54         from $source_headers to $static_sources since
55         it should not be installed.
56
57 Wed Jan 27 22:51:23 1999  Owen Taylor  <otaylor@redhat.com>
58
59         * gdk/gdkevents.c (expose_predicate): Allow exposure
60          compression across GravityNotify events to improve
61          the appearance of a GTK+ window unshading.
62
63 Wed Jan 27 21:56:07 1999  Owen Taylor  <otaylor@redhat.com>
64
65         [ patch from Takashi Matsuda <matsu@arch.comp.kyutech.ac.jp> ]
66         
67         * acconfig.h configure.in gdk/gdkim.c: Add configure 
68         flag for disabling XRegisterIMInstantiateCallback(), default
69         it to off for Solaris. Always try to open the
70         input method immediately, and only if that fails,
71         register than instantiate callback.
72
73         * gtk/gtkentry.c: Some tweaks to make sure that we
74         only get and set the IC attributes when appropriate.
75         
76 Wed Jan 27 20:08:54 1999  Owen Taylor  <otaylor@redhat.com>
77
78         * gtk/gtkfilesel.c (open_user_dir): Patch from
79         Sebastian Wilhelmi  <wilhelmi@ira.uka.de> to
80         use g_get_home_dir() instead of calling getpwuid() 
81         ourselves.
82
83 Wed Jan 27 20:06:06 1999  Owen Taylor  <otaylor@redhat.com>
84
85         * gtk/gtklayout.c (gtk_layout_adjustment_changed):
86         Removed some g_print()'s
87
88 Wed Jan 27 18:57:57 1999  Owen Taylor  <otaylor@redhat.com>
89
90         * gdk/gdk.h gdk/gdkdnd.c: Change signatures for 
91         gdk_drag_begin() and gdk_drag_motion() so that the set 
92         of possible actions is passed on each motion, not just at
93         the beginning of the drag. We do this so that
94         we can restrict the set of possible drag events
95         when the user presses a modifier key during a 
96         drag.
97
98         * gdk/gdkdnd.c: Send a motif Operation-changed
99         message when the set of possible actions change,
100         as well as when the suggested action change.
101
102         * gdk/gdkdnd.c: Change the XdndActionList whenever
103         the set of actions change.
104
105         * gdk/gdkdnd.c: Add a filter to catch changes to
106         the XdndActionList property for the source widget.
107
108         * gtk/gtkdnd.c: Change the set of possible actions
109         when the user presses Control, Shift, or Control-Shift,
110         to only include the corresponding action.
111         
112         * gtk/gtkdnd.c (gtk_drag_button_release_cb):
113         Disconnect button signals before we possibly
114         free info structure.
115
116 Wed Jan 27 18:40:50 1999  Owen Taylor  <otaylor@redhat.com>
117
118         * gtk/gtkmain.c (gtk_main_do_event): Hack scrollwheel
119         support into the eventloop, by treating button 4-5
120         presses on scrolled windows and scrollbars specially. 
121         Put it here to keep the ugliness small and confined.
122         (We need to intercept the normal propagation in any case
123         to have this work reliably right now, since some
124         subwidgets will trap the button presses)
125         
126         * gtk/gtkviewport.c (gtk_viewport_realize): Select for 
127         BUTTON_PRESS to support the above hack.
128         
129 Tue Jan 26 14:02:50 1999  Owen Taylor  <otaylor@redhat.com>
130
131         * gdk/gdkwindow.c (gdk_window_show/hide): Remove TimJ's
132         checks for already being mapped or hidden. See
133         the ICCCM's section on state changes for why this
134         is a bad idea.
135
136 Wed Jan 27 17:05:40 1999  Owen Taylor  <otaylor@redhat.com>
137
138         * Separate out GLIB_LIBS and GLIB_DEPLIBS. This
139         may fix the --with-glib option. GLIB_LIBS are
140         the libs to link example programs against, while
141         GLIB_DEPLIBS are dependency libraries.
142
143 Wed Jan 20 11:19:00 1999  Owen Taylor  <otaylor@redhat.com>
144
145         * gtk/gtklabel.c: Use floor() instead of truncating
146         to integer values so we get translation invariance.
147
148         * gtk/gtklayout.c (gtk_layout_size_allocate): Set upper
149         and lower values for adjustments in size_allocate().
150
151         * gdk/gdkwindow.c gdk/gdk.h gdk/gdkprivate.h: New
152         function gdk_window_set_static_gravities() to set
153         up a window for guffaw scrolling.
154         
155         * gdk/gdkwindow.c (gdk_window_internal_destroy): Set flags
156         indicating destroyed state before cleanup.
157
158         * gtk/gtkprivate.h gtk/gtkwidget.c: Add a new
159         private flag IS_OFFSCREEN. If set, this indicates
160         to GTK+ that the widget is not to be considered
161         viewable regardless of its map state. Queued draws
162         on offscreen widgets are suppressed.
163
164         Added new function static gtk_widget_is_offscreen() to
165         check this flag on a widget and its ancestors.
166
167         * gtk/gtklayout.[ch]: Major revisions.
168
169         - Use gdk_window_set_static_gravities to set static gravity 
170         on all child windows, and thus avoid having to create a window
171         for NO_WINDOW children.
172
173         - Adjust allocations of children as we scroll them
174         so queued draws work correctly.
175
176         - Don't allocate our children directly in a put()
177         or move(); just queue a resize() like every other
178         widget.
179
180         * gtk/testgtk.c: Make the arrows on the scrollbars
181         work, create a larger and more demanding test.
182         
183 Wed Jan 27 09:19:07 1999  Tim Janik  <timj@gtk.org>
184
185         * gdk/gdkcolor.c (gdk_colormap_unref): assert ref_count>0.
186
187 Mon Jan 25 20:05:22 1999  Owen Taylor  <otaylor@redhat.com>
188
189         * gtk/gtkwidget.c (gtk_widget_set_{visual,colormap}): 
190         New functions to set the colormap or visual
191         of an existing widget. These functions should not
192         be called on a widget that has previosly been
193         realized.
194
195         * gtk/gtkcolorsel.c (gtk_color_selection_dialog_init):
196         Set the visual and colormap on the toplevel dialog,
197         then push them for the child widgets. As opposed
198         to push/pop in _new(), this way, things will work
199         properly with gtk_widget_new().
200         
201 Mon Jan 25 19:41:56 1999  Owen Taylor  <otaylor@redhat.com>
202
203         * gtk/gtknotebook.c (gtk_notebook_page_allocate): Queue
204         a redraw on the tab area when a tab changes size.
205         (Includes improvements from Lars Hamann)
206
207 Mon Jan 25 19:00:13 1999  Owen Taylor  <otaylor@redhat.com>
208
209         * gtk/gtkcolorsel.c (gtk_color_selection_value_events): 
210          Back out the last solution to updating problem. And
211          try a different one that is less dependent on
212          the state of the widget. Just redraw the value_marker
213          when it gets mapped. Somebody needs to analyze
214          this widget more carefully and figure out when
215          it should be setting the contents of the previews
216          with more care.
217
218 Mon Jan 25 17:48:03 1999  Owen Taylor  <otaylor@redhat.com>
219
220         * gtk/gtkcolorsel.c: Removed some GTK_WIDGET_DRAWABLE()
221         tests - we need to update the value bar's contents
222         even when the widget is unmapped.
223
224 Mon Jan 25 15:47:46 1999  Owen Taylor  <otaylor@redhat.com>
225
226         * acinclude.m4 (ac_result): Don't define ENABLE_NLS
227          unless we have a working NLS. (This should keep
228          libintl.h from being included when it doesn't
229          exist).
230
231 Mon Jan 25 11:05:10 1999  George Lebl  <jirka@5z.com>
232
233         * gtk/gtkbutton.c: set RECEIVES_DEFAULT on init, and a
234           button press on the widget doesn't grab default anymore
235
236         * gtk/gtkcheckbutton.c,gtk/gtkoptionmenu.c,gtk/gtkradiobutton.c:
237           unset RECEIVES_DEFAULT on init
238
239         * gtk/gtkwidget.[ch]: add a RECEIVES_DEFAULT flag to widget
240           flags
241
242         * gtk/gtkwindow.c,gtk/gtkplug.c: on pressing <enter>, activate
243           the focused widget if it is a RECEIVES_DEFAULT widget,
244           no matter what the current default_widget is
245
246         * gtk/gtkwindow.c: on focus change, migrate the HAS_DEFAULT
247           flag to CAN_DEFAULT widgets if they RECEIVE_DEFAULT as well
248           or migrate it back to the default_widget if the focus widget
249           doesn't "RECEIVE_DEFAULT"
250
251 Sun Jan 24 18:09:24 1999  Owen Taylor  <otaylor@redhat.com>
252
253         * gdk/gdkdnd.c (motif_read_initiator_info): Byteswap
254         the MotifInitiatorInfo structure _before_ using it.
255
256 Sun Jan 24 12:17:39 1999  Owen Taylor  <otaylor@redhat.com>
257
258         * gdk/gdkcolor.c (gdk_colormap_real_destroy): Fix 
259          reversed assertion. 
260          (Pointed out by Austin Donnelly <austin@greenend.org.uk>)
261
262         * gtk/gtkruler.c (gtk_ruler_expose): Remove unecessary
263          and harmful call to gtk_paint_box(). We are going
264          to paint onto the backing store later anyways.
265
266 Sat Jan 23 11:15:39 1999  Owen Taylor  <otaylor@gtk.org>
267
268         * gdk/gdkdnd.c (gdk_window_register_dnd): X expects
269          longs, not uint32 for XChangeProperty, when 
270          format == 32.
271
272         * gdk/gdkdnd.c (motif_read_initiator_info): Byte-swap
273          the MotifInitiatorInfo structure if necessary.
274
275         * gdk/gdkdnd.c: When extracting and constructing
276          Motif DND messages, don't use data.s[], data.l[]
277          since on 64bit architectures, these won't necessarily
278          be in the same place with data.b[]. 
279
280         * gtk/testdnd.c (target_drag_drop): Return TRUE for
281          drag_drop within the drop zone.
282  
283         * gtk/gtkdnd.c (gtk_drag_dest_handle_event): Only send
284          a XmTRANSFER_FAILURE if no drop site is found, not
285          on every drop!
286
287 Fri Jan 22 19:22:39 1999  Owen Taylor  <otaylor@redhat.com>
288
289         * gtk/gtkeditable.c: Add flags field to 
290          GtkTargetEntry table.
291         
292         * gdk/gdkwindow.c (gdk_window_is_viewable): Treat foreign
293          windows as always viewable, since we can't track their
294          map-state reliably without speed problems. (Fixes
295          problem where updating didn't occur properly within
296          GtkPlug)
297
298 Sat Jan 23 13:41:00 1999  Jeff Garzik  <jgarzik@pobox.com>
299
300         * gtk/gtkctree.c
301         (tree_delete): Don't search selection list twice.
302         (real_select_row): Remove extra ';', add default for clarity.
303
304 Sat Jan 23 01:44:43 1999  Lars Hamann  <lars@gtk.org>
305
306         * gtk/gtkspinbutton.c (gtk_spin_button_get_value_as_int)
307         (gtk_spin_button_get_value_as_float): removed extra
308         gtk_spin_button_update calls again.
309         * gtk/gtkclist.c (gtk_clist_unmap): unblock dnd signal handler if
310         neccessary
311         * gtk/gtknotebook.c (gtk_notebook_button_press): grab_focus before
312         switch_page
313         (gtk_notebook_set_shape): don't use cur_page if it's NULL.
314
315 Fri Jan 22 12:20:54 1999  Jeff Garzik  <jgarzik@pobox.com>
316
317         * gtk/gtktooltips.c:
318         Fix recent change to match existing coding style.
319
320 Fri Jan 22 07:33:44 1999  Tim Janik  <timj@gtk.org>
321
322         * gtk/gtkvscale.c (gtk_vscale_pos_trough): take value_spacing into
323         account for GTK_POS_LEFT.
324
325         * gtk/gtkradiobutton.c (gtk_radio_button_set_group): use
326         gtk_toggle_button_set_active () to set the new state.
327         (gtk_radio_button_new): only _set_group if group != NULL.
328         (gtk_radio_button_clicked): reference the widget.
329         (gtk_radio_button_init): make radio buttons active upon
330         startup.
331
332 Thu Jan 21 17:13:12 1999  Jeff Garzik  <jgarzik@pobox.com>
333
334         * gtk/gtkselection.c:
335         (gtk_selection_property_notify): Check args for NULL.
336         (gtk_selection_default_handler):
337         Replace manual list count with call to g_list_length.
338         Remove signedness of temp var 'count' to agree with usage.
339         Slight spacing adjustment for readability.
340
341         * gtk/gtkbox.c, gtk/gtklayout.c, gtk/gtkselection.c:
342         Init a few ptrs to NULL, to quiet warnings.
343
344 Thu Jan 21 16:03:02 1999  Owen Taylor  <otaylor@redhat.com>
345
346         * gtk/gtkbutton.c (gtk_button_expose): Code cleanup.
347
348         * gtk/gtktreeitem.c: Add a paint routine, fix up bugs
349         in drawing where if the expose area was contained
350         completely in the right side of the tree the background
351         wasn't redraw, etc.
352
353         * gtk/gtkwidget.c (gtk_widget_clip_rect): Fix a bug
354         in clipping draw regions while propagating them
355         upwards.
356
357 Thu Jan 21 12:20:51 1999  Owen Taylor  <otaylor@redhat.com>
358
359         * gtk/gtkcolorsel.c (gtk_color_selection_dialog_new): 
360         Pushing and popping the visual/cmap in the init() 
361         function does no good, because the window itself needs
362         to be create with that visual/cmap.
363
364         So do it in the new() function instead. 
365
366         This will require people doing gtk_widget_new() to do 
367         the push/pop themselves, but I don't see any way around
368         it other than digging in and tweaking the window
369         widget's colormap and visual ourselves, which
370         is highly non-kosher, but would be safe...
371
372 Thu Jan 21 16:04:35 1999  Timur Bakeyev <mc@bat.ru>
373
374         * gtk/gtkrc.c (gtk_rc_init): It was reported by Owen Taylor 
375         <otaylor@redhat.com>, that LC_ALL produce unparsable garbage
376         on some glibc'ed systems and HP/UX. So, falling to LC_CTYPE.
377
378 Thu Jan 21 02:11:44 1999  Owen Taylor  <otaylor@redhat.com>
379
380         * Set and read the XdndActionList property defined
381         in the Xdnd spec. We do this always, not just for
382         XdndActionAsk like the spec says, but if we don't
383         find it, we fall back to actions = suggested_action,
384         which is compatible with the language of the spec.
385
386 Thu Jan 21 01:15:28 1999  Jeff Garzik  <jgarzik@pobox.com>
387
388         * gdk/gdkdnd.c (gdk_drag_context_unref):
389         Move not-null assertion before pointer de-ref.
390
391         * gdk/gdkevents.c (gdk_event_queue_find_first):
392         Fix infinite loop bug.  Someone should look at this further to
393         make sure the events_pending tests are correct.
394
395 Thu Jan 21 00:44:47 1999  Owen Taylor  <otaylor@redhat.com>
396
397         * gtk/gtkdnd.c (gtk_drag_dest_drop): Default handling
398         for drops should be keyed on GTK_DRAG_DEFAULT_DROP
399         not GTK_DRAG_DEFAULT_MOTION.
400
401 Wed Jan 20 21:52:51 1999  Jeff Garzik  <jgarzik@pobox.com>
402
403         * gtk/gtkclist.c (real_remove_row):
404         Don't search entire row list twice for element being removed.
405
406         * gtk/gtkmenushell.c (gtk_menu_shell_insert):
407         Replaced hand-coded implementation of g_list_insert with
408         call to g_list_insert.
409
410         * gtk/gtktooltips.c
411           (gtk_tooltips_destroy_data, gtk_tooltips_layout_text):
412         tooltipsdata->row test not-null test now properly encompasses
413         both g_list_* calls.
414
415 Thu Jan 21 02:47:36 1999  Lars Hamann  <lars@gtk.org>
416
417         * gtk/gtknotebook.c (gtk_notebook_focus): few cleanups.
418         (gtk_notebook_key_press): call select page function for
419         GDK_DOWN key in case of tab_pos == TOP. Changed other
420         positions accordingly.
421
422 Wed Jan 20 19:57:14 1999  Owen Taylor  <otaylor@redhat.com>
423
424         * gtk/gtkdnd.c (gtk_drag_begin): Start off with the
425         cursor for "no drop" since if we'll get a status
426         if we are over a drag window, but none if we aren't
427         over one. 
428
429 1999-01-20  Jeff Garzik  <jgarzik@pobox.com>
430
431         * gtk/gtkcombo.c (gtk_combo_entry_key_press):
432         Free 'nprefix', closing a memory leak.
433         Spaced out the code a bit to make it more readable.
434
435         * gtk/gtkhbox.[ch] (gtk_hbox_new),
436           gtk/gtkvbox.[ch] (gtk_vbox_new):
437         Change 'homogenous' arg from gint to gboolean.
438
439         * gtk/gtktogglebutton.[ch]:
440         New function gtk_toggle_button_get_active().
441
442 1999-01-20  Federico Mena Quintero  <federico@nuclecu.unam.mx>
443
444         * gtk/gtkdnd.c (gtk_drag_get_event_action): Allow button 2 to act
445         as GDK_ACTION_ASK.  Also, allow MOD1 to specify GDK_ACTION_ASK
446         only if that action is enabled in the actions argument.
447
448 1999-01-20  Raja R Harinath  <harinath@cs.umn.edu>
449
450         * configure.in (gtklocaledir): New variable.  Define to
451         $prefix/$DATADIRNAME/locale.  This will point to the directory
452         where po/Makefile actually installs the message translation
453         tables. 
454         * gtk/Makefile.am (INCLUDES): Define GTK_LOCALEDIR to
455         $(gtklocaledir) rather than $prefix/share/locale.
456
457 Wed Jan 20 21:07:45 1999  Timur Bakeyev <mc@bat.ru>
458
459         * gtk/gtkrc.c (gtk_rc_init): There are some systems, that lacks of
460         LC_MESSAGES in locale.h. As a last resort for such systems, set locale
461         according to LC_ALL.
462
463 Wed Jan 20 13:06:51 1999  Owen Taylor  <otaylor@redhat.com>
464
465         * gtk/gtktext.[ch] (clear_[focus_]area): Instead of drawing
466         a background pixmap in with gdk_draw_pixmap(), set
467         it as a tile pixmap for a GC. This should speed
468         up things considerably and also will hide a bug
469         where text->first_onscreen_ver_pixel is being
470         corrupted, causing the bg pixmap drawing code to generate
471         graphics exposes.
472
473 Tue Jan 19 22:15:10 1999  Lars Hamann  <lars@gtk.org>
474
475         * gtk/gtklist.c
476         (gtk_list_button_press):  only call grab_add if pointer_grab succeeds.
477         (gtk_list_unmap): remove pointer/widget grabs if needed.
478         (gtk_list_signal_focus_lost): removed.
479         (gtk_list_focus) (gtk_list_set_focus_child): set last_focus_child.
480         (gtk_list_remove_items_internal) (gtk_list_clear_items): unset
481         undo_focus_child if neccessary. In case of SELECTION_BROWSE/EXTENDED
482         select a new item if selection is empty.
483
484 Tue Jan 19 00:21:15 1999  Tim Janik  <timj@gtk.org>
485
486         * gtk/gtkcompat.h: add compatibility define for
487         gtk_ctree_set_reorderable.
488
489 Tue Jan 19 00:02:10 1999  Lars Hamann  <lars@gtk.org>
490
491         * gtk/gtkctree.c (gtk_ctree_node_set_row_data_full): 
492         add a sanity check [from Todd Dukes <todddukes@netscape.net>]
493         
494 Mon Jan 18 22:54:11 1999  Lars Hamann  <lars@gtk.org>
495
496         * gtk/gtkclist.c (gtk_clist_button_press): only call grab_add
497         if pointer_grab succeeds.
498         (gtk_clist_unmap): remove pointer/widget grabs if needed.
499
500 Mon Jan 18 15:46:14 1999  Owen Taylor  <otaylor@redhat.com>
501
502         * gtk/gtklabel.c (gtk_label_init): Initialize
503         label->label_wc. (We allocate labels from
504         a memchunk)
505
506 Mon Jan 18 18:53:08 1999  Tim Janik  <timj@gtk.org>
507
508         * gtk/gtkscale.c (gtk_scale_set_digits): CLAMP digits into a
509         meaningfull range (we need to stay below a certain limit anyways
510         to avoid string buffer overflows).
511
512         * gtk/gtkvscale.c (gtk_vscale_pos_background): fixed up background
513         area calculations for GTK_POS_RIGHT and GTK_POS_BOTTOM.
514         * gtk/gtkhscale.c (gtk_hscale_pos_background): likewise.
515         (gtk_hscale_draw_value): safety CLAMP the value's x position for
516         GTK_POS_TOP and GTK_POS_BOTTOM, so we don't paint strings outside of
517         our allocation.
518
519         * gtk/gtkscale.c: implemented GtkScale::digits, GtkScale::draw_value
520         and GtkScale::value_pos arguments.
521
522 Mon Jan 18 14:26:17 1999  Owen Taylor  <otaylor@redhat.com>
523
524         * docs/Changes-1.2.txt: Some editing, a little more
525         detail.
526
527 Mon Jan 18 13:25:14 1999  Owen Taylor  <otaylor@redhat.com>
528
529         * gtk/gtkmenu.[ch]: Added gtk_menu_set_title() to
530         set the title of a menu in the torn-off state.
531
532         * gtk/gtkthemes.c (gtk_theme_engine_get): When loading
533         of theme engine fails, just warn and do without -
534         don't error out.
535
536         * gtk/gtkmain.c (gtk_check_version): s/to/too/.
537
538 Mon Jan 18 01:21:03 1999  Lars Hamann  <lars@gtk.org>
539
540         * gtk/gtkctree.c (draw_row): fixed auto resize bug.
541
542 Sun Jan 17 17:35:28 CST 1999 Shawn T. Amundson <amundson@gtk.org>
543
544         * Released GTK+ 1.1.13
545
546         * README:
547           INSTALL:
548           docs/gtk-config.1: ver=1.1.13
549
550 Mon Jan 18 00:22:54 1999  Lars Hamann  <lars@gtk.org>
551
552         * gtk/gtkclist.c (gtk_clist_button_press) (gtk_clist_button_release):
553         block drag source signal handler during column resizes.
554         (gtk_clist_set_column_visibility): resize clist if needed.
555         (gtk_clist_map): raise resize windows to make resize
556         cursor visible again.
557
558 Sun Jan 17 22:47:15 1999  Tim Janik  <timj@gtk.org>
559
560         * gtk/gtkwidget.[hc]: 
561         * gtk/gtkspinbutton.[hc]: 
562         * gtk/gtkscrolledwindow.[hc]:
563         * gtk/gtkprogressbar.[hc]:
564         * gtk/gtkpreview.[hc]: 
565         * gtk/gtkobject.[hc]:
566         * gtk/gtkentry.[hc]: 
567         * gtk/gtkctree.[hc]:
568         * gtk/gtkcontainer.[hc]:
569         * gtk/gtkclist.[hc]:
570         removed deprecated functions: gtk_clist_set_border,
571         gtk_container_block_resize, gtk_container_unblock_resize,
572         gtk_container_need_resize, gtk_ctree_set_reorderable,
573         gtk_ctree_show_stub, gtk_ctree_set_use_drag_icons,
574         gtk_entry_adjust_scroll, gtk_object_class_add_user_signal,
575         gtk_preview_put_row, gtk_progress_bar_construct,
576         gtk_scrolled_window_construct, gtk_spin_button_construct,
577         gtk_widget_freeze_accelerators, gtk_widget_thaw_accelerators.
578
579         * gtk/gtkcheckmenuitem.c: removed binary variant of
580         gtk_check_menu_item_set_state, this is still defined in gtkcompat.h
581         though.
582
583         * docs/Changes-1.2.txt:
584         removed section about gtk_idle_remove_by_data vs.
585         gtk_timeout_remove_by_data, we actually don't even provide a
586         gtk_timeout_remove_by_data() function.
587         added a table with removed functions and their replacements.
588         
589         * NEWS: updates for 1.1.13.
590
591 Sun Jan 17 17:56:33 1999  Owen Taylor  <otaylor@redhat.com>
592
593         Patch from Felix Bellaby <felix@pooh.u-net.com>
594
595         * gdk/gdk.c: Use XmbSetWMProperties to set
596         the class/command on the loader window so that the
597         client machine is also set in the same place.
598         (For X11R5 sesssion management compatibility)
599
600         * gdk/gdk.c: (gdk_set_sm_client_id) Implementation
601         of function to set the session manager client ID.
602
603         * gdk/gdkwindow.c (gdk_window_new): Set 
604         WM_CLIENT_LEADER propertiy on all windows pointing
605         back to GDK's leader window.
606
607 Sun Jan 17 12:01:57 1999  Owen Taylor  <otaylor@gtk.org>
608
609         * gtk/gtkrc.c (gtk_rc_style_init): Allow a bg_pixmap
610         of "<none>", as there was no way to set the background
611         on all widget but some widgets. This is important
612         because Text widgets with background images are
613         slow and possibly ugly.
614
615 1999-01-17  Nat Friedman  <nat@nat.org>
616
617         * gtk/gtkscrolledwindow.c (DEFAULT_SCROLLBAR_SPACING): New macro.
618         Changed the spacing from 5 to 3.
619
620         * gtk/gtkmenubar.c (BORDER_SPACING): Changed the extra spacing on
621         the menubar from 2 to 0.
622
623 Sun Jan 17 11:51:17 1999  Owen Taylor  <otaylor@gtk.org>
624
625         * gtk/gtktext.c (gtk_text_move_cursor): Fix typo
626         [ gtk-mailund-990116-0: Thomas Mailund Jensen <mailund@daimi.au.dk> ]
627
628 Sun Jan 17 11:15:05 1999 Christopher Blizzard  <blizzard@appliedtheory.com>
629
630         * gtk+.spec: Update to version 1.1.13, change packager address.
631
632 Sun Jan 17 14:52:29 1999  Tim Janik  <timj@gtk.org>
633
634         * gtk/gtkcompat.h:
635         * gtk/gtkcheckmenuitem.[hc]:
636         deprecated gtk_check_menu_item_set_state, people should use
637         gtk_check_menu_item_set_active instead.
638         
639         * gtk/testgtk.c:
640          s/gtk_check_menu_item_set_state/gtk_check_menu_item_set_active/.
641
642 Sun Jan 17 05:19:14 1999  Tim Janik  <timj@gtk.org>
643
644         * configure.in: incremented version number to 1.1.13, bin age 0,
645         interface age 0.
646
647         * gtk/gtkmain.c (gtk_idle_remove_by_data): use g_idle_remove_by_data to
648         remove idles, so `data' cannot conflict with other sources.
649
650         * gtk/gtkcompat.h: define gtk_style_apply_default_pixmap here.
651
652         * gtk/gtkstyle.[hc]: removed gtk_style_apply_default_pixmap.
653         (struct _GtkStyle): reordered GtkStyleClass*klass; member.
654
655 Sat Jan 16 19:42:48 1999  George Lebl  <jirka@5z.com>
656
657         * gtk/gtktooltips.c: for NO_WINDOW widgets, add their allocation.y
658           to the position of the tooltip. This fixes tooltip positioning
659           problems with some widgets such as a checkbox.
660
661 Sat Jan 16 14:01:53 1999  Stuart Parmenter <pavlov@gtk.org>
662
663         * gtk/gtklayout.c (gtk_layout_put): check for child widget being NULL
664
665 Sat Jan 16 05:02:22 1999  Lars Hamann  <lars@gtk.org>
666
667         * gtk/gtkclist.c (gtk_clist_button_press): fixed double click bug.
668
669 Fri Jan 15 19:16:42 1999  Tim Janik  <timj@gtk.org>
670
671         * gtk/Makefile.am: define GTK_DISABLE_COMPAT_H for compilation of gtk
672         code.
673
674         * gtk/gtkrc.c (gtk_rc_style_unref): added an assertment.
675
676         * gtk/gtkcompat.h:
677         * gtk/gtklabel.h: 
678         don't provide compatibility defines if GTK_DISABLE_COMPAT_H is defined.
679
680         * gtk/gtkstyle.h:
681         * gtk/gtkstyle.c: coding style, indentation and alignment fixups.
682         (gtk_draw_string): 
683         (gtk_paint_string): 
684         (gtk_draw_polygon):
685         (gtk_style_set_background): fixed assertments.
686         (gtk_default_draw_ramp): 
687         (gtk_default_draw_cross): 
688         (gtk_default_draw_oval): issue warnings since these functions aren't
689         yet implemented.
690
691         * gdk/gdkwindow.c:
692         (gdk_window_hide): only unmap window if already mapped.
693         (gdk_window_show): only map window if !mapped.
694         (gdk_window_internal_destroy): destroyed windows can't be mapped.
695
696         * gtk/gtkwidget.c (gtk_widget_event): don't ignore expose events just
697         because a resize is queued on a widget, we rely on the expose events
698         now.
699
700 Fri Jan 15 10:22:21 1999  Owen Taylor  <otaylor@redhat.com>
701
702         * gtk/gtkwidget.c (gtk_widget_class_init): 
703         nparams for selection_get should be 3, not 2.
704         [ From Damon Chaplin <damon@karuna.freeserve.co.uk> ]
705
706         * gtk/gtkeventbox.c (gtk_event_box_paint): Add a paint
707         routine so queued redraws work inside event boxes.
708
709 Thu Jan 14 17:47:37 1999  Owen Taylor  <otaylor@redhat.com>
710
711         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): Only
712          redraw character under cursor when not displaying 
713         highlighted selection.
714
715         * gdk/gdkrgb.c (gdk_rgb_init): Add in a cast to
716         gpointer to make IRIX cc happy.
717
718 Thu Jan 14 12:29:50 1999  Owen Taylor  <otaylor@redhat.com>
719
720         * gtk/gtkcheckbutton.c (gtk_check_button_draw): Restructure
721         the drawing code to remove a bit of duplication - 
722         and to remove a call to gtk_widget_draw_focus()
723         that queues a redraw when an expose occurs.
724
725         * gtk/gtklabel.c (gtk_label_expose): Fix up handling
726           of ypadding.
727
728         * gtk/gtknotebook.c (gtk_notebook_draw): If we redraw
729           the whole widget, also redraw the corresponding
730           areas of the child widget. (have_visible_child 
731           still has some problems)
732
733         * gdk/gdkpixmap.c: Change some g_new's to g_new0 so
734           that fields unused for pixmaps get initialzized
735           sanely.
736
737         * gdk/gdk.h gdk/gdkwindow.c gdk/gdkprivate.h: Add new calls
738           gdk_window_is_visible() and gdk_window_is_viewable()
739           and a mapped flag to the window private structure.
740         
741         * gtk/gtkbin.c gtk/gtkclist.c gtk/gtkfixed.c gtk/gtkitem.c
742           gtk/gtklayout.c gtk/gtklist.c gtk/gtkmenushell.c
743           gtk/gtknotebook.c gtk/gtkpaned.c gtk/gtktree.c
744           gtk/gtktreeitem.c gtk/gtkviewport.c: 
745         Map windows after mapping children.
746         
747         * gtk/gtkwidget.c (gtk_widget_clip_rect): Handle 
748         rectangles completely clipped away correctly.
749
750         * gtk/gtkwidget.c (gtk_widget_idle_draw): Don't
751         call gtk_widget_draw if width or height is 0.
752
753         * gtk/gtkwidget.c (gtk_widget_idle_draw): Don't
754         rely on GTK_REDRAW_PENDING after we've cleared
755         it. (This was causing draw-combining to not
756         happen at all).
757
758         * gtk/gtkbin.c gtk/gtkscale.c: Remove uneccessary calls
759         to gtk_widget_queue_draw() when mapping.
760
761 Thu Jan 14 11:29:53 1999  Owen Taylor  <otaylor@redhat.com>
762
763         * gtk/gtkdnd.c (gtk_drag_get_event_action): Make
764         MOD1-drag also do action ask.
765
766         * gtk/gtkdnd.c (gtk_drag_button_release_cb): Send the
767         button-release event we simulate to get grabs released,
768         with a window of GDK_ROOT_PARENT instead of the actual 
769         widget. This is a bad hack in some sense, but seems
770         to work nicely. (It's sort of like what you would
771         if you grabbed on button press, then the user 
772         released outside of the widget.)
773
774 Thu Jan 14 20:29:16 1999  Owen Taylor  <otaylor@redhat.com>
775
776         * gtk/gtkstyle.[ch] (gtk_style_apply_default_background): 
777         Change copy_area => !set_bg. Use tile instead of 
778         gdk_window_copy_area when drawing without !set_bg.
779         
780         This does mess up timj's neat check-button example,
781         but is consistent with how we interpret background
782         pixmaps everywhere else in the default scheme.
783
784         Restructure code for clarity.
785
786 Thu Jan 14 19:19:51 1999  Owen Taylor  <otaylor@redhat.com>
787
788         * gdk/gdkevents.c: Do all event processing in
789         dispatch() instead of prepare() and check().
790
791 Wed Jan 13 22:34:29 1999  Owen Taylor  <otaylor@redhat.com>
792
793         * gtk/gtkbutton.c gtk/gtkclist.c gtk/gtkhandlebox.c
794         gtk/gtkframe.c gtk/gtk[hv]box.c gtk[hv]paned.c gtk/gtklist.c
795         gtkmenu.c gtkmenuitem.c gtkmenubar.c gtknotebook.c
796         gtk/gtkscrolledwindow.c gtk/gtktable.c gtk/gtktree.c
797         gtk/gtktreeeitem.c gtk/gtkviewport.c
798         
799         Fix up comparisons of signed and unsigned ints to avoid 
800         assigning negative widths/heigths.
801
802 Wed Jan 13 21:18:41 1999  Owen Taylor  <otaylor@redhat.com>
803
804         * acinclude.m4 (ac_result): Unset CATOBJEXT so
805         that the macros and Makefiles correctly handle
806         disabling NLS when no gettext is found.
807
808 Wed Jan 13 20:14:32 1999  Tim Janik  <timj@gtk.org>
809
810         * gtk/gtkarg.c (gtk_arg_copy): in comparisions with GTK_TYPE_STRING, use
811         the fundamental type to catch GTK_TYPE_IDENTIFIER as well.
812
813         * gtk/gtkmenushell.c:
814         (gtk_real_menu_shell_activate_current):
815         (gtk_menu_shell_button_release): asure that we only activate sensitive
816         menu items, reported by Dave Cole <dave@dccs.com.au>.
817
818 Wed Jan 13 13:28:00 1999  Tim Janik  <timj@gtk.org>
819
820         * gtk/gtkwidget.c: eliminate queue_clears or queue_draws where we know
821         that expose events will be generated.
822         (gtk_widget_map): only queue_draw for NO_WINDOW widgets.
823         (gtk_widget_unmap): only queue_clear_child for NO_WINDOW widgets.
824         (gtk_widget_size_allocate): we don't need a queue_clear on changing
825         allocations of !NO_WINDOW widgets, we do still need a full redraw for
826         them though.
827
828         * gtk/gtklabel.c (gtk_label_set_text): check whether the new string
829         actually differs from the original.
830
831 Tue Jan 12 22:50:44 PST 1999 Manish Singh <yosh@gimp.org>
832
833         * acinclude.m4
834         * ltconfig
835         * ltmain.sh: upgrade to libtool 1.2d (with fixes for irix6 and osf)
836
837 Tue Jan 12 18:30:51 1999  Owen Taylor  <otaylor@redhat.com>
838
839         * gtk/testdnd.c (label_drag_data_received): Add 
840         a drag_data_received handler for the label.
841
842 Tue Jan 12 15:01:50 1999  Owen Taylor  <otaylor@redhat.com>
843
844         * gdk/gdkevents.c: Removed the putback_events queue, 
845         since it was causing problems with event ordering -
846         just keep a single queue. If we need it, we can
847         add priorities to events.
848
849         * gdk/gdkevents.c: Annotate events with flags - we allocate
850         a GdkEventPrivate structure in gdk_event_new() and use these
851         flags to mark an event being translated as "pending" -
852         I.e., not yet ready to be dequeued. So we can put
853         the event on the queue and get the order of the
854         events right. (This solves the double-click problems)
855         
856         * gdk/gdk.h gdk/gdkevents.h: Add gdk_event_peek() to get a copy
857         of the next event on the event queue.
858         
859         * gtk/gtkmain.c (gtk_main_do_event): Use gdk_event_peek()
860         to check the next event without causing event queue
861         reordering.
862
863 Tue Jan 12 15:41:20 1999  Owen Taylor  <otaylor@redhat.com>
864
865         * gtk/gtklabel.c (gtk_label_expose): Minor fix
866         to handling of misc->[x/y]pad
867
868 Tue Jan 12 14:31:43 1999  Owen Taylor  <otaylor@redhat.com>
869
870         * gtk/gtkstyle.[ch] (gtk_style_apply_default_pixmap): 
871         Add back as wrapper function to restore source/binary 
872         compatibility. grrrr.
873
874 Tue Jan 12 13:47:07 1999  Tim Janik  <timj@gtk.org>
875
876         * reworked the redrawing heuristics somewhat, this fixed a bunch of
877         existing redrawing problems and majorly reduces overall redrawing needs
878         during normal operation. basically we now only queue redraws when
879         neccessary and much rely on the draw_area coalescing code in gtkwidget.c
880         to optimize the queued portions. widgets will now upon reallocation only
881         get redrawed if their allocation has changed. upon hide/show only the
882         area allocated by the child will be queued for the parent, this has the
883         side effect that parents which change their appearance in dependance on
884         the numer of visible children have to keep track of their children's
885         visiblity and eventually fully redraw themselves. this is a minor
886         constrain with great benefits in terms of redraw reduction, and only got
887         triggered by the notebook widget.
888
889         * gtk/gtkwidget.c:
890         (gtk_widget_queue_clear): don't bother if width and height == 0.
891         (gtk_widget_queue_clear_child): new static function to queue a redraw of
892         the area obscured by a child on a parent.
893         (gtk_widget_queue_resize): queue_clear the widget if it is drawable.
894         (gtk_widget_show): queue resize on the widget before showing.
895         (gtk_widget_hide): queue resize on the widget after hiding.
896         (gtk_widget_map): queue_draw the widget after mapping.
897         (gtk_widget_unmap): queue_clear_child the widget.
898         (gtk_widget_size_allocate): queue_clear_child and queue_draw if the
899         widget's allocation changed.
900         (gtk_widget_unparent): queue_clear_child so the parent redraws obscured
901         portions.
902         (gtk_widget_real_show):
903         (gtk_widget_real_hide):
904         (gtk_widget_real_map):
905         (gtk_widget_real_unmap):
906         (gtk_widget_real_size_allocate): don't bother with redraw queueing,
907         descendants that override these functions don't do either and we handle
908         all redrawing/resizing related stuff before or after the signal emission
909         now.
910
911         * gtk/gtkcontainer.c:
912         (gtk_container_resize_children): don't bother about redrawing anymore
913         since gtk_widget_size_allocate handles that for us now.
914
915         * gtk/gtknotebook.h:
916         * gtk/gtknotebook.c:
917         added a flag have_visible_child to indicate whether we need to draw
918         non child related portions at all, e.g. shadows etc.
919         (gtk_notebook_draw): if have_visible_child changed, do a full paint
920         instead of updating a small area only.
921
922 Mon Jan 11 20:44:35 1999  Tim Janik  <timj@gtk.org>
923
924         * gtk/gtkstyle.c: changed gtk_style_apply_default_pixmap to
925         gtk_style_apply_default_background which takes an extra argument
926         copy_area to determine NO_WINDOW widget pixmap copying.
927         changed callers accordingly.
928
929         * gtk/gtktogglebutton.c:
930         (gtk_toggle_size_allocate): 
931         (gtk_toggle_button_expose): 
932         (gtk_toggle_button_paint): avoid messing with our parent's window if
933         toggle_button->draw_indicator == TRUE and we are a NO_WINDOW widget.
934
935         * gtk/gtkcheckbutton.c (gtk_real_check_button_draw_indicator): draw
936         the draw_indicator with GTK_STATE_ACTIVE if the toggle button is active.
937
938         * gtk/check-n.xpm:
939         * gtk/check-y.xpm:
940         * gtk/testgtkrc: set pixmaps for ACTIVE and NORMAL check button
941         bg_pixmaps.
942
943 Mon Jan 11 23:52:58 1999  Lars Hamann  <lars@gtk.org>
944
945         * gtk/gtklist.c (gtk_list_signal_drag_begin)
946         (gtk_list_drag_begin): end drag selections if necessary.
947
948         * gtk/gtkspinbutton.c/h (gtk_spin_button_update): made function
949         public. Manually force synchronization of spin button text and
950         adjustment value.
951
952 Mon Jan 11 15:23:32 1999  Tim Janik  <timj@gtk.org>
953
954         * gtk/gtktogglebutton.c: eliminated some queue_draws when invoking
955         gtk_widget_set_state, since that cares about redrawing already.
956         some code cleanups.
957
958         * gtk/gtktogglebutton.[hc]:
959         * gtk/gtkfontsel.c:
960         * gtkgamma.c:
961         s/gtk_toggle_button_set_state/gtk_toggle_button_set_active/ since
962         set_state is already taken by gtkwidget.h.
963
964         * gtk/gtkcompat.h: #define gtk_toggle_button_set_state
965         gtk_toggle_button_set_active.
966         
967         * gtk/gtkstyle.c: some indentation cleanups.
968
969 Mon Jan 11 15:12:33 1999  Tim Janik  <timj@gtk.org>
970
971         * gtk/gtktogglebutton.c (gtk_toggle_button_set_mode): take previous
972         visibility state into account when unrealizing.
973
974 Mon Jan 11 10:45:28 1999  Owen Taylor  <otaylor@redhat.com>
975
976         * gtk/gtkdnd.c: Only remove handlers for motion/button_release
977         at drop, remove "selection_get" handler later.
978
979 Mon Jan 11 13:31:49 1999  Tim Janik  <timj@gtk.org>
980
981         * gtk/gtktypeutils.[hc]: removed Paolo Molaro's type creation hooks
982         again, since they 1) don't care about infinite recursion (likely
983         to achive), 2) we are in feature freeze for 1.2. this definitely
984         deserves a sane implementation in 1.3 though (but without a hook
985         return value, without seq_id hackery and with recursion checks).
986
987 Mon Jan 11 13:18:37 1999  Tim Janik  <timj@gtk.org>
988
989         * gtk/gtkwindow.c:
990         (gtk_window_key_release_event): 
991         (gtk_window_key_press_event): only pass key events to the focus widget
992         if it is sensitive.
993
994         * gtk/gtkmenuitem.c (gtk_menu_item_select_timeout): don't popup the
995         submenu if it isn't sensitive.
996         (gtk_menu_item_paint): state_type doesn't need to be reset to
997         GTK_STATE_INSENSITIVE if the widget is insensitive anyways.
998
999         * gtk/gtkcontainer.c (gtk_container_real_focus): 
1000         * gtk/gtklist.c (gtk_list_focus): 
1001         * gtk/gtkmenushell.c (gtk_menu_shell_move_selected): 
1002         * gtk/gtknotebook.c (gtk_notebook_focus): 
1003         s/GTK_WIDGET_SENSITIVE/GTK_WIDGET_IS_SENSITIVE/ since a widgets
1004         sensitivity is determined through the parent as well,
1005         GTK_WIDGET_SENSITIVE is only of interest inside gtkwidget.c, everywhere
1006         else GTK_WIDGET_IS_SENSITIVE (widget) needs to be used to check for
1007         sensitivity.
1008
1009         * gtk/gtkaccelgroup.c (gtk_accel_group_activate): don't activate
1010         object if it is an insensitive widget.
1011
1012 Mon, 11 Jan 1999 08:09:08 +0100 Paolo Molaro <lupus@debian.org>
1013
1014         * gtk/gtktypeutils.[ch]: add gtk_type_{add,remove}_creation_hook().
1015         You can have a notification when a type is created.
1016
1017 1999-01-11  Tim Janik  <timj@gtk.org>
1018
1019         * gtk/gtkmain.c (gtk_propagate_event): added an assertement.
1020
1021 Sun Jan 10 14:45:37 1999  Owen Taylor  <otaylor@gtk.org>
1022
1023         * gtk/gtktext.c (text_properties_equal): Fixed
1024         cut and paste bug when comparing text property
1025         bg colors.
1026         [ Matt Aubury <Matt.Aubury@comlab.ox.ac.uk> ]
1027
1028 1999-01-10  Tim Janik  <timj@gtk.org>
1029
1030         * gtk/gtksignal.c (gtk_signal_lookup): if the lookup failed, try
1031         to initialize the object class and reattempt the lookup, reported
1032         by Paolo Molaro <lupus@lettere.unipd.it>.
1033
1034 Sat Jan  9 17:36:20 1999  Owen Taylor  <otaylor@redhat.com>
1035
1036         * configure.in (ALL_LINGUAS): Added cs to ALL_LINGUAS.
1037
1038 Sat Jan  9 17:27:49 1999  Owen Taylor  <otaylor@redhat.com>
1039
1040         * gtk/gtkfilesel.c (gtk_file_selection_populate):
1041         Mark another string for internationalization.
1042         [ Stanislav Brabec <utx@k332.feld.cvut.cz> ]
1043
1044 Sat Jan  9 14:02:08 1999  Owen Taylor  <otaylor@redhat.com>
1045
1046         * gtk/gtktooltips.c (gtk_tooltips_force_window): Set
1047         name "gtk-tooltips" on tip window so that a style
1048         can be set for tooltips.
1049
1050 Fri Jan  8 19:00:17 1999  Owen Taylor  <otaylor@redhat.com>
1051
1052         * gdk/gdkdnd.c (gdk_window_cache_filter): Fixed
1053         some list-manipulation breakage.
1054
1055         * gdk/gdkdnd.c (gdk_window_cache_destroy): Free 
1056         window cache structure.
1057
1058         * gtk/gtkdnd.c (gtk_drag_set_icon_pixmap): Set an
1059         event mask on the drag window so clicking on it
1060         doesn't pop up root menus, etc.
1061
1062         * gtk/gtkdnd.c (gtk_drag_button_release_cb): Remove
1063         signal handlers at button release.
1064
1065 Fri Jan  8 00:42:00 1999  Lars Hamann  <lars@gtk.org>
1066
1067         * gtk/gtkspinbutton.c (gtk_spin_button_get_value_as_int)
1068         (gtk_spin_button_get_value_as_float): call gtk_spin_button_update
1069         before returning a value
1070
1071         * gtk/gtkclist.c (gtk_clist_motion): don't allow 'drag selections'
1072         if clist is a drag source.
1073         (gtk_clist_drag_begin): remove pointer grabs, end ongoing selections.
1074
1075         * gtk/gtkctree.c (remove_grab): copy of clist function.
1076         (gtk_ctree_drag_begin): let clists drag_begin method set the
1077         source info struct.
1078
1079 Thu Jan  7 19:10:21 1999  Owen Taylor  <otaylor@redhat.com>
1080
1081         * gtk/gtkviewport.c (gtk_viewport_style_set): Fixes
1082         to drawing the background of the bin window 
1083         so that clearing and redrawing of child
1084         widgets work properly.
1085
1086         * gtk/gtkwidget.c (gtk_widget_idle_draw): Juggle around
1087         data so that if somebody triggers more redraw queuing
1088         from a expose_event handler, it doesn't confuse the
1089         heck out of GTK+. (But is highly liable to cause 
1090         an infinite loop...)
1091
1092 Thu Jan  7 12:31:41 1999  Owen Taylor  <otaylor@redhat.com>
1093
1094         * gtk/gtkselection.c (gtk_target_list_unref): Fix some
1095         more memory leaks.
1096
1097 Wed Jan  6 23:14:19 1999  Lars Hamann  <lars@gtk.org>
1098
1099         * gtk/gtkctree.c (gtk_ctree_drag_motion): fix for dnd bug reported
1100         by Bertrand Guiheneuf. Don't return FALSE if source widget != dest.
1101         widget.
1102
1103 Wed Jan 06 10:04:12 1999  Tristan Tarrant  <ttarrant@etnoteam.it>
1104
1105         * configure.in,po/it.po: added Italian translations
1106
1107 Tue Jan 05 21:18:00 1999  George Lebl  <jirka@5z.com>
1108
1109         * gtk/gtkmenu.c,gtk/gtkmenuitem.c,gtk/gtkeditable.c: free the
1110           event that was returned to us by gtk_get_current_event
1111
1112 Tue Jan  5 19:01:18 1999  Owen Taylor  <otaylor@redhat.com>
1113
1114         * gtk/gtkcolorsel.c (gtk_color_selection_dialog_init): Push
1115         GdkRGB's visual and colormap around the color selection
1116         dialog so that the window and the previews have the
1117         same colormap. If an app adds things to the colorsel
1118         dialog, it will have to take care of them itself.
1119
1120 Tue Jan  5 15:03:47 1999  Owen Taylor  <otaylor@redhat.com>
1121
1122         * gtk/gtkmain.c (gtk_propagate_event): Make 
1123         gtk_propagate_event() non-static, we need it in gtkdnd.c 
1124         so that the button-release we synthesize gets propagated
1125         correctly.
1126
1127         * gtk/gtkdnd.c: Use gtk_propagate_event() so
1128         release gets to a GtkList. But we can't really
1129         get this right without access to the windows
1130         event masks and doing X-style propagation ourselves.
1131
1132 Tue Jan  5 12:40:57 1999  Owen Taylor  <otaylor@redhat.com>
1133
1134         * gtk/gtkpreview.c: Add a size_allocate() routine 
1135         and set the size of the preview window equal
1136         to the area we are going to draw on, instead 
1137         of the entire allocation. Do this to avoid having 
1138         to set a parent-relative background.
1139         
1140 Tue Jan  5 11:51:32 1999  Owen Taylor  <otaylor@redhat.com>
1141
1142         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable):
1143         When redrawing the under-cursor character, don't
1144         redraw the terminating NULL.
1145         [ From: dov@imagic.weizmann.ac.il (Dov Grobgeld) ]
1146
1147 Tue Jan  5 11:31:55 1999  Owen Taylor  <otaylor@redhat.com>
1148          
1149         * gtk/gtkselection.c (gtk_target_list_unref): Free
1150         memory allocated for target lists.
1151
1152         * gtk/gtkdnd.c (gtk_drag_drop_finished): Release
1153         selections before destroying info structure.
1154
1155         * gdk/gdkdnd.c gdktypes.h (gdk_drag_get_protocol): Add
1156         new value GDK_DRAG_PROTO_NONE, use it for non-drag
1157         targets, to quiet Purify.
1158
1159         * gdk/gdkdnd.c (gdk_window_register_dnd): Set size
1160         of property properly.
1161
1162 Mon Jan  4 03:45:42 CST 1999 Shawn T. Amundson <amundson@gtk.org>
1163
1164         * Released GTK+ 1.1.12
1165
1166         * INSTALL:
1167           NEWS:
1168           README:
1169           configure.in:
1170           gtk+.spec:
1171           docs/gtk-config.1:
1172           gtk/gtkfeatures.h.in: version=1.1.12
1173
1174 1999-01-04  Sung-Hyun Nam  <namsh@lgic.co.kr>
1175
1176         * configure.in (ALL_LINGUAS): Added 'ko'.
1177
1178 Sun Jan  3 17:41:22 1999  Lars Hamann  <lars@gtk.org>
1179
1180         * gtk/gtkctree.c (real_tree_expand): fixed auto_resize bug
1181
1182 Sat Jan  2 03:54:30 1999  Tim Janik  <timj@gtk.org>
1183
1184         * gdk/gdk.h (GDK_PRIORITY_EVENTS): make this G_PRIORITY_DEFAULT.
1185
1186         * gdk/gdkevents.c (gdk_events_init): add the source and the poll fd with
1187         a priority of GDK_PRIORITY_EVENTS.
1188
1189 1999-01-02  Jeff Garzik  <jgarzik@pobox.com>
1190
1191         * configure.in, config.h.in, gdk/gdkimage.c:
1192         Removed features.h test.
1193
1194         * gdk/gdkdnd.c:
1195         Guard public functions against NULL pointer derefs.
1196
1197 Fri Jan  1 18:41:09 PST 1999 Manish Singh <yosh@gimp.org>
1198
1199         * gdk/gdk.c
1200         * gdk/gdkinputnone.h
1201         * gtk/gtkruler.c: casts to get rid of const warnings
1202
1203         * gtk/Makefile.am: fix gtktypebuiltins.h dependencies, and do a
1204         cmp so people don't whine about rebuilds
1205
1206         * gtk/gtknotebook.c: use g_snprintf on translated strings, so we
1207         don't get buffer overflows
1208
1209         * gtk/gtkrc.c: use g_strdup_printf instead of g_malloc/sprintf
1210         Plug some memleaks.
1211
1212 1999-01-01  Jeff Garzik  <jgarzik@pobox.com>
1213
1214         * configure.in, config.h.in:
1215         Check for features.h.
1216
1217         * gdk/gdkevents.c (gdk_event_put, gdk_events_queue):
1218         Fixed bug in linked list append logic by replacing hand-coded
1219         logic with a call to g_list_append.  Bug found by tml.
1220
1221         * gdk/gdkimage.c:
1222         'gcc -ansi -pedantic' on GNU/Linux spews warnings and errors
1223         in sys/ipc.h, including one specific admonishment to use
1224         _SVID_SOURCE or _XOPEN_SOURCE.  Manually defined the latter, and
1225         included features.h if present to obtain the necessary
1226         side-effects.
1227
1228         * gtk/gtkclist.c, gtk/gtkeditable.c:
1229         Eliminates comma-after-final-element warnings.
1230
1231         * gtk/gtkfontsel.c (gtk_font_selection_init):
1232         Fixed bug where an intl string was declared as _("x") in
1233         local var initializer.
1234
1235 1998-12-31  Jeff Garzik  <jgarzik@pobox.com>
1236
1237         * gtk/gtklabel.c (gtk_label_split_text_wrapped):
1238         word->space is now initialized correctly.
1239         Reported by Chi-Deok Hwang <cdhwang@sr.hei.co.kr>.
1240
1241 1998-12-30  Miguel de Icaza  <miguel@nuclecu.unam.mx>
1242
1243         * gtk/gtkmain.c (gtk_main_do_event): Fix memory leak.
1244         gdk_event_put would make a copy of next_event, and next_event was
1245         not being freed.
1246
1247 Wed Dec 30 18:39:21 CST 1998 Shawn T. Amundson <amundson@gtk.org>
1248
1249         * Released GTK+ 1.1.11
1250
1251         * INSTALL:
1252           NEWS:
1253           README:
1254           configure.in:
1255           gtk+.spec:
1256           docs/gtk-config.1:
1257           gtk/gtkfeatures.h.in: version=1.1.11
1258         
1259 1998-12-29  Owen Taylor  <otaylor@srv-19-29.roc.ny.frontiernet.net>
1260
1261         * gdk/gdkim.c (gdk_wcstombs): Fixed off-by-one
1262         error when computing length.
1263
1264 Thu Dec 24 14:35:48 1998  Jeff Garzik  <jgarzik@pobox.com>
1265
1266         * gdk/gdkevents.c, gdk/gdkim.c, gdk/gdkrgb.c, gdk/gdkwindow.c,
1267           gtk/gtkprogressbar.c:
1268         Pull in string.h for various mem*() and str*() functions,
1269         in an autoconf-friendly way.
1270
1271 Thu Dec 24 12:40:45 1998  Jeff Garzik  <jgarzik@pobox.com>
1272
1273         * gdk/gdkfont.c: removed unused var
1274         * gdk/gdkim.c: 64-bit cast
1275         * gtk/gtkaccelgroup.c: point to const data
1276         * gtk/gtkdnd.[ch]: (gtk_drag_dest_set, gtk_drag_source_set):
1277           Made const-correct.
1278         * gtk/gtkfontsel.c: kill uninitialized var warning
1279         * gtk/gtkselection.[ch]: (gtk_target_list_new,
1280           gtk_target_list_add_table, gtk_selection_add_targets):
1281           Made const-correct.
1282         * gtk/testgtk.c: 64-bit cast
1283
1284 Thu Dec 24 03:16:52 CST 1998 Shawn T. Amundson <amundson@gtk.org>
1285
1286         * INSTALL:
1287           NEWS:
1288           README:
1289           configure.in:
1290           gtk+.spec:
1291           docs/gtk-config.1:
1292           gtk/gtkfeatures.h.in: version=1.1.10
1293
1294 Wed Dec 23 20:31:40 1998  Owen Taylor  <otaylor@redhat.com>
1295
1296         * gtk/gtklabel.c: Fix problem where empty labels were 
1297         getting a requisition height of zero, and trailing 
1298         newlines were being ignored.
1299
1300 Wed Dec 23 13:58:14 1998  Owen Taylor  <otaylor@redhat.com>
1301
1302         * gtk/gtklabel.c (gtk_label_parse_uline):
1303         label->label should be the mb text _after_ removing
1304         the underlines, not before.
1305
1306         * gtk/gtkmenu.c: Reverted Elliot's tearoff-menu-item
1307         title hack. If it deserves being done, it deserves
1308         being done right.
1309         
1310 1998-12-23  Elliot Lee  <sopwith@redhat.com>
1311
1312         * gtk/gtkmenu.c: Allow programmer to gtk_object_set_data(obj,
1313         "GtkTearoffMenuItem_window_title", ..) on a GtkMenuItem and have
1314         it be recognized. If we're getting the title out of the GtkLabel,
1315         then remove all underscores.
1316
1317 Tue Dec 22 17:01:43 1998  Owen Taylor  <otaylor@redhat.com>
1318
1319         * gtk/gtkdnd.c (gtk_drag_dest_handle_event): 
1320         Request XmTRANFER_FAILURE on Motif drops not within
1321         a drop zone. I don't know why this is necessary,
1322         but it is.
1323
1324         * gdk/gdkdnd.c (gdk_drop_reply): Fixed error where
1325         Motif flag field in response was getting wrong
1326         values.
1327
1328 Tue Dec 22 15:55:39 1998  Owen Taylor  <otaylor@redhat.com>
1329
1330         * gtk/gtkoptionmenu.c (gtk_option_menu_button_press): 
1331         Return TRUE for button press events we handle.
1332         (Allows option menus in radio buttons to work...)
1333
1334 Tue Dec 22 14:50:25 1998  Owen Taylor  <otaylor@redhat.com>
1335
1336         * gtk/gtkdnd.c (gtk_drag_find_widget): Optimization -
1337         when we've already found a widget, skip all checks
1338         for subsequent children.
1339
1340         * gtk/gtkdnd.c (gtk_drag_find_widget): Checked for
1341         !MAPPED, not !VISIBLE, since a widget (like a notebook
1342         page), can be VISIBLE, but !REALIZED or !MAPPED.
1343
1344         * gtk/gtkdnd.c (gtk_drag_find_widget): Use forall(),
1345         not foreach().
1346
1347 Mon Dec 21 22:01:49 1998  Lars Hamann  <lars@gtk.org>
1348
1349         * gtk/gtkclist.c (gtk_clist_motion): fixed column resize bug
1350
1351 Sun Dec 20 04:48:59 1998  Tim Janik  <timj@gtk.org>
1352
1353         * gdk/gdk.h (GDK_PRIORITY_EVENTS): export the priority at which
1354         events are processed.
1355
1356         * gtk/gtk[main|signal|container].[ch]: removed deprecated _interp
1357         variants: gtk_container_foreach_interp, gtk_idle_add_interp,
1358         gtk_timeout_add_interp, gtk_signal_connect_interp.
1359
1360 Sat Dec 19 18:45:30 PST 1998 Shawn T. Amundson <amundson@gtk.org>
1361
1362         * configure.in: added sv to ALL_LIGNUAS
1363
1364 Sat Dec 19 22:49:40 1998  Tim Janik  <timj@gtk.org>
1365
1366         * gtk/gtktypeutils.c (gtk_type_query): eek, fixed an embarrasing bug
1367         that caused this function to always return NULL (noticed by marius
1368         vollmer).
1369
1370 Sat Dec 19 17:28:30 1998  Owen Taylor  <otaylor@redhat.com>
1371
1372         * configure.in: Don't add the gthread libs to 
1373         GLIB_LIBS either, or -lgthread -lpthread will get 
1374         pulled into all applications because of shlib deps.
1375
1376         * gtk/gtkmain.h gtk/gtkwidget.c gtk/gtk gdk/gdk: 
1377         Use GLIB's priority #define. Revise scale of 
1378         priorities.
1379
1380 Sat Dec 19 03:44:29 PST 1998 Manish Singh <yosh@gimp.org>
1381
1382         * gtk/gtkmain.c: always run a g_main_iteration, even if
1383         there are no active main loops. This fixes the gimp splash
1384         screen.
1385
1386 Sat Dec 19 05:37:51 1998  Tim Janik  <timj@gtk.org>
1387
1388         * gtk/gtklabel.c (gtk_label_expose): removed return_if_fail
1389         (label->words != NULL) since that's a valid case when the label
1390         is empty, or just default constructed.
1391         fixed indentation prototype arguments and braces in some places.
1392         also, pointer comparisions and initializations are done with NULL
1393         not 0, there's a reason GLib defines NULL.
1394
1395         * gdk/gdkevents.c (gdk_events_pending): return (queued_events ||
1396         putback_events) so this again returns whether events are pending,
1397         not whether other sources like idles are pending.
1398
1399         * gtk/gtkmain.c (gtk_main_iteration_do): 
1400         (gtk_main_iteration): return whether the loop is done, not whether
1401         something got dispatch to restore the original behaviour (yosh: this
1402         fixes code like in GleSelector).
1403
1404 Fri Dec 18 19:20:45 PST 1998 Manish Singh <yosh@gimp.org>
1405
1406         * gtkbutton.[ch]
1407         * gtktogglebutton.c: s/(enter|leave)_button/$1/g, since pthreads.h
1408         no longer conflicts
1409         
1410 Sat Dec 19 01:56:13 1998  Lars Hamann  <lars@gtk.org>
1411
1412         * gtk/gtkclist.c (gtk_clist_button_press): fixed GDK_2BUTTON_PRESS
1413         bug.
1414
1415 Fri Dec 18 15:30:43 PST 1998 Manish Singh <yosh@gimp.org>
1416
1417         * configure.in: add ja to ALL_LINGUAS
1418
1419 Fri Dec 18 15:19:54 1998  Owen Taylor  <otaylor@redhat.com>
1420
1421         * gtk/gtksocket.c (gtk_socket_filter_func): Marked
1422         plug window as destroyed before destroying the 
1423         window.
1424
1425 Fri Dec 18 14:17:14 1998  Owen Taylor  <otaylor@redhat.com>
1426
1427         * gtk/gtkmenu.c (gtk_menu_popup): Set the usize on the
1428         tearoff window so when we reparent the window out,
1429         the window doesn't shrink down.
1430
1431 1998-12-18  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
1432
1433         * configure.in: do not export the glib flags for thread support to
1434         gtk-config.
1435
1436 Fri Dec 18 01:32:59 1998  Tim Janik  <timj@gtk.org>
1437
1438         * gtk/gtkmain.c (gtk_main): added gdk_flush() after g_main_run(), so we
1439         get the original behaviour back, i.e. the event queue needs to be flushed
1440         after a main loop has been quitted.
1441         (gtk_main): add/remove the current main loop to/from the main loop
1442         before/after init/quit functions have been exected to preserve the
1443         original gtk_main_quit() behaviour.
1444
1445 Thu Dec 17 23:48:29 1998  Tim Janik  <timj@gtk.org>
1446
1447         * gdk/gdkevents.c (gdk_events_init): changed argument order in call
1448         to g_main_add_poll() to match recent glib changes.
1449
1450 Thu Dec 17 20:33:28 1998  Owen Taylor  <otaylor@redhat.com>
1451
1452         * gtk-config.in: Add @INTLLIBS@. 
1453         gtk-scier-981116-0.patch  Sean Cier <scier@PostHorizon.com>) ]
1454
1455         * gtk/gtkcolorsel.c gtk/gtkfilesel.c gtk/gtkfontsel.c
1456           gtk/gtkgamma.c gtk/gtkinputdialog.c 
1457           gtk/gtknotebook.c gtk/gtkrc.c gtk/gtkthemes.c
1458           gtk/gtktipsquery.c: 
1459         
1460         Applied parts of gtk-egger-981215-1 [ Daniel Egger
1461         <Daniel.Egger@t-online.de> ] marking additional strings for
1462         internationalization.
1463         
1464         * po/nl.po: Added Dutch translation from 
1465         Paul Siegmann <pauls@euronet.nl>.
1466         
1467 Thu Dec 17 18:25:52 1998  Owen Taylor  <otaylor@redhat.com>
1468
1469         * gtk/gtkdnd.c (gtk_drag_drop_finished): Remove the
1470         info tag from the context so if the source unexpectedly
1471         responds in the future, we do nothing properly.
1472
1473 Thu Dec 17 18:24:41 1998  Owen Taylor  <otaylor@redhat.com>
1474
1475         * gtk/gtk[hv]paned.c (gtk_[hv]paned_size_allocate): Handle
1476         the case where one side of the the pane is empty.
1477
1478         * gtk/gtkfilesel.c (gtk_file_selection_init): Set
1479         dir_title before using it. (Pointed out by
1480         Lavoie Philippe <lavoie@zeus.genie.uottawa.ca>)
1481         
1482 Thu Dec 17 10:53:20 1998  Owen Taylor  <otaylor@redhat.com>
1483
1484         * gtk/gtklabel.c (gtk_label_set_text): Free 
1485         previous label->label_wc.
1486
1487         * gtk/testgtkrc: Leave font, not fontset commented
1488         in by default.
1489
1490 1998-12-17  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
1491
1492         * gdk/gdkim.c: Define gdk_use_mb outside USE_XIM guard. Removed
1493         unnecessary USE_XIM guard inside another. Made gdk_use_mb
1494         static. Compile gdk_set_locale also if not USE_XIM.     
1495
1496 Thu Dec 17 00:26:01 1998 Shawn T. Amundson <amundson@gtk.org>
1497
1498         * Released GTK+ 1.1.9
1499
1500         * INSTALL:
1501           NEWS:
1502           README:
1503           configure.in:
1504           gtk+.spec:
1505           gtk/gtkfeatures.h.in:
1506           docs/gtk-config.1: version=1.1.9
1507
1508 Wed Dec 16 21:20:00 PST 1998 Manish Singh <yosh@gimp.org>
1509
1510         * autogen.sh: rm -rf intl breaks --disable-nls, put it back
1511
1512         * gtkbutton.[ch]
1513         * gtktogglebutton.c: s/(enter|leave)/$1_button/g.
1514         Digital: 1 GTK+: 0 (for now)
1515
1516 Wed Dec 16 22:38:22 CST 1998 Shawn T. Amundson <amundson@gtk.org>
1517
1518         * gdk/gdkevents.c: updated call to g_main_add_poll
1519           instead of g_main_poll_add
1520
1521 Wed Dec 16 23:32:05 1998  Owen Taylor  <otaylor@redhat.com>
1522
1523         * gtk/gtklabel.c (gtk_label_expose): Remove 
1524         unnecessary cast.
1525
1526 Wed Dec 16 22:50:52 1998  Owen Taylor  <otaylor@redhat.com>
1527
1528         * gdk/gdk.c gdk/gdkim.c: Check for broken glibc 2.0 
1529         mb functions, and avoid them.
1530
1531 Wed Dec 16 16:57:55 1998  Owen Taylor  <otaylor@redhat.com>
1532
1533         * gdk/gdkevents.c (gdk_events_queue): Don't
1534         call XPending() if we have putback events.
1535
1536 Wed Dec 16 16:04:41 1998  Owen Taylor  <otaylor@redhat.com>
1537
1538         * gtk/gtklabel.c (gtk_label_expose): Do nothing
1539         on empty string, quietly.
1540
1541 Wed Dec 16 15:36:19 1998  Owen Taylor  <otaylor@redhat.com>
1542
1543         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable):
1544         Redraw the character under the cursor when removing
1545         the cursor.
1546
1547 Wed Dec 16 13:06:17 1998  Owen Taylor  <otaylor@redhat.com>
1548
1549         * gdk/gdk.[ch] gtk/gtkmain.[ch] gtk/gtkprivate.h: Move main
1550         thread lock back to GDK - we need it there for locking
1551         when translating events. Rename things appropriately.
1552
1553 Wed Dec 16 11:44:21 1998  Owen Taylor  <otaylor@redhat.com>
1554
1555         * gtk/gtkrange.c (gtk_range_expose): Fix a x/y typo.
1556
1557 Wed Dec 16 10:20:27 CST 1998 Shawn T. Amundson <amundson@gtk.org>
1558
1559         * Released GTK+ 1.1.8
1560
1561         * ChangeLog:
1562           INSTALL:
1563           README:
1564           gtk+.spec:
1565           docs/gtk-config.1: version=1.1.8
1566
1567 1998-12-16  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
1568
1569         * gdk/gdkglobals.c: Define gdk_xim_ic only, if USE_XIM is defined.
1570
1571 Wed Dec 16 07:03:32 1998  Tim Janik  <timj@gtk.org>
1572
1573         * gtk/gtkwidget.h: 
1574         * gtk/gtkwidget.c: s/USER_DRAW/APP_PAINTABLE/. provided
1575         gtk_widget_set_app_paintable() which users can use to make
1576         a widget paintable for the application. changed other files accordingly.
1577
1578 Wed Dec 16 05:26:32 1998  Tim Janik  <timj@gtk.org>
1579
1580         * configure.in: version bump to 1.1.8, binary age 0, interface age 0,
1581         depend on GLib 1.1.8.
1582
1583         * gdk/gdkprivate.h:
1584         * gdk/gdkglobals.c: removed last Gdk threads specific bits.
1585
1586         * gtk/gtkmain.c (gtk_init): s/g_thread_supported/g_thread_supported()/.
1587
1588         * gtk/gtkprivate.h: changed GTK_THREADS_ENTER and GTK_THREADS_LEAVE
1589         to function macros GTK_THREADS_ENTER() and GTK_THREADS_LEAVE().
1590         honour G_THREADS_ENABLED in the definition of GTK_THREADS_ENTER()
1591         and GTK_THREADS_LEAVE(). changed callers accordingly.
1592
1593 Tue Dec 15 21:26:26 CST 1998 Shawn T. Amundson <amundson@gtk.org>
1594
1595         * autogen.sh: warn if glib.m4 or gettext.m4 are not found 
1596           in aclocal's directory.
1597
1598 Tue Dec 15 21:36:14 1998  Owen Taylor  <otaylor@redhat.com>
1599
1600         * gtk/testgtk.c (create_layout): Create buttons,
1601         not combos again.
1602
1603 1998-12-15  Joel Becker  <jlbec@ocala.cs.miami.edu>
1604
1605         * autogen.sh: reordered gettextize and aclocal, because
1606         gettextize was messing up aclocal.m4.
1607
1608 Tue Dec 15 22:30:44 1998  Lars Hamann  <lars@gtk.org>
1609
1610         * gtk/gtkclist.h : 
1611         removed clist flag : GTK_CLIST_DRAG_SELECTION
1612         added flags : GTK_CLIST_REORDERABLE, GTK_CLIST_USE_DRAG_ICONS,
1613         GTK_CLIST_DRAW_DRAG_LINE, GTK_CLIST_DRAW_DRAG_RECT
1614         (GtkCListDragPos) : new enum for DND
1615         (GtkButtonAction) : new enum of possible mouse button actions
1616         (struct _GtkCList): added button_actions array.
1617         Added drag_button and click_cell struct, to store cell and
1618         mouse button of last button_press_event
1619         
1620         (struct _GtkCListClass): new class method draw_drag_highlight.
1621         (gtk_clist_set_reorderable) (gtk_clist_set_use_drag_icons) :
1622         new functions. Moved from gtkctree.h. Now clist is reorderable
1623         as well.
1624         (gtk_clist_set_button_actions) new function to customize mouse
1625         button actions.
1626
1627         * gtk/gtkclist.c:
1628         (gtk_clist_drag_begin)
1629         (gtk_clist_drag_motion)
1630         (gtk_clist_drag_leave)
1631         (gtk_clist_drag_end)
1632         (gtk_clist_drag_drop)
1633         (gtk_clist_drag_data_get)
1634         (gtk_clist_drag_data_received) : new dnd widget methods to
1635         implement clists reorderability via DND
1636
1637         (remove_grab) : new function. remove mouse grab if necessary.
1638         (draw_drag_highlight) : new method. Draw dnd highlight depending
1639         on clist flags GTK_CLIST_DRAW_DRAG_LINE and GTK_CLIST_DRAW_DRAG_RECT
1640
1641         (gtk_clist_class_init): added object args "reorderable" and
1642         "use_drag_icons"
1643
1644         (gtk_clist_button_press) (gtk_clist_button_release) :
1645         use button_actions array to decide which action to perform.
1646         (gtk_clist_motion) : start reorder operation if necessary.
1647
1648         * gtk/gtkctree.h :
1649         (struct _GtkCTree): removed drag_icon, icon_widht, icon_height,
1650         drag_row, drag_source, drag_target, reorderable, use_icons,
1651         in_drag, drag_rect
1652         (gtk_ctree_set_reorderable) :  deprecated function.
1653         use gtk_clist_set_reorderable instead.
1654         (gtk_ctree_set_use_drag_icons) : deprecated function.
1655         use gtk_clist_set_use_drag_icons instead.
1656
1657         * gtk/gtkctree.c :
1658         (gtk_ctree_class_init): removed object args "reorderable" and
1659         and "use_drag_icons"
1660
1661         (draw_xor_line) (draw_xor_rect) (create_drag_icon) (check_cursor)
1662         (tree_toggle_selection) (set_mouse_cursor) : removed
1663         
1664         (draw_drag_highlight) : new clist method. replacement for
1665         draw_xor_line and draw_xor_rect functions
1666         (check_drag) renamed check_cursor function
1667
1668         (gtk_ctree_drag_begin)
1669         (gtk_ctree_drag_motion)
1670         (gtk_ctree_drag_data_received) : new dnd methods to implement ctrees
1671         reorderability via DND
1672
1673         (gtk_ctree_button_release)
1674         (gtk_ctree_button_motion) : removed.
1675
1676         * gtk/testgtk.c:
1677         (create_clist) : added new reorderable toggle button
1678         
1679 Tue Dec 15 19:50:41 1998  Owen Taylor  <otaylor@redhat.com>
1680
1681         * gtk/gtkctree.c gtk/gtkclist.c gtk/testgtk.c: Use 
1682         base[NORMAL] instead of bg[PRELIGHT] so CLists now can be
1683         used in detergent commercials.
1684
1685 Tue Dec 15 16:54:09 1998  Owen Taylor  <otaylor@redhat.com>
1686
1687         * gtk/gtklabel.h: Moved gtk_label_set() compatiblity
1688         define from <gtkcompat.h> to <gtklabel.h> for
1689         compatibility.
1690
1691 1998-12-15  Jeff Garzik  <jgarzik@pobox.com>
1692
1693         * configure.in, gdk/Makefile.am, gtk/Makefile.am:
1694         Removed last remaining thread-related configure bits 
1695         that have been moved into GLib.
1696
1697 1998-12-15  Elliot Lee  <sopwith@bogus.cuc.ml.org>
1698
1699         * gdk/gdkevents.c: Use G_IO_ERR|G_IO_HUP|G_IO_NVAL
1700         as the mask for checking for GDK_INPUT_EXCEPTION events.
1701
1702 1998-12-15  Martin Baulig  <martin@home-of-linux.org>
1703
1704         * acinclude.m4: Make the gettext check for for libc5 systems.
1705
1706         * autogen.sh: Not running gettextize fails on a fresh CVS checkout
1707         and we'll get a lot of bug reports tomorrow, so I add it back.
1708
1709         * acinclude.m4: Rename AM_GNU_GETTEXT_GTK to AM_GTK_GNU_GETTEXT and
1710         AM_WITH_NLS_GTK to AM_GTK_WITH_NLS to avoid this ugly automake
1711         warnings.
1712
1713 Tue Dec 15 16:06:15 1998  Owen Taylor  <otaylor@redhat.com>
1714
1715         * acinclude.m4: Provide a hacked version of the
1716           gettext macros that never use the included gettext.
1717          
1718         * Makefile.am configure.in: Remove references
1719           to intl/
1720         
1721         * autogen.sh: Don't run gettextize.
1722
1723 Tue Dec 15 14:30:35 1998  Owen Taylor  <otaylor@redhat.com>
1724
1725         * gdk/gdk.h gdk/gdkfonts.c: Added gdk_text_extents_wc()
1726
1727         * Patch from Jonathan Blanford <jrb@redhat.com> to add line wrapping
1728           to label. (Based on patch from Jeff Dairiki
1729           <dairiki@mac-ceope.apl.washington.edu> gtk-dairiki-971208-0)
1730
1731         - Adds new function gtk_label_set_line_wrap()
1732         - implement GTK_JUSTIFY_FILL.
1733         - rename gtk_label_set to gtk_label_set_text() add
1734            gtk_label_set() to gtkcompat.h.
1735
1736         * Use an internal wc representation in the label, so
1737           that we handle underlining and line breaks correctly
1738           for multi-byte strings.
1739
1740 Tue Dec 15 13:32:28 1998  Owen Taylor  <otaylor@redhat.com>
1741
1742         * gtk/gtkwidget.h: Added GTK_USER_DRAW flag.
1743
1744         * gtk/gtkwindow.c: Honor GTK_USER_DRAW flag.
1745
1746         * gtk/gtkdrawwindow.c gtk/Makefile.am: Removed 
1747         GtkDrawWindow, which GTK_USER_DRAW obsoletes.
1748
1749 Tue Dec 15 11:37:05 1998  Owen Taylor  <otaylor@redhat.com>
1750
1751         * gtk/gtkmain.c: Fixed up some warnings.
1752
1753 Tue Dec 15 10:32:01 1998  Owen Taylor  <otaylor@redhat.com>
1754
1755         * gtk/gtk{h,v,}paned.{c,h}: Add new functions 
1756         gtk_paned_set_position(),
1757         gtk_paned_pack1/2(). The latter take a
1758         shrink and resize parameters, that allows setting
1759         minimum sizes and getting 'relative' resizing.
1760
1761 Tue Dec 15 10:26:23 1998  Owen Taylor  <otaylor@redhat.com>
1762
1763         * gdk/gdkevents.c: Keep separate putback_events and 
1764         queued_events queues so that we get both FIFO and 
1765         preemptive behavior for gdk_event_put().
1766
1767 Tue Dec 15 09:22:44 1998  Owen Taylor  <otaylor@gtk.org>
1768
1769         * gtk/gtkrc.c (gtk_rc_init): Removed unused 
1770         variable, fixed minor memory leak.
1771
1772         * gdk/gdk.c: Fixed another merge problem.
1773
1774 Tue Dec 15 08:53:38 1998  Owen Taylor  <otaylor@redhat.com>
1775
1776         * gdk/gdk.c (gdk_get_display): Remove gdk_signal,
1777         which crept back in in last commit.
1778
1779 Tue Dec 15 01:38:53 1998  Owen Taylor  <otaylor@redhat.com>
1780
1781         * gtk/Makefile.am: Commented out testthreads from
1782         the build process, since we won't have any idea
1783         how to create a thread.
1784
1785         * configure.in (LIBS): use glib-config ... gthread
1786         so we always build a thread-compatible library.
1787
1788         * gtk/gtkaccellabel.c gtk/gtkclist.c gtk/gtkcolorsel.c
1789           gtk/gtkcombo.c gtk/gtkcontainer.c gtk/gtkentry.c
1790           gtk/gtklist.c gtk/gtkmenuitem.c gtk/gtknotebook.c
1791           gtk/gtkrange.c gtk/gtkselection.c gtk/gtkspinbutton.c
1792           gtk/gtktext.c gtk/gtktooltips.c gtk/gtkwidget.c:
1793         
1794         Add GTK_THREADS_ENTER/LEAVE pairs around timeouts
1795         and idles to account for the fact that they are no
1796         longer called within the GTK+ lock.
1797
1798         * gtk/gtkprivate.h: Added definitions for locking
1799         the main GTK+ mutex.
1800         
1801         * gtk/gtkmain.c: Re-implement the main loop 
1802         in terms of the GLib main loop.
1803
1804         * gdk/gdk.h gdk/gdkthreads.c gdk/Makefile.am: Removed threading 
1805         functionality, as it seems better to subsume GDK within the 
1806         GTK+ lock than vice-versa.
1807
1808         * gdk/gdkevents.c: New file, containing event handling bits 
1809         from gdk.c.
1810
1811         * gdk/gdkevents.c: Implement event source for GDK
1812         events.
1813         
1814         * configure.in gdk/gdkevents.c: Removed attempts to 
1815         subtract base_id, which were already non-functional.
1816
1817 Mon Dec 14 23:05:20 PST 1998 Manish Singh <yosh@gimp.org>
1818
1819         * acconfig.h
1820         * configure.in: removed IPC_RMID_DEFERRED_RELEASE check
1821
1822         * gdk/gdk.c: remove signal handlers, since we do an IPC_RMID
1823         after XShmAttach, and nobody complained
1824
1825 Tue Dec 15 02:27:42 MET 1998 Sven Neumann <sven@gimp.org>
1826
1827         * po/de.po: Replaced the crappy german po-file with a valid one.
1828
1829 Mon Dec 14 16:10:05 1998  Owen Taylor  <otaylor@redhat.com>
1830
1831         * gtk/gtkrc.c (gtk_rc_init): Append locale-specific
1832         suffixes to default rc file names, and look these
1833         up in addition to the base filename, to facilitate
1834         having the correct fontset per-locale.
1835
1836         move $(sysconfdir)/gtkrc to $(sysconfdir)/gtk/gtkrc
1837
1838         * gtk/gtkitemfactory.[ch] (gtk_item_factory_set_translate_func):
1839         New function to set a function to translate menu paths.
1840
1841         * gtk/gtkrc.c (gtk_rc_add_initial_default_files): Free
1842         results of g_strsplit().
1843
1844 1998-12-14  Nuno Ferreira  <nmrf@rnl.ist.utl.pt>
1845
1846         * configure.in (ALL_LINGUAS): Added 'pt'.
1847
1848         * po/pt.po: Added Portuguese translation.
1849
1850 Mon Dec 14 20:04:31 1998  Stefan Jeske  <stefan@gtk.org>
1851
1852         * gtk/gtkspinbutton.c: Only call gtk_spin_button_update if
1853         the spinbutton is editable.
1854
1855 Mon Dec 14 12:24:13 1998  Owen Taylor  <otaylor@redhat.com>
1856
1857         * HACKING: Added gettext-10.35
1858
1859         * autogen.sh: Run gettextize.
1860
1861 Wed Dec  9 16:29:06 1998  Owen Taylor  <otaylor@redhat.com>
1862
1863         Applied gtk-egger-981010-[12] 
1864         [ Daniel.Egger@t-online.de (Daniel Egger) ]
1865
1866         * gtk/gtkintl.h: New file - defines for localization.
1867
1868         * gtk/gtkfilesel.c gtk/gtkinputdialog.c: Mark strings
1869         for internationalization.
1870
1871         * gtk/gtkmain.c: call bindtextdomain
1872
1873         * po/ - directory for translations. Initially includes
1874         German translation.
1875
1876 Mon Dec 14 02:42:11 1998  Tim Janik  <timj@gtk.org>
1877
1878         * gtk/gtkwidget.c: made GtkWidget::grab_focus a RUN_LAST and
1879         RUN_ACTION signal. moved stuff from gtk_widget_grab_focus() into
1880         gtk_widget_real_grab_focus() so a signal is always emitted
1881         if the focus is grabbed on a widget.
1882
1883 Mon Dec 14 02:13:01 1998  Tim Janik  <timj@gtk.org>
1884
1885         * gtk/gtkmenuitem.c: fixed submenu popup timeouts, we decide whether or
1886         not to delay the submenu popup from a menu item deselection time stamp.
1887         the code looks even more hackish than before, but in practice "feels"
1888         very well.
1889
1890 1998-12-13  Federico Mena Quintero  <federico@nuclecu.unam.mx>
1891
1892         * gtk/gtkwidget.h (struct _GtkWidgetClass): Added a "grab_focus"
1893         signal for widgets.  When the signal is emitted, the widget will
1894         grab the focus.  This is needed to let the user press an
1895         accelerator key in a dialog box and have the corresponding widget
1896         be focused.
1897
1898         * gtk/gtkwidget.c (gtk_widget_class_init): Create the "grab_focus"
1899         signal.  The default handler is simply gtk_widget_grab_focus().
1900
1901 Sun Dec 13 22:15:48 GMT 1998  Tony Gale  <gale@gtk.org>
1902
1903         * docs/gtk_tut.sgml: Update the following sections to the
1904           current API:
1905             - Container Widgets
1906             - CList Widget
1907             - List Widget
1908             - Tree Widget
1909
1910 Sat Dec 12 19:11:35 1998  Tim Janik  <timj@gtk.org>
1911
1912         * gtk/gtkmenuitem.c: made GtkMenuItem::activate a GTK_RUN_ACTION signal.
1913
1914         * gtk/gtkbutton.c: made GtkButton::clicked a GTK_RUN_ACTION signal.
1915
1916         * gtk/gtkfeatures.h.in: define GTK_HAVE_FEATURES_1_1_8.
1917
1918 Sat Dec 12 17:46:55 1998  Owen Taylor  <otaylor@gtk.org>
1919
1920         * gtk/gtklayout.c (gtk_layout_unrealize): Mark
1921         child->window as destroyed so we don't destroy
1922         it again.
1923
1924 Sat Dec 12 17:18:32 1998  Owen Taylor  <otaylor@redhat.com>
1925
1926         * gdk/gdkfont.c (gdk_text_extents): Corrections
1927         to computation of extents of text from a font set.
1928         (from Chi-Deok Hwang <cdhwang@sr.hei.co.kr>)
1929          and Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>)
1930         
1931 Fri Dec 11 08:59:12 1998  Owen Taylor  <otaylor@redhat.com>
1932
1933         * gtk/gtklistitem.c (gtk_list_item_style_set):
1934         * gtk/gtklist.c     (gtk_list_style_set):
1935         Added "style_set" handlers.
1936
1937 Fri Dec 11 05:49:30 1998  Owen Taylor  <otaylor@redhat.com>
1938
1939         * gtk/gtkclist.c (gtk_clist_style_set): Add in a "style_set"
1940         handler so that the background of the clist changes
1941         with the theme.
1942
1943 Thu Dec 10 22:02:49 CST 1998 Shawn T. Amundson <amundson@gtk.org>
1944
1945         * Released GTK+ 1.1.7
1946
1947         * INSTALL:
1948           NEWS:
1949           README:
1950           configure.in:
1951           gtk+.spec:
1952           gtk/gtkfeatures.h.in: 
1953           docs/gtk-config.1: Version to 1.1.7
1954
1955 Thu Dec 10 20:48:19 PST 1998 Manish Singh <yosh@gimp.org>
1956
1957         * gtk/gtkclist.c: avoid void pointer math
1958
1959         * gtk/gtkhscale.c
1960         * gtk/gtkhscrollbar.c
1961         * gtk/gtkvscale.c
1962         * gtk/gtkvscrollbar.c: removed trailing , from enums
1963
1964         * gtk/gtksignal.c: can't use enums as a bitfield type, use guint
1965
1966         * gtk/testgtk.c: removed C++ comment added by owenpoo
1967
1968 Thu Dec 10 21:48:34 1998  Owen Taylor  <otaylor@redhat.com>
1969
1970         * gtk/gtkdnd.[ch]: Added gtk_drag_source_unset()
1971
1972 Thu Dec 10 20:42:22 1998  Owen Taylor  <otaylor@redhat.com>
1973
1974         * gtk/gtkdnd.c (gtk_drag_dest_handle_event): Use 
1975         gdk_window_get_origin() instead of gdk_window_get_position,
1976         because get_position is unreliable for plugs. 
1977
1978         This is a bad hack, maybe we need GDK_WINDOW_PLUG?
1979
1980 Thu Dec 10 17:58:49 GMT 1998  Tony Gale  <gale@gtk.org>
1981
1982         * docs/gtk_tut.sgml:
1983           - re-write the GtkProgressBar section to the 1.1 API.
1984           - add an Appendix listing all the signals
1985             (apologies to TimJ for taking so long in using his hard work
1986              in automating the extraction - thanx Tim). 
1987         * examples/*: bring them all upto the tutorial versions
1988
1989 Thu Dec 10 02:21:16 1998  Jeff Garzik  <jgarzik@pobox.com>
1990
1991         * gtk/testdnd.c: use g_snprintf, eliminate need for string.h
1992         * gtk/testrgb.c: include string.h, for strlen
1993
1994 Wed Dec  9 17:39:26 1998  Owen Taylor  <otaylor@redhat.com>
1995
1996         * configure.in: Add a case for success in 
1997         test for XUnregisterIMInstantiate, to prevent
1998         screwing up $LIBS.
1999
2000 Wed Dec  9 13:06:31 1998  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
2001  
2002         * gdk/gdkim.c (gdk_ic_new,gdk_ic_{set,get}_attr): Fixed argument
2003         list and return type for non-XIM fallback.
2004  
2005         * configure.in: Only build XIM-support if available.
2006  
2007 Wed Dec  9 12:23:30 1998  Owen Taylor  <otaylor@redhat.com>
2008         
2009         * gtk/testselection.c (main): Add in missing 'flags'
2010         field to target list.
2011
2012         * gdk/gdkproperty.c (gdk_atom_intern): Actually
2013         add the atoms to the local cache.
2014
2015 Wed Dec  9 04:57:31 PST 1998 Manish Singh <yosh@gimp.org>
2016
2017         * gdk/gdkprivate.h: put text after #endif in comment
2018
2019         * gdk/gdktypes.h: change whitespace in enum to shut up makeenums.pl
2020
2021         * gtk/testdnd.c: #include <string.h>
2022
2023 Mon Dec  7 10:27:09 1998  Owen Taylor  <otaylor@redhat.com>
2024
2025         * gtk/gtkwidget.c: Destroy widgets _after_ propagating unrealize
2026         signals through the widget heirarchy. This is unpleasant, as it
2027         causes more X traffic, but is necessary, because we have to clean
2028         up our Input Contexts before destroying the X windows.
2029         (from matsu-981109-0.patch)
2030         
2031 Mon Dec  7 10:18:18 1998  Owen Taylor  <otaylor@redhat.com>
2032
2033         Applied gtk-a-higuti-981202-0 : 
2034         [ a-higuti@math.sci.hokudai.ac.jp (Akira Higuchi) ]
2035         
2036         * gdk/gdk.h gdk/gdk.c
2037                 (gdk_mbstowcs): New function. Nearly equals to mbstowcs, but
2038                         implemented by a combination of Xlib functions, so
2039                         it works even with X_LOCALE.
2040                 (gdk_wcstombs): New function.
2041                 (g_mbtowc): Removed. No longer needed.
2042
2043         * gdk/gdk.h gdk/gdkfont.c gdk/gdkdraw.c: 
2044                 Added _wc() variants to gdk_text_width(), 
2045                 gdk_char_width(), gdk_draw_text(),
2046                 
2047         * gdk/gdki18n.h
2048                 (mblen, mbtowc, wctomb, mbstowcs, wcstombs,
2049                  wcslen, wcscpy, wcsncpy):
2050                         Removed. No longer needed.
2051                 (iswalnum): Removed.
2052                 (gdk_iswalnum): New macro.
2053                 (gdk_iswspace): New macro.
2054         * gdk/gdktype.h
2055                 (GdkWChar): New typedef.
2056         
2057         * gtk/gtkentry.h, gtk/gtkentry.c
2058                 There are many changes according to the change of the
2059                 internal representation of text, from multibyte string
2060                 to wide characters. 
2061         * gtk/gtkprivate.h, gtk/gtkmain.c
2062                 Removed the variable gtk_use_mb and related codes.
2063         * gtk/gtkspinbutton.c
2064                 Some changes according to the change of type of entry->text.
2065         * gtk/gtktext.h, gtk/gtktext.c
2066                 Changed the internal representation of text. We use GdkWchar
2067                 if a fontset is supplied. If not, we use guchar to save
2068                 memory.
2069         
2070 Tue Dec  1 15:20:39 1998  Owen Taylor  <otaylor@redhat.com>
2071
2072         * gdk/gdkwindow.c (gdk_window_new): When creating
2073         a window with a specified non-system visual, use
2074         a matching colormap.
2075
2076 Mon Nov 30 11:50:13 1998  Owen Taylor  <otaylor@redhat.com>
2077
2078         * gdk/gdk.c gdk/gdkim.c gdk/gdkprivate.h gdk/gdk.h
2079           gdk/gdktypes.h gtk/gtkeditable.c gtk/gtkmain.c
2080           gtk/gtkentry.c gtk/gtktext.c:
2081
2082          Applied matsu-981109-0
2083          [ matsu@arch.comp.kyutech.ac.jp (Takashi Matsuda) ]
2084         
2085          - Change system of setting input method values 
2086            from varargs to a structure, similar to GC's
2087            or window attributes.
2088
2089          - Various fixes to event handling.
2090
2091          Also:
2092
2093          * gdk/gdkim.c: Split of input method stuff into
2094            a separate source file.
2095
2096          * Remove GdkIM typedef, change everything from
2097            GdkIC to GdkIC * to be consistent with the
2098            rest of GTK.
2099         
2100 Wed Dec  9 00:41:41 1998  Owen Taylor  <otaylor@redhat.com>
2101
2102         * gtk/gtkrc.c (gtk_rc_add_initial_default_files): Allocate
2103         correct amount of memory for strings.
2104
2105 Tue Dec  8 18:29:05 CST 1998 Shawn T. Amundson <amundson@gtk.org>
2106
2107         * Released GTK+ 1.1.6
2108
2109         * NEWS: updated
2110
2111         * gtk/Makefile.am:
2112           gtk/testgtk.c:
2113           gtk/gtkrc.h:
2114           gtk/gtkrc.c: Read in default files.
2115
2116 Wed Dec  9 00:49:12 1998  Tim Janik  <timj@gtk.org>
2117
2118         * gtk/gtktypeutils.h:
2119         * gtk/gtktypeutils.c: added gtk_type_query() which returns a newly
2120         allocated structure holding certain type specific informations.
2121         fixed the big bunch of `discards const' warnings with the
2122         initialization of enum/flags values.
2123
2124 Tue Dec  8 15:10:17 1998  Owen Taylor  <otaylor@redhat.com>
2125
2126         * gtk/gtkwindow.c (gtk_window_transient_parent_realized):
2127         Fixed order of arguments to gdk_window_transient_for().
2128
2129 Tue Dec  8 18:02:57 GMT 1998  Tony Gale  <gale@gtk.org>
2130
2131         * examples/Makefile: simple top level Makefile that invokes all
2132           the sub-directory Makefiles.
2133
2134 1998-12-08  Andrew T. Veliath  <andrewtv@usa.net>
2135
2136         * gtk/testgtk.c: Functions to test the toolbar space style.
2137
2138         * gtk/gtktoolbar.c: Add a private GtkToolbarChildSpace subclass of
2139         GtkToolbarChild to hold allocation. Set default space style to
2140         GTK_TOOLBAR_SPACE_EMPTY, define SPACE_LINE_* for separator
2141         fraction defaults.
2142         (gtk_toolbar_paint_space_line): New function; paints the separator
2143         line, using "toolbar" as the detail.
2144         (gtk_toolbar_expose): (gtk_toolbar_draw): Handle CHILD_SPACE when
2145         style is set to SPACE_LINE.
2146         (gtk_toolbar_size_allocate): Store space allocations.
2147         (gtk_toolbar_insert_element): If we are a space, allocate and
2148         initialize a GtkToolbarChildSpace instead of a GtkToolbarChild.
2149         (gtk_toolbar_set_space_style): New function.
2150
2151         * gtk/gtktoolbar.h: Add GtkToolbarSpaceStyle, with styles of EMPTY
2152         and LINE. Add prototype for gtk_toolbar_set_space_style.
2153
2154 Mon Dec  7 16:03:55 1998  Owen Taylor  <otaylor@redhat.com>
2155
2156         * gtk/gtkthemes.h: Remove random unnecessary includes
2157         of standard headers.
2158
2159 1998-12-07  Damon Chaplin  <DAChaplin@msn.com>
2160
2161         * gtk/gtkfontsel.c (gtk_font_selection_select_best_style): made sure
2162         we only try to match styles which are currently shown.
2163
2164         (gtk_font_selection_init): set the notebook tabs homogeneous and set
2165         the border, so we don't need to set the size explicitly (bad for i18n).
2166         Used the clist auto-resize feature for the font and style lists on the
2167         main page and all the filters. Used padding for the 'Reset Filter'
2168         button instead of spaces around it (bad for i18n).
2169
2170         (gtk_font_selection_find_font): when searching for
2171         a font, if we can't match both the family and foundry, we return any
2172         font where just the family matches. (The foundry can even be '*'.)
2173
2174         (gtk_font_selection_show_available_styles): 
2175         (gtk_font_selection_realize_list): don't set the style clist row
2176         colours (for the charset rows) until the clist is realized, since we
2177         use the clist style's insensitive colours.
2178
2179 Mon Dec  7 13:38:06 1998  Owen Taylor  <otaylor@redhat.com>
2180
2181         * gdk/gdkimage.c (gdk_image_new): Use IPC_RMID
2182         _after_ doing XShmAttach. This should work everywhere,
2183         and avoid the need for signal handlers or configure
2184         checks.
2185
2186 Thu Dec  3 19:58:45 1998  Owen Taylor  <otaylor@redhat.com>
2187
2188         * gtk/gtkinputdialog.c: Use _add_with_viewport() for
2189         scrolled window contents.
2190
2191 1998-12-07  Federico Mena Quintero  <federico@nuclecu.unam.mx>
2192
2193         * gtk/gtkpaned.h (struct _GtkPaned): Removed the unused cursor
2194         field in the structure.
2195
2196 Mon Dec  7 15:15:06 GMT 1998  Tony Gale <gale@gtk.org>
2197
2198         * docs/gtk_tut.sgml: Start mass update for GTK 1.1
2199         * examples/extract.sh: Look for the best version of awk
2200         * examples/extract.awk: Fix FD leak
2201         * example/base: minimal example from Tutorial
2202
2203 Mon Dec  7 01:29:27 1998  Owen Taylor  <otaylor@gtk.org>
2204
2205         * gtk/gtkwindow.c: New functions
2206         gtk_window_set_transient_for() - set up a "transient for" relationship.
2207         gtk_window_set_default_size() - set the initial size of a window
2208            distinct from its minimum size.
2209         gtk_window_set_geometry_hints() - Allow the user to set
2210            minimum, maximum sizes, aspect rations, and gridded geometry, 
2211            possibly all with respect to a subwidget of the window.
2212         These interfaces are still a wee bit experimental.
2213
2214         * gdk/gdk.c: Added gdk_window_set_transient_for(),
2215         gdk_window_set_geometry_hints(), and gdk_window_set_role().
2216
2217         * gdk/gdktypes.h: Added new types for find-grained specification
2218         of WM hints.
2219
2220         * gtk/testgtk.c: Various changes to tests to test the
2221         above new functions.
2222
2223         * gtk/gtkfontsel.c: Squash a few 'const' warnings.
2224         
2225         * gtk/gtktogglebutton.c (gtk_toggle_button_realize): Restored
2226         call to gtk_style_set_background() to prevent egregious
2227         flashing to black.
2228
2229 Mon Dec  7 03:52:01 1998  Tim Janik  <timj@gtk.org>
2230
2231         * gtk/gtksignal.c (gtk_handlers_run): when marshalling connect_object
2232         signals, don't pass the data pointer twice, but swap it with the
2233         object pointer (proposed on Nov 30 1998 on gtk-devel-list).
2234
2235 Mon Dec  7 03:08:39 1998  Tim Janik  <timj@gtk.org>
2236
2237         * gtk/gtktypeutils.h: 
2238         * gtk/gtktypeutils.c: reverted Marius's change to expose the type systems
2239         internal type info data to the user. if such functionality is required
2240         we should provide wrapping accessors, ala gtk_signal_query(). also the
2241         GtkTypeInfo structures are dynamically allocated memory portions, so
2242         only the type system is really allowed to access that stuff.
2243
2244         * gtk/gtksignal.c (gtk_signal_connect_by_type): reverted marius change,
2245         since it destroys the possibility to implement automatic marshaller
2246         lookups some day, and it also disables third party code's ability to
2247         connect to any signal.
2248
2249 Mon Dec  7 01:32:18 1998  Tim Janik  <timj@gtk.org>
2250
2251         * gtk/gtkfilesel.c (gtk_file_selection_key_press): always intercept the
2252         Tab key on the entry. the focus shouldn't get lost even if completion
2253         is attempted from an empty entry, since an empty entry string does
2254         indeed have a valid completion meaning (complete all).
2255         (gtk_file_selection_init): cast the gchar array parameter in calls to
2256         gtk_clist_new_with_titles() to quit compiler warnings.
2257         (check_dir): the no_stat_dirs struct must not be const, since we do
2258         indeed modify its contents.
2259
2260         * gtk/testgtk.c (event_watcher): adapted prototype to fit new emission
2261         hook semantics.
2262
2263         * gtk/gtksignal.h:
2264         * gtk/gtksignal.c:
2265         changed emission allocation, so we don't use a doubly linked list
2266         but link ourselfs (singly linked).
2267         changed emission hooks, they get the emision parameters passed as
2268         well now and are emitted during the actuall signal emission (after
2269         the RUN_FIRST class method, but prior to RUN_FIRST handlers).
2270         the existing restrictions do still apply to signal emission hooks,
2271         i.e. an emission may not be stopped or restarted from an emission hook.
2272         due to possibly huge perfomance impacts, frequent use of emision hooks
2273         is also not recommended.
2274         (gtk_signal_next_and_invalidate): added an
2275         assertments which explicits what the code assumes anyways: a
2276         maximum amount of 65535 signals.
2277
2278         * gtk/gtkcontainer.h: deprecated gtk_container_foreach_interp(),
2279         gtk_container_foreach_full() should be used instead.
2280
2281         * gtk/gtkmain.h:
2282         deprecated gtk_timeout_add_interp and gtk_idle_add_interp, since
2283         we provide _full variants.
2284
2285         * gtk/gtksignal.h: deprecated gtk_signal_connect_interp(), we provide
2286         gtk_signal_connect_full() for long enough now.
2287
2288 1998-12-06  Marius Vollmer  <mvo@zagadka.ping.de>
2289
2290         * gtk/gtksignal.c (gtk_signal_newv): Allow a NULL marshaller.
2291         (gtk_signal_connect_by_type): Allow only no_marshal handlers to
2292         connect to signals with a NULL marshaller.
2293
2294         * gtk/gtktypeutils.c (gtk_type_get_info): New.
2295         gtk/gtktypeutils.h (gtk_type_get_info): New prototype.
2296
2297 Sun Dec  6 14:27:35 1998  Stefan Jeske  <stefan@gtk.org>
2298
2299         * gtk/gtkspinbutton.c (gtk_spin_button_draw_arrow): Grey out
2300         arrows if wrap == FALSE and interval borders are reached.
2301
2302 Sat Dec  5 21:07:09 1998  Owen Taylor  <otaylor@gtk.org>
2303
2304         * gtk/gtkaspectframe.c (gtk_aspect_frame_size_allocate): Fixed
2305         long-standing typo in aspect ratio computation code.
2306         (pointed out by Sebastian Rittau <srittau@jroger.in-berlin.de>)
2307
2308 Fri Dec  4 01:20:06 1998  Lars Hamann  <lars@gtk.org>
2309
2310         * gtk/gtkclist.c (gtk_clist_button_release): call toggle_row with
2311         valid row numbers only
2312         (toggle_row): check if clist_row != NULL
2313
2314 Fri Dec  4 00:50:12 1998  Lars Hamann  <lars@gtk.org>
2315
2316         * gtk/gtkctree.c (gtk_ctree_export_to_gnode): fixed for-loop.
2317
2318         * gtk/gtkclist.c 
2319         (gtk_clist_set_column_visibility)
2320         (gtk_clist_column_titles_active)
2321         (gtk_clist_column_titles_active)
2322         (gtk_clist_column_title_passive)
2323         (gtk_clist_column_title_active): few additional tests whether
2324         column->button != NULL
2325
2326 Thu Dec  3 16:49:18 1998  Owen Taylor  <otaylor@redhat.com>
2327
2328         * gtk/gtkdnd.c (DROP_ABORT_TIME): Changed to 5 min
2329         from 10 seconds, so it doesn't abort while users
2330         have an ACTION_ASK menu up.
2331
2332         * gtk/gtkdnd.c: Hide the icon window between sending a a 
2333         drop event to the destination and displaying the
2334         snapback animation, so that it doesn't hang around
2335         during ACTION_ASK.
2336
2337 Thu Dec  3 16:37:42 1998  Owen Taylor  <otaylor@redhat.com>
2338
2339         * gtk/gtkclist.c (get_cell_style): Use GTK_STATE_INSENSITIVE
2340         for the foreground of cells for CLists in the insensitive
2341         state, instead of GTK_STATE_PRELIGHT.
2342
2343 Thu Dec  3 06:20:59 1998  Tim Janik  <timj@gtk.org>
2344
2345         * gtk/gtkwindow.c: moved checks upon focus setting from
2346         gtk_window_real_set_focus to gtk_window_set_focus, so we don't
2347         emit the signal if unneccessary.
2348
2349         * gtk/gtkwidget.c (gtk_widget_grab_focus): clear up the old focus
2350         containers when grabbing focus on a new widget. this is based on
2351         a patch from Alexis Mikhailov, submitted to gtk-list on 4 Nov 1998.
2352
2353         * gtk/gtkclist.c (gtk_clist_focus_out): set CLIST_CHILD_HAS_FOCUS
2354         flag, so we take the buttons into consideration upon the next focus
2355         request.
2356
2357         * gtk/gtkcontainer.c (gtk_container_set_focus_child): fixed an
2358         assertment.
2359
2360 Wed Dec  2 17:45:21 CST 1998 Shawn T. Amundson <amundson@gtk.org>
2361
2362         * gtk/gtkpixmap.c: Fixes for low-color displays and a slight
2363           enhancement for true-color displays.
2364
2365         * INSTALL:
2366           README:
2367           configure.in:
2368           gtk+.spec:
2369           docs/gtk-config.1: up to version 1.1.6
2370
2371 Wed Dec  2 01:36:49 PST 1998 Manish Singh <yosh@gimp.org>
2372
2373         * gtk/gtkfeatures.h.in: lets #define GTK_HAVE_FEATURES_1_1_6 before
2374         we release it this time
2375
2376 Wed Dec  2 01:39:02 1998  Tim Janik  <timj@gtk.org>
2377
2378         * gtk/gtknotebook.h: 
2379         * gtk/gtknotebook.c: s/gtk_notebook_nth_page/gtk_notebook_get_nth_page/.
2380
2381         * incremented version number to 1.1.6 and made Gtk
2382         dependant on GLib 1.1.6.
2383
2384         * gtk/gtkwidget.h (struct _GtkRequisition): changed width and height
2385         from guint16 to gint16, since sizes bigger than 32767 are not supported
2386         anyways, and aritmethics with intermediate negative values are possible
2387         now.
2388
2389 Tue Dec  1 00:00:04 1998  Tim Janik  <timj@gtk.org>
2390
2391         * gtk/gtkscrolledwindow.c:
2392         implementation of GTK_POLICY_NEVER functionality, added rationales
2393         on the policy and size requisition handling at the top.
2394         (gtk_scrolled_window_size_request):
2395         we assume a default minimum for our child's width and height
2396         if [hv]scrollbar_policy != GTK_POLICY_NEVER, except when the user
2397         specified the dimension explicitely.
2398         (gtk_scrolled_window_size_allocate): 
2399         do not show scrollbars if [hv]scrollbar_policy == GTK_POLICY_NEVER.
2400
2401         * gtk/gtkviewport.c (gtk_viewport_size_request): report the real
2402         size we require (including the child).
2403
2404         * gtk/gtkclist.c:
2405         (gtk_clist_size_request): report the real size required.
2406
2407         * gtk/gtkenums.h (enum GtkPolicyType): added GTK_POLICY_NEVER.
2408
2409         * gtk/gtkobject.c (gtk_object_init_type): object_type doesn't
2410         need to be a static variable.
2411
2412 Mon Nov 30 22:41:25 1998  Tim Janik  <timj@gtk.org>
2413
2414         * gtk/gtkclist.h: 
2415         * gtk/gtkclist.c: 
2416         * gtk/gtkviewport.h:
2417         * gtk/gtkviewport.c:
2418         * gtk/gtktext.h:
2419         * gtk/gtktext.c:
2420         * gtk/gtklayout.h:
2421         * gtk/gtklayout.c:
2422         * gtk/gtkwidget.h:
2423         * gtk/gtkwidget.c:
2424         * gtk/gtkscrolledwindow.h:
2425         * gtk/gtkscrolledwindow.c:
2426         s/scroll_adjustements/scroll_adjustments/
2427         s/scroll_adjustments/set_scroll_adjustments/g
2428
2429 Tue Dec  1 22:45:58 1998  Lars Hamann  <lars@gtk.org>
2430
2431         * gtk/gtkclist.h (struct _GtkCListClass): new class method/signal
2432         row_move.
2433         * gtk/gtkclist.c (gtk_clist_row_move): new public function.
2434         emit a row_move signal
2435         (real_row_move): move source_row to dest_row
2436         (gtk_clist_swap_rows): use gtk_clist_row_move calls.
2437         (gtk_clist_columns_autosize): resize all columns to their optimal
2438         width
2439         * gtk/gtkctree.c (real_row_move): use gtk_ctree_move to move
2440         entire sub-tree.
2441         * gtk/gtknotebook.c (gtk_notebook_nth_page): get nth page widget.
2442
2443 Tue Dec  1 02:40:22 PST 1998 Manish Singh <yosh@gimp.org>
2444
2445         * configure.in
2446         * gdk/Makefile.am
2447         * gtk/Makefile.am: Put -DFOO stuff into Makefile.am INCLUDES.
2448         Separate vars for each, for granularity.
2449
2450 Tue Dec  1 02:19:54 1998  Tim Janik  <timj@gtk.org>
2451
2452         * gtk/gtkenums.h: fixed a stupid error of mine about the run type
2453         values.
2454
2455 1998-11-30  Elliot Lee  <sopwith@cuc.ml.org>
2456
2457         * {gdk,gtk}/*.c: Make read-only data structures "static const" to
2458         allow them to be shared, mainly including (but not limited to) the
2459         GtkTypeInfo structures for each class.
2460
2461         * gtk/gtkfilesel.c: Add /net to the "leave me alone" directory listing.
2462
2463 Mon Nov 30 12:17:10 1998  Jeff Garzik  <jgarzik@pobox.com>
2464
2465         * gtk/gtksignal.c:
2466         Surround debug variable with #ifdef to silence gcc.
2467
2468         * gtk/gtknotebook.c (gtk_notebook_reorder_child):
2469         Added initializer to quiet gcc warning.
2470         Added assertion to check for null pointer deref.
2471
2472 Mon Nov 30 10:11:29 1998  Tim Janik  <timj@gtk.org>
2473
2474         * gtk/testgtkrc: merged testgtkrc with the pre-themes one, removed
2475         system specific includes.
2476
2477         * gtk/gtksignal.c: asured that stop and restart emissions are also
2478         checked and processed for not connected objects. fixed up restart
2479         emission administration. invoke emission hooks after emission, hooks
2480         are not supposed to muck around with the current emission, and
2481         may also not cause emission restarts. fixed up stop emission
2482         administration.
2483
2484 Mon Nov 30 06:20:36 1998  Tim Janik  <timj@gtk.org>
2485
2486         * gtk/testgtk.c: added an event watcher for enter/leave based on
2487         signal emission hooks.
2488
2489         * gtk/gtkobject.c (gtk_object_class_init): made GtkObject::destroy a
2490         GTK_RUN_NO_HOOKS signal.
2491
2492         * gtk/gtksignal.h: 
2493         * gtk/gtksignal.c: implemented emission hooks, new hooks can be added
2494         to a signal with gtk_signal_add_emission_hook or
2495         gtk_signal_add_emission_hook_full, and can be removed again with
2496         gtk_signal_remove_emission_hook.
2497
2498         * gtk/gtkenums.h: remove GTK_RUN_MASK, since it doesn't represent
2499         an appropriate mask for signal runtypes for a long time now.
2500         added GTK_RUN_NO_HOOKS value, which is used to flag signals
2501         that do not allow the running of signal hooks.
2502
2503 1998-11-26  Michael Krause  <m.krause@tu-harburg.de>
2504
2505         * gtk/gtknotebook.c (gtk_notebook_switch_page): made 'page_num'
2506         argument a gint: switch_page signal delivers valid page numbers
2507         again.
2508
2509 Sun Nov 29 06:12:01 1998  Tim Janik  <timj@gtk.org>
2510
2511         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_set_[hv]adjustment): 
2512         set composite names.
2513
2514         * gtk/gtktypeutils.c (gtk_type_unique): removed default initialization
2515         check, people must use gtk_type_init().
2516         fixed up type allocation for foreign fundamentals.
2517
2518         * gtk/gtkwidget.h: 
2519         * gtk/gtkwidget.c: added gtk_widget_set_composite_name() which is meant
2520         for internal use by containers, that want to assign specific composite
2521         names to their composite children.
2522         added gtk_widget_get_composite_name() which will return a newly
2523         allocated string, containing the composite name of a widget. valid
2524         composite names can only be retrived from widgets that have a parent
2525         assigned and are flagged as GTK_COMPOSITE_CHILD.
2526
2527         * gtk/gtkcontainer.h:
2528         * gtk/gtkcontainer.c: added a new function
2529         gtk_container_child_default_composite_name() which will return a
2530         newly allocated string, holding the composite name of a containers
2531         child. a default implementation is provided which will compose the
2532         composite name out of the widgets type and its sequential children
2533         id. this implementation can be overidden through a new class function
2534         *(composite_name)().
2535
2536 Sat Nov 28 10:57:59 1998  Owen Taylor  <otaylor@redhat.com>
2537
2538         * gtk/gtkwindow.c (gtk_window_expose_event): Removed bogus
2539         expose_event handler - we had two expose_event
2540         handlers!
2541
2542 Sat Nov 28 03:13:42 1998  Tim Janik  <timj@gtk.org>
2543
2544         * gtk/gtkscrolledwindow.h: 
2545         * gtk/gtkscrolledwindow.c: changed scrolled window inheritance,
2546         it inherits from GtkBin now.
2547
2548         * gtk/gtkbin.c (gtk_bin_unmap): removed superfluous check for
2549         visibility of child.
2550         (gtk_bin_draw): removed superfluous check for GTK_WIDGET_DRAWABLE().
2551         added check so a child gets only drawn if it's visible.
2552
2553         * gtk/gtkwidget.h: 
2554         * gtk/gtkwidget.c: removed gtk_widget_draw_children().
2555
2556         * gtk/gtkstyle.h: 
2557         * gtk/gtkstyle.c: rmoved gtk_reset_widget_shapes.
2558
2559         * gtk/gtkwidget.h: 
2560         * gtk/gtkwidget.c: removed crufty relict: gtk_widget_is_child().
2561         added internal function gtk_widget_reset_shapes() from gtkstyle.c.
2562
2563         * gtk/gtkrc.h:
2564         * gtk/gtkrc.c: (gtk_rc_find_pixmap_in_path): removed bogus gscanner
2565         argument, changed callers.
2566
2567         * gtk/gtkmenufactory.c: GtkMenuFactory is deprecated for a long time,
2568         it will issue a warning now.
2569
2570         * gtk/gtkcompat.h: new file to #define aliases for historic
2571         function names.
2572
2573         * changed 8 function names for consistency and provided aliases to keep
2574         source compatibility in gtkcompat.h:
2575         (gtk_accel_label_get_accel_width): renamed from gtk_accel_label_accelerator_width
2576         (gtk_container_set_border_width): renamed from gtk_container_border_width
2577         (gtk_notebook_get_current_page): renamed from gtk_notebook_current_page
2578         (gtk_packer_configure): renamed from gtk_packer_set_child_packing
2579         (gtk_paned_set_gutter_size): renamed from gtk_paned_gutter_size
2580         (gtk_paned_set_handle_size): renamed from gtk_paned_handle_size
2581         (gtk_scale_get_value_width): renamed from gtk_scale_value_width
2582         (gtk_window_set_position): renamed from gtk_window_position
2583
2584         * renamed a few recently added funtions for consistency:
2585         (gtk_notebook_get_tab_label): renamed from gtk_notebook_query_tab_label.
2586         (gtk_notebook_get_menu_label): renamed from gtk_notebook_query_menu_label.
2587         (gtk_progress_configure): renamed from gtk_progress_reconfigure.
2588
2589 Fri Nov 27 18:57:20 PST 1998 Manish Singh <yosh@gimp.org>
2590
2591         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_add_with_viewport):
2592         check for existing viewport first, and don't add one if there
2593         already is one
2594
2595 Sat Nov 28 00:06:49 1998  Tim Janik  <timj@gtk.org>
2596
2597         * gtk/gtkwidget.h: 
2598         * gtk/gtkwidget.c: deprecated gtk_widget_freeze_accelerators and
2599         gtk_widget_thaw_accelerators, we provide gtk_widget_lock_accelerators
2600         and gtk_widget_unlock_accelerators.
2601
2602         * gtk/gtklayout.h:
2603         * gtk/gtklayout.c: implemented incremental freezing facility.
2604
2605         * gtk/gtktext.h: 
2606         * gtk/gtktext.c: implemented incremental freezing facility.
2607
2608         * gtk/gtkenums.h:
2609         * gtk/gtkaccelgroup.h: moved enum GtkAccelFlags into this place.
2610
2611         * gtk/gtkentry.h:
2612         * gtk/gtkentry.c:
2613         deprecated gtk_entry_adjust_scroll().
2614         
2615         * random GtkType, macro and indentation fixes.
2616
2617 Fri Nov 27 22:50:15 1998  Tim Janik  <timj@gtk.org>
2618
2619         * gtk/gtkclist.h: 
2620         * gtk/gtkclist.c: implemented incremental freezing facility, added
2621         a new class member (*refresh)() which takes over the thaw
2622         functionality. the clist FROZEN flag got removed on the way.
2623         * gtk/gtkctree.c: adaptions to feature the clist refresh functionality
2624         and incremental freezing.
2625
2626         * gtk/gtkcalendar.c: implemented incremental freezing facility.
2627
2628 Fri Nov 27 11:41:27 1998  Raph Levien  <raph@gimp.org>
2629
2630         * gdk/gdkinputcommon.h (gdk_input_common_init): Fixed it so that
2631         it still includes the core pointer in gdk_input_devices even
2632         if the XInput extension is not present in the X server.
2633
2634 Fri Nov 27 12:17:15 1998  Owen Taylor  <otaylor@redhat.com>
2635
2636         * gtk/gtkdnd.[ch] (gtk_drag_get_source_widget): New function to
2637         get the source widget of a drag.
2638
2639         * gtk/gtkdnd.[ch]: Target flags GTK_TARGET_SAME_[WIDGET/APP]
2640         to restrict certain targets to the same widget or to
2641         the same application.
2642
2643         * gtk/testdnd.c: Test gtk_drag_get_source_widget().
2644         
2645 Thu Nov 26 19:11:46 1998  Lars Hamann  <lars@gtk.org>
2646
2647         * gtk/gtk-boxed.defs (GtkCTreeNode): define GtkCTreeNode as boxed type
2648         * gtk/gtkctree.c (gtk_ctree_class_init): use GTK_CTREE_NODE_TYPE
2649         instead of GTK_TYPE_POINTER in signal definitions.
2650         (patch from James Henstridge <james@daa.com.au>)
2651
2652 Thu Nov 26 18:48:44 1998  Lars Hamann  <lars@gtk.org>
2653
2654         * gtk/gtkclist.c (set_cell_contents)
2655         * gtk/gtkctree.c (set_cell_contents): call column_auto_resize only
2656         if auto.resize == TRUE
2657
2658         * gtk/gtknotebook.c (gtk_notebook_set_shape) (gtk_notebook_expose):
2659         don't draw tab, if show_tabs == FALSE
2660         (bug reports from Alexis Mikhailov / Dave Cole)
2661         (gtk_notebook_focus_changed) (gtk_notebook_draw_focus): draw only
2662         the focus rectangle, not the hole tab.
2663
2664 Thu Nov 26 03:18:08 1998  Tim Janik  <timj@gtk.org>
2665
2666         * gtk/gtkclist.h: 
2667         * gtk/gtkctree.h: 
2668         * gtk/gtkclist.c:
2669         * gtk/gtkctree.c: reverted bogus and undocumented!!! changes from
2670         Jay Cox (98/11/23 13:53:26) which `const' qualified char* arrays.
2671
2672         * gtk/maketypes.awk: changed underline substitution, so we get
2673         GTK_TYPE_CTREE_POS instead of the broken GTK_TYPE_C_TREE_POS.
2674         * gtk/makeenums.pl: likewise.
2675         * gtk/gtkctree.c: adapted type names accordingly.
2676
2677 Tue Nov 24 11:31:06 1998  Owen Taylor  <otaylor@redhat.com>
2678
2679         * docs/Changes-1.2.txt: Edited section on the ScrolledWindow.
2680
2681         * gtk/gtklayout.c (gtk_layout_set_[hv]adjustment): Remove
2682         some code duplication.
2683
2684         * gtk/gtklayout.[ch] Fixed mapping and unmapping of child windows
2685         and child widgets when scrolling greater than 32k pixels.
2686
2687         * testgtk.c: Modified layout test to test scrolling over 
2688         long distances.
2689
2690         * gtk/gtkplug.c: Added a few blank lines.
2691
2692 Tue Nov 24 11:11:05 1998  Owen Taylor  <otaylor@redhat.com>
2693
2694         * gtk/gtklayout.[ch]: Fixed up copyright message.
2695
2696         * gdk/gdkrgb.c (DM): Make the dither matrix constant
2697         so it can be shared.
2698
2699         * gtk/gtkdnd.c: Make cursor bitmaps const.
2700
2701         * gdk/gdk.h gdk/gdkpixmap.c: Added const to 
2702         gdk_pixmap/bitmap_create_from_data.
2703
2704 Tue Nov 24 07:46:09 1998  Tim Janik  <timj@gtk.org>
2705
2706         * docs/Changes-1.2.txt: added a section on scrolled windows and
2707         scrollable widgets.
2708
2709 1998-11-24  Andrew T. Veliath  <andrewtv@usa.net>
2710
2711         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): Include radio
2712         buttons when setting relief for button items.
2713         (gtk_toolbar_set_button_relief): Same.
2714
2715 1998-11-23  Jeff Garzik  <jgarzik@pobox.com>
2716
2717         * gdk/Makefile.am, gtk/Makefile.am:
2718         Removed DEFS "+=" mess that breaks recent automakes.
2719         INCLUDES is the correct way to add to CFLAGS from Makefile.am.
2720
2721         * gdk/gdk.c, gdk/gdkglobals.c, gdk/gdkimage.c, gdk/gdkinput.c,
2722         gdk/gdkpixmap.c, gdk/gdkthreads.c, gdk/gdkwindow.c,
2723         gdk/gxid_lib.c, gtk/fnmatch.c, gtk/gtkclist.c, gtk/gtkmain.c,
2724         gtk/testthreads.c:
2725         Include "config.h" instead of "../config.h".
2726         Now that DEFS works again, automake will automatically pass us
2727         the location of config.h in -I.
2728
2729 Mon Nov 23 22:10:09 1998  Owen Taylor  <otaylor@redhat.com>
2730
2731         * gtk/Makefile.am gtk/gtk.h gtk/gtklayout.[ch]
2732         gtk/gtkplug.[ch] gtk/gtksocket.[ch] gtk/gtk.h:
2733
2734         Added layout widget for scrolling arbitrarily big areas.
2735         Added plug/socket widgets for interprocess embedding.
2736
2737         These widgets still, at some point, need to be
2738         made more pure in their use of GDK, as opposed
2739         to raw X.
2740
2741         * gtk/testgtk.c: Added test for layout widget.
2742         
2743 1998-11-23  Jeff Garzik  <jgarzik@pobox.com>
2744
2745         * gtk/gtkclist.c: (gtk_clist_swap_rows):  Bugfix from
2746         Brandon Long <blong@fiction.net> - do the right thing with first
2747         and last, which are the absolute values of row arguments row1
2748         and row2.
2749
2750 Mon Nov 23 04:24:55 PST 1998 Manish Singh <yosh@gimp.org>
2751
2752         * gtk/gtkprogress.c: (gtk_progress_set_adjustment): make a saner
2753         default adjustment (from 0 to 100) instead. I'm not sure if this
2754         is the correct level for the fix, but gtk_progress_bar_new()'s
2755         original default behavior is restored.
2756
2757 1998-11-23  Martin Baulig  <martin@home-of-linux.org>
2758
2759         * gtk/gtkfeatures.h.in (GTK_HAVE_FEATURES_1_1_5): Define this so
2760         we can check for latest GTK features.
2761
2762 1998-11-23  Havoc Pennington  <hp@pobox.com>
2763
2764         * gtk/gtktoolbar.c: (gtk_toolbar_set_relief):
2765         (gtk_toolbar_insert_element): When setting relief, also affect
2766         toggle buttons.
2767
2768 Sun Nov 22 20:37:06 PST 1998 Manish Singh <yosh@gimp.org>
2769
2770         * gtk/gtkobject.h: remove extraneous comma
2771
2772 Mon Nov 23 05:21:50 1998  Tim Janik  <timj@gtk.org>
2773
2774         * gtk/gtkcontainer.c:
2775         (gtk_container_add_with_args): 
2776         (gtk_container_addv): 
2777         (gtk_container_add): removed assertements for constructed containers
2778         again, since this essentially breaks the "child" arg.
2779
2780         * gtk/gtktooltips.c (gtk_tooltips_force_window): fixup the draw_window
2781         reference count, we don't need to reference toplevels that already have
2782         destroy notifiers.
2783
2784         * gtk/gtkscrolledwindow.c: check for the composites existance in
2785         _forall since we might not be already constructed.
2786
2787 Sun Nov 22 14:34:58 CST 1998 Shawn T. Amundson <amundson@gtk.org>
2788
2789         * Released GTK+ 1.1.5
2790
2791         * configure.in: require GLib 1.1.5
2792
2793 Mon Nov 23 03:21:17 1998  Tim Janik  <timj@gtk.org>
2794
2795         * gtk/gtktext.c (gtk_text_destroy): disconnect hadj & vadj, not
2796         2 * hadj.
2797         (gtk_text_finalize): only unref the current_font if we have
2798         been realized.
2799
2800 Sat Nov 21 18:41:13 CST 1998 Shawn T. Amundson <amundson@gtk.org>
2801
2802         * configure.in:
2803           INSTALL:
2804           NEWS:
2805           README:
2806           gtk+.spec:
2807           docs/gtk-config.1: Version incremented to 1.1.5
2808
2809 Sun Nov 22 16:21:28 1998  Tim Janik  <timj@gtk.org>
2810
2811         * gtk/gtkprogress.c: added args ::show_text, ::text_xalign,
2812         ::text_yalign, ::activity_mode.
2813
2814         * gtk/gtkprogressbar.c: added construct arg ::adjustment. added args
2815         ::bar_style, ::orientation, ::discrete_blocks, ::activity_step,
2816         ::activity_blocks.
2817         (gtk_progress_bar_new):
2818         (gtk_progress_bar_new_with_adjustment): use gtk_widget_new().
2819         (gtk_progress_bar_construct): deprecated.
2820
2821         * gtk/gtkvscrollbar.c:
2822         (gtk_vscrollbar_draw_step_back): 
2823         (gtk_vscrollbar_draw_step_forw): use "vscrollbar" as detail for
2824         gtk_paint_arrow, to be consistent with hscrollbar.
2825
2826         * gtk/gtktext.c
2827         added construct args ::hadjustment, ::vadjustment.
2828         added args ::line_wrap, ::word_wrap.
2829         (gtk_text_class_init): added scroll_adjustments signal.
2830         (gtk_text_new): use gtk_widget_new.
2831         (gtk_text_disconnect): remove adjustement with gtk_text_set_adjustments,
2832         so we don't screw the reference counts and don't leave signals connected.
2833         (gtk_text_destroy): disconnect adjustments signals.
2834         (gtk_text_finalize): unref adjustments.
2835
2836         * gtk/gtkctree.c: added construct args ::n_columns and ::tree_column.
2837         added args ::indent, ::spacing, ::show_stub, ::reorderable,
2838         ::use_drag_icons, ::line_style and ::expander_style.
2839         (gtk_ctree_set_show_stub): renamed from gtk_ctree_show_stub, which is
2840         deprecated now.
2841
2842         * gtk/gtkclist.h: remove GTK_CLIST_CONSTRUCT flag.
2843         * gtk/gtkclist.c:
2844         removed ::vadjustment and ::hadjustment args, introduced
2845         ::scroll_adjustments signal.
2846         added ::shadow_type, ::selection_mode and ::row_height args.
2847         added n_columns construct arg.
2848         (gtk_clist_construct): call gtk_object_constructed().
2849         (gtk_clist_set_row_height): if height is passed as 0,
2850         revert to automatic height calculation.
2851         (gtk_clist_destroy): before unrefing the adjustments, disconnect our
2852         signal handlers.
2853
2854 Fri Nov 21 22:34:58 1998  Tim Janik  <timj@gtk.org>
2855
2856         * gtk/gtkwidget.c (gtk_widget_new): call gtk_object_default_construct
2857         like gtk_object_new.
2858         (gtk_widget_destroy): assert that we only destroy constructed widgets.
2859
2860         * gtk/gtkobject.h (enum GtkArgFlags): new flag GTK_ARG_CONSTRUCT_ONLY
2861         to identify args that may only be used for construction.
2862         GTK_ARG_CONSTRUCT maybe used as normal arguments besides construction
2863         time.
2864         * gtk/gtkobject.c (gtk_object_new): invoke gtk_object_default_construct
2865         at the end if the object is not fully constructed.
2866         (gtk_object_newv): likewise.
2867         (gtk_object_destroy): assert that we only destroy constructed objects.
2868         (gtk_object_init): setup GTK_CONSTRUCTED from the
2869         objects real klass.
2870         (gtk_object_default_construct): new function to complete default
2871         construction of an object by applying missing construtor args with
2872         default values of 0, 0.0 or NULL.
2873         (gtk_object_constructed): new function to mark an object as being
2874         constructed (used from within constructors).
2875
2876         * gtk/gtkarg.c (gtk_arg_type_new_static): return the args info pointer
2877         so it is immediatedly available for the caller.
2878
2879         * gtk/gtktypeutils.c (gtk_type_new): pass an object's real class to
2880         the object initilizer (GtkObjectInitFunc takes a second arg now, the
2881         real klass), and asure that object initializers may temporarily alter
2882         the class pointer.
2883
2884 Fri Nov 20 08:00:30 1998  Tim Janik  <timj@gtk.org>
2885
2886         * gtk/testgtk.c: change all occourances of gtk_container_add (
2887         scrolled_window, widget) to gtk_scrolled_window_add_with_viewport (...)
2888         for widget!=(clist, ctree, text, viewport).
2889
2890         * gtk/gtkcombo.c:
2891         (gtk_combo_init): use gtk_scrolled_window_add_with_viewport()
2892         to add children to the scrolled window.
2893
2894         * gtk/gtkscrolledwindow.h:
2895         * gtk/gtkscrolledwindow.c:
2896         changed scrolled_window->viewport to scrolled_window->child, and use
2897         gtk_widget_scroll_adjustements() to set the scroll adjustments for the
2898         widget, we do not create an additional viewport anymore.
2899         added ::hadjustment and ::vadjustment constructor args.
2900         (gtk_scrolled_window_new): use gtk_widget_new() to create the widget.
2901         (gtk_scrolled_window_set_hadjustment):
2902         (gtk_scrolled_window_set_vadjustment): new functions that superceed
2903         gtk_scrolled_window_construct.
2904         (gtk_scrolled_window_construct): deprecated this function.
2905         
2906         * gtk/gtkhscrollbar.c:
2907         * gtk/gtkvscrollbar.c:
2908         * gtk/gtkhscale.c:
2909         * gtk/gtkvscale.c:
2910         support a constructor arg "::adjustment", and use gtk_widget_new() for
2911         the widget creation.
2912
2913         * gtk/gtkrange.c: added ::update_policy arg.
2914         (gtk_range_set_adjustment): if adjustment is passed in as NULL, create
2915         a default adjustment so this function can be used for derived widgets
2916         that depend on the adjustment's existance.
2917         (gtk_range_destroy): disconnect the adjustment signal, so we don't
2918         get called after we got destroyed, we don't destroy the adjustment
2919         in here, because it might have been provided from another widget.
2920
2921         * gtk/gtkviewport.c: introduced ::scroll_adjustments signal.
2922         (gtk_viewport_destroy): same as gtk_range_destroy.
2923
2924         * gtk/gtkprogress.c (gtk_progress_destroy): same as gtk_range_destroy.
2925
2926         * gtk/gtkwidget.h: 
2927         * gtk/gtkwidget.c: changed gtk_widget_activate() to return a
2928         gboolean, indicating whether this widget supports activation.
2929         added gtk_widget_scroll_adjustements() to set the scrolling
2930         adjustments of a widget.
2931
2932 Wed Nov 19 01:22:42 1998  Tim Janik  <timj@gtk.org>
2933
2934         * gtk/gtkoptionmenu.c:
2935         (gtk_option_menu_remove_contents):
2936         (gtk_option_menu_update_contents): removed
2937         gtk_container_[un]block_resize() pairs.
2938
2939         * gtk/gtknotebook.h: 
2940         * gtk/gtknotebook.c: removed the tab_border field, since it shouldn't
2941         be used outside of gtknotebook.c anyways. made ARG_TAB_BORDER a
2942         wrtie-only argument.
2943
2944         * *.c: made deprecated functions issue a message:
2945         gtk_clist_set_border, gtk_container_block_resize,
2946         gtk_container_unblock_resize, gtk_container_need_resize,
2947         gtk_object_class_add_user_signal, gtk_spin_button_construct,
2948         gtk_scrolled_window_construct.
2949         removed non-functional functions:
2950         gtk_container_disable_resize, gtk_container_enable_resize,
2951         gtk_clist_set_policy.
2952
2953 Wed Nov 18 22:54:36 1998  Tim Janik  <timj@gtk.org>
2954
2955         * gtk/gtkbox.c (gtk_box_init): 
2956         * gtk/gtkdrawingarea.c (gtk_drawing_area_init): 
2957         * gtk/gtkeventbox.c (gtk_event_box_init): 
2958         * gtk/gtkfixed.c (gtk_fixed_init): 
2959         * gtk/gtkframe.c (gtk_frame_init): 
2960         * gtk/gtkhandlebox.c (gtk_handle_box_init): 
2961         * gtk/gtkpacker.c (gtk_packer_init): 
2962         * gtk/gtkmisc.c (gtk_misc_init): 
2963         * gtk/gtkpreview.c (gtk_preview_init): 
2964         * gtk/gtkprogress.c (gtk_progress_init): 
2965         * gtk/gtkprogressbar.c (gtk_progress_bar_init): 
2966         * gtk/gtkseparator.c (gtk_separator_init): 
2967         * gtk/gtktable.c (gtk_table_init): 
2968         * gtk/gtkviewport.c (gtk_viewport_init): 
2969         * gtk/gtkalignment.c (gtk_alignment_init): 
2970         removed setting of the GTK_BASIC flag.
2971
2972         * gtk/gtkwidget.h:
2973         * gtk/gtkwidget.c:
2974         removed GTK_BASIC, GTK_WIDGET_BASIC and gtk_widget_basic.
2975
2976         * miscellaneous GtkType and macro fixups.
2977
2978 Sat Nov 21 18:53:13 1998  Owen Taylor  <otaylor@redhat.com>
2979
2980         * gdk/gdkwindow.c (gdk_window_get_deskrelative_origin): 
2981         Fixed so it at least works with window managers other
2982         than Enlightenment, though it probably needs to be
2983         removed altogether.
2984
2985 1998-11-21  Andrew T. Veliath  <andrewtv@usa.net>
2986
2987         * gtk/gtkhandlebox.[ch]: Add shadow_type and
2988         gtk_handle_box_set_shadow_type function (plus a
2989         GtkHandleBox::shadow arg) to allow configuration of shadow in the
2990         bin window.
2991
2992 Thu Nov 19 23:47:38 CST 1998 Shawn T. Amundson <amundson@gtk.org>
2993
2994         * gtk/gtkcalendar.c: Fix for marking days from 
2995           Dan Reish <dreish@izzy.net>.
2996
2997 Thu Nov 19 00:15:27 1998  Lars Hamann  <lars@gtk.org>
2998
2999         * gtk/gtkctree.c (gtk_ctree_node_nth): return the nth GtkCTreeNode
3000         in row_list. (from Samuel Solon <ssolon@usa.net>)
3001         
3002         * gtk/gtkclist.c (gtk_clist_get_column_title): return column title
3003         (gtk_clist_get_column_widget): return column widget
3004
3005 Wed Nov 18 11:54:57 1998  Owen Taylor  <otaylor@redhat.com>
3006
3007         * gtk/gtkdnd.c (gtk_drag_find_widget): Accept drops
3008         that are sent to a toplevel but are not within the
3009         toplevels bounds.
3010
3011         * gdk/gdkdnd.c gdk/gdk.h: Added support for a
3012         XdndProxy atom which proxies the drag to another window.
3013
3014 1998-11-17  Federico Mena Quintero  <federico@nuclecu.unam.mx>
3015
3016         * gtk/gtkpaned.h (struct _GtkPaned): Removed the cursor field, now
3017         that it is not needed.
3018
3019 Tue Nov 17 1998 The Rasterman <raster@redhat.com>
3020         * gdk/gdk.h, gdk/gdkwindow.c: Added gdk_window_get_deskrelative_origin
3021           function to correctly determine gdk window position relative to
3022           its "root window" - contains check for an Enlightenment
3023           virtual root window.
3024         * gtk/gtkhandlebox.c: changed gdk_window_get_origin ->
3025           gdk_window_get_deskrelative_origin to get the origin of dragged
3026           handleboxes correctly. Now it works correctly with E.
3027           
3028 Tue Nov 17 1998  Tuomas Lukka <lukka@iki.fi>
3029
3030         * gtk/gtktypeutils.c: Fix vital bug where LOOKUP was used when
3031           getting types even though we were not using real type names,
3032           just the index.  This caused random crashes when more than 
3033           256 types were defined.
3034
3035 1998-11-17  Martin Baulig  <martin@home-of-linux.org>
3036
3037         * gtk/genmarshal.pl: Put output files in the current directory
3038         and not in the $(srcdir) since the VPATH is ignored for built
3039         sources.
3040
3041 Tue Nov 17 01:37:53 PST 1998 Manish Singh <yosh@gimp.org>
3042
3043         * gtk/genmarshal.pl
3044         * gtk/Makefile.am: check for unchanged autogenerated files, so
3045         we don't rebuild everything just for adding a new function
3046
3047 Mon Nov 16 19:19:00 CST 1998 Shawn T. Amundson <amundson@gtk.org>
3048
3049         * gtk/gtkpixmap.h
3050           gtk/gtkpixmap.c: Pixmaps now grey out when insensitive,
3051           code thanks to GNOME stock by Eckehard Berns.  New function
3052           gtk_pixmap_set_build_insensitive to provide ability to turn 
3053           this off.
3054
3055 Tue Nov 17 00:06:29 1998  Lars Hamann  <lars@gtk.org>
3056
3057         * gtk/gtknotebook.h (struct _GtkNotebook): new flags : homogeneous;
3058         new guints : tab_hborder, tab_vborder; marked tab_border deprecated
3059         (struct _GtkNotebookPage): new flags : expand, fill, pack
3060
3061         * gtk/gtknotebook.h/c
3062         (gtk_notebook_set_homogeneous_tabs): new function. set homogeneneous
3063         tabs
3064         (gtk_notebook_set_tab_border): set tab_h/vborder to tab_border
3065         (gtk_notebook_set_tab_hborder): new function. set tab_hborder
3066         (gtk_notebook_set_tab_vborder): new function. set tab_vborder
3067         (gtk_notebook_query_tab_label): new function. get tab_label widget.
3068         (gtk_notebook_set_tab_label): new function. set tab_label widget.
3069         (gtk_notebook_set_tab_label_text): new function. set tab_label text.
3070         (gtk_notebook_query_menu_label): new function. get tab_label widget.
3071         (gtk_notebook_set_menu_label): new function. set tab_label widget.
3072         (gtk_notebook_set_menu_label_text): new function. set tab_label text.
3073         (gtk_notebook_set_tab_label_packing): new function. set tab_label
3074         fill, expand, fill_type
3075         (gtk_notebook_query_tab_label_packing): new function. get tab_label
3076         fill, expand, fill_type
3077
3078         (gtk_notebook_real_page_position): return logic page number
3079         (gtk_notebook_search_page) search next/prev logic page
3080         (gtk_notebook_update_labels): set logic page number.
3081         (gtk_notebook_page_compare): renamed gtk_notebook_find_page
3082         (gtk_notebook_set/get_child_arg): new args CHILD_ARG_TAB_EXPAND,
3083         CHILD_ARG_TAB_FILL, CHILD_ARG_TAB_PACK
3084         (gtk_notebook_button_press) (gtk_notebook_key_press)
3085         (gtk_notebook_focus) (gtk_notebook_pages_allocate)
3086         (gtk_notebook_calc_tabs) (gtk_notebook_switch_focus_tab)
3087         use gtk_notebook_search_page
3088         (gtk_notebook_page_allocate): fixed allocation bug
3089         (gtk_notebook_set/get_arg): new args TAB_HBORDER, TAB_VBORDER.
3090         (gtk_notebook_init): unset GTK_NO_WINDOW flag
3091         (gtk_notebook_size_request): check whether page->child is visible.
3092         changes due to tab h/vborder, homogeneous tabs
3093         (gtk_notebook_paint): don't draw invisible tabs
3094         (gtk_notebook_switch_page): calculate page_num if it's less than 0
3095         (gtk_notebook_append_*) (gtk_notebook_prepend_*)
3096         (gtk_notebook_insert_page): removed sanity checks
3097
3098         * gtk/testgtk.c (create_notebook): extended Notebook sample a bit.
3099
3100 Mon Nov 16 15:10:33 1998  Owen Taylor  <otaylor@redhat.com>
3101
3102         * gtk/gtktext.c: Optimizations for [advance/decrement]_mark_n.
3103         (gtk-mailund-980718-0, Thomas Mailund Jensen <mailund@daimi.aau.dk>)
3104
3105         * gtk/gtkfixed.c: Removed gtk_fixed_umap, which was 
3106         broken. (GtkWidget's default unmap handler should work fine).
3107         Pointed out by Patrice Fortier <Patrice.Fortier@aquarel.fr>
3108
3109 Mon Nov 16 00:59:26 PST 1998 Manish Singh <yosh@gimp.org>
3110
3111         * gtk/gtkmenubar.[ch]: added shadow_type setting and
3112         gtk_menu_bar_set_shadow_type function to allow shadow
3113         configurability for menubars
3114
3115         * gtk/gtkviewport.h: use GtkShadowType enum instead of generic
3116         guint
3117
3118 Mon Nov 16 00:17:53 1998  Tim Janik  <timj@gtk.org>
3119
3120         * gtk/gtktypeutils.c (gtk_type_new): relookup type node after
3121         class creation and parent class' object initializer.
3122
3123 1998-11-13  Federico Mena Quintero  <federico@nuclecu.unam.mx>
3124
3125         * gtk/gtkpaned.c (gtk_paned_realize): Destroy the cursor after we
3126         have assigned it to the window -- there is no point in keeping it around.
3127         (gtk_paned_unrealize): No need to destroy the cursor here.
3128
3129         * gtk/gtkpaned.h (struct _GtkPaned): Removed the cursor field, as
3130         it is not needed.
3131
3132 Fri Nov 13 11:22:38 1998  Owen Taylor  <otaylor@redhat.com>
3133
3134         * gdk/gdkpixmap.c: New function gdk_pixmap_foreign_new().
3135         (gtk-blizzard-981005-0. 
3136          Christopher Blizzard <blizzard@applied-theory.com)
3137
3138         * gdk/gdk.h gdk/gdkx.h: Moved gdk_window_foreign_new and
3139         gdk_pixmap_foreign_new to gdkx.h.
3140
3141 Fri Nov 13 16:06:48 1998  Owen Taylor  <otaylor@redhat.com>
3142
3143         * gtk/Makefile.am: Added rules to generate an empty
3144         GTK+ theme called "Default" upon installation.
3145         
3146         * gtk/gtkrc.c (gtk_rc_parse_style): Fix inheritance
3147         of fonts and fontsets. 
3148         (gtk-matsu-980924. Takashi Matsuda matsu@arch.comp.kyutech.ac.jp)
3149
3150         * gtk/gtkmain.c: Change test to detect glibc's
3151         utf8 based mb* functions to be more specific.
3152
3153         * gtk/gtkwindow.[ch] gtk/gtkfixed.c: Indentation 
3154         cleanups.
3155
3156 Fri Nov 13 16:43:36 1998  Lars Hamann  <lars@gtk.org>
3157
3158         * gtk/gtktogglebutton.c (gtk_toggle_button_realize): don't
3159         show event_window
3160         (gtk_toggle_button_map) (gtk_toggle_button_unmap): show/hide
3161         event_window if draw_indicator is set
3162         (gtk_toggle_button_set_mode):
3163
3164 Thu Nov 12 15:33:54 PST 1998 Manish Singh <yosh@gimp.org>
3165
3166         * gtk/gtkitemfactory.c: cast NULL to GtkItemFactoryCallback to
3167         ensure proper type (SunPro cc complains)
3168
3169         * gtk/gtklist.c: removed bogus '*' from "*GTK_CONTAINER_CLASS"
3170
3171         * gtk/gtktogglebutton.c: use our own draw method so we get proper
3172         redraws on active state
3173
3174 Thu Nov 12 00:26:13 1998  Lars Hamann  <lars@gtk.org>
3175
3176         * gtk/gtkstyle.c (gtk_default_draw_box_gap): use GtkPositionType
3177         defines.
3178
3179         * gtk/gtknotebook.c (gtk_notebook_draw_tab): fixed gap_side for
3180         GTP_POS_RIGHT
3181
3182 Wed Nov 11 19:54:58 1998  Lars Hamann  <lars@gtk.org>
3183
3184         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_class_init)
3185         (gtk_scrolled_window_set_arg) (gtk_scrolled_window_get_arg):
3186         added ARG_WINDOW_PLACEMENT
3187
3188         * gtk/gtkclist.c (size_allocate_columns): resize column if column
3189         button > column width and auto_resize is set
3190         (real_clear) (column_auto_resize) (gtk_clist_optimal_column_width):
3191         consider column button width of auto resized columns
3192         (gtk_clist_parent_set): removed 
3193
3194         * gtk/gtkctree.c (gtk_ctree_insert_node): call column_auto_resize.
3195         (auto_resize_columns): auto_resize all columns
3196         (real_tree_collapse) (gtk_ctree_remove_node): call auto_resize_columns
3197         (column_auto_resize): respect column button width of auto resized
3198         columns
3199
3200 1998-11-10  Martin Baulig  <baulig@merkur.uni-trier.de>
3201
3202         * gtk/gtkfeatures.h.in (GTK_HAVE_FEATURES_1_1_4): Define this so
3203         we can check for latest GTK features.
3204
3205 Mon Nov  9 00:39:20 1998  Lars Hamann  <lars@gtk.org>
3206
3207         * gtk/gtkenums.h : new enum GtkCornerType 
3208         * gtk/gtkscrolledwindow.h (struct _GtkScrolledWindow): added
3209         window_placement.
3210         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_set_placement): 
3211         new method to set window_placement.
3212         (gtk_scrolled_window_viewport_allocate)
3213         (gtk_scrolled_window_size_allocate): few changes due to
3214         window_placement.
3215         * gtk/testgtk.c (remove_selection): fixed while loop.
3216
3217 Sat Nov  7 21:55:00 PST 1998 Manish Singh <yosh@gimp.org>
3218
3219         * gtk/gtkclist.c: check if column[i].button is valid before calling
3220         gtk_widget_intersect on it in gtk_clist_draw
3221
3222         * gtk/gtkdnd.c: removed unused variable empty_bits
3223
3224         * gtk/gtkrc.c: we should use gslist_* functions with GSLists...
3225
3226         * gtk/gtktypeutils.[ch]: makes more send for gtk_type_is_a to return
3227         a boolean (thanks to Elrond for noticing this)
3228
3229 1998-11-07  Jay Cox  <jaycox@earthlink.net>
3230
3231         * gtk/gtkwindow.c: forward declaration for gtk_window_paint
3232         * gdk/gdkxid.c: declare xid_ht static
3233         * examples/*/Makefile: get the link ordering right.
3234
3235 Sat Nov  7 16:31:56 1998  Stefan Jeske  <stefan@gtk.org>
3236
3237         * gtk/gtkclist.c (gtk_clist_realize): Set background of
3238         title button window to GTK_STATE_NORMAL instead of
3239         GTK_STATE_SELECTED to avoid ugly flicker.
3240
3241 Fri Nov  6 23:29:40 1998  Lars Hamann  <lars@gtk.org>
3242
3243         * gtk/gtkclist.c (real_clear) (adjust_adjustments): resize clist
3244         if adjustments are NULL and list size has changed
3245         (gtk_clist_size_request): return real list requsition,
3246         if adjustments are NULL.
3247         (size_allocate_columns): use button->requisition.with, if column
3248         width is not set.
3249         (list_requisition_width): new function. return full list width.
3250         (gtk_clist_set_hadjustment) (gtk_clist_set_vadjustment): do not
3251         auto create adjustments.
3252         (gtk_clist_motion) (move_vertical) (move_horizontal):
3253         check adjustment != NULL.
3254
3255 Thu Nov  5 12:06:16 1998  Owen Taylor  <otaylor@redhat.com>
3256
3257         * gtk/gtkcheckbutton.c (gtk_check_button_draw_focus): Queue
3258         a clear/redraw, not just a redraw, so the focus
3259         gets undrawn properly.
3260
3261         * gtk/gtktogglebutton.c (gtk_toggle_button_unrealize): 
3262         Chain to gtk_widget_unrealize() instead of duplicating
3263         code.
3264
3265 Wed Nov  4 14:34:51 1998  Owen Taylor  <otaylor@redhat.com>
3266
3267         * gdk/gdk.c gdk/gdkprivate.h gdk/gdkwindow.c: Removed
3268         last vestiges of old DND.
3269
3270 Tue Nov  3 12:27:52 1998  Owen Taylor  <otaylor@redhat.com>
3271
3272         * gtk/gtkentry.c: Restored inner border to entries,
3273         erase cursors to background image.
3274
3275 Fri Oct 30 12:09:21 1998  Owen Taylor  <otaylor@redhat.com>
3276
3277         * gtk/gtkentry.c gtk/gtkstyle.[ch]: removed paint_entry() -
3278         it was identical to paint_flat_box().
3279
3280         * gtk/gtkstyle.c: Coding style fixups.
3281
3282         * gtk/gtkwindow.c (gtk_window_move_resize): removed useless
3283         test.
3284
3285         * gtk/gtkframe.c gtkstyle.[ch] gtknotebook.c: 
3286         Change 'side' for paint_[box/shadow]_gap and paint_extension
3287         to be GtkPositionType instead of a random int.
3288
3289         * gtk/gtkaspectframe.c (gtk_aspect_frame_paint): Use 
3290         "frame" as detail - an aspectframe should draw identical
3291         to a frame.
3292
3293 Tue Oct 27 09:58:11 1998  Owen Taylor  <otaylor@redhat.com>
3294
3295         * gdk/gdkwindow.c (gdk_window_merge_child_shapes): renamed
3296         from combine_child_shapes().
3297
3298         * gdk/gdkwindow.c: Merge propagate_shapes() and
3299         propagate_combine_shapes() to remove code duplication.
3300
3301 Thu Nov  5 14:31:57 PST 1998 Manish Singh <yosh@gimp.org>
3302
3303         * gdk/gdk.c: sometimes we get a KeyRelease before a KeyPress in
3304         gdk_event_translate, and the USE_XIM buffer isn't allocated yet.
3305         So allocate some mem if it's not already done.
3306
3307         * clist scrollbar merges from HEAD
3308
3309 Tue Nov  3 13:16:36 PST 1998 Manish Singh <yosh@gimp.org>
3310
3311         * gtk/Makefile.am: remove explict -ldl, gmodule takes care of that
3312
3313         * gtk/gtkdnd.c: start TARGET_MOTIF_SUCCESS from 0x40000000 instead
3314         of 0x80000000, so we stay within the bounds of a postive signed
3315         int (it broke some compilers)
3316
3317         * gtk/gtkmenushell.c
3318         * gtk/gtkoptionmenu.c: merges from HEAD to make option menus work
3319         when some of the menuitems are hidden
3320
3321         * gtk/gtkthemes.h: don't include dlfcn.h explictly, gmodule takes
3322         care of that
3323
3324         * gtk/gtkwidget.c: add a dummy continue after the line label
3325         next_rect, since some compilers don't like label: }
3326
3327 Sun Nov  1 20:05:55 PST 1998 Manish Singh <yosh@gimp.org>
3328
3329         * Okay, so we need the X11R6 keysyms so programs don't have to
3330         worry about them. They don't conflict anyway. Reverted the #ifdef
3331         changes to gtk/*.c
3332
3333         * gdk/Makefile.am: remove the BUILT_SOURCES rule, and make a
3334         special rule for them (X-derived-headers)
3335
3336 Sun Nov  1 05:30:32 PST 1998 Manish Singh <yosh@gimp.org>
3337
3338         * gdk/Makefile.am: changed the awk scripts to generate gdkcursors.h
3339         and gdkkeysyms.h into sed scripts, since the awk scripts weren't
3340         portable, and we really shouldn't be using awk anyway.
3341
3342         * makecursors.awk
3343         * makekeysyms.awk: bye bye
3344
3345         * gtk/gtkaccelgroup.c
3346         * gtk/gtkclist.c
3347         * gtk/gtknotebook.c
3348         * gtk/gtkwindow.c: don't use X11R6 keysyms if they aren't there
3349
3350 Sat Oct 31 15:22:14 PST 1998 Manish Singh <yosh@gimp.org>
3351
3352         * gdk/Makefile.am: do the same built sources trick for gdkcursors.h
3353         and gdkkeysyms.h. Remove those files from CVS.
3354
3355 Sat Oct 31 14:44:01 PST 1998 Manish Singh <yosh@gimp.org>
3356
3357         * gdk/gdk.c: move prototype of gdk_wm_protocols_filter outside
3358         of the USE_XIM #ifdef
3359
3360         * gtk/Makefile.am: cause the built sources to be rebuild when possible,
3361         even with --include-deps. Slightly different from timj's fix, to avoid
3362         circular dependency with gtkmarshal.c
3363
3364         * autogen.sh
3365         * gtk/gtkclist.[ch]
3366         * gtk/gtkctree.c
3367         * gtk/gtkfontsel.[ch]
3368         * gtk/gtklist.c
3369         * gtk/gtklistitem.c
3370         * gtk/gtkobject.[ch]
3371         * gtk/testgtk.c: merges from HEAD
3372
3373         * gtk/gtkmenubar.c
3374         * gtk/gtkradiomenuitem.c
3375         * gtk/gtktreeitem.c: cleanups
3376
3377 Wed Oct 28 23:32:19 PST 1998 Manish Singh <yosh@gimp.org>
3378
3379         * gdk/gdkrgb.c: Oops. s/BIGENDIAN/BIG_ENDIAN/
3380
3381 Wed Oct 28 19:04:49 PST 1998 Manish Singh <yosh@gimp.org>
3382
3383         * configure.in: AIX has libpthreads, to make sure you can have
3384         more than one thread. Also add -D_THREAD_SAFE, and reorder
3385         configure.in so CFLAGS doesn't get clobbered when we actually
3386         want to modify it
3387
3388         * gdk/gdkimage.c: initialize the bpp and byte_order fields properly
3389         in gdk_image_get
3390
3391         * gtk/testdnd.c: removed unused variable "buf"
3392
3393 Mon Oct 26 16:46:15 1998  Owen Taylor  <otaylor@redhat.com>
3394
3395         * gtk/gtkcontainer.c (gtk_container_unregister_toplevel): 
3396         remove_link(), not remove()
3397
3398 Thu Oct 22 02:27:30 PDT 1998 Manish Singh <yosh@gimp.org>
3399
3400         * gdk/gdkrgb.c: use glib endian stuff
3401
3402         * configure.in: don't need to check for endianness anymore
3403
3404         * gtk/gtkstyle.h: removed #pragma }, causing a silly warning
3405
3406 Wed Oct 21 17:44:27 1998  Owen Taylor  <otaylor@redhat.com>
3407
3408         * gtk/gtkwindow.c (gtk_window_read_rcfiles): Reset
3409         all toplevel widgets, not toplevel windows. (I.e.,
3410         plugs should be reset)
3411
3412         * gtk/gtkwindow.c (gtk_window_read_rcfiles): Yes, we
3413         _do_ need to notify the other toplevels - by the time
3414         the get the client messages, the RC file dates will
3415         have been updated.
3416
3417         * gtk/gtkcontainer.h: Added a function call to list
3418         every toplevel widget.
3419
3420         * gdk/gdk.c (gdk_event_send_client_message_to_all_recurse): 
3421         Don't send client messages to _every_ window on display!
3422         
3423 Tue Oct 20 16:21:04 1998  Owen Taylor  <otaylor@redhat.com>
3424
3425         * gtk/gtkdnd.c (gtk_drag_source_event_cb): Don't start drags 
3426         when dragging across widgets, only in drags
3427         starting in widget.
3428
3429 Tue Oct 20 15:59:49 1998  Owen Taylor  <otaylor@redhat.com>
3430
3431         * gtk/gtkdnd.c (gtk_drag_source_info_destroy): 
3432         Emit "drag_end" signal at end of drag.
3433
3434 Tue Oct 20 13:07:54 1998  Owen Taylor  <otaylor@redhat.com>
3435
3436         * gtk/gtkwindow.c (gtk_window_read_rcfiles): Look
3437         for "gtk-embedded" data currently set by 
3438         GtkSocket, and use that to forward client message
3439         on to embedded windows. Only reset our own toplevel -
3440         the others will handle themselves. (Now that
3441         GtkMenus live in GtkWindows)
3442
3443 Mon Oct 19 16:40:40 1998  Owen Taylor  <otaylor@redhat.com>
3444
3445         * gdk/gdkdnd.c (get_client_window_at_coords_recurse): Modify
3446         client window finding code so that it works with
3447         WM's other than fvwm.
3448  
3449 Sun Oct 18 22:48:27 1998  Owen Taylor  <otaylor@redhat.com>
3450
3451         * gtk/gtkdrawwindow.c (gtk_draw_window_get_type): Added
3452         the "GtkDrawWindow" class, which is a descendent
3453         of the Window class which leaves its background alone.
3454         Essentially, a toplevel drawing area, though it does
3455         allow adding a child.
3456
3457 Sat Oct 17 00:40:51 1998  Owen Taylor  <otaylor@redhat.com>
3458
3459         * gtk/gtkrc.c (gtk_rc_style_init): Duplicate bg_pixmap_name when
3460         merging RC styles. Report new share/themes path for
3461         themes directory. Deref theme engines when appropriate.
3462
3463         * gtk/gtkclist.c: Set all backgrounds in _style_set().
3464         Make sure that pixel for xor_gc is never 0.
3465
3466         * gtk/gtkctree.c: Choose colors for plus/minus more
3467         carefully, in a hopefully style-independent fashion.
3468         (Still needs a bit more work)
3469
3470         * gtk/gtkwidget.c: Don't send expose events to widgets
3471         which are about to be resized and redrawn. (Needs a
3472         bit more thought.)
3473
3474         * gtk/gtknotebook.c (gtk_notebook_draw_tab): Avoid
3475         drawing on tabs for newly allocated, un-sized
3476         pages - we'll get the size wrong.
3477
3478 Thu Oct  1 17:38:07 1998  Owen Taylor  <otaylor@redhat.com>
3479
3480         * gtk/gtkwidget.c (gtk_widget_redraw_queue_remove): Fixed
3481         up stupidities in last commit.
3482
3483 Thu Oct  1 14:25:43 1998  Owen Taylor  <otaylor@redhat.com>
3484
3485         * gtk/gtkwidget.c: When handling queued resizes, account
3486         for handleboxes, where the widget heirarchy is different
3487         than the window heirarchy by just queueing a resize on
3488         the entire handlebox if the detached child is changed.
3489
3490         - Remove widgets from the redraw queue when reparenting,
3491         even if not unrealizing. We queue a resize/redraw in
3492         any case.
3493
3494 Mon Sep 28 21:07:01 EDT 1998 The Rasterman <raster@redhat.com>
3495         * gtk/gtkstyle.c: added check to see if the widget has been shaped
3496         byt the app via gtk_widget_shape_combine_mask and if it has does
3497         not reset the shape on theme change.
3498         
3499 Tue Sep 15 11:30:03 1998  Owen Taylor  <otaylor@redhat.com>
3500
3501         * gtk/gtkfilesel.c: Keep a list of directories in which we never
3502         want to stat the entries (like /afs), and assume everything in
3503         those directories is a subdirectory.
3504
3505         - When following a path, try to open components even when
3506         we don't find them in their parent's directory to
3507         support automounters.
3508
3509 Fri Sep 11 15:36:33 1998  Owen Taylor  <otaylor@redhat.com>
3510
3511         * gdk/gdkinputgxi.h (gdk_input_gxi_grab_pointer): Hopefully
3512         now at least compiles again.
3513
3514         * gdk/gdk.c (gdk_event_translate): Don't pass events
3515         on destroyed widgets to the gdk_input layer.
3516
3517 Thu Sep  3 19:45:34 1998  Owen Taylor  <otaylor@redhat.com>
3518
3519         * gtk/gtkthemes.c: Use g_module instead of dlopen()
3520
3521 Thu Sep  3 19:30:11 1998  Owen Taylor  <otaylor@redhat.com>
3522
3523         * gtk/gtktooltips.c (gtk_tooltips_expose): Check
3524         if we've changed widgets since the expose event
3525         was queued.
3526
3527 Mon Aug 31 15:33:13 1998  Owen Taylor  <otaylor@redhat.com>
3528
3529         * gtk/gtkstyle.h (struct _GtkStyle): Reordered a bit
3530         to restore approximate bin compatibility with the
3531         non-themes branch. (This does break bin compat
3532         within the themes branch.)
3533
3534 Sun Aug 30 16:48:27 1998  Owen Taylor  <otaylor@gtk.org>
3535
3536         * gtk/gtklabel.c (gtk_label_set): Eliminate a 
3537         gdk_window_clear_area() that snuck in with the
3538         menu underlines merge.
3539
3540 Mon Aug 24 23:37:26 1998  Owen Taylor  <otaylor@redhat.com>
3541
3542         * gtk/gtktext.c: Fixed some remaining background drawing,
3543           merges from main branch, cleanups.
3544
3545 Mon Aug 24 10:55:51 1998  Owen Taylor  <otaylor@redhat.com>
3546
3547         * gtk/gtknotebook.c (gtk_notebook_draw_tab): Don't
3548           dereference NULL focus tab.
3549
3550         * gtk/gtkscale.c (gtk_scale_[un]map): Add map/unmap
3551           functions since we need to both show/hide and 
3552           queue a redraw. (There's some duplication of drawing here, 
3553           we probably should only be queuing a redraw on the
3554           "value" portion of the scale.)
3555
3556 Fri Aug 21 19:02:30 1998  Owen Taylor  <otaylor@redhat.com>
3557
3558         * gtk/gtkrange.[ch] gtk/gtkhscale.c gtk/gtkvscale.[ch]: Fit scales
3559           into the theme-drawing framework. We do this by making them,
3560           like check/radio-buttons, no-window widgets with subwindows. We
3561           then move the value by calling gtk_widget_queue_clear() and only
3562           redraw the value in our draw() / expose() handler.  A virtual
3563           function clear_background is added which queues a clear on the
3564           "background" portion of the widget.
3565
3566 Fri Aug 21 13:04:27 1998  Owen Taylor  <otaylor@redhat.com>
3567
3568         * gtk/gtktext.c (mark_bg_gc): Make background colors work
3569           again. (We can't always paint the background with a
3570           paint() function - only do that for selected text)
3571
3572 Mon Aug 17 20:31:01 1998  Owen Taylor  <otaylor@redhat.com>
3573
3574         * gtk/gtktearoffmenuitem.c gtk/gtkclist.[ch] gtk/gtkctree.[ch]
3575           gtk/gtklabel.c gtk/gtkmenu.c: Merges from main branch.
3576
3577         * Makefile.am (SRC_SUBDIRS): Removed themes from SRC_SUBDIRS.
3578           the themes can't be built as part of the same build since
3579           they depend on gdk_imlib.
3580
3581 Fri Aug 14 12:44:30 1998  Owen Taylor  <otaylor@redhat.com>
3582
3583         * gtk/gtkthemes.c (gtk_theme_engine_get): Removed sample engine code
3584           from gtkthemes.c.
3585                 
3586         * configure.in ltconfig.in ltmain.sh gdk/Makefile.am gtk/Makefile.am
3587           gtk/
3588
3589           - Upgrade to libtool-1.2b + patch to add shared library dependencies
3590             for Linux. (Needs to be extended to other platforms where they
3591             are safe)
3592
3593          - Check for -ldl so this branch should build on all platforms, though
3594            themes will work on all platforms they could work on.
3595
3596          - Use -version and -release simultaneously: sonames stay as they are
3597            in the current scheme, but -lgtk-1.1 changes to -lgtk.
3598
3599          - Added in extra -l flags to library LDFLAGS so we get shared library
3600            dependencies against X libs and -ldl. (But not libgtk against 
3601            libgdk or libglib yet, since dependencies against uninstalled
3602            libraries aren't portable)
3603
3604 Fri Aug 21 16:10:38 EDT 1998 The Rasterman <raster@redhat.com>
3605         * gtkrc.c - added api calls to find module and theme paths from gtk.
3606           nuked gtk_install_prefix global.
3607         
3608 Fri Aug 21 12:36:46 EDT 1998 The Rasterman <raster@redhat.com>
3609         * fixed gtk_install_prefix global.
3610           
3611 Thu Aug 20 19:27:49 EDT 1998 The Rasterman <raster@redhat.com>
3612         * added gtk_install_prefix global const variabel to find where gtk is
3613           installed.
3614           
3615 Thu Aug 20 18:27:29 EDT 1998 The Rasterman <raster@redhat.com>
3616         * added ~/.gtk/lib/themes/engines/ to the default searchpath for
3617           gtk theme engines
3618         
3619 Thu Aug 20 18:27:29 EDT 1998 The Rasterman <raster@redhat.com>
3620         * made gtkrc scanner append dir that gtkrc is read from to pixmap path.
3621
3622 Mon Aug 10 23:03:55 1998  The Rasterman <raster@redhat.com>
3623         * Fixed minor problem in gtkhandlebox.c with drawing, and some
3624           notebook stuff. Also pixmap theme is now "clean" again.
3625           
3626 Mon Aug 10 23:03:55 1998  Owen Taylor  <otaylor@redhat.com>
3627         * gtk/gtkwidget.c (gtk_widget_clip_rect): Fixed up 
3628           queued area resizing once more.
3629
3630 Mon Aug 10 23:09:30 EDT 1998
3631         * Added a few drawing fixes for notebook and other widgets. finished
3632           pixmap theme up to the level that can be supported so far. (need to
3633           add path discovery 9ie where is the rc fiel from - add to pixmap 
3634           path so we can get theimages from there too). then we can package 
3635           themes. After that need to add to theme seartch path stuff in users 
3636           home dir.
3637           
3638 Thu Aug  6 16:49:25 1998  Owen Taylor  <otaylor@redhat.com>
3639
3640         * gtk/gtktooltips.c (gtk_tooltips_expose): Draw into a
3641           drawing area, draw in an expose handler.
3642
3643         * gtk/gtknotebook.c (gtk_notebook_expose): Check for
3644           empty current page.
3645
3646 Wed Aug  5 16:13:15 1998  Owen Taylor  <otaylor@redhat.com>
3647
3648         * gtk/gtkcolorsel.c (gtk_color_selection_draw_wheel): Moved
3649           creation of GC's so that they will be set before
3650           they are used for map events (why are they used there?)
3651
3652         * gtk/gtkwidget.c: Fixed mistake that caused widgets to
3653           be queued in multiple times in the queue.
3654
3655 Wed Aug  5 14:23:52 1998  Owen Taylor  <otaylor@redhat.com>
3656
3657         * gtk/gtkstyle.c (gtk_default_draw_shadow): Don't set
3658           clip rects (or do anything) for shadow_none.
3659
3660 Wed Aug  5 13:14:57 1998  Owen Taylor  <otaylor@redhat.com>
3661
3662         * gtk/gtkbutton.c (gtk_button_paint): Restored paint function.
3663           Yes, it was needed. draw() and expose() are _not_
3664           identical.
3665
3666 Sat Aug  1 17:44:31 EDT 1998 EDT 1998 The Rasterman <raster@redhat.com>
3667         * Wheeeeeeeeeeeeeeee fixed radiobittons to work in gimp again.
3668
3669 Fri Jul 31 19:45:12 EDT 1998 The Rasterman <raster@redhat.com>
3670         * YES YES YES YES YES clist borders work again! YES! YES YES! gimme 
3671           more baby oooh yeah more more MORE YES YES.
3672
3673 Fri Jul 31 19:45:12 EDT 1998 The Rasterman <raster@redhat.com>
3674         * hopefully fixed problem wiht togglebuttons acting like
3675           radiobuttons in gtktogglebutton.c
3676
3677 Thu Jul 30 23:36:46 EDT 1998 The Rasterman <raster@redhat.com>
3678         * fixed another drawing buglet in the frame drawing code (actually
3679           in the clearing code but anyway in gtkstyle.c)
3680
3681 Thu Jul 30 19:23:48 EDT 1998 The Rasterman <raster@redhat.com>
3682         * Fixed warning from colorsel widget...
3683
3684 Thu Jul 30 19:10:42 EDT 1998 The Rasterman <raster@redhat.com>
3685         * Fixed defautl drawing code to no longer clobber the original style
3686           pixmap bgs as it did and added a helper funciton og gtkstyle.c to
3687           help with this.
3688
3689 Thu Jul 30 18:09:21 1998  Owen Taylor  <otaylor@redhat.com>
3690
3691         * gtk/gtkrc.c gtk/gtkstyle.c: More mm fixups
3692
3693         * gtk/gtktooltips.c: Pass a widget (the window) to the
3694           drawing function instead of the GtkTooltips.
3695
3696 Thu Jul 30 17:27:10 1998  Owen Taylor  <otaylor@redhat.com>
3697
3698         * gdk/gdkwindow.c: Abstract out checking for shape
3699           extension into a function.
3700
3701         * gtk/gtkwindow.c: Fix up gtk_window_expose()/draw().
3702           Remove extra callls to gtk_window_draw().
3703
3704 Thu Jul 30 11:18:43 1998  Owen Taylor  <otaylor@redhat.com>
3705
3706         * gtk/gtkstyle.c gtk/gtkrc.c: Memory management fixups.
3707
3708         * themes/th_main.c: Moved messages around so they are
3709           printed before destroying strings.
3710
3711 Wed Jul 29 16:56:07 1998  Owen Taylor  <otaylor@redhat.com>
3712
3713         * gdk/gdk.c: Fairly simple implementation of expose compression.
3714           (No GraphicsExpose compression yet, always compress
3715           with the equivalent of XtCompressMultiple - no compression
3716           of Expose events across non-Expose events)
3717         
3718         * gdk/gdk.h gdk/gdkrectangle.c: gdk_rectangle_union()
3719           Find rectangle bounding two rectangles.
3720
3721         * gtk/gtkstyle.c: Set clip rects for a few extra GC's
3722           in gdk_default_draw_shadow()
3723         
3724 Wed Jul 29 16:03:20 EDT 1998 The Rasterman <raster@redhat.com>
3725         * Fixed drawing functions to handle switching themes on the fly 
3726           gracefully and look decent.
3727           
3728 Tue Jul 28 22:52:10 EDT 1998 The Rasterman <raster@redhat.com>
3729         * Added all the theme drawing code to all widgets, fixed up minor
3730           nigglies in some widgets when it comes to themes, seem to be
3731           running into some funky behavior with clipping rects in GC's. Too
3732           many files to list here. (all files that now use gtk_paint_* are
3733           affected).
3734
3735 Tue Jul 28 22:49:16 1998  Owen Taylor  <otaylor@redhat.com>
3736
3737         * themes/th_main.c themes/th_draw.c gtk/testgtkrc: 
3738           Set up the demo theme so it is loaded from the RC file.
3739
3740         * themes/th_draw.c: Alleviate the hardcoded paths a wee
3741           bit. (use $HOME/themes/)
3742
3743         * gtk/gtkthemes.[ch] gtk/gtkmain.c: Load engines specified in 
3744           the RC file via dlopen()
3745
3746 Tue Jul 28 20:30:56 1998  Owen Taylor  <otaylor@redhat.com>
3747
3748         Internal handling of styles and RC styles pretty much
3749         completely reworked for Theme work.
3750
3751         * gtkthemes.[ch]: 
3752          - Added routines for virtualization of RcStyle and Style handling.
3753          - Temporary "sample" inline theme-engine. (Does nothing
3754            but print out a few messages.
3755         
3756         * gtkrc.[ch]
3757          - Made GtkRcStyle public, added flags to tell if particular
3758            colors have been set.
3759          - RC Styles are "transparent", and the final style for
3760            a widget is the composition of all matching styles
3761          - Added pointer to GtkThemeEngine, and gpointer engine_data
3762            to RC style and style.
3763          - Parse "engine" keyword, load the appropriate theme engine
3764            and call the engine's parser.
3765         
3766         *  gtkstyle.[ch]
3767          - Keep a GtkRcStyle * in styles created from Rc Styles.
3768          - Load up images from RC file at style attachment time.
3769          - Call ->engine->foo() at appropriate times.
3770          - Don't use a GCache. All incarnations for a style are
3771            just linked together in a list, depend on the RC style 
3772            code to find the existing copy.
3773
3774 Tue Jul 28 14:41:54 1998  Owen Taylor  <otaylor@redhat.com>
3775
3776         * gtk/gtkwidget.[ch]: Added the concept of queued redraws
3777           of partial areas. This can be done either relative
3778           to the existing windows (gtk_widget_queue_clear[_area]())
3779           or relative to the future allocation of the widget
3780           (gtk_widget_queue_draw[_area]). 
3781
3782           The initial implementation is pretty braindead, but
3783           can be improved.
3784
3785         * gtk/gtkwidget.[ch]: Removed calls to gdk_window_clear_area()
3786           in favor of gtk_widget_queue_clear().
3787         
3788         * gtk/gtklabel.[ch] gtk/gtkpixmap.[ch]: Removed needs_clear
3789           flags in favor of gtk_widget_queue_clear()
3790         
3791 Tue Aug  4 19:12:14 1998  Owen Taylor  <otaylor@redhat.com>
3792
3793         * gtk/gtkwidget.c (gtk_widget_idle_draw): Fixed up
3794           handling of partially clipped areas.
3795
3796 Thu Nov  5 18:52:35 1998  Lars Hamann  <lars@gtk.org>
3797
3798         * gtk/gtkclist.h (struct _GtkCListClass)
3799         * gtk/gtkclist.c (gtk_clist_class_init): removed scrollbar_spacing.
3800
3801 Thu Nov  5 16:00:32 1998  Lars Hamann  <lars@gtk.org>
3802
3803         * gtk/gtkclist.h (struct _GtkCList): removed vscrollbar, hscrollbar,
3804         vscrollbar_policy, hscrollbar_policy. added h/vadjustment.
3805
3806         * gtk/gtkclist.c (gtk_clist_class_init): added new args types
3807         "hadjustment" & "vadjustment"
3808          (gtk_clist_set_arg) (gtk_clist_get_arg): new object class
3809         set/get_arg functions
3810         (gtk_clist_construct): don't create/adjust scrollbars.
3811         (gtk_clist_set_hadjustment) (gtk_clist_set_vadjustment): new functions
3812         to set h/vadjustments
3813         (gtk_clist_get_vadjustment) (gtk_clist_get_hadjustment): new functions
3814         to query h/vadjustments
3815         (create_scrollbars): removed.
3816         (create_adjustments): replacement for create_scrollbars
3817         (gtk_clist_new): call gtk_clist_new_with_titles
3818         (gtk_clist_new_with_titles): don't warn on titles == NULL
3819         (move_horizontal): use CLAMP instead
3820         (gtk_clist_set_policy): deprecated method.
3821         use gtk_scrolled_window_set_policy instead.
3822         (vadjustment_value_changed): use clist->vadj.
3823         (adjust_scrollbars): renamed to adjust_adjustments
3824         (adjust_adjustments): former adjust_scrollbars
3825         (gtk_clist_destroy): unref adjustments
3826         (gtk_clist_size_allocate) (gtk_clist_map) (title_focus)
3827         (gtk_clist_unmap) (gtk_clist_size_request) (gtk_clist_focus)
3828         (gtk_clist_size_allocate) (gtk_clist_forall): don't use scrollbars
3829         (gtk_clist_thaw) (real_insert_row) (real_remove_row)
3830         (gtk_clist_set_row_height) (real_resize_column):
3831         call adjust_adjustments
3832         (gtk_clist_moveto): return if clist has no adjustments yet.
3833         (gtk_clist_parent_set): new GtkWidget::parent_set function.
3834         Autogenerate h/vadjustments if needed.  
3835         (move_horizontal) (move_vertical): some cleanups
3836
3837         * gtk/gtkviewport.c (gtk_viewport_set_arg) (gtk_viewport_new):
3838         call only gtk_viewport_set_h/vadjustment and let these functions
3839         do the work.
3840         (gtk_viewport_set_hadjustment) (gtk_viewport_set_vadjustment):
3841         generate a new adjustment if needed
3842
3843         * gtk/gtkscrolledwindow.h ((struct _GtkScrolledWindow):
3844         use a guint bitfield for h/vscrollbar_policy and h/vscrollbar_visible
3845         
3846         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed):
3847         queue_resize if visibility of scrollbars changes
3848         (gtk_scrolled_window_remove): only call container_remove with
3849         scrolled_window->viewport automatically if viewport was autogenerated
3850         (gtk_scrolled_window_add): add widget as scrolled_window->viewport.
3851         auto create a viewport only if widget does not take h/vadjustments.
3852         (gtk_scrolled_window_construct): don't generate a viewport
3853         automatically.
3854         (gtk_scrolled_window_forall): call callback with viewport in any case
3855         (gtk_scrolled_window_set_arg): call gtk_container_add in case of
3856         ARG_VIEWPORT
3857         (gtk_scrolled_window_size_allocate) (gtk_scrolled_window_size_request)
3858         (gtk_scrolled_window_map) (gtk_scrolled_window_unmap): check
3859         viewport != NULL
3860
3861         * gtk/testgtk.c 
3862         (create_ctree) (export_ctree) (create_clist): use a scrolled_window
3863         in conjunction with clists/ctrees
3864
3865         * gtk/gtkfilesel.c (gtk_file_selection_init): use a scrolled_window
3866         in conjunction with clists
3867
3868         * gtk/gtkfontsel.c (gtk_font_selection_init): use a scrolled_window
3869         in conjunction with clists
3870
3871 Wed Nov  4 21:52:57 1998  Lars Hamann  <lars@gtk.org>
3872
3873         * gtk/gtkctree.c (gtk_ctree_unlink): fix focus_row adjustment
3874         (gtk_ctree_remove_node): select focus_row if needed
3875         (cell_size_request): only get pixmap size if pixmap != NULL
3876
3877 Wed Nov  4 04:30:37 1998  Tim Janik  <timj@gtk.org>
3878
3879         * gtk/gtkwidget.c: added a bunch of checks for widget != NULL and
3880         GTK_IS_WIDGET (widget):
3881
3882 Wed Nov  4 02:02:07 1998  Lars Hamann  <lars@gtk.org>
3883
3884         * gtk/gtkclist.c (real_remove_row) (sync_selection): set correct
3885         focus_row after a remove_row call.
3886
3887 Sun Nov  1 21:00:06 GMT 1998  Austin Donnelly  <austin@greenend.org.uk>
3888
3889         * gtk/gtkoptionmenu.c
3890         * gtk/gtkmenushell.c: make option menus work when some of the
3891         menuitems are hidden - previously, option menu would popup too
3892         high.
3893
3894 1998-10-31  Raja R Harinath  <harinath@cs.umn.edu>
3895
3896         * gtk/gtkfeatures.h.in: Remove `#pragma }'.
3897
3898         * gdk/gdki18n.h: Update to use new `glib' widechar defines.
3899
3900         * configure.in (CFLAGS): Don't use test -z "echo .. | grep".  Use
3901         case instead.
3902         (wchar.h, wctype.h, iswalnum): Duplicate widechar tests from `glib'.
3903         (GDK_WLIBS): New variable.  Lists extra libraries needed to use
3904         widechar functions.
3905         * gtk-config.in (--libs): List $GDK_WLIBS, too.
3906
3907 Sat Oct 31 03:11:57 CST 1998 Shawn T. Amundson <amundson@gtk.org>
3908
3909         * Released GTK+ 1.1.3
3910         
3911         * INSTALL:
3912         * NEWS:
3913         * README:
3914         * gtk+.spec:
3915         * docs/gtk-config.1: updated for v1.1.3
3916
3917         * Makefile.am
3918         * sanity_check
3919         * docs/Makefile.am: Includes new 'make release' as well as
3920           'make sanity'.  Also handles html and text creation from html,
3921           and puts them into the distribution
3922
3923         * docs/Makefile.sgml: removed, similar functionality is now in 
3924           the Makefile.am file
3925
3926         * docs/.cvsignore: ignore html and text directories
3927         * docs/glib.texi: removed (now in glib dist)
3928
3929 Fri Oct 30 20:02:36 1998  Lars Hamann  <lars@gtk.org>
3930
3931         * gtk/gtklist.c (gtk_list_remove_items_internal): 
3932         free undo_un/selection, unselect list_item before disconnect
3933         signal functions
3934         (gtk_list_destroy): removed. gtk_list_shutdown clears the list
3935         already
3936         (gtk_list_signal_item_select) (gtk_list_signal_item_deselect)
3937         (gtk_list_signal_item_toggle)   (gtk_list_signal_scroll_horizontal)
3938         (gtk_list_signal_toggle_focus_row) (gtk_list_signal_select_all)
3939         (gtk_list_signal_unselect_all) (gtk_list_signal_undo_selection)
3940         (gtk_list_signal_start_selection) (gtk_list_signal_end_selection)
3941         (gtk_list_signal_toggle_add_mode) (gtk_list_signal_scroll_vertical)
3942         (gtk_list_signal_extend_selection) (gtk_list_signal_focus_lost):
3943         new functions. These functions are signal connected to inserted
3944         list_items, to handle key bindings and GtkItem::de/select/toggle
3945         signals.
3946
3947         * gtk/gtklistitem.c (gtk_list_item_class_init): added missing
3948         gtk_object_class_add_signals call.
3949         (gtk_list_item_toggle_focus_row) (gtk_list_item_select_all)
3950         (gtk_list_item_unselect_all) (gtk_list_item_undo_selection)
3951         (gtk_list_item_start_selection) (gtk_list_item_end_selection)
3952         (gtk_list_item_extend_selection) (gtk_list_item_scroll_horizontal)
3953         (gtk_list_item_scroll_vertical) (gtk_list_item_toggle_add_mode):
3954         removed. These functions are handled via connected
3955         gtk_list_signal_* functions now
3956
3957 Fri Oct 30 05:24:43 1998  Tim Janik  <timj@gtk.org>
3958
3959         * gtk/Makefile.am: cause the built sources to be rebuild when possible,
3960         even with --include-deps:
3961         $(libgtk_la_SOURCES): $(BUILT_SOURCES)
3962
3963 Fri Oct 30 01:56:08 1998  Tim Janik  <timj@gtk.org>
3964
3965         * gtk/gtkobject.c (gtk_object_remove_no_notify): renamed from
3966         gtk_object_data_set_destroy to fit the gtkobject.h API.
3967
3968         * applied patch from Damon Chaplin <DAChaplin@email.msn.com>:
3969         * gtk/gtkfontsel.h:
3970         * gtk/gtkfontsel.c:
3971         Added support for an extra 'base' filter which an application can
3972         set to restrict the fonts available to the user (e.g. a terminal
3973         program only wants the user to be able to select fixed-width fonts).
3974         The type of font (bitmap/scalable/scaled bitmap) is now
3975         also a part of the filter, so that an application can
3976         request that only scalable fonts are shown.
3977         There are new functions to set the base & user filters.
3978         I've also stopped the up/down key press signals getting
3979         to the clists since the font selection widget handles
3980         them itself. It acted a bit strangely before.
3981
3982 Sun Oct 25 20:27:02 1998  Tim Janik  <timj@gtk.org>
3983
3984         * gtk/gtkmain.c (gtk_init): support an environment variable
3985         GTK_MODULES= which takes a colon sperated list of module names
3986         automatically loaded at gtk_init() startup.
3987
3988 Sun Oct 25 08:04:33 1998  Tim Janik  <timj@gtk.org>
3989
3990         * gtk/gtkwidget.c: added more g_return_if_fail() statements.
3991
3992 Thu Oct 22 22:40:35 1998  Lars Hamann  <lars@gtk.org>
3993
3994         * gtk/gtkctree.c (gtk_ctree_destroy): removed. gtk_clist_destroy
3995         is sufficient
3996
3997 Thu Oct 22 16:22:55 1998  Lars Hamann  <lars@gtk.org>
3998
3999         * gtk/gtkclist.c (COLUMN_FROM_XPIXEL): samll fix for invisible
4000         columns
4001
4002 Thu Oct 22 02:29:53 1998  Tim Janik  <timj@gtk.org>
4003
4004         * gtk/gtkfilesel.h: GtkType and macro fixups
4005         * gtk/gtkfilesel.c (gtk_file_selection_complete): set a pattern
4006         for the file selection widget to try a completion on (set the
4007         initial filter).
4008
4009 Wed Oct 14 14:34:04 1998  Tim Janik  <timj@gtk.org>
4010
4011         * gtk/gtkmain.c: implement idle functions via GHook. this gives a
4012         slight speed improvement and lessens code duplication.
4013
4014 Tue Oct 20 14:53:28 1998  Owen Taylor  <otaylor@redhat.com>
4015
4016         * gtk/gtkdnd.c: Always send "drag_leave" to dests
4017         without GTK_DEST_DEFAULT_MOTION. 
4018
4019 Tue Oct 20 11:55:24 1998  Owen Taylor  <otaylor@redhat.com>
4020
4021         * gdk/gdk.c (gdk_event_translate): Handle DestroyNotify
4022         on destroyed windows so we clear the XID table properly.
4023         Finish up restructure of return value handling that
4024         was half-done before.
4025
4026 Tue Oct 20 12:57:10 1998  Owen Taylor  <otaylor@redhat.com>
4027
4028         * gdk/gdk.c (gdk_send_clientmessage_to_all): Hunt
4029         the window tree more comprehensively, so that we find
4030         client windows hidden under non-toplevels.
4031
4032 Tue Oct 20 12:43:04 1998  Owen Taylor  <otaylor@redhat.com>
4033
4034         * gtk/gtkselection.c (gtk_selection_data_set): 
4035         Maintain the null-termintation guarantee, even when 
4036         data = NULL, length = 0. (Warn on data = NULL, 
4037         length > 0)
4038
4039 Mon Oct 19 16:41:44 1998  Owen Taylor  <otaylor@redhat.com>
4040
4041         * gtk/gtkwidget.h (struct _GtkWidgetClass): Add in coordinates
4042         into function prototype for drag_data_received. 
4043
4044 Tue, 20 Oct 1998 11:33:10 +0200 Paolo Molaro <lupus@debian.org>
4045
4046         * gtk/gtkdnd.h,gtk/gtkdnd.c: delete is a reserved word in c++.
4047
4048 Mon Oct 19 23:44:41 1998  Lars Hamann  <lars@gtk.org>
4049
4050         * gtk/gtkclist.c: rearranged some functions
4051         (gtk_clist_set_column_auto_resize): new function. toggle auto_resize
4052         flag of column
4053         (gtk_clist_set_column_resizeable): if resizeable disable auto_resize 
4054         (gtk_clist_set_border): deprecated function, use
4055         gtk_clist_set_shadow_type instead.
4056         (gtk_clist_set_shadow_type): replacement for gtk_clist_set_border
4057         (adjust_scrollbars): some cleanups
4058         (select_row) (unselect_row): removed. replaced by equivalent
4059         gtk_signal_emit calls
4060         (add_style_data): removed, use gtk_clist_style_set instead
4061         (gtk_clist_style_set): fill in size data, after style was set. 
4062         (set_cell_contents) (gtk_clist_set_shift) (gtk_clist_set_row_style)
4063         (gtk_clist_set_cell_style): auto_resize columns if needed
4064         (column_auto_resize): resize column if needed for auto_resize 
4065         (real_clear): disable auto_resize while list destroy
4066         (resize_column): removed
4067
4068         * gtk/gtkctree.c : (gtk_ctree_remove_node)
4069         (gtk_ctree_set_line_style) (gtk_ctree_set_expander_style)
4070         (gtk_ctree_node_set_row_style) (gtk_ctree_node_set_cell_style)
4071         (set_cell_contents) (gtk_ctree_node_set_shift) (gtk_ctree_set_spacing)
4072         (real_tree_move) (gtk_ctree_set_indent) (gtk_ctree_insert_node)
4073         (real_tree_collapse) (real_tree_expand) (column_auto_resize):
4074         auto_resize columns if needed
4075         (gtk_ctree_collapse_recursive) (gtk_ctree_collapse_to_depth)
4076         (real_clear): disable auto_resize while processing the tree
4077
4078         * gtk/testgtk.c (create_clist) (create_ctree): set auto_resize
4079         for one column
4080
4081 Mon Oct 19 08:31:36 1998  Owen Taylor  <otaylor@redhat.com>
4082
4083         * gtk/gtkdnd.c (gtk_drag_selection_received): Fixed
4084         typo - look for right atom on transfer failures.
4085
4086 Sun Oct 18 20:52:22 1998  Owen Taylor  <otaylor@gtk.org>
4087
4088         * gtk/gtkwidget.c gtkmarshal.list: Change signal 
4089         for drag_data_get to match the use that was being
4090         made of it everywhere else...
4091
4092 Sun Oct 18 18:16:39 1998  Owen Taylor  <otaylor@gtk.org>
4093
4094         * gdk/gdk.c gdkprivate.h: Added a modular client-message-filter
4095         mechanism, that is used for the DND messages.
4096
4097           Removed all the old DND code.
4098
4099         * gdk/gdkcolormap.c gdk/gdkcolormap.h: Add a function to
4100         get the visual of a given colormap.
4101         
4102         * gtk/gtkcolorsel.c: Conversion to new DND, drag 
4103         a color-swatch.
4104
4105         * gdk/gdk.h gdk/gdkdnd.c: The low-level
4106         X oriented portions of drag and drop protocols.
4107         Sending and receiving client messages, and navigating
4108         window trees.
4109
4110         * gdk/gdkimage.c: added a gdk_flush() when destroying
4111         SHM images to hopefully make it more likely that
4112         X will gracefully handle the segment being destroyed.
4113
4114         * gdk/gdkprivate.h gtk/gtkdebug.h: Add new 
4115         DND debugging flags.
4116
4117         * gtk/gtkeditable.[ch]: Updates for the selection handling
4118         changes.
4119         
4120         * gtk/gtkselection.[ch]: Added GtkTargetList, a 
4121         refcounted data structure for keeping track of lists
4122         of GdkAtom + information. Removed selection_handler_add
4123         in favor of a "drag_data_get" signal.
4124
4125         * gtk/gtkdnd.[ch] gtk/gtk.h: New files - highlevel (event loop
4126         dependent) parts of the DND protocols, display of drag icons,
4127         drag-under highlighting, and the "default handlers".
4128
4129         * gtk/gtkinvisible.[ch]: New widget - InputOnly offscreen
4130         windows that are used for reliable pointer grabs and
4131         selection handling in the DND code.
4132
4133         * gtk/testdnd.c: New test program for new DND. (Old
4134         DND tests in testgtk still need to be converted.)
4135
4136         * gtk/testselection.c: Use the new selection API.
4137         
4138         * docs/dnd_internals: Start at describing how
4139         all the new code works inside.
4140
4141         * docs/Changes-1.2.txt: New file describing source-incompatible
4142         changes in GTK+-1.2.
4143
4144 Sat Oct 17 22:50:34 1998  Owen Taylor  <otaylor@gtk.org>
4145
4146         * gdk/gdkwindow.c (gdk_window_remove_filter): Free
4147         the right list node.
4148
4149         * gdk/gdkwindow.c (gdk_window_init): Add gdk_root_parent
4150         to the XID table so we can receive events on it.
4151
4152 Wed Oct 14 12:57:40 1998  Owen Taylor  <otaylor@redhat.com>
4153
4154         * gdk/gdk.c gdk/gdk.h (gdk_event_get_time): New function
4155         to get the timestamp from a generic event.
4156
4157 Fri Oct  9 13:16:04 1998  Owen Taylor  <otaylor@redhat.com>
4158
4159         * gtk/gtkwidget.c (gtk_widget_add_events): Added function
4160         that safely adds additional events to a widget's event 
4161         mask, even if the widget has previously been realized.
4162         (We can do this, but not remove events from the event
4163          mask).
4164
4165 Fri Oct  2 17:35:35 1998  Owen Taylor  <otaylor@redhat.com>
4166
4167         * gdk/gdkproperty.c (gdk_property_get): Allow type == 0,
4168         for AnyPropertyType.
4169
4170 Fri Oct  2 10:32:21 1998  Owen Taylor  <otaylor@redhat.com>
4171
4172         * gdk/gdkproperty.c (gdk_atom_intern): Add client-local
4173         hashing.
4174
4175 Thu Sep 24 20:33:54 1998  Owen Taylor  <otaylor@redhat.com>
4176
4177         * gdk/gdk.c (gdk_event_send_clientmessage_toall): serial
4178         isn't a timestamp.
4179
4180 Thu Sep 17 14:23:03 1998  Owen Taylor  <otaylor@redhat.com>
4181
4182         * gdk/gdk.c (gdk_event_translate): Removed printing
4183         of unknown window lookup warnings. (Made it
4184         a GDK_NOTE) - they happen in many circumstances.
4185
4186 Tue Sep  8 12:38:43 1998  Owen Taylor  <otaylor@redhat.com>
4187
4188         * Call XFilterEvent() on events we get for unknown
4189         windows, since it may be the window Xlib uses to
4190         communicate with the IM. 
4191         (From Yung-Ching Hsiao <yhsiao@cae.wisc.edu>)
4192
4193 Tue Sep  1 10:53:52 1998  Owen Taylor  <otaylor@redhat.com>
4194
4195         * gtk/gtkprogress.c (gtk_progress_finalize): Unref
4196         the adjustment.
4197
4198 Thu Aug 27 12:03:14 1998  Owen Taylor  <otaylor@redhat.com>
4199
4200         * gtk/gtksignal.c (gtk_signal_newv): Improve warning
4201         message for return_value + GTK_RUN_FIRST.
4202
4203 1998-10-18  Martin Baulig  <martin@home-of-linux.org>
4204
4205         * gtk/gtktext.c (gtk_text_set_line_wrap): new function to toggle
4206         line wrapping like gtk_text_set_word_wrap () toggles word wrapping.
4207
4208 Fri Oct 16 15:59:02 1998  Lars Hamann  <lars@gtk.org>
4209
4210         * gtk/testgtk.c (insert_row_clist) (create_clist): change a few cell
4211         styles of inserted row
4212         (change_style): change style of focus_row
4213
4214         * gtk/gtkclist.c (gtk_clist_get_row_style) (gtk_clist_set_row_style)
4215         (gtk_clist_get_cell_style) (gtk_clist_set_cell_style): new functions
4216         to set/get row/cell styles.
4217         (gtk_clist_realize): attach row and cell style, allocate row colors.
4218         (gtk_clist_unrealize): detach row and cell styles.
4219         (get_cell_style): new function. get correct cell style.
4220         (draw_cell_pixmap): new function. 
4221         (draw_row): draw cells with row or cell styles.
4222         (row_new): set cell and row styles to NULL.
4223         (row_delete): detach & unref cell and row styles.
4224
4225         * gtk/gtkctree.c (ctree_detach_styles) (ctree_attach_styles): 
4226         new functions to attach/detach styles and allocate colors.
4227         (gtk_ctree_realize) (gtk_ctree_unrealize): attach/detach cell and row
4228         styles of invisible nodes.
4229         (draw_cell_pixmap): new function. 
4230         (get_cell_style):  new function. get correct cell style.
4231         (gtk_ctree_draw_expander): new function. draw tree expander.
4232         (gtk_ctree_draw_lines): new function.draw tree lines.
4233         (draw_row): draw cells with row or cell styles.
4234         (row_new): set cell and row styles to NULL.
4235         (row_delete): detach & unref cell and row styles.
4236         (gtk_ctree_node_get_row_style) (gtk_ctree_node_set_row_style) 
4237         (gtk_ctree_node_get_cell_style) (gtk_ctree_node_set_cell_style): 
4238         Analogons of GtkCList functions 
4239         (gtk_ctree_set_spacing): new function. set spacing between
4240         tree expander and cell contents
4241         (gtk_ctree_set_expander_style): new function. set expander style
4242         of ctree.
4243         (ctree_is_hot_spot): few changes due to draw_row modifications.
4244
4245 Wed 14 Oct 1998 10:17:13 +0200 Paolo Molaro <lupus@debian.org>
4246
4247         * gtk/gtkcombo.c: try completion on MOD1-TAB.
4248         Handle case when the combo->list is empty.
4249
4250 Mon Oct 12 07:51:34 1998  Tim Janik  <timj@gtk.org>
4251
4252         * gtk/gtksignal.c (gtk_signal_handlers_destroy): only unref those
4253         handlers that have not yet been disconnected (finally managed to
4254         trigger the gtk_signal_handler_unref() paranoid warning).
4255
4256 Sat Oct 10 03:37:50 1998  Tim Janik  <timj@gtk.org>
4257
4258         * gtk/gtkwidget.c (gtk_widget_get_arg): fixed default value for x, y,
4259         width and height which is -1 and not -2.
4260
4261 Sat Oct 10 00:50:53 PDT 1998 Manish Singh <yosh@gimp.org>
4262
4263         * HACKING
4264         * autogen.sh: we need libtool 1.2b now
4265
4266 Sat Oct 10 03:37:50 1998  Tim Janik  <timj@gtk.org>
4267
4268         * gtk/gtktable.c (gtk_table_set_child_arg): take the left, right, top
4269         and bottom attach arguments as mandatory and readjust the table size
4270         and opposing edge accordingly if required. this way the order in which
4271         the arguments are set doesn't matter.
4272
4273 Thu Oct  8 15:53:59 1998  Owen Taylor  <otaylor@redhat.com>
4274
4275         * gtk/gtktypeutils.c (gtk_type_class_init): Fixed warning
4276         message to print out parent class name correctly.
4277
4278 Thu Oct  8 07:07:10 1998  Tim Janik  <timj@gtk.org>
4279
4280         * gtk/gtkobject.h: 
4281         * gtk/gtkobject.c:
4282         removed functions gtk_object_set_data_destroy and
4283         gtk_object_set_data_destroy_by_id.
4284         added functions gtk_object_remove_no_notify and
4285         gtk_object_remove_no_notify_by_id which will remove a certain data
4286         portion without invokation of its destroy notifier, this should only
4287         be used in very controled circumstances.
4288
4289 Wed Oct  7 23:59:37 1998  Lars Hamann  <lars@gtk.org>
4290
4291         * gtk/gtkclist.c (gtk_clist_set_column_resizeable): added
4292         size_allocate_title_buttons call
4293         (gtk_clist_realize): changed initial column.window position
4294
4295 Wed Oct  7 20:27:28 1998  Lars Hamann  <lars@gtk.org>
4296
4297         * gtk/gtkctree.h (struct _GtkCTree): removed xor_gc, use clists
4298         xor_gc instead
4299         * gtk/gtkctree.c (create_xor_gc): removed
4300         (gtk_ctree_button_press): set correct line_attributes for
4301         clist->xor_gc on drag start
4302         (gtk_ctree_button_release): reset clist->xor_gc
4303
4304 Wed Oct  7 05:15:36 1998  Tim Janik  <timj@gtk.org>
4305
4306         * gtk/gtk*.h:
4307         * gdk/gdk.h: removed all occourances of #pragma } and #pragma {
4308         which were in place to fixup emacs' cc-mode indentation.
4309         putting (c-set-offset 'inextern-lang 0) into ~/.emacs is the
4310         proper way to achive this and doesn't produce problems for
4311         stupid pragma-related compiler bugs. ;)
4312
4313 Wed Oct  7 00:59:46 1998  Lars Hamann  <lars@gtk.org>
4314
4315         * gtk/gtkclist.h: new signal GtkCList::resize_column.
4316         * gtk/gtkclist.c (draw_row): don't draw invisible columns
4317         (size_allocate_title_buttons) (size_allocate_columns):
4318         skip invisible columns
4319         (new_column_width): take min/max_width into account 
4320         (gtk_clist_button_release) (gtk_clist_motion):
4321         changes due to changed new_column_width function
4322         (LIST_WIDTH): changed define to inline function.
4323         (real_resize_column): class function for resize_column signal
4324         (gtk_clist_motion): fixed autoscrolling for column resizes
4325         (gtk_clist_set_column_visibility): don't hide last visible column,
4326         changed visible arg to gboolean
4327         (gtk_clist_set_column_min_width)(gtk_clist_set_column_max_width):
4328         new functions : set min/max width of a column
4329         (gtk_clist_set_column_resizeable): new function : enable/disable
4330         column resize operations by mouse
4331
4332         * gtk/gtkctree.c (draw_row): don't draw invisible columns
4333         (ctree_is_hot_spot): return FALSE if tree_column is invisible
4334         (draw_xor_line)  (draw_xor_rect): draw full rectangle/line if
4335         tree_column is invisible
4336         (gtk_ctree_find_all_by_row_data)
4337         (gtk_ctree_find_all_by_row_data_custom):  new function from
4338         Ronan Bourlier <ronan@radioss.com>. Returns a GList of all
4339         GtkCTreeNodes with row->data == data.
4340
4341 Tue Oct  6 14:05:00 1998  Tim Janik  <timj@gtk.org>
4342
4343         * gtk/testgtk.c (cb_tree_destroy_event): use g_free to free g_malloced
4344         memory (Martin Pool <mbp@wistful.humbug.org.au>).
4345
4346 Mon Oct  5 15:26:30 1998  Raph Levien  <raph@gimp.org>
4347
4348         * gdk/gdkrgb.c (gdk_rgb_convert_0888_br): Fixed a few long's that
4349         should have been guint32. Thanks to Tristan Colgate for finding it.
4350
4351 Sun Oct  4 22:47:22 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
4352
4353         * gtk/gtkcalendar.h:
4354           gtk/gtkcalendar.c: More changes:
4355           - The day with focus is now seperated from the day selected
4356           - The day with focus has the xor's line around it
4357           - The selected day is now standard selected style
4358           - The week names and week numbers are now also drawn
4359             with selected style
4360           - Space now selects the day which has focus
4361
4362 Sun Oct  4 17:55:52 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
4363
4364         * gtk/gtkcalendar.h:
4365           gtk/gtkcalendar.c: Some significant changes, including:
4366           - No longer draw focus around entire widget, only around
4367             the day which has focus
4368           - Draw relief around entire widget like originally planned
4369           - Show header and day names by default 
4370           - Move data private to the widget out of GtkCalendar struct
4371             and only point to it with a gpointer
4372           - Remove some old unused variables from GtkCalendar struct
4373
4374 Sun Oct  4 17:45:43 BST 1998  Tony Gale  <gale@gtk.org>
4375
4376         * docs/gtk_tut.sgml: update I've had sat around:
4377           - Grammar patch from James R. Van Zandt <jrv@vanzandt.mv.com>
4378           - Range Widget update from David Huggins-Daines <bn711@freenet.carleton.ca>
4379           - New Toolbar section from Jacek Wojdel <J.C.Wojdel@cs.tudelft.nl>
4380
4381 1998-10-01  Martin Baulig  <martin@home-of-linux.org>
4382
4383         * gtk/gtkclist.h (GtkCListColumn): Added `visible'.
4384         
4385         * gtk/gtkclist.c (gtk_clist_set_column_visibility): New function.
4386         Makes it possible to individually show and hide columns.
4387         (size_allocate_columns): Adapted to keep track of hidden columns.
4388         (size_allocate_title_buttons): Likewise.
4389
4390 Sat Oct  3 17:54:48 1998  Tim Janik  <timj@gtk.org>
4391
4392         * gtk/gtkargcollector.c (GTK_ARG_COLLECT_VALUE): for unknown foreign
4393         fundamental types, collect an argument of the type returned from
4394         gtk_type_get_varargs_type(). removed the first macro argument which
4395         was just the same as the fundamental type of the *arg passed to
4396         the macro.
4397         * gtk/gtkarg.c (gtk_args_collect): 
4398         * gtk/gtksignal.c (gtk_signal_collect_params): changed callers.
4399
4400         * gtk/gtktypeutils.h: 
4401         * gtk/gtktypeutils.c: new functions gtk_type_set_varargs_type() and
4402         gtk_type_get_varargs_type() to set and query the varargs collect
4403         type used for a fundamental type, registered outside of Gtk.
4404
4405         * gtk/gtkmisc.c (gtk_misc_class_init): changed object arguments
4406         GtkMisc::xalign and GtkMisc::yalign from GTK_TYPE_DOUBLE to
4407         GTK_TYPE_FLOAT.
4408
4409         * gtk/gtkframe.c (gtk_frame_class_init): changed object arguments
4410         GtkFrame::label_xalign and GtkFrame::label_yalign from GTK_TYPE_DOUBLE
4411         to GTK_TYPE_FLOAT.
4412
4413 Sat Oct  3 01:25:24 1998  Lars Hamann  <lars@gtk.org>
4414
4415         * gtk/gtkctree.c (gtk_ctree_insert_gnode) (real_tree_collapse)
4416         (gtk_ctree_link) (gtk_ctree_unlink) (real_tree_expand): 
4417         fixes for assignment errors with GTK_CTREE_NODE_NEXT/PREV
4418
4419         (real_tree_expand) (real_tree_collapse):
4420         don't expand/collapse a leaf
4421
4422 Fri Oct  2 16:10:36 1998  Tim Janik  <timj@gtk.org>
4423
4424         * gtk/gtktypeutils.c (gtk_type_enum_find_value): make sure we don't
4425         segfault when looking up a non-existant value name (reported by
4426         Pablo <pcj+gtk@primenet.com>).
4427
4428 Thu Oct  1 10:40:20 1998  Tim Janik  <timj@gtk.org>
4429
4430         * gtk/gtkclist.h (gtk_clist_prepend):
4431         * gtk/gtkclist.c (gtk_clist_prepend): new function.
4432         (gtk_clist_insert): added g_return_val_if_fail()
4433         statements. accept a row parameter < 0 or > clist->rows to indicate
4434         append mode.
4435         (real_clear): first clean up all internal pointers and lists (e.g.
4436         clist->row_list or clist->rows), then delete the distinct rows. this
4437         is required because of destroy notifiers, we need to have all internal
4438         structures updated and be reentrant.
4439
4440         * gtk/gtkcalendar.h: 
4441         * gtk/gtkcalendar.c: removed the `gtk_calendar_' prefix from the
4442         GtkCalendarClass signal methods.
4443         GtkType and macro fixups, put `void' into () prototypes, avoid C++
4444         style comments, indentation fixes, fixed some g_return_if_fail()
4445         statements.
4446         (gtk_calendar_paint_header):
4447         (gtk_calendar_paint_day_names): 
4448         (gtk_calendar_paint_week_numbers): 
4449         (gtk_calendar_paint_main): made these static functions.
4450         (gtk_calendar_select_month):
4451         (gtk_calendar_select_day):
4452         (gtk_calendar_mark_day):
4453         (gtk_calendar_unmark_day):
4454         (gtk_calendar_get_date): signedness corrections, use guints
4455         rather than gints.
4456         (gtk_calendar_size_request): removed unused variables.
4457
4458 Wed Sep 30 13:11:09 1998  Tim Janik  <timj@gtk.org>
4459
4460         * gtk/gtkitemfactory.c (gtk_item_factory_add_item): list all
4461         widgets in the ->widgets_by_action list that have a callback
4462         defined (not only those with a callback_action!=0).
4463
4464 Sun Sep 27 22:02:48 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
4465
4466         * gtk/gtkcalendar.h:
4467           gtk/gtkcalendar.c:
4468           examples/calendar/gcalendar.c: remove HAVE_FEATURES stuff
4469
4470 Sun Sep 27 02:18:06 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
4471
4472         * gtk/gtkcalendar.h:
4473           gtk/gtkcalendar.c:
4474           examples/calendar: Added gtkcalendar widget and demo
4475
4476 Sat Sep 26 06:15:34 1998  Tim Janik  <timj@gtk.org>
4477
4478         * gtk/gtkclist.c (gtk_clist_sort): 
4479         (gtk_clist_clear): 
4480         (gtk_clist_unselect_all): 
4481         (gtk_clist_select_all): adde g_return_if_fail() statements.
4482
4483 Sat Sep 26 04:46:22 1998  Tim Janik  <timj@gtk.org>
4484
4485         * configure.in: set binary age and interface age to 0.
4486
4487         * gtk/gtkspinbutton.h: 
4488         * gtk/gtkspinbutton.c: changed gtk_spin_button_construct to
4489         gtk_spin_button_configure. gtk_spin_button_construct is still defined
4490         as an alias for gtk_spin_button_configure for source compatibility,
4491         but actuall use is deprecated.
4492         typeness corrections, i.e. gint->gboolean and gint->guint.
4493         added object arguments: GtkSpinButton::value, GtkSpinButton::wrap,
4494         GtkSpinButton::shadow_type, GtkSpinButton::update_policy,
4495         GtkSpinButton::numeric, GtkSpinButton::snap_to_ticks,
4496         GtkSpinButton::adjustment, GtkSpinButton::digits and
4497         GtkSpinButton::climb_rate.
4498         GtkType and macro fixups.
4499
4500 Sat Sep 25 23:33:55 1998  Tim Janik  <timj@gtk.org>
4501
4502         * gdk/gdkwindow.c (gdk_window_get_root_origin): new function to get
4503         the *real* geometry position of a window, taken possible window
4504         manager offsets into account.
4505         this has been succesfully tested with fvwm, fvwm-2, bowman, olwm,
4506         olvwm, twm, ctwm, mlvwm, windowmaker and enlightenment.
4507         it does fail though for amiwm which adds windows to a pseudo root
4508         window, and for icewm by a small offset because it defines the
4509         geometry position whithin its border.
4510
4511         * gtk/testgtk.c: added "saved position" test to figure how
4512         gdk_window_get_root_origin() interacts with window managers (repopup
4513         this window to figure ;).
4514
4515 Wed Sep 23 06:09:19 1998  Tim Janik  <timj@gtk.org>
4516
4517         * configure.in: update to Gtk+ version 1.1.3, binary age 1,
4518         interface age 1.
4519
4520         * gtk/gtkobject.c
4521         (gtk_object_ref): 
4522         (gtk_object_unref): check for ->ref_count to be greater than 0 (the
4523         existing code was buggy in letting ->ref_count==0 pass through and
4524         then failing the living_objs_ht assertion).
4525
4526         * gtk/gtkclist.c (draw_row): fix chopping bug for right justified
4527         pixtext fields (Roman Pozlevich <roma@botik.ru>).
4528
4529 Mon Sep 21 23:53:18 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
4530
4531         * Released GTK+ 1.1.2
4532
4533 Mon Sep 21 01:12:44 1998  Jay Cox  (jaycox@earthlink.net)
4534
4535         * gtk/Makefile.am: use $(PERL) instead of perl
4536         * gtk/gtkcolorsel.c: render properly in non-square aspect ratios.
4537         also much faster to render.
4538
4539 Mon Sep 21 07:44:30 1998  Tim Janik  <timj@gtk.org>
4540
4541         * gtk/gtkobject.c (gtk_object_class_add_signals): reallocate
4542         the required memory block, rather than allocating it newly from
4543         scratch and doing a full-blown block copy on it.
4544
4545 Mon Sep 21 02:30:06 1998  Tim Janik  <timj@gtk.org>
4546
4547         * NEWS file update for upcoming release of Gtk+ version 1.1.2,
4548         binary age 0, interface age 0.
4549
4550         * gtk/gtkmain.c (gtk_init): enforce gtk-modules to always be resident.
4551
4552 Sun Sep 20 18:21:46 1998  Owen Taylor  <otaylor@redhat.com>
4553
4554         * ltmain.sh: Patch to libtool-1.2b to make --disable-static
4555         work.
4556
4557 Sun Sep 20 09:52:39 1998  Owen Taylor  <otaylor@gtk.org>
4558
4559         * HACKING: indent other than GNU indent should be OK
4560           now.
4561
4562         * gtk/genmarshal.pl gtk/Makefile.am: Call indent on file
4563           instead of piping through indent. If indent wasn't
4564           found in ./configure don't bother indenting at 
4565           all.
4566
4567 Fri Sep 18 19:11:10 1998  Owen Taylor  <otaylor@redhat.com>
4568
4569         * gdk/gdk.h: Add names to prototype for gdk_image_new_bitmap.
4570
4571 Fri Sep 18 18:54:59 1998  Jay Cox  (jaycox@earthlink.net)
4572
4573         * gtk/Makefile.am: use $(AWK) instead of awk
4574
4575 1998-09-18  Raja R Harinath  <harinath@cs.umn.edu>
4576
4577         * gtk/Makefile.am (gdk_headers): 
4578         Remove references to $(top_srcdir). 
4579         (gtk.defs, gtktypebuiltins{.h,_vars.c,_ids.c,_evals.c}): Simplify.
4580         * gtk/makeenums.pl (parse_entries): Don't look for $srcdir.
4581
4582 Fri Sep 18 19:58:24 1998  Tim Janik  <timj@gtk.org>
4583
4584         * gtk/gtkobject.h (struct _GtkObject): changed gpointer object_data; to
4585         GData*object_data to cure compiler warnings.
4586
4587 Thu Sep 17 19:06:47 PDT 1998 Manish Singh <yosh@gimp.org>
4588
4589         * install-sh
4590         * missing
4591         * mkinstalldirs: updated to latest automake version
4592
4593 1998-09-17  Raja R Harinath  <harinath@cs.umn.edu>
4594
4595         * gtk/Makefile.am (source_headers): Move `gtkfeature.h' ...
4596         (gtkinclude_HEADERS): ... here.
4597         (gtk.defs): Pass `g' flag to sed, to replace all occurances.
4598
4599 Thu Sep 17 10:49:51 1998  Raph Levien  <raph@gimp.org>
4600
4601         * HACKING: added GNU indent, as it is now required to successfully
4602         build gtk+. Should this be detected in autoconf, possibly?
4603
4604 Tue Sep 15 14:57:30 1998  Owen Taylor  <otaylor@redhat.com>
4605
4606         * Makefile.am gtk-config.in l*: Update to libtool-1.2b,
4607         change library versioning scheme to drop LT_RELEASE
4608         from the -l line, while keeping it in the soname.
4609
4610 Tue Sep 15 14:10:33 1998  Owen Taylor  <otaylor@redhat.com>
4611
4612         * configure.in Makefile.in: define a MAINT-like variable REBUILD
4613         which is set if Perl and awk are found, and autogenerated sources
4614         can be rebuilt. Remove the auto-generated sources from
4615         CVS. 
4616
4617         Add dependencies so that the autogenerated sources are 
4618         rebuilt if the files they depend on change. 
4619         (This unfortunately currently results in the entire
4620         gtk/ directory being rebuilt when any header changes.
4621         Moving all enums to gtkenums.h would fix this.)
4622
4623 Thu Sep 17 05:12:48 1998  Tim Janik  <timj@gtk.org>
4624
4625         * gtk/gtkobject.h: added gtk_object_set_data_destroy and
4626         gtk_object_set_data_destroy_by_id functions to set the destroy
4627         function pointer for an existing data portion.
4628
4629         * gtk/gtkobject.c: removed the GtkObjectData implementation and
4630         made all gtk_object_*data* functions use the GLib equivalents.
4631
4632 1998-09-16  Federico Mena Quintero  <federico@nuclecu.unam.mx>
4633
4634         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): Test whether type
4635         is not equal to GTK_TOOLBAR_CHILD_RADIOBUTTON before checking that
4636         (widget != NULL), otherwise radio button insertion will not work
4637         -- the widget argument is NULL for the first radio button in the
4638         group.
4639
4640 Tue Sep 15 13:09:24 1998  Owen Taylor  <otaylor@redhat.com>
4641
4642         * gdk/gdkimage.c (gdk_image_new): Reverted global changes
4643         of g_new to malloc(), added back in the one place where
4644         it actually mattered. #include <stdlib.h>.
4645
4646         * gdk/gdkrgb.c: g_malloc() to malloc() as above.
4647
4648 Tue Sep 15 11:30:03 1998  Owen Taylor  <otaylor@redhat.com>
4649
4650         * gtk/gtkfilesel.c: Keep a list of directories in which we never
4651         want to stat the entries (like /afs), and assume everything in
4652         those directories is a subdirectory.
4653
4654         - When following a path, try to open components even when
4655         we don't find them in their parent's directory to
4656         support automounters.
4657
4658 Tue Sep 15 11:06:13 1998  Owen Taylor  <otaylor@redhat.com>
4659
4660         * gtk/gtkwindow.c (gtk_window_move_resize): Don't request
4661         a new size from the WM if we asked for the same size
4662         before and our request was rejected.
4663
4664         * gtk/gtkwindow.c (gtk_window_configure_event): If
4665         in response to a request, we get a configure event
4666         with unchanged dimensions, send a synthetic expose
4667         since ForgetGravity won't expose our window.
4668
4669 Mon Sep 14 14:28:24 1998  Owen Taylor  <otaylor@redhat.com>
4670
4671         * gtk/gtktext.c (adjust_adj): Change the way we
4672         set the adjustments on resize so that it tries to
4673         keep the beginning of the text in approximately
4674         the same place. 
4675
4676         Removed assertion that the above change made invalid.
4677
4678 Thu Sep 10 22:19:35 1998  Owen Taylor  <otaylor@redhat.com>
4679
4680         * gtk/gtktext.c: - Save first_cut_pixels when switching
4681         sizes, so that if we switch to the _same_ size,
4682         we don't move lines around.
4683
4684         - Make sure that the text area always has a size of at
4685         least 1x1, then do all computations when realized.
4686
4687         - When fetching lines in recompute_geometry, make
4688         sure we fetch enough lines to cover the screen.
4689         
4690 Mon Sep 14 21:47:35 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
4691
4692         * gdk/gdkimage.c: changed g_new()s to malloc()s and 
4693           g_free()s to free()s to avoid mixing g_new()s with 
4694           free()s.  X itself uses free() on some of the 
4695           malloced memory.
4696
4697 Sat Sep 12 10:44:06 1998  Owen Taylor  <otaylor@redhat.com>
4698
4699         * gtkfilesel.c: Maintain a list of directories like
4700         /afs we know contain only directories, and avoid
4701         stat'ing files in those directories. (Because
4702         stat'ing all files in /afs is extremely expensive)
4703
4704         To support automounters, try to open directories,
4705         even if we couldn't find them when reading their
4706         parent directory.
4707
4708 Thu Sep  3 10:29:03 1998  Owen Taylor  <otaylor@redhat.com>
4709
4710         * gtk.m4: Conditionalize check for GTK_MAJOR_VERSION,
4711         to allow the same gtk.m4 to work for 1.0.x and
4712         1.1.x.
4713
4714 Fri Sep 11 15:25:10 1998  Lars Hamann  <lars@gtk.org>
4715
4716         * gtk/gtkclist.c (gtk_clist_set_selectable): new function
4717         to set/unset the selectable flag of a single row.
4718         (gtk_clist_get_selectable): new function 
4719         to get the state of the selectable flag
4720
4721         * gtk/gtkctree.c (gtk_ctree_node_set_selectable)
4722         (gtk_ctree_node_get_selectable): clist analogons
4723         
4724 Thu Sep 10 17:04:03 1998  Raph Levien  <raph@gimp.org>
4725
4726         * gtk/testrgb.c (testrgb_rgb_test): Small changes to the test
4727         pattern.
4728
4729         * gdk/gdkrgb.c (gdk_rgb_convert_gray4_pack): Fixed some alignment
4730         bugs in the 4bit gray cases.
4731
4732 Wed Sep  9 02:48:44 PDT 1998 Manish Singh <yosh@gimp.org>
4733
4734         * configure.in: added -posix check for NeXTStep
4735
4736         * gtk/testthreads.c: applied part of gtk-joke-980907-0 to use
4737         a unique buffer for each thread.
4738
4739         * docs/gtk-config.1: clarified copyright
4740
4741 Tue Sep  8 05:19:51 1998  Tim Janik  <timj@gtk.org>
4742
4743         * gdk/gdk.c (gdk_init): use g_atexit() instead of ATEXIT.
4744
4745         * gtk/gtkmain.c (gtk_init): use g_atexit() instead of ATEXIT.
4746
4747         * gtk/gtkobject.c (gtk_object_init_type): use g_atexit() instead of
4748         ATEXIT.
4749         
4750         * ltconfig: use GLib's ltconfig which honours lcc.
4751
4752 Mon Sep  7 20:09:23 PDT 1998 Manish Singh <yosh@gimp.org>
4753
4754         * configure.in: comment the -std1 check and save LIBS properly
4755
4756 Sun Sep  6 12:36:23 PDT 1998 Manish Singh <yosh@gimp.org>
4757
4758         * gtk/testrgb.c: #include <stdlib.h>
4759
4760 Sat Sep  5 16:01:19 1998  Owen Taylor  <otaylor@gtk.org>
4761
4762         * gdk/gdkinputxfree.h gdk/gdk.c gdk/gdkinputgxi.h:
4763         When the pointer is grabbed on an input window,
4764         either explicitely, or through press-grab, and
4765         then grabbed on a non-input window, ungrab the
4766         devices.
4767
4768 Sat Sep  5 07:13:19 1998  Tim Janik  <timj@gtk.org>
4769
4770         * gtk/gtktypeutils.h: don't include any gdk headers.
4771         added structure definitions for GtkTypeObject and GtkTypeClass,
4772         which cover the very basic fields of GtkObject and GtkObjectClass,
4773         which are actually used by the type system.
4774         
4775         * gtk/gtktypeutils.c: don't include gtkobject.h or gtkcontainer.h,
4776         we only refer to our own structures. improved class inheritance
4777         sanity checking a bit.
4778
4779         * gtk/gtkobject.h: placed appropriate comments at the beginnings
4780         of the GtkObject and GtkObjectClass structures, which explain
4781         their relationship to GtkTypeObject and GtkTypeClass.
4782
4783         * gtk/gtktypeutils.h:
4784         * gtk/gtkobject.h:
4785         moved GTK_STRUCT_OFFSET(), GTK_CHECK_CAST(), GTK_CHECK_CLASS_CAST(),
4786         GTK_CHECK_TYPE() and GTK_CHECK_CLASS_TYPE() macro definitions from
4787         gtkobject.h to gtktypeutils.h.
4788
4789         * gtk/gtkobject.h:
4790         * gtk/gtkobject.c:
4791         removed gtk_object_check_cast() and gtk_object_check_class_cast()
4792         functions. to keep source compatibility, we can provide macro aliases
4793         for the corresponding gtk_type_* functions. but then again, people
4794         shouldn't have been using these functions anyways since they were part
4795         of Gtk's internal API.
4796
4797         * gtk/gtktypeutils.h:
4798         * gtk/gtktypeutils.c:
4799         implemented gtk_type_check_object_cast() and gtk_type_check_class_cast()
4800         functions to check GtkTypeObject and GtkTypeClass types.
4801
4802 Thu Sep  3 07:16:54 1998  Tim Janik  <timj@gtk.org>
4803
4804         * gtk/gtkctree.h:
4805         * gtk/gtkctree.c: `const' fixups.
4806
4807         * gtk/gtkclist.h:
4808         * gtk/gtkclist.c: `const' fixups and some coding style adaptions.
4809
4810         * gtk/gtkctree.c (gtk_ctree_insert_node): don't dereference *text
4811         if it is passed as NULL.
4812
4813 Wed Sep  2 22:41:40 1998  Raph Levien  <raph@gimp.org>
4814
4815         * gdk/gdkrgb.c (gdk_rgb_select_conv): Fixed 32bpp image depth
4816         big-endian cases. Added a 4bpp packed gray mode (somewhat
4817         incorrectly hardwired to MSB), which should take care of
4818         Stric's hardware.
4819
4820 Thu Sep  3 04:45:57 1998  Tim Janik  <timj@gtk.org>
4821
4822         * gtk/gtkaccelgroup.c (gtk_accel_group_add): plug another small
4823         GtkSIgnalQuery leak.
4824
4825 Thu Sep  3 04:22:20 1998  Tim Janik  <timj@gtk.org>
4826
4827         * gtk/gtkmenushell.c (gtk_real_menu_shell_move_current):
4828         GTK_MENU_DIR_CHILD: check for the existance of
4829         menu_shell->active_menu_item before accessing its child.
4830         GTK_MENU_DIR_PREV:
4831         GTK_MENU_DIR_NEXT: if we haven't had an active item and still
4832         don't, make a default selection.
4833
4834 Wed Sep  2 00:28:58 1998  Tim Janik  <timj@gtk.org>
4835
4836         * gtk/gtkwidget.c (gtk_widget_propagate_state): iterate
4837         the children with _forall for sensitivity changes and with
4838         _foreach on pure state changes. this fixes a lot of the
4839         old inclusions of internal widgets into _foreach calls.
4840
4841         * gtk/gtktree.c: removed gtk_tree_foreach, let gtk_tree_forall
4842         do the work. don't walk the subtrees of first level children.
4843
4844         * gtk/gtktreeitem.c: provide a _forall implementation,
4845         which walks the subtrees as well for include_internals.
4846
4847         * gtk/gtkmenuitem.c: provide a _forall implementation, which walks
4848         the submenus as well for include_internals.
4849
4850         * gtk/gtkscrolledwindow.c: removed gtk_scrolled_window_foreach and
4851         implemented gtk_scrolled_window_forall, which will iterate over
4852         the viewport and the scrollbars for gtk_container_forall or
4853         iterate over the viewports children for gtk_container_foreach.
4854
4855         * gtk/gtktoolbar.c: 
4856         * gtk/gtktable.c: 
4857         * gtk/gtkpaned.c:
4858         * gtk/gtkpacker.c:
4859         * gtk/gtkmenushell.c: 
4860         * gtk/gtklist.c: 
4861         * gtk/gtkfixed.c:
4862         * gtk/gtkclist.c:
4863         * gtk/gtkbox.c: 
4864         * gtk/gtkbin.c: 
4865         * gtk/gtknotebook.c:
4866         removed the old gtk_*_foreach functions and provided gtk_*_forall.
4867
4868         * gtk/gtknotebook.c:
4869         (gtk_notebook_real_switch_page): expose tabs.
4870         (gtk_notebook_page_num): new function to return the page number
4871         of a distinct child.
4872         (gtk_notebook_focus): minor fixups. foxus handling is still screwed
4873         under some circumstances.
4874
4875         * gtk/gtktreeitem.c:
4876         (gtk_real_tree_item_select):
4877         (gtk_real_tree_item_deselect): major fixes.
4878         some general fixups wrt queue_redraw, and tree items not being
4879         NO_WINDOW widgets.
4880
4881         * gtk/gtklistitem.c:
4882         (gtk_real_list_item_select): 
4883         (gtk_real_list_item_deselect): 
4884         (gtk_real_list_item_toggle): 
4885         removed unneccessary queue_redraw calls.
4886
4887 Wed Aug 30 09:42:07 1998  Tim Janik  <timj@gtk.org>
4888
4889         * gtk/gtkoptionmenu.c: allow optionmenus to have the focus and
4890         automatically popup the menu on space bar.
4891
4892 Wed Aug 26 06:40:34 1998  Tim Janik  <timj@gtk.org>
4893
4894         * gtk/gtkcontainer.h:
4895         * gtk/gtkcontainer.c: implemented gtk_container_forall() (as a class
4896         method), which acts similar to gtk_container_foreach(), but iterates
4897         over internal children. the GtkContainer::foreach signal vanished in
4898         favour of a new class method ->forall() that optionally includes
4899         internal widgets.
4900
4901         * gtk/gtkclist.c (gtk_clist_init): provide no _foreach implementation
4902         but a _forall implementation, since all child widgets we have are
4903         internal ones.
4904         (column_button_create): set the parent window prior
4905         to gtk_widget_set_parent().
4906
4907         * gtk/gtkwidget.c:
4908         exchanged all calls to gtk_container_foreach() with
4909         gtk_container_forall().
4910
4911         * gtk/gtkwidget.h: 
4912         * gtk/gtkwidget.c: added the GTK_COMPOSITE_CHILD, exported through
4913         the GtkWidget::composite_child argument. to have a widget created
4914         with the flag initially, two new functions got added to wrap a widgets
4915         creation:
4916         gtk_widget_push_composite_flag() and gtk_widget_pop_composite_flag().
4917
4918 Wed Aug 25 23:37:39 1998  Tim Janik  <timj@gtk.org>
4919
4920         * gtk/gtktooltips.h:
4921         * gtk/gtktooltips.c: exported gtk_tooltips_create_window() as
4922         gtk_tooltips_force_window(), so tooltips->tip_window can be accessed
4923         prior to the first tip being set.
4924         don't put an extra reference on the window, since it is a toplevel,
4925         it wont get destroyed from anywhere else.
4926
4927         * overall macro and GtkType fixups.
4928
4929 1998-09-02  Federico Mena Quintero  <federico@nuclecu.unam.mx>
4930
4931         * gtk/gtkcolorsel.c: Replaced "foo == TRUE" and "foo == FALSE"
4932         constructs by more forgiving ones.  (Does anyone else feel like
4933         the color selector need rewriting?).
4934
4935 Tue Sep  1 10:53:52 1998  Owen Taylor  <otaylor@redhat.com>
4936
4937         * gtk/gtkprogress.c (gtk_progress_finalize): Unref
4938         the adjustment.
4939
4940         * gtk/gtkmenu.c: Modified reference counting so
4941         that the reference count from the toplevel that
4942         the menu creates to the menu is invisible to the
4943         application.
4944
4945 Mon Aug 31 21:36:31 1998  Raph Levien  <raph@gimp.org>
4946
4947         * gdk/gdkrgb.c (gdk_rgb_select_conv): Improved the 24bpp
4948         conversion selection logic, so Suns and other big-endian
4949         machines should get faster conv routines. This is also the
4950         point where 4bpp gray and 1bpp are checked in, although I
4951         wouldn't be surprised if 1bpp is a little buggy. This is
4952         synchronized with the 0.0.7 release of GdkRgb.
4953
4954         * gtk/Makefile.am: 
4955         * gtk/testrgb.c: Checked in testrgb.c to CVS, and made the
4956         appropriate change to the Makefile.am
4957
4958 Mon Aug 31 15:18:19 1998  Raph Levien  <raph@gimp.org>
4959
4960         * gdk/gdkrgb.[ch]: Added a gdk_draw_rgb_image_dithalign function,
4961         which is good for images that scroll (makes the dither patterns
4962         align correctly)
4963
4964 Sat Aug 29 14:50:56 PDT 1998 Manish Singh <yosh@gimp.org>
4965
4966         * gdk/gdkcolor.c:
4967         (gdk_colormap_new) (gdk_colormap_get_system):
4968         quell some warnings with g_hash_table_new
4969
4970         * gtk/gtkaccelgroup.c (gtk_accel_group_add): free the GtkSignalQuery
4971         when we're done with it
4972
4973         * gtk/itemfactory.c:
4974         (gtk_item_factory_from_path):
4975         (gtk_item_factory_create_item): free some strings
4976
4977         * gtk/gtklabel.c:
4978         (gtk_label_finalize): free label->pattern when done
4979         (gtk_label_parse_uline): null terminate pattern string, delete
4980         some duplicated code
4981
4982         * gtk/testthreads.c: add #include <unistd.h> for sleep()
4983
4984 Tue Aug 25 16:52:47 1998  Owen Taylor  <otaylor@redhat.com>
4985
4986         * gtk/gtktext.c (recompute_geometry): Make sure the
4987         mark we pass to line start is the beginning of a 
4988         real line, not a wrapped one.
4989
4990 Mon Aug 24 18:37:15 1998  Owen Taylor  <otaylor@redhat.com>
4991
4992         * gtk/gtktext.c: Reference count the fonts used in
4993         the text widget.
4994
4995         * gdk/gdk.h gdk/gdkcolor.c: Rename the color allocation
4996         freeing functions to be more consistent, and more 
4997         convenient; leave the old names in for backwards compatibility.
4998
4999         * gdk/gdkcolor.c gdk/gdkprivate.h: Reference count the
5000         allocations in pseudo-color colormaps to greatly reduce
5001         calls to XAllocColor. Keep a per-colormap hashtable to
5002         speed up finding if there is an already-allocated matching
5003         color.
5004
5005         * gdk/gdkcolor.c: Don't just match read the system colormap
5006         when the colormap is created, but synchronize our copy
5007         with the system colormap periodically.
5008         
5009         * gdk/gdk.c gdk/gdktypes.h gtk/gtkentry.c gtk/gtktext.c: 
5010         Change XIM constants names to match GDK conventions
5011
5012         * gtk/testinput.c: Allow the drawing area to get the focus.
5013
5014         * gtk/testgtk.c: Change around the Text test to demonstrates
5015         multiple fonts, use more colors.
5016
5017         * gtk/gtkwidget.c: Improve gtk_widget_get_colormap()/visual()
5018         so they work after a widget is unrealized.
5019
5020         * gtk/gtktext.[ch]: Remove the requirement that the text
5021         widget be realized before adding text (!) Allocate colors
5022         ourself, instead of requiring the caller allocate them.
5023         Allow changing styles to work properly by keeping track
5024         of the values for a certain property are default or
5025         set explicitely.
5026
5027         * gtk/gtkmenu.h: Added some comments.
5028
5029         * gtk/gtkentry.c: Changes to match XIM constants.
5030
5031         * gtk/gdk.h gdk/gdkwindow.c: Add gdk_drawable_set_data(),
5032         for adding keyed data to drawables. (Uses g_dataset
5033         internally)
5034
5035         * gdk/gdkpixmap.c: Keep track of the colors we allocate,
5036         when creating an XPM - store them as user data for the GdkPixmap,
5037         so we don't leak colors when we create pixmaps from XPM's.
5038
5039         Allocate memory for color information in large blocks instead of 
5040         as many little pieces.
5041         
5042 Mon Aug 24 11:09:32 PDT 1998 Manish Singh <yosh@gimp.org>
5043
5044         * gdk/gdkrgb.c: removed some unused variables
5045
5046         * gtk/gtkclist.c
5047         * gtk/gtkmain.c: #if 0'd out some unused code
5048
5049         * gtk/gtkobject.c: check for NULL object hash table in gtk_object_debug
5050
5051 Mon Aug 24 02:36:53 1998  Tim Janik  <timj@gtk.org>
5052
5053         * gtk/gtkarg.h:
5054         * gtk/gtkarg.c:
5055         * gtk/gtkwidget.h: 
5056         * gtk/gtkwidget.c: 
5057         * gtk/gtkobject.h:
5058         * gtk/gtkobject.c:
5059         * gtk/gtkcontainer.h: 
5060         * gtk/gtkcontainer.c: 
5061         (gtk_object_new):
5062         (gtk_object_set):
5063         (gtk_widget_new):
5064         (gtk_widget_set): 
5065         (gtk_container_add_with_args):
5066         (gtk_container_child_set):
5067         begin the parameter elipsis (...) after the first argument name. this
5068         change is source compatible, since it was always required, even as NULL.
5069         (gtk_args_collect): 
5070         (gtk_object_args_collect): 
5071         (gtk_container_child_args_collect):
5072         changed prototypes to pass first_arg_name, also, pass va_list variable
5073         by value (portability concerns). callers changed.
5074
5075         * gtk/gtkargcollector.c: implemented gtk_arg_collect_value() as
5076         a huge macro GTK_ARG_COLLECT_VALUE() <shrug>. this is needed because we
5077         can't pass va_list variables by reference for portability reasons.
5078
5079 Fri Aug 21 22:40:00  Raph Levien  <raph@gtk.org>
5080
5081         * gdk/gdkrgb.c: added calls to gdk_rgb_init in the get_cmap and
5082         get_visual calls, so that it gets implicitly initialized.
5083
5084 Fri Aug 21 13:06:04 1998  Stuart Parmenter  <pavlov@gimp.org>
5085         * gtk/gtkfeatures.h.in:  added GTK_HAVE_FEATURES_1_1_2 for changes
5086         such as GtkCTree function name changes
5087         
5088 Fri Aug 21 02:31:26 1998  Tim Janik  <timj@gtk.org>
5089
5090         * gtk/gtkmain.h:
5091         * gtk/gtkmain.c (gtk_check_version): added a function to perform a
5092         binary version check, returning a static string for error descriptions,
5093         or NULL on success.
5094
5095 Thu Aug 20 20:08:15 1998  Owen Taylor  <otaylor@redhat.com>
5096
5097         * gtk/gtktext.c ([un]draw_cursor): Check to see if we've
5098         computed our geometry yet, and if not, ignore the request.
5099
5100         * gtk/gtktext.c (correct_cache_insert): Fiddled around
5101         some more. All the bug-test codes seem to work at once
5102         now. (fingers crossed...)
5103
5104 Thu Aug 20 13:04:08 PDT 1998 Manish Singh <yosh@gimp.org>
5105
5106         * gdk/gdkrgb.c: silly visual fixes
5107
5108         * gtk/testgtk.c: call gdk_rgb_init so color preview test actually
5109         works
5110
5111 1998-08-20  Federico Mena Quintero  <federico@nuclecu.unam.mx>
5112
5113         * gtk/gtkhandlebox.c (gtk_handle_box_button_changed): Do not do
5114         anything if the event's window is not the bin window.
5115         (gtk_handle_box_motion): Likewise.
5116
5117 1998-08-19  Raph Levien  <raph@gimp.org>
5118
5119         * gtk/testgtk.c (create_color_preview): pushed the colormap and
5120         visual so it would work better with GdkRgb.
5121
5122 1998-08-19  Raph Levien  <raph@gimp.org>
5123
5124         * gdk/gdkrgb.c: fixed some bugs in the 565_d mode, and added a
5125         4bpp static_color mode (for vga displays). Also fixed a '64' value
5126         in the dither matrix, which was causing one pixel out of 16k to be
5127         dithered wrong.
5128
5129         * gtk/gtkpreview.{c,h}: Changed it to work with GdkRgb, gutting
5130         most of the contents. This is an API change - any apps that relied
5131         on the internal structure of GtkPreview will need some change -
5132         most notably in the use of reserved colors. The Gimp needed
5133         changes in this regard.
5134
5135 Wed Aug 19 00:11:14 1998  Tim Janik  <timj@gtk.org>
5136
5137         * gtk/gtkmain.c (gtk_init): allow argument parsing in gtk without
5138         G_ENABLE_DEBUG being defined (specifically --gtk-module= and
5139         --g-fatal-warnings), noticed by miguel.
5140
5141 Tue Aug 18 17:54:40 1998  Tim Janik  <timj@gtk.org>
5142
5143         * gtk/gtkrc.c (gtk_rc_parse_file): use g_get_current_dir() instead of
5144         getcwd().
5145
5146         * gdk/gdkprivate.h:
5147         * gdk/gdkglobals.c:
5148         * gdk/gdkwindow.c:
5149         * gdk/gdk.c:
5150         * gtk/gtkwindow.c: 
5151         * gtk/gtkitemfactory.c: 
5152         dropped gdk_progname, use g_get_prgname()/g_set_prgname() instead.
5153
5154         * gtk/gtkselection.c:
5155         * gtk/gtkpreview.c:
5156         * gtk/gtkobject.c: 
5157         * gtk/gtkmain.c: 
5158         * gtk/gtktypeutils.c: indentation fixes due to g_message() use.
5159
5160         * gdk/gdkrgb.c: exchanged occourances of g_print with g_message.
5161
5162 Tue Aug 18 17:22:22 1998  Lars Hamann  <lars@gtk.org>
5163
5164         * gtk/gtknotebook.c (gtk_notebook_switch_focus_tab): 
5165         * gtk/gtknotebook.c (gtk_notebook_update_labels): fix for sigsegv
5166         in case of show_tabs == NULL
5167
5168 Tue Aug 18 03:54:43 1998  Tim Janik  <timj@gtk.org>
5169
5170         * gtk/gtkmain.c (gtk_init): restricted the --g*fatal-* arguments
5171         to --g-fatal-warnings again. this option now causes log levels of
5172         WARNING and CRITICAL to abort().
5173
5174         * gdk/gdk.c: 
5175         * gdk/gdkdnd.c: 
5176         * gdk/gdkcc.c: 
5177         * gdk/gdkfont.c: 
5178         * gdk/gdkwindow.c:
5179         * gdk/gdkvisual.c:
5180         * gtk/gtkwidget.c:
5181         * gtk/gtktypeutils.c:
5182         * gtk/gtktree.c:
5183         * gtk/gtkfontsel.c:
5184         * gtk/gtkmain.c:
5185         * gtk/gtkobject.c:
5186         * gtk/gtkpreview.c:
5187         * gtk/gtkselection.c:
5188         * gtk/gtktext.c:
5189         * gtk/gtktree.c:
5190         * gtk/gtktreeitem.c:
5191         did a global search&replace to substitute g_print() calls with
5192         g_message(). libraries shouldn't use printf(), g_print() or
5193         g_printerr() at all.
5194         a bunch of the replacements should probably be wrapped into the
5195         G{D|T}K_NOTE() macros, so they are special cased for debugging
5196         purposes in a sane way, avoiding all the nasty #ifdef DEBUG_MY_TEDDY
5197         things.
5198
5199         * gdk/gdkdnd.c: added copyright notice.
5200
5201 Mon Aug 17 17:28:00  Raph Levien  <raph@gtk.org>
5202
5203         * gdk/gdkrgb.c: Further speedups of the 565_d case. It's
5204         impressively fast now - about 4.65 Mpix/s on an IBM TP 600
5205         running a PII 233. It's synced with the 0.0.5 release of
5206         GdkRgb.
5207
5208 Tue Aug 18 00:29:13 1998  Lars Hamann  <lars@gtk.org>
5209
5210         * gtk/gtkclist.h:
5211         (struct _GtkCListClass): new class methods:
5212         (sort_list) (insert_row) (remove_row) (set_cell_contents)
5213
5214         * gtk/gtkclist.c :
5215         (cell_empty) (cell_set_text) (cell_set_pixmap) (cell_set_pixtext):
5216         removed and replaced by (set_cell_contents)
5217         (set_cell_contents): function for class method set_cell_contents
5218         (real_insert_row): function for class method insert_row
5219         (real_remoce_row): function for class method remove_row
5220         (real_sort_list): function for class method sort_list
5221         (default_compare): fix to avoid problems with cell types != CELL_TEXT
5222
5223         * gtk/gtkctree.h :
5224         (gtk_ctree_export_to_gnode): new function to export a ctree as gnode 
5225         (gtk_ctree_node_is_visible): new function to return visibility state
5226         of a node
5227         (gtk_ctree_show_stub): new function to set visibility of root stub
5228
5229         renamed functions :
5230         (gtk_ctree_insert) -> (gtk_ctree_insert_node)
5231         (gtk_ctree_remove) -> (gtk_ctree_remove_node)
5232         (gtk_ctree_find_glist_ptr) -> (gtk_ctree_find_node_ptr)
5233         (gtk_ctree_set_text) -> (gtk_ctree_node_set_text)
5234         (gtk_ctree_set_pixmap) -> (gtk_ctree_node_set_pixmap)
5235         (gtk_ctree_set_pixtext) -> (gtk_ctree_node_set_pixtext)
5236         (gtk_ctree_set_shift) -> (gtk_ctree_node_set_shift)
5237         (gtk_ctree_get_cell_type) -> (gtk_ctree_node_get_cell_type)
5238         (gtk_ctree_get_text) -> (gtk_ctree_node_get_text)
5239         (gtk_ctree_get_pixmap) -> (gtk_ctree_node_get_pixmap)
5240         (gtk_ctree_get_pixtext) -> (gtk_ctree_node_get_pixtext)
5241         (gtk_ctree_set_foreground) -> (gtk_ctree_node_set_foreground)
5242         (gtk_ctree_set_background) -> (gtk_ctree_node_set_background)
5243         (gtk_ctree_set_row_data) -> (gtk_ctree_node_set_row_data)
5244         (gtk_ctree_set_row_data_full) -> (gtk_ctree_node_set_row_data_full)
5245         (gtk_ctree_get_row_data) -> (gtk_ctree_node_get_row_data)
5246         (gtk_ctree_moveto) -> (gtk_ctree_node_moveto)
5247         (gtk_ctree_sort) -> (gtk_ctree_sort_node)
5248         (gtk_ctree_is_visibe) -> (gtk_ctree_is_viewable)
5249
5250         * gtk/gtkctree.c :
5251         (cell_empty) (cell_set_text) (cell_set_pixmap) (cell_set_pixtext):
5252         removed and replaced by (set_cell_contents)
5253         (set_cell_contents): function for class method set_cell_contents
5254         (real_insert_row): function for class method insert_row
5255         (real_remoce_row): function for class method remove_row
5256         (real_sort_list): function for class method sort_list
5257         (default_compare): removed. CTree now also compares two GtkCTreeRows
5258         instead of two GtkCTreeNodes.
5259         (gtk_ctree_unlink): call gtk_ctree_collapse if parent is empty after
5260         unlinking the node
5261         (real_tree_expand) (real_tree_collapse): fix for refcounting of
5262         node pixmaps
5263         (set_node_info): call gtk_ctree_node_set_pixtext instead of
5264         manipulating the row itself
5265         
5266         * gtk/testgtk.c: use renamed functions of GtkCTree.
5267         new sample to show gtk_ctree_export_to_gnode and gtk_ctree_insert_gnode
5268         at work.
5269
5270 Mon Aug 17 15:31:38 1998  Tim Janik  <timj@gtk.org>
5271
5272         * gtk/gtkmain.c: removed gtk_input_add_interp.
5273
5274         * gtk/gtkeditable.c (gtk_editable_set_position): fixed bogus "return"
5275         keyword.
5276         (gtk_editable_get_event_time): fix default: case.
5277
5278         * gtk/gtkclist.c (gtk_clist_swap_rows): fixes for lvalue casts.
5279
5280         * gdk/gdkpixmap.c: made a bunch of unexported functions static.
5281
5282         * gdk/gdkcolor.c:
5283         * gdk/gdkvisual.c: include "gdkx.h", since it exports prototypes
5284         of our functions.
5285
5286         * various minor compilation cleanups, such as bogus commas in
5287         enums and similar things.
5288
5289 Mon Aug 17 07:47:43 1998  Tim Janik  <timj@gtk.org>
5290
5291         * gtk/gtkmain.c (gtk_init): NULL terminate the arg list to g_strconcat()
5292         (thanx raph).
5293
5294 Sun Aug 16 23:14:20 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
5295
5296         * NEWS: updated for 1.1.2
5297         * gtk+.spec: version = 1.1.2
5298
5299 Mon Aug 17 05:10:29 1998  Tim Janik  <timj@gtk.org>
5300
5301         * gtk/gtkmain.c (gtk_init): don't call module initializers multiple
5302         times. changed --gtk-with-module to --gtk-module at owen's request.
5303
5304 Mon Aug 17 03:47:55 1998  Tim Janik  <timj@gtk.org>
5305
5306         * gtk/gtkmain.c (gtk_init): feature a new commandline option
5307         --gtk-with-module=<module> that allows additional loading and
5308         initialization of modules (e.g. GLE).
5309
5310 Mon Aug 17 01:40:00 1998  Tim Janik  <timj@gtk.org>
5311
5312         * configure.in: version bump to 1.1.2, binary age 0, interface age 0.
5313         pass "gmodule" to AM_PATH_GLIB, with that we require libgmodule.so now.
5314
5315         * gtk/gtkmain.c (gtk_init): since glib's g_return*_if_fail macros log
5316         with G_LOG_LEVEL_CRITICAL now, i added "--g-fatal-checks",
5317         "--gdk-fatal-checks" and "--gtk-fatal-checks". that makes up six
5318         different *-fatal-* arguments now. this needs to be revised and
5319         compressed to a reasonable amount of arguments.
5320
5321 Sun Aug 16 20:51:59 1998  Tim Janik  <timj@gtk.org>
5322
5323         * gtk/gtkmain.c (gtk_init): fatal warning option is split up now,
5324         "--g-fatal-warnings" causes fatal warnings in GLib,
5325         "--gdk-fatal-warnings" causes fatal warnings in Gdk,
5326         "--gtk-fatal-warnings" causes fatal warnings in Gtk.
5327
5328         * gtk/Makefile.am: define G_LOG_DOMAIN for gtk.
5329         * gdk/Makefile.am: define G_LOG_DOMAIN for gdk.
5330
5331         * gtk/testgtk.c: 
5332         * gdk/gxid.c:
5333         we need ugly #undef G_LOG_DOMAIN at the start of these files currently,
5334         since automake doesn't support per target _CFLAGS yet.
5335
5336         * configure.in: require GLib 1.1.3.
5337
5338 Sat Aug 15 03:19:30 1998  John Ellis  <johne@bellatlantic.net>
5339
5340         * gtk/gtkctree.[ch] (gtk_ctree_set_drag_compare_func): New function
5341         to set a callback to test if a node in drag can be dropped onto
5342         it's currrent location.
5343         * gtk/gtkctree.c (set_mouse_cursor),(check_cursor): New functions
5344         to change the pointer when a drag destination is not allowed.
5345
5346 Thu Aug 13 21:06:00 1998  Raph Levien  <raph@gtk.org>
5347
5348         * gdk/gdkrgb.c: committing a patch by Ray Lehtiniemi that
5349         speeds up the 565_d case by about 25% total. Thanks Ray!
5350
5351 Thu Aug 13 16:47:44 1998  Owen Taylor  <otaylor@redhat.com>
5352
5353         * Changed GtkSignalFunc back to () from (void). (again!)
5354
5355         * Added file README.cvs-commits
5356         
5357 Thu Aug 13 09:11:11 BST 1998  Tony Gale  <gale@gtk.org>
5358
5359         * docs/gtk_tut.sgml:
5360           - Tidy up of the menufactory example from
5361             Andy Kahn <kahn@zk3.dec.com>
5362           - New section on Range Widgets from
5363             David Huggins-Daines <bn711@freenet.carleton.ca>
5364           - Started a new section on 'Advanced Event and Signal
5365             Handling' - used an email from Owen.
5366           - New appendix on Gdk Event Types
5367           - Added the tictactoe full example code to the
5368             'Code Examples' appendix
5369
5370 Tue Jul 21 12:42:01 1998  Owen Taylor  <otaylor@redhat.com>
5371
5372         * gdk/gdk.h gdk/gdkfont.c: Added gdk_text/string_extents() - 
5373           to calculate all the metrics at once of a string, including
5374           things which weren't calculated before.
5375
5376         * gtk/Makefile.am gtk/gtk.h gtk/gtktearoffmenu.[ch]: New
5377           MenuItem type, that when put as the first thing in a
5378           menu, makes the menu tearoff. Currently drawn as a
5379           dashed line.
5380
5381         * gtk/gtkmenuitem.h gtk/gtkcheckmenuitem.c: Added a flag
5382           "hide_on_activate" to the MenuItem class structure to allow
5383           check and radio buttons to be changed with <Space> without
5384           hiding the menu.
5385
5386         * gtk/gtkitemfactory.c: 
5387           - Create a AccelGroup for each MenuShell we create.
5388           - If an '_' appears before a  character 'c' in the path,
5389             then make 'c' an accelerator in the menu's accel group,
5390             and if the menuitem is menubar <alt>C an accelerator 
5391             in the itemfactory's accel group. Double '__' inserts
5392             a literal '_'
5393
5394         * gtk/gtklabel.[ch]: Add support for a pattern arg - 
5395           which is a string. If an '_' appears in this string,
5396           the corresponding position in the label is underlined.
5397
5398           Add gtk_label_parse_uline() convenience function which
5399           takes a string with embedded underlines, sets the
5400           pattern and label, and returns the accelerator keyval.
5401
5402         * gtk/gtkmenu.[ch]: Make menus no longer a toplevel widget.
5403           Instead, they create a GtkWindow and add themselves
5404           to that. (When torn off, another new feature, they
5405           create another GtkWindow to hold the torn off menu)
5406
5407           New function gtk_menu_set_tearoff_state()
5408         
5409         * gtk/gtkenums.h gtk/gtkmenushell.[ch] gtk/gtkenums.h: 
5410           Added action signals  for keyboard navigation of menus.
5411
5412         * gtk/gtkmenushell.c: Key press handler which activates
5413           bindings for navigation, and accelerators, for handling
5414           underline accelerators. Exported functions to select 
5415           and activate menu items in a menushell.
5416
5417         * gtk/testgtk.c: Added a new "Item Factory" test which
5418           tests GtkItemFactory and the new keyboard navigation
5419           of menus.
5420
5421 Tue Aug 11 20:52:58 1998  Tim Janik  <timj@gtk.org>
5422
5423         * gtk/gtktypeutils.c (gtk_type_class_init): relookup nodes after
5424         external functions have been called. also relookup nodes after
5425         this function has been invoked.
5426
5427 Tue Aug 11 15:04:52 1998  Owen Taylor  <otaylor@redhat.com>
5428
5429         * gtk/gtktext.[ch]: Removed has_cursor, set the cursor
5430           beginning of Text when creating the Text widget.
5431
5432         * gtk/testgtk.c: Grab the focus on the text widget so
5433           as to test out the above.
5434
5435 Tue Aug 11 14:55:00 1998  Owen Taylor  <otaylor@redhat.com>
5436
5437         * gtk/gtkeditable.c: Reverted part of timj's change of Jul 16. 
5438           ::changed is a notification signal and should have no default
5439           handler. A complete redraw of the Text widget does _not_ need to
5440           be done on every text insertion.
5441
5442 Tue Aug 11 13:07:29 1998  Owen Taylor  <otaylor@redhat.com>
5443         (gtk-abilleira-072198-patch)
5444
5445         * gtk/gtkwindow.[ch]: 
5446           Add gtk_window_set_modal() which sets a flag; when
5447           set the window does a gtk_grab_add() when the window
5448           is shown, and a gtk_grab_remove() when the window
5449           is hidden. 
5450
5451         * gtk/gtkfilesel.[ch]: Test if it is running in modal form and in
5452           that case will run "Create Dir","Delete File" and "Rename File" 
5453           dialogs as modal too.
5454
5455         * gtk/testgtk.c: Added a button with an example of creating modal 
5456           dialog boxes. Including file selection and color selection standard
5457           dialogs.
5458         
5459 Tue Aug 11 00:44:47 1998  Owen Taylor  <otaylor@redhat.com>
5460
5461         * gtk/gtkhscrollbar.c gtk/gtkvscrollbar.c gtk/gtktoolbar.c:
5462           Removed CAN_FOCUS by default from scrollbars, button
5463           children of toolbar. (But not GTK_TOOLBAR_CHILD_WIDGET children)
5464           (Scrollbar definitely good change, toolbar bit more questionable)
5465
5466 Tue Aug 11 17:49:33 1998  Tim Janik  <timj@gtk.org>
5467
5468         * examples/packbox/packbox.c: #include fixes (reported by Asbjoern
5469         Pettersen).
5470
5471 Tue Aug 11 00:35:56 1998  Owen Taylor  <otaylor@redhat.com>
5472
5473         * gdk/gdkgc.c gdk/gdktypes.h: Applied gtk-pedersen-980727-0; 
5474           added all logical operations to gc->function.
5475
5476 Sun Aug  9 23:31:59 1998  Lars Hamann  <lars@gtk.org>
5477
5478         * gtk/gtkclist.c (adjust_scrollbars): Fix for resize bug. Call
5479         gtk_widget_size_allocate instead of gtk_widget_queue_resize
5480         if the visibility state of a scrollbar changes.
5481
5482 Mon Aug 10 12:49:54 1998  Tim Janik  <timj@gtk.org>
5483
5484         * gtk/gtkhbbox.h: fixed an #include statement (reported by Eric Kidd).
5485
5486 Thu Aug  6 22:37:21 1998  Stefan Jeske  <stefan@gtk.org>
5487
5488         * gtk/gtkclist.c: Renamed my_merge and my_mergesort to
5489         gtk_clist_merge and gtk_clist_mergesort. :)
5490
5491 1998-08-06  Martin Baulig  <martin@home-of-linux.org>
5492
5493         * gtk/gtkclist.c: Renamed `merge' -> `my_merge' and
5494         `mergesort' -> `my_mergesort'.
5495
5496 Wed Aug  5 21:12:37 1998  Stefan Jeske  <stefan@gtk.org>
5497
5498         * gtk/gtkenums.h: new enum GtkSortType.
5499         
5500         * gtk/gtkclist.h:
5501         * gtk/gtkclist.c:
5502         Added sorting capabilities to GtkCList. New APIs :
5503         gtk_clist_set_compare_func, gtk_clist_set_sort_column,
5504         gtk_clist_set_sort_type, gtk_clist_sort, gtk_clist_set_auto_sort. 
5505         New internal functions : default_compare, merge, mergesort.
5506
5507         (gtk_clist_append): This is just a wrapper for gtk_clist_insert now.
5508         
5509         (gtk_clist_insert): Modified to handle gtk_clist_append and the
5510         auto sort flag. Changed the return value from void to gint to
5511         return the row number where the element was actually inserted.
5512
5513         (gtk_clist_swap_rows): Return immediately if auto sort flag is set.
5514         
5515         * gtk/gtkctree.h:
5516         * gtk/gtkctree.c:
5517         Removed the auto_sort flag, replaced ctree->node_compare with
5518         clist->compare all over the place, modified default_compare to
5519         match clist's needs. Removed API´s : gtk_ctree_set_auto_sort,
5520         gtk_ctree_set_compare_func. Removed GtkCTreeCompareFunc typedef.
5521
5522         * gtk/testgtk.c: Modified clist/ctree samples to demonstrate
5523         sorting. The lists can be sorted by a column by clicking the 
5524         corresponding title button.
5525         
5526 Tue Aug  4 22:02:49 PDT 1998 Shawn T. Amundson <amundson@gtk.org>
5527
5528         * Released GTK+ 1.1.1
5529
5530 Wed Aug  5 02:57:20 1998  Lars Hamann  <lars@gtk.org>
5531
5532         * gtk/gtkctree.h:
5533         * gtk/gtkctree.c:
5534         (gtk_ctree_find): changed to return a gboolean
5535         (gtk_ctree_insert_gnode): new function for recursive insertion of a
5536         GNode tree.
5537         (gtk_ctree_real_select_recursive): fix for extended selection
5538         (gtk_ctree_sort_recursive): in case node == NULL, sort root nodes too.
5539         (gtk_ctree_set_node_info) (set_node_info): few fixes for expanded flag
5540
5541 Tue Aug  4 16:18:26 1998  Tim Janik  <timj@gtk.org>
5542
5543         * configure.in: version bump to 1.1.1, binary age 0, interface age 0.
5544         GLib version 1.1.1 is now required at minimum.
5545
5546         * docs/Makefile.am: added gtk_tut_fr.sgml to EXTRA_DIST (french version
5547         of the Gtk+ tutorial, contributed by Eric Jacoboni <jaco@dotcom.fr>.
5548
5549 Mon Aug  3 19:24:48 1998  Owen Taylor  <otaylor@redhat.com>
5550  
5551         * gtk/gtktext.c (gtk_text_forward_delete): Undraw the
5552           cursor before (possibly) deleting the cursor's text
5553           property.
5554  
5555         * gtk/gtktext.c (correct_cache_delete): More attempts
5556           to clean the line-start cache up after inserting
5557           a property. Among other things, make sure to
5558           fix up text->current_line, since it is used to 
5559           refetch the changed lines.
5560  
5561 Tue Aug  4 10:59:19 1998  Owen Taylor  <otaylor@redhat.com>
5562
5563         * gtk/gtktable.[ch]: Empty rows/columns of the table
5564         should not have been marked as being able to shrink.
5565         (Fixes problem with shrinking scrollbarless GIMP canvases)
5566
5567 1998-08-03  Federico Mena Quintero  <federico@nuclecu.unam.mx>
5568
5569         * gtk/gtkctree.c (gtk_ctree_find_by_row_data_custom): New public
5570         function to find a row by its data pointer using a custom
5571         comparison function.
5572
5573 Sun Aug 02 22:58:00 1998  George Lebl  <jirka@5z.com>
5574
5575         * gtk/gtkclist.c: draw the buttons during a "draw" as well,
5576           this fixes a bug when the whole widget is made non-sesitive
5577           the buttons weren't redrawn
5578
5579 Mon Aug  3 00:04:09 1998  Lars Hamann  <lars@gtk.org>
5580
5581         * gtk/gtkclist.c (abort_column_resize): reset drag_pos after abort
5582         * gtk/gtkclist.c (gtk_clist_key_press): removed a few unneeded lines
5583         * gtk/gtkcombo.c (gtk_combo_list_key_press): fixed compiler warning
5584
5585 Sun Aug  2 03:08:07 1998  Owen Taylor  <otaylor@gtk.org>
5586
5587         * gdk/gdkwindow.c (gdk_window_reparent): Change 
5588           window_private->parent pointer when reparenting.
5589
5590 Sat Aug  1 22:17:00 1998  Raph Levien  <raph@acm.org>
5591
5592         * gdk/gdkrgb.c: made some minor config changes to unify GdkRgb
5593         with the standalone release.
5594
5595 Fri Jul 31 20:45:07 1998  Lars Hamann  <lars@gtk.org>
5596
5597         * gtk/gtkclist.c (gtk_clist_button_press) (gtk_clist_motion)
5598         (gtk_clist_button_release) (new_column_width): Few fixes for
5599         column resize. Store resize column in clist->drag_pos.
5600
5601 Thu Jul 31 15:18:36 1998  Lars Hamann  <lars@gtk.org>
5602
5603         * gtk/gtkctree.h 
5604         * gtk/gtkctree.c 
5605         * gtk/testgtk.c : New typedef GtkCTreeNode, changed all GList *node
5606         to GtkCTreeNode *node.
5607
5608         * gtk/gtklist.h : added extended selection mode and auto scrolling.
5609         (struct _GtkList): removed unneeded variables timer, button,
5610         selection_start_pos, selection_end_pos, scroll_direction, have_grab.
5611         Added new variables undo_selection, undo_unselection, last_focus_child,
5612         undo_focus_child, htimer, vtimer, anchor, drag_pos, anchor_state,
5613         drag_selection, add_mode.
5614  
5615         New functions :
5616         (gtk_list_extend_selection), (gtk_list_start_selection),
5617         (gtk_list_end_selection), (gtk_list_select_all),
5618         (gtk_list_unselect_all), (gtk_list_scroll_horizontal),
5619         (gtk_list_scroll_vertical), (gtk_list_toggle_add_mode),
5620         (gtk_list_toggle_focus_row), (gtk_list_toggle_row),
5621         (gtk_list_undo_selection), (gtk_list_end_drag_selection)
5622         
5623         * gtk/gtklist.c : 
5624         (gtk_list_enter_notify): removed, because auto scrolling now works
5625         with gtk_list_motion_notify
5626  
5627         New functions, needed for auto scrolling :
5628         (gtk_list_motion_notify) (gtk_list_move_focus_child)
5629  
5630         New functions for extended selection support :
5631         (gtk_list_set_anchor), (gtk_list_fake_unselect_all),
5632         (gtk_list_fake_toggle_row), (gtk_list_update_extended_selection),
5633         (gtk_list_focus_lost)
5634         
5635         (gtk_list_set_focus_child): modified gtk_container_set_focus_child
5636         function to support auto scrolling, and avoid out-of-sync errors in
5637         case auf GTK_SELECTION_BROWSE
5638         (gtk_list_focus): modified gtk_container_focus function to avoid out
5639         off sync errors in case auf GTK_SELECTION_EXTENDED
5640
5641         * gtk/gtklistitem.h 
5642         * gtk/gtklistitem.c :
5643         New signal functions for key binding support :
5644         (toggle_focus_row), (select_all), (list_item), (unselect_all)
5645         (list_item), (undo_selection), (start_selection), (end_selection)
5646         (extend_selection), (scroll_horizontal), (scroll_vertical),
5647         (toggle_add_mode)
5648         (gtk_list_item_realize): added  GDK_KEY_PRESS_MASK |
5649         GDK_KEY_RELEASE_MASK
5650         (gtk_list_item_draw_focus): modify gc if parent has add_mode set.
5651  
5652         * gtk/gtkcombo.c :
5653         (gtk_combo_popup_button_press):  grab pointer for combo->list
5654         (gtk_combo_button_release): ungrab only if combo->popwin HAS_GRAB
5655         (gtk_combo_list_key_press): take care of which child HAS_GRAB
5656         (gtk_comb_init): don't connect combo->button with button_release_event
5657
5658 Thu Jul 30 12:39:36 1998  Lars Hamann  <lars@gtk.org>
5659
5660         * gtk/gtkclist.c (gtk_clist_motion): removed a few unneeded lines
5661
5662 Wed Jul 29 23:31:50 1998  Lars Hamann  <lars@gtk.org>
5663
5664         * gtk/gtkclist.c (gtk_clist_motion): column resize now works with
5665         horizontal autoscrolling, GtkCTree's 'reorder ability' now works
5666         with horizontal and vertical autoscrolling.
5667
5668 Tue Jul 28 20:32:03 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
5669
5670         * gtk/docs/man: new directory
5671         * gtk/docs/man/gtk_button.pod: new file, initial gtk_button man page
5672
5673 Tue Jul 28 00:03:20 1998  Lars Hamann  <lars@gtk.org>
5674
5675         * gtk/gtknotebook.c (gtk_notebook_paint): small fix for border drawing
5676         bug
5677
5678 Mon Jul 27 09:18:13 BST 1998  Tony Gale  <gale@gtk.org>
5679
5680         * docs/gtk_tut.sgml: GtkTree section from
5681           David Huggins-Daines <bn711@freenet.carleton.ca>,
5682           add a GtkText widget example
5683         * examples/text/* example/tree/* : new examples for the
5684           GtkTree and GtkText widgets
5685         * docs/gtk_tut.sgml: added an appendix to hold complete code
5686           examples that aren't in a full form elsewhere in the
5687           tutorial (e.g. scribble)
5688
5689 Mon Jul 27 00:46:21 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
5690
5691         * Released GTK+ 1.1.0
5692
5693 Mon Jul 27 04:18:26 1998  Tim Janik  <timj@gtk.org>
5694
5695         * gtkfeatures.h.in: revamped the definitions for 1-1-0, so that all
5696         the new API stuff is reflected in one #define GTK_HAVE_FEATURES_1_1_0.
5697
5698 Mon Jul 27 03:11:20 1998  Tim Janik  <timj@gtk.org>
5699
5700         * gtk/gtkbindings.c (binding_compose_params): fixup, so that enum
5701         values are looked up.
5702
5703         * gtk/gtktypeutils.h:
5704         * gtk/gtktypeutils.c: new functions gtk_type_flags_find_value and
5705         gtk_type_enums_find_value to lookup enum values.
5706
5707         * gtk/gtkctree.h: 
5708         * gtk/gtkctree.c: change enum name from GtkCTreeExpansion to
5709         GtkCTreeExpansionType. fixed signal creations to pass the enum
5710         types not just the base type GTK_TYPE_ENUM.
5711
5712         * gtk/gtkclist.h: 
5713         * gtk/gtkclist.c: fixed signal creations to pass the real enum
5714         types not just the base type GTK_TYPE_ENUM.
5715
5716 Sun Jul 26 14:50:07 1998  Stefan Jeske  <stefan@gtk.org>
5717
5718         * gtk/testgtk.c : 
5719         Began cleanup, e.g. use gtk_widget_show_all instead of many 
5720         gtk_widget_show's. Completely rewrote the button box sample
5721         (only one window now). Removed "miscellaneous" button.
5722
5723 Sun Jul 26 14:48:14 1998  Stefan Jeske  <stefan@gtk.org>
5724
5725         * gtk/gtkvbbox.c (gtk_vbutton_box_size_allocate): 
5726         Fixed wrong allocation for GTK_BUTTONBOX_END.
5727         (allocation->x  =>  allocation->y)
5728
5729 Sun Jul 26 14:06:37 1998  Lars Hamann  <lars@gtk.org>
5730
5731         * gtk/gtkclist.c (gtk_clist_button_press) (gtk_clist_button_release)
5732         (abort_column_resize) (gtk_clist_key_press): fix for pointer grab
5733         
5734         * gtk/gtkctree.c (real_tree_select): added check to avoid double
5735         selected rows
5736         (gtk_ctree_button_press)
5737         (gtk_ctree_button_release): fix for pointer grab
5738
5739 Sat Jul 25 13:16:00 1998 Damon Chaplin  <DAChaplin@msn.com>
5740
5741         * gtk/gtkfontsel.c (gtk_font_selection_get_fonts): 
5742         Fixed initialization problem - dirty memory could cause problems.
5743         Also checked that bitmapped fonts can be scaled when showing the
5744         available sizes.
5745
5746 Sat Jul 25 02:25:03 1998  Lars Hamann  <lars@gtk.org>
5747
5748         * gtk/gtkctree.c (gtk_ctree_sort_recursive)
5749         (gtk_ctree_sort_recursive): test for node != NULL
5750         (gtk_ctree_is_visible) (gtk_ctree_realize) (gtk_ctree_unrealize)
5751         (gtk_ctree_last) : added sanity checks
5752         * gtk/gtkclist.c (gtk_clist_button_press): removed "no_focus_row"
5753
5754 Fri Jul 24 18:15:49 1998  Lars Hamann  <lars@gtk.org>
5755
5756         * gtk/gtkclist.c (toggle_focus_row): mini code cleanup
5757
5758 Fri, 24 Jul 1998 10:56:22 +0200 Paolo Molaro <lupus@debian.org>
5759
5760         * gtk/gtkfeatures.h.in: added GTK_HAVE_ENUM_VALUE_STRUCT.
5761
5762 Thu Jul 23 00:11:39 1998  Tim Janik  <timj@gtk.org>
5763
5764         * gtk/testgtkrc: introduce testbindings on C-1 for buttons,
5765         to check out binding priorities. someone should really write
5766         gtkrc-mode for emacs.
5767
5768         * gtk/gtkwidget.c (gtk_widget_class_init): remove ugly bindings test.
5769         * gtk/testgtk.c (main): and move it here ;). this test says something
5770         on release of C-9. (this works only if the mouse pointer is on a
5771         spinbutton and there is no focus widget).
5772
5773         * gtk/gtkrc.h:
5774         * gtk/gtkrc.c:
5775         export gtk_rc_parse_color, gtk_rc_parse_state and a new function
5776         gtk_rc_parse_priority to parse path priority types.
5777         export rc tokens.
5778         feature binding parsing.
5779
5780 Wed Jul 22 23:41:17 1998  Tim Janik  <timj@gtk.org>
5781
5782         * gtk/gtkbindings.h: 
5783         * gtk/gtkbindings.c: new function gtk_binding_parse_binding() to
5784         feature binding parsing in rc files.
5785         * gtk/gtkbindings.c (gtk_binding_set_new): bug fix.
5786         * gtk/gtkbindings.c (gtk_binding_pattern_compare): bug fix, we used to
5787         order the bindings with lowest priority first.
5788
5789 Wed Jul 22 15:21:08 PDT 1998 Manish Singh <yosh@gimp.org>
5790
5791         * gdk/gdkrgb.c: actually builds and runs properly on big
5792         endian machines now, because we #include config.h. Also
5793         fixed up a compile error in the WORDS_BIGENDIAN case in
5794         gdk_rgb_convert_565_gray. I made the fix by looking at
5795         patterns in the other code; Raph can you verify this?
5796
5797         * gdk/gdkthreads.c: #include <unistd.h> to quell compiler
5798         warnings
5799
5800 Wed Jul 22 23:00:44 1998  Lars Hamann  <lars@gtk.org>
5801
5802         * gtk/gtkctree.c (tree_select/unselect) (tree_expand/collapse) 
5803         (tree_toggle_expansion) (real_select/unselect_row)
5804         (gtk_ctree_select/unselect) : few fixes for gtk_signal_emits
5805
5806 Wed Jul 15 17:44:47 1998  Owen Taylor  <otaylor@redhat.com>
5807
5808         * gtk/gtktext.c (new_text_property): We free things from
5809         the text property MemChunk, so it needs to be G_ALLOC_AND_FREE.
5810
5811         * Fix up line start cache when splitting a property
5812         during an insert.
5813
5814 Wed Jul 15 21:15:52 1998  Owen Taylor  <otaylor@redhat.com>
5815
5816         * gtk/gtkwidget.c: restauration => restoration
5817
5818 Thu Jul 16 20:11:36 1998  Owen Taylor  <otaylor@redhat.com>
5819
5820         * gdk/gdkxid.c (gdk_xid_table_lookup): If xid_ht
5821         hasn't been created yet, don't do the lookup.
5822
5823 1998-07-20  Raph Levien  <raph@acm.org>
5824
5825         * gdk/gdkrgb.c: More cleanups in the config process.
5826
5827 1998-07-20  Raph Levien  <raph@acm.org>
5828
5829         * gdkrgb.c: Fixed minor config bug preventing big-endian
5830         architectures from working.
5831
5832 Tue Jul 21 06:32:43 1998  Stefan Jeske  <stefan@gtk.org>
5833
5834         * gtk/gtkprogressbar.{c,h} gtk/testgtk.c: Fixed wrong size of
5835         activity indicator. It is settable now as a fraction of the
5836         total width/height using gtk_progress_bar_set_activity_blocks.
5837         Renamed gtk_progress_bar_set_number_of_blocks to
5838         gtk_progress_bar_set_discrete_blocks.
5839
5840 Mon Jul 20 21:28:18 1998  Lars Hamann  <lars@gtk.org>
5841
5842         * gtk/gtkctree.c (gtk_ctree_post_recursive_to_depth)
5843         (gtk_ctree_pre_recursive_to_depth): new functions, recursive process
5844         tree to specified depth
5845         (gtk_ctree_expand_to_depth): expand tree to specified depth
5846         (gtk_ctree_collapse_to_depth): collapse all nodes with level >= depth
5847
5848 Sun Jul 19 23:51:05 1998  Lars Hamann  <lars@gtk.org>
5849
5850         * gtk/gtkclist.c (scroll_vertical): fix for vertical scrolling in case
5851         of GTK_CLIST_ADD_MOD
5852         * gtk/testgtk.c (add1000_clist): changed pixmap
5853
5854 Sat Jul 18 22:59:04 1998  Tim Janik  <timj@gtk.org>
5855
5856         * gtk/gtkmain.h: 
5857         * gtk/gtkmain.c: export gtk_binary_age and gtk_interface_age.
5858
5859         * gtk/gtktypeutils.h:
5860         * gtk/gtkitemfactory.h: remove "void" from prototypes again.
5861
5862 Sat Jul 18 00:54:01 1998  Lars Hamann  <lars@gtk.org>
5863
5864         * gtk/gtknotebook.c (gtk_notebook_set_child_arg): added support for
5865         CHILD_ARG_MENU_LABEL, CHILD_ARG_TAB_LABEL
5866         (gtk_notebook_get_child_arg): added support for CHILD_ARG_MENU_LABEL,
5867         CHILD_ARG_POSITION
5868         (gtk_notebook_reorder_child): new funktion to change position of a
5869         notebook page
5870         (gtk_notebook_draw_arrow): draw left/right arrow with
5871         GTK_SHADOW_ETCHED_IN if focus_tab is first/last tab.
5872
5873         * gtk/gtkstyle.c (gtk_default_draw_arrow):
5874         added GTK_SHADOW_ETCHED_IN/OUT
5875
5876 Sun Jul 19 12:19:16 1998  Stefan Jeske  <stefan@gtk.org>
5877
5878         * gtk/gtkprogress.c gtk/gtkprogress.h gtk/gtkprogressbar.c
5879           gtk/gtkprogressbar.h gtk/Makefile.am gtk/gtk.h gtk/testgtk.c:
5880         Introduced generic GtkProgress widget. Derived GtkProgressBar from
5881         GtkProgress. Made GtkProgressBar much more flexible (see testgtk).
5882
5883 Fri Jul 17 23:49:28 PDT 1998 Manish Singh <yosh@gimp.org>
5884
5885         * gtk/gtktypeutils.h
5886         * gtk/gtkitemfactory.h: explicitly specify void in prototype
5887
5888 Fri Jul 17 17:54:02 1998  Lars Hamann  <lars@gtk.org>
5889
5890         * gtk/gtkclist.c (scroll_vertical): fix to avoid flicker at begin/end
5891         of list
5892
5893 Fri Jul 17 05:30:47 1998  Tim Janik  <timj@gtk.org>
5894
5895         * gtk/gtksignal.c (gtk_handlers_run) (gtk_signal_real_emit):
5896         sropped the approach of copying all signal specific data into a
5897         GtkHandlerInfo structure. we rather keep the signal data on the stack
5898         in gtk_signal_real_emit and pass that over to gtk_handlers_run. this
5899         avoids multiple lookups of the signal pointer and works savely together
5900         with destroy notifiers of handlers.
5901
5902         * gtk/gtkentry.c (gtk_entry_key_press): care for the posssibility that
5903         someone destroys the entry on the ::activate signal.
5904
5905 Fri Jul 17 01:21:32 1998  Tim Janik  <timj@gtk.org>
5906
5907         * gtk/gtkarrow.c (gtk_arrow_expose): use misc->xpad for x calculation
5908         instead of ypad (typo).
5909         (gtk_arrow_set): clear all of the arrow's allocation (left a 1 pixel
5910         border around the allocation).
5911         (gtk_arrow_init): the static requisition needs to be setup in this
5912         function rather than gtk_widget_new(), so arrow creation works without
5913         the gtk_arrow_new() constructing.
5914         (gtk_arrow_expose): return TRUE, since we actually handled the expose.
5915
5916         * gtk/gtkwidget.c (gtk_widget_real_size_request): provide a default
5917         implementation for GtkWidget::size_request, so size requisition for
5918         simple statically sized widgets like GtkArrow works.
5919
5920 Thu Jul 16 14:16:16 PDT 1998 Manish Singh <yosh@gimp.org>
5921
5922         * gtk-config.in: minor changes to gtk-config: --cflags doesn't
5923         prepend -I@libdir@/glib/include anymore, since glib-config handles
5924         it; --libs strips out redundant -L<path>'s properly (there was
5925         code in there to do it before, but it didn't work)
5926
5927 Thu Jul 16 18:24:41 1998  Tim Janik  <timj@gtk.org>
5928
5929         * gtk/gtknotebook.h: 
5930         * gtk/gtknotebook.c: signdness corrections all ove the place.
5931         implementation of object arguments: GtkNotebook::enable_popup,
5932         GtkNotebook::tab_pos, GtkNotebook::tab_border, GtkNotebook::show_tabs,
5933         GtkNotebook::show_border, GtkNotebook::scrollable and GtkNotebook::page.
5934         begun implementation of child args, we have GtkNotebook::tab_label, but
5935         GtkNotebook::menu_label and GtkNotebook::position still lack the
5936         implementation.
5937         (gtk_notebook_remove_page):
5938         (gtk_notebook_current_page): allow negative indices (-1) as alias for
5939         the last page.
5940
5941         * gtk/gtkentry.h:
5942         * gtk/gtkentry.c: GtkType and macro fixups. implementation of object
5943         arguments GtkEntry::max_length and GtkEntry::visibility.
5944         (gtk_entry_adjust_scroll): queue a redraw.
5945
5946         * gtk/gtkeditable.h:
5947         * gtk/gtkeditable.c: GtkType und macro fixups. implementation of
5948         object arguments GtkEditable::text_position and GtkEditable::editable.
5949         new (action) signal GtkEditable::set_editable.
5950         provide a default handler for GtkEditable::changed that queues a redraw.
5951
5952         * gtk/gtktext.h: 
5953         * gtk/gtktext.c: GtkType und macro fixups. override GtkEditable::
5954         set_editable.
5955
5956 Thu Jul 16 14:42:11 1998  Lars Hamann  <lars@gtk.org>
5957
5958         * gtk/gtkctree.c (gtk_ctree_button_release): fix for sigsegv in
5959         case of drag_target == NULL
5960         * gtk/gtkclist.c (gtk_clist_button_press): fix for GTK_2/3BUTTON_PRESS.
5961         Clist did not emit an select_row signal in case of GTK_2/3BUTTON_PRESS.
5962         * gtk/gtkfilesel.c (gtk_file_selection_file_button,
5963         gtk_dir_selection_file_button): fix due to changes in clist's
5964         select_row signal.
5965
5966 Thu Jul 16 01:27:15 1998  Tim Janik  <timj@gtk.org>
5967
5968         * gtk/gtkwidget.h:
5969         * gtk/gtkwidget.c (gtk_widget_set_usize): handle negative values
5970         similar to gtk_widget_set_uposition(). that is: -1=unspecified,
5971         -2=leave untouched. changed the width/height field of GtkWidgetAuxInfo
5972         to be gint16s rather than guint16s, since that's what the code expected
5973         (for a long time actually).
5974
5975         * gtk/gtkviewport.c:
5976         added support for object arguments: GtkViewport::shadow_type,
5977         GtkViewport::vadjustment and GtkViewport::hadjustment.
5978         (gtk_viewport_add): chain gtk_bin_add.
5979
5980         * gtk/gtkscrolledwindow.c: 
5981         added support for object argument: GtkScrolledWindow::hscrollbar_policy,
5982         GtkScrolledWindow::vscrollbar_policy and GtkScrolledWindow::viewport.
5983
5984         * gtk/gtkadjustment.h: 
5985         * gtk/gtkadjustment.c: 
5986         * gtk/gtkctree.h: 
5987         * gtk/gtkclist.h: 
5988         * gtk/gtkctree.c: 
5989         * gtk/gtkclist.c:
5990         * gtk/gtkscrolledwindow.h:
5991         * gtk/gtkscrolledwindow.c:
5992         * gtk/gtkviewport.h:
5993         * gtk/gtkviewport.c:
5994         GtkType and macro fixups.
5995
5996 Thu Jul 16 01:10:02 1998  Lars Hamann  <lars@gtk.org>
5997
5998         * gtk/gtkctree.h :
5999         * gtk/gtkctree.c :
6000         Added focus handling, horizontal and vertical autoscrolling,
6001         extended Selection Mode, key bindings
6002         Added gtk_ctree_toggle_expansion & gtk_ctree_toggle_expansion_recursive
6003         Changed gtk_ctree_scroll_to to gtk_ctree_moveto.
6004         Removed gtk_ctree_clear.
6005         
6006         * gtk/gtkclist.h :
6007         * gtk/gtkclist.c : 
6008         Added focus handling, horizontal and vertical autoscrolling,
6009         extended Selection Mode, key bindings
6010
6011 Wed Jul 15 12:39:27 1998  Raph Levien  <raph@acm.org>
6012
6013         * This checkin integrates GdkRgb version 0.0.3 into the Gtk 1.1
6014         source tree. For more information on GdkRgb, please see:
6015         http://www.levien.com/gdkrgb/
6016
6017         * gtk/gtkfeatures.h.in (GTK_HAVE_GDK_RGB): added this feature. It
6018         bothers me slightly that the feature is in gdk, and this file is
6019         in gtk, but it's probably ok.
6020
6021         * gdk/gdk.h: Added an #include of <gdk/gdkrgb.h>
6022
6023         * gdk/gdkrgb.c:
6024         * gdk/gdkrgb.h: Added this module.
6025
6026         * Makefile.am (EXTRA_DIST): Added gdkrgb.c and gdkrgb.h files.
6027
6028         * configure.in: added AC_C_BIGENDIAN test (needed by GdkRgb).
6029
6030 Wed Jul 15 14:20:10 1998  Tim Janik  <timj@gtk.org>
6031
6032         * gtk/gtksignal.c (gtk_signal_real_emit): pass only the signal_id
6033         to this function. it needs to relookup the signal multiple times.
6034         this fixes spurious segfaults that could show up with signal intensive
6035         code, when classes are created during a pending emission (which is
6036         normal case).
6037
6038 Tue Jul 14 19:12:12 1998  Tim Janik  <timj@gtk.org>
6039
6040         * gtk/gtkbutton.c (gtk_button_set_arg): don't destroy a buttons
6041         child if it isn't a label.
6042
6043 Tue Jul 14 11:41:38 1998  Tim Janik  <timj@gtk.org>
6044
6045         * gtk/gtkdialog.h: 
6046         * gtk/gtkseparator.h: 
6047         * gtk/gtkhseparator.h: 
6048         * gtk/gtkvseparator.h: macro and GtkType fixups.
6049
6050 Tue Jul 14 06:25:46 1998  Tim Janik  <timj@gtk.org>
6051
6052         * gtk/testgtk.c (create_cursors): display the current cursor name.
6053
6054         * gtk/gtktypeutils.h: 
6055         * gtk/gtktypeutils.c (gtk_type_init_builtin_types): cleanups to
6056         the fundamental type definition. the GtkArg union now only covers
6057         the required storage types for argument values. adapted the GTK_VALUE_*
6058         macro set. handle GTK_TYPE_UCHAR. definiton of type set bounds macros.
6059
6060         * gtk/gtkargcollector.c (gtk_arg_collect_value): clean ups of the
6061         code, fixed int/float collection. fixed a bug in the sanity checking
6062         code for GtkObjects.
6063
6064         * gtk/gtkbindings.c (gtk_binding_entry_add_signal): fixups of the
6065         argument collection code.
6066
6067         * gtk/gtksignal.c (gtk_signal_collect_params): use the type set bounds
6068         macros when distinguishing the return type.
6069
6070 Mon Jul 13 12:42:51 1998  George Lebl  <jirka@5z.com>
6071
6072         * gdk/gdkwindow.h: (gdk_window_reparent) check if old_parent_private
6073           is not NULL before trying to g_list_remove the child. A patch
6074           from Michael Lausch.
6075
6076 Sun Jul 12 16:40:06 1998  Tim Janik  <timj@gtk.org>
6077
6078         * gtk/gtkargcollector.c (gtk_arg_collect_value): fix float argument
6079         collection (always casted to doubles upon argument passing).
6080
6081 Sun Jul 12 05:59:26 1998  Tim Janik  <timj@gtk.org>
6082
6083         * gtk/gtktypeutils.c (gtk_type_new): call the base classes'
6084         object_init_func for derived objects with the object's ->klass field
6085         still pointing to the corresponding base class, otherwise overridden
6086         class functions could get called with partly-initialized objects.
6087         (change from Tero Pulkkinen <terop@modeemi.cs.tut.fi>).
6088
6089 Sun Jul 12 02:47:35 1998  Tim Janik  <timj@gtk.org>
6090
6091         * gtk/gtkobject.h:
6092         * gtk/gtkobject.c:
6093         (gtk_object_arg_get_info): new functions which wraps gtk_arg_get_info().
6094
6095         * gtk/gtkcontainer.h:
6096         * gtk/gtkcontainer.c:
6097         (gtk_container_child_arg_get_info): new function which wraps
6098         gtk_arg_get_info().
6099
6100 Fri Jul 10 13:29:53 1998  Tim Janik  <timj@gtk.org>
6101
6102         * gtk/gtkcontainer.c:
6103         (gtk_container_arg_get): 
6104         (gtk_container_arg_set): 
6105         * gtk/gtkobject.c:
6106         (gtk_object_arg_set): 
6107         (gtk_object_arg_get):
6108         strictly check for the associated get/set arg functions. if an
6109         arg is readable or writable, the associated class functions *must*
6110         be provided.
6111
6112 Fri Jul 10 09:37:50 1998  Tim Janik  <timj@gtk.org>
6113
6114         * gtk/gtkaccellabel.c (gtk_accel_label_accelerator_width): only take the
6115         padding into account if there is an accelerator.
6116
6117 Fri Jul 10 05:51:44 1998  Tim Janik  <timj@gtk.org>
6118
6119         * gtk/gtkcontainer.c:
6120         (gtk_container_add_with_args): collect the arguments with
6121         gtk_container_child_args_collect, not through gtk_object_args_collect.
6122         (gtk_container_child_set): likewise.
6123
6124 Fri Jul 10 04:20:35 1998  Tim Janik  <timj@gtk.org>
6125
6126         * gtk/gtktypeutils.h: 
6127         * gtk/gtktypeutils.c: added a new internal type GTK_TYPE_IDENTIFIER
6128         which is derived from GTK_TYPE_STRING.
6129
6130         * gtk/gtkbindings.c: reworked the argument type handling.
6131
6132 Thu Jul  9 21:03:19 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
6133
6134         * gtk/gtkpreview.c: add in just enough support for 1 or 4 bits
6135           so that it seems to allow normal operation in those modes,
6136           although you will only see black  (GIMP toolbar now pops up,
6137           just don't create a new image and GIMP now works in 4 bit.)
6138
6139 Thu Jul  9 20:20:04 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
6140
6141         * gdk/gdkvisuals.c: 4 bit support, increased available_depths
6142           array, which was too low (?)
6143
6144 Fri Jul 10 00:02:04 1998  Tim Janik  <timj@gtk.org>
6145
6146         * gtk/gtkcontainer.h: 
6147         * gtk/gtkcontainer.c: deleted most of the argument handling code, since
6148         that is now implemented in gtkarg.c. similar to gtk_object_args_collect,
6149         we now export a new function gtk_container_child_args_collect().
6150         for consistency with the object arguments, a few functions got renamed:
6151         gtk_container_child_arg_get -> gtk_container_child_get,
6152         gtk_container_child_arg_set -> gtk_container_child_set,
6153         gtk_container_child_arg_getv -> gtk_container_child_getv,
6154         gtk_container_child_arg_setv -> gtk_container_child_setv,
6155         gtk_container_add_with_argv -> gtk_container_addv.
6156         note, gtk_container_add_with_args() remained, because its equivalent
6157         would be gtk_container_add(,, ...) which would break all existing code.
6158         (gtk_container_add_child_arg_type): similar to gtk_object_add_arg_type,
6159         we expect the `arg_name' argument to be a const static string now.
6160         (gtk_container_get_child_arg_type): function removed.
6161
6162 Thu Jul  9 07:03:04 1998  Tim Janik  <timj@gtk.org>
6163
6164         * gtk/gtkargcollector.c: new file which holds gtk_arg_collect_value().
6165         this is a static inline function that collects command line arguments
6166         from a va_list. this file can just be included in all places that
6167         need this functionality.
6168
6169         * gtk/gtkarg.h: 
6170         * gtk/gtkarg.c: new files which implement most of the argument
6171         handling stuff from gtkobject.c. also collected a few more
6172         gtk_arg_* utility functions from else places.
6173
6174         * gtk/gtkobject.h: 
6175         * gtk/gtkobject.c: moved most of the argument handling code into
6176         gtkarg.c. we now export gtk_object_args_collect() as a non-public
6177         method with a blind va_list pointer.
6178         (gtk_object_add_arg_type): the `arg_name' argument is required to be a
6179         const static string now.
6180         (gtk_object_get_arg_type): function got removed.
6181
6182         * gtk/gtkwidget.c: 
6183         (gtk_widget_set): 
6184         (gtk_widget_new): adaptions for gtk_object_args_collect().
6185
6186         * gtk/gtktypeutils.c (gtk_type_init_builtin_types): changed the internal
6187         fundamental type name so as to have a valid prefix, e.g. "bool"->
6188         "gboolean", "string"->"GtkString" and somesuch, left "void" as is,
6189         though that should probably be something like GtkNone since the
6190         type itself is called GTK_TYPE_NONE.
6191         even the internal type names need to avoid name clashes and must live
6192         in their own namespace, several code portions rely on that.
6193         we should relly have typedefs such as typedef gchar* GtkString; so the
6194         fundamental type names can be used for code dumpers just like with all
6195         the Gtk/Gdk types.
6196
6197 Wed Jul  8 15:31:28 1998  Tim Janik  <timj@gtk.org>
6198
6199         * gtk/gtkbutton.c: handle GTK_RELIEF_HALF, which was introduced to
6200         keep either GTK_STATE_NORMAL for relief buttons (GTK_RELIEF_NONE) or
6201         to still honour GTK_WIDGET_STATE(), e.g. for coloured buttons
6202         (GTK_RELIEF_HALF).
6203         (gtk_button_paint): set the background for prelighted buttons with
6204         GTK_STATE_NORMAL only if GTK_RELIEF_NONE.
6205         (gtk_button_draw_focus): if GTK_RELIEF_NONE, use GTK_STATE_NORMAL for
6206         the shadow type (otherwise we get strange shadows for coloured buttons).
6207         (gtk_button_set_relief): queue a redraw after changing
6208         the relief.
6209         (gtk_button_class_init): 
6210         (gtk_button_set_arg): 
6211         (gtk_button_get_arg): added object argument "GtkButton::relief".
6212
6213         * gtk/gtkenums.h (enum): added GTK_RELIEF_HALF.
6214
6215 Mon Jul  6 18:30:48 1998  Tim Janik  <timj@gtk.org>
6216
6217         * gtk/gtkbutton.h:
6218         * gtk/gtkbutton.c: GtkButtons are now derived from GtkBin. we mirror
6219         GTK_BIN (button)->child to button->child to keep source compatibility.
6220
6221         * gtk/gtkoptionmenu.c:
6222         * gtk/gtkclist.c:
6223         * gtkcheckbutton.c: don't refer to button->child, but
6224         GTK_BIN (button)->child instead.
6225
6226 Mon Jul  6 12:06:23 BST 1998  Tony Gale  <gale@gtk.org>
6227
6228         * docs/gtkfaq.sgml: update anon CVS info
6229
6230 Sat Jul  4 13:16:24 1998  Tim Janik  <timj@gtk.org>
6231
6232         * gtk/*.c: changed reversed_[12] to reserved_[12] in gtk_*_get_type
6233         functions.
6234
6235         * gdk/gdkwindow.c:
6236         * gdk/gdkvisual.c: check for some pointer values to be != NULL, prior
6237         to XFree() calls.
6238
6239 1998-07-03  Federico Mena Quintero  <federico@nuclecu.unam.mx>
6240
6241         * gtk/gtkfeatures.h.in: Added GDK_HAVE_FULL_CROSSING_EVENT, since
6242         I seem to have erroneously added it to gtkfeatures.h (not .h.in).
6243
6244 Fri Jul  3 14:55:31 PDT 1998 Manish Singh <yosh@gimp.org>
6245
6246         * gtk/gtkfeatures.h.in: added GTK_HAVE_RELIEF_STYLE
6247
6248 Wed Jul  1 20:58:46 1998  Tim Janik  <timj@gtk.org>
6249
6250         * gtk/gtkwidget.h:
6251         * gtk/gtkwidget.c: temporary implementation of action signal "debug_msg"
6252
6253         * gtk/gtkbindings.c (gtk_binding_entry_add_signal): fixed an off-by-one
6254         error that prevented signal to entry addition for signals with
6255         parameters.
6256
6257 Wed Jul  1 10:05:36 PDT 1998 Manish Singh <yosh@gimp.org>
6258
6259         * ltconfig: fix for properly detecting shared lib support on
6260         SunPro cc (taken from libtool 1.2.a)
6261
6262 Wed Jul  1 03:33:30 1998  Tim Janik  <timj@gtk.org>
6263
6264         * gtk/gtkrc.c: implementation of the "class" keyword for styles.
6265
6266 Tue Jun 30 14:30:37 1998  Tim Janik  <timj@gtk.org>
6267
6268         * gtk/gtkrc.c: fixed lookup order for rc styles. the latest defined
6269         rc set pattern is favoured, this is needed for overriding of style
6270         patterns with subsequently parsed rc files.
6271
6272 Tue Jun 30 12:45:19 1998  Tim Janik  <timj@gtk.org>
6273
6274         * gtk/gtkrc.c: code overhaul for simplicity and more descriptive
6275         error messages.
6276
6277 Tue Jun 30 09:24:40 1998  Tim Janik  <timj@gtk.org>
6278
6279         * gtk/gtkaccelgroup.c (gtk_accelerator_parse): parse "<Release>"
6280         modifier as well.
6281         (gtk_accelerator_name): add "<Release>" to the accelerator name if
6282         neccessary.
6283
6284         * gtk/gtkbindings.c (BINDING_MOD_MASK): take BINDING_MOD_MASK into
6285         account.
6286
6287         * gtk/gtkwidget.c (gtk_widget_real_key_release_event): implemented
6288         default handler for key-release events, which checks for activation
6289         of GDK_RELEASE_MASK key bindings.
6290
6291         * gdk/gdktypes.h (enum): added GDK_RELEASE_MASK to GdkModifierType.
6292
6293 Mon Jun 29 13:39:45 1998  Tim Janik  <timj@gtk.org>
6294
6295         * gtk/gtkarrow.h: GtkType and macro fixups.
6296         * gtk/gtkarrow.c: widget argument implementation: "GtkArrow::arrow_type",
6297         "GtkArrow::shadow_type".
6298
6299 Sun Jun 28 11:39:17 1998  Tim Janik  <timj@gtk.org>
6300
6301         * gtk/gtkalignment.h:
6302         * gtk/gtkbin.h: GtkType and macro fixups.
6303         
6304         * gtk/gtkalignment.c (gtk_alignment_class_init): widget argument
6305         implementation: GtkAlignment::xalign, GtkAlignment::yalign,
6306         GtkAlignment::xscale, GtkAlignment::yscale.
6307
6308 Sun Jun 28 04:29:10 1998  Tim Janik  <timj@gtk.org>
6309
6310         * gtk/gtktypeutils.c (gtk_type_class_init): call the base class init
6311         fucntions from all parent types upon class initialization.
6312
6313         * gtk/gtkcontainer.c:
6314         (gtk_container_get_type): announce gtk_container_base_class_init to
6315         the type system.
6316         (gtk_container_base_class_init): new function to feature base class
6317         initialization.
6318         (gtk_container_get_child_arg): 
6319         (gtk_container_set_child_arg): call the GtkContainerClass get_child_arg
6320         and set_child_arg methods of the class indicated through the argument
6321         name.
6322
6323         * gtk/gtkobject.c:
6324         (gtk_object_base_class_init): new function to feature base class
6325         initialization.
6326         (gtk_object_init_type): announce gtk_object_base_class_init to the type
6327         system.
6328         (gtk_object_class_init): setup the get_arg and set_arg pointers for
6329         GtkObjectClass.
6330         (gtk_object_setv): 
6331         (gtk_object_getv): call the GtkObjectClass get_arg and set_arg methods,
6332         instead of bothering the type system with this.
6333
6334         * gtk/gtkaccellabel.c: 
6335         * gtk/gtkbutton.c: 
6336         * gtk/gtkradiobutton.c: 
6337         * gtk/gtktable.c:
6338         * gtk/gtktogglebutton.c: 
6339         * gtk/gtktipsquery.c: 
6340         * gtk/gtkbox.c: 
6341         * gtk/gtkpacker.c: 
6342         * gtk/gtkwidget.c: 
6343         * gtk/gtkwindow.c: 
6344         * gtk/gtkframe.c: 
6345         * gtk/gtkmisc.c:
6346         * gtk/gtklabel.c: set the object_class->{g|s}et_arg pointers to the
6347         corresponding gtk_*_{g|s]et_arg functions and updated the gtk_*_get_type
6348         functions wrt GtkTypeInfo initialization. changed a lot of the set/get
6349         arg functions to take a GtkObject argument.
6350
6351         gtk/gtkadjustment.c:
6352         gtk/gtkalignment.c:
6353         gtk/gtkarrow.c:
6354         gtk/gtkaspectframe.c:
6355         gtk/gtkbbox.c:
6356         gtk/gtkbin.c:
6357         gtk/gtkcheckbutton.c:
6358         gtk/gtkcheckmenuitem.c:
6359         gtk/gtkclist.c:
6360         gtk/gtkcolorsel.c:
6361         gtk/gtkcombo.c:
6362         gtk/gtkctree.c:
6363         gtk/gtkcurve.c:
6364         gtk/gtkdata.c:
6365         gtk/gtkdialog.c:
6366         gtk/gtkdrawingarea.c:
6367         gtk/gtkeditable.c:
6368         gtk/gtkentry.c:
6369         gtk/gtkeventbox.c:
6370         gtk/gtkfilesel.c:
6371         gtk/gtkfixed.c:
6372         gtk/gtkfontsel.c:
6373         gtk/gtkgamma.c:
6374         gtk/gtkhandlebox.c:
6375         gtk/gtkhbbox.c:
6376         gtk/gtkhbox.c:
6377         gtk/gtkhpaned.c:
6378         gtk/gtkhruler.c:
6379         gtk/gtkhscale.c:
6380         gtk/gtkhscrollbar.c:
6381         gtk/gtkhseparator.c:
6382         gtk/gtkimage.c:
6383         gtk/gtkinputdialog.c:
6384         gtk/gtkitem.c:
6385         gtk/gtkitemfactory.c:
6386         gtk/gtklist.c:
6387         gtk/gtklistitem.c:
6388         gtk/gtkmenu.c:
6389         gtk/gtkmenubar.c:
6390         gtk/gtkmenuitem.c:
6391         gtk/gtkmenushell.c:
6392         gtk/gtknotebook.c:
6393         gtk/gtkoptionmenu.c:
6394         gtk/gtkpaned.c:
6395         gtk/gtkpixmap.c:
6396         gtk/gtkpreview.c:
6397         gtk/gtkprogressbar.c:
6398         gtk/gtkradiomenuitem.c:
6399         gtk/gtkrange.c:
6400         gtk/gtkruler.c:
6401         gtk/gtkscale.c:
6402         gtk/gtkscrollbar.c:
6403         gtk/gtkscrolledwindow.c:
6404         gtk/gtkseparator.c:
6405         gtk/gtkspinbutton.c:
6406         gtk/gtkstatusbar.c:
6407         gtk/gtktext.c:
6408         gtk/gtktoolbar.c:
6409         gtk/gtktooltips.c:
6410         gtk/gtktree.c:
6411         gtk/gtktreeitem.c:
6412         gtk/gtkvbbox.c:
6413         gtk/gtkvbox.c:
6414         gtk/gtkviewport.c:
6415         gtk/gtkvpaned.c:
6416         gtk/gtkvruler.c:
6417         gtk/gtkvscale.c:
6418         gtk/gtkvscrollbar.c:
6419         gtk/gtkvseparator.c: updated the GtkTypeInfo initialization code to
6420         match the modified GtkTypeInfo structure.
6421
6422 Sat Jun 27 23:23:27 PDT 1998 Manish Singh <yosh@gimp.org>
6423
6424         * gtk/testgtk.c: use rand() instead of random() for portability
6425
6426 Sat Jun 27 22:42:28 PDT 1998 Manish Singh <yosh@gimp.org>
6427
6428         * configure.in
6429         * acconfig.h
6430         * gdk/gdk.c: use native Xlib XConvertCase if it's available
6431
6432 Sat Jun 27 15:44:46 1998  Tim Janik  <timj@gtk.org>
6433
6434         * gdk/gdk.c (gdkx_XConvertCase): compatibility function to provide
6435         XConvertCase() functionality from X11R6 on X11R5 systems.
6436
6437 Thu Jun 25 10:50:34 1998  Stefan Jeske  <stefan@gtk.org>
6438
6439         * gdk/gdk.h gdk/gdkfont.c: Added functions gdk_text_height,
6440         gdk_string_height, gdk_char_height to retrieve the exact
6441         height of a text.
6442
6443 Thu Jun 25 07:53:51 BST 1998  Tony Gale  <gale@gtk.org>
6444
6445         * docs/gtk_tut.sgml: add section on GtkCList widget, contributed
6446           by Stefan Mars <mars@lysator.liu.se>
6447         * examples/clist/clist.c examples/clist/Makefile: example code
6448           for GtkCList widget from the Tutorial
6449
6450 Wed Jun 24 16:38:02 1998  Tim Janik  <timj@gtk.org>
6451
6452         * gtk/gtkbin.c (gtk_bin_remove): do not avoid to queue for a resize
6453         if the container is not visible, we might be a toplevel! this holds
6454         for all other base container implementations as well, that are
6455         candidates to derive toplevels from. in general the resizing code will
6456         care about visibility itself.
6457         * gtk/gtkmenushell.c (gtk_menu_shell_remove): likewise.
6458         * gtk/gtkbox.c (gtk_box_remove): likewise.
6459
6460         * gtk/gtkwindow.c (gtk_window_move_resize): save ->use_uposition around
6461         gtk_window_set_hints(), since we haven't calculated the new position
6462         yet.
6463
6464         * gdk/gdkwindow.c (gdk_window_get_pointer): take care that *x, *y and
6465         *mask are alway initialized in a sane way, regardless of the return
6466         value.
6467
6468 Wed Jun 24 14:14:32 1998  Tim Janik  <timj@gtk.org>
6469
6470         * gtk/gtkcontainer.c: new function gtk_container_child_arg_set, similar
6471         to gtk_container_child_arg_setv, but takes a variable argument list.
6472         new function gtk_container_get_child_arg_type, which is needed by
6473         gtk_object_collect_args.
6474
6475         * gtk/gtkobject.c: changed prototype for gtk_object_collect_args, to
6476         take a function pointer to figure the argument type.
6477         adapted callers to pass gtk_object_get_arg_type.
6478         * gtk/gtkwidget.c: adapted gtk_object_collect_args callers to pass
6479         gtk_object_get_arg_type..
6480
6481         * gtk/gtkpacker.h: 
6482         * gtk/gtkpacker.c:
6483         (gtk_packer_reorder_child): new function to change the packing order
6484         of a child.
6485         (gtk_packer_size_request): 
6486         (gtk_packer_size_allocate): take container->border_width into acount.
6487
6488         * gtk/gtkpacker.c: implemented widget arguments:
6489         "GtkPacker::spacing", "GtkPacker::border_width", "GtkPacker::pad_x",
6490         "GtkPacker::pad_y", "GtkPacker::ipad_x", "GtkPacker::ipad_y".
6491         implemented child arguments:
6492         "GtkPacker::side", "GtkPacker::anchor", "GtkPacker::expand",
6493         "GtkPacker::fill_x", "GtkPacker::fill_y", "GtkPacker::use_default",
6494         "GtkPacker::border_width", "GtkPacker::pad_x", "GtkPacker::pad_y",
6495         "GtkPacker::ipad_x", "GtkPacker::ipad_y", "GtkPacker::position".
6496
6497         * gtk/gtkmisc.c (gtk_misc_set_arg): for padding args, set the padding,
6498         not the alignment.
6499
6500         * gtk/gtkeventbox.h:
6501         * gtk/gtkeventbox.c: GtkType and macro fixups.
6502
6503         * gtk/testgtk.c (entry_toggle_sensitive): new function to toggle
6504         sensitivity of an entry.
6505
6506         * gtk/gtkstyle.c (gtk_style_new): support normal grey as default color
6507         for insensitive base and text.
6508
6509         * gtk/gtkentry.c (gtk_entry_realize): set the window backgrounds
6510         widget state dependent.
6511         (gtk_entry_style_set): likewise.
6512         (gtk_entry_state_changed): set background color on state changes.
6513         (gtk_entry_draw_text): for non selected text, use state dependent
6514         colors.
6515
6516         * gtk/gtktogglebutton.c: support for widget arguments
6517         "GtkToggleButton::active" and "GtkToggleButton::draw_indicator".
6518
6519 Wed Jun 24 08:35:45 1998  Stefan Jeske  <stefan@gtk.org>
6520
6521         * gtk/gtkspinbutton.c (gtk_spin_button_spin): Added compatibility 
6522         code for 1.0.x-like parameters. Changed internal interface of
6523         gtk_spin_button_real_spin. Several fixes to avoid emission of
6524         "value_changed" where possible.
6525
6526 Tue Jun 23 22:21:33 PDT 1998 Manish Singh <yosh@gimp.org>
6527
6528         * gtk-boxed.defs: s/GkWidget/GtkWidget/
6529
6530 Wed Jun 24 07:47:29 1998  Tim Janik  <timj@gtk.org>
6531
6532         * gtk/testgtk.c (create_idle_test): added a frame with radio buttons
6533         to select the resize_mode for the idle-labels container.
6534
6535         * gtk/gtkframe.h: 
6536         * gtk/gtkframe.c: GtkType and macro corrections.
6537
6538         * gtk/gtkradiobutton.c (gtk_radio_button_set_arg): new function to
6539         support widget argument "GtkRadioButton::group".
6540
6541 Tue Jun 23 08:01:09 1998  Tim Janik  <timj@gtk.org>
6542
6543         * gtk/gtkcontainer.c (gtk_container_set_resize_mode): queue a resize
6544         unconditionally if resize_mode has changed.
6545
6546         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_init): set
6547         GTK_RESIZE_QUEUE on the scrolled window.
6548         (gtk_scrolled_window_construct): set GTK_RESIZE_PARENT for the vieport.
6549
6550 Tue Jun 23 04:20:30 1998  Tim Janik  <timj@gtk.org>
6551
6552         * gtk/gtkcontainer.h:
6553         * gtk/gtkcontainer.c:
6554         (GTK_IS_RESIZE_CONTAINER): new macro to find out if
6555         a given gtkobject is a container with resize_mode==GTK_RESIZE_PARENT.
6556         (gtk_container_queue_resize): new function to queue a container for
6557         a *size* reallocation (doesn't affect its position, and thus its
6558         parent is left untouched usually).
6559         (gtk_container_get_resize_container): new function to retrive the next
6560         most resize container which is not itself queued for a resize.
6561         (gtk_container_idle_sizer): new function to carefully process the
6562         container_resize_queue since it can change during invokation of
6563         gtk_container_check_resize().
6564         (gtk_container_resize_children): total rework of this function to
6565         properly handle resize containers. makes a lot of assumptions whitch
6566         are stated in the comments.
6567
6568         * gtk/gtkcontainer.c:
6569         (gtk_container_real_check_resize): only requeue ourselves if we are not
6570         a resize container.
6571         (gtk_container_clear_resize_widgets): care for automatic deletion of our
6572         resize_widgets list on size_allocate through a handler connection.
6573
6574         * gtk/gtkwindow.c (gtk_window_shutdown): new functionm to reset the
6575         focus and default widget of a window, so to take the burden from
6576         gtk_widget_unparent.
6577
6578         * gtk/gtkviewport.c: removed gtk_viewport_check_resize, which tried
6579         to be clever, but actually messed up the resize_children logic and
6580         caused unneccessary allocations on its whole branch. besides this,
6581         it messed up the display by not invoking a redraw after the allocation.
6582
6583         * gtk/gtktable.c (gtk_table_set_child_arg): reverted recent change, so
6584         that it is the child again that is queued for a resize.
6585         (gtk_table_attach): likewise.
6586         (gtk_table_remove): likewise.
6587
6588 1998-06-22  Miguel de Icaza  <miguel@nuclecu.unam.mx>
6589
6590         * gtk/gtkentry.h, gtk/gtkentry.c: Export the
6591         gtk_entry_adjust_scroll.  Required if you change the cursor
6592         position and want to sync it up with your code (Midnight Commander
6593         gtk front end needs this).
6594
6595         * gtk/gtktable.c: Deal with tables that have size 0, 0.
6596
6597 Tue Jun 23 12:12:19 BST 1998  Tony Gale  <gale@gtk.org>
6598
6599         * examples/README.1ST: new file to explain how the
6600           code examples should be extracted from the tutorial.
6601
6602 Mon Jun 22 18:43:11 1998  Lars Hamann  <lars@gtk.org>
6603
6604         * gtk/gtkctree.c (draw_row): added new "line style"
6605         GTK_CTREE_LINES_TABBED 
6606         * gtk/gtkctree.c/h (gtk_ctree_find_glist_ptr): new function to
6607         search the glist pointer of an GtkCTreeRow
6608
6609 1998-06-21  Raja R Harinath  <harinath@cs.umn.edu>
6610  
6611         * gtk/Makefile.am (gtk.defs,gtktypebuiltins*): Remove $(srcdir)
6612         from, and clean up, the dependencies.  Generate to intermediate
6613         files to prevent problems with Ctrl-C.
6614
6615         * gtk/genmarshal.pl: Generate `gtkmarshal.[ch]' in $srcdir.
6616
6617 Fri Jun 19 14:46:56 1998  Stefan Jeske  <stefan@gtk.org>
6618
6619         * gtk/gtkspinbutton.h gtk/gtkspinbutton.c gtk/testgtk.c:
6620         - Bug fix for precision problem causing occasional double emission 
6621           of "value_changed" signal (hopefully works now).
6622         - API change (should be binary compatible) : 
6623           new enum GtkSpinType; modified gtk_spin_button_spin to use it.
6624           Modified cursor example appropriately.
6625           To spin by something other than step_/page_increment, use
6626           gtk_spin_button_spin (spin, GTK_SPIN_USER_DEFINED, increment).
6627         - Made GTK_SHADOW_NONE the default. ;)
6628         - Fixed casting of GtkAdjustment* to GtkWidget* in
6629           gtk_spin_button_value_changed.
6630
6631 Fri Jun 19 06:18:19 1998  Tim Janik  <timj@gtk.org>
6632
6633         * gtk/gtkcontainer.c (gtk_container_set_resize_mode): fail silently
6634         for toplevels. if resize_mode changes to GTK_RESIZE_PARENT, clear the
6635         resize widget list before queuing the container for a new reize.
6636         (gtk_container_need_resize): changed return value to FALSE, since this
6637         used to indicate that no further resizes are needed.
6638         (gtk_container_set_arg): 
6639         (gtk_container_get_arg): 
6640         (gtk_container_class_init): implemented GtkContainer::resize_mode
6641         argument.
6642
6643         (gtk_container_resize_children): when we walk up the tree of a resize
6644         widget we need to stop if we are the current parent.
6645
6646         * gtk/gtkwidget.c (gtk_widget_queue_resize): flag the resize child with
6647         GTK_RESIZE_NEEDED for container->resize_mode==GTK_RESIZE_IMMEDIATE.
6648         (gtk_widget_hide_all): retrive the toplevel widget from via
6649         gtk_widget_get_resize_container().
6650
6651 Thu Jun 18 23:08:36 1998  Owen Taylor  <otaylor@gtk.org>
6652
6653         * gtk/gtklist.c (gtk_list_button_press): Only respond
6654           to selection with button 1. This allows context-sensitive
6655           menus to work correctly.
6656
6657 Fri Jun 19 03:29:04 1998  Tim Janik  <timj@gtk.org>
6658
6659         * gtk/gtkaccelgroup.c: 
6660         * gtk/gtkbindings.c: 
6661         * gtk/gtkcontainer.c:
6662         * gtk/gtkitemfactory.c:
6663         * gtk/gtkobject.c: 
6664         * gtk/gtksignal.c:
6665         * gtk/gtkwidget.c: replaced some gtk_object_data_force_id with
6666         g_quark_from_static_string calls to save memory.
6667
6668         * gtk/gtkobject.c (gtk_object_set_data_by_id_full): invoke the destroy
6669         function _after_ the new data has been setup.
6670         minor changes to object data functions to feature the GQuark type.
6671
6672 Thu Jun 18 21:13:54 1998  Owen Taylor  <otaylor@gtk.org>
6673
6674         * gtk/gtkmain.c (gtk_init): Remove --g-fatal-warnings flag
6675           from argv.
6676
6677 Thu Jun 18 20:22:28 1998  Owen Taylor  <otaylor@gtk.org>
6678
6679         * gtk/genmarshal.pl: Modified to be more idiomatic Perl,
6680           to be more readable perl, to spit out stuff that looks
6681           more like readable C, and to pipe output through indent
6682           so output looks a lot like readable C. No functional
6683           changes.
6684
6685 Thu Jun 18 17:43:31 1998  Owen Taylor  <otaylor@gtk.org>
6686
6687         * gtk/gtkpixmap.[ch] (gtk_pixmap_set): Clear the background if
6688           necessary when switching to a masked pixmap. (Based on a patch
6689           from Ullrich Hafner <hafner@informatik.uni-wuerzburg.de>)
6690
6691 Thu Jun 18 16:18:10 1998  Owen Taylor  <otaylor@gtk.org>
6692
6693         * gtk/gtkeditable.[ch]: Added action signals for keyboard
6694           bindings. (move_cursor, kill_word, etc, etc, etc). 
6695
6696           removed the time argument from
6697           gtk_editable_cut/copy/paste_clipboard (source but not
6698           binary incompatible...) Instead get time from
6699           gtk_get_current_event ().
6700         
6701         * gtk/gtktext.c gtk/gtkentry.c: Support the new editable
6702           signals.
6703
6704 Thu Jun 18 02:52:09 1998  Owen Taylor  <otaylor@gtk.org>
6705
6706         Patches from Damon Chaplin <DAChaplin@email.msn.com>:
6707
6708         gtk/gtkfontsel.h: Fixed GtkFontSelectionClass - I forgot to change
6709              parent class to GtkNotebookClass when splitting the widget in
6710              two.  Also updated some comments.
6711
6712         gtk/gtkfontsel.c: Fixed bug when toggling 'Allow scaled bitmaps'
6713                button without a font selected.
6714
6715              Fixed bug in set_font_name - I hadn't updated the code to
6716                search for the style in the font_style clist - it was
6717                still assuming the style row was equal to its index,
6718                but it isn't any more.
6719         
6720              Changed 'Reset' button on filter page to 'Clear Filter'.
6721              Deleted old code relating to the old 'Filter Fonts' toggle
6722              Updated some comments.
6723              Cleared 'Actual Fontname' if no font is set.
6724
6725         gtk/testgtk.c: Fixed problem when 'OK' button is pressed - it was
6726              destroying the GtkFontSelection instead of the
6727              GtkFontSelectionDialog.
6728
6729 Thu Jun 18 02:15:31 1998  Owen Taylor  <otaylor@gtk.org>
6730
6731         * gtk/gtkmain.c (gtk_init): Added --g-fatal-warnings
6732           flag to make all warnings fatal errors.
6733
6734         * gtk/testthreads.c: moved <pthreads.h> include inside 
6735           #ifdef USE_PTHREADS
6736
6737 Thu Jun 18 01:37:31 1998  Owen Taylor  <otaylor@gtk.org>
6738
6739         * gtk/gtkenums.h gtk/gtkcontainer.[ch] gtk/gtkwidget.c 
6740           gtk/gtkmenu.c gtk/gtkviewport.c gtk/gtkwindow.c:
6741
6742         - Added new function gtk_container_set_resize_mode() for
6743           fine-grained control of where resize-queueing is done.
6744
6745         - Removed GtkContainer::need_resize and GtkWindow::move_resize
6746         - Added GtkContainer::check_resize to replace need_resize.
6747
6748         - Added function gtk_container_check_resize() to trigger
6749           queued resizes, and gtk_container_resize_children() to
6750           Figure which children need to be size-allocated. (logic
6751           moved from gtkwindow.c)
6752
6753         - Reorganized code in gtkwindow.c
6754         
6755         - Set the resize-mode for viewports so that resizes within
6756           a viewport don't propagate out of it. 
6757         
6758 1998-06-18  Federico Mena Quintero  <federico@nuclecu.unam.mx>
6759
6760         * gtk/gtkfontsel.c: Use pointer<->int conversion macros to avoid warnings.
6761
6762         * gtk/gtkaccellabel.c (gtk_accel_label_accelerator_width): Use
6763         g_return_val_if_fail, because the function *does* return a value.
6764
6765 Thu Jun 18 03:30:06 1998  Tim Janik  <timj@gtk.org>
6766
6767         * gtk/gtkaccellabel.h:
6768         * gtk/gtkaccellabel.c: new function gtk_accel_label_accelerator_width to
6769         request the size of the accelerator portion of an accel label.
6770         (gtk_accel_label_size_request): don't request for the accelerators size.
6771         (gtk_accel_label_expose_event): only draw the accelerator if we got
6772         enough extra space.
6773
6774         * gtk/gtkmenuitem.c (gtk_menu_item_size_request): request accelerator
6775         width from children.
6776
6777         * gtk/gtkmenu.c (gtk_menu_key_press): when adding an accelerator to an
6778         object (after removal has been requested) check if there is still an
6779         accelerator remaining to avoid adding two accelerators on an object.
6780         this can happen for locked accelerators (or accelerator-frozen widgets).
6781         (gtk_menu_size_request): feature childrens accelerator width in size
6782         requests.
6783
6784         * gtk/gtknotebook.c (gtk_notebook_menu_item_create): use
6785         gtk_widget_freeze_accelerators() for dynamically created menu items.
6786
6787         * gtk/gtksignal.h: 
6788         * gtk/gtksignal.c: new function gtk_signal_handler_pending_by_func()
6789         which will return a handler_id > 0 if the specified function is pending
6790         for `signal_id'.
6791
6792         * gtk/gtkwidget.h:
6793         * gtk/gtkwidget.c: remove gtk_widget_stop_accelerator, which was just
6794         a signal handler function to stop accelerator addition.
6795         added gtk_widget_freeze_accelerators and gtk_widget_thaw_accelerators
6796         which will prevent (undo) any accelerators from being added to or
6797         removed from a widget.
6798
6799 Wed Jun 17 21:59:09 1998  Stefan Jeske  <stefan@gtk.org>
6800
6801         * gtkspinbutton.h gtkspinbutton.c testgtk.c:
6802         Changed GtkSpinButtonUpdatePolicy enum, added keyboard
6803         acceleration, new API gtk_spin_button_set_snap_to_ticks.
6804
6805 Wed Jun 17 03:47:40 1998  Tim Janik  <timj@gtk.org>
6806
6807         * gdk/gdk.h:
6808         * gdk/gdkwindow.c: new function gdk_window_at_pointer() to retrive
6809         the current GdkWindow the pointer is on if there is any.
6810         
6811         * gtk/gtktable.c (gtk_table_init): preallocate a table with one row
6812         and one column, so we don't construction logic at all. changed a few
6813         (x < y - 1) to (x + 1 < y), to avoid failing evaluations due to
6814         unsigned int wraps.
6815
6816         * gtk/gtkwidget.c (gtk_widget_set_parent): removed left over code
6817         portion, added an additional check for parent != widget.
6818
6819         * more GtkType and macro fixups.
6820
6821 1998-06-16  Federico Mena Quintero  <federico@nuclecu.unam.mx>
6822
6823         * gtk/gtkhandlebox.c (draw_textured_frame): Now accepts an extra
6824         "clip" parameter, which is the clipping rectangle to use.  This
6825         eliminates the extremely annoying flicker when exposing parts of
6826         the handlebox.
6827
6828 Tue Jun 16 14:08:08 PDT 1998 Manish Singh <yosh@gimp.org>
6829
6830         * gtk/gtktable.c: fix from TimJ for off-by-one error in table
6831         resizing
6832
6833 Tue Jun 16 06:29:57 1998  Tim Janik  <timj@gtk.org>
6834
6835         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_set_state): check for
6836         != 0 on the argument.
6837
6838         * gtk/gtktable.h: 
6839         * gtk/gtktable.c: new function gtk_table_resize() which allowes
6840         shrinking and expanding of tables. implementation of widget arguments
6841         and child arguments. many signedness corrections.
6842
6843 Mon Jun 15 04:15:03 1998  Tim Janik  <timj@gtk.org>
6844
6845         * gtk/gtkbox.c (gtk_box_set_child_packing): queue the resize for the box
6846         not only the child, otherwise we might end up taking away other
6847         childrens space after the resize.
6848
6849         * gtk/gtkitemfactory.c (gtk_item_factory_parse_menu_path): if we parse
6850         an unknown menu path from any source, that path must always be flagged
6851         as "modified", since we don't really know whether it has its default
6852         value or not.
6853
6854         * gtk/gtktree.c:
6855         * gtk/gtkpacker.c:
6856         * gtk/gtknotebook.c:
6857         * gtk/gtkmenushell.c:
6858         * gtk/gtklist.c:
6859         * gtk/gtkpaned.c:
6860         * gtk/gtkfixed.c: 
6861         * gtk/gtkbutton.c: implement gtk_*_child_type functions.
6862
6863         * gtk/gtkbox.h: 
6864         * gtk/gtkbox.c: type corrections for expand, fill, padding and pack_type
6865         arguments. implemented child arguments.
6866
6867         * more GtkType and macro fixups.
6868
6869 Sun Jun 14 16:30:02 1998  Tim Janik  <timj@gtk.org>
6870
6871         * gtk/gtkcheckbutton.h: GtkType and macro fixups.
6872
6873         * gtk/gtkclist.h: exported the prototypes for gtk_clist_get_vadjustment
6874         and gtk_clist_get_hadjustment.
6875
6876         * gtk/gtkcontainer.c:
6877         implementation of children arguments, new class member functions
6878         (child_type), (get_child_arg) and (set_child_arg) plus a new field
6879         n_child_args.
6880         (gtk_container_child_type): new function which returns the type of a
6881         child that the container expects for its next addition.
6882         (gtk_container_add_child_arg_type): new function to introduce a new
6883         child argument at class creation time.
6884         (gtk_container_query_child_args): new function to query all child
6885         arguments that are supported by a container class.
6886         (gtk_container_child_arg_getv): new fucntion to retrive the value of a
6887         child argument.
6888         (gtk_container_child_arg_setv): new function to set a child argument for
6889         a certain container and child combination.
6890         (gtk_container_add_with_args):
6891         (gtk_container_add_with_argv): new functions to feature addition of a
6892         new child in combination with the setting of certain child arguments.
6893
6894         * gtk/gtktypeuitils.c (gtk_type_class_init): feature initialization of
6895         GtkContainerClass.n_child_args, similar to the GtkObjectClass members.
6896         this should really be done through class cretion hooks some day.
6897
6898         * gtk/gtkcontainer.c: changed type of border_width from gint16 to
6899         guint : 16.
6900
6901         * gtk/gtkpacker.h:
6902         * gtk/gtkpacker.c: renamed all PadX and PadY to pad_x and pad_y to
6903         follow the gtk convention for lower case variable names (important
6904         for language wrappers and widget arguments), and made them guint : 16.
6905
6906         * examples/packer/pack.c: adaptions for the case converted GtkPacker
6907         fields.
6908
6909 Fri Jun 12 16:33:23 1998  Tim Janik  <timj@gtk.org>
6910
6911         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc_scanner): do not
6912         change the character pair for single line comments.
6913         (gtk_item_factory_parse_rc): use the cpair_comment_signle specified in
6914         GtkItemFactoryClass.
6915         (gtk_item_factory_parse_rc_string): likewise.
6916
6917 Mon Jun 15 23:39:44 1998  Owen Taylor  <otaylor@gtk.org>
6918
6919         * gtk/gtkfontsel.[ch] (gtk_font_selection_dialog_init): Moved font
6920         lists from the klass structure to a static structure
6921         in gtkfontsel.c; cleans up global the namespace.
6922
6923 Mon Jun 15 22:16:10 1998  Owen Taylor  <otaylor@gtk.org>
6924
6925         * gtk/makeenums.pl (parse_entries): Fix (untriggered)
6926         bug with /*< skip >*/ and remove warning.
6927         
6928 Mon Jun 15 20:14:09 1998  Owen Taylor  <otaylor@gtk.org>
6929
6930         * gtk/Makefile.am: Made the gtkmarshal.* generation
6931         rules maintainer-only.
6932
6933 Mon Jun 15 16:29:45 1998  Owen Taylor  <otaylor@gtk.org>
6934
6935         * gdk/gdktypes.h gdk/gdkprivate.h gtk/gtk*.h 
6936           gtk/Makefile.am gtk/makenums.pl 
6937
6938         Removed out the G_ENUM/FLAGS mechanism in favor
6939         of a perl script that parses the standard headers
6940         (with occasional /*< nick=foo >*/ style overrides)
6941         and extracts the enumerations.
6942
6943           gtk/maketypes.awk: Small improvments to the
6944           translation of names. (Avoid splitting gc into
6945           g_c_.)
6946         
6947 Mon Jun 15 16:25:44 1998  Owen Taylor  <otaylor@gtk.org>
6948
6949         * gtk/gtk.h gtk/gtkfontsel.[ch]: 
6950         Damon Chaplin's <DAChaplin@email.msn.com> Font selection widget.
6951         
6952 Mon Jun 15 15:58:34 1998  Owen Taylor  <otaylor@gtk.org>
6953
6954         * gtk/gtkentry.c:
6955         - Restored gtk_entry_adjust_scroll to static 
6956         - Changed text positioning code so that we always
6957           display as large a portion of the text as possible.
6958
6959 Mon Jun 15 15:42:12 1998  Owen Taylor  <otaylor@gtk.org>
6960
6961         * gtk/gtktext.c (gtk_text_finalize): Free internal
6962         structures of text widget. Also, unreference pixmaps
6963         when unrealizing.
6964         
6965 Sat Jun 13 19:14:39 1998  Owen Taylor  <otaylor@gtk.org>
6966
6967         * gdk/gdkinputcommon.h (gdk_input_device_new): Change
6968         3.3.1 bug workaround to number keys starting at 1.
6969
6970 Sat Jun 13 11:56:57 1998  Owen Taylor  <otaylor@gtk.org>
6971
6972         * docs/gtk_tut.sgml: Fixed urls for complete example
6973         source for scribble+widget-writing examples.
6974
6975 Sat Jun 13 11:48:26 1998  Owen Taylor  <otaylor@gtk.org>
6976
6977         * gdk/gdkpixmap.c (gdk_pixmap_extract_color): 
6978         Patch from Tom Bech <tomb@ii.uib.no>, to handle color
6979         specs of the form c #abcdef [ more keys ] properly.
6980
6981 Sat Jun 13 10:51:56 1998  Stefan Jeske  <stefan@gtk.org>
6982
6983         * gtkspinbutton.h gtkspinbutton.c testgtk.c 
6984         (gtk_spin_button_set_shadow_type):
6985         New API to set the shadow type of the arrow panel.
6986
6987 Fri Jun 12 21:20:42 1998  Owen Taylor  <otaylor@gtk.org>
6988
6989         * gtk/gtkoptionmenu.c (gtk_option_menu_expose): Removed
6990         code for drawing the child in two places at once. Unfortunately,
6991         not only does it not work anymore (because reparenting has
6992         been fixed), but it also triggers reparent/expose loops
6993         in some cases.
6994
6995         * gtk/gtkoptionmenu.c (gtk_option_menu_remove_contents): Removed
6996         an unecessary unrealize.
6997
6998 Fri Jun 12 21:18:56 1998  Owen Taylor  <otaylor@gtk.org>
6999
7000         * gdk/gdkwindow.c (gdk_window_reparent): Update the
7001           old and new parents' child window lists properly.
7002
7003 Fri Jun 12 09:24:47 1998  Tim Janik  <timj@gtk.org>
7004
7005         * gtk/gtkpacker.h:
7006         * gtk/gtkpacker.c: renamed enum GtkAnchor and GtkSide to GtkAnchorType
7007         and GtkSideType, to be consistent with the rest of Gtk's enum
7008         definitions. wrapped the enum definitions with the G_ eunm wrappers.
7009         spelled out the GTK_ANCHOR_* enum values, since single letters don't
7010         work out corectly as nick-names (left the old values as aliases).
7011         some signdness corrections (border-width, spacing), could stand more.
7012
7013 Thu Jun 11 14:38:33 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
7014
7015         * gtk/gtkpacker.c, gtk/gtkpacker.h, gtk/gtk.h, gtk/Makefile.am: 
7016           Added gtkpacker
7017
7018         * examples/packer/pack.c, examples/packer/Makefile: Added
7019           gtkpacker example
7020
7021 Thu Jun 11 13:09:00 1998  Owen Taylor  <otaylor@gtk.org>
7022
7023         * gtk/gtktext.c (remove_cache_line): Fixed broken
7024         list-removal code.
7025
7026         * gtk/gtktext.c: (gtk_text_delete_(forward/backward)_cahr)
7027         Check bounds before deleting.
7028
7029 Wed Jun 10 23:21:33 1998  Owen Taylor  <otaylor@gtk.org>
7030
7031         * autogen.sh: Support ACLOCAL_FLAGS
7032
7033 Wed Jun 10 20:54:37 1998  Owen Taylor  <otaylor@gtk.org>
7034
7035         * gtk-config.in: Added missing quotes.
7036
7037 Wed Jun 10 18:44:22 PDT 1998 Manish Singh <yosh@gimp.org>
7038
7039         * gtk/gtkfeatures.in: #define GTK_HAVE_ACCEL_GROUP
7040
7041 1998-06-10  Raja R Harinath  <harinath@cs.umn.edu>
7042
7043         * acconfig.h (GTK_COMPILED_WITH_DEBUGGING): Renamed from
7044         G_COMPILED_WITH_DEBUGGING.
7045
7046         * configure.in (fd_set): Explain check better.
7047
7048         * acinclude.m4: New file.  Contains `libtool.m4' from libtool-1.2,
7049         the version from which gtk+'s libtool forked.  Needed for people
7050         who use post-1.2 alphas of libtool.
7051
7052 Wed Jun 10 19:36:35 1998  Owen Taylor  <otaylor@gtk.org>
7053
7054         * glib/* Moved to glib module
7055
7056         * INSTALL Makefile.am acconfig.h autogen.sh configure.in
7057           gtk-config.in gtk.m4 gdk/Makefile.am gtk/Makefile.am
7058
7059           configuration changes for the above:
7060          
7061           - Use AM_PATH_GLIB by default to find glib; also accept
7062             a --with-glib option for using an uninstalled glib.
7063          
7064           - Put --enable-debug information into config.h so
7065             that we rebuild when it changes. (was in glibconfig.h)
7066
7067 Wed Jun 10 22:23:27 1998  Lars Hamann  <lars@gtk.org>
7068
7069         * gtk/gtkctree.c (draw_row): adapted clist pixmap clipping
7070
7071         * gtk/gtknotebook.h (struct _GtkNotebookClass):
7072         * gtk/gtknotebook.c (gtk_real_notebook_switch_page): 
7073         added missing argument (according to Joseph Coleman's bug report)
7074
7075         * gtk/gtknotebook.c (gtk_notebook_set_focus_child): new class
7076         function to fix notebook focus handling
7077         
7078 Wed Jun 10 12:57:03 1998  Owen Taylor  <otaylor@gtk.org>
7079
7080         * gdk/gdkcc.c glib/ghash.c glib/glib.h glib/gstring.c
7081           glib/gutils.c glib/testglib.c glib/gdataset.c
7082           gtk/gtkaccelgroup.c gtk/gtkmain.c gtk/gtksignal.c
7083           gtk/gtktext.c gtk/gtkbindings.c:
7084
7085          renamed g_const_pointer => gconstpointer
7086
7087 Wed Jun 10 06:25:17 1998  Tim Janik  <timj@gtk.org>
7088
7089         * gdk/gdk.c (gdk_init): prevent gdk_init() from segfaulting when
7090         invoked with (NULL, NULL); (this worked sometime ago).
7091
7092         * gtk/gtktypeutils.h: 
7093         * gtk/gtktypeutils.c: enum and flags type creation can now be done
7094         through gtk_type_register_enum() and gtk_type_register_flags(),
7095         which allow to specify the enum value arrays directly.
7096         the NULL terminated value arrays can be retrived through
7097         gtk_type_enum_get_values() and gtk_type_flags_get_values();
7098         (gtk_type_children_types): new function to query derived types.
7099
7100 1998-06-09  Raja R Harinath  <harinath@cs.umn.edu>
7101
7102         * gtk/Makefile.am (gtkmarshal.c gtkmarshal.h): Pass $srcdir in
7103         environment to genmarshal.pl.
7104         (gtk.defs,gtktypebuiltins*): Add $(srcdir) where needed (in the
7105         rule), and removed it where not needed (in the dependencies).
7106
7107         * gtk/genmarshal.pl: Look for `gtkmarshal.list' in $srcdir.
7108
7109 Tue Jun  9 18:44:57 1998  Owen Taylor  <otaylor@gtk.org>
7110
7111         * gtk/gtkobject.c: Removed g_object_pointer_hash, which
7112         was just g_direct_hash.
7113
7114 Mon May 25 19:54:20 1998  Owen Taylor  <otaylor@gtk.org>
7115
7116         * configure.in: x_libs=, not $x_libs=. Enough said.
7117           (Case only hit for --disable-xshm)
7118         
7119 Mon May 25 12:08:14 1998  Owen Taylor  <otaylor@gtk.org>
7120
7121         * configure.in (LDFLAGS): Add to $CFLAGS and $LDFLAGS
7122           when testing for X libraries, don't replace them. Because
7123           the user might have specified the path to the X libraries
7124           themself before running configure.
7125
7126         * examples/**.c: Changed all gpointer * to gpointer
7127         
7128 1998-06-09  Federico Mena Quintero  <federico@nuclecu.unam.mx>
7129
7130         * gtk/gtkhandlebox.h (struct _GtkHandleBox): Removed the
7131         fleur_cursor field.  Now the cursor is created/destroyed on demand
7132         by the routines that need it.
7133
7134         * gtk/gtkhandlebox.c (gtk_handle_box_button_changed): 
7135         (gtk_handle_box_motion): The fleur cursor is created and destroyed
7136         only when needed.
7137
7138 Tue Jun  9 09:57:09 1998  Tim Janik  <timj@gtk.org>
7139
7140         * gtk/gtktypeutils.h: 
7141         * gtk/gtktypeutils.c: renamed the newly created gtk_enum_get_values and
7142         gtk_enum_set_values to gtk_type_enum_get_values and
7143         gtk_type_enum_set_values respectively, since they are actually type
7144         system features.
7145
7146         * gtk/gtktypebuiltins_evals.c: oops, screwed the NULL termination with
7147         my last commit. ;)
7148
7149 Tue Jun  9 01:57:23 1998  Tim Janik  <timj@gtk.org>
7150
7151         * gtk/gtkselection.h: 
7152         * gtk/gtkselection.c: new functions gtk_selection_data_copy and
7153         gtk_selection_data_free.
7154
7155         * gtk/gtkwidget.c (gtk_widget_class_init): fixed gtk_signal_new() call
7156         for "selection_received", which was completely bogus.
7157         * other fixups to gtk_signal_new() calls all over the place.
7158
7159         * gtk/gtktypebuiltins.h: types as variables (formerly macros).
7160         * gtk/gtktypebuiltins_vars.c: type variable implementations.
7161         * gtk/gtktypebuiltins_ids.c: array entries for builtin type
7162         declarations.
7163         * gtk/gtktypebuiltins_evals.c: enum value arrays.
7164         * gtk/gtk-boxed.defs: gtk and gdk structure definitions, used to build
7165         gtk.defs.
7166         * gtk/gtk.defs: generated file with scheme syntax for type definitions
7167         of gtk and gdk structures and enums.
7168         * gtk/gtktypeutils.h: 
7169         * gtk/gtktypeutils.c: reworked type ids, so they are variables not
7170         macros anymore (this fixes binary incompatibility with new enum
7171         definitions).
7172
7173         * gtk/gtkwidget.c (gtk_widget_real_key_press_event): proccess possible
7174         key bindings for this widget.
7175         * gtk/gtkwindow.c (gtk_window_key_press_event): chain parent class'
7176         handler.
7177
7178         * gtk/gtkobject.h:
7179         * gtk/gtkobject.c: removed gtk_object_class_new_user_signal_no_recurse()
7180         again. new functions gtk_object_class_user_signal_new () and
7181         gtk_object_class_user_signal_newv (), to feature the GtkSignalRunType
7182         flag on the signal creation.
7183
7184 Mon Jun  8 20:52:21 1998  Tim Janik  <timj@gtk.org>
7185
7186         * gtk/gtkcontainer.h: new signal GtkContainer::set_focus_child.
7187
7188 Mon Jun  8 02:52:37 1998  Tim Janik  <timj@gtk.org>
7189
7190         * gdk/gdkprivate.h: 
7191         * gdk/gdktypes.h: 
7192         * gtk/gtkprivate.h: 
7193         * gtk/gtkwidget.h: 
7194         * gtk/gtkobject.h: wrapped enum definitions with glib macros.
7195
7196         * reworked enum value array generation code. gtk.defs is a generated
7197         file now.
7198
7199 Sun Jun  7 14:34:31 1998  Tim Janik  <timj@gtk.org>
7200
7201         * gtk/gtkitemfactory.c (gtk_item_factory_create_menu_entries): feature
7202         check menu items in the compatibility code (this required me to remove
7203         the "<check>" part from the menu item name, grrr).
7204
7205 1998-06-07  Marius Vollmer  <mvo@zagadka.ping.de>
7206
7207         * gdk/gdk.h (gdk_color_copy, gdk_color_free): New prototypes.
7208         * gdk/gdk.c (gdk_color_copy, gdk_color_free): New functions.
7209         
7210 Sun Jun  7 10:53:02 1998  Tim Janik  <timj@gtk.org>
7211
7212         * gtk/gtkitemfactory.h: 
7213         * gtk/gtkitemfactory.c: further additions to fit the gimp's code.
7214         additions to the dumping code to feature GtkPatternSpec.
7215         even found a bug to fix in the original code ;)
7216         
7217 Sun Jun  7 09:36:04 1998  Tim Janik  <timj@gtk.org>
7218
7219         * gtk/gtkitemfactory.c: support different types of callbacks, to
7220         maintain existing code.
7221
7222 Sat Jun  6 06:01:24 1998  Tim Janik  <timj@gtk.org>
7223
7224         * gtk/gtksignal.c (gtk_signal_emitv): fixed an assertment.
7225
7226         * gtk/makeenums.awk: a script to generate the GtkEnumValue arrays from,
7227         this should eventually be done by gentypeinfo.el somewhen.
7228         * gtk/gtkenumvalues.c: new generated file to hold GtkEnumValue arrays.
7229
7230         * gtk/gtktypeutils.h: new function gtk_enum_values() to retrive all the
7231         enum values of an enum type.
7232
7233         * gtk/gtk.defs:
7234         * gtk/gtkcurve.h: 
7235         * gtk/gtkobject.h: 
7236         * gtk/gtkprivate.h: 
7237         * gtk/gtkwidget.h:
7238         * gtk/gtkenums.h: 
7239         brought enum/flags definitions in sync, added a few more enum
7240         definitions for bindings and pattern matching.
7241
7242         * some more macro and GtkType fixups in various places.
7243
7244         * gdk/gdktypes.h (enum): added a new value GDK_AFTER_MASK, which is used
7245         as a key-release modifier for the binding system.
7246
7247 Fri Jun  5 06:06:06 1998  Tim Janik  <timj@gtk.org>
7248
7249         * gtk/gtkmenu.h (struct _GtkMenu): removed GList*children, since it
7250         was a stale list pointer that is already present in GtkMenuShell.
7251
7252         * gtk/gtkmenushell.h (struct _GtkMenuShellClass): added a signal
7253         GtkMenuShell::selection_done which is emitted after the menu shell
7254         poped down again and all possible menu items have been activated.
7255
7256 Thu Jun  4 02:20:42 1998  Tim Janik  <timj@gtk.org>
7257
7258         * gtk/gtkmenushell.c (gtk_menu_shell_button_release): flush the x-queue
7259         before activation of the menuitem, so the menu is actually taken off the
7260         screen prior to any menu item activation.
7261
7262         * gtk/gtkctree.c (gtk_ctree_get_row_data): allow function invokation
7263         for NULL nodes.
7264
7265         * gtk/gtkwidget.h:
7266         * gtk/gtkwidget.c: new function gtk_widget_stop_accelerator to stop
7267         the emission of the "add-accelerator" signal on a widget. this is
7268         usefull to prevent accelerator installation on certain widgets.
7269
7270         * gtk/gtknotebook.c (gtk_notebook_menu_item_create): keep the menu
7271         labels left justified, by setting their alignment. stop accelerator
7272         installation for the menu items, since we use dynamic menus.
7273
7274 Wed Jun  3 06:41:22 1998  Tim Janik  <timj@gtk.org>
7275
7276         * gtk/gtkmenufactory.c: adaptions to use the new accel groups. people
7277         should *really* use GtkItemFactory. this is only for preserving source
7278         compatibility where possible, use of GtkMenuFactory is deprecated as of
7279         now.
7280
7281         * gtk/gtkobject.h (gtk_object_class_add_user_signal): new function
7282         to create user signals of type GTK_RUN_NO_RECURSE. don't know why i
7283         missed this possibility when i added gtk_object_class_add_user_signal
7284         in late january.
7285
7286         * gtk/gtkmain.c (gtk_init): ignore subsequent function calls.
7287
7288 Sun May 31 07:31:09 1998  Tim Janik  <timj@gtk.org>
7289
7290         * gtk/gtkaccelgroup.h: 
7291         * gtk/gtkaccelgroup.c: new implementation of the accelerator concept.
7292
7293         * gtk/gtkaccellabel.h: 
7294         * gtk/gtkaccellabel.c: new widget derived from GtkLabel whitch features
7295         display of the accelerators associated with a certain widget.
7296
7297         * gtk/gtkitemfactory.h: 
7298         * gtk/gtkitemfactory.c: new widget, item factory with automatic rc
7299         parsing and accelerator handling.
7300
7301         * gtk/gtkmenu.c (gtk_menu_reposition): new function to care for
7302         positioning a menu.
7303         (gtk_menu_map): removed the allocation code.
7304         (gtk_menu_size_allocate): care for redrawing of children and resize
7305         our widget->window correctly.
7306         (gtk_menu_key_press): feature the new accelerator groups.
7307
7308         * gtk/gtkmenuitem.c (gtk_menu_item_size_allocate): reposition the
7309         submenu if neccessary.
7310
7311         * gtk/gtkmenuitem.c:
7312         * gtk/gtkcheckmenuitem.c:
7313         * gtk/gtkradiomenuitem.c: use GtkAccelLabel in the *_new_with_label()
7314         function variants.
7315
7316         * gdk/gdk.c:
7317         (gdk_keyval_from_name): 
7318         (gdk_keyval_name): new functions for keyval<->key-name associations.
7319         (gdk_keyval_to_upper): 
7320         (gdk_keyval_to_lower): 
7321         (gdk_keyval_is_upper): 
7322         (gdk_keyval_is_lower): new functions to check/translate keyvalues with
7323         regards to their cases.
7324
7325 Wed May 27 00:48:10 1998  Tim Janik  <timj@gtk.org>
7326
7327         * gtk/gtkwidget.c (gtk_widget_class_path): new function to calculate a
7328         widget's class path.
7329         (gtk_widget_path): new function to calculate a widget's name path.
7330
7331         * gtk/gtkrc.c: newly introduced GtkPatternSpec structures to speed up
7332         pattern matching, features reversed pattern matches.
7333
7334 Thu Jun  4 12:12:11 BST 1998  Tony Gale  <gale@gtk.org>
7335
7336         * examples/extract.sh, examples/extract.awk:
7337           New files to automagically extract code examples from the
7338           tutorial.
7339
7340 Tue Jun  2 20:04:45 1998  Lars Hamann  <lars@gtk.org>
7341
7342         * gtk/gtknotebook.c (gtk_notebook_page_select) (gtk_notebook_focus)
7343         * gtk/gtkcontainer.c (gtk_container_focus_move):
7344         reversed test sequence for GTK_WIDGET_CAN_FOCUS and GTK_IS_CONTAINER
7345
7346 Tue Jun  2 13:04:06 BST 1998  Tony Gale  <gale@gtk.org>
7347
7348         * docs/gtk_tut.sgml: minor changes to support auto
7349           extraction of example code
7350
7351 Mon Jun  1 12:47:56 BST 1998  Tony Gale  <gale@gtk.org>
7352
7353         * docs/gtk_tut_it.sgml: Update of Italian Tutorial
7354           to Tutorial of 24th May, from Daniele Canazza <dcanazz@tin.it>
7355
7356 Fri May 29 13:53:57 BST 1998  Tony Gale  <gale@gtk.org>
7357
7358         * docs/gtk_tut.sgml:
7359           - new section on Events
7360           - change all delete_event callbacks to include
7361             a GdkEvent parameter
7362           - clean up the formatting
7363
7364         * examples - helloworld.c, helloworld2.c, notebook.c,
7365           packbox.c, pixmap.c, progressbar.c, radiobuttons.c,
7366           rulers.c, table.c, wheelbarrow.c: change all delete_event
7367            callbacks to include a GdkEvent parameter.
7368
7369 1998-05-26  Federico Mena Quintero  <federico@nuclecu.unam.mx>
7370
7371         * gdk/gdktypes.h (GdkCrossingMode): New enumeration for the "mode"
7372         field of crossing events.
7373         (struct _GdkEventCrossing): Added the following fields: time, x,
7374         y, x_root, y_root, mode, focus, state.
7375
7376         * gdk/gdk.c (gdk_event_translate): Fill in the new fields of the
7377         crossing event structure.
7378
7379         * gtk/gtkfeatures.h (GDK_HAVE_FULL_CROSSING_EVENT): Annotate
7380         changes to the crossing event structure.
7381
7382 Tue May 26 15:51:28 1998  Radek Doulik  <gis@academy.cas.cz>
7383
7384         * gdk/gdk.c: include gdkx.h always (for GDK_ROOT_WINDOW)
7385
7386 Sun May 24 12:11:38 BST 1998  Tony Gale  <gale@gtk.org>
7387
7388         * docs/gtk_tut.sgml:
7389            - GtkTooltips, update to current API
7390            - change all 'gpointer *data' to 'gpointer data'
7391            - other minor changes
7392
7393 Sat May 23 21:54:05 1998  Owen Taylor  <otaylor@gtk.org>
7394
7395         * configure.in (LDFLAGS): Bomb out with a moderately
7396           helpful message if detection of X libraries fails.
7397
7398 Sat May 23 18:57:06 1998  Owen Taylor  <otaylor@gtk.org>
7399
7400   [ Combination of:
7401      gtk-rrh-980412-0.patch (Raja R Harinath <harinath@cs.umn.edu>)
7402      gtk-jbuhler-980516-0 (Jeremy Buhler <jbuhler@cs.washington.edu>) ]
7403
7404         * gdk/gdk.h gdk/gdkcc.c gdk/gdkfont.c gtk/gtkmain.c
7405           gtk/gtksignal.c gtk/gtktext.c: 
7406
7407           Fixups for warnings from adding const to type of GHashFunc,
7408           GCompareFunc
7409         
7410         * gtk/gtkcombo.c (gtk_combo_entry_key_press): Minor style/
7411           ansi-warnings fixups.
7412
7413 Sat May 23 17:48:58 1998  Owen Taylor  <otaylor@gtk.org>
7414
7415         * gtk/gtkeventbox.c (gtk_event_box_size_allocate): 
7416         Locate child at (border_width,border_width), not
7417         (2*border_width,2*border_width). [ The border is _outside_
7418         widget->window ]
7419         
7420         * gdk/gdk.[ch]: added gdk_screen_width_mm/gdk_screen_height_mm
7421           functions. [From: Alexander Larsson <alla@lysator.liu.se> ]
7422
7423 1998-05-22  Miguel de Icaza  <miguel@nuclecu.unam.mx>
7424
7425         * gtk/gtkfeatures.h.in: Define GTK_HAVE_RC_SET_IMAGE_LOADER, to be
7426         used in gnome-libs
7427
7428 1998-05-22    <sopwith@redhat.com>
7429
7430         * gtk/gtkeventbox.c: Pass size_allocate on to the child
7431         regardless of whether it is visible or not. Also
7432         locate child at (border_width,border_width), not (0,0)
7433
7434 Fri May 22 03:02:40 1998  Owen Taylor  <otaylor@gtk.org>
7435
7436         * gtk/gtkhandlebox.c: Added style_set handler.
7437
7438 Fri May 22 02:55:57 1998  Owen Taylor  <otaylor@gtk.org>
7439  [ From: Chris Lahey  <clahey@umich.edu> ]
7440         
7441         * gtk/gtkeditable.c, gtk/gtkeditable.h,
7442           gtk/gtktext.c, gtk/gtkentry.c: Added get_position,
7443           and set_position functions to get and set the cursor position.
7444
7445         * gtk/gtkeditable.c: Restored "insert_text" and "delete_text" to
7446           signal status. Make GtkText do user-controlled insertion
7447           and deletion through the Editable widget so that these
7448           signals are properly emitted.
7449
7450         * gtk/gtkentry.c: Changed gtk_entry_set_visibility to 
7451           display asterisks instead of empty space when visible = FALSE)
7452
7453 Fri May 22 08:51:10 CEST 1998  Paolo Molaro <lupus@debian.org>
7454
7455         * gtk/gtkclist.c: use GTK_TYPE_GDK_EVENT in (un)?select_row
7456         signal.
7457
7458 1998-05-21    <sopwith@redhat.com>
7459
7460         * gtk/gtkrc.[ch]: gtk_rc_set_image_loader() - allow apps to set a
7461         custom routine for loading images specified in gtkrc's.
7462
7463 Tue May 19 23:41:04 1998  Owen Taylor  <otaylor@gtk.org>
7464
7465         * configure.in: Use pthread_attr_init() as a test function,
7466         since most of the rest of -lpthread is macros on DU4.
7467
7468 Tue, 19 May 1998 09:03:03 +0200  Paolo Molaro <lupus@debian.org>
7469
7470         * gtk/gtkcombo.c: implemented completion in the entry.
7471
7472 1998-05-18    <sopwith@moebuis.labs.redhat.com>
7473
7474         * gtk/gtk{debug.h,signal.c,main.c}: Allow GTK_DEBUG=signals
7475
7476 Mon May 18 04:01:41 1998  Tim Janik  <timj@gtk.org>
7477
7478         * gtk/gtkwidget.c (gtk_widget_class_init): changed "proximity-in-event",
7479         "drop-data-available-event", "drop-enter-event" and "drop-leave-event"
7480         to be of runtype GTK_RUN_LAST.
7481
7482         * gtk/gtkcontainer.c (gtk_container_class_init): likewise for
7483         "need-resize".
7484
7485         * gtk/gtktipsquery.c (gtk_tips_query_class_init): likewise for
7486         "widget-selected".
7487
7488 Sat May 16 09:04:32 1998  Tim Janik  <timj@gtk.org>
7489
7490         * gtk/gtkfilesel.c (gtk_file_selection_key_press): g_strdup() the
7491         text retrived from GtkEntry. only intercept the Tab key if there
7492         was some text to complete.
7493
7494 Fri May 15 21:16:54 1998  Owen Taylor  <otaylor@gtk.org>
7495
7496         Basic thread-awareness:
7497
7498         * acconfig.h configure.in: New option --with-threads=[yes/posix/no]
7499
7500         * gdk/Makefile.am gdk/gdkthreads.c: Added new functions 
7501         gdk_threads_[init/enter/leave] for applications, plus
7502         gdk_threads_wake to wake the mainloop thread out of
7503         the select().
7504
7505         * gtk/Makefile.am: gtk/testthreads.c: Test program for threads
7506
7507 Fri May 15 12:08:48 1998  Owen Taylor  <otaylor@gtk.org>
7508
7509         * gtk/testgtk.c (list_clear): Account for the fact
7510         that gtk_list_clear_items is not inclusive. (Clears
7511         [start, end))
7512
7513 Fri May 15 12:31:27 1998  rodo  <doulik@karlin.mff.cuni.cz>
7514
7515         * gdk/gdk.c: include gdkkeysyms.h always
7516         
7517
7518 Fri May 15 09:44:10 1998  Tim Janik  <timj@gtk.org>
7519
7520         * gtk/gtkwidget.h (struct _GtkWidgetClass): corrected returntype of
7521         the visibility_notify_event method and changed method order.
7522
7523 1998-05-14    <sopwith@moebuis.labs.redhat.com>
7524
7525         * gtk/gtkwidget.[ch] Added visibility_notify_event to GtkWidget
7526
7527 Thu May 14 03:04:43 1998  Tim Janik  <timj@gtk.org>
7528
7529         * gtk/gtk.defs: added GtkButtonBoxStyle and GtkOrientation definitions
7530         from Olli Helenius <ollhel@batman.jytol.fi>.
7531
7532         * gtk/gtktypeutils.c (gtk_type_free): new function to take care about
7533         freeing types.
7534         (gtk_type_set_chunk_alloc): new function to allow allocation of new
7535         types from a mem_chunk of certain size (n_chunks==0 indicates allocation
7536         thorugh g_malloc).
7537
7538         * gtk/gtkobject.c (gtk_object_finalize): free an object through
7539         gtk_type_free().
7540
7541         * gtk/gtkbutton.c (gtk_button_get_type): set chunk preallocation for
7542         GtkButtons to 16.
7543         * gtk/gtkmenuitem.c (gtk_menu_item_get_type): likewise (16).
7544         * gtk/gtklabel.c (gtk_label_get_type): likewise (32).
7545
7546 Wed May 13 00:53:52 1998  Owen Taylor  <otaylor@gtk.org>
7547
7548         * gtk/gtktypeutils.c gtk/gtksignal.c gdk/gdkdnd.c: A few more 
7549           GPOINTER_TO_UINT fixes.
7550
7551         * gtk/gtksignal.c: Include <string.h> for memset.
7552
7553 Tue May 12 23:10:53 1998  Owen Taylor  <otaylor@gtk.org>
7554         (Maximilian Bisani <bisani@kawo2.rwth-aachen.de>: gtk-bisani-980320-0)
7555
7556         * gtk/gtkvruler.c gtk/gtkhruler.c gtk/gtkruler.h: 
7557         Cleanups, comments and the ability to have rulers with 
7558         a reversed direction.
7559
7560 Tue May 12 19:37:55 1998  Owen Taylor  <otaylor@gtk.org>
7561
7562         * gtk/gtkrc.c (gtk_rc_parse_file): Fixed up a stat()
7563         that Sopwith missed when changing stat => lstat.
7564
7565 Tue May 12 19:19:29 1998  Owen Taylor  <otaylor@gtk.org>
7566
7567         * gtk/gtkinputdialog.c gtk/gtkgamma.c gtk/gtkrc.c
7568           gtk/gtkcolorsel.c gtk/gtkclist.c gtk/testgtk.c: Use
7569         GPOINTER_TO_INT/GINT_TO_POINTER macros where appropriate.
7570
7571         * gdk/gdk.c: Print sizeof() results
7572         as g_print("%ld", (glong)sizeof(foo)), to deal with
7573         sizeof() being long on Alpha's.
7574
7575         * gtk/testgtk.c: include <string.h> for strlen
7576
7577 Tue May 12 16:56:35 1998  Owen Taylor  <otaylor@gtk.org>
7578         (James A <jamesa@demon.net> : gtk-jamesa-980511-4.patch)
7579         
7580         * gtk/gtkbbox.h gtk/gtkcolorsel.h gtk/gtkvbbox.h:
7581         Changed #include "gtkfoo.h" to #include <gtk/gtkfoo.h>
7582
7583         * gtk/gtkwindow.[ch]: Added const to gtk_window_set_wmclass
7584
7585 Tue May 12 15:16:10 1998  Owen Taylor  <otaylor@gtk.org>
7586         (From: Christopher James Lahey <clahey@umich.edu>)
7587         
7588         * gtk/gtkbutton.[ch] gtk/gtkenums.h gtk/gtktoolbar.[ch]
7589           gtk/testgtk.c:
7590
7591         Added 'relief' for buttons - they can be either GTK_RELIEF_NORMAL
7592         (old style), or GTK_RELIEF_NONE - no relief in the NORMAL
7593         state. Added gtk_toolbar_{set,get}_button_relief, which set/get
7594         the default relief for the toolbars buttons. Added an
7595         toggle for the toolbar test in testgtk.c.
7596
7597 Tue May 12 00:24:59 1998  Owen Taylor  <otaylor@gtk.org>
7598
7599         * docs/gtk-config.1: Rewritten and hopefully improved.
7600
7601 Mon May 11 20:26:39 PDT 1998 Manish Singh <yosh@gimp.org>
7602
7603         * docs/Makefile.am
7604         * docs/gtk-config.1: added man page for gtk-config by Ben Gertzfield
7605
7606 1998-05-11  Federico Mena Quintero  <federico@nuclecu.unam.mx>
7607
7608         * gtk/gtkpreview.c (gtk_preview_realize): Create the window using
7609         GtkPreview's visual and colormap, otherwise things can BadMatch.
7610
7611         * gtk/testgtk.c (create_color_preview): 
7612         (create_gray_preview): Removed pushing/popping of visual/colormap
7613         now that GtkPreview does things correctly.
7614
7615         * gtk/gtkcolorsel.c (gtk_color_selection_draw_wheel_frame): 
7616         (gtk_color_selection_draw_wheel): Pick the style from the correct
7617         place (the colorsel->wheel_area widget) so that the GCs will match
7618         with where we are going to paint to.
7619
7620         * gtk/testgtk.c (create_color_selection): Removed pushing/popping
7621         of visual/colormap now that GtkColorSelection does things the
7622         right way.
7623
7624 Mon May 11 21:04:51 1998  Owen Taylor  <otaylor@gtk.org>
7625
7626         * gtk/gtkwindow.c (gtk_real_window_move_resize): Use the
7627         previously unused window->need_resize flag to mark if a window's
7628         descendents changed size while the window was not visible. In this
7629         case, when the window becomes visible, we reallocate everything,
7630         since we didn't keep track of what actually changed.
7631
7632         (Fixes bug where changing the popdown strings of a
7633         combo to something of the same length caused them to
7634         blank out, as reported by Todd Dukes <tdukes@ibmoto.com>)
7635
7636 Tue May 12 02:31:57 1998  Tim Janik  <timj@gtk.org>
7637
7638         [security audit by Alan Cox]
7639
7640         * gtk/gtkobject.c (gtk_object_get_arg_type): check for arg_name to not
7641         exceed maximum assumed size.
7642
7643         * gtk/gtkmenufactory.c (gtk_menu_factory_create): check that `path' does
7644         not exceed maximum assumed size.
7645         (gtk_menu_factory_remove): likewise.
7646         (gtk_menu_factory_find_recurse): likewise.
7647
7648 Mon May 11 23:53:38 1998  Tim Janik  <timj@gtk.org>
7649
7650         * gtk/gtkwidget.c (gtk_widget_queue_resize): queue the idle_sizer with
7651         GTK_PRIORITY_INTERNAL - 1, so widgets get first resized and then
7652         redrawn if that is still neccessary. don't allow queueing of already
7653         destructed objects.
7654         (gtk_widget_idle_sizer): proccess the resize queue in a save manner, so
7655         widgets which are in the queue can be destroyed safely, handle
7656         requeueing properly.
7657         (gtk_widget_idle_draw): proccess the redraw queue in a save manner, so
7658         widgets which are in the queue can be destroyed/unrealized safely.
7659
7660 Mon May 11 17:54:44 BST 1998 Tony Gale  <gale@gtk.org>
7661
7662         * gtkfaq.sgml: add question on multi-threading,
7663           minor URL cleanups.
7664
7665 Mon May 11 09:56:45 1998  Tim Janik  <timj@gtk.org>
7666
7667         * configure.in (cflags_set): preserve automake CFLAGS.
7668
7669         * Makefile.am: fully rename the created libraries to libgtk-1.1.la
7670         and libgdk-1.1.la. this means we need to change certain portions of
7671         the Makefile.am on major/minor version bumps.
7672
7673         * ltmain.sh: the -release option is not required anymore.
7674         
7675         * gtk/gtkobject.h (gtk_trace_referencing): compile time check the type
7676         of the first argument to be of type GtkObject. unconditionally compile
7677         this function. removed __GNUC__ dependancy of the gtk_object_ref and
7678         gtk_object_unref macro wrappers for this function.
7679
7680 Mon May 11 02:31:19 1998  Tim Janik  <timj@gtk.org>
7681
7682         * gtk/gtkobject.h:
7683         * gtk/gtkobject.c:
7684         (gtk_object_data_try_key):
7685         (gtk_object_data_force_id): these are now macros substituting the old
7686         functions. we just use the corresponding g_dataset_* functions for
7687         key->id associations. (this is to assure unique key<->id associations).
7688
7689 1998-05-10  Stefan Jeske  <stefan@gtk.org>
7690
7691         * gtk/gtkctree.c (gtk_ctree_is_visible): Changed return value
7692         to gboolean.
7693
7694         * docs/gtk.texi (GtkCTree): Started documentation of GtkCTree.
7695
7696 Sat May  9 20:11:20 1998  Owen Taylor  <otaylor@gtk.org>
7697
7698         * configure.in (LIBS): Try to figure out if this
7699         is Digital Unix and we need -std1 to get the
7700         right prototypes.
7701
7702 Sat May  9 16:30:33 BST 1998 Tony Gale  <gale@gtk.org>
7703
7704         * docs/gtk_tut_it.sgml: update of Italian tutorial
7705           translation from Daniele Canazza <dcanazz@tin.it>
7706
7707 Sat May  9 02:34:41 1998  Tim Janik  <timj@gtk.org>
7708
7709         * gtk/gtkfeatures.h.in: new file used as template for
7710         * gtk/gtkfeatures.h: new file to define macros indicating newly
7711         introduced features, such as GTK_HAVE_SIGNAL_INIT.
7712
7713         * gtk/gtksignal.c:
7714         (gtk_signal_emitv_by_name):
7715         (gtk_signal_emitv):
7716         new functions to emit signals with an already provided parameter set.
7717         (provided by Kenneth Albanowski <kjahds@kjahds.com>).
7718         (gtk_signal_real_emit): prototype changes, so this functions always
7719         gets its parameters and signal structure as arguments.
7720         (gtk_signal_emit): provide the signal structure and parameter list for
7721         gtk_signal_real_emit.
7722         (gtk_signal_emit_by_name): likewise.
7723
7724 Sat May  9 00:03:12 1998  Tim Janik  <timj@gtk.org>
7725
7726         * gtk/gtksignal.c (gtk_signal_handler_unref): reflect the presence of
7727         signal connections through unsetting GTK_CONNECTED.
7728         (gtk_signal_handler_insert): reflect the presence of signal connections
7729         through setting GTK_CONNECTED.
7730         (gtk_signal_real_emit): only check for handler emissions if the object
7731         has the GTK_CONNECTED flag set.
7732         (gtk_signal_handler_pending): don't check for pending handlers if the
7733         GTK_CONNECTED flag is not set for this object.
7734
7735         * gtk/gtkobject.h (enum): new flag GTK_CONNECTED to indicate whether
7736         a GtkObject has signal handler connections.
7737
7738         * gtk/gtkobject.c (gtk_object_real_destroy): only if GTK_CONNECTED is
7739         set for this object call gtk_signal_handlers_destroy().
7740         
7741         * gtk/gtktypeutils.h (GTK_TYPE_IS_A): deprecated macro, since it caused
7742         multiple processing of macro args.
7743
7744         * gtk/gtktypeutils.c:
7745         * gtk/gtkobject.c:
7746         * gtk/gtkwidget.c:
7747         * gtk/gtksignal.c: reverted GTK_TYPE_IS_A back to gtk_type_is_a.
7748
7749 Fri May  8 21:31:50 1998  Owen Taylor  <otaylor@gtk.org>
7750
7751         * gtk/gtkwidget.c (gtk_widget_queue_draw): Free the
7752         draw-queue when we are done. 
7753
7754         (gtk_widget_queue_draw/_queu_resize): Always return
7755         FALSE and avoid having two idles at the same time.
7756         
7757 Fri May  8 21:04:00 1998  Owen Taylor  <otaylor@gtk.org>
7758
7759         * gtk/gtktext.c: Various fixes to make sure cache
7760         lines are freed if line_start_cache doesn't point to the
7761         beginning of the cache.
7762
7763 Thu May  7 09:44:22 1998  Owen Taylor  <otaylor@gtk.org>
7764
7765         * style_set improvements for GtkText and GtkEntry
7766
7767 Thu May  7 19:03:50 1998  Tim Janik  <timj@gtk.org>
7768
7769         * gtk/gtktypeutils.c (gtk_type_unique): asure that the type system has
7770         been initialized.
7771
7772 Thu May  7 12:52:45 1998  Tim Janik  <timj@gtk.org>
7773
7774         * gtk/gtkobject.c (gtk_object_set_data_by_id_full): allocate object
7775         data chunks through a global object data structure list. unlink
7776         object data before invoking its destroy function.
7777         (gtk_object_finalize): slight modification to allow usage of object
7778         data during object finalization.
7779
7780 Thu May  7 10:29:24 1998  Tim Janik  <timj@gtk.org>
7781
7782         * gtk/gtksignal.c (gtk_signal_newv): suport middle dashes ('-') in
7783         signal names, e.g. "signal-name" is now an alias for "signal_name".
7784         (gtk_signal_handler_new): allocate handlers through a global handler
7785         structure list, that's faster than memchunks.
7786         (gtk_emission_new): allocate emissions through a global emission
7787         structure list, that's faster than memchunks.
7788
7789 Thu May  7 05:14:19 1998  Tim Janik  <timj@gtk.org>
7790
7791         * gtk-config.in (--libs): postfix -lg* libraries with LT_RELEASE.
7792
7793         * ltmain.sh: added a new commandline flag -postfix similar to -release,
7794         but will immediately change the library name.
7795
7796         * gdk/Makefile.am:
7797         * gtk/Makefile.am: specify -postfix and -version-info
7798
7799         * configure.in: version bump to 1.1.0. added GTK_INTERFACE_AGE and
7800         GTK_BINARY_AGE. calculate LT_* variables for libtool.
7801
7802 1998-05-06  Federico Mena Quintero  <federico@nuclecu.unam.mx>
7803
7804         * gtk/gtkclist.c (draw_row): Fixed incorrect painting of row
7805         background (fg_set -> bg_set confusion).
7806
7807 1998-05-06  Stefan Jeske  <stefan@gtk.org>
7808
7809         * gtk/testgtk.c (unselect_all): Removed code that caused an
7810         endless loop.
7811
7812 Wed May  6 02:16:34 1998  Tim Janik  <timj@gtk.org>
7813
7814         * gtk/gtksignal.c: reimplemented the signal storage system to use a
7815         linear array rather than a hash table.
7816         be carefull *not* to keep any GtkSignal pointers across invokations
7817         of gtk_signal_next_and_invalidate() and therefore gtk_signal_new[v]().
7818         general code cleanups, made all allocations through memchunks.
7819         (gtk_signal_lookup): we now do the lookup of signals through a key_id
7820         for the signal names to avoid multiple hashing of the signal name on
7821         lookups for the several hirarchy levels of an object.
7822
7823 Tue May  5 19:49:27 1998  Owen Taylor  <otaylor@gtk.org>
7824
7825         * gdk/gdkpixmap.c: Patches from Gordon Matzigkeit
7826         to speed things up and remove code duplication.
7827
7828         Reintegrated buffer overflow patches, and added
7829         some extra paranoia.
7830         
7831 Tue May  5 17:04:14 1998  Owen Taylor  <otaylor@gtk.org>
7832
7833         * gdk/gdk.c (gdk_event_translate): A guint * was
7834         being passed where X expected a Keysym *, and
7835         keysyms are long's on Alpha Linux. This was causing
7836         segfaults in Xlib, apparently because of alignment.
7837         (Bug located by Juergen Haas <haas@forwiss.uni-passau.de>)
7838         
7839 Tue May  5 19:11:27 1998  Owen Taylor  <otaylor@gtk.org>
7840
7841         * gtk/gtkdrawingarea.c (gtk_drawing_area_realize): Always
7842         set GDK_EXPOSURE_MASK for DrawingAreas
7843
7844 Tue May  5 14:32:37 1998  Owen Taylor  <otaylor@gtk.org>
7845
7846         * gtk/gtkwidget.[ch]: removed gtk_widge_propagate_default_style
7847         (superceded by RC file reparsing capabilities)
7848
7849         * gtk/gtkwindow.c: Add handling for _GDK_READ_RFCILES client
7850         events. (Shouldn't be sent to the InputOnly leader, which
7851         it is now by gdk_event_send_clientmessage_toall
7852
7853         * gtk/testgtk.c: Added extra button to rcfiles test
7854         to send out _GDK_READ_RCFILES events.
7855         
7856 Tue May  5 11:03:00 1998  Owen Taylor  <otaylor@gtk.org>
7857
7858         * gtk/gtkselection.c (gtk_selection_clear): Fixed
7859         reversed conditionals that caused segfault on some
7860         platforms.
7861
7862 Tue May  5 00:44:47 1998  Owen Taylor  <otaylor@gtk.org>
7863
7864         * gtk/gtkcontainer.c (gtk_container_set_focus_[hv]adjustment):
7865         cast to GTK_OBJECT for gtk_object_ref.
7866
7867 Tue May  5 15:33:27 1998  Tim Janik  <timj@gtk.org>
7868
7869         * gtk/gtkmain.c (gtk_init): added gtk_signal_init() to avoid repeatedly
7870         checking for signal initialization in gtksignal.c.
7871
7872         * gtk/gtktypeutils.c (TYPE_NODES_BLOCK_SIZE): reseted this to 200 after
7873         a long debugging period ;)
7874
7875 1998-05-05  Stefan Jeske  <stefan@gtk.org>
7876
7877         * gdk/gdkgc.c gdk/gdk.h gtk/gtkctree.c (gdk_gc_set_dashes):
7878         New function to wrap XSetDashes; modified gtkctree.c to use it.
7879
7880 1998-05-04  Federico Mena Quintero  <federico@nuclecu.unam.mx>
7881
7882         * configure.in: Added $x_libs in the other_libraries field in the
7883         check for XShapeCombineMask.
7884
7885 Mon May  4 00:30:11 1998  Tim Janik  <timj@gtk.org>
7886
7887         * gtk/gtktypeutils.h (GTK_TYPE_IS_A): new macro to speedup
7888         gtk_type_is_a().
7889         * gtk/gtktypeutils.c: reimplemented the type storage system to use a
7890         linear array rather than a hash table. it actually speeded up testgtk
7891         for a *considerable* amount. be carefull *not* to keep any GtkTypeNode
7892         pointers across invokations of gtk_type_node_next_and_invalidate() and
7893         therefore gtk_type_unique()!
7894
7895         * gtk/gtkobject.h (GTK_IS_OBJECT_CLASS): new macro to test for the
7896         inheritance of a class pointer.
7897         (GTK_OBJECT): modifications for speedups.
7898         (GTK_IS_OBJECT): likewise.
7899         (GTK_OBJECT_CLASS): likewise.
7900         (suggested by owen).
7901
7902         * gtk/gtkcontainer.h (GTK_IS_CONTAINER_CLASS): new macro.
7903
7904         * gtk/gtkwidget.h (GTK_IS_WIDGET_CLASS): new macro.
7905
7906         * gtk/gtk.defs (GtkTooltips): define GtkTooltips as object not as boxed,
7907         since its derivation changed 4 month ago ;(. showed up with the unique
7908         type name checking code in gtk_type_unique().
7909
7910         * random guint->GtkType and macro fixups.
7911
7912 Sat May  2 23:14:34 1998  Owen Taylor  <otaylor@gtk.org>
7913
7914         * gtk/gtkcurve.c (gtk_curve_graph_events): Ignore
7915         Configure events that would result in a negative
7916         size.
7917
7918 Sun May  3 14:55:34 1998  Owen Taylor  <otaylor@gtk.org>
7919
7920         * docs/gtkfaq.sgml (CPPFLAGS): Added a FAQ entry about
7921         "glibconfig.h" and another about writing another IRC
7922         client.
7923
7924 Sat May  2 00:14:05 1998  Owen Taylor  <otaylor@gtk.org>
7925
7926         * gtk/gtkpreview.c (gtk_trim_cmap): Make sure the
7927         parameters to log are doubles. Digital Unix apparently
7928         is missing the argument in its prototype.
7929
7930 Sun May  3 19:04:46 1998  Owen Taylor  <otaylor@gtk.org>
7931
7932         * gtk/gtklabel.c (gtk_label_state_changed): Don't
7933         force a clear until the widget is actually on
7934         screen.
7935
7936 Sun May  3 21:32:35 1998  Owen Taylor  <otaylor@gtk.org>
7937
7938         * gdk/gdk.c (gdk_event_translate): Grab with OwnerEvents = False
7939         to make this consistent with the gtk-1-0 tree.
7940
7941 Sun May  3 13:38:22 1998  Owen Taylor  <otaylor@gtk.org>
7942
7943         * configure.in acheader.h gdk/gdkwindow.c 
7944         Check for Shape extension both on the client and server
7945         side. (And, more importantly, check for the shape extension
7946         so we may include -lXext even when compiling with --disable-xshm)
7947
7948         Don't set override_redirect on all shaped windows. It isn't
7949         necessary.
7950
7951         * gdk/gdkwindow.c: Set ->colormap to NULL for root 
7952         and foreign windows. Use this to check if we
7953         need to get the colormap from X.
7954
7955 Fri May  1 22:32:47 1998  Owen Taylor  <otaylor@gtk.org>
7956
7957         * gtk/gtkbutton.c (gtk_button_paint): Draw the areas
7958         between the default and the button always in GTK_STATE_NORMAL.
7959
7960         * gtk/gtkrange.c (gtk_range_style_set): Added a style_set
7961         callback.
7962
7963 Fri May  1 16:40:57 1998  Owen Taylor  <otaylor@gtk.org>
7964
7965         * gdk/gdkpixmap.c (gdk_pixmap_colormap_create_from_xpmp[_d]):
7966           Fix a buffer overflow on pixmaps that claim to have
7967           more than 31 characters per pixel.
7968
7969           (gdk_pixmap_read_string): Don't wrap around strings longer
7970           than half of address space ;-)
7971
7972         * gtk/gtk[vh]ruler.c gtk/gtkinputdialog.c: Expand some buffers
7973         that were used for printing integers.
7974
7975         * */* (almost):
7976
7977         Style: All 
7978           int foo () { ... }
7979         changed to
7980           int foo (void) { ... }
7981
7982         Even where there were proper prototypes elsewhere.
7983
7984         * gdk/gxid.c (handle_claim_device): Some extra checks.
7985         It isn't safe against being fed bad X id's, but at
7986         least it should be safe against deleting all your
7987         files.
7988
7989 Sun May  3 19:45:09 1998  Tim Janik  <timj@gtk.org>
7990
7991         * gtk/gtkadjustment.c (gtk_adjustment_assimilate_value): new function
7992         to set the adjustments value when there is no current emission.
7993         [ Removed by mutual agreement owt 5/3/1998 ]
7994
7995         * gtk/gtksignal.c: added new functions to retrive the number of
7996         existing emissions for a certain signal.
7997         (gtk_signal_n_emissions): new function.
7998         (gtk_signal_n_emissions_by_name): new function.
7999
8000 Sun May  3 16:55:43 1998  Tim Janik  <timj@gtk.org>
8001
8002         * gtk/gtkcontainer.c (gtk_container_set_focus_child): new function to
8003         set the current focus_child of a container, does proper referencing and
8004         adjusts the vadjustment/hadjustment associated with the focus widget.
8005
8006         * gtk/gtkwidget.c (gtk_widget_grab_focus): set the focused child on
8007         containers via gtk_container_set_focus_child.
8008
8009         * gtk/gtknotebook.c: modifications to use gtk_container_set_focus_child
8010         where appropriate.
8011
8012         * gtk/gtkcontainer.c (gtk_container_remove): removed unsetting of focus
8013         child since not every child removal goes through this function (this
8014         showed up after gtk_container_set_focus_child() started to reference the
8015         focus_child of a container).
8016
8017         * gtk/gtkwidget.c (gtk_widget_unparent): moved unsetting the focus_child
8018         of a container from gtk_container_remove into this place.
8019
8020 Sat May  2 22:33:45 1998  Tim Janik  <timj@gtk.org>
8021
8022         * gtk/gtksignal.c: added new functions to operate on intermediate
8023         function pointers. implemented incremental blocking.
8024         (gtk_signal_disconnect_by_func): new function.
8025         (gtk_signal_handler_block_by_func): new function.
8026         (gtk_signal_handler_unblock_by_func): new function
8027
8028 Fri May  1 22:45:55 1998  Owen Taylor  <otaylor@gtk.org>
8029
8030         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_allocate):
8031         Always show the scrollbars when the policy is
8032         GTK_POLICY_ALWAYS...
8033
8034 Sat May  2 20:19:03 1998  Tim Janik  <timj@gtk.org>
8035
8036         * gtk/gtkadjustment.c (gtk_adjustment_set_value): only emit
8037         "value_changed" if we really passed a new value.
8038         (gtk_adjustment_changed): new function to emit the "changed" signal.
8039         (gtk_adjustment_set_value): new function to emit the "value_changed"
8040         signal.
8041
8042 Fri May  1 12:28:35 1998  Owen Taylor  <otaylor@gtk.org>
8043
8044         * gtk/gtkcombo.c: Further changes to the way the window
8045         is popped up so that it will be compatible with 
8046         auto-scrolling in the future.
8047
8048 Fri May  1 20:25:29 1998  Tim Janik  <timj@gtk.org>
8049
8050         * gtk/gtkcombo.c (gtk_combo_popup_list): do not just return if
8051         the combo-list is empty since that will cause the combo to operate
8052         on a non existing GtkList window.
8053         (gtk_combo_get_pos): provide the combo list with a usfull default
8054         height if empty.
8055         (gtk_combo_popup_button_press): grab the focus.
8056         (gtk_combo_activate): grab the focus.
8057
8058 Fri May  1 12:06:43 1998  Owen Taylor  <otaylor@gtk.org>
8059
8060         * gtk/gtkwindow.[ch] (gtk_widget_reset_rc_styles): New
8061         function to reset the RC styles for a heirarchy
8062
8063         Clear the window background if necessary in
8064         gtk_window_style_set.
8065
8066         * gtk/gtkrc.[ch]: New function gtk_rc_reparse_all() which
8067         rereads all previously read RC files.
8068
8069         * gdk/gdkwindow.c gdk/gdk.h: New function gdk_window_get_toplevels().
8070         (Should it just be called gdk_get_toplevels?)
8071
8072         * gtk/testgtk.c: New test to reload RC files.
8073
8074 Fri May  1 13:57:36 1998  Tim Janik  <timj@gtk.org>
8075
8076         * gtk/gtkclist.h:
8077         * gtk/gtkclist.c: prefixed all clist flags with GTK_ to avoid name
8078         clashes. redefined GTK_CLIST_SET_FLAGS and GTK_CLIST_UNSET_FLAGS as
8079         GTK_CLIST_SET_FLAG and GTK_CLIST_UNSET_FLAG to automatically add
8080         the GTK_ prefix (this solution involved less changes in the
8081         gtkclist.c code). added a GTK_CLIST_CONSTRUCTED flag to substitute
8082         the mem_chunk==NULL test in gtk_clist_construct. merged in changes
8083         from lars & stefan to support the derivation of GtkCtree.
8084
8085         * gtkctree.h:
8086         * gtkctree.c:
8087         initial import of a tree widget derived from gtkclist, courtesy
8088         of Lars Hamann <lars@gtk.org> and Stefan Jeske <jeske@gtk.org>,
8089         it just damn rocks!
8090
8091 Fri May  1 10:05:44 1998  Tim Janik  <timj@gtk.org>
8092
8093         * gtk/gtklist.c (gtk_list_add): let gtk_list_append_items do the work
8094         for us.
8095         (gtk_list_insert_items):
8096         (gtk_list_remove_items_internal): 
8097         (gtk_list_clear_items): 
8098         remove a possible pointer grab, we might get thrown into a loop
8099         otherwise.
8100         (gtk_list_button_press): grab the pointer *before* selecting the child,
8101         because selection of items may cause the lists children to change,
8102         resulting in a grab release.
8103         (gtk_list_clear_items): use gtk_list_unselect_child() for unselection of
8104         children.
8105         (gtk_list_shutdown): remove all children from the list.
8106         (gtk_real_list_unselect_child): 
8107         (gtk_real_list_select_child): *always* put our internal structures into
8108         sane state *before* signal emisions (i.e. list->selection updates prior
8109         to gtk_list_item_[de]select() calls).
8110
8111         * gtk/gtkcombo.c (gtk_combo_init): adjust the scrollbar if the lists
8112         focused child walks out of the window.
8113         removed CAN_FOCUS for the combo arrow's button since it doesn't react
8114         to keyboard events ("clicked" connection is missing).
8115
8116 Fri May  1 00:42:25 1998  Owen Taylor  <otaylor@gtk.org>
8117
8118         * gdk/gdkwindow.c (gdk_window_get_colormap): Fix up
8119         getting colormap for FOREIGN windows to go along with
8120         Raster's fix for visuals.
8121
8122 Merges from gtk-1-0
8123 ===================
8124         
8125 Thu Apr 30 23:32:51 1998  Owen Taylor  <otaylor@gtk.org>
8126
8127         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_allocate):
8128         Check to catch the case when the viewport fits in either
8129         direction or both, instead of flip-flopping infinitely.
8130
8131         Only show/hide the scrollbars once at the end.
8132
8133 Thu Apr 30 21:56:07 1998  Owen Taylor  <otaylor@gtk.org>
8134
8135         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_foreach): 
8136         Include the scrollbars in the foreach call.
8137         (gtk-fortier-980405-0.patch; 
8138          Patrice Fortier <Patrice.Fortier@aquarel.fr>). 
8139
8140         The notebook widget
8141         really should also include its tabs, but that might cause
8142         problems for programs if they
8143
8144 Thu Apr 30 21:51:52 1998  Owen Taylor  <otaylor@gtk.org>
8145
8146         * gtk/gtkpixmap.c (gtk_pixmap_set): Only request a
8147         resize if the size actually changed. 
8148         (gtk-johannes-980414-0.patch ;  
8149          johannes@nada.kth.se (Johannes Keukelaar) )
8150
8151 Thu Apr 30 10:22:59 1998  Owen Taylor  <otaylor@gtk.org>
8152
8153         * glib/ltmain.sh glib/ltconfig glib/config.sub glib/config.guess:
8154           ltmain.sh ltconfig config.sub config.guess:
8155
8156         Reverted back to libtool-1.2 (plus minor patches) so as not to
8157         force the issue for everyone else.
8158
8159 Thu Apr 30 10:22:59 1998  Owen Taylor  <otaylor@gtk.org>
8160
8161         * glib/ltmain.sh glib/ltconfig glib/config.sub glib/config.guess:
8162         Updated to libtool 1.2a.
8163
8164         * gtk/gtkclist.c: Draw the in-between lines with style->base
8165         instead of style->white.
8166         
8167 Wed Apr 29 15:46:13 1998  Owen Taylor  <otaylor@gtk.org>
8168
8169         * gdk/gdkprivate.h gdk/gdkwindow.c gdk/gdkpixmap.c: 
8170         Cache the colormap and children of a window locally
8171         instead of fetching them from the server when needed.
8172         Huge performance difference for creating/destroying
8173         windows.
8174
8175         * gtk/gtkstyle.c: Find the depth from the cached
8176         visual, instead of asking the server.
8177
8178         * gtk.m4: Distribute the new version which tries to
8179         figure out what went wrong and give helpful error
8180         messages.
8181
8182         * ltmain.sh ltconfig config.sub config.sh: 
8183         Updated to libtool 1.2a
8184
8185         * gtk/gtktext.c: Fixed a bug where the drawn level
8186         was being messed up when the text was scrolled
8187         during a deletion.
8188         
8189 Thu Apr 30 02:42:11 PDT 1998 Manish Singh <yosh@gimp.org>
8190
8191         * gtk/gtkfilesel.c: don't die when naughty people remove parts of
8192         the filesystem under you (fix from Josh)
8193
8194 Thu Apr 30 09:49:14 1998  Tim Janik  <timj@gtk.org>
8195
8196         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_foreach): check
8197         if the viewport already exists before iterating over it, maybe we
8198         haven't been constructed yet.
8199
8200 Thu Apr 30 01:51:00 1998  Tim Janik  <timj@gtk.org>
8201
8202         * gtk/gtkbin.c (gtk_bin_add): made this function issue a warning if
8203         the GtkBin widget already has a child.
8204
8205         * gtk/gtkbox.c (gtk_box_pack_{start|end}):
8206         check that child->parent == NULL;
8207
8208 Tue Apr 28 22:13:54 1998  Owen Taylor  <otaylor@gtk.org>
8209
8210         * gtk/gtkselection.c (gtk_selection_clear): Only return
8211         FALSE when the clear event is been rejected, not when
8212         widget has already lost the selection. (Which should
8213         only happen when we are setting the selection to another
8214         widget ourself.)
8215         
8216 Fri Apr 24 19:07:32 1998  Owen Taylor  <otaylor@gtk.org>
8217
8218         * gtk/gtkfixed.c gtk/gtkpaned.c gtk/gtktable.c:
8219
8220         Removed the "check visibility after gtk_widget_unparent" bug 
8221         in hopefully the last three places.
8222
8223 Tue Apr 28 15:46:41 1998  Tim Janik  <timj@gtk.org>
8224
8225         * gtk/gtkrc.c (gtk_rc_parse_statement): allow the inclusion of other
8226         rc-files.
8227
8228 Mon Apr 27 15:11:52 1998  Tim Janik  <timj@gtk.org>
8229
8230         * gtk/gtkwidget.c (gtk_widget_grab_focus): only allow grabbing of focus
8231         for CAN_FOCUS widgets.
8232
8233         * gtk/testgtk.c (create_scrolled_windows): feature h/v focus
8234         adjustments for the table.
8235         (create_list): feature automatic adjustment of the scrolled window to
8236         always contain the focused child.
8237         (create_main_window): keep the focussed button always inside of the
8238         scrolled windoww.
8239
8240         * gtk/gtkcontainer.c (gtk_real_container_focus): set the h/v focus
8241         adjustments, to contain the allocation of the currently focused child.
8242         (gtk_container_set_focus_hadjustment): new functin to set the
8243         horizontal focus adjustment.
8244         (gtk_container_set_focus_vadjustment): new functin to set the vertical
8245         focus adjustment.
8246
8247         * gtk/gtkadjustment.c (gtk_adjustment_clamp_page): new fucntion to
8248         clamp the currents adjustment page into a specific range.
8249
8250         * random GtkType fixups for gtk_*_get_type() functions.
8251
8252 Fri Apr 24 18:37:16 1998  Owen Taylor  <otaylor@gtk.org>
8253
8254         * gtk/gtktreeitem.c (gtk_tree_item_remove_subtree): 
8255         Account for the fact that gtk_tree_item_remove_subtree
8256         will be called recursively. 
8257
8258         Handle removing a collapsed subtree.
8259
8260         (From Andy Dustman <adustman@comstar.net>)
8261         
8262         * gtk/gtktree.c (gtk_tree_remove_items): Look for the
8263         root tree when removing items from a non-previously
8264         mapped tree.
8265
8266         * gtk/testgtk.c: Added a remove_subtree button.
8267         
8268 Thu Apr 23 23:44:17 1998  Owen Taylor  <otaylor@gtk.org>
8269
8270         * gtk/gtkobject.c (gtk_object_finalize): Notify all weak references
8271         before object removing data. This change fixes a bug where 
8272         removing the last weak references would cause it to be 
8273         triggered.
8274
8275 Wed Apr 15 20:42:46 1998  Owen Taylor  <otaylor@gtk.org>
8276
8277         * gdk/Makefile.am: Removed mostly useless dependency that
8278         was causing problems for SGI's make, when used with
8279         the 'make dist' form of GTK+. (Dependency caused dependencies
8280         to be redone when BUILT_SOURCES changed)
8281
8282 Thu Apr 30 11:18:00 1998  Owen Taylor  <otaylor@gtk.org>
8283
8284         * gtk/gtkcombo.[ch]: Allow the user to use the popup list
8285         like a menu.
8286         
8287         * gtk/gtkmenuitem.c gtk/gtkitem.c: Moved enter/leave handlers
8288         to gtkitem.c so dragging can also work in lists.
8289
8290         * gtk/gtklist.[ch]: Track child enter events and use
8291         those to allow dragging the selection. 
8292
8293 Thu Apr 30 11:16:06 1998  Owen Taylor  <otaylor@gtk.org>
8294
8295         * gtk/gtktext.c: Try enabling background pixmaps for editable text
8296         widgets.  There is a bit of flashing, but not too bad. If you
8297         don't want the flashing, you can always not set a background
8298         pixmap.
8299
8300 Wed Apr 29 15:46:13 1998  Owen Taylor  <otaylor@gtk.org>
8301
8302         * gtk/gtktext.c: Fixed a bug where the drawn level
8303         was being messed up when the text was scrolled
8304         during a deletion.
8305         
8306 1998-04-28  Miguel de Icaza  <miguel@nuclecu.unam.mx>
8307
8308         * gdk/gdk.c (gdk_event_translate): Random debugging fixed this
8309         bug:  There is no need to set the ExposureMask in the XGrabPointer
8310         (this caused DnD programs to crash).
8311
8312 Fri Apr 24 01:29:04 1998  Tim Janik  <timj@gtk.org>
8313
8314         * gtk/gtkaccelerator.h (struct _GtkAcceleratorTable): changed ref_count
8315         field to be of type guint.
8316         * gtk/gtkaccelerator.c (gtk_accelerator_table_unref): added check for
8317         ref_count>0;
8318         (gtk_accelerator_table_install): keep a per object list of accelerator
8319         tables that refer to this object.
8320         (gtk_accelerator_table_remove): remove the accelerator table from the
8321         per object list.
8322         (gtk_accelerator_table_clean): warn if there are any object references
8323         left in an accelerator table upon destruction.
8324         (gtk_accelerator_tables_delete): new function to delete object
8325         references from the accelerator tables associated with this object.
8326
8327         * gtk/gtkwidget.c (gtk_widget_class_init): changed emission of
8328         GtkWidget::install_accelerator to GTK_RUN_LAST so the installation
8329         of an accelerator can be prevented by gtk_signal_emit_stop().
8330         (gtk_widget_real_destroy): call gtk_accelerator_tables_delete (),
8331         so there are no stale pointers in accelerator tables left.
8332
8333 1998-04-22  Federico Mena Quintero  <federico@nuclecu.unam.mx>
8334
8335         * gtk/gtkbin.c (gtk_bin_remove): Remember whether the widget was
8336         visible before we unparent it.
8337
8338 Wed Apr 22 04:15:26 1998  Tim Janik  <timj@gtk.org>
8339
8340         * gtk/gtkmain.c (gtk_handle_current_timeouts): prepend the
8341         running_timeouts list with the tmp_list link itself, not with a new
8342         GList structure pointing to our link. that would fill up memory and
8343         causes the GList.data fields of the running_timeouts list to point to
8344         GList structures and not GtkTimeoutFunction structures which is a
8345         *really* bad thing.
8346         (gtk_handle_current_idles): likewise (exchange "timout" with "idle" in
8347         the above entry ;).
8348
8349 Sat Apr 18 22:18:12 1998  Tim Janik  <timj@gtk.org>
8350
8351         * gtk/gtkradiomenuitem.h: 
8352         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_set_group): new function
8353         ala gtk_radio_button_set_group.
8354         (gtk_radio_menu_item_init): assure that we always have at least a group
8355         that points to self.
8356
8357         * gtk/gtkradiobutton.c (gtk_radio_button_set_group): few cleanups and
8358         added g_return_if_fail() statements.
8359         (gtk_radio_button_init): assure that we always have at least a group
8360         that points to self.
8361
8362 Fri Apr 17 03:05:05 1998  Tim Janik  <timj@gtk.org>
8363
8364         * ChangeLog split up into ChangeLog.pre-1-0 and ChangeLog.
8365
8366 Wed Apr 15 05:13:09 1998  Tim Janik  <timj@gtk.org>
8367
8368         * gtk/gtklabel.c (gtk_label_size_request): corrected a brace position
8369         (Damon Chaplin), which i got wrong when applying Damon's patch the last
8370         time.
8371
8372 Wed Apr 15 20:42:46 1998  Owen Taylor  <otaylor@gtk.org>
8373
8374         * gtk/gtkpreview.c (gtk_preview_get_visuals): Make sure
8375         that when we are running with a non-installed colormap,
8376         in 8-bit pseudo-color, we actually are using the system
8377         visual. (Fixes *Bad Match* errors on Digital Unix machines
8378         with multiple 8-bit pseudo-color visuals)
8379
8380 1998-04-14  Miguel de Icaza  <miguel@nuclecu.unam.mx>
8381
8382         * gdk/gdkwindow.c (gdk_window_xid_at): Fix the problem introduced
8383         by whoever thought that randomly changing ints to unsigned int
8384         without reviewing the code was a good idea.  It is, btw not
8385         mentioned in the ChangeLog as usual, but I know it was not Elliot
8386         the culprit this time. 
8387
8388 Mon Apr 13 19:16:22 PDT 1998 Shawn T. Amundson <amundson@gtk.org>
8389
8390         * Released GTK+ 1.0.0