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