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