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