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