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