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