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