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