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