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