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