]> Pileus Git - ~andy/gtk/blob - ChangeLog.pre-2-8
db8824a13e660d312bdb8db1acadf872212e5006
[~andy/gtk] / ChangeLog.pre-2-8
1 2001-07-18  Darin Adler  <darin@bentspoon.com>
2
3         * gtk/gtkiconfactory.c: (gtk_icon_size_register): Reorder code so
4         that we don't get a g_warning message every time we register a new
5         icon size.
6
7         * gdk/x11/gdkcolor-x11.c: (gdk_colormap_alloc1): Fix warning by
8         using pixel variable of the correct type.
9         
10 Fri Jul 13 15:33:32 2001  Owen Taylor  <otaylor@redhat.com>
11
12         * gdk/gdkwindow.[ch]: Add a function gdk_window_get_internal_paint_info(),
13         so that using X functions on a GdkWindow is possible, if
14         a little hairy.
15
16         * gdk/gdkgc.c (gdk_gc_offset): Add a function to offset the clip
17         and ts_origin of a GC, so that external parties can offset/restore
18         a GC, when using gdk_window_get_internal_paint_info().
19
20 2001-07-17  Darin Adler  <darin@bentspoon.com>
21
22         * .cvsignore: Ignore the sgml directory made by gtkdoc.
23         * demos/pixbuf-demo.c: (main): Use gtk_window_set_resizable
24         instead of the deprecated gtk_window_set_policy.
25         * demos/testpixbuf-scale.c: Add missing <stdlib.h> include.
26         * gdk/gdkkeys.c: (gdk_keymap_class_init): Remove empty finalize
27         function to get rid of warning and some code too.
28         * gdk/x11/gdkfont-x11.c: (gdk_font_charset_for_locale): Add
29         missing const.
30         * gdk/x11/gdkmain-x11.c: (_gdk_windowing_init_check): Remove
31         unused local.
32         * gdk/x11/gdkpango-x11.c: (gdk_pango_context_get): Add missing
33         const.
34         * gdk/x11/gdkselection-x11.c: (gdk_text_property_to_utf8_list),
35         (gdk_utf8_to_compound_text): Add missing const.
36         * gtk/gtkimage.c: (gtk_image_expose): Remove unused local.
37         * gtk/gtkmenubar.c: (gtk_menu_bar_hierarchy_changed): Add missing
38         cast and get rid of an unnecessary one.
39         * gtk/gtksettings.c: (gtk_settings_notify): Remove unused local.
40         * gtk/gtkstatusbar.c: (gtk_statusbar_size_allocate): Remove unused
41         local.
42         * gtk/gtktreemodelsort.c: (gtk_tree_model_sort_build_level):
43         Remove unused local.
44         * modules/input/gtkimcontextxim.c: (gtk_im_context_xim_new): Add
45         missing const.
46         * tests/testsocket.c: (add_child): Add cast so the printf format
47         doesn't make us implicitly depend on what integer type
48         gtk_socket_get_id returns.
49         * tests/testtextbuffer.c: Add missing const.
50         * tests/testtreefocus.c: (main): Remove unused local.
51         * tests/treestoretest.c: (iter_remove): Remove unused local.
52         (uppercase_value): Remove unused function.
53         (make_window): Add statement to quiet the compiler's uninitialized
54         variable warning.
55
56 Sat Jul 14 12:47:35 2001  Tim Janik  <timj@gtk.org>
57
58         * gtk/gtkrange.c:
59         (second_timeout): 
60         (initial_timeout): 
61         (update_timeout): add GDK_THREADS_ENTER/GDK_THREADS_LEAVE.
62         (gtk_range_calc_layout): compute the new layout based on an
63         adjustment->value being passed in as argument.
64         (gtk_range_button_press): for button2 slider warps, first recalc
65         the layout, then adjust the value. also, use update_slider_position()
66         for adjusting the value, so we keep pixel quantisation at which we
67         usually operate (upon motion or button releases). the reason for this
68         is that, we can't change the adjustment upon button2 presses to a non
69         quantised value and upon button2 release re-quantise the value since
70         that'd alter the value even if we didn't get any motion events (causing
71         unexpected scroll area warps upon release and/or slider pixel-jitter).
72         (gtk_range_motion_notify): update the slider position from queried
73         coordinates, not event coordinates.
74
75 Fri Jul 13 09:47:52 2001  Tim Janik  <timj@gtk.org>
76
77         * gtk/gtkstyle.c (gtk_default_draw_focus): fix line style resetting,
78         the default gc values are: width=0, CapBut, JoinMiter.
79
80 2001-07-13  Anders Carlsson  <andersca@codefactory.se>
81
82         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render): Take
83         into account the xpad and ypad when calculating the width and the
84         height of the pixbuf cel.
85
86 Thu Jul 12 18:29:40 2001  Owen Taylor  <otaylor@redhat.com>
87
88         * gtk/gtkradiomenuitem.[ch] (gtk_radio_menu_item_group): 
89         Rename to gtk_radio_menu_item_get_group(), add deprecated
90         alias. (#57044)
91
92         * gtk/gtkfilesel.c: Indentation fix.
93
94 Thu Jul 12 17:33:00 2001  Owen Taylor  <otaylor@redhat.com>
95
96         * gtk/gtkbbox.h gtk/gtkcompat.h: Patch from Mathias 
97         Hasselmann to fix warnings in compat macros. 
98         (#56773)
99
100         * gtk/gtkmenubar.c (gtk_menu_bar_hierarchy_changed): Fix 
101         stupid wrong cast added in last patch.
102
103 Thu Jul 12 16:51:34 2001  Owen Taylor  <otaylor@redhat.com>
104
105         * gtk/gtkwidget.c: Replace a couple of inappropriate calls to 
106         GTK_WIDGET_HAS_FOCUS() with gtk_widget_is_focus(). (#57067)
107
108 Thu Jul 12 14:06:19 2001  Owen Taylor  <otaylor@redhat.com>
109
110         * gtk/gtkmenubar.c (gtk_menu_bar_hierarchy_changed): Add
111         missing cast.
112
113         * gtk/gtkcontainer.c (gtk_container_get_focus_chain): Fix
114         NULL/FALSE return value confusion.
115
116         * gtk/gtkrange.c (coord_to_value): Fix division-by-zero
117         problem when scrollbar completely fills range. (Patch
118         from  Matthias Clasen, #57047)
119
120 Thu Jul 12 13:53:28 2001  Owen Taylor  <otaylor@redhat.com>
121
122         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Properly
123         clean up when handling events for move-resize emulation.
124         (Problem traced down by Matthias Clasen, #57271)
125
126 Thu Jul 12 13:43:27 2001  Owen Taylor  <otaylor@redhat.com>
127
128         * gtk/gtkclist.c gtk/gtkcolorsel.c gtk/gtkcombo.c
129           gtk/gtkctree.c gtk/gtkcurve.c gtk/gtkentry.c
130           gtk/gtkfontsel.c gtk/gtkhandlebox.c 
131           gtk/gtkimcontextsimple.c gtk/gtkmain.c gtk/gtkmenu.c
132           gtk/gtkmenuitem.c gtk/gtkoptionmenu.c gtk/gtkpixmap.c
133           gtk/gtkselection.c gtk/gtktextdisplay.c gtk/gtktextview.c
134           gtk/gtktooltips.c gtk/gtkwidget.c gtk/gtkwindow.c:
135         Formatting fixes from multihead brnach. [ mostly foo(bar) => foo (bar) ]
136
137 2001-07-09  Peter Williams  <peterw@ximian.com>
138
139         * gtk/Makefile.am ($(srcdir)/stamp-gtk.defs): Add a cd $(srcdir)
140         for when srcdir != builddir
141
142 Mon Jul  9 12:50:51 2001  Jonathan Blandford  <jrb@redhat.com>
143
144         * gtk/gtktreemodel.c: remove gtk_tree_model_get_first in favor of
145         gtk_tree_model_get_iter_root.
146
147         * gtk/gtkliststore.c: Add a bunch of g_return statements.
148         (gtk_list_store_iter_n_children): Fix up.
149
150         * gtk/gtktreestore.c: Add a bunch of g_return statements.
151
152 Fri Jul  6 15:38:33 2001  Owen Taylor  <otaylor@redhat.com>
153
154         * gtk/gtkwidget.c (gtk_widget_class_init):
155         G_SIGNAL_TYPE_STATIC_SCOPE GtkSelectionData to
156         restore some workingness.
157
158         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Fix 
159         handle of window type for input-only windows.
160
161 Thu Jul  5 21:53:46 2001  Owen Taylor  <otaylor@redhat.com>
162
163         * gtk/gtkbbox.[ch] gtk/gtkbox.[ch] gtk/gtk[hv]bbox.c:
164         Patch from Gregory Merchan to add 
165         gtk_button_box_set_secondary(), which separates
166         the child into a separate group from the normal
167         buttons. (#56331)
168
169         * gtk/gtkdialog.c: Make help buttons secondary by
170         default.
171
172         * gtk/gtkbbox.c: Added a child property "secondary".
173
174         * gtk/testgtk.c: Turn on the help button for the 
175         color selector to check that it properly appears
176         as secondary.
177
178 Mon Jul  2 01:09:37 2001  Owen Taylor  <otaylor@redhat.com>
179  
180         * gdk/gdkwindow.[ch] gdk/gdkinternals.h gdk/x11/gdkwindow-x11.c
181         gdk/linux-fb/gdkwindow-fb.c gdk/x11/gdkwindow-x11.c gdk/gdk:
182         Add gdk_set_pointer_hooks() to allow pointer-querying to
183         be hooked by an event record/playback system like GERD.
184         (#56914)
185         
186 Thu Jul  5 08:57:07 2001  Owen Taylor  <otaylor@redhat.com>
187
188         * gtk/gtkwidget.c (gtk_widget_reset_rc_style): Pass
189         in the right value of initial_emission to
190         gtk_widget_set_style_internal (#57091)
191
192 Wed Jul  4 23:17:04 2001  Owen Taylor  <otaylor@redhat.com>
193
194         * gtk/gtkdnd.c (gtk_drag_dest_hierarchy_changed):
195         Make compile.
196
197         * gtk/gtkwidget.c (gtk_widget_reset_rc_style): Fix problem
198         with calling gtk_widget_set_style_internal() with
199         the old style, not the new style. (#56989)
200
201 Wed Jul  4 22:35:40 2001  Owen Taylor  <otaylor@redhat.com>
202
203         * gtk/gtklabel.c gtk/gtkmenubar.c gtk/gtktreeviewcolumn.c
204           gtk/gtkwidget.c:
205         Check GTK_WIDGET_TOPLEVEL(gtk_widget_get_toplevel (widget)),
206         not GTK_WIDGET_GET_ANCESTOR ... see 
207         http://mail.gnome.org/archives/gtk-devel-list/2001-July/msg00072.html.
208         Indicate the best practice in the docs for gtk_widget_get_toplevel().
209
210         * gtk/gtkwidget.[ch]: Expose a private _gtk_widget_hierarchy_changed(),
211         so GtkPlug can give the correct signals when transforming
212         from a child to a toplevel.
213         
214         * gtk/gtkdnd.c (gtk_drag_dest_hierarchy_changed): Handle
215         reparentation correctly.
216
217         * gtk/gtkwidget.c (gtk_widget_propagate_hierarchy_changed):
218         Propagate the previous_toplevel argument down properly.
219
220         * gtk/gtklabel.c (gtk_label_finalize): Fix unrefing
221         of wrong atr list.
222
223         * gtk/gtkplug.[ch]: Add an "embedded" signal.
224
225         * gtk/gtksocket.[ch]: Add "child_added", "child_removed"
226         signals.
227
228         * gtk/gtkplug.[ch] gtk/gtksocket.[ch]: Add 
229         functions gtk_plug_get_id(), gtk_socket_get_id(),
230         to avoid the user having to worry about realization,
231         and gdkx.h.
232
233         * tests/testsocket.c: Extend to try out the new signals
234         and gtk_plug/socket_get_id().
235
236         * gtk/gtklabel.c (gtk_label_set_pattern_internal): Fix
237         setting of underline attributes.
238
239         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Ignore
240         DestroyNotify events from SubstructureNotifyMask
241
242         * gdk/x11/gdkwindow-x11.c (gdk_window_reparent):
243         Switch GDK_WINDOW_TYPE (window) as needed.
244
245         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Clean up,
246         allow creation of toplevel windows as children of
247         foreign windows.
248
249         * gtk/gtkplug.c: Remove hacks involving changing private
250         fields of GdkWindow.
251
252         * gtk/gtkplug.[ch] gtk/gtksocket.c: Work to make 
253         exactly the same signals and notification
254         be emitted for local embedding as for inter-process
255         embedding.
256
257 2001-07-04  James Henstridge  <james@daa.com.au>
258
259         * gtk/gtkliststore.h: add missing gtk_list_store_newv prototype.
260
261 Mon Jul  2 16:53:25 2001  Owen Taylor  <otaylor@redhat.com>
262
263         * gtk/xembed.h gtk/gtkplug.c gtk/gtksocket.c: For
264         XEMBED embedding add a _XEMBED_INFO property to the
265         client with version number and a "mapped" flags.
266         Use the mapped flag instead of the racy MapRequestEvent
267
268         * gtk/gtksocket.c: Clean up the gtk_socket_steal()
269         code to reliably set things (when the child is a passive
270         embedder participating in the XEMBED protocol) intead
271         of just being a hack for embedding non-participating
272         programs. Fix various bugs and race conditions.
273         
274         * gtk/gtksocket.[ch] gtk/gtkplug.[ch]: Make local embedding
275         work by simply making the GtkSocket the gtk parent
276         of the GtkPlug. Set a flag in this case and make
277         the GtkPlug work like a normal container by overriding
278         methods such as check_resize and "chaining past" GtkWindow
279         to GtkBin.
280
281         * gtk/gtkentry.c (gtk_entry_real_activate)
282           gtk/gtkmain.c (gtk_propagate_event): 
283         Eliminate use of gtk_widget_get_ancestor (widget, GTK_TYPE_WINDOW).
284         
285         * gtk/gtkwidget.c (gtk_widget_get_toplevel,
286         gtk_widget_get_ancestor):
287         Explain why gtk_widget_get_ancestor (widget, GTK_TYPE_WINDOW)
288         might not give the expected result and recommend
289         an alternative.
290
291         * tests/testsocket.c tests/testsocket_child.c
292         tests/testsocket_common.c tests/Makefile.am: Extended
293         to test different type of adding plugs to sockets
294         (local,active,passive), and to test mapping/unmapping
295         the plug.
296
297         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Don't
298         mark the window as destroyed until after we
299         called _gdk_windowing_window_destroy().
300         (_gdk_windowing_window_destroy() may use GDK functions
301         on the window.)
302
303         * gdk/x11/gdkinput.c: Remove the check for finalization - 
304         devices can be finalized under some circumnstances.
305  
306         * gdk/x11/gdkinput-x11.c (gdk_input_device_new): Fix 
307         small problem with GDK_TYPE_DEVICE.
308  
309 2001-07-02  Havoc Pennington  <hp@pobox.com>
310
311         * gdk/x11/gdkwindow-x11.c (gdk_wmspec_change_state): fix to 
312         use constants not atoms.
313
314 2001-07-02  James Henstridge  <james@daa.com.au>
315
316         * gtk/gtktextview.c (gtk_text_view_class_init): same here for
317         PANGO_TYPE_TAB_ARRAY.
318
319         * gtk/gtktexttag.c (gtk_text_tag_class_init): same here, but also
320         for PANGO_TYPE_TAB_ARRAY.
321
322         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_class_init):
323         s/GTK_TYPE_PANGO_FONT_DESCRIPTION/PANGO_TYPE_FONT_DESCRIPTION/
324
325         * gtk/gtk-boxed.defs: move all the boxed definitions to the top of
326         the file.  Remove Pango types from defs -- they are now defined in
327         libpango.
328
329 Mon Jul  2 06:35:10 2001  Tim Janik  <timj@gtk.org>
330
331         * gdk/gdkkeys.c (gdk_keymap_class_init): s/signal_newc/signal_new/
332
333         * gtk/gtkobject.c (gtk_object_destroy): invoke
334         g_object_run_dispose().
335
336         * gtk/gtkwindow.c: 
337         * gtk/gtkwidget.c: 
338         * gtk/gtkobject.c:
339         * gtk/gtklist.c: s/shutdown/dispose/ for the GObject
340         method.
341
342 Sat Jun 30 20:44:48 2001  Owen Taylor  <otaylor@redhat.com>
343
344         * gtk/gtktypeutils.c (gtk_type_class): Remove
345         change check for GTK_TYPE_OBJECT derivation to
346         G_TYPE_OBJECTS - it's Tim-approved to use this 
347         for arbitary objects.
348
349         * gtk/gtkwindow.c gtk/gtkcontainer.[ch]: underscore
350         prefix gtk_container_dequeue_resize_handler().
351
352         * gtk/gtkwidget.[ch]: Add a previous_toplevel argument
353         to the hierarachy_changed signal, since you otherwise
354         have to always keep that around.
355
356         * gtk/gtkmenubar.c gtk/gtklabel.c gtk/gtksocket.c: Adapt
357         for extra argument to hierarchy_changed.
358
359 Tue Jun 26 19:39:03 2001  Owen Taylor  <otaylor@redhat.com>
360
361         * gtk/gtkwidget.c (gtk_widget_set_style): Allow %NULL
362         for style to mean "revert to default style"
363
364         * gtk/gtkwidget.[ch] (gtk_widget_set_rc_style,
365           gtk_widget_restore_default_style): Make this functions
366         deprecated aliases for gtk_widget_set_style (widget, NULL).
367
368         * gtk/gtkwidget.[ch]: Remove:
369            gtk_widget_set_default_style ()
370            gtk_widget_push_style ()
371            gtk_widget_pop_style ()
372         These functions interact are overriden by RC files, and
373         thus virtually useless, and complicated.
374
375 Fri Jun 22 18:49:48 2001  Owen Taylor  <otaylor@redhat.com>
376
377         * gtk/gtkrc.c: Add a GtkRcContext structure to hold 
378         most of the previous global variables in gtkrc.c. This is
379         in preparation for multi-head, since each screen can
380         have different GtkSettings and RC information.
381
382         * gtk/gtkrc.[ch]: 
383
384         * gtk/gtkrc.h (struct _GtkRcStyleClass): Add a
385         GtkSettings parameter to GtkRcStyle::parse.
386
387         * gdk/x11/gdkevents-x11.c gtk/gtksettings.c gtk/gtkrc.c: 
388         Add two new settings gtk-theme-name, gtk-key-theme-name,
389         for RC files that are loaded by name after reading
390         the default RC files.
391         
392         * gtk/gtkrc.c: Allow priorities for styles, as wll as
393         bindings.
394
395         * gtk/gtkenums.h gtk/gtkrc.c: Add GTK_PATH_PRIO_THEME,
396         and use it by default for RC files loaded via 
397         gtk-theme-name, gtk-key-theme-name.
398
399         * gtk/gtkiconfactory.c (gtk_icon_source_set_filename)
400         gtk/gtkrc.c (gtk_rc_parse_pixmap_path_string) 
401         tests/testgtkrc: Require pathnames to be absolute.
402
403         * gtk/gtkrc.c gtk/gtkiconfactory.c: Look up the full filename for
404         the source when parsing, since the operation of looking up a
405         pixmap from an RC file depends on the parsing context.
406
407         * gtk/gtkrc.c (gtk_rc_context_reparse_all): Automatically
408         reset RC styles on all widgets when files are reparsed.
409
410         * tests/testgtk.c (create_rc_file) 
411           gtk/gtkwindow.c (gtk_window_read_rcfiles): 
412         Simplify, now that gtk_rc_reparse_all() resets styles on
413         all widgets itself.
414
415         * gtk/gtkmain.c (gtk_get_default_language): Fix broken
416         return value.
417
418         * gtk/gtksettings.[ch] (gtk_settings_install_property[_ch]): Remove
419         GtkSettings argument.
420
421         * gtk/gtksettings.[ch] (gtk_settings_get_default): Rename from
422         gtk_settings_get_global().
423
424         * gtk/gtkwidget.[ch]: Add a function gtk_widget_Get_settings()
425         to get the appropriate GtkSettings for a widget. (For now,
426         just gets the default GtkSetttings.) 
427
428         * gtk/gtkcolorsel.c gtk/gtkentry.c gtk/gtkmenu.c gtk/gtkmenubar.c
429           gtk/gtktextview.c gtk/gtktoolbar.c: Fixes for GtkSettings
430         changes.
431
432         * gtk/gtkrc.[ch]: Add gtk_rc_get_style_by_paths() to allow
433         getting a style for a path without actually having a widget.
434         (Allows using a style for a subpart of a widget, for
435         example.)
436
437         * gtk/gtkrc.[ch]: Add gtk_rc_reparse_all_for_setting() to allow forcing
438         the RC files to be reloaded for just one GtkSettings
439         (not sure how useful this really is.)
440
441         * gtk/gtkrc.h: Deprecate
442         gtk_rc_add_widget_name/widget_class/class_style
443
444 2001-06-30  Alex Larsson  <alexl@redhat.com>
445
446         * gdk/linux-fb/gdkinput-none.c:
447         * gdk/linux-fb/gdkinput.c:
448         * gdk/linux-fb/gdkinputprivate.h:
449         Convert GdkDevice to a GObject.
450
451         * linux-fb/gdkprivate-fb.h:
452         * linux-fb/gdkvisual-fb.c:
453         Convert GdkVisual to a GObject.
454
455 2001-06-29  Alex Larsson  <alexl@redhat.com>
456
457         * gdk/gdkvisual.h:
458         * gdk/gdkcolor.c:
459         * gdk/x11/gdkx.h:
460         * gdk/x11/gdkvisual-x11.c:
461         Convert GdkVisual to a GObject.
462
463         * gdk/gdkinput.h:
464         * gdk/gdkevents.c:
465         * gdk/x11/gdkinputprivate.h:
466         * gdk/x11/gdkinput-gxi.c:
467         * gdk/x11/gdkinput-none.c:
468         * gdk/x11/gdkinput-x11.c:
469         * gdk/x11/gdkinput-xfree.c:
470         * gdk/x11/gdkinput.c:
471         Convert GdkDevice to a GObject.
472
473 Fri Jun 29 22:13:28 2001  Jonathan Blandford  <jrb@redhat.com>
474
475         * gtk/gtktreestore.c (gtk_tree_store_new): changed new_with_types
476         to just plain new, fixing the number of columns, and column types
477         at creation time.
478
479         * gtk/gtkliststore.c (gtk_list_store_new): ditto.
480
481         * gtk/gtkcellrenderertext.c
482         (gtk_cell_renderer_text_set_fixed_height_from_font): FIX the
483         height to a specific font.
484
485         * gtk/gtktreeview.c (gtk_tree_view_is_expander_column): fix brokenness.
486
487         * tests/*c: change to work with new store models.
488
489 2001-06-29  Havoc Pennington  <hp@redhat.com>
490
491        * Throughout: fixes to compile with G_DISABLE_COMPAT
492         (s/g_signal_connectc/g_signal_connect/,
493         s/g_signal_newc/g_signal_new/,
494         s/g_signal_disconnect_by_func/g_signal_handlers_disconnect_by_func/)
495
496 Fri Jun 29 03:14:16 2001  Jonathan Blandford  <jrb@webwynk.net>
497
498         * gtk/gtktreeselection.c (gtk_tree_selection_selected_foreach):
499         add path argument to selection callbacks.
500
501 Fri Jun 29 00:13:34 2001  Jonathan Blandford  <jrb@redhat.com>
502
503         * gtk/gtktreemodel.c (gtk_tree_model_foreach): New function to
504         walk through a model in a depth first manner, with the option to
505         break out.
506
507 Fri Jun  8 18:52:10 2001  Jonathan Blandford  <jrb@redhat.com>
508
509         * gtk/gtktreeview.[hc]: Patch Thomas Broyer from
510         <tbroyer@ltgt.net>. Expander arrows are now attached to a specific
511         column and follow it when draged, rather than a location in the
512         view. "expander_column" property and drawing functions changed
513         accordingly.  Fixes bug #55942.
514
515         (gtk_tree_view_{set,get}_expander_column): Now works with a
516         GtkTreeViewColumn* instead of int.
517
518 Thu Jun 28 22:53:18 2001  Owen Taylor  <otaylor@redhat.com>
519
520         *  gdk/gdk.c gtk/gtktypeutils.c: Fix args to g_type_init(). 
521
522 2001-06-28  Havoc Pennington  <hp@pobox.com>
523
524         * gdk/x11/gdkimage-x11.c (_gdk_x11_get_image): Clip the retrieved
525         image data to the screen, using a server grab to avoid race
526         conditions.
527
528         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): remove 
529         check for NULL return from gtk_image_new_from_stock(), it never
530         returns NULL.
531         (gtk_item_factory_create_item): fix bug where we parsed the stock
532         ID as an inline pixbuf
533
534         * gtk/gtktext.c (gtk_text_key_press): numeric keypad support
535
536         * gtk/gtkspinbutton.c (gtk_spin_button_key_press): numeric keypad
537         support (should be using binding set here)
538
539         * gtk/gtkoptionmenu.c (gtk_option_menu_key_press): numeric keypad
540         support (should be using binding set here)
541
542         * gtk/gtkmenushell.c (gtk_menu_shell_class_init): numeric keypad 
543         support
544
545         * gtk/gtkmenu.c (gtk_menu_class_init): numeric keypad support
546
547         * gtk/gtkmenubar.c (gtk_menu_bar_class_init): numeric keypad
548
549         * gtk/gtklistitem.c (gtk_list_item_class_init): numeric keypad
550
551         * gtk/gtkimcontextsimple.c
552         (gtk_im_context_simple_filter_keypress): keypad
553
554         * gtk/gtkfilesel.c (gtk_file_selection_key_press): keypad 
555
556         * gtk/gtkentry.c (gtk_entry_class_init): numeric keypad fixes
557
558         * gtk/gtkctree.c (gtk_ctree_class_init): numeric keypad support
559
560         * gtk/gtkcolorsel.c (palette_activate): keypad support (of course,
561         should be binding-setted)
562
563         * gtk/gtkwindow.c (gtk_window_class_init): numeric keypad fixes
564
565         * gtk/gtkclist.c (gtk_clist_class_init): numeric keypad fixes
566
567         * gtk/gtkcalendar.c: numeric keypad fixes
568
569         * gtk/gtktextview.c (gtk_text_view_class_init): numeric keypad
570         support
571
572         * gdk/gdkwindow.c (gdk_window_get_clip_region): fix infinite loop
573         screwup
574
575         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha): 
576         clip the render area to the drawable's clip region in advance,
577         so we don't get data from the server that we don't need.
578
579         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
580         check return value of gdk_pixbuf_get_from_drawable(), fall back 
581         to bilevel alpha if we can't get the pixbuf to composite against.
582
583         * gdk/gdkdraw.c (gdk_drawable_get_image): set the image colormap
584
585         * gdk/gdkimage.c (gdk_image_get_colormap): add
586         gdk_image_set_colormap, gdk_image_get_colormap
587
588         * gdk/gdkpixbuf-drawable.c (rgbconvert): Change all converters to
589         take a region of the image, instead of converting the entire
590         image.
591
592         * gtk/gtkwidget.h (struct _GtkWidgetClass): add show_help
593         keybinding signal. Add default bindings for it. Add default
594         handler for show_help that shows the tooltip for the widget.
595
596         * gtk/gtkdialog.c (gtk_dialog_class_init): add binding set and
597         "close" keybinding signal, remove key press handler.
598
599         * gtk/gtktooltips.c (gtk_tooltips_set_colors): Just remove this,
600         it's not our usual practice to leave a deprecated function around
601         with a runtime warning, plus we don't want it to appear in docs,
602         plus if we make them yellow no one will want to change them
603         anyhow.
604
605 Thu Jun 28 23:53:31 2001  Tim Janik  <timj@gtk.org>
606
607         * gtk/gtkwidget.c (gtk_widget_hide): !GTK_OBJECT_DESTROYED() ->
608         GTK_WIDGET_REALIZE() for resize queueing.
609
610         * gtk/gtkmain.c (gtk_main_do_event): !GTK_OBJECT_DESTROYED() ->
611         GTK_WIDGET_REALIZE() for post event delivery destruction upon
612         GDK_DESTROY.
613         
614         * gtk/gtkwidget.c: added GtkWidget::event-after notification signal, to
615         sompensate for former (pre-2.0) connect_after() facility.
616         (gtk_widget_send_expose): 
617         (gtk_widget_event): assert the widget is realized, since event delivery
618         to non-realized widgets is essentially a bug. event handlers should
619         be able to unconditionally rely on widget->window (unless they
620         emit events on their own which can trigger widget destruction).
621         (gtk_widget_event_internal): removed old outdated GTK_OBJECT_DESTROYED()
622         logic. event delivery happens as follows:
623         a) emission of GtkWidget::event (RUN_LAST handler). returns was_handled.
624         b) if !was_handled in (a) and the widget is still realized, emit event-
625            specific signal (RUN_LAST handler). returns was_handled.
626         c) emission of GtkWidget::event-after for notification if the widget is
627            still realized (regardless of was_handled from previous stages, no
628            class handler). no return value.
629         d) was_handled gets passed on to caller, to determine further
630            propagation. if the widget got unrealized meanwhile, was_handled
631            is returned as TRUE.
632
633         * gdk/gdkevents.[hc]: added gdk_event_get_root_coords() and
634         gdk_event_get_coords().
635
636 Thu Jun 28 17:18:41 2001  Tim Janik  <timj@gtk.org>
637
638         * configure.in (GTK_MICRO_VERSION): up version to 1.3.7, interface
639         age 0, binary age 0. depend on glib 1.3.7.
640
641         * gtk/gtkcontainer.c: remove g_signal_handlers_disconnect_by_func() hack.
642
643         * gtk/gtkmenubar.c: same here.
644         
645         * gtk/gtkcontainer.c (gtk_container_focus_tab): fix param-spec retrival.
646
647         * gtk/gtkcolorsel.c (gtk_color_selection_init): fix connect_data() usage.
648
649         * gtk/gtkentry.c (gtk_entry_focus_in): same here.
650         
651         * gtk/gtkmenubar.c (add_to_window): likewise.
652         
653         * gtk/gtktextbtree.c: and here...
654         
655         * gtk/gtktextview.c (gtk_text_view_ensure_layout): same thing.
656         
657         * gtk/gtktoolbar.c (gtk_toolbar_init): once more.
658         
659         * gtk/gtktreemodel.c (connect_ref_callbacks): and another time.
660         
661         * gtk/gtktreeviewcolumn.c:
662         (_gtk_tree_view_column_set_tree_view): yet again.
663
664         * demos/gtk-demo/images.c (progressive_timeout): demonstrate
665         signal connections without g_signal_connect_data().
666         
667         * demos/gtk-demo/stock_browser.c (do_stock_browser): second
668         demo of the matter.
669         
670         * demos/testpixbuf.c (main): running out of equality phrases for the
671         ChangeLog, but had to adapt connections here as well.
672         
673         * demos/testanimation.c (progressive_timeout): and for the fun of it,
674         tackled this the same way.
675         
676         * tests/testtext.c (create_view): ok, it's becoming a pain at this
677         point, but had enough enery for one more fix.
678
679         * tests/testtreecolumns.c (main): stand up man, do your work!
680
681         * tests/testtreeview.c (set_columns_type): ok, this is the last file i
682         fix, either that's been all of it or CVS gtk is broken yet again.
683         
684 2001-06-29  James Henstridge  <james@daa.com.au>
685
686         The following changes correspond to bug #56812
687
688         * gdk/gdkinput.h, gdk/gdkevents.c (GDK_TYPE_DEVICE): register type
689         code for GdkDevice.
690
691         * gdk/gdkcursor.[ch] (GDK_TYPE_CURSOR): register type code for
692         GdkCursor.
693
694 2001-06-19  Havoc Pennington  <hp@pobox.com>
695
696         * gdk/x11/gdkwindow-x11.c (gdk_window_show_unraised): new function
697         for mapping a window without fooling with stacking order, but
698         updating the "withdrawn" flag
699
700         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Do event
701         filtering as soon as possible, moving move resize and wmspec_check
702         handling after the event filter.  Make default filter apply to all
703         events, not just those with no GdkWindow wrapped around the X
704         window. Fix a FIXME about how the window could be a pixmap using 
705         RTTI; this of course assumes GDK_IS_WINDOW() is optimized. 
706
707         Also, be robust against events not on a known GdkWindow.
708
709         * gdk/x11/gdkmain-x11.c (gdk_x11_grab_server,
710         gdk_x11_ungrab_server): export reference-counted server grabs, so
711         other people can grab server over a GDK function that also does
712         so.
713
714 Wed Jun 27 19:40:31 2001  Jonathan Blandford  <jrb@redhat.com>
715
716         * gtk/gtktreeviewcolumn.c
717         (gtk_tree_view_column_pack_start_cell_renderer): New function to
718         reflect that you can (hypothetically) pack cell renderers into a
719         column.
720         (gtk_tree_view_column_pack_end_cell_renderer): ditto.
721         (gtk_tree_view_column_cell_is_visible): Move more functionality to
722         the column.
723         (gtk_tree_view_column_cell_can_focus): Move more functionality to
724         the column.
725
726         * gtk/gtktreeview.c: Move to use new column-packing code.
727         (gtk_tree_view_real_expand_row): remove totally braindead code.
728         (gtk_tree_view_real_collapse_row): ditto.
729
730 2001-06-27  Kjartan Maraas  <kmaraas@gnome.org>
731
732         * gtk/gtktreeviewcolumn.c: Fix a typo.
733         
734 2001-06-26  Joel Becker  <jlbec@evilplan.org>
735
736         * gdk-pixbuf/gdk-pixbuf-csource.c: remove '#include "x"' line
737           at the end of the file
738
739 2001-06-26  Havoc Pennington  <hp@redhat.com>
740
741         * gtk/gtkwindow.c (gtk_window_set_policy): forgot a notification
742
743 2001-06-26  Havoc Pennington  <hp@redhat.com>
744
745         * gtk/gtkwindow.c (gtk_window_class_init): add "resizable"
746         property
747
748 Tue Jun 26 12:59:28 2001  Jonathan Blandford  <jrb@redhat.com>
749
750         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_set_model): fix
751         stupid missing statement
752
753         * gtk/gtktreeview.c (gtk_tree_view_set_destroy_count_func): New
754         private function for ATK.  It notifies you of how many _visible_
755         children are deleted when a node is deleted.  Should be used by
756         atk only.
757
758 Tue Jun 26 11:06:34 2001  Owen Taylor  <otaylor@redhat.com>
759
760         * gtk/gtkclist.c gtk/gtkentry.c gtk/gtkspinbutton.c:
761         Use new pango_context_get_metrics() to fix problems
762         with font lists in descriptions. (#56184, reported by
763         Jonas Borgström)
764
765 Tue Jun 26 10:04:30 2001  Tim Janik  <timj@gtk.org>
766
767         * gtk/gtkiconfactory.c:
768         * gtk/gtkitemfactory.c: use gdk_pixbuf_new_from_stream(). fixed up
769         item factory so inlined pixbufs actually work.
770
771 2001-06-25  Havoc Pennington  <hp@redhat.com>
772
773         * gtk/gtktreeviewcolumn.h, gtk/gtktreeviewcolumn.c:
774         s/RESIZEABLE/RESIZABLE/
775
776         * gtk/gtkwindow.c, gtk/gtkwindow.h: s/resizeable/resizable/
777
778 2001-06-25  Alexander Larsson  <alexl@redhat.com>
779
780         * configure.in:
781         Added --enable-fbmanager. This is some experimental code
782         that lets several GtkFB apps coordinate their access to the
783         framebuffer.
784         
785         * acconfig.h:
786         Added ENABLE_FB_MANAGER.
787
788         * gdk/linux-fb/Makefile.am:
789         Added gdkfbmanager and gdkfbswitch.
790
791         * gdk/linux-fb/gdkkeyboard-fb.c:
792         * gdk/linux-fb/gdkmouse-fb.c:
793         * gdk/linux-fb/gdkprivate-fb.h:
794         Split device init and open so that
795         they can be opened and closed while switched
796         away.
797
798         * gdk/linux-fb/gdkmain-fb.c:
799         Add the basic manager communication.
800
801         * gdk/linux-fb/gdkrender-fb.c:
802         Don't update to the shadow fb if we're
803         blocked by the fb manager.
804
805 Sun Jun 24 22:15:16 2001  Owen Taylor  <otaylor@redhat.com>
806
807         * docs/Changes-2.0.txt: Add note about child property
808         changes.
809
810 Sun Jun 24 21:34:32 2001  Owen Taylor  <otaylor@redhat.com>
811
812         * gtk/gtkenums.h gtk/gtkiconfactory.c: Add a special size for
813         drag-and-drop GTK_ICON_SIZE_DND (Default to 32x32)
814
815         * gtk/gtkdnd.c (gtk_drag_dest_set_target_list): Fix problem
816         with un'reffing wrong list reported by Jeff Franks.
817
818         * gtk/gtkdnd.[ch] (_gtk_drag_{source,}dest_handle_event): _prefix.
819
820         * gtk/gtkdnd.c (gtk_drag_set_icon_default): Use GTK_STOCK_DND
821         for the default icon. Remove inline XPM.
822
823         * gtk/gtkstock.h gtk/gtkiconfactory.c:
824         Add GTK_STOCK_DND GTK_STOCK_DND_MULTIPLE (Currently, stock_new
825         is used for GTK_STOCK_DND, but it is a bit too small.)
826
827         * gtk/stock-icons/stock_dnd_multiple.png
828         gtk/stock-icons/Makefile.am: New stock icon moved from gnome-libs.
829
830         * gtk/gtkdnd.c (gtk_drag_source_event_cb): Only return
831         TRUE when starting a drag. In other cases, we are
832         just observing. (#52995)
833
834         * gtk/gtkdnd.[ch] (gtk_drag_set_icon_{stock,pixbuf}): Add 
835         function to set the icon for a drag from a GdkPixbuf
836         or stock ID.
837
838         * gtk/gtkdnd.[ch] (gtk_drag_source_set_icon_{stock,pixbuf}): 
839         Likewise, for drag sources.
840
841         * gtk/gtkdnd.h: Deprecate gtk_drag_set_default_icon.
842         (Now should be done using the stock system.)
843
844 Sun Jun 24 12:06:47 2001  Owen Taylor  <otaylor@redhat.com>
845
846         * gtk/gtktextview.[ch] (gtk_text_view_set_text_window_size): 
847         Removed - didn't work and not particularly useful anyways
848         if it did. 
849
850 Sun Jun 24 11:29:35 2001  Owen Taylor  <otaylor@redhat.com>
851
852         * gdk/x11/gdkimage-x11.c (gdk_image_new): Fix stupid error
853         introduced last night that was making things decidedly not work.
854
855         * gtk/*.[ch]: Patch from Kristian Rietveld adding 80 getters
856         so that we have getter/setter pairing everywhere it makes
857         sense. (#55767)
858
859         * gtk/gtkradiobutton.[ch] gtk/gtktoolbar.c tests/testgtk.:
860         Rename gtk_radio_button_group to gtk_radio_button_get_group, add a
861         deprecated compat macro. (#55516)
862
863         * gtk/gtklabel.[ch]: Add functions
864         gtk_label_set/get_use_underline(), gtk_label_set/get_use_markup(),
865         gtk_label_set_label(), which mirror the property API for GtkLabel.
866         Make gtk_label_get_attributes() only reflect the attributes
867         set by gtk_label_set_attributes.
868
869         * gtk/gtknotebook.c (gtk_notebook_set_current_page) gtk/gtkcompat.h: Rename
870         from gtk_notebook_set_page().
871
872 Sat Jun 23 18:02:46 2001  Owen Taylor  <otaylor@redhat.com>
873
874         * configure.in: Fix tests for XShm.h.
875
876         * gdk/x11/gdkimage-x11.c: Cleanup error handling in
877         gdk_image_new() by use of goto, properly use g_object_unref().
878
879 Sat Jun 23 22:03:20 2001  Tim Janik  <timj@gtk.org>
880
881         * gdk/x11/gdkimage-x11.c (gdk_image_init): disabled g_free (image)
882         calls, as GdkImage is an object. these should be g_obejct_unref()
883         instead but that won't work because of the g_error() statement
884         in gdk_x11_image_destroy(). so for now, i did s/g_free/LEAK_IMAGE/
885         to spot these places.
886
887 Sat Jun 23 10:27:53 2001  Owen Taylor  <otaylor@redhat.com>
888
889         * modules/input/gtkimcontextxim.c: Fixup some problems with 
890         text length handling in error cases.
891
892         * gtk/gtkwidget.c (gtk_widget_size_allocate): Reorder
893         a bit to make test actually warn on attempt to allocation
894         a negative size. (#56101, Matthias Clasen)
895
896 Fri Jun 22 14:06:08 2001  Jonathan Blandford  <jrb@redhat.com>
897
898         * gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): Fix bug
899         noticed by Brian Cameron.
900         (gtk_tree_view_real_expand_row): Fix bug noticed by Brian
901         Cameron.
902
903 2001-06-22  Hans Breuer  <hans@breuer.org>
904
905         * gdk/gdk.def : updated externals
906
907         * gdk/win32/gdkdrawable-win32.c : corrected some casts
908         in GDK_NOTEs
909
910         * gdk/win32/gdkevents-win32.c : use _gdk_windowing_window_get_offsets
911         to translate coordinates to the internal > 16 bit system
912         Try to handle WM_WINDOWPOSCHANGED to get better performance for
913         when moving/resizing
914
915         * gdk/win32/gdkkeys-win32.c : implement gdk_keymap_get_default ()
916         and gdk_keymap_get_direction (). The latter is untested for
917         the RTL case
918
919         * gtk/gtk.def : updated externals
920
921         * gtk/gtkmain.c : gtk_get_default_language () should reurn the result
922         from pango_language_from_string (), not an already freed pointer
923
924         * gtk/stock-icons/stock_menu_sort_ascending.png : PNGs need to be 
925         binary (-kb) to be useable on windoze
926  
927 2001-06-21  Alexander Larsson  <alexl@redhat.com>
928
929         * gdk/linux-fb/gdkfont-fb.c (gdk_font_from_description): 
930         Update to new PangoLanguage changes.
931         
932         * gtk/gtkwindow-decorate.c:
933         * gtk/gtkwindow.[ch]:
934         Added setting argument to gtk_window_set_has_frame ()
935         
936 Thu Jun 21 13:42:01 2001  Owen Taylor  <otaylor@redhat.com>
937
938         * gdk/x11/gdkkeys-x11.c (gdk_keymap_get_direction): Handle
939         the case without XKB properly.
940
941         * gtk/gtkrc.c (gtk_rc_set_default_files): Remove
942         unused gtk_rc_auto_parse variable.
943
944         * gtk/gtkrc.[ch] gtk/gtkstyle.c docs/Changes-2.0.txt:
945         Remove gtk_rc_set_image_loader(), gtk_rc_load_image(), no
946         longer needed with GdkPixbuf.
947
948         * gtk/gtkrc.c (_gtk_rc_init): Make private.
949
950 Fri Jun 15 16:26:12 2001  Owen Taylor  <otaylor@redhat.com>
951
952         * gtk/gtkentry.h: Mark deprecated functions with
953         GTK_DISABLE_DEPRECATED.
954
955 Mon Jun 11 18:15:16 2001  Owen Taylor  <otaylor@redhat.com>
956
957         * gdk/gdk.h: Add missing gdk_rectangle_get_type() prototype.
958
959         * gtk/gtk[hv]scale.c: Include math.h, stdlib.h
960
961         * gdk/gdkpango.h gtk/gtkclist.c gtk/gtkentry.c gtk/gtkmain.[ch]
962           gtk/gtkspinbutton.c gtk/gtkstyle.c gtk/gtktextbuffer.c
963           gtk/gtktextdisplay.c gtk/gtktextiter.[ch]
964           gtk/gtktextlayout.c gtk/gtktexttag.[ch] gtk/gtkwidget.c: Adapt
965           to recent changes in Pango.
966
967         * tests/testgtk.c: Set language tags with gtk_label_set_markup()
968           to test whether the basic engine honors them.
969
970 Thu Jun 21 02:13:40 2001  Tim Janik  <timj@gtk.org>
971
972         * gtk/gtkcontainer.[hc]: added gtk_container_child_set_property() and
973         gtk_container_child_get_property().
974
975 Wed Jun 20 19:19:15 2001  Jonathan Blandford  <jrb@redhat.com>
976
977         * gtk/gtktreeview.c (gtk_tree_view_move_cursor_up_down): clean up
978         (gtk_tree_view_move_cursor_page_up_down): implement.
979
980 Wed Jun 20 05:32:05 2001  Tim Janik  <timj@gtk.org>
981
982         * gtk/gtkspinbutton.c: make maximum digits compile time configurable
983         via MAX_DIGITS and up to 20. 5 was just ridiculously small.
984         don't use automatic fixed size buffer for printf-ing floats, doubles
985         can expand to really _huge_ strings, use g_strdup_printf() instead.
986
987 Wed Jun 20 04:28:24 2001  Tim Janik  <timj@gtk.org>
988
989         * gtk/gtkrange.c (gtk_range_class_init): hum, "adjustment" was a
990         construct property in 1.2 and still needs to be.
991
992         * gtk/gtkwidget.c: "composite_child" is not a settable property.
993
994 Tue Jun 19 19:13:19 2001  Jonathan Blandford  <jrb@redhat.com>
995
996         * gtk/gtkliststore.c (gtk_list_store_clear): 
997         * gtk/gtktreestore.c (gtk_tree_store_clear): New functions to
998         clear a model.
999
1000 Mon Jun 18 02:00:49 2001  Tim Janik  <timj@gtk.org>
1001
1002         * gtk/gtkwidget.c (gtk_widget_get_property): fix PROP_EVENTS.
1003
1004         * gtk/Makefile.am:
1005         * gtk/gtk.h: disabled GtkPacker compilation.
1006
1007         * gtk/gtkarg.[hc], gtk/gtkargcollector.c: got rid of these.
1008
1009         * gtk/gtknotebook.c:
1010         * gtk/gtktable.c:
1011         * gtk/gtkbox.c: ported this over to child properties.
1012
1013         * gtk/gtksettings.c: fetch class properties via
1014         g_object_class_list_properties().
1015
1016         * gtk/gtkcontainer.[hc]: implemented child properties, got rid of the
1017         child arg interface. use gobjectnotifyqueue.c for child property
1018         notification.
1019
1020         * gtk/gtkwidget.[hc]: provide necessary means for container child
1021         properties, i.e. ::child_notify signal,
1022         gtk_widget_freeze_child_notify(),
1023         gtk_widget_child_notify(),
1024         gtk_widget_thaw_child_notify().
1025
1026         * tests/testgtk.c: removed inferior property handling code, for
1027         property editing, a generic module should be used, and GLE
1028         coincidentally fullfills that purpose.
1029
1030         * docs/reference/Makefile.am: disabled gtk docs building, gtk-doc
1031         needs to be adapted to g_object_class_list_properties() before this
1032         builds again.
1033
1034 Mon Jun 18 20:06:10 2001  Jonathan Blandford  <jrb@redhat.com>
1035
1036         * gtk/gtktreeview.c (gtk_tree_view_row_expanded): New function to
1037         test if a node is expanded.
1038
1039 Mon Jun 18 19:41:38 2001  Jonathan Blandford  <jrb@redhat.com>
1040
1041         * gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): Fix bug
1042         where collapsing a selected row would result in the cursor/anchor
1043         getting screwed up.
1044
1045 Fri Jun 15 18:53:48 2001  Jonathan Blandford  <jrb@redhat.com>
1046
1047         * gtk/gtktreesortable.c (gtk_tree_sortable_set_sort_func): Rename
1048         gtk_tree_sortable_sort_column_id_set_func.  It's much shorter now.
1049         * gtk/gtktreeview.c (gtk_tree_view_sort_iter_changed): WOOO!!!
1050         Now I can really reorder/sort all Store widgets.  treesorttest
1051         seems to just work now.
1052         * gtk/gtklistview.c (gtk_list_store_iter_changed): Whoops.
1053         testtreesort worked through a big coincidence all this time.
1054         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): Nasty bug fix in nasty
1055         code.
1056         * tests/testtreecolumns.c: Big 'ol warning at the top letting
1057         people know that this code should never ever ever be copied.
1058
1059 2001-06-15  Jonas Borgström  <jonas@codefactory.se>
1060
1061         * gtk/gtkwindow.h: Fixed a small typo, it should be
1062         GTK_WINDOW_GROUP_GET_CLASS and not GTK_WINDOW_GET_CLASS
1063         on line 134.
1064
1065 2001-06-14  Havoc Pennington  <hp@redhat.com>
1066
1067         Docs fixups, and:
1068         
1069         * gtk/gtkcompat.h: remove GTK_DISABLE_COMPAT_H, replace with
1070         GTK_DISABLE_DEPRECATED
1071
1072 Thu Jun 14 19:21:27 2001  Jonathan Blandford  <jrb@redhat.com>
1073
1074         * gtk/gtktreestore.c (gtk_tree_store_sort_helper): Whoops.  Forgot
1075         this a couple months ago.  Now GtkTreeStore sort of sorts.  I'll
1076         finish it off tonight, though it basically works now when it's a
1077         list.  Also, I have a sinking feeling neither GtkTreeStore or
1078         GtkListStore actually resort when adding a new item.  I'll look
1079         into it.
1080
1081 2001-06-14  Havoc Pennington  <hp@redhat.com>
1082
1083         * demos/gtk-demo/main.c (load_file): fix bug identified by
1084         warnings I just added to gtktextbuffer
1085
1086 2001-06-14  Havoc Pennington  <hp@redhat.com>
1087
1088         * gtk/gtkwindow.c (window_group_cleanup_grabs): fix other typo
1089
1090         * gtk/gtkwidget.c (gtk_widget_propagate_state): fix typo
1091
1092         * gtk/gtktextbtree.c: don't leak node data all over the place.
1093
1094         * demos/gtk-demo/main.c (main): create fontify tags for the right
1095         buffer
1096
1097         * gtk/gtktextbuffer.c, gtk/gtktexttagtable.c: enhance docs
1098         to mention tags in the same table can't have the same name,
1099         suggested by Skip Montanaro
1100
1101 2001-06-11  Havoc Pennington  <hp@redhat.com>
1102
1103         * gtk/gtktexttagtable.c (gtk_text_tag_table_add): improve warning 
1104         for trying to add two tags with same name to the tag table
1105
1106         * demos/gtk-demo/main.c (main): fix colors ;-)
1107
1108 `Fri Jun  8 17:56:52 2001  Owen Taylor  <otaylor@redhat.com>
1109
1110         * gtk/gtkwindow.[ch] gtk/gtkmain.c: Add a GtkWindowGroup struct
1111         that allows grouping together multiple windows so that grabs
1112         within that set of windows only affect those windows.
1113
1114         * gtk/gtkmain.c gtk/gtkwidget.[ch]: Add a "grab_notify"
1115         signal for notification when a widget becomes shadowed
1116         by a grab or is no longer shadowed by a grab.
1117
1118         * gtk/gtkwidget.c (gtk_widget_propagate_state)
1119           gtk/gtkmain.c: (gtk_widget_grab_add): Don't allow
1120         insenstive widgets to maintain a grab.
1121
1122 2001-06-14  Alexander Larsson  <alexl@redhat.com>
1123
1124         * docs/README.linux-fb:
1125         Add some example config files that can be used with the URW fonts.
1126         
1127         * gdk/linux-fb/gdkvisual-fb.c (gdk_visual_init): 
1128         Set up the color ramps for DirectColor mode.
1129
1130 2001-06-11  Havoc Pennington  <hp@redhat.com>
1131
1132         * Release 1.3.6
1133          
1134 2001-06-13  Alexander Larsson  <alla@lysator.liu.se>
1135
1136         * gdk/linux-fb/gdkwindow-fb.c:
1137         Unify shaped window code and make it repaint the area that used
1138         to be part of the shape, but isn't anymore.
1139
1140 2001-06-11  Havoc Pennington  <hp@redhat.com>
1141
1142         * NEWS: Updates
1143
1144         * configure.in (GTK_MINOR_VERSION): bump version to 1.3.6
1145
1146         * gtk/Makefile.am: glib_genmarshal already contains top_builddir
1147         
1148 2001-06-13  Alexander Larsson  <alla@lysator.liu.se>
1149
1150         * gdk/linux-fb/gdkdnd-fb.c (gdk_drag_status):
1151         Don't pass on GDK_ACTION_DEFAULT. The Xdnd code
1152         passes zero instead, so do we.
1153         
1154 2001-06-13  Alexander Larsson  <alla@lysator.liu.se>
1155
1156         * gdk/linux-fb/gdkgc-fb.c (gdk_gc_copy):
1157         Deep copy dash_list too.
1158         (_gdk_fb_gc_new): Set default cap_style before
1159         setting values.
1160
1161 2001-06-12  Alexander Larsson  <alla@lysator.liu.se>
1162
1163         * gdk/linux-fb/gdkkeyboard-fb.c (gdk_keymap_get_default,
1164         gdk_keymap_get_direction): New functions.
1165
1166 Tue Jun 12 12:41:27 2001  Jonathan Blandford  <jrb@redhat.com>
1167
1168         * gtk/gtktreemodel.h (GTK_TREE_MODEL_LIST_ONLY): further justify
1169         gtk_tree_model_get_flags by adding a second flag for atk.
1170
1171         * gtk/gtktreemodel.c: make cursor behavior interact better with
1172         mouse presses.
1173
1174 Mon Jun 11 12:43:08 2001  Jonathan Blandford  <jrb@redhat.com>
1175
1176         * gtk/gtktreeview.c (gtk_tree_view_class_init): changed
1177         expand_row/collapse_row to be 2 signals each -- test_expand_row
1178         and row_expanded as well as test_collapse_row and row_collapsed.
1179
1180 2001-06-10  Anders Carlsson  <andersca@codefactory.se>
1181
1182         * demos/gtk-demo/stock_browser.c (do_stock_browser): Update
1183         signal name to be changed instead of selection_changed.
1184
1185 2001-06-08  Havoc Pennington  <hp@redhat.com>
1186
1187         * gtk/gtkentry.c (gtk_entry_class_init): add read-only
1188         "scroll_offset" property for notification when the layout offsets
1189         may have changed
1190         (gtk_entry_adjust_scroll): add notify for scroll_offset
1191         (gtk_entry_layout_index_to_text_index): function to compensate for
1192         preedit string when doing coordinate stuff on the entry's layout
1193         (gtk_entry_text_index_to_layout_index): inverse function
1194         (gtk_entry_get_layout_offsets): hook to get current position of
1195         the layout      
1196         (gtk_entry_get_layout): hook to get the layout itself.
1197
1198         * gtk/gtklabel.c (gtk_label_get_layout): new function
1199
1200 Fri Jun  8 19:49:29 2001  Jonathan Blandford  <jrb@redhat.com>
1201
1202         * gtk/gtktreeview.c (gtk_tree_view_real_select_cursor_row): New
1203         keybinding.
1204         (gtk_tree_view_focus): Fix merge conflict.
1205
1206 Fri Jun  8 18:41:30 2001  Jonathan Blandford  <jrb@redhat.com>
1207
1208         * gtk/gtktreeview.c (gtk_tree_view_set_cursor): new function to
1209         clean up cursor handling.
1210
1211 2001-06-08  Havoc Pennington  <hp@redhat.com>
1212
1213         * gtk/gtktextbuffer.c (gtk_text_buffer_get_start_iter): added this
1214         function
1215
1216         * gtk/gtktextview.c (gtk_text_view_get_default_attributes): added
1217         this function
1218
1219 2001-06-08  Alex Larsson  <alexl@redhat.com>
1220
1221         * gtk/gtkcompat.h.in:
1222         Added compat macros for all old GTK_TYPE_GDK_xxx types.
1223         Fixes bug #52892
1224
1225 2001-06-08  Havoc Pennington  <hp@redhat.com>
1226         
1227         * gtk/gtkhsv.h (struct _GtkHSVClass): had GtkContainerClass as
1228         parent still
1229
1230 2001-06-08  Havoc Pennington  <hp@redhat.com>
1231
1232         * gtk/gtktextbuffer.c (gtk_text_buffer_remove_all_tags): geez,
1233         don't call g_list funcs on GSList
1234
1235         * gtk/gtkwidget.c (gtk_widget_child_focus): replaces
1236         gtk_container_focus(), since some widgets have focusable locations
1237         which are not other widgets. These widgets should not have to be 
1238         containers just to manage the focus. For example, GtkHSV is
1239         currently a container for no good reason. Also, this cleans
1240         up the "if (is_container && is_sensitive && is_drawable)
1241         container_focus ()" mess in widget implementations.
1242
1243         * gtk/gtkcontainer.c (gtk_container_focus): deprecate this
1244         function, and have it just call gtk_widget_child_focus().
1245
1246         * gtk/gtkhsv.c: derive from widget not container
1247         
1248         Throughout: fix to reflect GtkContainer::focus change
1249         
1250 Fri Jun  8 12:38:49 2001  Jonathan Blandford  <jrb@redhat.com>
1251
1252         * gtk/gtktable.c (gtk_table_resize): warn if row/cols are out of
1253         range.  Fix bug #55921
1254
1255         * gtk/gtkliststore.c (gtk_list_store_new_with_types): fix doc bug
1256         (#55920).
1257
1258 Fri Jun  8 12:03:07 2001  Owen Taylor  <otaylor@redhat.com>
1259
1260         * gdk/gdkkeys.[ch]: Add a direction-changed signal,
1261         and gdk_keymap_get_current_direction().
1262
1263         * gdk/x11/gdkevents-x11.c gdk/x11/gdkkeys-x11.c
1264           gdk/x11/gdkmain-x11.c gdk/x11/gdkprivate-x11.h: Track
1265         the current locked group, use it to set the keymap
1266         direction.
1267
1268         * gtk/gtksettings.c: Add a new gtk-split-cursor setting
1269         to determine whether we draw a split cursor or use
1270         a jumping cursor based on the current direction.
1271
1272         * gtk/gtkentry.c gtk/gtktextview.c gtk/gtktextlayout.[ch]:
1273         Obey the split cursor setting. 
1274
1275 Fri Jun  8 11:57:50 2001  Owen Taylor  <otaylor@redhat.com>
1276
1277         * gtk/gtkimmulticontext.c (activate_cb): Only activate
1278         when toggling on, not when toggling off... (#55906)
1279
1280 Wed Jun  6 10:37:07 2001  Owen Taylor  <otaylor@redhat.com>
1281
1282         * gtk/gtkwidget.c (gtk_widget_set_double_buffered): 
1283         s/gdk_window_begin_paint/gdk_window_begin_paint_region/
1284         in docs. (#55812, Vitaly Tishkov)
1285
1286 2001-06-08  Anders Carlsson  <andersca@codefactory.se>
1287
1288         * demos/gtk-demo/main.c (create_tree): Changed signal name from
1289         selection_changed to changed in signal connection to GtkTreeSelection,
1290         also used g_signal_connectc since GtkTreeSelection is now a GObject.
1291
1292 Thu Jun  7 18:25:42 2001  Jonathan Blandford  <jrb@redhat.com>
1293
1294         * gtk/gtktreeselection.c: Now it's a GObject instead of a
1295         GtkObject.  The GtkTreeSelection::selection_changed signal is now
1296         the GtkTreeSelection::changed signal.
1297
1298         * gtk/gtktreeview.c: Modified to deal with new GtkTreeSelection
1299         object.
1300
1301         * tests/gtktree*.c: Modified to deal with new GtkTreeSelection
1302         object.
1303
1304 2001-06-07  Havoc Pennington  <hp@redhat.com>
1305
1306         * gtk/Makefile.am: fix glib-mkenums and glib-genmarshal again
1307
1308 2001-06-07  Havoc Pennington  <hp@redhat.com>
1309         
1310         * gtk/Makefile.am: fixups for glib-mkenums and glib-genmarshal
1311         (not tested yet because with absolute path to srcdir I can't build
1312         atk, but it was broken anyway so this may help) 
1313
1314 2001-06-07  Havoc Pennington  <hp@redhat.com>
1315
1316         * configure.in: output m4macros/Makefile
1317         
1318 Wed Jun  6 21:59:16 2001  Jonathan Blandford  <jrb@redhat.com>
1319
1320         * gtk/gtktreeview.c (gtk_tree_view_size_allocate): hook up arrow
1321         buttons.  Fixes #55460 reported by matthiasc@poet.de.
1322
1323 Wed Jun  6 21:18:54 2001  Jonathan Blandford  <jrb@redhat.com>
1324
1325         * gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): centralize
1326         expansion/collapsing so it only happens in one place.
1327         (gtk_tree_view_real_expand_row): ditto.
1328
1329 2001-06-07  Havoc Pennington  <hp@redhat.com>
1330
1331         * tests/Makefile.am: add missing -I flag
1332
1333         * gtk/Makefile.am: use @GLIB_MKENUMS@, @GLIB_GENMARSHAL@, etc.
1334
1335         * configure.in: use pkg-config to see if GModule is
1336         supported; fix to properly turn on included loaders 
1337         when GModule isn't supported; don't use AC_CHECK_LIB 
1338         when libs are not installed yet
1339
1340         * autogen.sh: add support for AUTOGEN_SUBDIR_MODE
1341
1342         * Makefile.am (SUBDIRS): add m4macros subdir
1343
1344         * gtk/Makefile.am: $(srcdir)/foo targets must be $(srcdir)/foo in
1345         dependencies also.
1346
1347 Wed Jun  6 19:31:11 2001  Jonathan Blandford  <jrb@redhat.com>
1348
1349         * gtk/gtktreeview.c (gtk_tree_view_set_model): fix silly bug
1350         reported by "Padraig O'Briain" <Padraig.Obriain@Sun.COM>.
1351
1352 Wed Jun  6 20:01:38 2001  Jonathan Blandford  <jrb@redhat.com>
1353
1354         * gtk/gtktreeview.c
1355         (gtk_tree_view_real_expand_collapse_cursor_row): Handle key
1356         bindings to expand and collapse rows.
1357         (gtk_tree_view_real_select_cursor_parent): New key binding.
1358         (gtk_tree_view_real_toggle_cursor_row): New key binding.
1359
1360         * gtk/gtkmarshal.list: new
1361         marshaller. (VOID__BOOLEAN_BOOLEAN_BOOLEAN)
1362
1363 2001-06-06  Havoc Pennington  <hp@redhat.com>
1364
1365         * gtk/gtkrange.c (gtk_range_class_init): add "inverted" property
1366
1367         * gtk/gtkscale.c (gtk_scale_class_init): Change Page Up and Page
1368         Down to move visually rather than logically, since it confuses 
1369         people. Add -/+ and Ctrl--/+ bindings for logical movement.
1370
1371 2001-06-06  Alex Larsson  <alexl@redhat.com>
1372
1373         * gdk/linux-fb/gdkmain-fb.c (_gdk_windowing_init_check):
1374         Fix up error messages.
1375
1376 Wed Jun  6 10:34:42 2001  Owen Taylor  <otaylor@redhat.com>
1377
1378         * gtk/gtktooltips.h: Include gtkwidget.h 
1379         (#55798, Karl Nelson)
1380
1381         * gdk/x11/gdkwindow-x11.c (utf8_is_latin1): 0xff is
1382         a valid latin-1 character. (Marc Lehmann, #35467)
1383
1384         * gdk/x11/gdkwindow-x11.c: Fix minor typo in comment. 
1385         (Marc Lehmann, #35467)
1386         
1387 2001-06-05  Alex Larsson  <alexl@redhat.com>
1388
1389         * demos/gtk-demo/appwindow.c (do_appwindow):
1390         Don't swap the order of the args to gtk_widget_destroyed.
1391
1392         * tests/testgtk.c (destroy_properties):
1393         Don't crash when the properties window is destroyed.
1394
1395         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_new_from_stock):
1396         Use with_mnemonics to handle the case of stock items with
1397         underscores in them.
1398
1399 2001-06-05  Havoc Pennington  <hp@redhat.com>
1400
1401         * gtk/gtktextiter.c (gtk_text_iter_order): rename from 
1402         gtk_text_iter_reorder
1403
1404 2001-06-05  Havoc Pennington  <hp@redhat.com>
1405
1406         * gtk/gtktoolbar.c (gtk_toolbar_remove_space): new function
1407
1408 2001-06-05  Havoc Pennington  <hp@redhat.com>
1409
1410         * gtk/gtkspinbutton.c (gtk_spin_button_set_range): clamp the value 
1411         to the range that was set
1412
1413         * gtk/gtkrange.c: add value_changed signal, primarily 
1414         intended for use with GtkScale
1415         (gtk_range_set_increments): new function
1416         (gtk_range_set_range): new function with weird name
1417         (gtk_range_set_value): new function
1418         (gtk_range_get_value): new function
1419
1420         * gtk/gtkspinbutton.c (gtk_spin_button_get_value): rename 
1421         from gtk_spin_button_get_value_as_float(). Compat #define
1422         added for get_value_as_float.
1423
1424         * gtk/gtkhscale.c (gtk_hscale_new_with_range): new function
1425
1426         * gtk/gtkvscale.c (gtk_vscale_new_with_range): new function
1427
1428 Tue Jun  5 14:57:18 2001  Jonathan Blandford  <jrb@redhat.com>
1429
1430         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_get_size): Fix bug #55573
1431
1432 Mon Jun  4 12:41:25 2001  Owen Taylor  <otaylor@redhat.com>
1433
1434         * gtk/gtkwidget.h: Deprecate gtk_widget_set().
1435
1436         * tests/testgtk.c (create_tooltips): Remove usage of
1437         gtk_widget_set().
1438
1439 2001-06-05  Havoc Pennington  <hp@redhat.com>
1440
1441         * gtk/gtkcolorsel.c: Use new mnemonic convenience functions
1442
1443         Applying patch from Jeff Franks, with function docs added.
1444         
1445         * gtk/gtkcheckbutton.c (gtk_check_button_new_with_mnemonic):
1446         remove call to set_mnemonic_widget, change docs a bit.  
1447
1448         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_new_with_mnemonic):
1449         new function
1450
1451         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_new_with_mnemonic):
1452         new function
1453
1454         * gtk/gtkmenuitem.c (gtk_menu_item_new_with_mnemonic): new function
1455
1456         * gtk/gtkradiobutton.c (gtk_radio_button_new_with_mnemonic): new
1457         function
1458         (gtk_radio_button_new_with_mnemonic_from_widget): new function
1459
1460         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_new_with_mnemonic):
1461         new function
1462
1463         * gtk/gtktogglebutton.c (gtk_toggle_button_new_with_mnemonic): new
1464         function        
1465
1466         * gtk/gtklabel.c (gtk_label_new_with_mnemonic): Improve docs on 
1467         auto-selection of mnemonic widget.
1468
1469 Mon Jun  4 15:05:24 2001  Jonathan Blandford  <jrb@redhat.com>
1470
1471         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_max_width):
1472         Fix segfault found by Vitaly Tishkov <tvv@sparc.spb.su>.
1473         (gtk_tree_view_column_set_min_width): ditto.
1474
1475 Tue Jun  5 11:04:06 2001  Owen Taylor  <otaylor@redhat.com>
1476
1477         * gdk/gdkpixmap.h (GDK_PIXMAP_GET_CLASS): 
1478         s/GdkPixmapClass/GdkPixmapObjectClass/. (#51890, Jeff Franks)
1479
1480 Mon Jun  4 12:50:11 2001  Owen Taylor  <otaylor@redhat.com>
1481
1482         * gtk/gtkctree.c (gtk_ctree_insert_gnode): Add a missing
1483         gtk_clist_thaw().
1484
1485 2001-06-04  Havoc Pennington  <hp@pobox.com>
1486
1487         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Ignore 
1488         releases for buttons 6, 7
1489
1490 2001-06-04  Havoc Pennington  <hp@redhat.com>
1491
1492         * gtk/gtkseparatormenuitem.h: Fix a search-and-replace screwup
1493         (s/CHECK/SEPARATOR/ gone awry). Patch from Jeff Franks, bug
1494         #55562
1495
1496 2001-06-04  Havoc Pennington  <hp@redhat.com>
1497
1498         * gtk/gtktextview.c (gtk_text_view_size_request): handle case
1499         where text_view->layout == NULL by assuming its size is 0, 
1500         i.e. same as if we haven't done any reflow. Reported by 
1501         Hidetoshi Tajima #55448 
1502
1503 2001-06-04  Havoc Pennington  <hp@redhat.com>
1504
1505         * gdk/x11/gdkevents-x11.c (gdk_event_translate): support button 6
1506         and 7 for scroll left/right, from Thomas Broyer
1507
1508 2001-05-10  Havoc Pennington  <hp@redhat.com>
1509
1510         * gtk/gtksettings.c (gtk_settings_get_property): Handle case where
1511         we need to parse the xsetting as if it were an RC file string.
1512
1513         * gtk/gtkcolorsel.c (gtk_color_selection_class_init): load initial
1514         value of palette from settings, not from static variable
1515
1516         * gdk/x11/gdkevents-x11.c: add color palette, toolbar mode to
1517         xsettings translation table
1518
1519         * gtk/gtktoolbar.c (gtk_toolbar_new): Remove arguments, because 
1520         hardcoding the toolbar style conflicts with new customizable 
1521         toolbar style philosophy
1522         (gtk_toolbar_class_init): add settings for default toolbar style;
1523         these are used unless the app specifically forces a toolbar style
1524
1525         * gtk/gtksettings.c (settings_install_property_parser): only
1526         return at the start if we warn and parser == NULL
1527
1528         * gtk/gtkcolorsel.c (gtk_color_selection_finalize): disconnect the
1529         palette changed handler so we don't notify dead color selections
1530
1531         * gtk/gtkstyle.c (gtk_default_draw_shadow): handle
1532         xthickness/ythickness of 0 or 1 properly 
1533         (gtk_default_draw_resize_grip): clear the background behind the
1534         resize grips, and align to bottom right if we square the 
1535         area to be drawn.
1536
1537         * gtk/gtkstatusbar.c (gtk_statusbar_init): set horizontal usize on 
1538         statusbar label to 1, so it doesn't make toplevels resize oddly
1539         (gtk_statusbar_size_request): add grip size to request
1540         (gtk_statusbar_size_allocate): hack so the hbox still works with 
1541         the grip size in the request
1542
1543         * gtk/gtktoolbar.c (gtk_toolbar_show_all): override to fix 
1544         bug where showing all on a toplevel makes the toolbar 
1545         button text appear despite the toolbar mode
1546
1547         * gtk/gtkmenubar.c: add internal padding style property
1548
1549         * gtk/gtktoolbar.c: Add internal padding style property; add
1550         shadow type style property
1551
1552         * gtk/gtkmenubar.c (gtk_menu_bar_paint): paint box with widget
1553         state; and put Container::border_width outside the frame
1554
1555         * gtk/gtktextview.c: don't draw focus rectangle if we're in
1556         interior focus mode, we just use blinking cursor
1557
1558 2001-06-04  Havoc Pennington  <hp@redhat.com>
1559
1560         * configure.in: Make gdk-pixbuf have same version number as GTK
1561
1562 2001-06-04  Havoc Pennington  <hp@redhat.com>
1563
1564         * gtk/gtkspinbutton.c: Get rid of stupid g_return_if_fail on 
1565         digits greater than 6. If there actually are limits (which there
1566         likely aren't), should clamp to them not warn.
1567         (gtk_spin_button_new_with_range): don't take log of 0
1568         (gtk_spin_button_size_request): use digits to compute size
1569         request, rather than step increment.
1570
1571         * tests/testgtk.c (create_spins): test larger values of digits
1572         
1573         * gtk/gtkfontsel.c (gtk_font_selection_init): scroll to selected
1574         font on map not expose, so we don't get weirdness during scrolling
1575
1576 2001-06-04  Havoc Pennington  <hp@redhat.com>
1577
1578         * gtk/gtkclist.c (vadjustment_value_changed): Apply fix from
1579         Sam Solon, bug #54577, update value even if not drawable.
1580
1581 2001-06-04  Havoc Pennington  <hp@redhat.com>
1582
1583         * gtk/gtkrange.c (gtk_range_scroll_event): change SCROLL_RIGHT to
1584         SCROLL_LEFT, reported by Thomas Broyer.
1585
1586 2001-06-04  Havoc Pennington  <hp@redhat.com>
1587
1588         * gtk/gtkrange.c (gtk_range_adjustment_value_changed): 
1589         Process updates immediately, to prevent funny lag effect
1590         when scrolling, at some mild potential efficiency cost.
1591
1592 2001-06-04  Havoc Pennington  <hp@redhat.com>
1593
1594         * gtk/gtkrange.c (gtk_range_button_press): on middle click, center
1595         slider on the click.
1596
1597 2001-06-03  Havoc Pennington  <hp@pobox.com>
1598
1599         * gtk/gtkstyle.c (gtk_default_draw_slider): make this special-case
1600         hscale/vscale details, so we can use it for scrollbar as well.
1601
1602         * tests/testgtk.c (reformat_value): honor digits from GtkScale
1603
1604         * gtk/gtkenums.h (GtkTroughType): Remove this enum
1605         (GtkScrollType): add START and END from GtkTroughType
1606
1607         * gtk/gtkstyle.c (gtk_default_draw_slider): was not properly using
1608         its x/y arguments
1609
1610         * gtk/gtkrange.h, gtk/gtkrange.c, gtk/gtkscrollbar.h,
1611         gtk/gtkscrollbar.c, gtk/gtkscale.h, gtk/gtkscale.c,
1612         gtk/gtkhscrollbar.h, gtk/gtkhscrollbar.c, gtk/gtkvscrollbar.h,
1613         gtk/gtkvscrollbar.c, gtk/gtkhscale.h, gtk/gtkhscale.c,
1614         gtk/gtkvscale.h, gtk/gtkvscale.c: Rewrite GtkRange and subclasses.
1615
1616         Notable changes in the process:
1617          
1618         - stepper_size style property is the height for vertical 
1619           ranges, width for horizontal; the other dimension matches
1620           the trough size
1621         - add ability to do NeXT-style steppers (and several other styles
1622           that don't make any sense)
1623         - added min_slider_length, fixed_slider_length properties to
1624           GtkScrollbar
1625         - cleaned some private (or at least useless) functions out of
1626           gtkscale.h    
1627         - moved bindings to GtkScale from subclasses, even arrow keys,
1628           since blind users don't know scale orientation.
1629         - change move_slider action signal to use new GtkScrollType,
1630           remove GtkTroughType argument
1631         - digits rounds the values a range will input to the given 
1632           number of decimals, but will not try to force adjustment 
1633           values set by other controllers. That is, we no longer
1634           modify adjustment->value inside a value_changed handler.
1635         - added getters for GtkScale setters
1636         - middle-click begins a slider drag
1637         
1638 Fri Jun  1 18:54:47 2001  Jonathan Blandford  <jrb@redhat.com>
1639
1640         * gtk/gtktreeview.c: (gtk_tree_view_focus): Initial stab at
1641         getting the focus code to work.
1642         (gtk_tree_view_class_init): Add a bunch of keybindings.
1643
1644         * gtk/gtktreeviewcolumn.c
1645         (gtk_tree_view_column_set_cell_data_func):
1646         s/GtkCellDataFunc/GtkTreeCellDataFunc.
1647         (_gtk_tree_view_column_set_tree_view): Use "notify::model" instead
1648         of "properties_changed" to help justify the death of the latter
1649         signal. (-:
1650
1651         * tests/testtreefocus.c (main): Let some columns be focussable to
1652         test focus better.
1653
1654 2001-06-01  Havoc Pennington  <hp@redhat.com>
1655
1656         * gtk/gtkentry.c (gtk_entry_commit_cb): implement overwrite mode
1657         
1658         * gtk/gtktextview.c (gtk_text_view_commit_handler): don't
1659         overwrite in overwrite mode if we already deleted the selection
1660         and replaced it with new text.  
1661
1662         * gtk/gtklabel.c (gtk_label_select_region_index): if you set the
1663         selection to an empty range, clear the clipboard if we owned it.
1664         (gtk_label_set_selectable): give up selection if we become
1665         unselectable.
1666         (gtk_label_state_changed): override state changed to unselect text
1667         when insensitive
1668         (get_text_callback): add paranoia check that indexes aren't
1669         outside of label->text
1670         (gtk_label_select_region): make -1 for start_offset mean "end of
1671         label," for consistency with GtkEditable
1672
1673         * gtk/gtkmessagedialog.c (gtk_message_dialog_new): honor
1674         GTK_DIALOG_NO_SEPARATOR flag
1675
1676 Fri Jun  1 11:47:11 2001  Owen Taylor  <otaylor@redhat.com>
1677
1678         * gtk/gtkcombo.c (gtk_combo_set_use_arrows_always): Fix 
1679         notifications on non-existant "enable_arrow_keys".
1680         (#53753, Skip Montanaro)
1681
1682 Fri Jun  1 11:31:55 2001  Owen Taylor  <otaylor@redhat.com>
1683
1684         * gdk/gdkrectangle.c (gdk_rectangle_get_type): Add 
1685         GDK_TYPE_RECTANGLE.
1686
1687         * gtk/gtkwidget.c (gtk_widget_class_init): Fix type
1688         of allocation argument be GDK_TYPE_RECTANGLE.
1689
1690 Thu May 31 12:43:57 2001  Owen Taylor  <otaylor@redhat.com>
1691
1692         * gtk/gtkoptionmenu.c: Account for the fact that the border
1693         width is _outside_ the window. (Fixes #54585, bug found
1694         by Bastien Nocera.)
1695
1696 Wed May 30 15:56:30 2001  Owen Taylor  <otaylor@redhat.com>
1697
1698         * gtk/gtksettings.c (gtk_settings_get_property): Validate
1699         value from GDK settings against parameter spec.
1700
1701         * gdk/x11/gdkevents-x11.c (gdk_setting_get): Add assignments
1702         to temporary values and use g_value_transform(), since
1703         thinking that GValue was going to be easy or efficient
1704         to use was, of course, a mistake.
1705
1706         * gtk/gtksettings.c: Add cursor blink setting.
1707         
1708         * gdk/x11/gdkevents-x11.c: Add cursor blink X settings.
1709
1710         * gtk/gtkentry.c: Add cursor blinking.
1711
1712         * gtk/gtktextview.c (gtk_text_view_check_cursor_blink): Use
1713         cursor blink global settings.
1714
1715         * gtk/gtkentry.c (gtk_entry_button_press): Add notification
1716         for :text_position in places where it is missing.
1717
1718 Tue May 29 18:17:11 2001  Owen Taylor  <otaylor@redhat.com>
1719
1720         * autogen.sh (have_libtool): Fix GNU sedism (#55430)
1721
1722 Tue May 29 17:40:29 2001  Owen Taylor  <otaylor@redhat.com>
1723
1724         * configure.in (GTK_DEP_CFLAGS): Use $PKG_CONFIG,
1725         not pkg-config. (#51032)
1726
1727         * gdk/gdkproperty.h: Remove inappropriate G_GNUC_CONST
1728         (fixes #51952, James Henstridge)
1729         
1730 2001-05-27  Alexander Larsson  <alla@lysator.liu.se>
1731
1732         * gtk/gtkstock.h (GTK_STOCK_GO_UP):
1733         Rename to the more correct gtk-go-up.
1734
1735         * gtk/stock-icons/stock_menu_sort_ascending.png:
1736         Added new file.
1737         
1738         * gtk/stock-icons/stock_menu_sort_descending.png:
1739         Changed to show descending instead of ascending.
1740
1741         * gtk/gtkiconfactory.c:
1742         Added menu size icon to sort ascending.
1743
1744         * gtk/stock-icons/Makefile.am:
1745         Added stock_menu_sort_ascending.png.
1746         
1747         * gtk/gtkseparatormenuitem.c:
1748         Use correct typenames.
1749
1750 Sun May 20 20:07:35 2001  Tim Janik  <timj@gtk.org>
1751
1752         * gtk/gtksignal.[hc] (gtk_signal_connect_full): make hanlder id a
1753         gulong as in GSignal.
1754
1755 Fri May 25 19:04:17 2001  Jonathan Blandford  <jrb@redhat.com>
1756
1757         * gtk/gtktreeview.c (gtk_tree_view_calc_size): Remove almost all
1758         instances of GtkCellRenderer in code (all but dnd icon code).
1759         Virtualized in GtkTreeViewColumn.  Now I need to move focus in
1760         there, and I can do multiple Cells per column.
1761
1762         * gtk/gtktreeviewcolumn.c: Proxy all cell calls correctly
1763
1764         * gtk/gtktreemodel.c (gtk_tree_row_reference_new_proxy): fix bug
1765         when model was unreffed prior to removing the row reference.
1766
1767 2001-05-25  Havoc Pennington  <hp@redhat.com>
1768
1769         * gtk/gtkiconfactory.c: fix so that default icons are created if 
1770         you call gtk_stock_list_ids()
1771
1772         * demos/gtk-demo/stock_browser.c (create_model): sort stock items
1773         in list
1774
1775 2001-05-25  Havoc Pennington  <hp@redhat.com>
1776
1777         * gtk/gtkiconfactory.c (gtk_icon_set_get_sizes): get sizes an icon
1778         set can render without falling back to missing image icon
1779
1780         * gtk/gtktextview.c (gtk_text_view_size_request): request full
1781         size of text, instead of random values
1782
1783         * gtk/gtktreeview.c (gtk_tree_view_size_request): request full
1784         size of tree view, instead of random values
1785
1786         * gtk/gtkiconfactory.c (gtk_icon_set_render_icon): render fallback
1787         image in an appropriate size
1788
1789         * gtk/gtkstock.h: Rename the stock items including _BUTTON_,
1790         etc. not to include that. i.e. s/GTK_STOCK_BUTTON_OK/GTK_STOCK_OK/
1791
1792         Throughout: fix GTK_STOCK_BUTTON_ instances
1793         
1794         * gtk/gtkstock.h, gtk/gtkstock.c, gtk/gtkiconfactory.h,
1795         gtk/gtkiconfactory.c, gtk/stock-icons/Makefile.am:
1796         Add a bunch of new stock items/icons
1797
1798         * gtk/gtktreeview.c (gtk_tree_view_insert_column_with_data_func):
1799         new function, convenience for inserting columns with a data func
1800
1801         * gtk/gtkiconfactory.c: keep a list of all existing icon factories
1802         (_gtk_icon_factory_list_ids): use list of all factories to
1803         generate a list of all known IDs
1804
1805         * gtk/gtkstock.c (gtk_stock_list_ids): replace
1806         gtk_stock_list_items() with a function that returns all IDs known
1807         including those for GtkIconFactory.
1808
1809 2001-05-25  Hans Breuer  <hans@breuer.org>
1810
1811         * gdk/win32/gdkgc-win32.c : made fil mode GDK_STIPPLED actually
1812         work -> check boxes and radio buttons are drawn now, even on win9x.
1813         Improved line settings a bit, still no clue how to get really dotted
1814         lines on win9x, on NT it's PS_ALTERNATE.
1815
1816         * gdk/win32/gdkwindow-win32.c : use SafeAdjustWindowRect for 
1817         GDK_HINT_MIN_SIZE as well
1818
1819         * gdk/win32/makefile.am : added gdkkeys-win32.c to EXTRA_DIST
1820
1821         * gtk/gtk.def : updated
1822
1823         * gtk/gtktreeprivate.h : change column_drop_func to be a function
1824         pointer not a function pointer pointer
1825
1826         * tests/testdnd.c : include <stdlib.h> for putenv prototype
1827
1828         * tests/testsocket.c : made it compile on win32 again
1829
1830         * tests/makefile.msc : one more test-app uses prop-editor.obj
1831
1832 2001-05-22  Havoc Pennington  <hp@pobox.com>
1833
1834         * gtk/gtkbin.c (gtk_bin_get_child): New function
1835
1836 Wed May 23 20:07:53 2001  Owen Taylor  <otaylor@redhat.com>
1837
1838         * gtk/gtkimcontextsimple.c: Add Mode_Switch to list of keys
1839         to ignore when doing compose processing.
1840
1841 2001-05-22  Joe Shaw  <joe@ximian.com>
1842
1843         * gtk/gtktextiter.c (_gtk_text_btree_get_iter_at_last_toggle): 
1844         Simplify as suggested by Havoc. Just get the last iter and work
1845         backward to the tag instead of getting a line and working back from
1846         there. Fixes passing in an invalid offset to
1847         iter_init_from_byte_offset().
1848
1849 Tue May 22 16:25:27 2001  Jonathan Blandford  <jrb@redhat.com>
1850
1851         * gtk/gtktreeview*.h: 
1852         * gtk/gtkcell*.h:
1853         * gtk/gtk*store.h:
1854         Added patch from Jeff Franks <jcf@tpg.com.au> to add GET_CLASS
1855         macros to all objects.
1856
1857 Tue May 22 15:13:52 2001  Jonathan Blandford  <jrb@redhat.com>
1858
1859         * gtk/gtkcellrenderertext.c
1860         (gtk_cell_renderer_text_set_fixed_size): Evil function to deal
1861         with very large (TM) amounts of text.  May be moved to
1862         GtkCellRenderer in the future, though I'm not sure it wants to be
1863         this accessible.
1864
1865         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_update_button):
1866         More sanity brought to this class.  I like it.
1867
1868         * tests/testtreecolumns.c (ViewColumnModel): Amazingly scary test
1869         case.  Kids, don't try this at home.
1870
1871         * gtk/gtktreemodel.c (gtk_tree_model_get_iter_root): new
1872         convenience function.
1873
1874         * gtk/gtkwindow.c (gtk_window_set_geometry_hints): Fix typo in docs.
1875
1876 2001-05-21  Alexander Larsson  <alexl@redhat.com>
1877
1878         * gtk/gtkfontsel.c:
1879         Added properties. Based on patch by Lee Mallabone.
1880
1881         * gtk/gtkruler.c:
1882         * gtk/gtkhruler.c:
1883         * gtk/gtkvruler.c:
1884         * gtk/gtktext.c:
1885         * gtk/gtktextview.c:
1886         Converted GtkArg to GParam. Based on patches by John Margaglione.
1887
1888         * tests/Makefile.am:
1889         * tests/testtext.c:
1890         Add a property editor to testtext.
1891         
1892 Mon May 21 11:29:21 2001  Owen Taylor  <otaylor@redhat.com>
1893
1894         * gtk/gtk{h,v,}paned.c: Only show the separator if 
1895
1896         * configure.in: Fixed reversed conditional causing all image
1897         libraries to be linked in.
1898
1899 2001-05-21  Joe Shaw  <joe@ximian.com>
1900
1901         * gtk/gtklayout.c (gtk_text_layout_get_lines): Remove the assertion
1902         that top_y needs to be >= 0.
1903
1904 2001-05-11  Havoc Pennington  <hp@pobox.com>
1905         
1906         * gdk/x11/gdkmain-x11.c: Improve error messages for X errors and
1907         losing connection to the X server.
1908
1909 Sun May 20 13:59:20 2001  Owen Taylor  <otaylor@redhat.com>
1910
1911         * configure.in: Start checks for X from pangox/pangoxft
1912         CFLAGS to avoid duplicate libraries.
1913
1914         * gdk/Makefile.am (LDFLAGS): Remove extra -lm.
1915
1916         * configure.in (GDK_PIXBUF_PACKAGES): Fix GDK_PIXBUF_PACKAGES
1917         to include gobject.
1918         
1919 2001-05-18  Alexander Larsson  <alexl@redhat.com>
1920
1921         * gtk/gtkspinbutton.c:
1922         Convert GtkArgs to GParams. Based on patch by John Margaglione.
1923         Also do size request reasonable for MAXDOUBLE. Previously it printed
1924         the limits to a buffer and overran it. Instead do it using log10() and
1925         limit the width to 10 digits.
1926         
1927         * gtk/gtkwidget.c (gtk_widget_get_property):
1928         Correctly handle setting the parent property to NULL.
1929
1930 Fri May 18 15:26:26 2001  Owen Taylor  <otaylor@redhat.com>
1931
1932         * gtk/gtktextview.c (gtk_text_view_style_set): Reset 
1933         style attributes even if the widget isn't realized.
1934
1935         * demos/gtk-demo/main.c: Use a slightly smaller font.
1936
1937 Fri May 18 14:25:20 2001  Owen Taylor  <otaylor@redhat.com>
1938
1939         * gtk/gtkcontainer.c: Remove reallocate-redraws property.
1940         This is something that only a widget writer would ever want
1941         to change.
1942
1943         * gtk/gtksignal.c: Handle G_SIGNAL_TYPE_STATIC_SCOPE for
1944         gtk_signal_emit_by_name().
1945
1946         * gtk/gtkviewport.c: Fix some warnings.
1947
1948         * gtk/gtkwidget.c gtk/gtksizegroup.c: Add "size group" facility
1949         allowing the requisitions of multiple widgets to be grouped
1950         together.
1951
1952         * tests/testgtk.c: Add GtkSizeGroup test
1953
1954         * demos/gtk-demo/sizegroup.c: Add GtkSizeGroup demo.
1955
1956         * demos/gtk-demo/main.c demos/gtk-demo/pixbufs.c: Fix some
1957         warnings.
1958
1959         * configure.in: Switch to using AM_GLIB_GNU_GETTEXT.
1960
1961 2001-04-28  Martin Baulig  <baulig@suse.de>
1962
1963         * gtk/gtkimagemenuitem.[ch]: Renamed gtk_image_menu_item_add_icon()
1964         to gtk_image_menu_item_set_icon() and made it work if there's already
1965         an image.
1966         (gtk_image_menu_item_new): This function doesn't take any arguments anymore.
1967         (gtk_image_menu_item_new_with_label): New function.
1968
1969 Thu May 17 16:20:04 2001  Jonathan Blandford  <jrb@redhat.com>
1970
1971         * demos/gtk-demo/main.c (fontify): It's the worlds ugliest
1972         highlighting code!!!!  The result is okay so long as you don't try
1973         to stress it.  It also highlights a bug in the TextView so it's in
1974         an unproportional font right now until it's fixed.
1975
1976         *demos/gtk-demo/*.c: Clean up code a bit to make it
1977         ugly-parser(TM) friendly. (-:
1978
1979 2001-05-17  Joe Shaw  <joe@ximian.com>
1980
1981         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Remove the assertions
1982         that x_offset and y_offset must be >= 0. Clip the cursor being drawn
1983         if it is only partially onscreen.
1984
1985 Thu May 17 17:10:13 2001  Owen Taylor  <otaylor@redhat.com>
1986
1987         * gtk/gtkentry.c: Make logical motion and deletion by graphemes, 
1988         not by characters.
1989
1990         * gtk/gtkentry.c: Handle "trailing" returns from Pango when they
1991         are not zero or one; that is, when graphemes of multiple characters
1992         are involved.
1993
1994         * gtk/gtktextlayout.c (line_display_index_to_iter): Remove unnecessary
1995         FIXME.
1996
1997 2001-05-17  Alexander Larsson  <alla@lysator.liu.se>
1998         
1999         * gtk/gtkbbox.c:
2000         Add properties, based on patch by Lee Mallabone.
2001
2002         * gtk/gtknotebook.c:
2003         * gtk/gtktoolbar.c:
2004         Convert from GtkArg to GParam, based on patch by John Margaglione.
2005         
2006         * gtk/gtkhscale.c:
2007         * gtk/gtkvscale.c:
2008         * gtk/gtkhscrollbar.c:
2009         * gtk/gtkvscrollbar.c:
2010         * gtk/gtkrange.c:
2011         Move adjustment property to GtkRange.
2012
2013         * gtk/gtklabel.c:
2014         Setup mnemonics on property changes
2015
2016         * gtk/gtkwidget.c (gtk_widget_get_property):
2017         GdkExtensionMode is an enum, not a flag. Set it with
2018         g_value_set_enum ().
2019
2020         * tests/prop-editor.c:
2021         Better propery editor.
2022
2023         * tests/testgtk.c:
2024         Add new property test. Pass zero to the property editor to
2025         get properties from all derived types.
2026         
2027 Sun May 13 12:01:12 2001  Owen Taylor  <otaylor@redhat.com>
2028
2029         * autogen.sh (have_automake): Require libtool-1.4,
2030         automake-1.4p1.
2031
2032         * acinclude.m4: Remove libtool macros.
2033
2034         * gdk-pixbuf/Makefile.am: Add dependencies to loade
2035         modules.
2036
2037         * gdk/Makefile.am: Add dependency on libgdk_pixbuf.la
2038         for libgdk.
2039
2040         * gtk/Makefile.am: Add dependency on libgdk_pixbuf.la
2041         libgdk.la for libgtk.
2042
2043         * modules/input/Makefile.am: Make modules have full
2044         dependencies.
2045
2046 Wed May 16 14:06:01 2001  Jonathan Blandford  <jrb@redhat.com>
2047
2048         * gtk/gtktreemodel.c (gtk_tree_path_new_from_string): fix bug
2049         #54699 where paths weren't being checked for correctness.
2050
2051 Tue May 15 20:13:24 2001  Jonathan Blandford  <jrb@redhat.com>
2052
2053         * gtk/gtktreeviewcolumn.c: You can now set all sorts of properties
2054         in any order you wan, whether or not the column is added to the
2055         tree, or the tree is realized.  Yay!
2056
2057         * gtk/gtktreeviewcolumn.c
2058         (gtk_tree_view_column_setup_sort_column_id_callback): handle
2059         sorting columns a lot saner
2060
2061         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_reorderable):
2062         new function to actually set wether or not a column is
2063         reorderable.
2064
2065         * gtk/gtktreeview.c (gtk_tree_view_unrealize): Only destroy things
2066         if we have 'em.
2067
2068         * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_set_tree_view):
2069         Fix nasty bug where we were showing the button just before
2070         realizing it.  As a result, the parent window was
2071         tree_view->window instead of tree_view->priv->header_window.
2072
2073         * gtk/gtktreeview.c (gtk_tree_view_set_reorderable): new property
2074         to let you easily reorder a list or tree.
2075
2076 2001-05-15  Alexander Larsson  <alla@lysator.liu.se>
2077
2078         * gtk/gtkpacker.c: Apply patch from John Margaglione that converts
2079         from args to properties.
2080
2081 Tue May 15 10:11:59 2001  Owen Taylor  <otaylor@redhat.com>
2082
2083         * gtk/gtkpreview.c: Apply patch from John Margaglione converting
2084         from args to properties. (#51957)
2085
2086         * gtk/gtkscale.c (gtk_scale_class_init): Move install property
2087         calls to after ->set_property call.
2088
2089 Mon May 14 14:56:21 2001  Owen Taylor  <otaylor@redhat.com>
2090
2091         * tests/prop-editor.c: Block against redundant changes.
2092
2093         * gtk/gtkpaned.c gtk/gtk[hv]paned.c: Add position, position_set
2094         properties.
2095
2096 Sun May 13 18:40:04 2001  Owen Taylor  <otaylor@redhat.com>
2097
2098         * gdk/gdkpixmap.h: Remove creative formatting.
2099
2100 Thu May 10 19:22:28 2001  Owen Taylor  <otaylor@redhat.com>
2101
2102         * gtk/gtktogglebutton.c:  Patch from John Margaglione converting to
2103         property API. (#51669)
2104
2105         * gtk/gtkscale.c: Patch from John Margaglione converting to
2106         property API. (#51891)
2107
2108         * gtk/gtkaccellabel.c: Applied patch from Lee Mallabone, converting
2109         to property API. (#50985)
2110
2111 Fri May 11 20:13:44 2001  Tim Janik  <timj@gtk.org>
2112
2113         * gtk/gtkmain.c (gtk_main_do_event): remember widget's double
2114         buffering state across expose event, so we still call end_paint().
2115
2116 2001-05-11  Alexander Larsson  <alexl@redhat.com>
2117
2118         * gtk/gtkhsv.c (paint_triangle):
2119         Expose the ring in the triangle at the correct place when
2120         exposing just a part of the triangle.
2121
2122         * gtk/gtkwindow-decorate.c (gtk_decorated_window_focus_change):
2123         Return FALSE, or window focusing will not work.
2124
2125 2001-05-11  Havoc Pennington  <hp@pobox.com>
2126
2127         * gtk/gtkimage.c (gtk_image_new_from_stock): docs, fixes bug
2128         #54144
2129
2130         * gtk/gtkcolorsel.c (gtk_color_selection_new): docs, fixes
2131         bug #54330
2132
2133 Fri May 11 02:53:57 2001  Tim Janik  <timj@gtk.org>
2134
2135         * gtk/gtktogglebutton.c (gtk_toggle_button_expose): don't
2136         propagate exposes to NULL child.
2137
2138         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed): guard
2139         against not having one of the scrollbars.
2140
2141         * gtk/gtklabel.c (gtk_label_setup_mnemonic): clean up after us,
2142         we don't keep a mnemonic window if we have no mnemonic installed.
2143
2144 Fri May 11 01:05:00 2001  Tim Janik  <timj@gtk.org>
2145
2146         * gtk/gtktypeutils.h: grum, gtk_type_class() is not GNUC_CONST
2147         it has the _important_ side effect of initializing a class.
2148
2149 2001-05-10  Alexander Larsson  <alexl@redhat.com>
2150
2151         * gdk/linux-fb/gdkprivate-fb.h:
2152         Make sure you can compile out the implementation/wrapper assert
2153         macros.
2154
2155         * gdk/linux-fb/gdkdrawable-fb2.c:
2156         Check implementation/wrappers, initialize type for pixmap dummys.
2157
2158         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image):
2159         Hide the cursor if reading from the screen.
2160
2161         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic):
2162         Fix sign bug in tiling code.
2163
2164         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_clear_area):
2165         Handle background pixmaps.
2166
2167 Wed May  9 15:27:22 2001  Jonathan Blandford  <jrb@redhat.com>
2168
2169         * gtk/gtktreeview.c (gtk_tree_view_set_column_drag_function): New
2170         function to let user control where columns are dragged.
2171
2172         * gtk/gtktreeview.c (gtk_tree_view_key_press): Cancel drags if
2173         Escape is pressed.
2174
2175 Wed May  9 09:08:44 2001  Jonathan Blandford  <jrb@redhat.com>
2176
2177         * gtk/gtktreeview.c (gtk_tree_view_class_init): New
2178         "columns_changed" signal.
2179         (gtk_tree_view_motion_draw_column_motion_arrow): Change column
2180         motion code to draw arrows to the side if indicator is outside the
2181         widget.
2182         (gtk_tree_view_map_expanded_rows): Implement.
2183
2184 2001-05-07  Alexander Larsson  <alexl@redhat.com>
2185
2186         * demos/testpixbuf-save.c: 
2187         * demos/testpixbuf-drawable.c:
2188         Include gdkfb.h on linux-fb.
2189
2190 2001-05-07  Alexander Larsson  <alexl@redhat.com>
2191
2192         * gdk/linux-fb/gdkdnd-fb.c (get_toplevel_window_at):
2193         New function for getting toplevel window at position.
2194         (gdk_drag_find_window): Use get_toplevel_window () instead
2195         of gdk_window_get_pointer(). (gdk_drag_status): Use
2196         correct context for getting window.
2197
2198         * gdk/linux-fb/gdkproperty-fb.c (gdk_atom_name):
2199         g_strdup the atom name.
2200
2201         * gdk/linux-fb/gdkwindow-fb.c:
2202         Costmetic fix.
2203
2204         * gtk/gtkdnd.c (gtk_drag_source_handle_event):
2205         Add code for changing cursor on linux-fb backend (same as
2206         win32).
2207
2208 2001-05-07  Federico Mena Quintero  <federico@ximian.com>
2209
2210         * gtk/gtkwindow.c (gtk_window_focus): Test for bin->child being
2211         present before doing anything with it.  Patch from HÃ¥vard KvÃ¥len
2212         <havardk@netcom.no>.  Fixes Ximian bugzilla #2492 (OK, the bug
2213         report was not for the development branch of GTK+, but it applies
2214         anyways).
2215
2216 2001-05-04  Havoc Pennington  <hp@redhat.com>
2217
2218         * configure.in: fix some shell typos
2219
2220         * gtk/gtkcolorsel.c (gtk_color_selection_destroy): warning fix
2221
2222         * gtk/gtkimage.c: handle animations
2223
2224         * gtk/gtkcheckbutton.c (gtk_check_button_size_request): request
2225         border_width * 2, not just border_width
2226
2227         * gtk/gtkscale.c: add "format_value" signal to allow people
2228         to override the way values are drawn.
2229         (gtk_scale_get_value_size): fix width/height mistake,
2230         and compute size from actual displayed text, not 
2231         from made-up text.
2232
2233         * gtk/gtktexttag.c (gtk_text_tag_class_init): fix return type in 
2234         signal registration
2235
2236         * tests/testtext.c: Add "Remove all tags" menu item for testing
2237
2238         * gtk/gtktextbuffer.c (gtk_text_buffer_remove_all_tags): implement
2239
2240         * demos/gtk-demo/main.c (main): add hack so we can find modules
2241         without installing gtk
2242
2243         * demos/gtk-demo/textview.c (insert_text): demo font scaling
2244
2245         * gtk/gtkcellrenderertext.c: Add "scale" property (font scaling
2246         factor)
2247         (gtk_cell_renderer_text_set_property): remove some bogus
2248         g_object_notify
2249
2250         * gtk/gtktexttag.c: add "scale" property which is a font scaling
2251         factor
2252
2253         * gtk/gtktextlayout.c (add_text_attrs): add font scale attribute 
2254         to layout
2255
2256         * gtk/gtktextiter.c (gtk_text_iter_is_start): rename from
2257         gtk_text_iter_is_first
2258
2259 2001-01-06  Hans Breuer  <hans@breuer.org>
2260
2261         * gdk/gdk.def : updated exports
2262
2263         * gdk/win32/makefile.msc : -DGDK_ENABLE_BROKEN otherwise
2264         gdk won't compile anymore
2265  
2266         * gdk/win32/gdkevents-win32.c : initialize ret_val when
2267         processing GDK_FILTER functions, initialize event.key->hardware_keycode.
2268         Improved gdk_flush () to not only do pending drawing operations
2269         but also process all currently pending events. This should make
2270         the behaviour more similar to the X11 version.  
2271
2272         * gdk/win32/gdkgc-win32.c (predraw_set_background) : a background
2273         option needs to be set even if there is no GDK_GC_BACKGROUND.
2274         (gdk_win32_hdc_get) : use predraw_set_background () independent
2275         of value_mask. This allows to draw dashed lines leaving the original
2276         background intact.
2277
2278         * gdk/win32/gdkimage-win32.c (gdk_image_new_bitamp) : free data
2279         after processing, because we can't reuse it as the X11 version does.
2280
2281         * gtk/gtk.def : updated exports
2282
2283         * gtk/makefile.msc.in : added ATK, removed all test apps. (I
2284         would like to get rid of this file again, and use straight
2285         makefile.msc again, as the other Gtk+ subdirs do)
2286
2287         * test/makefile.msc (new file) : build the test apps here
2288
2289 2001-05-05  ERDI Gergo  <cactus@cactus.rulez.org>
2290
2291         * gdk/gdkpango.c (gdk_pango_get_item_properties): Peek
2292         strike-through setting
2293         (gdk_draw_layout_line_with_colors): Render strike-through
2294
2295 Sat May  5 10:06:24 2001  Owen Taylor  <otaylor@redhat.com>
2296
2297         * Release 1.3.5
2298
2299         * configure.in (GTK_MICRO_VERSION): Up to 1.3.5
2300
2301         * NEWS: Updated
2302
2303         * demos/gtk-demo/Makefile.am (EXTRA_DIST): Fix minor
2304         Makefile breakage.
2305
2306 Sat May  5 09:18:30 2001  Owen Taylor  <otaylor@redhat.com>
2307
2308         * demos/gtk-demo/images.c (progressive_timeout): Fix
2309         typo in filename.
2310
2311         * gtk/gtktreeview.c (gtk_tree_view_row_activated): Comment
2312         out FIXME warning; just too annoying.
2313
2314 2001-05-04  Alex Larsson  <alla@lysator.liu.se>
2315
2316         * gdk/linux-fb/gdkcolor-fb.c:
2317         Better error messages.
2318
2319         * gdk/linux-fb/gdkpixmap-fb.c (gdk_pixmap_new):
2320         Initialize abs_x and abs_y.
2321         
2322         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic):
2323         Correct handling of stipple offset.
2324
2325         * gdk/linux-fb/gdkvisual-fb.c (gdk_visual_init):
2326         Treat directcolor framebuffers as truecolor.
2327         
2328 Thu May  3 14:13:49 2001  Owen Taylor  <otaylor@redhat.com>
2329
2330         * INSTALL.in HACKING gtk/gtkaccessible.[ch] gtk/gtk.c: Add
2331         dependency on Atk for accessibility support.
2332
2333         * configure.in **/Makefile.am: Major reworking of substituted
2334         variables for CFLAGS/LIBS to make a lot more sane and 
2335         keep the the compile/link lines a bit shorter.
2336
2337         * gdk/x11/gdkkeys-x11.c: Fix #endif with trailing stuff.
2338
2339 Thu May  3 08:10:54 2001  Owen Taylor  <otaylor@redhat.com>
2340
2341         * gtk/gtktexttag.c (gtk_text_tag_class_init): Fix return
2342         value to be G_TYPE_BOOLEAN, not G_TYPE_INT, also,
2343         use _gtk_boolean_handled_accumulator.
2344
2345 Thu May  3 07:00:09 2001  Owen Taylor  <otaylor@redhat.com>
2346
2347         * gtk/gtktextview.c: Patch from Juan Pablo Mendoza Mendoza
2348         to fix things so clicking inside selection leaves cursor
2349         at point where clicked. (#50324)
2350
2351         * gtk/gtksettings.c (gtk_settings_class_init): Restore
2352         sane value for default double click time.
2353
2354         * tests/testtext.c (test_init): Really path to input modules.
2355
2356 2001-05-03  Sven Neumann  <sven@convergence.de>
2357
2358         * demos/testpixbuf-save.c: include target-specific headers as
2359         done in testpixbuf-drawable.c
2360
2361 Wed May  2 20:36:38 2001  Owen Taylor  <otaylor@redhat.com>
2362
2363         * gtk/gtkentry.c (gtk_entry_real_insert_text): Reduce
2364         new_text_length appropriately when we run into the 
2365         size limit for the entry. (#53445, reported by Jeff Franks)
2366
2367         * tests/testgtk.c (create_entry): Remove most of the
2368         property toggle buttons. Replace with a "Props" button
2369         that brings up a property editor.
2370
2371         * tests/prop-editor.[ch] test/testtreeview.c tests/Makefile.am:
2372         Split the property editor code out for reuse, improve.
2373
2374 Wed May  2 17:26:22 2001  Owen Taylor  <otaylor@redhat.com>
2375
2376         * gdk/x11/gdkevents-x11.c gdk/x11/gdkwindow-x11.c: Always
2377         trap errors around calls to XSetInputFocus since we have
2378         no way of knowing reliably whether we are viewable or
2379         not. (#53947)
2380
2381 Tue May  1 09:21:23 2001  Jonathan Blandford  <jrb@redhat.com>
2382
2383         * gtk/gtktreeview.c (gtk_tree_view_button_release_drag_column):
2384         fix bug in dropping columns.  Moving columns now basically works
2385         modula some fine tuning.
2386
2387 Tue May  1 19:09:21 2001  Jonathan Blandford  <jrb@redhat.com>
2388
2389         * gtk/gtktreeview.c (gtk_tree_view_horizontal_autoscroll): Add
2390         autoscroll support.  It mostly works, but could use some fine
2391         tuning.
2392         * gtk/gtktreeview.c (gtk_tree_view_button_release_drag_column):
2393         Actually move the column.
2394
2395 Mon Apr 30 20:29:27 2001  Owen Taylor  <otaylor@redhat.com>
2396
2397         * gtk/gtkbutton.c gtk/gtkcheckbutton.c gtk/gtkoptionmenu.c 
2398           gtk/gtkspinbutton.c gtk/gtkstyle.c gtk/gtkwidget.c:
2399           New default theme! A slighly improved version of the 2.0 Raleigh
2400           theme, with Windows-esque focus/drawing default. 
2401           (GtkWidget::interior_focus defaults to TRUE.)
2402
2403         * gtk/gtkstyle.[ch]: Add a text_aa color halfway between text and base.
2404
2405 2001-04-30  Havoc Pennington  <hp@pobox.com>
2406
2407         * tests/testtext.c (line_numbers_expose): fix to work with
2408         gtk_paint_layout change
2409
2410 Mon Apr 30 19:18:07 2001  Owen Taylor  <otaylor@redhat.com>
2411
2412         * gtk/gtkstyle.[ch] gtk/gtkaccellabel.c gtk/gtkcellrenderertext.c
2413           gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c gtk/gtkprogressbar.c
2414           gtk/gtkvruler.c gtk/gtkvscale.c: Add an extra parameter
2415           use_text to gtk_paint_label() to deal with style->bg[] vs style->text[].
2416
2417         * gtk/gtkbbox.c gtk/gtkdialog.c: Tweak padding some to deal
2418           with GtkWidget::interior_focus = TRUE better.
2419
2420         * gtk/gtkbutton.c: Switch ::default_spacing to ::default_border,
2421         ::default_outside_border for more flexibility.
2422
2423         * gtk/gtkwidget.c (gtk_widget_style_get_valist): Remove 
2424         G_VALUE_NO_COPY_CONTENTS, to correspond with the recent
2425         change that had to be made with g_object_get.
2426
2427 Sun Apr 29 20:13:40 2001  Jonathan Blandford  <jrb@redhat.com>
2428
2429         * gtk/gtktreeview.c (gtk_tree_view_get_columns): new function.
2430         (gtk_tree_view_move_column_after): Clean up interface. 
2431
2432 Sun Apr 29 03:02:02 2001  Tim Janik  <timj@gtk.org>
2433
2434         * gtk/gtkpacker.h:
2435         * gtk/gtkenums.h: moved GtkAnchorType and GtkSideType from gtkpacker.h
2436          to gtkenum.h.
2437
2438         * gtk/gtkmain.c (gtk_main_do_event): silence compiler (GDK_SETTING not
2439         handled in switch).
2440
2441         * gtk/Makefile.am:
2442         (gtk.defs): generate enum portions with  glib-mkenums.
2443         (gtktypebuiltins_evals.c): generate this with glib-mkenums.
2444         got rid of makeenums.pl and makeenums.awk in distributed tarballs.
2445         
2446         * gtk/gtkaccelgroup.c (gtk_accel_group_add): refined havocs warning
2447         addition.
2448
2449         * docs/Changes-2.0.txt: keep a note on signal handlers now
2450         not getting emitted during the emission they were connected within.
2451
2452 2001-04-28  Havoc Pennington  <hp@pobox.com>
2453
2454         * gtk/gtkcolorsel.c (palette_new): fix bug in tooltip
2455
2456 2001-04-24  Havoc Pennington  <hp@redhat.com>
2457
2458         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_previous_line): 
2459         (gtk_text_layout_move_iter_to_next_line): fix these two for
2460         invisible text, lots of other stuff still hosed.
2461
2462         * gtk/gtkcolorsel.c (gtk_color_selection_set_change_palette_hook):
2463         new function, replaces the get/set palette stuff. This function 
2464         is intended for use by libgnomeui which should set the hook to a
2465         thing which sets the palette in GConf, and we need the
2466         GConf-to-xsettings proxy which will result in the change being
2467         propagated back to the GTK app.
2468
2469         * gtk/gtkaccelgroup.c (gtk_accel_group_add): add note to warning 
2470         about unusable signals that it may be because the signal has 
2471         parameters.
2472
2473         * gtk/gtkwidget.c (gtk_widget_modify_style): always copy the
2474         style, otherwise gtkrc.c won't know to create a new GtkStyle for
2475         it.
2476         (gtk_widget_modify_color_component): call
2477         gtk_widget_modify_style() so the rc style will get copied.
2478         (gtk_widget_modify_font): ditto
2479
2480         * gtk/gtkrc.c: make a couple variables static
2481
2482         * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): hide
2483         help button by default, since it does nothing
2484
2485         * gtk/gtkcolorsel.c: add tooltips, work on key navigation, fool
2486         around with UI
2487
2488         * gtk/gtkentry.c (gtk_entry_realize): request enter/leave notify
2489         so we can have tooltips
2490
2491         * gtk/gtkhsv.c (gtk_hsv_realize): request enter/leave notify so we
2492         can have tooltips
2493
2494         * gdk/gdkimage.h: mark gdk_image_new_bitmap with
2495         GDK_ENABLE_BROKEN, because its memory behavior is completely
2496         hosed.
2497
2498         * gtk/gtknotebook.c: remove key press handler, replace with
2499         binding set, add numeric keypad support
2500
2501         * gtk/gtktextview.c (gtk_text_view_class_init): accept KP_Delete
2502
2503         * gtk/gtktext.c (gtk_text_key_press): add a bunch of KP keysyms
2504
2505         * gtk/gtkentry.c (gtk_entry_class_init): accept GDK_KP_Delete in
2506         addition to plain Delete
2507
2508         * gtk/gtktextview.c (gtk_text_view_key_press_event): accept
2509         GDK_KP_Enter in addition to GDK_Return
2510
2511         * gtk/gtkfontsel.c (gtk_font_selection_size_key_press): connect to
2512         activate on entry instead of key press
2513         (gtk_font_selection_on_clist_key_press): get
2514         rid of this signal handler, not needed with new font sel.
2515
2516         * gtk/gtkfilesel.c (gtk_file_selection_key_press): remove a
2517         no-longer-needed emit_stop_by_name(), just return TRUE
2518
2519         * gtk/gtkhscrollbar.c, gtk/gtkvscrollbar.c: remove keybindings
2520         cruft, this widget is no longer focusable.
2521
2522         * gtk/gtkrange.h, gtk/gtkrange.c, gtk/gtkvscale.c,
2523         gtk/gtkhscale.c: Get rid of trough_keys virtual function, add
2524         move_slider action signal, add binding set for vscale/hscale, in
2525         the process support numeric keypad
2526
2527         * gtk/gtkentry.c (gtk_entry_class_init): Add keypad bindings; 
2528         make GDK_Return and GDK_KP_Enter activate the entry via 
2529         binding set, instead of hardcoded.
2530
2531 Fri Apr 27 20:27:21 2001  Jonathan Blandford  <jrb@redhat.com>
2532
2533         * gtk/gtktreeview.[hc]: Massive reorder/cleanup of a lot of the
2534         code.  Some documentation added.
2535
2536 2001-04-27  Havoc Pennington  <hp@redhat.com>
2537
2538         * gtk/gtkcombo.c (gtk_combo_popup_button_press): fix warning
2539
2540         * gtk/gtkmessagedialog.c (gtk_message_dialog_init): make messages selectable
2541
2542         * gtk/gtkentry.c (gtk_entry_real_insert_text): don't strip
2543         line/para separators
2544         (gtk_entry_create_layout): set single paragraph mode on the layout
2545
2546         * gtk/gtkbutton.c (gtk_button_new_from_stock): don't put much
2547         spacing between the image and label; instead, inside a button box 
2548         the button will get extra space that will go there, but if people 
2549         configure button box for 0 chubbiness, then there's no spacing.
2550
2551         * gtk/gtkbbox.c (gtk_button_box_class_init): Make child ipadding
2552         and min/max size style properties, so people can tune their
2553         chubbiness.
2554
2555         * tests/testgtk.c (make_toolbar): remove calls to removed toolbar
2556         functions
2557
2558         * gtk/gtktoolbar.c (gtk_toolbar_class_init): Make space_size,
2559         space_style, and button_relief into style properties, remove
2560         functions for setting them
2561         
2562         * gtk/gtkmenu.c (gtk_menu_key_press): handle menu bar accel to pop 
2563         it back down
2564
2565         * gtk/gtkoptionmenu.c (gtk_option_menu_get_props): free boxed
2566         types from gtk_widget_style_get
2567
2568         * gtk/gtkmenubar.c (gtk_menu_bar_set_shadow_type): Remove, replace
2569         with a style property.
2570
2571         * gdk/x11/gdkevents-x11.c: namespace the settings
2572
2573         * gtk/gtkmenubar.c: Add F10 accelerator to move between menubars.
2574
2575         * gtk/gtksettings.c (gtk_settings_class_init): remove code with
2576         side effects from inside g_assert(), so that G_DISABLE_ASSERT can
2577         be used. Also, translate doc strings for settings. Also, namespace
2578         the double-click-time property. Also, remove bell properties crap.
2579
2580 2001-04-27  Sven Neumann  <sven@gimp.org>
2581
2582         * Makefile.am: before creating links, check if pkg-config files
2583         exist for the default target. Otherwise link to the pkg-config files
2584         that got installed with this build.
2585
2586 Thu Apr 26 19:11:46 2001  Jonathan Blandford  <jrb@redhat.com>
2587
2588         * gtk/gtktreeview.c (gtk_tree_view_motion): clean up column
2589         dragging code.  Revealed some (potential) GdkWindow bugs.
2590
2591         * gdk/x11/gdkwindow-x11.c (gdk_window_reparent): add
2592         _gdk_window_init_position to the end of reparent to fix the case
2593         of reparenting when new_x != old_x and new_y != old_y.
2594
2595 Thu Apr 26 10:54:50 2001  Owen Taylor  <otaylor@redhat.com>
2596
2597         * gtk/gtkentry.c (strstr_len): Fix optimization that
2598         was correct for the use here, but completely incorrect
2599         in general.
2600
2601 Thu Apr 26 10:40:41 2001  Owen Taylor  <otaylor@redhat.com>
2602
2603         * gtk/gtkwindow.h: Remove deprecation of gtk_window_set_default_size()
2604         until patch adding gtk_window_set_size() is recommitted. 
2605
2606         * **Makefile.am configure.in gdk/x11/gdkim-11.c
2607           gtk/gtkmain.c gtk/gtkimmulticontext.c gtk/gtkmain.c
2608           gtk/gtkrc.c: Remove all traces of -DX_LOCALE support.
2609           (#10784)
2610
2611 Wed Apr 25 12:16:36 2001  Owen Taylor  <otaylor@redhat.com>
2612
2613         * gdk/X11/gdkevents-x11.c (gdk_event_translate): Test for 
2614         window == NULL in a number of cases.
2615
2616         * tests/testdnd.c: Set module path for gdk-pixbuf.
2617
2618 Thu Apr 19 16:11:07 2001  Owen Taylor  <otaylor@redhat.com>
2619
2620         * gtk/Makefile.am xembed.h: File containing #defines
2621         for XEMBED protocol.
2622
2623         * gtk/gtkplug.[ch] gtk/gtksocket.[ch]: 
2624
2625         - Change protocol from old plug/socket specific protocol
2626           to XEMBED draft
2627         - Various fixes to work with GTK+-2.0
2628
2629         Still quite a bit of work to do here to handle initiation
2630         from the socket side (as specified by XEMBED), to handle
2631         the more advanced features of XEMBED, and to figure out
2632         a good way to handle same-app embedding with less overhead
2633         than using full XEMBED.
2634
2635 Wed Apr 18 16:04:28 2001  Owen Taylor  <otaylor@redhat.com>
2636
2637         * gtk/gtkwindow.[ch] (gtk_window_real_set_focus): Keep
2638         track of whether the toplevel has the focus; only send
2639         focus-in events to the focus widget when the window
2640         actually has the focus.
2641
2642 2001-04-25  Havoc Pennington  <hp@pobox.com>
2643
2644         * gtk/gtkwindow.h: set_decorations_hint and set_functions_hint
2645         were still in the header
2646
2647 2001-04-24  Alexander Larsson  <alexl@redhat.com>
2648
2649         * gtk/gtkclist.[ch]:
2650         * gtk/gtkctree.c:
2651         When there is a row highlighted for D'n'D it must alse
2652         be painted hightlighted on exposes. Otherwise exposes from
2653         the icon being dragged will mess up the hightlight.
2654
2655         * gtk/gtkfontsel.c:
2656         Don't recenter selected font when exposing the font family
2657         clist. This means you can now actually scroll the font family
2658         list.
2659
2660         * gtk/gtknotebook.c:
2661         Fix focus movement on scrolling tabs that are placed on the left
2662         and right.
2663
2664 2001-04-21  Havoc Pennington  <hp@pobox.com>
2665
2666         * gtk/gtktextdisplay.c (gtk_text_layout_draw): handle 0-height
2667         empty/invisible lines.
2668
2669         * gtk/gtktextiter.c (gtk_text_iter_set_visible_line_offset)
2670         (gtk_text_iter_set_visible_line_index): new functions to set
2671         indexes excluding invisible text
2672
2673         * gtk/gtktextlayout.c (line_display_iter_to_index): get visible 
2674         index
2675
2676         * gtk/gtktextiter.c (gtk_text_iter_get_visible_line_index)
2677         (gtk_text_iter_get_visible_line_offset): new functions to 
2678         get indexes excluding invisible text
2679
2680         * gtk/gtkmessagedialog.c (gtk_message_dialog_init): strip out a
2681         bunch of extra padding that served no purpose
2682
2683         * gtk/gtkdialog.c: Make all the spacings configurable via style
2684         properties, for chubbiness configuration in themes
2685
2686         * tests/testtext.c: fix path to the immodules.
2687         
2688 Mon Apr 23 18:57:03 2001  Jonathan Blandford  <jrb@redhat.com>
2689
2690         * gtk/gtksocket.c (gtk_socket_filter_func): add missing '}' that
2691         got munched by #endif.
2692
2693         * gtk/Makefile.am (gtk_plug_c_sources): add missing '\'
2694
2695         * gtk/gtktreeview.c: Refactored code to clean up a number of
2696         events.
2697
2698         * gtk/gtktreemodel.c (gtk_tree_path_compare): Switched return
2699         values to make consistent with other functions.  Spotted by Jeff
2700         Franks <jcf@tpg.com.au>.
2701
2702         * gtk/gtktreeview.h (struct _GtkTreeViewClass): Fixes to signal
2703         declaration spotted by Jeff Franks <jcf@tpg.com.au>.
2704
2705 2001-04-23  Sven Neumann  <sven@gimp.org>
2706
2707         * gtk/Makefile.am
2708         * gtk/gtkplug.c
2709         * gtk/gtksocket.c: on request of Owen, reverted my last change 
2710         and exclude gtkplug.c/gtksocket.c from the build for non-X11 targets
2711
2712 2001-04-23  Sven Neumann  <sven@gimp.org>
2713
2714         * gtk/gtkplug.c: put into #ifdef GDK_WINDOWING_X11 to make GTK+
2715         compile for non-X11 targets again
2716
2717 2001-04-20  Alexander Larsson  <alexl@redhat.com>
2718
2719         * gtk/gtkcolorsel.[ch]:
2720         API Change. Take GdkColor arguments instead of gdouble *.
2721         Leave the old gtk_color_selection_set_color for compatibility,
2722         but marked deprecated.
2723         Do correct rounding when converting RGB <-> HSV.
2724         
2725         * gtk/gtkcolorseldialog.c:
2726         * tests/testgtk.c:
2727         Use new GtkColorSelection API.
2728
2729         * gtk/gtkhsv.c:
2730         Fix problem selecting colors in triangle when Hue is 330.
2731         Fix some black dots around the HSB triangle.
2732         
2733         * gtk/gtkfilesel.c:
2734         return FALSE from the focus_in_event handler to fix focus problems.
2735
2736 2001-04-18  Havoc Pennington  <hp@redhat.com>
2737
2738         * gtk/gtkwindow.c (gtk_window_class_init): add signals and binding
2739         set, so keybindings are configurable    
2740         (gtk_window_activate_default): Change to activate the focus widget
2741         instead if there's a focus widget, to be consistent with the
2742         behavior that previously existed in key_press_event
2743
2744 2001-04-18  Havoc Pennington  <hp@redhat.com>
2745
2746         * gdk/gdkkeyuni.c: Handle numeric keypad keysyms; bug #50201
2747
2748 2001-04-18  Havoc Pennington  <hp@redhat.com>
2749
2750         Close bug #50615:
2751         
2752         * gtk/gtkstyle.c (gtk_default_draw_layout): Use text_gc to draw
2753         the layout
2754
2755         * gtk/gtktext.c: Use base/text instead of bg/fg throughout
2756
2757         * gtk/gtkentry.c: Use base/text instead of bg/fg throughout
2758
2759         * gtk/gtktextdisplay.c: Use base/text instead of bg/fg throughout
2760         
2761         * gtk/gtkstyle.c (gtk_style_init): make GTK_STATE_SELECTED default
2762         to blue for base, in addition to bg
2763         
2764 2001-04-18  Havoc Pennington  <hp@redhat.com>
2765
2766         * tests/testgtk.c (create_image): allow shrinking the image window
2767         to test that we clip to allocation.
2768
2769         * gtk/gtkimage.c (gtk_image_expose): clip to allocation,
2770         #9845
2771
2772         * gtk/gtkenums.h: move GtkWrapMode in here, #50472
2773
2774 Wed Apr 18 14:23:14 2001  Owen Taylor  <otaylor@redhat.com>
2775
2776         * gdk/x11/gdkimage-x11.c (gdk_image_new): Try changing
2777         mode on shm segments to 0600. We'll see who complains.
2778
2779         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Call
2780         _gdk_windowing_window_destroy() AFTER recursing through
2781         children.
2782
2783         * tests/Makefile.am (noinst_PROGRAMS): Build testsocket,
2784         testsocket_child on X.
2785
2786         * tests/testsocket[_child].c: Fix uses of
2787         gtk_window_get_default_accel_group().
2788
2789         [ Merge patch from Ramiro Estrugo  <ramiro@eazel.com> from gtk-1-2 ]
2790
2791         * gdk/gdkimage.c: (gdk_image_get):
2792         Deal with the possibility that XGetImage() might return NULL.
2793         Allocate the GdkImagePrivate structure only after XGetImage()
2794         succeeds in order not to dereference a NULL ximage pointer.  This
2795         prevents a core dump when XGetImage() fails - which is unlikely,
2796         but can happen due to race conditions accessing the geometries of
2797         drawables.  An x error will still be triggered, but the gdk image
2798         wrapper at least wont seg fault.
2799         
2800 2001-04-18  Havoc Pennington  <hp@redhat.com>
2801
2802         * gtk/gtkimage.c: fix to properly queue resizes when the image is
2803         set
2804
2805         * gtk/gtktextview.c (gtk_text_view_do_popup): desensitize Paste
2806         if the insertion point isn't editable
2807
2808         * demos/gtk-demo/images.c: Added a GtkImage demo
2809
2810         * demos/gtk-demo/drawingarea.c: drawing area demo
2811         
2812         * demos/gtk-demo/menus.c (create_menu): cleanups
2813
2814 Wed Apr 18 12:15:52 2001  Owen Taylor  <otaylor@redhat.com>
2815
2816         * gdk/x11/gdkwindow-x11.c gdk/x11/gdkwindow-x11.h 
2817           gdk/x11/gdkevents-x11.c: Introduce an extra child
2818         of toplevel windows that serves to hold the focus to
2819         avoid events being delivered to embedded windows.
2820
2821         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Introduce
2822         some extra variables to clean up code and reduce the
2823         number of casts.
2824
2825         * gdk/x11/gdkwindow-x11.h (struct _GdkXPositionInfo): Use
2826         guint for 1 bit bit fields, not gboolean.
2827
2828 Wed Apr 18 10:04:23 2001  Owen Taylor  <otaylor@redhat.com>
2829
2830         * gtk/gtktooltips.c (gtk_tooltips_paint_window): Return FALSE,
2831         not TRUE. (Fixes #52925)
2832
2833 Tue Apr 17 18:05:34 2001  Owen Taylor  <otaylor@redhat.com>
2834
2835         * Released 1.3.4
2836
2837         * NEWS: Updated
2838
2839         * gtk/gtktextview.c (gtk_text_view_class_init): Fix to not
2840         use GTK_TYPE_ENUM.
2841
2842 Tue Apr 17 13:47:12 2001  Owen Taylor  <otaylor@redhat.com>
2843
2844         * configure.in: Don't put -lgthread in GLIB_LIBS, GLIB_DEPLIBS
2845
2846         * gtk/gtktypeutils.h gtk/gtksignals.h: Restore proper parameter
2847         names to compatibility #defines so docs work.
2848
2849         * gtk/gtkenums.h: Remove GtkMenuFactoryType
2850
2851         * gtk/gtkwindow.c gtk/gtkdnd.c: Docs cleanups.
2852
2853         * configure.in: Don't include -lgthread in GLIB_LIBS, GLIB_DEPLIBS
2854
2855         * tests/testgtkrc: No magenta cursors, please.
2856
2857         * README.in INSTALL.in HACKING README.cvs-commits: Updated.
2858
2859         * gtk/gtkenums.h (enum): Remove left over GtkMenuFactoryType.
2860         
2861 Mon Apr 16 14:38:41 2001  Owen Taylor  <otaylor@redhat.com>
2862
2863         * gtk/gtklist.c gtk/gtklistitem.c: Remove explicit pointer
2864         grabs, since they are no longer necessary.
2865
2866         * gtk/gtkcombo.c (gtk_combo_popup_button_press): Fix #52926
2867         by signal_connect() and call gtk_button_pressed() rather
2868         than signal_connect_after().
2869
2870         * tests/testgtk.c: Restore radio menu items to combos 
2871         since they'll look OK with Raleigh, and it is easier
2872         than finishing the process of removing them that was
2873         started earlier.
2874
2875 2001-04-16  Hans Breuer  <hans@breuer.org>
2876
2877         * gdk/gdk.def :
2878         * gtk/gtk.def : added all exports required to link PyGtk 0.7.1
2879
2880         * gdk/gdkfont.h : #define GDK_TYPE gdk_font_get_type ()
2881         we are interested in the functions return value not the function address
2882         * gdk/gdkvisual.h : same for GDK_TYPE_VISUAL
2883
2884         * gtk/makefile.msc.in : reflect movement of GDK_TYPEs from gtk to gdk
2885
2886 2001-04-14  Hans Breuer  <hans@breuer.org>
2887
2888         * gdk/gdk.def :
2889         * gdk/makefile.msc : updated
2890
2891         * gdk/win32/gdkdrawable.win32 (gdk_win32_draw_rectangle) : if modus is 
2892         "fill with tile" do so with new helper function gdk_win32_draw_tiles 
2893         (the testgtk::text backgound pixmap is drawn again)
2894         Changed SetTextAlign before pango_win32_render to TA_BASELINE to reflect 
2895         Win32 Pango change
2896         * gdk/win32/gdkprivate-win32.h : prototype for gdk_win32_draw_tiles
2897
2898         * gdk/win32/gdkproperty-win32.c : first implementation of gdk_setting_get
2899         Not sure if the returned settings have the right unit, because I couldn't
2900         find any docs for the X version ...
2901
2902         * gtk/gtk.def :
2903         * gtk/makefile.msc.in : updated
2904
2905 Thu Apr 12 17:41:17 2001  Owen Taylor  <otaylor@redhat.com>
2906
2907         * gtk-2.0.m4: Fix up to refer to GTK+, not to GLib; fix some
2908         wording problems. (Compared to version from Johannes Stezenbach to
2909         check correctness.)
2910
2911 Thu Apr 12 21:04:26 2001  Tim Janik  <timj@gtk.org>
2912
2913         * gtk/gtktreeview.c (_gtk_tree_view_column_start_drag): get
2914         this to compile.
2915
2916 2001-04-12  Anders Carlsson  <andersca@codefactory.se>
2917
2918         * gtk/gtkcellrenderertextpixbuf.c (gtk_cell_renderer_text_pixbuf_class_init): It's pixbuf_pos,
2919         not pixbufpos.
2920
2921         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render): Fix small typo.
2922
2923         * gtk/gtkcellrenderer.c (gtk_cell_renderer_get_property): xpad and ypad
2924         are unsigned insts, therefore use g_value_set_uint.
2925         (gtk_cell_renderer_set_property): Likewise, use g_value_get_uint.
2926
2927 Sun Apr  8 05:36:06 2001  Jonathan Blandford  <jrb@redhat.com>
2928
2929         * gtk/gtktextview.c (gtk_text_view_class_init): fix a fixme.
2930
2931         * gtk/gtkcellrendertoggle.c: change GTK_TYPE_POINTER to
2932         GTK_TYPE_STRING.
2933
2934         * gtk/gtktreeview.c: New functions to allow initial column
2935         dragging work.
2936
2937         * gtk/gtktreeviewcolumn.c: Initial column dragging support.
2938
2939         * tests/testtreefocus.c: give dave some love.
2940
2941         * tests/testtreesort.c: Modify test to check really long samples.
2942
2943 2001-04-11  Alexander Larsson  <alexl@redhat.com>
2944
2945         * gtk-2.0.m4: Pass pkg-config options
2946         before the other args so it works even if
2947         POSIXLY_CORRECT is set.
2948
2949 Mon Apr  9 19:02:07 2001  Tim Janik  <timj@gtk.org>
2950
2951         * configure.in (GTK_MICRO_VERSION): increment version to 1.3.4 (binary
2952         0, interface 0).
2953
2954 2001-04-04  Denis Oliver Kropp  <dok@convergence.de>
2955
2956         * gtk/gtkcalendar.c (gtk_calendar_button_press):
2957         check for action_func != NULL
2958
2959 2001-04-04  Sven Neumann  <sven@gimp.org>
2960
2961         * tests/testgtk.c (test_init): corrected path to gtk.immodules
2962
2963 Wed Apr  4 09:18:18 2001  Tim Janik  <timj@gtk.org>
2964
2965         * Released Gtk+-1.3.3.
2966
2967 Wed Apr  4 07:42:23 2001  Tim Janik  <timj@gtk.org>
2968
2969         * gdk/Makefile.am (EXTRA_DIST): add makeenums.pl to EXTRA_DIST.
2970
2971 Wed Apr  4 04:13:18 2001  Tim Janik  <timj@gtk.org>
2972
2973         * gtk/stock-icons/Makefile.am: stay in builddir and read/write
2974         files to/from source dir. (if we don't stay in builddir, we
2975         can't reach make-inline-pixbuf.
2976
2977         * gdk/Makefile.am (gdkenumtypes.c): add $(srcdir) to mekeenums.pl
2978         deps.
2979
2980         * configure.in (GTK_MICRO_VERSION): up and away (1.3.3 bin/interface
2981         ages 0).
2982
2983 Tue Apr  3 15:04:45 2001  Jonathan Blandford  <jrb@redhat.com>
2984
2985         * gtk/gtktreemodelsort.h:  removed set_sort_column, as it was
2986         moved to the GtkTreeSortable interface.
2987
2988         * gtk/gtktreeselection.c (gtk_tree_selection_selected_foreach):
2989         Make more efficient (fixes #50262).
2990
2991 Tue Apr  3 13:55:37 2001  Owen Taylor  <otaylor@redhat.com>
2992
2993         * NEWS: Updated.
2994
2995         * configure.in: Remove support for uninstalled glib.
2996
2997         * gtk/gtkdnd.c (gtk_drag_highlight_expose): Return FALSE as
2998         so as not to stop emission.
2999
3000         * gtk-config-2.0.in: Exit with an error message that gtk-config-2.0
3001         is no longer supported.
3002
3003         * Makefile.am gtk/Makefile.am tests/*: Moved all tests
3004         into tests, change build order to build modules before
3005         gtk/.
3006
3007         * modules/input/Makefile.am: Move gtk-query-immodules-2.0 invocation
3008         to here.
3009
3010 Tue Apr  3 13:52:57 2001  Tim Janik  <timj@gtk.org>
3011
3012         * gtk/gtkitemfactory.[hc]: changed gtk_item_factory_dump_items()
3013         and gtk_item_factory_dump_rc() GtkPatternSpec argument to
3014         GPatternSpec. this is actually unlikely to cause breakage in
3015         third-party apps since except for gle, pretty much ever caller
3016         passes NULL here.
3017
3018         * gtk/gtkbindings.[hc]: removed gtk_pattern_*() API.
3019
3020         * *.c: use g_pattern_*() API.
3021
3022         * docs/Changes-2.0.txt: GtkPatternSpec->GPatternSpec updates.
3023
3024         * gtk/gtkstyle.c (gtk_default_draw_resize_grip): assert unhandled
3025         directions aren't passed in.
3026
3027         * gtk/gtksettings.[hc] (_gtk_settings_parse_convert): export conversion
3028         functionality to be usable from gtkstyle.c as well, give precedence
3029         for conversion to user-supplied parsers.
3030         s/_gtk_rc_property_parser_for_type/_gtk_rc_property_parser_from_type/;
3031
3032         * gtk/gtkstyle.c (_gtk_style_peek_property_value): use
3033         _gtk_settings_parse_convert() for rcporperty value conversion.
3034
3035 2001-04-03  Alexander Larsson  <alexl@redhat.com>
3036
3037         * gdk/linux-fb/gdkevents-fb.c:
3038         Add empty gdk_setting_get().
3039
3040 Tue Apr  3 05:09:07 2001  Tim Janik  <timj@gtk.org>
3041
3042         * gtk/gtkmain.c (_gtk_boolean_handled_accumulator): use more elaborate
3043         variable names.
3044         
3045         * gtk/makeenums.pl: touch this so enum files get remade.
3046
3047 Mon Apr  2 19:36:57 2001  Jonathan Blandford  <jrb@redhat.com>
3048
3049         * gtk/gtktreestore.c (gtk_tree_store_init):  Bug fix to make trees
3050         work again when not sorted.
3051
3052         * gtk/gtktreeview.c (gtk_tree_view_class_init): Add "collapse_row"
3053         and "expand_row" signal, closing bug 52578.
3054
3055         * gtk/gtktreeview.c (gtk_tree_view_expand_row): Add signal
3056         support.
3057
3058         * gtk/gtktreeview.c (gtk_tree_view_collapse_row): Add signal
3059         support.
3060
3061 Mon Apr  2 18:18:07 2001  Owen Taylor  <otaylor@redhat.com>
3062
3063         * gdk/gdkevents.h: Add GdkEventSetting event for notification
3064         of changes to system settings, gdk_setting_get() to retrieve
3065         a single system setting.
3066
3067         * gdk/x11/gdkevents-x11.c: Bridge gdk_setting_get() and GdkEventSetting
3068         to the draft XSETTINGS mechanism.
3069
3070         * gdk/x11/xsettings-{common,client}.[ch]: Sample-implementation of
3071         XSETTINGS.
3072
3073         * gtk/gtkmain.c gtk/gtksettings.[ch]: Propagate notification
3074         of GDK settings changes to the GtkSettings object.
3075
3076         * gdk/gdkevents.[ch] gdk/gtk/gtksettings.c: Hook up the
3077         double-click-timeout property to GDK.
3078
3079         * gdk/gdkcolor.[ch] gdk/gdkvisual.h gdk/gdkevent.[ch] gdk/gdkfont.[ch]:
3080         Define GDK boxed types here.
3081
3082         * gdk/Makefile.am gdk/makeenums.pl: Generate source files
3083         gdk/gdkenumtypes.[ch] for enum definitions.
3084
3085         * gtk/gtkcompat.h: Add defines for GTK_TYPE_GDK_*
3086         * gtk/gtk-boxed.defs: Comment out GDK types
3087         * gtk/gtktypeutils.h: Remove GDK types
3088         * gtk/Makefile.am: No longer scan GDK headers for enumerataions
3089
3090 Mon Apr  2 16:41:08 2001  Owen Taylor  <otaylor@redhat.com>
3091
3092         * Applied patch from Ron Steinke to add signal accumulators
3093         so that signals with the convention 'TRUE return means
3094         handled' stop emission on a TRUE return.
3095
3096         * gtk/gtkmain.[ch]: Add private accumulator 
3097         _gtk_boolean_handled_accumulator, used throughout GTK+.
3098         
3099         * gtk/gtkspinbutton.c: Add accumulator for ::output.
3100
3101         * gtk/gtktipsquery.c: Add accumulator for ::widget_selected
3102         
3103         * gtk/gtkwidget.c: Add accumulators for event signals,
3104         ::drag_motion, ::drag_drop. Use _gtk_boolean_handled_accumator
3105         for ::mnemonic-activate.
3106
3107         * gtk/gtkwindow.c: Add accumulator for ::frame_event
3108
3109 Mon Apr  2 16:24:21 2001  Owen Taylor  <otaylor@redhat.com>
3110
3111         * gtk/gtkwidget.c: Add missing include.
3112
3113 Mon Apr  2 16:56:15 2001  Jonathan Blandford  <jrb@redhat.com>
3114
3115         * gtk/gtkmarshal.list (VOID:BOXED,BOXED,BOXED,BOXED): new
3116         marshaller.
3117
3118         * gtk/gtktreemodel.c (gtk_tree_model_range_changed): change
3119         "changed" signal to "range_changed".
3120
3121         * gtk/gtktreeview.c (gtk_tree_view_set_model): fix small bug where
3122         removing a tree from one model would remove all trees from that
3123         model.
3124         * gtk/gtktreeview.c (gtk_tree_view_range_changed): use range
3125         changed signal instead.
3126
3127 Mon Apr  2 16:13:58 2001  Owen Taylor  <otaylor@redhat.com>
3128
3129         * gtk/gtkinvisible.c (gtk_invisible_style_set): Avoid
3130         chaining up to parent impl, since we have a INPUT_ONLY
3131         window.
3132
3133         * gtk/gtkentry.[ch]: Add a cursor_color property to set the
3134         foreground color for the cursor.
3135
3136 Mon Apr  2 15:06:13 2001  Owen Taylor  <otaylor@redhat.com>
3137
3138         * gtk/gtkstyle.c (_gtk_style_peek_property_value): Reference 
3139         param spec when caching property values, since we unref it
3140         later when we free the style.
3141
3142         * gtk/gtkoptionmenu.c (gtk_option_menu_get_props): Dont' free
3143         values since they are retrieved with G_VALUE_NO_COPY_CONTENTS.
3144
3145 Mon Apr  2 10:47:57 2001  Owen Taylor  <otaylor@redhat.com>
3146
3147         * gtk/gtkwidget.c (gtk_widget_class_init): Fix 
3148         G_VALUE_NO_COPY_CONTENTS instead of G_SIGNAL_TYPE_STATIC_SCOPE
3149         stupidity.
3150
3151 Mon Apr  2 00:51:11 2001  Owen Taylor  <otaylor@redhat.com>
3152
3153         [ First pass at adding style properties. Still needs some definite
3154         fine-tuning. ]
3155
3156         * gtk/gtkbutton.c: Add ::default_spacing style property.
3157          
3158         * gtk/gtkcheckbutton.[ch] gtkradiobutton.c: Add ::indicator_size,
3159         ::indicator_spacing style properties.
3160
3161         * gtk/gtkoptionmenu.c: Add ::indicator_size, ::indicator_spacing
3162         style properties.
3163
3164         * gtk/gtk{,h,v}paned.[ch]: Make handle_size a style property
3165         rather than a normal property.
3166
3167         * gtk/gtkwidget.c: Add an ::interior_focus style property to
3168         draw focus inside buttons, in the Windows/Java Metal/etc. style.
3169
3170         * gtk/gtkbutton.c gtk/gtkcheckbutton.c gtk/gtktogglenbutton.c:
3171         Honor ::interior_focus.
3172         
3173         * gtk/gtkentry.c: Don't draw focus at all when ::interior_focus is 
3174         TRUE.
3175
3176         * gtk/gtkrange.[ch] gtk/gtk{h,v}scrollbar.c gtk/gtk{h,v}scale.c:
3177         Add ::slider_width, ::trough_border, ::stepper_size,
3178         ::stepper_spacing style properties.
3179
3180         * gtk/gtkscale.[ch] Add ::slider-length style property.
3181
3182 2001-04-02 Alexander Larsson   <alexl@redhat.com>
3183
3184         * gdk/linux-fb/gdkwindow-fb.c:
3185         Add gdk_window_begin_resize_drag and gdk_window_begin_move_drag. Remove some
3186         warnings that were spewed on startup.
3187
3188         * gtk/gtkwindow-decorate.c:
3189         gtk_window_reposition -> _gtk_window_reposition
3190
3191 Sun Apr  1 21:37:22 2001  Owen Taylor  <otaylor@redhat.com>
3192
3193         * gtk/gtkwidget.[ch] gtk/gtktypeutils.c gtk/gtk-boxed.defs:
3194         Add boxed type for GtkRequistion. Use it for ::size-request.
3195
3196         * gtk/gtkstyle.[ch] gtk/gtktypeutils.c gtk/gtk-boxed.defs:
3197         Add a new GtkBorder structure useful for geometry properties
3198         for widgets. Add corresponding GTK_TYPE_BORDER.
3199         
3200         * gtk/gtkwidget.c (gtk_widget_class_install_style_property):
3201         Support automatic parser selection like
3202         gtk_settings_install_property_parser().
3203
3204         * gtk/gtksettings.c (_gtk_rc_property_select_parser): Export
3205         functionality for use by gtk_widget_class_install_style_property.
3206         Support GTK_TYPE_BORDER, GTK_TYPE_REQUISITION.
3207
3208 Sun Apr  1 20:48:59 2001  Owen Taylor  <otaylor@redhat.com>
3209
3210         * gtk/gtkentry.c (gtk_entry_class_init): Make invisible-char
3211         g_param_spec_unichar(). 
3212
3213 Sun Apr  1 23:41:37 2001  Tim Janik  <timj@gtk.org>
3214
3215         * gdk/x11/gdkwindow-x11.c (gdk_window_focus): raise window for non
3216         _NET window managers.
3217
3218         * gtk/gtkmenufactory.[hc]: cvs removed those files now.
3219
3220 Sun Apr  1 08:00:13 2001  Tim Janik  <timj@gtk.org>
3221
3222         * gtk/gtkwidget.[hc]: got rid of gtk_widget_popup(), a function that
3223         bad needs to be nuked, not just deprecated.
3224
3225         * gtk/gtktooltips.c (gtk_tooltips_draw_tips): don't use 
3226         gtk_widget_popup().
3227
3228         * gtk/*.[hc]: s/activate_mnemonic/mnemonic_activate/g;
3229         
3230         * gtk/gtkmenufactory.[hc]: removed this long-standingly deprecated
3231         widget.
3232         
3233         * docs/Changes-2.0.txt: updates.
3234         
3235 Sun Apr  1 01:02:54 2001  Jonathan Blandford  <jrb@redhat.com>
3236
3237         * gtk/gtktreestore.c (gtk_tree_store_sort_iter_changed):
3238         for (i = 0; i < 100; i ++)
3239           g_print ("I will confirm it compile before committing\n");
3240
3241 Sun Apr  1 00:52:06 2001  Jonathan Blandford  <jrb@redhat.com>
3242
3243         * gtk/gtktreestore.c: Initial work on implementing the
3244         GtkTreeSortable interface.  Basicaly a big cut'n'paste job.
3245
3246 Sun Apr  1 03:28:14 2001  Tim Janik  <timj@gtk.org>
3247
3248         * gtk/gtkwidget.c: fixed a bunch of notifications, added
3249         reference counts around emissions where the widget is used afterwards.
3250         added freeze/thaws around multiple properties being notified.
3251         (_gtk_widget_get_aux_info): cleanups.
3252         
3253         * gtk/gtksettings.c (gtk_settings_install_property): provide
3254         default parsing functions for gdkcolor, enums and flags.
3255
3256         * gtk/gtkwindow.[hc]: partially reverted patch from havoc,
3257         applied by owen.
3258         backed out gtk_window_get_location(), gtk_window_set_location(),
3259         gtk_window_get_size() and gtk_window_set_size(), these
3260         have to be sorted out wrg x/y/width/height/default_with/default_height
3261         properties.
3262         kept a flag in GtkWindowGeometryInfo to handle user
3263         resetting default sizes.
3264         cleaned up ZVT comments.
3265         bunch of assorted bug fixes, notification fixes.
3266         (_gtk_window_reposition): make this a really internal function.
3267         
3268         * gtk/testgtk.c: fixups.
3269         
3270 2001-03-31  Hans Breuer  <hans@breuer.org>
3271
3272         * config.h.win32.in : disable USE_MMX for msvc build cause
3273         the assembler doesn't fit and is out of my scope. Disable
3274         USE_GMODULE for msvc build as wel. The right way to share
3275         binaries on win32 would be to use libtiff.dll etc. To reduce
3276         installation hassles IMO it's better to include all fileformats
3277         builtin to gdk-pixbuf
3278
3279         * gdk-pixbuf/makefile.msc : new file
3280
3281         * gdk/gdk.def : updated
3282
3283         * gdk/win32/gdkevents-win32.c : don't erase the background if
3284         .no_bg is set. It improves the scrolling (e.g. of testgtk main
3285         buttons
3286         * gdk/win32/gdkgeometry-win32.c : added comment about the above
3287
3288         * gdk/win32/gdkwindow-win32.c : added three new functions like
3289         the X version. Only one is implemented, because the other two
3290         "gdk_window_begin_(resize|move)_drag" got no docs and appear to
3291         be default behaviour on win32 anyway ...
3292
3293         * gtk/gtk.def : updated
3294
3295         * gtk/makefile.msc.in : update for new files, use glib-genmarshal
3296         from where it was built and add an additional rule to automagically
3297         build gtkmarshal.[hc]
3298
3299         * gtk/gtkfilesel.c (open_new_dir) : don't increase n_entries
3300         before array access for the current entry isn't finished
3301
3302         * gtk/gtktreeitem.c (gtk_tree_item_subtree_button_click) :
3303         use g_return_val_if_fail
3304
3305         * gtk/testgtk.c (window_controls) : don't use the *wrong* size
3306         for the static array, but let the compiler calculate it. It
3307         makes me wonder if gcc isn't capable to catch bugs like this ...
3308
3309 2001-03-31  James Henstridge  <james@daa.com.au>
3310
3311         * gtk/gtkwidget.c (gtk_widget_size_adjust): fix use of magic
3312         constant "-1" in the aux info structure.
3313
3314 2001-03-30  Alexander Larsson  <alexl@redhat.com>
3315
3316         * gtk/gtkbutton.c (gtk_button_get_property):
3317         * gtk/gtklabel.c:
3318         Remove leaks.
3319         
3320         * gtk/gtkcontainer.c:
3321         * gtk/gtkhscale.c:
3322         * gtk/gtkhscrollbar.c:
3323         * gtk/gtklayout.c:
3324         * gtk/gtkmisc.c:
3325         * gtk/gtkprogress.c:
3326         * gtk/gtkprogressbar.c:
3327         * gtk/gtkrange.c:
3328         * gtk/gtktable.c:
3329         * gtk/gtkviewport.c:
3330         * gtk/gtkvscale.c:
3331         * gtk/gtkvscrollbar.c:
3332         * gtk/gtkwidget.c:
3333         Property patches, based on patches from John Margaglione and Lee Mallabone.
3334
3335 Thu Mar 29 21:20:38 2001  Mike Kestner  <mkestner@ameritech.net>
3336
3337         * gtk/gtkspinbutton.c : added value_changed signal which proxies for the
3338         adjustment. Cleaned redundant preconditions (spin != NULL). Added
3339         inline API function docs.
3340         (gtk_spin_button_new_with_range): New convenience constructor.
3341         (gtk_spin_button_set_increments): New adjustment helper.
3342         (gtk_spin_button_set_range): New adjustment helper.
3343
3344         * gtk/testgtk.c : added test of the new convenince constructor and
3345         value_changed signals.
3346
3347 Thu Mar 29 20:20:38 2001  Jonathan Blandford  <jrb@redhat.com>
3348
3349         * gtk/gtktreemodel.c (gtk_tree_row_ref_reordered_callback): Now we
3350         listen to the reorder signal.
3351
3352 Wed Mar 28 20:30:26 2001  Owen Taylor  <otaylor@redhat.com>
3353
3354         * gtk/gtkwidget.[ch] (_gtk_widget_get_aux_info): Add private function
3355         to get the aux info structure fo the widget.
3356
3357         * gtk/gtklabel.c gtk/gtkscrolledwindow.c gtk/gtkwindow.c: Use
3358         above function.
3359
3360         [ Patch from  Havoc Pennington  <hp@redhat.com> ]
3361
3362         * gdk/x11/gdkwindow-x11.c (gdk_window_get_frame_extents): function
3363         to get the size of the window manager frame, basically the same
3364         code that gdk_window_get_root_origin() had
3365         (gdk_window_get_root_origin): use gdk_window_get_frame_extents()
3366
3367         * gtk/gtkwindow.c (gtk_window_set_default_size): use
3368         gdk_window_resize() if the window is realized and resizeable
3369
3370         * gdk/x11/gdkwindow-x11.c (gdk_window_set_geometry_hints): fix
3371         typo so that setting gravity works
3372
3373         * gtk/gtkwindow.c (gtk_window_move_resize): don't ever use
3374         allocation if auto_shrink is on, even if the default size
3375         has not changed.
3376
3377         * gtk/gtkwidget.c (gtk_widget_render_icon): remove bogus
3378         g_return_if_fail
3379
3380 Thu Mar 29 16:29:12 2001  Jonathan Blandford  <jrb@redhat.com>
3381
3382         * gtk/gtkliststore.c (gtk_list_store_iter_changed): Massive
3383         reordering/sorting work.  Now pretty much works.
3384
3385         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): Lots of work to make
3386         reorder mostly work.  Still need to get the parity correct.
3387
3388         * gtk/gtktreeviewcolumn.c: Listen for "model" property changed
3389         signal, so I can listen for the sort_column_changed signal so I
3390         can change my "sort_indicator" property.  Cool.
3391
3392 Wed Mar 28 00:03:10 2001  Owen Taylor  <otaylor@redhat.com>
3393
3394         [ Patch from Havoc Pennington, hp@redhat.com ]
3395
3396         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c:
3397         Add functions gdk_window_begin_resize_drag/begin_move_drag
3398         to start resizing or moving a toplevel window. This
3399         is done either using the _NET_WM_MOVERESIZE protocol,
3400         or, if that isn't present, by emulation.
3401
3402         * gtk/gtkwindow.[ch]: Add functions gtk_begin_move/resize_drag
3403         to export the above to GTK+-land.
3404
3405         * gtk/gtkstyle.[ch]: Add ->draw_resize_grip() paint func.
3406         
3407         * gtk/gtkwindow.c gdk/gdkwindow.[ch] (gdk_window_constrain_size):
3408         Move this function into gdkwindow, since we need it
3409         when implementing fallback resizing.
3410
3411         * gdk/x11/gdkwindow-x11.c: gdk_window_set_geometry_hints.
3412         Fix typo when setting gravity.
3413
3414         * gtk/gtkstatusbar.[ch] (gtk_statusbar_set_has_resize_grip):
3415         Add an optional (but on by default) resize grip for resizing 
3416         the parent window.
3417
3418 01-03-29  Alexander Larsson  <alexl@redhat.com>
3419
3420         * gtk/gtktooltips.c (gtk_tooltips_event_handler):
3421         Don't return TRUE from the event handler, that blocks all
3422         event signals on the tooltip widget. Now you can press buttons
3423         in toolbars again.
3424
3425 Wed Mar 28 19:20:43 2001  Owen Taylor  <otaylor@redhat.com>
3426
3427         * gtk/testtext.c (create_buffer): Add missing NULL on
3428         valist.
3429
3430         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_class_init): Fix
3431         c-n-p problem with INCONSISTENT property.
3432
3433         [ Patch from Havoc Pennington  <hp@redhat.com> ]
3434
3435         * gtk/gtkentry.h (struct _GtkEntryClass): add same populate_popup
3436         hook.
3437
3438         * gtk/gtktextview.h (struct _GtkTextViewClass): add populate_popup
3439         signal as a hook for extending the default popup menu
3440
3441         * gtk/gtkimmulticontext.c (gtk_im_multicontext_append_menuitems):
3442         use radio menu items for the input method menuitems
3443
3444         * gtk/gtkimcontextsimple.c (check_hex): do better validation of 
3445         inserted unicode from Ctrl-Shift-hex input method
3446
3447         * gtk/gtktextbtree.c (_gtk_text_btree_insert): remove utf8
3448         validatation here, already done at GtkTextBuffer level.
3449
3450         * gtk/gtkwidget.c (gtk_widget_class_init): add binding set, add
3451         popup_menu run action signal and Shift+F10 and Menu keybindings.
3452
3453         * gtk/gtkentry.c: implement a default handler for popup_menu
3454
3455         * gtk/gtktextview.c: implement a default handler for popup_menu
3456
3457         * gtk/gtkmenu.c (gtk_menu_popup): select first item if popup is
3458         from a key event
3459         
3460         * gtk/gtklabel.c: remove "trailer" cruft
3461
3462 Wed Mar 28 17:27:12 2001  Jonathan Blandford  <jrb@redhat.com>
3463
3464         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): new function to
3465         handle reordering of trees.  Seems to mostly work w/ the exception
3466         of the parity flag.
3467
3468         * gtk/gtktreeview.c (gtk_tree_view_reordered): handle "reordered"
3469         signal.
3470
3471 Wed Mar 28 21:12:37 2001  Tim Janik  <timj@gtk.org>
3472
3473         * gtk/gtkwidget.h: c++ fixes.
3474
3475 Sun Mar 25 15:51:28 2001  Owen Taylor  <otaylor@redhat.com>
3476
3477         * gtk/gtksettings.c (gtk_settings_init): Fix use of uninitialized
3478         memory.
3479
3480 Tue Mar 27 22:36:07 2001  Owen Taylor  <otaylor@redhat.com>
3481
3482         * gtk/gtkwidget.h gtk/gtkrange.h: Apply patch from 
3483         Nils Barth fixing event return values. (#51041)
3484
3485         * gtk/gtkwidget.c: Fix some return values for default
3486         functions.
3487
3488         * gtk/gtk[vh]scrollbar.c gtk/gtk[vh]range.c: Fix
3489         return values for trough_keys functions.
3490
3491         * gtk/gtkwidget.h (struct _GtkWidgetClass): Fix return
3492         value for add_accelerator (shoudl have been a void
3493         return.)
3494
3495         * gtk/gtkcellrenderer.[ch]: gtkcellrenderertoggle.h:
3496         Fix return type of EVENT.
3497
3498         * gtk/gtkmarshal.list gtk/gtktexttag.c: Make EVENT
3499         signal return a boolean.
3500
3501 Tue Mar 27 22:07:44 2001  Jonathan Blandford  <jrb@redhat.com>
3502
3503         * gtk/gtkliststore.c (gtk_list_store_sort): Fix arguments to
3504         reordered signal.
3505
3506         * tests/testtreesort.c (main): fix spelling.
3507
3508 Tue Mar 27 20:55:29 2001  Jonathan Blandford  <jrb@redhat.com>
3509
3510         * gtk/gtkliststore.c: More work on implementing sortable
3511         interface.
3512
3513 Mon Mar 26 15:48:45 2001  Owen Taylor  <otaylor@redhat.com>
3514
3515         * gtk/gtkwindow.c (gtk_window_list_toplevels): Don't
3516         reference the widgets in the resulting list. (#11821)
3517         This makes this consistent with gtk_container_children.
3518
3519         * gtk/gtkwindow.c gtk/gtkwidget.c: Fix up the two
3520         uses of gtk_window_list_toplevels.
3521
3522 Mon Mar 26 15:26:17 2001  Owen Taylor  <otaylor@redhat.com>
3523
3524         * gtk/gtkimcontext.c (gtk_im_context_set_use_preedit): Add
3525         a virtual function to set whether the IM context should use 
3526         the preedit string. (#51922)
3527         
3528 Mon Mar 26 14:42:59 2001  Owen Taylor  <otaylor@redhat.com>
3529
3530         * gdk/gdkpango.h: Remove stale FIXME comment.
3531
3532 2001-03-26  Alexander Larsson  <alla@lysator.liu.se>
3533
3534         * gtk/gtkfilesel.c (gtk_file_selection_get_filename):
3535         Fixed bug that returned NULL if a filename was selected.
3536
3537 2001-03-24  Havoc Pennington  <hp@pobox.com>
3538
3539         * gtk/gtkthemes.c (gtk_theme_engine_load): improve error message
3540         to contain the word "theme"
3541
3542 2001-03-24  Havoc Pennington  <hp@pobox.com>
3543
3544         * gtk/gtkhsv.c (gtk_hsv_move): make motion around the ring much
3545         slower but finer-grained
3546         (gtk_hsv_focus): get initial focus on the ring or triangle 
3547         according to tab direction
3548
3549         * gtk/testgtk.c (main): get rid of weird sleep(1) on exit
3550
3551 2001-03-23  Havoc Pennington  <hp@pobox.com>
3552
3553         * gtk/gtkhsv.c: make this somewhat key-navigable
3554
3555         * gtk/gtkfontsel.c: mnemonics
3556
3557         * gtk/gtkgamma.c: mnemonics
3558
3559         * gtk/gtkcolorsel.c: add mnemonics to labels
3560
3561 2001-03-22  Havoc Pennington  <hp@pobox.com>
3562
3563         Applied big patch from Seth Lytle to fix event handler return
3564         values, slightly modified.
3565
3566         * gtk/gtkcalendar.c (gtk_calendar_button_press): return TRUE if
3567         handled.
3568         (gtk_calendar_key_press): return TRUE for GDK_space triggers
3569         select_day
3570
3571         * gtk/gtkclist.c (gtk_clist_button_press): return TRUE if handled
3572         (gtk_clist_button_release): return TRUE if handled
3573
3574         * gtk/gtkcolorsel.c (mouse_release):
3575         (palette_activate): 
3576         (palette_press): 
3577         (palette_new): 
3578         (mouse_press): 
3579         (get_screen_color): 
3580         fixed return type (void to gboolean), return TRUE,
3581         added GTK_SIGNAL_FUNC cast
3582
3583         * gtk/gtkcombo.c (gtk_combo_popup_button_press): fixed return type
3584         (void to gboolean), and return TRUE
3585         (gtk_combo_button_release): changed return value to TRUE after
3586         gtk_grab_add on combo->popwin
3587
3588         * gtk/gtkctree.c (gtk_ctree_button_press): return TRUE if triggers a
3589         collapse or expand
3590
3591         * gtk/gtkcurve.c (gtk_curve_graph_events): return TRUE for
3592         button/motion
3593
3594         * gtk/gtkdnd.c (gtk_drag_source_event_cb): return TRUE for button
3595         press/release and motion that trigger act
3596
3597         * gtk/gtkentry.c (gtk_entry_button_release): return TRUE
3598
3599         * gtk/gtkfontsel.c (gtk_font_selection_size_key_press): return TRUE
3600         for GDK_Return
3601         
3602         * gtk/gtklist.c (gtk_list_button_press): return TRUE mostly
3603         (gtk_list_button_release): return TRUE if selection
3604
3605         * gtk/gtklistitem.c (gtk_list_item_button_press): return TRUE on
3606         press
3607
3608         * gtk/gtkmenushell.c (gtk_menu_shell_button_press):
3609         (gtk_menu_shell_button_release): chain parent_menu_shell retval
3610
3611         * gtk/gtknotebook.c (gtk_notebook_button_press): return FALSE if
3612         nothing triggered
3613         (gtk_notebook_button_release): return TRUE if we do anything
3614
3615         * gtk/gtkspinbutton.c (gtk_spin_button_button_press): 
3616         (gtk_spin_button_button_release): return TRUE or chained retval
3617
3618         * gtk/gtktext.c (gtk_text_button_press): 
3619         (gtk_text_button_release): return TRUE
3620         (gtk_text_key_press): remove redundant retval code
3621         
3622         * gtk/gtktreeitem.c (gtk_tree_item_button_press): return TRUE if button
3623         and sensitive
3624         (gtk_tree_item_subtree_button_click): changed type to gint, and return
3625         TRUE if sensitive
3626
3627         * gtk/gtktooltips.c (gtk_tooltips_event_handler): deactivate implies 
3628         return TRUE
3629
3630 2001-03-23  Havoc Pennington  <hp@redhat.com>
3631
3632         * gtk/testgtk.c: fix warnings
3633
3634         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): fix return value
3635
3636         * gtk/gtktextview.c: fix warnings
3637
3638         * gtk/gtktext.c (find_cursor_at_line): fix warning
3639
3640         * gtk/gtkselection.c (gtk_selection_notify): fix warning 
3641
3642         * gtk/gtkitemfactory.c (gtk_item_factory_menu_pos): fix signature
3643         of this function
3644
3645         * gtk/gtkimmulticontext.c (gtk_im_multicontext_append_menuitems):
3646         fix warning
3647
3648         * gtk/gtkhandlebox.c (gtk_handle_box_style_set): fix warning
3649
3650         * gtk/gtkfontsel.c: fix warning
3651
3652         * gtk/gtkcolorsel.c: fix warnings
3653
3654 2001-03-23  Havoc Pennington  <hp@redhat.com>
3655
3656         * gtk/gtkhandlebox.c: Apply property patch from Lee Mallabone
3657
3658         * gtk/gtkbox.c: Apply property patch from Lee Mallabone
3659
3660         * gtk/gtkcheckmenuitem.c: Apply property patch from Lee Mallabone,
3661         and deprecated gtk_check_menu_item_set_show_toggle().
3662         
3663         * gtk/gtkbutton.c: Apply property patch from Lee Mallabone
3664
3665         * gtk/gtkfilesel.c: Apply property patch from Lee Mallabone
3666
3667         * gtk/gtkframe.c: Apply property patch from Lee Mallabone
3668
3669 2001-03-23  Havoc Pennington  <hp@redhat.com>
3670
3671         * gtk/gtktoolbar.c, gtk/gtkimcontext.c, gtk/gtklabel.c: fix up
3672         some docs
3673
3674 Fri Mar 23 16:13:43 2001  Jonathan Blandford  <jrb@redhat.com>
3675
3676         * gtk/gtktreeviewcolumn.h (GtkCellDataFunc): Forgot to namespace
3677         this.
3678
3679         * gtk/gtktreestore.c (gtk_tree_store_set_value): change from
3680         set_cell to set_value
3681
3682         * gtk/gtkliststore.c (gtk_list_store_set_value): change from
3683         set_cell to set_value
3684
3685 Thu Mar 22 19:27:34 2001  Jonathan Blandford  <jrb@redhat.com>
3686
3687         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
3688         fix braino.
3689         * gtk/gtktreesortable.[ch]: New interface to add cleanup sortable
3690         support.
3691
3692         * gtk/gtktreeview.c: Addition of initial sortable support.
3693
3694         * gtk/gtktreestore.c: Addition of initial sortable support.
3695
3696         * gtk/gtkliststore.c: Addition of initial sortable support.
3697
3698         * gtk/gtkmarshal.list: yet another marshaller.
3699
3700         * gtk/gtktreedatallist.[ch]: shared code between the store models
3701         for handling sorting headers.
3702
3703 2001-03-22  Havoc Pennington  <hp@redhat.com>
3704
3705         * gtk/gtkcontainer.c (gtk_container_set_focus_chain): 
3706         (gtk_container_unset_focus_chain): Add ability to override the 
3707         focus chain for a container explicitly
3708
3709 Thu Mar 22 13:01:44 2001  Tim Janik  <timj@gtk.org>
3710
3711         * gtk/gtklabel.[hc]: some cleanups, fixed mnemonic_widget handling,
3712         added PROP_MNEMONIC_WIDGET.
3713
3714         * gtk/gtkwindow.c (gtk_window_activate_mnemonic): 
3715         (gtk_window_remove_mnemonic): 
3716         (gtk_window_add_mnemonic): fixed assertions.
3717         (gtk_window_activate_mnemonic): constrain modifier checks to those
3718         permitted by gtk_accelerator_get_default_mod_mask().
3719         got rid of gtk_window_get_default_accel_group().
3720
3721         * gtk/gtkwidget.c (gtk_widget_real_activate_mnemonic): handle non
3722         activatable widgets either by focussing or a warning.
3723         added a signal accumulator to ::activate_mnemonic which stops the
3724         emission once a handler returned TRUE.
3725
3726 2001-03-22  Havoc Pennington  <hp@pobox.com>
3727
3728         * gtk/gtktoolbar.c (gtk_toolbar_insert_stock): handle mnemonics in
3729         the stock item label
3730
3731         * gtk/gtklabel.c: s/@gtk_func/gtk_func()/ in docs
3732
3733         * gtk/gtkstock.c (builtin_items): add mnemonics where missing
3734
3735         * demos/gtk-demo/*.c: Add mnemonics all over the place
3736
3737         * gtk/gtklabel.h: mark parse_uline deprecated
3738
3739 2001-03-21  Alexander Larsson  <alexl@redhat.com>
3740
3741         * gtk/gtkitemfactory.[ch]:
3742         Add support for stock and normal imagemenuitems.
3743         
3744         * gtk/testgtk.c:
3745         Add some tests for mnemonics, stock toolbars, stock
3746         and image menuitems in itemfactory and gdk_window_scroll.
3747
3748 2001-03-21  Alexander Larsson  <alexl@redhat.com>
3749
3750         * gtk/gtkbutton.[ch]:
3751         * gtk/gtkdialog.c:
3752         Renamed gtk_button_new_stock() to gtk_button_new_from_stock() and
3753         removed accel_group argument. Renamed gtk_button_new_accel() to
3754         gtk_button_new_with_mnemonic() and removed accel_group argument.
3755
3756         * gtk/gtkcheckbutton.[ch]:
3757         New function gtk_check_button_new_with_mnemonic().
3758
3759         * gtk/gtkentry.c:
3760         Override activate_mnemonic and just grab focus.
3761
3762         * gtk/gtkitemfactory.c:
3763         Don't add menu uline accel group, instead use mnemonics support.
3764
3765         * gtk/gtklabel.[ch]:
3766         New support for mnemonics.
3767
3768         * gtk/gtkmarshal.list:
3769         Needed BOOLEAN:BOOLEAN for activate_mnemonic.
3770
3771         * gtk/gtkmenu.[c]:
3772         * gtkmenushell.c:
3773         Use mnemonics instead of accel groups for uline
3774         support in menu items.
3775         Removed gtk_menu_get_uline_accel_group() and
3776         gtk_menu_ensure_uline_accel_group().
3777
3778         * gtk/gtkmenuitem.c:
3779         Override activate_mnemonic to handle switching between
3780         menu items if there are collisions.
3781         
3782         * gtk/gtknotebook.c:
3783         Connect to activate_mnemonic on the tab_label, so that
3784         activating it switches to that notebook page.
3785
3786         * gtk/gtkwidget.[ch]:
3787         Add activate_mnemonic signal. New function
3788         gtk_widget_activate_mnemonic() to emit it.
3789         Default implementation does activate/grab_focus.
3790
3791         * gtk/gtkwindow.[ch]:
3792         Add support for mnemonics in windows.
3793         New functions:
3794         gtk_window_add_mnemonic, gtk_window_remove_mnemonic,
3795         gtk_window_activate_mnemonic, gtk_window_set_mnemonic_modifier
3796
3797         * gtk/testgtk.c:
3798         Update to function name changes.
3799         
3800 2001-03-21  Alexander Larsson  <alexl@redhat.com>
3801
3802         * gtk/gtkimagemenuitem.[c]:
3803         Add gtk_image_menu_item_new_from_stock()
3804
3805 Tue Mar 20 15:00:43 2001  Jonathan Blandford  <jrb@redhat.com>
3806
3807         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
3808         Fix buglet in meeting.
3809
3810 2001-03-19  Havoc Pennington  <hp@redhat.com>
3811
3812         * gtk/gtkiconfactory.c: Make GtkIconSource an opaque datatype, and
3813         add a bunch of accessor functions. This is because we have
3814         reasonable expectations of extending what fields it contains in
3815         the future.
3816
3817         * gtk/gtkstyle.c (gtk_default_render_icon): adapt to icon source
3818         changes
3819
3820         * gtk/gtkrc.c (gtk_rc_parse_icon_source): fix to use new
3821         GtkIconSource   
3822
3823 Mon Mar 19 15:53:36 2001  Owen Taylor  <otaylor@redhat.com>
3824
3825         * gtk/gtkitemfactory.c gtk/testgtk.c: Handle quoting of / with \; properly
3826         handle __ in paths, quote " and \n in gtk_item_factory_dump_items().
3827
3828         * gtk/gtkadjustment.[ch] gtk/gtkclist.c gtk/gtkhruler.c gtk/gtklayout.c 
3829           gtk/gtklist.c gtk/gtkprogress.[ch] gtk/gtkprogressbar.[ch] gtk/gtkrange.[ch]
3830           gtk/gtkruler.[ch] gtk/gtkscale.c gtk/gtkscrolledwindow.c gtk/gtkspinbutton.[ch]
3831           gtk/gtktext.c gtk/gtktextview.c gtk/gtkvruler.c gtk/testgtk.c:
3832         Change float to double everywhere with the exception of 0<->1.0 alignment
3833         and GtkCurve.
3834
3835 2001-03-19  Tor Lillqvist  <tml@iki.fi>
3836
3837         * gdk/win32/gdkdrawable-win32.c
3838         * gdk/win32/gdkimage-win32.c: Use correct casts in debugging
3839         output.
3840
3841         * demos/testpixbuf-drawable.c: If GDK_WINDOWING_WIN32, include
3842         gdkwin32.h.
3843
3844 2001-03-18  Tor Lillqvist  <tml@iki.fi>
3845
3846         * gdk/win32/gdkevents-win32.c (print_window_state): New function.
3847         print_event_state, print_event): Use preprocessor macro to make
3848         code more compact. Print also GDK_WINDOW_STATE events.
3849         (synthesize_crossing_events): Remove the old #ifdeffed-out code.
3850         
3851         * gtk/gtk.def
3852         * gtk/makefile.mingw.in: Update.
3853
3854         * gtk/gtkmain.h: Check for G_PLATFORM_WIN32, not only G_OS_WIN32,
3855         to catch also Cygwin.
3856
3857 Sun Mar 18 01:15:30 2001  Tim Janik  <timj@gtk.org>
3858
3859         * gtk/gtkspinbutton.[hc]: added rc-style argument
3860         GtkSpinButton::shadow_type.
3861         removed spin_button->shadow_type, gtk_spin_button_set_shadow_type()
3862         and ARG_SHADOW_TYPE as it doesn' make much sense to try to override
3863         rc-style settings.
3864
3865         * gtk/gtkfixed.c: removed gtk_fixed_paint() (was unused).
3866
3867         * gtk/gtkwidget.c: quark cleanups.
3868
3869         * gtk/gtkrc.[hc]: added gtk_rc_scanner_new() to create an rc-file
3870         scanner with appropriate configuration, renamed GtkRcStyleClass.clone
3871         to create_rc_style() (we don't do cloning in standard OO sense).
3872         added per rc style properties.
3873         
3874         * gtk/gtkstyle.[hc]: added code to retrive pspec conformant rc-style
3875         property values and for caching those. some cleanups.
3876         
3877         * gtk/Makefile.am: -DG_DISABLE_CONST_RETURNS.
3878         
3879         * gtk/gtksettings.[hc]: new file for global rc-file properties
3880         (at least currently, should get extended to support X properties
3881         and other communication mechanisms).
3882         
3883         * gtk/gtkwidget.[hc]: added style property support:
3884         (gtk_widget_class_install_style_property_parser): install style
3885         property pspec with parser function for rc-file values other
3886         than LONG, DOUBLE or STRING.
3887         (gtk_widget_class_install_style_property): same as above without
3888         parser (parsers are going to be needed quite infrequently).
3889         (gtk_widget_style_get_property): retrive style property value.
3890         (gtk_widget_style_get_valist): same as above with varargs support,
3891         has NOCOPY semantics.
3892         (gtk_widget_style_get): wrapper around gtk_widget_style_get_valist().
3893
3894 Fri Mar 16 18:24:53 2001  Jonathan Blandford  <jrb@redhat.com>
3895
3896         * demos/gtk-demo/main.c (row_activated_cb): modified to use
3897         "row_activated" signal.
3898
3899         * gtk/gtktreeview.c (gtk_tree_view_row_activated): oh, the
3900         stupidity.  Lets actually pass in the row with this signal...
3901
3902 Fri Mar 16 18:01:17 2001  Jonathan Blandford  <jrb@redhat.com>
3903
3904         * gtk/gtktreeviewcolumn.[ch]: s/GTK_TREE_COLUMN/GTK_TREE_VIEW_COLUMN
3905
3906         * gtk/gtktreeview.c (gtk_tree_view_row_activated): New signal.
3907
3908         * gtk/gtktreeview.c (gtk_tree_view_destroy): moved pretty much
3909         everything into the ::destroy function, and freed a lot more.
3910
3911 2001-03-16  Havoc Pennington  <hp@redhat.com>
3912
3913         * gtk/gtkwidget.h (struct _GtkWidgetAuxInfo): change to use gint
3914         instead of gint16, to avoid overflow issues, since sizes > 16-bit
3915         are now allowed.
3916
3917 2001-03-16  Havoc Pennington  <hp@redhat.com>
3918
3919         * Applied patch from Nils Barth (bug # 51041) to 
3920         replace "gint" with "gboolean" and 0/1 with TRUE/FALSE
3921         in various places.
3922
3923 2001-03-15  Havoc Pennington  <hp@redhat.com>
3924         
3925         * gtk/gtktextbuffer.c (gtk_text_buffer_create_tag): add varargs 
3926         for properties to set on the tag.
3927
3928         * gtk/testtext.c: fixups to reflect create_tag change
3929         
3930         * gtk/gtktexttag.c (gtk_text_tag_set_property):
3931         background/foreground stipple are objects, not boxed.
3932
3933         * demos/gtk-demo/textview.c: intellihancing
3934
3935 Fri Mar 16 11:38:42 2001  Jonathan Blandford  <jrb@redhat.com>
3936
3937         * gtk/gtktreeview.c (gtk_tree_view_set_model): Fixed some
3938         braindeadness spotted by Jamie Strachan <frostfreek@yahoo.com>.
3939
3940 2001-03-16  Alexander Larsson  <alexl@redhat.com>
3941
3942         * gdk/x11/gdkgeometry-x11.c (_gdk_window_process_expose):
3943         Fix sign error with queued region translations.
3944
3945 2001-03-15  HideToshi Tajima  <tajima@happy>
3946
3947         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_set_cursor_location): 
3948         * gtk/gtkimmulticontext.c (gtk_im_multicontext_set_cursor_location):
3949         * gtk/gtkentry.c (update_im_cursor_location): 
3950         * gtk/gtkimcontext.c (gtk_im_context_set_cursor_location):
3951         * gtk/gtkimcontext.h (struct _GtkIMContextClass): rename
3952         set_cursor_pos to set_cursor_location in GtkInputContext class
3953
3954 Thu Mar 15 18:22:44 2001  Jonathan Blandford  <jrb@redhat.com>
3955
3956         * gtk/gtkcellrenderer.h: Changed prototype to allow for getting
3957         the location of the cell relative to its area.
3958         * gtk/gtkcell*: modified for above change
3959         * gtk/gtktreeview.c: modified for above change.
3960
3961 Wed Mar 14 13:58:32 2001  Jonathan Blandford  <jrb@redhat.com>
3962
3963         * gtk/gtktreeview.c (gtk_tree_view_set_model): Ref the model.
3964          (gtk_tree_view_finalize): actually unref the model.  Thanks to
3965         Jamie Strachan <frostfreek@yahoo.com> for noticing this error.
3966
3967 2001-03-14  Havoc Pennington  <hp@redhat.com>
3968
3969         * gtk/gtkdata.h, gtk/gtkdata.c: Delete.
3970         
3971         * gtk/gtk.h: remove gtkdata.h
3972
3973         * gtk/Makefile.am: remove gtkdata
3974         
3975         * gtk/gtktext.c (gtk_text_set_adjustments): connect to "destroy"
3976         not "disconnect" on the adjustments.
3977         
3978         * gtk/gtktooltips.h, gtk/gtktooltips.c: derive from GtkObject not
3979         GtkData
3980
3981         * gtk/gtkadjustment.h, gtk/gtkadjustment.c: derive from GtkObject
3982         not GtkData
3983
3984         * configure.in: handle case where X render exists, but Pango lacks
3985         Xft support.
3986
3987 2001-03-15 Alexander Larsson  <alexl@redhat.com>
3988
3989         * gtk/gtktoolbar.[ch]:
3990         New functions gtk_toolbar_set_icon_size and gtk_toolbar_insert_stock
3991         to add stock items to toolbars.
3992
3993         * gtk/Makefile.am:
3994         Remove ../gdk/gdkim.h from gdk_headers.
3995
3996 2001-03-15  Sven Neumann  <sven@gimp.org>
3997
3998         * gdk/gdkim.h: removed
3999         
4000         * gdk/gdkprivate.h
4001         * gdk/x11/gdkim-x11.c: do not include gdkim.h 
4002
4003 2001-03-14  HideToshi Tajima  <tajima@happy.sunsoft.eng.sun.com>
4004
4005         * gtk/gtkimmulticontext.c (gtk_im_multicontext_set_cursor_pos):
4006         * gtk/gtkimcontext.c (gtk_im_context_set_cursor_pos):
4007         * gtk/gtkimcontext.h (struct _GtkIMContextClass): add
4008         set_cursor_pos() virtual method
4009
4010         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_class_init):
4011         (gtk_im_context_xim_set_cursor_pos): add implementation for
4012         set_cursor_pos() method
4013
4014         * gtk/gtkentry.c (recompute_idle_func): set current cursor
4015         position to input methods
4016
4017 Mon Mar 12 21:02:08 2001  Jonathan Blandford  <jrb@redhat.com>
4018
4019         * gtk/gtktreeview.c (gtk_tree_view_header_focus): Fix up focus
4020         code a lot.
4021
4022         * gtk/gtktreedatalist.c (_gtk_tree_data_list_free): use
4023         g_mem_chunk.
4024         (_gtk_tree_data_list_alloc): use g_mem_chunk.
4025         (_gtk_tree_data_list_node_to_value): Fix to switch on
4026         G_TYPE_FUNDAMENTAL.
4027         (_gtk_tree_data_list_value_to_node): Fix to switch on
4028         G_TYPE_FUNDAMENTAL.
4029         (_gtk_tree_data_list_node_copy): Fix to switch on
4030         G_TYPE_FUNDAMENTAL.
4031
4032 2001-03-12  Havoc Pennington  <hp@redhat.com>
4033
4034         * gtk/gtkwindow.c (gtk_window_class_init): Patch from John Margaglione 
4035         to convert to new property API. Also, change default_width and
4036         default_height get_property to return 0 as the flag value for
4037         "unset"; -1 is not a valid value for these fields.
4038
4039 2001-03-12  Havoc Pennington  <hp@redhat.com>
4040
4041         * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: Switch to using an
4042         enum with registration for icon sizes, instead of strings.
4043
4044         * gtkimage.h, gtkimage.c, gtkstyle.h, gtkstyle.c, gtkwidget.h, 
4045         gtkwidget.c: Fix to reflect GtkIconSize
4046         
4047 2001-03-12  Alexander Larsson  <alexl@redhat.com>
4048
4049         Make GtkFB compile and link.
4050         
4051         * gdk/linux-fb/gdkdrawable-fb2.c:
4052         window->mapped to GDK_WINDOW_IS_MAPPED(). 
4053         
4054         * gdk/linux-fb/gdkwindow-fb.c:
4055         window->mapped to GDK_WINDOW_IS_MAPPED(). 
4056         Added gdk_window_shape_combine_region.
4057         Added assorted placeholders for unimplemented new GdkWindow API calls.
4058
4059 2001-03-12  Alexander Larsson  <alexl@redhat.com>
4060
4061         * gtk/gtkfilesel.c:
4062         Add more test when converting filenames from/to utf-8.
4063         Don't allow entering text in the filename entry which isn't allowed in
4064         a filename. Just beep instead.
4065
4066 2001-03-12  Alexander Larsson  <alexl@redhat.com>
4067
4068         * gtk/gtkclist.c:
4069         Scroll using gdk_window_scroll(). Don't wait for exposes.
4070         Move the column headers in an order that makes them flash less.
4071
4072 2001-03-10  Hans Breuer  <hans@breuer.org>
4073
4074         * gdk/gdk.def : updated
4075
4076         * gdk/win32/gdkgc-win32.c : pixmaps are visible again, due
4077         to offseting the clip_mask at the right place
4078
4079         * gdk/win32/gdkwindow-win32.c : don't create background brushes
4080         for all the gdkClasses, especially not for the input_only case.
4081         Otherwise flickering wont be avoidable, because we don't get
4082         WM_ERASEBKGND message for these windows.
4083
4084         * gdk/win32/gdkevents-win32.c : initialize event->expose.region
4085         and fixed massive redraw problems apparently triggered by Alexanders 
4086         recent change. Not fully understood the GDK_EXPOSE / WM_PAINT handling
4087         but it seems to work quite well :-)
4088
4089         * gdk/win32/gdkprivate-win32.h : added _gdk_window_process_expose
4090         prototype
4091
4092 Sat Mar 10 12:15:31 2001  Jonathan Blandford  <jrb@redhat.com>
4093
4094         * gtk/gtktreestore.c (gtk_tree_store_set_cell): Fix a stupid typo.
4095         (gtk_list_store_set_cell): Fix a stupid typo.
4096
4097 Fri Mar  9 20:36:21 2001  Jonathan Blandford  <jrb@redhat.com>
4098
4099         * gtk/gtktreeselection.c (gtk_tree_selection_select_all): Make
4100         select_all not work if you're in SINGLE mode (it doesn't make that
4101         much sense, anyway.)
4102
4103         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_to_value):
4104         handle types more sanely.
4105         (_gtk_tree_data_list_value_to_node): handle types more sanely.
4106         (_gtk_tree_data_list_node_copy): handle types more sanely.
4107
4108         * gtk/gtkliststore.c (gtk_list_store_set_cell): fix to work with
4109         GValue better. Converts the type as well.
4110
4111         * gtk/gtktreestore.c (gtk_tree_store_set_cell): fix to work with
4112         GValue better. Converts the type as well.
4113
4114 Wed Mar  7 20:47:41 2001  Owen Taylor  <otaylor@redhat.com>
4115
4116         * gtk/gtktext.c gtk/gtkoldeditable.[ch] gdk/gdk.[ch]
4117         gdk/Makefile.am gdk/x11/Makefile.am gdk/x11/gdkevents-x11.c 
4118         gdk/x11/gdkglobals-x11.c gdk/x11/gdkprivate-x11.c
4119         gdk/x11/gdkx.h gdk/x11/gdkim-x11.c: Remove old XIM code.
4120
4121         * gdk/win32/gdkim-win32.c gdk/linux-fb/gdkim-fb.c: Remove
4122         gdk_im/gdk_ic.
4123
4124 2001-03-09  Hans Breuer  <hans@breuer.org>
4125
4126         * gdk/gdk.def : updated
4127
4128         * gdk/win32/gdkevents-win32.c : don't ask input_only windows
4129         for their palette
4130
4131         * gdk/win32/gdkgeometry-win32.c : reflect GdkWindowObject::mapped
4132         removing
4133
4134         * gdk/win32/gdkwindow-win32.c : reflect GdkWindowObject::mapped
4135         removing and implemented Havoc's GdkWindow state functions; 
4136         stick/unstick only as no-op, cause I don't know how to emulate 
4137         on win32 ...
4138
4139         * gtk/gtk.def : updated
4140
4141         * gtk/gtkbox.c (gtk_box_get_spacing) : use g_return_val_if_fail ()
4142
4143         * gtk/gtktypeutils.c : #include <string.h>
4144
4145         * gtk/gtkwindow.h : declare gtk_window_set_decorated ()
4146
4147 Fri Mar  9 09:31:55 2001  Tim Janik  <timj@gtk.org>
4148
4149         * gtk/gtkwidget.c (gtk_widget_class_init): fixed signals with
4150         GDK_TYPE_DRAG_CONTEXT, it needs to be marshaled as an object,
4151         not a boxed.
4152
4153 2001-03-09  Alexander Larsson  <alexl@redhat.com>
4154
4155         * docs/Changes-2.0.txt:
4156         Document expose event->region change and that gtk_widget_event
4157         doesn't allow passing expose events.
4158
4159         * gdk/gdkevents.h:
4160         Add region to expose event.
4161         
4162         * gdk/gdkevents.c:
4163         Handle event->region in gdk_event_copy() and gdk_event_free().
4164
4165         * gdk/gdkwindow.c (gdk_window_process_updates_internal):
4166         Generate expose_event->region when creating expose events.
4167
4168         * gdk/x11/gdkevents-x11.c:
4169         Generate expose events with regions when translating X events.
4170
4171         * gtk/gtkcontainer.[ch]:
4172         Default expose handler that propagates expose events to NO_WINDOW
4173         children. New function gtk_container_propagate_expose()
4174
4175         * gtk/gtkwidget.[ch]:
4176         Moved gtk_widget_event implementation to gtk_widget_event_internal.
4177         gtk_widget_event calls gtk_widget_event_internal but doesn't allow
4178         expose events. New function gtk_widget_send_expose() to send expose
4179         events. New function gtk_widget_region_intersect() to calculate
4180         window/region intersections.
4181         
4182         * gtk/gtkmain.c (gtk_main_do_event):
4183         Use gdk_window_begin_paint_region() instead of gdk_window_begin_paint_rect().
4184         Use gtk_widget_send_expose() to send expose events.
4185         
4186         * gtk/gtkbin.c:
4187         * gtk/gtkbox.c:
4188         * gtk/gtkfixed.c:
4189         * gtk/gtkimagemenuitem.c:
4190         * gtk/gtklist.c:
4191         * gtk/gtkpacker.c:
4192         * gtk/gtktable.c:
4193         * gtk/gtktree.c:
4194         Remove expose handler, using the default container implementation
4195         instead.
4196         
4197         * gtk/gtkbutton.c:
4198         * gtk/gtkcheckbutton.c:
4199         * gtk/gtkeventbox.c:
4200         * gtk/gtkfixed.c:
4201         * gtk/gtkhandlebox.c:
4202         * gtk/gtklayout.c:
4203         * gtk/gtklistitem.c:
4204         * gtk/gtkmenu.c:
4205         * gtk/gtkmenubar.c:
4206         * gtk/gtkmenuitem.c:
4207         * gtk/gtknotebook.c:
4208         * gtk/gtkoptionmenu.c:
4209         * gtk/gtkpaned.c:
4210         * gtk/gtkscrolledwindow.c:
4211         * gtk/gtktogglebutton.c:
4212         * gtk/gtktoolbar.c:
4213         * gtk/gtktreeitem.c:
4214         * gtk/gtkviewport.c:
4215         Chain expose handler to parent class handler. Use
4216         gtk_container_propagate_expose() to propagate exposes.
4217
4218         * gtk/gtkclist.c (check_exposures):
4219         * gtk/gtktext.c (process_exposes):
4220         Use gtk_widget_send_expose instead of gtk_widget_event.
4221
4222 Thu Mar  8 19:40:28 2001  Jonathan Blandford  <jrb@redhat.com>
4223
4224         * gtk/gtktreeview.c (gtk_tree_view_destroy): Add destroy function.
4225
4226 Thu Mar  8 19:18:27 2001  Jonathan Blandford  <jrb@redhat.com>
4227
4228         * gtk/gtktreeview.c (gtk_tree_view_unref_tree_helper): Actually
4229         unref the nodes.   Fixes bug #50058.
4230
4231         * gtk/gtktreemodel.c (gtk_tree_model_ref_node): change
4232         "::ref_iter" to "::ref_node".
4233         (gtk_tree_model_unref_node): change "::unref_iter" to
4234         "::unref_node". Fixes bug #50064.
4235
4236 Thu Mar  8 17:40:09 2001  Jonathan Blandford  <jrb@redhat.com>
4237
4238         * gtk/gtktreeview.c (gtk_tree_view_create_row_drag_icon): add
4239         support for invisible cells.
4240          (gtk_tree_view_bin_expose): ditto
4241
4242 Thu Mar  8 16:36:00 2001  Jonathan Blandford  <jrb@redhat.com>
4243
4244         * gtk/gtktreemodel.c (gtk_tree_model_get_type): add prerequesite
4245         on gobjects.
4246
4247         * tests/testtreefocus.c (main): New test file.
4248
4249         * tests/testtreeview.c: update to latest glib changes.
4250
4251         * tests/testtreecolumns.c: update to latest glib changes.
4252
4253 Thu Mar  8 18:13:20 2001  Tim Janik  <timj@gtk.org>
4254
4255         * gtk/testgtk.c: re-enabled event watcher emission hooks.
4256
4257 Thu Mar  8 16:51:21 2001  Tim Janik  <timj@gtk.org>
4258
4259         * *.c: added accumulator data argument to g_signal_newc()
4260         functions.
4261
4262         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_set_model): 
4263         * gtk/gtktreeview.c (gtk_tree_view_setup_model): 
4264         * gtk/treestoretest.c (make_window):
4265         s/g_signal_connect/g_signal_connectc/.
4266
4267         * gtk/gtktextbuffer.c: completed signal arg fixups,
4268         they also needed G_SIGNAL_TYPE_STATIC_SCOPE flag.
4269
4270 Thu Mar  8 00:02:30 2001  Owen Taylor  <otaylor@redhat.com>
4271
4272         * gtk/gtkwidget.[ch] (gtk_widget_get_name): Make
4273         G_CONST_RETURN.
4274
4275         * gtk/gtkwidget.[ch] gtk/gtkprivate.h: Add a 
4276         ::hierarchy-changed signal when a widget changes
4277         from anchored to unanchored or vice versa.
4278         (anchored means 
4279          gtk_widget_get_ancestor (widget, GTK_TYPE_WINDOW) != NULL.)
4280         Use a private flag to keep track of this efficiently.
4281
4282 2001-03-07  Havoc Pennington  <hp@redhat.com>
4283
4284         * gtk/testgtk.c (create_spins): uglify so that size request gets
4285         tested.
4286
4287         * gtk/gtkspinbutton.c (gtk_spin_button_size_request): Base size
4288         request on values for upper/lower, completes #6152
4289
4290 Wed Mar  7 20:07:22 2001  Owen Taylor  <otaylor@redhat.com>
4291
4292         * Makefile.am: Remove gtk-config-2.0 again.
4293         (Grrrr, pkg-config. And stops make loops.)
4294
4295 Thu Mar  8 00:18:29 2001  Tim Janik  <timj@gtk.org>
4296
4297         * gtk/gtksignal.[hc]: removed old emission hook API.
4298         
4299         * docs/Changes-2.0.txt: fixed sections.
4300         
4301         * gtk/gtktextbuffer.c: signal arg fixups.
4302
4303 2001-03-07  Havoc Pennington  <hp@redhat.com>
4304
4305         * gtk/gtktextview.c (invalidated_handler): use PRIORITY_VALIDATE
4306
4307         * gtk/gtktextview.h (GTK_TEXT_VIEW_PRIORITY_VALIDATE): add this
4308         here, bug #50368; changed to be GDK_PRIORITY_REDRAW + 5, instead
4309         of GDK_PRIORITY_REDRAW + 1, so you can insert stuff in between the
4310         validation and the redraw which is higher priority than the
4311         validation.
4312
4313 2001-03-07  Havoc Pennington  <hp@redhat.com>
4314
4315         * gtk/gtkentry.c (gtk_entry_get_property): remove trailer
4316         (gtk_entry_set_property): remove trailer
4317
4318         * gtk/gtkentry.c (gtk_entry_set_width_chars): 
4319         (gtk_entry_get_width_chars): new functions, to set size request to 
4320         a given number of characters
4321
4322         * gtk/testgtk.c (create_dialog): beef up the dialog test slightly
4323
4324         * gtk/gtkdialog.c (gtk_dialog_set_has_separator): new function
4325         (gtk_dialog_get_has_separator): new function
4326         (run_delete_handler): fix to not emit "response" signal
4327         because we already did in the delete event handler installed
4328         at dialog creation time.
4329         
4330         * gtk/gtkdialog.h: add a has_separator property,
4331         add GTK_DIALOG_NO_SEPARATOR flag
4332
4333 2001-03-07  Havoc Pennington  <hp@redhat.com>
4334
4335         * gtk/gtkwindow.c (gtk_window_set_decorated): new function, turns
4336         off decorations for a window.
4337
4338         * demos/gtk-demo/button_box.c (create_bbox): adapt to button box
4339         changes
4340
4341         * gtk/gtklabel.c (gtk_label_get_layout_offsets): new function 
4342         to get location of PangoLayout inside the label, closes #51198
4343
4344         * gtk/testgtk.c (create_bbox): fix up button box usage
4345
4346         * gtk/testcalendar.c (create_calendar): fix up button box usage
4347
4348         * gtk/gtkfilesel.c (gtk_file_selection_init): fixup buttonbox usage
4349
4350         * gtk/gtkdialog.c (gtk_dialog_init): fixup buttonbox usage
4351
4352         * gtk/gtkhbbox.h: deprecations
4353
4354         * gtk/gtkvbbox.h: deprecations
4355
4356         * gtk/gtkbox.c (gtk_box_get_spacing): new function, used to
4357         emulate deprecated gtk_button_box_get_spacing
4358
4359         * gtk/gtkbbox.h: deprecate some useless functions, remove entirely 
4360         the "set global default" functions
4361         (struct _GtkButtonBox): remove "spacing" field, use the one from 
4362         GtkBox base class
4363
4364         * gtk/gtkbbox.c (_gtk_button_box_child_requisition): rename with uscore
4365
4366         * gtk/gtkiconfactory.c (gtk_icon_set_render_icon): If we fail to
4367         render the icon, return the missing image icon.
4368
4369         * gtk/gtkimage.c (gtk_image_set_from_file): fall back to missing
4370         image icon if the load fails.   
4371
4372         * gtk/gtkstock.h (GTK_STOCK_MISSING_IMAGE): Add stock icon for use
4373         when no image is found; should be the Netscape "missing image"
4374         icon eventually but for now is a random image
4375
4376         * gtk/gtkwindow.c (gtk_window_set_role): new function, sets the 
4377         role for the session manager
4378
4379         * gtk/testgtk.c (dnd_drop): remove use of GTK_WINDOW_DIALOG
4380
4381         * gtk/gtkcompat.h (GTK_WINDOW_DIALOG): compat #define
4382         GTK_WINDOW_DIALOG GTK_WINDOW_TOPLEVEL
4383
4384         * gtk/gtkenums.h (enum GtkWindowType): remove GTK_WINDOW_DIALOG
4385
4386 Wed Mar  7 13:24:57 2001  Tim Janik  <timj@gtk.org>
4387
4388         * gtk/*.c: marshaller fixes.
4389         
4390         * gtk/gtkmarshal.list: extreme cleanup.
4391
4392         * gtk/gtktreeview.c (gtk_tree_view_class_init): disable interface
4393         param spec for now.
4394
4395         * gtk/gtktexttag.c (gtk_text_tag_set_property): use g_value_get_boxed()
4396         where appliable.
4397
4398         * gtk/gtktypeutils.[hc]: updates to GLib API changes.
4399         special cased autogenerated boxed types from gtktypebuiltins_ids.c
4400         which are not reference counted:
4401         GtkSelectionData, GdkEvent, GdkColor, GtkTextIter, PangoTabArray,
4402         PangoFontDescription, GtkTreeIter and GtkTreePath.
4403
4404 Thu Mar  1 03:58:56 2001  Tim Janik  <timj@gtk.org>
4405
4406         * gtk/gtktreeselection.h: 
4407         * gtk/gtktreemodel.c:
4408         * gtk/gtktreedatalist.[hc]: fixed includes. no gobject/*
4409         file should be included directly, and gobject/gmarshal.h
4410         as well as gtk/gtkmarshal.h even can't be included directly.
4411
4412         * Makefile.am: grr, install gtk-config-2.0.
4413
4414         * gtk/testgtk.c:
4415         * gtk/simple.c:
4416         * gtk/gtkmenu.c:
4417         * gtk/gtkitemfactory.c: use g_object_connect() instead of
4418         passing "*signal*::*" args to gtk_widget_set().
4419         
4420         * gtk/gtktypeutils.[hc]: got rid of GTK_TYPE_SIGNAL.
4421         
4422         * gtk/*.c: removed trailer arg from property setters and getters.
4423         macro fixups.
4424
4425 2001-03-07  Alexander Larsson  <alexl@redhat.com>
4426
4427         * gtk/gtklabel.c (set_markup): Removed warning
4428
4429 Tue Mar  6 19:59:12 2001  Jonathan Blandford  <jrb@redhat.com>
4430
4431         * gtk/gtkcellrenderer.h (struct _GtkCellRenderer): Add visible
4432         field to allow you to hide cell renderers.
4433
4434         * gtk/gtkcellrenderer.c: Add support for invisible cells.
4435
4436         * gtk/gtktreeview.c: Add support for invisible cells.
4437
4438 Tue Mar  6 17:25:07 2001  Jonathan Blandford  <jrb@redhat.com>
4439
4440         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_button_clicked):
4441         Add "clicked" signal back to columns.
4442
4443         * ChangeLog: remove conflict markers.
4444
4445 Tue Mar  6 10:45:45 2001  Owen Taylor  <otaylor@redhat.com>
4446
4447         * gtk/gtkbutton.c: Add animation of activation by, on 
4448         activate, pressing the button, and adding a timeout that 
4449         releases the button after 250ms or on key release and
4450         emits ::clicked. (#51501)
4451
4452         * gtk/gtkdialog.c: Bit of a hack - for buttons in the
4453         action area, we connect to ::clicked instead of ::activate
4454         so the dialog stays up through the animation.
4455
4456 Mon Mar  5 16:38:15 2001  Owen Taylor  <otaylor@redhat.com>
4457
4458         * gtk/gtkmenushell.c (gtk_menu_shell_enter_notify): Only
4459         check the ignore_enter flag for the menu shell that
4460         the item is actually a child of, not for attached
4461         submenus. (#51536)
4462
4463 Tue Feb 27 02:16:14 2001  Owen Taylor  <otaylor@redhat.com>
4464
4465         * gtk/gtkmain.c (gtk_propagate_event): Only do special
4466         special key-press grab handling for widgets within
4467         GtkWindows. Otherwise, fall through to normal case.
4468
4469         This prevents key events being sent twice to GtkInvisible
4470         widgets, which can cause all sorts of mischief.
4471
4472 Fri Feb  2 13:20:12 2001  Owen Taylor  <otaylor@redhat.com>
4473
4474         * gtk/gtkmain.c (gtk_propagate_event): When a grab
4475         widget is in effect, give the grab widget a first
4476         crack at KEY_PRESS/RELEASE events. (#424)
4477
4478 2001-03-06  James Henstridge  <james@daa.com.au>
4479
4480         * gtk/gtkwidget.c (gtk_widget_class_init): set the class closure
4481         offset for the window_state_event to point at window_state_event
4482         rather than no_expose_event.
4483
4484 Mon Mar  5 19:10:15 2001  Jonathan Blandford  <jrb@redhat.com>
4485
4486         * gtk/gtkimmodule.h: fix busted /* comment */
4487
4488 Mon Mar  5 15:07:05 2001  Jonathan Blandford  <jrb@redhat.com>
4489
4490         * gtk/gtktreeview.c: Apply patch from John Margaglione to add
4491         object properties.
4492
4493 Mon Mar  5 14:55:19 2001  Jonathan Blandford  <jrb@redhat.com>
4494
4495         * gtk/gtkcellrenderertoggle.c: Apply patch from Lee Mallabone to
4496         add object properties.
4497
4498         * gtk/gtkcellrenderertextpixbuf.c: Apply patch from Lee Mallabone
4499         to add object properties.
4500
4501         * gtk/gtkcellrenderertext.c: Apply patch from Lee Mallabone to add
4502         object properties.
4503
4504         * gtk/gtkcellrendererpixbuf.c: Apply patch from Lee Mallabone to
4505         add object properties.
4506
4507         * gtk/gtkcellrenderer.c: Apply patch from Lee Mallabone to add
4508         object properties.
4509
4510 Mon Mar  5 14:38:54 2001  Jonathan Blandford  <jrb@redhat.com>
4511
4512         * gtk/gtktreemodel.c: renamed "child_toggled" to
4513         "has_child_toggled".
4514
4515         * gtk/gtktreeview.c: Handle removing columns better.  Updated to
4516         handle new signal name.
4517
4518         * gtk/gtktreestore.c: Updated to handle new signal name.
4519         * gtk/gtklisttore.c: Updated to handle new signal name.
4520         * gtk/gtktreemodelsort.c: Updated to handle new signal name.
4521
4522 2001-03-05  Alexander Larsson  <alexl@redhat.com>
4523
4524         * gtk/gtkmenu.c (gtk_menu_set_tearoff_state):
4525         Set GDK_WINDOW_TYPE_HINT_MENU on tearoff window.
4526
4527 2001-03-05  Michael Natterer  <mitch@gimp.org>
4528
4529         * gtk/gtklabel.c: Made the "parent_class" pointer static. The
4530         pixbuf-engine coincidentially also failed to make one of it's
4531         parent_class pointers static, causing overwriting of GtkLabel's
4532         parent_class pointer in pixbuf_style_class_init().
4533         (Will commit the fix to the pixbuf-engine too).
4534
4535 2001-03-05  Alexander Larsson  <alexl@redhat.com>
4536
4537         * gdk/gdkwindow.h:
4538         Added GdkWindowTypeHint type. Added modal_hint field to GdkWindindow.
4539         New functions gdk_window_set_type_hint, gdk_window_set_modal_hint and
4540         gdk_window_set_icon_list for net wmspec functionality.
4541
4542         * gdk/x11/gdkwindow-x11.c:
4543         Set _NEW_WM_STATE_MODAL from window->modal_hint in set_inital_hints.
4544         Implement gdk_window_set_type_hint, gdk_window_set_modal_hint and
4545         gdk_window_set_icon_list.
4546         Added gdk_wmspec_change_state helper function and used it in the code.
4547         Set _NET_WM_ICON_NAME in gdk_window_set_title and gdk_window_set_icon_name.
4548
4549         * gtk/gtkdialog.c (gtk_dialog_init):
4550         Set GDK_WINDOW_TYPE_HINT_DIALOG.
4551
4552         * gtk/gtkhandlebox.c (gtk_handle_box_realize):
4553         Set GDK_WINDOW_TYPE_HINT_TOOLBAR.
4554
4555         * gtk/gtkwindow.c:
4556         new function gtk_window_set_type_hint.
4557         On realize, set type hint and modal hint.
4558
4559         * gtk/gtkwindow.h:
4560         Added type_hint field and gtk_window_set_type_hint.
4561
4562 2001-03-05  Alexander Larsson  <alexl@redhat.com>
4563
4564         * gtk/gtklabel.[ch]:
4565         Convert from GtkArg to GParam (originally based on patch from Lee Mallabone).
4566         New function gtk_label_get_accel_keyval () to get the underline accelerator
4567         of the label. Setting the label pattern overrides other attributes.
4568
4569 Mon Mar  5 14:51:10 MET 2001  Sven Neumann  <sven@gimp.org>
4570
4571         * gtk/gtkrc.c: fixed compiler warnings by inserting some consts.
4572         Added missing initializers to gtk_rc_style_init().
4573
4574 Sun Mar 04  07:30:03 2001 CET Mikael Hermansson <mikeh@bahnhof.se>
4575
4576         * gtk/gtktextview.c: fixed bug #51097 about setting 
4577         gtk_text_view_set_border_window_size() if the widget is 
4578         already realized.
4579
4580 Sat Mar  3 16:59:16 2001  Owen Taylor  <otaylor@redhat.com>
4581
4582         * gdk/gdkpango.h gdk/x11/gdkwindow-x11.c: Doc fixes
4583
4584         * gdk/win32/gdkinput.c (gdk_device_get_axis): Remove doc
4585         comment. Won't do to have duplicated doc comments between
4586         the platform subdirs.
4587
4588 Sat Mar  3 16:26:33 2001  Owen Taylor  <otaylor@redhat.com>
4589
4590         * gdk/x11/gdkmain-x11.c gdk/x11/gdkkeys-x11.c 
4591           gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.c:
4592
4593         Detectable auto-repeat - make a repeating key generate
4594         press/press/press/release instead of press/release pairs.
4595
4596         If we have Xkb and XkbSetDectableAutoRepeat supports
4597         that, we do it that way. Otherwise, when we get
4598         a release event, we check ahead with XPending to see
4599         if the next key is a KeyPress with the same keycode
4600         and timestamp. (Not 100% reliable, but pretty close.)
4601           
4602 Tue Feb 27 02:16:14 2001  Owen Taylor  <otaylor@redhat.com>
4603         
4604         * gtk/gtkmain.c (gtk_propagate_event): Only do special
4605         special key-press grab handling for widgets within
4606         GtkWindows. Otherwise, fall through to normal case.
4607  
4608         This prevents key events being sent twice to GtkInvisible
4609         widgets, which can cause all sorts of mischief.
4610  
4611 Fri Feb  2 13:20:12 2001  Owen Taylor  <otaylor@redhat.com>
4612  
4613         * gtk/gtkmain.c (gtk_propagate_event): When a grab
4614         widget is in effect, give the grab widget a first
4615         crack at KEY_PRESS/RELEASE events. (#424)
4616  
4617 Sat Mar  3 15:39:49 2001  Owen Taylor  <otaylor@redhat.com>
4618
4619         * gtk/gtkentry.c (gtk_entry_button_press): Add shift-clicking
4620         to extend the selection. (Roughly based on patch
4621         from Jay Cox, #50939)
4622
4623         * gtk/gtkentry.c (gtk_entry_button_press): Fix triple-clicking
4624         to properly handle previous GDK_BUTTON_PRESS. 
4625         (Patch from Jay Cox, #50938)
4626
4627         * gtk/gtkentry.c (gtk_entry_real_delete_text): Move the
4628         '\0' back along with the deleted text. (#51148)
4629
4630 Mon Jan 22 14:31:29 2001  Owen Taylor  <otaylor@redhat.com>
4631
4632         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Unshift
4633         the group when extracting it from the X keyboard event.
4634
4635         * modules/input/Makefile.am modules/input/imipa.c: 
4636         Simple module for entering IPA. (Do we need a 
4637         gtk-stupid-input-tricks CVS module?)
4638
4639 Sat Mar  3 13:32:47 2001  Owen Taylor  <otaylor@redhat.com>
4640
4641         * gtk/gtkimmodule.c (gtk_im_module_init): Remove spurious
4642         const.
4643
4644         * gdk-pixbuf-2.0.pc.in gtk+-2.0.pc.in: Fix include path.
4645
4646         * gtk/gtkdialog.c (gtk_dialog_set_default_response): If there
4647         is no focus widget for the dialog currently, grab the focus as well
4648         as the default.
4649
4650         * gtk/gtkdialog.c (gtk_dialog_set_default_response): Get
4651         the action area's children to iterate through, not the
4652         dialog's children.
4653
4654 Sat Mar  3 13:21:27 2001  Owen Taylor  <otaylor@redhat.com>
4655
4656         * tests/Makefile.am tests/testsocket.c tests/testsocket_child.c:
4657         Add plug-socket tests. (Won't work worth a darn until I commit
4658         the rest of the plug-socket changes, but no reason these
4659         can't go into CVS now.)
4660
4661 2001-03-02  Havoc Pennington  <hp@redhat.com>
4662
4663         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_flush): use
4664         _gdk_region_get_xrectangles()
4665
4666         * gdk/x11/gdkmain-x11.c (_gdk_region_get_xrectangles): new function
4667
4668         * gtk/testgtk.c (create_shapes): add test for shape_combine_region
4669
4670         * gdk/x11/gdkwindow-x11.c (gdk_window_shape_combine_region): new
4671         function, contributed by Ron Steinke    
4672
4673         * gdk/x11/gdkevents-x11.c (gdk_wmspec_supported): rename
4674         gdk_net_wm_supports
4675
4676         * gdk/gdkregion-generic.c (gdk_region_get_rectangles): 
4677         New function, contributed by Ron Steinke
4678
4679         * gtk/gtkentry.c (gtk_entry_get_layout_offsets): New function, 
4680         used to line up the text in the entry when using the entry for
4681         editable sheet cell hacks
4682
4683         * gtk/testgtk.c (create_entry): test the activate_default setting
4684         on GtkEntry
4685
4686         * gtk/gtkentry.c (gtk_entry_set_activates_default): New function to 
4687         cause the entry to activate the default button for a dialog when 
4688         activated
4689         (gtk_entry_get_activates_default): new function
4690
4691 Wed Feb 28 19:10:43 2001  Owen Taylor  <otaylor@redhat.com>
4692
4693         * gtk/gtkclist.c (real_remove_row): Patch from ChiDeok
4694         Hwang to move call to sync_selection() up a few lines
4695         to before the row list is modified, to fix crash when
4696         removing rows in the undo_selection list.
4697
4698         (Test case provided by Daniel Elstner:
4699
4700         http://mail.gnome.org/archives/gtk-list/2001-February/msg00359.html)
4701
4702 Fri Feb 23 15:06:48 2001  Owen Taylor  <otaylor@redhat.com>
4703
4704         * gtk/gtktree.c (gtk_tree_class_init): Do the setting
4705         of tree->root_tree in parent_set rather than _map(), 
4706         fixing #50892 in a bit better manner.
4707
4708 Thu Feb 22 17:07:58 2001  Owen Taylor  <otaylor@redhat.com>
4709
4710         * gtk/gtkmenu.c (gtk_menu_popup): Don't flip cursor. (#50934)
4711
4712 Tue Feb  2 11:22:33 2001  Jody Goldberg <jgoldberg@home.com>
4713
4714         * gtk/gtkstyle.c : Remove duplicate fwd decl for
4715         gtk_default_draw_shadow.
4716
4717 ue Feb 20 11:40:58 2001  Owen Taylor  <otaylor@redhat.com>
4718
4719         * gdk/gdkimage.c (gdk_image_new): Remove excess 
4720         warning, make warnings more verbose, treat a error
4721         in shmat as permanent, and don't try again.
4722         (#51163, Ed Randall.)
4723
4724 Mon Feb 19 20:15:28 2001  Owen Taylor  <otaylor@redhat.com>
4725
4726         * gtk/gtkrange.c (gtk_range_timer_1st_time): Add an initial
4727         delay for the first click before starting to scroll.
4728         (based on #51026, gtk-enf-990512-0.patch, Eric Fisher)
4729
4730         * gtk/gtktext.c: GtkText should have I-beam cursor. 
4731         (based on gtk-enf-990513-1.patch, Eric Fisher.)
4732
4733 Mon Feb 19 16:42:19 2001  Owen Taylor  <otaylor@redhat.com>
4734
4735         * gtk/gtklayout.c (gtk_layout_allocate_child): Tiny
4736         cleanup to remove some references to unused
4737         ->xoffset, ->yoffset.
4738
4739 Mon Feb 19 14:20:36 2001  Owen Taylor  <otaylor@redhat.com>
4740
4741         * gdk/gdkrgb.c (gdk_rgb_convert_555_br): Fix incorrect
4742         mask. (#51039, fix from Martin Maierhofer)
4743
4744 Fri Feb 16 20:09:42 2001  Owen Taylor  <otaylor@redhat.com>
4745
4746         * gtk/gtkctree.c (gtk_ctree_class_init): Add bindings
4747         for unshifted + and shifted = for non-us keyboards.
4748         Make <Control>+ and <Control>- work as well as 
4749         <Control>KP_Plus, <Control>KP_Minus for recursive
4750         open/close.  (#2682, René Seindal)
4751
4752 Fri Feb 16 18:50:59 2001  Owen Taylor  <otaylor@redhat.com>
4753
4754         * gtk/gtkmenushell.c (gtk_real_menu_shell_cancel): Unset
4755         the active menu item before deactivating the menu,
4756         so gtk_menu_popdown doesn't change the history. (#50964)
4757         
4758 Fri Feb 16 15:55:22 2001  Owen Taylor  <otaylor@redhat.com>
4759
4760         * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): 
4761         draw lines with text_gc rather than black_gc.
4762         (Patch from Vlad Harchev <hvv hippo ru>, #50926)
4763
4764 Thu Mar  1 19:50:56 2001  Jonathan Blandford  <jrb@redhat.com>
4765
4766         * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_realize_button):
4767         Move handling of buttons fully in gtktreeviewcolumn.  This code is
4768         less interrelated then it was, but it still requires the
4769         GtkTreeView to map it.
4770
4771         * test/testtreecolumn.c: Now I can add a column to one view,
4772         remove it, add it to the another view, remove it, then re-add it
4773         to the first.  Nifty.
4774
4775 Thu Mar  1 13:14:27 GMT 2001  Tony Gale <gale@gtk.org>
4776
4777         * docs/tutorial/gtk-tut.sgml: Minor corrections
4778
4779 Wed Feb 28 16:36:46 2001  Jonathan Blandford  <jrb@redhat.com>
4780
4781         * gtk/gtktreemodel.c (gtk_tree_row_reference_*): Sanitize
4782         GtkRowReference.
4783
4784 2001-02-28  Havoc Pennington  <hp@redhat.com>
4785
4786         * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove draw_focus and
4787         draw_default
4788         (gtk_widget_draw_focus): remove this function; we could instead
4789         make it just gtk_widget_draw(), but in most cases I think the
4790         result would be broken user code, so think it's better to have
4791         that code not compile and get fixed
4792         (gtk_widget_draw_default): ditto
4793
4794         * gtk/gtkwidget.c: Add default handlers for focus_in_event and
4795         focus_out_event that set/unset GTK_HAS_FOCUS and call queue_draw
4796         
4797         * gtk/gtkwindow.c (gtk_window_set_default): just queue a draw when
4798         widgets lose/get the default, instead of calling draw_default
4799         
4800         * docs/Changes-2.0.txt: note about all this
4801
4802         Then fixed every widget in GTK, I won't list all the filenames.
4803
4804 Tue Feb 27 19:32:53 2001  Jonathan Blandford  <jrb@redhat.com>
4805
4806         * gtk/gtktreemodel.c (deleted_callback): Proxy out to
4807         _gtk_tree_row_reference_deleted.
4808         (inserted_callback): Proxy out to
4809         _gtk_tree_row_reference_inserted.
4810         (_gtk_tree_row_reference_new_from_view): Somewhat yukky hack to
4811         get around signal emission ordering problem.
4812
4813         * gtk/gtktreeselection.c (gtk_tree_selection_real_unselect_all):
4814         fix to work with SINGLE 
4815         (_gtk_tree_selection_internal_select_node): Major sanitization on
4816         selections.  SINGLE now seems to work.
4817
4818         * tests/Makefile.am: add testtreecolumn.c:
4819
4820         * tests/testtreecolumn.c: New test.  Mostly points out selection
4821         bugs currently, but will test columns later.
4822
4823         * gtk/gtkrbtree.c (_gtk_rbtree_remove_node): Fix really nasty
4824         selection bug.  I hate touching this code -- it's scary.
4825
4826 2001-02-26  Havoc Pennington  <hp@redhat.com>
4827
4828         * gtk/testgtk.c: test the window state stuff
4829
4830         * gtk/gtkwindow.c (gtk_window_present): new function, makes a
4831         window come to the user's attention as if it were just created
4832         (gtk_window_iconify): new function
4833         (gtk_window_deiconify): new function
4834         (gtk_window_stick): new function
4835         (gtk_window_unstick): new function
4836         (gtk_window_maximize): new function
4837         (gtk_window_unmaximize): new function
4838
4839         * gtk/gtkwidget.h, gtk/gtkwidget.c: add window_state_event signal
4840
4841         * gtk/gtkmain.c (gtk_main_do_event): handle GDK_WINDOW_STATE
4842
4843         * gdk/x11/gdkevents-x11.c: create window state events when
4844         appropriate
4845         (gdk_wmspec_supported): new function
4846
4847         * gdk/x11/gdkwindow-x11.c (gdk_window_iconify): handle
4848         iconification before showing the window
4849         (gdk_window_deiconify): new function
4850         (gdk_window_stick): new function
4851         (gdk_window_unstick): new function
4852         (gdk_window_maximize): new function
4853         (gdk_window_unmaximize): new function
4854
4855         * gdk/gdkwindow.c: store the window state in the window; 
4856         change to using the GDK_WINDOW_STATE_WITHDRAWN flag instead of
4857         window->mapped.
4858         (gdk_window_get_state): return the current window state
4859
4860         * gdk/gdkevents.c (gdk_event_get_time): handle GDK_WINDOW_STATE
4861         (gdk_event_get_state): handle GDK_WINDOW_STATE
4862         (gdk_synthesize_window_state): function to create the window state
4863         events
4864
4865         * gdk/gdkevents.h (struct _GdkEventWindowState): new type of
4866         event, for changes to "window state" such as maximized, sticky, 
4867         etc.
4868         
4869         * gdk/x11/gdkwindow-x11.c (gdk_window_focus): new function,
4870         focuses a window
4871
4872         * gdk/x11/gdkmain-x11.c (_gdk_wmspec_supported): new function, 
4873         finds out if we support a given WM spec hint
4874
4875 Tue Feb 27 13:37:38 GMT 2001  Tony Gale <gale@gtk.org>
4876
4877         * docs/faq/gtk-faq.sgml: New question re memory leaks.
4878
4879 2001-02-25  Hans Breuer  <hans@breuer.org>
4880
4881         * gdk/gdk.h : changed #ifdef GDK_DISBALE_DEPRECARED to #ifndef
4882         cause we want to loose those prototypes only in the latter case
4883
4884         * gdk/win32/gdkevents-win32.c : can't cast from GdkPixmap to
4885         GdkPixmapImplWin32 because it itsn't derived from it. Use the
4886         impl member variable instead
4887
4888         * gtk/gtk.def : updated
4889
4890         * gtk/gtklist.c : 
4891         * gtk/gtkmenus.c : include <string.h> for memset ()
4892
4893         * gtk/makefile.msc.in : updated and don't define GTK_COMPILATION
4894         for everthing built here, but for gtk-x.x.dll only. This solves
4895         problem of indifferent gtk type definitions
4896
4897 Sat Feb 24 20:11:39 2001  Jonathan Blandford  <jrb@redhat.com>
4898
4899         * gtk/gtkclipboard.h: actually put /* */ around #endif comment.
4900
4901 Fri Feb 23 17:50:13 2001  Jonathan Blandford  <jrb@redhat.com>
4902
4903         * gtk/gtktreeview.c (gtk_tree_view_bin_expose): Only draw the
4904         column that is exposed.
4905
4906         (_gtk_tree_view_update_size): Changed name from set_size, and
4907         changed function to do more work, and not force people calling it
4908         to figure out the size.  Simplifies a lot of code elsewhere.
4909
4910 2001-02-23  Alexander Larsson  <alexl@redhat.com>
4911
4912         * gdk/gdkpixmap.c (gdk_pixmap_colormap_new_from_pixbuf):
4913         return solid masks for xpms that have no transparent color.
4914         This makes the ..._create_from_xpm... API backwards
4915         compatible.
4916
4917 2001-02-23  Tor Lillqvist  <tml@iki.fi>
4918
4919         * README.win32: Update. Mention the gtk-1-3-win32-production
4920         branch.
4921
4922         * gdk/win32/bdfcursor.c: New file. A program that generates
4923         xcursors.h. Thanks to Stefan Ondrejicka.
4924
4925         * gdk/win32/xcursors.h: New file, contains the X cursor font in a
4926         compact format.
4927
4928         * gdk/win32/Makefile.am (EXTRA_DIST): Add new files.
4929
4930         * gdk/win32/gdkcursor-win32.c (_gdk_win32_data_to_wcursor): New
4931         function, uses xcursors.h.
4932         (gdk_cursor_new): Use _gdk_win32_data_to_wcursor to generate
4933         cursor from inline data instead of using LoadCursor() to generate
4934         it from a resource.
4935
4936         * gdk/win32/gdkevents-win32.c (gdk_event_translate): At button up
4937         event, must check the Windows message for mouse button state, as
4938         the GDK event state might not have been built if it is
4939         undelivered. Remove one goto.
4940
4941         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Call
4942         SetCursor() if the current cursor as returned by GetCursor() is
4943         the window's previous cursor. The ChildWindowFromPoint() test
4944         apparently didn't work correctly.
4945
4946         * gdk/win32/rc/*.cur: Remove.
4947
4948         * gdk/win32/rc/gdk.rc.in: Remove cursors.
4949
4950         * gdk/win32/rc/Makefile.am (EXTRA_DIST): Remove from here, too.
4951
4952         * gtk/makefile.{mingw,msc}.in: Updates.
4953
4954 Wed Feb 21 20:56:50 2001  Jonathan Blandford  <jrb@redhat.com>
4955
4956         * gtk/gtktreemodel.h: add functions for signal emission.
4957
4958         * gtk/gtktreestore.c: move to use above functions instead of
4959         g_signal_emit.
4960
4961         * gtk/gtkliststore.c: ditto
4962
4963 Wed Feb 21 15:41:34 2001  Jonathan Blandford  <jrb@redhat.com>
4964
4965         * gtk/gtktreestore.c: removed signals.  Moved to inherit from
4966         GObject instead of GtkObject.
4967
4968         * gtk/gtkliststore.c: ditto.
4969
4970         * gtk/gtktreemodelsort.c: ditto.
4971
4972         * gtk/gtktreemodel.c (gtk_tree_model_base_init): moved signals to
4973         GtkTreeModelIface, instead of in each model.
4974
4975 2001-02-21  Havoc Pennington  <hp@redhat.com>
4976
4977         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_child_anchor):
4978         unbreak this function
4979
4980         * gtk/gtkentry.c: apply patch from Lee Mallabone to add object 
4981         properties
4982
4983         * gtk/gtkcurve.c: apply patch from Lee Mallabone to add object
4984         properties
4985
4986         * gtk/gtkcombo.c: apply patch from Lee Mallabone to add object 
4987         properties
4988
4989         * gtk/gtkentry.c (gtk_entry_set_max_length): have this take -1 to
4990         mean unset the max length
4991
4992 Wed Feb 21 14:23:05 2001  Jonathan Blandford  <jrb@redhat.com>
4993
4994         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data_func):
4995         Changed name to be set_cell_data_func to make it clear what
4996         the functino does.  Close bug #51069.
4997
4998 Tue Feb 20 16:49:00 2001  Jonathan Blandford  <jrb@redhat.com>
4999
5000         * gtk/testgtk.c (main): Remove turning on of profiling malloc,
5001         have memory actually freed.  Keeps box running longer.
5002
5003 2001-02-21  Alexander Larsson  <alexl@redhat.com>
5004         
5005         * gtk/gtkseparatormenuitem.[ch]:
5006         Added new menu separator item. The drawing and size handling
5007         is still done in GtkMenuItem, but the API is a bit more sane.
5008         
5009         * gtk/Makefile.am:
5010         Add gtkseparatormenuitem.[ch].
5011
5012         * gtk/gtk.h:
5013         Add gtkseparatormenuitem.h.
5014         
5015         * gtk/gtkentry.c:
5016         * gtk/gtkmenufactory.c:
5017         * gtk/gtktextview.c:
5018         Use the new API for menu separators.
5019         
5020         * demos/gtk-demo/menus.c (create_menu):
5021         Add some GtkSeparatorMenuItem demo code.
5022
5023 2001-02-20  Havoc Pennington  <hp@redhat.com>
5024
5025         * gtk/gtkaspectframe.c: Convert to new property API, patch from 
5026         Lee Mallabone
5027
5028         * gtk/gtkarrow.c: Convert to new property API, patch from 
5029         Lee Mallabone
5030
5031 Tue Feb 20 14:26:41 2001  Jonathan Blandford  <jrb@redhat.com>
5032
5033         * tests/testtreeview.c (toggled_callback): fix to reflect change
5034         in GtkTreeModelStore.
5035
5036 Tue Feb 20 12:16:12 2001  Jonathan Blandford  <jrb@redhat.com>
5037
5038         * gtk/gtkiconfactory.c (gtk_icon_set_new_from_pixbuf): New
5039         function to create an icon set from a pixbuf.
5040
5041 2001-02-20  Alexander Larsson  <alexl@redhat.com>
5042
5043         * gtk/gtkcellrenderertext.[ch]:
5044         Add a "markup" property.
5045
5046         * gtk/treestoretest.c:
5047         Use the markup property, remove some leftover stuff from
5048         GtkTreeModelMapping.
5049
5050 2001-02-20  Alexander Larsson  <alexl@redhat.com>
5051
5052         * gtk/gtklabel.c (gtk_label_set_selectable):
5053         Queue a redraw if the selectable setting was changed.
5054
5055 2001-02-20  Alexander Larsson  <alexl@redhat.com>
5056
5057         * gdk/linux-fb/gdkgc-fb.c (gdk_gc_copy):
5058         Actually copy the whole gc, not just the public parts.
5059         
5060         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
5061         GDK_WINDOW_TEMP are not toplevel. Fixes selectable
5062         labels.
5063
5064 2001-02-19  Havoc Pennington  <hp@pobox.com>
5065
5066         * gdk/gdkwindow.c: docs
5067
5068         * gdk/gdkrgb.c: docs
5069
5070         * gdk/gdkregion-generic.c: docs
5071
5072         * gdk/gdkgc.c (gdk_gc_set_values): docs
5073
5074         * gdk/gdkdraw.c: docs
5075
5076         * gdk/gdkdrawable.h: deprecate drawable get/set data
5077
5078 Mon Feb 19 20:37:35 2001  Jonathan Blandford  <jrb@redhat.com>
5079
5080         * demos/gtk-demo/dialog.c: Add simple new demo.
5081
5082 2001-02-19  Havoc Pennington  <hp@redhat.com>
5083
5084         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): add
5085         insert_child_anchor signal, bug #50245
5086
5087         * gtk/gtktextbtree.c (_gtk_text_btree_insert_child_anchor): change
5088         from create_child_anchor, so the anchor is passed in
5089
5090         * gtk/gtktextchild.c (gtk_text_child_anchor_new): new function
5091         (_gtk_widget_segment_new): have the child anchor object passed in, 
5092         instead of creating it.
5093
5094         * gtk/gtktextbuffer.c (gtk_text_buffer_modified): rename
5095         to gtk_text_buffer_get_modified
5096
5097 2001-02-19  Havoc Pennington  <hp@redhat.com>
5098
5099         * gtk/gtktreemodel.c (gtk_tree_model_get_valist): hmm, someone
5100         changed GLib without fixing GTK
5101
5102         * gtk/gtkrange.h: Rename all the stupid implementation detail 
5103         functions to have an underscore in front. Most of them should 
5104         probably just go away, but for starters don't export them.
5105         Bug #50482
5106
5107 2001-02-19  Havoc Pennington  <hp@redhat.com>
5108
5109         * gdk/gdkcolor.h: test was backward, so deprecated functions were
5110         excluded by default
5111
5112         * gtk/gtkstyle.c (gtk_default_draw_diamond): draw etched in/out,
5113         clean up the old code a bit
5114
5115         * gtk/gtkradiobutton.c (gtk_radio_button_draw_indicator): draw
5116         inconsistent state
5117
5118         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_draw_indicator):
5119         draw inconsistent state
5120
5121         * gtk/testgtk.c (create_toggle_buttons): add test for inconsistent
5122         (create_menu): add inconsistent test
5123
5124         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_set_inconsistent):
5125         new function
5126         (gtk_check_menu_item_get_inconsistent): new function
5127         (gtk_real_check_menu_item_draw_indicator): draw the inconsistent
5128         state (using etched in for now)
5129
5130         * gtk/gtkcheckbutton.c (gtk_real_check_button_draw_indicator):
5131         draw inconsistent state
5132
5133         * gtk/gtktogglebutton.c (gtk_toggle_button_set_inconsistent): new
5134         function, used when the user has selected a range of stuff in
5135         different states
5136         (gtk_toggle_button_get_inconsistent): accessor for that
5137         (gtk_toggle_button_paint): draw inconsistent state (etched in?
5138         don't know what else to do)
5139
5140 2001-02-19  Hans Breuer <hans@breuer.org>
5141
5142         * gtk/gtk.def : updated exported symbols
5143
5144         * gtk/makefile.msc.in : updated
5145
5146         * gtk/gtkstyle.c (gtk_style_realize) : gets called without
5147         a colormap, when invoked from testgtk::entry. I'm not sure where
5148         the bug is, but g_return_if_fail (GDK_IS_COLORMAP (colormap));
5149         avoids immediate crashing ...
5150
5151         * gtk/gtkmain.c (check_setugid) : totally disabled on win32;
5152         any objections ?
5153
5154         * gtk/gtktreemodel.c : called G_VALUE_LCOPY with an extra
5155         0 parameter. At least msvc doesn't like macros with var args. 
5156         I simply removed the extra 0, was it a feature or a typo ?
5157
5158         * gtk/gtktreeviewcolumn.[hc] (gtk_tree_view_column_set_func) :
5159         removed the extra indirection from the GtkTreeViewColumnFunc parameter,
5160         because the value assignment to the internal struct wasn't working.
5161         I'm not absolutely sure. The problem could have been resolved by
5162         changing the "func" declartion in the struct, but was the pointer
5163         to the function pointer intended ?
5164
5165         * gtk+/gtk/gtktreedatalist.c : include gboxed.h
5166
5167         * gdk/gdk.def : updated exported symbols
5168
5169         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_image) :
5170         only use SetDIBitsToDevice if there is a palette at the drawable
5171         and the image is GDK_VISUAL_PSEUDO_COLOR
5172
5173         * gdk/win32/gdkkeys-win32.c : msvc still has no <unistd.h> ...
5174
5175         * gdk/win32/gdkwindow-win32.c : #include "gdk.h" /* gdk_rectangle_intersect */
5176
5177         * gdk/*/makefile.msc : updated
5178
5179 2001-02-19  Havoc Pennington  <hp@redhat.com>
5180
5181         * demos/gtk-demo/Makefile.am (INCLUDES): GDK_DISABLE_COMPAT_H,
5182         GDK_DISABLE_DEPRECATED (we need to merge those two #defines)
5183
5184         * gdk/x11/gdkmain-x11.c (gdk_key_repeat_disable): nuke
5185         (gdk_key_repeat_restore): nuke
5186
5187         * gdk/gdk.c (gdk_exit_func): #if 0 this for now, don't install it
5188         (gdk_init_check): no atexit func
5189
5190         * gdk/gdkrgb.h: mark some stuff deprecated
5191
5192         * gdk/gdkcolor.h: mark some stuff deprecated
5193         
5194         * gdk/gdk.h: deprecated gdk_exit, gdk_input_*
5195
5196         * gdk/gdkfont.h: bracket in GDK_DISABLE_DEPRECATED
5197
5198 2001-02-16  Havoc Pennington  <hp@redhat.com>
5199
5200         * gtk/gtkvscrollbar.c (gtk_vscrollbar_trough_keys): use the visual
5201         scroll steps.
5202
5203         * gtk/gtkvscale.c (gtk_vscale_trough_keys): use the visual scroll
5204         steps, and add Ctrl-arrow shortcuts for paging visually as with
5205         HScale, since Page Up and Page Down move logically.
5206
5207         * gtk/gtkenums.h (GtkScrollType): add GTK_SCROLL_STEP_UP,
5208         GTK_SCROLL_STEP_DOWN, etc. for visual scroll directions
5209         
5210         * gtk/gtkrange.c (gtk_range_key_press): handle the visual scroll
5211         steps
5212         (gtk_range_scroll): handle the visual steps
5213
5214         * gtk/gtklist.c (gtk_list_scroll_horizontal): handle the up/down
5215         scroll steps
5216
5217         * gtk/gtkhscale.c (gtk_hscale_trough_keys): use the visual scroll
5218         steps, not the logical ones.
5219
5220         * gtk/gtkclist.c (move_focus_row): handle the up/down scroll steps
5221         (scroll_vertical): handle up/down steps
5222
5223 2001-02-19 Alexander Larsson  <alexl@redhat.com>
5224
5225         * gdk/linux-fb/gdkimage-fb.c (gdk_image_new_bitmap):
5226         Copy data and free data with free().
5227
5228         * gdk-pixbuf/gdk-pixbuf.c:
5229         * gdk-pixbuf/io-jpeg.c:
5230         * gdk-pixbuf/io-png.c:
5231         Use g_try_malloc/g_free instead malloc/free.
5232         
5233         * gdk-pixbuf/test-gdk-pixbuf.c:
5234         Must... initialize... gobject...
5235         
5236         * gdk-pixbuf/pixops/timescale.c:
5237         * gtk/gtkcalendar.c:
5238         Use g_malloc instead of malloc.
5239         
5240 2001-02-19 Alexander Larsson  <alla@lysator.liu.se>
5241
5242         * gtk/testgtkrc:
5243         Comment out property assignments, these don't work yet.
5244
5245 2001-02-17  Havoc Pennington  <hp@pobox.com>
5246
5247         * gtk/gtkalignment.c (gtk_alignment_class_init): clean this up a
5248         bit.
5249
5250 2001-02-17  Havoc Pennington  <hp@pobox.com>
5251
5252         * gtk/gtklabel.c (gtk_label_ensure_layout): fix screwup with
5253         shadowed variables that had broken size request in some cases,
5254         leading to bogus tooltips (#50996)
5255
5256 2001-02-06  Jon K Hellan  <hellan@acm.org>
5257
5258         Implement fast browsing of tooltips, bug #50619
5259         
5260         * gtk/gtktooltips.h (struct _GtkTooltips): Add use_sticky_delay
5261         and last_popdown
5262         
5263         * gtk/gtktooltips.c (gtk_tooltips_init): Initialize sticky_delay,
5264         use_sticky_delay and last_popdown.
5265         (gtk_tooltips_draw_tips, gtk_tooltips_set_active_widget): Record
5266         time of popdown.
5267         (gtk_tooltips_set_active_widget): Unset sticky behaviour if widget
5268         is NULL.
5269         (gtk_tooltips_recently_shown): New static function.  Return true
5270         if < sticky_delay has elapsed since last popdown.
5271         (gtk_tooltips_event_handler): Display window after sticky_delay
5272         (presumably < normal delay) if < STICKY_REVERT_DELAY has elapsed
5273         since last popdown.
5274         
5275 2001-02-17  Havoc Pennington  <hp@pobox.com>
5276
5277         * gtk/gtktypeutils.h (GtkSignalFunc): change it to take (void)
5278         instead of (). #6394
5279
5280         * gtk/gtkprogressbar.c (gtk_progress_bar_get_text): Add
5281         G_CONST_RETURN, make it return by reference, #50473
5282         
5283 Sat Feb 17 06:47:27 2001  Tim Janik  <timj@gtk.org>
5284
5285         * gtk/gtkmenu.c (gtk_menu_motion_notify): default initialize the
5286         generated ENTER_NOTIFY event with 0, otherwise not explicitely
5287         setup fields contain garbage (e.g. subwindow, breaking
5288         gdk_drawable_ref() upon event copy).
5289         (gtk_menu_stop_navigating_submenu_cb): same here.
5290
5291         * gtk/gtklist.c (gtk_list_vertical_timeout): 
5292         * gtk/gtklist.c (gtk_list_horizontal_timeout): 
5293         * gtk/gtkclist.c (vertical_timeout): 
5294         * gtk/gtkclist.c (horizontal_timeout): change direct assignment
5295         default-zero-intialization for unions to memset(,0,), as unions are
5296         not fully default-zero-initialized by compilers (GdkEvent x = { 0, };
5297         has to become GdkEvent x; memset (&x, 0, sizeof (x)); )
5298
5299         * gtk/gtktreeview.c (gtk_tree_view_set_rows_drag_source): scratch
5300         g_closure_sink() warning.
5301
5302         * gtk/gtktreemodel.c (gtk_tree_model_get_valist): 
5303         * gtk/gtktreestore.c (gtk_tree_store_set_valist): 
5304         * gtk/gtkliststore.c (gtk_list_store_set_valist): 
5305         fix G_VALUE_COLLECT() and G_VALUE_LCOPY() calls.
5306         
5307 Fri Feb 16 17:49:59 2001  Jonathan Blandford  <jrb@redhat.com>
5308
5309         * gtk/gtktreestore.[hc], gtk/gtkliststore.[ch]: removed
5310         gtk_*_store_get, and moved to GtkTreeModel.
5311
5312         * gtk/gtktreemodel.h (gtk_tree_model_set{v,}): Added
5313
5314         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_finalize): added.
5315
5316         * gtk/Makefile.am: remove gtktreemodelmapping.[ch]
5317
5318         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_func): let you
5319         set the func.
5320
5321         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
5322         freeze/thaw notify between setting all the properties for a cell.
5323
5324         * gtk/gtk.h: remove gtktreemodelsimple.h, and gtktreemodelmapping.h
5325
5326 2001-02-15  Havoc Pennington  <hp@redhat.com>
5327
5328         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): convert
5329         the X coordinates so they're with respect to the line, rather than 
5330         with respect to the layout.
5331
5332         * gtk/gtkalignment.c: Convert to new property API, patch from Lee
5333         Mallabone
5334
5335         * gtk/testgtk.c (create_range_controls): add vscale tests, 
5336         and inverted test
5337
5338         * gtk/gtkrange.c (gtk_range_set_inverted): new function to fix 
5339         #50806
5340
5341         * gtk/gtkentry.c (gtk_entry_get_text): add G_CONST_RETURN
5342
5343         * gtk/gtktextiter.h (gtk_text_iter_is_last): rename 
5344         gtk_text_iter_is_end
5345
5346         * gtk/gtktextbuffer.h (gtk_text_buffer_get_last_iter):
5347         rename gtk_text_buffer_get_end_iter
5348
5349         * gtk/testgtk.c (create_labels): Add test for selectable
5350
5351         * gtk/gtkentry.c (gtk_entry_draw_text): Use new GDK API to draw
5352         the selection stuff. This code is kind of broken since it doesn't 
5353         use the theme engine.
5354
5355         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): 
5356         fix infinite loop and y offset problem
5357         (gdk_draw_layout_line_with_colors): fix foreground color handling
5358
5359         * gtk/gtklabel.h, gtk/gtklabel.c: Implement a "selectable" flag 
5360         that makes the label selectable.
5361         
5362         * gtk/gtklabel.c (gtk_label_style_set): recreate the label's
5363         layout when the style is set, since fonts etc. could have changed.      
5364
5365 Fri Feb 16 14:22:05 2001  Jonathan Blandford  <jrb@redhat.com>
5366
5367         * gtk/Makefile.am: Removed gtktreemodelsimple.[ch]
5368
5369         * gtk/gtktreemodelsimple.[ch]: removed.
5370
5371 2001-02-16  Alexander Larsson  <alexl@redhat.com>
5372
5373         * gtk/gtktreemodelmapping.[ch]:
5374         New files. Implement GtkTreeModelMapping.
5375         
5376         * gtk/Makefile.am:
5377         Add gtktreemodelmapping.[ch].
5378         
5379         * gtk/gtk.h:
5380         Add gtktreemodelmapping.h
5381
5382         * gtk/treestoretest.c:
5383         Test the GtkTreeModelMapping
5384
5385 Tue Feb 13 13:16:09 2001  Jonathan Blandford  <jrb@redhat.com>
5386
5387         * demos/gtk-demo/panes.c (create_pane_options): If we're going to
5388         have a demo, we might as well pass in real values.  Thanks to
5389         clahey for pointing this out.
5390
5391 2001-02-14  Havoc Pennington  <hp@pobox.com>
5392
5393         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_remove): add
5394         "static" to a private function
5395         (gtk_image_menu_item_class_init): remove destroy handler,
5396         add "image" object property
5397
5398 2001-02-13  Alexander Larsson  <alla@lysator.liu.se>
5399
5400         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_clip_region):
5401         Add a shortcut if the window and the current clip_region doesn't
5402         overlap. This is needed when there are a lot of windows in a
5403         window. The layout test in testgtk is a good test.
5404
5405         * gdk/linux-fb/gdkwindow-fb.c:
5406         Whitespace fix.
5407
5408 2001-02-13  Sven Neumann  <sven@convergence.de>
5409
5410         * demos/testanimation.c: replaced deprecated gtk_drawing_area_size
5411
5412 2001-02-13  Alexander Larsson  <alexl@redhat.com>
5413
5414         * gdk/linux-fb/gdkcursor-fb.c (gdk_fb_cursor_unhide):
5415         Don't reference last_cursor if it is null. Fixes crash when rotating
5416         the screen before having moved the mouse.
5417
5418         * gdk/linux-fb/gdkcc-fb.c: Zapp!
5419
5420         * gdk/linux-fb/Makefile.am: Don't compile gdkcc-fb.c
5421
5422         * gdk/linux-fb/gdkwindow-fb.c: Fix typo. width->height. Fixes redraw 
5423         when using 90 or 270 degrees rotation.
5424
5425 2001-02-12  Havoc Pennington  <hp@pobox.com>
5426
5427         * gdk/gdkpango.c (gdk_pango_get_gc): fix bug where 
5428         it always set the foreground, even if we were only using
5429         a stipple.
5430         (gdk_draw_layout_line_with_colors): new function, allow
5431         override colors
5432         (gdk_draw_layout_with_colors): new function, allow override
5433         colors
5434         (gdk_pango_layout_line_get_clip_region): function to get the clip
5435         region for a logical text range
5436         (gdk_pango_layout_get_clip_region): get the clip region for a
5437         logical text range
5438
5439         * gdk/x11/gdkcolor-x11.c: forward declare gdk_colormap_sync(),
5440         (gdk_colormap_new): fix call to gdk_colormap_sync() so it has 
5441         the right number of arguments.
5442
5443         * gtk/gtktextbtree.c (gtk_text_btree_node_check_consistency):
5444         enhance the function to check that node data corresponds to a 
5445         view still belonging to the tree.
5446
5447         * gtk/gtktreeview.c (gtk_tree_view_changed): we were leaking the 
5448         GtkTreePath
5449         (gtk_tree_view_inserted): ditto
5450         (gtk_tree_view_child_toggled): ditto
5451
5452         * gtk/gtktreemodel.c (gtk_tree_path_append_index): use realloc to
5453         simplify this code.
5454
5455         * gtk/gtkcellrenderertext.c (get_layout): fix leak of 
5456         a PangoAttrList
5457
5458         * demos/gtk-demo/main.c (load_file): Fix leak of a GString
5459
5460         * gtk/gtkentry.c (gtk_entry_realize): Fix leak of a GdkCursor
5461
5462         * gtk/gtkmenubar.c (gtk_menu_bar_size_request): consider toggle
5463         size in the size request 
5464         (gtk_menu_bar_size_allocate): consider toggle size here
5465
5466         * gtk/gtkimagemenuitem.h, gtkimagemenuitem.c: Menu item
5467         that displays a widget in the toggle slot
5468
5469         * gtk/testgtk.c: test GtkImageMenuItem
5470
5471         * gtk/Makefile.am, gtk/gtk.h: Add GtkImageMenuItem
5472         
5473         * gtk/gtkmenuitem.h: Use "gint" not "guint16" for toggle size
5474         request and allocation
5475
5476         * gtk/gtkmenu.c (gtk_menu_size_request): use gint not guint16
5477
5478         * gtk/gtkcheckmenuitem.c
5479         (gtk_check_menu_item_toggle_size_request): ditto
5480         
5481 Mon Feb 12 23:43:30 2001  Owen Taylor  <otaylor@redhat.com>
5482
5483         * gtk/Makefile.am (gdk_headers): Remove gdkcc.h 
5484         reference.
5485
5486         * configure.in gtk/gtkmain.c: Add checks for setuid/setgid,
5487         and refuse to initialize GTK+ if they fail.
5488
5489 Mon Feb 12 15:02:07 2001  Owen Taylor  <otaylor@redhat.com>
5490
5491         * configure.in: Add check for gtk-doc version.
5492
5493 Thu Feb  8 17:18:26 2001  Owen Taylor  <otaylor@redhat.com>
5494
5495         * gtk/gtklabel.c (gtk_label_size_request): Fix bug
5496         where the xpad/ypad was only being used on one side!
5497
5498 2001-02-11  Tor Lillqvist  <tml@iki.fi>
5499
5500         * gdk/win32/gdkcolor-win32.c (gdk_colormap_query_color): New
5501         function, copied from X11 version.
5502
5503         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Eliminate
5504         DestroyCursor failures. The reason for the problem (despite the
5505         inconsistent messages from GetLastError()) was that
5506         DestroyCursor() cannot be called while a cursor is set in a
5507         window. Set the new cursor first and then destroy the old one.
5508         Thanks to jpe@archaeopteryx.com.
5509
5510         * gdk/win32/gdkcc-win32.c: Remove.
5511
5512         * gdk/win32/Makefile.am: Remove from here, too.
5513         
5514         * gdk/gdk.def
5515         * gdk/makefile.mingw.in: Update. Godbye GdkColorContext.
5516
5517         * gtk/gtk.def
5518         * gtk/makefile.mingw.in: Updates.
5519
5520 2001-02-08  Havoc Pennington  <hp@redhat.com>
5521
5522         * gtk/gtkbin.c (gtk_bin_add): better error message if you try to
5523         add a widget to a bin that already has a child.
5524
5525         * gdk/gdkcc.h, gdk/gdkcc-x11.c: Remove GdkColorContext, #50512
5526
5527         * docs/Changes-2.0.txt: note that GdkColorContext is gone.
5528         
5529         * gdk/x11/Makefile.am (libgdk_x11_la_SOURCES): remove gdkcc-x11.c
5530
5531         * gdk/gdk.h: remove gdkcc.h
5532
5533         * gdk/Makefile.am (gdk_public_h_sources): remove gdkcc.h
5534
5535         * gtk/gtkpixmap.c (build_insensitive_pixmap): rewrite using
5536         GdkPixbuf, since the previous implementation was GdkColorContext
5537         dependent.
5538
5539         * gtk/testgtk.c (create_pixmap): add test for insensitive GtkPixmap
5540         
5541 Thu Feb  8 19:00:00 2001  Jonathan Blandford  <jrb@redhat.com>
5542
5543         * gtk/gtktreeview.c (TREE_VIEW_VERTICAL_SEPARATOR): moved back to
5544         a sane value!
5545
5546 2001-02-08  Havoc Pennington  <hp@redhat.com>
5547
5548         * gtk/gtkstyle.c (get_darkened_gc): let's darken colors, not
5549         lighten them.
5550
5551 2001-02-08  Havoc Pennington  <hp@redhat.com>
5552
5553         * gtk/gtktextview.c (gtk_text_view_destroy_layout): remove
5554         validation idle
5555
5556         * demos/gtk-demo/main.c (create_tree): adjust to changes in text
5557         cell renderer
5558
5559         * demos/pixbuf-demo.c (timeout): remove deprecated
5560         gtk_widget_draw
5561
5562         * demos/testpixbuf-save.c (main): remove deprecated
5563         gtk_drawing_area_size
5564
5565         * gtk/gtktreeview.c (gtk_tree_view_size_allocate): allocate
5566         buttons even if the model isn't setup. gtk_tree_view_check_dirty()
5567         at the start of the allocation.
5568         (gtk_tree_view_check_dirty): handle column->button == NULL, handle
5569         unsetup or NULL model.
5570
5571         * gtk/gtkstyle.c (gtk_default_draw_flat_box): drawing for the 
5572         even/odd/sorted cells in the tree view.
5573
5574         * gtk/gtktreeselection.c (gtk_tree_selection_real_unselect_all):
5575         bugfixes
5576
5577         * gtk/gtktreeview.c: assorted bugfixy stuff. Draw the row
5578         backgrounds with draw_flat_box using different detail for even/odd
5579         rows.
5580
5581         * gtk/gtkrbtree.c, gtkrbtree.h: Keep track of the parity of each
5582         row, so we can draw the alternating colors thing
5583
5584         * gtk/gtktexttag.c (gtk_text_tag_set_property): if we change a
5585         property from a synonym property, notify for the synonym.
5586         Also, nuke the background_gdk_set and foreground_gdk_set synonyms
5587         (gtk_text_tag_get_property): Always return the font, even if
5588         all its fields aren't set
5589
5590         * gtk/gtkcellrenderertext.h (struct _GtkCellRendererText): don't
5591         store the attr list; it leaves us with no way to change attributes
5592         in _render according to the render flags, and no way to implement
5593         get_property. Instead store all the specific text attributes. 
5594         Separate whether an attribute is enabled from its value. Sync all
5595         properties with GtkTextTag, make them all consistent, etc.
5596
5597         * gtk/gtkcellrenderer.h: Add a flag GTK_CELL_RENDERER_SORTED so
5598         renderers can highlight the sort row/column     
5599
5600         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_get_property): use
5601         accessor functions to get values; this has the side effect of
5602         showing up which accessor functions were missing. Added those.
5603
5604         * gtk/gtktreeviewcolumn.h: Replace set_justification with
5605         set_alignment, to be consistent with GtkLabel, GtkMisc
5606
5607         * gtk/gtktreeviewcolumn.c: Added code to display sort indicator
5608         arrow.
5609
5610         * gtk/Makefile.am (gtk_public_h_sources): add gtktreesortable.h
5611
5612         * gtk/gtktreesortable.h: updates in here
5613
5614 2001-02-07  Sven Neumann  <sven@convergence.de>
5615
5616         * gtk/gtkentry.c (gtk_entry_draw_text): convert area_height to 
5617         pango dimensions after painting the background. We used to draw
5618         gigantic flat boxes here.
5619
5620 Mon Feb  5 22:05:57 2001  Owen Taylor  <otaylor@redhat.com>
5621
5622         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Fix syntax
5623         error introduced with earlier commit) (pointed out by
5624         Ollie Lho)
5625
5626 Mon Feb  5 12:25:06 2001  Owen Taylor  <otaylor@redhat.com>
5627
5628         * gtk/gtkbutton.c: Remove calls to gtk_grab_add/gtk_grab_remove,
5629         which are no longer necessary.
5630
5631 Mon Feb  5 13:22:54 GMT 2001  Tony Gale <gale@gtk.org>
5632
5633         * docs/faq/gtk-faq.sgml: s/MISK/MISC/
5634
5635 2001-02-04  Tor Lillqvist  <tml@iki.fi>
5636
5637         * gdk/gdk.def
5638         * gdk/win32/gdkim-win32.c (gdk_ic_attr_new, gdk_ic_attr_destroy):
5639         Provide dummy implementations.
5640
5641 Sun Feb  4 07:55:17 2001  Tim Janik  <timj@gtk.org>
5642
5643         * gtk/gtksignal.h: removed gtk_signal_init() compat define.
5644
5645         * gtk/gtktypeutils.[hc]: gtk_tpye_init() take an additional argument
5646         GTypeDebugFlags debug_flags and pass it on to g_type_init ();
5647         deprecated this function.
5648
5649         * gdk/gdk.c (gdk_init_check): call g_type_init () with 0 as
5650         argument.
5651
5652 Sun Feb  4 07:45:45 2001  Tim Janik  <timj@gtk.org>
5653
5654         * gtk/gtkdebug.h: nuke GTK_DEBUG_OBJECTS and GTK_DEBUG_SIGNALS.
5655
5656 2001-02-03  Havoc Pennington  <hp@pobox.com>
5657
5658         * gtk/gtktextbtree.c (_gtk_text_btree_tag): Fix bug reported by
5659         Mikael Hermansson with patch from Mikael (if there was a toggle
5660         start one after the first character in the range, this function
5661         was broken). Bug #50380
5662
5663 Sat Feb  3 11:28:03 2001  Owen Taylor  <otaylor@redhat.com>
5664
5665         * configure.in: Remove confusing comment about X11.
5666
5667 Fri Feb  2 19:21:23 2001  Owen Taylor  <otaylor@redhat.com>
5668
5669         * gdk/gdkwindow.c (gdk_propagate_shapes): Surround additional
5670         regions with HAVE_SHAPE_EXT. (#50511, Eric Ding)
5671         
5672 Fri Feb  2 18:31:54 2001  Owen Taylor  <otaylor@redhat.com>
5673
5674         * gdk/x11/gdkimage-x11.c: Remove definition of _XOPEN_SOURCE, since
5675         it breaks things on BSD. If you want to compile GTK+ with
5676         -ansi -pedantic, you should supply CPP_FLAGS=_XOPEN_SOURCE 
5677         when configuring, since GTK+ simply can't be "pure ANSI" 
5678         in the header files it uses. (#8170, Greg Hudson)
5679
5680 2001-02-02  Havoc Pennington  <hp@redhat.com>
5681
5682         * gtk/gtkwindow.c: docs
5683
5684         * gtk/gtkwidget.c: docs
5685         (gtk_widget_set_colormap): add a reference to the colormap
5686         (gtk_widget_get_default_colormap): add a reference to the colormap
5687
5688         * gtk/gtktextbtree.c (gtk_text_mark_set_visible): docs
5689
5690         * gtk/gtktextiter.c: docs
5691
5692         * gtk/gtkmain.c (gtk_propagate_event): docs
5693
5694         * gtk/gtkpaned.c (gtk_paned_get_position): docs
5695         (gtk_paned_set_position): docs
5696
5697         * gtk/gtktreesortable.h (struct _GtkTreeSortableIface): Initial
5698         sort interface, no implementation yet.
5699
5700         * demos/testpixbuf.c (new_testrgb_window): replace
5701         gtk_drawing_area_size() with gtk_widget_set_usize()
5702
5703         * demos/testpixbuf-drawable.c (main): ditto
5704         
5705         * gtk/testgtk.c: remove use of GtkStatusbarMsg
5706
5707         * gtk/gtktextbuffer.c: docs
5708
5709         * gtk/gtkstock.c: docs
5710
5711         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_set_shadow_type): docs
5712
5713         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): docs
5714
5715         * gtk/gtklabel.c (gtk_label_set_markup_with_accel): fix docs
5716         
5717         * gtk/gtkimage.c: add some docs in here
5718         (gtk_image_size_request): change name of
5719         gtk_widget_render_stock_icon
5720         (gtk_image_get_icon_set): don't dup returned string
5721         (gtk_image_get_icon_set): don't dup returned string
5722
5723         * gtk/gtkwidget.c (gtk_widget_render_icon): rename from 
5724         gtk_widget_render_stock_icon(), more consistent with gtkstyle.h
5725         and gtkiconfactory.h functions
5726
5727         * gtk/gtkiconfactory.c: add some docs in here
5728
5729         * gtk/gtkmain.c (gtk_get_default_language): document
5730         (gtk_get_current_event): document
5731         (gtk_get_current_event_state): document
5732         (gtk_get_event_widget): document
5733
5734         * gtk/gtkentry.c (gtk_entry_set_invisible_char): document
5735
5736         * gtk/gtkcontainer.c: Add some documentation
5737         (gtk_container_add): give a more explanatory warning on adding an
5738         already-parented widget, this is kind of a FAQ and also a common
5739         typo that's easier to debug with a nice warning 
5740
5741         * gtk/gtkcellrenderertoggle.c
5742         (gtk_cell_renderer_toggle_get_active): remove, I was on crack
5743         adding this, it's useless
5744         (gtk_cell_renderer_toggle_set_active): remove
5745         (gtk_cell_renderer_toggle_get_radio): add
5746
5747         * gtk/gtkcellrenderer.c (gtk_cell_renderer_get_size): don't allow
5748         the NULL cell renderer, that doesn't make any sense to me. 
5749
5750         * demos/gtk-demo/Makefile.am (INCLUDES): -DGTK_DISABLE_DEPRECATED,
5751         demo code should never use deprecated features.
5752
5753         * demos/Makefile.am (INCLUDES): -DGTK_DISABLE_DEPRECATED, demo
5754         code should never use deprecated features.
5755
5756         * gtk/gtkwidget.h: Mark gtk_widget_draw, gtk_widget_queue_clear,
5757         gtk_widget_queue_clear_area deprecated
5758
5759         * gtk/gtklayout.h: mark gtk_layout_freeze/gtk_layout_thaw
5760         deprecated
5761
5762         * gtk/gtklabel.h: mark gtk_label_get() deprecated
5763
5764         * gtk/gtkimage.h: mark the legacy GtkImage functions that took 
5765         a GdkImage deprecated, replaced by new consistently-named
5766         functions       
5767
5768         * gtk/gtkmain.h: Mark gtk_exit() deprecated
5769
5770         * gtk/gtkdrawingarea.h: mark gtk_drawing_area_size deprecated
5771
5772         * gtk/gtkstyle.h: mark gtk_draw_string, gtk_paint_string 
5773         deprecated
5774
5775         * gtk/gtkstatusbar.h: Move GtkStatusbarMsg to the .c file, 
5776         so it won't appear in docs and confuse people.
5777
5778         * gtk/gtkprogressbar.h: Mark all the old methods deprecated
5779
5780         * gtk/gtkprogress.h: Mark all methods deprecated, mark the cast
5781         macros deprecated. (can't mark the type itself deprecated, since
5782         GtkProgressBar is not deprecated and we need the type decl to use
5783         GtkProgressBar)
5784
5785         * gtk/gtkpixmap.h: Mark deprecated
5786
5787         * gtk/gtkoldeditable.h: Mark deprecated
5788
5789         * gtk/gtklist.h: Mark deprecated
5790
5791         * gtk/gtklabel.h: delete "GtkLabelWord" typedef, not used 
5792         for anything anymore.
5793
5794         * gtk/gtkctree.h: Mark deprecated
5795
5796         * gtk/gtkclist.h: Mark deprecated
5797
5798         * gtk/gtkpreview.h: Mark deprecated
5799
5800         * gtk/gtkpacker.h: Mark deprecated
5801
5802         * gtk/gtktipsquery.h: Mark deprecated
5803
5804         * gtk/gtkinputdialog.h: Add comment that it will move out of GTK
5805
5806         * gtk/gtkvruler.h: Add comment that it will move out of GTK
5807
5808         * gtk/gtkhruler.h: Add comment that it will move out of GTK
5809
5810         * gtk/gtkruler.h: Add comment that it will move out of GTK
5811
5812         * gtk/gtkgamma.h: Add comment that it will move out of GTK
5813
5814         * gtk/gtkcurve.h: Add comment that it will move out of GTK
5815
5816 Fri Feb  2 17:16:09 2001  Owen Taylor  <otaylor@redhat.com>
5817
5818         * gdk/x11/gdkcolor-x11.c (gdk_colormap_sync): Make
5819         gdk_colormap_sync private since it was never exported
5820         in a header file.
5821
5822         * gdk/x11/gdkcolor-x11.c (gdk_colormap_new): Fill in
5823         colormap->colors[] for StaticGray, StaticColor colormaps.
5824
5825         * gdk/gdkpixbuf-drawable.c: Fix problems where image->bpp
5826         was being used as if it was image->bits_per_pixel.
5827
5828         * gdk/gdkimage.h, gdk/x11/gdkimage-x11.c: Save the bits-per-pixel
5829         for the image in the GdkImage structure since it isn't
5830         reconstructable, and we need it to handle packed types
5831
5832         * gdk/win32/gdkimage-win32.c: Set image->bits_per_pixel. (I'm making
5833         the assumption that on Win32 image->bits_per_pixel == image->depth,
5834         always.
5835
5836         * gdk/linux-fb/gdkimage-fb.c: Set image->bits_per_pixel.
5837
5838         * gdk/gdkrgb.c (gdk_rgb_select_conv): Exit with an informative
5839         warning message if no converter can be found. 
5840
5841 Fri Feb  2 15:09:51 2001  Owen Taylor  <otaylor@redhat.com>
5842
5843         * gtk/fnmatch.c (FOLD): Fix problem with passing signed
5844         chars to isupper() / tolower(). (#567)
5845
5846         * examples/packer/pack.c: Add GINT_TO_POINTER, GPOINTER_TO_INT
5847         to clear up 64-bit warnings. (#567)
5848
5849 Fri Feb  2 12:26:50 2001  Owen Taylor  <otaylor@redhat.com>
5850
5851         * gtk/gtkrc.c (gtk_rc_add_initial_default_files): Get rid of
5852         a bunch of g_strdup_printf("%s%s") in favor of g_strconcat().
5853
5854         * gtk/gtkrc.c Makefile.am: Use $(libdir), not $(exe_prefix),
5855         since some people set $(libdir) separately. (#1290, David Kaelbling)
5856
5857 Thu Feb  1 18:25:46 2001  Owen Taylor  <otaylor@redhat.com>
5858
5859         * gtk/gtkfilesel.c: If PATH_MAX and MAXPATHLEN are not
5860         defined, define MAXPATHLEN to 2048. (The Hurd doesn't have
5861         MAXPATHLEN, but the code here depends on a fixed value.)
5862         (#4524)
5863
5864 Wed Jan 31 22:01:04 2001  Owen Taylor  <otaylor@redhat.com>
5865
5866         * gtk/gtkhandlebox.c (gtk_handle_box_button_changed): Handle the case
5867         where child == NULL and handle_position == RIGHT or BOTTOM. (#8041g)
5868
5869 Wed Jan 31 21:20:39 2001  Owen Taylor  <otaylor@redhat.com>
5870
5871         * gtk/gtkctree.c (real_tree_move): If the node being moved isn't
5872         viewable there is no way that moving the node will cause the 
5873         focus row to become not viewable, so omit check on the visibility
5874         of new_sibling, which is irrelevant. (Fixes #8002, David Helder)
5875
5876 Wed Jan 31 20:38:17 2001  Owen Taylor  <otaylor@redhat.com>
5877
5878         * gtk/gtkentry.c (gtk_entry_commit_cb): Delete the current
5879         selection before inserting new text.
5880
5881 Wed Jan 31 18:49:33 2001  Owen Taylor  <otaylor@redhat.com>
5882
5883         * gtk/gtkoptionmenu.c (gtk_option_menu_item_state_changed_cb):
5884         Make the sensitivity of the reparented child track that of
5885         the original parent menu item. (#34218, David Hodson)
5886
5887         * gtk/gtkoptionmenu.c (gtk_option_menu_item_destroy_cb): Handle
5888         the case where the current item is destroyed properly.
5889
5890         * gtk/gtkoptionmenu.c: Some additional code cleanups and fix
5891         some edge cases with child-less menuitems.
5892         
5893 Wed Jan 31 17:16:13 2001  Owen Taylor  <otaylor@redhat.com>
5894
5895         * gtk/gtkcombo.c (gtk_combo_window_key_press): Make Return
5896         key pop down window. (#12074, Jon K Hellan)
5897
5898 Wed Jan 31 16:21:42 2001  Owen Taylor  <otaylor@redhat.com>
5899
5900         * gtk/gtklist.c (gtk_list_signal_item_toggle): Don't allow
5901         toggling of rows off in BROWSE or EXTENDED mode. (#12072, Jon K Hellan) 
5902         The solution here isn't perfect - you get an extraneous
5903         emission of "toggle", which could conceivably confuse an app,
5904         but better than the current situation. LXR search seems to
5905         indicate that no apps in GNOME CVS connect to "toggle".
5906
5907 Wed Jan 31 15:46:13 2001  Owen Taylor  <otaylor@redhat.com>
5908
5909         * gtk/Makefile.am (libgtkinclude_HEADERS): Move gtkcompat.h from
5910         gtk_public_h_sources to directly here to avoid warning when
5911         building srcdir != builddir. (#9656)
5912
5913 Tue Jan 30 19:49:02 2001  Owen Taylor  <otaylor@redhat.com>
5914
5915         * gtk/gtkrange.c: Patch from Kipp Hickman to make the event
5916         handlers in gtkrange.c return the proper values (TRUE == handled)
5917         (#10316).
5918
5919         This is just the tip of the iceberg, but gtkrange.c is the
5920         most common place where the propagation is problematical,
5921         and also a place where it is almost certainly safe to change
5922         this in the stable branch.
5923
5924         (You don't want right click popups on a range control or anything...)
5925
5926 Tue Jan 30 18:57:59 2001  Owen Taylor  <otaylor@redhat.com>
5927
5928         * gtk/gtktext.c (clear_focus_area): We need to clear the focus
5929         area on focus out, even if a background pixmap isn't set.
5930         (#13941)
5931         
5932 Tue Jan 30 18:24:10 2001  Owen Taylor  <otaylor@redhat.com>
5933
5934         * gtk/gtknotebook.c (gtk_notebook_set_shape): Fix from Sean Cunningham
5935         to deal with setting the shape properly when scrolling arrows are
5936         turned on, but not visible because there is sufficient space.
5937         (#13432)
5938
5939 Tue Jan 30 16:39:25 2001  Owen Taylor  <otaylor@redhat.com>
5940
5941         * gtk/gtkitemfactory.c (gtk_item_factory_delete_item): For menu
5942         items with submenus, destroy the item along with the submenu.
5943         (#7841, Brian Masney(?)) Also, handle paths of the form '<foo>/abcd...' 
5944         properly.
5945
5946         * gtk/testgtk.c (menu_items): Add a dummy branch that we delete
5947         later.
5948
5949 Tue Jan 30 15:51:25 2001  Owen Taylor  <otaylor@redhat.com>
5950
5951         * gtk/gtkwindow.c (gtk_window_real_set_focus): Fix a problem where
5952         the focus widget sometimes wasn't drawn with the default if there
5953         was no default widget.
5954
5955         * gtk/gtkstyle.c (gtk_style_real_unrealize): free colors,
5956         unreference pixmaps. 
5957
5958         * gtk/gtkstyle.c (gtk_style_realize): Reference colormap
5959         for some extra safety.
5960
5961 Mon Jan 29 19:00:01 2001  Owen Taylor  <otaylor@redhat.com>
5962
5963         * gtk/gtk{ctree.c,clist.c} (set_cell_contents): Handle setting
5964         the text of a cell to the old pointer value better, by
5965         copying the new text before freeing the old text. Some code
5966         cleanup. (#8079, Karl Nelson)
5967
5968 Mon Jan 29 16:50:19 2001  Owen Taylor  <otaylor@redhat.com>
5969
5970         * gtk/gtklabel.[ch] gtk/gtkframe.[ch]: Make gtk_label_get_text()
5971         gtk_frame_get_label() non strdup'ing, and G_CONST_RETURN.
5972
5973 Mon Jan 29 15:22:51 2001  Owen Taylor  <otaylor@redhat.com>
5974
5975         * gtk/gtkmenu.c (gtk_menu_remove): When removing an
5976         item from a menu, check to see if it matches 
5977         menu->old_active_menu_item, and if so, unref and clear
5978         old_active_menu_item (Patch from Pavel Cisler)
5979
5980         * gtk/gtkmenushell.c (gtk_menu_shell_remove): Unset 
5981         menu_shell->active_menu_item, if it is the child being
5982         removed. (Patch based on that of Gene Ragan, #50337)
5983
5984 2001-01-31  Alexander Larsson  <alla@lysator.liu.se>
5985
5986         * gdk/linux-fb/gdkselection-fb.c: 
5987         * gdk/linux-fb/gdkcolor-fb.c: 
5988         * gdk/linux-fb/gdkdrawable-fb2.c: 
5989         * gdk/linux-fb/gdkfont-fb.c: 
5990         * gdk/linux-fb/gdkim-fb.c: 
5991         * gdk/linux-fb/gdkinput.c: 
5992         * gdk/linux-fb/gdkkeyboard-fb.c: 
5993         * gdk/linux-fb/gdkmain-fb.c: 
5994         * gdk/linux-fb/gdkrender-fb.c: 
5995         A bunch of whitespace cleanup.
5996         
5997 2001-01-30  Havoc Pennington  <hp@pobox.com>
5998
5999         * gtk/gtktreeitem.h, gtk/gtktree.h, gtk/gtktext.h: bracket in 
6000         #ifdef GTK_ENABLE_BROKEN.
6001
6002         * gtk/gtktreeitem.c, gtk/gtktree.c, gtk/gtktext.c: #define
6003         GTK_ENABLE_BROKEN just before including the broken headers.
6004         
6005         * gtk/gtktypeutils.c: #define GTK_ENABLE_BROKEN, so we can get the
6006         deprecated types registered.
6007
6008         * gtk/testgtk.c, gtk/testselection.c: #define GTK_ENABLE_BROKEN,
6009         we have to test the broken stuff.
6010
6011         * docs/Changes-2.0.txt: explain GTK_ENABLE_BROKEN
6012         
6013 2001-01-30  Havoc Pennington  <hp@redhat.com>
6014
6015         * gtk/gtkliststore.c (gtk_list_store_insert_before): fix bug in
6016         here where prev pointer was set to the wrong thing
6017
6018         * gtk/gtktreemodel.c (gtk_tree_path_is_ancestor): new function
6019         (gtk_tree_path_is_descendant): new function
6020
6021         * gtk/gtkliststore.c (gtk_list_store_iter_n_children): return
6022         cached length
6023         (gtk_list_store_get_iter): don't modify iter if we can't get the
6024         path.
6025
6026         * gtk/gtkliststore.h (struct _GtkListStore): cache the length
6027         
6028         * gtk/gtktreednd.h: add virtual function row_drop_possible() to
6029         GtkTreeDragDest
6030
6031         * gtk/gtktreestore.c (copy_node_data): fix varargs type error that
6032         was causing segfault
6033
6034         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_copy): set next
6035         pointer to NULL
6036
6037         * gtk/gtktreestore.c (gtk_tree_store_append): fix memleak
6038
6039         * gtk/gtkliststore.c (gtk_list_store_iter_next): don't modify iter
6040         on returning FALSE
6041         (gtk_list_store_iter_children): ditto
6042         (gtk_list_store_iter_nth_child): ditto
6043         (gtk_list_store_iter_nth_child): ditto
6044         (gtk_list_store_iter_parent): ditto
6045
6046         * gtk/gtktreestore.c (gtk_tree_store_get_path): g_return_if_fail
6047         on iter->user_data != NULL instead of silently accepting it.
6048         (gtk_tree_store_iter_next): ditto. Also, don't modify iter unless
6049         we are returning TRUE.
6050         (gtk_tree_store_iter_children): ditto
6051         (gtk_tree_store_iter_nth_child): ditto
6052         (gtk_tree_store_iter_parent): ditto
6053         (gtk_tree_store_insert): remove handling of parent->user_data ==
6054         NULL, replace with parent == NULL       
6055
6056         * gtk/gtktreemodel.c (inserted_callback): put some fixes in here,
6057         and a comment explaining things
6058
6059         * gtk/gtktreestore.c: add GtkTreeDragSource/GtkTreeDragDest
6060         interface support to GtkTreeStore.
6061
6062         * gtk/gtktreemodel.c (gtk_tree_path_prev): didn't properly return
6063         FALSE if no prev, fix
6064
6065         * gtk/gtktreeview.c (set_source_row): use a row reference
6066         (set_dest_row): use a row reference
6067
6068 Sat Jan 27 15:52:02 2001  Jonathan Blandford  <jrb@redhat.com>
6069
6070         * gtk/gtktreeselection.c (gtk_tree_selection_unselect_iter): Fix
6071         stupid typo pointed out by Kristian Rietveld <kristian@planet.nl>.
6072         (gtk_tree_selection_select_iter): The same as above.
6073
6074 2001-01-26  Havoc Pennington  <hp@redhat.com>
6075
6076         * gtk/gtktreemodel.c, gtk/gtktreemodel.h: add GtkTreeRowReference
6077         which holds a handle to a specific row (particular set of values
6078         in the model, i.e. pointer-identity row).
6079
6080         * gtk/gtktreeview.c, gtk/gtktreeprivate.h, gtk/gtktreeselection.c:
6081         use GtkTreeRowReference for anchor, cursor, and drag_dest_row.
6082         Still need to use it for the src/dest row saved on the drag context.
6083
6084 2001-01-26  Havoc Pennington  <hp@redhat.com>
6085
6086         * gtk/gtktextlayout.c (convert_color): adapt to handle PangoColor
6087
6088         * gtk/gtktreeview.c (gtk_tree_view_widget_to_tree_coords): fix to
6089         not offset by TREE_VIEW_HEADER_HEIGHT
6090         (gtk_tree_view_tree_to_widget_coords): fix to not offset by
6091         TREE_VIEW_HEADER_HEIGHT
6092
6093         * configure.in (included_loaders): for me, --with-included-loaders
6094         generates the error "the specified loader yes does not exist",
6095         i.e. the arg defaults to "yes", so change test for value ""
6096         to test for value "yes", and include all loaders in that case.
6097
6098         * gtk/gtkrbtree.c (_gtk_rbtree_get_depth): new function
6099
6100         * gtk/gtktreeview.c (gtk_tree_view_get_cell_rect): fix to properly
6101         handle TREE_VIEW_VERTICAL_SEPARATOR
6102         (gtk_tree_view_bin_expose): fix to consider the row offset as
6103         pointing halfway into vertical separator.       
6104         (gtk_tree_view_draw_node_focus_rect): ditto
6105
6106         * gtk/gtkdebug.h, gtk/gtkmain.c (gtk_init_check): Add
6107         --gtk-debug=updates, which causes gdk_window_set_debug_updates
6108         (TRUE) to be called.
6109
6110         * gdk/gdkwindow.c (gdk_window_set_debug_updates): Allow enabling a
6111         debug mode where the invalid region is colored in on invalidate,
6112         so you can see the flicker and know whether your redraw code is 
6113         doing a good job.
6114
6115         * gtk/gtktreeview.c (gtk_tree_view_queue_draw_node): Work in 
6116         tree window coordinates (clip rect is in tree window coords)
6117
6118         * gtk/Makefile.am: add gtktreednd.[hc]
6119
6120         * gtk/gtkliststore.c: implement gtktreednd interfaces.
6121
6122         * gtk/gtktreednd.c, gtk/gtktreednd.h: New interface to support
6123         drag-and-drop data operations on a model (so we can set up tree
6124         drag-and-drop automatically)
6125
6126         * gtk/testgtk.c: Add a window to change sensitivity in the
6127         GtkLabel test; add a way to change the entry frame in GtkEntry
6128         test
6129
6130         * gtk/gtkentry.c (gtk_entry_set_has_frame): 
6131         (gtk_entry_get_has_frame): new functions to remove the frame
6132         around an entry
6133         (gtk_entry_size_request): shrink requisition if no frame
6134         (gtk_entry_draw_focus): don't draw frame if no frame
6135
6136         * gtk/gtkstyle.c (gtk_default_draw_check): draw custom look for
6137         checks inside a cell renderer
6138         (gtk_default_draw_option): ditto for options
6139
6140         * gtk/gtktreeviewcolumn.c (update_button_contents): add/remove
6141         children from the alignment, not the button
6142         (gtk_tree_view_column_init): ref/sink the column, to emulate
6143         GObject refcounting.
6144
6145         * gtk/gtkcellrenderer.c (gtk_cell_renderer_init): ref/sink
6146         
6147         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
6148         Use theme functions to draw the toggles 
6149
6150         * gdk/gdkpango.c (gdk_pango_get_gc): use GdkRGB to alloc colors
6151
6152         * gdk/gdkpango.h, gdk/gdkpango.c: Add GdkPangoAttrStipple and
6153         GdkPangoAttrEmbossed to use in rendering insensitive text
6154
6155         * gdk/gdkpango.c (gdk_draw_layout_line): render new properties
6156
6157         * gtk/gtkstyle.c (gtk_default_draw_layout): handle sensitivity
6158         using new GDK features
6159         
6160 2001-01-24  Alexander Larsson  <alexl@redhat.com>
6161
6162         * gtk/gtkimage.c:
6163         Splitted gtk_image_clear into gtk_image_clear() and
6164         gtk_image_reset(). Call gtk_image_clear() in ::destroy
6165         to avoid leaks.
6166
6167         * gtk/gtklabel.c (set_markup):
6168         Don't leak text.
6169
6170         * gtk/gtktextlayout.c:
6171         Always free display->shaped_objects.
6172
6173         * gtk/testgtk.c (create_clist):
6174         Don't leak custom style.
6175
6176 2001-01-23  Alexander Larsson  <alexl@redhat.com>
6177
6178         * gtk/gtkcolorsel.c (grab_color_at_mouse):
6179         Don't leak image. Simplify using gdk_colormap_query_color().
6180         (gtk_color_selection_init): Don't leak dropper_pixmap and mask.
6181
6182         * linux-fb/gdkcolor-fb.c:
6183         Implemented gdk_colormap_query_color.
6184
6185 2001-01-23  Alexander Larsson  <alexl@redhat.com>
6186
6187         * linux-fb/gdkcursor-fb.c:
6188         Don't leak built-in cursors.
6189
6190         * linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_polygon):
6191         Don't leak tmp_points.
6192
6193         * linux-fb/gdkfont-fb.c (gdk_font_from_description):
6194         Don't modify desc. Don't leak font if the PangoFont
6195         isn't found.
6196         
6197         * linux-fb/gdkgc-fb.c (gdk_fb_gc_finalize):
6198         Free dash_list.
6199
6200         * linux-fb/gdkkeyboard-fb.c (gdk_fb_handle_key):
6201         Don't leak string.
6202         
6203 2001-01-20  Havoc Pennington  <hp@pobox.com>
6204
6205         * gtk/gtktexttag.h (enum GtkWrapMode): rename member fields
6206         from GTK_WRAPMODE_WORD to GTK_WRAP_WORD, etc., seems nicer to 
6207         me, matches Pango
6208
6209 2001-01-22  Havoc Pennington  <hp@redhat.com>
6210
6211         * demos/testanimation.c: fix to reflect gdk-pixbuf changes
6212
6213         * demos/testpixbuf.c: fix to reflect gdk-pixbuf changes
6214
6215         * gtk/gdk-pixbuf-loader.c, gtk/gdk-pixbuf-loader.h: 
6216         Remove, move back to gdk-pixbuf
6217
6218         * gtk/gtktextiter.c, gtk/gtktextiter.h: add sentence equivalents
6219         to all the word functions
6220
6221         * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): return
6222         before doing anything on NULL layout or if we don't have the focus
6223
6224         * gtk/testtext.c (fill_example_buffer): "justification"
6225
6226         * gtk/gtktexttag.h, gtk/gtktexttag.c: change the tag attribute
6227         to be called "justification" not "justify"
6228
6229         * demos/gtk-demo/textview.c (create_tags): "justification"
6230         
6231         * gtk/gtktextlayout.c (set_para_values): Handle char-wise wrapping
6232
6233 2001-01-22  Alexander Larsson  <alexl@redhat.com>
6234
6235         * gdk/gdkwindow.c (gdk_window_invalidate_region):
6236         Don't leak visible_region. Use visible_region instead of region.
6237         
6238         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
6239         Don't do extra gdk_drawable_ref(). This is not X.
6240         (gdk_fb_window_find_focus, gdk_fb_change_focus): make sure
6241         gdk_fb_focused_window is ref:ed.
6242         (gdk_fb_window_send_crossing_events): Watch out for destroyed
6243         windows.
6244
6245 2001-01-22  Alexander Larsson  <alexl@redhat.com>
6246
6247         * gtk/gtkwindow-decorate.c (gtk_decorated_window_realize):
6248         Don't leak the PangoFontDescriptor.
6249
6250 Sun Jan 21 09:58:00 2001  Jonathan Blandford  <jrb@redhat.com>
6251
6252         * gtk/gtktreeview.c (gtk_tree_view_scroll_to_point): Make fail
6253         when not realized.
6254         (gtk_tree_view_scroll_to_cell): Make work when not realized.
6255         (gtk_tree_view_realize): add scroll_to support
6256         (gtk_tree_view_finalize): add a finalize method.  Populate.
6257         (gtk_tree_view_insert_column): ref and sink the column.
6258         (gtk_tree_view_append_column): ref and sink the column.
6259         (gtk_tree_view_queue_draw_node): New function to handle redrawing
6260         individual nodes.  Should make the code much more efficient, if
6261         actually used.
6262
6263 2001-01-19  Havoc Pennington  <hp@redhat.com>
6264
6265         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
6266         byte_offset variable was being used to mean both "offset into
6267         layout" and "offset into buffer line" which was no longer true
6268         with addition of preedit string; fix
6269
6270 2001-01-19  Havoc Pennington  <hp@redhat.com>
6271
6272         * demos/gtk-demo/main.c (button_press_event_cb): sync to tree changes
6273
6274         * gtk/gtkrbtree.c (_gtk_rbtree_node_find_offset): fix this
6275         function
6276
6277         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_widget):
6278         implement
6279
6280         * gtk/gtktreeview.c (gtk_tree_view_move_to): rename
6281         scroll_to_cell, matches TextView scroll functions better
6282         (gtk_tree_view_tree_to_widget_coords): new function
6283         (gtk_tree_view_widget_to_tree_coords): new function
6284         (gtk_tree_view_get_visible_rect): new function
6285         (gtk_tree_view_get_path_at_pos): accept negative coordinates
6286         (gtk_tree_view_draw_node_focus_rect): new function moved from
6287         draw_focus, also, use width of bin_window as width of the focus
6288         rect
6289         (gtk_tree_view_expand_row): fix bug where it didn't recognize
6290         already-expanded rows
6291         (gtk_tree_view_get_cell_rect): new function
6292         (gtk_tree_view_get_path_at_pos): return the click position
6293         relative to the passed-in cell
6294         (gtk_tree_view_set_expander_column): new function
6295
6296         * configure.in: remove gtk-config-2.0 chmod
6297
6298         * gtk/gtktextview.c (gtk_text_view_drag_motion): small cleanups,
6299         and properly handle drags with targets we don't understand
6300         (gtk_text_view_drag_end): don't stop scrolling, the source isn't
6301         scrolling anyway
6302         (gtk_text_view_drag_drop): stop scrolling here though, and set the
6303         mark invisible
6304
6305         * gtk/gtkdnd.c (gtk_drag_dest_find_target): export as a public
6306         function
6307         (gtk_drag_dest_get_target_list): new function
6308         (gtk_drag_dest_set_target_list): new function
6309         
6310         * gtk/gtktreeview.c: Add a bunch of drag-and-drop implementation
6311
6312         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): add fields
6313         related to drag-and-drop
6314
6315 2001-01-19  Alexander Larsson  <alexl@redhat.com>
6316
6317         * gdk/linux-fb/gdkprivate-fb.h:
6318         Define EMULATE_GDKFONT.
6319         Add extra pango_font stuff to GfkFontPrivate.
6320         
6321         * gdk/linux-fb/gdkdrawable-fb2.c:
6322         * gdk/linux-fb/gdkfont-fb.c:
6323         If EMULATE_GDKFONT defined, implement a slow lame GdkFont
6324         emulation using PangoFont.
6325
6326 2001-01-17  Havoc Pennington  <hp@pobox.com>
6327
6328         * gtk/gtkprogressbar.c, gtk/gtkprogressbar.h: Add "getters" for
6329         all the non-deprecated set_foo functions. Added missing object
6330         properties, and added g_object_notify() to setters. 
6331         Wrote docs.
6332         
6333 2001-01-18  Tor Lillqvist  <tml@iki.fi>
6334
6335         * gtk/gtkmain.c
6336         * gtk/gtkrc.c: (Win32) Use the new
6337         g_win32_get_package_installation_(sub)directory() functions.
6338
6339         * config.h.win32.in: New file.
6340         
6341         * config.h.win32: Removed.
6342
6343         * configure.in: Output config.h.win32.
6344
6345         * Makefile.am: Add it to EXTRA_DIST.
6346
6347         * gtk/gtk.def: Update.
6348
6349 Wed Jan 17 16:22:54 2001  Owen Taylor  <otaylor@redhat.com>
6350
6351         * gtk/gtklabel.c (gtk_label_size_request): Set the
6352         attributes onto the PangoLayout even if they are newly
6353         created from label->pattern.
6354
6355 Tue Jan  9 11:20:48 2001  Owen Taylor  <otaylor@redhat.com>
6356
6357         * gdk/x11/gdkdnd-x11.c: Remove unused variable.
6358
6359         * gtk/gtkdnd.c: Encapsulate storing and retrieving info
6360         structures in functions. Fixes bug where gtk_dataset_*
6361         was accidentally still being used in one place, causing
6362         every dest side event to be treated independently.
6363
6364         * gtk/gtkdnd.c: Remove last vestages of handling
6365         ::draw (fixes warning)
6366         
6367         * gtk/gtkentry.[ch]: Add drag and drop support.
6368
6369         * gtk/gtkdnd.[ch] gtk/gtktextview.c gtk/gtkentry.c: Add
6370         new function gtk_check_drag_threshhold() for checking
6371         to check if (dx,dy) has exceeded the threshhold for starting
6372         a drag and use it everywhere.
6373
6374 Mon Jan  8 11:58:05 2001  Owen Taylor  <otaylor@redhat.com>
6375
6376         * gtk+-2.0.pc.in gdk-pixbuf-2.0.pc.in (Cflags): Remove -I${includedir},
6377         add -I{includedir}/gtk-2.0.
6378
6379         * gtk/gtktreeview.[ch] gtktreemodelsort.[ch] gtknotebook.c
6380         gdk/gdk-pixbuf.h: Doc fixups.
6381         
6382         * gtk/gtkobject.h: Remove trailing , from enum
6383
6384 2001-01-17 Alexander Larsson <alexl@redhat.com> 
6385
6386         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_shadow_fb_draw_arc):
6387         Doh! Mixed up x and y.
6388
6389         * gdk/linux-fb/gdkglobals-fb.c:
6390         Removed gdk_fb_pointer_grab_window_events,
6391         added _gdk_fb_pointer_grab_owner_events and
6392         _gdk_fb_keyboard_grab_owner_events.
6393
6394         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab):
6395         Set all button mask if GDK_BUTTON_MOTION_MASK set. Send
6396         crossing events before grabbing. Set _gdk_fb_pointer_grab_owner_events.
6397         (gdk_fb_pointer_ungrab): Unset _gdk_fb_pointer_grab_owner_events
6398         Send crossing events after ungrab finished.
6399         (gdk_keyboard_grab): Set ..._owner_events
6400         (type_masks): Move out of function.
6401         (gdk_fb_other_event_window, gdk_fb_pointer_event_window,
6402         gdk_fb_keyboard_event_window): New functions, return the
6403         window an event should be targeted at. Handles grabs and
6404         event propagation. Can return NULL.
6405         (gdk_event_make): Remove event_mask checking. Now always
6406         returns an event.
6407                 
6408         * gdk/linux-fb/gdkkeyboard-fb.c:
6409         * gdk/linux-fb/gdkproperty-fb.c:
6410         * gdk/linux-fb/gdkselection-fb.c:
6411         Use new event_window/gdk_event_make() behaviour.
6412         
6413         * gdk/linux-fb/gdkmouse-fb.c:
6414         Use new event_window/gdk_event_make() behaviour.
6415         Only send motion events if in the same window.
6416         If grabbed, use cursor from window if sibling of grabbed
6417         window, and cursor from grabbed window otherwise.
6418
6419         * gdk/linux-fb/gdkprivate-fb.h:
6420         Update gdk_fb_window_send_crossing_events, gdk_event_make
6421         and grab varaible declarations. Add gdk_fb_*_event_window().
6422
6423         * gdk/linux-fb/gdkwindow-fb.c:
6424         Use new event_window/gdk_event_make() behaviour.
6425         Keep correct track of focus window.
6426         (gdk_window_set_events): Set all specific button motion masks
6427         if GDK_BUTTON_MOTION_MASK set.
6428
6429         * gtk/gtkdnd.c (gtk_drag_update):
6430         Free info->last_event if gdk_drag_motion returned FALSE.
6431
6432 2001-01-16  Tor Lillqvist  <tml@iki.fi>
6433
6434         * gdk/win32/gdkwindow-win32.c (gdk_window_show, gdk_window_hide):
6435         Eliminate redraws when input-only windows are shown or
6436         hidden. Thanks to jpe@archaeopteryx.com.
6437
6438 Tue Jan 16 13:13:13 GMT 2001  Tony Gale <gale@gtk.org>
6439
6440         * docs/faq/gtk-faq.sgml: FAQ update:
6441           - Update to bugzilla
6442           - Add GTK+ and security/SUID/SGID
6443           - Add DnD question
6444
6445 2001-01-16  Alexander Larsson  <alla@lysator.liu.se>
6446
6447         * gdk/linux-fb/gdkdnd-fb.c:
6448         Some cleanups.
6449         
6450 2001-01-15  Havoc Pennington  <hp@pobox.com>
6451
6452         * tests/testtreeview.c: add test stuff for CellRendererToggle
6453
6454         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_get_model): add this
6455         accessor
6456
6457         * gtk/gtkcellrenderertoggle.c: distinguish different event types,
6458         only toggle on button press (would do release like GtkButton, but
6459         we'd need implicit grab code for treeview cells)
6460
6461 2001-01-16  Tor Lillqvist  <tml@iki.fi>
6462
6463         * gdk/win32/gdkvisual-win32.c: Include <stdlib.h> for getenv().
6464
6465         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Don't use
6466         GDK_COLORMAP_PRIVATE_DATA on a potentially NULL GdkColormap.
6467
6468         * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Adapt calls
6469         to g_{locale,filename}_{to,from}_utf8 to match current API.
6470
6471         * gtk/makefile.msc.in (gtk_OBJECTS)
6472         * gtk/makefile.mingw.in (gtk_OBJECTS): Add gtkwindow-decorate.
6473
6474         * gtk/gtk.def: Update.
6475
6476 2001-01-15  Tor Lillqvist  <tml@iki.fi>
6477
6478         * gdk/win32/gdkevents-win32.c (synthesize_crossing_events): New
6479         implementaion that more closely mimics the events that an X server
6480         would generate. Especially, properly generate GDK_NOTIFY_VIRTUAL and
6481         GDK_NOTIFY_NONLINEAR_VIRTUAL crossing events. This makes buttons
6482         with nested preview widgets, for instance, more responsive when
6483         you move the mouse quickly into them.
6484         (find_window_for_pointer_event): Make it actually compile.
6485         (gdk_event_translate): Set send_event to the value of
6486         InSendMessage (). This doesn't really mean the same as X11's
6487         send_event flag, but is close enough, says jpe@archaeopteryx.com
6488
6489 2001-01-15  Alexander Larsson  <alexl@redhat.com>
6490
6491         * gdk/linux-fb/gdkdnd-fb.c:
6492         Implemented drag and drop.
6493         Seems to be mostly working. I sometimes get an assert from gtkdnd.c:2664
6494         when it tries to free and then copy the same event (info->last_event).
6495         I am not sure about why this happens, but will continue looking.
6496
6497 2001-01-15  Alexander Larsson  <alexl@redhat.com>
6498
6499         * gdk/linux-fb/gdkwindow-fb.c:
6500         Use gdk_window_invalidate_rect instead of
6501         gdk_window_invalidate_rect_clear to minimise flashing.
6502         When hiding windows you need to clear the root window though.
6503
6504 2001-01-15  Alexander Larsson  <alexl@redhat.com>
6505
6506         * gdk/linux-fb/gdkdrawable-fb2.c:
6507         For optization, add an full_shapes argument to gdk_fb_clip_region.
6508         If this is false, only the cliprects of the shapes are used.
6509
6510         * gdk/linux-fb/gdkprivate-fb.h:
6511         Export gdk_fb_window_peek_shape.
6512         Add full_shapes to gdk_fb_clip_region.
6513
6514         * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
6515         When moving a window, don't clear everything under the it, just the
6516         root window. Makes stuff faster and flash less.
6517         (gdk_window_get_pointer): Correctly handle offseted shapes, due to
6518         USE_CHILD_SHAPE. (gdk_fb_window_peek_shape): Return the correct
6519         offset of the shape.
6520         
6521
6522 2001-01-12  Havoc Pennington  <hp@redhat.com>
6523
6524         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): offset the 
6525         current invalid region, fixes redraw bug while scrolling the 
6526         text widget
6527
6528         * gtk/gtktextview.c, gtk/gtktextview.h:
6529         Rearrange the scrolling/validation/etc. code in a major way, 
6530         so it seems to make sense to me. Probably isn't genuinely that
6531         much better, but...
6532
6533         * gtk/gtktexttag.c (set_fg_color): fix name of property used for
6534         notifies
6535
6536         * gtk/gtktextmark.c (gtk_text_mark_get_left_gravity): new function
6537
6538 2001-01-12  Alexander Larsson  <alla@lysator.liu.se>
6539
6540         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_set_rotation):
6541         Hide mouse pointer while rotation. Show it afterwards.
6542
6543 2001-01-12  Alexander Larsson  <alexl@redhat.com>
6544
6545         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_clip_region): Take shaped
6546         windows in consideration when generating clip region.
6547
6548         * gdk/linux-fb/gdkfb.h:
6549         Huge HACK. Added GDK_FB_USE_CHILD_SHAPE.
6550
6551         * gdk/linux-fb/gdkprivate-fb.h:
6552         Add shape to GdkWindowFBDatat.
6553         exported gdk_fb_window_get_abs_shape().
6554         removed gdk_fb_draw_lines declaration.
6555
6556         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_impl_fb_init):
6557         Init shape to NULL. (gdk_fb_window_send_crossing_events): Don't
6558         send focus changes when there is a grabbed window.
6559         (gdk_window_get_pointer): Handle shaped windows.
6560         (gdk_fb_region_create_from_bitmap): Convert bitmap to region.
6561         (gdk_fb_window_peek_shape): Returns the shape for a window,
6562         handles GDK_FB_USE_CHILD_SHAPE.
6563         (gdk_fb_window_get_abs_shape): Returns the shape of the window,
6564         offseted to absolute positions. Handles GDK_FB_USE_CHILD_SHAPE.
6565         (gdk_window_shape_combine_mask): Implement.
6566
6567         * gtk/gtkwindow-decorate.c:
6568         HACK! Set GDK_FB_USE_CHILD_SHAPE on window->frame to make sure
6569         setting the shape of a window makes the window transparent.
6570
6571 2001-01-11  Havoc Pennington  <hp@redhat.com>
6572
6573         * gtk/gtktreemodelsimple.h: Oops, broke some macros
6574
6575 2001-01-10  Havoc Pennington  <hp@redhat.com>
6576
6577         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clear_attributes):
6578         add this function, bug 40251
6579
6580         * gtk/gtktreemodelsimple.h (GTK_TYPE_TREE_MODEL_SIMPLE): fix name
6581         of type macro   
6582
6583 2001-01-11  Alexander Larsson  <alexl@redhat.com>
6584
6585         * acconfig.h:
6586         Added ENABLE_SHADOW_FB
6587
6588         * configure.in:
6589         Added --disable-shadowfb
6590
6591         * gdk/linux-fb/gdkcursor-fb.c:
6592         Update shadowfb when updating cursor
6593
6594         * gdk/linux-fb/gdkdrawable-fb2.c:
6595         Added wrappers for shadowfb that calls  the normal drawable
6596         methods, but calls gdk_shadow_fb_update(bounding box) when
6597         GdkWindows are drawed to.
6598         Moved gdk_draw_glyphs implementation to _gdk_draw_glyphs
6599         which also returns the bounding box.
6600
6601         * gdk/linux-fb/gdkfb.h:
6602         Added GdkFBAngle type and gdk_fb_set_rotation declaration.
6603
6604         * gdk/linux-fb/gdkgeometry-fb.c:
6605         Update shadowfb when scrolling window.
6606
6607         * gdk/linux-fb/gdkglobals-fb.c:
6608         Add _gdk_fb_screen_angle.
6609         
6610         * gdk/linux-fb/gdkkeyboard-fb.c:
6611         Test code for screen rotation. Shift-F2 in the xlate driver
6612         rotates the screen.
6613
6614         * gdk/linux-fb/gdkmain-fb.c:
6615         Handle shadowfb. Add gdk_fb_set_rotation(). Remove CM and RP.
6616
6617         * gdk/linux-fb/gdkmouse-fb.c:
6618         Use fb_width/height instead of modeinfo.xres/yres.
6619
6620         * gdk/linux-fb/gdkprivate-fb.h:
6621         Added fb_men, fb_width, fb_height & fb_stride. When using
6622         shadow fb these can differ from the framebuffer stuff.
6623         Declarations for gdk_shadow_fb_update, gdk_shadow_fb_init,
6624         gdk_shadow_fb_stop_updates, gdk_fb_recompute_all,
6625         _gdk_fb_screen_angle. Removed CM, RP.
6626
6627         * gdk/linux-fb/gdkrender-fb.c:
6628         Added code for shadowfb handling and screen rotation using
6629         shadowfb.
6630
6631         * gdk/linux-fb/gdkwindow-fb.c:
6632         Use fb_mem, fb_stride, fb_width, fb_height.
6633         Added recompute_rowstride to reset the rowstride of all windows.
6634         Added gdk_fb_recompute_all() which recomputes rootwindow size,
6635         window abs positions and window rowstrides. Usefull when the
6636         rotation has changed.
6637
6638 Thu Jan 11 13:16:50 GMT 2001  Tony Gale <gale@gtk.org>
6639
6640         * docs/faq/gtk-faq.sgml: update to make web site updating easier
6641
6642 2001-01-10  Havoc Pennington  <hp@redhat.com>
6643
6644         * gtk/gtktreestore.c (gtk_tree_store_insert_before): handle case
6645         where sibling == iter
6646         (gtk_tree_store_insert_after): handle sibling == iter
6647         (gtk_tree_store_prepend): remove stamp checks
6648         (gtk_tree_store_insert_before): ditto
6649         (gtk_tree_store_append): ditto
6650         (gtk_tree_store_get_path): ditto
6651         (gtk_tree_store_get_value): ditto
6652         (gtk_tree_store_iter_has_child): ditto
6653         (gtk_tree_store_iter_n_children): ditto
6654         (gtk_tree_store_iter_nth_child): ditto
6655         (gtk_tree_store_insert_after): ditto
6656         (gtk_tree_store_is_ancestor): ditto
6657         (gtk_tree_store_iter_depth): ditto
6658         (gtk_tree_store_insert_before): assert that sibling's parent is
6659         the same as the passed-in parent
6660         (gtk_tree_store_insert_after): assert that sibling's parent is
6661         the same as the passed-in parent
6662
6663         
6664         * gtk/gtktreemodel.c (gtk_tree_model_get_first): new convenience 
6665         function to get the first iterator in a model
6666         
6667         * gtk/gtktreestore.c (gtk_tree_store_get_root_iter): remove,
6668         conventionally the "root" in this sense is just NULL afaict.
6669
6670         * gtk/gtkliststore.c (gtk_list_store_insert_before): handle case
6671         where sibling == iter
6672         (gtk_list_store_insert_after): handle case where sibling == iter
6673
6674         * tests/testtreeview.c (run_automated_tests): fairly lame basic
6675         automated tests for ListStore, TreeStore
6676
6677         * gtk/gtkliststore.c (gtk_list_store_remove): update tail pointer
6678         (gtk_list_store_insert): update tail pointer, and fix it to work
6679         (gtk_list_store_insert_before): update tail pointer, and fix it to work
6680         (gtk_list_store_append): use tail to be faster
6681         (gtk_list_store_prepend): fix it, update tail pointer
6682         (gtk_list_store_insert_after): fix it, update tail pointer
6683
6684         * gtk/gtkliststore.h (struct _GtkListStore): add tail pointer for 
6685         the list
6686
6687 2001-01-09  Havoc Pennington  <hp@redhat.com>
6688
6689         * gtk/gtklabel.c (gtk_label_expose): don't draw if label->layout
6690         is NULL due to a pending resize
6691
6692         * gtk/gtktreeview.c (gtk_tree_view_check_dirty): don't set the
6693         column width to values less than 1
6694
6695         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_width): clamp
6696         width to be between min/max width, and still set the width 
6697         even if autosize is turned on, so the tree view can use this 
6698         function in order to autosize.
6699         (gtk_tree_view_column_init): set initial width to 1 not 0
6700
6701         * gtk/gtktreeview.c (gtk_tree_view_size_request_buttons): use
6702         setter function to modify column width, so we get notification
6703         (gtk_tree_view_insert_iter_height): ditto
6704         (gtk_tree_view_calc_size): ditto
6705         (gtk_tree_view_check_dirty): ditto
6706
6707         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_class_init): Add
6708         properties to change all the interesting attributes of the tree
6709         view column.
6710         (gtk_tree_view_column_set_header_clickable): rename set_clickable
6711         (gtk_tree_view_column_get_clickable): add
6712         (gtk_tree_view_column_set_cell_renderer): don't unset the current
6713         attributes; assume a cell renderer with equivalent object
6714         properties has been swapped in. Do g_object_notify().
6715         (gtk_tree_view_column_set_visible): g_object_notify
6716         (gtk_tree_view_column_get_sizing): rename from get_col_type
6717         (gtk_tree_view_column_set_sizing): g_object_notify
6718         (gtk_tree_view_column_set_width): add g_object_notify
6719         (gtk_tree_view_column_set_min_width): ditto
6720         (gtk_tree_view_column_set_max_width): ditto
6721         (gtk_tree_view_column_set_title): ditto
6722         (gtk_tree_view_column_set_clickable): ditto
6723         (gtk_tree_view_column_set_widget): ditto
6724         (gtk_tree_view_column_set_justification): ditto
6725
6726 2001-01-09  Havoc Pennington  <hp@redhat.com>
6727
6728         * gtk/gtktreeview.c (gtk_tree_view_check_dirty): handle case where
6729         there are no rows in the model
6730
6731         * gtk/gtkliststore.c (gtk_list_store_iter_children): if parent is
6732         NULL, then return the start of the list
6733
6734         * gtk/gtktreeview.c (gtk_tree_view_setup_model): don't build tree
6735         if we can't get any rows from an empty model 
6736
6737         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): remove
6738         extraneous * after function pointer typedef usage
6739
6740         * Makefile.am: don't specify full path to cp and rm
6741
6742         * gtk/gtkcellrenderertextpixbuf.c
6743         (gtk_cell_renderer_text_pixbuf_get_size): check width/height !=
6744         NULL before dereferencing, fixes a segfault that happened from
6745         time to time
6746
6747         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render):
6748         use gdk_pixbuf_render_to_drawable_alpha() to get alpha channel,
6749         and reindent the function
6750         (gtk_cell_renderer_pixbuf_get_size): indentation
6751
6752         * gtk/gtkdialog.c (gtk_dialog_run): destroy main loop only after
6753         we quit it
6754         (gtk_dialog_add_buttons_valist): add g_return_if_fail
6755         (gtk_dialog_set_default_response): New function, to set default
6756         button
6757         (gtk_dialog_set_response_sensitive): New function, to set 
6758         sensitivity of buttons
6759
6760         * gtk/gtkcellrendererpixbuf.c
6761         (gtk_cell_renderer_pixbuf_get_property): allow getting a NULL pixbuf
6762         (gtk_cell_renderer_pixbuf_set_property): allow setting a NULL pixbuf
6763
6764         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_to_value):
6765         handle any G_TYPE_OBJECT subclass, not just the base class, and 
6766         also boxed types.
6767         (_gtk_tree_data_list_value_to_node): ditto
6768
6769         * gtk/gtkrbtree.c: Run _gtk_rbtree_test at strategic points if 
6770         --gtk-debug=tree
6771
6772         * gtk/gtkmain.c: add GTK_DEBUG_TREE
6773
6774         * gtk/gtkdebug.h: add GTK_DEBUG_TREE
6775
6776 2001-01-09  Tor Lillqvist  <tml@iki.fi>
6777
6778         * gdk/win32/gdkevents-win32.c: Implement better mouse
6779         capturing. Do use SetCapture(). Thanks to jpe@archaeopteryx.com.
6780         (find_window_for_pointer_event): New function.
6781         (gdk_event_translate): Use it when handling mouse events.
6782
6783 2001-01-09  Alexander Larsson  <alla@lysator.liu.se>
6784
6785         * configure.in:
6786         Added --with-included-loaders option
6787
6788         * gdk-pixbuf/Makefile.am:
6789         * gdk-pixbuf/gdk-pixbuf-io.c:
6790         Add support for including selected gdk-pixbuf loaders only.
6791
6792         * gtk/gtkwindow.c (gtk_window_set_frame_dimensions,
6793         gtk_window_set_has_frame):
6794         Added inline documentation.
6795
6796         * gdk/x11/gdkwindow-x11.c (gdk_window_get_decorations):
6797         * docs/reference/gdk/tmpl/windows.sgml:
6798         Added inline documentation.
6799
6800 Mon Jan  8 14:42:06 2001  Jonathan Blandford  <jrb@redhat.com>
6801
6802         * gtk/gtktreeview.c (gtk_tree_view_realize_buttons): Skip
6803         realizing buttons that have already been realized.
6804
6805 Mon Jan  8 14:06:29 2001  Jonathan Blandford  <jrb@redhat.com>
6806
6807         * tests/testtreeview.c (main): Show menu items before adding to
6808         option menu.
6809
6810         * gtk/gtktreeview.c (gtk_tree_view_set_model): Keep the columns
6811         around if we kill them.
6812
6813         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
6814         Return if we pass in a NULL model.
6815
6816 2001-01-08  Havoc Pennington  <hp@redhat.com>
6817
6818         * tests/testtreeview.c: hack on this some
6819
6820         * gtk/gtktreestore.c (gtk_tree_store_setv): rename
6821         gtk_tree_store_set_valist, v is for arrays, valist for varargs
6822         list
6823         (gtk_tree_store_getv): rename gtk_tree_store_get_valist
6824
6825         * gtk/gtkliststore.h: Add varargs set() and get() convenience
6826         functions
6827
6828 2001-01-08  Alexander Larsson  <alexl@redhat.com>
6829
6830         * gtk/gtkwindow-decorate.[hc]:
6831         * gtk/Makefile.am:
6832         New files. Contains an implementation of a minimal WM for
6833         linux-fb.
6834
6835         * gtk/gtkwindow.h:
6836         Add the possibility for GtkWindows to specify a frame. This
6837         is used for the window decoration code, but could concievably
6838         be used for X programs too (xmms style windows).
6839         GtkWindow->frame is the toplevel window if the window is framed.
6840         The signal frame_event gets all events that are targeted to
6841         GtkWindow->frame.
6842         (_gtk_window_constrain_size): Exported for usage by gtkwindow-decorate.c.
6843         
6844         * gtk/gtkwindow.c:
6845         Implement gtk_window_set_has_frame and gtk_window_set_frame_dimensions.
6846         Call out to gtkwindow-decorate.c for WM support in linx-fb.
6847
6848 2001-01-08  Alexander Larsson  <alexl@redhat.com>
6849
6850         * docs/README.linux-fb:
6851         Correct filename ~/.pangoft2_aliases
6852
6853         * gdk/gdkwindow.h:
6854         Added new function gdk_window_get_decorations.
6855
6856         * gdk/linux-fb/gdkfb.h:
6857         Removed _gdk_window_get_decorations declaration.
6858         Renamed _gdk_window_set_child_handler to
6859         gdk_fb_window_set_child_handler.
6860
6861         * gdk/linux-fb/gdkwindow-fb.c:
6862         Renamed _gdk_window_set_child_handler to
6863         gdk_fb_window_set_child_handler.
6864
6865         * gdk/x11/gdkwindow-x11.c:
6866         New function gdk_window_get_mwm_hints().
6867         Implemented gdk_window_get_decorations.
6868
6869         * docs/reference/gdk/tmpl/windows.sgml:
6870         * docs/reference/gdk/gdk-sections.txt:
6871         Added gdk_window_get_decorations docs.
6872         
6873 2001-01-08  Alexander Larsson  <alla@lysator.liu.se>
6874
6875         * gdk/linux-fb/gdkwindow-fb.c (_gdk_fb_window_find_focus,
6876         gdk_fb_window_find_focus, gdk_fb_send_focus_change,
6877         gdk_fb_window_send_crossing_events):
6878         Possibly send focus events when the mouse moves from one
6879         window to another.
6880
6881 2001-01-07  Tor Lillqvist  <tml@iki.fi>
6882
6883         * gdk/win32/gdkwindow-win32.c (gdk_window_set_title,
6884         gdk_window_new): Adapt calls to g_{locale,filename}_{to,from}_utf8
6885         to match current API.
6886
6887         * gdk/win32/gdkvisual-win32.c (gdk_visual_init): If a secret
6888         environment variable is set, don't call g_error when on a
6889         palettized (PseudoColor) display. Some people want to use GTK+ 
6890         in 256-colour mode even though works only partially.
6891
6892         * gdk/gdk.def
6893         * gtk/gtk.def
6894         * gtk/makefile.mingw.in: Update.
6895
6896 2001-01-05  Havoc Pennington  <hp@redhat.com>
6897
6898         * tests/testtreeview.c: hack on this a bit
6899
6900         * gtk/gtktextlayout.c (gtk_text_layout_class_init):
6901         s/GTK_RUN_LAST/G_SIGNAL_RUN_LAST
6902
6903         * gtk/gtktreemodelsimple.h (GTK_IS_TREE_MODEL_SIMPLE_CLASS): 
6904         was spelled incorrectly
6905         (GTK_IS_TREE_MODEL_SIMPLE): ditto
6906
6907         * gtk/gtktreeview.c (gtk_tree_view_set_headers_clickable): rename
6908         from gtk_tree_view_set_headers_active   
6909
6910         * gtk/gtktexttag.c:
6911         (gtk_text_tag_get_property): handle PROP_DIRECTION
6912         (gtk_text_tag_set_property): g_object_notify when we toggle the _set
6913         properties, bug 40235
6914
6915         * gtk/gtktextiter.c (gtk_text_iter_forward_to_delimiters): rename
6916         forward_to_line_end
6917
6918 Fri Jan  5 16:16:29 2001  Owen Taylor  <otaylor@redhat.com>
6919
6920         * gtk/{gtkcalender.c,gtkfilesel.c,gtkimcontext.c},
6921         modules/input/gtkimcontextxim.c: Adapt to new prototypes
6922         for unicode,locale,filename conversion functions.
6923
6924 2001-01-05  Havoc Pennington  <hp@redhat.com>
6925
6926         * gtk/gtktextiter.c (gtk_text_iter_ends_line): this function was
6927         broken if called on the first position in the buffer.
6928
6929         * gtk/gtktextlayout.c (line_display_index_to_iter): fix
6930         forward_to_delimiters to be called only if we aren't already at
6931         the delimiters.
6932
6933 2001-01-05  Havoc Pennington  <hp@redhat.com>
6934
6935         * demos/gtk-demo/main.c (create_tree): Oops, that didn't link. Fix.
6936
6937 2001-01-05  Alexander Larsson  <alexl@redhat.com>
6938
6939         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_drawable_finalize): free
6940         colormap in here. Sync from X port.
6941         (gdk_fb_set_colormap): allow the colormap to be NULL if you like.
6942         Sync from X port.
6943         (gdk_fb_clip_region): Comment out g_warning about empty clip region.
6944         This happens now and then, and i don't think it is a bug.
6945         (gdk_fb_draw_polygon): Correctly add extra point if startpoint
6946         != endpoint.
6947         (gdk_fb_draw_lines): Don't draw dashed lines if line_style is
6948         GDK_LINE_SOLID.
6949
6950         * gdk/linux-fb/gdkfont-fb.c: Return bogus GdkFont that has
6951         some of the fields filled in at least.
6952
6953         * gdk/linux-fb/miwideline.c: The widths argument to miLineArcI, and
6954         miLineArcD is no more, remove it from the function definition.
6955
6956 2001-01-04  Havoc Pennington  <hp@redhat.com>
6957
6958         * gtk/gtktreeselection.c (gtk_tree_selection_get_tree_view): add
6959         this
6960
6961         * gtk/gtktreemodel.h (struct _GtkTreeIter): rename fields to
6962         user_data instead of tree_node
6963
6964         * gtk/gtktreeprivate.h (TREE_VIEW_COLUMN_WIDTH): rename from
6965         TREE_VIEW_COLUMN_SIZE
6966
6967         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): rename
6968         "size" field to "width" finishes bug 40061
6969
6970         * gtk/gtkcellrenderer.h: Use GtkCellRendererState instead of guint
6971         for bitfields, bug 40268
6972
6973 2001-01-04  Havoc Pennington  <hp@redhat.com>
6974
6975         Rename some stuff:
6976         
6977         s/gtk_tree_view_column_set_size/gtk_tree_view_column_set_width/g;
6978
6979         s/GtkModelSimple/GtkTreeModelSimple/g;
6980         s/GTK_MODEL_SIMPLE/GTK_TREE_MODEL_SIMPLE/g;
6981         s/gtk_model_simple/gtk_tree_model_simple/g;
6982         s/gtkmodelsimple/gtktreemodelsimple/g;
6983
6984         s/gtk_tree_view_column_set_header_active/gtk_tree_view_column_set_header_clickable/g;
6985
6986         s/GtkTreeViewColumnType/GtkTreeViewColumnSizing/g;
6987         s/column_set_col_type/column_set_sizing/g;
6988
6989         s/GtkTreeSelectionType/GtkTreeSelectionMode/g;
6990         s/gtk_tree_selection_set_type/gtk_tree_selection_set_mode/g;
6991
6992         s/GtkCellRendererType/GtkCellRendererState/g;
6993         
6994         * gtk/gtkcellrenderertoggle.c: remove _ macro, include gtkintl.h
6995         (gtk_cell_renderer_toggle_class_init): change "state" property to
6996         "active", to match GtkToggleButton
6997         (gtk_cell_renderer_toggle_get_active): new function, bug
6998         40269
6999         (gtk_cell_renderer_toggle_set_active): new function
7000         (gtk_cell_renderer_toggle_set_property): route changes to toggle
7001         state through gtk_cell_renderer_set_active
7002
7003 Thu Jan  4 15:46:18 2001  Jonathan Blandford  <jrb@redhat.com>
7004
7005         * gtk/gtkmodelsimple.c: Changed a bunch of boxed types to pointers
7006         temporarily until they work again.  Brought up to date with
7007         changes in the model.
7008         * gtk/gtkmodelsimple.h: Brought up to date with changes in the
7009         model.
7010
7011 2001-01-04  Havoc Pennington  <hp@redhat.com>
7012
7013         * gtk/gtktextlayout.c (line_display_index_to_iter): if index is
7014         equal to the line length, then position iterator before paragraph 
7015         separators. Fixes crash reported by Mikael Hermansson when
7016         pressing left arrow from the start of a line.   
7017
7018         * gtk/gtktextiter.c (iter_set_from_byte_offset): Add g_error
7019         about byte indexes off the end
7020         (iter_set_from_char_offset): add g_error about char offsets
7021         off the end
7022
7023 2001-01-03  Havoc Pennington  <hp@redhat.com>
7024
7025         * gtk/gtktextbtree.c: Adapt to uscore-ification of gtktextiterprivate
7026
7027         * gtk/gtktextdisplay.c (gtk_text_layout_draw): remove use 
7028         of private functions; remove inclusion of private headers.
7029
7030         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_at_line): Add this 
7031         function, so we don't need private functions in gtktextdisplay.c
7032
7033         * gtk/gtktextiterprivate.h: underscore-ification
7034
7035         * gtk/gtkwidget.c: Clean up a bunch of docs that said "INTERNAL"
7036         to instead say "only useful to implement widgets"
7037
7038         * gtk/gtkenums.h (GtkMovementStep): Rename GTK_MOVEMENT_CHARS,
7039         GTK_MOVEMENT_POSITIONS to GTK_MOVEMENT_LOGICAL_POSITIONS,
7040         GTK_MOVEMENT_VISUAL_POSITIONS. Resolves bug 40249.
7041
7042         * gdk/x11/gdkwindow-x11.c (gdk_window_impl_x11_set_colormap):
7043         This function was completely broken
7044
7045         * gtk/testtext.c (line_numbers_expose): use gtk_paint_layout
7046
7047         * gtk/gtkvscale.c (gtk_vscale_draw_value): use gtk_paint_layout
7048
7049         * gtk/gtkvruler.c (gtk_vruler_draw_ticks): use gtk_paint_layout
7050
7051         * gtk/gtklabel.c (gtk_label_expose): use gtk_paint_layout
7052
7053         * gtk/gtkhscale.c (gtk_hscale_draw_value): use gtk_paint_layout
7054
7055         * gtk/gtkhruler.c (gtk_hruler_draw_ticks): use gtk_paint_layout
7056
7057         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_render): use
7058         gtk_paint_layout
7059
7060         * gtk/gtkaccellabel.c (gtk_accel_label_expose_event): use
7061         gtk_paint_layout
7062
7063         * gtk/gtkstyle.h: Add draw/paint expander to draw tree expanders.
7064         Progress on bug 40103. Add draw_layout to draw a PangoLayout.
7065         (struct _GtkStyleClass): Remove draw_cross, draw_oval, draw_ramp,
7066         which were not implemented.     
7067
7068         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): Add
7069         insert_pixbuf signal. Rename delete_text to delete_range since it
7070         also deletes pixbufs and child anchors. This almost closes bug
7071         40245 (still need to deal with child anchors)
7072
7073         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Add
7074         insert_pixbuf, change signal names as appropriate, change types of
7075         signals taking marks/tags to have the specific type, not just
7076         G_TYPE_OBJECT
7077         
7078         * gtk/gtkmain.c (gtk_get_current_event_state): Add this function; 
7079         closes bug 40051
7080
7081         * gtk/gtkoptionmenu.c (gtk_option_menu_set_history): clean up
7082         unnecessary remove_contents() call
7083         (gtk_option_menu_class_init): add a "changed" signal, closes
7084         bug 40039
7085         (gtk_option_menu_update_contents): emit "changed" if the 
7086         active menu item changes
7087
7088         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done): fix bad
7089         cast to GtkObject, reported by Jonas Borgstrom
7090         (gdk_pixbuf_loader_finalize): don't close the loader on finalize;
7091         we can't do stuff with side effects in finalize. Instead, spew a
7092         warning if the loader isn't closed.
7093
7094         * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_finalize): free
7095         colormap in here, non-X ports probably need to sync to this change
7096
7097         * gdk/x11/gdkdrawable-x11.c (gdk_x11_set_colormap): remove 
7098         assertion that colormap != NULL, you can set the colormap to NULL
7099         if you like.
7100         
7101         * Makefile.am: remove gtk-config-2.0
7102
7103         * configure.in: Use pkg-config to locate GLib. Remove
7104         separated-out GMODULE_LIBS, GMODULE_CFLAGS; these were not used,
7105         and the gmodule libs/cflags were in GLIB_LIBS GLIB_CFLAGS anyhow.
7106         Use pkg-config to locate Pango. Output correct Pango libs to
7107         gdk-2.0.pc.in. Fix test for FREETYPE_CONFIG (typo fix).
7108
7109         * Makefile.am (pkgconfig_DATA): install only target-specific pc
7110         files
7111         (install-data-local): symlink gtk+-2.0.pc and gdk-2.0.pc to the
7112         X11 pc files
7113
7114         * gtk+-2.0.pc.in (Requires): require the GDK for the current target
7115         unref from here
7116
7117 2001-01-03  Alexander Larsson  <alla@lysator.liu.se>
7118
7119         * configure.in:
7120         Change GTK_NO_CHECK_CASTS to G_DISABLE_CAST_CHECKS.
7121
7122 Tue Jan  2 16:23:05 2001  Owen Taylor  <otaylor@redhat.com>
7123
7124         * gtk/gtktextlayout.c
7125         (gtk_text_layout_move_iter_to_previous_line): Fix unitialized
7126         variable when moving back onto a single line.
7127
7128 2001-01-01  Havoc Pennington  <hp@redhat.com>
7129
7130         * gtk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
7131
7132         * gdk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
7133
7134         * configure.in (LIBTOOL_EXPORT_OPTIONS): define
7135         LIBTOOL_EXPORT_OPTIONS with options to control symbol export
7136
7137 2001-01-01  Havoc Pennington  <hp@redhat.com>
7138
7139         * gtk/gtktexttagprivate.h: uscore-prepend all the stuff in here.
7140
7141         * gtk/gtk-boxed.defs (GtkTextAttributes): Add boxed type for 
7142         GtkTextAttributes
7143
7144         * gtk/gtktexttag.c: Fix up GtkTextAttributes copying to close bug 
7145         #40246
7146         (gtk_text_attributes_copy_values): rename from 
7147         gtk_text_attributes_copy
7148         (gtk_text_attributes_copy): a more standard GTK copy function, 
7149         which returns a new object
7150
7151 2001-01-01  Havoc Pennington  <hp@redhat.com>
7152
7153         * gtk/gtktreeview.c: Adapt to GtkTreeSelection changes
7154         
7155         * gtk/gtktreeselection.c (_gtk_tree_selection_set_tree_view):
7156         don't fill in tree_view->priv->selection, kind of an unexpected
7157         side effect
7158
7159         * gtk/gtkcellrenderertext.c: Remove definition of _ and include
7160         gtkintl.h
7161         
7162         * gtk/gtkcellrenderer.c: Remove definition of _ and include
7163         gtkintl.h
7164         (gtk_cell_renderer_get_property): remove calls to g_value_init
7165
7166         * gtk/gtkcellrendererpixbuf.c: Remove definition of _ and include
7167         gtkintl.h
7168
7169         * gtk/gtkcellrenderertextpixbuf.c: Remove definition of _ macro
7170         and include gtkintl.h
7171         (gtk_cell_renderer_text_pixbuf_class_init): remove spaces from
7172         property names
7173
7174         * gtk/gtktreeselection.c (_gtk_tree_selection_new): rename, return
7175         GtkTreeSelection
7176         (_gtk_tree_selection_new_from_with_view): rename, return
7177         GtkTreeSelection
7178         (_gtk_tree_selection_set_tree_view): rename with uscore
7179         (gtk_tree_selection_get_selected): fill in the "model" out param
7180         first, so it gets filled in even if we return at the top of the 
7181         function
7182         (gtk_tree_selection_real_select_all): add a comment and an else{}
7183         to clarify this a bit
7184         (gtk_tree_selection_real_unselect_all): add the same else{}
7185
7186         * gtk/gtktreeselection.h: Rename new, new_with_tree_view, and
7187         set_tree_view to have underscore prefixes, move them to the
7188         private header, fix return type of new_with_tree_view
7189         (struct _GtkTreeSelection): mark struct
7190         fields private  
7191
7192         * gtk/gtktreemodel.c (gtk_tree_model_get_flags): return
7193         GtkTreeModelFlags, not a guint
7194         (gtk_tree_path_prev): return gboolean not gint
7195         (gtk_tree_path_up): return gboolean not gint
7196
7197         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): make get_flags
7198         return GtkTreeModelFlags, not a guint
7199
7200         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_finalize): check
7201         that child model is non-null before unrefing it
7202         (g_value_int_compare_func): make this a qsort compare func, not 
7203         a boolean predicate
7204
7205         * gtk/gtktreemodelsort.h: rename gtk_tree_model_set_sort_column,
7206         (add -umn to the end), and mark it unimplemented
7207         (gtk_tree_model_sort_resort): remove, this wasn't implemented, and 
7208         I don't see what it's for - doesn't the model always sort itself?
7209         (gtk_tree_model_sort_set_compare): this had the wrong signature
7210
7211         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_attributes):
7212         Fix the docs to say that it destructively replaces existing
7213         attributes (previously said that it added attributes).
7214         (gtk_tree_view_column_set_visible): canonicalize bool before
7215         equality testing. Also, check for realization before
7216         hiding/showing the tree_column->window; if this window could exist
7217         before realization, then it's busted and needs fixing, we can't 
7218         create GDK resources pre-realization. Also, remove
7219         superfluous queue_resize(), since set_size() does that for us.
7220         (gtk_tree_view_column_set_col_type): check realization before 
7221         using tree_column->window
7222
7223         * gtk/gtktreedatalist.c: fix filename in copyright notice
7224
7225 2000-12-31  Havoc Pennington  <hp@pobox.com>
7226
7227         * gtk/gtktextview.c: Rearrange all the
7228         scroll-while-dragging-or-selecting code to be different, not
7229         necessarily better. ;-)
7230         (gtk_text_view_scroll_to_mark): Change this
7231         function to take within_margin as a fraction instead of a pixel
7232         value, and to take alignment arguments (indicating where to align 
7233         the mark inside the visible area)
7234         
7235         * gtk/testtextbuffer.c (fill_buffer): fix bad cast of GtkTextTag
7236         to GtkObject
7237
7238         * gtk/gtktextiter.c (gtk_text_iter_set_line_offset): change
7239         behavior so that offsets past the end of the line are not 
7240         allowed, and an offset equal to the line length moves the iterator
7241         to the next line
7242         (gtk_text_iter_set_line_index): make parallel change
7243         (gtk_text_iter_get_bytes_in_line): add this function
7244         
7245         * gtk/gtktextbtree.c (_gtk_text_line_byte_locate): change handling
7246         of byte indexes off the end of the line; byte index at the end of
7247         the line now returns FALSE and doesn't fill in the requested
7248         values, byte index past the end of the line is an error.  Also,
7249         don't allow -1 offset anymore, since its meaning is unclear.
7250
7251         This change exposes some bug in visual cursor motion, where we
7252         end up with a huge invalid byte index; needs fixing. Symptom of 
7253         bug is a crash when you hit up arrow.
7254         
7255         (_gtk_text_line_char_locate): match the change to byte_locate
7256
7257         * gtk/gtktextiter.c (find_by_log_attrs): Handle iteration backward
7258         from start of line properly. fixes bug reported by Mikael
7259         Hermansson where backspace would delete all text before the
7260         cursor.
7261
7262 2000-12-30  Tor Lillqvist  <tml@iki.fi>
7263
7264         * gdk/win32/gdkwindow-win32.c
7265         (gdk_window_impl_win32_get_visible_region): New function, as in
7266         the X11 backend.
7267         (gdk_window_new, gdk_window_set_title): Use g_locale_from_utf8()
7268         instead of duplicating the same code here.
7269
7270         * gdk/win32/gdkwin32.h (GDK_COLORMAP_PRIVATE_DATA): Use
7271         GDK_COLORMAP macro.
7272
7273         * gdk/win32/gdkevents-win32.c (gdk_event_funcs): Use NULL as
7274         destroy function.
7275         (gdk_event_translate): Use GDK_COLORMAP_PRIVATE_DATA to correctly
7276         access that.
7277
7278         * gtk/gtk.def: Update.
7279
7280         * gtk/makefile.mingw.in: Use glib-genmarshal from $(GLIB)/gobject.
7281
7282 2000-12-30  Havoc Pennington  <hp@pobox.com>
7283
7284         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Set the system
7285         colormap on input only windows, to avoid special cases all over
7286         the code for these windows.
7287
7288 2000-12-26  Tor Lillqvist  <tml@iki.fi>
7289
7290         * gdk/win32/gdkvisual-win32.c (gdk_visual_init): Call g_error if
7291         we are on a palettized display ("PseudoColor" in X11), as the code
7292         for that doesn't work anyway, and never has.
7293
7294 2000-12-22  Alexander Larsson  <alexl@redhat.com>
7295
7296         * gdk/linux-fb/gdkkeyboard-fb.c (xlate_io):
7297         Don't use isprint() for chars > 255.
7298
7299 2000-12-21  Havoc Pennington  <hp@redhat.com>
7300
7301         * tests/testtreeview.c: more work
7302
7303 2000-12-21  Alexander Larsson  <alexl@redhat.com>
7304
7305         * docs/README.linux-fb:
7306         Update the docs to the new pangoft2 way.
7307
7308 2000-12-21  Alexander Larsson  <alexl@redhat.com>
7309
7310         * configure.in:
7311         For linux-fb get the pangoft2 cflags and libs. This needs a recent
7312         pango version.
7313         Remove modules/linux-fb/Makefile.
7314
7315         * gdk/linux-fb/gdkdrawable-fb2.c:
7316         Render glyphs using freetype.
7317
7318         * gdk/linux-fb/gdkfb.h:
7319         Add new fb-specific functions needed for managing windows.
7320
7321         * gdk/linux-fb/gdkmain-fb.c:
7322         Remove gdk_font_init/fini() calls.
7323
7324         * gdk/linux-fb/gdkpango-fb.c:
7325         Remove old implementation. Use pangoft2 instead.
7326
7327         * gdk/linux-fb/gdkprivate-fb.h:
7328         Remove PangoFBFont and related stuff.
7329
7330         * gdk/linux-fb/gdkwindow-fb.c:
7331         Implement drawable->get_visible_region.
7332         Implement support for _gdk_window_set_child_handler () and
7333         _gdk_window_get_decorations().
7334
7335         * modules/Makefile.am:
7336         Remove linux-fb subdir.
7337
7338         * modules/linux-fb/*:
7339         Removed all.
7340         
7341 2000-12-20  Jonathan Blandford  <jrb@redhat.com>
7342
7343         * gtk/gtkcellrenderer*.c (::get_property): remove g_value_init
7344         calls, as they are no longer needed.
7345
7346         * gtk/gtktreemodelsort.c: Fix up the comparison code.
7347         
7348         * gtk/gtktreemodel.h: Start work on ::reordered signal.  Need to
7349         figure out how to emit a signal on an interface.
7350
7351 2000-12-20  Havoc Pennington  <hp@redhat.com>
7352
7353         * tests: new directory to contain tests, gtk/test* should move
7354         here sometime (with appropriate on-cvs-server hackery)
7355
7356         * tests/testtreeview.c, tests/Makefile.am: a test
7357         
7358         * configure.in (AC_OUTPUT): add tests/Makefile
7359
7360         * gtk/gtktexttag.c (gtk_text_tag_get_property): Add "invisible"
7361         and "invisible_set" which were missing
7362
7363         * gtk/gtkrbtree.h: some cheesy indentation fix
7364         
7365 2000-12-20  Alexander Larsson  <alexl@redhat.com>
7366
7367         * gtk/gtkinvisible.c (gtk_invisible_realize):
7368         Attach the style to the window so that the style it is not
7369         leaked when unrealizing the window.
7370
7371 2000-12-18  Havoc Pennington  <hp@redhat.com>
7372
7373         * gtk/gtktextview.c (gtk_text_view_delete_from_cursor): do
7374         begin/end user action where appropriate
7375         (gtk_text_view_commit_handler): add begin/end user action
7376
7377         * gtk/gtktextbuffer.c: add begin/end user action signals, and
7378         bracket interactive operations with begin/end user action pair.
7379         
7380         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): remove
7381         "interactive" arg from insert_text and delete_text signals.
7382         Add begin_user_action, end_user_action signals
7383         (gtk_text_buffer_begin_user_action): 
7384         (gtk_text_buffer_end_user_action): New functions to delimit 
7385         a user-visible action
7386
7387         * gtk/gtkmarshal.list: update to reflect changes to gtktextbuffer
7388         signals.
7389         
7390 2000-12-18  Havoc Pennington  <hp@redhat.com>
7391
7392         * gdk/gdkevents.c (gdk_event_get_state): wow, that implementation
7393         was pretty non-working.
7394
7395         * gtk/testtext.c (fill_file_buffer): make this a bit more robust
7396         by passing the length to g_utf8_validate().
7397
7398 2000-12-16  Havoc Pennington  <hp@pobox.com>
7399
7400         * gtk/gdk-pixbuf-loader.h, gtk/gdk-pixbuf-loader.c: 
7401         Port to GObject, can go back in gdk-pixbuf after setting up 
7402         a gdk-pixbuf-marshal.h header over there.
7403
7404         * gtk/gtktreeview.c: s/SEPERATOR/SEPARATOR/g;
7405         (gtk_tree_view_class_init): specify GTK_TYPE_ADJUSTMENT for signal
7406         args
7407         (gtk_tree_view_init): don't unset GTK_NO_WINDOW, it shouldn't be
7408         set
7409         (gtk_tree_view_realize_buttons): don't gtk_widget_show() buttons
7410         here, do it when we create the buttons later
7411         (gtk_tree_view_realize_buttons): add some g_return_if_fail 
7412         (gtk_tree_view_map): paranoia checks that column->button is shown 
7413         and unmapped
7414         (gtk_tree_view_size_request): only request visible children.
7415         Move header size calculation in here, for cleanliness, and 
7416         to maintain invariants for child widgets if we eventually 
7417         let users set different children inside the buttons
7418         (gtk_tree_view_map_buttons): factor out code to map buttons,
7419         since it was being called several times
7420         (gtk_tree_view_size_allocate_buttons): move_resize the drag
7421         windows instead of just moving them; their height may change 
7422         if we allow random widgets in there, or the theme changes.
7423         (gtk_tree_view_size_allocate): move button size allocation 
7424         above emitting the scroll signals, to ensure a sane state when we
7425         hit user code
7426         (gtk_tree_view_button_release): remove queue_resize after
7427         tree_view_set_size(), set_size() will handle any resize queuing
7428         that's needed
7429         (gtk_tree_view_focus_in): just queue a draw, don't fool with
7430         draw_focus goo
7431         (gtk_tree_view_focus): use gtk_get_current_event() and
7432         gdk_event_get_state()
7433         (gtk_tree_view_deleted): don't queue_resize() after calling set_size()
7434         (gtk_tree_view_build_tree): fix a "if (foo); {}" bug - i.e. remove
7435         semicolon
7436         (gtk_tree_view_create_button): show the button here
7437         (gtk_tree_view_button_clicked): actually emit the clicked signal
7438         on the column
7439         (_gtk_tree_view_set_size): return right away if the size is
7440         unchanged, as a cheesy optimization
7441         (gtk_tree_view_setup_model): rename set_model_realized to 
7442         setup_model to match the flag that indicates whether we've 
7443         called it
7444         (gtk_tree_view_get_hadjustment): create adjustment if it doesn't
7445         exist, because set_scroll_adjustment does that and it shouldn't
7446         matter what order you call these in
7447         (gtk_tree_view_get_vadjustment): ditto
7448         (gtk_tree_view_set_headers_visible): canonicalize the bool, 
7449         for paranoia
7450         (gtk_tree_view_set_headers_visible): call
7451         gtk_tree_view_map_buttons() instead of using cut-and-paste code
7452         (gtk_tree_view_append_column): clarify whether the return value
7453         is the count of columns before or after, and do the increment 
7454         separately from the return statement so you can tell from the code.
7455         (gtk_tree_view_remove_column): ditto
7456         (gtk_tree_view_insert_column): ditto
7457         (gtk_tree_view_get_column): remove g_return_if_fail for columns
7458         outside the existing range, the docs say that outside-range
7459         columns are allowed, so we handle them as documented. (Presumably
7460         this allows a nice loop with column != NULL as test.)
7461         (gtk_tree_view_move_to): document what 0.0, 0.5, 1.0 alignments 
7462         mean (left/right/center etc.).
7463         (gtk_tree_view_collapse_all): only queue a draw if we're mapped
7464         (gtk_tree_view_expand_row): add docs
7465         (gtk_tree_view_collapse_row): add docs
7466
7467         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clicked): new
7468         function to emit the clicked signal on a column
7469         
7470         * gdk/gdkevents.c (gdk_event_get_state): new function, to get the
7471         state of an event
7472         (gdk_event_get_time): don't treat GDK_SCROLL 
7473         as a button event, remove default case from switch so gcc 
7474         will whine if we don't explicitly handle all event types
7475
7476         * gtk/gtktreeselection.h: added some FIXME 
7477         
7478         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): rename
7479         "columns" to "n_columns" and "column" to "columns" for clarity
7480
7481 2000-12-16  Havoc Pennington  <hp@pobox.com>
7482         
7483         * gtk/gtktextiter.c: General cleanup of the log attr iteration
7484         stuff. This should make e.g. the delete key work again in the
7485         text widget...
7486         (gtk_text_iter_forward_cursor_positions): handle negative count
7487         (gtk_text_iter_backward_cursor_positions): handle negative count
7488         (gtk_text_iter_forward_word_ends): handle negative count
7489         (gtk_text_iter_backward_word_starts): handle negative count
7490
7491         * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktexttag.h,
7492         gtk/gtktexttag.c, gtk/gtktexttagtable.h, gtk/gtktexttagtable.c, 
7493         gtk/gtktextbuffer.h, gtk/gtktextbuffer.c: Convert everything to 
7494         GObject. No doubt will cause breakage.
7495
7496         * demos/gtk-demo/textview.c: remove hacks around
7497         non-GObject-ification of the text objects
7498
7499         * demos/gtk-demo/main.c (main): use g_object_set() to manipulate 
7500         the text tag
7501         
7502 2000-12-14  Havoc Pennington  <hp@pobox.com>
7503
7504         * configure.in: only AC_DEFINE(HAVE_XFT) if we actually determined
7505         that we have Xrender
7506
7507 Thu Dec 14 20:22:31 2000  Owen Taylor  <otaylor@redhat.com>
7508
7509         * gdk/{gdkdrawable.[ch],gdkpixmap.c,gdkwindow.c,x11/gdkwindow.c}:
7510         Add two virtualized functions gdk_drawable_get_clip_region - to
7511         get the clip region when drawing.
7512         
7513         * gdk/gdkwindow.c (gdk_window_invalidate_rect): Rewrite to simple
7514         use invalidate_region.
7515
7516         * gdk/gdkwindow.c (gdk_window_invalidate_region): Clip to visible
7517         region.
7518
7519         * acconfig.h configure.in: Check for Xft. For now, assume
7520         that if Xft is found, Pango was compiled with Xft support
7521         as well.
7522
7523         * gdk/gdkcolor.h gdk/x11/gdkcolor-x11.c: Add 
7524         gdk_colormap_query_color().
7525         
7526         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_glyphs): Draw
7527         with Xft if appropriate.
7528
7529         * gdk/x11/gdkpango-x11.c (gdk_pango_context_get): Create
7530         a pangoxft context if we have XFT and the environment
7531         variable GD_USE_XFT is set.
7532         
7533         * gdk/x11/gdkx.h (struct _GdkGCX11): Cache the fg_pixel
7534         and also possibly an XftDraw structure.
7535
7536         * gtk/gtkfontsel.c: Handle the case where the font from the
7537         style doesn't match any of the fonts a bit better.
7538         
7539         * gtk/testgtk.c: Add tabs between directional segments for
7540         hebrew/arabic test. (Not really necessary, just a little
7541         prettier.)
7542
7543 2000-12-14  Havoc Pennington  <hp@redhat.com>
7544
7545         * gtk/testtext.c (fill_file_buffer): fix unicode validation when
7546         reading a file
7547
7548 2000-12-14  Havoc Pennington  <hp@redhat.com>
7549
7550         * gtk/gtktextbtree.c (_gtk_text_btree_validate_line): remove
7551         unused call to get_last_line()
7552
7553         * gtk/gtkobject.c (gtk_object_add_arg_type): add G_TYPE_POINTER
7554         here until boxed is working (and maybe after that - we should
7555         really not gratuitously break old code)
7556
7557         * gtk/gtktexttag.c (gtk_text_tag_class_init): add commented-out
7558         specific types for font_desc and tabs args, move them to
7559         GTK_TYPE_POINTER for now, waiting on g_param_spec_boxed() to get 
7560         fixed. Move GdkColor args to GTK_TYPE_POINTER also.
7561
7562         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): temporarily
7563         use GTK_TYPE_POINTER for signal signatures as a hack-around
7564
7565         * gtk/gtk-boxed.defs: Add boxed types for PangoFontDescription and
7566         PangoTabArray
7567
7568         * gtk/gtktextlayout.c (line_display_iter_to_index): 
7569         make static
7570         (line_display_index_to_iter): make static
7571
7572         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
7573         to marshal a string not a boxed
7574
7575         * gtk/gtkmarshal.list: add marshaller for GtkTextBuffer:insert_text
7576
7577         * gtk/testtext.c (fill_file_buffer): don't use g_utf8_next_char
7578         since the UTF-8 isn't validated yet
7579
7580         * gtk/gtktextsegment.c (char_segment_check_func): don't require
7581         lines to end in '\n'
7582         
7583         * gtk/gtktextview.c (gtk_text_view_move_cursor): update to use
7584         forward_to_delimiters, and grapheme boundaries
7585         (gtk_text_view_delete_from_cursor): properly handle non-newline
7586         delimiters, and grapheme boundaries
7587
7588         * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): rename
7589         to gtk_text_iter_forward_to_delimiters, and make it work properly
7590         if empty lines end with a character other than '\n'
7591
7592         * gtk/gtktextiter.h, gtk/gtktextiter.c: Add movement by cursor
7593         position
7594
7595 2000-12-15  Tor Lillqvist  <tml@iki.fi>
7596
7597         * gdk/makefile.{mingw.in,msc} (gdk_OBJECTS): Add gdkkeys.
7598
7599         * gtk/gtk.def
7600         * gdk/gdk.def: Update.
7601
7602         * gdk/win32/gdkmain-win32.c
7603         * gdk/win32/gdkkeys-win32.c: New file. Move some functions from
7604         gdkmain-win32.c here.
7605
7606         * gdk/win32/makefile.mingw.in (all): No need to make
7607         gdk-win32res.o here, the makefile one step up will call us to make
7608         it.
7609
7610         * gdk/win32/makefile.{mingw.in,msc} (gdk_win32_OBJECTS): Add
7611         gdkkeys-win32.
7612
7613         * gdk/win32/gdkcolor-win32.c: Silence gcc -Wall.
7614
7615         * gdk/win32/gdkevents-win32.c (gdk_events_init): Remove leftover
7616         call to g_source_add().
7617
7618         * gdk/win32/gdkgc-win32.c (BitmapToRegion): Plug memory
7619         leak. Thanks to Andreas Kemnade.
7620
7621 2000-12-13  Havoc Pennington  <hp@pobox.com>
7622
7623         * gtk/gtktextbtree.h: Remove double _ in front of some functions
7624
7625         * gtk/gtktext*.[hc]: update accordingly
7626         
7627 2000-12-13  Havoc Pennington  <hp@pobox.com>
7628
7629         * gtk/gtktextbtree.h: Put _ in front of every function in this 
7630         header file
7631
7632         * gtk/gtktext*.[hc]: update to reflect renamed btree functions
7633
7634 2000-12-13  Alex Larsson  <alexl@redhat.com>
7635
7636         * gdk/linux-fb/gdkmouse-fb.c (mouse_devs):
7637         Add support for ps2 intellimouse.
7638
7639         * gdkkeyboard-fb.c:
7640         Move shift-F1 repaint handling to xlate handler only.
7641         
7642         * docs/README.linux-fb:
7643         Add imps2 to docs.
7644         Document the new refresh keys.
7645         
7646 Tue Dec 12 23:46:44 2000  Tim Janik  <timj@gtk.org>
7647
7648         * gtk/stock-icons/Makefile.am: doh, this was broken beyond believe.
7649
7650         * gtk/gtkbox.c: change property types from (u)long to (u)int for
7651         ::position and ::padding.
7652
7653         * gtk/gtkcontainer.c: make ::border_width an INT property.
7654
7655         * gtk/gtkpacker.c: make ::position an INT property.
7656
7657         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed):
7658         guard against NULL h/v scrollbars, since this is used at construction
7659         time.
7660
7661         * gtk/gtkclist.[hc]: nuked gtk_clist_construct(), implemented
7662         internal gtk_clist_constructor().
7663
7664         * gtk/gtkctree.[hc]: nuked gtk_ctree_construct(), implemented
7665         gtk_ctree_constructor().
7666
7667         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): property
7668         ::pulse_step should use ARG_PULSE_STEP, not ARG_FRACTION.
7669
7670         * docs/reference/Makefile.am: fun stuff, disabled docs generation
7671         again, gtk-scan.c needs to introspec paramspecs, not GtkAgs.
7672
7673         * gtk/gtkwidget.[hc]:
7674         removed gtk_widget_setv(), gtk_widget_getv(), gtk_widget_newv()
7675         and gtk_widget_get().
7676         (gtk_widget_new): use g_object_new_valist().
7677         (gtk_widget_set): use g_object_set_valist().
7678
7679         * gtk/gtkobject.[hc]:
7680         removed gtk_object_arg_get_info(), gtk_object_getv(),
7681         gtk_object_query_args(), gtk_object_newv(),
7682         gtk_object_class_add_signals(),
7683         gtk_object_class_user_signal_new(),
7684         gtk_object_class_user_signal_newv(),
7685         gtk_object_arg_set(), gtk_object_arg_get(),
7686         gtk_object_args_collect(),
7687         gtk_object_default_construct(),
7688         gtk_object_constructed(),
7689         GTK_CONSTRUCTED and GTK_OBJECT_CONSTRUCTED().
7690         removed nsignals, signals and n_args members from GtkObjectClass.
7691         (gtk_object_new): use g_object_new_valist().
7692         (gtk_object_set): use g_object_set_valist().
7693         (gtk_object_get): use g_object_get_valist().
7694         
7695         * gtk/gtkcompat.h: define gtk_object_default_construct().
7696         
7697         * gtk/gtktypeutils.c (gtk_type_new): create constructed objects via
7698         g_object_new().
7699
7700         * gtk/*.c: removed gtk_object_class_add_signals() from class_init()
7701         fucntions, cleaned up method assignments (make sure your structures
7702         are setup properly before calling out). removed all GTK_CONSTRUCTED
7703         hacks ;)
7704
7705 Tue Dec 12 11:52:16 2000  Owen Taylor  <otaylor@redhat.com>
7706
7707         * gtk/gtkclist.c (gtk_clist_optimal_column_width): Fix 
7708         off-by-one error in checks. (Dave Lambert)
7709
7710 2000-12-12  Alexander Larsson  <alexl@redhat.com>
7711
7712         * gdk/linux-fb/gdkkeyboard-fb.c (xlate_close, raw_close):
7713         Don't free gdk_fb_keyboard twice.
7714
7715 Tue Dec 12 08:24:42 2000  Tim Janik  <timj@gtk.org>
7716
7717         * gtk/testgtk.c:
7718         (create_tooltips): 
7719         (create_statusbar): get rid of object_signal:: GtkObject argument uses,
7720         use GObject swapped_signal:: properties instead.
7721
7722         * gtk/gtkcellrenderertoggle.c: 
7723         * gtk/gtkcellrenderertextpixbuf.c: 
7724         * gtk/gtkcellrenderertext.c: 
7725         * gtk/gtkcellrendererpixbuf.c: 
7726         * gtk/gtkcellrenderer.c:
7727         * gtk/gtktreeviewcolumn.c: s/[sg]et_param/[sg]et_property/, fixed
7728         missing warnings for invalid property ids, install properties
7729         with g_object_class_install_property() now.
7730         
7731         * gtk/gtksignal.c:
7732         (gtk_signal_emit): let g_signal_emit_valist() collect the values for us.
7733         
7734 Wed Oct 25 14:17:43 2000  Owen Taylor  <otaylor@redhat.com>
7735         
7736         * gtk/gtkwidget.[ch] (gtk_widget_is_focus): Add a function
7737         to determine if a window is the focus widget within
7738         its toplevel.
7739
7740         * gtk/gtkcontainer.[ch]: Fix the return type of ::focus
7741         to be boolean.
7742
7743         * gtk/gtkcontainer.c (gtk_container_real_focus): Move handling 
7744         of the case where the container CAN_FOCUS to here instead
7745         of having it in each individual move-the-focus place.
7746
7747         * gtk/gtkcontainer.c: Rewrite handling of left-right and up-down
7748         focusing to be geometric in a much more obvious sense. Arrowing
7749         around is still non-intuitive because it isn't perfect and
7750         because entries, etc, grab the arrow keys, but it at least
7751         usually will do what you expect now.
7752         
7753         * gtk/gtknotebook.[ch]: Many cleanups. Moved docs inline in this
7754         file.
7755
7756         * gtk/gtknotebook.c: Change tabs to be a single item in
7757         the focus chain. Make movement of focus on tabs with arrow
7758         keys wrap around.
7759         
7760         * gtk/gtknotebook.c (gtk_notebook_find_child): Add
7761         CHECK_FIND_CHILD macro to give informative error messages
7762         instead of silent returns.
7763
7764         * gtk/gtknotebook.c (gtk_notebook_init): Set the RECEIVES_DEFAULT 
7765         flag since we handle GdkReturn on the tabs.
7766
7767         * gtk/gtknotebook.c (gtk_notebook_expose_tabs): Invalidate
7768         windows rather than sending expose events directly.
7769
7770         * gtk/gtknotebook.[ch] docs/Changes-2.0.txt: Move structure 
7771         definition for GtkNotebookPage into .c file, since it is private.
7772
7773         * gtk/testgtk.c (create_notebook): Add option for 
7774         testing borderless notebook.
7775
7776         * gtk/testgtk.c (page_switch): Removed egregious poking
7777         around in GTK+ internals.
7778
7779         * docs/widget-system.txt: Remove references to GTK_REDRAW_PENDING.
7780
7781         * gtk/gtkclist.[ch]: Remove key press handler, handle focusing
7782         properly through gtk_clist_focus. Make the title headers a
7783         single item in the tab-focus chain, and make left-right wrap
7784         around.
7785
7786         * gtk/gtkwindow.c (gtk_window_focus): Add a custom
7787         focus method so that wrapping around works properly.
7788
7789         * gtk/gtktreeview.c: Remove calls to gtk_container_set_focus_child() - 
7790         that is handled for the widget now. 
7791
7792 Mon Dec 11 11:41:12 2000  Owen Taylor  <otaylor@redhat.com>
7793
7794         * gtk/gtkinvisible.c (gtk_invisible_init): Flag invisible
7795         widgets as TOPLEVEL.
7796
7797         * gtk/gtkwidget.c (gtk_widget_queue_resize): Don't assume
7798         TOPLEVEL widgets are containers.
7799
7800         * gtk/gtkinvisible.h: Remove useless include.
7801
7802 2000-12-11  Havoc Pennington  <hp@redhat.com>
7803
7804         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): 
7805         Handle chopping off \r\n and 0x2029 in addition to \n before
7806         passing to PangoLayout
7807
7808         * gtk/gtkimcontextsimple.c
7809         (gtk_im_context_simple_get_preedit_string): 
7810         return an empty string if no match is pending
7811
7812         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): add
7813         assertion that the returned preedit string was sane
7814
7815         * gtk/gtktext*.[hc], gtk/testtext.c, gtk/testtextbuffer.c:
7816         s/gtk_text_iter_next_char/gtk_text_iter_forward_char/g;
7817         s/gtk_text_iter_prev_char/gtk_text_iter_backward_char/g;
7818
7819 Mon Dec 11 10:02:26 2000  Owen Taylor  <otaylor@redhat.com>
7820
7821         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_finalize): 
7822         Fix up finalizer to chain to its parent.
7823
7824 2000-12-11  Alexander Larsson  <alexl@redhat.com>
7825
7826         * docs/README.linux-fb (GDK_KEYBOARD_TYPE):
7827         Clearified the difference between the keyboard types. Wrote a note
7828         about the magic sysrq key to get out of raw mode.
7829
7830 2000-12-09  James Henstridge  <james@daa.com.au>
7831
7832         * gdk/linux-fb/gdkmouse-fb.c (GdkFBMouseDevice): add prot struct
7833         member to hold masks for detecting the start of a protocol packet.
7834         (mouse_devs): add packet start masks for ps2 and ms device types.
7835         Left the mask for fidmour blank, as I have no idea what it should
7836         be.
7837         (handle_mouse_io): skip bytes until we get to the start of a
7838         packet.  My Logitech mouse seems to be passing an extra NULL pad
7839         byte, and GPM does a similar thing here.
7840         (gdk_fb_mouse_ms_open): changed error message to not say psaux, as
7841         this is the ms mouse driver.
7842         (gdk_fb_mouse_ms_packet): fix up button handling, which was
7843         completely broken except for button1.  It was checking the wrong
7844         bit in the packet for the status of the right mouse button, and
7845         wrongly assuming right == button2 rather than 3.  I fixed that and
7846         also added support for middle button (button2).
7847
7848 2000-12-08  Havoc Pennington  <hp@redhat.com>
7849
7850         * gtk/gtktextbtree.c (gtk_text_btree_insert): fix breakage here
7851         that cause a segfault on text insertion
7852
7853         * gtk/gtktextchild.c (gtk_text_child_anchor_queue_resize): fix 
7854         warning
7855
7856         * gtk/gtktextiter.c (test_log_attrs): use
7857         _gtk_text_buffer_get_line_log_attrs to speed things up a bit
7858
7859         * gtk/gtktextbuffer.c (_gtk_text_buffer_get_line_log_attrs): 
7860         Get log attrs for a line, using a cache stored on the buffer
7861         
7862         * gtk/gtkcolorsel.h (GTK_COLOR_SELECTION_GET_CLASS): fix typo,
7863         reported by Jeff Franks
7864
7865 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
7866
7867         * gdk/linux-fb/gdkmouse-fb.c (gdk_fb_mouse_ms_open):
7868         /dev/ttyS0 -> /dev/mouse
7869
7870 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
7871
7872         * gdk/linux-fb/gdkfont-fb.c (gdk_fontset_load):
7873         Added dummy gdk_fontset_load.
7874
7875 2000-12-08  Alexander Larsson  <alexl@redhat.com>
7876
7877         * docs/README.linux-fb:
7878         * docs/Makefile.am:
7879         Initial GtkFB docs.
7880         
7881         * gdk/linux-fb/Makefile.am:
7882         Define GDK_DATA_PREFIX.
7883
7884         * gdk/linux-fb/gdkmain-fb.c:
7885         Fix typo.
7886         Change default display to /dev/fb0.
7887
7888         * gdk/linux-fb/gdkpango-fb.c:
7889         Add $(prefix)/share/fonts/ to font path.
7890         
7891 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
7892
7893         * gdk/linux-fb/gdkkeyboard-fb.c:
7894         New file containing the abstracted keyboard driver. Most code
7895         taken from gdkinput-ps2.c
7896
7897         * gdk/linux-fb/gdkinput-ps2.c:
7898         Removed file.
7899         
7900         * gdk/linux-fb/Makefile.am:
7901         Added gdkkeyboard-fb.c, removed gdkinput-ps2.c.
7902
7903         * gdk/linux-fb/gdkcolor-fb.c:
7904         display->fb was renamed to display->fb_fd.
7905
7906         * gdk/linux-fb/gdkcursor-fb.c:
7907         gdk_mouse_get_info -> gdk_fb_mouse_get_info
7908
7909         * gdk/linux-fb/gdkinput.c:
7910         Moved gdk_input_init here from gdkinput-ps2.c
7911
7912         * gdk/linux-fb/gdkmain-fb.c:
7913         display->fb was renamed to display->fb_fd.
7914         Now the tty and the console is opened here instead
7915         of in the keyboard driver. Also check GDK_VT to see what
7916         tty to open.
7917         Move gdk_beep () here from gdkinput-ps2.c
7918         gdk_mouse_get_info -> gdk_fb_mouse_get_info
7919
7920         * gdk/linux-fb/gdkmouse-fb.c:
7921         Add header.
7922         gdk_mouse_get_info -> gdk_fb_mouse_get_info
7923         Return correct keyboard modifiers.
7924         GDK_MOUSETYPE -> GDK_MOUSE_TYPE for consistancy
7925
7926         * gdk/linux-fb/gdkprivate-fb.h:
7927         Add tty and vt info to display.
7928         Add orignal modeinfo storage to display
7929         Update global functions
7930
7931         * gdk/linux-fb/gdkwindow-fb.c:
7932         Added gdk_fb_window_find_focus().
7933         gdk_mouse_get_info -> gdk_fb_mouse_get_info
7934
7935 2000-12-07  Havoc Pennington  <hp@pobox.com>
7936
7937         * gdk/x11/gdkkeys-x11.c (gdk_keymap_lookup_key): fix name of 
7938         function, noticed by Alex
7939
7940 2000-12-06  Elliot Lee  <sopwith@redhat.com>
7941
7942         * configure.in: Detect freetype properly
7943
7944         * modules/basic/Makefile.am, gdk/linux-fb/Makefile.am: Make use of
7945         above.
7946
7947 2000-12-06  Alexander Larsson  <alexl@redhat.com>
7948
7949         * gdk/linux-fb/Makefile.am:
7950         Add gdkmouse-fb.c
7951         
7952         * gdk/linux-fb/gdkmouse-fb.c:
7953         New file. Abstracted the mouse drivers a bit.
7954
7955         * gdk/linux-fb/gdkcursor-fb.c:
7956         The cursor hide/show functions was moved here from gdkinput-ps2.c.
7957
7958         * gdk/linux-fb/gdkinput-ps2.c:
7959         Removed old mouse handling code. Moved cursor handling code
7960         to gdkcursor-fb.c, moved gdk_fb_window_send_crossing_events() to
7961         gdkwindow-fb.c. gdk_input_get_mouseinfo was renamed to
7962         gdk_mouse_get_info.
7963
7964         * gdk/linux-fb/gdkmain-fb.c:
7965         Pass NULL pointers for x,y in gdk_mouse_get_info call.
7966
7967         * gdk/linux-fb/gdkprivate-fb.h:
7968         Removed public gdk_fb_find_common_ancestor, added and renamed
7969         functions for the new mouse handling code.
7970
7971         * gdk/linux-fb/gdkwindow-fb.c:
7972         Moved gdk_fb_window_send_crossing_events here. added global
7973         variable gdk_fb_window_containing_pointer. made
7974         gdk_fb_find_common_ancestor static. gdk_input_get_mouseinfo was
7975         renamed to gdk_mouse_get_info.
7976
7977 2000-12-06  Alexander Larsson  <alexl@redhat.com>
7978
7979         * gdk/linux-fb/gdkevents-fb.c:
7980         Update to match latest gmain/gsource changes.
7981
7982         * gdk/linux-fb/gdkinput-ps2.c:
7983         Bogus gdk_keymap_get_entries_for_keycode implementation so that
7984         it links. Will be implemented later.
7985
7986 2000-12-03  Havoc Pennington  <hp@pobox.com>
7987
7988         * gdk/Makefile.am: add gdkkeys.[hc]
7989
7990         * gdk/gdkkeys.h, gdk/gdkkeys.c: Move all the keyval stuff to these
7991         files from gdk.h, gdk.c; add GdkKeymap type and operations on it.
7992
7993         * acconfig.h, configure.in: add checks and command line options
7994         for XKB
7995
7996         * gdk/x11/gdkkeys-x11.c: Implement the above functions
7997         
7998         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Put the keycode
7999         and group in the key event
8000
8001         * gdk/gdkevents.h (struct _GdkEventKey): Add a hardware_keycode
8002         field with the low-level hardware key code, and a group
8003         field with the keyboard group
8004
8005         * gdk/x11/gdkprivate-x11.h: include config.h for HAVE_XKB,
8006         and declare a couple globals used for keymap handling
8007         
8008         * gtk/gtkimcontextsimple.c: Implement ISO 14755 input method,
8009         hold down Shift-Control and type a hex number to get a Unicode 
8010         character corresponding to the hex number
8011         (gtk_im_context_simple_get_preedit_string): Fix cursor position
8012         (return bytes not chars)
8013
8014 2000-12-05  Elliot Lee  <sopwith@redhat.com>
8015
8016         * gdk/gdkcolor.h: Make GdkColor specify element sizes
8017         to avoid waste on 64-bit platforms.
8018
8019 Tue Dec  5 15:49:31 2000  Owen Taylor  <otaylor@redhat.com>
8020
8021         * INSTALL: Fix link to PNG home, remove reference
8022         to fribidi.
8023
8024         * gdk/x11/gdkevents-x11.c: Fix up for new GMain API.
8025         
8026         * gdk/win32/gdkevents-win32.c: Fix up for new GMain API. (Not
8027         tested.)
8028
8029         * gtk/gtkcheckmenuitem.c: Permanently turn on
8030         always_show_toggle.
8031
8032         * gtk/gtkclist.c (gtk_clist_get_pixtext): Allow mask to 
8033         be NULL. (Vladimir Klebanov, #26545)
8034
8035         * gtk/gtkspinbutton.c (gtk_spin_button_insert_text): Fix 
8036         some signed/unsigned comparison problems. (#6510,
8037         David Kaelbling)
8038
8039         * gtk/gtkwidget.[ch] (gtk_widget_is_ancestor): Change
8040         return type to boolean (Oskar Liljeblad, #18648)
8041
8042 2000-12-05  Alexander Larsson  <alexl@redhat.com>
8043
8044         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_display_new):
8045         Remove bogus colormap setting.
8046
8047 2000-12-05  Alexander Larsson  <alexl@redhat.com>
8048
8049         * gdk/linux-fb/gdkcolor-fb.c:
8050         More complete colormap handling. Now GdkRGB work in 8 bpp modes.
8051
8052         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_image):
8053         Must set colormap.
8054         
8055 Tue Dec  5 13:17:53 GMT 2000  Tony Gale <gale@gtk.org>
8056
8057         * docs/tutorial/gtk-tut.sgml: DND updates
8058
8059 2000-12-05  Alexander Larsson  <alla@lysator.liu.se>
8060
8061         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
8062         Remove old debug g_warning().
8063         (gdk_fb_draw_drawable): The src argument can be either a wrapper
8064         or an implementation, just pass the implementation to draw_drawable_2.
8065         
8066         * gdk/linux-fb/gdkprivate-fb.h:
8067         Added GDK_IS_DRAWABLE_IMPL_FBDATA()
8068
8069         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
8070         clear and invalidate area when window is destroyed.
8071         (send_map_events): Remove old commented out code.
8072
8073 2000-12-05  Alexander Larsson  <alexl@redhat.com>
8074
8075         * gdk/linux-fb/gdkpango-fb.c:
8076         Use italic instead of oblique in font aliases.
8077         
8078         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic,
8079         _gdk_fb_gc_calc_state): Support GDK_XOR, add g_warning for
8080         other unsupported functions.
8081
8082 2000-12-04  Havoc Pennington  <hp@redhat.com>
8083
8084         * gtk/gtkpaned.c (gtk_paned_expose): fix this to be sane
8085
8086         * gtk/gtkvpaned.c (gtk_vpaned_expose): Add an expose handler
8087
8088         * gtk/gtkhpaned.c (gtk_hpaned_expose): Add an expose handler
8089
8090         * gtk/gtknotebook.c (gtk_notebook_draw_tab): put in a temporary 
8091         hack to avoid infinite loops (synthetic expose event) - 
8092         Owen has more appropriate fixes in a branch he'll check in later.
8093
8094         * gtk/gtktextiter.c (gtk_text_iter_ends_line): handle paragraph
8095         separator, CR, and CRLF as line ends
8096
8097         * gtk/gtktextbtree.c (gtk_text_btree_insert): on insertion, break
8098         into lines using pango_find_paragraph_boundary(); other bits of
8099         the widget are still going to be broken if the boundary isn't '\n'
8100         though
8101
8102 2000-12-04  Alexander Larsson  <alexl@redhat.com>
8103
8104         * gdk/linux-fb/gdkfont-fb.c (gdk_text_width): Divide size by 2, not
8105         multiply.
8106
8107         * gdk/linux-fb/gdkpango-fb.c:
8108         Copied some 26.6 scaling macros from pango to clean up the rounding.
8109         (pango_fb_font_get_glyph_info): Correct sign on x value.
8110
8111         * gdk/linux-fb/gdkprivate-fb.h:
8112         Removed unreferenced external functions.
8113
8114         * modules/linux-fb/Makefile.am: Use ` instead of '.
8115
8116         * modules/linux-fb/basic.c:
8117         Remove dead code. In particular the dummy lang engine which broke all
8118         pango layouts in GtkFB. Don't include tables-big.i anymore.
8119
8120         * modules/linux-fb/tables-big.i:
8121         Upgrade to latest version from pango. Left for reference, basic_ranges
8122         moved to basic.c.
8123         
8124 2000-12-04  Havoc Pennington  <hp@redhat.com>
8125
8126         Fix bugs Alex found:
8127         
8128         * gtk/gtktooltips.c (gtk_tooltips_force_window): nuke connection
8129         to "draw"
8130
8131         * gtk/gtkdnd.c (gtk_drag_highlight): nuke connection to "draw"
8132
8133         * gtk/gtkcolorsel.c (palette_new): nuke connection to "draw"
8134
8135         * gtk/gtklistitem.c (gtk_list_item_expose): Put the old _draw() 
8136         implementation in here, apparently the expose() implementation was
8137         dead code.
8138
8139 2000-12-04  Alexander Larsson  <alexl@redhat.com>
8140
8141         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
8142         Return positive descent.
8143
8144 2000-12-02  Havoc Pennington  <hp@pobox.com>
8145
8146         * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove "draw" virtual
8147         method and signal
8148         
8149         * gtk/gtkwidget.c (gtk_widget_draw): Now just queues a draw then
8150         calls gdk_window_process_updates() to push the exposes through
8151         (gtk_widget_class_init): No more draw signal, no
8152         gtk_widget_real_draw()  
8153         
8154         * gtk/gtkbin.c (gtk_bin_draw): remove
8155
8156         * gtk/gtkbox.c (gtk_box_draw): remove
8157
8158         * gtk/gtkbutton.c (gtk_button_draw): remove
8159
8160         * gtk/gtkcalendar.c (gtk_calendar_draw): remove
8161
8162         * gtk/gtkcheckbutton.c (gtk_check_button_draw): remove
8163
8164         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_draw): remove
8165
8166         * gtk/gtkclist.c (gtk_clist_draw): remove
8167
8168         * gtk/gtkentry.c (gtk_entry_draw): remove
8169
8170         * gtk/gtkeventbox.c (gtk_event_box_draw): remove
8171
8172         * gtk/gtkfixed.c (gtk_fixed_draw): remove
8173
8174         * gtk/gtkframe.c (gtk_frame_draw): remove
8175
8176         * gtk/gtkhandlebox.c (gtk_handle_box_draw): remove
8177
8178         * gtk/gtkhpaned.c (gtk_hpaned_draw): remove
8179
8180         * gtk/gtklayout.c (gtk_layout_draw): remove
8181
8182         * gtk/gtklist.c (gtk_list_draw): remove
8183
8184         * gtk/gtklistitem.c (gtk_list_item_draw): remove
8185
8186         * gtk/gtkmenu.c (gtk_menu_draw): remove
8187
8188         * gtk/gtkmenubar.c (gtk_menu_bar_draw): remove
8189
8190         * gtk/gtkmenuitem.c (gtk_menu_item_draw): remove
8191
8192         * gtk/gtknotebook.c (gtk_notebook_draw): remove
8193
8194         * gtk/gtkoptionmenu.c (gtk_option_menu_draw): remove
8195
8196         * gtk/gtkpacker.c (gtk_packer_draw): remove
8197
8198         * gtk/gtkrange.c (gtk_range_draw): remove
8199
8200         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_draw): remove
8201
8202         * gtk/gtkspinbutton.c (gtk_spin_button_draw): remove
8203
8204         * gtk/gtktable.c (gtk_table_draw): remove
8205
8206         * gtk/gtktearoffmenuitem.c (gtk_tearoff_menu_item_draw): remove
8207
8208         * gtk/gtktext.c (gtk_text_draw): remove
8209
8210         * gtk/gtktextview.c (gtk_text_view_draw): remove
8211
8212         * gtk/gtktogglebutton.c (gtk_toggle_button_draw): remove
8213
8214         * gtk/gtktoolbar.c (gtk_toolbar_draw): remove
8215
8216         * gtk/gtktree.c (gtk_tree_draw): remove
8217
8218         * gtk/gtktreeitem.c (gtk_tree_item_draw): remove
8219
8220         * gtk/gtktreeview.c (gtk_tree_view_draw): remove
8221
8222         * gtk/gtkviewport.c (gtk_viewport_draw): remove
8223
8224         * gtk/gtkvpaned.c (gtk_vpaned_draw): remove
8225
8226         * gtk/gtkvscale.c (gtk_vscale_draw): remove
8227
8228         * gtk/gtkwindow.c (gtk_window_draw): remove
8229
8230 2000-20-01  Anders Carlsson  <andersca@gnu.org>
8231
8232         * gtk/gtktogglebutton.c (gtk_toggle_button_draw): Fix bug when
8233         a GtkToggleButton is both insensitive and active, it was being
8234         drawn by the GtkButton draw handler which doesn't check the
8235         state. Now it's calling gtk_toggle_button_paint instead.
8236         
8237 2000-12-01  Havoc Pennington  <hp@redhat.com>
8238
8239         * gtk/gtktextdisplay.c (gtk_text_layout_draw): don't create
8240         dangling pointers to the appearance attributes from the 
8241         line display
8242
8243         * gdk/gdkdraw.c (gdk_drawable_get_image): allow negative
8244         width/height to mean "full width/height of drawable"
8245
8246         * gtk/gtktextview.h, gtk/gtktextview.c: Implement double/triple
8247         click to select word/line
8248         
8249         * gtk/gtktextiter.c (test_log_attrs): include paragraph delimiters 
8250         when getting log attrs. Get a slice, so that pixmaps and stuff
8251         are properly handled.
8252
8253         * gtk/gtktextbuffer.c (paste): Fix pasting to work properly if you
8254         paste into the selection (replaces selection now, previously
8255         crashed or added to selection). Reveals longstanding btree bug -
8256         select multiple lines, middle-click on the selection, boom. This
8257         isn't related to my changes though.
8258
8259         * gtk/gtkentry.c (gtk_entry_move_forward_word): Update to reflect
8260         PangoLogAttrs changes
8261         (gtk_entry_move_backward_word): ditto
8262
8263         * gtk/gtktextlayout.h, gtk/gtktextlayout.c: Make the iter motion
8264         functions return bool whether the iter moved onto a
8265         dereferenceable position.
8266  
8267         * gtk/gtktextview.h, gtk/gtktextview.c: Add a bunch of public
8268         functions for motion in terms of display lines.
8269
8270         * gtk/gtktextmark.c (gtk_text_mark_get_buffer): Add function to
8271         get the buffer a mark is inside
8272         
8273 2000-12-01  Alexander Larsson  <alexl@redhat.com>
8274
8275         * gdk/linux-fb/Makefile.am:
8276         * modules/linux-fb/Makefile.am:
8277         Freetype 2 final uses freetype-config
8278
8279         * gdk/linux-fb/gdkpango-fb.c:
8280         Upgrade to use Freetype 2 final.
8281         More flexible support for font aliases, this also fixes a bug with
8282         GtkFontSelector, as the aliases must be visible in the font/family list,
8283         or GtkFontSelector reads uninitialized memory.
8284
8285 2000-11-30 Hidetoshi Tajima  <tajima@eng.sun.com>
8286
8287         * modules/input/gtkimcontextxim.c (setup_im): Add NULL argument to
8288         XGetIMValues to properly terminate variable argument list, and do
8289         NULL return check for ic_values and xim_styles.
8290
8291         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset):
8292         Restore preedit state after XmbResetIC().
8293         
8294         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_get_ic):
8295         XvaCreateNestedList() should take XvaNestedList, but not
8296         XvaNestedList*.
8297
8298         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset,
8299         preedit_draw_callback, preedit_caret_callback): Match
8300         "preedit-changed" signal name to "preedit_changed" to be
8301         consistent to the spec.
8302
8303         * gtk/gtkimcontextsimple.c (check_table):
8304         Match "preedit-changed" to "preedit_changed" to be consistent
8305         to the spec.
8306
8307 Thu Nov 30 23:03:04 2000  Owen Taylor  <otaylor@redhat.com>
8308
8309         * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Properly handle
8310         gc->clip_region == NULL>
8311
8312 2000-11-30  Tor Lillqvist  <tml@iki.fi>
8313
8314         Changes by Hans Breuer:
8315         
8316         * gdk/win32/gdkwindow-win32.c (gdk_window_set_geometry_hints):
8317         Dont't use negative width and height as max_hints. This fixes
8318         Owen's recent testgtk changes for win32.
8319
8320         * gdk/win32/gdkgc-win32.c (gdk_win32_hdc_get,
8321         gdk_win32_hdc_release): These are exported and may be called with
8322         other drawable types than our GdkDrawableImplWin32 (?).
8323
8324         * gdk/gdkwindow.c: Backing store appears to work on Windows now,
8325         so always #define USE_BACKING_STORE.
8326
8327         * gtk/gtktextdisplay.c (render_layout_line): Use g_print instead
8328         of printf for debugging output.
8329
8330         * gtk/gtktextlayout.c (allocate_child_widgets): Ditto.
8331         
8332         * gtk/gtktextview.c (gtk_text_view_child_allocated): Ditto.
8333
8334         * gtk/gtkmain.h (GTKMAIN_C_VAR): Win32 fix for dllimport
8335         declaration.
8336
8337         * gtk/gtktexttypes.h: Ditto.
8338
8339         * gtk/gtklabel.c (gtk_label_set_markup_with_accel): Return a value
8340         (GDK_VoidSymbol) also if in case of arg check failure.
8341
8342         * gtk/gtkimcontextsimple.c
8343         (gtk_im_context_simple_get_preedit_string): Don't assign cursor
8344         position to the pointer, but to the variable it points to.
8345
8346         * gtk/makefile.msc.in (DEFINES): Define GTK_VERSION.
8347
8348         * gtk/gtk.def: Updates.
8349
8350 2000-11-29  Elliot Lee  <sopwith@redhat.com>
8351
8352         * gtk/gtkmodelsimple.c: Inherits from GTK_TYPE_OBJECT, not
8353         GTK_TYPE_TREE_MODEL.
8354
8355 2000-11-29  Alexander Larsson  <alexl@redhat.com>
8356
8357         * gdk/linux-fb/gdkfont-fb.c (gdk_font_from_description):
8358         Set the size of the font from the description.
8359         (gdk_text_width): Gross hack that calculates the width
8360         of text by text_length * size/2. This is necessary because
8361         GtkLabel does some ugly gtk_string_width call to calculate
8362         an good size.
8363         (linux-fb/gdkprivate-fb.h): Removed unused field FT_Face.
8364
8365 Wed Nov 29 13:39:19 GMT 2000  Tony Gale <gale@gtk.org>
8366
8367         * docs/tutorial/gtk-tut.sgml: DND updates
8368
8369 2000-11-29  Alexander Larsson  <alexl@redhat.com>
8370
8371         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_clear_area):
8372         If you pass width or height == 0 to gdk_window_clear_area they
8373         should be calculated from the window size.
8374
8375 2000-11-29  Alexander Larsson  <alexl@redhat.com>
8376
8377         * gdk/linux-fb/gdkinput-ps2.c (move_pointer): If there is
8378         a grab, but no grab-cursor, use the cursor from the grabbed
8379         window. (gdk_fb_window_send_crossing_events): Send normal
8380         enter/leave notifications if grab and owner_events == TRUE.
8381
8382 2000-11-29  Alexander Larsson  <alexl@redhat.com>
8383
8384         * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
8385         Do implicit button grabs, even if the window doesn't
8386         want the event.
8387         (gdk_fb_window_send_crossing_events): If there is a
8388         grab, only the grabbed window gets normal enter/leave
8389         notifications. On ungrab go from grabbed window to current.
8390         Don't send any notification to b when propagating from c -> b.
8391         If setting a grab on window, don't set prev_window.
8392         (handle_mouse_input): Send enter/leave events to the window the
8393         mouse is over, not the grabbed one.
8394         
8395 2000-11-28  Elliot Lee  <sopwith@redhat.com>
8396
8397         * gdk/gdkregion-generic.c: Zap warning.
8398         * modules/input/Makefile.am: Only build im-xim if USE_X11 is enabled
8399         * gtk/gtkrc.c: s/strcpy/memcpy/ to save a few nanoseconds.
8400
8401 2000-11-28  Alexander Larsson  <alla@lysator.liu.se>
8402
8403         * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
8404         The cursor should be hidden if it is part of either the
8405         source or destination region. Not only if it is in both.
8406         (gdk_window_set_transient_for): Silence warnings.
8407
8408 2000-11-28  Alexander Larsson  <alexl@redhat.com>
8409
8410         * gdk/linux-fb/mifillarc.c (miFillArcSliceSetup):
8411         The default mode in X is Pie Arcs, therefore that is
8412         what Gtk+ uses.
8413
8414 2000-11-28  Alexander Larsson  <alexl@redhat.com>
8415
8416         * gdk/linux-fb/gdkinput-ps2.c:
8417         Implement correct EnterNotify/LeaveNotify:
8418         (gdk_fb_window_send_crossing_events): New function that sends
8419         all GdkCrossingEvents from the last mouse-window to the specified
8420         destination.
8421         (gdk_fb_window_visibility_crossing): Removed function.
8422         (handle_mouse_input): Use gdk_fb_window_send_crossing_events()
8423         (send_button_event, gdk_fb_cursor_reset): Use gdk_window_at_pointer
8424         instead of gdk_window_get_pointer() for better readability.
8425
8426         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab,
8427         gdk_fb_pointer_ungrab): Use gdk_fb_window_send_crossing_events.
8428
8429         * gdk/linux-fb/gdkprivate-fb.h:
8430         removed gdk_fb_window_visibility_crossing, added
8431         gdk_fb_window_send_crossing_events and gdk_fb_find_common_ancestor.
8432
8433         gdk/linux-fb/gdkwindow-fb.c (gdk_fb_find_common_ancestor):
8434         New function that finds the least common ancestor of two windows.
8435         (gdk_window_show, gdk_window_hide):
8436         Use gdk_fb_window_send_crossing_events.
8437         (gdk_fb_window_move_resize): Send configure events to toplevel
8438         windows. Use gdk_fb_window_send_crossing_events.
8439
8440 2000-11-27  Havoc Pennington  <hp@redhat.com>
8441
8442         * gtk/gtkprivate.h (enum): Remove a trailing comma
8443
8444 2000-11-27  Federico Mena Quintero  <federico@helixcode.com>
8445
8446         * gtk/gtkspinbutton.c (gtk_spin_button_set_adjustment): Connect to
8447         the "changed" callback of the adjustment.  We need to redraw the
8448         spin button's arrows when the adjustment's range changes.
8449         (adjustment_changed_cb): Draw the arrows.
8450         (gtk_spin_button_value_changed): Draw the arrows.
8451
8452 2000-11-23  Alexander Larsson  <alexl@redhat.com>
8453
8454         * gdk/linux-fb/gdkselection-fb.c:
8455         Initial selection implementation.
8456
8457         * gtk/gtkselection.c:
8458         if GDK_WINDOWING_FB defined, include linux-fb/gdkfb.h and look up
8459         requestor in gtk_selection_request.
8460         
8461         * gdk/linux-fb/gdkfb.h, gdk/linux-fb/gdkglobals-fb.c:
8462         Added gdk_selection_property atom.
8463
8464         * gdk/linux-fb/gdkprivate-fb.h:
8465         Export _gdk_selection_window_destroyed.
8466         Removed mask_off_x/y from GdkCursorPrivateFB.
8467         Removed hbearing, added top, left to PangoFBGlyphInfo.
8468
8469         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
8470         Call _gdk_selection_window_destroyed
8471         (_gdk_windowing_window_init): Don't call gdk_cursor_new() before
8472         the root window has been created.
8473         (static_dx_hack, static_dy_hack, compare_draw_rects,
8474         gdk_fb_window_move_resize): Remove unnecessary sort of rectangles
8475         in region. They are already sorted. Instead just traverse them in
8476         reverse if draw_direction < 0.
8477         
8478         * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
8479         Double-clicks must be sent after the normal button_press.
8480         (gdk_fb_cursor_unhide): Remove usage of mask_off_x/y. Clean up.
8481         
8482         * gdk/linux-fb/gdkgeometry-fb.c (gdk_window_scroll):
8483         Pass _gdk_fb_screen_gc instead of NULL.
8484
8485         * gdk/linux-fb/gdkmain-fb.c (_gdk_windowing_init_check):
8486         Initialize gdk_selection_property.
8487         (gdk_event_make): Remove unused code.
8488
8489         * gdk/linux-fb/gdkcursor-fb.c:
8490         Make the pixmap for the cursor the same size as the mask. Also remove
8491         the mask_off_x/y fields in GdkCursorPrivateFB and combine
8492         _gdk_cursor_new_from_pixmap() and gdk_cursor_new_from_pixmap()
8493         Now the whole cursor is visible.
8494
8495         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
8496         Fix bug where xdest+height instead of ydest+height was used
8497         to calculate if the source and dest overlapped. This fixes the
8498         redraw bug when the main window in testgtk was scrolled when
8499         partially covered by a tall window.
8500         Copy rectangles in region in order depending on draw_direction.
8501         Also moved the draw_direction flipping of start_y and end_y into
8502         the gc functions, as this might not be what all of them want.
8503         (gdk_fb_draw_lines): Support dashed lines.
8504         (gdk_fb_draw_glyphs): Clean up glyph placement. Also fix positioning
8505         so that the text is positioned correctly (was 1 pixel high).
8506
8507         gdk/linux-fb/gdkgc-fb.c:
8508         Initialize cap_style to GTK_CAP_BUTT. This fixes a problem where
8509         all lines were drawn a pixel to short. Also checked the default of
8510         the rest of the values, and they're the same as X now.
8511
8512         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_glyph_info):
8513         Clean up pixel positioning of the glyphs. Just use bgy->top and
8514         bgy->left. Also used PANGO_PIXEL where appropriate and added 0.5
8515         to all divisions to get correct rounding behaviour.
8516
8517         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_draw_drawable_generic,
8518         gdk_fb_draw_drawable_memmove, gdk_fb_draw_drawable_aa_24):
8519         Moved start_y/end_y flip into draw_drawable implementations.
8520         Flip also x rendering when draw_direction < 0.
8521         Remove unneccesary multiply with draw_direction.
8522
8523 Wed Nov 22 14:11:19 GMT 2000  Tony Gale <gale@gtk.org>
8524
8525         * docs/tutorial/gtk-tut.sgml:
8526           - get rid of gtk_toggle_button_toggled FUD
8527           - start DND section - needs work - based on:
8528                 http://wolfpack.twu.net/docs/gtkdnd/
8529
8530 2000-11-22  Alexander Larsson  <alexl@redhat.com>
8531
8532         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
8533         Correct calculation of font metrics. Now GtkEntrys have sane
8534         size.
8535
8536 2000-11-22  Alexander Larsson  <alexl@redhat.com>
8537
8538         * gdk/gdktypes.h:
8539         Add new type GdkSpan
8540         
8541         * docs/reference/gdk/gdk-sections.txt,
8542         docs/reference/gdk/tmpl/regions.sgml, gdk/gdkregion-generic.c,
8543         gdk/gdkregion.h:
8544         Implement and document gdk_region_spans_intersect_foreach.
8545
8546         * gdk/linux-fb/Makefile.am, gdk/linux-fb/gdkrender-fb.c:
8547         Add new file gdkrender-fb.c which contains all core
8548         rendering code.
8549         Add gdk_fb_fill_rectangle_generic (old rectangle code) and
8550         gdk_fb_fill_rectangle_simple_16, gdk_fb_fill_rectangle_simple_32
8551         (optimized rectangle fillers).
8552
8553         * gdk/linux-fb/gdkdrawable-fb2.c:
8554         Move all rendering code to gdkrender-fb.c.
8555         Change from using GdkRectangles and GdkSegments for spans to GdkSpan.
8556         Use the new span intersection functions in gdk_fb_fill_spans.
8557         gdk_fb_draw_rectangle() clips filled rectangles and calls
8558         gc->fill_rectangle with the result.
8559         gdk_fb_fill_spans() gets extra argument "sorted".
8560
8561         * gdk/linux-fb/gdkevents-fb.c:
8562         Remove unused includes and defines.
8563         New function gdk_fb_get_time() to get correct time for events.
8564
8565         * gdk/linux-fb/gdkinput-ps2.c:
8566         Use gdk method of generating multiple-clicks (gdk_event_button_generate)
8567         Make sure to set the time of all events.
8568
8569         * gdk/linux-fb/gdkmain-fb.c:
8570         Use gdk_fb_get_time ().
8571
8572         * gdk/linux-fb/gdkprivate-fb.h:
8573         New virtual GC calls: fill_span & fill_rectangle.
8574         Export gdk_fb_get_time().
8575         gdk_fb_fill_spans() gets extra argument "sorted".
8576
8577         * gdk/linux-fb/mi*.c:
8578         Use GdkSpan instead of GdkRectangle.
8579         Pass correct sorted to gdk_fb_fill_spans. (sorted value taken
8580         from XFree 4 source)
8581         
8582 2000-11-22    <jrb@redhat.com>
8583
8584         * gtk/gtktreeview.c (gtk_tree_view_calc_size): It's amazing what
8585         reversing the order in an if statement will do.  Doing so managed
8586         to make the treemodelsort half work.  Other half will follow after
8587         I get the insert function fully fixed.
8588
8589 2000-11-21  Elliot Lee  <sopwith@redhat.com>
8590         * gtk/gtkmenushell.h: GdkEventButton->button can occupy significantly
8591         more than 2 bits. Besides, I need to implement an evil hack. :)
8592
8593 Tue Nov 21 14:17:51 GMT 2000  Tony Gale <gale@gtk.org>
8594
8595         * docs/tutorial/gtk-tut.sgml: minor corrections
8596
8597 2000-11-20  Jonathan Blandford <jrb@redhat.com>
8598         * gtk/gtktreemodelsort.h: Add convertion functions to let you
8599           convert to and from relative path's and iters.
8600
8601         * gtk/treestoretest.c: move to having a sorted/unsorted view.  Start
8602           testing sorting functions a bit better.  Currently broken -- will
8603           fix in morning.
8604
8605 2000-11-20  Havoc Pennington  <hp@redhat.com>
8606
8607         * gtk/gtkwidget.c: Documented a bunch of functions in here
8608         (gtk_widget_realize): Warn if you try to realize
8609         a widget with no parent that isn't a toplevel
8610         (gtk_widget_intersect): return a gboolean
8611
8612 2000-11-20  Havoc Pennington  <hp@redhat.com>
8613
8614         * gtk/gtktextview.c, gtk/gtktextlayout.c, gtk/gtktextchild.c,
8615         gtk/testtext.c: Semi-finish widget embedding. Need guffaw
8616         scrolling to be implemented in GDK to finish. Also, right now
8617         we just size_allocate all children on every layout change,
8618         which is pretty lame. Test commented out of testtext.c, 
8619         until it works better.
8620
8621 2000-11-20  Alexander Larsson  <alla@lysator.liu.se>
8622
8623         * gdk/linux-fb/gdkdrawable-fb2.c:
8624         Removed unused arguments from gdk_fb_drawable_get_pixel().
8625
8626         * gdk/linux-fb/gdkinput-ps2.c (handle_input_ps2):
8627         Renamed fidur specific mouse packet data in MouseDevice to
8628         generic. Used it in ps2 mouse handling code to avoid blocking
8629         reads.
8630
8631 Sat Nov 18 18:00:17 2000  Jonathan Blandford  <jrb@redhat.com>
8632
8633         * demos/gtk-demo/main.c: Changed to have the list become
8634         non-italic when the demo window is destroyed through an external
8635         event (like a close button).  Doing so found three bugs in the
8636         widget.
8637
8638         * demos/gtk-demo/*.c (do_*): Changed to return the toplevel window.
8639
8640         * gtk/gtkliststore.c (gtk_list_store_set_cell): emit "change" when
8641         we actually set the cell.
8642
8643         * gtk/gtktreestore.c (gtk_tree_store_set_cell): ditto
8644
8645         * gtk/gtktreeselection.c (gtk_tree_selection_real_select_node):
8646         free a leaked path.  Thanks memprof.
8647
8648 Sat Nov 18 11:58:17 2000  Owen Taylor  <otaylor@redhat.com>
8649
8650         * gdk/gdkrgb.c (gdk_rgb_allocate_images): Fix 
8651         off-by-one error when destroying allocated segments
8652         on failure. (Elliot)
8653
8654 Sat Nov 18 11:45:09 2000  Owen Taylor  <otaylor@redhat.com>
8655
8656         * gtk/gtkcalendar.c: Patch from ChiDeok Hwang to fix
8657         memleaks found by Evan Martin.
8658
8659 Fri Nov 17 20:14:20 2000  Owen Taylor  <otaylor@redhat.com>
8660
8661         * Released 1.3.2
8662         
8663         * NEWS: Updates for 1.3.2
8664
8665 2000-11-17  Tor Lillqvist  <tml@iki.fi>
8666
8667         * gdk/gdkevents.h: Add comment that GdkXEvent isn't only for XEvent,
8668         but in general for window system specific events.
8669
8670         * gtk/gtk.def
8671         * gtk/makefile.mingw.in
8672         * gtk/makefile.msc.in: Update.
8673         
8674         * gtk/gtktexttypes.h: Mark variables for export/import from DLL.
8675
8676 Thu Nov 16 16:11:39 2000  Owen Taylor  <otaylor@redhat.com>
8677
8678         * gtk/Makefile.am (EXTRA_DIST): Do not, in any circumstances,
8679         distribute gtk.immodules.
8680
8681         * gtk/Makefile.am (install-data-local): Don't install the
8682         gtk.immodules file created for the uninstalled modules;
8683         instead run gtk-query-immodules after install
8684
8685 Wed Nov 15 21:51:31 2000  Owen Taylor  <otaylor@redhat.com>
8686
8687         * modules/input/Makefile.am (im_xim_la_LDFLAGS): Point
8688         -rpath to the right install location.
8689
8690         * modules/input/Makefile.am (im_inuktitut_la_LDFLAGS): Remove
8691         -export-dynamic.
8692
8693         * gtk/gtkthemes.c (gtk_theme_engine_get): Set engine->name
8694         properly.
8695
8696 2000-11-15  Havoc Pennington  <hp@pobox.com>
8697
8698         * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): Apply
8699         patch from Mikael Hermansson to temporarily stop blinking while
8700         the user is using the keyboard to type or navigate. 
8701
8702         Also, when blinking, stay on for longer than we stay off. Also,
8703         return from start_cursor_blink if !cursor_visible, to save
8704         checking that flag all over the place before we call
8705         start_cursor_blink.
8706
8707 Thu Nov 16 01:25:51 2000  Robert Brady  <robert@suse.co.uk>
8708
8709         * gtk/gtkrc.*: Remove the locale-specific gtkrc's, as they
8710         only contain a "fontset" line, which is now ignored.
8711
8712         * gtk/gtkentry.c (gtk_entry_button_release): Make 
8713         double-click-to-select-word work.
8714         
8715 Wed Nov 15 20:16:54 2000  Owen Taylor  <otaylor@redhat.com>
8716
8717         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): 
8718         Don't move back one char when we are actually at the end of the 
8719         paragraph.
8720
8721 2000-11-15  Robert Brady  <robert@suse.co.uk>
8722
8723         * modules/input/iminuktitut.c (inuktitut_compose_seqs): 
8724         'o' < 'p'.
8725         
8726         * gtk/gtkmain.c: s/CODSET/CODESET/, include <libintl.h> for
8727         bind_textdomain_codeset.
8728
8729         (gtk_init_check): Make the warning about translating default:LTR
8730         sterner.
8731         
8732 Wed Nov 15 18:39:40 2000  Owen Taylor  <otaylor@redhat.com>
8733
8734         * **/Makefile.am : remove unecessary rules for win32-specific
8735         config-substituted targets. If you want these rules, use
8736         --enable-maintainer-mode (called automatically by autogen.sh).
8737         Stops a lot of unneccessary make-time warnings.
8738
8739         * gtk/gtktext{layout,display}.c: Factor in total width as
8740         well as screen when figuring alignment for word-wrap as well as
8741         no wrap; this is necessary to handle lines that cannot be wrapped
8742         at all.
8743
8744 2000-11-15  Havoc Pennington  <hp@redhat.com>
8745
8746         * gtk/testtext.c: Implement essential color cycling feature
8747
8748 2000-11-15  Havoc Pennington  <hp@redhat.com>
8749
8750         * gtk/gtktextview.c (changed_handler): Invalidate the side windows
8751         when we invalidate the main window.
8752
8753         * gtk/testtext.c (create_view): Get rid of text_changed_callback,
8754         GtkTextView will now invalidate the side windows for us when text
8755         changes.
8756
8757 Wed Nov 15 16:02:20 2000  Owen Taylor  <otaylor@redhat.com>
8758
8759         * gtk/gtktextview.c (changed_handler): Call scroll_calc_now()
8760         unconditionally, since we may need to update the horizontal
8761         scrollbars even if the height didn't change.
8762
8763         * gtk/gtktextlayout.c (add_preedit_attrs): Always get
8764         the extra attrs, since some of them affect size.
8765
8766         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Factor in
8767         x_offset correctly.
8768
8769 2000-11-15  Havoc Pennington  <hp@redhat.com>
8770
8771         * gtk/gtktextlayout.c (set_para_values): If indent is negative,
8772         don't move the first line out into the margin, instead move the
8773         whole paragraph in order to make space for the first line within 
8774         the margin
8775
8776 2000-11-15  Havoc Pennington  <hp@redhat.com>
8777
8778         * gtk/gtktextview.c (changed_handler): offset redraw rect by
8779         xoffset in addition to yoffset, so horizontal scrolling doesn't
8780         break redraws
8781
8782 2000-11-15  Havoc Pennington  <hp@redhat.com>
8783
8784         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Remove extra pixel
8785         from the cursor
8786         (render_layout_line): fix reversed test that caused weird
8787         underlines to get drawn
8788
8789 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
8790
8791         * gdk/linux-fb/gdkprivate-fb.h:
8792         Fix debug macros.
8793         
8794 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
8795
8796         * gdk/linux-fb/gdkprivate-fb.h:
8797         Added virtual functions set_pixel, get_color,
8798         fill_span and draw_drawable to the GC.
8799         Added global _gdk_fb_screen_gc to use instead of
8800         NULL when drawing to the screen.
8801         Added _gdk_fb_gc_calc_state() prototype.
8802
8803         * gdk/linux-fb/gdkgc-fb.c:
8804         Call _gdk_fb_gc_calc_state() on any gc state change.
8805
8806         * gdk/linux-fb/gdkglobals-fb.c:
8807         Add _gdk_fb_screen_gc
8808                 
8809         * gdk/linux-fb/gdkdrawable-fb2.c:
8810         _gdk_fb_gc_calc_state() calculates best functions
8811         for the GC state and depth.
8812         Moved bpp specialized code to separate functions.
8813         Added optimized 24 bpp AA draw_drawable.
8814
8815         * gdk/linux-fb/gdkevents-fb.c:
8816         Silence gcc warning.
8817
8818         * gdk/linux-fb/gdkimage-fb.c:
8819         Use _gdk_fb_screen_gc
8820
8821         * gdk/linux-fb/gdkwindow-fb.c:
8822         Init and use _gdk_fb_screen_gc
8823
8824         * gdk/linux-fb/mitypes.h:
8825         Remove unused types.
8826
8827 2000-11-14  Havoc Pennington  <hp@pobox.com>
8828
8829         * gtk/gtktextlayout.c (add_cursor): use PANGO_PIXELS() to convert
8830         to pixels
8831
8832 2000-11-14  Havoc Pennington  <hp@pobox.com>
8833
8834         * gtk/testtextbuffer.c (fill_buffer): change "offset" to "rise"
8835
8836         * gtk/gtktexttypes.h (GTK_TEXT_UNKNOWN_CHAR): Add macro for
8837         unknown char, no real reason we were using a variable. 
8838         Remove gtk_text_unknown_char variable. Fix all the text widget
8839         files accordingly.
8840
8841         * gtk/gtktexttypes.c: Change "unknown character" to 0xFFFC, 
8842         since the Unicode spec seems to prefer that character for our
8843         purposes.
8844
8845 Wed Nov 15 02:18:01 2000  Robert Brady  <robert@suse.co.uk>
8846
8847         * gtk/gtkrc.c (gtk_rc_get_im_module_file): The return 
8848         value of g_getenv() isn't freeable, so g_strdup it.
8849
8850         * modules/input/inuktitut.c: Inuktitut input method.
8851
8852         * modules/input/Makefile.am: Build this.
8853         
8854 2000-11-14  Elliot Lee  <sopwith@redhat.com>
8855
8856         * gtk/Makefile.am: Install gtk.immodules, needed for operation
8857         of gtk programs.
8858
8859 Tue Nov 14 20:13:06 2000  Owen Taylor  <otaylor@redhat.com>
8860
8861         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): Fix
8862         reversed > that was causing Home to go to end of previous line.
8863
8864         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_filter_keypress): Ignore
8865         modified-keypresses (leave for bindings.)
8866
8867         * modules/input/Makefile.am: Remove useless -export-dynamic
8868         from module LDFLAGS.
8869
8870 2000-11-14  Havoc Pennington  <hp@redhat.com>
8871
8872         * gdk/gdkpango.c (gdk_draw_layout_line): Draw underlines one pixel
8873         higher.
8874
8875         * gtk/gtktextdisplay.c (render_layout_line): Take rise into
8876         account. Also, render rise, underline, background, etc. for
8877         pixbufs as well as text. Also, draw underlines one pixel higher.
8878
8879         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): Add a
8880         PangoAttribute for the rise, so it gets drawn properly. Also,
8881         add the GtkTextAppearance attribute for pixbuf/widget segments
8882         as well; we should go ahead and have rise, underline, background,
8883         stipple work for those
8884
8885         * gtk/gtktexttag.c: Rename "offset" property to "rise" to match
8886         Pango
8887
8888 2000-11-15  Tor Lillqvist  <tml@iki.fi>
8889
8890         * gtk/makefile.{mingw,msc}.in (gtk_OBJECTS): Add new objects.
8891
8892         * gtk/gtk.def: Update.
8893
8894         * gtk/gtkrc.c: Can't check for G_OS_WIN32 until glib.h has been
8895         included.
8896         (gtk_rc_get_im_module_file): Use run-time installation directory
8897         on Win32.
8898
8899         * gdk/win32/rc/gdk.rc: Remove.
8900         * gdk/win32/rc/gdk.rc.in: New file.
8901         * gdk/win32/rc/Makefile.am: New file
8902         * gdk/win32/Makefile.am: Corresponding changes.
8903
8904         * gtk/gtk.rc: Remove.
8905         * gtk/gtk-win32.rc.in: New file.
8906         * gtk/Makefile.am: Corresponding changes.
8907
8908         * configure.in: Corresponding changes.
8909
8910         * gtk/gtkcompat.h.win32: Remove, useless. A distribution already
8911         has a built gtkcompat.h. Developers using CVS code on Win32 can
8912         hand-edit it from gtkcompat.h.in.
8913
8914         * gtk/makefile.{mingw,msc}.in: Correspondingly don't try to make
8915         gtkcompat.h from gtkcompat.h.win32.
8916
8917 2000-11-14  Havoc Pennington  <hp@redhat.com>
8918
8919         * gtk/gtktextview.c (gtk_text_view_drag_motion): Fix drag-and-drop
8920         to default to GDK_ACTION_MOVE if the drag is within a single
8921         widget. Defaults to GDK_ACTION_COPY between widgets.
8922
8923 Mon Nov 13 14:43:48 2000  Owen Taylor  <otaylor@redhat.com>
8924
8925         * demos/Makefile.am (test-inline-pixbufs.h): Fix srcdir != builddir
8926
8927         * gtk/Makefile.am (INCLUDES): Add -I$(builddir)/gtk
8928
8929         * gtk/stock-icons/Makefile.am (gtkstockpixbufs.h): Handles
8930         srcdir != builddir
8931
8932         * modules/input/Makefile.am (INCLUDES): add $(top_srcdir)/gdk
8933
8934         * configure.in (GTK_VERSION): Up to 1.3.2
8935
8936         * modules/input/Makefile.am (im_xim_la_SOURCES): Add 
8937         gtkimcontextxim.h
8938
8939         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): Add
8940         missing doc comment.
8941
8942 2000-11-14  Alexander Larsson  <alexl@redhat.com>
8943
8944         * modules/linux-fb/basic.c:
8945         Use the glib iconv wrappers.
8946
8947 2000-11-13  Havoc Pennington  <hp@pobox.com>
8948
8949         * demos/gtk-demo/textview.c: spiff up the demo a bit; reveals
8950         still more bugs.
8951
8952         * gtk/gtktextview.c (gtk_text_view_value_changed): don't try to
8953         scroll the GdkWindows before realization.
8954
8955 2000-11-13  Havoc Pennington  <hp@redhat.com>
8956
8957         * gtk/gtktextdisplay.c (gtk_text_render_state_update): fix bug 
8958         where GC didn't always get updated properly
8959
8960         * demos/gtk-demo/textview.c (create_tags): Use subattributes
8961         of fonts instead of setting the entire font
8962
8963         * gtk/testtext.c (fill_example_buffer): Use "size" instead of
8964         setting entire font
8965
8966         * gtk/gtkdialog.c (gtk_dialog_add_button): Fix some warnings
8967
8968         * gtk/gtktexttag.h, gtk/gtktexttag.c: Explode font_desc into 
8969         a bunch of individually-settable font attributes. You can still 
8970         use the "font" and "font_desc" args, they just set all the font
8971         attributes at once.
8972
8973 2000-11-13 Elliot Lee <sopwith@redhat.com>
8974
8975         * gdk/gdk.h: Add a couple of missing G_GNUC_CONST's.
8976
8977 Mon Nov 13 14:29:32 2000  Jonathan Blandford  <jrb@redhat.com>
8978
8979         * gtk/gtktreemodel.c (gtk_tree_path_copy): confirm path != NULL
8980         * gtk/gtktreemodel.c (gtk_tree_path_free): ditto
8981
8982         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): make
8983         work better.
8984
8985 2000-11-13  Havoc Pennington  <hp@redhat.com>
8986
8987         * gtk/gtkimmodule.c (gtk_im_module_init): Free the filename of 
8988         the module file.
8989
8990         * gtk/gtktexttag.c (gtk_text_attributes_copy): fix memory leak of
8991         dest->language
8992
8993         * gtk/testtext.c: Test pixels above/below/inside paragraphs
8994         settings
8995
8996         * gtk/gtktextview.c: Implement object args and setters/getters for
8997         all the aspects of the GtkTextAttributes that are not set from
8998         GtkWidget attributes. This is spacing, justification, margins,
8999         etc.
9000
9001         (gtk_text_view_set_arg)
9002         (gtk_text_view_get_arg): implement get/set for editable, wrap mode
9003         args
9004         (gtk_text_view_class_init): Add args for justify, left_margin,
9005         right_margin, indent, and tabs
9006         
9007
9008         * gtk/gtktextlayout.c (set_para_values): fix to display indent
9009         attribute properly
9010
9011         * gtk/gtktexttag.c: Remove left_wrapped_line_margin attribute, 
9012         replace with indent attribute
9013
9014         * gtk/gtktextlayout.c (set_para_values): multiply indent by
9015         PANGO_SCALE
9016
9017         * gtk/gtktextdisplay.c (render_para): Use PangoLayoutIter,
9018         rearranging code to do that
9019         (gtk_text_layout_draw): Pass in the y for the whole LineDisplay,
9020         i.e. don't subtract the top_margin first, just to keep
9021         all margin-futzing in one place.
9022
9023         * gdk/gdkpango.c (gdk_draw_layout): Use PangoLayoutIter
9024
9025         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Remove
9026         special case of last line, Pango now handles this itself.
9027         (gtk_text_layout_get_iter_at_pixel): Fix incorrect clamp of the 
9028         Y coordinate
9029         (gtk_text_layout_move_iter_to_x): port to use PangoLayoutIter
9030         (find_display_line_above): wasn't moving the byte index as it
9031         iterated over lines, so always returned byte 0. Also, port to use
9032         PangoLayoutIter.
9033         (find_display_line_below): same problem as
9034         find_display_line_above. Also, port to use PangoLayoutIter.
9035
9036 2000-11-13  Alexander Larsson  <alexl@redhat.com>
9037
9038         * gdk/linux-fb/*.[ch]:
9039         Massive reindent to gtk+ standard. My hands hurt.
9040
9041         * gdk/linux-fb/gdkcolor-fb.c:
9042         Move GdkColorPrivateFB from inherited to windowing_data
9043
9044         * gdk/linux-fb/gdkcursor-fb.c:
9045         _gdk_cursor_new_from_pixmap made static
9046
9047         * gdk/linux-fb/gdkdnd-fb.c:
9048         GdkDragContextPrivate moved to windowing_data
9049
9050         * gdk/linux-fb/gdkdrawable-fb2.c:
9051         Removed endian.h, use glib endianness macros instead
9052         Some cleanups in the usage of GDK_DRAWABLE_FBDATA
9053         and GDK_DRAWABLE_IMPL_FBDATA
9054
9055         * gdk/linux-fb/gdkfont-fb.c:
9056         Add empty gdk_font_load(). Needed for linking of Gtk+.
9057
9058         * gdk/linux-fb/gdkimage-fb.c:
9059         Removed endian.h, use glib endianness macros instead
9060         Moved GdkImagePrivateFB to windowing_data
9061         gdk_image_new_bitmap didn't always allocate enough
9062         memory.
9063
9064         * gdk/linux-fb/gdkinput-ps2.c:
9065         Added semi-working support for MS serial mice.
9066
9067         * gdk/linux-fb/gdkprivate-fb.h:
9068         s/GdkWindowPrivate/GdkWindowObject/
9069         Removed GdkWindowPrivate typedef
9070         s/GDK_DRAWABLE_P/GDK_DRAWABLE_FBDATA/
9071         Removed GDK_DRAWABLE_P
9072         Move GdkColorPrivateFB from inherited to windowing_data
9073         Moved GdkImagePrivateFB to windowing_data
9074
9075         * gdk/linux-fb/gdkvisual-fb.c:
9076         Removed some unused debug code.
9077
9078         * gdk/linux-fb/gdkwindow-fb.c:
9079         Use stock cursors instead of including X headers.
9080         s/GdkWindowPrivate/GdkWindowObject/
9081
9082         * gdk/linux-fb/mitypes.h:
9083         Removed unused types.
9084
9085         * modules/linux-fb/basic.c:
9086         Use the pango fribidi wrappers.
9087
9088 2000-11-13  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
9089
9090         * gdk/linux-fb/gdkcolor-fb.c, gdk/nanox/gdkmain-nanox.c,
9091         gdk/win32/gdkcolor-win32.c, gdk/win32/gdkwin32id.c,
9092         gdk/x11/gdkcolor-x11.c, gdk/x11/gdkvisual-x11.c, gdk/x11/gdkxid.c,
9093         gtk/gtkgc.c, gtk/gtkrc.c, gtk/gtktext.c: GCompareFunc ->
9094         GEqualFunc where applicable.
9095         
9096         * gdk/linux-fb/gdkpango-fb.c: pango_font_description_compare ->
9097         pango_font_description_equal as changed in pango.
9098         
9099         * gdk/nanox/gdkmain-nanox.c: gdk_xid_compare -> gdk_xid_equal.
9100
9101         * gdk/win32/gdkcolor-win32.c: gdk_colormap_cmp -> gdk_colormap_equal.
9102
9103         * gdk/win32/gdkwin32id.c: gdk_handle_compare -> gdk_handle_equal.
9104
9105         * gdk/x11/gdkcolor-x11.c: gdk_colormap_cmp -> gdk_colormap_equal.
9106
9107         * gdk/x11/gdkvisual-x11.c: gdk_visual_compare -> gdk_visual_equal.
9108
9109         * gdk/x11/gdkxid.c: gdk_xid_compare -> gdk_xid_equal.
9110
9111         * gtk/gtkgc.c: gtk_gc_key_compare -> gtk_gc_key_equal and
9112         gtk_gc_drawable_compare -> gtk_gc_drawable_equal.
9113
9114         * gtk/gtkrc.c: gtk_rc_style_compare -> gtk_rc_style_equal and
9115         gtk_rc_styles_compare -> gtk_rc_styles_equal.
9116
9117 2000-11-12  Havoc Pennington  <hp@pobox.com>
9118
9119         * demos/gtk-demo/Makefile.am (democodedir): change demo install
9120         dir to datadir/gtk+-2.0/demo
9121
9122         * demos/gtk-demo/textview.c: Text widget demo; reveals all 
9123         sorts of text widget and Pango font bugs. Urgh.
9124
9125         * demos/gtk-demo/Makefile.am (demos): Add textview.c
9126
9127         * demos/gtk-demo/main.c (create_tree): Add instructions at top of
9128         tree that you should double click to see the demo. Fix 
9129         types of variables to reflect changed return values from 
9130         GtkTreeStore and GtkTreeViewColumn constructors.
9131
9132         * gtk/gtktextbuffer.c (gtk_text_buffer_new): ref/sink the
9133         newly-created buffer to prepare for GObject semantics
9134
9135         * gtk/testtext.c: don't leak the buffer with GObject semantics
9136
9137         * gtk/testtextbuffer.c: ditto
9138         
9139 2000-11-12  Havoc Pennington  <hp@pobox.com>
9140
9141         Rename this testgtk to gtk-demo to avoid confusion, and 
9142         install it so people can use it as a supplement to 
9143         the documentation.
9144         
9145         * demos/gtk-demo: Moved from demos/testgtk
9146
9147         * demos/testgtk: Removed
9148
9149         * configure.in: make Makefile in gtk-demo
9150         
9151         * demos/gtk-demo/Makefile.am: Install sample source to 
9152         datadir/gtk-demo (maybe there's a better place?), and 
9153         rename the binary to gtk-demo
9154         
9155         * demos/gtk-demo/main.c (load_file): Load installed sample
9156         source if source isn't found in pwd.
9157
9158 2000-11-09  Havoc Pennington  <hp@pobox.com>
9159
9160         * gtk/gtkentry.c (gtk_entry_class_init): Add an "invisible_char" 
9161         argument to set the char displayed when visibility == FALSE
9162         (gtk_entry_create_layout): If !entry->visible, replace 
9163         all chars with the "invisible char"
9164
9165         * gtk/testgtk.c: Test the invisible_char deal
9166         
9167 Mon Nov 13 02:16:33 2000  Robert Brady  <robert@suse.co.uk>
9168
9169         * gtk/gtkstyle.c (gtk_style_init): Fall back to "fixed" if we
9170         can't get a native font in the right encoding.
9171
9172 Mon Nov 13 00:09:29 2000  Robert Brady  <robert@suse.co.uk>
9173
9174         * configure.in: Chinese .pos have been renamed to zh_CN and zh_TW
9175         respectively.
9176
9177 Sun Nov 12 19:11:42 2000  Owen Taylor  <otaylor@redhat.com>
9178
9179         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_next_line):
9180         Fix warning when moving between paragraphs.
9181
9182         * gtk/gtkentry.[ch]: Change move => move_cursor, 
9183         delete => delete_from_cursor, insert => insert_at_cursor
9184
9185 Sun Nov 12 22:52:51 2000  Robert Brady  <robert@suse.co.uk>
9186
9187         * modules/input/imviqr.c: A vietnamese VIQR-based input method.
9188
9189         * modules/input/imthai-broken.c: A Thai input method for use if
9190         Thai keys are really generating Latin1 keysyms.
9191
9192         * modules/input/Makefile.am: Build these.
9193
9194 Sun Nov 12 22:15:35 2000  Robert Brady  <robert@suse.co.uk>
9195
9196         * gtk/gtkfileselection.c, gdk/win32/gdkfont-win32.c: 
9197         g_filename_{to,from}_utf8 now takes an extra parameter.
9198
9199         * gtk/gtkcalendar.c (gtk_calendar_init): Convert output of
9200         strftime into UTF-8.
9201
9202         (column_from_x, gtk_calendar_paint_day_names): Support RTL
9203         calendars.
9204
9205         (gtk_calendar_paint_day_names): Draw day names in the right 
9206         place.
9207         
9208 Sun Nov 12 14:10:09 2000  Owen Taylor  <otaylor@redhat.com>
9209
9210         * gdk/x11/gdkselection-x11.c (gdk_utf8_to_compound_text): Fix
9211         problem with using result of g_get_charset() backwards -
9212         pointed out by Mikael Hermansson <mikeh@bahnhof.se>.
9213
9214         * gtk/gtkwindow.c (gtk_window_compute_hints): Support
9215         negative min_width/height and max_width/height to
9216         mean "requisition"; this allows setting a window
9217         to be user-resizable in only one direction easily.
9218
9219         * gtk/testgtk.c (create_main_window): Remove hard-coded
9220         usize - set a default size in the vertical direction.
9221
9222 Sun Nov 12 13:33:01 2000  Owen Taylor  <otaylor@redhat.com>
9223
9224         * gtk/gtkrange.c: Add some missing casts. Support 
9225         2 and 3 button clicks on the arrows to mean 
9226         "move by pages" and "jump to end". (Like gtkspinbutton)
9227
9228 2000-11-12 Hans Breuer <Hans@Breuer.Org>
9229
9230         * gdk/win32/makefile.msc : reflect build module changes
9231
9232         * gdk/win32/gdkcursor-win32.c : can't cast to impl type directly
9233         from GdkPixmap*, cast implementation member instead.
9234
9235         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_drawable) : The
9236         passed in drawable is of type GdkDrawableImplWin32, the GdkPixmap *src 
9237         maybe either GdkDrawable or GdkDrawableImpl. Corrected all casts, add
9238         more Gdi functions return value checking. 
9239         (gdk_win32_draw_image) : use IMAGE_PRIVATE_DATA to get on the
9240         GdkImagePrivateWin32 *.
9241
9242         * gdk/win32/gdkevents-win32.c : Disable the SetCapture call to make
9243         menus useable again. Add #pragma message to keep reminded on this issue.
9244         (gdk_event_translate) : don't generate GDK_EXPOSE events for InputOnly
9245         windows. This allows to enable backing store on Win32!
9246
9247         * gdk/win32/gdkimage-win32.c (_gdk_win32_get_image) : the passed
9248         in drawable is of impl type. Correct specific type checks appropriate.
9249  
9250         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_create_from_data) : check 
9251         GDK_WINDOW_DESTROYED before allocating new resources.
9252
9253         * gdk/win32/gdkselection-win32.c : Handle GDK_WINDOW_DESTROYED case
9254
9255         * gdk/win32/gdkwindow-win32.c : more Gdi return value checking,
9256         (gdk_window_foreign_new) initialize parent handle.
9257         (gdk_window_destroy_notify) add GDK_IS_WINDOW check
9258
9259         * gdk/win32/gdkgeometry-win32.c (_gdk_window_move_resize_child) :
9260         Let the GDI invalidate the window on MoveWindow call to fix scrolling
9261         problems (e.g. main buttons in testgtk). 
9262
9263 Sat Nov 11 23:07:30 2000  Owen Taylor  <otaylor@redhat.com>
9264
9265         * gtk/gtkentry.c (gtk_entry_key_press): Call 
9266         gtk_widget_activate for GDK_Return.
9267
9268         * gtk/gtkentry.c (gtk_entry_preedit_changed_cb): Fix handling
9269         of preedit cursor position.
9270
9271 Sun Nov  5 04:24:53 2000  Owen Taylor  <otaylor@redhat.com>
9272
9273         * gtk/gtkcellrenderertextpixbuf.c: Make parent_class
9274         static.
9275
9276 Tue Sep 19 10:54:22 2000  Owen Taylor  <otaylor@redhat.com>
9277
9278         * modules/input/{gtkimcontextxim.[ch],imxim.c}: Rip
9279         out support for multiple locales; that simple doesn't
9280         work reliably with current Xlib
9281
9282         * gtk/gtkimcontext*.[ch] gtk/gtkimmulticontext.[ch]
9283         gtk/gtktextlayout.[ch] gtk/gtktextview.c gtk/gtkentry.c: 
9284         Add support for positioning the cursor within the preedit string.
9285
9286 Mon Sep 18 23:56:32 2000  Owen Taylor  <otaylor@redhat.com>
9287
9288         * modules/input/{imxim.c,gtkimcontextxim.[ch]}: Start
9289         at XIM input method module.
9290
9291         * gtk/gtktextview.c: Check for bindings after passing
9292         events to im context filter.
9293
9294 Mon Sep 18 11:50:51 2000  Owen Taylor  <otaylor@redhat.com>
9295
9296         * gtk/gtktextlayout.c (add_preedit_attrs): Handle
9297         empty attribute lists properly.
9298
9299 Sun Sep 17 10:08:16 2000  Owen Taylor  <otaylor@redhat.com>
9300
9301         * gtk/queryimmodules.c (main): Return non-zero exit
9302         status if errors were encountered querying any
9303         modules.
9304
9305         * modules/input/Makefile.am (moduledir): remove
9306         leftover bin program target.
9307
9308         * docs/make-todo: Fix typo in error message.
9309
9310 Sat Sep 16 14:04:30 2000  Owen Taylor  <otaylor@redhat.com>
9311
9312         * configure.in: Add modules/input/Makefile
9313
9314 Sat Sep 16 14:01:52 2000  Owen Taylor  <otaylor@redhat.com>
9315
9316         * gtk/gtk.h: include gtkmodule.h gtkoldeditable.h,
9317         don't include gtkthemes.h.
9318
9319         * gtk/testgtk.c gtk/testtext.c: Set environment variables
9320         to point
9321
9322         * gtk/Makefile.am: Add new .c and .h files, build 
9323         gtk-query-immodules and use it to create a gtk.immodules
9324         file for use of test programs.
9325
9326         * gtk/gtkpreview.c: remove extra blank line.
9327
9328 Sat Sep 16 13:21:04 2000  Owen Taylor  <otaylor@redhat.com>
9329
9330         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_add_table): 
9331         Add the ability to add extra tables beyond the default
9332         one, and also the ability to have compose sequences 
9333         that are prefixes of other compose sequences. 
9334
9335         * gtk/gtkimcontextsimple.c: Export a preedit string which
9336         consists of possible candidates for keystrokes that have
9337         been entered but not yet committed.
9338
9339         * gtk/gtkimcontext.[ch] gtk/immulticontext.[ch]
9340         gtk/gtkimcontextsimple.[ch]: add gtk_im_context_reset()
9341
9342         * gtk/gtkmulticontext.[ch] (gtk_im_multicontext_append_menuitems): 
9343         Add a function to add input-method switching menu items
9344         to a menu.
9345
9346         * gtk/gtkimmulticontext.[ch]: Properly handly set_client_window
9347         when switching input methods.
9348
9349         * gtk/gtkimcontextsimple.[ch]: Change the format of
9350         the compose table to allow compose tables of different
9351         lengths / sequence.
9352
9353 Sat Sep 16 13:05:48 2000  Owen Taylor  <otaylor@redhat.com>
9354
9355         * gtk/gtkimmodule.[ch]: Support routines for loading
9356         GtkIMContext implementations dynamically at runtime.
9357
9358         * modules/input/imcyrillic-translit.c: A sample input
9359         method (based on GtkIMContextSimple with an extra table),
9360         which demonstrates preedit strings and the module
9361         system for input modules
9362
9363         * gtk/queryimmodules.c: Program to query the available
9364         input modules and write the results into a file.
9365          
9366         * gtk/gtkrc.[ch] (gtk_rc_get_im_module_file): Add
9367         extra config options "im_module_file" (cache file for
9368         input method modules), and "im_module_path" - path
9369         to look for modules when generating cache file.
9370
9371         This doesn't scale.
9372
9373 Sat Sep 16 13:09:06 2000  Owen Taylor  <otaylor@redhat.com>
9374
9375         * gtk/gtkthemes.[ch] gtk/gtkmodule.[ch]: Move most of the 
9376         generic code from gtkthemes into a new abstraction
9377         GtkModule which has the logic for implementing
9378         a loadable module which implements a number of 
9379         GObject types.
9380
9381 Sat Sep 16 13:07:13 2000  Owen Taylor  <otaylor@redhat.com>
9382
9383         * gtk/gtkeditable.[ch]: Convert GtkEditable from
9384         a class into an interface  
9385         
9386         * gtk/gtkoldeditable.[ch]: Move the old editable
9387         implementation into here, so legacy widgets can
9388         still rely on the implemenation. GtkOldEditable
9389         exports GtkEditable. Make selection handling
9390         code use new text conversion functions (and
9391         handle UTF-8 as a side-effect). Use GtkClipboard
9392         for CLIPBOARD.
9393
9394         * gtk/gtktext.[ch] gtk/gtkcombo.c gtk/gtkspinbutton.c:
9395         Adopt to match above changes.
9396
9397         * gtk/gtkentry.[ch]: Implement GtkEditable directly,
9398         avoid GtkOldEditable implementation. Restructure
9399         to reduce number of places that modify state directly.
9400         Move to GtkBindingSet. Display the preedit string.
9401         Queue recomputation of PangoLayout and scroll position
9402         to improve effiency of doing complex changes naively.
9403         Add a menu with cut/copy/paste and input method selection.
9404
9405 Thu Sep 14 22:11:05 2000  Owen Taylor  <otaylor@redhat.com>
9406
9407         * gtk/gtktextlayout.[ch]: Add gtk_text_layout_set_preedit_string()
9408         to set preedit string and attributes; display preedit string by
9409         inserting string and attributes at cursor when creating the
9410         GtkTextLineDisplay.
9411
9412         * gtk/gtktextlayout.c: Move all conversions between byte
9413         positions in PangoLayout and GtkTextIter into new functions
9414         line_display_iter_to_index/index_to_iter that properly
9415         handle the preedit string.
9416
9417         * gtk/gtktextmark.[ch]: Restore gtk_text_mark_get_name, modify
9418         it to return const char * (eventually will end up
9419         as GCONST char *, most likely.)
9420
9421         * gtk/gtktextview.[ch]: Handle the preedit string, call
9422         gtk_im_context_reset() as necessary, add a menu to switch
9423         input methods.
9424         
9425         * gtk/gtktextlayout.[ch]: Remove useless
9426         gtk_text_layout_get_log_attrs() function.
9427
9428 2000-11-11  Tor Lillqvist  <tml@iki.fi>
9429
9430         * gdk/gdk.def
9431         * gtk/gtk.def: Update.
9432
9433         * gdk/win32/*.c: Add last argument to g_type_register_static()
9434         calls.
9435
9436         * gdk/win32/gdkwindow-win32.c: Silence gcc -Wall.
9437
9438         * gdk/win32/gdkevents-win32.c: Handle MSH_MOUSEWHEEL messages
9439         generated by older wheel mouse drivers. Get the correct y
9440         coordinate from WM_MOUSEWHEEL messages.
9441
9442         * gdk/win32/gdkgc-win32.c (gdk_win32_cap_style_to_string,
9443         gdk_win32_fill_style_to_string, gdk_win32_function_to_string,
9444         gdk_win32_join_style_to_string, gdk_win32_line_style_to_string):
9445         Debugging functions.
9446
9447         * gdk/win32/gdkprivate-win32.h: Declare them.
9448
9449         * gdk/win32/gdkinput-win32.h: Add declaration for
9450         gdk_input_window_destroy().
9451
9452         * gtk/makefile.mingw.in: Pass -DGTK_VERSION. Add gtktreemodel.o.
9453
9454 Fri Nov 10 19:06:41 2000  Jonathan Blandford  <jrb@redhat.com>
9455
9456         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): New
9457         function to help handle keeping things in sync.
9458
9459 Fri Nov 10 12:10:34 2000  Jonathan Blandford  <jrb@redhat.com>
9460
9461         * gtk/gtkliststore.c (gtk_model_simple_class_init): use the new
9462         BOXED marshallers.
9463
9464         * gtk/gtkliststore.c (gtk_list_store_get_column_type): Add this.
9465         (gtk_list_store_class_init): use the new BOXED marshallers.
9466
9467         * gtk/gtktreestore.c (gtk_tree_store_new_with_types): change
9468         new_with_values to new_with_types.
9469         (gtk_tree_store_get_column_type): add this.
9470         (gtk_tree_store_class_init): use the new BOXED marshallers.
9471
9472         * gtk/gtkmarshal.list: Added a number of BOXED marshallers to
9473         mirror some POINTER marshallers.
9474
9475 Thu Nov  9 11:23:22 2000  Jonathan Blandford  <jrb@redhat.com>
9476
9477         * gtk/gtktreemodel.h (struct _GtkTreeIter): added more fields to
9478         allow more interesting iterators.  Also, made the lifecycle of
9479         iterators more explicit.
9480
9481         * gtk/gtktreemodelsort.[ch]: New model for sorting.
9482
9483         * gtk/gtk-boxed.defs (GtkTreeIter, GtkTreePath): Added two boxed
9484         types.
9485
9486 2000-11-09  Alexander Larsson  <alexl@redhat.com>
9487
9488         * demos/testgtk/menus.c:
9489         Changes to make the new testgtk compile after
9490         gtk_menu_append was removed.
9491
9492         * gdk/linux-fb/gdkdrawable-fb2.c
9493         (gdk_fb_get_depth, gdk_fb_get_visual,
9494         gdk_drawable_impl_fb_class_init): Implement
9495         these drawable functions. Now GtkImages work again.
9496
9497         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Change prototype.
9498
9499         * gdk/linux-fb/gdkprivate-fb.h (_gdk_fb_get_image): Change prototype.
9500         
9501         * gdk/linux-fb/gdkmain-fb.c (fb_modes_parse_mode,
9502         gdk_fb_setup_mode_from_name, gdk_fb_set_mode, gdk_fb_display_new);
9503         Parse /etc/fb.modes, use the environment variables GDK_DISPLAY_MODE,
9504         GDK_DISPLAY_DEPTH, GDK_DISPLAY_WIDTH, GDK_DISPLAY_HEIGHT.
9505
9506 2000-11-08  Havoc Pennington  <hp@pobox.com>
9507
9508         * gtk/gtktexttag.c (gtk_text_tag_class_init): Add visible and
9509         visible_set args, don't know where these had gone, I thought they
9510         used to be there
9511
9512         * gtk/testtext.c: Add a menu item to apply invisibility tag;
9513         now we can test the feature and see that it's totally broken.
9514
9515 2000-11-08  Havoc Pennington  <hp@pobox.com>
9516
9517         Make DND copy pixbufs and tags when source and target share a 
9518         tag table.
9519         
9520         * gtk/gtktextview.c (gtk_text_view_drag_data_get): provide the
9521         in-process GTK_TEXT_BUFFER_CONTENTS target
9522         (gtk_text_view_drag_data_received): Paste from
9523         GTK_TEXT_BUFFER_CONTENTS if we receive it.
9524
9525 2000-11-08  Alexander Larsson  <alexl@redhat.com>
9526
9527         * docs/Changes-2.0.txt: Add note about GtkMenuPositionFunc
9528         API changes.
9529
9530         * gtk/gtkmenu.c: Add support for scrolling menus.
9531         Remove gtk_menu_append/prepend/insert, these have been moved to
9532         gtkcompat.h as #defines.
9533
9534         * gtk/gtkcompat.h.in:
9535         Add compatibility #defines for gtk_menu_append/prepend/insert
9536
9537         * gtk/gtkmenu.h: Add data needed for scrolling menus.
9538         GtkMenuPositionFunc gets an extra argument push_in.
9539         gtk_menu_append/prepend/insert removed.
9540         
9541         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu): Change menu
9542         positioning behaviour to fit to scrolling menus.
9543
9544         * gtk/gtkmenuitem.c (gtk_menu_item_forall): Don't recurse
9545         into menuitem->submeny. That is wrong, and broke torn
9546         off submenus of torn off menus, since they were unrealized
9547         when the first menu was unrealized.
9548
9549         * gtk/gtkmenushell.[ch]: Virtualize gtk_menu_shell_insert() and
9550         gtk_menu_shell_select_item() since these need to be overridden in
9551         GtkMenu.
9552
9553         * gtk/gtkoptionmenu.c (gtk_opttion_menu_position): Change menu
9554         positioning behaviour to fit to scrolling menus.
9555         (gtk_option_menu_key_press, gtk_option_menu_button_press): Select
9556         the current item so that it is prelighted when the menu pops up.
9557         This is a workaround to the fact that the menu doesn't get the
9558         initial enter event (due to grabs).
9559
9560         * gtk/gtkfilesel.c, gtk/gtkinputdialog.c, gtk/testgtk.c:
9561         s/gtk_menu_append/gtk_menu_shell_append/
9562
9563         * gtk/gtknotebook.c:
9564         s/gtk_menu_insert/gtk_menu_shell_insert/
9565
9566         * gtk/testgtk.c (create_menu, create_menus):
9567         Create the first menu with 50 items so that menu scrolling
9568         can be tested.
9569         
9570         
9571         Patch from Jonathan Blandford  <jrb@redhat.com>
9572
9573         * gtk/gtkmenuitem.[ch] (gtk_menu_item_toggle_size_request): new
9574         system to handle size requests.  First, we ask what the size of
9575         the toggle is.  Then, when allocating the size, we allocate the
9576         toggle_size first.  This way we can have multiple menu-item
9577         classes w/o needing a seperate class for each.
9578
9579         * gtk/gtkmenu.c (gtk_menu_size_request): Actually use the new system.
9580         * gtk/gtkmenu.c (gtk_menu_size_allocate): Use the new system.
9581
9582         * gtk/gtkcheckmenuitem.c
9583         (gtk_check_menu_item_toggle_size_request): New function to handle
9584         the toggle size-request.
9585
9586 2000-11-07  Havoc Pennington  <hp@redhat.com>
9587
9588         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location):
9589         Half-ass somewhat fix this function, so that scrolling to the
9590         insertion point works. Pango hacking is in the future to really
9591         fix it.
9592
9593         * gtk/gtktextview.c (gtk_text_view_drag_data_get): Don't calculate
9594         length of data, no longer used.
9595
9596         * gtk/gtktextbuffer.c (gtk_text_buffer_finalize): move destroy
9597         method contents in here, get rid of destroy method
9598         (gtk_text_buffer_insert_range): Fix some g_return_if_fail checks
9599         that were backward. Remove debug spew.
9600         (cut_or_copy): Make the clipboard work with insert_range to
9601         preserve tags and pixbufs, not just the primary selection.
9602
9603 2000-11-07  Havoc Pennington  <hp@redhat.com>
9604
9605         * gtk/gtktextmark.c (gtk_text_mark_is_visible): rename 
9606         to gtk_text_mark_get_visible
9607
9608         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): fix
9609         bug that was generating an invalid iterator
9610
9611         * gtk/gtktextiter.c (gtk_text_iter_get_offset): move call to
9612         ensure_char_offsets() in front of code placing the iter in an
9613         invalid state.
9614
9615         * gtk/gtktextbuffer.c (gtk_text_buffer_paste_primary):
9616         make override_location arg const
9617         (paste): Replace the selection if we paste into the 
9618         current selection
9619
9620         * gtk/gtkselection.h: Remove "GtkSelectioData"
9621         (struct _GtkSelectionData): move the definition here.
9622
9623         * gtk/gtktextbuffer.c (gtk_text_buffer_update_primary_selection):
9624         Export the GTK_TEXT_BUFFER_CONTENTS target for in-process copies
9625
9626         * gtk/gtktextiter.c (gtk_text_iter_get_tags): New function
9627
9628         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_range): implement
9629         (gtk_text_buffer_insert_range_interactive): implement
9630         (gtk_text_buffer_get_tags): Remove, replaced by
9631         gtk_text_iter_get_tags()
9632
9633         * gtk/gtktextiter.c (gtk_text_iter_forward_search): Add a search
9634         limit parameter, to avoid infinite linear scan.
9635         (gtk_text_iter_backward_search): Add search limit
9636         (gtk_text_iter_forward_find_char): Add search limit
9637         (gtk_text_iter_backward_find_char): Add search limit
9638
9639 2000-11-07  Alexander Larsson  <alla@lysator.liu.se>
9640
9641         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
9642         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkimage-fb.c,
9643         gdk/linux-fb/gdkpango-fb.c, gdk/linux-fb/gdkpixmap-fb.c,
9644         gdk/linux-fb/gdkwindow-fb.c:
9645         use g_object_new() instead of g_type_create_instance() which
9646         is a private function for fundamental type implementations.
9647
9648         * gdk/linux-fb/gdkinput-ps2.c:
9649         Use MEDIUMRAW instead of RAW keycodes. Remove keyboard state-table
9650         instead just store the current modifier state. Add a (somewhat broken)
9651         keyboard input parser for XLATE mode too, if we couldn't use MEDIUMRAW.
9652         Rename exported function gdk_input_ps2_get_mouseinfo to
9653         gdk_input_get_mouseinfo.
9654
9655         * gdk/linux-fb/gdkmain-fb.c, gdk/linux-fb/gdkprivate-fb.h,
9656         gdk/linux-fb/gdkwindow-fb.c:
9657         gdk_input_ps2_get_mouseinfo was renamed to gdk_input_get_mouseinfo.
9658         
9659
9660 2000-11-02  Havoc Pennington  <hp@redhat.com>
9661
9662         * gtk/gtkfilesel.h, gtk/gtkfilesel.c: Derive from GtkDialog, and
9663         use stock buttons. Should be 100% source compatible, appropriate
9664         filesel fields now point to dialog->vbox and dialog->action_area.
9665         On the bizarre side, dialog->action_area and filesel->action_area
9666         are not the same widget.
9667         (gtk_file_selection_init): Put some padding around the selection
9668         entry, so it isn't touching the GtkDialog separator.    
9669
9670         * gtk/gtkfontsel.h, gtk/gtkfontsel.c: Derive from GtkDialog, 
9671         use stock buttons, etc. Should also be source compatible.
9672         Set the dialog default title in _init not _new().
9673         
9674         * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): 
9675         Use stock buttons; don't put a button box inside the existing
9676         dialog button box. Don't bother with push/pop colormap anymore.
9677
9678         * gtk/gtkdialog.h (GtkResponseType): Add a bunch of more 
9679         specific GTK_RESPONSE_* values. This is clearer than ACCEPT/REJECT
9680         for message dialog, and necessary for the font selection and color
9681         selection with help and apply buttons.
9682         
9683         * gtk/gtkdialog.c (gtk_dialog_add_button): Return a pointer 
9684         to the created button widget. Set GTK_CAN_DEFAULT on the button.
9685         (gtk_dialog_init): Default to GTK_BUTTONBOX_END, put less spacing
9686         between buttons, put less padding around the action area.
9687         (gtk_dialog_run): Exit on unmap rather than on destroy. 
9688         This will also exit the loop if the widget is hidden.
9689         (gtk_dialog_delete_event_handler): Use GTK_RESPONSE_DELETE_EVENT
9690         instead of GTK_RESPONSE_NONE; since we're already adding a bunch
9691         of GTK_RESPONSE_* stuff, this seems cleaner, and lets you 
9692         special-case delete event.
9693
9694         * gtk/gtktexttagtable.c, gtk/gtktextview.c: Fix doc comment
9695         formatting
9696         
9697 Sun Nov  5 05:32:39 2000  Tim Janik  <timj@gtk.org>
9698
9699         * gtk/testgtk.c (uposition_stop_configure): provide a toggle
9700         button to temporarily disable position recording in the
9701         "saved position" test.
9702
9703 Sat Nov  4 05:37:17 2000  Tim Janik  <timj@gtk.org>
9704
9705         * gtk/gtkthemes.c: added compat code that temporarily implements
9706         GtkThemeEnginePlugin as a GObject exporting GTypePlugin. this is
9707         going to be revamped by owen's upcoming GtkModule patches, but
9708         untill then people want gtk to build, right? ;)
9709
9710 2000-11-04  Havoc Pennington  <hp@pobox.com>
9711
9712         * gtk/gtkenums.h: remove trailing comma from GtkDeleteType member
9713         list
9714
9715         * docs/Changes-2.0.txt: Add note about
9716         gtk_container_get_toplevels()
9717
9718         * gtk/gtktextview.h: formatting
9719         
9720         * gtk/gtktextview.c: don't start descriptions with "Returns",
9721         confuses gtk-doc
9722
9723 Sat Nov  4 10:12:27 2000  Owen Taylor  <otaylor@redhat.com>
9724
9725         * autogen.sh: When doing sanity checking on ACLOCAL_FLAGS,
9726         look for glib-2.0.m4 not glib.m4. (Ali Abdin)
9727
9728 2000-11-03  Havoc Pennington  <hp@redhat.com>
9729
9730         * gtk/gtktexttagtable.c: Docs
9731         (gtk_text_tag_table_size): return a signed int
9732
9733         * gtk/gtktexttag.c: s/tkxt/text/g; write documentation
9734         (gtk_text_tag_event): make the event_object a GObject
9735
9736         * gtk/gtktextview.c: Write API docs for all functions.
9737
9738         * gtk/gtktextview.h: add GTK_TEXT_WINDOW_PRIVATE as return value
9739         for gtk_text_view_get_window_type() called on one of the private
9740         windows.
9741
9742         * gtk/gtktextview.c: Instead of accessing text_view->buffer
9743         directly, call get_buffer() which demand-creates a default
9744         buffer. So gtk_text_view_new() can be used to create a view with a
9745         default buffer in it, if you just want an empty text box users can
9746         put data in. Useful for GUI builders also.
9747
9748 2000-11-03  Pablo Saratxaga <pablo@mandrakesoft.com>
9749
9750         * gtk/gtkrc.zh_TW.*: moved gtkrc.zh_TW.Big5 to gtkrc.zh_TW.big5;
9751         the charset encodign portion MUST be in lowercase.
9752         * gtk/gtkrc.az: added file for Azeri language
9753
9754 2000-11-03  Havoc Pennington  <hp@redhat.com>
9755
9756         Get widgets working on the btree/buffer side. Display of them 
9757         still doesn't work.
9758         
9759         * gtk/gtktextview.c: start implementing child widget stuff
9760
9761         * gtk/gtktextiter.c (gtk_text_iter_get_child_anchor): new function
9762
9763         * gtk/gtktextlayout.c: handle embedded widgets
9764
9765         * gtk/gtktextdisplay.c: handle embedded widgets
9766
9767         * gtk/gtktextchild.c: Implement all the child anchor goo
9768
9769         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor): New
9770         function
9771
9772         * gtk/gtktextbtree.c: Add child anchor table to the btree struct
9773         (insert_pixbuf_or_widget_segment): abstract out common portions of 
9774         creating a child anchor or a pixbuf segment.
9775         (gtk_text_btree_create_child_anchor): new function
9776         (gtk_text_btree_unregister_child_anchor): new function
9777
9778         * gtk/gtkmarshal.list: added VOID:OBJECT,INT,INT for the
9779         allocate_child signal on GtkTextLayout
9780
9781         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): fix bogus return
9782         values
9783         (gtk_text_iter_get_child_anchor): new function
9784
9785         * gtk/gtktextbuffer.c (gtk_text_buffer_real_changed): Add a
9786         default handler for the changed signal, which calls
9787         gtk_text_buffer_set_modified(), instead of just always emitting
9788         changed then calling set_modified() manually. I guess this is
9789         maybe more flexible. It seems logical.
9790
9791 Fri Nov  3 08:58:38 2000  Tim Janik  <timj@gtk.org>
9792
9793         * gtk/gtkobject.c: _g_signal_handlers_destroy() is prefixed with '_'
9794         now.
9795
9796         * gtk/gtksignal.c: use g_signal_connect_closure_by_id() now.
9797
9798 Thu Nov  2 14:10:51 2000  Owen Taylor  <otaylor@redhat.com>
9799
9800         * gdk/x11/gdkdnd-x11.c: Fix a bunch of functions that should have
9801         been marked static.
9802
9803 2000-11-02  Havoc Pennington  <hp@redhat.com>
9804
9805         * gtk/testgtk.c (create_labels): had a test backward
9806
9807         * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Copy the client-side GC
9808         fields, so the dest GC ends up with the correct clip origin, 
9809         etc. Fixes a bug where colored labels didn't redraw 
9810         properly.
9811
9812 2000-11-02  Alexander Larsson  <alexl@redhat.com>
9813
9814         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
9815         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkpango-fb.c,
9816         gdk/linux-fb/gdkpixmap-fb.c, gdk/linux-fb/gdkwindow-fb.c:
9817         Add last argument to t_type_register_static call.
9818         
9819         * gdk/linux-fb/gdkdrawable-fb2.c:
9820         Add last argument to t_type_register_static call.
9821         export the get_image drawable virtual function.
9822
9823         * gdk/linux-fb/gdkimage-fb.c:
9824         Add last argument to t_type_register_static call.
9825         rename gtk_image_get to _gdk_fb_get_image and
9826         export it for use by gdkdrawable-fb2.
9827
9828         * gdk/linux-fb/gdkprivate-fb.h:
9829         export _gdk_fb_get_image.
9830
9831         * gdk/linux-fb/gdkselection-fb.c:
9832         Add new api call stubs.
9833
9834         * gtk/Makefile.am:
9835         Missing ( in linux-fb part.
9836
9837         * modules/linux-fb/Makefile.am:
9838         Must link with gdk_pixbuf or get unresolved symbol.
9839
9840 2000-11-01  Havoc Pennington  <hp@pobox.com>
9841
9842         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Use 
9843         GTK_TYPE_TEXT_ITER and BOXED marshallers
9844
9845         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): ditto
9846
9847         * gtk/gtktexttag.c (gtk_text_tag_class_init): ditto
9848         
9849         * gtk/gtk-boxed.defs: add GtkTextIter
9850
9851         * gtk/gtkmarshal.list: Add marshallers for text widget that 
9852         properly use OBJECT and BOXED
9853
9854 2000-11-01  Havoc Pennington  <hp@redhat.com>
9855
9856         * gtk/testgtk.c (create_labels): Test set_markup_with_accel()
9857
9858         * gtk/gtklabel.c (set_markup): Convert the unichar to a GDK keyval
9859         before returning it. 
9860         
9861 2000-11-01  Havoc Pennington  <hp@redhat.com>
9862
9863         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
9864         Clip the rectangle to be rendered to the drawable, since
9865         get_from_drawable() requires a region within the drawable
9866
9867 2000-11-01  Havoc Pennington  <hp@redhat.com>
9868
9869         * gtk/gtkimage.c (gtk_image_expose): Um, don't randomly subtract 4
9870         from coordinates.
9871
9872 Wed Oct 25 20:10:57 2000  Owen Taylor  <otaylor@redhat.com>
9873
9874         * gdk/gdkevents.c (gdk_event_copy): Only ref the window if
9875         it isn't NULL.
9876
9877 2000-11-01  Havoc Pennington  <hp@pobox.com>
9878
9879         * gtk/gtklabel.c (gtk_label_set_attributes): Set a PangoAttrList
9880         on a label
9881         (gtk_label_finalize): unref the attr list if any.
9882
9883         * gtk/testgtk.c (create_get_image): close test on second click
9884         (make_message_dialog): close dialog if it exists
9885
9886         * gdk/gdkpango.c (gdk_draw_layout): Handle rise attribute
9887
9888         * gdk-2.0.pc.in (Requires): Make it require gdk-pixbuf-2.0 not
9889         gdk-pixbuf
9890
9891         * gtk/gtklabel.c (gtk_label_set_markup): new function to set label
9892         from Pango markup format
9893         (gtk_label_set_markup_with_accel): ditto but with accelerator
9894         parsing
9895
9896         * gtk/gtkimage.c (gtk_image_expose): reformatting.
9897
9898         * gdk/gdkpixbuf-drawable.c (gdk_pixbuf_get_from_drawable): Hack to
9899         reflect current state of GDK - use gdk_drawable_get_colormap, etc.
9900         Check GDK_IS_WINDOW() not !GDK_IS_PIXMAP() to decide whether to 
9901         call gdk_window_get_origin().
9902
9903         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
9904         implement GDK_PIXBUF_ALPHA_FULL
9905         
9906 Wed Nov  1 03:43:42 2000  Tim Janik  <timj@gtk.org>
9907
9908         * gtk/gtksignal.c (gtk_signal_compat_matched): make use of
9909         g_signal_handlers_block_matched, g_signal_handlers_unblock_matched and
9910         g_signal_handlers_disconnect_matched to block/unblock and disconnect
9911         multiple handlers respectively, instead of only treating the
9912         first handler found (bug reported by owen).
9913
9914 Mon Oct 30 19:23:50 2000  Jonathan Blandford  <jrb@redhat.com>
9915
9916         * gtk/gtktreeview.c (gtk_tree_view_expand_row): New function.
9917
9918         * gtk/gtktreeview.c (gtk_tree_view_collapse_row): New function.
9919
9920         * gtk/gtktreeview.c, gtk/gtktreemodel.c, gtk/gtktreeselection.c
9921         gtk/gtktreestore.h, gtk/gtktreeview.h, gtk/gtktreeviewcolumn.c,
9922         gtk/gtktreeviewcolumn.h: Fixed inline docs.
9923
9924         * docs/reference/gtk/tree_widget.sgml: Proto intro to the tree
9925         widget.  Needs writing someday.
9926
9927         * docs/reference/gtk/tmpl/gtktree*sgml: Added the tree widget to
9928         the docs.
9929
9930 2000-10-30  Havoc Pennington  <hp@redhat.com>
9931
9932         * gtk/gtktextview.h, gtk/gtktextview.c:
9933         Rename delete_at_cursor delete_from_cursor, and 
9934         move to move_cursor.
9935
9936 2000-10-30  Havoc Pennington  <hp@redhat.com>
9937
9938         * gtktextbtree.c, gtktextbtree.h, gtktextbuffer.c,
9939         gtktextbuffer.h, gtktextchild.c, gtktextchild.h,
9940         gtktextchildprivate.h, gtktextdisplay.c, gtktextdisplay.h,
9941         gtktextiter.c, gtktextiter.h, gtktextiterprivate.h,
9942         gtktextlayout.c, gtktextlayout.h, gtktextmark.c, gtktextmark.h,
9943         gtktextmarkprivate.h, gtktextsegment.c, gtktextsegment.h,
9944         gtktexttag.c, gtktexttag.h, gtktexttagprivate.h,
9945         gtktexttagtable.c, gtktexttagtable.h, gtktexttypes.c,
9946         gtktexttypes.h, gtktextview.c, gtktextview.h:
9947
9948         Massive reindentation and reformatting. Arg alignment and comments
9949         still need fixing in various places.
9950
9951 2000-10-30  Havoc Pennington  <hp@redhat.com>
9952
9953         * gtk/gtktextview.h, gtk/gtktextview.c: Change run action signals
9954         to be named insert_at_cursor and delete_at_cursor so C++ can
9955         handle them.
9956
9957 2000-10-28  Tor Lillqvist  <tml@iki.fi>
9958
9959         * gtk/gtkrc.c (gtk_rc_append_default_module_path): Make sure not
9960         to get a double directory separator in case the home directory
9961         ends with one. This would cause trouble especially on Windows,
9962         where the path will be confused with the syntax for an an UNC
9963         (network share) path \\server\share\path.
9964         (gtk_rc_add_initial_default_files): Ditto.
9965
9966 Sat Oct 28 02:33:09 2000  Robert Brady  <robert@suse.co.uk>
9967
9968         * gtk/gtkmarshal.list: add new marshallers for GtkTextView.
9969
9970         * gtk/gtktextview.c: Use correct marshallers.
9971
9972 Fri Oct 27 17:56:26 2000  Jonathan Blandford  <jrb@redhat.com>
9973
9974         * gtk/gtkliststore.c: Not sure how this ever worked.  Fixed it to
9975         use new iter stuff, and added all the appropriate signals et al.
9976
9977         * gtk/gtktreedatalist.h: s/gtk/_gtk to further reinforce that this
9978         code is internal to gtk only.
9979
9980 2000-10-28  Tor Lillqvist  <tml@iki.fi>
9981
9982         * gtk/gtk.def
9983         * gtk/makefile.{mingw,msc}.in: Adjust to Tim's changes. Use
9984         glib-genmarshal etc.
9985
9986 Fri Oct 27 20:15:00 2000  Tim Janik  <timj@gtk.org>
9987
9988         * gtk/Makefile.am: added dependancies for testtextbuffer which broke
9989         parallel builds.
9990
9991 Fri Oct 27 18:51:44 2000  Tim Janik  <timj@gtk.org>
9992
9993         * gtk/gtksignal.[hc]: adapt to GSignal signature changes.
9994
9995 2000-10-27  Robert Brady  <robert@suse.co.uk>
9996
9997         * configure.in (ALL_LINGUAS): Add en@IPA (English, phonetic), 
9998         en_GB (British), ia (Interlingua).
9999
10000 2000-10-26  Havoc Pennington  <hp@redhat.com>
10001
10002         * gtk/gtktextiter.c (my_strrstr): fix constness warning
10003
10004         Fixed output of:
10005         nm -g -l .libs/libgtk-x11-1.3.so | grep ' T ' | grep -v gtk_ | grep -v GTK_
10006         
10007         * gtk/gtktextsegment.c (char_segment_new): rename
10008         (_char_segment_new_from_two_strings): rename
10009         (_toggle_segment_new): rename
10010         
10011         * gtk/gtkclipboard.c (ensure_clipboard_widget): make this static
10012         (make_clipboard_widget): make it static
10013         (text_get_func): static
10014         (text_clear_func): static
10015
10016         * gtk/gtkcolorsel.c (adjustment_changed): make this function
10017         static
10018         (hex_changed): make it static
10019         (hsv_changed): make it static
10020         (opacity_entry_changed): make it static
10021
10022         * gtk/gtktextbtree.c (change_node_toggle_count): rename with _gtk
10023         (toggle_segment_check_func): rename with _gtk
10024
10025         * gtk/gtktextchild.c (_pixbuf_segment_new): rename with _gtk
10026         (_widget_segment_new): rename
10027         (_widget_segment_add): rename
10028         (_widget_segment_remove): rename
10029         (_widget_segment_ref): rename
10030         (_widget_segment_unref): rename
10031
10032         * gtk/gtktextmark.c (_mark_segment_new): Rename
10033         _gtk_mark_segment_new   
10034
10035 2000-10-26  Havoc Pennington  <hp@redhat.com>
10036
10037         * gtk/gtkmarshal.list: add new marshallers used by the text widget
10038         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
10039         types
10040
10041         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): fix
10042         marshaller types
10043
10044         * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktextdisplay.h,
10045         gtk/gtktextdisplay.c: We need to preserve Tk copyrights and
10046         license on these files.
10047
10048         * gtk/gtktextiter.c (gtk_text_iter_backward_search): Make this
10049         work.
10050
10051         * gtk/gtktextbtree.c (gtk_text_btree_new): init stamps to 
10052         runtime random number different for each tree, instead of 
10053         a constant I made up.
10054
10055 Thu Oct 26 07:36:16 2000  Tim Janik  <timj@gtk.org>
10056
10057         * gtk/Makefile.am: buncha cleanups, kludged build sources
10058         dependencies with a Makefile: oldest-source-stamp dependancy
10059         for the moment. automake is really fighting us here, with
10060         intentionally not allowing user-defined rules or dependancies
10061         prior to it's -include $(DEP_FILES) statement. sucks rocks!
10062
10063         * gtk/Makefile.am: added gtktextlayout.h and gtktextdisplay.h
10064         to public headers. tehy have a comment stating that they are
10065         "semi-public" aren't included by gtk.h and if enums popup there,
10066         they can be /*< skip >*/-ed.
10067
10068         * gtk/gtktextlayout.h: 
10069         * gtk/gtktextdisplay.h: indentation fixes, comment fixes,
10070         added LGPL... <SIGH>
10071
10072 Wed Oct 25 20:40:25 2000  Jonathan Blandford  <jrb@redhat.com>
10073
10074         * gtk/gtktreemodel.h: Got rid of GtkTreeNode, and changed it to
10075         GtkTreeIter.  Added iterators everywhere.
10076
10077         * gtk/gtktreeviewcolumn.c: Changed to use the iterators.
10078
10079         * gtk/gtktreeviewselection.c: Changed to use the iterators.
10080
10081         * gtk/gtktreestore.c: Changed to use the iterators.
10082
10083         * gtk/gtkliststore.c: Commented out the code.  Will convert to
10084         iterators tomorrow.
10085
10086         * gtk/gtkmodelsimple.c: Commented out the code.  Will convert to
10087         iterators tomorrow.
10088
10089         * gtk/treestoretest.c: Changed to use iterators.
10090
10091         * demos/testgtk/main.c: Moved to use the new iterator system.
10092
10093 Thu Oct 26 02:10:32 2000  Tim Janik  <timj@gtk.org>
10094
10095         * gtk/Makefile.am: invoke maketypes.awk with LC_ALL=C to avoid
10096         localization misbehaviour.
10097
10098         * gtk/gtk-boxed.defs: nuked "boxed" type GtkCTreeNode, since it's
10099         a useless type without copy/free.
10100
10101         * gtk/gtkctree.c (gtk_ctree_class_init): use GTK_TYPE_POINTER instead
10102         of GTK_TYPE_CTREE_NODE.
10103
10104 Thu Oct 26 00:51:52 2000  Tim Janik  <timj@gtk.org>
10105
10106         * gtk/gtksignal.c:
10107         (gtk_signal_emitv): use g_value_set_static_{string|boxed} where
10108         applicable.
10109
10110         * gtk/gtk-boxed.defs (GtkSelectionData): specify
10111         gtk_selection_data_copy and gtk_selection_data_free
10112         do GtkSelectionData work as params in signals.
10113
10114 Wed Oct 25 20:47:41 2000  Tim Janik  <timj@gtk.org>
10115
10116         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init): urg, removed
10117         implementation of gtk_marshal_VOID__INT_INT_INT_INT. if people do that,
10118         couldn't they at least give it a non-standard name?
10119         
10120         * gtk/gtktextlayout.c: arg! yet another implementation of
10121         gtk_marshal_VOID__INT_INT_INT_INT(), is this a conspiracy?
10122
10123         * gtk/gtktextbuffer.c: gotcha! captured a vagabonding
10124         gtk_marshal_VOID__INT_POINTER_INT() implementation, braught it back
10125         home. now i know this _is_ a conspiracy.
10126
10127         * gtk/gtkwidget.c (gtk_widget_class_init): marshaller fixups for
10128         ::state-changed.
10129
10130         * gtk/gtkaccelgroup.c (gtk_accel_group_create_remove): 
10131         (gtk_accel_group_create_add): marshaller signature fixups.
10132
10133         * gtk/gtklistitem.c (gtk_list_item_class_init): signal creation fixups,
10134         pass in GTK_TYPE_SCROLL_TYPE instead of GTK_TYPE_ENUM.
10135
10136         * gtk/gtkobject.[hc]: removed GTK_CONNECTED flag, it's not valid
10137         anymore.
10138
10139 Tue Oct 24 23:59:21 2000  Tim Janik  <timj@gtk.org>
10140
10141         * docs/reference/Makefile.am: disabled SUBDIRS for the moment, since
10142         due to the signal system changes, it wouldn't build currently. to
10143         be fixed soon.
10144
10145         * docs/Changes-2.0.txt: GtkSignal/GSignal updates.
10146
10147         * gtk/gtkwidget.c: ::direction_changed takes an enum as argument,
10148         so it needs gtk_marshal_VOID__ENUM() instead of
10149         gtk_marshal_NONE__UINT().
10150
10151         * gdk/gdk*.c: adapted type registration functions.
10152
10153         * gtk/gtkbindings.c:
10154         * gtk/gtkaccelgroup.c: operate on GSignalQuery, GtkSignalQuery is
10155         gone.
10156
10157         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType.
10158
10159         * gtk/gtkobject.c:
10160         (gtk_object_destroy):
10161         (gtk_object_shutdown): fixed recursion guards. basically we have to
10162         catch the case where any of GObject.shutdown() or gtk_object_destroy()
10163         is called during ::destroy, and avoid recursion there.
10164
10165         * gtk/gtktypeutils.c:
10166         * gtk/maketypes.awk: awk-script hackup to provide gtk_type_init() with
10167         boxed_copy/boxed_free. this needs a more general solution based on a
10168         publically installed code-generator utility.
10169
10170         * gtk/gtktypeutils.[hc]: compat aliased GTK_TYPE_BOXED to G_TYPE_BOXED,
10171         glib's gobject has support for that now.
10172         define GtkSignalMarshaller in terms of GSignalCMarshaller.
10173
10174 Mon Oct 23 09:36:42 2000  Tim Janik  <timj@gtk.org>
10175
10176         * gtk/gtksignal.[hc]:
10177         * gtk/gtkmarshal.[hc]:
10178         * gtk/Makefile.am: generate marshallers with glib-genmarshal and don't
10179         compile gtkmarshal.c on its own anymore, just include it in gtksignal.c.
10180         removed #include <gtkmarshal.h>s all over the place, gtksignal.h takes
10181         care of that.
10182
10183         * *.c: marshaller name fixups.
10184
10185         * gtk/gtkmarshal.list: added a comment briefing the format.
10186
10187 Sun Oct 22 23:14:39 2000  Tim Janik  <timj@gtk.org>
10188
10189         * gtk/gtksignal.[hc]: nuked old implementation. we mostly have
10190         compatibility macros here now. more specifically, most of
10191         the API is preserved (yes, _most_, nonwithstanding the
10192         following exceptions listed, the API is stil lHUGE ;)
10193         things that got removed completely:
10194         GtkSignalQuery, gtk_signal_query(), gtk_signal_n_emissions(),
10195         gtk_signal_n_emissions_by_name(), gtk_signal_handlers_destroy(),
10196         gtk_signal_set_funcs(), gtk_signal_handler_pending_by_id(),
10197         gtk_signal_add_emission_hook(), gtk_signal_add_emission_hook_full(),
10198         gtk_signal_remove_emission_hook().
10199         non-functional functions variants:
10200         gtk_signal_add_emission_hook(), gtk_signal_remove_emission_hook().
10201         the GtkCallbackMarshal argument to gtk_signal_connect_full() is
10202         not supported anymore.
10203         (gtk_signal_compat_matched): new internal function to aid
10204         implementation of the compatibility macros, it  provides
10205         functionality to block/unblock/disconnect handlers based
10206         on func/data.
10207
10208         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType,
10209
10210         * *.c: adaptions to new type registration API signatures.
10211
10212 Fri Oct 20 15:26:33 2000  Tim Janik  <timj@gtk.org>
10213
10214         * gtk/gtktypeutils.[hc]: removed G_TYPE_GTK_POINTER cludge.
10215
10216 2000-10-25  Robert Brady  <robert@suse.co.uk>
10217
10218         * gdk/x11/gdkproperty-x11.c (gdk_property_get, gdk_property_change,
10219         gdk_property_delete): If window == NULL, assume the root window.
10220         (restoring the behaviour that was in 1.2).
10221         
10222         * gtk/testtext.c (save_buffer): Allow creation of new files when
10223         saving.
10224
10225         (fill_file_buffer): Don't die if a UTF-8 sequence is split across
10226         calls to read().
10227
10228 2000-10-25  Tor Lillqvist  <tml@iki.fi>
10229
10230         * gdk/gdkwindow.c: Include x11/gdkx.h only when building for X11.
10231
10232         * gdk/win32/gdkdrawable-win32.c
10233         * gdk/win32/gdkimage-win32.c
10234         * gdk/win32/gdkprivate-win32.h: Corresponding changes as in the
10235         X11 backend.
10236
10237         * gdk/win32/gdkcc-win32.c
10238         * gdk/win32/gdkcolor-win32.c
10239         * gdk/win32/gdkfont-win32.c
10240         * gdk/win32/gdkinput-win32.c
10241         * gdk/win32/gdkmain-win32.c
10242         * gdk/win32/gdkproperty-win32.c: Silence gcc -Wall.
10243
10244 2000-10-24  Havoc Pennington  <hp@redhat.com>
10245
10246         * gtk/gtktextview.c (gtk_text_view_scroll_to_mark_adjusted): make
10247         it a static function
10248
10249         * gtk/gtktextbtree.c (gtk_text_btree_tag): Gee, maybe we should
10250         redraw text when a tag is applied to it.
10251
10252         * gtk/gtktexttag.c (gtk_text_tag_affects_size)
10253         (gtk_text_tag_affects_nonsize_appearance): private functions to
10254         see if a tag requires various kinds of redraw/layout to be queued
10255         up.
10256
10257         * gtk/gtktexttag.h (struct _GtkTextTag): Remove relief crackrock
10258
10259         * gtk/testtext.c (fill_example_buffer): Put the cursor 
10260         at the start of the buffer, so search works by default
10261
10262         * gtk/gtktextiter.c (lines_match): init match_start always
10263
10264         * gtk/gtktextbuffer.c (gtk_text_buffer_get_iter_at_line_index): New
10265         function, get iter at a line + a byte index
10266
10267         * gtk/gtktextiter.c (gtk_text_iter_set_line_index): New function,
10268         to set byte position within a line
10269         (gtk_text_iter_check): remove leftover G_BREAKPOINT thing
10270
10271 2000-10-23  Havoc Pennington  <hp@redhat.com>
10272
10273         * gtk/testtext.c: Re-enable the "find" dialog
10274
10275         * gtk/testgtk.c: Add test for gdk_drawable_get_image
10276         
10277         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix bug where
10278         the arguments to gdk_draw_drawable were in the wrong order
10279         (gdk_window_paint_init_bg): This function was ignoring the
10280         init_region, instead of clipping to it, so the entire backing
10281         pixmap was cleared on every begin_paint()
10282         (gdk_window_begin_paint_region): Hmm, the same list-walking bug
10283         was in here again, the loop kept using the same GtkWindowPaint
10284         over and over.
10285         (gdk_window_begin_paint_region): Fix a bug where we had two
10286         x_offset instead of x_offset and y_offset
10287
10288         * gdk/gdkdraw.c (gdk_drawable_get_image): get composite drawable
10289         before we get the image.
10290         (gdk_draw_drawable): get the composite before we draw the drawable.
10291         (gdk_drawable_real_get_composite_drawable): default
10292         get_composite_drawable implementation that returns the drawable 
10293         itself
10294
10295         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Add
10296         get_composite_drawable virtual function
10297
10298         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix a cheesy
10299         list-walking bug
10300
10301         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable): Add a hack to
10302         make this work if the source drawable is a GdkDrawableImplX11
10303         instead of a public drawable type. This is really broken; the
10304         problem is that GdkDrawable needs a virtual method get_xid(), but
10305         of course that doesn't work in practice. Enter RTTI.
10306
10307         Also, improve mismatched depth message.
10308
10309         * gdk/gdkpixmap.c (gdk_pixmap_get_image): Implement get_image for
10310         GdkPixmap
10311
10312         * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_class_init):
10313         install _gdk_x11_get_image as our implementation of get_image
10314         
10315         * gdk/x11/gdkimage-x11.c (gdk_image_get): Rename to
10316         _gdk_x11_get_image and export for use in gdkdrawable-x11.c
10317
10318         * gdk/gdkimage.c (gdk_image_get): Make this just a wrapper around
10319         gdk_drawable_get_image
10320
10321         * gdk/gdkdraw.c (gdk_drawable_get_image): call virtual get_image
10322
10323         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Virtualize
10324         get_image
10325
10326         * gtk/gtktreestore.c (gtk_tree_store_get_node): remove weird
10327         trailing semicolon after for loop
10328
10329 Mon Oct 23 12:07:57 2000  Owen Taylor  <otaylor@redhat.com>
10330
10331         * gtk/gtkwidget.c (gtk_widget_set_style_internal): Fix problem
10332         where font_desc for widget's context lagged widget's font_desc by
10333         one step.
10334
10335 2000-10-22  Tor Lillqvist  <tml@iki.fi>
10336
10337         * gdk/win32/gdkgc-win32.c
10338         * gdk/win32/gdkimage-win32.c: Remove gcc -Wall warnings.
10339
10340         * gtk/makefile.mingw.in
10341         * gtk/gtk.def: Updates.
10342
10343         * gtk/testgtk.c: sleep() is called _sleep in MS's C
10344         library.
10345
10346         * gtk/gtkimcontextsimple.c: Include <stdlib.h> for bsearch().
10347
10348         * gtk/makefile.msc: Remove
10349
10350         * gtk/makefile.msc.in: New file, like makefile.mingw.in.
10351
10352         * gtk/Makefile.am: Add it.
10353
10354         * configure.in: Generate it.
10355
10356         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor)
10357         * gtk/gtktextbtree.c (gtk_text_line_char_to_byte): Return
10358         something even if not implemented, to satisfy picky MSVC.
10359
10360         Patches by Hans Breuer:
10361         
10362         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_glyphs): Call
10363         SetBkMode() and SetTextAlign() before calling
10364         pango_win32_render().
10365
10366         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_values_to_win32values):
10367         Set hcliprgn to NULL after destroying it.
10368         (gdk_gc_set_clip_rectangle): Delete hcliprgn and set to NULL.
10369
10370         * gdk/win32/gdkgeometry-win32.c
10371         (_gdk_windowing_window_queue_antiexpose): More effective
10372         implementation.
10373
10374         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_new): Use drawable's
10375         depth as default, not the visual's.
10376
10377         * gdk/win32/gdkwindow-win32.c (gdk_window_set_title): Guard
10378         against empty title.
10379
10380         * gdk/win32/gdkprivate-win32.h: Define a helper macro,
10381         IMAGE_PRIVATE_DATA.
10382
10383         * gdk/win32/gdkimage-win32.c: Use it.
10384
10385 2000-10-22  Robert Brady  <robert@suse.co.uk>
10386
10387         * configure.in: Check for bind_textdomain_codeset
10388
10389         * gtk/gtkmain.c (gtk_init_check): If bind_textdomain_codeset 
10390         present, make use of it.
10391
10392         Add a translatable string "default:LTR" which, if translated
10393         to "default:RTL", will cause the default direction to be
10394         Right-to-Left.
10395
10396         * gtk/gtkrange.h, gtk/gtkrange.c: Take into account the widget 
10397         direction if marked as flippable.
10398
10399         * gtk/gtkhscale.c: Mark widget as flippable.
10400         
10401 2000-10-04  Havoc Pennington  <hp@redhat.com>
10402
10403         * gtk/testgtk.c (create_buttons): create some stock buttons
10404         with the default accel group
10405         (create_image): test some new GtkImage features
10406         (make_message_dialog): test GtkMessageDialog
10407         (create_modal_window): fix someone's bizzarro indentation
10408
10409         * gtk/gtkwindow.h, gtk/gtkwindow.c: Implement 
10410         GTK_WIN_POS_CENTER_ON_PARENT. 
10411         Add "destroy with parent" setting, which means the window goes
10412         away with its transient parent.
10413         (gtk_window_get_default_accel_group): get the default accel group
10414         for the window.
10415         (gtk_window_set_destroy_with_parent): set/unset destroy with
10416         parent flag
10417         (gtk_window_read_rcfiles): invalidate icon set caches
10418         after reloading rcfiles 
10419
10420         * gtk/gtkenums.h (GtkWindowPosition): add
10421         GTK_WIN_POS_CENTER_ON_PARENT, which centers a dialog 
10422         on its parent window when the dialog is mapped for the first time.
10423
10424         * gtk/gtkmessagedialog.h, gtk/gtkmessagedialog.c: Add 
10425         a simple message dialog class
10426         
10427         * gtk/gtkdialog.c (gtk_dialog_init): Connect delete event 
10428         handler to emit response signal, and maybe later it would
10429         honor a hide_on_delete flag - though that isn't there yet.
10430         Set border width on the vbox to 2, so we get some padding.      
10431         Use a button box for the action area.
10432         (gtk_dialog_key_press): synthesize a delete event if Esc
10433         is pressed and the GtkWidget key press handler didn't 
10434         handle the escape key.
10435         (gtk_dialog_new_with_buttons): new function creates a dialog
10436         with some default buttons in it.
10437         (gtk_dialog_add_action_widget): add an activatable widget
10438         as a button in the dialog - you can also add a non-activatable
10439         widget by accessing the action area directly.
10440         (gtk_dialog_add_button): add a simple button - stock ID or 
10441         label - to the action area
10442         (gtk_dialog_response): emit response signal
10443         (gtk_dialog_run): block waiting for the dialog, return 
10444         the response. Override normal delete_event behavior, so that 
10445         delete_event does nothing inside gtk_dialog_run().
10446
10447         * gtk/gtkdialog.h, gtk/gtkdialog.c: Add "response" signal
10448         emitted when an action widget is clicked or the dialog gets
10449         delete_event
10450
10451         * gtk/gtk.h: add gtkmessagedialog.h
10452
10453         * gtk/Makefile.am: add gtkmessagedialog.[hc]
10454
10455 2000-10-18  Havoc Pennington  <hp@redhat.com>
10456
10457         * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): Fix a bug 
10458         where any number of empty lines would get skipped
10459
10460         * gtk/gtktextiter.h: Remove padding from GtkTextIter; live on the
10461         edge.
10462
10463         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): enhance the
10464         warning about invalid iterators (explain more thoroughly)
10465         (gtk_text_iter_in_region): rename gtk_text_iter_in_range
10466
10467         * gtk/gtktextview.c (FOCUS_EDGE_WIDTH): Make focus rectangle less
10468         big
10469
10470         * demos/*.c: Add error handling
10471
10472         * gtk/gtktextbuffer.c: don't modify const iterators
10473
10474         * gtk/gdk-pixbuf-loader.c: Add full error handling here
10475
10476         * gtk/gtkimage.c (gtk_image_set_from_file): ignore errors
10477         on file load
10478
10479         * gtk/gtkiconfactory.c: Update to reflect addition of error
10480         handling to gdk-pixbuf loaders
10481
10482 Wed Oct 18 11:14:05 2000  Owen Taylor  <otaylor@redhat.com>     
10483
10484         * configure.in demos/Makefile.am demos/testgtk/*: Start of work to
10485         move to new modularized testgtk.
10486
10487 2000-10-17  Jonathan Blandford  <jrb@redhat.com>
10488
10489         * gtk/gtktreeview.c: Draw the arrows correctly.
10490
10491         * gtk/gtktreemodel.c: Added user docs.
10492
10493         * gtk/gtk.h: remove gtktreedatalist.h.
10494
10495         * gtk/gtktreestore.c (gtk_tree_store_get_type): Get the correct
10496         parent when generating my type.
10497
10498         * gtk/gtkmarshal.list: Added four more marshallers: INT:NONE,
10499         POINTER:NONE, POINTER:POINTER, and POINTER:POINTER,INT.
10500
10501 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
10502
10503         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): Move
10504         GtkTreeModel from object to interface.
10505
10506 2000-10-16  Havoc Pennington  <hp@redhat.com>
10507
10508         * gtk/gtktreeviewcolumn.c: #include gtklabel.h, fixing 
10509         compilation
10510
10511 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
10512
10513         * gtk/gtktreeselection.c: Add API documentation to all public
10514         functions.
10515
10516         * gtk/gtktreeviewcolumn.c: Added API documentation to all public
10517         functions.
10518
10519 2000-10-15  Jonathan Blandford  <jrb@redhat.com>
10520
10521         * gtk/gtktreeview.c (gtk_tree_view_insert_column): New function
10522         proposed by Guy Harris <gharris@flashcom.net>.  Also, added API
10523         docs to all public functions.
10524
10525         * gtk/gtktreeview.c, gtk/gtktreeview.h, gtk/gtktreestore.h,
10526         gtk/gtktreestore.c, gtk/gtkliststore.h, gtk/gtkliststore.c,
10527         gtk/gtkmodelsimple.c, gtk/gtkmodelsimple.h, gtk/gtktreedatalist.c,
10528         gtk/gtktreemodel.h, gtk/gtktreeselection.c,
10529         gtk/gtktreeselection.h: Fix GtkTreeNode *node ->GtkTreeNode node
10530         issue.
10531
10532 2000-10-14  Robert Brady  <robert@suse.co.uk>
10533
10534         * configure.in: Added "fa" (Persian) to ALL_LINGUAS.
10535
10536 2000-10-12  Jonathan Blandford  <jrb@redhat.com>
10537
10538         * gtk/gtktreedatalist.[ch] (gtk_tree_data_list_value_to_node): Added
10539         values other then G_TYPE_STRING.
10540         * gtk/gtktreeselection.c: Minor commenting updates.
10541         * gtk/gtktreeview.c: Format updates.
10542
10543 2000-10-09  Tor Lillqvist  <tml@iki.fi>
10544
10545         * README.win32: Update.
10546
10547         * gdk/win32/gdkgeometry-win32.c (gdk_window_clip_changed): Add two
10548         lines that had been deleted by mistake (?).
10549
10550         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Handle
10551         also the case fg==white and bg==black (but still not randomly
10552         coloured cursors). Thanks to Wolfgang Sourdeau.
10553
10554         * gdk/win32/*.c: Silence gcc -Wall.
10555
10556         * gtk/gtk.def: Add missing entry points.
10557
10558         Fixes by Hans Breuer:
10559
10560         * gdk/makefile.msc
10561         * gdk/win32/makefile.msc: Update.
10562
10563         * gdk/testgdk.c: If compiling with debugging (with _DEBUG defined,
10564         some MSVC thing, presumably), cause breakpoint on failures. Add
10565         GDK_NOR case. Call g_log_set_always_fatal.
10566
10567         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_insert): Handle
10568         should be pased by reference.
10569         
10570         * gdk/win32/gdkprivate-win32.h: Correct declaration accordingly.
10571         
10572         * gdk/win32/*.c: Correct calls to gdk_win32_handle_table_insert.
10573
10574         * gdk/win32/gdkevents-win32.c
10575         * gdk/win32/gdkwindow-win32.c: Handle WM_CREATE.
10576
10577         * gdk/win32/gdkgc-win32.c: Fix mixups of drawable and
10578         implementation object.
10579
10580         * gdk/win32/gdkimage-win32.c (gdk_image_get): Handle drawables,
10581         not just windows.
10582         
10583         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_impl_win32_finalize):
10584         Use the wrapper object.
10585         
10586 2000-10-06  Havoc Pennington  <hp@redhat.com>
10587
10588         * Makefile.am (SRC_SUBDIRS): contrib subdir
10589
10590         * gdk/gdkpixbuf.h: Move GdkPixbufAlphaMode to gdk-pixbuf library,
10591         so it can be used in Xlib version
10592
10593         * demos/testpixbuf.c (update_timeout): error checking from 1.0
10594         tree
10595
10596         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_get_pixbuf): Sync
10597         change from 1.0 tree that returns first frame of animation
10598         if the loaded file is an animation.
10599
10600         * contrib: add new directory to hold stuff that comes with GTK+
10601         but isn't really part of GTK+ (for now, gdk-pixbuf-xlib)
10602         
10603         * configure.in: add contrib/*
10604
10605 2000-10-05  Havoc Pennington  <hp@redhat.com>
10606
10607         * demos/testpixbuf-save.c: add pixbuf save test
10608
10609         * demos/Makefile.am: add testpixbuf-save.c
10610
10611 2000-10-05  Jonathan Blandford  <jrb@redhat.com>
10612
10613         * gtk/gtktree.h (GTK_TREE_SELECTION): Replaced with
10614         GTK_TREE_SELECTION_OLD to prevent conflict with gtktreeselection.c
10615         * gtk/testgtk.c: s/GTK_TREE_SELECTION/GTK_TREE_SELECTION_OLD/
10616         * gtk/gtktreeselection.[ch]: Replaced
10617         "node_selected"/"node_unselected" signal with "selection_changed"
10618         signal.
10619
10620 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
10621
10622         * gtk/gtk{tree,cell}?*.[ch]: Checked in initial draft of the new
10623         tree widget.
10624
10625 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
10626
10627         * gdk/gdkwindow.c (gdk_window_draw_arc): Fix obvious bug in circle
10628         drawing.
10629
10630 Wed Oct  4 15:52:15 2000 Owen Taylor  <otaylor@redhat.com>
10631
10632         * gdk/x11/gdkselection-x11.c (_gdk_selection_window_destroyed):
10633         Move list pointer forwards before removing item from
10634         list. (Crash reported by Salmaso Raffaele)
10635
10636         * gdk/gdkwindow.h: Remove spurious trailing ,
10637
10638         * gdk/Makefile.am (LDFLAGS): You can't do interlibrary
10639         dependencies on uninstalled libraries, sorry folks.
10640
10641 2000-10-04  Havoc Pennington  <hp@redhat.com>
10642
10643         * gtk/gtkstock.h, gtk/gtkstock.c, gtk/gtkiconfactory.h,
10644         gtk/gtkiconfactory.c: Fix copyrights    
10645
10646         * demos/testpixbuf.c: add inline pixbuf test
10647         
10648 Mon Sep 25 15:05:17 2000  Owen Taylor  <otaylor@redhat.com>
10649
10650         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c (gdk_window_iconify):
10651         Add gdk_window_iconify.
10652
10653         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c
10654         (gdk_window_set_geometry_hints): Add win_gravity
10655         to geometry structure.
10656
10657         * gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter):
10658         Implement _NET_WM_PING.
10659
10660         * gdk/x11/gdkmain-x11.c (_gdk_windowing_init_check):
10661         Set _NET_WM_PID on the client leader.
10662
10663         * gdk/x11/gdkwindow-x11.c (gdk_window_set_icon_name):
10664         Handle UTF-8 better.
10665
10666         * gdk/x11/gdkwindow-x11.c (gdk_window_set_title): Handle
10667         UTF-8 better, set _NET_WM_NAME as well. Only set
10668         icon name if it hasn't previously been explicitely 
10669         set.
10670
10671 2000-10-03  Havoc Pennington  <hp@redhat.com>
10672
10673         * gtk/testtextbuffer.c: clean up trailing whitespace,
10674         add extensive tests for tag toggle iteration.
10675         
10676         * gtk/gtktextiter.c (MAX_LINEAR_SCAN): decrease linear scan 
10677         distance
10678
10679         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
10680         optimize case where the tag root is on level 1
10681         (gtk_text_line_previous_could_contain_tag): attempt to implement
10682         (gtk_text_line_next_could_contain_tag): Abstract out node_compare
10683         functionality
10684
10685         * gtk/gtktextiter.c (gtk_text_iter_backward_to_tag_toggle):
10686         Implement this, though not very efficiently.
10687
10688         * gtk/gtktextiterprivate.h: reformat
10689
10690         * gtk/gtktextiter.c (gtk_text_iter_get_char): return 0 on the end
10691         iterator
10692
10693         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_interactive): Fix
10694         this to properly revalidate the iterators.
10695
10696         * gtk/gtktextview.c (gtk_text_view_delete): fix control-K to work
10697         properly at the end of the line (and therefore on empty lines)
10698
10699         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Gee,
10700         maybe we should return a value...
10701
10702 2000-10-03  Tor Lillqvist  <tml@iki.fi>
10703
10704         * config.h.win32: Guard definition of alloca(). glib.h now handles
10705         that.
10706
10707         * gdk/gdk.def
10708         * gtk/gtk.def: Add new entry points.
10709
10710         Changes just to make GTK+ build without errors on Win32. No hope
10711         of it working in its current state, though...:
10712         
10713         * gdk/win32/gdkselection-win32.c: Remove gcc -Wall warnings.  Add
10714         some functions from the X11 backend, just to make GTK+ build.
10715
10716         * gdk/makefile.mingw.in
10717         * gtk/makefile.mingw.in: Use correct gdk_pixbuf version
10718         number. Add new object files.
10719
10720         * gtk/gtkclipboard.c: Include gdkwin32.h on Win32. Use
10721         GetMessageTime to get timestamp (where on X11 uses
10722         gdk_x11_get_server_time()).
10723
10724 2000-10-02  Havoc Pennington  <hp@pobox.com>
10725
10726         * gtk/gtktextview.c: text_window_* weren't static and should have
10727         been.
10728         Start work on child widgets; not yet complete, syncing to 
10729         office computer.
10730
10731         * gtk/gtktextchild.h: change this to contain a public interface,
10732         starting work on child interfaces.
10733         * gtk/gtktextchildprivate.h: move private interfaces here
10734
10735         * gtk/Makefile.am: update to reflect gtktextchildprivate.h
10736
10737         * gtk/gtktextview.h, gtk/gtktextview.c, gtk/gtktextbuffer.h,
10738         gtk/gtktextbuffer.c, gtk/gtktextiter.h, gtk/gtk/textiter.c, 
10739         gtk/gtktextmark.c: copyright notices
10740
10741         * gtk/gtktextmarkprivate.h: reformat, and put _ in front of
10742         internal functions      
10743
10744         * gtk/gtktextchild.c (_pixbuf_segment_new): put _ in front of
10745         internal function
10746
10747         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
10748         Reformatting    
10749
10750 2000-09-30  Havoc Pennington  <hp@pobox.com>
10751
10752         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Handle
10753         NULL start/end pointers
10754
10755         * gtk/gtktextbuffer.c: Write some docs
10756         (gtk_text_buffer_get_selection_bounds): Allow start/end to be
10757         NULL, so you can just check whether there's a selection.        
10758
10759         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): No need to 
10760         cleanup_line or segments_changed ourselves, it gets done 
10761         in unlink_segment
10762
10763         * gtk/gtktextmark.h:
10764         s/gtk_text_mark_deleted/gtk_text_mark_get_deleted/
10765         
10766         * gtk/gtktextsegment.h: Clean up some indentation and naming mess
10767
10768         * gtk/gtktextmark.c: delete some more old Tk cruft
10769
10770         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_mark): add ref to
10771         mark before removing it, so we can emit MARK_DELETED with a valid
10772         pointer.
10773         (gtk_text_buffer_mark_set): hold ref across signal emission
10774
10775         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): improve
10776         whining about attempts to delete special marks
10777
10778         * gtk/gtktextbuffer.c (_gtk_text_buffer_spew): Prepend with
10779         underscore, since it's internal.
10780
10781         * gtk/gtktextbuffer.h: Remove find_string prototype, this is 
10782         now implemented in terms of iterators in gtktextiter.h
10783
10784         * gtk/gtktextbuffer.c (gtk_text_buffer_set_text): 
10785         New function, destructively sets contents of buffer. Also 
10786         a convenient way to clear the buffer by setting text to ""
10787
10788         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): reformat
10789         multiline string literal
10790
10791         * gtk/testtext.c (text_changed_callback): Redraw line numbers if
10792         text changes.
10793
10794         * gtk/gtktextiter.c (forward_char): Return FALSE if new location 
10795         is not dereferenceable
10796         (gtk_text_iter_forward_lines): fix return value
10797
10798 2000-09-29  Havoc Pennington  <hp@redhat.com>
10799
10800         * gtk/gtktexttag.c (gtk_text_tag_set_priority): fix indentation
10801
10802         * gtk/gtktextview.c: Implement drag thresholding; change functions 
10803         that set border window size to have nicer name
10804         (gtk_text_view_mark_set_handler):  Fix this to have the 
10805         right signature.
10806
10807         * gtk/testtextbuffer.c (fill_buffer): Update with pixbuf changes
10808
10809         * gtk/testtext.c: Update with API changes, put line numbers on 
10810         both sides.
10811         
10812         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): Replace get_pixmap
10813         with this
10814
10815         * gtk/gtktextchild.h, gtk/gtktextchild.c: replace all pixmap with
10816         pixbuf; delete a big block of #if 0 Tk code
10817
10818         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_pixbuf): Replace 
10819         insert_pixmap with insert_pixbuf
10820
10821 2000-09-29  Martin Baulig  <baulig@suse.de>
10822
10823         * gdk-pixbuf.pc.in: Renamed to gdb-pixbuf-2.0.pc.in to avoid
10824         confusion with the GdkPixbuf of the GNOME 1.x platform.
10825
10826 2000-09-29  Havoc Pennington  <hp@pobox.com>
10827
10828         * gtk/gtktextview.c: Implement the side windows.
10829
10830         * gtk/testtext.c: Implement simple line numbering in the 
10831         left side window; seems to make scrolling sloooow. Oops.
10832         Also, cursor blink is for some reason causing redraws
10833         of the line numbers. Should investigate...
10834
10835 2000-09-28  Havoc Pennington  <hp@redhat.com>
10836
10837         * gtk/gtktextview.c: Set up infrastructure to deal with lots of 
10838         scrolling child windows, and draw focus rectangle properly.
10839         
10840         (gtk_text_view_buffer_to_window_coords):
10841         Coordinate transformation to deal with all these freaking windows
10842         and offsets
10843         (gtk_text_view_window_to_buffer_coords): transform the other way
10844
10845         * gtk/testtext.c (create_buffer): Update to match Pango API change
10846
10847         * gtk/gtktexttagtable.c (gtk_text_tag_table_foreach): Go over the
10848         anonymous tags
10849         (foreach_unref): don't emit remove signal from finalize, just
10850         set tag's parent to NULL
10851
10852 2000-09-26  Havoc Pennington  <hp@redhat.com>
10853
10854         * gtk/gtkiconfactory.c (gtk_icon_set_clear): remove
10855         Fix some warnings       
10856
10857 2000-09-26  Havoc Pennington  <hp@redhat.com>
10858
10859         * gtk/Makefile.am (gtk_private_h_sources): Move more text widget
10860         headers into the private header list
10861
10862         * Makefile.am (pkgconfig_DATA): install pkg-config files
10863
10864         * configure.in: add pkg-config files
10865
10866         * gdk-2.0.pc.in, gdk-pixbuf.pc.in, gtk+-2.0.pc.in: pkg-config files
10867
10868         * gtk/gtkwindow.c (gtk_window_read_rcfiles): Invalidate
10869         outstanding icon caches on theme change.
10870
10871         * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: New icon system. Three 
10872         important types:
10873
10874         (GtkIconSource): Specification for creating a pixbuf 
10875         appropriate for a direction/state/size triplet from 
10876         a source pixbuf or filename
10877
10878         (GtkIconSet): List of GtkIconSource objects that are used to
10879         create the "same" icon (e.g. an OK button icon), and cache for
10880         rendered icons
10881
10882         (GtkIconFactory): Hash from stock ID to GtkIconSet; used to look
10883         up the icon set for a given stock ID.  GTK maintains a stack of
10884         GtkIconFactory to search, and applications or libraries can add
10885         additional icon factories on top of the stack
10886         
10887         * gtk/gtkrc.h, gtk/gtkrc.c: When loading an RcStyle, parse 
10888         the set of GtkIconSource specified for a given stock ID into 
10889         a GtkIconSet, and put the GtkIconSet into a GtkIconFactory for the 
10890         RcStyle, under the specified stock ID.
10891
10892         * gtk/gtkstyle.h, gtk/gtkstyle.c: Add a virtual function
10893         render_icon used to derive a GdkPixbuf from a GtkIconSource.
10894         This allows people to theme how prelight, insensitive, etc. are
10895         done.
10896
10897         (gtk_style_lookup_icon_set): Look up a stock ID in the list of
10898         icon factories for a style, and return the resulting 
10899         icon set if any.
10900
10901         (gtk_style_render_icon): Render an icon using the render_icon 
10902         method in the GtkStyleClass.
10903
10904         * gtk/gtkwidget.h, gtk/gtkwidget.c (gtk_widget_render_icon): 
10905         Use the style for a given widget to look up a stock ID, get the
10906         icon set, and render an icon using the render_icon method 
10907         of the style
10908
10909         * gtk/gtkstock.h, gtk/gtkstock.c: Header with the GtkStockItem type
10910         (contains information about a stock item), the built-in stock item
10911         IDs, and functions to add/lookup stock items.
10912
10913         * gtk/stock-icons/*: Stock icons that come with GTK
10914
10915         * gtk/gtkbutton.h, gtk/gtkbutton.c (gtk_button_new_stock): Returns
10916         a button based on a GtkStockItem
10917         (gtk_button_new_accel): Takes a uline string and accel group, and
10918         installs the accelerator.
10919
10920         * gtk/gtkimage.h, gtk/gtkimage.c: Make this into a generic
10921         image-display widget.
10922
10923 2000-09-25  Havoc Pennington  <hp@redhat.com>
10924
10925         * gtk/gtktexttypes.c: Remove Latin1 conversion stuff
10926
10927         * gtk/gtktextbtree.c (gtk_text_btree_node_remove_data): 
10928         Fix a bug when removing node data, we didn't properly 
10929         re-splice the linked list after removing the data.
10930
10931         * gtk/gtktextview.c (gtk_text_view_key_press_event): Pass through 
10932         GDK_Tab as literal tab, Ctrl-Tab to tab to focus widget
10933
10934         * gtk/gtktextbuffer.c (selection_received): fix g_convert usage
10935
10936         * gtk/gtktextlayout.c (set_para_values): Set tab array 
10937         for the layout from the GtkTextTag.
10938
10939         * gtk/gtktexttypes.h: delete tab and search cruft, 
10940         remove g_convert() in favor of GLib version
10941
10942         * gtk/gtktexttypes.c: remove tab implementation from here,
10943         move to Pango
10944
10945         * gtk/gtktexttag.h, gtk/gtktexttag.c: Implement 
10946         tab stuff using new PangoTabArray from Pango
10947
10948         * gtk/gtktexttag.c (gtk_text_attributes_fill_from_tags): Remove
10949         unused border_width stuff
10950
10951 Thu Sep 14 12:21:12 2000  Owen Taylor  <otaylor@redhat.com>
10952
10953         * gtk/gtktexttypes.[ch]: Remove g_convert (moved to
10954         glib) and now useless utf_to_latin1() latin1_to_utf()
10955
10956         * gtk/gtktextview.[ch]: Change ::move_insert and
10957         ::delete_text action signals to ::move and ::delete;
10958         create the signals with the right enumeration type,
10959         not GTK_TYPE_ENUM so that bindings work. Add C-d, M-d,
10960         C-v bindings, change Home, End to move to beginning/end
10961         of line, Add C-Home C-End to move to beginning/end
10962         of buffer. Change ::cut_text to ::cut_clipboard, etc;
10963         combine ::scroll_text into ::move; use new GtkSelectionData
10964         functions to simplify DND text handling.
10965         
10966         * gtk/gtkenums.h gtk/gtktextview.h: Move movement,
10967         deletion enumerations here, rename enumeration values to 
10968         be consistently plural.
10969
10970         * gtk/gtktextbuffer.c: Use new clipboard interfaces
10971         for cut/copy/paste and primary selection.
10972
10973         * gtk/gtktextbuffer.[ch]: Remove excess time and
10974         'interactive' arguments from cut/copy/paste;
10975         rename cut to cut_clipboard, etc; remove
10976         gtk_text_buffer_get_clipboard_contents().
10977
10978         * gtk/gtktextlayout.[ch]: Add 
10979         gtk_text_layout_move_iter_to_line_end() to move the iter to 
10980         line ends.
10981
10982         * gtk/gtkselection.[ch] (gtk_selection_data_set/get_text):
10983         Functions to set or get a UTF-8 string on the selection
10984         data.
10985
10986         * gtk/gtkclipboard.[ch]: New, simplified selection handling
10987         interfaces.
10988
10989         * gtk/gtkinvisible.c (gtk_invisible_new): Realize newly
10990         created widgets - one of these is useless if we don't.
10991
10992         * gtk/gtkselection.[ch] (gtk_selection_clear_targets): Export
10993         a public function clear all targets registered for the
10994         widget.
10995
10996         * gtk/gtkselection.c (gtk_selection_owner_set) docs/Changes-2.0.txt:
10997         Never call gtk_widget_realize() - that was just asking
10998         for bizarre side-effects.
10999
11000         * gtk/gtkselection.c (gtk_selection_owner_set): Call
11001         gdk_selection_owner_set even if the widget is the
11002         same so that we reliably update the timestamp on
11003         the server.
11004
11005         * gdk/x11/gdkevents-x11.c gdk/x11/gdkx.h: Add a 
11006         gdk_x11_get_server_time() function.
11007         
11008         * gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.h
11009         gdk/x11/gdkselection-x11.c gdk/x11/gdkwindow-x11.h:
11010         Add some tricky filtering on serial numbers for
11011         selection clear events to fix up long-standard
11012         race condition FIXME's in gtkselection.c.
11013
11014         * gdk/gdkproperty.h gdk/x11/gdkselection-x11.h: Add
11015         routines to convert from utf8 to compound text or
11016         STRING and from a text property to UTF-8.
11017
11018         * gtk/gtkmain.[ch] (gtk_get_current_event_time): Add 
11019         a convenience function gdk_get_current_event_time().
11020
11021         * gtk/gtkselection.c (gtk_selection_data_copy/free): Copy
11022         and free selection_data->data properly
11023
11024 Sat Sep  9 10:23:53 2000  Owen Taylor  <otaylor@redhat.com>
11025
11026         * gtk/gtkthemes.c: Remove some unecessary includes.
11027
11028 2000-09-08  Jonathan Blandford  <jrb@redhat.com>
11029
11030         * gtk/gtktextdisplay.c
11031         * gtk/gtktextlayout.c
11032         * gtk/gtktexttag.c
11033         * gtk/gtktexttag.h
11034         * gtk/testtext.c: Change the overstrike property to strikethrough,
11035         to closer match pango.
11036
11037 Fri Sep  8 14:28:00 2000  Owen Taylor  <otaylor@redhat.com>
11038
11039         * gtk/gtktextview.c: Fix up visibility so that focus,
11040         cursor_visible and blink interact properly.  Reenable cursor blink
11041         which had been roughly disabled. Make blink and focus
11042         properly per-view.
11043
11044         * gtk/gtktextlayout.[ch] (gtk_text_layout_set_cursor_visible):
11045         Add a flag for whether to display insertion cursor and
11046         a function to set the flag.
11047
11048         * gtk/gtktextlayout.c (gtk_text_layout_get_line_yrange): Change
11049         get_line_y() to get_line_yrange(), to be a bit more generally
11050         useful.
11051
11052 Thu Sep 07 20:54:33 2000  George Lebl <jirka@5z.com>
11053
11054         * gtk/gtkmenu.c:  in gtk_menu_set_submenu_navigation_region
11055           do stop_navigating_submenu, to clear last timeout properly.
11056           Also in gtk_menu_motion_notify move ignore_enter above
11057           the conditional to make it always happen as suggested by Owen
11058
11059 2000-09-07  Tor Lillqvist  <tml@iki.fi>
11060
11061         * gdk/win32/makefile.mingw.in: Use -Wall. Add gdkpango-win32.o
11062
11063         * gdk/win32/gdkwin32.h: Add more definitions missing from the free
11064         w32api headers.
11065
11066         * gdk/win32/gdkprivate-win32.h: Add a couple of missing
11067         declarations.
11068
11069         * gdk/win32/gdkdrawable-win32.c: Remove gcc -Wall warnings.
11070         (gdk_win32_get_colormap): A line had been deleted by mistake.
11071
11072         * gdk/win32/gdkevents-win32.c: Remove lint (gcc -Wall) here, too.
11073         (gdk_event_translate): Handle more virtual keycodes to be able to
11074         generate GDK events for Control-comma, Control-period, etc.
11075
11076         * gtk/gtk.def: Add some missing entry points.
11077
11078 Thu Sep  7 11:47:02 2000  Owen Taylor  <otaylor@redhat.com>
11079
11080         * gtk/gtktextbuffer.c gtk/gtkimcontext.c gtk/gtkwidget.c:
11081         Doc comment fixing. (Mostly non-matching parameter names.)
11082
11083         * gtk/gtkcalendar.c gtk/gtklist.c gtk/gtknotebook.c: Modify
11084         comments a little to avoid looking like a doc comment.
11085
11086         * gtk/gtkspinbutton.h (GTK_INPUT_ERROR): Change INPUT_ERROR to
11087         GTK_INPUT_ERROR. (Should the mechanism for erros in spin button
11088         conversions be changed to GError?)
11089
11090         * gtk/gtkcolorsel.c (GTK_CUSTOM_PALETTE_WIDTH/HEIGHT): 
11091         Move private #defines into .c file.
11092
11093         * gtk/gtktexttag.c (gtk_text_tag_class_init): Alphabetize
11094         order of argument addition, remove duplicates.
11095
11096         * gtk/gtkaspectframe.h (struct _GtkAspectFrameClass):
11097         parent class is FrameClass, not BinClass.
11098
11099         * gtk/gtk.h: Add gtkinvisible, which was missing.
11100         (It's occasionalyl useful for client apps, if seldom.)
11101
11102         * gdk/gdktypes.h: Remove obsolete GDK_CORE_POINTER
11103         #define.
11104
11105 Wed Sep  6 09:53:15 2000  Owen Taylor  <otaylor@redhat.com>
11106
11107         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Use X-space
11108         coordinates when creating window, instead of GDK-space
11109         coordinates. (Avoid BadValue on too large windows.)
11110
11111 2000-09-05  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
11112
11113         * configure.in (use_mmx_asm): Remove conftest* after use along the
11114         lines of AC_TRY_COMPILE.        
11115         
11116         * gtk/gtkrc.c (gtk_rc_parse_file): Use g_path_get_dirname instead
11117         of g_dirname, which is deprecated.
11118         (gtk_rc_parse_any): Removed calls to
11119         g_scanner_{freeze,thaw}_symbol_table, which are deprecated.
11120
11121         * gtk/gtkbindings.c (binding_entry_new, binding_entry_destroy):
11122         Removed calls to g_hash_table_{freeze,thaw}, as they are
11123         deprecated now.
11124
11125         * gtk/testtext.c (buffer_pretty_name): Use g_path_get_basename
11126         instead of g_basename.
11127         
11128 2000-09-04 Elliot Lee <sopwith@redhat.com>
11129         
11130         * gdk/gdkpixbuf.h: Put text after #endif inside a comment to avoid
11131         ANSI warning.
11132
11133 Sun Sep 03 00:47:08 2000  George Lebl <jirka@5z.com>
11134
11135         * gtk/gtkwidget.h:  Add some documenting comments about 
11136           GTK_CAN_DEFAULT, GTK_HAS_DEFAULT and GTK_RECEIVES_DEFAULT
11137           just as owen said on irc.
11138
11139         * gtk/gtkwindow.c (gtk_window_set_default):  Don't blindly
11140           set HAS_DEFAULT.  Only set it if there isn't another window
11141           holding it (a focus window which RECEIVES_DEFAULT) and only unset
11142           it if the widget is not the focused window with RECEIVES_DEFAULT.
11143           This fixes weird double default bugs in dialogs which has things
11144           call gtk_window_set_default at times.
11145
11146 Fri Sep  1 22:39:07 2000  Owen Taylor  <otaylor@redhat.com>
11147
11148         * gtk/gtkmenu.[ch] TODO.xml: Apply patch from
11149         Nils Barth and David Santiago to improve submenu
11150         navigation. The patch does this by creating a triangular
11151         region from the point where the pointer leaves the
11152         menu to the submenu.  While the pointer is in
11153         that region and a timeout has not expired, events 
11154         that would cause the active submenu to change are
11155         ignored.
11156
11157 Fri Sep  1 15:34:46 2000  Owen Taylor  <otaylor@redhat.com>
11158
11159         * gdk/x11/gdkwindow-x11.c (gdk_window_move): Fix bug where
11160         moving a toplevel window immediately after sizing it would
11161         result in it being sized back to the old size since 
11162         impl->width, impl->height aren't updated until we hear
11163         back from the server. There is still a (longstanding) bug
11164         here that gdk_window_get_size() will give the wrong size
11165         until we do hear back.
11166
11167 2000-08-31  Havoc Pennington  <hp@redhat.com>
11168
11169         * gtk/gtktextiter.h, gtk/gtktextiter.c, gtk/gtktextlayout.h, 
11170         gtk/gtktextlayout.c, gtk/gtktexttag.h, gtk/gtktexttag.c, 
11171         gtk/gtktexttagprivate.h, gtk/gtktextview.c:
11172         Rename GtkTextStyleValues to GtkTextAttributes
11173
11174 2000-08-31  Havoc Pennington  <hp@pobox.com>
11175
11176         * gtk/gtktextbtree.c (GtkTextBTree): cache end line, 
11177         for rapid testing whether an iterator is the end iterator
11178         (gtk_text_btree_new): init end line cache
11179         (gtk_text_line_is_last): use fast cached line to 
11180         see if we're the last line.
11181         (get_last_line): use cached line here too, should 
11182         speed up some random unrelated code.
11183         
11184 2000-08-30  Havoc Pennington  <hp@pobox.com>
11185
11186         * gtk/gtkmarshal.list: Add marshallers for changed GtkTextBuffer
11187         signals.
11188
11189         * gtk/gtktextbuffer.h: Add "interactive" arg to insert_text and
11190         delete_text signals. This allows the signals to be used for
11191         implementing undo.
11192
11193         * gtk/gtktextbuffer.c: Change signal handler signatures; 
11194         provide "interactive" argument when emitting insert_text or
11195         delete_text signal.
11196         
11197 2000-08-30  Havoc Pennington  <hp@pobox.com>
11198
11199         * gtk/gtktextbuffer.c: Docs
11200
11201 Fri Aug 25 12:16:15 2000  Owen Taylor  <otaylor@redhat.com>
11202
11203         * gdk/x11/gdkimage-x11.c: remove GDK_IMAGE_SHARED_PIXMAP
11204         from switch statements, since Tor removed the enumeration
11205         value.
11206         
11207         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
11208         s/GDK_IS_WINDOW/GDK_IS_DRAWABLE/.
11209
11210 2000-08-29 Elliot Lee <sopwith@redhat.com>
11211         * */*.h: Use G_GNUC_CONST.
11212
11213 2000-08-27  Havoc Pennington  <hp@pobox.com>
11214
11215         * gtk/gtktextiter.c, gtk/gtktextiter.h: wrote lots of API docs,
11216         minor indentation fixes, inserted some FIXME about stuff I
11217         realized was broken while documenting it.
11218         (gtk_text_iter_get_pixmap): allow out params to be NULL, following
11219         GTK convention  
11220
11221 Tue Aug 22 12:33:24 2000  Owen Taylor  <otaylor@redhat.com>
11222
11223         * gtk/testgtk.c (create_styles): Fix double free of
11224         font desc.
11225
11226 Mon Aug 21 22:39:18 2000  Owen Taylor  <otaylor@redhat.com>
11227
11228         * gtk/gtkwidget.[ch]: Add gtk_widget_modify_{fg,bg,text,base,font}.
11229         
11230         * gtk/testgtk.c (create_styles): Add a test for modifying
11231         the style through gtk_widget_modify_*.
11232
11233         * gtk/gtkwidget.c (gtk_widget_get_modifier_style): Add
11234         a function to get the current modifier style.
11235
11236         * gtk/gtkwidget.c (gtk_widget_modify_style): Make a copy
11237         of the passed in GtkRcStyle instead of ref'ing it.
11238
11239         * gtk/gtkrc.[ch]: Add gtk_rc_style_copy().
11240
11241 2000-08-20  Tor Lillqvist  <tml@iki.fi>
11242
11243         * gdk/gdkimage.h
11244         * gdk/win32/gdkimage-win32.c: No need any longer on Win32 for the
11245         shared memory image+pixmap GdkImage type, or
11246         gdk_image_bitmap_new(). They were used in the gdk_imlib port, but
11247         I am dropping that.
11248
11249         * gtk/gtkmain.h: On Win32, use a #define to map gtk_init() to
11250         actually call gtk_init_abi_check(), passing also
11251         sizeof(GtkWindow). Ditto for gtk_init_check(). 
11252
11253         * gtk/gtk.def
11254         * gtk/gtkmain.c: (gtk_init_abi_check, gtk_init_check_abi_check):
11255         New functions, used to check that the GTK+-using code has been
11256         compiled using the correct compiler and switches. In particular,
11257         with gcc one has to use the -fnative-struct switch as GTK+ is
11258         compiled with that.
11259
11260 Fri Aug 18 17:27:46 2000  Owen Taylor  <otaylor@redhat.com>
11261
11262         * gtk/gtkclist.c (gtk_clist_merge): Don't leave dangling
11263         ->prev fields when merging lists. (Found simultaneously
11264         by Pawel Salek and Jakub Jelinek)
11265
11266 2000-08-12  Tor Lillqvist  <tml@iki.fi>
11267
11268         * gdk/gdk.def
11269         * gtk/gtk.def: Add missing entries.
11270
11271         * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Use
11272         OUT_TT_ONLY_PRECIS, try to get a TrueType font.
11273
11274         * gdk/win32/gdkinput-win32.c (gdk_device_get_state): New
11275         function. Dummy implementation at this point.
11276
11277         * gtk/makefile.mingw.in: Fix typo. Add testtext and testtextbuffer
11278         rules. Undefine GTK_COMPILATION when compiling the test programs.
11279         
11280         * gtk/gtkdebug.h: Mark gtk_debug_flags for export/import.
11281
11282 2000-08-11  Tor Lillqvist  <tml@iki.fi>
11283
11284         * gtk/gtkfilesel.c: Add more calls to g_filename_{to,from}_utf8()
11285         to convert back and forth from UTF-8 and the "system" (or "current
11286         locale") charset when necessary. Indentation/spacing cleanup.
11287
11288 2000-08-10  Havoc Pennington  <hp@redhat.com>
11289
11290         * Makefile.am (snapshot): Change the format of the snapshot
11291         version to match glib
11292
11293         * gdk/win32/Makefile.am (EXTRA_DIST): remove gdkinputprivate.h
11294         from EXTRA_DIST since it doesn't seem to exist
11295
11296 2000-08-10  Tor Lillqvist  <tml@iki.fi>
11297
11298         * gtk/gtkfilesel.c (open_new_dir): Use the "system codepage"
11299         version of the directory name (not the UTF-8 one) when building
11300         the path name to stat().
11301
11302 2000-08-03  Elliot Lee  <sopwith@redhat.com>
11303
11304         * gdk/gdkpango.c (gdk_draw_layout_line): Don't shape runs with a
11305         PANGO_ATTR_SHAPE set.
11306
11307 Thu Aug  3 09:17:06 2000  Owen Taylor  <otaylor@redhat.com>
11308
11309         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Applied patch from
11310         Peter Osterlund to simplify the code while keeping the
11311         functionality the same.
11312
11313 Wed Aug  2 14:57:38 2000  Owen Taylor  <otaylor@redhat.com>
11314
11315         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Move
11316         is_viewable() test further inside the function, since removing the 
11317         window from the redraw list without clearing ->update_area
11318         was also very broken.
11319
11320 2000-08-02  Tor Lillqvist  <tml@iki.fi>
11321
11322         * configure.in: Check for <unistd.h>.
11323
11324 2000-08-01  Martin Baulig  <baulig@suse.de>
11325
11326         * gtk/gtkmain.c (gtk_init_check): Use g_message() and not g_warning()
11327         to display the message that this is a development version of GTK+.
11328
11329 Mon Jul 31 18:37:36 2000  Owen Taylor  <otaylor@redhat.com>
11330
11331         * gtk/gtkentry.c (entry_adjust_scroll): Fix problem where computation
11332         was depending on widget->allocation instead of the width of text_area,
11333         which was incorrect for subclasses like GtkSpinButton.
11334
11335         * gdk/gdkpango.c (gdk_draw_layout): Fix a couple of typos
11336         with width == 1 tests that should be width == -1.
11337
11338 Mon Jul 31 16:45:48 2000  Owen Taylor  <otaylor@redhat.com>
11339
11340         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Replace broken, 
11341         (broken, Elliot, every single window blank on X) custom code with call
11342         to gdk_window_is_viewable() which a) prevents code duplicate and
11343         b) works. 
11344
11345 2000-07-31  Elliot Lee  <sopwith@redhat.com>
11346
11347         * gtk/gtkcolorsel.c: We really do need to include gdkfb.h in order
11348         to get the GDK_PARENT_ROOT() macro to work.
11349         * gtk/gtkmarshal.list: Add NONE:STRING,POINTER
11350         * gdk/gdkwindow.c: Don't send expose events, or invalidate pieces
11351         of, windows that aren't shown.
11352         * gdk/linux-fb: Redraw-when-menu-hidden solved, plus a bunch of
11353         pointer grab stuff.
11354
11355 Mon Jul 31 13:53:16 BST 2000  Tony Gale <gale@gtk.org>
11356
11357         * docs/gtkfaq.sgml docs/gtk-faq.sgml:
11358           s/gtk_main_iteration/g_main_iteration/
11359
11360           Did this already in change:
11361                 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
11362           don't know how it got reverted.
11363
11364 2000-07-31  Stanislav Brabec  <utx@penguin.cz>
11365
11366         * gdk/gdk.c: #ifdef G_ENABLE_DEBUG around gdk_arg_debug_cb and
11367         gdk_arg_no_debug_cb to fix compilation problem with --disable-debug.
11368
11369         * gdk/Makefile.am: Link gdk against actually compiled gdk_pixbuf-1.3,
11370         not gdk_pixbuf.
11371
11372 2000-07-30  Pablo Saratxaga <pablo@mandrakesoft.com>
11373
11374         * configure.in,po/{sp,sr}.po: Added Serbian files
11375
11376 2000-07-30  Tor Lillqvist  <tml@iki.fi>
11377
11378         * gdk/Makefile.am: Add makefile.mingw.in to EXTRA_DIST.
11379
11380         * gdk/win32/gdkevents-win32.c (gdk_events_init, gdk_events_queue):
11381         Remove the g_pipe_readable_msg stuff. Not needed with new GLib
11382         GIOChannel implementation.
11383
11384         * gdk/win32/gdkinput.c
11385         * gdk/win32/gdkpango-win32.c: Update license name here, too.
11386
11387         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_lookup): Fix
11388         definition to match prototype.
11389
11390         * gtk/makefile.mingw.in: Add libiconv CFLAGS and LIBS.
11391
11392 2000-07-27  Elliot Lee  <sopwith@redhat.com>
11393
11394         * gtk/gdk-pixbuf-loader.[ch]: Add gdk_pixbuf_loader_new_with_type
11395         function, to allow handling image formats that cannot be detected
11396         by looking at content alone.
11397
11398 Thu Jul 27 13:13:21 BST 2000  Tony Gale <gale@gtk.org>
11399
11400         * docs/tutorial/*.gif *.jpg *.eps
11401           Update these to the same look-n-feel.
11402           Why does including images in DocBook suck so badly?
11403
11404 Thu Jul 27 05:06:29 2000  Tim Janik  <timj@gtk.org>
11405
11406         * gtk/gtktable.c: applied patch from Phil Thompson
11407         <phil@river-bank.demon.co.uk> that enables space settings for
11408         the last row/columns as well.
11409
11410 Wed Jul 26 12:59:31 2000  Tim Janik  <timj@gtk.org>
11411
11412         * *.[hc]: applied patch from Andreas Persenius <ndap@swipnet.se> that
11413         updates the license headers to the GNU Lesser General Public License,
11414         as well as updating the copyright year to 2000.
11415
11416 2000-07-26  Robert Brady  <rwb197@zepler.org>
11417
11418         * configure.in: Cause GETTEXT_PACKAGE to be consistent in config.h
11419           and po/Makefile, was installing and looking for them under gtk20
11420           and gtk2 respectively.
11421
11422 2000-07-25  Havoc Pennington  <hp@redhat.com>
11423
11424         * gtk/testtext.c: Comment out some stuff that depends on the rest
11425         of my patches.
11426
11427 2000-07-25  Havoc Pennington  <hp@redhat.com>
11428
11429         * gtk/gtkmarshal.list: Add NONE:POINTER,POINTER,INT for the text
11430         buffer
11431
11432 2000-07-25  Havoc Pennington  <hp@redhat.com>
11433
11434         * gtk/testtext.c, gtk/testtextbuffer.c: update to reflect text
11435         widget changes.
11436
11437         * gtk/gtktextview.h: To be consistent with usage of "line"
11438         throughout the API to mean "newline-terminated thingy", change
11439         MOVEMENT_LINE to be MOVEMENT_WRAPPED_LINE, and MOVEMENT_PARAGRAPH
11440         to MOVEMENT_LINE.
11441
11442         (GtkTextView): Add flags for default editability, and whether to
11443         show the cursor. Add functions to get/set that. Add 
11444
11445         (gtk_text_view_get_iter_location): new function
11446
11447         * gtk/gtktexttypes.h: Move GtkTextLine typedef from here to
11448         gtktextlayout.h
11449         (g_convert): Add g_convert temporarily, will go in glib in a bit
11450         
11451         * gtk/gtktexttagtable.h: include gtktexttag.h, and define
11452         GtkTextTagTableForeach instead of brokenly using GHFunc.
11453         Change gtk_text_tag_table_foreach() so it doesn't use GHFunc.
11454
11455         * gtk/gtktexttagprivate.h: Remove GtkTextStyleValues from here,
11456         moved to public header.
11457
11458         * gtk/gtktexttag.h: Rename the "elide" attribute of tags to
11459         "invisible", since "elide" was a bad name.
11460         (gtk_text_tag_get_priority): Added
11461
11462         (GtkTextStyleValues): put this in public header, along with
11463         functions to use it.
11464
11465         * gtk/gtktextmarkprivate.h: Include more headers, since we no
11466         longer include gtktextbtree.h.
11467
11468         * gtk/gtktextmark.h: Add gtk_text_mark_ref, gtk_text_mark_unref,
11469         gtk_text_mark_deleted
11470
11471         * gtk/gtktextlayout.h: Don't include the "really private" headers,
11472         only buffer/iter. Forward declare GtkTextLIne and GtkTextLineData
11473         to make this possible. Now we only need to install
11474         gtktextlayout.h, not gtktextbtree.h and gtktext*private.h.
11475         (However the Makefile.am isn't changed yet because of the
11476         logistics of merging gtk-hp-patches piecemeal)
11477
11478         * gtk/gtktextiterprivate.h: include btree header, so it compiles;
11479         rename gtk_text_iter_get_line to gtk_text_iter_get_text_line since
11480         gtk_text_iter_get_line is now used in the public API for a
11481         different purpose.
11482
11483         * gtk/gtktextiter.h: Clean up function names to be more
11484         consistent. Always call char offset "offset" and byte index
11485         "index". A "line" is always a line number. 
11486
11487         (gtk_text_iter_is_last): new function, more efficient than 
11488         the existing way to check
11489         (gtk_text_iter_is_first): new function, also more efficient
11490
11491         (gtk_text_iter_up_lines, gtk_text_iter_down_lines): Remove these
11492
11493         (gtk_text_iter_next_char, gtk_text_iter_prev_char): Renamed from 
11494         gtk_text_iter_forward_char, etc.
11495
11496         (gtk_text_iter_forward_to_tag_toggle): Renamed from
11497         forward_find_tag_toggle, since this isn't a linear search
11498
11499         (GtkTextCharPredicate): rename from GtkTextViewCharPredicate
11500
11501         (gtk_text_iter_forward_search, gtk_text_iter_backward_search): 
11502         New functions, search for a buffer substring.
11503
11504         * gtk/gtktextbuffer.h: Add fields to store whether a paste is
11505         interactive and default editable (since we need to store that info
11506         until we receive the selection data).
11507
11508         Remove all the _at_char and at_line etc. versions of functions;
11509         only have iterator versions.
11510
11511         Add _interactive() versions of functions, that consider the
11512         editability of text. (FIXME add interactive flag to the 
11513         insert/delete signals per Darin's suggestion)
11514
11515         (gtk_text_buffer_get_tag_table): new function, demand-creates the
11516         tag table if necessary
11517
11518         Remove declaration of gtk_text_buffer_get_iter_from_string
11519
11520         (_gtk_text_buffer_get_btree): private/internal function, added.
11521         
11522
11523         * gtk/gtktextbtree.h: Remove forward decl of GtkTextLineData.
11524         (gtk_text_line_is_last): new function
11525
11526 2000-07-25  Havoc Pennington  <hp@redhat.com>
11527
11528         * gtk/gtkprogressbar.h: Implement new sane, 5-function API for
11529         using GtkProgressBar. See Changes-2.0.txt for details.
11530
11531         * gtk/gtkprogressbar.c: Add object arguments "fraction" and
11532         "pulse_step" which are the equivalent of
11533         gtk_progress_bar_set_pulse_step and gtk_progress_bar_set_fraction.
11534         Implement new API.
11535         
11536         * gtk/gtkprogress.h (struct _GtkProgress): Add a field
11537         (use_text_format) to mark whether text set on the progress bar is
11538         a format string. Deprecate entire GtkProgress interface.
11539
11540         * gtk/gtkprogress.c (gtk_progress_init): init use_text_format to TRUE
11541         (gtk_progress_build_string): make this a no-op if use_text_format
11542         is FALSE
11543
11544         * docs/Changes-2.0.txt: Describe progress bar changes.
11545
11546 2000-07-25  Tor Lillqvist  <tml@iki.fi>
11547
11548         * Makefile.am: Include the build directory.
11549
11550         * configure.in: Generate build/Makefile, build/win32/Makefile,
11551         gdk/, gdk/win32/, and gtk/makefile.mingw.
11552
11553         * config.h.win32: Add USE_GMODULE and USE_MMX for gdk-pixbuf.
11554         Add GETTEXT_PACKAGE.
11555         
11556         * gdk/gdk.def
11557         * gtk/gtk.def: Updates.
11558
11559         * gdk/gdkfont.h
11560         * gdk/gdkpixmap.h: Remove temporary Win32-only functions, we don't
11561         need them any longer.
11562
11563         * gdk/gdkinput.h: Mark gdk_core_pointer for export/import.
11564
11565         * gdk/makefile.mingw.in: Define GDK_COMPILATION. Link with
11566         PANGOWIN32_LIBS and gdk_pixbuf.
11567
11568         * gdk/win32: Compiles, but no doubt doesn't work at all.
11569
11570         * gdk/win32/makefile.mingw.in: Define GDK_COMPILATION. 
11571
11572         * gdk/win32/gdkinput.c: New file, temporarily.
11573         
11574         * gdk/win32/gdkinput-win32.h: New file
11575
11576         * gdk/win32/gdkinputprivate.h: Remove.
11577
11578         * gdk/win32/gdkpango-win32.c: New file.
11579
11580         * gtk/makefile.mingw.in: New file
11581
11582         * gtk/makefile.cygwin: Removed
11583         
11584         * gtk/Makefile.am: Update accordingly.
11585
11586         * gtk/gtkrc.[ch] (gtk_win32_get_installation_directory): Renamed and
11587         made externally visible.
11588
11589         * gtk/gtkmain.c: Use it.
11590         
11591         * gtk/gtktextdisplay.c: No need to include pangox.h, pango.h
11592         is enough.
11593
11594         * gtk/gtktypeutils.c: Mark glib_debug_objects for import.
11595
11596 2000-07-24 Elliot Lee <sopwith@redhat.com>
11597         * gdk/gdkprivate.h: Remove gdk_*_lookup() defines, since they are defined by the
11598         individual backends already.
11599         * gdk/gdkregion-generic.h, gdk/gdktypes.h: Put gdkregionbox & gdksegment back together
11600         again. Yes, there really is a good reason for this, if you are using the gdkregion
11601         internals, and if you're not, why do you care?
11602         * gdk/gdkwindow.c: Fix inverted condition
11603         * gdk/linux-fb: Compiles (for me - it will not work elsewhere most likely).
11604         * gtk/gtkcolorsel.c, gtk/gtkwindow.c: Add include for linux-fb
11605         * gtk/gtkrange.c: Redraw trough when moving.
11606         * gtk/gtktypeutils.c: Fix warning by adding const cast.
11607         * modules/linux-fb/basic.c: Fix unknown glyph retrieval.
11608
11609 2000-07-23  Tor Lillqvist  <tml@iki.fi>
11610
11611         * configure.in: Check for mkstemp and sigsetjmp. Output
11612         gdk-pixbuf/makefile.mingw and gdk-pixbuf/pixops/makefile.mingw.
11613
11614         More work on GDK for Win32. Still in an intermediate state.
11615
11616         * gdk/makefile.cygwin
11617         * gdk/win32/makefile.cygwin: Removed.
11618         
11619         * gdk/makefile.mingw.in
11620         * gdk/win32/makefile.mingw.in: New files.
11621
11622         * gdk/Makefile.am
11623         * gdk/win32/Makefile.am: Generate and distribute them.
11624
11625         * gdk/win32/gdkwindow-win32.h
11626         * gdk/win32/gdkdrawable-win32.h
11627         * gdk/win32/gdkpixmap-win32.h: New files.
11628
11629         * gdk/win32/gdkcolor-win32.c
11630         * gdk/win32/gdkcursor-win32.c
11631         * gdk/win32/gdkdrawable-win32.c
11632         * gdk/win32/gdkgc-win32.c
11633         * gdk/win32/gdkimage-win32.c
11634         * gdk/win32/gdkprivate-win32.h
11635         * gdk/win32/gdkwin32.h: Update data structures. Cosmetics:
11636         Rename fields and variables called xcursor, xid, etc (these names
11637         were leftovers from the X11 backend) to hcursor, hwnd, hbitmap etc.
11638
11639 Sat Jul 22 17:41:26 2000  Owen Taylor  <otaylor@redhat.com>
11640
11641         * gtk/gtkentry.[ch]: Fix some problems with vertical
11642         alignment.
11643
11644         * gtk/gtkentry.c (gtk_entry_find_position): Fix 
11645         char/byte confusion.
11646
11647 Sat Jul 22 11:16:05 2000  Owen Taylor  <otaylor@redhat.com>
11648
11649         * gtk/gtktextview.c (changed_handler): Fix bug where
11650         redraw wasn't being done properly when height of
11651         dirty region changed.
11652
11653         * demos/Makefile.am: Remove various references to
11654         -lgmodule
11655
11656 Fri Jul 21 15:28:13 2000  Owen Taylor  <otaylor@redhat.com>
11657
11658         * gtk/gtktextlayout.[ch], gtk/gtktextdisplay.c: Use new
11659         PangoAttrShape to reserve space for pixmaps, add 
11660         GSList *pixmaps to GtkTextLineDisplay, draw the pixmaps
11661         in the display functions.
11662         
11663         * gtk/testgtk.c (create_layout): Set some more exotic
11664         scrolled window options
11665
11666         * gtk/gtkscrolledwindow.[ch] (gtk_scrolled_window_set_shadow_type):
11667         Add function to set the shadow type of a window, to allow
11668         putting a shadow around widgets such as GtkLayout or GnomeCanvas
11669         which don't draw their own frame.
11670
11671 Fri Jul 21 16:34:42 BST 2000  Tony Gale <gale@gtk.org>
11672
11673         * docs/tutorial/package-db-tutorial.sh: New file for
11674           packaging DocBook format tutorial
11675
11676 Fri Jul 21 14:23:51 BST 2000  Tony Gale <gale@gtk.org>
11677
11678         * docs/tutorial/gtk-tut.sgml: Minor updates
11679
11680         * docs/tutorial/*.jpg *.eps: Screenshots for tutorial
11681
11682 2000-07-19  Tor Lillqvist  <tml@iki.fi>
11683
11684         * gtk/gtksignal.c: Fix C++ comment.
11685
11686         * gtk/gtkimmulticontext.c
11687         * gtk/gtktextbtree.c: Remove gccisms: Don't use __FUNCTION__,
11688         don't return value from void functions.
11689
11690         * gtk/gtk.def: Add gtk_rc_style_unref.
11691
11692 2000-07-19  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
11693
11694         * gdk-pixbuf/gdk-pixbuf.h, gtk/gtkhsv.h, gtk/gtktextbtree.h,
11695         gtk/gtktextbuffer.h, gtk/gtktextchild.h, gtk/gtktextdisplay.h,
11696         gtk/gtktextiter.h, gtk/gtktextiterprivate.h, gtk/gtktextlayout.h,
11697         gtk/gtktextmarkprivate.h, gtk/gtktextsegment.h, gtk/gtktexttag.h,
11698         gtk/gtktexttagtable.h, gtk/gtktexttypes.h, gtk/gtktextview.h,
11699         gtk/gtktypeutils.h: Include files outside of the extern "C"
11700         block. Makes some C++ compiler happy. Reported by Denis Vakatov
11701         <vakatov@peony.nlm.nih.gov>.
11702
11703 Wed Jul 19 14:07:57 BST 2000  Tony Gale <gale@gtk.org>
11704
11705         * docs/tutorial/gtk-tut.sgml: Yet more clean ups.
11706           Completes first pass. Hurrah!
11707
11708 Tue Jul 18 17:17:55 BST 2000  Tony Gale <gale@gtk.org>
11709
11710         * docs/tutorial/gtk-tut.sgml: More clean ups.
11711
11712 Mon Jul 17 18:52:38 2000  Owen Taylor  <otaylor@redhat.com>
11713
11714         * gtk/gtkentry.c (gtk_entry_draw_text): Restore code to
11715         paint the background of the text area which was accidentally
11716         removed at some point.
11717
11718         * gtk/gtkrc.[ch] gtk/gtkstyle.[ch] gtk/gtkthemes.[ch]: 
11719           
11720          - Move most of the functionality from the theme vtable
11721            into GtkRcStyleClass and GtkStyleClass. The moved
11722            vtable functions were changed a bit in the move to
11723            work better in their new home.
11724
11725          - Get rid of the engine and engine_data fields from
11726            GtkRcStyle and GtkStyle; instead the theme
11727            engine derives theme-specific subclasses of GtkRcStyle
11728            and GtkStyle
11729
11730          - Add extra dlsym() found entry point to themes,
11731            theme_create_rc_style().
11732
11733         * gtk/gtkstyle.c: Copy xthickness, ythickness fields
11734         in gtk_style_real_copy.
11735
11736         * gtk/themes.[ch]: add a function gtk_theme_engine_register_type()
11737         to register a type associated with an engine. (The engine
11738         won't be unloaded as there is an instance of the type.)
11739
11740
11741 Mon Jul 17 18:19:06 BST 2000  Tony Gale <gale@gtk.org>
11742
11743         * docs/tutorial/gtk-tut.sgml: Clean ups.
11744
11745 Mon Jul 17 13:59:29 BST 2000  Tony Gale <gale@gtk.org>
11746
11747         * docs/tutorial/gtk-tut.sgml: Initial DocBook version. Lots
11748           of cleaning up to do.
11749
11750 2000-07-15  Tor Lillqvist  <tml@iki.fi>
11751
11752         * gdk/testgdk.c: New file, quick hack to test backends for
11753         pixel-by-pixel correctness of the most simple graphic operations.
11754
11755 Fri Jul 14 20:30:25 2000  Owen Taylor  <otaylor@redhat.com>
11756
11757         * Really release 1.3.1
11758         
11759         * gtk-config-2.0.in gtk-2.0.m4: Fix up to correspond to new
11760         include structure.
11761
11762 Fri Jul 14 18:40:39 2000  Owen Taylor  <otaylor@redhat.com>
11763
11764         * Released 1.3.1
11765
11766 Fri Jul 14 16:21:26 2000  Owen Taylor  <otaylor@redhat.com>
11767
11768         * gtk/gtktextlayout.c: use FALSE for size_only most
11769         of the time when calling gtk_text_layout_get_line_display()
11770         to avoid causing double reshapes when a redraw follows
11771         immediately after.
11772
11773 Tue Jul 11 11:13:40 2000  Owen Taylor  <otaylor@redhat.com>
11774
11775         * gtk/gtkrange.c (gtk_range_default_[hv]slider_update): Invalidate
11776         appropriate region and gdk_window_process_updates() so trough
11777         updating doesn't lag behind the window being scrolled.
11778
11779         * gdk/gdkgc.c: Make parent_class pointer static.
11780          
11781 Sun Jul  9 21:31:23 2000  Owen Taylor  <otaylor@redhat.com>
11782
11783         * gdk/gdk-pixbuf.c gtk/gdk-pixbuf-loader.c gtk/gtktextview.c:
11784         include <string.h>.
11785          
11786         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Fix
11787         cut-and-paste error in computing memory offset for 4 channels.
11788
11789 Fri Jul 14 14:05:02 2000  Owen Taylor  <otaylor@redhat.com>
11790
11791         * gtk/gtkrc.c (gtk_rc_parse_pixmap_path_string): Remove
11792         gtk_rc_append_default_pixmap_path(), since it wasn't
11793         adding an interesting path and we don't have a meaningful
11794         default for this value.
11795
11796 Fri Jul 14 12:22:49 2000  Owen Taylor  <otaylor@redhat.com>
11797
11798         * configure.in Makefile.am gtk-config.m4 gtk.m4: Move
11799         gtk-config to gtk-config-2.0 move gtk_.m4 to
11800         gtk-2.0.m4
11801
11802         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
11803         gdk/Makefile.am demos/Makefile.am: Change 
11804         library names to libgtk-1.3.la, etc, so that we
11805         can distinguish gtk-1.2 and gtk-2.0 on the linkline.
11806
11807         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
11808         gdk/Makefile.am gdk/x11/Makfile.am
11809         Move include files into /usr/include/gtk-2.0, 
11810         /usr/lib/gtk-2.0/include/
11811          
11812         * autogen.sh acconfig.h configure.in gtk/gtkmain.c
11813         gtk/gtkintl.h: Change package for gettext from 
11814         gtk+ to gtk20. Put hack in autogen.sh to modify
11815         po/Makefile.in.in after gettextize to make this
11816         possible.
11817
11818         * gtk+.spec: Some updates, not tested.
11819
11820         * gdk-pixbuf/Makefile.am: Move loaders into
11821         $(libdir)/gtk-2.0/$(GTK_VERSION)/loaders.
11822
11823         * gtk/Makefile.am gtk/gtkrc.c: Move RC file locations
11824         $(sysconfdir)/gtk-2.0 ~/.gtkrc-2.0; theme subdir
11825         to THEMENAME/gtk-2.0/. Move engine directory  to
11826         $(libdir)/gtk-2.0/$(GTK_VERSION)/engines.
11827         
11828 2000-07-12  Tor Lillqvist  <tml@iki.fi>
11829
11830         Win32 changes, still doesn't build though.
11831
11832         * gdk/makefile.cygwin
11833         * gdk/win32/makefile.cygwin
11834         * gtk/makefile.cygwin: Updates.
11835
11836         * gdk/win32/gdkgc-win32.c (_gdk_win32_gc_new): Use the same
11837         default values for fg and bg pixel as X11 does (0 and 1), not
11838         black and white. Use PS_ENDCAP_FLAT and PS_JOIN_MITER by default.
11839         Use 0 for pen width by default (treated as 1 anyway later, but for
11840         apps that might check the value in the GdkGC).
11841         (gdk_win32_hdc_get, gdk_win32_hdc_release): New functions, public
11842         interface to gdk_gc_predraw and _postdraw.
11843
11844         * gdk/win32/gdkwin32.h
11845         * gdk/gdk.def: Add gdk_win32_hdc_{get,release}.
11846
11847         * gdk/win32/gdkcolor-win32.c (gdk_colormap_alloc1): Remove
11848         extraneous semicolon.
11849
11850         * gdk/win32/gdkdrawable-win32.c: Check also for pen_width == 0.
11851
11852         * gdk/win32/gdkimage-win32.c (gdk_image_new): Use the visual's depth,
11853         not the Win32 bitspixel value.
11854
11855         * gdk/win32/gdkcc-win32.c:
11856         * gdk/win32/gdkcolor-win32.c 
11857         * gdk/win32/gdkprivate-win32.h
11858         * gdk/win32/gdkwin32.h: Changes to make compilable, with new
11859         GDK object structure.
11860
11861 Tue Jul 11 20:59:35 2000  Tim Janik  <timj@gtk.org>
11862
11863         * docs/tutorial/gtk_tut_12.es.sgml (name): 
11864         * docs/tutorial/gtk_tut_it.sgml (name): 
11865         * docs/tutorial/gtk_tut_fr.sgml (name): 
11866         * docs/tutorial/gtk_tut.sgml (name): scratched notion of completely
11867         outdated email adress: s/timj@psynet.net/timj@gtk.org/.
11868
11869 Tue Jul 11 13:10:57 BST 2000  Tony Gale <gale@gtk.org>
11870
11871         * docs/faq/gtk-faq.sgml: Cleanup indenting and various
11872           small changes.
11873
11874 Tue Jul 11 08:04:58 2000  Tim Janik  <timj@gtk.org>
11875
11876         * gtk/gtktree.c (gtk_real_tree_select_child): eek, i've never seen
11877         a bug here, never been here and never fixed anything ;(
11878         (don't segfault if tree->root_tree is NULL, which happens prior
11879         to widget realization, but puke instead).
11880
11881 Tue Jul 11 06:38:42 2000  Tim Janik  <timj@gtk.org>
11882
11883         * gtk/gtkrc.h: add xthickness and ythickness to GtkRcStyle and
11884         add the necessary tokens.
11885
11886         * gtk/gtkrc.c (gtk_rc_style_init): properly initiality the rc style.
11887         (gtk_rc_style_to_style): copy thicknesses.
11888         (gtk_rc_init_style): apply thicknesses.
11889         (gtk_rc_parse_style): parse xthickness and ythickness.
11890
11891         * gdk/x11/gdkdnd-x11.c: silence compiler in switch() statements.
11892
11893         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): 
11894         (gdk_window_new): 
11895         (_gdk_windowing_window_init): 
11896         * gdk/x11/gdkpixmap-x11.c (gdk_pixmap_foreign_new): 
11897         (gdk_pixmap_create_from_data): 
11898         (gdk_bitmap_create_from_data): 
11899         (gdk_pixmap_new): 
11900         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
11901         (gdk_image_new): 
11902         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): 
11903         * gdk/x11/gdkdnd-x11.c (gdk_drag_context_new): 
11904         * gdk/x11/gdkcolor-x11.c (gdkx_colormap_get):
11905         (gdk_colormap_get_system): 
11906         (gdk_colormap_new): 
11907         * gdk/gdkwindow.c (gdk_window_init): 
11908         * gtk/gtkstyle.c (gtk_style_new):
11909         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done):
11910         * gdk/gdkpixmap.c (gdk_pixmap_init): 
11911         * gtk/gtkrc.c (gtk_rc_style_new):
11912         use g_object_new() instead of g_type_create_instance() which
11913         is a private function for fundamental type implementations.
11914
11915 Thu Jul  6 16:12:14 2000  Owen Taylor  <otaylor@redhat.com>
11916
11917         * configure.in: Add check for db2html
11918
11919 Thu Jul  6 14:53:05 2000  Owen Taylor  <otaylor@redhat.com>
11920
11921         * gtk/gtktypeutils.c (gtk_type_init): Add a temporary 
11922         hack to set glib_debug_objects based on gtk_debug_flags.
11923
11924 Thu Jul  6 14:12:13 2000  Owen Taylor  <otaylor@redhat.com>
11925
11926         * INSTALL.in: Update the Prerequisites section.
11927
11928         * Makefile.am demos/Makefile.am docs/Makefile.am
11929         docs/tutorial/Makefile.am gdk/x11/Makefile.am
11930         gdk/linux-fb/Makefile.am: Dist fixes
11931
11932 Thu Jul  6 12:26:03 2000  Owen Taylor  <otaylor@redhat.com>
11933
11934         * NEWS: 10,000 foot view of 1.3.1 changes.
11935
11936 Thu Jul  6 11:54:03 2000  Owen Taylor  <otaylor@redhat.com>
11937
11938         * gdk/gdk.h gdk/gdktypes.h gdk/linux-fb/gdkmain-fb.c
11939         gdk/nanox/gdkmain-nanox.c gdk/win32/gdkevents-win32.c
11940         gdk/win32/gdkinput-win32.c gdk/win32/gdkwin32.h
11941         gdk/x11/gdkmain-x11.c: 
11942
11943         Patch from George Lebl to add a GdkGrabStatus enumeration to use
11944         as a return value of gdk_*_grab(). Previously, we just
11945         returned the X11 values directly.
11946
11947 Thu Jul  6 11:27:44 2000  Owen Taylor  <otaylor@redhat.com>
11948
11949         * gdk/x11/Makefile.am: Patch from George Lebl to 
11950         install all the headers in the right place.
11951
11952 Tue Jul  4 13:13:01 BST 2000  Tony Gale <gale@gtk.org>
11953
11954         * docs/faq/gtk-faq.sgml: Add remaining sections. Completes
11955           initial conversion to DocBook.
11956
11957 2000-07-04  Tor Lillqvist  <tml@iki.fi>
11958
11959         * README.win32: Improve a bit.
11960
11961         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Handle also
11962         WM_SYSCHAR, and other changes to get handling of Alt+nnn or
11963         Alt+0nnn on the numpad (used to enter characters by numeric code
11964         from current DOS or ANSI codepage) working correctly, as in other
11965         Windows apps.
11966
11967         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Use
11968         same argument validity tests as in X11 version.
11969         (_gdk_cursor_destroy): Use DestroyCursor, not DestroyIcon.
11970
11971         * gdk/win32/gdkwin32.h: Add also WM_MOUSEWHEEL and CopyCursor
11972         definitions in case missing from headers.
11973
11974         * gdk/win32/gdkwindow-win32.c (gdk_win32_window_destroy): Also
11975         destroy the window-specific cursor.
11976         (RegisterGdkClass): Use the global gdk_ProgInstance instead of
11977         calling GetModuleHandle(NULL).
11978         (gdk_window_set_cursor): Reworked to always copy the passed cursor
11979         with CopyCursor before setting it as the window-specific
11980         cursor. It is OK for the caller to destroy the GdkCursor (and thus
11981         also its Windows cursor) after calling this function. Destroy any
11982         previous window-specific cursor.
11983
11984 Mon Jul  3 17:54:49 2000  Owen Taylor  <otaylor@redhat.com>
11985
11986         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): 
11987         font charset is iso8859-1, not iso-8859-1.
11988
11989 Mon Jul  3 17:08:14 2000  Owen Taylor  <otaylor@redhat.com>
11990
11991         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale):
11992         Use g_get_charset() instead of g_get_codeset().
11993
11994         * gtk/gtkframe.[ch] gtkframe.h gtk/gtktextmark.h: 
11995         Comment out some strdup'ing functions to keep timj
11996         happy until we finish fighting this out.
11997
11998 Mon Jul  3 14:24:16 2000  Owen Taylor  <otaylor@redhat.com>
11999
12000         * gtk/gtkwidget.c (gtk_widget_draw): Ignore calls with
12001         <= width or height.
12002
12003         * gtk/gtktable.c (gtk_table_attach): Fix missed merge
12004         from 1.2 for parent/child states.
12005
12006         * gdk/gdkgc.c (gdk_gc_set_rgb_fg/bg_color): Fix a couple
12007         of typos.
12008
12009         * gdk/gdkevents.[ch]: Remove press/xtilt/ytilt fields of
12010         event structures, replace with a generic axes field. Replace 
12011         deviceid/sourec with GdkDevice *device.
12012
12013         * gdk/gdkevents.[ch] (gdk_event_get_axis): Add function
12014         to extract particular axis use value from event. (Also
12015         can be used for normal X/Y.)
12016
12017         * gdk/gdkinput.h gdk/x11/gdkinput*: Major revision;
12018         allow for arbitrary number of axes, namespace everything
12019         as gdk_device_*. Replace guint32 deviceid with GdkDevice *
12020         everywhere.
12021
12022         * gdk/x11/{gdkmain-x11.c,gdkevent-x11.c,gdkinput*}: 
12023         Get rid of the gdk_input_vtable setup if favor of simply
12024         defining the functions in gdkinput-none/gxi/xfree.c in
12025         a similar fashion to the way that the port structure is 
12026         done.
12027
12028         * gtk/gtkdnd.c: Fix fields of synthesized button press event
12029         for new event structures. 
12030
12031         * gtk/gtkinputdialog.c gtk/testinput.c: Revise to match
12032         new device interfaces.
12033
12034 Sun Jul  2 18:19:50 2000  Owen Taylor  <otaylor@redhat.com>
12035
12036         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_layout): Add a 'text' argument to
12037         set the initial text.
12038
12039         * gtk/gtkaccellabel.c gtk/gtkcalendar.c gtk/gtkclist.c
12040         gtk/gtkentry.c gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c
12041         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvruler.c
12042         gtk/gtkvscale.c: Adapt to new argument of create_pango_layout().
12043
12044         * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
12045         pango_layout_set_font_description to simplify.
12046
12047 Sun Jul  2 17:43:41 2000  Owen Taylor  <otaylor@redhat.com>
12048
12049         * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
12050         pango_layout_set_font_description to simplify.
12051
12052 Sun Jul  2 17:06:40 2000  Owen Taylor  <otaylor@redhat.com>
12053
12054         * gtk/gtkcalendar.c gtk/gtkclist.c gtk/gtkctree.c gtk/gtkhscale.c
12055         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvscale.c gtk/gtkaccellabel.c: Use
12056         pango_layout_get_pixel_extents() to remove a large number of '/ PANGO_SCALE'.
12057
12058         * gtk/gtk[hv]ruler.c gtk/gtklabel.c: replace some / PANGO_SCALE with
12059         PANGO_PIXELS() macro.
12060
12061 Sun Jul  2 15:24:41 2000  Owen Taylor  <otaylor@redhat.com>
12062
12063         * gtk/gtkwidget.[ch] (gtk_widget_get_pango_context): Add new function
12064         that returns a PangoContext owned by the widget and updated to
12065         match future changes in the widget. Also, make 
12066         gtk_widget_create_pango_layout() use this context. If we ever
12067         add a ::changed signal to PangoContext, this will make things
12068         much more convenient. 
12069
12070         * gtk/gtkentry.c gtk/gtklabel.c: Call pango_layout_context_changed()
12071         in the appropriate places instead of destroying the layouts and
12072         creating new ones.
12073
12074         * gtk/gtkfontsel.[ch] gtk/gtkclist.c: Use gtk_widget_get_pango_context()
12075         in a few strategic places.
12076
12077 Sun Jul  2 14:37:58 2000  Owen Taylor  <otaylor@redhat.com>
12078
12079         * gtk/gtkoptionmenu.c (gtk_option_menu_size_request): Call 
12080         gtk_widget_size_request() on reparented child, if one. Otherwise,
12081         queue_resize() on the child never results in it getting size-requested
12082         at all.
12083
12084         * gtk/testgtk.c (build_option_menu): Remove silly radio-menu-items
12085         in option menus, so that (with luck) people won't copy it into
12086         their apps in the future.
12087
12088         * gtk/gtkoptionmenu.c: Connect ::size_request on the menu
12089         to gtk_option_menu_calc_size. This isn't perfect, but should fix
12090         a lot of problems with changing the size of the menu's menu
12091         items after adding it to the option menu.
12092
12093         * gtk/gtktexttag.c: Include gtkmain.h for gtk_get_default_language().
12094
12095         * gtk/gtkwidget.[ch]: Add a ::direction_changed that triggers when
12096         the text direction for a widget changes.
12097
12098         * gtk/gtk{entry.c,label.[ch],textview.[ch]} gtk/testgtk.c: Use
12099         ::direction_changed to get rid of various hacks.
12100
12101 Sun Jul  2 13:19:12 2000  Owen Taylor  <otaylor@redhat.com>
12102
12103         * docs/Changes-2.0.txt: Move Changes-1.4.txt to the appropriate
12104         name.
12105
12106 Sun Jul  2 13:06:26 2000  Owen Taylor  <otaylor@redhat.com>
12107
12108         * gdk/x11/gdkpixmap-x11.[ch] Changes-1.4.txt: Add a is_foreign
12109         flag to the structure. Do not call XFreePixmap on pixmaps created
12110         by gdk_pixmap_foreign_new().
12111
12112 Sun Jul  2 12:45:50 2000  Owen Taylor  <otaylor@redhat.com>
12113
12114         * gdk/gdkrgb.[ch]: Add gdk_rgb_find_color() to get a pixel
12115         value using GdkRGB functionality given GdkColormap and GdkColor.
12116         (name not final, waiting for inspiration.)
12117         
12118         * gdk/gdkgc.[ch] (gdk_gc_set_rgb_fg/bg_color): New functions to
12119         set the foreground/background of a GC using the GC's colormap
12120         and GdkRGB. (name not final, waiting for inspiration.)
12121
12122         * gdk/gdkcompat.h gdk/gdkrgb.c (gdk_rgb_get_colormap): Rename from 
12123         gdk_rgb_get_cmap(), put #define in gdkcompat.h.
12124
12125         * gtk/gtkwidget.[ch] gtkcompat.h: Make visuals for
12126         gtk_widget_get_visual(), gtk_widget_get_default_visual, etc,
12127         purely a function of the corresponding colormap. Make
12128         gtk_widget_set_visual(), etc, noop macros in gtkcompat.h.
12129
12130         * gdk/gdkpixmap.c gdk/x11/gdkpixmap-c11.c: Rewrite
12131         gdk_pixbuf_*create_from_xpm_* in terms of
12132         gdk_pixbuf_new_from_xpm_data(), move into platform independent
12133         code.
12134
12135         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Take
12136         advantage of the new draw_rgb_32_image_dithalign.
12137
12138         * gdk/gdkrgb.c (gdk_draw_rgb_32_image_dithalign): Added.
12139
12140         * gtk/gtkgc.c (gtk_gc_new): Set the appropriate colormap
12141         on each created GC.
12142
12143         * gdk/gdkgc.[ch]: Add gdk_gc_get/set_colormap.
12144
12145         * gdk/gdkgc.[ch]: Add a colormap field to the GdkGC structure
12146         which we initialize from the drawable when the GC is created,
12147         if the drawable has a colormap.
12148
12149         * gdk/x11/gdkgc-x11.c: include string.h for memset.
12150
12151         * gdk/x11/gdkinput-x11.c: include string.h for strlen, etc.
12152
12153         * gtk/gtklayout.[ch]: Remove unsed configure serial member.
12154
12155 Sat Jul  1 16:28:32 2000  Owen Taylor  <otaylor@redhat.com>
12156
12157         * gdk/x11/gdkevents-x11.c (gdk_event_translate): When
12158         actually returning expose events, make sure to set
12159         the count field properly.
12160
12161         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): Fix
12162         accidentally reintroced bug which always cleared
12163         the graphics_exposures value. 
12164
12165 Wed Jun 28 18:03:09 BST 2000  Tony Gale <gale@gtk.org>
12166
12167         * docs/faq/gtk-faq.sgml: Change DocBook layout slightly
12168
12169 Wed Jun 28 17:49:05 BST 2000  Tony Gale <gale@gtk.org>
12170
12171         * docs/faq/gtk-faq.sgml: Finish Section 6. Add Section 7.
12172
12173 Wed Jun 28 13:31:55 BST 2000  Tony Gale <gale@gtk.org>
12174
12175         * docs/faq/gtk-faq.sgml: Start of Section 6.
12176
12177 Mon Jun 26 19:37:04 2000  Owen Taylor  <otaylor@redhat.com>
12178
12179         * configure.in: Put 1.3.1 in warning message, not 1.3.0.
12180         
12181         (Fixes problem with drawing childless frames. Pointed out
12182         by and a first patch from Anders)
12183         
12184         * gtk/gtkframe.c (gtk_frame_compute_child_allocation): Always
12185         compute a child_allocation, even if we don't have a child.
12186
12187         * gtk/gtkaspectframe.c (gtk_aspect_frame_compute_child_allocation):
12188         Always chain to the parent's impl, even if we don't have a child.
12189
12190 Mon Jun 26 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
12191
12192         * gdk/gdkrgb.c: If possible, create only a single shm segment and
12193         use multiple parts of it instead of creating a bunch of separate
12194         segments, since the maximum number of segments per system is not
12195         large. (This might be worth backporting to GTK+-1.2.x if we make a
12196         new release )
12197
12198         * gdk/gdkrgb.c: Localize a bunch of variables into the GdkRgbInfo
12199         structure in preparation for per-colormap GdkRGB.
12200
12201         * gdk/x11/gdkimage-x11.c (gdk_image_new): Don't set gdk_use_xshm
12202         to False when we get EINVAL from shmget so that the caller of
12203         gdk_image_new can retry with a smaller segment size.
12204
12205 Mon Jun 26 13:01:16 BST 2000  Tony Gale <gale@gtk.org>
12206
12207         * docs/faq/gtk-faq.sgml: Add Sections 4 & 5.
12208
12209 Fri Jun 23 17:54:23 2000  Tim Janik  <timj@gtk.org>
12210
12211         * configure.in: make the current version number 1.3.1 (binary age 0,
12212         interface age 0).
12213         
12214         * gtkfeatures.h, gtkfeatures.h.in: dejavue, get rid of these *again*,
12215         gtkcompat.h is all we want.
12216
12217         * gtk/gtktypeutils.[hc]: define most of the primitive types in terms of
12218         GLib primitive types. fixed g_type_register_fundamental() argument
12219         ordering.
12220
12221         * gtk-config.in (lib_gtk): add -lgdk_pixbuf so third party code
12222         compiles.
12223
12224         * gdk-pixbuf-loader.[hc]: get rid of unistd.h include.
12225         object code cleanup, comment trigraph fixes, etc...
12226
12227 2000-06-23  Havoc Pennington  <hp@redhat.com>
12228
12229         * gtk/gtktextview.c (gtk_text_view_set_buffer): Use anonymous mark 
12230         instead of making up a bogus name for first_para_mark
12231
12232         * gtk/gtkstatusbar.h, gtk/gtkstatusbar.c: Allow 
12233         0 as a context ID
12234
12235 Thu Jun 22 17:43:51 BST 2000  Tony Gale <gale@gtk.org>
12236
12237         * docs/faq/gtk-faq.sgml: Change filename. Add Section 3.
12238
12239 2000-06-21  Havoc Pennington  <hp@pobox.com>
12240
12241         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Fix bug where
12242         we didn't check window->bg_pixmap != GDK_NO_BG.
12243
12244         * gtk/gdk-pixbuf-loader.c: Change to reflect GObject-ification of
12245         gdk-pixbuf
12246
12247 Thu Jun 22 14:02:19 BST 2000  Tony Gale <gale@gtk.org>
12248
12249         * docs/faq/gtk-faq.sgm: Move file to here.
12250           TODO: Update Makfile.am 
12251
12252 Thu Jun 22 13:41:09 BST 2000  Tony Gale <gale@gtk.org>
12253
12254         * docs/gtk-faq.sgm: Add Section 2
12255
12256 Thu Jun 22 08:43:45 BST 2000  Tony Gale <gale@gtk.org>
12257
12258         * docs/gtk-faq.sgm: New file. Start of DocBook
12259           version of the FAQ.
12260
12261 Wed Jun 21 23:04:17 2000  Owen Taylor  <otaylor@redhat.com>
12262
12263         * configure.in (GDK_PIXBUF_MAJOR): Define version
12264         numbers for GDK_PIXBUF_*, as they get substituted
12265         into a header file. Need to consider versioning
12266         for gdk-pixbuf more carefully later.
12267
12268 2000-06-21  Raja R Harinath  <harinath@cs.umn.edu>
12269
12270         Work with srcdir != builddir.   
12271         * demos/testanimation.c: Don't include "gdk-pixbuf.h".  Use
12272         <gtk/gdk-pixbuf-loader.h>, not "gtk-pixbuf/gdk-pixbuf-loader.h".
12273         * demos/testpixbuf.c: Likewise.
12274         * demos/testpixbuf-scale.c: Don't include "gdk-pixbuf.h".
12275         * demos/testpixbuf-drawable.c: Don't include "gdk-pixbuf.h".  Use
12276         <gdk/x11/gdkx.h>.
12277         * demos/pixbuf-demo.c: Use <gtk/gtk.h> not "gtk.h".  Don't include
12278         "gdk-pixbuf.h".
12279         * demos/Makefile.am (INCLUDES): Remove unneeded directories.
12280
12281 Wed Jun 21 19:45:02 2000  Owen Taylor  <otaylor@redhat.com>
12282
12283         * TODO.xml: Change 1.4 version numbers to 2.0.
12284
12285 Wed Jun 21 19:29:08 2000  Owen Taylor  <otaylor@redhat.com>
12286
12287         * gdk/gdkpixbuf-render.c gdk/gdkpixbuf-drawable.c: Indentation
12288         fixups to GTK+ standard.
12289
12290 Wed Jun 21 16:38:13 2000  Owen Taylor  <otaylor@redhat.com>
12291
12292         * gdk-pixbuf/* docs/reference/gdk-pixbuf/*: Welcome aboard,
12293         gdk-pixbuf.
12294
12295         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init):
12296         fixups for GObject.
12297
12298         * gdk/Makefile.am gdk/gdkpixbuf-render.[ch] gdk/gdkpixbuf.[ch]: Bits of 
12299         gdk-pixbuf with GDK dependencies moved into GDK.
12300         
12301         * gtk/Makefile.am gtk/gdk-pixbuf-loader.[ch]: Temporarily
12302         move gdk-pixbuf-loader here until GObject has signals.
12303
12304         * demos/: New directory of demos. Move demos from
12305         gdk-pixbuf here.
12306
12307         * demos/pixbuf-init.c: Small bit of code to check for
12308         loaders in ../gdk-pixbuf/.libs/gdk-pixbuf, and if found,
12309         set GDK_PIXBUF_MODULEDIR appropriately.
12310
12311         * gdk/gdkcompat.h: Remove GDK_DRAWABLE_PIXMAP compat
12312         define which no longer makes sense.
12313
12314 2000-06-21  Havoc Pennington  <hp@redhat.com>
12315
12316         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Use
12317         gtk_get_default_language
12318
12319         * gtk/gtkmain.h, gtk/gtkmain.c (gtk_get_default_language): 
12320         new function to get the default language
12321
12322         * gtk/gtktexttagprivate.h, gtk/gtktexttag.c, gtktextview.c: 
12323         s/gtk_text_view_style_values/gtk_text_style_values/
12324
12325         * gtk/gtktexttag.c, gtk/gtktexttag.h, gtk/gtktexttagprivate.h:
12326         Add a "language" field to tags.
12327
12328         (gtk_text_tag_set_arg): Fix bug in setting
12329         "bg_full_height_set" tag.
12330
12331 2000-06-21  Havoc Pennington  <hp@redhat.com>
12332
12333         * gtk/gtktextiter.h: Use gunichar instead of gint when appropriate
12334         in the interfaces
12335
12336         * gtk/gtktexttypes.c: Remove UTF functions, use glib 
12337         stuff instead when possible.
12338
12339         * gtk/gtktexttypes.h: Delete some unused constants
12340
12341         * gtktextbtree.c, gtktextiter.c, gtktextsegment.c, gtktextview.c,
12342         testtextbuffer.c: use glib instead of custom unicode routines
12343
12344 Wed Jun 21 12:50:58 2000  Owen Taylor  <otaylor@redhat.com>
12345
12346         * docs/es/: Removed mistakenly added generated sgml
12347
12348         * docs/{gdk.texi,gtk.texi,gdk.sgml} macros.texi texinfo.tex:
12349         Remove outdated info files.
12350
12351         * docs/gtk_tut* docs/package_tutorial.sh docs/tutorial:
12352         Moved tutorial files into subdir
12353
12354         * docs/gtkfaq.sgml docs/faq/gtkfaq.sgml: Move FAQ into
12355         subdir.
12356
12357         * docs/man/gtk_button.pod: Remove. (contents will be
12358         integrated into gtk-reference button page.)
12359
12360         * configure.in docs/Makefile.am docs/tutorial/Makefile.am
12361         docs/faq/Makefile.am: Adjust for new organization
12362
12363 2000-06-21 Christopher Blizzard  <blizzard@redhat.com>
12364
12365         * gdk/x11/Makefile.am (install-data-local): use $(mkinstalldirs)
12366         not $(MKINSTALLDIRS)
12367
12368 Wed Jun 21 12:24:28 2000  Owen Taylor  <otaylor@redhat.com>
12369
12370         * gtk/testgtk.c (create_text): Finish the job Elliot started
12371         of removing font setting test for text widget. (Since text widget
12372         and GdkFont are not deprecated, and cause portability problems.)
12373
12374 Wed Jun 21 11:41:43 2000  Owen Taylor  <otaylor@redhat.com>
12375
12376         * gtk/gtkentry.c gtk/gtkimcontextsimple.c gtk/gtklabel.c
12377         gtk/gtktexttypes.c gtk/testtext.c modules/linux-fb/basic.c:
12378         Remove use of libunicode in favor of new GLib functions.
12379
12380         * gtk/gtkcolorsel.c: Remove conditional includes for FB, win32,
12381         nano-x, framebuffer. The X11 include is just a hack until we get
12382         the necessary functions in gdkcolor.h, so there is no reason to
12383         add other includes of platforms.
12384
12385         * gtk/gtkwindow.c (gtk_window_compute_default_size): Revert 
12386         window bigger than the screen change.
12387
12388         * gtk/testgtk.c: Revert some random changes from Elliot
12389         that had no particular point and were causing testgtkrc
12390         not to function correctly.
12391         
12392         * gdk/gdkregion-generic.h: Revert change from Elliot. Just
12393         because GdkSegment and GdkRegionBox have the same fields,
12394         it doesn't mean that 'typedef GdkSegment GdkRegionBox'
12395         results in clearer code.
12396
12397         * gdk/x11/gdkinput-x11.c (gdk_input_common_select_events,
12398         gdk_input_translate_coordinates): Fix missed GdkObjectification
12399
12400 2000-06-18  Elliot Lee  <sopwith@redhat.com>
12401
12402         * gdk/Makefile.am, gdk/*/Makefile.am: Fix conditionality to work the "right" way.
12403         * gtk/gtk{plug,socket}.h: Missed commits from previous.
12404
12405 2000-06-20  Havoc Pennington  <hp@redhat.com>
12406
12407         * modules/linux-fb/Makefile.am: Make this compile
12408         without framebuffer enabled
12409
12410         * gdk/linux-fb/Makefile.am: Add conditional to not build
12411         framebuffer unless specified in configure
12412
12413         * gdk/gdkdraw.c (gdk_draw_drawable): Fix bug where I was getting
12414         the size of the target instead of source if -1 was passed for
12415         width/height
12416
12417         * gdk/x11/gdkgeometry-x11.c (gdk_window_compute_position): Fix 
12418         width/height confusion.
12419
12420 2000-06-19  Havoc Pennington  <hp@redhat.com>
12421
12422         * gdk/x11/gdkx.h (GDK_WINDOW_XWINDOW): change this to be
12423         GDK_DRAWABLE_XID. In the future, we probably want to make it
12424         faster with G_DISABLE_CHECKS turned on.
12425
12426 2000-06-14  Havoc Pennington  <hp@redhat.com>
12427
12428         * gdk/Makefile.am: add gdkpixmap.c
12429
12430         * gdk/gdk.c: s/gdk_window_init/_gdk_windowing_window_init/
12431         s/gdk_image_init/_gdk_windowing_image_init
12432
12433         * gdk/gdkcolor.c: make ref/unref compat wrappers for GObject
12434         ref/unref
12435
12436         * gdk/gdkcolor.h: make GdkColormap a GObject subclass
12437
12438         * gdk/gdkcompat.h: remove GdkWindowType compat, since
12439         GdkWindowType is now non-deprecated; 
12440         change gdk_window_get_type() compat to be
12441         gdk_window_get_window_type().
12442
12443         * gdk/gdkdnd.h: make GdkDragContext a GObject.
12444
12445         * gdk/gdkdraw.c, gdk/gdkdraw.h: Convert GdkDrawable to a pure
12446         virtual GObject. Make all functions call into the vtable.
12447         Move gdk_image_put() guts in here. Remove GdkDrawableType
12448         and gdk_drawable_get_type(), these are now GdkWindow-specific.
12449         draw_image, get_depth, get_size, set_colormap, get_colormap,
12450         get_visual added to the vtable.
12451         
12452         * gdk/gdkgc.h, gdk/gdkgc.c: Convert GdkGC to a pure virtual 
12453         GObject. Virtualize everything. 
12454         (gdk_gc_new_with_values): remove check for destroyed window,
12455         because now GdkWindow::create_gc will check this.
12456         (gdk_gc_set_values): New function to set GC values, this 
12457         was already implemented but wasn't in the header
12458
12459         * gdk/gdkimage.h, gdk/gdkimage.c: Convert GdkImage to a GObject.
12460
12461         * gdk/gdkinternals.h: Remove _gdk_window_alloc(), remove
12462         _gdk_window_draw_image(), remove _gdk_windowing_window_class,
12463         remove _gdk_window_class; add _gdk_window_impl_get_type() and
12464         _gdk_pixmap_impl_get_type(). Rename gdk_window_init to
12465         _gdk_windowing_window_init, rename gdk_image_init to
12466         _gdk_windowing_image_init.
12467         
12468         * gdk/gdkpango.c: Reflect GObject-ification of PangoContext.
12469         (gdk_draw_layout): Remove check for destroyed window, 
12470         because all the drawable methods already check it.
12471         
12472         * gdk/gdkpixmap.h, gdk/gdkpixmap.c: Convert GdkPixmap to GObject.
12473         Add gdkpixmap.c which contains implementation of GdkDrawable
12474         virtual table (by chaining to a platform-specific implementation
12475         object).
12476         
12477         * gdk/gdkprivate.h: Remove GDK_IS_WINDOW, GDK_IS_PIXMAP, 
12478         GDK_DRAWABLE_DESTROYED. Add GDK_WINDOW_DESTROYED. Replace
12479         GDK_DRAWABLE_TYPE with GDK_WINDOW_TYPE. Remove GdkDrawablePrivate,
12480         GdkWindowPrivate, GdkImageClass, GdkImagePrivate, GdkGCPrivate,
12481         GdkColormapPrivate. 
12482
12483         * gdk/gdktypes.h: #include <glib-object.h>
12484
12485         * gdk/gdkwindow.h, gdk/gdkwindow.c: Convert GdkWindow to GObject.
12486         Move most functionality to platform-specific implementation
12487         object. GdkWindow itself now handles the backing store, then
12488         chains to the platform-specific implementation.
12489         (gdk_window_get_window_type): return GdkWindowType of the window.
12490         (gdk_window_peek_children): New routine, returns the children of 
12491         a GdkWindow
12492         (gdk_window_get_children): Was in X11-specific code and did 
12493         XQueryTree. Changed to simply return a copy of window->children; 
12494         so it can go in cross-platform code.
12495         
12496         * gdk/x11/Makefile.am: fix broken MKINSTALLDIRS path
12497
12498         * gdk/x11/gdkcolor-x11.c: implement X-specific parts of 
12499         GdkColormap; just changed to use the new private data instead
12500         of casting to GdkColormapPrivate.
12501
12502         * gdk/x11/gdkcursor-x11.c: added a couple typechecks to 
12503         gdk_cursor_new().
12504
12505         * gdk/x11/gdkdnd-x11.c: Change the way we access private fields 
12506         (private data member in the GObject). 
12507         (xdnd_manager_source_filter): Function had broken 
12508         error handling, fix it (use gdk_error_trap_push).
12509
12510         * gdk/x11/gdkdrawable-x11.c: This file now implements
12511         a base class for GdkWindowImplX11/GdkPixmapImplX11. This 
12512         base class is purely for the convenience of the X port,
12513         and not part of the interface to cross-platform GDK.
12514
12515         * gdk/x11/gdkevents-x11.c: Reflect various renamings.
12516         
12517         * gdk/x11/gdkgc-x11.c: Implement a subclass of GdkGC that's
12518         specific to X, and returned by the create_gc virtual method
12519         of GdkDrawableImplX11. 
12520         (gdk_x11_gc_set_dashes): Change this to take an array of gint8
12521         rather than gchar, this was also changed in the GdkGC vtable.
12522         (gdk_x11_gc_values_to_xvalues): If GdkGCValues is NULL, or the
12523         mask is 0, return immediately, instead of checking every flag.
12524         This is faster, and keeps us from segfaulting if values is NULL
12525         and the mask contains some nonzero flags.
12526
12527         * gdk/x11/gdkgeometry-x11.c: deal with all the rearranging of
12528         GdkWindow.
12529
12530         * gdk/x11/gdkglobals-x11.c: change type of grab window, since 
12531         GdkWindowPrivate is gone.
12532
12533         * gdk/x11/gdkim-x11.c: rename things that got renamed.
12534
12535         * gdk/x11/gdkimage-x11.c: implement in terms of GObject, and 
12536         remove the image_put stuff that got transferred to GdkDrawable.
12537         
12538         * gdk/x11/gdkinput.c: renamings
12539
12540         * gdk/x11/gdkmain-x11.c: #include <pango/pangox.h>
12541
12542         * gdk/x11/gdkpixmap-x11.c: GObject conversion
12543
12544         * gdk/x11/gdkprivate-x11.h: indentation fixes
12545
12546         * gdk/x11/gdkproperty-x11.c: renamings
12547
12548         * gdk/x11/gdkselection-x11.c: renamings
12549
12550         * gdk/x11/gdkwindow-x11.c: Restructuring and renaming; this now 
12551         implements the platform-specific "impl" object.
12552         Moved gdk_window_get_children to gdk/gdkwindow.c
12553
12554         * gdk/x11/gdkx.h: Remove all the private structs and private datas
12555         that no longer exist. Add declaration of GdkGCX11 object here.
12556         Fix all the macros to still work. 
12557
12558         * gtk/gtk-boxed.defs: Remove GtkStyle, GdkColormap, GdkWindow,
12559         GdkDragContext from the boxed types since they are now GObjects.
12560
12561         * gtk/gtkstyle.h, gtk/gtkstyle.c: Converted GtkStyle to a GObject,
12562         moved xthickness/ythickness into the instance. GtkStyleClass
12563         functions are now in the standard vtable for GtkStyle, so you have
12564         to create a GObject subclass to write a theme engine.
12565         (gtk_style_copy): fixed a leaked PangoFontDescription
12566         (gtk_style_init): renamed gtk_style_realize, so gtk_style_init
12567         can be the standard GObject function.
12568         
12569         * Throughout GTK:
12570         s/style->klass->[xy]thickness/style->[xy]thickness
12571         s/pango_layout_unref/g_object_unref/
12572
12573         * gtk/gtkrc.h, gtk/gtkrc.c: Converted GtkRcStyle to a GObject.
12574         
12575         * gtk/gtksocket.c: Use gdk_window_get_user_data() instead of 
12576         accessing GDK internals.
12577
12578         * gtk/gtkwidget.c: Use gdk_window_peek_children() instead of 
12579         accessing GDK internals.
12580
12581 2000-06-18  Elliot Lee  <sopwith@redhat.com>
12582
12583         * gtk/gtkwindow.c: Don't allow creation of a window bigger than the screen.
12584
12585         * gtk/gtkrange.c: Fix the mega-jumpy-with-lagged-events scrollbar
12586         problem by calculating event position relative to the trough
12587         rather than the slider.
12588         * gtk/gtkdnd.c, gtk/gtkcolorsel.c: Include FB headers if appropriate.
12589
12590         * gdk/gdkgc.h: Add GDK_NOR.
12591
12592         * configure.in, Makefile.am: Add modules top level dir
12593         * configure.in: Only use pangox library if building x11 target.
12594         * gdk/gdkdnd.h: Add GDK_DRAG_PROTO_LOCAL enum for future intra-app use.
12595
12596 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
12597
12598         * gtk/gtkcolorsel.c: Change private class member to be named
12599         private_data throughout the file.
12600
12601         * gtk/gtkcolorsel.h (struct _GtkColorSelection): Change private to
12602         private_data to avoid clashing with keyword.
12603
12604 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
12605
12606         * gdk/gdkdnd.h: Add comment to remove warning.
12607
12608 Sun Jun 18 15:35:35 2000  Pablo Saratxaga <pablo@mandrakesoft.com>
12609
12610         * gtk/gtkrc.cp1251,gtk/Makefile.am: the cp1251 is also used by
12611         Byelorussian language; changed the Makefile and file names 
12612         to reflect that.
12613
12614 Mon Jun 12 16:58:40 2000  Owen Taylor  <otaylor@redhat.com>
12615
12616         * gtk/gtkwindow.c (gtk_window_unmap): Call gdk_window_withdraw
12617         rather than gdk_window_hide; this makes things work
12618         correctly if the window is programmatically hidden while
12619         iconified.
12620
12621 Sun Jun 11 12:46:19 2000  Owen Taylor  <otaylor@redhat.com>
12622
12623         * gtk/gtkdnd.c (gtk_drag_set_default_icon): Fix
12624         cut and paste typo where wrong pixmap was being
12625         unref'ed. (Pointed out by a friend of KUSANO Takayuki.)
12626
12627 Sun Jun 11 10:22:36 2000  Owen Taylor  <otaylor@redhat.com>
12628
12629         * gtk/gtkselection.c (gtk_selection_bytes_per_item):
12630         Add helper function to compute format / bytes 
12631         relationship. Use in a couple places to fix up
12632         errors which assume 8 * format.
12633
12634         * gtk/gtkselection.c (gtk_selection_request): Use 32
12635         rather than 8 * sizeof (GdkAtom), to work correctly
12636         on Alpha.
12637
12638 Thu Jun  8 21:54:51 2000 Christopher Blizzard  <blizzard@redhat.com>
12639
12640         * gtk/Makefile.am (DEPS): deps include libgtk-x11.la, not
12641         libgtk.la
12642         (LDADDS): include libgtk-x11.la and libgdk-x11.la, not the non-x11
12643         versions
12644
12645         * gtk/gtklabel.c (gtk_label_get_text): Make sure that the error
12646         checking macros return NULL since the function has a return value.
12647
12648 Wed Jun  7 15:44:42 2000  Owen Taylor  <otaylor@redhat.com>
12649
12650         * gtk/Makefile.am (LDFLAGS): Add missing backslash that was keeping
12651         GTK+ from building at all.
12652
12653         * gdk/Makefile.am (gdk_c_sources): Fix up some indentation issues.
12654
12655 Mon Jun  5 19:32:53 CEST 2000 Paolo Molaro <lupus@linuxcare.com>
12656
12657         * configure.in, gtk-config.in, gdk/Makefile.am, gdk/*/Makefile.am,
12658         gtk/Makefile.am: make it possible to configure gtk for different
12659         targets on the same platform. The library name is now 
12660         libgtk-$target-$version.so. gtk-config accepts a --target x11|nanox|linux-fb
12661         flag. Only the x11 target compiles right now.
12662         * gdk/gdkregion-generic.h, gdk/gdkregion-generic.c, gdk/gdkpoly-generic.h,
12663         gdk/gdkpolyreg-generic.c: move generic region code in the main GDK dir.
12664         * gdk/nanox/gdk*generic*: delete generic region code.
12665         * gdk/linux-fb/gdk*generic*: delete generic region code.
12666         * README.nanox: update information.
12667         
12668 Tue Jun  6 10:53:59 2000  Owen Taylor  <otaylor@redhat.com>
12669
12670         * gtk/gtktoolbar.c (gtk_toolbar_prepend_widget): Fix to
12671         prepend not append. (Pointed out by Brett Hall.)
12672
12673 Tue Jun  6 01:59:57 2000  Owen Taylor  <otaylor@redhat.com>
12674
12675         * gtk/gtkentry.c (gtk_entry_finalize): Unref the entry's layout.
12676
12677 Mon Jun  5 16:00:09 2000  Owen Taylor  <otaylor@redhat.com>
12678
12679         * gdk/gdk.c (gdk_init_check): Add call to g_type_init() - we'll
12680         need this later, and this makes sure that the atexit for
12681         glib gets called after that for GDK, so atexits are
12682         properly ordered for object leak checking.
12683
12684         * gdk/gdk.c (gdk_exit_func): Call gdk_windowing_exit().
12685
12686         * gdk/x11/gdkmain-x11.c (gdk_windowing_exit): Call 
12687         pango_x_shutdown_display()
12688
12689         * gtk/simple.c (main): Close window on destroy.
12690
12691 Mon Jun  5 11:50:02 2000  Owen Taylor  <otaylor@redhat.com>
12692
12693         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): We need
12694         to treat initial creation different from setting with 
12695         regards to the graphics-exposures parameter, so add a parameter
12696         indicating whether this is initial or not.
12697
12698 Mon Jun  5 13:29:31 2000  Owen Taylor  <otaylor@redhat.com>
12699
12700         * gdk/x11/gdkevents-x11.c: Hack gdk_event_get_graphics_expose()
12701         to sort of work by adding an extra return_exposes arg
12702         to gdk_event_translate() - it might be better to simply
12703         deprecate the function altogether and force people to rewrite
12704         without it. gdk_window_scroll() handles most of it, and where
12705         gdk_window_scroll() doesn't work, simply redrawing more does.
12706
12707         * gtk/gtkwidget.c (gtk_widget_set_default_direction): Fix up
12708         assertion.
12709
12710         * gtk-config.in: Include PANGO_CFLAGS/LIBS.
12711
12712         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Remove a 
12713         bunch of pretty much useless /* Print debugging info */ comments 
12714         which had drifted away from the code they were commenting.
12715
12716 2000-06-02  Havoc Pennington  <hp@pobox.com>
12717
12718         * gtk/testtextbuffer.c: Test program to make sure GtkTextBuffer
12719         is in working order.
12720         
12721         * gtk/testtext.c: Change to reflect anonymous mark API
12722
12723         * gtk/gtktextview.c: Convert from mark names to GtkTextMark*.
12724
12725         * gtk/gtktexttag.h (struct _GtkTextTag): remove the affects_size
12726         field, which was unused.
12727
12728         * gtk/gtktextmarkprivate.h (GTK_IS_TEXT_MARK): add this macro,
12729         saves some typing.
12730
12731         * gtk/gtktextbuffer.c: Switch from mark names to GtkTextMark*   
12732
12733         * gtk/gtktextbtree.c (gtk_text_btree_new): set the not_deleteable
12734         flag on the insertion point and selection bound
12735
12736         Throughout, use GtkTextMark instead of GtkTextLineSegment, and 
12737         make mark-manipulation functions take a GtkTextMark* instead of a
12738         mark name.
12739         
12740         * gtk/gtktextmarkprivate.h: Add a "not_deleteable" flag to 
12741         GtkTextMarkBody; will be used to detect attempts to delete
12742         the permanent marks (insert and selection bound)
12743
12744         * gtk/Makefile.am (noinst_PROGRAMS): add testtextbuffer 
12745
12746 Fri Jun  2 12:56:01 2000  Owen Taylor  <otaylor@redhat.com>
12747
12748         * gtk/gtkwidget.c (gtk_widget_init): Initialize DOUBLE_BUFFERED
12749         flag to on.
12750
12751         * gtk/gtkwidget.c (gtk_widget_draw) gtk/gtkmain.c (gtk_main_do_event): 
12752         Honor DOUBLE_BUFFRED_FLAG
12753
12754         * gtk/gtkwidget.c (gtk_widget_set_double_buffered): Add a
12755         function to set the DOUBLE_BUFFERED flag.
12756
12757         * gtk/gtkwidget.h: Add GTK_DOUBLE_BUFFERED flag to indicate whether
12758         or not exposes done on the widget should be double-buffered.
12759
12760         * gtk/gtkenums.h (GtkTextDirection): Reverse order of enumerations
12761         to be what would be expected. (Fixes problem with a
12762         g_return_if_fail() validating a TextDirection enumeration)
12763
12764 Thu Jun  1 23:05:13 2000  Owen Taylor  <otaylor@redhat.com>
12765
12766         * gtk/gtkwidget.c: Remove all references to 
12767         offscreen flag which was no longer used.
12768
12769         * gtk/gtkprivate.h (enum): Remove unused flags and compress.
12770
12771         * gtk/gtkframe.c (gtk_frame_set_label_widget): Check
12772         for non-null label_widget->parent.
12773
12774         * gtk/gtkentry.c: Get rid of code to deal with PangoAttribute 
12775         which no longer was used.
12776
12777         * gdk/gdkpango.c (gdk_pango_context_get_info): make static.
12778
12779         * gdk/gdkpango.c (gdk_draw_layout[_line]): Add checks
12780         for null arguments.
12781
12782         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): add
12783         check for destroyed windows.
12784
12785 Thu Jun  1 13:48:45 2000  Owen Taylor  <otaylor@redhat.com>
12786
12787         * gtk/gtkimmulticontext.c: Add a finalize method and unref
12788         the slave context there.
12789
12790         * gtk/gtkinvisible.[ch]: Make reference counting behavior
12791         identical to GtkWindow.
12792
12793 Thu Jun  1 01:54:11 2000  Owen Taylor  <otaylor@redhat.com>
12794
12795         * Makefile.am gdk/gdkpango.c: Copy the layout render function from
12796         pangox to here, so we can write them independent of rendering
12797         system, using GDK primitives.
12798
12799         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c
12800         gdk/x11/gdkdrawable-x11.c: Remove draw_layout() from the vtable,
12801         since we have a rendering-system independent implementation in
12802         terms of draw_glyphs().
12803         
12804         * gdk/gdkpango.c gdkdrawable.h (gdk_draw_layout_line): New
12805         function to render a single line.
12806
12807         * gdk/x11/gdkpango.c: Move the guts of this file mostly
12808         into ../gdkpango.c, which simplifies things, since we
12809         don't have to deal with raw X gc's.
12810
12811 Fri May 19 04:28:16 2000  Owen Taylor  <otaylor@redhat.com>
12812
12813         * gtk/gtktextlayout.[ch]: Add get_log_attrs() function to
12814         get the logical attributes for a given GtkTextLine.
12815
12816 Tue May 30 16:05:39 2000  Owen Taylor  <otaylor@redhat.com>
12817
12818         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Track
12819         g_locale_get_codeset() to g_get_codeset() change.
12820
12821 Tue May 30 15:03:19 2000  Owen Taylor  <otaylor@redhat.com>
12822
12823         * gtk/testcalendar.c (calendar_font_selection_ok): Use font
12824         descriptions.
12825
12826         * gtk/gtkentry.c (gtk_entry_draw_text): Center text within
12827         the entry.
12828
12829         * gtk/gtkfontsel.c (gtk_font_selection_dialog_init): Start of
12830         redoing (vastly simplifying) for Pango. Still needs quite
12831         a bit of work. (Size selection is currently poor. List of 
12832         predefined sizes is not a good idea, since all of these
12833         sizes won't necessarily be distinct.)
12834
12835 Tue May 30 13:50:19 2000  Owen Taylor  <otaylor@redhat.com>
12836
12837         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Handle
12838         CODESET results for LANG=C.
12839
12840 Mon May 29 15:49:10 2000  Owen Taylor  <otaylor@redhat.com>
12841
12842         * gtk/gtkrc.[ch]: Add a 'font_name' declaration to RC
12843         which takes a stringized pango font description;
12844         ignore the older 'font' and 'fontset' declarations.
12845
12846         * gtk/gtkstyle.c gtk/gtkrc.c: Fill in the style->font
12847         field with a GdkFont derived via gdk_font_from_description(),
12848         for compatibility. (Should we just remove it entirely?
12849         Probably too much compatibility breakage, but people
12850         should be migrating to the new Pango stuff as quickly
12851         as possible.)
12852
12853 Mon May 29 15:47:41 2000  Owen Taylor  <otaylor@redhat.com>
12854
12855         * gtk/gtkentry.c gtk/gtkclist.c: s/pango_font_unref/g_object_unref/.
12856
12857 Mon May 29 15:44:46 2000  Owen Taylor  <otaylor@redhat.com>
12858
12859         * gtk/gtkcalender.c: Roughly pango-ized. Really needs 
12860         redoing; there are some bugs in size allocation right
12861         now, the semi-existant distinction between header / day
12862         fonts was removed, but, with Pango, could actually
12863         be made functional in a nice way.
12864         
12865         * gtk/testcalender: Move calender from examples into this
12866         directory as a test program. (We really need to restrcture
12867         testgtk into a whole directory full of tests for every
12868         widget or functionality group, separated into multiple .c
12869         files.)
12870
12871 Mon May 29 15:19:56 2000  Owen Taylor  <otaylor@redhat.com>
12872
12873         * gtk/testgtk.c (file_exists): Fix stupid typo that
12874         was keeping RC file from being loaded.
12875
12876         * gtk/testgtkrc gtk/testgtkrc2: Test new pango-ized
12877         RC file font code.
12878
12879 Mon May 29 14:31:27 2000  Owen Taylor  <otaylor@redhat.com>
12880
12881         * gdk/gdkfont.h gdk/x11/gdkfont-x11.c (gdk_font_from_description):
12882         Add function to load a GdkFont from a PangoFontDescription.
12883
12884 2000-05-29  Tor Lillqvist  <tml@iki.fi>
12885
12886         * gdk/win32/gdkevents-win32.c (gdk_WindowProc): The local "event"
12887         variable should be of type GdkEventPrivate.
12888
12889 Fri May 26 17:16:40 2000  Owen Taylor  <otaylor@redhat.com>
12890
12891         * gtk/frame.[ch] gtkaspectframe.c: Make frame widgets able
12892         to have any widget for the label, use a GtkLabel widget
12893         to display the text. (Based partially on a patch from
12894         Anders Carlson.)
12895
12896         (Quite a bit of code reorganization - strip 90% of the
12897         guts out of gtkaspectframe and add a single virtual
12898         func to GtkFrameClass - compute_child_allocation.)
12899
12900 Fri May 26 12:00:02 2000  Owen Taylor  <otaylor@redhat.com>
12901
12902         * gtk/gtkctree.c gtk/gtkclist.[ch]: Pangoized.
12903         (Removed clist->row_center_offset field because caching
12904         it wasn't saving time or code, added private function
12905         _gtk_clist_create_cell_layout()).
12906
12907 Wed May 24 15:59:37 2000  Owen Taylor  <otaylor@redhat.com>
12908
12909         * gtk/gtkaccellabel.c: Pangoized.
12910
12911         * gtk/[hv]ruler.c: Pangoized
12912
12913 Mon May 22 19:23:59 2000  Owen Taylor  <otaylor@redhat.com>
12914
12915         * gtk/gtkfilesel.c (gtk_file_selection_init):
12916         Use gtk_clist_set_column_auto_resize() to remove need
12917         need for manual column width computations.
12918
12919 Mon May 22 18:50:26 2000  Owen Taylor  <otaylor@redhat.com>
12920
12921         * gtk/gtktooltips.[ch]: Replace custom drawing with a GtkLabel, 
12922         ensuring Pango correctness, and considerably simplifying the
12923         code.
12924         
12925         * gtk/gtklabel.c gtk[hv]scale.c: 1000 => PANGO_SCALE.
12926
12927         * gtk/gtklabel.c (gtk_label_size_request): Fixed incorrect
12928         getting of numbers of lines.
12929
12930         * gtk/gtklabel.c (gtk_label_size_request): Set the requisition
12931         to the actual requested width of the lable, not to the wrap
12932         width we set.
12933
12934         * gtk/gtktextchild.h: Remove extraneous include of gtk/gtk.h.
12935
12936         * gtk/gtktextbtree.c gtk/gtktextbuffer.c gtk/gtktextlayout.c
12937           gtk/gtktextview.c gtk/gtktextview.[ch]: Fix up includes.
12938
12939         * gtk/gtktextview.c: Fix structure inheritance.
12940
12941         * gtk/gtkprogressbar.c: Pangoize.
12942
12943 Mon May 22 15:47:30 2000  Owen Taylor  <otaylor@redhat.com>
12944
12945         * gtk/gtktextview.c (gtk_text_view_get_first_para_iter): Encapsulate
12946         in a function.
12947
12948         * gtk/gtktextlayout.c (find_display_line_above): Fixed
12949         bug with computing line tops.
12950
12951         * gtk/gtktextview.c (changed_handler): Fix < , <= confusion.
12952
12953 Thu May 18 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
12954
12955         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Fix up the x_offset
12956         and y_offset coordinates to do what we need now. (The offset between
12957         buffer and layout coordinates has been reintroduced, but is a 
12958         bit different than before.)
12959
12960         * gtk/gtktextview.[ch]: No longer inherit from GtkLayout; instead
12961         handle the adjustments ourselves, and scroll as necessary using
12962         the new gdk_window_scroll().
12963         
12964         The advantage of this is that when we are incrementally revalidating,
12965         we are essentially rearranging things around the visible portion
12966         of the screen. With the old setup, the visible portion of the
12967         screen was moved around in the layout, so scrolling and redrawing
12968         to track that caused jumping of the display. Since we now
12969         control the scrolling ourselves, we can suppress this and
12970         only redraw when things actually change.
12971
12972 Thu May 18 18:47:25 2000  Owen Taylor  <otaylor@redhat.com>
12973
12974         * gtk/gtktextbtree.c (redisplay_mark): We need to invalidate
12975         the region not just redisplay it after-all, since we store the
12976         cursors in the LineDisplay. (Ugly interactions here between
12977         GtkLayout and GtkTextBTree here.)
12978         
12979         * gtk/gtktextbtree.c (redisplay_region): Fixed reversed comparison.
12980
12981 Thu May 18 18:43:21 2000  Owen Taylor  <otaylor@redhat.com>
12982
12983         * gdk/gdkwindow.h gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): 
12984         Added function to scroll contents of a window while keeping the
12985         window constant. Works by XCopyArea or guffaw-scrolling depending
12986         on the details of how the window is set up. (guffaw-scrolling
12987         still needs to be filled in.)
12988
12989 Wed May 17 22:36:53 2000  Owen Taylor  <otaylor@redhat.com>
12990
12991         * gtk/gtktextiter.c gtk/gtkmain.c: Add a debug key for the text widget,
12992         move the debugging that was tied to a global variable
12993         to that.
12994
12995         * gtk/gtkmarshal.list: Add NONE:INT,INT,INT
12996
12997         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.c: Keep a separate
12998         validated flag, in line data instead of setting height/width to
12999         -1. This allows us to perform operations with partially invalid
13000         buffer (using the old size for invalid lines) and thus to do
13001         incremental vaidation. Keep height/width aggregates up to date
13002         when deleting text and rebalancing the tree.
13003
13004         * gtk/gtktextbtree.[ch]: Add functions validate a line
13005         (gtk_text_btree_validate_line), and to validate up
13006         to a number of pixels (gtk_text_btree_validate).
13007
13008         * gtk/gtktextlayout.[ch]: Add an ::invalidated signal
13009         that indicates that something is changed and a revalidation
13010         pass is needed. Change ::need_repaint to ::changed, and
13011         make it take old and new yranges instead of a rectangle.
13012
13013         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.[ch]: Move
13014         the line_data_destroy() function from 
13015         gtk_text_btree_add_view() to a virtual function in 
13016         GtkTextLayout
13017
13018         * gtk/gtktextbtree.[ch]: Remove gtk_text_btree_get_damage_range(),
13019         since we are handling partial repaints in a different fashion
13020         now.
13021
13022         * gtk/gtktextbtree.[ch]: Only repaint the changed portion
13023         of the selection instead of queueing a repaint on the
13024         entire widget.
13025
13026         * gtk/gtktextbuffer.[ch] gtk/gtktextbtree.[ch]: Move
13027         get_selection_bounds() down to btree, make the function
13028         in buffer a wrapper around the btree function.
13029
13030         * gtk/gtktextlayout.[ch]: Add functions to check if the
13031         layout is valid and to recompute either a range of pixels
13032         aroudn a line or a certain total number of pixels.
13033
13034         * gtk/gtktextlayout.[ch]: Cache a single line display;
13035         now that we only redraw the needed portions, the hit rate
13036         for this cache is quite high.
13037         
13038         * gtk/gtktextview.[ch]: Keep track of the first paragraph
13039         on the screen so that when re-laying-out the buffer, we can
13040         keep the same place. This requires connecting to ::value_changed
13041         on the adjustments
13042
13043         * gtk/gtktextview.[ch]: Add idle functions to revalidate
13044         the buffer after we receive an ::invalidated signal.
13045         
13046 Wed May 17 22:10:47 2000  Owen Taylor  <otaylor@redhat.com>
13047
13048         * gtk/gtklayout.c (gtk_layout_size_allocate): Set upper
13049         to max of allocation and layout size, not just to the
13050         layout size.
13051
13052         * gtk/gtk[hv]scrollbar.c (gtk_[hv]scrollbar_calc_slider_size): 
13053         Invalidate window so it gets redrawn properly.
13054
13055         * gdk/gdkwindow.c (gdk_window_invalidate_rect): Allow rect == NULL
13056         to mean the entire window.
13057
13058         * gdk/gdkevents.h: Move definition for GDK_PRIORITY_REDRAW
13059         into public header.
13060
13061 Mon May 15 14:51:31 2000  Owen Taylor  <otaylor@redhat.com>
13062
13063         * gtk/gtktextmark.c (gtk_text_mark_get_name): Add function
13064         to get the name of a mark.
13065
13066         * gtk/gtktextlayout.c (gtk_text_layout_get_line_at_y): Add a function
13067         to find the paragraph from a y position.
13068
13069 Thu May 11 12:57:20 2000  Owen Taylor  <otaylor@redhat.com>
13070
13071         * gtk/gtktextbtree.c (gtk_text_btree_node_invalidate_upward): Valid
13072         nodes have width/height >= 0, not > 0.
13073
13074 Tue May  9 21:29:06 2000  Owen Taylor  <otaylor@redhat.com>
13075
13076         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c (gtk_text_layout_get_line_display):
13077         Add a size_only flag, so when we only need the size, we don't create
13078         useless appearance attributes.
13079
13080         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Remove
13081         duplicate setting of font description.
13082
13083         * gtk/gtkscale.c: Use PANGO_SCALE instead of 1000 
13084
13085 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
13086
13087         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
13088         EXTRA_DIST. It does not work well when the file that
13089         everything depends on is not in the tarball.
13090
13091 Wed Apr 26 00:56:14 2000  Owen Taylor  <otaylor@redhat.com>
13092
13093         * gtk/testgtk.c: Some hacks and fixes so that it basically
13094         works when not sitting in the GTK+ build tree.
13095
13096 2000-05-03  Havoc Pennington  <hp@redhat.com>
13097
13098         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
13099         Properly determine the ordering of the tag root and the current
13100         line within the tree. Previous algorithm only worked if the tag
13101         root's immediate parent was the common root of both the current
13102         line and the tag root.
13103
13104 Wed Apr 26 00:43:00 2000  Owen Taylor  <otaylor@redhat.com>
13105
13106         * gtk/gtktextlayout.c (set_para_values): Fix some bugs in
13107         alignment.
13108
13109         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Track
13110         the widget text directional dynamically.
13111
13112         * gtk/gtktextview.[ch]: Added functions to get and set default
13113         wrap mode.
13114
13115 Tue Apr 25 23:47:38 2000  Owen Taylor  <otaylor@redhat.com>
13116
13117         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Fix bug
13118         in cursor location computation.
13119
13120 Tue Apr 25 23:22:59 2000  Owen Taylor  <otaylor@redhat.com>
13121
13122         * gtk/gtklayout.c (gtk_layout_set_size): Clamp hadjustment/
13123         vadjusment values properly when layout gets smaller.
13124
13125         * gtk/gtktextview.c (need_repaint_handler): Areas being
13126         passed in are far completely inaccurate, and sometimes
13127         too small, so, for now, just queue a redraw on the
13128         whole visible region.
13129
13130 2000-04-25  Havoc Pennington  <hp@redhat.com>
13131
13132         * gtk/gtktextbtree.c (summary_destroy): new function to 
13133         destroy tag summary nodes
13134         (gtk_text_line_next_could_contain_tag): this function was 
13135         totally broken if the line passed in wasn't below the tag
13136         root. Fix it.
13137         (gtk_text_btree_first_could_contain_tag): In the tag == NULL 
13138         "wildcard" case, we have to do a linear scan. Blah.
13139         (gtk_text_btree_last_could_contain_tag): In tag == NULL case,
13140         we have to do the linear scan
13141         (tag_removed_cb): When a tag is removed from the tag table, 
13142         remove the GtkTextTagInfo node from the btree.
13143         (gtk_text_btree_spew): Implement the spew function, for 
13144         our debugging pleasure.
13145
13146 Tue Apr 25 19:40:18 2000  Owen Taylor  <otaylor@redhat.com>
13147
13148         * gtk/gtktextlayout.c (gtk_text_layout_set_buffer): Fix
13149         a problem with referring to the wrong buffer.
13150
13151         * gtk/gtkentry.c: Fix focus-in/focus-out confusion.
13152
13153         * gtk/gtkrc.c gtk/gtkstyle.c: Moving setting default
13154         font description to gtk_style_new() - otherwise things
13155         don't work without a .gtkrc file.
13156
13157         * gtk/gtktextbuffer.c (gtk_text_buffer_new): Sink the
13158         tags table if we create it ourself, too.
13159
13160         * gdk/gdktypes.h (enum): Move GDK_RELEASE_MASK, since
13161         it was conflicting with XKB modifiers.
13162
13163         * gtk/gtktextview.[ch]: Add simple support for 
13164         GtkIMContext.
13165
13166 Mon Apr 24 19:34:18 2000  Owen Taylor  <otaylor@redhat.com>
13167
13168         * gtk/gtkentry.c (gtk_entry_move_cursor_visually): Fix problem
13169         with deletion from last commit.
13170
13171 Mon Apr 24 19:29:40 2000  Owen Taylor  <otaylor@redhat.com>
13172
13173         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Set the language
13174         in the context from the current locale.
13175         
13176         * gtk/gtkentry.c (gtk_entry_size_request): Use language from the
13177         context, not hardcoded value.
13178
13179         * gtk/gtkentry.c (gtk_entry_move_cursor): Make character movement visual,
13180         not logical.
13181
13182 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
13183
13184         * gtk/gtkentry.c gtk/gtktextdisplay.c: Don't handle selections as
13185         attributes - that doesn't handle partial-glyph selection
13186         properly. Instead use new pango_layout_line_get_x_ranges()
13187         functionality to draw the selection.
13188
13189         * gtk/gtkentry.c: Simplify code since pango_layout_line_index_to_x()
13190         now properly handles out-of-range coordinates.
13191
13192         * gtk/gtktextbuffer.c: Emit "mark_set" when the cursor is moved.
13193
13194         * gtk/gtktextiter.h gtk/gtktextiterprivate.h: Make gtk_text_iter_get_line_byte()
13195         public.
13196
13197         * gtk/gtktextlayout.[ch]: Properly set the direction in the PangoContext
13198         for paragraphs opposite to the base direction of the widget.
13199
13200         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c: Fixes for alignment.
13201
13202         * gtk/gtktextlayout.c: Don't split segments on marks, since that
13203         causes Arabic words to reshape as you cursor through.
13204
13205         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Implement virtual
13206         cursor position when moving vertically with the arrow keys and
13207         scrolling with page-up/page-down. (Arrow keys save only the X,
13208         scrolling saves both X and Y.)
13209
13210         This means you can line-up / line-down or page-up / page-down
13211         without losing your place, and also that moving vertically
13212         with the cursor keys keeps the same X position, not the same
13213         character count:
13214
13215         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Make vertical
13216         arrow keys move by display lines, not paragraphs.
13217
13218 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
13219
13220         * gtk/gtklayout.c: Make sure that the bin window is at least
13221         as big as the allocation. (Should we also make sure that the
13222         bin window is big enough to completely cover widget->window?)
13223
13224         * gtk/gtktextview.c (gtk_text_view_get_visible_rect): Add
13225         function to get the onscreen rectangle.
13226
13227         * gdk/x11/gdkwindow-x11.c (gdk_window_get_pointer): Correctly account
13228         for offsets in window coordinates.
13229
13230 Sun Apr 16 16:13:27 2000  Owen Taylor  <otaylor@redhat.com>
13231
13232         * gtk/gtkentry.c (gtk_entry_get_cursor_locations): Fix index/offset
13233         confusion.
13234
13235         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Set the default direction
13236         from the widget direction.
13237
13238         * gtk/gtktexttag.c gtk/gtktexttagprivate.h (gtk_text_tag_set_arg): 
13239         Add a "direction" attribute.
13240
13241         * gtk/gtktextview.c: global s/tkxt/text_view/.
13242
13243         * gtk/testtext.c: Added long block of text in Arabic, to test out
13244         the direction attributes. (Some problems with the shaping system
13245         for arabic become obvious - like the fact the cursor splits words
13246         into unjoined pieces.)
13247
13248 Fri Apr 14 12:54:34 2000  Owen Taylor  <otaylor@redhat.com>
13249
13250         * gtk/gtktextdisplay.c (render_layout): Add overstrike handling.
13251
13252         * gtk/gtktextlayout.c: Fix up alignment.
13253
13254         * gtk/testtext.c: Add some tests for centering, wrapping.
13255
13256 Fri Apr 14 09:26:22 2000  Owen Taylor  <otaylor@redhat.com>
13257
13258         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c gdk/x11/gdkdrawable-x11.c:
13259         Add a draw_glyphs() operation to the drawable vtable and gdk_draw_glyphs().
13260         If we wrote GTK+-specific layout-render function this could just replace
13261         the draw_layout() operation in the vtable.
13262
13263         * gtk/gtkentry.c: Move guts of gtk_entry_get_cursor_locations to 
13264         pango_layout_get_cursor_pos() and use that function.
13265
13266         * gtk/gtktextchild.[ch]: add gtk_ onto pixmap_segment_new(), since it
13267         is a non-static symbol.
13268
13269         * gtk/gtktextbtree.[ch]: Replace gtk_text_btree_find_line_data_by_y()
13270         with gtk_text_btree_find_line_by_y()
13271
13272         * gtk/gtktextdisplay.c: Rewrote for Pango - uses a custom layout
13273         renderer that handles GtkTextAppearance attributes.
13274
13275         * gtk/gtktexttag.[ch] gtk/gtktexttagprivate.h: 
13276
13277           - Move the values in the style that don't affect geometry into a
13278             GtkTextAppearance structure.
13279           - Change underline to take a PangoUnderline and "font" a string
13280             representation of a font description
13281           - Add a "font_desc" attribute which takes a FontDescription structure.
13282
13283         * gtk/gtktextlayout.[ch]:
13284
13285           - Get rid of the display-line list per each line. Instead, we
13286             generate, on demand, a GtkTextLineDisplay structure which]
13287             contains a PangoLayout * and other necesary information
13288             (offsets, cursor locations) for displaying a paragraph.
13289           - Get rid of the code to wrap lines, create display chunks,
13290             etc. Instead, we just go through a paragraph and convert
13291             it into the necessary inputs to a PangoLayout.
13292           - Implement a new attribute type, GtkTextAttrAppearance. This
13293             holds a GtkTextAppearance, and is used to pass colors, 
13294             stipple, etc, through from the layout to the display without
13295             having to use lots and lots of individual attributes.
13296           - Reimplement gtk_layout_get_iter_at_pixel() gtk_layout_get_iter_pos()
13297             in terms of PangoLayout functions.
13298         
13299         * gtk/gtktextview.c: 
13300          
13301           - Handle passing the necessary PangoContext to the layout
13302           - Some fixups in painting to deal with the automatic backing store
13303             and offsetting of GTK+-1.4
13304           - Add a style_set handler so that the default style reacts
13305             properly to theme changes.
13306         
13307         * gtk/gtktext?*.[ch]: Random code-style fixes.
13308
13309         * gtk/testtext.c: Substitute in languages that Pango handles now for Thai
13310
13311 Mon Apr 10 10:33:45 2000  Owen Taylor  <otaylor@redhat.com>
13312
13313         * gtk/gtktext?*.[ch]: Check in Havoc's port of the Tk text widget,
13314         in original form preparatory to Pango-ization and gdkimcontext-ization.
13315
13316 Thu Apr  6 19:25:39 2000  Owen Taylor  <otaylor@redhat.com>
13317
13318         * gtk/gtkimcontext.c: Move default implementations to real_* vfuncs,
13319         so that we can derive from gtkimcontext in language bindings properly.
13320
13321 Thu Apr  6 16:02:52 2000  Owen Taylor  <otaylor@redhat.com>
13322
13323         * gtk/gtkimcontextsimple.[ch]: Use gdk_keyval_to_unicode to gdk_unicode_to_keyval.
13324         Add a compose table including (almost) all the compose combinations
13325         from X. This is 6k of static, shared data as opposed to 50k or so of dynamic
13326         data in the XIM implementation.
13327
13328         * gdk/gdk.h gdk/gdkkeyuni.c gdk/win32/gdkevents-win32.c (gdk_keyval_to_unicode, gdk_unicode_to_keyval):
13329         Moved functions to convert keyvalues from and to unicode here from
13330         the win32 port and made them public.
13331
13332 Wed Apr  5 16:37:29 2000  Owen Taylor  <otaylor@redhat.com>
13333
13334         * gtk/gtkeditable.c (gtk_editable_insert_text): Allow new_text_length == -1.
13335
13336 Wed Apr  5 16:27:45 2000  Owen Taylor  <otaylor@redhat.com>
13337
13338         * gtk/gtkimcontext.[ch]: Base class for new input context system
13339
13340         * gtk/gtkimmulticontext.[ch]: Proxy input context that allows
13341         the real input context implementation to be loaded from modules
13342         and switched on the fly.
13343
13344         * gtk/gtkcontextsimple.[ch]: Simple implementation of an input
13345         context that just does direct keysymbol => unicode translation.
13346
13347         * gtk/gtkentry.[ch]: Start switching editing over to using
13348         GtkInputContext. (No handling of preedit yet.)
13349
13350 Wed Apr  5 15:48:41 2000  Owen Taylor  <otaylor@redhat.com>
13351
13352         * gtk/gtktypeutils.h (GTK_CHECK_GET_CLASS): Fix problem with one too
13353         many substitutions. (klass should not be subsituted.)
13354
13355 Wed Apr  5 00:18:14 2000  Owen Taylor  <otaylor@redhat.com>
13356
13357         * configure.in: Add checks for Pango
13358
13359         * configure.in docs/Makefile.am: Add test for sgml2html
13360         and allow 'make dist' without building html, but print out
13361         warnings in that case. (For making snapshots)
13362
13363         * gdk/Makefile.am gdk/x11/Makefile.am gtk/Makefile.am:
13364         Add Pango libraries and C flags
13365
13366         * gdk/gdkdraw.c gdk/gdkdrawable.h gdkwindow.c gdk/x11/gdkdrawable-x11.c:
13367         Add function (gdk_draw_layout) to draw a pango layout.
13368
13369         * gdk/gdkpango.h gdk/x11/gdkpango-x11.c: New file with functions
13370         for getting Pango contexts for GDK.
13371
13372         * gtk/gtkeditable.c: Get rid of dead code gtk_editable_parent_set()
13373
13374         * gtk/gtkentry.[ch]: Complete rewrite to use Pango, add bidirectional
13375         editing.
13376
13377         * gtk/gtkentry.c: Hack in simple Hebrew input with direct
13378         keysym => unicode translations. More languages can be added
13379         here, but real input-method support is needed.
13380
13381         * docs/Changes-1.4.txt: Added note about entry behavior.
13382         
13383         * gtk/gtkenums.h gtk/gtkwidget.[ch] testgtk.c gtkprivate.h: Add functions
13384         to set the reading direction for a widget and the global direction.
13385         Add test which allows toggling the global direction. Two private
13386         flags are used to store the direction. (GTK_DIRECTION_SET + GTK_DIRECTION_LTR)
13387
13388         * gtk/gtkcheckbutton.c gtk/gtkframe.c gtk/gtkhbbox.c gtk/gtkhbox.c
13389           gtk/gtkradiobutton.c gtk/gtkspinbutton.c gtk/gtktable.c 
13390
13391         * gtk/gtk[hv]scale.c gtk/gtkscale.[ch]: Draw numbers using Pango
13392
13393         * gtk/gtklabel.[ch]: Moved to Pango and considerably rewritten. Line breaking,
13394         underlining now handled by Pango.
13395
13396         * gtk/gtkstyle.[ch] gtk/gtkrc.[ch]: Add a PangoFontDescription
13397         to RCStyle and Style. (Having both this and the old font name and GdkFont 
13398         is temporary.)
13399
13400         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_{context,layout}): Added 
13401         convenience functions for creating contexts and layouts for widgets.
13402
13403         * gtk/testgtk.c: Enhance label tests with multilingual labels.
13404
13405 2000-05-29  Jonathan Blandford  <jrb@redhat.com>
13406
13407         * gtk/gtkclist.c (gtk_clist_column_titles_active): let you set the
13408         titles to be active, even if they aren't visible.
13409         (gtk_clist_column_titles_passive):  Ditto.
13410
13411 2000-05-21  Nils Barth  <nils_barth@post.harvard.edu>
13412
13413         * gtkmenu.c:
13414         * gtkmenu.h:
13415         * gtktypeutils.h: Spelling/grammar fixes in comments.
13416
13417 Tue May 23 12:25:07 CEST 2000 lupus <lupus@debian.org>
13418
13419         * gdk/nanox/*.h: add missing header files.
13420
13421 Fri May 19 11:52:59 2000  Tim Janik  <timj@gtk.org>
13422
13423         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set
13424         send_event to TRUE.
13425         (gtk_drawing_area_size): queue a resize.
13426
13427 Sun Mar 26 03:21:28 2000  Tim Janik  <timj@gtk.org>
13428
13429         * gtk/gtksignal.c (gtk_signal_handlers_destroy): when unref-ing
13430         the handlers, also invalidate them. bug nailed down by Karl Nelson
13431         <kenelson@ece.ucdavis.edu>.
13432
13433 Fri May 19 06:49:23 2000  Tim Janik  <timj@gtk.org>
13434
13435         * gtk/gtkfontsel.c (gtk_font_selection_get_font_name): handle
13436         "(nil)" foundries, patch from Grigorios Magklis.
13437
13438         * gtk/gtkfontsel.c (gtk_font_selection_load_font): don't crash
13439         on non-available fonts, based on a patch by Grigorios Magklis
13440         <maglis@cs.rochester.edu>.
13441
13442 2000-05-18  Elliot Lee  <sopwith@redhat.com>
13443
13444         * gdk/x11/gdkregion-generic.c: If a region does not have any
13445         rectangles, or if the specified rectangle is not in the region, then return GDK_OVERLAP_RECTANGLE_OUT
13446         instead of GDK_OVERLAP_RECTANGLE_IN.
13447
13448 2000-05-17  Jonathan Blandford  <jrb@redhat.com>
13449
13450         * gtk/gtklayout.c (gtk_layout_map): Remove references to
13451         OFFSCREEN, as it is no longer necessary.
13452
13453 Wed May 17 10:52:12 2000  Owen Taylor  <otaylor@redhat.com>
13454
13455         * gtk/gtkcolorsel.c: Patch from David Santiago
13456         <mrcooger@cyberverse.com> to change things so that the 
13457         indicator of the active palette entry is done independently,
13458         not via the focus, since it should always be visible.
13459
13460 2000-05-17  Tor Lillqvist  <tml@iki.fi>
13461
13462         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Plug same
13463         refcount leaks as in the X11 backend.
13464
13465         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Logging
13466         cosmetics.
13467
13468         * gdk/win32/gdkwindow-win32.c: Similar changes as in X11
13469         backend. Add _gdk_windowing_window_destroy().
13470
13471         * gtk/gtkcolorsel.c: Include correct backend-specific header.
13472         Don't use XColor unless on X11. (No GDK_VISUAL_STATIC_COLOR
13473         either, but these probably do exist on nanox?)
13474         
13475         * gtk/gtkhsv.c: Use G_PI (fresh from <glib.h>) instead of M_PI
13476         which isn't necessarily defined by <math.h>.
13477
13478         * gtk/gtkobject.c (gtk_object_init): Don't go up the class
13479         ancestry past GtkObject.
13480
13481         * gtk/gtktypeutils.h: Mark GTK_TYPE_IDENTIFIER for export/import
13482         from DLL on Win32.
13483
13484         * gtk/gtk.def: Update corresponding to recent changes.
13485
13486         * gtk/makefile.{cygwin,msc}: Updates.
13487
13488 Fri May 12 18:46:51 2000  Owen Taylor  <otaylor@redhat.com>
13489
13490         * docs/Changes-1.4.txt: A bit of editing.
13491
13492         * gdk/gdkwindow.c (_gdk_window_clear_update_area) 
13493         * gdk/x11/gdkwindow-x11.c (gdk_window_hide): Add a function
13494         to clear the update area for the window, and clear it
13495         when hiding a window.
13496
13497         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Ignore
13498         if window destroyed.
13499
13500         * gdk/gdkwindow.c (gdk_window_end_paint): Likewise.
13501
13502         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c gdk/gdkinternals.h: Move 
13503         gdk_window_destroy() to the generic code, since there was a lot of 
13504         window-system-independent logic it in. Add a function:
13505         
13506          _gdk_window_destroy() 
13507
13508         to the internal API to destroy a window without unreferencing it.
13509         Add a function:
13510
13511          _gdk_windowing_window_destroy()
13512
13513         That does the windowing-system-dependent part of destroying 
13514         the window.
13515
13516 Fri May 12 11:07:41 2000  Owen Taylor  <otaylor@redhat.com>
13517
13518         * gtk/testgtk.c: Fix various memory leaks of pixmaps.
13519
13520 Fri May 12 11:06:10 2000  Owen Taylor  <otaylor@redhat.com>
13521
13522         * gtk/gtkwidget.c docs/Changes-1.4.txt (gtk_widget_shape_combine_mask): 
13523         Make gtk_widget_shape_combine_mask() keep a reference count on
13524         the pixmap since it keeps it around.
13525
13526 Fri May 12 10:53:29 2000  Owen Taylor  <otaylor@redhat.com>
13527
13528         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix refcount
13529         leak.
13530
13531         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Fix refcount
13532         leak with event filters.
13533
13534 Thu May 11 14:29:44 2000  Owen Taylor  <otaylor@redhat.com>
13535
13536         * gtk/gtkdnd.c (gtk_drag_dest_set_internal): Remove the
13537         signal handlers with the right data arguments. (Fixes
13538         some warnings when a widget was repeatedly set as a drag
13539         destination.)
13540
13541         * gdk/x11/gdkdnd-x11.c (gdk_window_register_dnd): Set data on the
13542         window so we can avoid avoid setting the DND properties on the
13543         toplevel window repeatedly.
13544
13545 2000-05-13  Tor Lillqvist  <tml@iki.fi>
13546
13547         * gdk/win32/gdkwin32.h: Define more message types missing from
13548         mingw headers.
13549
13550         * gdk/win32/gdkevents-win32.c (gdk_event_translate): On WM_DESTROY
13551         call gdk_window_destroy_notify(). It was never called. This
13552         probably meant that the GdkWindow was never freed. Thanks Owen for
13553         noticing (!).
13554
13555         * gdk/win32/gdkwindow-win32.c (gdk_window_internal_destroy): Mark
13556         window as destroyed before calling DestroyWindow(). DestroyWindow()
13557         causes a call to the window procedure (gdk_WindowProc), which
13558         calls gdk_event_translate(), which calls
13559         gdk_window_destroy_notify(), which gets confused unless the window
13560         is set as destroyed.
13561
13562         * gdk/win32/gdkcolor-win32.c (gdk_win32_color_to_string): Rename
13563         this function to indicate it's win32 only. Put inside #ifdef
13564         G_ENABLE_DEBUG.
13565
13566         * gdk/win32/gdkevents-win32.c (gdk_win32_message_name): New
13567         debugging function. (gdk_event_translate:) Add a default branch
13568         that uses the above function to print debug messages with all
13569         Windows messages symbolically.
13570
13571         * gdk/win32/gdkprivate-win32.h: Declare it, and
13572         gdk_win32_color_to_string, but only if G_ENABLE_DEBUG.
13573
13574 Fri May 12 20:07:32 2000  Tim Janik  <timj@gtk.org>
13575
13576         * gtk/gtkcolorseldialog.c: don't include gtk/gtkintl.h in a
13577         public header file.
13578
13579 Fri May 12 17:13:32 2000  Tim Janik  <timj@gtk.org>
13580
13581         * docs/Changes-1.4.txt: documented necessary changes for 1.4 transition.
13582
13583         * gtk/gtktext.c: made the adjustments no-construct args, simply
13584         provide default adjustments.
13585         (gtk_text_destroy): release adjustments.
13586
13587         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): made the
13588         adjustment argument non-construct.
13589
13590         * gtk/gtkprogress.c (gtk_progress_destroy): release adjustment here,
13591         instead of in finalize.
13592         (gtk_progress_get_text_from_value): 
13593         (gtk_progress_get_current_text): 
13594         (gtk_progress_set_value): 
13595         (gtk_progress_get_percentage_from_value): 
13596         (gtk_progress_get_current_percentage): 
13597         (gtk_progress_set_percentage): 
13598         (gtk_progress_configure): ensure an adjustment is present.
13599
13600 Thu May 11 01:24:08 2000  Tim Janik  <timj@gtk.org>
13601
13602         * gtk/gtkcolorsel.[hc]:
13603         * gtk/gtkcolorseldialog.[hc]:
13604         * gtk/gtkhsv.[hc]: major code cleanups, destroy handlers need to chain
13605         their parent implementation, use bit fields for boolean values, don't
13606         create unused widgets, usage of glib types, braces go on their own
13607         lines, function argument alignment, #include directives etc. etc. etc..
13608
13609         * gtk/Makefile.am (gtk_public_h_sources): install gtkhsv.h.
13610
13611 Wed May 10 23:29:52 2000  Tim Janik  <timj@gtk.org>
13612
13613         * gtk/gtktoolbar.c (gtk_toolbar_destroy): don't unref a NULL tooltips.
13614
13615         * gtk/gtkfilesel.c (gtk_file_selection_destroy): don't free a cmpl_state
13616         of NULL.
13617
13618         * gtk/gtkcombo.c (gtk_combo_item_destroy): don't keep references
13619         to freed data.
13620         (gtk_combo_destroy): don't keep a pointer to a destroyed window.
13621
13622         * gtk/gtkmenu.c (gtk_menu_init): reset the menu's toplevel pointer
13623         to NULL when the toplevel is getting destroyed.
13624         (gtk_menu_set_tearoff_state): same here for the tearoff_window.
13625         (gtk_menu_destroy): 
13626         (gtk_menu_init): store the information of whether we have to
13627         readd the initial child ref_count during destruction in a new
13628         GtkMenu field needs_destruction_ref_count.
13629
13630         * gtk/gtkviewport.c: SHAME! ok this one is tricky, so i note it
13631         here, those reading: learn from my mistake! ;)
13632         in order for set_?adjustment to support a default adjustemnt if
13633         invoked with an adjustment pointer of NULL, the code read (pseudo):
13634         if (v->adjustment) unref (v->adjustment);
13635         if (!adjustment) adjustment = adjustment_new ();
13636         if (v->adjustment != adjustment) v->adjustment = ref (adjustment);
13637         now imagine the first unref to actually free the old adjustment and
13638         adjustment_new() creating a new adjustment from the very same memory
13639         portion. here, the latter comparision will unintendedly fail, and
13640         all hell breaks loose.
13641         (gtk_viewport_set_hadjustment):
13642         (gtk_viewport_set_vadjustment): reset viewport->?adjustment to NULL
13643         after unreferencing it.
13644
13645         * gtk/gtkcontainer.[hc]: removed toplevel registration
13646         functions: gtk_container_register_toplevel(),
13647         gtk_container_unregister_toplevel() and
13648         gtk_container_get_toplevels() which had wrong semantics
13649         anyways: it didn't reference and copy the list.
13650
13651         * gtk/gtkwindow.c: we take over the container toplevel registration
13652         bussiness now. windows are registered across multiple destructions,
13653         untill they are finalized. the initial implicit reference count
13654         users are holding on windows is removed with the first destruction
13655         though.
13656         (gtk_window_init): ref & sink and set has_user_ref_count, got
13657         rid of gtk_container_register_toplevel() call. add window to
13658         toplevel_list.
13659         (gtk_window_destroy): unref the window if has_user_ref_count
13660         is still set, got rid of call to
13661         gtk_container_unregister_toplevel().
13662         (gtk_window_finalize): remove window from toplevel list.
13663         (gtk_window_list_toplevels): new function to return a newly
13664         created list with referenced toplevels.
13665         (gtk_window_read_rcfiles): use gtk_window_list_toplevels().
13666
13667         * gtk/gtkhscale.c (gtk_hscale_class_init): made the GtkRange
13668         adjustment a non-construct arg.
13669         * gtk/gtkvscale.c (gtk_vscale_class_init): likewise.
13670         * gtk/gtkhscrollbar.c (gtk_vscrollbar_class_init): likewise.
13671         * gtk/gtkvscrollbar.c (gtk_vscrollbar_class_init): likewise.
13672
13673         * gtk/gtkrange.c: added some realized checks.
13674         (gtk_range_destroy): get rid of the h/v adjustments in the
13675         destroy handler instead of finalize. remove timer.
13676         (gtk_range_get_adjustment): demand create adjustment.
13677
13678         * gtk/gtkviewport.c: made h/v adjustment non-construct args.
13679         we simply create them on demand now and get rid of them in
13680         the destroy handler.
13681         (gtk_viewport_destroy): get rid of the h/v adjustments in the
13682         destroy handler instead of finalize.
13683         (gtk_viewport_get_hadjustment): 
13684         (gtk_viewport_get_vadjustment): 
13685         (gtk_viewport_size_allocate): demand create h/v adjustment
13686         if required.
13687
13688         * gtk/gtkwidget.c (gtk_widget_finalize): duplicate part of the
13689         gtk_widget_real_destroy () functionality.
13690         (gtk_widget_real_destroy): reinitialize with a new style, instead
13691         of setting widget->style to NULL.
13692
13693 Fri May  5 13:02:09 2000  Tim Janik  <timj@gtk.org>
13694
13695         * gtk/gtkcalendar.c:
13696         * gtk/gtkbutton.c: ported _get_type() implementation over to
13697         GType, either to preserve memchunks allocation facilities,
13698         or because Gtk+ 1.0 GtkTypeInfo was still being used.
13699
13700         * gtk/gtkobject.[hc]: derive from GObject. ported various functions
13701         over. prepare for ::destroy to be emitted multiple times.
13702         removed reference tracer magic. chain into GObjectClass.shutdown()
13703         to emit ::destroy signal.
13704
13705         * gtk/gtksignal.c: removed assumptions about GTK_TYPE_OBJECT being
13706         fundamental.
13707
13708         * gtk/gtkmain.c: removed gtk_object_post_arg_parsing_init()
13709         cludge.
13710
13711         * gtk/gtksocket.c:
13712         * gtk/gtkplug.c:
13713         * gtk/gtklayout.c:
13714         * gtk/gtklabel.c:
13715         * gtk/gtkargcollector.c:
13716         * gtk/gtkarg.c: various fixups to work with GTK_TYPE_OBJECT
13717         not being a fundamental anymore, and to work with the new
13718         type system (nuked fundamental type varargs clutter).
13719
13720         * gtk/*.c: install finalize handlers in the GObjectClass
13721         part of the class structure.
13722         changed direct GTK_OBJECT()->klass accesses to
13723         GTK_*_GET_CLASS().
13724         changed direct object_class->type accesses to GTK_CLASS_TYPE().
13725
13726         * gtktypeutils.[hc]: use the reserved fundamental ids provided by
13727         GType. made most of the GTK_*() type macros and Gtk* typedefs
13728         simple wrappers around macros and types provided by GType.
13729         most notably, a significant portion of the old API vanished:
13730         GTK_TYPE_MAKE(),
13731         GTK_TYPE_SEQNO(),
13732         GTK_TYPE_FLAT_FIRST, GTK_TYPE_FLAT_LAST,
13733         GTK_TYPE_STRUCTURED_FIRST, GTK_TYPE_STRUCTURED_LAST,
13734         GTK_TYPE_ARGS,
13735         GTK_TYPE_CALLBACK,
13736         GTK_TYPE_C_CALLBACK,
13737         GTK_TYPE_FOREIGN,
13738         GtkTypeQuery,
13739         gtk_type_query(),
13740         gtk_type_set_varargs_type(),
13741         gtk_type_get_varargs_type(),
13742         gtk_type_check_object_cast(),
13743         gtk_type_check_class_cast(),
13744         gtk_type_describe_tree(),
13745         gtk_type_describe_heritage(),
13746         gtk_type_free(),
13747         gtk_type_children_types(),
13748         gtk_type_set_chunk_alloc(),
13749         gtk_type_register_enum(),
13750         gtk_type_register_flags(),
13751         gtk_type_parent_class().
13752         replacements, where available are described in ../docs/Changes-1.4.txt.
13753         implemented compatibility functions for the remaining API.
13754
13755         * configure.in: depend on glib 1.3.1, use gobject module.
13756
13757 Thu May 11 12:39:50 2000  Owen Taylor  <otaylor@redhat.com>
13758
13759         * TODO.xml: Various updates to current status.
13760
13761 Wed May 10 20:25:04 2000  Owen Taylor  <otaylor@redhat.com>
13762
13763         * gtk.m4: Print out version when test succeeds.
13764
13765 Wed May 10 16:38:17 2000  Owen Taylor  <otaylor@redhat.com>
13766
13767         * gtk/Makefile.am docs/Changes-1.4.txt gtk/gtkcolorsel.[ch]
13768         gtk/gtkhsv.[ch]: Color selection dialog rewrite.
13769         
13770         (Original triangle color selector from Simon Budig
13771         <Simon.Budig@unix-ag.org>, Cleaned up and rewritten for GTK+ by
13772         from Jonathan, Havoc, and Federico. Merge into GTK+ done by David
13773         Santiago <mrcooger@cyberverse.com>)
13774
13775         * gtk/gtkcolorseldialog.[ch]: Split color selection dialog
13776         out into a separate widget.
13777
13778         * gtk/testgtk.c: Add some checkbuttons for toggling palette
13779         and opacity controls.
13780
13781 Wed May 10 16:08:09 2000  Owen Taylor  <otaylor@redhat.com>
13782
13783         * configure.in (GTK_LIBS_EXTRA): Remove references to gobject that 
13784         snuck in prematurely.
13785
13786 2000-05-07  Tor Lillqvist  <tml@iki.fi>
13787
13788         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Fix typo. I
13789         had deleted a ! operator by mistake, which caused
13790         GDK_SELECTION_CLEAR events never to be generated, which caused
13791         only the first copy to the clipboard from an gtkeditable to
13792         actually cause a copy to the Windows clipboard.
13793
13794 2000-05-06  Tor Lillqvist  <tml@iki.fi>
13795
13796         * gdk/win32/gdkdnd-win32.c: Enable shortcut resolution for gcc
13797         compilation, too. Current mingw gcc distributions include the
13798         necessary headers. Also the necessary IIDs are now in mingw
13799         headers/libraries, and own definitions unnecessary.
13800
13801         More hacking on OLE2 DND, still doesn't work though, and thus
13802         ifdeffed out.
13803
13804         * gdk/win32/gdkwindow-win32.c: Remove gdk_window_clear() from
13805         here, too.
13806
13807 Sat,  6 May 2000 13:31:34 +0200 Paolo Molaro <lupus@linuxcare.com>
13808
13809         * gdk/nanox/*: nano-X port work in progress.
13810         * gdk/simple.c: simple test for Gdk.
13811         * README.nanox: notes about the port: read this first!
13812         * gtk/gtk{dnd,plug,selection,window}.c: minimal changes to make gtk compile
13813         with nano-X.
13814
13815 Fri May  5 11:18:47 2000  Owen Taylor  <otaylor@redhat.com>
13816
13817         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c (gdk_window_clear): Move
13818         gdk_window_clear() into common code, implement in terms of
13819         gdk_window_clear_area(). (Fixes bug where gdk_window_clear() was
13820         not redirected to the backing rectangle.
13821
13822 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
13823
13824         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
13825         EXTRA_DIST. It does not work well when the file that
13826         everything depends on is not in the tarball.
13827
13828 Tue Apr 25 22:20:41 2000  Owen Taylor  <otaylor@redhat.com>
13829
13830         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix error
13831         with recursion where process_updates() is called from
13832         an expose handler. (GtkTextView is highly broken in
13833         doing this, but it should work, so it is a nice test
13834         case.)
13835
13836 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
13837
13838         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Gracefully
13839         handle the case where updates are queued during processing of
13840         updates.
13841
13842 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
13843
13844         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): We already assume
13845         window is on gdk_display - use that instead of segfaulting.
13846
13847 Thu May  4 02:04:46 2000  Tim Janik  <timj@gtk.org>
13848
13849         * configure.in (STRIP_DUMMY): some Make 3.79 $(strip ) versions are
13850         broken and require an empty arg, give it to them.
13851
13852 Fri Apr 28 19:34:32 2000  Tim Janik  <timj@gtk.org>
13853
13854         * gtk/gtklabel.h: indentation fixes.
13855
13856 2000-05-02  Tor Lillqvist  <tml@iki.fi>
13857
13858         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_arc): Don't try to
13859         draw too narrow or too low arcs, they seem to fail, at least with
13860         some display drivers.
13861
13862         * gdk/gdk.c (gdk_init_check): Use G_DIR_SEPARATOR.
13863
13864         Large changes to the Win32 backend, partially made necessary by
13865         the changes to the backend-independent internal
13866         structures. Attempts to implement similar backing store stuff as
13867         on X11. The current (CVS) version of the Win32 backend is *not* as
13868         stable as it was before the no-flicker branch was merged. A
13869         zipfile with that version is available from
13870         http://www.gimp.org/win32/. That should be use by "production"
13871         code until this CVS version is usable. (But note, the Win32
13872         backend has never been claimed to be "production quality".)
13873
13874         * README.win32: Add the above comment about versions.
13875
13876         * gdk/gdkwindow.c: Don't use backing store for now on Win32.
13877
13878         * gdk/gdk.def: Update.
13879
13880         * gdk/gdkfont.h: Declare temporary Win32-only functions. Will
13881         presumably be replaced by some more better mechanism as 1.4 gets
13882         closer to release shape.
13883
13884         * gdk/makefile.{cygwin,msc}: Update.
13885
13886         * gdk/win32/*.c: Correct inclusions of the backend-specific and
13887         internal headers. Change code according to changes in these. Use
13888         gdk_drawable_*, not gdk_window_* where necessary.
13889
13890         * gdk/win32/gdkdnd-win32.c: Use MISC selector for GDK_NOTE, not
13891         our old DND.
13892
13893         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_text): Don't try
13894         to interpret single characters as UTF-8. Thanks to Hans Breuer.
13895         Use correct function name in warning messages.
13896
13897         * gdk/win32/gdkevents-win32.c: Use correct parameter lists for the
13898         GSourceFuncs gdk_event_prepare and gdk_event_check.
13899         (gdk_event_get_graphics_expose): Do implement, use
13900         PeekMessage. Thanks to Hans Breuer.
13901         (event_mask_string): Debugging function to print an GdkEventMask.
13902         (gdk_pointer_grab): Use it.
13903
13904         * gdk/win32/gdkfont-win32.c: The Unicode subrange that the
13905         (old) book I used claimed was Hangul actually is CJK Unified
13906         Ideographs Extension A. Also, Hangul Syllables were missing.
13907         Improve logging.
13908
13909         * gdk/win32/gdkgc-win32.c: Largish changes.
13910
13911         * gdk/win32/gdkim-win32.c (gdk_set_locale): Use
13912         g_win32_getlocale() from GLib, and not setlocale() to get current
13913         locale name.
13914
13915         * gdk/win32/gdkprivate-win32.h
13916         * gdk/win32/gdkwin32.h: Move stuff from gdkprivate-win32.h to
13917         gdkwin32.h, similarily as in the X11 backend.
13918
13919         * gdk/win32/gdkwindow-win32.c (gdk_propagate_shapes): Bugfix,
13920         assignment was used instead of equals in if test. Thanks to Hans
13921         Breuer.
13922
13923         * gdk/win32/gdkgeometry-win32.c: New file, just a quick hack of
13924         the X11 version.
13925
13926         * gdk/win32/makefile.{cygwin,msc}
13927         * gtk/makefile.{cygwin,msc}: Updates. Better kludge to get the
13928         path to the Win32 headers that works also with the mingw compiler.
13929
13930         * gtk/gtkstyle.c: Include <string.h>.
13931
13932 2000-04-26  Havoc Pennington  <hp@redhat.com>
13933
13934         * gtk/gtklabel.c (gtk_label_get_text): Add this function,
13935         replacing the broken gtk_label_get ()
13936
13937 2000-04-15  Havoc Pennington  <hp@pobox.com>
13938
13939         * gdk/gdkdnd.h: clean up enum format, remove extra comma, 
13940         this keeps scanner scripts from getting confused.
13941
13942         * gdk/gdkdraw.c (gdk_drawable_get_data): This should return the
13943         data, rather than void
13944
13945 2000-04-15  Tor Lillqvist  <tml@iki.fi>
13946
13947         * gtk/gtkclist.c (gtk_clist_motion)
13948         * gtk/gtklist.c (gtk_list_motion_notify): If we get a motion event
13949         with is_hint FALSE, get x and y from the event. They used to be
13950         used uninitialised. The Win32 backend never sends motion events
13951         marked as hints. This for instance fixes the annoying file and
13952         font selector behaviour in the Win32 version.
13953
13954 2000-04-14  Tor Lillqvist  <tml@iki.fi>
13955
13956         * gtk/gtksignal.c: (Win32:) Export the gtk_private_signals and
13957         gtk_private_n_signals variables, they are used by some software,
13958         sigh.
13959
13960         * gtk/gtkrc.c (get_gtk_sysconf_directory): (Win32:) Fetch the
13961         installation directory from the Registry, where the installer
13962         should have put it.
13963
13964 Fri Apr  7 17:19:27 2000  Owen Taylor  <otaylor@redhat.com>
13965
13966         * gdk/x11/Makefile.am: Fix problem with installation directory for
13967         gdkx.h
13968
13969         * gtk/gtkmenuitem.c gtk/gtkmenushell.c: Patch from David Santiago
13970         <mrcooger@cyberverse.com> so that when selecting menus with the
13971         mouse, the first item will not be selected, but when selecting
13972         with an accelerator, or navigating left-right on a menubar with
13973         the menus popped up, the first item will be selected.
13974
13975 2000-04-05  Dan Damian  <dand@dnttm.ro>
13976
13977         * configure.in: Added "ro" to ALL_LINGUAS.
13978
13979 Wed Apr  5 00:08:36 2000  Owen Taylor  <otaylor@redhat.com>
13980
13981         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): Fix screwy
13982         indentation.
13983
13984         * Makefile.am (EXTRA_DIST): Fix typo.
13985
13986         * gdk[/x11]/Makefile.am (INCLUDES): Add $(top_builddir)/gdk
13987         to catch gdkconfig.h
13988
13989         * gtk/gtkitemfactory.c: Added FIXME.
13990
13991 2000-03-30  Jonathan Blandford  <jrb@redhat.com>
13992
13993         * gtk/gtkpaned.c (gtk_paned_get_position): oops.
13994         s/return_if_fail/return_val_if_fail/g and add a return value.
13995
13996 Mon Mar 27 20:56:14 2000  Owen Taylor  <otaylor@redhat.com>
13997
13998         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Fix up 
13999         merge slipup.
14000
14001         * gdk/gdkinput.h: Fix missing line from merge.
14002
14003 Mon Mar 27 20:39:49 2000  Owen Taylor  <otaylor@redhat.com>
14004
14005         * gdk/gdkcolor.c cursor.c gdkdraw.c gdkfont.c: Include gdkinternals.h
14006         instead of gdkprivate.h.
14007
14008 Sun Mar 12 15:19:24 2000  Owen Taylor  <otaylor@redhat.com>
14009
14010         * gtk/gtkinputdialog.h (struct _GtkInputDialogClass): Fix
14011         parent class to correctly be GtkDialogClass.
14012
14013 Thu Feb 24 23:58:21 2000  Owen Taylor  <otaylor@redhat.com>
14014
14015         * gdk/x11/gdkgeometry-x11.c: Don't worry about clipping of
14016         toplevel windows and their immediate children by their parents,
14017         since the size of toplevel windows is out of our immediate
14018         control and we don't get any real benefit from trying to track
14019         this size for clipping.
14020
14021         * gdk/gdkprivate.h (struct _GdkWindowPrivate) gdk/x11/gdkwindow-x11.c : Add a flag
14022         for input_only windows.
14023
14024         * gdk/gdkwindow.c gdk/x11/gdkgeometry-x11.c: Use the above flag
14025         to fix some hacks and make sure that we don't try to set the
14026         background of input only windows.
14027
14028 Thu Feb 24 18:11:46 2000  Owen Taylor  <otaylor@redhat.com>
14029
14030         * gdk/gdkinternals.h gdk/gdkprivate.h gdk/Makefile.am: Add a header file for
14031         the _really_ internal stuff, and leave gdkprivate.h for the fake private
14032         stuff that we've traditionally exposed.
14033
14034         * gdk/**.c: Use gdkinternals.h where appropriate.
14035
14036         * gdk/x11/gdkx.h gdk/x11/gdkprivate-x11.h gdk/x11/*.c: Make gdkx.h
14037         not include gdkprivate-x11.h, move all stuff of conceivable public
14038         interest into gdkx.h; keep all really private stuff in
14039         uninstalled header gdkprivate-x11.h.
14040
14041         * gdk/gdkdraw.c gdk/gdkwindow.c gdk/gdkinternals: Redirect all calls to
14042         image->image_put on windows through a new function _gdk_window_draw_image()
14043         to allow us to do backing store for images. (Sort of ugly)
14044
14045         * gdk/gdkgc.c gdk/gdkprivate.h: Cache the ts and clip origins for graphics
14046         contexts locally so that we can offset them properly when drawing 
14047         onto backing pixmaps.
14048
14049         * gdk/gdkinput.h: Reindented
14050
14051         * gdk/gdkprivate.h gdk/x11/gdkwindow-x11.c: Store the background
14052         pixmap or color for the window, so we can properly initialize
14053         our double-buffer pixmaps, and also so that we temporarily set
14054         a background of None while scrolling.
14055
14056         * gdk/gdkregion.h: Revise region boolean operators to have an
14057         interface that is actually convenient - switch from creating new
14058         regions on every op, to "methods" that modify existing regions
14059         (A = A OP B). 3 argument forms which allow dest == src, would also
14060         be possible, but the current interfaces seem to map nicely
14061         onto what needs to be done. (There is quite a lot of region
14062         code in GDK now.)
14063
14064         * gdk/gdkregion.h: Add constructor from rectangle and a copy
14065         operator.
14066
14067         * gdk/x11/{gdkregion-generic.[ch],gdkpolyreg-generic.c,
14068         gdkpoly-generic.h: Copy region code from Xlib, switch it over
14069         to 32 bit coordinates, modify it to be mostly GTK+ style
14070         and to have interfaces that match gdkregion.h.
14071
14072         * gdk/gdkwindow.c gdk/gdkprivate.h: Add facility for
14073         double-buffered drawing. gdk_window_begin_paint_{rect,region}()
14074         create a backing pixmap and redirect all drawing to
14075         that backing pixmap until a matching gdk_window_end_paint().
14076
14077         * gdk/gdkwindow.[ch] gdk/gdkinternals.h gdk/x11/gdkdrawable-x11.c:
14078         Create a special drawable class for GtkWindow's that 
14079         redirects the drawing to the backing pixmap as necessary
14080         and then calls the real operations in _gdk_windowing_window_class.
14081
14082         * gdk/gdkprivate.h gdk/gdkwindow.[ch] gdk/x11/gdkevents-x11.c:
14083         Store invalid region for each window. Generate expose events for invalid
14084         region in an idle. This replaces both the expose compression
14085         and the redrawing queuing in GTK+. It is both more efficient and
14086         simpler than either one individually and far more so then the
14087         combination.
14088
14089         * gdk/x11/gdkgeometry.c gdk/x11/gdkwindow.c gdk/x11/gdkprivate-x11.h:
14090         Emulate 32 bit coordinates for windows with 16 bit coordinates
14091         by offsetting drawing, guffaw scrolling techniques and
14092         mapping/unmapping child windows as necessary.
14093
14094         * gdk/gdkwindow.[ch] gdk/x11/gdkgeometry.c: Add anti-exposes,
14095         where, when invalid regions are processed, the region is stored,
14096         and if expose events come in that are detectably duplicate
14097         the processed exposes (by comparison of event serial numbers),
14098         the stored region is subtracted out of those exposes.
14099
14100         * gdk/x11/gdkgeometry.c: Temporarily unset backing pixmaps of
14101         regions newly exposed when scrolling or resizing windows.
14102         This, combined with forcing processesing of queued invalidated
14103         regions, gives nice flicker-free scrolling.
14104
14105         * gtk/gtklayout.c gtk/gtkviewport.c: Force processing of
14106         invalidated regions after every scroll.
14107
14108         * gtk/gtklayout.c: Vastly simplify using the new 32 bit coordinate
14109         emulation in GDK. Its, for all practical purposes just a
14110         GtkViewport/GtkFixed hybrid now.
14111
14112         * gdk/gdkdrawable-x11.c: Convert from GDK (32 bit) to X11
14113         (16-bit) structures as necessary instead of just casting.
14114
14115         * gdk/x11/gdkgc-x11.c gdk/x11/gdkx.h: Replace XSetRegion with code
14116         in terms of the structures from gdkregion-generic.c, using appropriate
14117         offsets from GDK to X11 coordinates. Cache clip mask and
14118         origin and ts origin locally and only flush to the server
14119         when drawing, to avoid constantly setting and resetting these
14120         values when offsetting GC's for scrolling and backing pixmaps.
14121
14122         * gdk/x11/gdkinput-x11.c: Fix leak of axes structures.
14123
14124         * gtk/gtkcontainer.c: Call process_all_updates at end
14125         of resizing to reduce flicker. (Avoids having redraw
14126         lag arbitrarily behind resize under some circumstances)
14127
14128         * gtk/gtkentry.c: Remove old backing store code, and simply take
14129         advantage of the new backing store capabilities of GDK.
14130
14131         * gtk/gtkmain.c: Simple implementation of widget backing
14132         store - simply push a paint while handling each expose.
14133         (Should really be configurable widget for widget.)
14134         
14135         * gtk/gtkwidget.c: Remove all the old complicated redraw
14136         code, and simply invalidate the GDK windows from
14137         gdk_window_queue_clear(), etc. (Sigh, so much carefully
14138         debugged complexity ... gone to the winds.)
14139
14140         Remove all the code for suppressing expose events while
14141         resizes are pending; this isn't needed since the invalid
14142         areas won't be processed until after the resizes are
14143         processed, since they are in a lower priority idle.
14144
14145 Thu Feb 24 15:37:41 2000  Owen Taylor  <otaylor@redhat.com>
14146
14147         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Set width
14148         and height of dest rectangle for non-intersecting rectangles.
14149
14150 Sun Feb 20 16:47:31 2000  Owen Taylor  <otaylor@redhat.com>
14151
14152         * gtk/gtkwidget.h: Make GtkAllocation just a typedef
14153         for GdkRectangle.
14154
14155 Sun Feb 20 11:27:00 2000  Owen Taylor  <otaylor@redhat.com>
14156
14157         * gdk/gdk{events,image,private,types,window}.h
14158          gdk/x11/gdkinputprivate.h: Change all coordinates
14159          from int16 to int. Also, Change width and height from
14160          unsigned to signed to avoid all the stupid C 
14161          signedness bugs.
14162
14163 Sat Feb 19 12:01:53 2000  Owen Taylor  <otaylor@redhat.com>
14164
14165         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable):
14166         Use gdk_drawable_get_depth instead of gdk_drawable_get_visual.
14167         Add some more detailed checking.
14168
14169         * gdk/gdkdraw.c gdk/gdkdrawable.h (gdk_drawable_get_depth):
14170         New function to retrieve the depth of a drawable.
14171
14172         * gdk/gdkprivate.h (struct _GdkDrawablePrivate): Add a depth
14173         field, reorder fields to save memory. 
14174
14175 Mon Dec 13 14:06:03 1999  Owen Taylor  <otaylor@redhat.com>
14176
14177         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): Draw a small portion
14178         of the background image instead of scaling the background down to
14179         a line.
14180
14181         * gtk/gtk[hv]scrollbar.c (gtk_hscrollbar_size_allocate): Removed mysterious
14182         which temporarily set slider to wrong size.
14183
14184         * gtk/gtkaspectframe.c gtkbin.c: Remove unecessary calls to
14185         queue_clear().
14186
14187 Wed Nov 17 18:36:05 1999  Owen Taylor  <otaylor@redhat.com>
14188
14189 2000-03-23  Jonathan Blandford  <jrb@redhat.com>
14190
14191         * gtk/gtkpaned.c (gtk_paned_get_position): add getter.
14192
14193 2000-03-17  Tor Lillqvist  <tml@iki.fi>
14194
14195         * gdk/win32/gdkevents-win32.c: Remove the #ifndef
14196         USE_DISPATCHMESSAGE sections, we do want to use DispatchMessage.
14197
14198         * gdk/win32/gdkfont-win32.c
14199         * gdk/win32/gdkproperty-win32.c
14200         * gdk/win32/gdkselection-win32.c
14201         * gdk/win32/gdkwindow-win32.c: Add const to some arguments that are
14202         now declared such.
14203
14204 Wed Mar 15 02:59:38 PST 2000 Manish Singh <yosh@gimp.org>
14205
14206         * gtk/gtkvpaned.c: removed stray gutter_size reference, a 1.2 relic
14207
14208 Mon Mar 13 18:37:55 2000  Owen Taylor  <otaylor@redhat.com>
14209
14210         * gdk/gdkdnd.c: Fix a bunch of cases where XGetWindowProperty()
14211         is called without trapping X errors.
14212
14213 Fri Feb 25 10:48:53 2000  Owen Taylor  <otaylor@redhat.com>
14214
14215         * gtk/gtkrc.*: Fix problem where stray '"' characters found their
14216         way into the fontset lists.
14217
14218 Tue Feb 22 08:52:52 2000  Tim Janik  <timj@gtk.org>
14219
14220         * gtk/gtkthemes.h: add extern "C" scope.
14221
14222 Mon Feb 21 20:16:42 2000  Lars Hamann  <lars@gtk.org>
14223
14224         * gtk/gtkclist.c: applied  patch from Guy Harris <guy@netapp.com>
14225         to make appends to the list constant. (gtk-guy-990901-0.patch)
14226
14227 Mon Feb 14 22:50:10 2000  Tim Janik  <timj@gtk.org>
14228
14229         * gtk/gtktypeutils.c (gtk_type_init): use g_str_hash() and g_str_equal()
14230         for the typename hash table.
14231
14232 Mon Feb 14 15:01:23 2000  Owen Taylor  <otaylor@redhat.com>
14233
14234         * gtk/gtkpaned.c (gtk_paned_compute_position): Add some sanity checks
14235         to make sure we never divide by zero. 
14236         (Problem pointed out by Michal Jaegermann <michal@ellpspace.math.ualberta.ca>)
14237
14238 Mon Feb 14 12:29:38 2000  Owen Taylor  <otaylor@redhat.com>
14239
14240         * gtk/gtkfontsel.c: Apply patch from
14241         SHIRASAKI Yasuhiro <yasuhiro@awa.tohoku.ac.jp> to make font selector work a little
14242         better with 2-byte fonts. (Load a fontset instead of a font for two byte fonts.)
14243
14244         Also, some cleanups in atom handling.
14245
14246 Sun Feb 13 08:02:21 2000  Tim Janik  <timj@gtk.org>
14247
14248         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
14249         not GtkWidget.
14250
14251 Fri Feb 11 02:19:32 2000  Tim Janik  <timj@gtk.org>
14252
14253         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): 
14254         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): 
14255         * gtk/gtkpaned.c (gtk_paned_compute_position): had to squeeze some
14256         more guint wrap-around bugs before going to bed.
14257
14258 Thu Feb 10 16:16:35 2000  Tim Janik  <timj@gtk.org>
14259
14260         * gtk/gtkspinbutton.c (gtk_spin_button_size_allocate): guard against
14261         guint wrap arounds in allocation.width.
14262
14263         * gtk/gtktable.c (gtk_table_size_allocate_pass1): repeat shrinking
14264         process untill we fit the allocation given.
14265
14266 Tue Feb  8 09:38:29 2000  Tim Janik  <timj@gtk.org>
14267
14268         * gtk/gtkwidget.c:
14269         (gtk_widget_unrealize): guard widget access with ref/unref
14270         around signal emission.
14271         (gtk_widget_hide): same here, but also check its destroyed
14272         state before queueing a resize.
14273
14274 Tue Feb  8 03:05:55 2000  Tim Janik  <timj@gtk.org>
14275
14276         * gtk/gtkstyle.c (gtk_style_new): use gtk_default_prelight_bg instead
14277         of gtk_default_insensitive_bg as insensitive base color.
14278
14279         * gtk/gtktext.c (gtk_text_style_set): set the background color according
14280         to the widget's state.
14281         (gtk_text_realize): same here.
14282         (gtk_text_state_changed): same here.
14283         (draw_bg_rect): compare background color against base[] from
14284         GTK_WIDGET_STATE (text) not GTK_STATE_NORMAL.
14285
14286 Mon Feb  7 04:01:55 2000  Tim Janik  <timj@gtk.org>
14287
14288         * gtk/gtkmain.c (gtk_main_do_event): ignore delete events when
14289         grabs are active, unless a delete event is send to the toplevel
14290         of the currently grab holding widget.
14291
14292 Sun Feb  6 10:13:15 2000  Owen Taylor  <otaylor@redhat.com>
14293
14294         * gtk/gtkctree.c (gtk_ctree_drag_data_received): Remove
14295         debugging g_print's.
14296
14297 Fri Feb  4 15:54:54 2000  Owen Taylor  <otaylor@redhat.com>
14298
14299         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_request): Don't
14300         ever make the scrolled-window requisition ever depend on the 
14301         visibility state of the scrollbars for the AUTOMATIC policy. 
14302         This breaks the GTK+ requisition model, and causes loops.
14303
14304 Fri Feb  4 15:09:12 2000  Owen Taylor  <otaylor@redhat.com>
14305
14306         * gtk/gtkstyle.c (gtk_style_new): Set the charset explicitely for
14307         the default font to avoid problems with XFree86-4.0 where the
14308         default charset is iso10646-1, not iso8859-1.
14309
14310 Thu Feb  3 14:58:48 PST 2000 Manish Singh <yosh@gimp.org>
14311
14312         * acinclude.m4
14313         * config.guess
14314         * config.sub
14315         * ltconfig
14316         * ltmain.sh: upgrade to libtool 1.3.4 (bugfix only release)
14317
14318         * gtk/Makefile.am: minor cosmetic consistency tweak
14319
14320 Thu Feb  3 14:46:01 2000  Owen Taylor  <otaylor@redhat.com>
14321
14322         * gtk/gtkmenushell.c (gtk_menu_shell_button_release): Set
14323         the activate_time to 0, so that we handle a quick
14324         press/release press/release properly and don't suppress
14325         the second release. (Red Hat bug #7545)
14326
14327 Wed Feb  2 22:25:17 2000  Tim Janik  <timj@gtk.org>
14328
14329         * gtk/gtkctree.c (row_delete):
14330         (gtk_ctree_node_set_row_data_full): fixed very evil reentrancy
14331         bugs with destruction notifier, *always* update internal
14332         structures *before* calling user code.
14333
14334 Sun Jan 30 20:10:52 2000  Lars Hamann  <lars@gtk.org>
14335
14336         A few more fixes for bug #5487, #2051, #2677.
14337         * gtk/gtkclist.c : 
14338         (gtk_clist_button_press):  Reset clist->anchor to -1 if event->type is
14339         not GDK_BUTTON_PRESS.
14340         (resync_selection): resync only if selection_mode is
14341         GTK_SELECTION_EXTENDED
14342         * gtk/gtkctree.c (resync_selection): same here
14343
14344 Sun Jan 30 12:29:20 2000  Owen Taylor  <otaylor@redhat.com>
14345
14346         * gdk/gdk.h gtk/gtkmenu.h: Removed duplicate prototypes for
14347         gdk_drag_get_selection() and gtk_menu_detach().
14348
14349         [ From Jeroen Ruigrok/Asmodai ]
14350
14351 Sat Jan 29 10:11:56 2000  Owen Taylor  <otaylor@redhat.com>
14352
14353         * gtk/gtknotebook.c (gtk_notebook_size_request): 
14354         page->tab_label can be NULL.
14355
14356 2000-01-25  Havoc Pennington  <hp@pobox.com>
14357         
14358         * gdk/gdkwindow.c (gdk_window_set_back_pixmap): parent_relative
14359         arg is boolean
14360
14361         * gdk/gdkselection.c (gdk_selection_owner_set): return boolean
14362
14363         * gdk/gdkrectangle.c (gdk_rectangle_intersect): return boolean
14364
14365         * gdk/gdkproperty.c (gdk_property_get): return boolean
14366
14367         * gdk/gdkinput.c (gdk_input_set_mode): return boolean
14368
14369         * gdk/gdkim.c (gdk_im_ready): return boolean
14370
14371         * gdk/gdkgc.c (gdk_gc_set_exposures): gboolean arg
14372
14373         * gdk/gdkfont.c (gdk_font_equal): return gboolean (mild
14374         glib clash, should fix glib)
14375
14376         * gdk/gdkevents.c (gdk_set_show_events): take gboolean arg
14377         (gdk_get_show_events): return gboolean, and canonicalize 
14378         to TRUE/FALSE
14379
14380         * gdk/gdkcolor.c (gdk_colormap_new): gboolean flag whether the
14381         colormap is private
14382         (gdk_colors_alloc): gboolean whether to be contiguous
14383         (gdk_color_equal): return gboolean since we are a predicate
14384         and not a qsort() (this looks semi-wrong due to glib breakage,
14385         IMO glib should be fixed)
14386         
14387         * gdk/gdk.c (gdk_set_use_xshm): take gboolean arg
14388         (gdk_get_use_xshm): return gboolean
14389         (gdk_pointer_is_grabbed): return gboolean
14390
14391         * gdk/gdk.h: Change prototypes to match all the above changes,
14392         and re-run egtk-format-protos as required.
14393
14394 Fri Jan 28 12:28:17 2000  Owen Taylor  <otaylor@redhat.com>
14395
14396         * gtk/gtkctree.c (resync_selection): 
14397         * gtk/gtkclist.c (resync_selection):
14398
14399         Return immediately if clist->drag_pos < 0. This is a workaround
14400         for the corrupt state that the clist gets into when a
14401         GDK_2BUTTON_PRESS occurs. See note in gtk_clist_button_press().
14402
14403         Bug #5487, #2051, #2677; fix suggested by David Helder and T. Alexander Popiel.
14404         
14405         * gtk/gtknotebook.c (gtk_notebook_size_request): Fix uninitialized
14406         variable from recent commit.
14407
14408 Thu Jan 27 15:22:09 2000  Owen Taylor  <otaylor@redhat.com>
14409
14410         * gtk/gtkdnd.c (gtk_drag_begin): Fix stupid typo in last commit.
14411
14412 Thu Jan 27 18:00:55 2000  Tim Janik  <timj@gtk.org>
14413
14414         * gtk/Makefile.am: prefix all autogenerated source that get build in
14415         $(srcdir) with $(srcdir)/, so make doesn't assume they got generted
14416         in builddir. since we subsequently cd into srcdir for autogeneration,
14417         the paths have to be stripped from the target file names, thusly we
14418         use $(@F) as target names now.
14419         put a comment about configure.in's --disable-rebuilds option,
14420         which can be used for non-writable source directories, for development
14421         setups though, srcdir has to be *writable*.
14422
14423 hu Jan 27 00:15:03 2000  Owen Taylor  <otaylor@redhat.com>
14424
14425         * gtk/gtkdnd.c (gtk_drag_begin gtk_drag_get_event_actions):
14426           Finish the job of allowing event to be NULL.
14427           (Fixes bug #4283, reported by Chris Blizzard)
14428
14429         * gtk/gtkentry.c (entry_adjust_scroll): When calculating
14430           things so that the cursor appears on screen, properly
14431           take into account INNER_BORDER.
14432           (Fixes bug #4754, reported by Antonio Campos)
14433
14434 Wed Jan 26 23:12:28 2000  Owen Taylor  <otaylor@redhat.com>
14435
14436         * gtk/gtknotebook.c (gtk_notebook_map): Don't
14437           show the tab_label unless it itself is visible.
14438
14439           gtk/gtknotebook.c (gtk_notebook_size_request):
14440           Do a better job of making sure that the visibility
14441           of the tab label corresponds to whether it should
14442           be mapped or not.
14443
14444 Wed Jan 26 21:17:03 2000  Owen Taylor  <otaylor@redhat.com>
14445
14446         * gtk/gtkoptionmenu.c (gtk_option_menu_position):
14447           Use the requisition, not the allocation, since the
14448           allocation has not necessarily been computed yet.
14449           (Pointed out by Eugene Osintsev)
14450
14451 Wed Jan 26 19:44:25 2000  Owen Taylor  <otaylor@redhat.com>
14452
14453         * gtk/gtkstyle.c (gtk_style_new): Dont' set
14454           style/base[GTK_STATE_INSENSITIVE] both to
14455           gtk_default_insensitive_bg!
14456           (Bug #2187, reported by Jonathan Blandford)
14457
14458         * gtk/gtkaccelgroup.c (gtk_accelerator_valid):
14459           Add Alt_L, Alt_R to list of invalid accelerators.
14460           (Bug #3736, reported by Vlad Harchev)
14461
14462 Wed Jan 26 19:01:56 2000  Owen Taylor  <otaylor@redhat.com>
14463
14464         * gtk/gtkfilesel.c (open_ref_dir): Fix several
14465         bugs which occured after an attempt to open 
14466         invalid home directory left cmpl_state->reference_dir == NULL.
14467
14468          - completion on files in home directory didn't work
14469          - completion on an empty string caused  segfault
14470
14471          (Bug #3678, reported by Steve Ratcliffe)
14472
14473         * gtk/gtkscale.c (gtk_scale_get_value_width): Fix
14474         cut and paste error that was causing scales to
14475         be incorrectly positioned.
14476         (Bug #2956,
14477          patch from Steve Ratcliffe <steve@parabola.demon.co.uk>)
14478
14479 2000-01-27  Shirasaki Yasuhiro  <yasuhiro@gnome.gr.jp>
14480
14481         * acinclude.m4 (AM_GTK_WITH_NLS): Add -lintl to libs
14482         when checking for dcgettext, if we've found we needed
14483         it for dgettext.
14484 +
14485 Wed Jan 26 18:06:07 2000  Owen Taylor  <otaylor@redhat.com>
14486
14487         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
14488         queue_clear on NO_WINDOW widgets during a reparent,
14489         since at that point the window and widget heirarchies
14490         are out of sync. This stops crashing in some cases
14491         (the scrolled window reparent test, for instance), and
14492         _probably_ won't cause drawing errors.
14493
14494         * gtk/testgtk.c: Make the reparenting-a-scrolled-window
14495         test do what it was supposed to do and be robust against
14496         window closings, etc. (Bug #2443)
14497
14498 Wed Jan 26 16:56:54 2000  Owen Taylor  <otaylor@redhat.com>
14499
14500         * gtk/gtkentry.c: Fix return values on mouse events.
14501         (Bug #2686, Sky <seb_sky@yahoo.com>)
14502
14503         * gtk/genmarshal.pl: Fix up handling of FOREIGN.
14504         (pointed out by George Lebl)
14505
14506         * gdk/gdkcolor.c (gdk_color_copy): Made const-safe.
14507         (From Ettore Perazzoli  <ettore@helixcode.com>)
14508  
14509 Mon Jan 24 10:44:48 2000  Owen Taylor  <otaylor@redhat.com>
14510
14511         * gtk/gtkcalendar.c (gtk_calendar_main_button): Handle
14512         clicks between rows or outside calender area correctly.
14513         (Patch from Damon Chaplin)
14514
14515         * gtk/gtkclist.c (gtk_clist_set_row_data_full): 
14516         * gtk/gtkctree.c (gtk_ctree_node_set_row_data_full): 
14517           Call destroy function when overwriting existing data. 
14518           (Pointed out by Damon Chaplin)
14519
14520 Tue Jan 25 09:55:41 2000  Owen Taylor  <otaylor@redhat.com>
14521
14522         * gdk/gdk.c: Remove useless #include of <X11/Xmu/WinUtil.h>,
14523           which was causing problems on various systems with Xmu.
14524           This hasn't been needed for a very long time.
14525           (Fixes #1185 3167)
14526
14527 Sun Jan 23 22:27:36 2000  Owen Taylor  <otaylor@redhat.com>
14528
14529         * gdk/gdki18n.h: Include <ctype.h> when defining
14530           gdk_isw* in terms of is* as a fallback.
14531           (Bug #4106 - Dan Winship <danw@MIT.EDU>)
14532
14533 Sun Jan 23 22:12:36 2000  Owen Taylor  <otaylor@redhat.com>
14534
14535         * gtk/gtkviewport.c (gtk_viewport_size_allocate): Don't
14536           realize the widget when it is size allocated!
14537           (old, old bug)
14538
14539         * gtk/gtkviewport.c (gtk_viewport_adjustment_value_changed):
14540           Removed unused call to gdk_window_get_size() that
14541           showed up when the above was fixed.
14542
14543 Sat Jan 22 15:44:30 2000  Owen Taylor  <otaylor@redhat.com>
14544
14545         * gtk/gtkwidget.c (gtk_widget_reparent): Correctly
14546           fix up widget->window when the widget is a
14547           NO_WINDOW container widget.
14548
14549 Sat Jan 22 12:40:48 2000  Owen Taylor  <otaylor@redhat.com>
14550
14551         * gdk/gdkpixmap.c (gdk_pixmap_seek_string): Rewrite
14552           to account for the fact that feof() does _not_ 
14553           return TRUE on errors, and thus avoid infinite loops
14554           when trying to use gdk_pixmap_create_from_xpm()
14555           on unreadable values.
14556
14557 Fri Jan 21 18:32:43 2000  Owen Taylor  <otaylor@redhat.com>
14558
14559         * gtk/gtkaspectframe.h (struct _GtkAspectFrame): s/gint/gboolean/.
14560
14561 Fri Jan 21 16:24:08 2000  Owen Taylor  <otaylor@redhat.com>
14562
14563         * gdk/gdkgc.c (gdk_gc_set_dashes): Change from
14564           gdk_gc_set_dashes to take gint8 instead of gchar to
14565           make it clearer that it is _not_ a NULL terminated string.
14566
14567         * gdk/gdk.h gdk/gdkfont.c gdk/gdkgc.c gdk/gdkselection.c
14568           gdk/gdkwindow.c gtk/gtkprogress.[ch] gtk/gtkthemes.[ch]
14569           gtk/gtktreeitem.[ch] gtk/gtkwidget.[ch]: Constify string
14570           arguments.
14571
14572 Thu Dec 30 04:51:05 1999  Tim Janik  <timj@gtk.org>
14573
14574         * gtk/gtkvscale.c (gtk_vscale_pos_background): 
14575         * gtk/gtkhscale.c (gtk_hscale_pos_background): when calculating the
14576         background size relative to our allocation, guard against small
14577         allocations, we may have not yet been size allocated.
14578
14579 Thu Dec  2 10:59:14 1999  Owen Taylor  <otaylor@redhat.com>
14580
14581         * gdk/gdkdnd.c (xdnd_check_dest): Allow version >= 3,
14582         not just version == 3. We implement all 3 + most of 4 - 
14583         (we don't support matching text/plain;charset=iso-8859-1
14584         to a dest that expects text/plain). We'll still advertise
14585         3 to be safe, but any client implementing version >= 3
14586         must interoperate with 3.
14587         
14588 Tue Mar 14 11:53:31 2000  Owen Taylor  <otaylor@redhat.com>
14589
14590         * gtk/gtktooltips.[ch] (struct _GtkTooltips): Remove foreground,
14591         background and gc members, add a warning in gtk_tooltips_set_color()
14592         indicating that this function is deprecated.
14593
14594 Thu Mar  9 22:10:56 GMT 2000  Tony Gale <gale@gtk.org>
14595
14596         * docs/gtkfaq.sgml: FAQ Update:
14597           - Minor cleanups (Emmanuel, me)
14598           - New questions:
14599                 I need to add a new signal to a GTK+ widget. Any idea? (timj)
14600                 How can I retrieve the text from a GtkMenuItem? (timj)
14601                 How do I validate/limit/filter the input to a GtkEntry? (me)
14602                 Memory does not seem to be released when I free the list
14603                         nodes I've allocated (timj)
14604
14605 2000-03-07  Tor Lillqvist  <tml@iki.fi>
14606
14607         * gdk/win32/gdkmain-win32.c: Internal GDK error reporting changes:
14608         (gdk_win32_gdi_failed) New function for reporting errors from GDI,
14609         for which it is no use to call GetLastError onWin9x.
14610         (gdk_other_api_failed) New function, for general error
14611         reporting without calling GetLastError.
14612         (gdk_win32_api_failed) OTOH, this function always calls
14613         GetLastError. (gdk_win32_last_error_string) Remove this function,
14614         GLib has the equivalent now.
14615
14616         * gdk/win32/gdkprivate-win32.h: Declare the above, and macros to
14617         call them with function name, file name and line number in the
14618         arguments.
14619
14620         * gdk/win32/*.c: Use the new macros for reporting errors from GDI
14621         functions.
14622         
14623         * gtk/gtk.def: Add some missing entry points.
14624
14625         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
14626         gtk_paned_set_gutter_size, which don't exist any longer, as void.
14627         
14628         Fixes by Hans Breuer:
14629
14630         * gdk/makefile.msc: Update for debugging.
14631
14632         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_dashes): Fake
14633         implementation, just use the PS_DASH, PS_DOT, PS_DASHDOT or
14634         PS_DASHDOTDOT or PS_DASH styles depending on the number of entries
14635         in the dash_list.
14636
14637         * gdk/win32/gdkwin32.h (GDK_FONT_XFONT): New macro, similar as in
14638         the x11 backend.
14639
14640         * gdk/win32/gdkprivate-win32.h (IS_WIN_NT): New macro.
14641
14642         * gtk/testgtk.c: Include config.h, guard inclusion of unistd.h.
14643
14644 2000-03-04  Tor Lillqvist  <tml@iki.fi>
14645
14646         * gdk/win32/gdkprivate-win32.h (struct _GdkWindowWin32Data): Store
14647         just pixel value of background colour.
14648
14649         * gdk/win32/gdkgc-win32.c (gdk_colormap_color): New function
14650         containing code snippet previously duplicated in a couple of
14651         places.
14652         
14653         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_points): Use
14654         gdk_colormap_color.
14655
14656         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Generate
14657         GDK_SCROLL events for WM_MOUSEWHEEL messages. Don't generate
14658         events for autorepeated Shift, Control and Alt keys. Use
14659         gdk_colormap_color.
14660
14661         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): If the
14662         pointer is inside the window the cursor of which we are setting,
14663         call SetCursor immediately.
14664
14665         * gdk/win32/makefile.cygwin
14666         * gtk/makefile.cygwin: If we don't have the build number stamp
14667         file, use zero.
14668
14669         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
14670         gtk_paned_set_gutter_size as empty.
14671
14672         * gtk/gtk.def: Remove gtk_paned_set_gutter_size.
14673         
14674 Tue Feb 29 13:10:00 GMT 2000  Tony Gale <gale@gtk.org>
14675
14676         * gdk/gdkwindow.h gdk/x11/gxid.c gtk/gtkclist.c gtk/gtkclist.h
14677           gtk/gtkctree.c gtk/gtkmenu.h gtk/gtkwidget.c gtk/testgtk.c
14678           docs/styles.txt docs/refcounting.txt docs/gtkfaq.sgml
14679           docs/gtk_tut.sgml docs/gtk.texi TODO:
14680
14681           Spelling/grammar fixes from Martin Buchholz <martin@xemacs.org>
14682
14683 Sat Feb 26 11:46:25 GMT 2000  Tony Gale <gale@gtk.org>
14684
14685         * gtk/gtkcalendar.c: Implement num_marked_dates,
14686           and don't emit mutiple day_selected signals on
14687           month_prev.
14688
14689 2000-02-25  Jonathan Blandford  <jrb@redhat.com>
14690
14691         * docs/make-todo (lineno): let title and logo be configurable so
14692         that GNOME can use this script too.
14693
14694         * TODO.xml: added logourl and a title
14695
14696 Fri Feb 25 11:12:00 2000  Owen Taylor  <otaylor@redhat.com>
14697
14698         * TODO.xml: Added some UI items, and an explanatory
14699         comment at the top of the file.
14700
14701 Thu Feb 24 09:07:28 2000  Tim Janik  <timj@gtk.org>
14702
14703         * TODO.xml: some updates, added abunch of new entries.
14704         a note for those fiddeling with this file, when done
14705         with it, invoke:
14706         $ ./docs/make-todo TODO.xml >/dev/null
14707         and correct output errors before comitting changes.
14708
14709 Wed Feb 23 22:59:50 2000  Owen Taylor  <otaylor@redhat.com>
14710
14711         * TODO.xml: Added XML-structured TODO file.
14712         * docs/make-todo: python script to turn TODO.xml into
14713           pretty XML output. 
14714
14715 2000-02-23  Jonathan Blandford  <jrb@redhat.com>
14716
14717         * gtk/gtkstyle.c (gtk_default_draw_handle): add a 'paned' mode to
14718         the function to let it draw the seven dots, instead of the old,
14719         much maligned, method.
14720         (draw_dot): New function to draw a dot.
14721
14722         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): changed allocation
14723         to draw the handle inside the border width as opposed to outside.
14724         Use paint function instead of gdk_draw_point.
14725
14726         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): changed allocation
14727         to draw the handle inside the border width as opposed to outside.
14728         Use paint function instead of gdk_draw_point.
14729
14730         * gtk/gtkfilesel.c (gtk_file_selection_update_history_menu):
14731         Change indenting to be more GTK like.
14732
14733 Wed Feb 23 10:54:14 GMT 2000  Tony Gale <gale@gtk.org>
14734
14735         * docs/gtk_tut.sgml: New section on GtkCalendar
14736         * examples/calendar: Update example code
14737
14738 Tue Feb 22 13:54:12 GMT 2000  Tony Gale <gale@gtk.org>
14739
14740         * docs/gtkfaq.sgml: FAQ Update
14741
14742 2000-02-19  Anders Carlsson  <andersca@gnu.org>
14743
14744         * gtk/gtkrange.c (gtk_range_scroll_event): Return TRUE
14745         to prevent the scroll event to be propagated upwards.
14746
14747 Fri Feb 18 14:37:29 2000  Owen Taylor  <otaylor@redhat.com>
14748
14749         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Remove
14750         OwnerGrabButtonMask from button entries for
14751         GDK_BUTTON_PRESS / GDK_BUTTON_RELEASE.
14752
14753         * gtk/gtklayout.c (gtk_layout_realize): Always add GDK_SCROLL
14754         to the event mask (which will result in button/press release
14755         being added to the event mask on Unix) so scrolling works
14756         for layouts in scroll windows.
14757
14758         * gdk/gdkevents.h (enum): Fix up GDK_ALL_EVENTS_MASK.
14759
14760         Patch from Anders Carlsson  <andersca@gnu.org> to add
14761         a scroll event.
14762
14763         * gtk/testgtk.c (scroll_test_scroll): Added an example of mouse wheel
14764         scrolling to the "Test Scrolling" part of testgtk.
14765  
14766         * gtk/gtkwidget.h (struct _GtkWidgetClass): Added scroll_event signal.
14767  
14768         * gtk/gtkwidget.c: Added "scroll_event" GTK+ signal and matched
14769         it against GDK_SCROLL.
14770  
14771         * gtk/gtkrange.c (gtk_range_scroll_event): Updated to use the new
14772         way of mouse wheel scrolling.
14773  
14774         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_scroll_event): Likewise.
14775  
14776         * gtk/gtkspinbutton.c (gtk_spin_button_scroll): Likewise.
14777  
14778         * gtk/gtkmain.c: Removed previous mouse wheel hack.
14779  
14780         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Added entry in
14781         gdk_event_mask_table.
14782  
14783         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Added 
14784         GdkEventScroll handler.
14785  
14786         * gdk/gdkevents.h: Added GdkEventScroll structure.
14787  
14788 Thu Feb 17 17:10:12 2000  Owen Taylor  <otaylor@redhat.com>
14789
14790         * gtk/gt{h,k,}vpaned.[ch]: Add patch from Jonathan Blandford
14791         and Anders Carlsson to change the Paned widgets so that they
14792         can be dragged from anywhere along the length. Also change
14793         the way that this is drawn to make this apparent.
14794
14795         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): Apply patch
14796         from George Lebl to check that option_menu->menu is present
14797         before getting history.
14798
14799 2000-02-14  Tor Lillqvist  <tml@iki.fi>
14800
14801         * gdk/gdkdraw.c (gdk_draw_segments): Move the test for no segments
14802         before the assertion for non-NULL segment list.
14803
14804         * gdk/win32/gdkgc-win32.c: (gdk_win32_gc_values_to_win32values):
14805         Seems that pattern brushes *must* be 8x8 pixels! At least on my
14806         machine, but it might be display driver dependent. Sigh, so make
14807         sure the stipple is that size. Does Windows suck or what?
14808
14809         * gdk/win32/gdkdrawable-win32.c: Improve error handling in a few
14810         places.
14811
14812 2000-02-13  Havoc Pennington  <hp@pobox.com>
14813
14814         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): init
14815         refcount to 1
14816         (gdk_cursor_new): init refcount to 1
14817
14818         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new): init refcount to 1
14819
14820 2000-02-13  Tor Lillqvist  <tml@iki.fi>
14821
14822         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Add an extra parameter
14823         so that we don't have to do unnecessary settings to the HDC.
14824
14825         * gdk/win32/gdkdrawable-win32.c
14826         * gdk/win32/gdkimage-win32.c: Corresponding changes to the calls of
14827         gdk_gc_predraw.
14828
14829         * gdk/win32/gdkdrawable-win32.c: Special-casing for GdkGCs where
14830         the fill style is GDK_OPAQUE_STIPPLED. In those cases we construct
14831         GDI paths, call WidenPath to get the outline of the stroken path,
14832         and then fill the outline (with the brush that was built from the
14833         stipple).
14834
14835         * gdk/win32/gdkgc-win32.c: Factor out common code from
14836         _gdk_win32_gc_new and gdk_win32_gc_set_values into
14837         gdk_win32_gc_values_to_win32values. Use correct colour for
14838         SetBkColor() (Until now the code actually used a random colour in
14839         the call to SetBkColor()... but that didn't show up as not many
14840         GDI APIs use the background colour. Pattern (opaque stippled)
14841         brushes do.)
14842
14843         * gdk/win32/gdkmain-win32.c (gdk_win32_last_error_string,
14844         gdk_win32_api_failed): New functions for error logging.
14845
14846         * gdk/win32/gdkprivate-win32.h: Declare them, and define a macro
14847         WIN32_API_FAILED to call them, passing function or file name and
14848         line number.
14849
14850         * gdk/win32/*.c: Use the WIN32_API_FAILED macro.
14851
14852         * gdk/win32/gdkprivate-win32.h: Store just the pixel values from
14853         GdkColor for foreground and background in GdkGCWin32Data.
14854
14855         * gdk/makefile.cygwin: Link in the resource object separately.
14856
14857         * gdk/win32/rc/gdk.rc
14858         * gtk/gtk.rc (New file)
14859         * gdk/win32/makefile.cygwin
14860         * gtk/makefile.cygwin: Update build number in DLLs automatically,
14861         as in GLib.
14862
14863 Sun Feb 13 08:54:45 2000  Tim Janik  <timj@gtk.org>
14864
14865         * gdk/gdkcursor.h (struct _GdkCursor): s/refcount/ref_count/.
14866         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): 
14867         * gdk/x11/gdkcursor-x11.c (_gdk_cursor_destroy): 
14868         * gdk/gdkcursor.c (gdk_cursor_ref): insert assertments for the
14869         parameters given and cursor->ref_count. coding style fixups.
14870
14871         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
14872         not GtkWidget.
14873         
14874         * gtk/*.h: applied patch from Mathieu Lacage <lacage@email.enst.fr> to
14875         fix up widget macros and add _GET_CLASS() variant.
14876         
14877         * gtk/*.c: some GtkType fixups.
14878
14879 2000-02-09  Tor Lillqvist  <tml@iki.fi>
14880
14881         * gdk/win32/gdkproperty-win32.c
14882         * gdk/x11/gdkproperty-x11.c: The assertions for GDK_IS_WINDOW
14883         were reversed.
14884
14885 2000-02-04  Tor Lillqvist  <tml@iki.fi>
14886
14887         * gdk/win32/gdkfont-win32.c (logfont_to_xlfd): Use
14888         g_filename_to_utf8 to convert the font names Windows gives us from
14889         whatever is the default codepage to UTF-8.
14890         (gdk_font_load_internal) Use g_filename_from_utf8 for conversion
14891         in the other direction.
14892
14893         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Fix cut&paste
14894         error in debugging output.
14895
14896 2000-02-02  Tor Lillqvist  <tml@iki.fi>
14897
14898         * gdk/win32/gdkwindow-win32.c (gdk_window_clear): Pass zero width
14899         and height parameters to gdk_window_clear_area(). Not minus one.
14900
14901 Wed Feb  2 11:58:05 2000  Owen Taylor  <otaylor@redhat.com>
14902
14903         * gtk/gtkdnd.c (gtk_drag_selection_received): Add some sanity
14904         checks if the widget passed to gtk_drag_get_data() was not the
14905         dest widget.
14906
14907 2000-02-01  Tor Lillqvist  <tml@iki.fi>
14908
14909         * gtk/gtkfilesel.c: Use the g_filename_to_utf8 and
14910         g_filename_from_utf8 functions (which were added a moment ago to
14911         GLib). Some cleanups: Use gbooleans. Use GStrings instead of fixed
14912         size buffers.
14913
14914         gtk_file_selection_get_filename returns the filename in the C
14915         runtime encoding. It calls g_filename_from_utf8, but copies the
14916         returned string to a static buffer, which is returned. I think
14917         this is better than returning the result from g_filename_from_utf8
14918         directly, which would mean all apps that use it would have to free
14919         the return value. Or should this function care about this issue at
14920         all? Maybe a new function with clearly defined semantics.
14921
14922         * gtk/gtkfilesel.h: Add comment about
14923         gtk_file_selection_get_filename returning the filename in the C
14924         runtime's encoding.
14925
14926         * README.win32
14927         * gdk/gdk.def
14928         * gdk/makefile.{cygwin,msc}
14929         * gtk/gtk.def: Updates.
14930
14931         * gdk/gdkcursor-win32.c: Initialise refcount.
14932
14933 2000-01-31  Yuan-Chung Cheng <platin@linux.org.tw>
14934
14935         * configure.in: Added "zh_CN.GB2312" to ALL_LINGUAS.
14936
14937 2000-01-30  Havoc Pennington  <hp@pobox.com>
14938
14939         * gtk/testgtk.c (set_cursor): use gdk_cursor_unref instead of
14940         destroy
14941
14942         * gdk/gdkimage.c (gdk_image_ref): image wasn't being returned
14943
14944         * gdk/gdkprivate.h: declare _gdk_cursor_destroy which is then 
14945         implemented in platform-specific code
14946
14947         * gdk/Makefile.am (gdk_c_sources): add gdkcursor.c
14948
14949         * gdk/x11/gdkcursor-x11.c (gdk_cursor_destroy): rename with an
14950         underscore in front
14951
14952         * gdk/win32/gdkcursor-win32.c (gdk_cursor_destroy):
14953         put an underscore in front
14954
14955         * gdk/gdkcursor.c: new file, implements
14956         gdk_cursor_ref/gdk_cursor_unref
14957
14958         * gdk/gdkcursor.h: Refcount GdkCursor
14959
14960         * gdk/gdkcompat.h (gdk_cursor_destroy): compat
14961
14962 2000-01-29  Tor Lillqvist  <tml@iki.fi>
14963
14964         * gdk/gdkwindow.h
14965         * gdk/gdkpixmap.h: Remove prototypes for renamed functions.
14966
14967 Tue Jan 25 11:43:21 2000  Owen Taylor  <otaylor@redhat.com>
14968
14969         * gtk/gtkinvisible.h (struct _GtkInvisible[Class]): Fix
14970         structures to properly inherit from GtkWidget not GtkBin.
14971
14972 Sun Jan 23 20:28:24 2000  Owen Taylor  <otaylor@redhat.com>
14973
14974         * gtk+.spec.in: Added lib/gtk+/include/* to %files
14975         (bug #5178 - Peter Wainright)
14976         
14977         * gtk/Makefile.am (gtk_public_h_sources): Add gtkcompat.h
14978         so that it will be installed.
14979         (bug #4889 - "david d `zoo' zuhn" <zoo@mnnr.org>)
14980
14981 Fri Jan 21 16:29:28 2000  Owen Taylor  <otaylor@redhat.com>
14982
14983         * gtk/gtkstyle.[ch] docs/Changes-1.4.txt: Make the @detail argument
14984         for the GtkStyleClass vtable const.
14985
14986         * gtk/gtkitemfactory.[ch] docs/Changes-1.4.txt: Make GtkPrintFunc
14987         take a const string argument like GtkTranslateFunc. This will
14988         require changes in use code.
14989
14990 2000-01-19  Tor Lillqvist  <tml@iki.fi>
14991
14992         * gdk/win32/gdkwindow-win32.c (gdk_window_clear_area): The correct
14993         semantics (to mimic the X11 backend, which just calls XClearArea)
14994         is to check for zero width (and height), and in that case use the
14995         window's width minus x (height minus y). This fixes for instance
14996         some redraw problems with gtkclist, which were easily noticeable
14997         in the gtk file selection widget.
14998
14999         (gdk_window_new): Don't set WS_EX_TOPMOST for dialog
15000         windows.
15001
15002 2000-01-13  Tor Lillqvist  <tml@iki.fi>
15003
15004         * configure.in
15005         * gdk/Makefile.am
15006         * gdk/x11/Makefile.am
15007         * gdk/win32/Makefile.am: Small fixes, thanks to Peter Wainwright
15008         (bug #5177).
15009         * gdk/win32/gdkcc-win32.c: Reintroduce, to be thrown
15010         out later.
15011
15012 2000-01-09  Tor Lillqvist  <tml@iki.fi>
15013
15014         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Ignore
15015         WM_MOVE for iconified or invisible windows. This fixes various
15016         problems when minimising windows. Thanks to Bernd Herd.
15017
15018 2000-01-05  Tor Lillqvist  <tml@iki.fi>
15019
15020         * gdk/gdkdraw.c (gdk_draw_lines): Fix copy&paste error: Call the
15021         backend's draw_lines method, not draw_points.
15022
15023 2000-01-02  Tor Lillqvist  <tml@iki.fi>
15024
15025         * gdk/win32/gdkevents-win32.c: Clean up some more leftovers from
15026         before Owen's reorganisation: Don't have queued_events and
15027         queued_tail statics in this file, but use gdk_queued_events and
15028         gdk_queued_tail. This makes exposure event compression work again.
15029
15030         (gdk_WindowProc): Comment out a posting of gdk_ping_msg, doesn't
15031         seem to be needed?
15032
15033 1999-12-30  Tor Lillqvist  <tml@iki.fi>
15034
15035         * gdk/gdk.c: If we don't HAVE_XCONVERTCASE we must #include
15036         gdkkeysyms.h to get the GDK_* keysym constants that are needed by
15037         gdk_keyval_convert_case(). Otherwise, gdk_keyval_convert_case()
15038         doesn't do anything.
15039
15040         * gdk/gdk.def: Add gdk_xid_table_insert.
15041
15042         * gdk/win32/gdkprivate-win32.h
15043         * gdk/win32/gdkevents-win32.c
15044         * gdk/win32/gdkinput-win32.c
15045         
15046         * gdk/win32/gdkwindow-win32.c: Remove the superfluous
15047         extension_events field in the GdkWindowWin32Data struct. Use only
15048         the extension_events field in GdkWindowPrivate. Previously one was
15049         set, and the other one tested, which broke tablet
15050         functionality. Thanks to Keishi Suenaga for pointing this out.
15051
15052 1999-12-18  Tor Lillqvist  <tml@iki.fi>
15053
15054         * gdk/win32/gdkfont-win32.c (gdk_text_size, gdk_text_extents):
15055         When handling a single character (text length == 1), don't handle
15056         it as if it was UTF-8.
15057
15058 1999-12-11  Tor Lillqvist  <tml@iki.fi>
15059
15060         * Makefile.am: Distribute README.win32.
15061         
15062         * gdk/Makefile.am
15063         * gdk/win32/Makefile.am: Distribute Win32 files.
15064
15065         * gdk/makefile.msc: New file.
15066
15067         * gdk/gdk.c (gdk_arg_context_parse): Fix gccism (no statement
15068         after label).
15069
15070         * gdk/gdkprivate.h: Must mark also gdk_error_warnings and
15071         gdk_error_code as GDKVAR, as they are referred outside GDK.
15072
15073         * gdk/win32/makefile.msc: Update.
15074
15075         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): More
15076         tweaks. Check only if at least one of those Unicode subrange bits
15077         we care for is set. If no code page bits are set, guess (wildly)
15078         based on the charset.
15079
15080         * gdk/win32/gdkinput-win32.c: Remove debugging leftover.
15081
15082         * gdk/win32/gdkwindow-win32.c (gdk_window_new): Assure title is
15083         non-NULL.
15084
15085         * gtk/gtkdnd.c
15086         * gtk/gtklayout.c
15087         * gtk/gtkplug.c
15088         * gtk/gtkselection.c
15089         * gtk/gtksocket.c
15090         * gtk/gtkwindow.c: Include x11/gdkx.h *or* win32/gdkwin32.c as
15091         appropriate. There must be a cleaner way to handle this?
15092
15093         * gtk/gtkrc.c: Must include windows.h on Win32.
15094
15095         * gtk/testgtk.c: No need to include gdkx.h.
15096
15097         * gtk/makefile.cygwin: Correct invokation of genmarshal.pl.
15098
15099 1999-12-07  Tor Lillqvist  <tml@iki.fi>
15100
15101         * gdk/win32/gdkfont-win32.c: Fix string measurement code. For now,
15102         the rbearing is set to the same as the width, but this should be
15103         fixed.
15104
15105 1999-12-06  Tor Lillqvist  <tml@iki.fi>
15106
15107         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): New
15108         function. If Windows doesn't tell us what Unicode subranges a font
15109         covers, guesstimate based on the codepages it covers. This will
15110         hopefully help those Windows versions or fonts that don't give us
15111         any useful Unicode subrange information with GetTextCharsetInfo.
15112         Call this function in gdk_font_load_internal.
15113
15114         * gdk/win32/{gdkdnd,gdkimage,gdkpixmap,gdkprivate}-win32.c: Misc
15115         minor changes.
15116
15117 Fri Dec  3 14:09:50 1999  Owen Taylor  <otaylor@redhat.com>
15118
15119         * gtk/gtkoptionmenu.[ch] (gtk_option_menu_get_history):
15120         New function, long needed.
15121
15122 Wed Dec  1 22:35:43 1999  Owen Taylor  <otaylor@redhat.com>
15123
15124         * gdk/gdkproperty.h x11/gdkproperty.c: Change 
15125         only_if_exists argument of gdk_atom_intern to
15126         bool.
15127
15128 1999-11-25  Tor Lillqvist  <tml@iki.fi>
15129
15130         * gdk/gdkgc.c (gdk_gc_set_ts_origin, gdk_gc_set_clip_origin): 
15131         Fix two copy&paste errors.
15132
15133         * gdk/makefile.cygwin: Also rebuild DLL when the static archive in
15134         win32 has changed.
15135
15136         * gdk/win32/gdkprivate-win32.h: Don't need CPINFO in the
15137         GdkWin32SingleFont struct.
15138
15139         * gdk/win32/gdkfont-win32.c: Some more debugging: Print Unicode
15140         subranges of loaded fonts. Clear font signature first, in case
15141         GetTextCharsetInfo fails. Pretend SYMBOL_CHARSET fonts have
15142         ASCII+Basic Latin (i.e. 0x40--0xFF) as they are single-byte.
15143
15144         * gdk/win32/gdkgc-win32.c: Improved logging. (gdk_gc_postdraw):
15145         Unoffset clip region.
15146
15147 1999-11-23  Tor Lillqvist  <tml@iki.fi>
15148
15149         * gdk/win32/gdkevents-win32.c (gdk_event_translate): set
15150         event->any.window before calling filter functions.
15151
15152 Fri Nov 19 10:34:41 1999  Owen Taylor  <otaylor@redhat.com>
15153
15154         * gtk/gtkgamma.h: Adapt cast macros to standard.
15155
15156 [ Merges from 1.2 ]
15157
15158 Tue Nov 16 10:15:54 1999  Owen Taylor  <otaylor@redhat.com>
15159
15160         * gtk/gtkitemfactory.c (gtk_item_factory_parse_path):
15161         If translation does not include a '/', use entire
15162         translation instead of crashing.
15163
15164 Sun Oct 31 22:21:11 1999  Tim Janik  <timj@gtk.org>
15165
15166         * docs/gtk_tut.sgml:
15167         s/gtk_accel_group_attach/gtk_window_add_accel_group/.
15168
15169 Sat Oct 30 09:09:09 1999  Owen Taylor  <otaylor@redhat.com>
15170
15171         * gtk/gtkselection.c (gtk_target_list_remove): Use
15172         g_list_remove_link, not g_list_remove.
15173
15174         [ From Geert Bevin <gbevin@thunderstorms.org> ]
15175         
15176 Sun Oct 24 07:41:40 1999  Tim Janik  <timj@gtk.org>
15177
15178         * gtk/gtkclist.c (real_undo_selection): commented out g_print()
15179         statement upon unselection (how the heck did that slip in?).
15180
15181 Sat Oct 23 03:03:08 1999  Tim Janik  <timj@gtk.org>
15182
15183         * gtk/gtktext.c (gtk_text_freeze): 
15184         (gtk_text_thaw): undraw/draw cursor here to avoid unnecessary scrolling
15185         in frozen state (and aparently crashes). patch provided by Anders
15186         Melchiorsen <and@kampsax.dtu.dk>.
15187
15188 Sat Oct 23 02:53:20 1999  Tim Janik  <timj@gtk.org>
15189
15190         * fix insensitive default/focus widget activation,
15191         reported by Matt Goodall <mgg@isotek.co.uk>.
15192
15193         * gtk/gtkwindow.c (gtk_window_key_press_event): 
15194         (gtk_window_activate_default):
15195         (gtk_window_activate_focus):
15196         return handled=FALSE for actiavtion of insensitive default
15197         widgets. return handled=TRUE for activation of insensitive
15198         focus widgets. don't activate in either case.
15199
15200 Tue Oct 19 09:55:08 1999  Owen Taylor  <otaylor@redhat.com>
15201
15202         * gtk-config.in (lib_gtk): Switch order of @x_cflags@
15203         and $glib_cflags to match library order and in the
15204         theory that an old version of GLib is more likely to
15205         be in the include directory for X then vice-versa.
15206         (Bug #2776)
15207
15208 Tue Oct 19 09:46:49 1999  Owen Taylor  <otaylor@redhat.com>
15209
15210         * gtk/gtkrc.c (gtk_rc_init): Always use LC_CTYPE 
15211         to determine the locale for fontsets, not LC_MESSAGES;
15212         the user may want English messages with a handling
15213         for non-English languages. (LC_CTYPE=ru_RU LC_MESSAGES=fr_FR
15214         will still be broken) (Bug #2891)
15215
15216 Tue Oct 19 20:36:42 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
15217
15218         * gtk/gtkrc.ko: Fixed the wrong number of "*"'s.
15219
15220 Tue Oct 19 12:15:13 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
15221
15222         * gtk/gtkrc.ko: Changed the Korean default fontset.
15223
15224 Fri Oct  8 02:32:47 1999  Owen Taylor  <otaylor@redhat.com>
15225
15226         * gtk/gtklayout.c (gtk_layout_adjustment_changed): Fix bug
15227         where when scrolling to the left or top double exposes
15228         were done, causing major slowdowns.
15229
15230 Thu Oct  7 18:31:55 1999  Owen Taylor  <otaylor@redhat.com>
15231
15232         * gtk/gtkrc.c (gtk_rc_init): Always normalize codeset
15233         names to lowercase and alphanumeric, before looking
15234         them up.
15235
15236         * gtk/Makefile.am: Install codeset variant gtkrc files
15237         with normalized names.
15238
15239 Thu Oct  7 22:52:42 1999  Tim Janik  <timj@gtk.org>
15240
15241         * gtk/gtkitemfactory.c (gtk_item_factory_popup_with_data): even
15242         popup menus when the menu is already visible, but its parent
15243         is still hidden, (happens after tornoff window got hidden).
15244
15245 Thu Oct  7 11:09:55 1999  Owen Taylor  <otaylor@redhat.com>
15246
15247         * gtk/Makefile.am (install-data-local): Fix
15248         a typo where gtkrc.vi_VN.tcvn5712 wasn't getting
15249         deleted, causing error messages on install.
15250
15251 Thu Oct  7 11:03:06 1999  Owen Taylor  <otaylor@redhat.com>
15252
15253         * gtk/gtk[hv]paned.c (gtk_{h,v}paned_draw): Redraw
15254         the handle as well, since we now sometimes ignore
15255         exposes on the handle while resizing.
15256
15257 Wed Oct  6 18:02:31 1999  Owen Taylor  <otaylor@redhat.com>
15258
15259         * gtk/gtkrc.c (gtk_rc_append_default_pixmap_path): Fix stupid
15260         extra g_free introduced in one of the last one or two 
15261         commits.
15262
15263 Wed Oct  6 16:38:36 1999  Owen Taylor  <otaylor@redhat.com>
15264
15265         * gtk/Makefile.am gtk/gtkrc*: Make naming of gtkrc files
15266         consistent, put each style that a gtkrc.* file creates
15267         in a unique namespace, remove old files before installing.
15268
15269 Wed Oct  6 14:31:16 1999  Owen Taylor  <otaylor@redhat.com>
15270
15271         * gtk/gtkrc.c (gtk_rc_init): Avoid leaking memory when
15272         gtk_rc_init is called multiple times. (Yes, people who
15273         do that have bugs in their code.)
15274
15275 Tue Oct  5 11:36:57 PDT 1999 Manish Singh <yosh@gimp.org>
15276
15277         * gtk/Makefile.am: listing gtkrc in gtkconf_DATA seems to barf.
15278         Remove it since it's generated by the Makefile anyway
15279
15280 Tue Oct  5 02:43:41 1999  Owen Taylor  <otaylor@redhat.com>
15281
15282         * gdk/gdkinputcommon.h (gdk_input_device_new): Free
15283         device->info.axes for core pointer.
15284
15285 Thu Sep 30 13:55:25 1999  Owen Taylor  <otaylor@redhat.com>
15286
15287         * gtk/testgtk.c (destroy_idle_test): Rename idle to 
15288         idle_id, to deal with obsolete, broken C libraries.
15289
15290 Mon Sep 27 02:50:15 1999  Owen Taylor  <otaylor@redhat.com>
15291
15292         * gtk/gtkvscale.c (gtk_vscale_draw): Don't add in
15293         allocation->x/y twice!
15294
15295         * gtk/gtkhscale.c: Make usage of gtk_hscale_pos_trough()
15296         consistent with gtk_vscale_pos_trough().
15297
15298 Sun Sep 26 19:44:34 1999  Owen Taylor  <otaylor@redhat.com>
15299
15300         * gtk/gtkcontainer.c (gtk_container_queue_resize): We may
15301         be queueing a resize on a toplevel container between
15302         the time we show it and when we map it. So, we need
15303         to test GTK_WIDGET_VISIBLE() for toplevels, and only
15304         use GTK_WIDGET_DRAWABLE() for child windows.
15305
15306 Thu Sep 23 16:41:03 1999  Owen Taylor  <otaylor@redhat.com>
15307
15308         * gtk/Makefile.am (LDADDS): Add GDK_WLIBS to LDADDS 
15309         (fixes bug #2144)
15310
15311 Fri Sep 24 00:51:45 1999  Tim Janik  <timj@gtk.org>
15312
15313         * gtk/gtkcontainer.c (gtk_container_queue_resize): check for
15314         container DRAWABLE (instead of VISIBLE), so we don't queue
15315         resizes on non-toplevel containers.
15316
15317 Sun Sep 19 18:13:31 1999  Owen Taylor  <otaylor@redhat.com>
15318
15319         * gtk/gtkselection.[ch]: Make the data argument
15320         const guchar *.
15321
15322 Sat Sep 18 21:27:40 1999  Owen Taylor  <otaylor@redhat.com>
15323
15324         * gtk/gtkwindow.c: Try to behave sensibly if 
15325         the focus widget is the window itself. (Should
15326         we allow this at all?)
15327
15328 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
15329
15330         * gtk/gtkwidget.c (gtk_widget_set_sensitive): 
15331         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): 
15332         * gtk/gtknotebook.c (gtk_notebook_set_show_border): 
15333         * gtk/gtkclist.c (gtk_notebook_set_show_border): make gboolean args
15334         in prototypes and implementations consistent (Tomas Ogren).
15335
15336         * gtk/gtklayout.c (gtk_layout_remove): unset GTK_IS_OFFSCREEN flag
15337         before the widget is unparented (reported by damon).
15338
15339         * gtk/gtkdnd.c: make the cursor and icon data _unsigned_ char,
15340         since we provide unsigned data anyways.
15341
15342 Thu Sep 16 21:32:01 1999  Owen Taylor  <otaylor@redhat.com>
15343
15344         * gtk/gtktooltips.c (gtk_tooltips_set_tip): Delay
15345         the call to gtk_tooltips_layout_text() until later.
15346
15347         * gtk/gtktooltips.c (gtk_tooltips_draw_tips):
15348         Call gtk_widget_ensure_style() before using the style.
15349
15350 Wed Sep 15 02:52:19 1999  Owen Taylor  <otaylor@redhat.com>
15351
15352         * gtk/gtkwidget.c (gtk_widget_event): Added workaround
15353         for old widgets that don't propagate draws to all
15354         children. (Namely gnome-dock for gnome-libs <= 1.0.16)
15355
15356 Tue Sep 14 19:22:19 1999  Tim Janik  <timj@gtk.org>
15357
15358         * gtk/gtkwidget.c (gtk_widget_queue_resize): don't queue the parent
15359         for a redraw but just the widget that requested the resize.
15360
15361 Tue Sep 14 18:29:47 1999  Tim Janik  <timj@gtk.org>
15362
15363         * gtk/gtkcontainer.c: added new widget level method
15364         gtk_container_set_reallocate_redraws() and a GtkContainer flag
15365         reallocate_redraws : 1 to reflect the setting, exported this through
15366         the argument system as a boolean ::reallocate_redraws.
15367
15368         * gtk/gtkwidget.c (gtk_widget_size_allocate): when queueing redraws
15369         on the widget because the allocation changes, do so as well for
15370         widget->parent if the parent has reallocate_redraws set to TRUE.
15371         with that containers requesting reallocation redraws get automatically
15372         redrawn if their children changed allocation (this unfortunately
15373         affects also other children that didn't change allocation, but we
15374         cannot work around that before 1.3).
15375
15376 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
15377
15378         * gtk/gtkwidget.c (gtk_widget_idle_draw): only emit ::draw if width
15379         _and_ height are >0 (not _or_).
15380
15381         * gtk/gtktable.c (gtk_table_remove): use gtk_widget_queue_resize()
15382         instead of gtk_container_queue_resize(), which is a core gtk internal
15383         function (must have been on crack when i queued that).
15384
15385         * gtk/gtkprivate.h: added new private flag GTK_FULLDRAW_PENDING, so
15386         we can check more reliably if we want to discard expose events.
15387         * gtk/gtkwidget.c: added setting/unsetting of the GTK_FULLDRAW_PENDING
15388         flag.
15389         
15390         * gtk/gtkwidget.c (gtk_widget_event): don't discard synthesized exposes,
15391         we simply trust these events. for deciding whether to discard exposes,
15392         check GTK_FULLDRAW_PENDING instead of RESIZE_PENDING.
15393         
15394 Mon Sep 13 15:01:21 1999  Owen Taylor  <otaylor@redhat.com>
15395
15396         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
15397         queues of areas that are completely off screen.
15398
15399         * gtk/gtkwidget.c (gtk_widget_idle_draw): Fix broken
15400         logic for handleboxes.
15401
15402         * gtk/gtkwidget.c (gtk_widget_queue_draw_data): Add santity
15403         check on width/height.
15404
15405 Mon Sep 13 02:22:47 1999  Tim Janik  <timj@gtk.org>
15406
15407         * gtk/Makefile.am: backed out Raja's recent VPATH build "improvements",
15408         we are fine with using $@ the way we do (if we actually encounter
15409         brokeness with $@ in VPATH builds because of additional path prefixes,
15410         we need to use $(@F) actually).
15411
15412 Mon Sep 13 01:34:53 1999  Tim Janik  <timj@gtk.org>
15413
15414         * gtk/gtksignal.c: renamed two variables, hopefully didn't introduce
15415         short lived bugs, that would allow language bindings to do surgeries
15416         to our guts.
15417
15418 Fri Sep 10 15:22:50 1999  Owen Taylor  <otaylor@redhat.com>
15419
15420         * gtk/gtkwindow.c (gtk_window_size_allocate): Fix typo
15421         where comparison was being done against an uninitialized
15422         value causing intermittant results depending on
15423         compiler flags. Also make it clearer that we aren't
15424         ever initializing the child as 0x0 (though this will
15425         be caught in gtk_widget_size_allocate())
15426
15427 Fri Sep 10 10:06:56 1999  Owen Taylor  <otaylor@redhat.com>
15428
15429         * gtk/gtkwindow.c (gtk_window_set_transient_for): Move
15430         gtk_window_unset_transient_for() call after we do checks
15431         involving the old transient parent.
15432         [ From Lance Capser <lmc@cyberhighway.net> ]
15433
15434 1999-09-07  Raja R Harinath  <harinath@cs.umn.edu>
15435
15436         * gtk/Makefile.am (gtk.defs): Go back to using `touch' to create
15437         an empty file.
15438
15439 Mon Sep  6 00:11:56 1999  Lars Hamann  <lars@gtk.org>
15440
15441         * gtk/gtkctree.c (gtk_ctree_is_ancestor): return FALSE if node has
15442         no children. (Reported by: Chris Rogers <gandalf@pobox.com>)
15443
15444 1999-09-03  Raja R Harinath  <harinath@cs.umn.edu>
15445
15446         * gtk/Makefile.am (gen_sources): Improve VPATH builds.
15447         `$@' is valid only in the build dir, not after we've done 
15448         `cd $srcdir'.  Also use `test -f' instead of less portable
15449         `test -e'.
15450
15451 Fri Sep  3 15:59:56 1999  Owen Taylor  <otaylor@redhat.com>
15452
15453         * gtk/gtktext.c (correct_cache_insert): Rewrite
15454          for simplicity, and hopefully correctness.
15455          (Fixes bug #1322, which was a segfault when
15456           on some insertions with the properties around
15457           the insertion set up just wrong.)
15458
15459         * gtk/gtktext.c (gtk_text_adjustment): When we receive
15460          a "changed" signal, clamp the new value to the adjustment
15461          bounds to avoid segfaulting if someone tries to change
15462          the adjustment to a bogus value. (Bug #1795)
15463
15464 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
15465
15466         * gtk/gtkmain.c: Ignore unexpected destroy notifies
15467         for children, for toplevel windows handle them
15468         like delete_event.
15469
15470         * gtk/gtkplug.c: Add an unrealize handler so that
15471         we unref plug->socket_window when we are done
15472         with it.
15473
15474 Fri Sep  3 14:52:54 1999  Owen Taylor  <otaylor@redhat.com>
15475
15476         * gtk/gtktext.c (clear_area): Fix stupid signedness
15477          problem that was causing background to sometimes
15478          be misaligned.
15479
15480 Fri Sep  3 12:26:33 1999  Owen Taylor  <otaylor@redhat.com>
15481
15482         [ Fixes pointed out by Ettore Perazzoli <ettore@comm2000.it> ]
15483         
15484         * gtk/gtkmenu.c (gtk_menu_position): Make
15485          sure we never position menus with negative x, y,
15486          since gtk_widget_set_uposition() can't handle that.
15487
15488         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu):
15489          Modify the positioning code a bit so that we always
15490          put the top-left corner onscreen. (This is for
15491          UI reasons, gtk_menu_position() now takes care of
15492          gtk_widet_set_uposition() brokeness.)
15493
15494 Fri Sep  3 03:06:30 1999  Tim Janik  <timj@gtk.org>
15495
15496         * gtk/Makefile.am: fixed up things for -jx, x > 1.
15497
15498 Sun Sep  5 08:48:51 1999  Owen Taylor  <otaylor@redhat.com>
15499
15500         * gtk/gtkwidget.c (gtk_widget_modify_style): Ref the
15501           RC style that is passed in. The lack of the ref
15502           before was a bug. If people worked around this
15503           bug, this will introduce a slight memory leak
15504           in their code. The code should typically look like:
15505
15506             rc_style = gtk_rc_style_new ();
15507             [...]
15508             gtk_widget_modify_style (widget, rc_style);
15509             gtk_rc_style_unref (rc_style);
15510
15511         * gtk/gtkwidget.c (gtk_widget_modify_style): Reset
15512           the style if it was already set.
15513
15514         * gtk/gtkwidget.c (gtk_widget_set_name): Only set the
15515           style if it was set before.
15516
15517 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
15518
15519         * gtk/testgtk.c (main): Add a check to see if we
15520           are being run from the correct directory and
15521           to quit nicely if we are not.
15522
15523         * gtk/gtkrc.c (gtk_rc_slist_remove_all): Make function
15524           static.
15525
15526 Thu Sep  2 23:00:03 1999  Tim Janik  <timj@gtk.org>
15527
15528         * gtk/gtkenums.h (GtkWindowPosition): added GTK_WIN_POS_CENTER_ALWAYS.
15529
15530         * gtk/gtkwindow.c:
15531         queue resizes unconditionally (gtk_widget_queue_resize will figure
15532         what to do if the window is not realized).
15533         (gtk_window_move_resize): only recenter the window
15534         for GTK_WIN_POS_CENTER_ALWAYS.
15535         (gtk_window_compute_reposition): handle GTK_WIN_POS_CENTER_ALWAYS in
15536         the same way as GTK_WIN_POS_CENTER.
15537
15538 Thu Sep  2 22:39:27 1999  Tim Janik  <timj@gtk.org>
15539
15540         * gtk/gtkwindow.c (gtk_window_reposition): check for the last position
15541         with (!(info->last_flags & GDK_HINT_POS)) instead of
15542         (!info->last_flags & GDK_HINT_POS).
15543
15544         * gtk/gtkwindow.c (gtk_window_move_resize): constrain new_width and
15545         new_height unconditionally, because we use these values even if
15546         !default_size_changed && !hints_changed.
15547         comented the (default_size_changed || hints_changed) case with
15548         respect to resize rejects from the window manager.
15549
15550         * gtk/gtkwindow.c (gtk_window_move_resize): save info->last values
15551         in the zvt condition hack, since this includes the window hints, set
15552         the hints after the handling_resize case.
15553
15554         * gtk/gtkwindow.c (gtk_window_show): constrain the default size that a
15555         window is initially shown with to the geometry.
15556
15557 Thu Sep  2 07:38:56 1999  Tim Janik  <timj@gtk.org>
15558
15559         * gtk/gtkwindow.c (gtk_window_move_resize):
15560         s/size_changed/default_size_changed/g so i know what's
15561         really going on (frying brain on smaller flame now).
15562
15563 Thu Sep  2 05:47:47 1999  Tim Janik  <timj@gtk.org>
15564
15565         * gtk/gtkwindow.c (gtk_window_move_resize): queue a new resize if
15566         we have size_changed upon handling_resize. this is a gross
15567         workaround for the broken zvt widget and should be removed in
15568         1.3 again (search for FIXME).
15569         Owen provided an accurate comment for this:
15570
15571         /* We could be here for two reasons
15572          *  1) We coincidentally got a resize while handling
15573          *     another resize.
15574          *  2) Our computation of size_changed was completely
15575          *     screwed up, probably because one of our children
15576          *     is broken. It's probably a zvt widget.
15577          *
15578          * For 1), we could just go ahead and ask for the
15579          * new size right now, but doing that for 2)
15580          * might well be fighting the user (and can even
15581          * trigger a loop). Since we really don't want to
15582          * do that, we requeue a resize in hopes that
15583          * by the time it gets handled, the child has seen
15584          * the light and is willing to go along with the
15585          * new size. (this happens for the zvt widget, since
15586          * the size_allocate() above will have stored the
15587          * requisition corresponding to the new size in the
15588          * zvt widget)
15589          *
15590          * This doesn't buy us anything for 1), but it shouldn't
15591          * hurt us too badly, since it is what would have
15592          * happened if we had gotten the configure event before
15593          * the new size had been set.
15594          */
15595
15596 Wed Sep  1 20:46:11 1999  Owen Taylor  <otaylor@redhat.com>
15597
15598         * gtk/gtkrc.c: deal properly with the fact that RC
15599           style lists may include rc styles more than once.
15600
15601         * gtk/gtkrc.c (gtk_rc_append_pixmap_path): Removed
15602           unused static function.
15603
15604         * gtk/gtkrc.c (gtk_rc_find_pixmap_in_path): Keep a
15605           stack of directories of RC files currently being
15606           parsed and implicitely add them to pixmap path.
15607           
15608           This fixes a bug where the directory would get
15609           appended then overwritten by pixmap_path declarations.
15610
15611           (bug #1462, from Peter Wainright <prw@wainpr.demon.co.uk>)
15612
15613         * gtk/gtkthemes.c (gtk_theme_engine_unref): Call
15614           theme's exit function. (Patch from Peter Wainwright,
15615           bug #1454)
15616
15617         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_destroy):
15618           Add a destroy() handler to take care of removing
15619           group for menu item. (Fixes bug #1197)
15620
15621         * gtk/gtkwidget.c (gtk_widget_size_request): Fixed thinko
15622           in warning message.
15623
15624 Wed Sep  1 21:27:42 1999  Tim Janik  <timj@gtk.org>
15625
15626         * gtk/gtkwindow.c (gtk_window_move_resize): don't require a server
15627         roundtrip to figure window's width and height, since we know that
15628         anyways from widget->allocation.
15629
15630 Wed Sep  1 12:37:44 1999  Owen Taylor  <otaylor@redhat.com>
15631
15632         * gtk/gtkwindow.c (gtk_window_move_resize): Compute
15633           the hints after we request the new size.
15634
15635 Wed Sep  1 10:38:37 1999  Owen Taylor  <otaylor@redhat.com>
15636
15637         * gtk/gtkwindow.c (gtk_window_compute_hints): Removed
15638           GTK_WIDGET_REALIZED() assertion - we can compute the
15639           hints before we are realized.
15640
15641         * gtk/gtkwindow.c (gtk_window_move_resize): Reorder
15642           hint changing so that we have a value of hints_changed
15643           when we decide whether to constrain the window size.
15644
15645         * gtk/gtkwindow.c (gtk_window_move_resize): Spelling fix.
15646
15647         * gtk/gtkwindow.c (gtk_window_constrain_size): cleanups,
15648         change back to G_MAXINT.
15649
15650 Wed Sep  1 06:54:59 1999  Tim Janik  <timj@gtk.org>
15651
15652         * gtk/gtkwindow.c (gtk_window_get_geometry_info): zero initialize
15653         new GtkWindowGeometryInfo, so fields like GdkGeometry geometry
15654         contain uncluttered values.
15655         (gtk_window_compute_hints): simply assert that window is realized
15656         and that geometry_info is valid, since we rely on this anyways.
15657         (gtk_window_constrain_size): major cleanups to the code.
15658         if (flags & GDK_HINT_BASE_SIZE) use geometry's base width and height
15659         for the base size, instead of the minimums. use 32767 as max width
15660         and height (like in gtkwindow.c) instead of G_MAXINT.
15661
15662 Wed Sep  1 04:41:25 1999  Tim Janik  <timj@gtk.org>
15663
15664         * cleaned up the GtkContainer.need_resize flag handling mess, we
15665         only need to force resize requests when we were prematurely
15666         realized, or our widget tree was modified when we were temporarily
15667         hidden. handling these cases directly upon showing the window (i.e.
15668         while the GdkWindow is still unmapped) avoids the need to wait for
15669         a configure event response and therefore makes the GUI more snappier
15670         and avoids blank windows during the roundtrip.
15671
15672         * gtk/gtkwidget.c:
15673         (gtk_widget_hide): 
15674         (gtk_widget_show): don't queue resizes on toplevels, they know how
15675         to deal with matters.
15676
15677         * gtk/gtkcontainer.c (gtk_container_queue_resize): set the ->need_resize
15678         flag directly for not visible resize containers and spare us unecessary
15679         signal emissions.
15680
15681         * gtk/gtkwindow.c:
15682         (gtk_window_realize): if we need to enforce premature size allocation,
15683         queue a container resize so we are correctly resized later on.
15684         (gtk_window_init):
15685         (gtk_window_size_request):
15686         don't freak around with the ->need_resize flag,
15687         gtk_container_queue_resize() will care about that.
15688         (gtk_window_show):
15689         handle initial resizing issues here, we can handle matters better in
15690         this place, especially since we know that our GdkWindow is still
15691         unmapped.
15692         (gtk_window_move_resize):
15693         don't care about ->need_resize at all.
15694         handle size changes properly that occoured while we waited for a
15695         configure event.
15696
15697 Tue Aug 31 15:58:46 1999  Owen Taylor  <otaylor@redhat.com>
15698
15699         * gtk/gtkwidget.c (gtk_widget_set_uposition):
15700         * gtk/gtkwindow.[hc] (gtk_window_reposition):
15701         Move the hint setting code from gtk_widget_set_uposition
15702         to here; set the hints so that we respect any previously
15703         set geometry hints.
15704
15705         * gtk/gtkwindow.c (gtk_window_compute_reposition): Don't
15706         change the window hints here or move the window here,
15707         let that happen in gtk_window_move_resize().
15708
15709 Tue Aug 31 06:58:52 1999  Tim Janik  <timj@gtk.org>
15710
15711         * gtk/gtkwidget.c (gtk_widget_event): when discarding exposes due
15712         to already queued resizes (and therefore redraws) on a widget, check
15713         its anchestry as well.
15714
15715         * gtk/gtkcontainer.c:
15716         (gtk_container_queue_resize): clear resize widgets for resize
15717         containers before aborting prematurely. this is especially important
15718         for toplevels which may need imemdiate processing or their resize
15719         handler to be queued.
15720         (gtk_container_dequeue_resize_handler): added new internal function for
15721         gtkwindow.c.
15722
15723         * gtk/gtkwindow.c (gtk_window_move_resize): if we are resizing due to a
15724         configure event, take possible changes in window position into account
15725         as well.
15726         if we request a new window size, queue up a resize handler that will
15727         last until the configure event response arrives.
15728         combined the ->need_resize case (initial show) with the general size
15729         (hints) changed case and added even more comments.
15730         if !auto_shrink, only revert to the old allocation if the new size
15731         is smaller than the current allocation.
15732
15733 Tue Aug 31 11:55:20 1999  Owen Taylor  <otaylor@redhat.com>
15734
15735         * gtk/gtkwindow.c (gtk_window_set_arg, gtk_window_set_policy,
15736                            gtk_window_set_geometry_hints
15737                            gtk_window_set_default_size):
15738         When hints are set, queue a resize so that the hints will
15739         be eventually reset on the toplevel.
15740
15741         * gtk/gtkwindow.c (gtk_window_show): Use
15742         gtk_window_compute_default_size(). Clear the need_resize flag
15743         on the initail map so that we don't unnecessarily trigger the
15744         resize code.
15745
15746         * gtk/gtkwindow.c (gtk_window_move_resize): Split apart
15747         into separate functions. Compare the hints we are setting
15748         with what we set last time so that we can accurately
15749         tell when we need to reset the hints.
15750
15751         * gtk/gtkwindow.c (gtk_window_compute_default_size): New
15752         function to figure out the size from requisition
15753         and default_size.
15754
15755         * gtk/gtkwindow.c (gtk_window_constrain_size): Function
15756         from fvwm to constrain a size to the geometry hints.
15757
15758         * gtk/gtkwindow.c (gtk_window_compare_hints): New function
15759         to compare two sets of geometry hints.
15760
15761         * gtk/gtkwindow.c (gtk_window_compute_hints): Renamed
15762         from gtk_window_set_hints(), just compute the hints,
15763         don't set them.
15764
15765         * gtk/gtkwindow.c (gtk_window_compute_reposition): Move
15766         code from gtk_window_move_resize() to separate function,
15767         rationalize a bit.
15768
15769 Tue Aug 31 13:05:03 1999  Owen Taylor  <otaylor@redhat.com>
15770
15771         * gtkrc.h: Move the ref_count member out of the GtkRcStyle
15772         structure into a new private structure.
15773
15774         * gtkrc.c: Split GtkRcStyle into public/private.
15775         In the private part, add a list of pointers to the
15776         RcStyle lists this RcStyle participates in.
15777
15778         * gtkrc.c: When a RcStyle is free, remove all
15779         lists referencing it from the 
15780         realized_style_ht hash, and free those lists.
15781         
15782         * gtk/gtkrc.c (gtk_rc_clear_styles): Don't call
15783         gtk_rc_init(), since that adds the default styles
15784         to the list of parsed RC files again.
15785
15786         * gtk/gtkrc.c: Use gtk_rc_style_find() consistently.
15787         
15788 Thu Aug 26 14:14:42 1999  Tim Janik  <timj@gtk.org>
15789
15790         * gtk/gtkwidget.c (gtk_widget_size_allocate): reactivated the sanity
15791         checks that ensure that a widget's allocation is at least 1 in width
15792         and height. (GNOME note: this doesn't affect old panel code anymore,
15793         because GtkSocket will request width and height of at least 1 since
15794         Fri Jul 23).
15795
15796         * gtk/gtkwindow.c (gtk_window_realize): if the widget hasn't been
15797         allocated yet (happens if the user realizes the window prematurely),
15798         size request and allocate it.
15799         (gtk_window_size_allocate): guard against guint underflows.
15800
15801 Wed Aug 25 19:01:36 1999  Lars Hamann  <lars@gtk.org>
15802
15803         * gtk/Makefile.am (gtk_built_sources): reordered stamp-gtk.defs
15804         in gtk_built_sources, so gtk.defs gets built prior to all other
15805         sources.
15806
15807 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
15808
15809         * gtk/Makefile.am:
15810         invoke indent on gtkmarshal.*. 
15811         rewrote source generation rules, use COPYING as oldest source tag for
15812         a piggyback rule to generate all sources from (don't touch it ;).
15813         major cleanups, strip spaces on build rules for GNU Make.
15814
15815         * gtk/genmarshal.pl: don't operate on hardcoded filenames but take
15816         source and target files from commandline arguments. don't invoke indent.
15817
15818 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
15819
15820         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
15821         notebook after switch to avoid drawing problems.
15822         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
15823         
15824         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
15825         show them instead. 
15826         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
15827
15828 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
15829
15830         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
15831         notebook after switch to avoid drawing problems.
15832         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
15833         
15834         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
15835         show them instead. 
15836         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
15837
15838 Wed Aug 18 09:20:10 1999  Tim Janik  <timj@gtk.org>
15839
15840         * gtk/gtkwindow.c:
15841         we use window->need_resize from configure_event now, to indicate that
15842         the gtkwindow should keep its allocation (e.g. because the user resized
15843         the window through window manager handles). resize_count is now reliably
15844         used to figure whether we got the allocation we requested from the
15845         window manager.
15846         configure events get queued as resizes now, the real stuff (size
15847         computation and allocation) now only goes on in gtk_window_move_resize().
15848         GtkWindow's requisition now contains its *real* requisition (like all
15849         other widgets), *not* taking usize into account.
15850         geometry_info->last_{width|height} is now updated from set_hints() only
15851         so it always contains the last hints we set for the window manager.
15852         made some event handlers return TRUE instead of FALSE.
15853         the overall code should be much more straight forward now, and the
15854         significant code portions are accompanied by comments now.
15855         (gtk_window_set_hints):
15856         removed requisition argument and made it
15857         fetch the requisition through gtk_widget_get_child_requisition.
15858         we also don't move the gdkwindow here anymore, gtk_window_move_resize()
15859         does that now.
15860         (gtk_window_show):
15861         ensure that the widget is realized before calling 
15862         gtk_container_check_resize() (and thus gtk_window_move_resize()), also
15863         ensure that we got properly size requested and allocated before
15864         realization.
15865         (gtk_window_configure_event):
15866         ignore plain window moves, or reallocate the widget tree through the
15867         resize queue otherwise.
15868         (gtk_window_move_resize):
15869         mostly rewrote this function to figure window manager hints more
15870         reliably, coalesce window moves and resizes to reduce configure events
15871         and do actuall size allocations.
15872
15873 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
15874
15875         * gtk/gtkwidget.c (gtk_widget_event): discard expose events for widgets
15876         that have a resize pending, because a redraw is already queued for them.
15877
15878         * gtk/gtkcontainer.c: removed ugly connect_to ::size_allocate signal
15879         hack to clear resize_widgets.
15880
15881         * gtk/gtkwidget.c (gtk_widget_size_allocate): call clear_resize_widgets
15882         for resize containers prior to size allocation. (this is also a bit
15883         ugly, but avoids side effects for stopped emissions and is thus more
15884         reliable).
15885         (gtk_widget_unparent): removed disconnect call for clear_resize_widgets.
15886
15887         * gtk/gtktooltips.c (gtk_tooltips_paint_window): renamed this
15888         function from gtk_tooltips_expose, as we connect to ::expose_event
15889         *and* ::draw now.
15890
15891 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
15892
15893         * gtk/gtkselection.c (gtk_target_list_ref): Added missing sanity
15894         checks.
15895         (gtk_target_list_unref): Likewise.
15896
15897         * gtk/gtkthemes.c (gtk_theme_engine_unref): Likewise.
15898
15899 Tue Aug 17 15:47:07 1999  Owen Taylor  <otaylor@redhat.com>
15900
15901         * gtk/gtkcolorsel.c (gtk_color_selection_draw_value_bar):
15902         guard against division by zero. (Fixes bug #1339)
15903
15904 Tue Aug 17 10:56:49 1999  Owen Taylor  <otaylor@redhat.com>
15905
15906         * gtk/gtkentry.c (gtk_move_{forward,backward}_word): 
15907         Prevent the trivial leak of information of allowing
15908         word motion when the entry is not visible.
15909
15910 Tue Aug 17 10:28:52 1999  Owen Taylor  <otaylor@redhat.com>
15911
15912         * gtk/gtkfilesel.c (gtk_file_selection_fileop_error): Propagate
15913         modality to error dialog as well as confirmation dialogs.
15914         (Bug #1803, reported by Rosanna Wing Sze Yuen)
15915
15916 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
15917
15918         * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): Honor
15919         tree->view_lines.
15920         (gtk-guy-990611-3.patch: Guy Harris <guy@netapp.com>)
15921
15922         * gtk/Makefile.am (install-data-local): Solaris apparently
15923         has various troubles with ln -f; use rm first instead.
15924         (gtk-guy-990611-2.patch: Guy Harris <guy@netapp.com>)
15925
15926 1999-07-30  Raja R Harinath  <harinath@cs.umn.edu>
15927
15928         * gtk/Makefile.am (stamp-m): Don't `mv' from builddir to srcdir,
15929         use `cp' followed by `rm' (the `rm' was already there).
15930
15931 July 30, 1999 Elliot Lee <sopwith@redhat.com>
15932         
15933         * configure.in: Fix autoconf warnings about cross compilation by
15934         trying to provide sane defaults for AC_TRY_RUN.
15935         * gtk/Makefile.am: If we refer to gtkmarshal.[ch] in $(srcdir),
15936         put them into $(srcdir) when generated. Also add a dependency of
15937         gtksignal.h on gtkmarshal.h for -j builds. 
15938         * gtk/gtk(dnd,style,gamma).c: Minor warning fixes.
15939
15940 Wed Jul 28 09:29:19 1999  Owen Taylor  <otaylor@redhat.com>
15941
15942         * gtk/gtkmain.c (gtk_main_iteration_do): Added missing
15943         GDK_THREADS_{LEAVE,ENTER} pair.
15944         (From Paul Fisher <pnfisher@redhat.com>)
15945
15946 Fri Jul 23 01:00:15 1999  Tim Janik  <timj@gtk.org>
15947
15948         * gtk/gtksocket.c (gtk_socket_size_request): asure that the requested
15949         width and height are always >0 (owen).
15950
15951 Fri Jul 23 00:00:47 1999  Tim Janik  <timj@gtk.org>
15952
15953         * gtk/gtkwidget.c (gtk_widget_size_allocate): backed out my recent
15954         change that assured that a widget's allocated with and height are
15955         always >1, since this breaks *buggy* panel code. unfortunately this
15956         back-breaks the gimp's color selector.
15957
15958         * gtk/gtkdrawingarea.c (gtk_drawing_area_size_allocate): asure that our
15959         allocation is always >0 in width and height, before sending the
15960         configure event; this is a *gross* hack to get the gimp back to work.
15961         
15962         * marked both cases with TODO-1.3
15963
15964 Wed Jul 21 15:47:39 1999  Owen Taylor  <otaylor@redhat.com>
15965
15966         * gtk/gtktext.c: Don't display wrap indicators when
15967         text is not editable and word wrap is on.
15968
15969 Wed Jul 21 08:21:40 1999  Tim Janik  <timj@gtk.org>
15970
15971         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): special case
15972         option menus here as they are not derived from menu shell, assure that
15973         the option menu has a menu we can add items to.
15974
15975 Tue Jul 20 23:29:48 1999  Tim Janik  <timj@gtk.org>
15976
15977         * gtk/gtknotebook.c (gtk_notebook_page_allocate): convert allocation->
15978         width/height to (gint) before calculations and check against < 0 to
15979         avoid guint wraparounds.
15980
15981 Sun Jul 18 00:35:49 1999  Tim Janik  <timj@gtk.org>
15982
15983         * gtk/gtkwidget.c (gtk_widget_size_allocate): ensure that the allocated
15984         width and height is never zero. sanity check both dimensions against
15985         32767 and issue a warning if the allocation is greater than that.
15986
15987 Wed Jul  7 15:03:30 1999  Owen Taylor  <otaylor@redhat.com>
15988
15989         * gtk/gtkmain.c (gtk_events_pending): Unlock around call
15990         to g_main_pending() as well.
15991
15992 Wed Jul  7 14:59:01 1999  Owen Taylor  <otaylor@redhat.com>
15993
15994         * gtk/gtkmain.c (gtk_main_iteration): Unlock around
15995         call to g_main_iteration() - since that will regrab
15996         GTK+ lock to process events.
15997
15998 Thu Jul  1 15:01:55 1999  Owen Taylor  <otaylor@redhat.com>
15999
16000         * gtk/gtkwindow.c
16001         - Regularize with the rest of GTK+ by making widget->requisition
16002           not reflect the set_usize()
16003         - Always recompute geometry hints, then check if they
16004           changed before sending them to the X server. The
16005           previous checks for changes would fail in a number
16006           of circumstances. 
16007
16008 Thu Jul  1 11:55:59 1999  Owen Taylor  <otaylor@redhat.com>
16009
16010         * gtk/gtkstyle.c: Include <stdlib.h> for strcmp().
16011
16012 Wed Jun 30 19:26:36 1999  Owen Taylor  <otaylor@redhat.com>
16013
16014         * gtk/gtkdnd.c:
16015         - Code cleanups
16016         - Instantaneously update on modifier key presses
16017         - Allow cancellation of the drag with Escape.
16018
16019 Tue Jun 29 17:04:09 1999  Owen Taylor  <otaylor@redhat.com>
16020
16021         * gtk/testgtk.c (create_handle_box): Set the policy
16022         to auto_shrink - otherwise the appearance is rather
16023         strange when flipping between horizontal and vertical.
16024
16025 Mon Jun 28 09:29:52 1999  Tim Janik  <timj@gtk.org>
16026
16027         * gtk/gtkwindow.c: add ::default_width and ::default_height arguments.
16028         (gtk_window_set_default_size): don't change a value if it's < 0.
16029         queue a resize.
16030
16031 Sun Jun 27 11:00:33 1999  Tim Janik  <timj@gtk.org>
16032
16033         * gtk/gtktext.c (gtk_text_insert): don't segfault on NULL inserts.
16034
16035 Mon Jun 28 12:08:25 1999  Owen Taylor  <otaylor@redhat.com>
16036
16037         * gtk/gtkfilesel.c (cmpl_completion_fullname): Don't
16038         add an extra "/" when concating "/" + filename.
16039         (From Matt Grossman <mattg@oz.net>)
16040
16041 Mon Jun 28 10:57:12 1999  Owen Taylor  <otaylor@redhat.com>
16042
16043         * gtk/gtkctree.c (draw_cell_pixmap): Reset clip mask
16044         for fg_gc if we set it for drawing pixmap.
16045
16046 Tue Jun 15 12:45:12 1999  Owen Taylor  <otaylor@redhat.com>
16047
16048         Fixes from Peter Wainwright <prw@wainpr.demon.co.uk>
16049         
16050         * gtk/gtkrc.c (gtk_rc_parse_engine): If rc_style->engine is
16051         already set, call old engine's destroy function and
16052         unref the old engine.
16053
16054 Thu Jun 10 17:59:38 1999  Tim Janik  <timj@gtk.org>
16055
16056         * gtk/gtkdrawingarea.c (gtk_drawing_area_size): queue a resize.
16057
16058 Wed Jun  9 15:13:16 1999  Tim Janik  <timj@gtk.org>
16059
16060         * gtk/gtkaccelgroup.h: mark certain functions as internal.
16061
16062 Wed Jun  9 13:48:28 1999  Tim Janik  <timj@gtk.org>
16063
16064         * gtk/gtkpreview.c (gtk_preview_set_expand): queue a resize if the
16065         expand behaviour changed.
16066
16067         * gtk/gtklabel.c (gtk_label_set_pattern):
16068         (gtk_label_set_justify):
16069         (gtk_label_set_line_wrap):
16070         don't bother invoking queue_clear, the reallocation does
16071         that for us, always free_words so the upcoming resize will
16072         relayout the label's contents.
16073
16074 Wed Jun  9 12:50:48 1999  Tim Janik  <timj@gtk.org>
16075
16076         * applied argument implementation patches from Elena Devdariani
16077         <elena@cogent.ca>.
16078
16079         * gtk/gtktoolbar.c: ::orientation, ::toolbar_style, ::space_size,
16080         ::space_style, ::relief
16081         * gtk/gtkruler.c: ::lower, ::upper, ::position, ::max_size
16082         * gtk/gtkpreview.c: ::expand
16083         * gtk/gtkpaned.c: ::handle_size, ::gutter_size
16084         * gtk/gtknotebook.c: ::homogeneous
16085         * gtk/gtklabel.c: ::wrap
16086         * gtk/gtklist.c: ::selection_mode
16087         * gtk/gtkhandlebox.c: ::handle_position, ::snap_edge
16088         * gtk/gtkcurve.c: ::curve_type, ::min_x, ::max_x, ::min_y, ::max_y
16089         * gtk/gtkcolorsel.c: ::update_policy, ::use_opacity
16090         * gtk/gtkclist.c: ::sort_type
16091         * gtk/gtkcheckmenuitem.c: ::active, ::show_toggle
16092         * gtk/gtkaspectframe.c: ::xalign, ::yalign, ::ratio, ::obey_child
16093
16094 Tue Jun  1 23:38:38 1999  Owen Taylor  <otaylor@redhat.com>
16095
16096         * gtk/gtkstyle.c: Removed ill-thought-out part of last
16097         comment.
16098
16099 Tue Jun  1 23:30:09 1999  Owen Taylor  <otaylor@redhat.com>
16100
16101         * gtk/gtkstyle.c (gtk_style_attach): Get the reference
16102         counting right when we have to attach a new style
16103         for a different visual. (Chi-Deok Hwang <cdhwang@sr.hei.co.kr>)
16104
16105         * gtk/gtkstyle.c: Documented the refcounting
16106         peculularities of gtk_style_attach.
16107
16108 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
16109
16110         * gtk/gtkwindow.c (gtk_window_new): added return if fail for invalid
16111         window types.
16112
16113         * examples/packer/pack.c (main): use GTK_WINDOW_TOPLEVEL instead
16114         of GTK_TOPLEVEL for creating the window.
16115
16116 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
16117
16118         * gtk/gtkmain.c (gtk_init_check): don't segfault when --gtk-module is
16119         the last argument (reported by Per Winkvist).
16120         
16121 Tue May 25 13:13:12 1999  Owen Taylor  <otaylor@redhat.com>
16122
16123         Fixes for invisible XOR lines (Frank Loemker
16124         <floemker@TechFak.Uni-Bielefeld.DE>)
16125         
16126         * gtk/gtkclist.c (gtk_clist_realize): Always use
16127         a non-zero pixel for GDK_XOR.
16128
16129         * gtk/gtkvpaned.c gtk/gtkhpaned.c: 
16130         Use GDK_INVERT instead of GDK_XOR.
16131
16132 Wed May 12 21:56:40 1999  Lars Hamann  <lars@gtk.org>
16133
16134         * gtk/gtkclist.c (adjust_adjustments): signal emit value_changed
16135         signals if h/voffsets differ from adjustment values.
16136         Reportet by Jerome Bolliet <bolliet@in2p3.fr>
16137
16138 Mon May 10 04:20:41 1999  Tim Janik  <timj@gtk.org>
16139
16140         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): propagate
16141         ::selection-done emissions up to the topmost menu shell.
16142
16143 Fri May  7 10:15:14 1999  Owen Taylor  <otaylor@redhat.com>
16144
16145         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): Unset
16146         the user data on the window before destroying it.
16147
16148         * gtk/gtknotebook.c (gtk_notebook_unrealize): Add an
16149         unrealize handler to take care of destroying 
16150         notebook->panel properly. 
16151         (Bug #1198 - Morten Welinder <terra@diku.dk>)
16152
16153         * gtk/gtktext.c (expand_scratch_buffer): Fix reversal
16154         of g_new and g_realloc to stop memory leak. (Actually,
16155         we could just use g_realloc(), but I'm not 100% sure
16156         that is portable).
16157         (Bug #1196 - Morten Welinder <terra@diku.dk>)
16158
16159 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
16160
16161         * gtk/gtkplug.h: Removed stray GtkPlugButton declaration.
16162
16163         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
16164         for fontsets.
16165
16166         * gtk/gtkbutton.c (gtkbutton_expose): Fix warning
16167         with bin/button confusion.
16168
16169 Thu May  6 04:53:26 1999  Tim Janik  <timj@gtk.org>
16170
16171         * gtk/testgtk.c: in the ItemFactory test, link radio items together,
16172         and show how preselection of radio items is done.
16173
16174 Sun May  2 13:31:14 1999  Tim Janik  <timj@gtk.org>
16175
16176         * gtk/gtktreeitem.c (gtk_tree_item_set_subtree): 
16177         * gtk/gtktree.c (gtk_tree_add) (gtk_tree_insert):
16178         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): 
16179         * gtk/gtkpaned.c (gtk_paned_pack2) (gtk_paned_pack1):
16180         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_add): 
16181         * gtk/gtktable.c (gtk_table_attach): 
16182         * gtk/gtklist.c (gtk_list_insert_items): 
16183         * gtk/gtkmenushell.c (gtk_menu_shell_insert): 
16184         * gtk/gtknotebook.c (gtk_notebook_insert_page_menu): 
16185         * gtk/gtkpacker.c (gtk_packer_add_defaults) (gtk_packer_add): 
16186         * gtk/gtkbin.c (gtk_bin_add): 
16187         * gtk/gtkbox.c (gtk_box_pack_start) (gtk_box_pack_end): 
16188         * gtk/gtkfixed.c (gtk_fixed_put): 
16189         * gtk/gtklayout.c (gtk_layout_put):
16190         general fixups to container_add logic. always realize child if
16191         child->parent is realized, only map the child and queue a resize
16192         if child and child->parent are both visible.
16193
16194 Fri Apr 30 09:02:28 1999  Tim Janik  <timj@gtk.org>
16195
16196         * gtk/gtkwidget.c (gtk_widget_real_unrealize): use gtk_container_forall
16197         instead of gtk_container_foreach to walk and unrealize children, so
16198         composite children get also unrealized.
16199         (gtk_widget_real_show): don't call gtk_widget_map() if we don't need to.
16200         (gtk_widget_map): assert that the widget is visible (basic constrain).
16201         (gtk_widget_real_map): assert that the widget is realized (basic
16202         constrain).
16203
16204 Fri Apr 29 00:53:20 1999  Tim Janik  <timj@gtk.org>
16205
16206         * gtk/gtkbindings.c (gtk_pattern_spec_init): plugged a memory leak.
16207
16208 Tue May  4 09:32:08 1999  Owen Taylor  <otaylor@redhat.com>
16209
16210         * gtk/Makefile.am gtk/gtkrc.iso-8859-2: Add a gtkrc
16211         file for iso-8859-2 locales.
16212
16213         * configure.in (ALL_LINGUAS): ALL_LINGUAS update.
16214
16215 Tue Apr 27 16:38:32 1999  Owen Taylor  <otaylor@redhat.com>
16216
16217         * gtk/Makefile.am: Fix typo of static_sources for static_SOURCES.
16218          (Pointed out by andy@rz.uni-karlsruhe.de and others).
16219          Remove some suspicious and useless lines. 
16220
16221 Tue May  4 08:44:08 1999  Owen Taylor  <otaylor@redhat.com>
16222
16223         * gtk/gtkclist.c (gtk_clist_draw, draw_rows): Use 
16224         width,height = 0, 0 to mean - here to edge of window,
16225         instead of -1, -1, since the former is all we support.
16226
16227 Tue May  4 08:34:43 1999  Owen Taylor  <otaylor@redhat.com>
16228
16229         * gtk/gtkmain.c (gtk_main): Correctly free list nodes
16230         when removing from quit_functions list.
16231
16232 Tue Apr 27 14:17:16 1999  Tim Janik  <timj@gtk.org>
16233
16234         * gtk/gtkpacker.c (gtk_packer_size_request): remove unused variable.
16235
16236 Tue Apr 27 18:23:35 1999  Owen Taylor  <otaylor@redhat.com>
16237
16238         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): 
16239          When redrawing characters on non-visible entry, use appropriate
16240          '*' character. (Bug #1130 - Jean-Marc Jacquet <jm@littleigloo.org>)
16241
16242 Tue Apr 27 01:31:40 1999  Lars Hamann  <lars@gtk.org>
16243
16244         * gtk/gtkclist.c (drag_dest_cell): compute destination cell
16245         from drag coordinates.
16246         (gtk_clist_drag_data_received) (gtk_clist_drag_motion):
16247         use drag_dest_cell.
16248
16249         * gtk/gtktree (drag_dest_cell)
16250         (gtk_ctree_drag_data_received) (gtk_ctree_drag_motion): likewise.
16251         (Bug #1129)
16252
16253 Wed Apr 21 21:26:11 1999  Tim Janik  <timj@gtk.org>
16254
16255         * gtk/gtkitemfactory.c (gtk_item_factory_init): properly initialize
16256         translate_* fields.
16257         (gtk_item_factory_finalize): invoke translate_notify independant from
16258         translate_data.
16259         (gtk_item_factory_set_translate_func): likewise.
16260         (gtk_item_factory_destroy): only remove ifactory pointer from those
16261         widgets that belong to us (stupid me).
16262
16263 Mon Apr 19 12:05:31 1999  Owen Taylor  <otaylor@redhat.com>
16264
16265         * gtk/gtkrc.c (gtk_rc_style_init): Fixed leak of
16266         rc_style list when lookup succeeeds.
16267
16268 Thu Apr 15 01:11:24 1999  Lars Hamann  <lars@gtk.org>
16269
16270         * gtk/gtkctree.c (resync_selection): 
16271         * gtk/gtkclist.c (resync_selection): fixed undo_selection bug.
16272         * gtk/gtkclist.c (gtk_clist_button_release): fixed resync_selection
16273         bug.
16274
16275 Fri Apr  9 19:22:19 1999  Owen Taylor  <otaylor@redhat.com>
16276
16277         * gtk/gtkcolorsel.c gtk/gtkdnd.c gtk/gtkmenuitem.c:
16278         Add some missing GDK_THREADS_ENTER()/LEAVE around
16279         timeouts. (Patches from Sebastian Wilhelmi <wilhelmi@ira.uka.de>)
16280
16281 Thu Apr  8 20:10:33 1999  Tim Janik  <timj@gtk.org>
16282
16283         * gtk/gtkentry.c (gtk_entry_key_press): use gtk_widget_activate()
16284         rather than emit_by_name.
16285
16286         * gtk/gtkeditable.c (gtk_editable_insert_text): keep a reference
16287         on the widget across multiple signal emissions.
16288         (gtk_editable_delete_text): same here.
16289         (gtk_editable_class_init): set widget_class->activate_signal after
16290         editable_signals[ACTIVATE] has been created.
16291
16292 Wed Apr  7 22:59:47 1999  Owen Taylor  <otaylor@redhat.com>
16293
16294         * gtk/gtkpaned.c (gtk_paned_set_position): Don't clamp
16295         position here prematurely -- we might not have the
16296         right ->min_position and ->max_position yet.
16297
16298 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
16299
16300         * gtk/gtkselection.c gdk/gdkselection.c: (gtk_selection_request):
16301         Add error traps so if the other end of the connection
16302         dies, we survive.
16303
16304         * gtk/gtkselection.c (gtk_selection_notify): Clean
16305         up properly when selection property retrieval fails.
16306         
16307         * gtk/gtkselection.c (gtk_selection_request): Correctly
16308         reject SelectionRequest notifies where the handler
16309         returns no data.
16310
16311 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
16312
16313         * gtk/gtkdnd.c (gtk_drag_dest_leave): Only unhighlight
16314         when we've previously highlighted.
16315
16316         * gtk/gtkdnd.c (gtk_drag_dest_handle_event): Don't
16317         emit two "drag_leave" signals for Motif drops.
16318
16319         * gtk/gtkdnd.c (gtk_drag_source_handle_event): Send
16320         back the correct status messages when dropping from
16321         Motif onto a proxy window that is rejecting the
16322         drop.
16323
16324 Sat Mar 27 23:32:13 1999  Tim Janik  <timj@gtk.org>
16325
16326         * gtk/gtkarg.[hc]: added functions from GLE, gtk_arg_reset() to free
16327         the value and reset type to GTK_TYPE_INVALID, and gtk_arg_values_equal()
16328         to compare two argument values. added gtk_arg_to_valueloc() to set a
16329         variable from an arg through its location (pointer).
16330
16331         * gtk/gtkobject.[hc]: implemented gtk_object_get() in terms of
16332         gtk_object_arg_get() and gtk_arg_to_valueloc(), floats are collected
16333         as gfloat*, uchars are collected as guchar*, ints are collected as
16334         gint*, etc...
16335
16336 Mon Mar 29 17:45:47 1999  Owen Taylor  <otaylor@redhat.com>
16337
16338         * gtk/gtkaccelgroup.c gtk/gtkgtkbindings.c:
16339         Include <string.h> instead of <strings.h>.
16340
16341         * gtk/gtkstyle.c: Fix double include of gtkthemes.h
16342         (actually, a lot more duplicate includes occur if
16343          you trace through the sequence of #include's)
16344         gtk-jbb-990320-0: John Bley, jbb6@acpub.duke.edu
16345         
16346 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
16347
16348         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
16349         gtk-a-higuti-990322-[0-3]
16350
16351         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
16352         that was causing -DX_LOCALE not to work.
16353
16354         * gtk/gtkrc.c (gtk_rc_init):
16355         X_LOCALE will never have LC_MESSAGES defined
16356
16357 Thu Mar 25 12:38:31 1999  Tim Janik  <timj@gtk.org>
16358
16359         * gtk/gtkrc.c (gtk_rc_append_default_module_path): get $HOME from
16360         g_get_home_dir() (gtk-pmc-990123-0.patch.gz).
16361
16362         * gtk/gtkwindow.c (gtk_window_key_press_event): feature keypad up/down/
16363         left/right as well (gtk-michael-980726-0.patch.gz).
16364
16365         * gtk/gtklabel.[hc]: bunch of miscellaneous cleanups, such as s/0/NULL/
16366         for pointer values, use gchar instead of char. fixed uline allocation
16367         leaks, changed the allocation pattern so we use G_ALLOC_AND_FREE mem
16368         chunks instead of G_ALLOC_ONLY.
16369         (gtk_label_size_request): always alter requisition as passed and leave
16370         widget->requisition alone.
16371         (gtk_label_set_text): allow NULL strings.
16372         (gtk_label_new): likewise.
16373
16374 Wed Mar 24 09:24:03 1999  Tim Janik  <timj@gtk.org>
16375
16376         * gtk/gtkdrawingarea.[hc]: type/macro fixups.
16377
16378 Mon Mar 22 05:51:34 1999  Tim Janik  <timj@gtk.org>
16379
16380         * gtk/gtkbin.c (gtk_bin_draw): only redraw children that are visible
16381         *and* mapped (i.e. drawable).
16382         (gtk_bin_expose): only send exposes to drawable children.
16383
16384         * gtk/gtkbox.c (gtk_box_draw): only redraw children that are drawable.
16385         (gtk_box_expose): only send exposes to drawable children.
16386
16387         * gtk/gtkhscale.c (gtk_hscale_draw): 
16388         * gtk/gtkvscale.c (gtk_vscale_draw):
16389         hm, this is an ugly one. we first compute the size of our trough area
16390         here (window relative) and then check intersection with the draw_area
16391         which is parent relative because we're a NO_WINDOW widget, so we need
16392         to offset the trough area by allocation.x and allocation.y before the
16393         check. (this must not be done for the background area though, since
16394         that's already computed parent relative).
16395
16396 Mon Mar 22 00:41:39 1999  Lars Hamann  <lars@gtk.org>
16397
16398         * gtk/gtkclist.c (gtk_clist_unrealize): unmap clist if neccessary,
16399         unrealize title buttons.
16400
16401 Fri Mar 19 00:00:22 1999  Lars Hamann  <lars@gtk.org>
16402
16403         * gtk/gtkclist.c (gtk_clist_column_title_passive)
16404         (gtk_clist_column_title_active): 
16405         only connect/disconnect to GtkWidgetClass::event to block mouse events.
16406
16407         * gtk/gtkclist.c (vertical_timeout) (horizontal_timeout): 
16408         zero initialize event, removed superfluous gdk_window_get_pointer call
16409
16410         * gtk/gtklist.c (gtk_list_vertical_timeout)
16411         (gtk_list_horizontal_timeout): removed superfluous
16412         gdk_window_get_pointer call
16413
16414 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
16415
16416         * plugging problems reported by "Bruce Mitchener, Jr."
16417         <bruce@puremagic.com> due to a purify session.
16418
16419         * gtk/gtkstyle.c:
16420         (gtk_style_ref): 
16421         (gtk_style_unref): assert ref_count to be > 0.
16422
16423         * gtk/gtkclist.c (gtk_clist_set_cell_style): { 0 } initilaize
16424         the requisition.
16425         (gtk_clist_set_shift): likewise.
16426
16427         * gtk/gtklayout.c: introduce gtk_layout_finalize() to unref the
16428         adjustments.
16429
16430         * gtk/gtklist.c (gtk_list_horizontal_timeout): zero initialize the
16431         event before sending it and set send_event to TRUE (which needs to
16432         be done for *all* synthesized events).
16433         (gtk_list_vertical_timeout): likewise.
16434
16435         * gtk/gtktipsquery.c (gtk_tips_query_destroy): plug small memory
16436         leaks.
16437
16438         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set send_event
16439         to TRUE when synthesizing events.
16440
16441 [ *** end of merges from 1.2 *** ]      
16442         
16443 1999-11-21  Tor Lillqvist  <tml@iki.fi>
16444
16445         * gdk/gdkconfig.h: Remove, as this is a file generated by configure
16446         (or copied from gdkconfig.h.win32 on Win32, sigh).
16447
16448         * gdk/gdkprivate.h: Mark gdk_parent_root for export from DLL.
16449
16450         * gdk/gdk.c (gdk_keyval_convert_case): Fix typo.
16451
16452         * gdk/gdkgc.c (gdk_gc_alloc): Remove duplicated line.
16453
16454         * gdk/gdkconfig.h.win32: New file.
16455
16456         * gdk/win32/makefile.cygwin: Build just a static archive here.
16457
16458         * gdk/makefile.cygwin: New file. Get the win32-specific stuff
16459         for the DLL from the static archive built above.
16460
16461         * gdk/gdk.def: Moved here from the win32 subdirectory.
16462
16463         * gdk/win32/*: Adapt for the changed private struct organisation.
16464
16465         * gtk/makefile.{cygwin,msc}: Get gdk library from ../gdk now.
16466
16467 Sun Nov 21 16:44:35 1999  Stefan Jeske  <stefan@gtk.org>
16468
16469         * gtk/gtkspinbutton.c (gtk_spin_button_button_press): Added support 
16470         for wheel mice (buttons 4 and 5).
16471
16472 1999-11-18  Tor Lillqvist  <tml@iki.fi>
16473
16474         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Also for truecolor
16475         drawables use just the pixel field in the foreground and
16476         background GdkColor of the GdkGC.
16477
16478         gdk_gc_set_{fore,back}ground() are called in the GIMP with
16479         GdkColors containing uninitialized (red,green,blue) fields, and
16480         just the pixel field filled in, and furthermore in the
16481         visual-dependent format as returned by gdk_rgb_xpixel_from_rgb().
16482         It thus turns out that we really don't need to have the full
16483         GdkColor for fg and bg in GdkGCWin32Data after all. Will change
16484         it later to have just the pixel values.
16485
16486 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
16487
16488         * docs/gtkfaq.sgml: s/gtk_main_iteration/g_main_iteration/
16489
16490 Sat Nov 13 22:30:29 GMT 1999 Tony Gale  <gale@gtk.org>
16491
16492         * docs/gtkfaq.sgml: threads example from Erik Mouw.
16493         New question on GtkLabel background colors.
16494
16495         * docs/gtk_tut.sgml:
16496           - Correct the example code callback
16497             function definitions.
16498           - Update the gtkdial example code, from Frans van Schaik.
16499           - Update setselection.c to current API.
16500
16501         * examples/Makefile examples/*/*.c: Update to code
16502         listed in tutorial.
16503
16504 1999-11-10  Tor Lillqvist  <tml@iki.fi>
16505
16506         * gdk/win32/gdkfont-win32.c: Fix a couple of bugs. The Unicode
16507         subrange table (from the "Developing International Software for
16508         WIndows 95 and Windows NT" book) was missing the Hangul syllable
16509         block... Get the loaded font's charset correctly.
16510
16511         (Note that this, and the other *-win32.c files, still really are
16512         the old ones, the win32 subdirectory is not ready for compilation
16513         yet after the reorg.)
16514
16515 Wed Nov 10 17:26:49 GMT 1999 Tony Gale  <gale@gtk.org>
16516
16517         * gtk/gtkclist.c: Fix off-by-one bug in parameter
16518         check.
16519
16520 Wed Nov 10 12:12:03 1999  Owen Taylor  <otaylor@redhat.com>
16521
16522         * gdk/x11/gdkinput-{x11,xfree}.c: Call XFreeDeviceState()
16523         on results of XQueryDeviceState().
16524
16525 Mon Nov  8 16:40:43 1999  Owen Taylor  <otaylor@redhat.com>
16526
16527         * gtk/gtkwidget.c: Substitute gdkx.h => gdkprivate.h since
16528         we need to accesss only ->children. We need an accessor
16529         for the children.
16530
16531         * gtk/gtkhandlebox.c gtk/testgtk.c: Substitute G
16532         DK_ROOT_PARENT() => NULL, in call to gtk_window_get_pointer()
16533         to get rid of gdkx.h include.
16534         
16535         * gtk/gtkctree.c: Get rid of #include <gdk/gdkx.h>
16536         and random references to 'None'.
16537
16538         * gtk/gtkclist.c gtk/gtkeditable.c gtk/gtkpreview.c
16539         Get rid of unused #include <gdk/gdkx.h>
16540
16541         * gtk/gtkrc.c gtk/gtkmain.c: Get rid of #include <gdk/gdkx.h>
16542         gdkx.h is _X_ specific stuff. GDK_WINDOWING comes from
16543         gdkconfig.h.
16544
16545 1999-11-08  Tor Lillqvist  <tml@iki.fi>
16546
16547         * gdk/win32/gdkdraw.c
16548         * gdk/win32/gdkfont.c
16549         * gdk/win32/gdkgc.c: Various minor cleanups and bugfixes
16550         following yesterday's changes. (Unrelated to Owen's reorg.)
16551
16552 Mon Nov  8 16:18:25 1999  Owen Taylor  <otaylor@redhat.com>
16553
16554         * gdk/x11/gdkinput-gxi.c: Add missing include,
16555           fix GdkWindowPrivate => GdkDrawablePrivate.
16556
16557         * gdk/x11/gdkinputprivate.h: include <X11/Xlib.h>.
16558
16559         * gdk/x11/Makefile.am (xinput_sources): Add missing
16560         backslash to fix building with --with-xinput=none
16561
16562 Mon Nov  8 14:47:04 1999  Owen Taylor  <otaylor@redhat.com>
16563
16564         Move all X specific code into the x11/ directory.
16565         Aside from shuffling things around, did the following:
16566
16567        * gdk/gdkprivate.h gdk/gdk.h gdk/x11/gdkmain-x11.h: Add
16568          gdk_arg_context_* - a simple argument parsing system
16569          in the style of popt.
16570
16571        * gdk/gdkdrawable.[ch] gdk/gdkprivate.h gdk/gdkwindow.[ch]
16572          gdk/x11/gdkprivate-x11.h:
16573          Remove X specific stuff from GdkDrawable and GdkWindowPrivate - 
16574          add ->klass and ->klass_data fields. The klass_data
16575          field points to an auxilliary structure that is
16576          windowing system dependent.
16577
16578        * gdk/gdkfont.c: Make most of the measurement functions
16579          simply wrappers around gdk_text_extents().
16580
16581        * gdk/gdkfont.c gdk/gdkprivate.h gdk/x11/gdkfont-x11.c: Add a 
16582          _gdk_font_strlen() function that hides the weird
16583          behavior in gtk+-1.[02] where a string is interpreted
16584          differently for 8-bit and 16-bit fonts.
16585
16586        * gdk/gdkevents.c: Add a new function gdk_event_button_generate()
16587          to store common code for synthesizing double/triple
16588          press events.
16589         
16590        * gdk/gdkgc.[ch]: Virtualize in the same way as gdkdrawable.h.
16591          Make all the function that modify an existing GC
16592          simply wrappers around gdk_gc_set_values().
16593          
16594        * gdk/gdkcc.[ch]: Moved into x11/ directory in preparation
16595          for throwing out later.
16596
16597        * gdk/gdkfont.c gdk/gdkimage.c gdk/gdkcolor.c: Change GdkFontPrivate,
16598          GdkImagePrivate and GdkColormapPrivate to have a
16599          windowing system dependent part (GdkFontPrivateX etc.)
16600          that "derives" from the system-independent part.
16601
16602        * configure.in gdk/x11/Makefile.in gdk/x11/gdkinput*.c:
16603          Got rid of the included-source-files for XInput in
16604          favor of automake conditionals. (Which didn't exist
16605          when XInput support was originally added.)
16606
16607        * gdk/gdkrgb.c: Remove the visual id from the debugging
16608          statements since that is X11 specific; print out
16609          type/depth info instead.
16610          
16611
16612 Wed Nov  3 18:14:49 1999  Owen Taylor  <otaylor@redhat.com>
16613
16614         * gdk/x11/gdkfont-x11.c (gdk_font_load): Ref fonts when
16615         loading duplicates of hashed fonts.
16616
16617         * gdk/gdk.c (gdk_keysym_convert_case): rename
16618         gdk_XConvertCase to gdk_keysym_convert_case, allow
16619         results to be NULL in the GTK+ style.
16620
16621         * gdk/gdkcompat.h: Started compatibility header
16622         for renames.
16623
16624 1999-11-07  Tor Lillqvist  <tml@iki.fi>
16625
16626         * gdk/win32/gdkprivate.h: New font private structures, related to
16627         fontsets.
16628
16629         * gdk/win32/gdkfont.c: New functions gdk_font_list_new() and
16630         gdk_font_list_free(). On X11, will just be wrappers to
16631         XListFonts() and XFreeFontNames(). On Win32, the code previously
16632         in gtkfontsel.c is now here.
16633
16634         New function gdk_font_xlfd_create(). On X11 will get the FONT
16635         property of the font (for GDK_FONT_FONTs), or call
16636         XBaseFontNameListOfFontSet (for GDK_FONT_FONTSETs), on Win32
16637         builds a XLFD style name from the font information in the LOGFONT
16638         struct(s).
16639
16640         New function gdk_font_xlfd_free(), which correspondingly frees the
16641         string returned by gdk_font_xlfd_create().
16642
16643         Implement fontsets on Win32. Add a function that iterates over a
16644         wide char string and calls a callback function for each substring
16645         of wide chars from the same Unicode subrange (and thus probably
16646         available in the same real font).
16647
16648         Improve the XLFD emulation a bit.
16649
16650         * gdk/win32/gdkim.c (gdk_nmbstowchar_ts): Small bugfix.
16651
16652         * gdk/win32/gdkevents.c: Workaround for suspected bug on Win2k
16653         Beta3, WM_IME_CHAR messages don't seem to contain the composed
16654         multi-byte char as with the Active IMM on Win9x. Oh well, handle
16655         WM_IME_COMPOSITION with GCS_RESULTSTR instead, use
16656         ImmGetCompositionStringW() to get the composed Unicode chars.
16657
16658         * gdk/win32/gdkgc.c
16659         * gdk/win32/gdkdraw.c: Changes needed because of the font private
16660         struct changes.
16661
16662         * gdk/win32/gdk.def: Add the new functions.
16663
16664 1999-11-04  Tor Lillqvist  <tml@iki.fi>
16665
16666         * config.h.win32: Don't define HAVE_DIMM_H if MSC, as you have to
16667         get the Platform SDK to get <dimm.h>.
16668
16669         * gdk/win32/gdkevents.c: More event handling fixes and
16670         simplification. Never generate motion events with is_hint true. We
16671         used to do that on bogus grounds earlier. Windows sends
16672         WM_MOUSEMOVE messages on button events even if the mouse hasn't
16673         moved, ignore these.
16674
16675         * gdk/win32/gdkfont.c: Load all fonts as (pretended) fontsets.
16676
16677         * gdk/win32/gdkglobals.c
16678         * gdk/win32/gdkprivate.h: Define a typedef for the pointer to
16679         the TrackMouseEvent function, and use it.
16680
16681         * gdk/win32/gdkwindow.c: Terminate widechar string with a zero
16682         char before calling WideCharToMultiByte in order to get a string
16683         for the window title.
16684
16685         * gdk/win32/gdkdnd.c: Some more random hacking, ifdeffed out.
16686
16687         * gdk/win32/gdk.def: Remove obsolete functions.
16688
16689         * gdk/win32/makefile.{cygwin,msc}: Remove gdkcompat.{o,obj}. Add
16690         /nodefaultlib and /defaultlib switches.
16691
16692         * gtk/gtkrc.c: s/gwin_getlocale/g_win32_getlocale/.
16693
16694 1999-10-31  Tor Lillqvist  <tml@iki.fi>
16695
16696         * gdk/gdkkeysyms.h: Add new keysyms from X11R6.4 (including
16697         EuroSign).
16698
16699         * gdk/gdktypes.h: Add note about wchar_t not necessarily being the
16700         same type as GdkWChar, especially on Win32.
16701
16702         * gdk/win32/*.c: Change gdk_root_parent to be a pointer.
16703
16704         * gdk/win32/*.c: Assume all strings are UTF-8. Convert to Unicode
16705         before passing to Windows GDI for drawing etc. Convert to the
16706         system default codepage before passing to Windows as window
16707         titles.
16708
16709         * gdk/win32/gdkprivate.h: Add more fields to GdkWindowPrivate to
16710         support changing input locale on the fly.
16711
16712         * gdk/win32/gdkevent.c: Support input language (keyboard locale)
16713         on-the-fly changes. Convert incoming characters from the current
16714         codepage to Unicode (and then to a UTF-8 multi-byte string) based
16715         on the current input language. Use keysym<->Unicode mapping tables
16716         and functions borrowed from xterm sources.
16717
16718         Support IMEs (Input Method Editors) for CJK languages. On non-CJK
16719         editions of Win9x, use the ActiveX-based Active IMM (Input Method
16720         Manager) if available. IMEs and the Active IMM are available under
16721         the disguise of Chinese, Korean and Japanese support for IE and
16722         Outlook Express from "Windows Update" for Win98. On Win2k, the CJK
16723         support is present in all editions (as long as you install it).
16724
16725         Call DispatchMessage from gdk_events_queue() (and thus
16726         gdk_WindowProc()), instead of duplicating the code in
16727         gdk_WindowProc().
16728
16729         Reworked the grab handling and propagation code, factored out
16730         duplicated code snippets into separate functions. Other cleanups,
16731         too.
16732
16733         * gdk/win32/surrogate-dimm.h: Provide just the bits we need from
16734         the <dimm.h> header describing the Active IMM.
16735
16736         * gdk/win32/gdkfont.c: Pretend to support fontsets, but so far
16737         just do the same as for "single" fonts.
16738
16739         * gdk/win32/gdk.c: Call CoInitialize() (COM initialisation) from
16740         gdk_init_check, and CoUninitialize() from gdk_exit_func. Handle
16741         the new keysyms from gdkkeysyms.h.
16742
16743         * gtk/gtkfontsel.c (Win32): Load the font for the preview as a
16744         fontset, so that gtkentry uses wide characters.
16745
16746         * gtk/gtkrc.c (Win32): Get the locale with gwin_getlocale(). Call
16747         GTk+'s system directory "gtk+", not "gtk".
16748
16749 Sat Oct 30 13:17:18 BST 1999 Tony Gale <gale@gtk.org>
16750
16751         * docs/gtkfaq.sgml: FAQ update
16752
16753 1999-10-21  Tor Lillqvist  <tml@iki.fi>
16754
16755         * gdk/win32/gdkprivate.h: Add more font private data.
16756
16757         * gdk/win32/gdkfont.c
16758         * gdk/win32/gdkdraw.c: Revamped handling of multi-byte charset
16759         fonts and strings. Now works much better. You still have to
16760         have a correct font selected, though. No fontset emulation yet.
16761
16762 1999-10-19  Tor Lillqvist  <tml@iki.fi>
16763
16764         * gtk/maketypes.awk: Use G_OS_WIN32.
16765
16766         * gtk/gtk.def: Add some missing entry points. Also some non-public
16767         ones, but PyGTK porter claims to need them.
16768
16769         * gtk/makefile.{cygwin,msc}: Drop some unneeded headers from the
16770         built-in type generation.
16771
16772 1999-10-14  Tor Lillqvist  <tml@iki.fi>
16773
16774         * gdk/win32/gdkdraw.c (gdk_draw_text_wc): Don't use TextOutW for
16775         GDK_FONT_FONT fonts (which is all we have for now, we don't
16776         emulate fontsets). The X11 version uses plain XDrawString in that
16777         case, too. The string passed to gdk_draw_text_wc seems to be in
16778         fact (at least, when used by gtkentry and gtktext) either in a
16779         single-byte charset, or a DBCS. Not Unicode.
16780
16781         This fixes the problem in gtkfontsel, where even if you had
16782         selected a font with a non-Latin1 charset (windows-greek, for
16783         instance), the preview still used Latin-1 glyphs.
16784
16785         * gdk/win32/gdkfont.c (gdk_text_width_wc): Similar change. Don't
16786         use GetTextExtentPoint32W, use GetTextExtentPoint32A.
16787         (gdk_font_load): Recognize the demibold etc weights, even if we
16788         don't have the corresponding constants in the headers.
16789         (gdk_font_hash_insert): Use same hash mechanism as in the X11
16790         version. Should save font resources a bit, when we don't have
16791         multiple HFONTs for the same font.
16792
16793         * gdk/win32/gdkprivate.h: Add the names field as in the X11
16794         version.
16795
16796 1999-10-11  ERDI Gergo  <cactus@cactus.rulez.org>
16797
16798         * gdk/gdk.c (gdk_beep): Modified the XBell call to use the default
16799         X values
16800
16801 1999-10-09  ERDI Gergo  <cactus@cactus.rulez.org>
16802
16803         * gtk/gtktoolbar.h, gtk/gtktoolbar.c: Added horizontal icon/text
16804         layout support (as mentioned on
16805         http://www.jcinteractive.com/gnome-ui/software/widgets/)
16806
16807 Wed Oct  6 12:46:17 PDT 1999 Manish Singh <yosh@gimp.org>
16808
16809         * gtk/fnmatch.c
16810         * gtk/gtkfilesel.c: s/G_HAVE_CYGWIN/G_WITH_CYGWIN/
16811
16812 1999-10-05  Jesus Bravo Alvarez  <jba@pobox.com>
16813
16814         * configure.in (ALL_LINGUAS): Added Galician (gl)
16815
16816 1999-10-05  Tor Lillqvist  <tml@iki.fi>
16817
16818         * gdk/win32/*.[ch]: Corresponding changes as in X11 backend.
16819
16820         * gdk/win32/gdkcompat.c: New file, actually provide an
16821         implementation for the deprecated functions. (Just temporarily.)
16822
16823         * gtk/gtkfilesel.c: Fix an #ifdef syntax botch.
16824
16825         * gtk/makefile.{cygwin,msc}: Update gdk_headers.
16826
16827         * gdk/win32/gdk.def gtk/gtk.def: Updates.
16828
16829 1999-10-05  Kjartan Maraas  <kmaraas@online.no>
16830
16831         * configure.in: Added "uk" to ALL_LINGUAS.
16832         
16833 Mon Oct  4 11:57:11 PDT 1999 Manish Singh <yosh@gimp.org>
16834
16835         * configure.in: correct checking for BeOS check
16836
16837         * gdk/gdktypes.h
16838         * gtk/fnmatch.c
16839         * gtk/gtkfilesel.c
16840         * gtk/gtkitemfactory.c
16841         * gtk/gtkmain.[ch]
16842         * gtk/gtkrc.c: use G_OS_WIN32 and G_HAVE_CYGWIN #defines
16843
16844 Mon Oct  4 16:16:53 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
16845
16846         * gtk/gtkrc.{bg,iso88591[345]}: add gtkrc files for some new charset
16847         encodings: iso-8859-13 (for Lithuanian), iso-8859-14 (used by celtic
16848         languages), iso-8859-15 (used in Estonia) and microsoft-cp1251 (used
16849         by Bulgarian). 
16850
16851 Sun Oct  3 18:13:44 1999  Owen Taylor  <otaylor@redhat.com>
16852
16853         * gtk/gtkwidget.c (gtk_reset_shapes_recurse): 
16854         Fix a reference to window_private->destroyed.   
16855
16856         * gtk/gtkplug.c (gtk_plug_realize): Fix up a direct
16857         (ugly) setting of an internal GdkWindow member to use
16858         a _slightly_ cleaner macro.
16859
16860         * gdk/gdkprivate.h: Split GdkWindowPrivate into
16861         GdkDrawablePrivate and GdkWindowPrivate.
16862         Add extra macros for accessing GDK_DRAWABLE_ components.
16863
16864         * *.[ch]: Massive adjustments for the above, use the
16865         new macros in a lot of places.
16866
16867 Sun Oct  3 15:16:24 1999  Owen Taylor  <otaylor@redhat.com>
16868
16869         * gdk/gdktypes.h: Make GdkDrawable the base type,
16870         not GdkWindow.
16871
16872 Sun Oct  3 15:08:44 1999  Owen Taylor  <otaylor@redhat.com>
16873
16874         * gdk/gdkdraw.c (gdk_drawable_get_data): Added new function.
16875
16876 Sun Oct  3 14:26:15 1999  Owen Taylor  <otaylor@redhat.com>
16877
16878         * gdk/gxid* gdk/x11/gxid*: Move files into x11 subdirectory.
16879
16880 Sun Oct  3 14:16:23 1999  Owen Taylor  <otaylor@redhat.com>
16881
16882         * gdk/gdkdrawable.h: Include gdk/gdkdrawable.h with
16883         gdk/ prefix. (Pointed out by chak@is.tsukuba.ac.jp)
16884
16885         * configure.in gdk/Makefile.am x11/: create x-specific subdirectory.
16886
16887         * docs/gtk-config.1: Now autogenerated.
16888         * docs/Changes-1.4.txt: started
16889         
16890 1999-10-03  Tor Lillqvist  <tml@iki.fi>
16891
16892         * gdk/gdkimage.h gdk/gdkpixmap.h: Change GDK_WINDOWING_WIN32 usage
16893         to #ifdef also here.
16894
16895         * gdk/win32/*.h gdk/win32/*.c: Make corresponding changes as those
16896         Owen did to the X11 backend.
16897
16898         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Fix it again, don't use
16899         ScrollWindowEx when blitting inside a window, it can't be correct
16900         in the general case.
16901
16902         * gdk/win32/gdkevents.c: Don't handle WM_SIZING, handling
16903         WM_GETMINMAXINFO is easier.
16904
16905         * gdk/win32/gdkimage.c (gdk_image_new): Create new image with
16906         depth equal to the bitspixel value, not the visual's depth.
16907
16908         * gdk/win32/gdkvisual.c (gdk_visual_init): Set the visual's depth
16909         to 24 even if the bitspixel value is 32.
16910
16911         * gdk/gdkrgb.c (gdk_rgb_select_conv): After the above change, no
16912         need to check for depth==32 when bpp==32, depth will always be 24.
16913
16914 Fri Oct  1 18:03:36 1999  Owen Taylor  <otaylor@redhat.com>
16915
16916         * docs/Changes-1.4.txt: Started
16917         
16918         * gtk/Makefile.am (gdk_headers): Include all the new headers.
16919
16920         * gdk/*.h gdk/*.c: Split gdk.h into lots of itty-bitty little pieces.
16921         
16922         * gdk/gdkprivate.h gdk/gdkcc.c: Moved GdkColorContext private
16923         into C file.
16924         
16925         * gdkinput.h gdkinputprivate.h - renamed the internal gdkinput
16926         header to gdkinputprivate.h.
16927
16928         * gdk/gdk.h gdk/gdk.c: Removed gdk_time* functions which have been
16929         unused since before 1.2.
16930
16931 1999-09-30  Tor Lillqvist  <tml@iki.fi>
16932
16933         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): On Win32,
16934         expand possible hex escapes in the font family (put there by
16935         logfont_to_xlfd if the font name isn't a legal XLFD font family,
16936         mainly if it contains slashes). (gtk_font_selection_create_xlfd):
16937         On Win32, add hex escapes here, too.
16938
16939 Wed Sep 29 19:55:35 1999  Owen Taylor  <otaylor@redhat.com>
16940
16941         * */*.[ch]: Changed from #if GDK_WINDOWING == GDK_WINDOWING_X11
16942         to #ifdef GDK_WINDOWING_X11.
16943
16944 [ Merges from gtk-1-2 ]
16945
16946 Wed Sep  8 07:13:29 1999  Tim Janik  <timj@gtk.org>
16947
16948         * configure.in: fixed "GNU Make" check to pass with new make version
16949         3.77.95.
16950
16951 Fri Sep  3 16:04:41 1999  Tim Janik  <timj@gtk.org>
16952
16953         * gtk-config.in (--version): don't echo @GTK_VERSION@, but
16954         @GTK_MAJOR_VERSION@.@GTK_MINOR_VERSION@.@GTK_MICRO_VERSION@, so the
16955         AM_PATH_GTK() macros don't get confused by the -pre1.
16956
16957 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
16958
16959         * configure.in (REBUILD): Change check for perl5
16960           to check explicitely for v >= 5.002. (5.001
16961           does not work with our scripts.)
16962
16963 Wed Aug 25 15:45:46 1999  Tim Janik  <timj@gtk.org>
16964
16965         * configure.in: evaluate $PERL for the perl version check. added
16966         --disable-rebuilds to give the user an option to completely disable
16967         any source autogeneration rules.
16968
16969 Mon Aug 23 23:16:14 1999  Tim Janik  <timj@gtk.org>
16970
16971         * configure.in: evaluate $ac_make when checking for GNU Make.
16972
16973 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
16974
16975         * docs/Makefile.am: added generation.txt.
16976
16977         * Makefile.am: require automake 1.4, build README from README.in and
16978         INSTALL from INSTALL.in in dist-hook.
16979         
16980         * README.in:
16981         * INSTALL.in: new files to autogenerate README and INSTALL from.
16982
16983         * configure.in: figure whether we have GNU Make
16984
16985         * docs/generation.txt: minor additions/corrections.
16986
16987 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
16988
16989         * docs/gtkfaq.sgml: FAQ Update
16990
16991 July 30, 1999 Elliot Lee <sopwith@redhat.com>
16992         
16993         * configure.in: Fix autoconf warnings about cross compilation by
16994         trying to provide sane defaults for AC_TRY_RUN.
16995
16996 Fri Jul 16 22:20:21 PDT 1999 Manish Singh <yosh@gimp.org>
16997
16998         * ltconfig
16999         * ltmain.sh: upgrade to libtool 1.3.3
17000
17001 Thu Jul  8 11:30:18 1999  Owen Taylor  <otaylor@redhat.com>
17002
17003         * INSTALL: Indicate that the --with-glib= configure
17004         time flag is unsupported.
17005
17006 Mon Jul  5 20:36:03 1999  Owen Taylor  <otaylor@redhat.com>
17007
17008         * docs/generation.txt: Added a file that gives
17009         documenation about the autogeneration process for
17010         various autogenerated files.
17011         
17012 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
17013
17014         * configure.in (LIBS): Look for libgmodule in the
17015         right location.
17016
17017 Thu Jun 17 13:57:31 1999  Owen Taylor  <otaylor@redhat.com>
17018
17019         * docs/gtk_tut.sgml: Removed references to
17020         code examples in my directory on gtk.org as
17021         they should all be in the tutorial now.
17022
17023         * docs/gtk_tut.sgml: Added sources for dial-test
17024         and scribble-xinput programs that were previously
17025         missing.
17026
17027 Fri Jun  4 00:08:59 1999  Owen Taylor  <otaylor@redhat.com>
17028
17029         * TODO: Added entry about menu keyboard navigation, removed
17030         some finished items.
17031
17032 Mon May 31 00:11:24 1999  Owen Taylor  <otaylor@redhat.com>
17033
17034         * acinclude.m4: Standardize on func_dgettext
17035         not func_gettext, so that the checks for dgettext
17036         actually are paid attention to.
17037
17038 Wed May  5 10:47:54 1999  Owen Taylor  <otaylor@redhat.com>
17039
17040         * configure.in (LIBS): Add $INTLLIBS into $LIBS
17041         directly, rather than repeating the checks for
17042         gettext.
17043
17044         * INSTALL: Added information about gettext and
17045         NLS support.
17046
17047         * acinclude.m4 (LIBM): Check for dgettext, not
17048         just gettext. This should hopefully fix things wrt
17049         systems with old versions of GNU gettext installed.
17050
17051 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
17052
17053         * configure.in (LIBS): Look for libgmodule in the
17054         right location.
17055
17056 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
17057
17058         * autogen.sh: add --enable-maintainer-mode
17059
17060         * configure.in: set ACLOCAL="$ACLOCAL $ACLOCAL_FLAGS"
17061
17062 Wed Mar 24 23:03:49 CST 1999 Shawn T. Amundson <amundson@gtk.org>
17063
17064         * docs/gtk-config.1.in:
17065           docs/Makefile.am:
17066           configure.in: gtk-config is now generated.
17067
17068         * docs/gtk-config.1: Removed, now generated.
17069
17070 Thu Sep 23 17:59:59 1999  Tim Janik  <timj@gtk.org>
17071
17072         * gdk/gdkevents.c (gdk_event_translate): grr, even if Gdk doesn't
17073         handle CreateNotify itself, still put out a debuging message for
17074         --gdk-debug=events. made the ReparentNotify debugging message more
17075         verbose.
17076         wrap xcoords translation for ConfigureEvents into an error trap,
17077         a destroy event may already be pending, and in that case, the
17078         actuall coordinate values are not at all critical.
17079
17080 Sat Sep 18 22:24:15 1999  Owen Taylor  <otaylor@redhat.com>
17081
17082         * gdk/gdkcc.c: Stop leaking the color_hash all over
17083         the place. Simplify and improve the logic.
17084
17085 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
17086
17087         * gdk/gdk.h, gdk/gdkcolor.c: make return types (gint or gboolean)
17088         for prototypes and function implementations consistent (reported
17089         by Tomas Ogren).
17090
17091 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
17092
17093         * gdk/gdkevents.c (gdk_event_translate): tell if expose events have
17094         send_event set in debugging output.
17095         (gdk_compress_exposures): default initialize the event so we don't
17096         operate on bogus values (namely send_event).
17097
17098 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
17099
17100         * gdk/gdkwindow.c: When we receive an unexpected
17101         destroy notify on one of our windows, don't just
17102         warn about it, also mark our windows as destroyed.
17103
17104 Sun Sep  5 08:10:53 1999  Owen Taylor  <otaylor@redhat.com>
17105
17106         * gdk/gdkfont.c (gdk_font_hash_insert): Add
17107           name => font and name => fontset hashes. The 
17108           name => fontset hash is a _big_ win since we
17109           weren't previously caching fontsets at all and loading
17110           fontsets is expensive. The name => font hash
17111           is less of a win, but it does save us from doing
17112           repeated XQueryFont calls on the same font.
17113
17114         * gdk/gdkprivate.h (struct _GdkFontPrivate): Add a names
17115           list so we can remove font/fontset from hash.
17116
17117 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
17118
17119         * gdk/gdkproperty.c (gdk_atom_intern): Remove useless
17120           and slightly confusing test. [ XInternAtom (,,TRUE)
17121           will never return None ].
17122
17123 Sat Sep  4 08:39:26 1999  Owen Taylor  <otaylor@redhat.com>
17124
17125         * gdk/gdkwindow.c (gdk_window_set_geometry_hints)
17126           gdk/gdkwindow.c (gdk_window_set_hints):
17127
17128         Don't omit setting the properties if flags == 0 -
17129         there may be an existing set of properties there
17130         already. (Very old bug. Would it be better to
17131         delete the property instead?)
17132
17133         * gdk/gdkselection.c (gdk_selection_property_get): Fix 
17134           spelling error in comment.
17135
17136 Wed Sep  1 14:05:30 1999  Owen Taylor  <otaylor@redhat.com>
17137
17138         * gdk/gdkimage.c (gdk_image_new): Use gdk_error_trap_push()
17139           to avoid stomping over gdk_error_warnings.
17140
17141         * gdk/gdkimage.c (gdk_image_new): compute image->bpp
17142           as (bits_per_pixel + 7) / 8. This gives the same
17143           result as before for multiples of 8, but actually
17144           a "reasonable" value for 1bit or 4bit displays.
17145
17146 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
17147
17148         * gdk/Makefile.am: minor cleanups, strip spaces on build rules for
17149         GNU Make.
17150
17151 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
17152
17153         * gdk/gdkevents.c (gdk_event_translate): give a debugging note when
17154         discarding configure events.
17155
17156 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
17157
17158         * gdk/gdkpixmap.c (gdk_pixmap_unref): g_return_if_fail() the
17159         refcount is greater than zero.
17160
17161         * gdk/gdkwindow.c (gdk_window_unref): Likewise.
17162
17163         * gdk/gdkfont.c (gdk_font_unref): Likewise.
17164
17165         * gdk/gdkgc.c (gdk_gc_unref): Likewise.
17166
17167         * gdk/gdkdnd.c (gdk_drag_context_unref): Likewise.
17168
17169 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
17170
17171         * gdk/gdkproperty.c (gdk_property_get): Fix assumption
17172         that format 32 => sizeof(item) == 4. It really is
17173         sizeof(long).
17174
17175 Tue Jun 29 23:02:42 1999  Owen Taylor  <otaylor@redhat.com>
17176
17177         * gdk/gdk.c (gdk_x_error / gdk_x_io_error): Don't
17178         core dump at all on X IO errors, only core dump
17179         if --enable-debug for X errors.
17180
17181 Thu Jun 24 17:06:23 1999  Tim Janik  <timj@gtk.org>
17182
17183         * gdk/gdkevents.c (gdk_event_translate): removed old ""Got event for
17184         unknown window:" message. disabled ConfigureNotify discarding code,
17185         because it led to events being processed out of order.
17186
17187 Thu Jun 24 12:22:02 1999  Tim Janik  <timj@gtk.org>
17188
17189         * gdk/gdkglobals.c: preinitialize gdk_error_code to 0.
17190
17191         * gdk/gdkevents.c (gdk_event_send_client_message_to_all_recurse): since
17192         we export this function, supress error warnings and don't reset the
17193         error code in the first half of this function.
17194
17195         * gdk/gdk.c (gdk_x_error): set gdk_error_code to the actuall X error
17196         code (instead of just -1) so gdk_error_trap_pop() reveals something
17197         actually informative about the error that happened.
17198
17199         * gdk/*.c:
17200         don't rely on gdk_error_code being -1 if an error occoured, but just
17201         gdk_error_code != 0.
17202
17203 Thu Jun 24 11:50:07 1999  Tim Janik  <timj@gtk.org>
17204
17205         * gdk/gdkevents.c (gdk_event_apply_filters): advance the filter list
17206         pointer *before* invoking the filter function, so we at least don't
17207         crash if a filter is removed that is currently executed. window filters
17208         *really* need to be made truely reentrant at some point.
17209
17210 Mon Jun 14 11:10:15 1999  Tim Janik  <timj@gtk.org>
17211
17212         * gdk/gdkevents.c (gdk_event_translate): print the atom name in the
17213         PropertyNotify debug messages.
17214
17215 Wed May  5 22:51:06 1999  Owen Taylor  <otaylor@redhat.com>
17216         
17217         Patch from Sung-Hyun Nam <namsh@lgic.co.kr>
17218         
17219         * gdk/gdkim.c: Fix cut-and-paste errors for 
17220         x/y and PreeditAttributes/StatusAttributes.
17221
17222 Wed May  5 22:24:21 1999  Owen Taylor  <otaylor@redhat.com>
17223
17224         * gdk/gdkwindow.c (gdk_window_set_geometry_hints): Change
17225         G_MAXINT to 2^16 to alleviate overflow problems in
17226         various window managers.
17227
17228 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
17229
17230         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
17231         for fontsets.
17232
17233 Wed May  5 12:42:01 1999  Owen Taylor  <otaylor@redhat.com>
17234
17235         * gdk/gdkwindow.c (gdk_window_set_geometry_hints):
17236         Initialize size_hints.x and size_hints.y because kwm
17237         brokenly pays attention to them.
17238         (Bug #1181 -  Lars Heete <hel@admin.de>)
17239
17240 Wed May  5 11:38:56 1999  Owen Taylor  <otaylor@redhat.com>
17241
17242         * gdk/gdkrgb.c (gdk_rgb_choose_visual): Free the 
17243         return value of gdk_list_visuals(). 
17244         (Bug #1193 - Morten Welinder <terra@diku.dk>)
17245
17246 Tue May  4 11:12:56 PDT 1999 Manish Singh <yosh@gimp.org>
17247
17248         * gdk/gdkim.c (gdk_im_real_open): cast the return value of
17249         XSetIMValues to (void *) when comparing to NULL, to workaround
17250         the problem of some compilers barfing since older X headers don't
17251         have the prototype for it.
17252
17253 Mon Apr 19 10:11:12 1999  Owen Taylor  <otaylor@redhat.com>
17254
17255         * gdk/gdkcolor.c (gdk_colormap_new): Fix memory leak
17256         for pseudocolor where colormap->colors was double
17257         allocated.
17258
17259         * gdk/gdkcolor.c (gdk_colormap_alloc1): Store the
17260         color value in the hash table with the pixel filled
17261         in so when we do later hash table lookups, the color
17262         value is correct.
17263         
17264 Sun May  2 15:29:45 PDT 1999 Manish Singh <yosh@gimp.org>
17265
17266         * gdk/gdkdraw.c (gdk_draw_lines): check private->destroyed before
17267         making the call
17268
17269 Tue Apr 27 11:17:35 1999  Owen Taylor  <otaylor@redhat.com>
17270
17271         * gdk/gdkdnd.c (xdnd_set_{targets,actions}): Fix leak
17272         pointed out by Morten Welinder <terra@diku.dk>.
17273
17274 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
17275
17276         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
17277           default filter from the list
17278
17279 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
17280
17281         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
17282           default filter from the list
17283
17284 Fri Apr 16 20:41:43 PDT 1999 Manish Singh <yosh@gimp.org>
17285
17286         * gdk/gdk.c: #include "gdkkeysyms.h" for gdk_XConvertCase #defines
17287
17288         * gtk/gtkfontsel.c (gtk_font_selection_create_xlfd): use
17289         g_strdup_printf instead of calcing the length separately
17290
17291 Tue Apr 13 02:49:33 1999  Owen Taylor  <otaylor@redhat.com>
17292
17293         * gdk/gdkwindow.c: removed some silly #ifdef HAVE_CONFIG
17294         that we don't do in many other places. (Fixing duplicate 
17295         #include of config.h)
17296
17297         * gdk/gdkevents.c: include gdkinput.h _after_ config.h.
17298         Otherwise, #ifndef XINPUT_NONE check in the latter
17299         doesn't work. (Bug #546)
17300
17301 Sun Apr 11 14:38:03 1999  Tim Janik  <timj@gtk.org>
17302
17303         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): check for color
17304         "None" case insensitive.
17305
17306 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
17307
17308         * gdk/gdkselection.c: 
17309         Add error traps so if the other end of the connection
17310         dies, we survive.
17311
17312 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
17313
17314         * gdk/gdkdnd.c (gdk_drag_motion): Separate out the
17315         dest_xid field into two fields - one for the window
17316         to send in messages, one to indicate the last looked
17317         up window for caching purposes. This is needed, so
17318         that Leave messages get the correct window.
17319
17320 Mon Apr  5 13:21:30 1999  Owen Taylor  <otaylor@redhat.com>
17321
17322         * gdk/gdkevents.c (gdk_event_check, gdk_event_prepare):
17323         Fix warning created by people mucking around
17324         with the gsource API.
17325
17326         * gdk/gdkevents.c (gdk_io_invoke, gdk_input_add_full):
17327         Change mapping between GIOCondition and GdkInputCondition
17328         to match the way the Linux kernel does it. This should
17329         fix problems where closed pipes were no longer signalling
17330         GDK_INPUT_READ on systems with a native poll().
17331
17332 Mon Apr  5 17:11:57 1999  Owen Taylor  <otaylor@redhat.com>
17333
17334         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): Check 
17335         explicitly for the string "None" - it is in the XPM
17336         spec and some servers treat unknown colors in odd ways
17337         (like asking the user!)
17338
17339 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
17340
17341         * gdk/gdkevents.c: made "->" into a "." of previous change so
17342         it compiles
17343
17344 Thu Apr  1 18:41:25 1999  Owen Taylor  <otaylor@redhat.com>
17345
17346         * gdk/gdkevents.c (gdk_compress_exposures): Set the
17347         window field of the event structure before calling
17348         user filters.
17349
17350 1999-03-31  Federico Mena Quintero  <federico@nuclecu.unam.mx>
17351
17352         * gdk/gdk.c (gdk_init_check): Use False as the last argument to
17353         XInternAtom() here.  This is a particularly Old And Nasty(tm) bug.
17354
17355 Mon Mar 29 17:31:52 1999  Owen Taylor  <otaylor@redhat.com>
17356
17357         * gdk/gdkim.c (gdk_mbstowcs): Free the value of the
17358         intermediate text property - prevents major memory
17359         leak when gdk_use_mb.
17360         gtk-d3august-990311-0: Bj|rn Augustsson <d3august@dtek.chalmers.se>
17361
17362 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
17363
17364         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
17365         gtk-a-higuti-990322-[0-3]
17366
17367         * gdk/gdkfont.c (gdk_text_extents_wc): Make  work when
17368         sizeof(wchar_t) != sizeof (GdkWChar)
17369
17370         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
17371         that was causing -DX_LOCALE not to work.
17372
17373         * gtk/gtkrc.c (gtk_rc_init):
17374         X_LOCALE will never have LC_MESSAGES defined
17375
17376         * gdk/gdk.c (gdk_init_check):
17377         Remove --xim-preedit and --xim-status from argv properly.
17378
17379         * gdk/gdkim.c (gdk_ic_real_new): Add a gdk_flush() so
17380         that the client window is present on the X server
17381         before we pass it to the input method.
17382
17383 Tue Mar  9 10:46:49 1999  Owen Taylor  <otaylor@redhat.com>
17384
17385         * gdk/gdkdnd.c (motif_find_drag_window): Fix bug where
17386         if --display is specified on the command line, than
17387         the drag window will not be created on that display.
17388         
17389 Tue Mar  9 10:38:24 1999  Owen Taylor  <otaylor@redhat.com>
17390
17391         * gdk/gdkproperty.c (gdk_atom_intern): Fixed bug where
17392         lookups with only_if_exists == TRUE were inserting
17393         bogus values into the atom cache.
17394
17395 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
17396
17397         * gdk/gdkselection.c (gdk_selection_property_get): first XFree(t),
17398         then reset it to NULL.
17399
17400         * gdk/gdkcolor.c:
17401         (gdk_colors_free): 
17402         (gdk_colormap_free_colors): use colormap->colors[in_pixels[i]] as the
17403         key for g_hash_table_remove() in both functions, this prevents us
17404         from accessing possibly uninitialized portions of a GdkColor structure
17405         where we are only interested in its pixel value.
17406
17407 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
17408
17409         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
17410         font hash table, if we have a GdkFontPrivate entry for this font
17411         already, simply increment its reference count, provided by Olaf Dietsche
17412         <olaf.dietsche+list.gtk@netcologne.de>.
17413
17414 1999-09-21  Tor Lillqvist  <tml@iki.fi>
17415
17416         * gdk/win32/gdk.c (gdk_exit_func): Delete the gdk_DC when exiting,
17417         just to be sure.
17418
17419         * gdk/win32/gdkvisual.c (gdk_visual_init): Remove a couple of
17420         unused variables, leftovers from the X11 version.
17421
17422         * gdk/win32/rc/*.cur: Better cursors provided by Bernd Herd.
17423
17424         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): Only
17425         downcase fields on X11.
17426
17427 Mon Sep 20 13:17:39 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
17428         
17429         * configure.in,po/pt_BR.po: added Portuguese Brazilian file from
17430         Alex Sandro Queiroz e Silva <asandro@lcg.dc.ufc.br>
17431
17432 1999-09-17  Tor Lillqvist  <tml@iki.fi>
17433
17434         * gdk/win32/gdk.def: Add gdk_threads_mutex.
17435
17436         * gtk/makefile.msc: Correct path to libintl.
17437
17438         Thanks to Tomi Ollila and Bernd Herd: Fix some inconsistencies in
17439         use of gint vs. int, and gint vs. gboolean in headers and
17440         definitions. Use GtkType for the *_get_type functions. Note that
17441         these changes preserve binary compatibility.
17442
17443         * gdk/gdk.c
17444         * gdk/win32/gdk.c
17445         * gdk/gdk.h: Fix inconsistencies: gint vs int.
17446
17447         * gtk/gtkmain.c
17448         * gtk/gtkclist.c
17449         * gtk/gtkmenufactory.c
17450         * gtk/gtknotebook.c
17451         * gtk/gtkwidget.c: Fix inconsistencies, also gint
17452         vs. gboolean.
17453
17454         * gtk/gtkcolorsel.[ch]
17455         * gtk/gtkcombo.[ch]
17456         * gtk/gtkdrawingarea.[ch]
17457         * gtk/gtkgamma.[ch]
17458         * gtk/gtkhandlebox.[ch]
17459         * gtk/gtkhpaned.[ch]
17460         * gtk/gtkhruler.[ch]
17461         * gtk/gtkplug.[ch]
17462         * gtk/gtkpreview.[ch]
17463         * gtk/gtkruler.[ch]
17464         * gtk/gtksocket.[ch]
17465         * gtk/gtkstatusbar.[ch]
17466         * gtk/gtktoolbar.[ch]
17467         * gtk/gtkvbbox.[ch]
17468         * gtk/gtkvpaned.[ch]
17469         * gtk/gtkvruler.[ch]: Always use type GtkType for the *_get_type
17470         functions.
17471
17472         * gtk/gtkgamma.h: Fix bug, missing () in call of
17473         gtk_gamma_curve_get_type() in GTK_GAMMA_CURVE_CLASS. 
17474
17475 1999-09-14  Tor Lillqvist  <tml@iki.fi>
17476
17477         * gdk/gdkcolor.c (gdk_colormap_new)
17478         * gdk/win32/gdkcolor.c (gdk_colormap_new): Fix memory leak:
17479         colormap->colors was allocated twice.
17480
17481         * gdk/win32/gdk.c: Remove some unused stuff.
17482
17483         * gdk/win32/gdkcolor.c (gdk_colormap_sync): Initialize all of the
17484         colormap.
17485
17486         * gtk/gtkfontsel.c (gtk_font_selection_dialog_get_type)
17487         * gtk/gtklabel.h (gtk_label_get_type)
17488         * gtk/gtktipsquery.c (gtk_tips_query_get_type)
17489         * gtk/gtktypeutils.h (gtk_type_name): : Use GtkType
17490         in a couple of places, not guint.
17491
17492 Fri Sep 10 21:31:00 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
17493
17494         * configure.in,po/et.po: added Estonian language file
17495
17496 Wed Sep  1 14:36:12 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
17497
17498         * configure.in,po/da.po: added Danish file
17499
17500 Sun Aug 29 13:38:59 BST 1999 Tony Gale <gale@gtk.org>
17501
17502         * docs/gtkfaq.sgml: Minor FAQ Update
17503
17504 Sat Aug 28 14:34:37 BST 1999 Tony Gale <gale@gtk.org>
17505
17506         * docs/gtkfaq.sgml: FAQ update
17507
17508 1999-08-27  Tor Lillqvist  <tml@iki.fi>
17509
17510         Win32: Philippe Colantoni <colanton@aris.ss.uci.edu> suggests a
17511         way to get window contents continually refreshed while resizing. I
17512         didn't like the effects myself, so it's not on by default.
17513
17514         * gdk/win32/gdkprivate.h: New flag variable
17515         gdk_event_func_from_window_proc, FALSE by default.
17516
17517         * gdk/win32/gdk.c (gdk_init_check): Set above flag if the
17518         environment variable GDK_EVENT_FUNC_FROM_WINDOW_PROC is set, or we
17519         are passed --gdk-event-func-from-window-proc.
17520
17521         * gdk/win32/gdkevents.c (gdk_WindowProc): If above flag is set,
17522         and we have am event_func, call it instead of enqueing the event.
17523
17524 1999-08-23  Tor Lillqvist  <tml@iki.fi>
17525
17526         * gdk/win32/gdkevents.c (gdk_event_translate): Fix from Simon
17527         Kelley: Set expose_count in GdkEventExposes correctly.
17528
17529         * gdk/win32/gdkwindow.c: Remove dead code (#ifdef
17530         MULTIPLE_WINDOW_CLASSES).
17531
17532         * gdk/win32/gdkdraw.c (gdk_draw_line): Workaround from Hans Breuer
17533         for bug in NT, apparently NT *does* draw the end pixel, too, in
17534         LineTo with a one-pixel pen, so we don't have to do it ourselves.
17535
17536 1999-08-21  Tor Lillqvist  <tml@iki.fi>
17537
17538         Improvements by Hans Breuer: 
17539
17540         * gdk/win32/gdkwindow.c (RegisterGdkClass): New function
17541
17542         * gdk/win32/gdkwindow.c (gdk_window_new): Use it. Don't set the
17543         CS_?REDRAW flags as they cause lots of (late) redraws when "show
17544         window contents while dragging" is turned on. Allocate at least
17545         one unique class for every GdkWindowType. If support for single
17546         window-specific icons is ever needed (eg. Dialog specific), every
17547         such window should get its own class.
17548
17549 1999-08-19  Tor Lillqvist  <tml@iki.fi>
17550
17551         * gdk/win32/gdkgc.c (gdk_gc_new_with_values): Fix a cut&paste
17552         error that caused crashes.
17553
17554 1999-08-17  Tor Lillqvist  <tml@iki.fi>
17555
17556         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): When blitting inside one
17557         window, use ScrollWindowEx, and call UpdateWindow. This prevents
17558         bugs when for instance part of the window was outside the
17559         display. Thanks to Philippe Colantoni for finding and fixing this.
17560
17561 1999-08-16  Tor Lillqvist  <tml@iki.fi>
17562
17563         * gdk/win32/gdkdraw.c (gdk_draw_arc): Fix start and end radial
17564         endpoint calculations which were totally wrong. (A little RTFMing
17565         helps a lot ;-)
17566
17567         * gtk/makefile.{cygwin,msc}: Use libintl extracted from glibc
17568         from a separate directory, not from gettext, because of licensing
17569         issues (we want to use the LGPL version).
17570
17571         * README.win32: Mention the intl from glibc vs from gettext issue.
17572
17573 1999-08-13  Tor Lillqvist  <tml@iki.fi>
17574
17575         * gdk/win32/gdkevents.c (gdk_event_translate): Fix a couple of bugs
17576         in the key event handling: Now AltGr chars work again. Also,
17577         now Alt-digits are passed up as well as Control-digits.
17578         Pass keypad plus and minus as normal plus and minus.
17579
17580 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
17581
17582         * docs/gtkfaq.sgml: FAQ Update
17583
17584 1999-07-25  Tor Lillqvist  <tml@iki.fi>
17585
17586         * README.win32
17587         * config.h.win32: Add HAVE_WINTAB. Undefine it if bulding without
17588         the Wintab SDK.
17589
17590         * gdk/win32/gdkinput.c: Hack some more. Still doesn't quite work
17591         OK, but getting closer. Guard against bogus tilt data from Wacom
17592         ArtPad II with the 3.40 driver. Add ifdefs for HAVE_WINTAB to
17593         enable easier building without Wintab.
17594
17595         * gdk/win32/gdkinput.h
17596         * gdk/win32/gdkevents.c 
17597         * gdk/win32/gdkwindow.c: Minor changes related related to above.
17598         
17599         * gdk/win32/gdkvisual.c: Simplify a lot, remove leftovers from X11
17600         code. As we have just one visual on Win32, no sense to have it in a
17601         table, and no need for the hash table.
17602
17603         * gdk/win32/rc/cursor*.cur: Edit some of the cursors a bit to look
17604         better on white background.
17605
17606 1999-07-21  Tor Lillqvist  <tml@iki.fi>
17607
17608         * README.win32: Update gcc build instructions. Mention gettext is
17609         GPL.
17610
17611         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Get correct
17612         supported cursor size with GetSystemMetrics.
17613
17614         * gdk/win32/gdkfont.c
17615         * gtk/gtkfontsel.c: Guard against some font weight and charset
17616         symbols being undefined (in mingw32 headers).
17617
17618         * gdk/win32/makefile.cygwin
17619         * gtk/makefile.cygwin
17620         * gtk/gtkthemes.c: No longer need to have differently named
17621         gcc-built DLLs when using gcc-2.95 and -fnative-struct.
17622
17623 hu Jul 15 13:33:15 BST 1999 Tony Gale <gale@gtk.org>
17624
17625         * docs/gtkfaq.sgml: Long awaited FAQ update.
17626
17627 1999-07-15  Tor Lillqvist  <tml@iki.fi>
17628
17629         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Implement
17630         it. Obscure bit manipulation needed.
17631
17632         * gdk/win32/gdkevents.c: Logging.
17633         
17634         * gtk/gtkthemes.c (gtk_theme_engine_get): (Win32) Use new DLL naming
17635         style (file name include compiler name) for theme engines.
17636
17637 1999-07-13  Tor Lillqvist  <tml@iki.fi>
17638
17639         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Less logging verbiage.
17640
17641         * gdk/win32/gdkevents.c: Fix long-standing bug in key
17642         events. The key.string wasn't zero-terminated, still we strdup'ed
17643         it in gdk_event_copy(). Synthesize crossing events for button
17644         events before possible propagation.
17645
17646         * gdk/win32/gdkwindow.c: Log gdk_window_set_title.
17647
17648         * gdk/win32/makefile.cygwin
17649         * gtk/makefile.cygwin: Use new DLL naming style for the
17650         GCC-compiled ones.
17651
17652         * gdk/win32/makefile.msc
17653         * gtk/makefile.msc: Cosmetics mostly.
17654
17655         * gtk/gtk.def: Add missing entry points.
17656
17657         * gtk/gtksocket.c: Add dummy gtk_socket_get_type() for Win32.
17658
17659 1999-07-09  Tor Lillqvist  <tml@iki.fi>
17660
17661         * gdk/win32/gdkdraw.c (gdk_draw_arc): Don't draw anything if width
17662         or height is zero. Don't print a warning if Pie or Arc fails, they
17663         always fail (?) for very narrow ellipses.
17664
17665         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Call InvalidateRgn for
17666         the part or the destination window corresponding to source area
17667         outside of the source drawable's boundary.
17668
17669         * gdk/win32/gdkdraw.c (gdk_draw_lines, gdk_draw_polygon): Don't do
17670         anything if less than two points.
17671
17672         * gdk/win32/gdkselection.c (gdk_selection_owner_get): Always
17673         return NULL. Gtk cut-and-paste inside a single program works
17674         better this way. (It always gets the clipboard contents from
17675         Windows, not from its own copy, which is cleared anyway. I can't
17676         say I fully understand what happens... Emulating the X selection
17677         and property stuff is a bit of a mess.)
17678
17679         * gdk/win32/gdkevents.c
17680         * gdk/win32/gdkproperty.c: A bit more verbose logging.
17681
17682         * gdk/win32/gdkregion.c: Fix some memory leaks (temporary regions
17683         that never got deleted). Revamp gdk_region_shrink.
17684
17685         * gdk/win32/gdkregion.c: Fix memory leak, delete temporary regions
17686         after use.
17687
17688         * gtk/gtk.def: Add some missing entry points.
17689
17690         * gtk/gtkrc.c: Strip trailing directory separator from pixmap path
17691         component.
17692
17693 1999-07-04  Tor Lillqvist  <tml@iki.fi>
17694
17695         * gdk/win32/gdkevents.c (gdk_event_translate): Handle
17696         Control-digits specially.
17697
17698 1999-07-03  Tor Lillqvist  <tml@iki.fi>
17699
17700         * gtk/makefile.{cygwin,msc}: New pthreads version. Use gettext.
17701
17702 1999-06-28  Tor Lillqvist  <tml@iki.fi>
17703
17704         * gdk/win32/gdkimage.c (gdk_image_get): bpl was set wrong for
17705         bitmaps, should be multiple of 4. (Thanks to Hans Breuer for
17706         finding this.)
17707
17708 1999-06-01  Jose H Mercado  <jmercado@mit.edu>
17709
17710         * gtk+.spec.in: Corrected some typos in files section.
17711         
17712 1999-06-15  Tor Lillqvist  <tml@iki.fi>
17713
17714         * README.win32: Mention using GNU gettext.
17715         * config.h.win32: Enable NLS stuff.
17716         * gtk/makefile.msc: Use GNU gettext.
17717         * gdk/win32/gdkdnd.c: Minor header reorg.
17718         * gdk/win32/{gdkevents,gdkwindow}.c: No semantic changes, mainly
17719         cosmetics.
17720         * gtk/gtkrc.c (Win32): Make get_gtk_sysconf_directory() public.
17721         * gtk/gtkmain.c (Win32): Use it in bindtextdomain() call.
17722
17723 Wed Jun  2 11:44:25 PDT 1999 Manish Singh <yosh@gimp.org>
17724
17725         * acinclude.m4
17726         * config.guess
17727         * config.status
17728         * ltconfig
17729         * ltmain.sh: upgrade to libtool 1.3.2 (BeOS changes merged)
17730
17731 1999-05-30  Tor Lillqvist  <tml@iki.fi>
17732
17733         * gdk/win32/gdkwindow.c: AdjustWindowRectEx2 renamed to
17734         SafeAdjustWindowRectEx. Don't override all calls to
17735         AdjustWindowRectEx by it, but use it only in two places: When
17736         creating a new top-level window and when moving a top-level
17737         window.
17738
17739         Use screen coordinate rectangle, not client rectangle, in
17740         gdk_window_move. Thus SafeAdjustWindowRectEx will do its job only
17741         when we try to place a window so that the decoration (mainly,
17742         title bar) isn't visible.
17743
17744         These changes fix the bug that showed up for instance as the
17745         GIMP's saved top-level windows moving right and down (by an amount
17746         equal to the window decoration) for each session. This bug showed
17747         up also in testgtk's "Saved Position".
17748
17749         gdk_window_resize also redone a bit.
17750
17751 1999-05-25  Tor Lillqvist  <tml@iki.fi>
17752
17753         * gtk/testgtkrc: Add (commented out) Windows-style theme
17754         include line.
17755
17756         * gdk/win32/gdk.def,gtk/gtk.def: Add some missing entry points.
17757
17758 1999-05-18  Tor Lillqvist  <tml@iki.fi>
17759
17760         * gdk/win32/makefile.{cygwin,msc}: Copy our gdkprivate.h and
17761         gdkx.h to a gdk subdirectory, so that applications can include
17762         these with <gdk/*.h> without trouble.
17763
17764         * gdk/win32/gdkimage.c (gdk_image_new_with_depth): Code simplified.
17765         (gdk_image_destroy): Plug resource leak, some GdkImages didn't
17766         have their bitmap destroyed.
17767
17768         * gdk/win32/gdk.def: Add gdk_root_parent.
17769
17770 Wed May 12 03:00:56 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
17771
17772         * configure.in
17773           gtk-config.in
17774           ltconfig
17775           ltmain.sh     
17776           gtk/Makefile.am: changes to compile nicely (with xlib) 
17777           on BeOS
17778
17779 Sat May  1 15:04:42 PDT 1999 Manish Singh <yosh@gimp.org>
17780
17781         * acinclude.m4
17782         * config.guess
17783         * config.sub
17784         * ltconfig
17785         * ltmain.sh: upgrade to libtool 1.3
17786
17787 Fri Apr 30 13:38:16 1999  Lars Hamann  <lars@gtk.org>
17788
17789         * gtk/gtkclist.c:
17790         * gtk/gtkctree.c: merges from gtk-1-2
17791
17792 1999-04-25  Tor Lillqvist  <tml@iki.fi>
17793
17794         Support added for building using a GNU toolchain on Win32,
17795         gcc -mno-cygwin (egcs-1.1.2) on cygwin-b20.1.
17796
17797         * gdk/win32/makefile.cygwin gtk/makefile.cygwin: New files.
17798         * config.h.win32: Changes for gcc.
17799         * gdk/gdkrectangle.c: Include gdk.h as <gdk/gdk.h>.
17800         * gdk/gdkcolor.c: config.h.win32 already defines strcasecmp.
17801         * gdk/win32/gdkconfig.h: Only the MS compiler has wctype.h.
17802         * gdk/win32/gdkdnd.c: Protect (unused) OLE2 stuff better.
17803         Protect shl stuff unavaiilable with mingw32 headers.
17804         * gdk/win32/gdkevents.c: Fix typo.
17805         * gdk/win32/gdkglobals.c: Use GDKVAR here also for gcc.
17806         * gdk/win32/gdkim.c: Use OEM code page for multibyte chars. (?)
17807         * gdk/win32/gdkinput.c: Use __try __except only with the MS compiler.
17808         * gdk/win32/gdkprivate.h: Make up for some stuff missing from
17809         the mingw32 headers.
17810         * gdk/win32/makefile.msc: Use latest Wintab kit and glib.
17811         * gtk/gtkfilesel.c: Include <glib.h> early, to get stat->_stat
17812         definition on Win32. Test for NATIVE_WIN32, not _MSC_VER.
17813         * gtk/gtkfontsel.c: Protect CHARSET redefinition on Win32.
17814         Test for NATIVE_WIN32, not _MSC_VER.
17815         * gtk/gtkmain.c: No use warning about developer version on Win32,
17816         there aren't any non-developer versions anyhow.
17817         * gtk/gtkrc.c: Test for NATIVE_WIN32, not _MSC_VER.
17818         * gtk/makefile.msc: Use pthread from another directory. Minor other
17819         changes. 
17820
17821 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
17822
17823         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
17824           default filter from the list
17825
17826 Mon Mar  8 12:52:53 1999  Owen Taylor  <otaylor@redhat.com>
17827
17828         * gtk/gtkwidget.c (gtk_widget_grab_default): Add a warning
17829          when gtk_widget_grab_default() is called for a widget that
17830          is not within a GtkWindow.
17831
17832 Sat Apr 10 13:52:54 BST 1999  Tony Gale <gale@gtk.org>
17833
17834         * docs/gtk_tut.sgml, examples/clist.c: use a
17835           scrolled window in the clist example. Minor
17836           tutorial fixes.
17837
17838 Fri Apr  2 09:19:20 BST 1999  Tony Gale <gale@gtk.org>
17839
17840         * docs/gtk_tut.sgml: Style check from David King
17841           <dking@youvegotmail.net>
17842
17843 1999-03-30  Pavel Machek  <pavel@artax.karlin.mff.cuni.cz>
17844
17845         * gtk/gtkfontsel.c (gtk_font_selection_get_fonts): Make code
17846         compile with unknown value of GDK_WINDOWING
17847
17848 1999-03-28  Raja R Harinath  <harinath@cs.umn.edu>
17849
17850         * gdk/Makefile.am (gdkconfig.h): Make sure `gdkconfig.h' exists
17851         after the rule is fired.
17852         (install-exec-local): Install gdkconfig.h only if the contents are
17853         different from the currently installed gdkconfig.h.
17854
17855 1999-03-26  Raja R Harinath  <harinath@cs.umn.edu>
17856
17857         * gdk/Makefile.am (configexecincludedir): Rename from 
17858         configincludedir so that gdkconfig.h will be installed 
17859         as part of `make install-exec'. 
17860
17861 Fri Mar 19 16:50:33 PST 1999 Manish Singh <yosh@gimp.org>
17862
17863         * acinclude.m4
17864         * config.guess
17865         * config.sub
17866         * ltconfig
17867         * ltmain.sh: upgrade to libtool 1.2f
17868
17869         * autogen.sh: libtool is not required to autogen gtk+
17870
17871         * acconfig.h: remove WITH_SYMBOL_UNDERSCORE (not explictly
17872         needed)
17873
17874 1999-03-18  Tor Lillqvist  <tml@iki.fi>
17875
17876         * gdk/gdktypes.h: Merge in Win32 version: Define macro GDKVAR for
17877         declaring gdk variables exported/imported from the DLL. New image
17878         type enum, GDK_IMAGE_SHARED_PIXMAP, for gdk_imlib. New drag and
17879         drop protocol enums, GDK_DRAG_PROTO_WIN32_DROPFILES and
17880         GDK_DRAG_PROTO_OLE2.
17881
17882         * gdk/gdk.h: Merge in Win32 version: Two new functions,
17883         gdk_pixmap_create_on_shared_image and gdk_image_bitmap_new. So far
17884         declared only for the Win32 version, but could be in the X11
17885         version as well. (Needed for a Xlib-less gdk_imlib.)
17886         gdk_color_hash should have only one parameter. Declare
17887         gdk_threads_mutex with GDKVAR.
17888         
17889         * gdk/gdkcolor.c (gdk_color_hash): A hash function should have
17890         just one parameter.
17891
17892         * gdk/gdkimage.c (gdk_image_get): Initialize bpp correctly. Bytes
17893         per pixel, not bits.
17894
17895         * gdk/gdkrgb.c: Mingle includes somewhat. (gdk_rgb_select_conv):
17896         Fetch bpp (which means bits-per-pixel here) from another place on
17897         Win32. Accept also depth==32 (which we might get on Win32) with
17898         bpp==32.
17899
17900         * gtk/{gtkclist,gtkctree,gtkdnd,gtkditable,gtkfontsel,
17901         gtkhandlebox,gtklayout,gtkmain,gtkplug,gtkpreview,gtkrc,
17902         gtkselection,gtksocket,gtkstyle,gtkwidget,gtkwindow}.c:
17903         Include gdx.h from "gdkx.h", not "gdk/gdkx.h", as gdkx.h will be
17904         in the backend-dependent directory, not in the common gdk
17905         directory.
17906
17907         * gtk/testgtk.c: Ditto. Also, don't use ../gdk path to gdk
17908         headers.
17909
17910 Wed Mar 17 05:06:49 1999  Tim Janik  <timj@gtk.org>
17911
17912         * gtk/gtkmain.c (gtk_init_check): tell people that they don't really
17913         want to use the Gtk+ devel version (which is true, and yes - even i am
17914         currently working with the 1.2.x branch). so everyone reading this, you
17915         probably want to issue
17916         cvs checkout -r glib-1-2 glib
17917         and
17918         cvs checkout -r gtk-1-2 gtk+
17919         as your next two comands.
17920
17921 Wed Mar 17 02:49:32 1999  Tim Janik  <timj@gtk.org>
17922
17923         * configure.in: build gtkcompat.h from gtkcompat.h.in instead of
17924         gtkfeatures.h from gtkfeatures.h.in, require GLib 1.3.0.
17925
17926         * gtk/gtkcompat.h.in: combined gtkcompat.h and gtkfeatures.in in this
17927         file. strongly deprecated the GTK_HAVE_* macros, we provide
17928         GTK_CHECK_VERSION() for people that need to check for certain
17929         Gtk+ versions.
17930
17931         * gtk/gtkcompat.h: removed this from CVS.
17932         * gtk/gtkfeatures.h.in: removed this from CVS, gtkfeatures.h was a bad
17933         idea right from the start, it just didn't seem like that back then.
17934
17935 Wed Mar 17 01:46:28 1999  Tim Janik  <timj@gtk.org>
17936
17937         * merges from gtk-1-2:
17938
17939 Tue Mar 16 17:43:33 1999  Tim Janik  <timj@gtk.org>
17940
17941         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc_string): ensure the
17942         item factory class has been created.
17943         (gtk_item_factory_parse_rc): likewise.
17944
17945         * gtk/gtkmenu.c:
17946         keep proper references for old_active_menu_item.
17947         (gtk_menu_reparent): unset the usize of the new parent,
17948         so the menu can sanely be size requested and we don't get nasty screen
17949         artefacts upon next reparentation.
17950         (gtk_menu_motion_notify): set send_event to TRUE if we synthesize an
17951         enter notify. only synthesize enter notifies if the pointer really is
17952         inside the event window.
17953         (gtk_menu_popdown): use gtk_menu_shell_deselect().
17954         (gtk_menu_popup): move the background setting stuff into
17955         gtk_menu_tearoff_bg_copy() so it can be called from other places as well.
17956
17957         * gtk/gtkmenushell.c (gtk_menu_shell_button_press): use
17958         gtk_menu_shell_select_item() to select the new item.
17959         (gtk_menu_shell_deselect): export this function, so gtkmenu.c can
17960         do the right thing for deselection as well.
17961
17962 Sat Mar 15 20:10:33 1999  Tim Janik  <timj@gtk.org>
17963
17964         * gtk/gtkwidget.[hc]:
17965         (gtk_widget_accelerators_locked): return whether a widget's accelerators
17966         are locked.
17967
17968         * gtk/gtkmenu.c (gtk_menu_key_press): don't remove or install new or
17969         existing accelerators if the widget's accelerators are locked.
17970
17971 Sat Mar 14 19:44:05 1999  Tim Janik  <timj@gtk.org>
17972
17973         * gtk/gtkitemfactory.[hc]: allow managing of foreign menu items.
17974
17975         * gtk/gtkmenu.c: truely forward key press and key release events to
17976         the menu widget from the toplevel or tearoff window. we can't simply
17977         connect to that, we need to stop further processing of the events as
17978         well.
17979
17980 Sat Mar 13 13:14:17 1999  Tim Janik  <timj@gtk.org>
17981
17982         * gtk/gtkmenu.c:
17983         (gtk_menu_key_press): pass event->keyval, event->state to
17984         gtk_accelerator_valid, instead of event->keyval twice.
17985         refuse to install single letter accelerators for menus that use
17986         single letter shortcuts.
17987
17988         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): use
17989         gtk_menu_ensure_uline_accel_group().
17990
17991         * gtk/gtkmenu.[hc]: added gtk_menu_ensure_uline_accel_group()
17992         which will always return an uline accel group, made
17993         gtk_menu_get_uline_accel_group() return NULL if the group isn't
17994         yet created.
17995
17996 Mon Mar 15 01:03:27 1999  Lars Hamann  <lars@gtk.org>
17997
17998         * gtk/gtkclist.h (struct _GtkCListColumn): added button_passive flag.
17999
18000         * gtk/gtkclist.c (gtk_clist_column_title_passive):
18001         Leave button sensitive, trap  button_press, button_release,
18002         motion_notify, enter_notify and leave_notify events instead.
18003         (gtk_clist_column_title_active): disconnect event handler.
18004         (gtk_clist_drag_data_get): fixed memory leak. Reported by
18005         Guillaume Laurent <glaurent@worldnet.fr>
18006
18007 Wed Mar 10 23:49:55 1999  Lars Hamann  <lars@gtk.org>
18008
18009         * gtk/gtklayout.c (gtk_layout_adjustment_changed): fixed a few
18010         width/height mixups.
18011
18012         * gtk/gtkctree.c (tree_delete): emit an tree_unselect_row signal
18013         if needed.
18014
18015 Wed Mar 10 00:11:32 1999  Tim Janik  <timj@gtk.org>
18016
18017         * gtk/testgtk.c (create_item_factory): unref the item factory after
18018         window's destruction.
18019
18020         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): keep a reference
18021         count on the menu shell around the menu item's activation, since the
18022         signal emission may cause menu shell destruction.
18023
18024         * gtk/gtkitemfactory.c:
18025         the previous code leaked one accel group per menu. we use
18026         gtk_menu_get_uline_accel_group() now to fix that, and with that
18027         also create the underline accelerator group of the menus only if
18028         required (i.e. an underline accelerator has been specified).
18029         (gtk_item_factory_construct):
18030         (gtk_item_factory_create_item): removed code that would create an
18031         extra accel group for the menu (and leak references).
18032         (gtk_item_factory_create_item): adapted the underline accelerator
18033         installation code to properly feature gtk_menu_get_uline_accel_group().
18034
18035         * gtk/gtkmenu.[hc]: added gtk_menu_get_accel_group() to retrive
18036         menu->accel_group, this may return NULL if the accelerator group
18037         hasn't been set yet.
18038         added gtk_menu_get_uline_accel_group() to retrive the underline
18039         accelerator group of the menu, this will be created on demand
18040         and proper care is taken about its reference count.
18041
18042         * gtk/gtkitemfactory.h:
18043         * gtk/gtkitemfactory.c:
18044         dumped the approach of keeping a widgets by action list on the
18045         factory since the factory<->widget destroy negotiation didn't work
18046         and would be hard to get going at all. instead we keep a list of
18047         GtkItemFactoryItem items on the factory (GtkItemFactoryItems are
18048         persistant throughout a program's life time).
18049         also, i removed the static const gchar *key_* variables, and made
18050         them inline strings (they weren't actually used anyways).
18051         (gtk_item_factory_add_item): update ifactory->items.
18052         (gtk_item_factory_destroy): destroy ifactory->items (and remove
18053         the item factory pointer from the remaining ifactory widgets).
18054         (gtk_item_factory_get_widget_by_action): walk the GtkItemFactoryItem
18055         list to find the widget.
18056         (gtk_item_factory_get_item): new function that works around
18057         gtk_item_factory_get_widget() limitations, this function will only
18058         return menu items, even for <Branch> entries.
18059
18060 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
18061
18062         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
18063         font hash table, if we have a GdkFontPrivate entry for this font
18064         already, simply increment its reference count, provided by Olaf Dietsche
18065         <olaf.dietsche+list.gtk@netcologne.de>.
18066
18067         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
18068         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
18069
18070 Sun Mar  7 06:13:29 1999  Tim Janik  <timj@gtk.org>
18071
18072         * gtk/gtkcontainer.c:
18073         (gtk_container_add_with_args):
18074         (gtk_container_addv):
18075         (gtk_container_add): before adding a child to a conatiner, make sure
18076         it is (default) constructed, this is neccessary because under certain
18077         circumstances the child will get relized and mapped immediatedly, in
18078         which case it has to be constructed already.
18079
18080 Mon Mar  1 17:58:21 1999  Tim Janik  <timj@gtk.org>
18081
18082         * gtk/gtksignal.c (gtk_signal_connect_by_type): count object_signal
18083         values > 1 as TRUE also.
18084
18085 1999-03-16  Tor Lillqvist  <tml@iki.fi>
18086
18087         * README.win32: New file.
18088                 
18089         * configure.in: Check for lstat.
18090
18091         * config.h.win32: Add non-definition of HAVE_LSTAT, just for
18092         completeness.
18093
18094         * gtk/gtkrc.c: If don't HAVE_LSTAT, use stat.
18095
18096         * gtk/gtk.def: Removed CRs.
18097
18098         * gtk/makefile.msc: Correct include path to Win32 GDK version (in
18099         ..\gdk\win32).
18100
18101         * gdk/win32/makefile.msc: Correct upwards relative paths.
18102         
18103 Mon Mar 15 03:38:34 1999  George Lebl  <jirka@5z.com>
18104
18105         * gtk/gtkdnd.c: (gtk_drag_highlight) swap the
18106           gtk_drag_highlight_expose and gtk_drag_highlight_paint since
18107           it was connecting a void function to expose_event and the int
18108           returning function to the draw signal
18109
18110 1999-03-14  Jeff Garzik  <jgarzik@pobox.com>
18111
18112         * configure.in:
18113         Use correct path to libgmodule.la when ref'ing uninstalled copy
18114         of glib.  (Already in stable branch, Bug #417)
18115
18116 1999-03-15  Tor Lillqvist  <tml@iki.fi>
18117
18118         Win32 merge and general portability stuff:
18119                 
18120         * acconfig.h,configure.in: Check for <sys/time.h>.
18121
18122         * gdk/win32: New directory (actually, been there for a while).
18123         
18124         * gtk/fnmatch.c: Include <glib.h> for G_DIR_SEPARATOR, WIN32 and
18125         NATIVE_WIN32, and use these. Always case fold on Win32. No
18126         backslashed escapes on native Win32.
18127
18128         * gtk/{gtk.def,makefile.msc}: New files.
18129
18130         * gtk/Makefile.am: Add above new files.
18131         
18132         * gtk/{gtkaccelgroup,gtkbindings}.c: Include <string.h>
18133         instead of <strings.h>.
18134
18135         * gtk/{gtkcalendar,gtkitemfactory,gtkpreview,gtkrc}.c: Include
18136         config.h. Protect inclusion of <sys/param.h>, <sys/time.h>, and
18137         <unistd.h> appropriately.
18138
18139         * gtk/gtkdnd.c: Merge in Win32 version (which doesn't do much).
18140         Use ABS() (from <glib.h>) instead of abs().
18141         
18142         * gtk/gtkfilesel.c: Moved Win32-specific includes after inclusion
18143         of gtk (and thus glib) headers, so that WIN32 will be
18144         defined. With MS C, include <direct.h> for mkdir prototype.
18145
18146         * gtk/gtkitemfactory.c (gtk_item_factory_callback_marshal): Add
18147         some casts, needed by MS C.
18148
18149         * gtk/{gtklayout,gtkplug}.c: Merge in Win32 version (which isn't
18150         implemented).
18151
18152         * gtk/gtkmain.c: Include gdk/gdkx.h for GDK_WINDOWING. Include
18153         <X11/Xlocale.h> only on X11 platform, otherwise <locale.h>.  Use
18154         G_SEARCHPATH_SEPARATOR_S and g_module_build_path.
18155
18156         * gtk/gtkmain.h: Mark variables for export/import on Win32.
18157                 
18158         * gtk/gtkrange.c (gtk_range_motion_notify): Set mods also in case
18159         the event is not a hint, or its window is not the slider. Needed
18160         on Win32, at least.
18161
18162         * gtk/gtkrc.c: Include config.h and gdk/gdkx.h. Use <locale.h>
18163         unless on X11. Skip \r chars, too. Use G_DIR_SEPARATOR and
18164         G_SEARCHPATH_SEPARATOR(_S). Use g_path_is_absolute. On Win32, use
18165         a subdirectory of the Windows directory as gtk system
18166         configuration directory.
18167
18168         * gtk/gtkselection.c: No chunks on Win32.
18169
18170         * gtk/gtksocket.c: Not implemented on Win32.
18171
18172         * gtk/gtkthemes.c (gtk_theme_engine_get): Use g_module_build_path.
18173
18174         * gtk/makeenums.h: Include gdkprivate.h after gdk.h.
18175
18176         * gtk/maketypes.awk: Declare variables with a macro that expands to
18177         necessary export/import magic in the case of Win32.
18178                 
18179         * gtk/testrgb.c: Use dynamically allocated buffer. Use GTimers.
18180
18181 1999-03-13  Raja R Harinath  <harinath@cs.umn.edu>
18182
18183         * configure.in (gdk_wc): Move widechar tests from `glib' to here,
18184         since those were meant only for gdki18n.h.  
18185         * gdk/gdki18n.h: Include gdkconfig.h and use GDK_* instead of G_*
18186         for widechar tests.
18187         * gtk/Makefile.am (INCLUDES): Add -I../gdk for gdkconfig.h.
18188
18189 1999-03-13  Tor Lillqvist  <tml@iki.fi>
18190
18191         * configure.in acconfig.h: Check for dirent.h and pwd.h. Generate
18192         gdk/gdkconfig.h using similar mechanism as GLib's glibconfig.h.
18193
18194         * gtk-config.in: Add @libdir/gtk+/include (where gdkconfig.h is
18195         installed) to CFLAGS.
18196
18197         * gdk/Makefile.am: Add rules for gdkconfig.h.
18198
18199         * gdk/gdktypes.h: Include gdkconfig.h. Define macros for windowing
18200         APIs.
18201
18202         * gdk/gdkfontsel.c: Don't include Xlib.h, it gets included via
18203         gdkx.h anyway when compiling for X11.
18204         (gtk_font_selection_create_xlfd): Use g_strdup_printf. (In
18205         general): Merge in Win32 version.
18206         
18207         * gtk/gtkfilesel.c: Use g_get_current_dir(). Merge in Win32
18208         version: Use G_DIR_SEPARATOR, g_path_is_absolute, no tilde
18209         expansion (if we don't have HAVE_PWD_H), allow for drive
18210         letters. UNC paths (\\server\share\...) are not handled yet.  Also,
18211         included code from Craig Setera's port to Win32 (the one that uses
18212         X11, and the cygwin dll), even if it probably will be abandoned.
18213
18214         * gtk/gtkfilesel.c: Don't append a * to the pattern to complete if
18215         the user entered one herself.  This way one can complete *.h and
18216         don't get matches on any .help files, for instance.
18217         
18218 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
18219
18220         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
18221         font hash table, if we have a GdkFontPrivate entry for this font
18222         already, simply increment its reference count, provided by Olaf Dietsche
18223         <olaf.dietsche+list.gtk@netcologne.de>.
18224
18225         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
18226         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
18227
18228 1999-03-09  Federico Mena Quintero  <federico@nuclecu.unam.mx>
18229
18230         * gtk/gtkstyle.c (gtk_default_draw_handle): Significantly reduced
18231         the number of calls to gdk_draw_point() (and thus to X) by
18232         clipping the points by hand.
18233
18234         * gtk/gtkhandlebox.c (draw_textured_frame): Actually make use of
18235         the clip parameter.
18236         (gtk_handle_box_paint): Only paint the handle if the expose area
18237         intersects it.
18238
18239 Sun Mar  7 18:46:37 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
18240
18241         * gtk/gtkmain.c (add_dll_suffix): Add this function (OS/2 ver.)
18242
18243 Sun Mar  7 11:43:34 1999  ape@spacetec.no  (Asbjorn Pettersen)
18244
18245         * gtk/gtkthemes.c (gtk_theme_engine_get): Add OS/2 changes.
18246         Added function gen_8_3_dll_name(gchar *name, gchar *fullname).
18247
18248 Fri Mar  5 09:12:24 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
18249
18250         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc): Open file in
18251          textmode (O_TEXT) for OS/2 version.
18252
18253 Sun Feb 28 16:46:02 1999  Stefan Jeske  <stefan@gtk.org>
18254
18255         * gtk/gtkspinbutton.[c,h] gtk/testgtk.c: Added two new signals to 
18256         GtkSpinButton, "input" and "output", to make the output more flexible.
18257         The user has to provide a mapping between adjustment->value and the
18258         output string (and vice versa, if the spin button is editable). 
18259         See testgtk for examples.
18260
18261 Sat Feb 27 01:18:47 1999  Tim Janik  <timj@gtk.org>
18262
18263         * ChangeLog: moved old ChangeLog to ChangeLog.pre-1-2, and started
18264         new one.
18265         
18266         * configure.in: set gtk+ version to 1.3.0.