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