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