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