]> Pileus Git - ~andy/gtk/blob - ChangeLog.pre-2-4
Actualy set window->decorated. (Patch from Hidetoshi Tajima, #55846)
[~andy/gtk] / ChangeLog.pre-2-4
1 Thu Jul 19 12:14:28 2001  Owen Taylor  <otaylor@redhat.com>
2
3         * gtk/gtkwindow.c (gtk_window_set_decorated): Actualy
4         set window->decorated. (Patch from Hidetoshi Tajima,
5         #55846)
6
7 Sat Jul  7 02:50:14 2001  Owen Taylor  <otaylor@redhat.com>
8
9         * gtk/gtkwidget.c (gtk_widget_set_parent): Enforce
10         the widget/child realization/mapping invariants.
11
12         * gtk/gtkwidget.[ch] gtk/gtkprivate.h: Add functions 
13         gtk_widget_[get/set]_child_visible() to control
14         whether visible children of a mapped window are
15         mapped.
16
17         * docs/widget_system.txt: Updated for changes in
18         container contract, and addition of GTK_CHILD_VISIBLE.
19
20         * gtk/gtkcontainer.c: Add generic map()/unmap()
21         functions that work for almost all containers.
22
23         * gtk/gtknotebook.c gtk/gtkpacker.c: Use 
24         gtk_widget_set_child_visible() where necessary.
25
26         * gtk/*.c: Remove excess map(), unmap(), and 
27         realization/mapping invariant enforcing code
28         from many containers.
29
30 Wed Jul 18 19:51:45 2001  Owen Taylor  <otaylor@redhat.com>
31
32         * gtk/gtktextview.c (gtk_text_view_set_attributes_from_style): 
33         Get the foreground color from 'text', nor 'fg'. (#57568)
34
35 Wed Jul 18 19:28:46 2001  Owen Taylor  <otaylor@redhat.com>
36
37         * gtk/*.c: Patch from Matthias Clasen to remove remove
38         all instances of g_return_if_fail (foo != NULL); that are
39         immediately before a g_return_if_fail (GTK_IS_FOO (foo));
40         since the second check catches the NULL anyways.
41
42 Wed Jul 18 18:23:05 2001  Owen Taylor  <otaylor@redhat.com>
43
44         * gtk/gtkbutton.c gtk/gtkentry.c gtk/gtkmenu.c gtk/gtktextview.c
45         gtktreeview.c: Fix idles and timeouts to be properly surrounded by 
46         GDK_THREADS_ENTER()/LEAVE() pairs.
47
48         * gtk/gtkdialog.c gtk/gtkclipboard.c: Surround calls
49         to g_main_loop_run() with GDK_THREADS_LEAVE()/ENTER()
50         pairs. (Problem found by M. Meeks)
51
52 2001-07-18  Darin Adler  <darin@bentspoon.com>
53
54         * gtk/gtkiconfactory.c: (gtk_icon_size_register): Reorder code so
55         that we don't get a g_warning message every time we register a new
56         icon size.
57
58         * gdk/x11/gdkcolor-x11.c: (gdk_colormap_alloc1): Fix warning by
59         using pixel variable of the correct type.
60         
61 Fri Jul 13 15:33:32 2001  Owen Taylor  <otaylor@redhat.com>
62
63         * gdk/gdkwindow.[ch]: Add a function gdk_window_get_internal_paint_info(),
64         so that using X functions on a GdkWindow is possible, if
65         a little hairy.
66
67         * gdk/gdkgc.c (gdk_gc_offset): Add a function to offset the clip
68         and ts_origin of a GC, so that external parties can offset/restore
69         a GC, when using gdk_window_get_internal_paint_info().
70
71 2001-07-17  Darin Adler  <darin@bentspoon.com>
72
73         * .cvsignore: Ignore the sgml directory made by gtkdoc.
74         * demos/pixbuf-demo.c: (main): Use gtk_window_set_resizable
75         instead of the deprecated gtk_window_set_policy.
76         * demos/testpixbuf-scale.c: Add missing <stdlib.h> include.
77         * gdk/gdkkeys.c: (gdk_keymap_class_init): Remove empty finalize
78         function to get rid of warning and some code too.
79         * gdk/x11/gdkfont-x11.c: (gdk_font_charset_for_locale): Add
80         missing const.
81         * gdk/x11/gdkmain-x11.c: (_gdk_windowing_init_check): Remove
82         unused local.
83         * gdk/x11/gdkpango-x11.c: (gdk_pango_context_get): Add missing
84         const.
85         * gdk/x11/gdkselection-x11.c: (gdk_text_property_to_utf8_list),
86         (gdk_utf8_to_compound_text): Add missing const.
87         * gtk/gtkimage.c: (gtk_image_expose): Remove unused local.
88         * gtk/gtkmenubar.c: (gtk_menu_bar_hierarchy_changed): Add missing
89         cast and get rid of an unnecessary one.
90         * gtk/gtksettings.c: (gtk_settings_notify): Remove unused local.
91         * gtk/gtkstatusbar.c: (gtk_statusbar_size_allocate): Remove unused
92         local.
93         * gtk/gtktreemodelsort.c: (gtk_tree_model_sort_build_level):
94         Remove unused local.
95         * modules/input/gtkimcontextxim.c: (gtk_im_context_xim_new): Add
96         missing const.
97         * tests/testsocket.c: (add_child): Add cast so the printf format
98         doesn't make us implicitly depend on what integer type
99         gtk_socket_get_id returns.
100         * tests/testtextbuffer.c: Add missing const.
101         * tests/testtreefocus.c: (main): Remove unused local.
102         * tests/treestoretest.c: (iter_remove): Remove unused local.
103         (uppercase_value): Remove unused function.
104         (make_window): Add statement to quiet the compiler's uninitialized
105         variable warning.
106
107 Sat Jul 14 12:47:35 2001  Tim Janik  <timj@gtk.org>
108
109         * gtk/gtkrange.c:
110         (second_timeout): 
111         (initial_timeout): 
112         (update_timeout): add GDK_THREADS_ENTER/GDK_THREADS_LEAVE.
113         (gtk_range_calc_layout): compute the new layout based on an
114         adjustment->value being passed in as argument.
115         (gtk_range_button_press): for button2 slider warps, first recalc
116         the layout, then adjust the value. also, use update_slider_position()
117         for adjusting the value, so we keep pixel quantisation at which we
118         usually operate (upon motion or button releases). the reason for this
119         is that, we can't change the adjustment upon button2 presses to a non
120         quantised value and upon button2 release re-quantise the value since
121         that'd alter the value even if we didn't get any motion events (causing
122         unexpected scroll area warps upon release and/or slider pixel-jitter).
123         (gtk_range_motion_notify): update the slider position from queried
124         coordinates, not event coordinates.
125
126 Fri Jul 13 09:47:52 2001  Tim Janik  <timj@gtk.org>
127
128         * gtk/gtkstyle.c (gtk_default_draw_focus): fix line style resetting,
129         the default gc values are: width=0, CapBut, JoinMiter.
130
131 2001-07-13  Anders Carlsson  <andersca@codefactory.se>
132
133         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render): Take
134         into account the xpad and ypad when calculating the width and the
135         height of the pixbuf cel.
136
137 Thu Jul 12 18:29:40 2001  Owen Taylor  <otaylor@redhat.com>
138
139         * gtk/gtkradiomenuitem.[ch] (gtk_radio_menu_item_group): 
140         Rename to gtk_radio_menu_item_get_group(), add deprecated
141         alias. (#57044)
142
143         * gtk/gtkfilesel.c: Indentation fix.
144
145 Thu Jul 12 17:33:00 2001  Owen Taylor  <otaylor@redhat.com>
146
147         * gtk/gtkbbox.h gtk/gtkcompat.h: Patch from Mathias 
148         Hasselmann to fix warnings in compat macros. 
149         (#56773)
150
151         * gtk/gtkmenubar.c (gtk_menu_bar_hierarchy_changed): Fix 
152         stupid wrong cast added in last patch.
153
154 Thu Jul 12 16:51:34 2001  Owen Taylor  <otaylor@redhat.com>
155
156         * gtk/gtkwidget.c: Replace a couple of inappropriate calls to 
157         GTK_WIDGET_HAS_FOCUS() with gtk_widget_is_focus(). (#57067)
158
159 Thu Jul 12 14:06:19 2001  Owen Taylor  <otaylor@redhat.com>
160
161         * gtk/gtkmenubar.c (gtk_menu_bar_hierarchy_changed): Add
162         missing cast.
163
164         * gtk/gtkcontainer.c (gtk_container_get_focus_chain): Fix
165         NULL/FALSE return value confusion.
166
167         * gtk/gtkrange.c (coord_to_value): Fix division-by-zero
168         problem when scrollbar completely fills range. (Patch
169         from  Matthias Clasen, #57047)
170
171 Thu Jul 12 13:53:28 2001  Owen Taylor  <otaylor@redhat.com>
172
173         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Properly
174         clean up when handling events for move-resize emulation.
175         (Problem traced down by Matthias Clasen, #57271)
176
177 Thu Jul 12 13:43:27 2001  Owen Taylor  <otaylor@redhat.com>
178
179         * gtk/gtkclist.c gtk/gtkcolorsel.c gtk/gtkcombo.c
180           gtk/gtkctree.c gtk/gtkcurve.c gtk/gtkentry.c
181           gtk/gtkfontsel.c gtk/gtkhandlebox.c 
182           gtk/gtkimcontextsimple.c gtk/gtkmain.c gtk/gtkmenu.c
183           gtk/gtkmenuitem.c gtk/gtkoptionmenu.c gtk/gtkpixmap.c
184           gtk/gtkselection.c gtk/gtktextdisplay.c gtk/gtktextview.c
185           gtk/gtktooltips.c gtk/gtkwidget.c gtk/gtkwindow.c:
186         Formatting fixes from multihead brnach. [ mostly foo(bar) => foo (bar) ]
187
188 2001-07-09  Peter Williams  <peterw@ximian.com>
189
190         * gtk/Makefile.am ($(srcdir)/stamp-gtk.defs): Add a cd $(srcdir)
191         for when srcdir != builddir
192
193 Mon Jul  9 12:50:51 2001  Jonathan Blandford  <jrb@redhat.com>
194
195         * gtk/gtktreemodel.c: remove gtk_tree_model_get_first in favor of
196         gtk_tree_model_get_iter_root.
197
198         * gtk/gtkliststore.c: Add a bunch of g_return statements.
199         (gtk_list_store_iter_n_children): Fix up.
200
201         * gtk/gtktreestore.c: Add a bunch of g_return statements.
202
203 Fri Jul  6 15:38:33 2001  Owen Taylor  <otaylor@redhat.com>
204
205         * gtk/gtkwidget.c (gtk_widget_class_init):
206         G_SIGNAL_TYPE_STATIC_SCOPE GtkSelectionData to
207         restore some workingness.
208
209         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Fix 
210         handle of window type for input-only windows.
211
212 Thu Jul  5 21:53:46 2001  Owen Taylor  <otaylor@redhat.com>
213
214         * gtk/gtkbbox.[ch] gtk/gtkbox.[ch] gtk/gtk[hv]bbox.c:
215         Patch from Gregory Merchan to add 
216         gtk_button_box_set_secondary(), which separates
217         the child into a separate group from the normal
218         buttons. (#56331)
219
220         * gtk/gtkdialog.c: Make help buttons secondary by
221         default.
222
223         * gtk/gtkbbox.c: Added a child property "secondary".
224
225         * gtk/testgtk.c: Turn on the help button for the 
226         color selector to check that it properly appears
227         as secondary.
228
229 Mon Jul  2 01:09:37 2001  Owen Taylor  <otaylor@redhat.com>
230  
231         * gdk/gdkwindow.[ch] gdk/gdkinternals.h gdk/x11/gdkwindow-x11.c
232         gdk/linux-fb/gdkwindow-fb.c gdk/x11/gdkwindow-x11.c gdk/gdk:
233         Add gdk_set_pointer_hooks() to allow pointer-querying to
234         be hooked by an event record/playback system like GERD.
235         (#56914)
236         
237 Thu Jul  5 08:57:07 2001  Owen Taylor  <otaylor@redhat.com>
238
239         * gtk/gtkwidget.c (gtk_widget_reset_rc_style): Pass
240         in the right value of initial_emission to
241         gtk_widget_set_style_internal (#57091)
242
243 Wed Jul  4 23:17:04 2001  Owen Taylor  <otaylor@redhat.com>
244
245         * gtk/gtkdnd.c (gtk_drag_dest_hierarchy_changed):
246         Make compile.
247
248         * gtk/gtkwidget.c (gtk_widget_reset_rc_style): Fix problem
249         with calling gtk_widget_set_style_internal() with
250         the old style, not the new style. (#56989)
251
252 Wed Jul  4 22:35:40 2001  Owen Taylor  <otaylor@redhat.com>
253
254         * gtk/gtklabel.c gtk/gtkmenubar.c gtk/gtktreeviewcolumn.c
255           gtk/gtkwidget.c:
256         Check GTK_WIDGET_TOPLEVEL(gtk_widget_get_toplevel (widget)),
257         not GTK_WIDGET_GET_ANCESTOR ... see 
258         http://mail.gnome.org/archives/gtk-devel-list/2001-July/msg00072.html.
259         Indicate the best practice in the docs for gtk_widget_get_toplevel().
260
261         * gtk/gtkwidget.[ch]: Expose a private _gtk_widget_hierarchy_changed(),
262         so GtkPlug can give the correct signals when transforming
263         from a child to a toplevel.
264         
265         * gtk/gtkdnd.c (gtk_drag_dest_hierarchy_changed): Handle
266         reparentation correctly.
267
268         * gtk/gtkwidget.c (gtk_widget_propagate_hierarchy_changed):
269         Propagate the previous_toplevel argument down properly.
270
271         * gtk/gtklabel.c (gtk_label_finalize): Fix unrefing
272         of wrong atr list.
273
274         * gtk/gtkplug.[ch]: Add an "embedded" signal.
275
276         * gtk/gtksocket.[ch]: Add "child_added", "child_removed"
277         signals.
278
279         * gtk/gtkplug.[ch] gtk/gtksocket.[ch]: Add 
280         functions gtk_plug_get_id(), gtk_socket_get_id(),
281         to avoid the user having to worry about realization,
282         and gdkx.h.
283
284         * tests/testsocket.c: Extend to try out the new signals
285         and gtk_plug/socket_get_id().
286
287         * gtk/gtklabel.c (gtk_label_set_pattern_internal): Fix
288         setting of underline attributes.
289
290         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Ignore
291         DestroyNotify events from SubstructureNotifyMask
292
293         * gdk/x11/gdkwindow-x11.c (gdk_window_reparent):
294         Switch GDK_WINDOW_TYPE (window) as needed.
295
296         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Clean up,
297         allow creation of toplevel windows as children of
298         foreign windows.
299
300         * gtk/gtkplug.c: Remove hacks involving changing private
301         fields of GdkWindow.
302
303         * gtk/gtkplug.[ch] gtk/gtksocket.c: Work to make 
304         exactly the same signals and notification
305         be emitted for local embedding as for inter-process
306         embedding.
307
308 2001-07-04  James Henstridge  <james@daa.com.au>
309
310         * gtk/gtkliststore.h: add missing gtk_list_store_newv prototype.
311
312 Mon Jul  2 16:53:25 2001  Owen Taylor  <otaylor@redhat.com>
313
314         * gtk/xembed.h gtk/gtkplug.c gtk/gtksocket.c: For
315         XEMBED embedding add a _XEMBED_INFO property to the
316         client with version number and a "mapped" flags.
317         Use the mapped flag instead of the racy MapRequestEvent
318
319         * gtk/gtksocket.c: Clean up the gtk_socket_steal()
320         code to reliably set things (when the child is a passive
321         embedder participating in the XEMBED protocol) intead
322         of just being a hack for embedding non-participating
323         programs. Fix various bugs and race conditions.
324         
325         * gtk/gtksocket.[ch] gtk/gtkplug.[ch]: Make local embedding
326         work by simply making the GtkSocket the gtk parent
327         of the GtkPlug. Set a flag in this case and make
328         the GtkPlug work like a normal container by overriding
329         methods such as check_resize and "chaining past" GtkWindow
330         to GtkBin.
331
332         * gtk/gtkentry.c (gtk_entry_real_activate)
333           gtk/gtkmain.c (gtk_propagate_event): 
334         Eliminate use of gtk_widget_get_ancestor (widget, GTK_TYPE_WINDOW).
335         
336         * gtk/gtkwidget.c (gtk_widget_get_toplevel,
337         gtk_widget_get_ancestor):
338         Explain why gtk_widget_get_ancestor (widget, GTK_TYPE_WINDOW)
339         might not give the expected result and recommend
340         an alternative.
341
342         * tests/testsocket.c tests/testsocket_child.c
343         tests/testsocket_common.c tests/Makefile.am: Extended
344         to test different type of adding plugs to sockets
345         (local,active,passive), and to test mapping/unmapping
346         the plug.
347
348         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Don't
349         mark the window as destroyed until after we
350         called _gdk_windowing_window_destroy().
351         (_gdk_windowing_window_destroy() may use GDK functions
352         on the window.)
353
354         * gdk/x11/gdkinput.c: Remove the check for finalization - 
355         devices can be finalized under some circumnstances.
356  
357         * gdk/x11/gdkinput-x11.c (gdk_input_device_new): Fix 
358         small problem with GDK_TYPE_DEVICE.
359  
360 2001-07-02  Havoc Pennington  <hp@pobox.com>
361
362         * gdk/x11/gdkwindow-x11.c (gdk_wmspec_change_state): fix to 
363         use constants not atoms.
364
365 2001-07-02  James Henstridge  <james@daa.com.au>
366
367         * gtk/gtktextview.c (gtk_text_view_class_init): same here for
368         PANGO_TYPE_TAB_ARRAY.
369
370         * gtk/gtktexttag.c (gtk_text_tag_class_init): same here, but also
371         for PANGO_TYPE_TAB_ARRAY.
372
373         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_class_init):
374         s/GTK_TYPE_PANGO_FONT_DESCRIPTION/PANGO_TYPE_FONT_DESCRIPTION/
375
376         * gtk/gtk-boxed.defs: move all the boxed definitions to the top of
377         the file.  Remove Pango types from defs -- they are now defined in
378         libpango.
379
380 Mon Jul  2 06:35:10 2001  Tim Janik  <timj@gtk.org>
381
382         * gdk/gdkkeys.c (gdk_keymap_class_init): s/signal_newc/signal_new/
383
384         * gtk/gtkobject.c (gtk_object_destroy): invoke
385         g_object_run_dispose().
386
387         * gtk/gtkwindow.c: 
388         * gtk/gtkwidget.c: 
389         * gtk/gtkobject.c:
390         * gtk/gtklist.c: s/shutdown/dispose/ for the GObject
391         method.
392
393 Sat Jun 30 20:44:48 2001  Owen Taylor  <otaylor@redhat.com>
394
395         * gtk/gtktypeutils.c (gtk_type_class): Remove
396         change check for GTK_TYPE_OBJECT derivation to
397         G_TYPE_OBJECTS - it's Tim-approved to use this 
398         for arbitary objects.
399
400         * gtk/gtkwindow.c gtk/gtkcontainer.[ch]: underscore
401         prefix gtk_container_dequeue_resize_handler().
402
403         * gtk/gtkwidget.[ch]: Add a previous_toplevel argument
404         to the hierarachy_changed signal, since you otherwise
405         have to always keep that around.
406
407         * gtk/gtkmenubar.c gtk/gtklabel.c gtk/gtksocket.c: Adapt
408         for extra argument to hierarchy_changed.
409
410 Tue Jun 26 19:39:03 2001  Owen Taylor  <otaylor@redhat.com>
411
412         * gtk/gtkwidget.c (gtk_widget_set_style): Allow %NULL
413         for style to mean "revert to default style"
414
415         * gtk/gtkwidget.[ch] (gtk_widget_set_rc_style,
416           gtk_widget_restore_default_style): Make this functions
417         deprecated aliases for gtk_widget_set_style (widget, NULL).
418
419         * gtk/gtkwidget.[ch]: Remove:
420            gtk_widget_set_default_style ()
421            gtk_widget_push_style ()
422            gtk_widget_pop_style ()
423         These functions interact are overriden by RC files, and
424         thus virtually useless, and complicated.
425
426 Fri Jun 22 18:49:48 2001  Owen Taylor  <otaylor@redhat.com>
427
428         * gtk/gtkrc.c: Add a GtkRcContext structure to hold 
429         most of the previous global variables in gtkrc.c. This is
430         in preparation for multi-head, since each screen can
431         have different GtkSettings and RC information.
432
433         * gtk/gtkrc.[ch]: 
434
435         * gtk/gtkrc.h (struct _GtkRcStyleClass): Add a
436         GtkSettings parameter to GtkRcStyle::parse.
437
438         * gdk/x11/gdkevents-x11.c gtk/gtksettings.c gtk/gtkrc.c: 
439         Add two new settings gtk-theme-name, gtk-key-theme-name,
440         for RC files that are loaded by name after reading
441         the default RC files.
442         
443         * gtk/gtkrc.c: Allow priorities for styles, as wll as
444         bindings.
445
446         * gtk/gtkenums.h gtk/gtkrc.c: Add GTK_PATH_PRIO_THEME,
447         and use it by default for RC files loaded via 
448         gtk-theme-name, gtk-key-theme-name.
449
450         * gtk/gtkiconfactory.c (gtk_icon_source_set_filename)
451         gtk/gtkrc.c (gtk_rc_parse_pixmap_path_string) 
452         tests/testgtkrc: Require pathnames to be absolute.
453
454         * gtk/gtkrc.c gtk/gtkiconfactory.c: Look up the full filename for
455         the source when parsing, since the operation of looking up a
456         pixmap from an RC file depends on the parsing context.
457
458         * gtk/gtkrc.c (gtk_rc_context_reparse_all): Automatically
459         reset RC styles on all widgets when files are reparsed.
460
461         * tests/testgtk.c (create_rc_file) 
462           gtk/gtkwindow.c (gtk_window_read_rcfiles): 
463         Simplify, now that gtk_rc_reparse_all() resets styles on
464         all widgets itself.
465
466         * gtk/gtkmain.c (gtk_get_default_language): Fix broken
467         return value.
468
469         * gtk/gtksettings.[ch] (gtk_settings_install_property[_ch]): Remove
470         GtkSettings argument.
471
472         * gtk/gtksettings.[ch] (gtk_settings_get_default): Rename from
473         gtk_settings_get_global().
474
475         * gtk/gtkwidget.[ch]: Add a function gtk_widget_Get_settings()
476         to get the appropriate GtkSettings for a widget. (For now,
477         just gets the default GtkSetttings.) 
478
479         * gtk/gtkcolorsel.c gtk/gtkentry.c gtk/gtkmenu.c gtk/gtkmenubar.c
480           gtk/gtktextview.c gtk/gtktoolbar.c: Fixes for GtkSettings
481         changes.
482
483         * gtk/gtkrc.[ch]: Add gtk_rc_get_style_by_paths() to allow
484         getting a style for a path without actually having a widget.
485         (Allows using a style for a subpart of a widget, for
486         example.)
487
488         * gtk/gtkrc.[ch]: Add gtk_rc_reparse_all_for_setting() to allow forcing
489         the RC files to be reloaded for just one GtkSettings
490         (not sure how useful this really is.)
491
492         * gtk/gtkrc.h: Deprecate
493         gtk_rc_add_widget_name/widget_class/class_style
494
495 2001-06-30  Alex Larsson  <alexl@redhat.com>
496
497         * gdk/linux-fb/gdkinput-none.c:
498         * gdk/linux-fb/gdkinput.c:
499         * gdk/linux-fb/gdkinputprivate.h:
500         Convert GdkDevice to a GObject.
501
502         * linux-fb/gdkprivate-fb.h:
503         * linux-fb/gdkvisual-fb.c:
504         Convert GdkVisual to a GObject.
505
506 2001-06-29  Alex Larsson  <alexl@redhat.com>
507
508         * gdk/gdkvisual.h:
509         * gdk/gdkcolor.c:
510         * gdk/x11/gdkx.h:
511         * gdk/x11/gdkvisual-x11.c:
512         Convert GdkVisual to a GObject.
513
514         * gdk/gdkinput.h:
515         * gdk/gdkevents.c:
516         * gdk/x11/gdkinputprivate.h:
517         * gdk/x11/gdkinput-gxi.c:
518         * gdk/x11/gdkinput-none.c:
519         * gdk/x11/gdkinput-x11.c:
520         * gdk/x11/gdkinput-xfree.c:
521         * gdk/x11/gdkinput.c:
522         Convert GdkDevice to a GObject.
523
524 Fri Jun 29 22:13:28 2001  Jonathan Blandford  <jrb@redhat.com>
525
526         * gtk/gtktreestore.c (gtk_tree_store_new): changed new_with_types
527         to just plain new, fixing the number of columns, and column types
528         at creation time.
529
530         * gtk/gtkliststore.c (gtk_list_store_new): ditto.
531
532         * gtk/gtkcellrenderertext.c
533         (gtk_cell_renderer_text_set_fixed_height_from_font): FIX the
534         height to a specific font.
535
536         * gtk/gtktreeview.c (gtk_tree_view_is_expander_column): fix brokenness.
537
538         * tests/*c: change to work with new store models.
539
540 2001-06-29  Havoc Pennington  <hp@redhat.com>
541
542        * Throughout: fixes to compile with G_DISABLE_COMPAT
543         (s/g_signal_connectc/g_signal_connect/,
544         s/g_signal_newc/g_signal_new/,
545         s/g_signal_disconnect_by_func/g_signal_handlers_disconnect_by_func/)
546
547 Fri Jun 29 03:14:16 2001  Jonathan Blandford  <jrb@webwynk.net>
548
549         * gtk/gtktreeselection.c (gtk_tree_selection_selected_foreach):
550         add path argument to selection callbacks.
551
552 Fri Jun 29 00:13:34 2001  Jonathan Blandford  <jrb@redhat.com>
553
554         * gtk/gtktreemodel.c (gtk_tree_model_foreach): New function to
555         walk through a model in a depth first manner, with the option to
556         break out.
557
558 Fri Jun  8 18:52:10 2001  Jonathan Blandford  <jrb@redhat.com>
559
560         * gtk/gtktreeview.[hc]: Patch Thomas Broyer from
561         <tbroyer@ltgt.net>. Expander arrows are now attached to a specific
562         column and follow it when draged, rather than a location in the
563         view. "expander_column" property and drawing functions changed
564         accordingly.  Fixes bug #55942.
565
566         (gtk_tree_view_{set,get}_expander_column): Now works with a
567         GtkTreeViewColumn* instead of int.
568
569 Thu Jun 28 22:53:18 2001  Owen Taylor  <otaylor@redhat.com>
570
571         *  gdk/gdk.c gtk/gtktypeutils.c: Fix args to g_type_init(). 
572
573 2001-06-28  Havoc Pennington  <hp@pobox.com>
574
575         * gdk/x11/gdkimage-x11.c (_gdk_x11_get_image): Clip the retrieved
576         image data to the screen, using a server grab to avoid race
577         conditions.
578
579         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): remove 
580         check for NULL return from gtk_image_new_from_stock(), it never
581         returns NULL.
582         (gtk_item_factory_create_item): fix bug where we parsed the stock
583         ID as an inline pixbuf
584
585         * gtk/gtktext.c (gtk_text_key_press): numeric keypad support
586
587         * gtk/gtkspinbutton.c (gtk_spin_button_key_press): numeric keypad
588         support (should be using binding set here)
589
590         * gtk/gtkoptionmenu.c (gtk_option_menu_key_press): numeric keypad
591         support (should be using binding set here)
592
593         * gtk/gtkmenushell.c (gtk_menu_shell_class_init): numeric keypad 
594         support
595
596         * gtk/gtkmenu.c (gtk_menu_class_init): numeric keypad support
597
598         * gtk/gtkmenubar.c (gtk_menu_bar_class_init): numeric keypad
599
600         * gtk/gtklistitem.c (gtk_list_item_class_init): numeric keypad
601
602         * gtk/gtkimcontextsimple.c
603         (gtk_im_context_simple_filter_keypress): keypad
604
605         * gtk/gtkfilesel.c (gtk_file_selection_key_press): keypad 
606
607         * gtk/gtkentry.c (gtk_entry_class_init): numeric keypad fixes
608
609         * gtk/gtkctree.c (gtk_ctree_class_init): numeric keypad support
610
611         * gtk/gtkcolorsel.c (palette_activate): keypad support (of course,
612         should be binding-setted)
613
614         * gtk/gtkwindow.c (gtk_window_class_init): numeric keypad fixes
615
616         * gtk/gtkclist.c (gtk_clist_class_init): numeric keypad fixes
617
618         * gtk/gtkcalendar.c: numeric keypad fixes
619
620         * gtk/gtktextview.c (gtk_text_view_class_init): numeric keypad
621         support
622
623         * gdk/gdkwindow.c (gdk_window_get_clip_region): fix infinite loop
624         screwup
625
626         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha): 
627         clip the render area to the drawable's clip region in advance,
628         so we don't get data from the server that we don't need.
629
630         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
631         check return value of gdk_pixbuf_get_from_drawable(), fall back 
632         to bilevel alpha if we can't get the pixbuf to composite against.
633
634         * gdk/gdkdraw.c (gdk_drawable_get_image): set the image colormap
635
636         * gdk/gdkimage.c (gdk_image_get_colormap): add
637         gdk_image_set_colormap, gdk_image_get_colormap
638
639         * gdk/gdkpixbuf-drawable.c (rgbconvert): Change all converters to
640         take a region of the image, instead of converting the entire
641         image.
642
643         * gtk/gtkwidget.h (struct _GtkWidgetClass): add show_help
644         keybinding signal. Add default bindings for it. Add default
645         handler for show_help that shows the tooltip for the widget.
646
647         * gtk/gtkdialog.c (gtk_dialog_class_init): add binding set and
648         "close" keybinding signal, remove key press handler.
649
650         * gtk/gtktooltips.c (gtk_tooltips_set_colors): Just remove this,
651         it's not our usual practice to leave a deprecated function around
652         with a runtime warning, plus we don't want it to appear in docs,
653         plus if we make them yellow no one will want to change them
654         anyhow.
655
656 Thu Jun 28 23:53:31 2001  Tim Janik  <timj@gtk.org>
657
658         * gtk/gtkwidget.c (gtk_widget_hide): !GTK_OBJECT_DESTROYED() ->
659         GTK_WIDGET_REALIZE() for resize queueing.
660
661         * gtk/gtkmain.c (gtk_main_do_event): !GTK_OBJECT_DESTROYED() ->
662         GTK_WIDGET_REALIZE() for post event delivery destruction upon
663         GDK_DESTROY.
664         
665         * gtk/gtkwidget.c: added GtkWidget::event-after notification signal, to
666         sompensate for former (pre-2.0) connect_after() facility.
667         (gtk_widget_send_expose): 
668         (gtk_widget_event): assert the widget is realized, since event delivery
669         to non-realized widgets is essentially a bug. event handlers should
670         be able to unconditionally rely on widget->window (unless they
671         emit events on their own which can trigger widget destruction).
672         (gtk_widget_event_internal): removed old outdated GTK_OBJECT_DESTROYED()
673         logic. event delivery happens as follows:
674         a) emission of GtkWidget::event (RUN_LAST handler). returns was_handled.
675         b) if !was_handled in (a) and the widget is still realized, emit event-
676            specific signal (RUN_LAST handler). returns was_handled.
677         c) emission of GtkWidget::event-after for notification if the widget is
678            still realized (regardless of was_handled from previous stages, no
679            class handler). no return value.
680         d) was_handled gets passed on to caller, to determine further
681            propagation. if the widget got unrealized meanwhile, was_handled
682            is returned as TRUE.
683
684         * gdk/gdkevents.[hc]: added gdk_event_get_root_coords() and
685         gdk_event_get_coords().
686
687 Thu Jun 28 17:18:41 2001  Tim Janik  <timj@gtk.org>
688
689         * configure.in (GTK_MICRO_VERSION): up version to 1.3.7, interface
690         age 0, binary age 0. depend on glib 1.3.7.
691
692         * gtk/gtkcontainer.c: remove g_signal_handlers_disconnect_by_func() hack.
693
694         * gtk/gtkmenubar.c: same here.
695         
696         * gtk/gtkcontainer.c (gtk_container_focus_tab): fix param-spec retrival.
697
698         * gtk/gtkcolorsel.c (gtk_color_selection_init): fix connect_data() usage.
699
700         * gtk/gtkentry.c (gtk_entry_focus_in): same here.
701         
702         * gtk/gtkmenubar.c (add_to_window): likewise.
703         
704         * gtk/gtktextbtree.c: and here...
705         
706         * gtk/gtktextview.c (gtk_text_view_ensure_layout): same thing.
707         
708         * gtk/gtktoolbar.c (gtk_toolbar_init): once more.
709         
710         * gtk/gtktreemodel.c (connect_ref_callbacks): and another time.
711         
712         * gtk/gtktreeviewcolumn.c:
713         (_gtk_tree_view_column_set_tree_view): yet again.
714
715         * demos/gtk-demo/images.c (progressive_timeout): demonstrate
716         signal connections without g_signal_connect_data().
717         
718         * demos/gtk-demo/stock_browser.c (do_stock_browser): second
719         demo of the matter.
720         
721         * demos/testpixbuf.c (main): running out of equality phrases for the
722         ChangeLog, but had to adapt connections here as well.
723         
724         * demos/testanimation.c (progressive_timeout): and for the fun of it,
725         tackled this the same way.
726         
727         * tests/testtext.c (create_view): ok, it's becoming a pain at this
728         point, but had enough enery for one more fix.
729
730         * tests/testtreecolumns.c (main): stand up man, do your work!
731
732         * tests/testtreeview.c (set_columns_type): ok, this is the last file i
733         fix, either that's been all of it or CVS gtk is broken yet again.
734         
735 2001-06-29  James Henstridge  <james@daa.com.au>
736
737         The following changes correspond to bug #56812
738
739         * gdk/gdkinput.h, gdk/gdkevents.c (GDK_TYPE_DEVICE): register type
740         code for GdkDevice.
741
742         * gdk/gdkcursor.[ch] (GDK_TYPE_CURSOR): register type code for
743         GdkCursor.
744
745 2001-06-19  Havoc Pennington  <hp@pobox.com>
746
747         * gdk/x11/gdkwindow-x11.c (gdk_window_show_unraised): new function
748         for mapping a window without fooling with stacking order, but
749         updating the "withdrawn" flag
750
751         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Do event
752         filtering as soon as possible, moving move resize and wmspec_check
753         handling after the event filter.  Make default filter apply to all
754         events, not just those with no GdkWindow wrapped around the X
755         window. Fix a FIXME about how the window could be a pixmap using 
756         RTTI; this of course assumes GDK_IS_WINDOW() is optimized. 
757
758         Also, be robust against events not on a known GdkWindow.
759
760         * gdk/x11/gdkmain-x11.c (gdk_x11_grab_server,
761         gdk_x11_ungrab_server): export reference-counted server grabs, so
762         other people can grab server over a GDK function that also does
763         so.
764
765 Wed Jun 27 19:40:31 2001  Jonathan Blandford  <jrb@redhat.com>
766
767         * gtk/gtktreeviewcolumn.c
768         (gtk_tree_view_column_pack_start_cell_renderer): New function to
769         reflect that you can (hypothetically) pack cell renderers into a
770         column.
771         (gtk_tree_view_column_pack_end_cell_renderer): ditto.
772         (gtk_tree_view_column_cell_is_visible): Move more functionality to
773         the column.
774         (gtk_tree_view_column_cell_can_focus): Move more functionality to
775         the column.
776
777         * gtk/gtktreeview.c: Move to use new column-packing code.
778         (gtk_tree_view_real_expand_row): remove totally braindead code.
779         (gtk_tree_view_real_collapse_row): ditto.
780
781 2001-06-27  Kjartan Maraas  <kmaraas@gnome.org>
782
783         * gtk/gtktreeviewcolumn.c: Fix a typo.
784         
785 2001-06-26  Joel Becker  <jlbec@evilplan.org>
786
787         * gdk-pixbuf/gdk-pixbuf-csource.c: remove '#include "x"' line
788           at the end of the file
789
790 2001-06-26  Havoc Pennington  <hp@redhat.com>
791
792         * gtk/gtkwindow.c (gtk_window_set_policy): forgot a notification
793
794 2001-06-26  Havoc Pennington  <hp@redhat.com>
795
796         * gtk/gtkwindow.c (gtk_window_class_init): add "resizable"
797         property
798
799 Tue Jun 26 12:59:28 2001  Jonathan Blandford  <jrb@redhat.com>
800
801         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_set_model): fix
802         stupid missing statement
803
804         * gtk/gtktreeview.c (gtk_tree_view_set_destroy_count_func): New
805         private function for ATK.  It notifies you of how many _visible_
806         children are deleted when a node is deleted.  Should be used by
807         atk only.
808
809 Tue Jun 26 11:06:34 2001  Owen Taylor  <otaylor@redhat.com>
810
811         * gtk/gtkclist.c gtk/gtkentry.c gtk/gtkspinbutton.c:
812         Use new pango_context_get_metrics() to fix problems
813         with font lists in descriptions. (#56184, reported by
814         Jonas Borgström)
815
816 Tue Jun 26 10:04:30 2001  Tim Janik  <timj@gtk.org>
817
818         * gtk/gtkiconfactory.c:
819         * gtk/gtkitemfactory.c: use gdk_pixbuf_new_from_stream(). fixed up
820         item factory so inlined pixbufs actually work.
821
822 2001-06-25  Havoc Pennington  <hp@redhat.com>
823
824         * gtk/gtktreeviewcolumn.h, gtk/gtktreeviewcolumn.c:
825         s/RESIZEABLE/RESIZABLE/
826
827         * gtk/gtkwindow.c, gtk/gtkwindow.h: s/resizeable/resizable/
828
829 2001-06-25  Alexander Larsson  <alexl@redhat.com>
830
831         * configure.in:
832         Added --enable-fbmanager. This is some experimental code
833         that lets several GtkFB apps coordinate their access to the
834         framebuffer.
835         
836         * acconfig.h:
837         Added ENABLE_FB_MANAGER.
838
839         * gdk/linux-fb/Makefile.am:
840         Added gdkfbmanager and gdkfbswitch.
841
842         * gdk/linux-fb/gdkkeyboard-fb.c:
843         * gdk/linux-fb/gdkmouse-fb.c:
844         * gdk/linux-fb/gdkprivate-fb.h:
845         Split device init and open so that
846         they can be opened and closed while switched
847         away.
848
849         * gdk/linux-fb/gdkmain-fb.c:
850         Add the basic manager communication.
851
852         * gdk/linux-fb/gdkrender-fb.c:
853         Don't update to the shadow fb if we're
854         blocked by the fb manager.
855
856 Sun Jun 24 22:15:16 2001  Owen Taylor  <otaylor@redhat.com>
857
858         * docs/Changes-2.0.txt: Add note about child property
859         changes.
860
861 Sun Jun 24 21:34:32 2001  Owen Taylor  <otaylor@redhat.com>
862
863         * gtk/gtkenums.h gtk/gtkiconfactory.c: Add a special size for
864         drag-and-drop GTK_ICON_SIZE_DND (Default to 32x32)
865
866         * gtk/gtkdnd.c (gtk_drag_dest_set_target_list): Fix problem
867         with un'reffing wrong list reported by Jeff Franks.
868
869         * gtk/gtkdnd.[ch] (_gtk_drag_{source,}dest_handle_event): _prefix.
870
871         * gtk/gtkdnd.c (gtk_drag_set_icon_default): Use GTK_STOCK_DND
872         for the default icon. Remove inline XPM.
873
874         * gtk/gtkstock.h gtk/gtkiconfactory.c:
875         Add GTK_STOCK_DND GTK_STOCK_DND_MULTIPLE (Currently, stock_new
876         is used for GTK_STOCK_DND, but it is a bit too small.)
877
878         * gtk/stock-icons/stock_dnd_multiple.png
879         gtk/stock-icons/Makefile.am: New stock icon moved from gnome-libs.
880
881         * gtk/gtkdnd.c (gtk_drag_source_event_cb): Only return
882         TRUE when starting a drag. In other cases, we are
883         just observing. (#52995)
884
885         * gtk/gtkdnd.[ch] (gtk_drag_set_icon_{stock,pixbuf}): Add 
886         function to set the icon for a drag from a GdkPixbuf
887         or stock ID.
888
889         * gtk/gtkdnd.[ch] (gtk_drag_source_set_icon_{stock,pixbuf}): 
890         Likewise, for drag sources.
891
892         * gtk/gtkdnd.h: Deprecate gtk_drag_set_default_icon.
893         (Now should be done using the stock system.)
894
895 Sun Jun 24 12:06:47 2001  Owen Taylor  <otaylor@redhat.com>
896
897         * gtk/gtktextview.[ch] (gtk_text_view_set_text_window_size): 
898         Removed - didn't work and not particularly useful anyways
899         if it did. 
900
901 Sun Jun 24 11:29:35 2001  Owen Taylor  <otaylor@redhat.com>
902
903         * gdk/x11/gdkimage-x11.c (gdk_image_new): Fix stupid error
904         introduced last night that was making things decidedly not work.
905
906         * gtk/*.[ch]: Patch from Kristian Rietveld adding 80 getters
907         so that we have getter/setter pairing everywhere it makes
908         sense. (#55767)
909
910         * gtk/gtkradiobutton.[ch] gtk/gtktoolbar.c tests/testgtk.:
911         Rename gtk_radio_button_group to gtk_radio_button_get_group, add a
912         deprecated compat macro. (#55516)
913
914         * gtk/gtklabel.[ch]: Add functions
915         gtk_label_set/get_use_underline(), gtk_label_set/get_use_markup(),
916         gtk_label_set_label(), which mirror the property API for GtkLabel.
917         Make gtk_label_get_attributes() only reflect the attributes
918         set by gtk_label_set_attributes.
919
920         * gtk/gtknotebook.c (gtk_notebook_set_current_page) gtk/gtkcompat.h: Rename
921         from gtk_notebook_set_page().
922
923 Sat Jun 23 18:02:46 2001  Owen Taylor  <otaylor@redhat.com>
924
925         * configure.in: Fix tests for XShm.h.
926
927         * gdk/x11/gdkimage-x11.c: Cleanup error handling in
928         gdk_image_new() by use of goto, properly use g_object_unref().
929
930 Sat Jun 23 22:03:20 2001  Tim Janik  <timj@gtk.org>
931
932         * gdk/x11/gdkimage-x11.c (gdk_image_init): disabled g_free (image)
933         calls, as GdkImage is an object. these should be g_obejct_unref()
934         instead but that won't work because of the g_error() statement
935         in gdk_x11_image_destroy(). so for now, i did s/g_free/LEAK_IMAGE/
936         to spot these places.
937
938 Sat Jun 23 10:27:53 2001  Owen Taylor  <otaylor@redhat.com>
939
940         * modules/input/gtkimcontextxim.c: Fixup some problems with 
941         text length handling in error cases.
942
943         * gtk/gtkwidget.c (gtk_widget_size_allocate): Reorder
944         a bit to make test actually warn on attempt to allocation
945         a negative size. (#56101, Matthias Clasen)
946
947 Fri Jun 22 14:06:08 2001  Jonathan Blandford  <jrb@redhat.com>
948
949         * gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): Fix bug
950         noticed by Brian Cameron.
951         (gtk_tree_view_real_expand_row): Fix bug noticed by Brian
952         Cameron.
953
954 2001-06-22  Hans Breuer  <hans@breuer.org>
955
956         * gdk/gdk.def : updated externals
957
958         * gdk/win32/gdkdrawable-win32.c : corrected some casts
959         in GDK_NOTEs
960
961         * gdk/win32/gdkevents-win32.c : use _gdk_windowing_window_get_offsets
962         to translate coordinates to the internal > 16 bit system
963         Try to handle WM_WINDOWPOSCHANGED to get better performance for
964         when moving/resizing
965
966         * gdk/win32/gdkkeys-win32.c : implement gdk_keymap_get_default ()
967         and gdk_keymap_get_direction (). The latter is untested for
968         the RTL case
969
970         * gtk/gtk.def : updated externals
971
972         * gtk/gtkmain.c : gtk_get_default_language () should reurn the result
973         from pango_language_from_string (), not an already freed pointer
974
975         * gtk/stock-icons/stock_menu_sort_ascending.png : PNGs need to be 
976         binary (-kb) to be useable on windoze
977  
978 2001-06-21  Alexander Larsson  <alexl@redhat.com>
979
980         * gdk/linux-fb/gdkfont-fb.c (gdk_font_from_description): 
981         Update to new PangoLanguage changes.
982         
983         * gtk/gtkwindow-decorate.c:
984         * gtk/gtkwindow.[ch]:
985         Added setting argument to gtk_window_set_has_frame ()
986         
987 Thu Jun 21 13:42:01 2001  Owen Taylor  <otaylor@redhat.com>
988
989         * gdk/x11/gdkkeys-x11.c (gdk_keymap_get_direction): Handle
990         the case without XKB properly.
991
992         * gtk/gtkrc.c (gtk_rc_set_default_files): Remove
993         unused gtk_rc_auto_parse variable.
994
995         * gtk/gtkrc.[ch] gtk/gtkstyle.c docs/Changes-2.0.txt:
996         Remove gtk_rc_set_image_loader(), gtk_rc_load_image(), no
997         longer needed with GdkPixbuf.
998
999         * gtk/gtkrc.c (_gtk_rc_init): Make private.
1000
1001 Fri Jun 15 16:26:12 2001  Owen Taylor  <otaylor@redhat.com>
1002
1003         * gtk/gtkentry.h: Mark deprecated functions with
1004         GTK_DISABLE_DEPRECATED.
1005
1006 Mon Jun 11 18:15:16 2001  Owen Taylor  <otaylor@redhat.com>
1007
1008         * gdk/gdk.h: Add missing gdk_rectangle_get_type() prototype.
1009
1010         * gtk/gtk[hv]scale.c: Include math.h, stdlib.h
1011
1012         * gdk/gdkpango.h gtk/gtkclist.c gtk/gtkentry.c gtk/gtkmain.[ch]
1013           gtk/gtkspinbutton.c gtk/gtkstyle.c gtk/gtktextbuffer.c
1014           gtk/gtktextdisplay.c gtk/gtktextiter.[ch]
1015           gtk/gtktextlayout.c gtk/gtktexttag.[ch] gtk/gtkwidget.c: Adapt
1016           to recent changes in Pango.
1017
1018         * tests/testgtk.c: Set language tags with gtk_label_set_markup()
1019           to test whether the basic engine honors them.
1020
1021 Thu Jun 21 02:13:40 2001  Tim Janik  <timj@gtk.org>
1022
1023         * gtk/gtkcontainer.[hc]: added gtk_container_child_set_property() and
1024         gtk_container_child_get_property().
1025
1026 Wed Jun 20 19:19:15 2001  Jonathan Blandford  <jrb@redhat.com>
1027
1028         * gtk/gtktreeview.c (gtk_tree_view_move_cursor_up_down): clean up
1029         (gtk_tree_view_move_cursor_page_up_down): implement.
1030
1031 Wed Jun 20 05:32:05 2001  Tim Janik  <timj@gtk.org>
1032
1033         * gtk/gtkspinbutton.c: make maximum digits compile time configurable
1034         via MAX_DIGITS and up to 20. 5 was just ridiculously small.
1035         don't use automatic fixed size buffer for printf-ing floats, doubles
1036         can expand to really _huge_ strings, use g_strdup_printf() instead.
1037
1038 Wed Jun 20 04:28:24 2001  Tim Janik  <timj@gtk.org>
1039
1040         * gtk/gtkrange.c (gtk_range_class_init): hum, "adjustment" was a
1041         construct property in 1.2 and still needs to be.
1042
1043         * gtk/gtkwidget.c: "composite_child" is not a settable property.
1044
1045 Tue Jun 19 19:13:19 2001  Jonathan Blandford  <jrb@redhat.com>
1046
1047         * gtk/gtkliststore.c (gtk_list_store_clear): 
1048         * gtk/gtktreestore.c (gtk_tree_store_clear): New functions to
1049         clear a model.
1050
1051 Mon Jun 18 02:00:49 2001  Tim Janik  <timj@gtk.org>
1052
1053         * gtk/gtkwidget.c (gtk_widget_get_property): fix PROP_EVENTS.
1054
1055         * gtk/Makefile.am:
1056         * gtk/gtk.h: disabled GtkPacker compilation.
1057
1058         * gtk/gtkarg.[hc], gtk/gtkargcollector.c: got rid of these.
1059
1060         * gtk/gtknotebook.c:
1061         * gtk/gtktable.c:
1062         * gtk/gtkbox.c: ported this over to child properties.
1063
1064         * gtk/gtksettings.c: fetch class properties via
1065         g_object_class_list_properties().
1066
1067         * gtk/gtkcontainer.[hc]: implemented child properties, got rid of the
1068         child arg interface. use gobjectnotifyqueue.c for child property
1069         notification.
1070
1071         * gtk/gtkwidget.[hc]: provide necessary means for container child
1072         properties, i.e. ::child_notify signal,
1073         gtk_widget_freeze_child_notify(),
1074         gtk_widget_child_notify(),
1075         gtk_widget_thaw_child_notify().
1076
1077         * tests/testgtk.c: removed inferior property handling code, for
1078         property editing, a generic module should be used, and GLE
1079         coincidentally fullfills that purpose.
1080
1081         * docs/reference/Makefile.am: disabled gtk docs building, gtk-doc
1082         needs to be adapted to g_object_class_list_properties() before this
1083         builds again.
1084
1085 Mon Jun 18 20:06:10 2001  Jonathan Blandford  <jrb@redhat.com>
1086
1087         * gtk/gtktreeview.c (gtk_tree_view_row_expanded): New function to
1088         test if a node is expanded.
1089
1090 Mon Jun 18 19:41:38 2001  Jonathan Blandford  <jrb@redhat.com>
1091
1092         * gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): Fix bug
1093         where collapsing a selected row would result in the cursor/anchor
1094         getting screwed up.
1095
1096 Fri Jun 15 18:53:48 2001  Jonathan Blandford  <jrb@redhat.com>
1097
1098         * gtk/gtktreesortable.c (gtk_tree_sortable_set_sort_func): Rename
1099         gtk_tree_sortable_sort_column_id_set_func.  It's much shorter now.
1100         * gtk/gtktreeview.c (gtk_tree_view_sort_iter_changed): WOOO!!!
1101         Now I can really reorder/sort all Store widgets.  treesorttest
1102         seems to just work now.
1103         * gtk/gtklistview.c (gtk_list_store_iter_changed): Whoops.
1104         testtreesort worked through a big coincidence all this time.
1105         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): Nasty bug fix in nasty
1106         code.
1107         * tests/testtreecolumns.c: Big 'ol warning at the top letting
1108         people know that this code should never ever ever be copied.
1109
1110 2001-06-15  Jonas Borgström  <jonas@codefactory.se>
1111
1112         * gtk/gtkwindow.h: Fixed a small typo, it should be
1113         GTK_WINDOW_GROUP_GET_CLASS and not GTK_WINDOW_GET_CLASS
1114         on line 134.
1115
1116 2001-06-14  Havoc Pennington  <hp@redhat.com>
1117
1118         Docs fixups, and:
1119         
1120         * gtk/gtkcompat.h: remove GTK_DISABLE_COMPAT_H, replace with
1121         GTK_DISABLE_DEPRECATED
1122
1123 Thu Jun 14 19:21:27 2001  Jonathan Blandford  <jrb@redhat.com>
1124
1125         * gtk/gtktreestore.c (gtk_tree_store_sort_helper): Whoops.  Forgot
1126         this a couple months ago.  Now GtkTreeStore sort of sorts.  I'll
1127         finish it off tonight, though it basically works now when it's a
1128         list.  Also, I have a sinking feeling neither GtkTreeStore or
1129         GtkListStore actually resort when adding a new item.  I'll look
1130         into it.
1131
1132 2001-06-14  Havoc Pennington  <hp@redhat.com>
1133
1134         * demos/gtk-demo/main.c (load_file): fix bug identified by
1135         warnings I just added to gtktextbuffer
1136
1137 2001-06-14  Havoc Pennington  <hp@redhat.com>
1138
1139         * gtk/gtkwindow.c (window_group_cleanup_grabs): fix other typo
1140
1141         * gtk/gtkwidget.c (gtk_widget_propagate_state): fix typo
1142
1143         * gtk/gtktextbtree.c: don't leak node data all over the place.
1144
1145         * demos/gtk-demo/main.c (main): create fontify tags for the right
1146         buffer
1147
1148         * gtk/gtktextbuffer.c, gtk/gtktexttagtable.c: enhance docs
1149         to mention tags in the same table can't have the same name,
1150         suggested by Skip Montanaro
1151
1152 2001-06-11  Havoc Pennington  <hp@redhat.com>
1153
1154         * gtk/gtktexttagtable.c (gtk_text_tag_table_add): improve warning 
1155         for trying to add two tags with same name to the tag table
1156
1157         * demos/gtk-demo/main.c (main): fix colors ;-)
1158
1159 `Fri Jun  8 17:56:52 2001  Owen Taylor  <otaylor@redhat.com>
1160
1161         * gtk/gtkwindow.[ch] gtk/gtkmain.c: Add a GtkWindowGroup struct
1162         that allows grouping together multiple windows so that grabs
1163         within that set of windows only affect those windows.
1164
1165         * gtk/gtkmain.c gtk/gtkwidget.[ch]: Add a "grab_notify"
1166         signal for notification when a widget becomes shadowed
1167         by a grab or is no longer shadowed by a grab.
1168
1169         * gtk/gtkwidget.c (gtk_widget_propagate_state)
1170           gtk/gtkmain.c: (gtk_widget_grab_add): Don't allow
1171         insenstive widgets to maintain a grab.
1172
1173 2001-06-14  Alexander Larsson  <alexl@redhat.com>
1174
1175         * docs/README.linux-fb:
1176         Add some example config files that can be used with the URW fonts.
1177         
1178         * gdk/linux-fb/gdkvisual-fb.c (gdk_visual_init): 
1179         Set up the color ramps for DirectColor mode.
1180
1181 2001-06-11  Havoc Pennington  <hp@redhat.com>
1182
1183         * Release 1.3.6
1184          
1185 2001-06-13  Alexander Larsson  <alla@lysator.liu.se>
1186
1187         * gdk/linux-fb/gdkwindow-fb.c:
1188         Unify shaped window code and make it repaint the area that used
1189         to be part of the shape, but isn't anymore.
1190
1191 2001-06-11  Havoc Pennington  <hp@redhat.com>
1192
1193         * NEWS: Updates
1194
1195         * configure.in (GTK_MINOR_VERSION): bump version to 1.3.6
1196
1197         * gtk/Makefile.am: glib_genmarshal already contains top_builddir
1198         
1199 2001-06-13  Alexander Larsson  <alla@lysator.liu.se>
1200
1201         * gdk/linux-fb/gdkdnd-fb.c (gdk_drag_status):
1202         Don't pass on GDK_ACTION_DEFAULT. The Xdnd code
1203         passes zero instead, so do we.
1204         
1205 2001-06-13  Alexander Larsson  <alla@lysator.liu.se>
1206
1207         * gdk/linux-fb/gdkgc-fb.c (gdk_gc_copy):
1208         Deep copy dash_list too.
1209         (_gdk_fb_gc_new): Set default cap_style before
1210         setting values.
1211
1212 2001-06-12  Alexander Larsson  <alla@lysator.liu.se>
1213
1214         * gdk/linux-fb/gdkkeyboard-fb.c (gdk_keymap_get_default,
1215         gdk_keymap_get_direction): New functions.
1216
1217 Tue Jun 12 12:41:27 2001  Jonathan Blandford  <jrb@redhat.com>
1218
1219         * gtk/gtktreemodel.h (GTK_TREE_MODEL_LIST_ONLY): further justify
1220         gtk_tree_model_get_flags by adding a second flag for atk.
1221
1222         * gtk/gtktreemodel.c: make cursor behavior interact better with
1223         mouse presses.
1224
1225 Mon Jun 11 12:43:08 2001  Jonathan Blandford  <jrb@redhat.com>
1226
1227         * gtk/gtktreeview.c (gtk_tree_view_class_init): changed
1228         expand_row/collapse_row to be 2 signals each -- test_expand_row
1229         and row_expanded as well as test_collapse_row and row_collapsed.
1230
1231 2001-06-10  Anders Carlsson  <andersca@codefactory.se>
1232
1233         * demos/gtk-demo/stock_browser.c (do_stock_browser): Update
1234         signal name to be changed instead of selection_changed.
1235
1236 2001-06-08  Havoc Pennington  <hp@redhat.com>
1237
1238         * gtk/gtkentry.c (gtk_entry_class_init): add read-only
1239         "scroll_offset" property for notification when the layout offsets
1240         may have changed
1241         (gtk_entry_adjust_scroll): add notify for scroll_offset
1242         (gtk_entry_layout_index_to_text_index): function to compensate for
1243         preedit string when doing coordinate stuff on the entry's layout
1244         (gtk_entry_text_index_to_layout_index): inverse function
1245         (gtk_entry_get_layout_offsets): hook to get current position of
1246         the layout      
1247         (gtk_entry_get_layout): hook to get the layout itself.
1248
1249         * gtk/gtklabel.c (gtk_label_get_layout): new function
1250
1251 Fri Jun  8 19:49:29 2001  Jonathan Blandford  <jrb@redhat.com>
1252
1253         * gtk/gtktreeview.c (gtk_tree_view_real_select_cursor_row): New
1254         keybinding.
1255         (gtk_tree_view_focus): Fix merge conflict.
1256
1257 Fri Jun  8 18:41:30 2001  Jonathan Blandford  <jrb@redhat.com>
1258
1259         * gtk/gtktreeview.c (gtk_tree_view_set_cursor): new function to
1260         clean up cursor handling.
1261
1262 2001-06-08  Havoc Pennington  <hp@redhat.com>
1263
1264         * gtk/gtktextbuffer.c (gtk_text_buffer_get_start_iter): added this
1265         function
1266
1267         * gtk/gtktextview.c (gtk_text_view_get_default_attributes): added
1268         this function
1269
1270 2001-06-08  Alex Larsson  <alexl@redhat.com>
1271
1272         * gtk/gtkcompat.h.in:
1273         Added compat macros for all old GTK_TYPE_GDK_xxx types.
1274         Fixes bug #52892
1275
1276 2001-06-08  Havoc Pennington  <hp@redhat.com>
1277         
1278         * gtk/gtkhsv.h (struct _GtkHSVClass): had GtkContainerClass as
1279         parent still
1280
1281 2001-06-08  Havoc Pennington  <hp@redhat.com>
1282
1283         * gtk/gtktextbuffer.c (gtk_text_buffer_remove_all_tags): geez,
1284         don't call g_list funcs on GSList
1285
1286         * gtk/gtkwidget.c (gtk_widget_child_focus): replaces
1287         gtk_container_focus(), since some widgets have focusable locations
1288         which are not other widgets. These widgets should not have to be 
1289         containers just to manage the focus. For example, GtkHSV is
1290         currently a container for no good reason. Also, this cleans
1291         up the "if (is_container && is_sensitive && is_drawable)
1292         container_focus ()" mess in widget implementations.
1293
1294         * gtk/gtkcontainer.c (gtk_container_focus): deprecate this
1295         function, and have it just call gtk_widget_child_focus().
1296
1297         * gtk/gtkhsv.c: derive from widget not container
1298         
1299         Throughout: fix to reflect GtkContainer::focus change
1300         
1301 Fri Jun  8 12:38:49 2001  Jonathan Blandford  <jrb@redhat.com>
1302
1303         * gtk/gtktable.c (gtk_table_resize): warn if row/cols are out of
1304         range.  Fix bug #55921
1305
1306         * gtk/gtkliststore.c (gtk_list_store_new_with_types): fix doc bug
1307         (#55920).
1308
1309 Fri Jun  8 12:03:07 2001  Owen Taylor  <otaylor@redhat.com>
1310
1311         * gdk/gdkkeys.[ch]: Add a direction-changed signal,
1312         and gdk_keymap_get_current_direction().
1313
1314         * gdk/x11/gdkevents-x11.c gdk/x11/gdkkeys-x11.c
1315           gdk/x11/gdkmain-x11.c gdk/x11/gdkprivate-x11.h: Track
1316         the current locked group, use it to set the keymap
1317         direction.
1318
1319         * gtk/gtksettings.c: Add a new gtk-split-cursor setting
1320         to determine whether we draw a split cursor or use
1321         a jumping cursor based on the current direction.
1322
1323         * gtk/gtkentry.c gtk/gtktextview.c gtk/gtktextlayout.[ch]:
1324         Obey the split cursor setting. 
1325
1326 Fri Jun  8 11:57:50 2001  Owen Taylor  <otaylor@redhat.com>
1327
1328         * gtk/gtkimmulticontext.c (activate_cb): Only activate
1329         when toggling on, not when toggling off... (#55906)
1330
1331 Wed Jun  6 10:37:07 2001  Owen Taylor  <otaylor@redhat.com>
1332
1333         * gtk/gtkwidget.c (gtk_widget_set_double_buffered): 
1334         s/gdk_window_begin_paint/gdk_window_begin_paint_region/
1335         in docs. (#55812, Vitaly Tishkov)
1336
1337 2001-06-08  Anders Carlsson  <andersca@codefactory.se>
1338
1339         * demos/gtk-demo/main.c (create_tree): Changed signal name from
1340         selection_changed to changed in signal connection to GtkTreeSelection,
1341         also used g_signal_connectc since GtkTreeSelection is now a GObject.
1342
1343 Thu Jun  7 18:25:42 2001  Jonathan Blandford  <jrb@redhat.com>
1344
1345         * gtk/gtktreeselection.c: Now it's a GObject instead of a
1346         GtkObject.  The GtkTreeSelection::selection_changed signal is now
1347         the GtkTreeSelection::changed signal.
1348
1349         * gtk/gtktreeview.c: Modified to deal with new GtkTreeSelection
1350         object.
1351
1352         * tests/gtktree*.c: Modified to deal with new GtkTreeSelection
1353         object.
1354
1355 2001-06-07  Havoc Pennington  <hp@redhat.com>
1356
1357         * gtk/Makefile.am: fix glib-mkenums and glib-genmarshal again
1358
1359 2001-06-07  Havoc Pennington  <hp@redhat.com>
1360         
1361         * gtk/Makefile.am: fixups for glib-mkenums and glib-genmarshal
1362         (not tested yet because with absolute path to srcdir I can't build
1363         atk, but it was broken anyway so this may help) 
1364
1365 2001-06-07  Havoc Pennington  <hp@redhat.com>
1366
1367         * configure.in: output m4macros/Makefile
1368         
1369 Wed Jun  6 21:59:16 2001  Jonathan Blandford  <jrb@redhat.com>
1370
1371         * gtk/gtktreeview.c (gtk_tree_view_size_allocate): hook up arrow
1372         buttons.  Fixes #55460 reported by matthiasc@poet.de.
1373
1374 Wed Jun  6 21:18:54 2001  Jonathan Blandford  <jrb@redhat.com>
1375
1376         * gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): centralize
1377         expansion/collapsing so it only happens in one place.
1378         (gtk_tree_view_real_expand_row): ditto.
1379
1380 2001-06-07  Havoc Pennington  <hp@redhat.com>
1381
1382         * tests/Makefile.am: add missing -I flag
1383
1384         * gtk/Makefile.am: use @GLIB_MKENUMS@, @GLIB_GENMARSHAL@, etc.
1385
1386         * configure.in: use pkg-config to see if GModule is
1387         supported; fix to properly turn on included loaders 
1388         when GModule isn't supported; don't use AC_CHECK_LIB 
1389         when libs are not installed yet
1390
1391         * autogen.sh: add support for AUTOGEN_SUBDIR_MODE
1392
1393         * Makefile.am (SUBDIRS): add m4macros subdir
1394
1395         * gtk/Makefile.am: $(srcdir)/foo targets must be $(srcdir)/foo in
1396         dependencies also.
1397
1398 Wed Jun  6 19:31:11 2001  Jonathan Blandford  <jrb@redhat.com>
1399
1400         * gtk/gtktreeview.c (gtk_tree_view_set_model): fix silly bug
1401         reported by "Padraig O'Briain" <Padraig.Obriain@Sun.COM>.
1402
1403 Wed Jun  6 20:01:38 2001  Jonathan Blandford  <jrb@redhat.com>
1404
1405         * gtk/gtktreeview.c
1406         (gtk_tree_view_real_expand_collapse_cursor_row): Handle key
1407         bindings to expand and collapse rows.
1408         (gtk_tree_view_real_select_cursor_parent): New key binding.
1409         (gtk_tree_view_real_toggle_cursor_row): New key binding.
1410
1411         * gtk/gtkmarshal.list: new
1412         marshaller. (VOID__BOOLEAN_BOOLEAN_BOOLEAN)
1413
1414 2001-06-06  Havoc Pennington  <hp@redhat.com>
1415
1416         * gtk/gtkrange.c (gtk_range_class_init): add "inverted" property
1417
1418         * gtk/gtkscale.c (gtk_scale_class_init): Change Page Up and Page
1419         Down to move visually rather than logically, since it confuses 
1420         people. Add -/+ and Ctrl--/+ bindings for logical movement.
1421
1422 2001-06-06  Alex Larsson  <alexl@redhat.com>
1423
1424         * gdk/linux-fb/gdkmain-fb.c (_gdk_windowing_init_check):
1425         Fix up error messages.
1426
1427 Wed Jun  6 10:34:42 2001  Owen Taylor  <otaylor@redhat.com>
1428
1429         * gtk/gtktooltips.h: Include gtkwidget.h 
1430         (#55798, Karl Nelson)
1431
1432         * gdk/x11/gdkwindow-x11.c (utf8_is_latin1): 0xff is
1433         a valid latin-1 character. (Marc Lehmann, #35467)
1434
1435         * gdk/x11/gdkwindow-x11.c: Fix minor typo in comment. 
1436         (Marc Lehmann, #35467)
1437         
1438 2001-06-05  Alex Larsson  <alexl@redhat.com>
1439
1440         * demos/gtk-demo/appwindow.c (do_appwindow):
1441         Don't swap the order of the args to gtk_widget_destroyed.
1442
1443         * tests/testgtk.c (destroy_properties):
1444         Don't crash when the properties window is destroyed.
1445
1446         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_new_from_stock):
1447         Use with_mnemonics to handle the case of stock items with
1448         underscores in them.
1449
1450 2001-06-05  Havoc Pennington  <hp@redhat.com>
1451
1452         * gtk/gtktextiter.c (gtk_text_iter_order): rename from 
1453         gtk_text_iter_reorder
1454
1455 2001-06-05  Havoc Pennington  <hp@redhat.com>
1456
1457         * gtk/gtktoolbar.c (gtk_toolbar_remove_space): new function
1458
1459 2001-06-05  Havoc Pennington  <hp@redhat.com>
1460
1461         * gtk/gtkspinbutton.c (gtk_spin_button_set_range): clamp the value 
1462         to the range that was set
1463
1464         * gtk/gtkrange.c: add value_changed signal, primarily 
1465         intended for use with GtkScale
1466         (gtk_range_set_increments): new function
1467         (gtk_range_set_range): new function with weird name
1468         (gtk_range_set_value): new function
1469         (gtk_range_get_value): new function
1470
1471         * gtk/gtkspinbutton.c (gtk_spin_button_get_value): rename 
1472         from gtk_spin_button_get_value_as_float(). Compat #define
1473         added for get_value_as_float.
1474
1475         * gtk/gtkhscale.c (gtk_hscale_new_with_range): new function
1476
1477         * gtk/gtkvscale.c (gtk_vscale_new_with_range): new function
1478
1479 Tue Jun  5 14:57:18 2001  Jonathan Blandford  <jrb@redhat.com>
1480
1481         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_get_size): Fix bug #55573
1482
1483 Mon Jun  4 12:41:25 2001  Owen Taylor  <otaylor@redhat.com>
1484
1485         * gtk/gtkwidget.h: Deprecate gtk_widget_set().
1486
1487         * tests/testgtk.c (create_tooltips): Remove usage of
1488         gtk_widget_set().
1489
1490 2001-06-05  Havoc Pennington  <hp@redhat.com>
1491
1492         * gtk/gtkcolorsel.c: Use new mnemonic convenience functions
1493
1494         Applying patch from Jeff Franks, with function docs added.
1495         
1496         * gtk/gtkcheckbutton.c (gtk_check_button_new_with_mnemonic):
1497         remove call to set_mnemonic_widget, change docs a bit.  
1498
1499         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_new_with_mnemonic):
1500         new function
1501
1502         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_new_with_mnemonic):
1503         new function
1504
1505         * gtk/gtkmenuitem.c (gtk_menu_item_new_with_mnemonic): new function
1506
1507         * gtk/gtkradiobutton.c (gtk_radio_button_new_with_mnemonic): new
1508         function
1509         (gtk_radio_button_new_with_mnemonic_from_widget): new function
1510
1511         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_new_with_mnemonic):
1512         new function
1513
1514         * gtk/gtktogglebutton.c (gtk_toggle_button_new_with_mnemonic): new
1515         function        
1516
1517         * gtk/gtklabel.c (gtk_label_new_with_mnemonic): Improve docs on 
1518         auto-selection of mnemonic widget.
1519
1520 Mon Jun  4 15:05:24 2001  Jonathan Blandford  <jrb@redhat.com>
1521
1522         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_max_width):
1523         Fix segfault found by Vitaly Tishkov <tvv@sparc.spb.su>.
1524         (gtk_tree_view_column_set_min_width): ditto.
1525
1526 Tue Jun  5 11:04:06 2001  Owen Taylor  <otaylor@redhat.com>
1527
1528         * gdk/gdkpixmap.h (GDK_PIXMAP_GET_CLASS): 
1529         s/GdkPixmapClass/GdkPixmapObjectClass/. (#51890, Jeff Franks)
1530
1531 Mon Jun  4 12:50:11 2001  Owen Taylor  <otaylor@redhat.com>
1532
1533         * gtk/gtkctree.c (gtk_ctree_insert_gnode): Add a missing
1534         gtk_clist_thaw().
1535
1536 2001-06-04  Havoc Pennington  <hp@pobox.com>
1537
1538         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Ignore 
1539         releases for buttons 6, 7
1540
1541 2001-06-04  Havoc Pennington  <hp@redhat.com>
1542
1543         * gtk/gtkseparatormenuitem.h: Fix a search-and-replace screwup
1544         (s/CHECK/SEPARATOR/ gone awry). Patch from Jeff Franks, bug
1545         #55562
1546
1547 2001-06-04  Havoc Pennington  <hp@redhat.com>
1548
1549         * gtk/gtktextview.c (gtk_text_view_size_request): handle case
1550         where text_view->layout == NULL by assuming its size is 0, 
1551         i.e. same as if we haven't done any reflow. Reported by 
1552         Hidetoshi Tajima #55448 
1553
1554 2001-06-04  Havoc Pennington  <hp@redhat.com>
1555
1556         * gdk/x11/gdkevents-x11.c (gdk_event_translate): support button 6
1557         and 7 for scroll left/right, from Thomas Broyer
1558
1559 2001-05-10  Havoc Pennington  <hp@redhat.com>
1560
1561         * gtk/gtksettings.c (gtk_settings_get_property): Handle case where
1562         we need to parse the xsetting as if it were an RC file string.
1563
1564         * gtk/gtkcolorsel.c (gtk_color_selection_class_init): load initial
1565         value of palette from settings, not from static variable
1566
1567         * gdk/x11/gdkevents-x11.c: add color palette, toolbar mode to
1568         xsettings translation table
1569
1570         * gtk/gtktoolbar.c (gtk_toolbar_new): Remove arguments, because 
1571         hardcoding the toolbar style conflicts with new customizable 
1572         toolbar style philosophy
1573         (gtk_toolbar_class_init): add settings for default toolbar style;
1574         these are used unless the app specifically forces a toolbar style
1575
1576         * gtk/gtksettings.c (settings_install_property_parser): only
1577         return at the start if we warn and parser == NULL
1578
1579         * gtk/gtkcolorsel.c (gtk_color_selection_finalize): disconnect the
1580         palette changed handler so we don't notify dead color selections
1581
1582         * gtk/gtkstyle.c (gtk_default_draw_shadow): handle
1583         xthickness/ythickness of 0 or 1 properly 
1584         (gtk_default_draw_resize_grip): clear the background behind the
1585         resize grips, and align to bottom right if we square the 
1586         area to be drawn.
1587
1588         * gtk/gtkstatusbar.c (gtk_statusbar_init): set horizontal usize on 
1589         statusbar label to 1, so it doesn't make toplevels resize oddly
1590         (gtk_statusbar_size_request): add grip size to request
1591         (gtk_statusbar_size_allocate): hack so the hbox still works with 
1592         the grip size in the request
1593
1594         * gtk/gtktoolbar.c (gtk_toolbar_show_all): override to fix 
1595         bug where showing all on a toplevel makes the toolbar 
1596         button text appear despite the toolbar mode
1597
1598         * gtk/gtkmenubar.c: add internal padding style property
1599
1600         * gtk/gtktoolbar.c: Add internal padding style property; add
1601         shadow type style property
1602
1603         * gtk/gtkmenubar.c (gtk_menu_bar_paint): paint box with widget
1604         state; and put Container::border_width outside the frame
1605
1606         * gtk/gtktextview.c: don't draw focus rectangle if we're in
1607         interior focus mode, we just use blinking cursor
1608
1609 2001-06-04  Havoc Pennington  <hp@redhat.com>
1610
1611         * configure.in: Make gdk-pixbuf have same version number as GTK
1612
1613 2001-06-04  Havoc Pennington  <hp@redhat.com>
1614
1615         * gtk/gtkspinbutton.c: Get rid of stupid g_return_if_fail on 
1616         digits greater than 6. If there actually are limits (which there
1617         likely aren't), should clamp to them not warn.
1618         (gtk_spin_button_new_with_range): don't take log of 0
1619         (gtk_spin_button_size_request): use digits to compute size
1620         request, rather than step increment.
1621
1622         * tests/testgtk.c (create_spins): test larger values of digits
1623         
1624         * gtk/gtkfontsel.c (gtk_font_selection_init): scroll to selected
1625         font on map not expose, so we don't get weirdness during scrolling
1626
1627 2001-06-04  Havoc Pennington  <hp@redhat.com>
1628
1629         * gtk/gtkclist.c (vadjustment_value_changed): Apply fix from
1630         Sam Solon, bug #54577, update value even if not drawable.
1631
1632 2001-06-04  Havoc Pennington  <hp@redhat.com>
1633
1634         * gtk/gtkrange.c (gtk_range_scroll_event): change SCROLL_RIGHT to
1635         SCROLL_LEFT, reported by Thomas Broyer.
1636
1637 2001-06-04  Havoc Pennington  <hp@redhat.com>
1638
1639         * gtk/gtkrange.c (gtk_range_adjustment_value_changed): 
1640         Process updates immediately, to prevent funny lag effect
1641         when scrolling, at some mild potential efficiency cost.
1642
1643 2001-06-04  Havoc Pennington  <hp@redhat.com>
1644
1645         * gtk/gtkrange.c (gtk_range_button_press): on middle click, center
1646         slider on the click.
1647
1648 2001-06-03  Havoc Pennington  <hp@pobox.com>
1649
1650         * gtk/gtkstyle.c (gtk_default_draw_slider): make this special-case
1651         hscale/vscale details, so we can use it for scrollbar as well.
1652
1653         * tests/testgtk.c (reformat_value): honor digits from GtkScale
1654
1655         * gtk/gtkenums.h (GtkTroughType): Remove this enum
1656         (GtkScrollType): add START and END from GtkTroughType
1657
1658         * gtk/gtkstyle.c (gtk_default_draw_slider): was not properly using
1659         its x/y arguments
1660
1661         * gtk/gtkrange.h, gtk/gtkrange.c, gtk/gtkscrollbar.h,
1662         gtk/gtkscrollbar.c, gtk/gtkscale.h, gtk/gtkscale.c,
1663         gtk/gtkhscrollbar.h, gtk/gtkhscrollbar.c, gtk/gtkvscrollbar.h,
1664         gtk/gtkvscrollbar.c, gtk/gtkhscale.h, gtk/gtkhscale.c,
1665         gtk/gtkvscale.h, gtk/gtkvscale.c: Rewrite GtkRange and subclasses.
1666
1667         Notable changes in the process:
1668          
1669         - stepper_size style property is the height for vertical 
1670           ranges, width for horizontal; the other dimension matches
1671           the trough size
1672         - add ability to do NeXT-style steppers (and several other styles
1673           that don't make any sense)
1674         - added min_slider_length, fixed_slider_length properties to
1675           GtkScrollbar
1676         - cleaned some private (or at least useless) functions out of
1677           gtkscale.h    
1678         - moved bindings to GtkScale from subclasses, even arrow keys,
1679           since blind users don't know scale orientation.
1680         - change move_slider action signal to use new GtkScrollType,
1681           remove GtkTroughType argument
1682         - digits rounds the values a range will input to the given 
1683           number of decimals, but will not try to force adjustment 
1684           values set by other controllers. That is, we no longer
1685           modify adjustment->value inside a value_changed handler.
1686         - added getters for GtkScale setters
1687         - middle-click begins a slider drag
1688         
1689 Fri Jun  1 18:54:47 2001  Jonathan Blandford  <jrb@redhat.com>
1690
1691         * gtk/gtktreeview.c: (gtk_tree_view_focus): Initial stab at
1692         getting the focus code to work.
1693         (gtk_tree_view_class_init): Add a bunch of keybindings.
1694
1695         * gtk/gtktreeviewcolumn.c
1696         (gtk_tree_view_column_set_cell_data_func):
1697         s/GtkCellDataFunc/GtkTreeCellDataFunc.
1698         (_gtk_tree_view_column_set_tree_view): Use "notify::model" instead
1699         of "properties_changed" to help justify the death of the latter
1700         signal. (-:
1701
1702         * tests/testtreefocus.c (main): Let some columns be focussable to
1703         test focus better.
1704
1705 2001-06-01  Havoc Pennington  <hp@redhat.com>
1706
1707         * gtk/gtkentry.c (gtk_entry_commit_cb): implement overwrite mode
1708         
1709         * gtk/gtktextview.c (gtk_text_view_commit_handler): don't
1710         overwrite in overwrite mode if we already deleted the selection
1711         and replaced it with new text.  
1712
1713         * gtk/gtklabel.c (gtk_label_select_region_index): if you set the
1714         selection to an empty range, clear the clipboard if we owned it.
1715         (gtk_label_set_selectable): give up selection if we become
1716         unselectable.
1717         (gtk_label_state_changed): override state changed to unselect text
1718         when insensitive
1719         (get_text_callback): add paranoia check that indexes aren't
1720         outside of label->text
1721         (gtk_label_select_region): make -1 for start_offset mean "end of
1722         label," for consistency with GtkEditable
1723
1724         * gtk/gtkmessagedialog.c (gtk_message_dialog_new): honor
1725         GTK_DIALOG_NO_SEPARATOR flag
1726
1727 Fri Jun  1 11:47:11 2001  Owen Taylor  <otaylor@redhat.com>
1728
1729         * gtk/gtkcombo.c (gtk_combo_set_use_arrows_always): Fix 
1730         notifications on non-existant "enable_arrow_keys".
1731         (#53753, Skip Montanaro)
1732
1733 Fri Jun  1 11:31:55 2001  Owen Taylor  <otaylor@redhat.com>
1734
1735         * gdk/gdkrectangle.c (gdk_rectangle_get_type): Add 
1736         GDK_TYPE_RECTANGLE.
1737
1738         * gtk/gtkwidget.c (gtk_widget_class_init): Fix type
1739         of allocation argument be GDK_TYPE_RECTANGLE.
1740
1741 Thu May 31 12:43:57 2001  Owen Taylor  <otaylor@redhat.com>
1742
1743         * gtk/gtkoptionmenu.c: Account for the fact that the border
1744         width is _outside_ the window. (Fixes #54585, bug found
1745         by Bastien Nocera.)
1746
1747 Wed May 30 15:56:30 2001  Owen Taylor  <otaylor@redhat.com>
1748
1749         * gtk/gtksettings.c (gtk_settings_get_property): Validate
1750         value from GDK settings against parameter spec.
1751
1752         * gdk/x11/gdkevents-x11.c (gdk_setting_get): Add assignments
1753         to temporary values and use g_value_transform(), since
1754         thinking that GValue was going to be easy or efficient
1755         to use was, of course, a mistake.
1756
1757         * gtk/gtksettings.c: Add cursor blink setting.
1758         
1759         * gdk/x11/gdkevents-x11.c: Add cursor blink X settings.
1760
1761         * gtk/gtkentry.c: Add cursor blinking.
1762
1763         * gtk/gtktextview.c (gtk_text_view_check_cursor_blink): Use
1764         cursor blink global settings.
1765
1766         * gtk/gtkentry.c (gtk_entry_button_press): Add notification
1767         for :text_position in places where it is missing.
1768
1769 Tue May 29 18:17:11 2001  Owen Taylor  <otaylor@redhat.com>
1770
1771         * autogen.sh (have_libtool): Fix GNU sedism (#55430)
1772
1773 Tue May 29 17:40:29 2001  Owen Taylor  <otaylor@redhat.com>
1774
1775         * configure.in (GTK_DEP_CFLAGS): Use $PKG_CONFIG,
1776         not pkg-config. (#51032)
1777
1778         * gdk/gdkproperty.h: Remove inappropriate G_GNUC_CONST
1779         (fixes #51952, James Henstridge)
1780         
1781 2001-05-27  Alexander Larsson  <alla@lysator.liu.se>
1782
1783         * gtk/gtkstock.h (GTK_STOCK_GO_UP):
1784         Rename to the more correct gtk-go-up.
1785
1786         * gtk/stock-icons/stock_menu_sort_ascending.png:
1787         Added new file.
1788         
1789         * gtk/stock-icons/stock_menu_sort_descending.png:
1790         Changed to show descending instead of ascending.
1791
1792         * gtk/gtkiconfactory.c:
1793         Added menu size icon to sort ascending.
1794
1795         * gtk/stock-icons/Makefile.am:
1796         Added stock_menu_sort_ascending.png.
1797         
1798         * gtk/gtkseparatormenuitem.c:
1799         Use correct typenames.
1800
1801 Sun May 20 20:07:35 2001  Tim Janik  <timj@gtk.org>
1802
1803         * gtk/gtksignal.[hc] (gtk_signal_connect_full): make hanlder id a
1804         gulong as in GSignal.
1805
1806 Fri May 25 19:04:17 2001  Jonathan Blandford  <jrb@redhat.com>
1807
1808         * gtk/gtktreeview.c (gtk_tree_view_calc_size): Remove almost all
1809         instances of GtkCellRenderer in code (all but dnd icon code).
1810         Virtualized in GtkTreeViewColumn.  Now I need to move focus in
1811         there, and I can do multiple Cells per column.
1812
1813         * gtk/gtktreeviewcolumn.c: Proxy all cell calls correctly
1814
1815         * gtk/gtktreemodel.c (gtk_tree_row_reference_new_proxy): fix bug
1816         when model was unreffed prior to removing the row reference.
1817
1818 2001-05-25  Havoc Pennington  <hp@redhat.com>
1819
1820         * gtk/gtkiconfactory.c: fix so that default icons are created if 
1821         you call gtk_stock_list_ids()
1822
1823         * demos/gtk-demo/stock_browser.c (create_model): sort stock items
1824         in list
1825
1826 2001-05-25  Havoc Pennington  <hp@redhat.com>
1827
1828         * gtk/gtkiconfactory.c (gtk_icon_set_get_sizes): get sizes an icon
1829         set can render without falling back to missing image icon
1830
1831         * gtk/gtktextview.c (gtk_text_view_size_request): request full
1832         size of text, instead of random values
1833
1834         * gtk/gtktreeview.c (gtk_tree_view_size_request): request full
1835         size of tree view, instead of random values
1836
1837         * gtk/gtkiconfactory.c (gtk_icon_set_render_icon): render fallback
1838         image in an appropriate size
1839
1840         * gtk/gtkstock.h: Rename the stock items including _BUTTON_,
1841         etc. not to include that. i.e. s/GTK_STOCK_BUTTON_OK/GTK_STOCK_OK/
1842
1843         Throughout: fix GTK_STOCK_BUTTON_ instances
1844         
1845         * gtk/gtkstock.h, gtk/gtkstock.c, gtk/gtkiconfactory.h,
1846         gtk/gtkiconfactory.c, gtk/stock-icons/Makefile.am:
1847         Add a bunch of new stock items/icons
1848
1849         * gtk/gtktreeview.c (gtk_tree_view_insert_column_with_data_func):
1850         new function, convenience for inserting columns with a data func
1851
1852         * gtk/gtkiconfactory.c: keep a list of all existing icon factories
1853         (_gtk_icon_factory_list_ids): use list of all factories to
1854         generate a list of all known IDs
1855
1856         * gtk/gtkstock.c (gtk_stock_list_ids): replace
1857         gtk_stock_list_items() with a function that returns all IDs known
1858         including those for GtkIconFactory.
1859
1860 2001-05-25  Hans Breuer  <hans@breuer.org>
1861
1862         * gdk/win32/gdkgc-win32.c : made fil mode GDK_STIPPLED actually
1863         work -> check boxes and radio buttons are drawn now, even on win9x.
1864         Improved line settings a bit, still no clue how to get really dotted
1865         lines on win9x, on NT it's PS_ALTERNATE.
1866
1867         * gdk/win32/gdkwindow-win32.c : use SafeAdjustWindowRect for 
1868         GDK_HINT_MIN_SIZE as well
1869
1870         * gdk/win32/makefile.am : added gdkkeys-win32.c to EXTRA_DIST
1871
1872         * gtk/gtk.def : updated
1873
1874         * gtk/gtktreeprivate.h : change column_drop_func to be a function
1875         pointer not a function pointer pointer
1876
1877         * tests/testdnd.c : include <stdlib.h> for putenv prototype
1878
1879         * tests/testsocket.c : made it compile on win32 again
1880
1881         * tests/makefile.msc : one more test-app uses prop-editor.obj
1882
1883 2001-05-22  Havoc Pennington  <hp@pobox.com>
1884
1885         * gtk/gtkbin.c (gtk_bin_get_child): New function
1886
1887 Wed May 23 20:07:53 2001  Owen Taylor  <otaylor@redhat.com>
1888
1889         * gtk/gtkimcontextsimple.c: Add Mode_Switch to list of keys
1890         to ignore when doing compose processing.
1891
1892 2001-05-22  Joe Shaw  <joe@ximian.com>
1893
1894         * gtk/gtktextiter.c (_gtk_text_btree_get_iter_at_last_toggle): 
1895         Simplify as suggested by Havoc. Just get the last iter and work
1896         backward to the tag instead of getting a line and working back from
1897         there. Fixes passing in an invalid offset to
1898         iter_init_from_byte_offset().
1899
1900 Tue May 22 16:25:27 2001  Jonathan Blandford  <jrb@redhat.com>
1901
1902         * gtk/gtktreeview*.h: 
1903         * gtk/gtkcell*.h:
1904         * gtk/gtk*store.h:
1905         Added patch from Jeff Franks <jcf@tpg.com.au> to add GET_CLASS
1906         macros to all objects.
1907
1908 Tue May 22 15:13:52 2001  Jonathan Blandford  <jrb@redhat.com>
1909
1910         * gtk/gtkcellrenderertext.c
1911         (gtk_cell_renderer_text_set_fixed_size): Evil function to deal
1912         with very large (TM) amounts of text.  May be moved to
1913         GtkCellRenderer in the future, though I'm not sure it wants to be
1914         this accessible.
1915
1916         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_update_button):
1917         More sanity brought to this class.  I like it.
1918
1919         * tests/testtreecolumns.c (ViewColumnModel): Amazingly scary test
1920         case.  Kids, don't try this at home.
1921
1922         * gtk/gtktreemodel.c (gtk_tree_model_get_iter_root): new
1923         convenience function.
1924
1925         * gtk/gtkwindow.c (gtk_window_set_geometry_hints): Fix typo in docs.
1926
1927 2001-05-21  Alexander Larsson  <alexl@redhat.com>
1928
1929         * gtk/gtkfontsel.c:
1930         Added properties. Based on patch by Lee Mallabone.
1931
1932         * gtk/gtkruler.c:
1933         * gtk/gtkhruler.c:
1934         * gtk/gtkvruler.c:
1935         * gtk/gtktext.c:
1936         * gtk/gtktextview.c:
1937         Converted GtkArg to GParam. Based on patches by John Margaglione.
1938
1939         * tests/Makefile.am:
1940         * tests/testtext.c:
1941         Add a property editor to testtext.
1942         
1943 Mon May 21 11:29:21 2001  Owen Taylor  <otaylor@redhat.com>
1944
1945         * gtk/gtk{h,v,}paned.c: Only show the separator if 
1946
1947         * configure.in: Fixed reversed conditional causing all image
1948         libraries to be linked in.
1949
1950 2001-05-21  Joe Shaw  <joe@ximian.com>
1951
1952         * gtk/gtklayout.c (gtk_text_layout_get_lines): Remove the assertion
1953         that top_y needs to be >= 0.
1954
1955 2001-05-11  Havoc Pennington  <hp@pobox.com>
1956         
1957         * gdk/x11/gdkmain-x11.c: Improve error messages for X errors and
1958         losing connection to the X server.
1959
1960 Sun May 20 13:59:20 2001  Owen Taylor  <otaylor@redhat.com>
1961
1962         * configure.in: Start checks for X from pangox/pangoxft
1963         CFLAGS to avoid duplicate libraries.
1964
1965         * gdk/Makefile.am (LDFLAGS): Remove extra -lm.
1966
1967         * configure.in (GDK_PIXBUF_PACKAGES): Fix GDK_PIXBUF_PACKAGES
1968         to include gobject.
1969         
1970 2001-05-18  Alexander Larsson  <alexl@redhat.com>
1971
1972         * gtk/gtkspinbutton.c:
1973         Convert GtkArgs to GParams. Based on patch by John Margaglione.
1974         Also do size request reasonable for MAXDOUBLE. Previously it printed
1975         the limits to a buffer and overran it. Instead do it using log10() and
1976         limit the width to 10 digits.
1977         
1978         * gtk/gtkwidget.c (gtk_widget_get_property):
1979         Correctly handle setting the parent property to NULL.
1980
1981 Fri May 18 15:26:26 2001  Owen Taylor  <otaylor@redhat.com>
1982
1983         * gtk/gtktextview.c (gtk_text_view_style_set): Reset 
1984         style attributes even if the widget isn't realized.
1985
1986         * demos/gtk-demo/main.c: Use a slightly smaller font.
1987
1988 Fri May 18 14:25:20 2001  Owen Taylor  <otaylor@redhat.com>
1989
1990         * gtk/gtkcontainer.c: Remove reallocate-redraws property.
1991         This is something that only a widget writer would ever want
1992         to change.
1993
1994         * gtk/gtksignal.c: Handle G_SIGNAL_TYPE_STATIC_SCOPE for
1995         gtk_signal_emit_by_name().
1996
1997         * gtk/gtkviewport.c: Fix some warnings.
1998
1999         * gtk/gtkwidget.c gtk/gtksizegroup.c: Add "size group" facility
2000         allowing the requisitions of multiple widgets to be grouped
2001         together.
2002
2003         * tests/testgtk.c: Add GtkSizeGroup test
2004
2005         * demos/gtk-demo/sizegroup.c: Add GtkSizeGroup demo.
2006
2007         * demos/gtk-demo/main.c demos/gtk-demo/pixbufs.c: Fix some
2008         warnings.
2009
2010         * configure.in: Switch to using AM_GLIB_GNU_GETTEXT.
2011
2012 2001-04-28  Martin Baulig  <baulig@suse.de>
2013
2014         * gtk/gtkimagemenuitem.[ch]: Renamed gtk_image_menu_item_add_icon()
2015         to gtk_image_menu_item_set_icon() and made it work if there's already
2016         an image.
2017         (gtk_image_menu_item_new): This function doesn't take any arguments anymore.
2018         (gtk_image_menu_item_new_with_label): New function.
2019
2020 Thu May 17 16:20:04 2001  Jonathan Blandford  <jrb@redhat.com>
2021
2022         * demos/gtk-demo/main.c (fontify): It's the worlds ugliest
2023         highlighting code!!!!  The result is okay so long as you don't try
2024         to stress it.  It also highlights a bug in the TextView so it's in
2025         an unproportional font right now until it's fixed.
2026
2027         *demos/gtk-demo/*.c: Clean up code a bit to make it
2028         ugly-parser(TM) friendly. (-:
2029
2030 2001-05-17  Joe Shaw  <joe@ximian.com>
2031
2032         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Remove the assertions
2033         that x_offset and y_offset must be >= 0. Clip the cursor being drawn
2034         if it is only partially onscreen.
2035
2036 Thu May 17 17:10:13 2001  Owen Taylor  <otaylor@redhat.com>
2037
2038         * gtk/gtkentry.c: Make logical motion and deletion by graphemes, 
2039         not by characters.
2040
2041         * gtk/gtkentry.c: Handle "trailing" returns from Pango when they
2042         are not zero or one; that is, when graphemes of multiple characters
2043         are involved.
2044
2045         * gtk/gtktextlayout.c (line_display_index_to_iter): Remove unnecessary
2046         FIXME.
2047
2048 2001-05-17  Alexander Larsson  <alla@lysator.liu.se>
2049         
2050         * gtk/gtkbbox.c:
2051         Add properties, based on patch by Lee Mallabone.
2052
2053         * gtk/gtknotebook.c:
2054         * gtk/gtktoolbar.c:
2055         Convert from GtkArg to GParam, based on patch by John Margaglione.
2056         
2057         * gtk/gtkhscale.c:
2058         * gtk/gtkvscale.c:
2059         * gtk/gtkhscrollbar.c:
2060         * gtk/gtkvscrollbar.c:
2061         * gtk/gtkrange.c:
2062         Move adjustment property to GtkRange.
2063
2064         * gtk/gtklabel.c:
2065         Setup mnemonics on property changes
2066
2067         * gtk/gtkwidget.c (gtk_widget_get_property):
2068         GdkExtensionMode is an enum, not a flag. Set it with
2069         g_value_set_enum ().
2070
2071         * tests/prop-editor.c:
2072         Better propery editor.
2073
2074         * tests/testgtk.c:
2075         Add new property test. Pass zero to the property editor to
2076         get properties from all derived types.
2077         
2078 Sun May 13 12:01:12 2001  Owen Taylor  <otaylor@redhat.com>
2079
2080         * autogen.sh (have_automake): Require libtool-1.4,
2081         automake-1.4p1.
2082
2083         * acinclude.m4: Remove libtool macros.
2084
2085         * gdk-pixbuf/Makefile.am: Add dependencies to loade
2086         modules.
2087
2088         * gdk/Makefile.am: Add dependency on libgdk_pixbuf.la
2089         for libgdk.
2090
2091         * gtk/Makefile.am: Add dependency on libgdk_pixbuf.la
2092         libgdk.la for libgtk.
2093
2094         * modules/input/Makefile.am: Make modules have full
2095         dependencies.
2096
2097 Wed May 16 14:06:01 2001  Jonathan Blandford  <jrb@redhat.com>
2098
2099         * gtk/gtktreemodel.c (gtk_tree_path_new_from_string): fix bug
2100         #54699 where paths weren't being checked for correctness.
2101
2102 Tue May 15 20:13:24 2001  Jonathan Blandford  <jrb@redhat.com>
2103
2104         * gtk/gtktreeviewcolumn.c: You can now set all sorts of properties
2105         in any order you wan, whether or not the column is added to the
2106         tree, or the tree is realized.  Yay!
2107
2108         * gtk/gtktreeviewcolumn.c
2109         (gtk_tree_view_column_setup_sort_column_id_callback): handle
2110         sorting columns a lot saner
2111
2112         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_reorderable):
2113         new function to actually set wether or not a column is
2114         reorderable.
2115
2116         * gtk/gtktreeview.c (gtk_tree_view_unrealize): Only destroy things
2117         if we have 'em.
2118
2119         * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_set_tree_view):
2120         Fix nasty bug where we were showing the button just before
2121         realizing it.  As a result, the parent window was
2122         tree_view->window instead of tree_view->priv->header_window.
2123
2124         * gtk/gtktreeview.c (gtk_tree_view_set_reorderable): new property
2125         to let you easily reorder a list or tree.
2126
2127 2001-05-15  Alexander Larsson  <alla@lysator.liu.se>
2128
2129         * gtk/gtkpacker.c: Apply patch from John Margaglione that converts
2130         from args to properties.
2131
2132 Tue May 15 10:11:59 2001  Owen Taylor  <otaylor@redhat.com>
2133
2134         * gtk/gtkpreview.c: Apply patch from John Margaglione converting
2135         from args to properties. (#51957)
2136
2137         * gtk/gtkscale.c (gtk_scale_class_init): Move install property
2138         calls to after ->set_property call.
2139
2140 Mon May 14 14:56:21 2001  Owen Taylor  <otaylor@redhat.com>
2141
2142         * tests/prop-editor.c: Block against redundant changes.
2143
2144         * gtk/gtkpaned.c gtk/gtk[hv]paned.c: Add position, position_set
2145         properties.
2146
2147 Sun May 13 18:40:04 2001  Owen Taylor  <otaylor@redhat.com>
2148
2149         * gdk/gdkpixmap.h: Remove creative formatting.
2150
2151 Thu May 10 19:22:28 2001  Owen Taylor  <otaylor@redhat.com>
2152
2153         * gtk/gtktogglebutton.c:  Patch from John Margaglione converting to
2154         property API. (#51669)
2155
2156         * gtk/gtkscale.c: Patch from John Margaglione converting to
2157         property API. (#51891)
2158
2159         * gtk/gtkaccellabel.c: Applied patch from Lee Mallabone, converting
2160         to property API. (#50985)
2161
2162 Fri May 11 20:13:44 2001  Tim Janik  <timj@gtk.org>
2163
2164         * gtk/gtkmain.c (gtk_main_do_event): remember widget's double
2165         buffering state across expose event, so we still call end_paint().
2166
2167 2001-05-11  Alexander Larsson  <alexl@redhat.com>
2168
2169         * gtk/gtkhsv.c (paint_triangle):
2170         Expose the ring in the triangle at the correct place when
2171         exposing just a part of the triangle.
2172
2173         * gtk/gtkwindow-decorate.c (gtk_decorated_window_focus_change):
2174         Return FALSE, or window focusing will not work.
2175
2176 2001-05-11  Havoc Pennington  <hp@pobox.com>
2177
2178         * gtk/gtkimage.c (gtk_image_new_from_stock): docs, fixes bug
2179         #54144
2180
2181         * gtk/gtkcolorsel.c (gtk_color_selection_new): docs, fixes
2182         bug #54330
2183
2184 Fri May 11 02:53:57 2001  Tim Janik  <timj@gtk.org>
2185
2186         * gtk/gtktogglebutton.c (gtk_toggle_button_expose): don't
2187         propagate exposes to NULL child.
2188
2189         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed): guard
2190         against not having one of the scrollbars.
2191
2192         * gtk/gtklabel.c (gtk_label_setup_mnemonic): clean up after us,
2193         we don't keep a mnemonic window if we have no mnemonic installed.
2194
2195 Fri May 11 01:05:00 2001  Tim Janik  <timj@gtk.org>
2196
2197         * gtk/gtktypeutils.h: grum, gtk_type_class() is not GNUC_CONST
2198         it has the _important_ side effect of initializing a class.
2199
2200 2001-05-10  Alexander Larsson  <alexl@redhat.com>
2201
2202         * gdk/linux-fb/gdkprivate-fb.h:
2203         Make sure you can compile out the implementation/wrapper assert
2204         macros.
2205
2206         * gdk/linux-fb/gdkdrawable-fb2.c:
2207         Check implementation/wrappers, initialize type for pixmap dummys.
2208
2209         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image):
2210         Hide the cursor if reading from the screen.
2211
2212         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic):
2213         Fix sign bug in tiling code.
2214
2215         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_clear_area):
2216         Handle background pixmaps.
2217
2218 Wed May  9 15:27:22 2001  Jonathan Blandford  <jrb@redhat.com>
2219
2220         * gtk/gtktreeview.c (gtk_tree_view_set_column_drag_function): New
2221         function to let user control where columns are dragged.
2222
2223         * gtk/gtktreeview.c (gtk_tree_view_key_press): Cancel drags if
2224         Escape is pressed.
2225
2226 Wed May  9 09:08:44 2001  Jonathan Blandford  <jrb@redhat.com>
2227
2228         * gtk/gtktreeview.c (gtk_tree_view_class_init): New
2229         "columns_changed" signal.
2230         (gtk_tree_view_motion_draw_column_motion_arrow): Change column
2231         motion code to draw arrows to the side if indicator is outside the
2232         widget.
2233         (gtk_tree_view_map_expanded_rows): Implement.
2234
2235 2001-05-07  Alexander Larsson  <alexl@redhat.com>
2236
2237         * demos/testpixbuf-save.c: 
2238         * demos/testpixbuf-drawable.c:
2239         Include gdkfb.h on linux-fb.
2240
2241 2001-05-07  Alexander Larsson  <alexl@redhat.com>
2242
2243         * gdk/linux-fb/gdkdnd-fb.c (get_toplevel_window_at):
2244         New function for getting toplevel window at position.
2245         (gdk_drag_find_window): Use get_toplevel_window () instead
2246         of gdk_window_get_pointer(). (gdk_drag_status): Use
2247         correct context for getting window.
2248
2249         * gdk/linux-fb/gdkproperty-fb.c (gdk_atom_name):
2250         g_strdup the atom name.
2251
2252         * gdk/linux-fb/gdkwindow-fb.c:
2253         Costmetic fix.
2254
2255         * gtk/gtkdnd.c (gtk_drag_source_handle_event):
2256         Add code for changing cursor on linux-fb backend (same as
2257         win32).
2258
2259 2001-05-07  Federico Mena Quintero  <federico@ximian.com>
2260
2261         * gtk/gtkwindow.c (gtk_window_focus): Test for bin->child being
2262         present before doing anything with it.  Patch from HÃ¥vard KvÃ¥len
2263         <havardk@netcom.no>.  Fixes Ximian bugzilla #2492 (OK, the bug
2264         report was not for the development branch of GTK+, but it applies
2265         anyways).
2266
2267 2001-05-04  Havoc Pennington  <hp@redhat.com>
2268
2269         * configure.in: fix some shell typos
2270
2271         * gtk/gtkcolorsel.c (gtk_color_selection_destroy): warning fix
2272
2273         * gtk/gtkimage.c: handle animations
2274
2275         * gtk/gtkcheckbutton.c (gtk_check_button_size_request): request
2276         border_width * 2, not just border_width
2277
2278         * gtk/gtkscale.c: add "format_value" signal to allow people
2279         to override the way values are drawn.
2280         (gtk_scale_get_value_size): fix width/height mistake,
2281         and compute size from actual displayed text, not 
2282         from made-up text.
2283
2284         * gtk/gtktexttag.c (gtk_text_tag_class_init): fix return type in 
2285         signal registration
2286
2287         * tests/testtext.c: Add "Remove all tags" menu item for testing
2288
2289         * gtk/gtktextbuffer.c (gtk_text_buffer_remove_all_tags): implement
2290
2291         * demos/gtk-demo/main.c (main): add hack so we can find modules
2292         without installing gtk
2293
2294         * demos/gtk-demo/textview.c (insert_text): demo font scaling
2295
2296         * gtk/gtkcellrenderertext.c: Add "scale" property (font scaling
2297         factor)
2298         (gtk_cell_renderer_text_set_property): remove some bogus
2299         g_object_notify
2300
2301         * gtk/gtktexttag.c: add "scale" property which is a font scaling
2302         factor
2303
2304         * gtk/gtktextlayout.c (add_text_attrs): add font scale attribute 
2305         to layout
2306
2307         * gtk/gtktextiter.c (gtk_text_iter_is_start): rename from
2308         gtk_text_iter_is_first
2309
2310 2001-01-06  Hans Breuer  <hans@breuer.org>
2311
2312         * gdk/gdk.def : updated exports
2313
2314         * gdk/win32/makefile.msc : -DGDK_ENABLE_BROKEN otherwise
2315         gdk won't compile anymore
2316  
2317         * gdk/win32/gdkevents-win32.c : initialize ret_val when
2318         processing GDK_FILTER functions, initialize event.key->hardware_keycode.
2319         Improved gdk_flush () to not only do pending drawing operations
2320         but also process all currently pending events. This should make
2321         the behaviour more similar to the X11 version.  
2322
2323         * gdk/win32/gdkgc-win32.c (predraw_set_background) : a background
2324         option needs to be set even if there is no GDK_GC_BACKGROUND.
2325         (gdk_win32_hdc_get) : use predraw_set_background () independent
2326         of value_mask. This allows to draw dashed lines leaving the original
2327         background intact.
2328
2329         * gdk/win32/gdkimage-win32.c (gdk_image_new_bitamp) : free data
2330         after processing, because we can't reuse it as the X11 version does.
2331
2332         * gtk/gtk.def : updated exports
2333
2334         * gtk/makefile.msc.in : added ATK, removed all test apps. (I
2335         would like to get rid of this file again, and use straight
2336         makefile.msc again, as the other Gtk+ subdirs do)
2337
2338         * test/makefile.msc (new file) : build the test apps here
2339
2340 2001-05-05  ERDI Gergo  <cactus@cactus.rulez.org>
2341
2342         * gdk/gdkpango.c (gdk_pango_get_item_properties): Peek
2343         strike-through setting
2344         (gdk_draw_layout_line_with_colors): Render strike-through
2345
2346 Sat May  5 10:06:24 2001  Owen Taylor  <otaylor@redhat.com>
2347
2348         * Release 1.3.5
2349
2350         * configure.in (GTK_MICRO_VERSION): Up to 1.3.5
2351
2352         * NEWS: Updated
2353
2354         * demos/gtk-demo/Makefile.am (EXTRA_DIST): Fix minor
2355         Makefile breakage.
2356
2357 Sat May  5 09:18:30 2001  Owen Taylor  <otaylor@redhat.com>
2358
2359         * demos/gtk-demo/images.c (progressive_timeout): Fix
2360         typo in filename.
2361
2362         * gtk/gtktreeview.c (gtk_tree_view_row_activated): Comment
2363         out FIXME warning; just too annoying.
2364
2365 2001-05-04  Alex Larsson  <alla@lysator.liu.se>
2366
2367         * gdk/linux-fb/gdkcolor-fb.c:
2368         Better error messages.
2369
2370         * gdk/linux-fb/gdkpixmap-fb.c (gdk_pixmap_new):
2371         Initialize abs_x and abs_y.
2372         
2373         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic):
2374         Correct handling of stipple offset.
2375
2376         * gdk/linux-fb/gdkvisual-fb.c (gdk_visual_init):
2377         Treat directcolor framebuffers as truecolor.
2378         
2379 Thu May  3 14:13:49 2001  Owen Taylor  <otaylor@redhat.com>
2380
2381         * INSTALL.in HACKING gtk/gtkaccessible.[ch] gtk/gtk.c: Add
2382         dependency on Atk for accessibility support.
2383
2384         * configure.in **/Makefile.am: Major reworking of substituted
2385         variables for CFLAGS/LIBS to make a lot more sane and 
2386         keep the the compile/link lines a bit shorter.
2387
2388         * gdk/x11/gdkkeys-x11.c: Fix #endif with trailing stuff.
2389
2390 Thu May  3 08:10:54 2001  Owen Taylor  <otaylor@redhat.com>
2391
2392         * gtk/gtktexttag.c (gtk_text_tag_class_init): Fix return
2393         value to be G_TYPE_BOOLEAN, not G_TYPE_INT, also,
2394         use _gtk_boolean_handled_accumulator.
2395
2396 Thu May  3 07:00:09 2001  Owen Taylor  <otaylor@redhat.com>
2397
2398         * gtk/gtktextview.c: Patch from Juan Pablo Mendoza Mendoza
2399         to fix things so clicking inside selection leaves cursor
2400         at point where clicked. (#50324)
2401
2402         * gtk/gtksettings.c (gtk_settings_class_init): Restore
2403         sane value for default double click time.
2404
2405         * tests/testtext.c (test_init): Really path to input modules.
2406
2407 2001-05-03  Sven Neumann  <sven@convergence.de>
2408
2409         * demos/testpixbuf-save.c: include target-specific headers as
2410         done in testpixbuf-drawable.c
2411
2412 Wed May  2 20:36:38 2001  Owen Taylor  <otaylor@redhat.com>
2413
2414         * gtk/gtkentry.c (gtk_entry_real_insert_text): Reduce
2415         new_text_length appropriately when we run into the 
2416         size limit for the entry. (#53445, reported by Jeff Franks)
2417
2418         * tests/testgtk.c (create_entry): Remove most of the
2419         property toggle buttons. Replace with a "Props" button
2420         that brings up a property editor.
2421
2422         * tests/prop-editor.[ch] test/testtreeview.c tests/Makefile.am:
2423         Split the property editor code out for reuse, improve.
2424
2425 Wed May  2 17:26:22 2001  Owen Taylor  <otaylor@redhat.com>
2426
2427         * gdk/x11/gdkevents-x11.c gdk/x11/gdkwindow-x11.c: Always
2428         trap errors around calls to XSetInputFocus since we have
2429         no way of knowing reliably whether we are viewable or
2430         not. (#53947)
2431
2432 Tue May  1 09:21:23 2001  Jonathan Blandford  <jrb@redhat.com>
2433
2434         * gtk/gtktreeview.c (gtk_tree_view_button_release_drag_column):
2435         fix bug in dropping columns.  Moving columns now basically works
2436         modula some fine tuning.
2437
2438 Tue May  1 19:09:21 2001  Jonathan Blandford  <jrb@redhat.com>
2439
2440         * gtk/gtktreeview.c (gtk_tree_view_horizontal_autoscroll): Add
2441         autoscroll support.  It mostly works, but could use some fine
2442         tuning.
2443         * gtk/gtktreeview.c (gtk_tree_view_button_release_drag_column):
2444         Actually move the column.
2445
2446 Mon Apr 30 20:29:27 2001  Owen Taylor  <otaylor@redhat.com>
2447
2448         * gtk/gtkbutton.c gtk/gtkcheckbutton.c gtk/gtkoptionmenu.c 
2449           gtk/gtkspinbutton.c gtk/gtkstyle.c gtk/gtkwidget.c:
2450           New default theme! A slighly improved version of the 2.0 Raleigh
2451           theme, with Windows-esque focus/drawing default. 
2452           (GtkWidget::interior_focus defaults to TRUE.)
2453
2454         * gtk/gtkstyle.[ch]: Add a text_aa color halfway between text and base.
2455
2456 2001-04-30  Havoc Pennington  <hp@pobox.com>
2457
2458         * tests/testtext.c (line_numbers_expose): fix to work with
2459         gtk_paint_layout change
2460
2461 Mon Apr 30 19:18:07 2001  Owen Taylor  <otaylor@redhat.com>
2462
2463         * gtk/gtkstyle.[ch] gtk/gtkaccellabel.c gtk/gtkcellrenderertext.c
2464           gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c gtk/gtkprogressbar.c
2465           gtk/gtkvruler.c gtk/gtkvscale.c: Add an extra parameter
2466           use_text to gtk_paint_label() to deal with style->bg[] vs style->text[].
2467
2468         * gtk/gtkbbox.c gtk/gtkdialog.c: Tweak padding some to deal
2469           with GtkWidget::interior_focus = TRUE better.
2470
2471         * gtk/gtkbutton.c: Switch ::default_spacing to ::default_border,
2472         ::default_outside_border for more flexibility.
2473
2474         * gtk/gtkwidget.c (gtk_widget_style_get_valist): Remove 
2475         G_VALUE_NO_COPY_CONTENTS, to correspond with the recent
2476         change that had to be made with g_object_get.
2477
2478 Sun Apr 29 20:13:40 2001  Jonathan Blandford  <jrb@redhat.com>
2479
2480         * gtk/gtktreeview.c (gtk_tree_view_get_columns): new function.
2481         (gtk_tree_view_move_column_after): Clean up interface. 
2482
2483 Sun Apr 29 03:02:02 2001  Tim Janik  <timj@gtk.org>
2484
2485         * gtk/gtkpacker.h:
2486         * gtk/gtkenums.h: moved GtkAnchorType and GtkSideType from gtkpacker.h
2487          to gtkenum.h.
2488
2489         * gtk/gtkmain.c (gtk_main_do_event): silence compiler (GDK_SETTING not
2490         handled in switch).
2491
2492         * gtk/Makefile.am:
2493         (gtk.defs): generate enum portions with  glib-mkenums.
2494         (gtktypebuiltins_evals.c): generate this with glib-mkenums.
2495         got rid of makeenums.pl and makeenums.awk in distributed tarballs.
2496         
2497         * gtk/gtkaccelgroup.c (gtk_accel_group_add): refined havocs warning
2498         addition.
2499
2500         * docs/Changes-2.0.txt: keep a note on signal handlers now
2501         not getting emitted during the emission they were connected within.
2502
2503 2001-04-28  Havoc Pennington  <hp@pobox.com>
2504
2505         * gtk/gtkcolorsel.c (palette_new): fix bug in tooltip
2506
2507 2001-04-24  Havoc Pennington  <hp@redhat.com>
2508
2509         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_previous_line): 
2510         (gtk_text_layout_move_iter_to_next_line): fix these two for
2511         invisible text, lots of other stuff still hosed.
2512
2513         * gtk/gtkcolorsel.c (gtk_color_selection_set_change_palette_hook):
2514         new function, replaces the get/set palette stuff. This function 
2515         is intended for use by libgnomeui which should set the hook to a
2516         thing which sets the palette in GConf, and we need the
2517         GConf-to-xsettings proxy which will result in the change being
2518         propagated back to the GTK app.
2519
2520         * gtk/gtkaccelgroup.c (gtk_accel_group_add): add note to warning 
2521         about unusable signals that it may be because the signal has 
2522         parameters.
2523
2524         * gtk/gtkwidget.c (gtk_widget_modify_style): always copy the
2525         style, otherwise gtkrc.c won't know to create a new GtkStyle for
2526         it.
2527         (gtk_widget_modify_color_component): call
2528         gtk_widget_modify_style() so the rc style will get copied.
2529         (gtk_widget_modify_font): ditto
2530
2531         * gtk/gtkrc.c: make a couple variables static
2532
2533         * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): hide
2534         help button by default, since it does nothing
2535
2536         * gtk/gtkcolorsel.c: add tooltips, work on key navigation, fool
2537         around with UI
2538
2539         * gtk/gtkentry.c (gtk_entry_realize): request enter/leave notify
2540         so we can have tooltips
2541
2542         * gtk/gtkhsv.c (gtk_hsv_realize): request enter/leave notify so we
2543         can have tooltips
2544
2545         * gdk/gdkimage.h: mark gdk_image_new_bitmap with
2546         GDK_ENABLE_BROKEN, because its memory behavior is completely
2547         hosed.
2548
2549         * gtk/gtknotebook.c: remove key press handler, replace with
2550         binding set, add numeric keypad support
2551
2552         * gtk/gtktextview.c (gtk_text_view_class_init): accept KP_Delete
2553
2554         * gtk/gtktext.c (gtk_text_key_press): add a bunch of KP keysyms
2555
2556         * gtk/gtkentry.c (gtk_entry_class_init): accept GDK_KP_Delete in
2557         addition to plain Delete
2558
2559         * gtk/gtktextview.c (gtk_text_view_key_press_event): accept
2560         GDK_KP_Enter in addition to GDK_Return
2561
2562         * gtk/gtkfontsel.c (gtk_font_selection_size_key_press): connect to
2563         activate on entry instead of key press
2564         (gtk_font_selection_on_clist_key_press): get
2565         rid of this signal handler, not needed with new font sel.
2566
2567         * gtk/gtkfilesel.c (gtk_file_selection_key_press): remove a
2568         no-longer-needed emit_stop_by_name(), just return TRUE
2569
2570         * gtk/gtkhscrollbar.c, gtk/gtkvscrollbar.c: remove keybindings
2571         cruft, this widget is no longer focusable.
2572
2573         * gtk/gtkrange.h, gtk/gtkrange.c, gtk/gtkvscale.c,
2574         gtk/gtkhscale.c: Get rid of trough_keys virtual function, add
2575         move_slider action signal, add binding set for vscale/hscale, in
2576         the process support numeric keypad
2577
2578         * gtk/gtkentry.c (gtk_entry_class_init): Add keypad bindings; 
2579         make GDK_Return and GDK_KP_Enter activate the entry via 
2580         binding set, instead of hardcoded.
2581
2582 Fri Apr 27 20:27:21 2001  Jonathan Blandford  <jrb@redhat.com>
2583
2584         * gtk/gtktreeview.[hc]: Massive reorder/cleanup of a lot of the
2585         code.  Some documentation added.
2586
2587 2001-04-27  Havoc Pennington  <hp@redhat.com>
2588
2589         * gtk/gtkcombo.c (gtk_combo_popup_button_press): fix warning
2590
2591         * gtk/gtkmessagedialog.c (gtk_message_dialog_init): make messages selectable
2592
2593         * gtk/gtkentry.c (gtk_entry_real_insert_text): don't strip
2594         line/para separators
2595         (gtk_entry_create_layout): set single paragraph mode on the layout
2596
2597         * gtk/gtkbutton.c (gtk_button_new_from_stock): don't put much
2598         spacing between the image and label; instead, inside a button box 
2599         the button will get extra space that will go there, but if people 
2600         configure button box for 0 chubbiness, then there's no spacing.
2601
2602         * gtk/gtkbbox.c (gtk_button_box_class_init): Make child ipadding
2603         and min/max size style properties, so people can tune their
2604         chubbiness.
2605
2606         * tests/testgtk.c (make_toolbar): remove calls to removed toolbar
2607         functions
2608
2609         * gtk/gtktoolbar.c (gtk_toolbar_class_init): Make space_size,
2610         space_style, and button_relief into style properties, remove
2611         functions for setting them
2612         
2613         * gtk/gtkmenu.c (gtk_menu_key_press): handle menu bar accel to pop 
2614         it back down
2615
2616         * gtk/gtkoptionmenu.c (gtk_option_menu_get_props): free boxed
2617         types from gtk_widget_style_get
2618
2619         * gtk/gtkmenubar.c (gtk_menu_bar_set_shadow_type): Remove, replace
2620         with a style property.
2621
2622         * gdk/x11/gdkevents-x11.c: namespace the settings
2623
2624         * gtk/gtkmenubar.c: Add F10 accelerator to move between menubars.
2625
2626         * gtk/gtksettings.c (gtk_settings_class_init): remove code with
2627         side effects from inside g_assert(), so that G_DISABLE_ASSERT can
2628         be used. Also, translate doc strings for settings. Also, namespace
2629         the double-click-time property. Also, remove bell properties crap.
2630
2631 2001-04-27  Sven Neumann  <sven@gimp.org>
2632
2633         * Makefile.am: before creating links, check if pkg-config files
2634         exist for the default target. Otherwise link to the pkg-config files
2635         that got installed with this build.
2636
2637 Thu Apr 26 19:11:46 2001  Jonathan Blandford  <jrb@redhat.com>
2638
2639         * gtk/gtktreeview.c (gtk_tree_view_motion): clean up column
2640         dragging code.  Revealed some (potential) GdkWindow bugs.
2641
2642         * gdk/x11/gdkwindow-x11.c (gdk_window_reparent): add
2643         _gdk_window_init_position to the end of reparent to fix the case
2644         of reparenting when new_x != old_x and new_y != old_y.
2645
2646 Thu Apr 26 10:54:50 2001  Owen Taylor  <otaylor@redhat.com>
2647
2648         * gtk/gtkentry.c (strstr_len): Fix optimization that
2649         was correct for the use here, but completely incorrect
2650         in general.
2651
2652 Thu Apr 26 10:40:41 2001  Owen Taylor  <otaylor@redhat.com>
2653
2654         * gtk/gtkwindow.h: Remove deprecation of gtk_window_set_default_size()
2655         until patch adding gtk_window_set_size() is recommitted. 
2656
2657         * **Makefile.am configure.in gdk/x11/gdkim-11.c
2658           gtk/gtkmain.c gtk/gtkimmulticontext.c gtk/gtkmain.c
2659           gtk/gtkrc.c: Remove all traces of -DX_LOCALE support.
2660           (#10784)
2661
2662 Wed Apr 25 12:16:36 2001  Owen Taylor  <otaylor@redhat.com>
2663
2664         * gdk/X11/gdkevents-x11.c (gdk_event_translate): Test for 
2665         window == NULL in a number of cases.
2666
2667         * tests/testdnd.c: Set module path for gdk-pixbuf.
2668
2669 Thu Apr 19 16:11:07 2001  Owen Taylor  <otaylor@redhat.com>
2670
2671         * gtk/Makefile.am xembed.h: File containing #defines
2672         for XEMBED protocol.
2673
2674         * gtk/gtkplug.[ch] gtk/gtksocket.[ch]: 
2675
2676         - Change protocol from old plug/socket specific protocol
2677           to XEMBED draft
2678         - Various fixes to work with GTK+-2.0
2679
2680         Still quite a bit of work to do here to handle initiation
2681         from the socket side (as specified by XEMBED), to handle
2682         the more advanced features of XEMBED, and to figure out
2683         a good way to handle same-app embedding with less overhead
2684         than using full XEMBED.
2685
2686 Wed Apr 18 16:04:28 2001  Owen Taylor  <otaylor@redhat.com>
2687
2688         * gtk/gtkwindow.[ch] (gtk_window_real_set_focus): Keep
2689         track of whether the toplevel has the focus; only send
2690         focus-in events to the focus widget when the window
2691         actually has the focus.
2692
2693 2001-04-25  Havoc Pennington  <hp@pobox.com>
2694
2695         * gtk/gtkwindow.h: set_decorations_hint and set_functions_hint
2696         were still in the header
2697
2698 2001-04-24  Alexander Larsson  <alexl@redhat.com>
2699
2700         * gtk/gtkclist.[ch]:
2701         * gtk/gtkctree.c:
2702         When there is a row highlighted for D'n'D it must alse
2703         be painted hightlighted on exposes. Otherwise exposes from
2704         the icon being dragged will mess up the hightlight.
2705
2706         * gtk/gtkfontsel.c:
2707         Don't recenter selected font when exposing the font family
2708         clist. This means you can now actually scroll the font family
2709         list.
2710
2711         * gtk/gtknotebook.c:
2712         Fix focus movement on scrolling tabs that are placed on the left
2713         and right.
2714
2715 2001-04-21  Havoc Pennington  <hp@pobox.com>
2716
2717         * gtk/gtktextdisplay.c (gtk_text_layout_draw): handle 0-height
2718         empty/invisible lines.
2719
2720         * gtk/gtktextiter.c (gtk_text_iter_set_visible_line_offset)
2721         (gtk_text_iter_set_visible_line_index): new functions to set
2722         indexes excluding invisible text
2723
2724         * gtk/gtktextlayout.c (line_display_iter_to_index): get visible 
2725         index
2726
2727         * gtk/gtktextiter.c (gtk_text_iter_get_visible_line_index)
2728         (gtk_text_iter_get_visible_line_offset): new functions to 
2729         get indexes excluding invisible text
2730
2731         * gtk/gtkmessagedialog.c (gtk_message_dialog_init): strip out a
2732         bunch of extra padding that served no purpose
2733
2734         * gtk/gtkdialog.c: Make all the spacings configurable via style
2735         properties, for chubbiness configuration in themes
2736
2737         * tests/testtext.c: fix path to the immodules.
2738         
2739 Mon Apr 23 18:57:03 2001  Jonathan Blandford  <jrb@redhat.com>
2740
2741         * gtk/gtksocket.c (gtk_socket_filter_func): add missing '}' that
2742         got munched by #endif.
2743
2744         * gtk/Makefile.am (gtk_plug_c_sources): add missing '\'
2745
2746         * gtk/gtktreeview.c: Refactored code to clean up a number of
2747         events.
2748
2749         * gtk/gtktreemodel.c (gtk_tree_path_compare): Switched return
2750         values to make consistent with other functions.  Spotted by Jeff
2751         Franks <jcf@tpg.com.au>.
2752
2753         * gtk/gtktreeview.h (struct _GtkTreeViewClass): Fixes to signal
2754         declaration spotted by Jeff Franks <jcf@tpg.com.au>.
2755
2756 2001-04-23  Sven Neumann  <sven@gimp.org>
2757
2758         * gtk/Makefile.am
2759         * gtk/gtkplug.c
2760         * gtk/gtksocket.c: on request of Owen, reverted my last change 
2761         and exclude gtkplug.c/gtksocket.c from the build for non-X11 targets
2762
2763 2001-04-23  Sven Neumann  <sven@gimp.org>
2764
2765         * gtk/gtkplug.c: put into #ifdef GDK_WINDOWING_X11 to make GTK+
2766         compile for non-X11 targets again
2767
2768 2001-04-20  Alexander Larsson  <alexl@redhat.com>
2769
2770         * gtk/gtkcolorsel.[ch]:
2771         API Change. Take GdkColor arguments instead of gdouble *.
2772         Leave the old gtk_color_selection_set_color for compatibility,
2773         but marked deprecated.
2774         Do correct rounding when converting RGB <-> HSV.
2775         
2776         * gtk/gtkcolorseldialog.c:
2777         * tests/testgtk.c:
2778         Use new GtkColorSelection API.
2779
2780         * gtk/gtkhsv.c:
2781         Fix problem selecting colors in triangle when Hue is 330.
2782         Fix some black dots around the HSB triangle.
2783         
2784         * gtk/gtkfilesel.c:
2785         return FALSE from the focus_in_event handler to fix focus problems.
2786
2787 2001-04-18  Havoc Pennington  <hp@redhat.com>
2788
2789         * gtk/gtkwindow.c (gtk_window_class_init): add signals and binding
2790         set, so keybindings are configurable    
2791         (gtk_window_activate_default): Change to activate the focus widget
2792         instead if there's a focus widget, to be consistent with the
2793         behavior that previously existed in key_press_event
2794
2795 2001-04-18  Havoc Pennington  <hp@redhat.com>
2796
2797         * gdk/gdkkeyuni.c: Handle numeric keypad keysyms; bug #50201
2798
2799 2001-04-18  Havoc Pennington  <hp@redhat.com>
2800
2801         Close bug #50615:
2802         
2803         * gtk/gtkstyle.c (gtk_default_draw_layout): Use text_gc to draw
2804         the layout
2805
2806         * gtk/gtktext.c: Use base/text instead of bg/fg throughout
2807
2808         * gtk/gtkentry.c: Use base/text instead of bg/fg throughout
2809
2810         * gtk/gtktextdisplay.c: Use base/text instead of bg/fg throughout
2811         
2812         * gtk/gtkstyle.c (gtk_style_init): make GTK_STATE_SELECTED default
2813         to blue for base, in addition to bg
2814         
2815 2001-04-18  Havoc Pennington  <hp@redhat.com>
2816
2817         * tests/testgtk.c (create_image): allow shrinking the image window
2818         to test that we clip to allocation.
2819
2820         * gtk/gtkimage.c (gtk_image_expose): clip to allocation,
2821         #9845
2822
2823         * gtk/gtkenums.h: move GtkWrapMode in here, #50472
2824
2825 Wed Apr 18 14:23:14 2001  Owen Taylor  <otaylor@redhat.com>
2826
2827         * gdk/x11/gdkimage-x11.c (gdk_image_new): Try changing
2828         mode on shm segments to 0600. We'll see who complains.
2829
2830         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Call
2831         _gdk_windowing_window_destroy() AFTER recursing through
2832         children.
2833
2834         * tests/Makefile.am (noinst_PROGRAMS): Build testsocket,
2835         testsocket_child on X.
2836
2837         * tests/testsocket[_child].c: Fix uses of
2838         gtk_window_get_default_accel_group().
2839
2840         [ Merge patch from Ramiro Estrugo  <ramiro@eazel.com> from gtk-1-2 ]
2841
2842         * gdk/gdkimage.c: (gdk_image_get):
2843         Deal with the possibility that XGetImage() might return NULL.
2844         Allocate the GdkImagePrivate structure only after XGetImage()
2845         succeeds in order not to dereference a NULL ximage pointer.  This
2846         prevents a core dump when XGetImage() fails - which is unlikely,
2847         but can happen due to race conditions accessing the geometries of
2848         drawables.  An x error will still be triggered, but the gdk image
2849         wrapper at least wont seg fault.
2850         
2851 2001-04-18  Havoc Pennington  <hp@redhat.com>
2852
2853         * gtk/gtkimage.c: fix to properly queue resizes when the image is
2854         set
2855
2856         * gtk/gtktextview.c (gtk_text_view_do_popup): desensitize Paste
2857         if the insertion point isn't editable
2858
2859         * demos/gtk-demo/images.c: Added a GtkImage demo
2860
2861         * demos/gtk-demo/drawingarea.c: drawing area demo
2862         
2863         * demos/gtk-demo/menus.c (create_menu): cleanups
2864
2865 Wed Apr 18 12:15:52 2001  Owen Taylor  <otaylor@redhat.com>
2866
2867         * gdk/x11/gdkwindow-x11.c gdk/x11/gdkwindow-x11.h 
2868           gdk/x11/gdkevents-x11.c: Introduce an extra child
2869         of toplevel windows that serves to hold the focus to
2870         avoid events being delivered to embedded windows.
2871
2872         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Introduce
2873         some extra variables to clean up code and reduce the
2874         number of casts.
2875
2876         * gdk/x11/gdkwindow-x11.h (struct _GdkXPositionInfo): Use
2877         guint for 1 bit bit fields, not gboolean.
2878
2879 Wed Apr 18 10:04:23 2001  Owen Taylor  <otaylor@redhat.com>
2880
2881         * gtk/gtktooltips.c (gtk_tooltips_paint_window): Return FALSE,
2882         not TRUE. (Fixes #52925)
2883
2884 Tue Apr 17 18:05:34 2001  Owen Taylor  <otaylor@redhat.com>
2885
2886         * Released 1.3.4
2887
2888         * NEWS: Updated
2889
2890         * gtk/gtktextview.c (gtk_text_view_class_init): Fix to not
2891         use GTK_TYPE_ENUM.
2892
2893 Tue Apr 17 13:47:12 2001  Owen Taylor  <otaylor@redhat.com>
2894
2895         * configure.in: Don't put -lgthread in GLIB_LIBS, GLIB_DEPLIBS
2896
2897         * gtk/gtktypeutils.h gtk/gtksignals.h: Restore proper parameter
2898         names to compatibility #defines so docs work.
2899
2900         * gtk/gtkenums.h: Remove GtkMenuFactoryType
2901
2902         * gtk/gtkwindow.c gtk/gtkdnd.c: Docs cleanups.
2903
2904         * configure.in: Don't include -lgthread in GLIB_LIBS, GLIB_DEPLIBS
2905
2906         * tests/testgtkrc: No magenta cursors, please.
2907
2908         * README.in INSTALL.in HACKING README.cvs-commits: Updated.
2909
2910         * gtk/gtkenums.h (enum): Remove left over GtkMenuFactoryType.
2911         
2912 Mon Apr 16 14:38:41 2001  Owen Taylor  <otaylor@redhat.com>
2913
2914         * gtk/gtklist.c gtk/gtklistitem.c: Remove explicit pointer
2915         grabs, since they are no longer necessary.
2916
2917         * gtk/gtkcombo.c (gtk_combo_popup_button_press): Fix #52926
2918         by signal_connect() and call gtk_button_pressed() rather
2919         than signal_connect_after().
2920
2921         * tests/testgtk.c: Restore radio menu items to combos 
2922         since they'll look OK with Raleigh, and it is easier
2923         than finishing the process of removing them that was
2924         started earlier.
2925
2926 2001-04-16  Hans Breuer  <hans@breuer.org>
2927
2928         * gdk/gdk.def :
2929         * gtk/gtk.def : added all exports required to link PyGtk 0.7.1
2930
2931         * gdk/gdkfont.h : #define GDK_TYPE gdk_font_get_type ()
2932         we are interested in the functions return value not the function address
2933         * gdk/gdkvisual.h : same for GDK_TYPE_VISUAL
2934
2935         * gtk/makefile.msc.in : reflect movement of GDK_TYPEs from gtk to gdk
2936
2937 2001-04-14  Hans Breuer  <hans@breuer.org>
2938
2939         * gdk/gdk.def :
2940         * gdk/makefile.msc : updated
2941
2942         * gdk/win32/gdkdrawable.win32 (gdk_win32_draw_rectangle) : if modus is 
2943         "fill with tile" do so with new helper function gdk_win32_draw_tiles 
2944         (the testgtk::text backgound pixmap is drawn again)
2945         Changed SetTextAlign before pango_win32_render to TA_BASELINE to reflect 
2946         Win32 Pango change
2947         * gdk/win32/gdkprivate-win32.h : prototype for gdk_win32_draw_tiles
2948
2949         * gdk/win32/gdkproperty-win32.c : first implementation of gdk_setting_get
2950         Not sure if the returned settings have the right unit, because I couldn't
2951         find any docs for the X version ...
2952
2953         * gtk/gtk.def :
2954         * gtk/makefile.msc.in : updated
2955
2956 Thu Apr 12 17:41:17 2001  Owen Taylor  <otaylor@redhat.com>
2957
2958         * gtk-2.0.m4: Fix up to refer to GTK+, not to GLib; fix some
2959         wording problems. (Compared to version from Johannes Stezenbach to
2960         check correctness.)
2961
2962 Thu Apr 12 21:04:26 2001  Tim Janik  <timj@gtk.org>
2963
2964         * gtk/gtktreeview.c (_gtk_tree_view_column_start_drag): get
2965         this to compile.
2966
2967 2001-04-12  Anders Carlsson  <andersca@codefactory.se>
2968
2969         * gtk/gtkcellrenderertextpixbuf.c (gtk_cell_renderer_text_pixbuf_class_init): It's pixbuf_pos,
2970         not pixbufpos.
2971
2972         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render): Fix small typo.
2973
2974         * gtk/gtkcellrenderer.c (gtk_cell_renderer_get_property): xpad and ypad
2975         are unsigned insts, therefore use g_value_set_uint.
2976         (gtk_cell_renderer_set_property): Likewise, use g_value_get_uint.
2977
2978 Sun Apr  8 05:36:06 2001  Jonathan Blandford  <jrb@redhat.com>
2979
2980         * gtk/gtktextview.c (gtk_text_view_class_init): fix a fixme.
2981
2982         * gtk/gtkcellrendertoggle.c: change GTK_TYPE_POINTER to
2983         GTK_TYPE_STRING.
2984
2985         * gtk/gtktreeview.c: New functions to allow initial column
2986         dragging work.
2987
2988         * gtk/gtktreeviewcolumn.c: Initial column dragging support.
2989
2990         * tests/testtreefocus.c: give dave some love.
2991
2992         * tests/testtreesort.c: Modify test to check really long samples.
2993
2994 2001-04-11  Alexander Larsson  <alexl@redhat.com>
2995
2996         * gtk-2.0.m4: Pass pkg-config options
2997         before the other args so it works even if
2998         POSIXLY_CORRECT is set.
2999
3000 Mon Apr  9 19:02:07 2001  Tim Janik  <timj@gtk.org>
3001
3002         * configure.in (GTK_MICRO_VERSION): increment version to 1.3.4 (binary
3003         0, interface 0).
3004
3005 2001-04-04  Denis Oliver Kropp  <dok@convergence.de>
3006
3007         * gtk/gtkcalendar.c (gtk_calendar_button_press):
3008         check for action_func != NULL
3009
3010 2001-04-04  Sven Neumann  <sven@gimp.org>
3011
3012         * tests/testgtk.c (test_init): corrected path to gtk.immodules
3013
3014 Wed Apr  4 09:18:18 2001  Tim Janik  <timj@gtk.org>
3015
3016         * Released Gtk+-1.3.3.
3017
3018 Wed Apr  4 07:42:23 2001  Tim Janik  <timj@gtk.org>
3019
3020         * gdk/Makefile.am (EXTRA_DIST): add makeenums.pl to EXTRA_DIST.
3021
3022 Wed Apr  4 04:13:18 2001  Tim Janik  <timj@gtk.org>
3023
3024         * gtk/stock-icons/Makefile.am: stay in builddir and read/write
3025         files to/from source dir. (if we don't stay in builddir, we
3026         can't reach make-inline-pixbuf.
3027
3028         * gdk/Makefile.am (gdkenumtypes.c): add $(srcdir) to mekeenums.pl
3029         deps.
3030
3031         * configure.in (GTK_MICRO_VERSION): up and away (1.3.3 bin/interface
3032         ages 0).
3033
3034 Tue Apr  3 15:04:45 2001  Jonathan Blandford  <jrb@redhat.com>
3035
3036         * gtk/gtktreemodelsort.h:  removed set_sort_column, as it was
3037         moved to the GtkTreeSortable interface.
3038
3039         * gtk/gtktreeselection.c (gtk_tree_selection_selected_foreach):
3040         Make more efficient (fixes #50262).
3041
3042 Tue Apr  3 13:55:37 2001  Owen Taylor  <otaylor@redhat.com>
3043
3044         * NEWS: Updated.
3045
3046         * configure.in: Remove support for uninstalled glib.
3047
3048         * gtk/gtkdnd.c (gtk_drag_highlight_expose): Return FALSE as
3049         so as not to stop emission.
3050
3051         * gtk-config-2.0.in: Exit with an error message that gtk-config-2.0
3052         is no longer supported.
3053
3054         * Makefile.am gtk/Makefile.am tests/*: Moved all tests
3055         into tests, change build order to build modules before
3056         gtk/.
3057
3058         * modules/input/Makefile.am: Move gtk-query-immodules-2.0 invocation
3059         to here.
3060
3061 Tue Apr  3 13:52:57 2001  Tim Janik  <timj@gtk.org>
3062
3063         * gtk/gtkitemfactory.[hc]: changed gtk_item_factory_dump_items()
3064         and gtk_item_factory_dump_rc() GtkPatternSpec argument to
3065         GPatternSpec. this is actually unlikely to cause breakage in
3066         third-party apps since except for gle, pretty much ever caller
3067         passes NULL here.
3068
3069         * gtk/gtkbindings.[hc]: removed gtk_pattern_*() API.
3070
3071         * *.c: use g_pattern_*() API.
3072
3073         * docs/Changes-2.0.txt: GtkPatternSpec->GPatternSpec updates.
3074
3075         * gtk/gtkstyle.c (gtk_default_draw_resize_grip): assert unhandled
3076         directions aren't passed in.
3077
3078         * gtk/gtksettings.[hc] (_gtk_settings_parse_convert): export conversion
3079         functionality to be usable from gtkstyle.c as well, give precedence
3080         for conversion to user-supplied parsers.
3081         s/_gtk_rc_property_parser_for_type/_gtk_rc_property_parser_from_type/;
3082
3083         * gtk/gtkstyle.c (_gtk_style_peek_property_value): use
3084         _gtk_settings_parse_convert() for rcporperty value conversion.
3085
3086 2001-04-03  Alexander Larsson  <alexl@redhat.com>
3087
3088         * gdk/linux-fb/gdkevents-fb.c:
3089         Add empty gdk_setting_get().
3090
3091 Tue Apr  3 05:09:07 2001  Tim Janik  <timj@gtk.org>
3092
3093         * gtk/gtkmain.c (_gtk_boolean_handled_accumulator): use more elaborate
3094         variable names.
3095         
3096         * gtk/makeenums.pl: touch this so enum files get remade.
3097
3098 Mon Apr  2 19:36:57 2001  Jonathan Blandford  <jrb@redhat.com>
3099
3100         * gtk/gtktreestore.c (gtk_tree_store_init):  Bug fix to make trees
3101         work again when not sorted.
3102
3103         * gtk/gtktreeview.c (gtk_tree_view_class_init): Add "collapse_row"
3104         and "expand_row" signal, closing bug 52578.
3105
3106         * gtk/gtktreeview.c (gtk_tree_view_expand_row): Add signal
3107         support.
3108
3109         * gtk/gtktreeview.c (gtk_tree_view_collapse_row): Add signal
3110         support.
3111
3112 Mon Apr  2 18:18:07 2001  Owen Taylor  <otaylor@redhat.com>
3113
3114         * gdk/gdkevents.h: Add GdkEventSetting event for notification
3115         of changes to system settings, gdk_setting_get() to retrieve
3116         a single system setting.
3117
3118         * gdk/x11/gdkevents-x11.c: Bridge gdk_setting_get() and GdkEventSetting
3119         to the draft XSETTINGS mechanism.
3120
3121         * gdk/x11/xsettings-{common,client}.[ch]: Sample-implementation of
3122         XSETTINGS.
3123
3124         * gtk/gtkmain.c gtk/gtksettings.[ch]: Propagate notification
3125         of GDK settings changes to the GtkSettings object.
3126
3127         * gdk/gdkevents.[ch] gdk/gtk/gtksettings.c: Hook up the
3128         double-click-timeout property to GDK.
3129
3130         * gdk/gdkcolor.[ch] gdk/gdkvisual.h gdk/gdkevent.[ch] gdk/gdkfont.[ch]:
3131         Define GDK boxed types here.
3132
3133         * gdk/Makefile.am gdk/makeenums.pl: Generate source files
3134         gdk/gdkenumtypes.[ch] for enum definitions.
3135
3136         * gtk/gtkcompat.h: Add defines for GTK_TYPE_GDK_*
3137         * gtk/gtk-boxed.defs: Comment out GDK types
3138         * gtk/gtktypeutils.h: Remove GDK types
3139         * gtk/Makefile.am: No longer scan GDK headers for enumerataions
3140
3141 Mon Apr  2 16:41:08 2001  Owen Taylor  <otaylor@redhat.com>
3142
3143         * Applied patch from Ron Steinke to add signal accumulators
3144         so that signals with the convention 'TRUE return means
3145         handled' stop emission on a TRUE return.
3146
3147         * gtk/gtkmain.[ch]: Add private accumulator 
3148         _gtk_boolean_handled_accumulator, used throughout GTK+.
3149         
3150         * gtk/gtkspinbutton.c: Add accumulator for ::output.
3151
3152         * gtk/gtktipsquery.c: Add accumulator for ::widget_selected
3153         
3154         * gtk/gtkwidget.c: Add accumulators for event signals,
3155         ::drag_motion, ::drag_drop. Use _gtk_boolean_handled_accumator
3156         for ::mnemonic-activate.
3157
3158         * gtk/gtkwindow.c: Add accumulator for ::frame_event
3159
3160 Mon Apr  2 16:24:21 2001  Owen Taylor  <otaylor@redhat.com>
3161
3162         * gtk/gtkwidget.c: Add missing include.
3163
3164 Mon Apr  2 16:56:15 2001  Jonathan Blandford  <jrb@redhat.com>
3165
3166         * gtk/gtkmarshal.list (VOID:BOXED,BOXED,BOXED,BOXED): new
3167         marshaller.
3168
3169         * gtk/gtktreemodel.c (gtk_tree_model_range_changed): change
3170         "changed" signal to "range_changed".
3171
3172         * gtk/gtktreeview.c (gtk_tree_view_set_model): fix small bug where
3173         removing a tree from one model would remove all trees from that
3174         model.
3175         * gtk/gtktreeview.c (gtk_tree_view_range_changed): use range
3176         changed signal instead.
3177
3178 Mon Apr  2 16:13:58 2001  Owen Taylor  <otaylor@redhat.com>
3179
3180         * gtk/gtkinvisible.c (gtk_invisible_style_set): Avoid
3181         chaining up to parent impl, since we have a INPUT_ONLY
3182         window.
3183
3184         * gtk/gtkentry.[ch]: Add a cursor_color property to set the
3185         foreground color for the cursor.
3186
3187 Mon Apr  2 15:06:13 2001  Owen Taylor  <otaylor@redhat.com>
3188
3189         * gtk/gtkstyle.c (_gtk_style_peek_property_value): Reference 
3190         param spec when caching property values, since we unref it
3191         later when we free the style.
3192
3193         * gtk/gtkoptionmenu.c (gtk_option_menu_get_props): Dont' free
3194         values since they are retrieved with G_VALUE_NO_COPY_CONTENTS.
3195
3196 Mon Apr  2 10:47:57 2001  Owen Taylor  <otaylor@redhat.com>
3197
3198         * gtk/gtkwidget.c (gtk_widget_class_init): Fix 
3199         G_VALUE_NO_COPY_CONTENTS instead of G_SIGNAL_TYPE_STATIC_SCOPE
3200         stupidity.
3201
3202 Mon Apr  2 00:51:11 2001  Owen Taylor  <otaylor@redhat.com>
3203
3204         [ First pass at adding style properties. Still needs some definite
3205         fine-tuning. ]
3206
3207         * gtk/gtkbutton.c: Add ::default_spacing style property.
3208          
3209         * gtk/gtkcheckbutton.[ch] gtkradiobutton.c: Add ::indicator_size,
3210         ::indicator_spacing style properties.
3211
3212         * gtk/gtkoptionmenu.c: Add ::indicator_size, ::indicator_spacing
3213         style properties.
3214
3215         * gtk/gtk{,h,v}paned.[ch]: Make handle_size a style property
3216         rather than a normal property.
3217
3218         * gtk/gtkwidget.c: Add an ::interior_focus style property to
3219         draw focus inside buttons, in the Windows/Java Metal/etc. style.
3220
3221         * gtk/gtkbutton.c gtk/gtkcheckbutton.c gtk/gtktogglenbutton.c:
3222         Honor ::interior_focus.
3223         
3224         * gtk/gtkentry.c: Don't draw focus at all when ::interior_focus is 
3225         TRUE.
3226
3227         * gtk/gtkrange.[ch] gtk/gtk{h,v}scrollbar.c gtk/gtk{h,v}scale.c:
3228         Add ::slider_width, ::trough_border, ::stepper_size,
3229         ::stepper_spacing style properties.
3230
3231         * gtk/gtkscale.[ch] Add ::slider-length style property.
3232
3233 2001-04-02 Alexander Larsson   <alexl@redhat.com>
3234
3235         * gdk/linux-fb/gdkwindow-fb.c:
3236         Add gdk_window_begin_resize_drag and gdk_window_begin_move_drag. Remove some
3237         warnings that were spewed on startup.
3238
3239         * gtk/gtkwindow-decorate.c:
3240         gtk_window_reposition -> _gtk_window_reposition
3241
3242 Sun Apr  1 21:37:22 2001  Owen Taylor  <otaylor@redhat.com>
3243
3244         * gtk/gtkwidget.[ch] gtk/gtktypeutils.c gtk/gtk-boxed.defs:
3245         Add boxed type for GtkRequistion. Use it for ::size-request.
3246
3247         * gtk/gtkstyle.[ch] gtk/gtktypeutils.c gtk/gtk-boxed.defs:
3248         Add a new GtkBorder structure useful for geometry properties
3249         for widgets. Add corresponding GTK_TYPE_BORDER.
3250         
3251         * gtk/gtkwidget.c (gtk_widget_class_install_style_property):
3252         Support automatic parser selection like
3253         gtk_settings_install_property_parser().
3254
3255         * gtk/gtksettings.c (_gtk_rc_property_select_parser): Export
3256         functionality for use by gtk_widget_class_install_style_property.
3257         Support GTK_TYPE_BORDER, GTK_TYPE_REQUISITION.
3258
3259 Sun Apr  1 20:48:59 2001  Owen Taylor  <otaylor@redhat.com>
3260
3261         * gtk/gtkentry.c (gtk_entry_class_init): Make invisible-char
3262         g_param_spec_unichar(). 
3263
3264 Sun Apr  1 23:41:37 2001  Tim Janik  <timj@gtk.org>
3265
3266         * gdk/x11/gdkwindow-x11.c (gdk_window_focus): raise window for non
3267         _NET window managers.
3268
3269         * gtk/gtkmenufactory.[hc]: cvs removed those files now.
3270
3271 Sun Apr  1 08:00:13 2001  Tim Janik  <timj@gtk.org>
3272
3273         * gtk/gtkwidget.[hc]: got rid of gtk_widget_popup(), a function that
3274         bad needs to be nuked, not just deprecated.
3275
3276         * gtk/gtktooltips.c (gtk_tooltips_draw_tips): don't use 
3277         gtk_widget_popup().
3278
3279         * gtk/*.[hc]: s/activate_mnemonic/mnemonic_activate/g;
3280         
3281         * gtk/gtkmenufactory.[hc]: removed this long-standingly deprecated
3282         widget.
3283         
3284         * docs/Changes-2.0.txt: updates.
3285         
3286 Sun Apr  1 01:02:54 2001  Jonathan Blandford  <jrb@redhat.com>
3287
3288         * gtk/gtktreestore.c (gtk_tree_store_sort_iter_changed):
3289         for (i = 0; i < 100; i ++)
3290           g_print ("I will confirm it compile before committing\n");
3291
3292 Sun Apr  1 00:52:06 2001  Jonathan Blandford  <jrb@redhat.com>
3293
3294         * gtk/gtktreestore.c: Initial work on implementing the
3295         GtkTreeSortable interface.  Basicaly a big cut'n'paste job.
3296
3297 Sun Apr  1 03:28:14 2001  Tim Janik  <timj@gtk.org>
3298
3299         * gtk/gtkwidget.c: fixed a bunch of notifications, added
3300         reference counts around emissions where the widget is used afterwards.
3301         added freeze/thaws around multiple properties being notified.
3302         (_gtk_widget_get_aux_info): cleanups.
3303         
3304         * gtk/gtksettings.c (gtk_settings_install_property): provide
3305         default parsing functions for gdkcolor, enums and flags.
3306
3307         * gtk/gtkwindow.[hc]: partially reverted patch from havoc,
3308         applied by owen.
3309         backed out gtk_window_get_location(), gtk_window_set_location(),
3310         gtk_window_get_size() and gtk_window_set_size(), these
3311         have to be sorted out wrg x/y/width/height/default_with/default_height
3312         properties.
3313         kept a flag in GtkWindowGeometryInfo to handle user
3314         resetting default sizes.
3315         cleaned up ZVT comments.
3316         bunch of assorted bug fixes, notification fixes.
3317         (_gtk_window_reposition): make this a really internal function.
3318         
3319         * gtk/testgtk.c: fixups.
3320         
3321 2001-03-31  Hans Breuer  <hans@breuer.org>
3322
3323         * config.h.win32.in : disable USE_MMX for msvc build cause
3324         the assembler doesn't fit and is out of my scope. Disable
3325         USE_GMODULE for msvc build as wel. The right way to share
3326         binaries on win32 would be to use libtiff.dll etc. To reduce
3327         installation hassles IMO it's better to include all fileformats
3328         builtin to gdk-pixbuf
3329
3330         * gdk-pixbuf/makefile.msc : new file
3331
3332         * gdk/gdk.def : updated
3333
3334         * gdk/win32/gdkevents-win32.c : don't erase the background if
3335         .no_bg is set. It improves the scrolling (e.g. of testgtk main
3336         buttons
3337         * gdk/win32/gdkgeometry-win32.c : added comment about the above
3338
3339         * gdk/win32/gdkwindow-win32.c : added three new functions like
3340         the X version. Only one is implemented, because the other two
3341         "gdk_window_begin_(resize|move)_drag" got no docs and appear to
3342         be default behaviour on win32 anyway ...
3343
3344         * gtk/gtk.def : updated
3345
3346         * gtk/makefile.msc.in : update for new files, use glib-genmarshal
3347         from where it was built and add an additional rule to automagically
3348         build gtkmarshal.[hc]
3349
3350         * gtk/gtkfilesel.c (open_new_dir) : don't increase n_entries
3351         before array access for the current entry isn't finished
3352
3353         * gtk/gtktreeitem.c (gtk_tree_item_subtree_button_click) :
3354         use g_return_val_if_fail
3355
3356         * gtk/testgtk.c (window_controls) : don't use the *wrong* size
3357         for the static array, but let the compiler calculate it. It
3358         makes me wonder if gcc isn't capable to catch bugs like this ...
3359
3360 2001-03-31  James Henstridge  <james@daa.com.au>
3361
3362         * gtk/gtkwidget.c (gtk_widget_size_adjust): fix use of magic
3363         constant "-1" in the aux info structure.
3364
3365 2001-03-30  Alexander Larsson  <alexl@redhat.com>
3366
3367         * gtk/gtkbutton.c (gtk_button_get_property):
3368         * gtk/gtklabel.c:
3369         Remove leaks.
3370         
3371         * gtk/gtkcontainer.c:
3372         * gtk/gtkhscale.c:
3373         * gtk/gtkhscrollbar.c:
3374         * gtk/gtklayout.c:
3375         * gtk/gtkmisc.c:
3376         * gtk/gtkprogress.c:
3377         * gtk/gtkprogressbar.c:
3378         * gtk/gtkrange.c:
3379         * gtk/gtktable.c:
3380         * gtk/gtkviewport.c:
3381         * gtk/gtkvscale.c:
3382         * gtk/gtkvscrollbar.c:
3383         * gtk/gtkwidget.c:
3384         Property patches, based on patches from John Margaglione and Lee Mallabone.
3385
3386 Thu Mar 29 21:20:38 2001  Mike Kestner  <mkestner@ameritech.net>
3387
3388         * gtk/gtkspinbutton.c : added value_changed signal which proxies for the
3389         adjustment. Cleaned redundant preconditions (spin != NULL). Added
3390         inline API function docs.
3391         (gtk_spin_button_new_with_range): New convenience constructor.
3392         (gtk_spin_button_set_increments): New adjustment helper.
3393         (gtk_spin_button_set_range): New adjustment helper.
3394
3395         * gtk/testgtk.c : added test of the new convenince constructor and
3396         value_changed signals.
3397
3398 Thu Mar 29 20:20:38 2001  Jonathan Blandford  <jrb@redhat.com>
3399
3400         * gtk/gtktreemodel.c (gtk_tree_row_ref_reordered_callback): Now we
3401         listen to the reorder signal.
3402
3403 Wed Mar 28 20:30:26 2001  Owen Taylor  <otaylor@redhat.com>
3404
3405         * gtk/gtkwidget.[ch] (_gtk_widget_get_aux_info): Add private function
3406         to get the aux info structure fo the widget.
3407
3408         * gtk/gtklabel.c gtk/gtkscrolledwindow.c gtk/gtkwindow.c: Use
3409         above function.
3410
3411         [ Patch from  Havoc Pennington  <hp@redhat.com> ]
3412
3413         * gdk/x11/gdkwindow-x11.c (gdk_window_get_frame_extents): function
3414         to get the size of the window manager frame, basically the same
3415         code that gdk_window_get_root_origin() had
3416         (gdk_window_get_root_origin): use gdk_window_get_frame_extents()
3417
3418         * gtk/gtkwindow.c (gtk_window_set_default_size): use
3419         gdk_window_resize() if the window is realized and resizeable
3420
3421         * gdk/x11/gdkwindow-x11.c (gdk_window_set_geometry_hints): fix
3422         typo so that setting gravity works
3423
3424         * gtk/gtkwindow.c (gtk_window_move_resize): don't ever use
3425         allocation if auto_shrink is on, even if the default size
3426         has not changed.
3427
3428         * gtk/gtkwidget.c (gtk_widget_render_icon): remove bogus
3429         g_return_if_fail
3430
3431 Thu Mar 29 16:29:12 2001  Jonathan Blandford  <jrb@redhat.com>
3432
3433         * gtk/gtkliststore.c (gtk_list_store_iter_changed): Massive
3434         reordering/sorting work.  Now pretty much works.
3435
3436         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): Lots of work to make
3437         reorder mostly work.  Still need to get the parity correct.
3438
3439         * gtk/gtktreeviewcolumn.c: Listen for "model" property changed
3440         signal, so I can listen for the sort_column_changed signal so I
3441         can change my "sort_indicator" property.  Cool.
3442
3443 Wed Mar 28 00:03:10 2001  Owen Taylor  <otaylor@redhat.com>
3444
3445         [ Patch from Havoc Pennington, hp@redhat.com ]
3446
3447         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c:
3448         Add functions gdk_window_begin_resize_drag/begin_move_drag
3449         to start resizing or moving a toplevel window. This
3450         is done either using the _NET_WM_MOVERESIZE protocol,
3451         or, if that isn't present, by emulation.
3452
3453         * gtk/gtkwindow.[ch]: Add functions gtk_begin_move/resize_drag
3454         to export the above to GTK+-land.
3455
3456         * gtk/gtkstyle.[ch]: Add ->draw_resize_grip() paint func.
3457         
3458         * gtk/gtkwindow.c gdk/gdkwindow.[ch] (gdk_window_constrain_size):
3459         Move this function into gdkwindow, since we need it
3460         when implementing fallback resizing.
3461
3462         * gdk/x11/gdkwindow-x11.c: gdk_window_set_geometry_hints.
3463         Fix typo when setting gravity.
3464
3465         * gtk/gtkstatusbar.[ch] (gtk_statusbar_set_has_resize_grip):
3466         Add an optional (but on by default) resize grip for resizing 
3467         the parent window.
3468
3469 01-03-29  Alexander Larsson  <alexl@redhat.com>
3470
3471         * gtk/gtktooltips.c (gtk_tooltips_event_handler):
3472         Don't return TRUE from the event handler, that blocks all
3473         event signals on the tooltip widget. Now you can press buttons
3474         in toolbars again.
3475
3476 Wed Mar 28 19:20:43 2001  Owen Taylor  <otaylor@redhat.com>
3477
3478         * gtk/testtext.c (create_buffer): Add missing NULL on
3479         valist.
3480
3481         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_class_init): Fix
3482         c-n-p problem with INCONSISTENT property.
3483
3484         [ Patch from Havoc Pennington  <hp@redhat.com> ]
3485
3486         * gtk/gtkentry.h (struct _GtkEntryClass): add same populate_popup
3487         hook.
3488
3489         * gtk/gtktextview.h (struct _GtkTextViewClass): add populate_popup
3490         signal as a hook for extending the default popup menu
3491
3492         * gtk/gtkimmulticontext.c (gtk_im_multicontext_append_menuitems):
3493         use radio menu items for the input method menuitems
3494
3495         * gtk/gtkimcontextsimple.c (check_hex): do better validation of 
3496         inserted unicode from Ctrl-Shift-hex input method
3497
3498         * gtk/gtktextbtree.c (_gtk_text_btree_insert): remove utf8
3499         validatation here, already done at GtkTextBuffer level.
3500
3501         * gtk/gtkwidget.c (gtk_widget_class_init): add binding set, add
3502         popup_menu run action signal and Shift+F10 and Menu keybindings.
3503
3504         * gtk/gtkentry.c: implement a default handler for popup_menu
3505
3506         * gtk/gtktextview.c: implement a default handler for popup_menu
3507
3508         * gtk/gtkmenu.c (gtk_menu_popup): select first item if popup is
3509         from a key event
3510         
3511         * gtk/gtklabel.c: remove "trailer" cruft
3512
3513 Wed Mar 28 17:27:12 2001  Jonathan Blandford  <jrb@redhat.com>
3514
3515         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): new function to
3516         handle reordering of trees.  Seems to mostly work w/ the exception
3517         of the parity flag.
3518
3519         * gtk/gtktreeview.c (gtk_tree_view_reordered): handle "reordered"
3520         signal.
3521
3522 Wed Mar 28 21:12:37 2001  Tim Janik  <timj@gtk.org>
3523
3524         * gtk/gtkwidget.h: c++ fixes.
3525
3526 Sun Mar 25 15:51:28 2001  Owen Taylor  <otaylor@redhat.com>
3527
3528         * gtk/gtksettings.c (gtk_settings_init): Fix use of uninitialized
3529         memory.
3530
3531 Tue Mar 27 22:36:07 2001  Owen Taylor  <otaylor@redhat.com>
3532
3533         * gtk/gtkwidget.h gtk/gtkrange.h: Apply patch from 
3534         Nils Barth fixing event return values. (#51041)
3535
3536         * gtk/gtkwidget.c: Fix some return values for default
3537         functions.
3538
3539         * gtk/gtk[vh]scrollbar.c gtk/gtk[vh]range.c: Fix
3540         return values for trough_keys functions.
3541
3542         * gtk/gtkwidget.h (struct _GtkWidgetClass): Fix return
3543         value for add_accelerator (shoudl have been a void
3544         return.)
3545
3546         * gtk/gtkcellrenderer.[ch]: gtkcellrenderertoggle.h:
3547         Fix return type of EVENT.
3548
3549         * gtk/gtkmarshal.list gtk/gtktexttag.c: Make EVENT
3550         signal return a boolean.
3551
3552 Tue Mar 27 22:07:44 2001  Jonathan Blandford  <jrb@redhat.com>
3553
3554         * gtk/gtkliststore.c (gtk_list_store_sort): Fix arguments to
3555         reordered signal.
3556
3557         * tests/testtreesort.c (main): fix spelling.
3558
3559 Tue Mar 27 20:55:29 2001  Jonathan Blandford  <jrb@redhat.com>
3560
3561         * gtk/gtkliststore.c: More work on implementing sortable
3562         interface.
3563
3564 Mon Mar 26 15:48:45 2001  Owen Taylor  <otaylor@redhat.com>
3565
3566         * gtk/gtkwindow.c (gtk_window_list_toplevels): Don't
3567         reference the widgets in the resulting list. (#11821)
3568         This makes this consistent with gtk_container_children.
3569
3570         * gtk/gtkwindow.c gtk/gtkwidget.c: Fix up the two
3571         uses of gtk_window_list_toplevels.
3572
3573 Mon Mar 26 15:26:17 2001  Owen Taylor  <otaylor@redhat.com>
3574
3575         * gtk/gtkimcontext.c (gtk_im_context_set_use_preedit): Add
3576         a virtual function to set whether the IM context should use 
3577         the preedit string. (#51922)
3578         
3579 Mon Mar 26 14:42:59 2001  Owen Taylor  <otaylor@redhat.com>
3580
3581         * gdk/gdkpango.h: Remove stale FIXME comment.
3582
3583 2001-03-26  Alexander Larsson  <alla@lysator.liu.se>
3584
3585         * gtk/gtkfilesel.c (gtk_file_selection_get_filename):
3586         Fixed bug that returned NULL if a filename was selected.
3587
3588 2001-03-24  Havoc Pennington  <hp@pobox.com>
3589
3590         * gtk/gtkthemes.c (gtk_theme_engine_load): improve error message
3591         to contain the word "theme"
3592
3593 2001-03-24  Havoc Pennington  <hp@pobox.com>
3594
3595         * gtk/gtkhsv.c (gtk_hsv_move): make motion around the ring much
3596         slower but finer-grained
3597         (gtk_hsv_focus): get initial focus on the ring or triangle 
3598         according to tab direction
3599
3600         * gtk/testgtk.c (main): get rid of weird sleep(1) on exit
3601
3602 2001-03-23  Havoc Pennington  <hp@pobox.com>
3603
3604         * gtk/gtkhsv.c: make this somewhat key-navigable
3605
3606         * gtk/gtkfontsel.c: mnemonics
3607
3608         * gtk/gtkgamma.c: mnemonics
3609
3610         * gtk/gtkcolorsel.c: add mnemonics to labels
3611
3612 2001-03-22  Havoc Pennington  <hp@pobox.com>
3613
3614         Applied big patch from Seth Lytle to fix event handler return
3615         values, slightly modified.
3616
3617         * gtk/gtkcalendar.c (gtk_calendar_button_press): return TRUE if
3618         handled.
3619         (gtk_calendar_key_press): return TRUE for GDK_space triggers
3620         select_day
3621
3622         * gtk/gtkclist.c (gtk_clist_button_press): return TRUE if handled
3623         (gtk_clist_button_release): return TRUE if handled
3624
3625         * gtk/gtkcolorsel.c (mouse_release):
3626         (palette_activate): 
3627         (palette_press): 
3628         (palette_new): 
3629         (mouse_press): 
3630         (get_screen_color): 
3631         fixed return type (void to gboolean), return TRUE,
3632         added GTK_SIGNAL_FUNC cast
3633
3634         * gtk/gtkcombo.c (gtk_combo_popup_button_press): fixed return type
3635         (void to gboolean), and return TRUE
3636         (gtk_combo_button_release): changed return value to TRUE after
3637         gtk_grab_add on combo->popwin
3638
3639         * gtk/gtkctree.c (gtk_ctree_button_press): return TRUE if triggers a
3640         collapse or expand
3641
3642         * gtk/gtkcurve.c (gtk_curve_graph_events): return TRUE for
3643         button/motion
3644
3645         * gtk/gtkdnd.c (gtk_drag_source_event_cb): return TRUE for button
3646         press/release and motion that trigger act
3647
3648         * gtk/gtkentry.c (gtk_entry_button_release): return TRUE
3649
3650         * gtk/gtkfontsel.c (gtk_font_selection_size_key_press): return TRUE
3651         for GDK_Return
3652         
3653         * gtk/gtklist.c (gtk_list_button_press): return TRUE mostly
3654         (gtk_list_button_release): return TRUE if selection
3655
3656         * gtk/gtklistitem.c (gtk_list_item_button_press): return TRUE on
3657         press
3658
3659         * gtk/gtkmenushell.c (gtk_menu_shell_button_press):
3660         (gtk_menu_shell_button_release): chain parent_menu_shell retval
3661
3662         * gtk/gtknotebook.c (gtk_notebook_button_press): return FALSE if
3663         nothing triggered
3664         (gtk_notebook_button_release): return TRUE if we do anything
3665
3666         * gtk/gtkspinbutton.c (gtk_spin_button_button_press): 
3667         (gtk_spin_button_button_release): return TRUE or chained retval
3668
3669         * gtk/gtktext.c (gtk_text_button_press): 
3670         (gtk_text_button_release): return TRUE
3671         (gtk_text_key_press): remove redundant retval code
3672         
3673         * gtk/gtktreeitem.c (gtk_tree_item_button_press): return TRUE if button
3674         and sensitive
3675         (gtk_tree_item_subtree_button_click): changed type to gint, and return
3676         TRUE if sensitive
3677
3678         * gtk/gtktooltips.c (gtk_tooltips_event_handler): deactivate implies 
3679         return TRUE
3680
3681 2001-03-23  Havoc Pennington  <hp@redhat.com>
3682
3683         * gtk/testgtk.c: fix warnings
3684
3685         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): fix return value
3686
3687         * gtk/gtktextview.c: fix warnings
3688
3689         * gtk/gtktext.c (find_cursor_at_line): fix warning
3690
3691         * gtk/gtkselection.c (gtk_selection_notify): fix warning 
3692
3693         * gtk/gtkitemfactory.c (gtk_item_factory_menu_pos): fix signature
3694         of this function
3695
3696         * gtk/gtkimmulticontext.c (gtk_im_multicontext_append_menuitems):
3697         fix warning
3698
3699         * gtk/gtkhandlebox.c (gtk_handle_box_style_set): fix warning
3700
3701         * gtk/gtkfontsel.c: fix warning
3702
3703         * gtk/gtkcolorsel.c: fix warnings
3704
3705 2001-03-23  Havoc Pennington  <hp@redhat.com>
3706
3707         * gtk/gtkhandlebox.c: Apply property patch from Lee Mallabone
3708
3709         * gtk/gtkbox.c: Apply property patch from Lee Mallabone
3710
3711         * gtk/gtkcheckmenuitem.c: Apply property patch from Lee Mallabone,
3712         and deprecated gtk_check_menu_item_set_show_toggle().
3713         
3714         * gtk/gtkbutton.c: Apply property patch from Lee Mallabone
3715
3716         * gtk/gtkfilesel.c: Apply property patch from Lee Mallabone
3717
3718         * gtk/gtkframe.c: Apply property patch from Lee Mallabone
3719
3720 2001-03-23  Havoc Pennington  <hp@redhat.com>
3721
3722         * gtk/gtktoolbar.c, gtk/gtkimcontext.c, gtk/gtklabel.c: fix up
3723         some docs
3724
3725 Fri Mar 23 16:13:43 2001  Jonathan Blandford  <jrb@redhat.com>
3726
3727         * gtk/gtktreeviewcolumn.h (GtkCellDataFunc): Forgot to namespace
3728         this.
3729
3730         * gtk/gtktreestore.c (gtk_tree_store_set_value): change from
3731         set_cell to set_value
3732
3733         * gtk/gtkliststore.c (gtk_list_store_set_value): change from
3734         set_cell to set_value
3735
3736 Thu Mar 22 19:27:34 2001  Jonathan Blandford  <jrb@redhat.com>
3737
3738         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
3739         fix braino.
3740         * gtk/gtktreesortable.[ch]: New interface to add cleanup sortable
3741         support.
3742
3743         * gtk/gtktreeview.c: Addition of initial sortable support.
3744
3745         * gtk/gtktreestore.c: Addition of initial sortable support.
3746
3747         * gtk/gtkliststore.c: Addition of initial sortable support.
3748
3749         * gtk/gtkmarshal.list: yet another marshaller.
3750
3751         * gtk/gtktreedatallist.[ch]: shared code between the store models
3752         for handling sorting headers.
3753
3754 2001-03-22  Havoc Pennington  <hp@redhat.com>
3755
3756         * gtk/gtkcontainer.c (gtk_container_set_focus_chain): 
3757         (gtk_container_unset_focus_chain): Add ability to override the 
3758         focus chain for a container explicitly
3759
3760 Thu Mar 22 13:01:44 2001  Tim Janik  <timj@gtk.org>
3761
3762         * gtk/gtklabel.[hc]: some cleanups, fixed mnemonic_widget handling,
3763         added PROP_MNEMONIC_WIDGET.
3764
3765         * gtk/gtkwindow.c (gtk_window_activate_mnemonic): 
3766         (gtk_window_remove_mnemonic): 
3767         (gtk_window_add_mnemonic): fixed assertions.
3768         (gtk_window_activate_mnemonic): constrain modifier checks to those
3769         permitted by gtk_accelerator_get_default_mod_mask().
3770         got rid of gtk_window_get_default_accel_group().
3771
3772         * gtk/gtkwidget.c (gtk_widget_real_activate_mnemonic): handle non
3773         activatable widgets either by focussing or a warning.
3774         added a signal accumulator to ::activate_mnemonic which stops the
3775         emission once a handler returned TRUE.
3776
3777 2001-03-22  Havoc Pennington  <hp@pobox.com>
3778
3779         * gtk/gtktoolbar.c (gtk_toolbar_insert_stock): handle mnemonics in
3780         the stock item label
3781
3782         * gtk/gtklabel.c: s/@gtk_func/gtk_func()/ in docs
3783
3784         * gtk/gtkstock.c (builtin_items): add mnemonics where missing
3785
3786         * demos/gtk-demo/*.c: Add mnemonics all over the place
3787
3788         * gtk/gtklabel.h: mark parse_uline deprecated
3789
3790 2001-03-21  Alexander Larsson  <alexl@redhat.com>
3791
3792         * gtk/gtkitemfactory.[ch]:
3793         Add support for stock and normal imagemenuitems.
3794         
3795         * gtk/testgtk.c:
3796         Add some tests for mnemonics, stock toolbars, stock
3797         and image menuitems in itemfactory and gdk_window_scroll.
3798
3799 2001-03-21  Alexander Larsson  <alexl@redhat.com>
3800
3801         * gtk/gtkbutton.[ch]:
3802         * gtk/gtkdialog.c:
3803         Renamed gtk_button_new_stock() to gtk_button_new_from_stock() and
3804         removed accel_group argument. Renamed gtk_button_new_accel() to
3805         gtk_button_new_with_mnemonic() and removed accel_group argument.
3806
3807         * gtk/gtkcheckbutton.[ch]:
3808         New function gtk_check_button_new_with_mnemonic().
3809
3810         * gtk/gtkentry.c:
3811         Override activate_mnemonic and just grab focus.
3812
3813         * gtk/gtkitemfactory.c:
3814         Don't add menu uline accel group, instead use mnemonics support.
3815
3816         * gtk/gtklabel.[ch]:
3817         New support for mnemonics.
3818
3819         * gtk/gtkmarshal.list:
3820         Needed BOOLEAN:BOOLEAN for activate_mnemonic.
3821
3822         * gtk/gtkmenu.[c]:
3823         * gtkmenushell.c:
3824         Use mnemonics instead of accel groups for uline
3825         support in menu items.
3826         Removed gtk_menu_get_uline_accel_group() and
3827         gtk_menu_ensure_uline_accel_group().
3828
3829         * gtk/gtkmenuitem.c:
3830         Override activate_mnemonic to handle switching between
3831         menu items if there are collisions.
3832         
3833         * gtk/gtknotebook.c:
3834         Connect to activate_mnemonic on the tab_label, so that
3835         activating it switches to that notebook page.
3836
3837         * gtk/gtkwidget.[ch]:
3838         Add activate_mnemonic signal. New function
3839         gtk_widget_activate_mnemonic() to emit it.
3840         Default implementation does activate/grab_focus.
3841
3842         * gtk/gtkwindow.[ch]:
3843         Add support for mnemonics in windows.
3844         New functions:
3845         gtk_window_add_mnemonic, gtk_window_remove_mnemonic,
3846         gtk_window_activate_mnemonic, gtk_window_set_mnemonic_modifier
3847
3848         * gtk/testgtk.c:
3849         Update to function name changes.
3850         
3851 2001-03-21  Alexander Larsson  <alexl@redhat.com>
3852
3853         * gtk/gtkimagemenuitem.[c]:
3854         Add gtk_image_menu_item_new_from_stock()
3855
3856 Tue Mar 20 15:00:43 2001  Jonathan Blandford  <jrb@redhat.com>
3857
3858         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
3859         Fix buglet in meeting.
3860
3861 2001-03-19  Havoc Pennington  <hp@redhat.com>
3862
3863         * gtk/gtkiconfactory.c: Make GtkIconSource an opaque datatype, and
3864         add a bunch of accessor functions. This is because we have
3865         reasonable expectations of extending what fields it contains in
3866         the future.
3867
3868         * gtk/gtkstyle.c (gtk_default_render_icon): adapt to icon source
3869         changes
3870
3871         * gtk/gtkrc.c (gtk_rc_parse_icon_source): fix to use new
3872         GtkIconSource   
3873
3874 Mon Mar 19 15:53:36 2001  Owen Taylor  <otaylor@redhat.com>
3875
3876         * gtk/gtkitemfactory.c gtk/testgtk.c: Handle quoting of / with \; properly
3877         handle __ in paths, quote " and \n in gtk_item_factory_dump_items().
3878
3879         * gtk/gtkadjustment.[ch] gtk/gtkclist.c gtk/gtkhruler.c gtk/gtklayout.c 
3880           gtk/gtklist.c gtk/gtkprogress.[ch] gtk/gtkprogressbar.[ch] gtk/gtkrange.[ch]
3881           gtk/gtkruler.[ch] gtk/gtkscale.c gtk/gtkscrolledwindow.c gtk/gtkspinbutton.[ch]
3882           gtk/gtktext.c gtk/gtktextview.c gtk/gtkvruler.c gtk/testgtk.c:
3883         Change float to double everywhere with the exception of 0<->1.0 alignment
3884         and GtkCurve.
3885
3886 2001-03-19  Tor Lillqvist  <tml@iki.fi>
3887
3888         * gdk/win32/gdkdrawable-win32.c
3889         * gdk/win32/gdkimage-win32.c: Use correct casts in debugging
3890         output.
3891
3892         * demos/testpixbuf-drawable.c: If GDK_WINDOWING_WIN32, include
3893         gdkwin32.h.
3894
3895 2001-03-18  Tor Lillqvist  <tml@iki.fi>
3896
3897         * gdk/win32/gdkevents-win32.c (print_window_state): New function.
3898         print_event_state, print_event): Use preprocessor macro to make
3899         code more compact. Print also GDK_WINDOW_STATE events.
3900         (synthesize_crossing_events): Remove the old #ifdeffed-out code.
3901         
3902         * gtk/gtk.def
3903         * gtk/makefile.mingw.in: Update.
3904
3905         * gtk/gtkmain.h: Check for G_PLATFORM_WIN32, not only G_OS_WIN32,
3906         to catch also Cygwin.
3907
3908 Sun Mar 18 01:15:30 2001  Tim Janik  <timj@gtk.org>
3909
3910         * gtk/gtkspinbutton.[hc]: added rc-style argument
3911         GtkSpinButton::shadow_type.
3912         removed spin_button->shadow_type, gtk_spin_button_set_shadow_type()
3913         and ARG_SHADOW_TYPE as it doesn' make much sense to try to override
3914         rc-style settings.
3915
3916         * gtk/gtkfixed.c: removed gtk_fixed_paint() (was unused).
3917
3918         * gtk/gtkwidget.c: quark cleanups.
3919
3920         * gtk/gtkrc.[hc]: added gtk_rc_scanner_new() to create an rc-file
3921         scanner with appropriate configuration, renamed GtkRcStyleClass.clone
3922         to create_rc_style() (we don't do cloning in standard OO sense).
3923         added per rc style properties.
3924         
3925         * gtk/gtkstyle.[hc]: added code to retrive pspec conformant rc-style
3926         property values and for caching those. some cleanups.
3927         
3928         * gtk/Makefile.am: -DG_DISABLE_CONST_RETURNS.
3929         
3930         * gtk/gtksettings.[hc]: new file for global rc-file properties
3931         (at least currently, should get extended to support X properties
3932         and other communication mechanisms).
3933         
3934         * gtk/gtkwidget.[hc]: added style property support:
3935         (gtk_widget_class_install_style_property_parser): install style
3936         property pspec with parser function for rc-file values other
3937         than LONG, DOUBLE or STRING.
3938         (gtk_widget_class_install_style_property): same as above without
3939         parser (parsers are going to be needed quite infrequently).
3940         (gtk_widget_style_get_property): retrive style property value.
3941         (gtk_widget_style_get_valist): same as above with varargs support,
3942         has NOCOPY semantics.
3943         (gtk_widget_style_get): wrapper around gtk_widget_style_get_valist().
3944
3945 Fri Mar 16 18:24:53 2001  Jonathan Blandford  <jrb@redhat.com>
3946
3947         * demos/gtk-demo/main.c (row_activated_cb): modified to use
3948         "row_activated" signal.
3949
3950         * gtk/gtktreeview.c (gtk_tree_view_row_activated): oh, the
3951         stupidity.  Lets actually pass in the row with this signal...
3952
3953 Fri Mar 16 18:01:17 2001  Jonathan Blandford  <jrb@redhat.com>
3954
3955         * gtk/gtktreeviewcolumn.[ch]: s/GTK_TREE_COLUMN/GTK_TREE_VIEW_COLUMN
3956
3957         * gtk/gtktreeview.c (gtk_tree_view_row_activated): New signal.
3958
3959         * gtk/gtktreeview.c (gtk_tree_view_destroy): moved pretty much
3960         everything into the ::destroy function, and freed a lot more.
3961
3962 2001-03-16  Havoc Pennington  <hp@redhat.com>
3963
3964         * gtk/gtkwidget.h (struct _GtkWidgetAuxInfo): change to use gint
3965         instead of gint16, to avoid overflow issues, since sizes > 16-bit
3966         are now allowed.
3967
3968 2001-03-16  Havoc Pennington  <hp@redhat.com>
3969
3970         * Applied patch from Nils Barth (bug # 51041) to 
3971         replace "gint" with "gboolean" and 0/1 with TRUE/FALSE
3972         in various places.
3973
3974 2001-03-15  Havoc Pennington  <hp@redhat.com>
3975         
3976         * gtk/gtktextbuffer.c (gtk_text_buffer_create_tag): add varargs 
3977         for properties to set on the tag.
3978
3979         * gtk/testtext.c: fixups to reflect create_tag change
3980         
3981         * gtk/gtktexttag.c (gtk_text_tag_set_property):
3982         background/foreground stipple are objects, not boxed.
3983
3984         * demos/gtk-demo/textview.c: intellihancing
3985
3986 Fri Mar 16 11:38:42 2001  Jonathan Blandford  <jrb@redhat.com>
3987
3988         * gtk/gtktreeview.c (gtk_tree_view_set_model): Fixed some
3989         braindeadness spotted by Jamie Strachan <frostfreek@yahoo.com>.
3990
3991 2001-03-16  Alexander Larsson  <alexl@redhat.com>
3992
3993         * gdk/x11/gdkgeometry-x11.c (_gdk_window_process_expose):
3994         Fix sign error with queued region translations.
3995
3996 2001-03-15  HideToshi Tajima  <tajima@happy>
3997
3998         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_set_cursor_location): 
3999         * gtk/gtkimmulticontext.c (gtk_im_multicontext_set_cursor_location):
4000         * gtk/gtkentry.c (update_im_cursor_location): 
4001         * gtk/gtkimcontext.c (gtk_im_context_set_cursor_location):
4002         * gtk/gtkimcontext.h (struct _GtkIMContextClass): rename
4003         set_cursor_pos to set_cursor_location in GtkInputContext class
4004
4005 Thu Mar 15 18:22:44 2001  Jonathan Blandford  <jrb@redhat.com>
4006
4007         * gtk/gtkcellrenderer.h: Changed prototype to allow for getting
4008         the location of the cell relative to its area.
4009         * gtk/gtkcell*: modified for above change
4010         * gtk/gtktreeview.c: modified for above change.
4011
4012 Wed Mar 14 13:58:32 2001  Jonathan Blandford  <jrb@redhat.com>
4013
4014         * gtk/gtktreeview.c (gtk_tree_view_set_model): Ref the model.
4015          (gtk_tree_view_finalize): actually unref the model.  Thanks to
4016         Jamie Strachan <frostfreek@yahoo.com> for noticing this error.
4017
4018 2001-03-14  Havoc Pennington  <hp@redhat.com>
4019
4020         * gtk/gtkdata.h, gtk/gtkdata.c: Delete.
4021         
4022         * gtk/gtk.h: remove gtkdata.h
4023
4024         * gtk/Makefile.am: remove gtkdata
4025         
4026         * gtk/gtktext.c (gtk_text_set_adjustments): connect to "destroy"
4027         not "disconnect" on the adjustments.
4028         
4029         * gtk/gtktooltips.h, gtk/gtktooltips.c: derive from GtkObject not
4030         GtkData
4031
4032         * gtk/gtkadjustment.h, gtk/gtkadjustment.c: derive from GtkObject
4033         not GtkData
4034
4035         * configure.in: handle case where X render exists, but Pango lacks
4036         Xft support.
4037
4038 2001-03-15 Alexander Larsson  <alexl@redhat.com>
4039
4040         * gtk/gtktoolbar.[ch]:
4041         New functions gtk_toolbar_set_icon_size and gtk_toolbar_insert_stock
4042         to add stock items to toolbars.
4043
4044         * gtk/Makefile.am:
4045         Remove ../gdk/gdkim.h from gdk_headers.
4046
4047 2001-03-15  Sven Neumann  <sven@gimp.org>
4048
4049         * gdk/gdkim.h: removed
4050         
4051         * gdk/gdkprivate.h
4052         * gdk/x11/gdkim-x11.c: do not include gdkim.h 
4053
4054 2001-03-14  HideToshi Tajima  <tajima@happy.sunsoft.eng.sun.com>
4055
4056         * gtk/gtkimmulticontext.c (gtk_im_multicontext_set_cursor_pos):
4057         * gtk/gtkimcontext.c (gtk_im_context_set_cursor_pos):
4058         * gtk/gtkimcontext.h (struct _GtkIMContextClass): add
4059         set_cursor_pos() virtual method
4060
4061         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_class_init):
4062         (gtk_im_context_xim_set_cursor_pos): add implementation for
4063         set_cursor_pos() method
4064
4065         * gtk/gtkentry.c (recompute_idle_func): set current cursor
4066         position to input methods
4067
4068 Mon Mar 12 21:02:08 2001  Jonathan Blandford  <jrb@redhat.com>
4069
4070         * gtk/gtktreeview.c (gtk_tree_view_header_focus): Fix up focus
4071         code a lot.
4072
4073         * gtk/gtktreedatalist.c (_gtk_tree_data_list_free): use
4074         g_mem_chunk.
4075         (_gtk_tree_data_list_alloc): use g_mem_chunk.
4076         (_gtk_tree_data_list_node_to_value): Fix to switch on
4077         G_TYPE_FUNDAMENTAL.
4078         (_gtk_tree_data_list_value_to_node): Fix to switch on
4079         G_TYPE_FUNDAMENTAL.
4080         (_gtk_tree_data_list_node_copy): Fix to switch on
4081         G_TYPE_FUNDAMENTAL.
4082
4083 2001-03-12  Havoc Pennington  <hp@redhat.com>
4084
4085         * gtk/gtkwindow.c (gtk_window_class_init): Patch from John Margaglione 
4086         to convert to new property API. Also, change default_width and
4087         default_height get_property to return 0 as the flag value for
4088         "unset"; -1 is not a valid value for these fields.
4089
4090 2001-03-12  Havoc Pennington  <hp@redhat.com>
4091
4092         * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: Switch to using an
4093         enum with registration for icon sizes, instead of strings.
4094
4095         * gtkimage.h, gtkimage.c, gtkstyle.h, gtkstyle.c, gtkwidget.h, 
4096         gtkwidget.c: Fix to reflect GtkIconSize
4097         
4098 2001-03-12  Alexander Larsson  <alexl@redhat.com>
4099
4100         Make GtkFB compile and link.
4101         
4102         * gdk/linux-fb/gdkdrawable-fb2.c:
4103         window->mapped to GDK_WINDOW_IS_MAPPED(). 
4104         
4105         * gdk/linux-fb/gdkwindow-fb.c:
4106         window->mapped to GDK_WINDOW_IS_MAPPED(). 
4107         Added gdk_window_shape_combine_region.
4108         Added assorted placeholders for unimplemented new GdkWindow API calls.
4109
4110 2001-03-12  Alexander Larsson  <alexl@redhat.com>
4111
4112         * gtk/gtkfilesel.c:
4113         Add more test when converting filenames from/to utf-8.
4114         Don't allow entering text in the filename entry which isn't allowed in
4115         a filename. Just beep instead.
4116
4117 2001-03-12  Alexander Larsson  <alexl@redhat.com>
4118
4119         * gtk/gtkclist.c:
4120         Scroll using gdk_window_scroll(). Don't wait for exposes.
4121         Move the column headers in an order that makes them flash less.
4122
4123 2001-03-10  Hans Breuer  <hans@breuer.org>
4124
4125         * gdk/gdk.def : updated
4126
4127         * gdk/win32/gdkgc-win32.c : pixmaps are visible again, due
4128         to offseting the clip_mask at the right place
4129
4130         * gdk/win32/gdkwindow-win32.c : don't create background brushes
4131         for all the gdkClasses, especially not for the input_only case.
4132         Otherwise flickering wont be avoidable, because we don't get
4133         WM_ERASEBKGND message for these windows.
4134
4135         * gdk/win32/gdkevents-win32.c : initialize event->expose.region
4136         and fixed massive redraw problems apparently triggered by Alexanders 
4137         recent change. Not fully understood the GDK_EXPOSE / WM_PAINT handling
4138         but it seems to work quite well :-)
4139
4140         * gdk/win32/gdkprivate-win32.h : added _gdk_window_process_expose
4141         prototype
4142
4143 Sat Mar 10 12:15:31 2001  Jonathan Blandford  <jrb@redhat.com>
4144
4145         * gtk/gtktreestore.c (gtk_tree_store_set_cell): Fix a stupid typo.
4146         (gtk_list_store_set_cell): Fix a stupid typo.
4147
4148 Fri Mar  9 20:36:21 2001  Jonathan Blandford  <jrb@redhat.com>
4149
4150         * gtk/gtktreeselection.c (gtk_tree_selection_select_all): Make
4151         select_all not work if you're in SINGLE mode (it doesn't make that
4152         much sense, anyway.)
4153
4154         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_to_value):
4155         handle types more sanely.
4156         (_gtk_tree_data_list_value_to_node): handle types more sanely.
4157         (_gtk_tree_data_list_node_copy): handle types more sanely.
4158
4159         * gtk/gtkliststore.c (gtk_list_store_set_cell): fix to work with
4160         GValue better. Converts the type as well.
4161
4162         * gtk/gtktreestore.c (gtk_tree_store_set_cell): fix to work with
4163         GValue better. Converts the type as well.
4164
4165 Wed Mar  7 20:47:41 2001  Owen Taylor  <otaylor@redhat.com>
4166
4167         * gtk/gtktext.c gtk/gtkoldeditable.[ch] gdk/gdk.[ch]
4168         gdk/Makefile.am gdk/x11/Makefile.am gdk/x11/gdkevents-x11.c 
4169         gdk/x11/gdkglobals-x11.c gdk/x11/gdkprivate-x11.c
4170         gdk/x11/gdkx.h gdk/x11/gdkim-x11.c: Remove old XIM code.
4171
4172         * gdk/win32/gdkim-win32.c gdk/linux-fb/gdkim-fb.c: Remove
4173         gdk_im/gdk_ic.
4174
4175 2001-03-09  Hans Breuer  <hans@breuer.org>
4176
4177         * gdk/gdk.def : updated
4178
4179         * gdk/win32/gdkevents-win32.c : don't ask input_only windows
4180         for their palette
4181
4182         * gdk/win32/gdkgeometry-win32.c : reflect GdkWindowObject::mapped
4183         removing
4184
4185         * gdk/win32/gdkwindow-win32.c : reflect GdkWindowObject::mapped
4186         removing and implemented Havoc's GdkWindow state functions; 
4187         stick/unstick only as no-op, cause I don't know how to emulate 
4188         on win32 ...
4189
4190         * gtk/gtk.def : updated
4191
4192         * gtk/gtkbox.c (gtk_box_get_spacing) : use g_return_val_if_fail ()
4193
4194         * gtk/gtktypeutils.c : #include <string.h>
4195
4196         * gtk/gtkwindow.h : declare gtk_window_set_decorated ()
4197
4198 Fri Mar  9 09:31:55 2001  Tim Janik  <timj@gtk.org>
4199
4200         * gtk/gtkwidget.c (gtk_widget_class_init): fixed signals with
4201         GDK_TYPE_DRAG_CONTEXT, it needs to be marshaled as an object,
4202         not a boxed.
4203
4204 2001-03-09  Alexander Larsson  <alexl@redhat.com>
4205
4206         * docs/Changes-2.0.txt:
4207         Document expose event->region change and that gtk_widget_event
4208         doesn't allow passing expose events.
4209
4210         * gdk/gdkevents.h:
4211         Add region to expose event.
4212         
4213         * gdk/gdkevents.c:
4214         Handle event->region in gdk_event_copy() and gdk_event_free().
4215
4216         * gdk/gdkwindow.c (gdk_window_process_updates_internal):
4217         Generate expose_event->region when creating expose events.
4218
4219         * gdk/x11/gdkevents-x11.c:
4220         Generate expose events with regions when translating X events.
4221
4222         * gtk/gtkcontainer.[ch]:
4223         Default expose handler that propagates expose events to NO_WINDOW
4224         children. New function gtk_container_propagate_expose()
4225
4226         * gtk/gtkwidget.[ch]:
4227         Moved gtk_widget_event implementation to gtk_widget_event_internal.
4228         gtk_widget_event calls gtk_widget_event_internal but doesn't allow
4229         expose events. New function gtk_widget_send_expose() to send expose
4230         events. New function gtk_widget_region_intersect() to calculate
4231         window/region intersections.
4232         
4233         * gtk/gtkmain.c (gtk_main_do_event):
4234         Use gdk_window_begin_paint_region() instead of gdk_window_begin_paint_rect().
4235         Use gtk_widget_send_expose() to send expose events.
4236         
4237         * gtk/gtkbin.c:
4238         * gtk/gtkbox.c:
4239         * gtk/gtkfixed.c:
4240         * gtk/gtkimagemenuitem.c:
4241         * gtk/gtklist.c:
4242         * gtk/gtkpacker.c:
4243         * gtk/gtktable.c:
4244         * gtk/gtktree.c:
4245         Remove expose handler, using the default container implementation
4246         instead.
4247         
4248         * gtk/gtkbutton.c:
4249         * gtk/gtkcheckbutton.c:
4250         * gtk/gtkeventbox.c:
4251         * gtk/gtkfixed.c:
4252         * gtk/gtkhandlebox.c:
4253         * gtk/gtklayout.c:
4254         * gtk/gtklistitem.c:
4255         * gtk/gtkmenu.c:
4256         * gtk/gtkmenubar.c:
4257         * gtk/gtkmenuitem.c:
4258         * gtk/gtknotebook.c:
4259         * gtk/gtkoptionmenu.c:
4260         * gtk/gtkpaned.c:
4261         * gtk/gtkscrolledwindow.c:
4262         * gtk/gtktogglebutton.c:
4263         * gtk/gtktoolbar.c:
4264         * gtk/gtktreeitem.c:
4265         * gtk/gtkviewport.c:
4266         Chain expose handler to parent class handler. Use
4267         gtk_container_propagate_expose() to propagate exposes.
4268
4269         * gtk/gtkclist.c (check_exposures):
4270         * gtk/gtktext.c (process_exposes):
4271         Use gtk_widget_send_expose instead of gtk_widget_event.
4272
4273 Thu Mar  8 19:40:28 2001  Jonathan Blandford  <jrb@redhat.com>
4274
4275         * gtk/gtktreeview.c (gtk_tree_view_destroy): Add destroy function.
4276
4277 Thu Mar  8 19:18:27 2001  Jonathan Blandford  <jrb@redhat.com>
4278
4279         * gtk/gtktreeview.c (gtk_tree_view_unref_tree_helper): Actually
4280         unref the nodes.   Fixes bug #50058.
4281
4282         * gtk/gtktreemodel.c (gtk_tree_model_ref_node): change
4283         "::ref_iter" to "::ref_node".
4284         (gtk_tree_model_unref_node): change "::unref_iter" to
4285         "::unref_node". Fixes bug #50064.
4286
4287 Thu Mar  8 17:40:09 2001  Jonathan Blandford  <jrb@redhat.com>
4288
4289         * gtk/gtktreeview.c (gtk_tree_view_create_row_drag_icon): add
4290         support for invisible cells.
4291          (gtk_tree_view_bin_expose): ditto
4292
4293 Thu Mar  8 16:36:00 2001  Jonathan Blandford  <jrb@redhat.com>
4294
4295         * gtk/gtktreemodel.c (gtk_tree_model_get_type): add prerequesite
4296         on gobjects.
4297
4298         * tests/testtreefocus.c (main): New test file.
4299
4300         * tests/testtreeview.c: update to latest glib changes.
4301
4302         * tests/testtreecolumns.c: update to latest glib changes.
4303
4304 Thu Mar  8 18:13:20 2001  Tim Janik  <timj@gtk.org>
4305
4306         * gtk/testgtk.c: re-enabled event watcher emission hooks.
4307
4308 Thu Mar  8 16:51:21 2001  Tim Janik  <timj@gtk.org>
4309
4310         * *.c: added accumulator data argument to g_signal_newc()
4311         functions.
4312
4313         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_set_model): 
4314         * gtk/gtktreeview.c (gtk_tree_view_setup_model): 
4315         * gtk/treestoretest.c (make_window):
4316         s/g_signal_connect/g_signal_connectc/.
4317
4318         * gtk/gtktextbuffer.c: completed signal arg fixups,
4319         they also needed G_SIGNAL_TYPE_STATIC_SCOPE flag.
4320
4321 Thu Mar  8 00:02:30 2001  Owen Taylor  <otaylor@redhat.com>
4322
4323         * gtk/gtkwidget.[ch] (gtk_widget_get_name): Make
4324         G_CONST_RETURN.
4325
4326         * gtk/gtkwidget.[ch] gtk/gtkprivate.h: Add a 
4327         ::hierarchy-changed signal when a widget changes
4328         from anchored to unanchored or vice versa.
4329         (anchored means 
4330          gtk_widget_get_ancestor (widget, GTK_TYPE_WINDOW) != NULL.)
4331         Use a private flag to keep track of this efficiently.
4332
4333 2001-03-07  Havoc Pennington  <hp@redhat.com>
4334
4335         * gtk/testgtk.c (create_spins): uglify so that size request gets
4336         tested.
4337
4338         * gtk/gtkspinbutton.c (gtk_spin_button_size_request): Base size
4339         request on values for upper/lower, completes #6152
4340
4341 Wed Mar  7 20:07:22 2001  Owen Taylor  <otaylor@redhat.com>
4342
4343         * Makefile.am: Remove gtk-config-2.0 again.
4344         (Grrrr, pkg-config. And stops make loops.)
4345
4346 Thu Mar  8 00:18:29 2001  Tim Janik  <timj@gtk.org>
4347
4348         * gtk/gtksignal.[hc]: removed old emission hook API.
4349         
4350         * docs/Changes-2.0.txt: fixed sections.
4351         
4352         * gtk/gtktextbuffer.c: signal arg fixups.
4353
4354 2001-03-07  Havoc Pennington  <hp@redhat.com>
4355
4356         * gtk/gtktextview.c (invalidated_handler): use PRIORITY_VALIDATE
4357
4358         * gtk/gtktextview.h (GTK_TEXT_VIEW_PRIORITY_VALIDATE): add this
4359         here, bug #50368; changed to be GDK_PRIORITY_REDRAW + 5, instead
4360         of GDK_PRIORITY_REDRAW + 1, so you can insert stuff in between the
4361         validation and the redraw which is higher priority than the
4362         validation.
4363
4364 2001-03-07  Havoc Pennington  <hp@redhat.com>
4365
4366         * gtk/gtkentry.c (gtk_entry_get_property): remove trailer
4367         (gtk_entry_set_property): remove trailer
4368
4369         * gtk/gtkentry.c (gtk_entry_set_width_chars): 
4370         (gtk_entry_get_width_chars): new functions, to set size request to 
4371         a given number of characters
4372
4373         * gtk/testgtk.c (create_dialog): beef up the dialog test slightly
4374
4375         * gtk/gtkdialog.c (gtk_dialog_set_has_separator): new function
4376         (gtk_dialog_get_has_separator): new function
4377         (run_delete_handler): fix to not emit "response" signal
4378         because we already did in the delete event handler installed
4379         at dialog creation time.
4380         
4381         * gtk/gtkdialog.h: add a has_separator property,
4382         add GTK_DIALOG_NO_SEPARATOR flag
4383
4384 2001-03-07  Havoc Pennington  <hp@redhat.com>
4385
4386         * gtk/gtkwindow.c (gtk_window_set_decorated): new function, turns
4387         off decorations for a window.
4388
4389         * demos/gtk-demo/button_box.c (create_bbox): adapt to button box
4390         changes
4391
4392         * gtk/gtklabel.c (gtk_label_get_layout_offsets): new function 
4393         to get location of PangoLayout inside the label, closes #51198
4394
4395         * gtk/testgtk.c (create_bbox): fix up button box usage
4396
4397         * gtk/testcalendar.c (create_calendar): fix up button box usage
4398
4399         * gtk/gtkfilesel.c (gtk_file_selection_init): fixup buttonbox usage
4400
4401         * gtk/gtkdialog.c (gtk_dialog_init): fixup buttonbox usage
4402
4403         * gtk/gtkhbbox.h: deprecations
4404
4405         * gtk/gtkvbbox.h: deprecations
4406
4407         * gtk/gtkbox.c (gtk_box_get_spacing): new function, used to
4408         emulate deprecated gtk_button_box_get_spacing
4409
4410         * gtk/gtkbbox.h: deprecate some useless functions, remove entirely 
4411         the "set global default" functions
4412         (struct _GtkButtonBox): remove "spacing" field, use the one from 
4413         GtkBox base class
4414
4415         * gtk/gtkbbox.c (_gtk_button_box_child_requisition): rename with uscore
4416
4417         * gtk/gtkiconfactory.c (gtk_icon_set_render_icon): If we fail to
4418         render the icon, return the missing image icon.
4419
4420         * gtk/gtkimage.c (gtk_image_set_from_file): fall back to missing
4421         image icon if the load fails.   
4422
4423         * gtk/gtkstock.h (GTK_STOCK_MISSING_IMAGE): Add stock icon for use
4424         when no image is found; should be the Netscape "missing image"
4425         icon eventually but for now is a random image
4426
4427         * gtk/gtkwindow.c (gtk_window_set_role): new function, sets the 
4428         role for the session manager
4429
4430         * gtk/testgtk.c (dnd_drop): remove use of GTK_WINDOW_DIALOG
4431
4432         * gtk/gtkcompat.h (GTK_WINDOW_DIALOG): compat #define
4433         GTK_WINDOW_DIALOG GTK_WINDOW_TOPLEVEL
4434
4435         * gtk/gtkenums.h (enum GtkWindowType): remove GTK_WINDOW_DIALOG
4436
4437 Wed Mar  7 13:24:57 2001  Tim Janik  <timj@gtk.org>
4438
4439         * gtk/*.c: marshaller fixes.
4440         
4441         * gtk/gtkmarshal.list: extreme cleanup.
4442
4443         * gtk/gtktreeview.c (gtk_tree_view_class_init): disable interface
4444         param spec for now.
4445
4446         * gtk/gtktexttag.c (gtk_text_tag_set_property): use g_value_get_boxed()
4447         where appliable.
4448
4449         * gtk/gtktypeutils.[hc]: updates to GLib API changes.
4450         special cased autogenerated boxed types from gtktypebuiltins_ids.c
4451         which are not reference counted:
4452         GtkSelectionData, GdkEvent, GdkColor, GtkTextIter, PangoTabArray,
4453         PangoFontDescription, GtkTreeIter and GtkTreePath.
4454
4455 Thu Mar  1 03:58:56 2001  Tim Janik  <timj@gtk.org>
4456
4457         * gtk/gtktreeselection.h: 
4458         * gtk/gtktreemodel.c:
4459         * gtk/gtktreedatalist.[hc]: fixed includes. no gobject/*
4460         file should be included directly, and gobject/gmarshal.h
4461         as well as gtk/gtkmarshal.h even can't be included directly.
4462
4463         * Makefile.am: grr, install gtk-config-2.0.
4464
4465         * gtk/testgtk.c:
4466         * gtk/simple.c:
4467         * gtk/gtkmenu.c:
4468         * gtk/gtkitemfactory.c: use g_object_connect() instead of
4469         passing "*signal*::*" args to gtk_widget_set().
4470         
4471         * gtk/gtktypeutils.[hc]: got rid of GTK_TYPE_SIGNAL.
4472         
4473         * gtk/*.c: removed trailer arg from property setters and getters.
4474         macro fixups.
4475
4476 2001-03-07  Alexander Larsson  <alexl@redhat.com>
4477
4478         * gtk/gtklabel.c (set_markup): Removed warning
4479
4480 Tue Mar  6 19:59:12 2001  Jonathan Blandford  <jrb@redhat.com>
4481
4482         * gtk/gtkcellrenderer.h (struct _GtkCellRenderer): Add visible
4483         field to allow you to hide cell renderers.
4484
4485         * gtk/gtkcellrenderer.c: Add support for invisible cells.
4486
4487         * gtk/gtktreeview.c: Add support for invisible cells.
4488
4489 Tue Mar  6 17:25:07 2001  Jonathan Blandford  <jrb@redhat.com>
4490
4491         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_button_clicked):
4492         Add "clicked" signal back to columns.
4493
4494         * ChangeLog: remove conflict markers.
4495
4496 Tue Mar  6 10:45:45 2001  Owen Taylor  <otaylor@redhat.com>
4497
4498         * gtk/gtkbutton.c: Add animation of activation by, on 
4499         activate, pressing the button, and adding a timeout that 
4500         releases the button after 250ms or on key release and
4501         emits ::clicked. (#51501)
4502
4503         * gtk/gtkdialog.c: Bit of a hack - for buttons in the
4504         action area, we connect to ::clicked instead of ::activate
4505         so the dialog stays up through the animation.
4506
4507 Mon Mar  5 16:38:15 2001  Owen Taylor  <otaylor@redhat.com>
4508
4509         * gtk/gtkmenushell.c (gtk_menu_shell_enter_notify): Only
4510         check the ignore_enter flag for the menu shell that
4511         the item is actually a child of, not for attached
4512         submenus. (#51536)
4513
4514 Tue Feb 27 02:16:14 2001  Owen Taylor  <otaylor@redhat.com>
4515
4516         * gtk/gtkmain.c (gtk_propagate_event): Only do special
4517         special key-press grab handling for widgets within
4518         GtkWindows. Otherwise, fall through to normal case.
4519
4520         This prevents key events being sent twice to GtkInvisible
4521         widgets, which can cause all sorts of mischief.
4522
4523 Fri Feb  2 13:20:12 2001  Owen Taylor  <otaylor@redhat.com>
4524
4525         * gtk/gtkmain.c (gtk_propagate_event): When a grab
4526         widget is in effect, give the grab widget a first
4527         crack at KEY_PRESS/RELEASE events. (#424)
4528
4529 2001-03-06  James Henstridge  <james@daa.com.au>
4530
4531         * gtk/gtkwidget.c (gtk_widget_class_init): set the class closure
4532         offset for the window_state_event to point at window_state_event
4533         rather than no_expose_event.
4534
4535 Mon Mar  5 19:10:15 2001  Jonathan Blandford  <jrb@redhat.com>
4536
4537         * gtk/gtkimmodule.h: fix busted /* comment */
4538
4539 Mon Mar  5 15:07:05 2001  Jonathan Blandford  <jrb@redhat.com>
4540
4541         * gtk/gtktreeview.c: Apply patch from John Margaglione to add
4542         object properties.
4543
4544 Mon Mar  5 14:55:19 2001  Jonathan Blandford  <jrb@redhat.com>
4545
4546         * gtk/gtkcellrenderertoggle.c: Apply patch from Lee Mallabone to
4547         add object properties.
4548
4549         * gtk/gtkcellrenderertextpixbuf.c: Apply patch from Lee Mallabone
4550         to add object properties.
4551
4552         * gtk/gtkcellrenderertext.c: Apply patch from Lee Mallabone to add
4553         object properties.
4554
4555         * gtk/gtkcellrendererpixbuf.c: Apply patch from Lee Mallabone to
4556         add object properties.
4557
4558         * gtk/gtkcellrenderer.c: Apply patch from Lee Mallabone to add
4559         object properties.
4560
4561 Mon Mar  5 14:38:54 2001  Jonathan Blandford  <jrb@redhat.com>
4562
4563         * gtk/gtktreemodel.c: renamed "child_toggled" to
4564         "has_child_toggled".
4565
4566         * gtk/gtktreeview.c: Handle removing columns better.  Updated to
4567         handle new signal name.
4568
4569         * gtk/gtktreestore.c: Updated to handle new signal name.
4570         * gtk/gtklisttore.c: Updated to handle new signal name.
4571         * gtk/gtktreemodelsort.c: Updated to handle new signal name.
4572
4573 2001-03-05  Alexander Larsson  <alexl@redhat.com>
4574
4575         * gtk/gtkmenu.c (gtk_menu_set_tearoff_state):
4576         Set GDK_WINDOW_TYPE_HINT_MENU on tearoff window.
4577
4578 2001-03-05  Michael Natterer  <mitch@gimp.org>
4579
4580         * gtk/gtklabel.c: Made the "parent_class" pointer static. The
4581         pixbuf-engine coincidentially also failed to make one of it's
4582         parent_class pointers static, causing overwriting of GtkLabel's
4583         parent_class pointer in pixbuf_style_class_init().
4584         (Will commit the fix to the pixbuf-engine too).
4585
4586 2001-03-05  Alexander Larsson  <alexl@redhat.com>
4587
4588         * gdk/gdkwindow.h:
4589         Added GdkWindowTypeHint type. Added modal_hint field to GdkWindindow.
4590         New functions gdk_window_set_type_hint, gdk_window_set_modal_hint and
4591         gdk_window_set_icon_list for net wmspec functionality.
4592
4593         * gdk/x11/gdkwindow-x11.c:
4594         Set _NEW_WM_STATE_MODAL from window->modal_hint in set_inital_hints.
4595         Implement gdk_window_set_type_hint, gdk_window_set_modal_hint and
4596         gdk_window_set_icon_list.
4597         Added gdk_wmspec_change_state helper function and used it in the code.
4598         Set _NET_WM_ICON_NAME in gdk_window_set_title and gdk_window_set_icon_name.
4599
4600         * gtk/gtkdialog.c (gtk_dialog_init):
4601         Set GDK_WINDOW_TYPE_HINT_DIALOG.
4602
4603         * gtk/gtkhandlebox.c (gtk_handle_box_realize):
4604         Set GDK_WINDOW_TYPE_HINT_TOOLBAR.
4605
4606         * gtk/gtkwindow.c:
4607         new function gtk_window_set_type_hint.
4608         On realize, set type hint and modal hint.
4609
4610         * gtk/gtkwindow.h:
4611         Added type_hint field and gtk_window_set_type_hint.
4612
4613 2001-03-05  Alexander Larsson  <alexl@redhat.com>
4614
4615         * gtk/gtklabel.[ch]:
4616         Convert from GtkArg to GParam (originally based on patch from Lee Mallabone).
4617         New function gtk_label_get_accel_keyval () to get the underline accelerator
4618         of the label. Setting the label pattern overrides other attributes.
4619
4620 Mon Mar  5 14:51:10 MET 2001  Sven Neumann  <sven@gimp.org>
4621
4622         * gtk/gtkrc.c: fixed compiler warnings by inserting some consts.
4623         Added missing initializers to gtk_rc_style_init().
4624
4625 Sun Mar 04  07:30:03 2001 CET Mikael Hermansson <mikeh@bahnhof.se>
4626
4627         * gtk/gtktextview.c: fixed bug #51097 about setting 
4628         gtk_text_view_set_border_window_size() if the widget is 
4629         already realized.
4630
4631 Sat Mar  3 16:59:16 2001  Owen Taylor  <otaylor@redhat.com>
4632
4633         * gdk/gdkpango.h gdk/x11/gdkwindow-x11.c: Doc fixes
4634
4635         * gdk/win32/gdkinput.c (gdk_device_get_axis): Remove doc
4636         comment. Won't do to have duplicated doc comments between
4637         the platform subdirs.
4638
4639 Sat Mar  3 16:26:33 2001  Owen Taylor  <otaylor@redhat.com>
4640
4641         * gdk/x11/gdkmain-x11.c gdk/x11/gdkkeys-x11.c 
4642           gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.c:
4643
4644         Detectable auto-repeat - make a repeating key generate
4645         press/press/press/release instead of press/release pairs.
4646
4647         If we have Xkb and XkbSetDectableAutoRepeat supports
4648         that, we do it that way. Otherwise, when we get
4649         a release event, we check ahead with XPending to see
4650         if the next key is a KeyPress with the same keycode
4651         and timestamp. (Not 100% reliable, but pretty close.)
4652           
4653 Tue Feb 27 02:16:14 2001  Owen Taylor  <otaylor@redhat.com>
4654         
4655         * gtk/gtkmain.c (gtk_propagate_event): Only do special
4656         special key-press grab handling for widgets within
4657         GtkWindows. Otherwise, fall through to normal case.
4658  
4659         This prevents key events being sent twice to GtkInvisible
4660         widgets, which can cause all sorts of mischief.
4661  
4662 Fri Feb  2 13:20:12 2001  Owen Taylor  <otaylor@redhat.com>
4663  
4664         * gtk/gtkmain.c (gtk_propagate_event): When a grab
4665         widget is in effect, give the grab widget a first
4666         crack at KEY_PRESS/RELEASE events. (#424)
4667  
4668 Sat Mar  3 15:39:49 2001  Owen Taylor  <otaylor@redhat.com>
4669
4670         * gtk/gtkentry.c (gtk_entry_button_press): Add shift-clicking
4671         to extend the selection. (Roughly based on patch
4672         from Jay Cox, #50939)
4673
4674         * gtk/gtkentry.c (gtk_entry_button_press): Fix triple-clicking
4675         to properly handle previous GDK_BUTTON_PRESS. 
4676         (Patch from Jay Cox, #50938)
4677
4678         * gtk/gtkentry.c (gtk_entry_real_delete_text): Move the
4679         '\0' back along with the deleted text. (#51148)
4680
4681 Mon Jan 22 14:31:29 2001  Owen Taylor  <otaylor@redhat.com>
4682
4683         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Unshift
4684         the group when extracting it from the X keyboard event.
4685
4686         * modules/input/Makefile.am modules/input/imipa.c: 
4687         Simple module for entering IPA. (Do we need a 
4688         gtk-stupid-input-tricks CVS module?)
4689
4690 Sat Mar  3 13:32:47 2001  Owen Taylor  <otaylor@redhat.com>
4691
4692         * gtk/gtkimmodule.c (gtk_im_module_init): Remove spurious
4693         const.
4694
4695         * gdk-pixbuf-2.0.pc.in gtk+-2.0.pc.in: Fix include path.
4696
4697         * gtk/gtkdialog.c (gtk_dialog_set_default_response): If there
4698         is no focus widget for the dialog currently, grab the focus as well
4699         as the default.
4700
4701         * gtk/gtkdialog.c (gtk_dialog_set_default_response): Get
4702         the action area's children to iterate through, not the
4703         dialog's children.
4704
4705 Sat Mar  3 13:21:27 2001  Owen Taylor  <otaylor@redhat.com>
4706
4707         * tests/Makefile.am tests/testsocket.c tests/testsocket_child.c:
4708         Add plug-socket tests. (Won't work worth a darn until I commit
4709         the rest of the plug-socket changes, but no reason these
4710         can't go into CVS now.)
4711
4712 2001-03-02  Havoc Pennington  <hp@redhat.com>
4713
4714         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_flush): use
4715         _gdk_region_get_xrectangles()
4716
4717         * gdk/x11/gdkmain-x11.c (_gdk_region_get_xrectangles): new function
4718
4719         * gtk/testgtk.c (create_shapes): add test for shape_combine_region
4720
4721         * gdk/x11/gdkwindow-x11.c (gdk_window_shape_combine_region): new
4722         function, contributed by Ron Steinke    
4723
4724         * gdk/x11/gdkevents-x11.c (gdk_wmspec_supported): rename
4725         gdk_net_wm_supports
4726
4727         * gdk/gdkregion-generic.c (gdk_region_get_rectangles): 
4728         New function, contributed by Ron Steinke
4729
4730         * gtk/gtkentry.c (gtk_entry_get_layout_offsets): New function, 
4731         used to line up the text in the entry when using the entry for
4732         editable sheet cell hacks
4733
4734         * gtk/testgtk.c (create_entry): test the activate_default setting
4735         on GtkEntry
4736
4737         * gtk/gtkentry.c (gtk_entry_set_activates_default): New function to 
4738         cause the entry to activate the default button for a dialog when 
4739         activated
4740         (gtk_entry_get_activates_default): new function
4741
4742 Wed Feb 28 19:10:43 2001  Owen Taylor  <otaylor@redhat.com>
4743
4744         * gtk/gtkclist.c (real_remove_row): Patch from ChiDeok
4745         Hwang to move call to sync_selection() up a few lines
4746         to before the row list is modified, to fix crash when
4747         removing rows in the undo_selection list.
4748
4749         (Test case provided by Daniel Elstner:
4750
4751         http://mail.gnome.org/archives/gtk-list/2001-February/msg00359.html)
4752
4753 Fri Feb 23 15:06:48 2001  Owen Taylor  <otaylor@redhat.com>
4754
4755         * gtk/gtktree.c (gtk_tree_class_init): Do the setting
4756         of tree->root_tree in parent_set rather than _map(), 
4757         fixing #50892 in a bit better manner.
4758
4759 Thu Feb 22 17:07:58 2001  Owen Taylor  <otaylor@redhat.com>
4760
4761         * gtk/gtkmenu.c (gtk_menu_popup): Don't flip cursor. (#50934)
4762
4763 Tue Feb  2 11:22:33 2001  Jody Goldberg <jgoldberg@home.com>
4764
4765         * gtk/gtkstyle.c : Remove duplicate fwd decl for
4766         gtk_default_draw_shadow.
4767
4768 ue Feb 20 11:40:58 2001  Owen Taylor  <otaylor@redhat.com>
4769
4770         * gdk/gdkimage.c (gdk_image_new): Remove excess 
4771         warning, make warnings more verbose, treat a error
4772         in shmat as permanent, and don't try again.
4773         (#51163, Ed Randall.)
4774
4775 Mon Feb 19 20:15:28 2001  Owen Taylor  <otaylor@redhat.com>
4776
4777         * gtk/gtkrange.c (gtk_range_timer_1st_time): Add an initial
4778         delay for the first click before starting to scroll.
4779         (based on #51026, gtk-enf-990512-0.patch, Eric Fisher)
4780
4781         * gtk/gtktext.c: GtkText should have I-beam cursor. 
4782         (based on gtk-enf-990513-1.patch, Eric Fisher.)
4783
4784 Mon Feb 19 16:42:19 2001  Owen Taylor  <otaylor@redhat.com>
4785
4786         * gtk/gtklayout.c (gtk_layout_allocate_child): Tiny
4787         cleanup to remove some references to unused
4788         ->xoffset, ->yoffset.
4789
4790 Mon Feb 19 14:20:36 2001  Owen Taylor  <otaylor@redhat.com>
4791
4792         * gdk/gdkrgb.c (gdk_rgb_convert_555_br): Fix incorrect
4793         mask. (#51039, fix from Martin Maierhofer)
4794
4795 Fri Feb 16 20:09:42 2001  Owen Taylor  <otaylor@redhat.com>
4796
4797         * gtk/gtkctree.c (gtk_ctree_class_init): Add bindings
4798         for unshifted + and shifted = for non-us keyboards.
4799         Make <Control>+ and <Control>- work as well as 
4800         <Control>KP_Plus, <Control>KP_Minus for recursive
4801         open/close.  (#2682, René Seindal)
4802
4803 Fri Feb 16 18:50:59 2001  Owen Taylor  <otaylor@redhat.com>
4804
4805         * gtk/gtkmenushell.c (gtk_real_menu_shell_cancel): Unset
4806         the active menu item before deactivating the menu,
4807         so gtk_menu_popdown doesn't change the history. (#50964)
4808         
4809 Fri Feb 16 15:55:22 2001  Owen Taylor  <otaylor@redhat.com>
4810
4811         * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): 
4812         draw lines with text_gc rather than black_gc.
4813         (Patch from Vlad Harchev <hvv hippo ru>, #50926)
4814
4815 Thu Mar  1 19:50:56 2001  Jonathan Blandford  <jrb@redhat.com>
4816
4817         * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_realize_button):
4818         Move handling of buttons fully in gtktreeviewcolumn.  This code is
4819         less interrelated then it was, but it still requires the
4820         GtkTreeView to map it.
4821
4822         * test/testtreecolumn.c: Now I can add a column to one view,
4823         remove it, add it to the another view, remove it, then re-add it
4824         to the first.  Nifty.
4825
4826 Thu Mar  1 13:14:27 GMT 2001  Tony Gale <gale@gtk.org>
4827
4828         * docs/tutorial/gtk-tut.sgml: Minor corrections
4829
4830 Wed Feb 28 16:36:46 2001  Jonathan Blandford  <jrb@redhat.com>
4831
4832         * gtk/gtktreemodel.c (gtk_tree_row_reference_*): Sanitize
4833         GtkRowReference.
4834
4835 2001-02-28  Havoc Pennington  <hp@redhat.com>
4836
4837         * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove draw_focus and
4838         draw_default
4839         (gtk_widget_draw_focus): remove this function; we could instead
4840         make it just gtk_widget_draw(), but in most cases I think the
4841         result would be broken user code, so think it's better to have
4842         that code not compile and get fixed
4843         (gtk_widget_draw_default): ditto
4844
4845         * gtk/gtkwidget.c: Add default handlers for focus_in_event and
4846         focus_out_event that set/unset GTK_HAS_FOCUS and call queue_draw
4847         
4848         * gtk/gtkwindow.c (gtk_window_set_default): just queue a draw when
4849         widgets lose/get the default, instead of calling draw_default
4850         
4851         * docs/Changes-2.0.txt: note about all this
4852
4853         Then fixed every widget in GTK, I won't list all the filenames.
4854
4855 Tue Feb 27 19:32:53 2001  Jonathan Blandford  <jrb@redhat.com>
4856
4857         * gtk/gtktreemodel.c (deleted_callback): Proxy out to
4858         _gtk_tree_row_reference_deleted.
4859         (inserted_callback): Proxy out to
4860         _gtk_tree_row_reference_inserted.
4861         (_gtk_tree_row_reference_new_from_view): Somewhat yukky hack to
4862         get around signal emission ordering problem.
4863
4864         * gtk/gtktreeselection.c (gtk_tree_selection_real_unselect_all):
4865         fix to work with SINGLE 
4866         (_gtk_tree_selection_internal_select_node): Major sanitization on
4867         selections.  SINGLE now seems to work.
4868
4869         * tests/Makefile.am: add testtreecolumn.c:
4870
4871         * tests/testtreecolumn.c: New test.  Mostly points out selection
4872         bugs currently, but will test columns later.
4873
4874         * gtk/gtkrbtree.c (_gtk_rbtree_remove_node): Fix really nasty
4875         selection bug.  I hate touching this code -- it's scary.
4876
4877 2001-02-26  Havoc Pennington  <hp@redhat.com>
4878
4879         * gtk/testgtk.c: test the window state stuff
4880
4881         * gtk/gtkwindow.c (gtk_window_present): new function, makes a
4882         window come to the user's attention as if it were just created
4883         (gtk_window_iconify): new function
4884         (gtk_window_deiconify): new function
4885         (gtk_window_stick): new function
4886         (gtk_window_unstick): new function
4887         (gtk_window_maximize): new function
4888         (gtk_window_unmaximize): new function
4889
4890         * gtk/gtkwidget.h, gtk/gtkwidget.c: add window_state_event signal
4891
4892         * gtk/gtkmain.c (gtk_main_do_event): handle GDK_WINDOW_STATE
4893
4894         * gdk/x11/gdkevents-x11.c: create window state events when
4895         appropriate
4896         (gdk_wmspec_supported): new function
4897
4898         * gdk/x11/gdkwindow-x11.c (gdk_window_iconify): handle
4899         iconification before showing the window
4900         (gdk_window_deiconify): new function
4901         (gdk_window_stick): new function
4902         (gdk_window_unstick): new function
4903         (gdk_window_maximize): new function
4904         (gdk_window_unmaximize): new function
4905
4906         * gdk/gdkwindow.c: store the window state in the window; 
4907         change to using the GDK_WINDOW_STATE_WITHDRAWN flag instead of
4908         window->mapped.
4909         (gdk_window_get_state): return the current window state
4910
4911         * gdk/gdkevents.c (gdk_event_get_time): handle GDK_WINDOW_STATE
4912         (gdk_event_get_state): handle GDK_WINDOW_STATE
4913         (gdk_synthesize_window_state): function to create the window state
4914         events
4915
4916         * gdk/gdkevents.h (struct _GdkEventWindowState): new type of
4917         event, for changes to "window state" such as maximized, sticky, 
4918         etc.
4919         
4920         * gdk/x11/gdkwindow-x11.c (gdk_window_focus): new function,
4921         focuses a window
4922
4923         * gdk/x11/gdkmain-x11.c (_gdk_wmspec_supported): new function, 
4924         finds out if we support a given WM spec hint
4925
4926 Tue Feb 27 13:37:38 GMT 2001  Tony Gale <gale@gtk.org>
4927
4928         * docs/faq/gtk-faq.sgml: New question re memory leaks.
4929
4930 2001-02-25  Hans Breuer  <hans@breuer.org>
4931
4932         * gdk/gdk.h : changed #ifdef GDK_DISBALE_DEPRECARED to #ifndef
4933         cause we want to loose those prototypes only in the latter case
4934
4935         * gdk/win32/gdkevents-win32.c : can't cast from GdkPixmap to
4936         GdkPixmapImplWin32 because it itsn't derived from it. Use the
4937         impl member variable instead
4938
4939         * gtk/gtk.def : updated
4940
4941         * gtk/gtklist.c : 
4942         * gtk/gtkmenus.c : include <string.h> for memset ()
4943
4944         * gtk/makefile.msc.in : updated and don't define GTK_COMPILATION
4945         for everthing built here, but for gtk-x.x.dll only. This solves
4946         problem of indifferent gtk type definitions
4947
4948 Sat Feb 24 20:11:39 2001  Jonathan Blandford  <jrb@redhat.com>
4949
4950         * gtk/gtkclipboard.h: actually put /* */ around #endif comment.
4951
4952 Fri Feb 23 17:50:13 2001  Jonathan Blandford  <jrb@redhat.com>
4953
4954         * gtk/gtktreeview.c (gtk_tree_view_bin_expose): Only draw the
4955         column that is exposed.
4956
4957         (_gtk_tree_view_update_size): Changed name from set_size, and
4958         changed function to do more work, and not force people calling it
4959         to figure out the size.  Simplifies a lot of code elsewhere.
4960
4961 2001-02-23  Alexander Larsson  <alexl@redhat.com>
4962
4963         * gdk/gdkpixmap.c (gdk_pixmap_colormap_new_from_pixbuf):
4964         return solid masks for xpms that have no transparent color.
4965         This makes the ..._create_from_xpm... API backwards
4966         compatible.
4967
4968 2001-02-23  Tor Lillqvist  <tml@iki.fi>
4969
4970         * README.win32: Update. Mention the gtk-1-3-win32-production
4971         branch.
4972
4973         * gdk/win32/bdfcursor.c: New file. A program that generates
4974         xcursors.h. Thanks to Stefan Ondrejicka.
4975
4976         * gdk/win32/xcursors.h: New file, contains the X cursor font in a
4977         compact format.
4978
4979         * gdk/win32/Makefile.am (EXTRA_DIST): Add new files.
4980
4981         * gdk/win32/gdkcursor-win32.c (_gdk_win32_data_to_wcursor): New
4982         function, uses xcursors.h.
4983         (gdk_cursor_new): Use _gdk_win32_data_to_wcursor to generate
4984         cursor from inline data instead of using LoadCursor() to generate
4985         it from a resource.
4986
4987         * gdk/win32/gdkevents-win32.c (gdk_event_translate): At button up
4988         event, must check the Windows message for mouse button state, as
4989         the GDK event state might not have been built if it is
4990         undelivered. Remove one goto.
4991
4992         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Call
4993         SetCursor() if the current cursor as returned by GetCursor() is
4994         the window's previous cursor. The ChildWindowFromPoint() test
4995         apparently didn't work correctly.
4996
4997         * gdk/win32/rc/*.cur: Remove.
4998
4999         * gdk/win32/rc/gdk.rc.in: Remove cursors.
5000
5001         * gdk/win32/rc/Makefile.am (EXTRA_DIST): Remove from here, too.
5002
5003         * gtk/makefile.{mingw,msc}.in: Updates.
5004
5005 Wed Feb 21 20:56:50 2001  Jonathan Blandford  <jrb@redhat.com>
5006
5007         * gtk/gtktreemodel.h: add functions for signal emission.
5008
5009         * gtk/gtktreestore.c: move to use above functions instead of
5010         g_signal_emit.
5011
5012         * gtk/gtkliststore.c: ditto
5013
5014 Wed Feb 21 15:41:34 2001  Jonathan Blandford  <jrb@redhat.com>
5015
5016         * gtk/gtktreestore.c: removed signals.  Moved to inherit from
5017         GObject instead of GtkObject.
5018
5019         * gtk/gtkliststore.c: ditto.
5020
5021         * gtk/gtktreemodelsort.c: ditto.
5022
5023         * gtk/gtktreemodel.c (gtk_tree_model_base_init): moved signals to
5024         GtkTreeModelIface, instead of in each model.
5025
5026 2001-02-21  Havoc Pennington  <hp@redhat.com>
5027
5028         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_child_anchor):
5029         unbreak this function
5030
5031         * gtk/gtkentry.c: apply patch from Lee Mallabone to add object 
5032         properties
5033
5034         * gtk/gtkcurve.c: apply patch from Lee Mallabone to add object
5035         properties
5036
5037         * gtk/gtkcombo.c: apply patch from Lee Mallabone to add object 
5038         properties
5039
5040         * gtk/gtkentry.c (gtk_entry_set_max_length): have this take -1 to
5041         mean unset the max length
5042
5043 Wed Feb 21 14:23:05 2001  Jonathan Blandford  <jrb@redhat.com>
5044
5045         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data_func):
5046         Changed name to be set_cell_data_func to make it clear what
5047         the functino does.  Close bug #51069.
5048
5049 Tue Feb 20 16:49:00 2001  Jonathan Blandford  <jrb@redhat.com>
5050
5051         * gtk/testgtk.c (main): Remove turning on of profiling malloc,
5052         have memory actually freed.  Keeps box running longer.
5053
5054 2001-02-21  Alexander Larsson  <alexl@redhat.com>
5055         
5056         * gtk/gtkseparatormenuitem.[ch]:
5057         Added new menu separator item. The drawing and size handling
5058         is still done in GtkMenuItem, but the API is a bit more sane.
5059         
5060         * gtk/Makefile.am:
5061         Add gtkseparatormenuitem.[ch].
5062
5063         * gtk/gtk.h:
5064         Add gtkseparatormenuitem.h.
5065         
5066         * gtk/gtkentry.c:
5067         * gtk/gtkmenufactory.c:
5068         * gtk/gtktextview.c:
5069         Use the new API for menu separators.
5070         
5071         * demos/gtk-demo/menus.c (create_menu):
5072         Add some GtkSeparatorMenuItem demo code.
5073
5074 2001-02-20  Havoc Pennington  <hp@redhat.com>
5075
5076         * gtk/gtkaspectframe.c: Convert to new property API, patch from 
5077         Lee Mallabone
5078
5079         * gtk/gtkarrow.c: Convert to new property API, patch from 
5080         Lee Mallabone
5081
5082 Tue Feb 20 14:26:41 2001  Jonathan Blandford  <jrb@redhat.com>
5083
5084         * tests/testtreeview.c (toggled_callback): fix to reflect change
5085         in GtkTreeModelStore.
5086
5087 Tue Feb 20 12:16:12 2001  Jonathan Blandford  <jrb@redhat.com>
5088
5089         * gtk/gtkiconfactory.c (gtk_icon_set_new_from_pixbuf): New
5090         function to create an icon set from a pixbuf.
5091
5092 2001-02-20  Alexander Larsson  <alexl@redhat.com>
5093
5094         * gtk/gtkcellrenderertext.[ch]:
5095         Add a "markup" property.
5096
5097         * gtk/treestoretest.c:
5098         Use the markup property, remove some leftover stuff from
5099         GtkTreeModelMapping.
5100
5101 2001-02-20  Alexander Larsson  <alexl@redhat.com>
5102
5103         * gtk/gtklabel.c (gtk_label_set_selectable):
5104         Queue a redraw if the selectable setting was changed.
5105
5106 2001-02-20  Alexander Larsson  <alexl@redhat.com>
5107
5108         * gdk/linux-fb/gdkgc-fb.c (gdk_gc_copy):
5109         Actually copy the whole gc, not just the public parts.
5110         
5111         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
5112         GDK_WINDOW_TEMP are not toplevel. Fixes selectable
5113         labels.
5114
5115 2001-02-19  Havoc Pennington  <hp@pobox.com>
5116
5117         * gdk/gdkwindow.c: docs
5118
5119         * gdk/gdkrgb.c: docs
5120
5121         * gdk/gdkregion-generic.c: docs
5122
5123         * gdk/gdkgc.c (gdk_gc_set_values): docs
5124
5125         * gdk/gdkdraw.c: docs
5126
5127         * gdk/gdkdrawable.h: deprecate drawable get/set data
5128
5129 Mon Feb 19 20:37:35 2001  Jonathan Blandford  <jrb@redhat.com>
5130
5131         * demos/gtk-demo/dialog.c: Add simple new demo.
5132
5133 2001-02-19  Havoc Pennington  <hp@redhat.com>
5134
5135         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): add
5136         insert_child_anchor signal, bug #50245
5137
5138         * gtk/gtktextbtree.c (_gtk_text_btree_insert_child_anchor): change
5139         from create_child_anchor, so the anchor is passed in
5140
5141         * gtk/gtktextchild.c (gtk_text_child_anchor_new): new function
5142         (_gtk_widget_segment_new): have the child anchor object passed in, 
5143         instead of creating it.
5144
5145         * gtk/gtktextbuffer.c (gtk_text_buffer_modified): rename
5146         to gtk_text_buffer_get_modified
5147
5148 2001-02-19  Havoc Pennington  <hp@redhat.com>
5149
5150         * gtk/gtktreemodel.c (gtk_tree_model_get_valist): hmm, someone
5151         changed GLib without fixing GTK
5152
5153         * gtk/gtkrange.h: Rename all the stupid implementation detail 
5154         functions to have an underscore in front. Most of them should 
5155         probably just go away, but for starters don't export them.
5156         Bug #50482
5157
5158 2001-02-19  Havoc Pennington  <hp@redhat.com>
5159
5160         * gdk/gdkcolor.h: test was backward, so deprecated functions were
5161         excluded by default
5162
5163         * gtk/gtkstyle.c (gtk_default_draw_diamond): draw etched in/out,
5164         clean up the old code a bit
5165
5166         * gtk/gtkradiobutton.c (gtk_radio_button_draw_indicator): draw
5167         inconsistent state
5168
5169         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_draw_indicator):
5170         draw inconsistent state
5171
5172         * gtk/testgtk.c (create_toggle_buttons): add test for inconsistent
5173         (create_menu): add inconsistent test
5174
5175         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_set_inconsistent):
5176         new function
5177         (gtk_check_menu_item_get_inconsistent): new function
5178         (gtk_real_check_menu_item_draw_indicator): draw the inconsistent
5179         state (using etched in for now)
5180
5181         * gtk/gtkcheckbutton.c (gtk_real_check_button_draw_indicator):
5182         draw inconsistent state
5183
5184         * gtk/gtktogglebutton.c (gtk_toggle_button_set_inconsistent): new
5185         function, used when the user has selected a range of stuff in
5186         different states
5187         (gtk_toggle_button_get_inconsistent): accessor for that
5188         (gtk_toggle_button_paint): draw inconsistent state (etched in?
5189         don't know what else to do)
5190
5191 2001-02-19  Hans Breuer <hans@breuer.org>
5192
5193         * gtk/gtk.def : updated exported symbols
5194
5195         * gtk/makefile.msc.in : updated
5196
5197         * gtk/gtkstyle.c (gtk_style_realize) : gets called without
5198         a colormap, when invoked from testgtk::entry. I'm not sure where
5199         the bug is, but g_return_if_fail (GDK_IS_COLORMAP (colormap));
5200         avoids immediate crashing ...
5201
5202         * gtk/gtkmain.c (check_setugid) : totally disabled on win32;
5203         any objections ?
5204
5205         * gtk/gtktreemodel.c : called G_VALUE_LCOPY with an extra
5206         0 parameter. At least msvc doesn't like macros with var args. 
5207         I simply removed the extra 0, was it a feature or a typo ?
5208
5209         * gtk/gtktreeviewcolumn.[hc] (gtk_tree_view_column_set_func) :
5210         removed the extra indirection from the GtkTreeViewColumnFunc parameter,
5211         because the value assignment to the internal struct wasn't working.
5212         I'm not absolutely sure. The problem could have been resolved by
5213         changing the "func" declartion in the struct, but was the pointer
5214         to the function pointer intended ?
5215
5216         * gtk+/gtk/gtktreedatalist.c : include gboxed.h
5217
5218         * gdk/gdk.def : updated exported symbols
5219
5220         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_image) :
5221         only use SetDIBitsToDevice if there is a palette at the drawable
5222         and the image is GDK_VISUAL_PSEUDO_COLOR
5223
5224         * gdk/win32/gdkkeys-win32.c : msvc still has no <unistd.h> ...
5225
5226         * gdk/win32/gdkwindow-win32.c : #include "gdk.h" /* gdk_rectangle_intersect */
5227
5228         * gdk/*/makefile.msc : updated
5229
5230 2001-02-19  Havoc Pennington  <hp@redhat.com>
5231
5232         * demos/gtk-demo/Makefile.am (INCLUDES): GDK_DISABLE_COMPAT_H,
5233         GDK_DISABLE_DEPRECATED (we need to merge those two #defines)
5234
5235         * gdk/x11/gdkmain-x11.c (gdk_key_repeat_disable): nuke
5236         (gdk_key_repeat_restore): nuke
5237
5238         * gdk/gdk.c (gdk_exit_func): #if 0 this for now, don't install it
5239         (gdk_init_check): no atexit func
5240
5241         * gdk/gdkrgb.h: mark some stuff deprecated
5242
5243         * gdk/gdkcolor.h: mark some stuff deprecated
5244         
5245         * gdk/gdk.h: deprecated gdk_exit, gdk_input_*
5246
5247         * gdk/gdkfont.h: bracket in GDK_DISABLE_DEPRECATED
5248
5249 2001-02-16  Havoc Pennington  <hp@redhat.com>
5250
5251         * gtk/gtkvscrollbar.c (gtk_vscrollbar_trough_keys): use the visual
5252         scroll steps.
5253
5254         * gtk/gtkvscale.c (gtk_vscale_trough_keys): use the visual scroll
5255         steps, and add Ctrl-arrow shortcuts for paging visually as with
5256         HScale, since Page Up and Page Down move logically.
5257
5258         * gtk/gtkenums.h (GtkScrollType): add GTK_SCROLL_STEP_UP,
5259         GTK_SCROLL_STEP_DOWN, etc. for visual scroll directions
5260         
5261         * gtk/gtkrange.c (gtk_range_key_press): handle the visual scroll
5262         steps
5263         (gtk_range_scroll): handle the visual steps
5264
5265         * gtk/gtklist.c (gtk_list_scroll_horizontal): handle the up/down
5266         scroll steps
5267
5268         * gtk/gtkhscale.c (gtk_hscale_trough_keys): use the visual scroll
5269         steps, not the logical ones.
5270
5271         * gtk/gtkclist.c (move_focus_row): handle the up/down scroll steps
5272         (scroll_vertical): handle up/down steps
5273
5274 2001-02-19 Alexander Larsson  <alexl@redhat.com>
5275
5276         * gdk/linux-fb/gdkimage-fb.c (gdk_image_new_bitmap):
5277         Copy data and free data with free().
5278
5279         * gdk-pixbuf/gdk-pixbuf.c:
5280         * gdk-pixbuf/io-jpeg.c:
5281         * gdk-pixbuf/io-png.c:
5282         Use g_try_malloc/g_free instead malloc/free.
5283         
5284         * gdk-pixbuf/test-gdk-pixbuf.c:
5285         Must... initialize... gobject...
5286         
5287         * gdk-pixbuf/pixops/timescale.c:
5288         * gtk/gtkcalendar.c:
5289         Use g_malloc instead of malloc.
5290         
5291 2001-02-19 Alexander Larsson  <alla@lysator.liu.se>
5292
5293         * gtk/testgtkrc:
5294         Comment out property assignments, these don't work yet.
5295
5296 2001-02-17  Havoc Pennington  <hp@pobox.com>
5297
5298         * gtk/gtkalignment.c (gtk_alignment_class_init): clean this up a
5299         bit.
5300
5301 2001-02-17  Havoc Pennington  <hp@pobox.com>
5302
5303         * gtk/gtklabel.c (gtk_label_ensure_layout): fix screwup with
5304         shadowed variables that had broken size request in some cases,
5305         leading to bogus tooltips (#50996)
5306
5307 2001-02-06  Jon K Hellan  <hellan@acm.org>
5308
5309         Implement fast browsing of tooltips, bug #50619
5310         
5311         * gtk/gtktooltips.h (struct _GtkTooltips): Add use_sticky_delay
5312         and last_popdown
5313         
5314         * gtk/gtktooltips.c (gtk_tooltips_init): Initialize sticky_delay,
5315         use_sticky_delay and last_popdown.
5316         (gtk_tooltips_draw_tips, gtk_tooltips_set_active_widget): Record
5317         time of popdown.
5318         (gtk_tooltips_set_active_widget): Unset sticky behaviour if widget
5319         is NULL.
5320         (gtk_tooltips_recently_shown): New static function.  Return true
5321         if < sticky_delay has elapsed since last popdown.
5322         (gtk_tooltips_event_handler): Display window after sticky_delay
5323         (presumably < normal delay) if < STICKY_REVERT_DELAY has elapsed
5324         since last popdown.
5325         
5326 2001-02-17  Havoc Pennington  <hp@pobox.com>
5327
5328         * gtk/gtktypeutils.h (GtkSignalFunc): change it to take (void)
5329         instead of (). #6394
5330
5331         * gtk/gtkprogressbar.c (gtk_progress_bar_get_text): Add
5332         G_CONST_RETURN, make it return by reference, #50473
5333         
5334 Sat Feb 17 06:47:27 2001  Tim Janik  <timj@gtk.org>
5335
5336         * gtk/gtkmenu.c (gtk_menu_motion_notify): default initialize the
5337         generated ENTER_NOTIFY event with 0, otherwise not explicitely
5338         setup fields contain garbage (e.g. subwindow, breaking
5339         gdk_drawable_ref() upon event copy).
5340         (gtk_menu_stop_navigating_submenu_cb): same here.
5341
5342         * gtk/gtklist.c (gtk_list_vertical_timeout): 
5343         * gtk/gtklist.c (gtk_list_horizontal_timeout): 
5344         * gtk/gtkclist.c (vertical_timeout): 
5345         * gtk/gtkclist.c (horizontal_timeout): change direct assignment
5346         default-zero-intialization for unions to memset(,0,), as unions are
5347         not fully default-zero-initialized by compilers (GdkEvent x = { 0, };
5348         has to become GdkEvent x; memset (&x, 0, sizeof (x)); )
5349
5350         * gtk/gtktreeview.c (gtk_tree_view_set_rows_drag_source): scratch
5351         g_closure_sink() warning.
5352
5353         * gtk/gtktreemodel.c (gtk_tree_model_get_valist): 
5354         * gtk/gtktreestore.c (gtk_tree_store_set_valist): 
5355         * gtk/gtkliststore.c (gtk_list_store_set_valist): 
5356         fix G_VALUE_COLLECT() and G_VALUE_LCOPY() calls.
5357         
5358 Fri Feb 16 17:49:59 2001  Jonathan Blandford  <jrb@redhat.com>
5359
5360         * gtk/gtktreestore.[hc], gtk/gtkliststore.[ch]: removed
5361         gtk_*_store_get, and moved to GtkTreeModel.
5362
5363         * gtk/gtktreemodel.h (gtk_tree_model_set{v,}): Added
5364
5365         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_finalize): added.
5366
5367         * gtk/Makefile.am: remove gtktreemodelmapping.[ch]
5368
5369         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_func): let you
5370         set the func.
5371
5372         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
5373         freeze/thaw notify between setting all the properties for a cell.
5374
5375         * gtk/gtk.h: remove gtktreemodelsimple.h, and gtktreemodelmapping.h
5376
5377 2001-02-15  Havoc Pennington  <hp@redhat.com>
5378
5379         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): convert
5380         the X coordinates so they're with respect to the line, rather than 
5381         with respect to the layout.
5382
5383         * gtk/gtkalignment.c: Convert to new property API, patch from Lee
5384         Mallabone
5385
5386         * gtk/testgtk.c (create_range_controls): add vscale tests, 
5387         and inverted test
5388
5389         * gtk/gtkrange.c (gtk_range_set_inverted): new function to fix 
5390         #50806
5391
5392         * gtk/gtkentry.c (gtk_entry_get_text): add G_CONST_RETURN
5393
5394         * gtk/gtktextiter.h (gtk_text_iter_is_last): rename 
5395         gtk_text_iter_is_end
5396
5397         * gtk/gtktextbuffer.h (gtk_text_buffer_get_last_iter):
5398         rename gtk_text_buffer_get_end_iter
5399
5400         * gtk/testgtk.c (create_labels): Add test for selectable
5401
5402         * gtk/gtkentry.c (gtk_entry_draw_text): Use new GDK API to draw
5403         the selection stuff. This code is kind of broken since it doesn't 
5404         use the theme engine.
5405
5406         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): 
5407         fix infinite loop and y offset problem
5408         (gdk_draw_layout_line_with_colors): fix foreground color handling
5409
5410         * gtk/gtklabel.h, gtk/gtklabel.c: Implement a "selectable" flag 
5411         that makes the label selectable.
5412         
5413         * gtk/gtklabel.c (gtk_label_style_set): recreate the label's
5414         layout when the style is set, since fonts etc. could have changed.      
5415
5416 Fri Feb 16 14:22:05 2001  Jonathan Blandford  <jrb@redhat.com>
5417
5418         * gtk/Makefile.am: Removed gtktreemodelsimple.[ch]
5419
5420         * gtk/gtktreemodelsimple.[ch]: removed.
5421
5422 2001-02-16  Alexander Larsson  <alexl@redhat.com>
5423
5424         * gtk/gtktreemodelmapping.[ch]:
5425         New files. Implement GtkTreeModelMapping.
5426         
5427         * gtk/Makefile.am:
5428         Add gtktreemodelmapping.[ch].
5429         
5430         * gtk/gtk.h:
5431         Add gtktreemodelmapping.h
5432
5433         * gtk/treestoretest.c:
5434         Test the GtkTreeModelMapping
5435
5436 Tue Feb 13 13:16:09 2001  Jonathan Blandford  <jrb@redhat.com>
5437
5438         * demos/gtk-demo/panes.c (create_pane_options): If we're going to
5439         have a demo, we might as well pass in real values.  Thanks to
5440         clahey for pointing this out.
5441
5442 2001-02-14  Havoc Pennington  <hp@pobox.com>
5443
5444         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_remove): add
5445         "static" to a private function
5446         (gtk_image_menu_item_class_init): remove destroy handler,
5447         add "image" object property
5448
5449 2001-02-13  Alexander Larsson  <alla@lysator.liu.se>
5450
5451         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_clip_region):
5452         Add a shortcut if the window and the current clip_region doesn't
5453         overlap. This is needed when there are a lot of windows in a
5454         window. The layout test in testgtk is a good test.
5455
5456         * gdk/linux-fb/gdkwindow-fb.c:
5457         Whitespace fix.
5458
5459 2001-02-13  Sven Neumann  <sven@convergence.de>
5460
5461         * demos/testanimation.c: replaced deprecated gtk_drawing_area_size
5462
5463 2001-02-13  Alexander Larsson  <alexl@redhat.com>
5464
5465         * gdk/linux-fb/gdkcursor-fb.c (gdk_fb_cursor_unhide):
5466         Don't reference last_cursor if it is null. Fixes crash when rotating
5467         the screen before having moved the mouse.
5468
5469         * gdk/linux-fb/gdkcc-fb.c: Zapp!
5470
5471         * gdk/linux-fb/Makefile.am: Don't compile gdkcc-fb.c
5472
5473         * gdk/linux-fb/gdkwindow-fb.c: Fix typo. width->height. Fixes redraw 
5474         when using 90 or 270 degrees rotation.
5475
5476 2001-02-12  Havoc Pennington  <hp@pobox.com>
5477
5478         * gdk/gdkpango.c (gdk_pango_get_gc): fix bug where 
5479         it always set the foreground, even if we were only using
5480         a stipple.
5481         (gdk_draw_layout_line_with_colors): new function, allow
5482         override colors
5483         (gdk_draw_layout_with_colors): new function, allow override
5484         colors
5485         (gdk_pango_layout_line_get_clip_region): function to get the clip
5486         region for a logical text range
5487         (gdk_pango_layout_get_clip_region): get the clip region for a
5488         logical text range
5489
5490         * gdk/x11/gdkcolor-x11.c: forward declare gdk_colormap_sync(),
5491         (gdk_colormap_new): fix call to gdk_colormap_sync() so it has 
5492         the right number of arguments.
5493
5494         * gtk/gtktextbtree.c (gtk_text_btree_node_check_consistency):
5495         enhance the function to check that node data corresponds to a 
5496         view still belonging to the tree.
5497
5498         * gtk/gtktreeview.c (gtk_tree_view_changed): we were leaking the 
5499         GtkTreePath
5500         (gtk_tree_view_inserted): ditto
5501         (gtk_tree_view_child_toggled): ditto
5502
5503         * gtk/gtktreemodel.c (gtk_tree_path_append_index): use realloc to
5504         simplify this code.
5505
5506         * gtk/gtkcellrenderertext.c (get_layout): fix leak of 
5507         a PangoAttrList
5508
5509         * demos/gtk-demo/main.c (load_file): Fix leak of a GString
5510
5511         * gtk/gtkentry.c (gtk_entry_realize): Fix leak of a GdkCursor
5512
5513         * gtk/gtkmenubar.c (gtk_menu_bar_size_request): consider toggle
5514         size in the size request 
5515         (gtk_menu_bar_size_allocate): consider toggle size here
5516
5517         * gtk/gtkimagemenuitem.h, gtkimagemenuitem.c: Menu item
5518         that displays a widget in the toggle slot
5519
5520         * gtk/testgtk.c: test GtkImageMenuItem
5521
5522         * gtk/Makefile.am, gtk/gtk.h: Add GtkImageMenuItem
5523         
5524         * gtk/gtkmenuitem.h: Use "gint" not "guint16" for toggle size
5525         request and allocation
5526
5527         * gtk/gtkmenu.c (gtk_menu_size_request): use gint not guint16
5528
5529         * gtk/gtkcheckmenuitem.c
5530         (gtk_check_menu_item_toggle_size_request): ditto
5531         
5532 Mon Feb 12 23:43:30 2001  Owen Taylor  <otaylor@redhat.com>
5533
5534         * gtk/Makefile.am (gdk_headers): Remove gdkcc.h 
5535         reference.
5536
5537         * configure.in gtk/gtkmain.c: Add checks for setuid/setgid,
5538         and refuse to initialize GTK+ if they fail.
5539
5540 Mon Feb 12 15:02:07 2001  Owen Taylor  <otaylor@redhat.com>
5541
5542         * configure.in: Add check for gtk-doc version.
5543
5544 Thu Feb  8 17:18:26 2001  Owen Taylor  <otaylor@redhat.com>
5545
5546         * gtk/gtklabel.c (gtk_label_size_request): Fix bug
5547         where the xpad/ypad was only being used on one side!
5548
5549 2001-02-11  Tor Lillqvist  <tml@iki.fi>
5550
5551         * gdk/win32/gdkcolor-win32.c (gdk_colormap_query_color): New
5552         function, copied from X11 version.
5553
5554         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Eliminate
5555         DestroyCursor failures. The reason for the problem (despite the
5556         inconsistent messages from GetLastError()) was that
5557         DestroyCursor() cannot be called while a cursor is set in a
5558         window. Set the new cursor first and then destroy the old one.
5559         Thanks to jpe@archaeopteryx.com.
5560
5561         * gdk/win32/gdkcc-win32.c: Remove.
5562
5563         * gdk/win32/Makefile.am: Remove from here, too.
5564         
5565         * gdk/gdk.def
5566         * gdk/makefile.mingw.in: Update. Godbye GdkColorContext.
5567
5568         * gtk/gtk.def
5569         * gtk/makefile.mingw.in: Updates.
5570
5571 2001-02-08  Havoc Pennington  <hp@redhat.com>
5572
5573         * gtk/gtkbin.c (gtk_bin_add): better error message if you try to
5574         add a widget to a bin that already has a child.
5575
5576         * gdk/gdkcc.h, gdk/gdkcc-x11.c: Remove GdkColorContext, #50512
5577
5578         * docs/Changes-2.0.txt: note that GdkColorContext is gone.
5579         
5580         * gdk/x11/Makefile.am (libgdk_x11_la_SOURCES): remove gdkcc-x11.c
5581
5582         * gdk/gdk.h: remove gdkcc.h
5583
5584         * gdk/Makefile.am (gdk_public_h_sources): remove gdkcc.h
5585
5586         * gtk/gtkpixmap.c (build_insensitive_pixmap): rewrite using
5587         GdkPixbuf, since the previous implementation was GdkColorContext
5588         dependent.
5589
5590         * gtk/testgtk.c (create_pixmap): add test for insensitive GtkPixmap
5591         
5592 Thu Feb  8 19:00:00 2001  Jonathan Blandford  <jrb@redhat.com>
5593
5594         * gtk/gtktreeview.c (TREE_VIEW_VERTICAL_SEPARATOR): moved back to
5595         a sane value!
5596
5597 2001-02-08  Havoc Pennington  <hp@redhat.com>
5598
5599         * gtk/gtkstyle.c (get_darkened_gc): let's darken colors, not
5600         lighten them.
5601
5602 2001-02-08  Havoc Pennington  <hp@redhat.com>
5603
5604         * gtk/gtktextview.c (gtk_text_view_destroy_layout): remove
5605         validation idle
5606
5607         * demos/gtk-demo/main.c (create_tree): adjust to changes in text
5608         cell renderer
5609
5610         * demos/pixbuf-demo.c (timeout): remove deprecated
5611         gtk_widget_draw
5612
5613         * demos/testpixbuf-save.c (main): remove deprecated
5614         gtk_drawing_area_size
5615
5616         * gtk/gtktreeview.c (gtk_tree_view_size_allocate): allocate
5617         buttons even if the model isn't setup. gtk_tree_view_check_dirty()
5618         at the start of the allocation.
5619         (gtk_tree_view_check_dirty): handle column->button == NULL, handle
5620         unsetup or NULL model.
5621
5622         * gtk/gtkstyle.c (gtk_default_draw_flat_box): drawing for the 
5623         even/odd/sorted cells in the tree view.
5624
5625         * gtk/gtktreeselection.c (gtk_tree_selection_real_unselect_all):
5626         bugfixes
5627
5628         * gtk/gtktreeview.c: assorted bugfixy stuff. Draw the row
5629         backgrounds with draw_flat_box using different detail for even/odd
5630         rows.
5631
5632         * gtk/gtkrbtree.c, gtkrbtree.h: Keep track of the parity of each
5633         row, so we can draw the alternating colors thing
5634
5635         * gtk/gtktexttag.c (gtk_text_tag_set_property): if we change a
5636         property from a synonym property, notify for the synonym.
5637         Also, nuke the background_gdk_set and foreground_gdk_set synonyms
5638         (gtk_text_tag_get_property): Always return the font, even if
5639         all its fields aren't set
5640
5641         * gtk/gtkcellrenderertext.h (struct _GtkCellRendererText): don't
5642         store the attr list; it leaves us with no way to change attributes
5643         in _render according to the render flags, and no way to implement
5644         get_property. Instead store all the specific text attributes. 
5645         Separate whether an attribute is enabled from its value. Sync all
5646         properties with GtkTextTag, make them all consistent, etc.
5647
5648         * gtk/gtkcellrenderer.h: Add a flag GTK_CELL_RENDERER_SORTED so
5649         renderers can highlight the sort row/column     
5650
5651         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_get_property): use
5652         accessor functions to get values; this has the side effect of
5653         showing up which accessor functions were missing. Added those.
5654
5655         * gtk/gtktreeviewcolumn.h: Replace set_justification with
5656         set_alignment, to be consistent with GtkLabel, GtkMisc
5657
5658         * gtk/gtktreeviewcolumn.c: Added code to display sort indicator
5659         arrow.
5660
5661         * gtk/Makefile.am (gtk_public_h_sources): add gtktreesortable.h
5662
5663         * gtk/gtktreesortable.h: updates in here
5664
5665 2001-02-07  Sven Neumann  <sven@convergence.de>
5666
5667         * gtk/gtkentry.c (gtk_entry_draw_text): convert area_height to 
5668         pango dimensions after painting the background. We used to draw
5669         gigantic flat boxes here.
5670
5671 Mon Feb  5 22:05:57 2001  Owen Taylor  <otaylor@redhat.com>
5672
5673         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Fix syntax
5674         error introduced with earlier commit) (pointed out by
5675         Ollie Lho)
5676
5677 Mon Feb  5 12:25:06 2001  Owen Taylor  <otaylor@redhat.com>
5678
5679         * gtk/gtkbutton.c: Remove calls to gtk_grab_add/gtk_grab_remove,
5680         which are no longer necessary.
5681
5682 Mon Feb  5 13:22:54 GMT 2001  Tony Gale <gale@gtk.org>
5683
5684         * docs/faq/gtk-faq.sgml: s/MISK/MISC/
5685
5686 2001-02-04  Tor Lillqvist  <tml@iki.fi>
5687
5688         * gdk/gdk.def
5689         * gdk/win32/gdkim-win32.c (gdk_ic_attr_new, gdk_ic_attr_destroy):
5690         Provide dummy implementations.
5691
5692 Sun Feb  4 07:55:17 2001  Tim Janik  <timj@gtk.org>
5693
5694         * gtk/gtksignal.h: removed gtk_signal_init() compat define.
5695
5696         * gtk/gtktypeutils.[hc]: gtk_tpye_init() take an additional argument
5697         GTypeDebugFlags debug_flags and pass it on to g_type_init ();
5698         deprecated this function.
5699
5700         * gdk/gdk.c (gdk_init_check): call g_type_init () with 0 as
5701         argument.
5702
5703 Sun Feb  4 07:45:45 2001  Tim Janik  <timj@gtk.org>
5704
5705         * gtk/gtkdebug.h: nuke GTK_DEBUG_OBJECTS and GTK_DEBUG_SIGNALS.
5706
5707 2001-02-03  Havoc Pennington  <hp@pobox.com>
5708
5709         * gtk/gtktextbtree.c (_gtk_text_btree_tag): Fix bug reported by
5710         Mikael Hermansson with patch from Mikael (if there was a toggle
5711         start one after the first character in the range, this function
5712         was broken). Bug #50380
5713
5714 Sat Feb  3 11:28:03 2001  Owen Taylor  <otaylor@redhat.com>
5715
5716         * configure.in: Remove confusing comment about X11.
5717
5718 Fri Feb  2 19:21:23 2001  Owen Taylor  <otaylor@redhat.com>
5719
5720         * gdk/gdkwindow.c (gdk_propagate_shapes): Surround additional
5721         regions with HAVE_SHAPE_EXT. (#50511, Eric Ding)
5722         
5723 Fri Feb  2 18:31:54 2001  Owen Taylor  <otaylor@redhat.com>
5724
5725         * gdk/x11/gdkimage-x11.c: Remove definition of _XOPEN_SOURCE, since
5726         it breaks things on BSD. If you want to compile GTK+ with
5727         -ansi -pedantic, you should supply CPP_FLAGS=_XOPEN_SOURCE 
5728         when configuring, since GTK+ simply can't be "pure ANSI" 
5729         in the header files it uses. (#8170, Greg Hudson)
5730
5731 2001-02-02  Havoc Pennington  <hp@redhat.com>
5732
5733         * gtk/gtkwindow.c: docs
5734
5735         * gtk/gtkwidget.c: docs
5736         (gtk_widget_set_colormap): add a reference to the colormap
5737         (gtk_widget_get_default_colormap): add a reference to the colormap
5738
5739         * gtk/gtktextbtree.c (gtk_text_mark_set_visible): docs
5740
5741         * gtk/gtktextiter.c: docs
5742
5743         * gtk/gtkmain.c (gtk_propagate_event): docs
5744
5745         * gtk/gtkpaned.c (gtk_paned_get_position): docs
5746         (gtk_paned_set_position): docs
5747
5748         * gtk/gtktreesortable.h (struct _GtkTreeSortableIface): Initial
5749         sort interface, no implementation yet.
5750
5751         * demos/testpixbuf.c (new_testrgb_window): replace
5752         gtk_drawing_area_size() with gtk_widget_set_usize()
5753
5754         * demos/testpixbuf-drawable.c (main): ditto
5755         
5756         * gtk/testgtk.c: remove use of GtkStatusbarMsg
5757
5758         * gtk/gtktextbuffer.c: docs
5759
5760         * gtk/gtkstock.c: docs
5761
5762         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_set_shadow_type): docs
5763
5764         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): docs
5765
5766         * gtk/gtklabel.c (gtk_label_set_markup_with_accel): fix docs
5767         
5768         * gtk/gtkimage.c: add some docs in here
5769         (gtk_image_size_request): change name of
5770         gtk_widget_render_stock_icon
5771         (gtk_image_get_icon_set): don't dup returned string
5772         (gtk_image_get_icon_set): don't dup returned string
5773
5774         * gtk/gtkwidget.c (gtk_widget_render_icon): rename from 
5775         gtk_widget_render_stock_icon(), more consistent with gtkstyle.h
5776         and gtkiconfactory.h functions
5777
5778         * gtk/gtkiconfactory.c: add some docs in here
5779
5780         * gtk/gtkmain.c (gtk_get_default_language): document
5781         (gtk_get_current_event): document
5782         (gtk_get_current_event_state): document
5783         (gtk_get_event_widget): document
5784
5785         * gtk/gtkentry.c (gtk_entry_set_invisible_char): document
5786
5787         * gtk/gtkcontainer.c: Add some documentation
5788         (gtk_container_add): give a more explanatory warning on adding an
5789         already-parented widget, this is kind of a FAQ and also a common
5790         typo that's easier to debug with a nice warning 
5791
5792         * gtk/gtkcellrenderertoggle.c
5793         (gtk_cell_renderer_toggle_get_active): remove, I was on crack
5794         adding this, it's useless
5795         (gtk_cell_renderer_toggle_set_active): remove
5796         (gtk_cell_renderer_toggle_get_radio): add
5797
5798         * gtk/gtkcellrenderer.c (gtk_cell_renderer_get_size): don't allow
5799         the NULL cell renderer, that doesn't make any sense to me. 
5800
5801         * demos/gtk-demo/Makefile.am (INCLUDES): -DGTK_DISABLE_DEPRECATED,
5802         demo code should never use deprecated features.
5803
5804         * demos/Makefile.am (INCLUDES): -DGTK_DISABLE_DEPRECATED, demo
5805         code should never use deprecated features.
5806
5807         * gtk/gtkwidget.h: Mark gtk_widget_draw, gtk_widget_queue_clear,
5808         gtk_widget_queue_clear_area deprecated
5809
5810         * gtk/gtklayout.h: mark gtk_layout_freeze/gtk_layout_thaw
5811         deprecated
5812
5813         * gtk/gtklabel.h: mark gtk_label_get() deprecated
5814
5815         * gtk/gtkimage.h: mark the legacy GtkImage functions that took 
5816         a GdkImage deprecated, replaced by new consistently-named
5817         functions       
5818
5819         * gtk/gtkmain.h: Mark gtk_exit() deprecated
5820
5821         * gtk/gtkdrawingarea.h: mark gtk_drawing_area_size deprecated
5822
5823         * gtk/gtkstyle.h: mark gtk_draw_string, gtk_paint_string 
5824         deprecated
5825
5826         * gtk/gtkstatusbar.h: Move GtkStatusbarMsg to the .c file, 
5827         so it won't appear in docs and confuse people.
5828
5829         * gtk/gtkprogressbar.h: Mark all the old methods deprecated
5830
5831         * gtk/gtkprogress.h: Mark all methods deprecated, mark the cast
5832         macros deprecated. (can't mark the type itself deprecated, since
5833         GtkProgressBar is not deprecated and we need the type decl to use
5834         GtkProgressBar)
5835
5836         * gtk/gtkpixmap.h: Mark deprecated
5837
5838         * gtk/gtkoldeditable.h: Mark deprecated
5839
5840         * gtk/gtklist.h: Mark deprecated
5841
5842         * gtk/gtklabel.h: delete "GtkLabelWord" typedef, not used 
5843         for anything anymore.
5844
5845         * gtk/gtkctree.h: Mark deprecated
5846
5847         * gtk/gtkclist.h: Mark deprecated
5848
5849         * gtk/gtkpreview.h: Mark deprecated
5850
5851         * gtk/gtkpacker.h: Mark deprecated
5852
5853         * gtk/gtktipsquery.h: Mark deprecated
5854
5855         * gtk/gtkinputdialog.h: Add comment that it will move out of GTK
5856
5857         * gtk/gtkvruler.h: Add comment that it will move out of GTK
5858
5859         * gtk/gtkhruler.h: Add comment that it will move out of GTK
5860
5861         * gtk/gtkruler.h: Add comment that it will move out of GTK
5862
5863         * gtk/gtkgamma.h: Add comment that it will move out of GTK
5864
5865         * gtk/gtkcurve.h: Add comment that it will move out of GTK
5866
5867 Fri Feb  2 17:16:09 2001  Owen Taylor  <otaylor@redhat.com>
5868
5869         * gdk/x11/gdkcolor-x11.c (gdk_colormap_sync): Make
5870         gdk_colormap_sync private since it was never exported
5871         in a header file.
5872
5873         * gdk/x11/gdkcolor-x11.c (gdk_colormap_new): Fill in
5874         colormap->colors[] for StaticGray, StaticColor colormaps.
5875
5876         * gdk/gdkpixbuf-drawable.c: Fix problems where image->bpp
5877         was being used as if it was image->bits_per_pixel.
5878
5879         * gdk/gdkimage.h, gdk/x11/gdkimage-x11.c: Save the bits-per-pixel
5880         for the image in the GdkImage structure since it isn't
5881         reconstructable, and we need it to handle packed types
5882
5883         * gdk/win32/gdkimage-win32.c: Set image->bits_per_pixel. (I'm making
5884         the assumption that on Win32 image->bits_per_pixel == image->depth,
5885         always.
5886
5887         * gdk/linux-fb/gdkimage-fb.c: Set image->bits_per_pixel.
5888
5889         * gdk/gdkrgb.c (gdk_rgb_select_conv): Exit with an informative
5890         warning message if no converter can be found. 
5891
5892 Fri Feb  2 15:09:51 2001  Owen Taylor  <otaylor@redhat.com>
5893
5894         * gtk/fnmatch.c (FOLD): Fix problem with passing signed
5895         chars to isupper() / tolower(). (#567)
5896
5897         * examples/packer/pack.c: Add GINT_TO_POINTER, GPOINTER_TO_INT
5898         to clear up 64-bit warnings. (#567)
5899
5900 Fri Feb  2 12:26:50 2001  Owen Taylor  <otaylor@redhat.com>
5901
5902         * gtk/gtkrc.c (gtk_rc_add_initial_default_files): Get rid of
5903         a bunch of g_strdup_printf("%s%s") in favor of g_strconcat().
5904
5905         * gtk/gtkrc.c Makefile.am: Use $(libdir), not $(exe_prefix),
5906         since some people set $(libdir) separately. (#1290, David Kaelbling)
5907
5908 Thu Feb  1 18:25:46 2001  Owen Taylor  <otaylor@redhat.com>
5909
5910         * gtk/gtkfilesel.c: If PATH_MAX and MAXPATHLEN are not
5911         defined, define MAXPATHLEN to 2048. (The Hurd doesn't have
5912         MAXPATHLEN, but the code here depends on a fixed value.)
5913         (#4524)
5914
5915 Wed Jan 31 22:01:04 2001  Owen Taylor  <otaylor@redhat.com>
5916
5917         * gtk/gtkhandlebox.c (gtk_handle_box_button_changed): Handle the case
5918         where child == NULL and handle_position == RIGHT or BOTTOM. (#8041g)
5919
5920 Wed Jan 31 21:20:39 2001  Owen Taylor  <otaylor@redhat.com>
5921
5922         * gtk/gtkctree.c (real_tree_move): If the node being moved isn't
5923         viewable there is no way that moving the node will cause the 
5924         focus row to become not viewable, so omit check on the visibility
5925         of new_sibling, which is irrelevant. (Fixes #8002, David Helder)
5926
5927 Wed Jan 31 20:38:17 2001  Owen Taylor  <otaylor@redhat.com>
5928
5929         * gtk/gtkentry.c (gtk_entry_commit_cb): Delete the current
5930         selection before inserting new text.
5931
5932 Wed Jan 31 18:49:33 2001  Owen Taylor  <otaylor@redhat.com>
5933
5934         * gtk/gtkoptionmenu.c (gtk_option_menu_item_state_changed_cb):
5935         Make the sensitivity of the reparented child track that of
5936         the original parent menu item. (#34218, David Hodson)
5937
5938         * gtk/gtkoptionmenu.c (gtk_option_menu_item_destroy_cb): Handle
5939         the case where the current item is destroyed properly.
5940
5941         * gtk/gtkoptionmenu.c: Some additional code cleanups and fix
5942         some edge cases with child-less menuitems.
5943         
5944 Wed Jan 31 17:16:13 2001  Owen Taylor  <otaylor@redhat.com>
5945
5946         * gtk/gtkcombo.c (gtk_combo_window_key_press): Make Return
5947         key pop down window. (#12074, Jon K Hellan)
5948
5949 Wed Jan 31 16:21:42 2001  Owen Taylor  <otaylor@redhat.com>
5950
5951         * gtk/gtklist.c (gtk_list_signal_item_toggle): Don't allow
5952         toggling of rows off in BROWSE or EXTENDED mode. (#12072, Jon K Hellan) 
5953         The solution here isn't perfect - you get an extraneous
5954         emission of "toggle", which could conceivably confuse an app,
5955         but better than the current situation. LXR search seems to
5956         indicate that no apps in GNOME CVS connect to "toggle".
5957
5958 Wed Jan 31 15:46:13 2001  Owen Taylor  <otaylor@redhat.com>
5959
5960         * gtk/Makefile.am (libgtkinclude_HEADERS): Move gtkcompat.h from
5961         gtk_public_h_sources to directly here to avoid warning when
5962         building srcdir != builddir. (#9656)
5963
5964 Tue Jan 30 19:49:02 2001  Owen Taylor  <otaylor@redhat.com>
5965
5966         * gtk/gtkrange.c: Patch from Kipp Hickman to make the event
5967         handlers in gtkrange.c return the proper values (TRUE == handled)
5968         (#10316).
5969
5970         This is just the tip of the iceberg, but gtkrange.c is the
5971         most common place where the propagation is problematical,
5972         and also a place where it is almost certainly safe to change
5973         this in the stable branch.
5974
5975         (You don't want right click popups on a range control or anything...)
5976
5977 Tue Jan 30 18:57:59 2001  Owen Taylor  <otaylor@redhat.com>
5978
5979         * gtk/gtktext.c (clear_focus_area): We need to clear the focus
5980         area on focus out, even if a background pixmap isn't set.
5981         (#13941)
5982         
5983 Tue Jan 30 18:24:10 2001  Owen Taylor  <otaylor@redhat.com>
5984
5985         * gtk/gtknotebook.c (gtk_notebook_set_shape): Fix from Sean Cunningham
5986         to deal with setting the shape properly when scrolling arrows are
5987         turned on, but not visible because there is sufficient space.
5988         (#13432)
5989
5990 Tue Jan 30 16:39:25 2001  Owen Taylor  <otaylor@redhat.com>
5991
5992         * gtk/gtkitemfactory.c (gtk_item_factory_delete_item): For menu
5993         items with submenus, destroy the item along with the submenu.
5994         (#7841, Brian Masney(?)) Also, handle paths of the form '<foo>/abcd...' 
5995         properly.
5996
5997         * gtk/testgtk.c (menu_items): Add a dummy branch that we delete
5998         later.
5999
6000 Tue Jan 30 15:51:25 2001  Owen Taylor  <otaylor@redhat.com>
6001
6002         * gtk/gtkwindow.c (gtk_window_real_set_focus): Fix a problem where
6003         the focus widget sometimes wasn't drawn with the default if there
6004         was no default widget.
6005
6006         * gtk/gtkstyle.c (gtk_style_real_unrealize): free colors,
6007         unreference pixmaps. 
6008
6009         * gtk/gtkstyle.c (gtk_style_realize): Reference colormap
6010         for some extra safety.
6011
6012 Mon Jan 29 19:00:01 2001  Owen Taylor  <otaylor@redhat.com>
6013
6014         * gtk/gtk{ctree.c,clist.c} (set_cell_contents): Handle setting
6015         the text of a cell to the old pointer value better, by
6016         copying the new text before freeing the old text. Some code
6017         cleanup. (#8079, Karl Nelson)
6018
6019 Mon Jan 29 16:50:19 2001  Owen Taylor  <otaylor@redhat.com>
6020
6021         * gtk/gtklabel.[ch] gtk/gtkframe.[ch]: Make gtk_label_get_text()
6022         gtk_frame_get_label() non strdup'ing, and G_CONST_RETURN.
6023
6024 Mon Jan 29 15:22:51 2001  Owen Taylor  <otaylor@redhat.com>
6025
6026         * gtk/gtkmenu.c (gtk_menu_remove): When removing an
6027         item from a menu, check to see if it matches 
6028         menu->old_active_menu_item, and if so, unref and clear
6029         old_active_menu_item (Patch from Pavel Cisler)
6030
6031         * gtk/gtkmenushell.c (gtk_menu_shell_remove): Unset 
6032         menu_shell->active_menu_item, if it is the child being
6033         removed. (Patch based on that of Gene Ragan, #50337)
6034
6035 2001-01-31  Alexander Larsson  <alla@lysator.liu.se>
6036
6037         * gdk/linux-fb/gdkselection-fb.c: 
6038         * gdk/linux-fb/gdkcolor-fb.c: 
6039         * gdk/linux-fb/gdkdrawable-fb2.c: 
6040         * gdk/linux-fb/gdkfont-fb.c: 
6041         * gdk/linux-fb/gdkim-fb.c: 
6042         * gdk/linux-fb/gdkinput.c: 
6043         * gdk/linux-fb/gdkkeyboard-fb.c: 
6044         * gdk/linux-fb/gdkmain-fb.c: 
6045         * gdk/linux-fb/gdkrender-fb.c: 
6046         A bunch of whitespace cleanup.
6047         
6048 2001-01-30  Havoc Pennington  <hp@pobox.com>
6049
6050         * gtk/gtktreeitem.h, gtk/gtktree.h, gtk/gtktext.h: bracket in 
6051         #ifdef GTK_ENABLE_BROKEN.
6052
6053         * gtk/gtktreeitem.c, gtk/gtktree.c, gtk/gtktext.c: #define
6054         GTK_ENABLE_BROKEN just before including the broken headers.
6055         
6056         * gtk/gtktypeutils.c: #define GTK_ENABLE_BROKEN, so we can get the
6057         deprecated types registered.
6058
6059         * gtk/testgtk.c, gtk/testselection.c: #define GTK_ENABLE_BROKEN,
6060         we have to test the broken stuff.
6061
6062         * docs/Changes-2.0.txt: explain GTK_ENABLE_BROKEN
6063         
6064 2001-01-30  Havoc Pennington  <hp@redhat.com>
6065
6066         * gtk/gtkliststore.c (gtk_list_store_insert_before): fix bug in
6067         here where prev pointer was set to the wrong thing
6068
6069         * gtk/gtktreemodel.c (gtk_tree_path_is_ancestor): new function
6070         (gtk_tree_path_is_descendant): new function
6071
6072         * gtk/gtkliststore.c (gtk_list_store_iter_n_children): return
6073         cached length
6074         (gtk_list_store_get_iter): don't modify iter if we can't get the
6075         path.
6076
6077         * gtk/gtkliststore.h (struct _GtkListStore): cache the length
6078         
6079         * gtk/gtktreednd.h: add virtual function row_drop_possible() to
6080         GtkTreeDragDest
6081
6082         * gtk/gtktreestore.c (copy_node_data): fix varargs type error that
6083         was causing segfault
6084
6085         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_copy): set next
6086         pointer to NULL
6087
6088         * gtk/gtktreestore.c (gtk_tree_store_append): fix memleak
6089
6090         * gtk/gtkliststore.c (gtk_list_store_iter_next): don't modify iter
6091         on returning FALSE
6092         (gtk_list_store_iter_children): ditto
6093         (gtk_list_store_iter_nth_child): ditto
6094         (gtk_list_store_iter_nth_child): ditto
6095         (gtk_list_store_iter_parent): ditto
6096
6097         * gtk/gtktreestore.c (gtk_tree_store_get_path): g_return_if_fail
6098         on iter->user_data != NULL instead of silently accepting it.
6099         (gtk_tree_store_iter_next): ditto. Also, don't modify iter unless
6100         we are returning TRUE.
6101         (gtk_tree_store_iter_children): ditto
6102         (gtk_tree_store_iter_nth_child): ditto
6103         (gtk_tree_store_iter_parent): ditto
6104         (gtk_tree_store_insert): remove handling of parent->user_data ==
6105         NULL, replace with parent == NULL       
6106
6107         * gtk/gtktreemodel.c (inserted_callback): put some fixes in here,
6108         and a comment explaining things
6109
6110         * gtk/gtktreestore.c: add GtkTreeDragSource/GtkTreeDragDest
6111         interface support to GtkTreeStore.
6112
6113         * gtk/gtktreemodel.c (gtk_tree_path_prev): didn't properly return
6114         FALSE if no prev, fix
6115
6116         * gtk/gtktreeview.c (set_source_row): use a row reference
6117         (set_dest_row): use a row reference
6118
6119 Sat Jan 27 15:52:02 2001  Jonathan Blandford  <jrb@redhat.com>
6120
6121         * gtk/gtktreeselection.c (gtk_tree_selection_unselect_iter): Fix
6122         stupid typo pointed out by Kristian Rietveld <kristian@planet.nl>.
6123         (gtk_tree_selection_select_iter): The same as above.
6124
6125 2001-01-26  Havoc Pennington  <hp@redhat.com>
6126
6127         * gtk/gtktreemodel.c, gtk/gtktreemodel.h: add GtkTreeRowReference
6128         which holds a handle to a specific row (particular set of values
6129         in the model, i.e. pointer-identity row).
6130
6131         * gtk/gtktreeview.c, gtk/gtktreeprivate.h, gtk/gtktreeselection.c:
6132         use GtkTreeRowReference for anchor, cursor, and drag_dest_row.
6133         Still need to use it for the src/dest row saved on the drag context.
6134
6135 2001-01-26  Havoc Pennington  <hp@redhat.com>
6136
6137         * gtk/gtktextlayout.c (convert_color): adapt to handle PangoColor
6138
6139         * gtk/gtktreeview.c (gtk_tree_view_widget_to_tree_coords): fix to
6140         not offset by TREE_VIEW_HEADER_HEIGHT
6141         (gtk_tree_view_tree_to_widget_coords): fix to not offset by
6142         TREE_VIEW_HEADER_HEIGHT
6143
6144         * configure.in (included_loaders): for me, --with-included-loaders
6145         generates the error "the specified loader yes does not exist",
6146         i.e. the arg defaults to "yes", so change test for value ""
6147         to test for value "yes", and include all loaders in that case.
6148
6149         * gtk/gtkrbtree.c (_gtk_rbtree_get_depth): new function
6150
6151         * gtk/gtktreeview.c (gtk_tree_view_get_cell_rect): fix to properly
6152         handle TREE_VIEW_VERTICAL_SEPARATOR
6153         (gtk_tree_view_bin_expose): fix to consider the row offset as
6154         pointing halfway into vertical separator.       
6155         (gtk_tree_view_draw_node_focus_rect): ditto
6156
6157         * gtk/gtkdebug.h, gtk/gtkmain.c (gtk_init_check): Add
6158         --gtk-debug=updates, which causes gdk_window_set_debug_updates
6159         (TRUE) to be called.
6160
6161         * gdk/gdkwindow.c (gdk_window_set_debug_updates): Allow enabling a
6162         debug mode where the invalid region is colored in on invalidate,
6163         so you can see the flicker and know whether your redraw code is 
6164         doing a good job.
6165
6166         * gtk/gtktreeview.c (gtk_tree_view_queue_draw_node): Work in 
6167         tree window coordinates (clip rect is in tree window coords)
6168
6169         * gtk/Makefile.am: add gtktreednd.[hc]
6170
6171         * gtk/gtkliststore.c: implement gtktreednd interfaces.
6172
6173         * gtk/gtktreednd.c, gtk/gtktreednd.h: New interface to support
6174         drag-and-drop data operations on a model (so we can set up tree
6175         drag-and-drop automatically)
6176
6177         * gtk/testgtk.c: Add a window to change sensitivity in the
6178         GtkLabel test; add a way to change the entry frame in GtkEntry
6179         test
6180
6181         * gtk/gtkentry.c (gtk_entry_set_has_frame): 
6182         (gtk_entry_get_has_frame): new functions to remove the frame
6183         around an entry
6184         (gtk_entry_size_request): shrink requisition if no frame
6185         (gtk_entry_draw_focus): don't draw frame if no frame
6186
6187         * gtk/gtkstyle.c (gtk_default_draw_check): draw custom look for
6188         checks inside a cell renderer
6189         (gtk_default_draw_option): ditto for options
6190
6191         * gtk/gtktreeviewcolumn.c (update_button_contents): add/remove
6192         children from the alignment, not the button
6193         (gtk_tree_view_column_init): ref/sink the column, to emulate
6194         GObject refcounting.
6195
6196         * gtk/gtkcellrenderer.c (gtk_cell_renderer_init): ref/sink
6197         
6198         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
6199         Use theme functions to draw the toggles 
6200
6201         * gdk/gdkpango.c (gdk_pango_get_gc): use GdkRGB to alloc colors
6202
6203         * gdk/gdkpango.h, gdk/gdkpango.c: Add GdkPangoAttrStipple and
6204         GdkPangoAttrEmbossed to use in rendering insensitive text
6205
6206         * gdk/gdkpango.c (gdk_draw_layout_line): render new properties
6207
6208         * gtk/gtkstyle.c (gtk_default_draw_layout): handle sensitivity
6209         using new GDK features
6210         
6211 2001-01-24  Alexander Larsson  <alexl@redhat.com>
6212
6213         * gtk/gtkimage.c:
6214         Splitted gtk_image_clear into gtk_image_clear() and
6215         gtk_image_reset(). Call gtk_image_clear() in ::destroy
6216         to avoid leaks.
6217
6218         * gtk/gtklabel.c (set_markup):
6219         Don't leak text.
6220
6221         * gtk/gtktextlayout.c:
6222         Always free display->shaped_objects.
6223
6224         * gtk/testgtk.c (create_clist):
6225         Don't leak custom style.
6226
6227 2001-01-23  Alexander Larsson  <alexl@redhat.com>
6228
6229         * gtk/gtkcolorsel.c (grab_color_at_mouse):
6230         Don't leak image. Simplify using gdk_colormap_query_color().
6231         (gtk_color_selection_init): Don't leak dropper_pixmap and mask.
6232
6233         * linux-fb/gdkcolor-fb.c:
6234         Implemented gdk_colormap_query_color.
6235
6236 2001-01-23  Alexander Larsson  <alexl@redhat.com>
6237
6238         * linux-fb/gdkcursor-fb.c:
6239         Don't leak built-in cursors.
6240
6241         * linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_polygon):
6242         Don't leak tmp_points.
6243
6244         * linux-fb/gdkfont-fb.c (gdk_font_from_description):
6245         Don't modify desc. Don't leak font if the PangoFont
6246         isn't found.
6247         
6248         * linux-fb/gdkgc-fb.c (gdk_fb_gc_finalize):
6249         Free dash_list.
6250
6251         * linux-fb/gdkkeyboard-fb.c (gdk_fb_handle_key):
6252         Don't leak string.
6253         
6254 2001-01-20  Havoc Pennington  <hp@pobox.com>
6255
6256         * gtk/gtktexttag.h (enum GtkWrapMode): rename member fields
6257         from GTK_WRAPMODE_WORD to GTK_WRAP_WORD, etc., seems nicer to 
6258         me, matches Pango
6259
6260 2001-01-22  Havoc Pennington  <hp@redhat.com>
6261
6262         * demos/testanimation.c: fix to reflect gdk-pixbuf changes
6263
6264         * demos/testpixbuf.c: fix to reflect gdk-pixbuf changes
6265
6266         * gtk/gdk-pixbuf-loader.c, gtk/gdk-pixbuf-loader.h: 
6267         Remove, move back to gdk-pixbuf
6268
6269         * gtk/gtktextiter.c, gtk/gtktextiter.h: add sentence equivalents
6270         to all the word functions
6271
6272         * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): return
6273         before doing anything on NULL layout or if we don't have the focus
6274
6275         * gtk/testtext.c (fill_example_buffer): "justification"
6276
6277         * gtk/gtktexttag.h, gtk/gtktexttag.c: change the tag attribute
6278         to be called "justification" not "justify"
6279
6280         * demos/gtk-demo/textview.c (create_tags): "justification"
6281         
6282         * gtk/gtktextlayout.c (set_para_values): Handle char-wise wrapping
6283
6284 2001-01-22  Alexander Larsson  <alexl@redhat.com>
6285
6286         * gdk/gdkwindow.c (gdk_window_invalidate_region):
6287         Don't leak visible_region. Use visible_region instead of region.
6288         
6289         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
6290         Don't do extra gdk_drawable_ref(). This is not X.
6291         (gdk_fb_window_find_focus, gdk_fb_change_focus): make sure
6292         gdk_fb_focused_window is ref:ed.
6293         (gdk_fb_window_send_crossing_events): Watch out for destroyed
6294         windows.
6295
6296 2001-01-22  Alexander Larsson  <alexl@redhat.com>
6297
6298         * gtk/gtkwindow-decorate.c (gtk_decorated_window_realize):
6299         Don't leak the PangoFontDescriptor.
6300
6301 Sun Jan 21 09:58:00 2001  Jonathan Blandford  <jrb@redhat.com>
6302
6303         * gtk/gtktreeview.c (gtk_tree_view_scroll_to_point): Make fail
6304         when not realized.
6305         (gtk_tree_view_scroll_to_cell): Make work when not realized.
6306         (gtk_tree_view_realize): add scroll_to support
6307         (gtk_tree_view_finalize): add a finalize method.  Populate.
6308         (gtk_tree_view_insert_column): ref and sink the column.
6309         (gtk_tree_view_append_column): ref and sink the column.
6310         (gtk_tree_view_queue_draw_node): New function to handle redrawing
6311         individual nodes.  Should make the code much more efficient, if
6312         actually used.
6313
6314 2001-01-19  Havoc Pennington  <hp@redhat.com>
6315
6316         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
6317         byte_offset variable was being used to mean both "offset into
6318         layout" and "offset into buffer line" which was no longer true
6319         with addition of preedit string; fix
6320
6321 2001-01-19  Havoc Pennington  <hp@redhat.com>
6322
6323         * demos/gtk-demo/main.c (button_press_event_cb): sync to tree changes
6324
6325         * gtk/gtkrbtree.c (_gtk_rbtree_node_find_offset): fix this
6326         function
6327
6328         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_widget):
6329         implement
6330
6331         * gtk/gtktreeview.c (gtk_tree_view_move_to): rename
6332         scroll_to_cell, matches TextView scroll functions better
6333         (gtk_tree_view_tree_to_widget_coords): new function
6334         (gtk_tree_view_widget_to_tree_coords): new function
6335         (gtk_tree_view_get_visible_rect): new function
6336         (gtk_tree_view_get_path_at_pos): accept negative coordinates
6337         (gtk_tree_view_draw_node_focus_rect): new function moved from
6338         draw_focus, also, use width of bin_window as width of the focus
6339         rect
6340         (gtk_tree_view_expand_row): fix bug where it didn't recognize
6341         already-expanded rows
6342         (gtk_tree_view_get_cell_rect): new function
6343         (gtk_tree_view_get_path_at_pos): return the click position
6344         relative to the passed-in cell
6345         (gtk_tree_view_set_expander_column): new function
6346
6347         * configure.in: remove gtk-config-2.0 chmod
6348
6349         * gtk/gtktextview.c (gtk_text_view_drag_motion): small cleanups,
6350         and properly handle drags with targets we don't understand
6351         (gtk_text_view_drag_end): don't stop scrolling, the source isn't
6352         scrolling anyway
6353         (gtk_text_view_drag_drop): stop scrolling here though, and set the
6354         mark invisible
6355
6356         * gtk/gtkdnd.c (gtk_drag_dest_find_target): export as a public
6357         function
6358         (gtk_drag_dest_get_target_list): new function
6359         (gtk_drag_dest_set_target_list): new function
6360         
6361         * gtk/gtktreeview.c: Add a bunch of drag-and-drop implementation
6362
6363         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): add fields
6364         related to drag-and-drop
6365
6366 2001-01-19  Alexander Larsson  <alexl@redhat.com>
6367
6368         * gdk/linux-fb/gdkprivate-fb.h:
6369         Define EMULATE_GDKFONT.
6370         Add extra pango_font stuff to GfkFontPrivate.
6371         
6372         * gdk/linux-fb/gdkdrawable-fb2.c:
6373         * gdk/linux-fb/gdkfont-fb.c:
6374         If EMULATE_GDKFONT defined, implement a slow lame GdkFont
6375         emulation using PangoFont.
6376
6377 2001-01-17  Havoc Pennington  <hp@pobox.com>
6378
6379         * gtk/gtkprogressbar.c, gtk/gtkprogressbar.h: Add "getters" for
6380         all the non-deprecated set_foo functions. Added missing object
6381         properties, and added g_object_notify() to setters. 
6382         Wrote docs.
6383         
6384 2001-01-18  Tor Lillqvist  <tml@iki.fi>
6385
6386         * gtk/gtkmain.c
6387         * gtk/gtkrc.c: (Win32) Use the new
6388         g_win32_get_package_installation_(sub)directory() functions.
6389
6390         * config.h.win32.in: New file.
6391         
6392         * config.h.win32: Removed.
6393
6394         * configure.in: Output config.h.win32.
6395
6396         * Makefile.am: Add it to EXTRA_DIST.
6397
6398         * gtk/gtk.def: Update.
6399
6400 Wed Jan 17 16:22:54 2001  Owen Taylor  <otaylor@redhat.com>
6401
6402         * gtk/gtklabel.c (gtk_label_size_request): Set the
6403         attributes onto the PangoLayout even if they are newly
6404         created from label->pattern.
6405
6406 Tue Jan  9 11:20:48 2001  Owen Taylor  <otaylor@redhat.com>
6407
6408         * gdk/x11/gdkdnd-x11.c: Remove unused variable.
6409
6410         * gtk/gtkdnd.c: Encapsulate storing and retrieving info
6411         structures in functions. Fixes bug where gtk_dataset_*
6412         was accidentally still being used in one place, causing
6413         every dest side event to be treated independently.
6414
6415         * gtk/gtkdnd.c: Remove last vestages of handling
6416         ::draw (fixes warning)
6417         
6418         * gtk/gtkentry.[ch]: Add drag and drop support.
6419
6420         * gtk/gtkdnd.[ch] gtk/gtktextview.c gtk/gtkentry.c: Add
6421         new function gtk_check_drag_threshhold() for checking
6422         to check if (dx,dy) has exceeded the threshhold for starting
6423         a drag and use it everywhere.
6424
6425 Mon Jan  8 11:58:05 2001  Owen Taylor  <otaylor@redhat.com>
6426
6427         * gtk+-2.0.pc.in gdk-pixbuf-2.0.pc.in (Cflags): Remove -I${includedir},
6428         add -I{includedir}/gtk-2.0.
6429
6430         * gtk/gtktreeview.[ch] gtktreemodelsort.[ch] gtknotebook.c
6431         gdk/gdk-pixbuf.h: Doc fixups.
6432         
6433         * gtk/gtkobject.h: Remove trailing , from enum
6434
6435 2001-01-17 Alexander Larsson <alexl@redhat.com> 
6436
6437         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_shadow_fb_draw_arc):
6438         Doh! Mixed up x and y.
6439
6440         * gdk/linux-fb/gdkglobals-fb.c:
6441         Removed gdk_fb_pointer_grab_window_events,
6442         added _gdk_fb_pointer_grab_owner_events and
6443         _gdk_fb_keyboard_grab_owner_events.
6444
6445         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab):
6446         Set all button mask if GDK_BUTTON_MOTION_MASK set. Send
6447         crossing events before grabbing. Set _gdk_fb_pointer_grab_owner_events.
6448         (gdk_fb_pointer_ungrab): Unset _gdk_fb_pointer_grab_owner_events
6449         Send crossing events after ungrab finished.
6450         (gdk_keyboard_grab): Set ..._owner_events
6451         (type_masks): Move out of function.
6452         (gdk_fb_other_event_window, gdk_fb_pointer_event_window,
6453         gdk_fb_keyboard_event_window): New functions, return the
6454         window an event should be targeted at. Handles grabs and
6455         event propagation. Can return NULL.
6456         (gdk_event_make): Remove event_mask checking. Now always
6457         returns an event.
6458                 
6459         * gdk/linux-fb/gdkkeyboard-fb.c:
6460         * gdk/linux-fb/gdkproperty-fb.c:
6461         * gdk/linux-fb/gdkselection-fb.c:
6462         Use new event_window/gdk_event_make() behaviour.
6463         
6464         * gdk/linux-fb/gdkmouse-fb.c:
6465         Use new event_window/gdk_event_make() behaviour.
6466         Only send motion events if in the same window.
6467         If grabbed, use cursor from window if sibling of grabbed
6468         window, and cursor from grabbed window otherwise.
6469
6470         * gdk/linux-fb/gdkprivate-fb.h:
6471         Update gdk_fb_window_send_crossing_events, gdk_event_make
6472         and grab varaible declarations. Add gdk_fb_*_event_window().
6473
6474         * gdk/linux-fb/gdkwindow-fb.c:
6475         Use new event_window/gdk_event_make() behaviour.
6476         Keep correct track of focus window.
6477         (gdk_window_set_events): Set all specific button motion masks
6478         if GDK_BUTTON_MOTION_MASK set.
6479
6480         * gtk/gtkdnd.c (gtk_drag_update):
6481         Free info->last_event if gdk_drag_motion returned FALSE.
6482
6483 2001-01-16  Tor Lillqvist  <tml@iki.fi>
6484
6485         * gdk/win32/gdkwindow-win32.c (gdk_window_show, gdk_window_hide):
6486         Eliminate redraws when input-only windows are shown or
6487         hidden. Thanks to jpe@archaeopteryx.com.
6488
6489 Tue Jan 16 13:13:13 GMT 2001  Tony Gale <gale@gtk.org>
6490
6491         * docs/faq/gtk-faq.sgml: FAQ update:
6492           - Update to bugzilla
6493           - Add GTK+ and security/SUID/SGID
6494           - Add DnD question
6495
6496 2001-01-16  Alexander Larsson  <alla@lysator.liu.se>
6497
6498         * gdk/linux-fb/gdkdnd-fb.c:
6499         Some cleanups.
6500         
6501 2001-01-15  Havoc Pennington  <hp@pobox.com>
6502
6503         * tests/testtreeview.c: add test stuff for CellRendererToggle
6504
6505         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_get_model): add this
6506         accessor
6507
6508         * gtk/gtkcellrenderertoggle.c: distinguish different event types,
6509         only toggle on button press (would do release like GtkButton, but
6510         we'd need implicit grab code for treeview cells)
6511
6512 2001-01-16  Tor Lillqvist  <tml@iki.fi>
6513
6514         * gdk/win32/gdkvisual-win32.c: Include <stdlib.h> for getenv().
6515
6516         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Don't use
6517         GDK_COLORMAP_PRIVATE_DATA on a potentially NULL GdkColormap.
6518
6519         * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Adapt calls
6520         to g_{locale,filename}_{to,from}_utf8 to match current API.
6521
6522         * gtk/makefile.msc.in (gtk_OBJECTS)
6523         * gtk/makefile.mingw.in (gtk_OBJECTS): Add gtkwindow-decorate.
6524
6525         * gtk/gtk.def: Update.
6526
6527 2001-01-15  Tor Lillqvist  <tml@iki.fi>
6528
6529         * gdk/win32/gdkevents-win32.c (synthesize_crossing_events): New
6530         implementaion that more closely mimics the events that an X server
6531         would generate. Especially, properly generate GDK_NOTIFY_VIRTUAL and
6532         GDK_NOTIFY_NONLINEAR_VIRTUAL crossing events. This makes buttons
6533         with nested preview widgets, for instance, more responsive when
6534         you move the mouse quickly into them.
6535         (find_window_for_pointer_event): Make it actually compile.
6536         (gdk_event_translate): Set send_event to the value of
6537         InSendMessage (). This doesn't really mean the same as X11's
6538         send_event flag, but is close enough, says jpe@archaeopteryx.com
6539
6540 2001-01-15  Alexander Larsson  <alexl@redhat.com>
6541
6542         * gdk/linux-fb/gdkdnd-fb.c:
6543         Implemented drag and drop.
6544         Seems to be mostly working. I sometimes get an assert from gtkdnd.c:2664
6545         when it tries to free and then copy the same event (info->last_event).
6546         I am not sure about why this happens, but will continue looking.
6547
6548 2001-01-15  Alexander Larsson  <alexl@redhat.com>
6549
6550         * gdk/linux-fb/gdkwindow-fb.c:
6551         Use gdk_window_invalidate_rect instead of
6552         gdk_window_invalidate_rect_clear to minimise flashing.
6553         When hiding windows you need to clear the root window though.
6554
6555 2001-01-15  Alexander Larsson  <alexl@redhat.com>
6556
6557         * gdk/linux-fb/gdkdrawable-fb2.c:
6558         For optization, add an full_shapes argument to gdk_fb_clip_region.
6559         If this is false, only the cliprects of the shapes are used.
6560
6561         * gdk/linux-fb/gdkprivate-fb.h:
6562         Export gdk_fb_window_peek_shape.
6563         Add full_shapes to gdk_fb_clip_region.
6564
6565         * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
6566         When moving a window, don't clear everything under the it, just the
6567         root window. Makes stuff faster and flash less.
6568         (gdk_window_get_pointer): Correctly handle offseted shapes, due to
6569         USE_CHILD_SHAPE. (gdk_fb_window_peek_shape): Return the correct
6570         offset of the shape.
6571         
6572
6573 2001-01-12  Havoc Pennington  <hp@redhat.com>
6574
6575         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): offset the 
6576         current invalid region, fixes redraw bug while scrolling the 
6577         text widget
6578
6579         * gtk/gtktextview.c, gtk/gtktextview.h:
6580         Rearrange the scrolling/validation/etc. code in a major way, 
6581         so it seems to make sense to me. Probably isn't genuinely that
6582         much better, but...
6583
6584         * gtk/gtktexttag.c (set_fg_color): fix name of property used for
6585         notifies
6586
6587         * gtk/gtktextmark.c (gtk_text_mark_get_left_gravity): new function
6588
6589 2001-01-12  Alexander Larsson  <alla@lysator.liu.se>
6590
6591         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_set_rotation):
6592         Hide mouse pointer while rotation. Show it afterwards.
6593
6594 2001-01-12  Alexander Larsson  <alexl@redhat.com>
6595
6596         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_clip_region): Take shaped
6597         windows in consideration when generating clip region.
6598
6599         * gdk/linux-fb/gdkfb.h:
6600         Huge HACK. Added GDK_FB_USE_CHILD_SHAPE.
6601
6602         * gdk/linux-fb/gdkprivate-fb.h:
6603         Add shape to GdkWindowFBDatat.
6604         exported gdk_fb_window_get_abs_shape().
6605         removed gdk_fb_draw_lines declaration.
6606
6607         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_impl_fb_init):
6608         Init shape to NULL. (gdk_fb_window_send_crossing_events): Don't
6609         send focus changes when there is a grabbed window.
6610         (gdk_window_get_pointer): Handle shaped windows.
6611         (gdk_fb_region_create_from_bitmap): Convert bitmap to region.
6612         (gdk_fb_window_peek_shape): Returns the shape for a window,
6613         handles GDK_FB_USE_CHILD_SHAPE.
6614         (gdk_fb_window_get_abs_shape): Returns the shape of the window,
6615         offseted to absolute positions. Handles GDK_FB_USE_CHILD_SHAPE.
6616         (gdk_window_shape_combine_mask): Implement.
6617
6618         * gtk/gtkwindow-decorate.c:
6619         HACK! Set GDK_FB_USE_CHILD_SHAPE on window->frame to make sure
6620         setting the shape of a window makes the window transparent.
6621
6622 2001-01-11  Havoc Pennington  <hp@redhat.com>
6623
6624         * gtk/gtktreemodelsimple.h: Oops, broke some macros
6625
6626 2001-01-10  Havoc Pennington  <hp@redhat.com>
6627
6628         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clear_attributes):
6629         add this function, bug 40251
6630
6631         * gtk/gtktreemodelsimple.h (GTK_TYPE_TREE_MODEL_SIMPLE): fix name
6632         of type macro   
6633
6634 2001-01-11  Alexander Larsson  <alexl@redhat.com>
6635
6636         * acconfig.h:
6637         Added ENABLE_SHADOW_FB
6638
6639         * configure.in:
6640         Added --disable-shadowfb
6641
6642         * gdk/linux-fb/gdkcursor-fb.c:
6643         Update shadowfb when updating cursor
6644
6645         * gdk/linux-fb/gdkdrawable-fb2.c:
6646         Added wrappers for shadowfb that calls  the normal drawable
6647         methods, but calls gdk_shadow_fb_update(bounding box) when
6648         GdkWindows are drawed to.
6649         Moved gdk_draw_glyphs implementation to _gdk_draw_glyphs
6650         which also returns the bounding box.
6651
6652         * gdk/linux-fb/gdkfb.h:
6653         Added GdkFBAngle type and gdk_fb_set_rotation declaration.
6654
6655         * gdk/linux-fb/gdkgeometry-fb.c:
6656         Update shadowfb when scrolling window.
6657
6658         * gdk/linux-fb/gdkglobals-fb.c:
6659         Add _gdk_fb_screen_angle.
6660         
6661         * gdk/linux-fb/gdkkeyboard-fb.c:
6662         Test code for screen rotation. Shift-F2 in the xlate driver
6663         rotates the screen.
6664
6665         * gdk/linux-fb/gdkmain-fb.c:
6666         Handle shadowfb. Add gdk_fb_set_rotation(). Remove CM and RP.
6667
6668         * gdk/linux-fb/gdkmouse-fb.c:
6669         Use fb_width/height instead of modeinfo.xres/yres.
6670
6671         * gdk/linux-fb/gdkprivate-fb.h:
6672         Added fb_men, fb_width, fb_height & fb_stride. When using
6673         shadow fb these can differ from the framebuffer stuff.
6674         Declarations for gdk_shadow_fb_update, gdk_shadow_fb_init,
6675         gdk_shadow_fb_stop_updates, gdk_fb_recompute_all,
6676         _gdk_fb_screen_angle. Removed CM, RP.
6677
6678         * gdk/linux-fb/gdkrender-fb.c:
6679         Added code for shadowfb handling and screen rotation using
6680         shadowfb.
6681
6682         * gdk/linux-fb/gdkwindow-fb.c:
6683         Use fb_mem, fb_stride, fb_width, fb_height.
6684         Added recompute_rowstride to reset the rowstride of all windows.
6685         Added gdk_fb_recompute_all() which recomputes rootwindow size,
6686         window abs positions and window rowstrides. Usefull when the
6687         rotation has changed.
6688
6689 Thu Jan 11 13:16:50 GMT 2001  Tony Gale <gale@gtk.org>
6690
6691         * docs/faq/gtk-faq.sgml: update to make web site updating easier
6692
6693 2001-01-10  Havoc Pennington  <hp@redhat.com>
6694
6695         * gtk/gtktreestore.c (gtk_tree_store_insert_before): handle case
6696         where sibling == iter
6697         (gtk_tree_store_insert_after): handle sibling == iter
6698         (gtk_tree_store_prepend): remove stamp checks
6699         (gtk_tree_store_insert_before): ditto
6700         (gtk_tree_store_append): ditto
6701         (gtk_tree_store_get_path): ditto
6702         (gtk_tree_store_get_value): ditto
6703         (gtk_tree_store_iter_has_child): ditto
6704         (gtk_tree_store_iter_n_children): ditto
6705         (gtk_tree_store_iter_nth_child): ditto
6706         (gtk_tree_store_insert_after): ditto
6707         (gtk_tree_store_is_ancestor): ditto
6708         (gtk_tree_store_iter_depth): ditto
6709         (gtk_tree_store_insert_before): assert that sibling's parent is
6710         the same as the passed-in parent
6711         (gtk_tree_store_insert_after): assert that sibling's parent is
6712         the same as the passed-in parent
6713
6714         
6715         * gtk/gtktreemodel.c (gtk_tree_model_get_first): new convenience 
6716         function to get the first iterator in a model
6717         
6718         * gtk/gtktreestore.c (gtk_tree_store_get_root_iter): remove,
6719         conventionally the "root" in this sense is just NULL afaict.
6720
6721         * gtk/gtkliststore.c (gtk_list_store_insert_before): handle case
6722         where sibling == iter
6723         (gtk_list_store_insert_after): handle case where sibling == iter
6724
6725         * tests/testtreeview.c (run_automated_tests): fairly lame basic
6726         automated tests for ListStore, TreeStore
6727
6728         * gtk/gtkliststore.c (gtk_list_store_remove): update tail pointer
6729         (gtk_list_store_insert): update tail pointer, and fix it to work
6730         (gtk_list_store_insert_before): update tail pointer, and fix it to work
6731         (gtk_list_store_append): use tail to be faster
6732         (gtk_list_store_prepend): fix it, update tail pointer
6733         (gtk_list_store_insert_after): fix it, update tail pointer
6734
6735         * gtk/gtkliststore.h (struct _GtkListStore): add tail pointer for 
6736         the list
6737
6738 2001-01-09  Havoc Pennington  <hp@redhat.com>
6739
6740         * gtk/gtklabel.c (gtk_label_expose): don't draw if label->layout
6741         is NULL due to a pending resize
6742
6743         * gtk/gtktreeview.c (gtk_tree_view_check_dirty): don't set the
6744         column width to values less than 1
6745
6746         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_width): clamp
6747         width to be between min/max width, and still set the width 
6748         even if autosize is turned on, so the tree view can use this 
6749         function in order to autosize.
6750         (gtk_tree_view_column_init): set initial width to 1 not 0
6751
6752         * gtk/gtktreeview.c (gtk_tree_view_size_request_buttons): use
6753         setter function to modify column width, so we get notification
6754         (gtk_tree_view_insert_iter_height): ditto
6755         (gtk_tree_view_calc_size): ditto
6756         (gtk_tree_view_check_dirty): ditto
6757
6758         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_class_init): Add
6759         properties to change all the interesting attributes of the tree
6760         view column.
6761         (gtk_tree_view_column_set_header_clickable): rename set_clickable
6762         (gtk_tree_view_column_get_clickable): add
6763         (gtk_tree_view_column_set_cell_renderer): don't unset the current
6764         attributes; assume a cell renderer with equivalent object
6765         properties has been swapped in. Do g_object_notify().
6766         (gtk_tree_view_column_set_visible): g_object_notify
6767         (gtk_tree_view_column_get_sizing): rename from get_col_type
6768         (gtk_tree_view_column_set_sizing): g_object_notify
6769         (gtk_tree_view_column_set_width): add g_object_notify
6770         (gtk_tree_view_column_set_min_width): ditto
6771         (gtk_tree_view_column_set_max_width): ditto
6772         (gtk_tree_view_column_set_title): ditto
6773         (gtk_tree_view_column_set_clickable): ditto
6774         (gtk_tree_view_column_set_widget): ditto
6775         (gtk_tree_view_column_set_justification): ditto
6776
6777 2001-01-09  Havoc Pennington  <hp@redhat.com>
6778
6779         * gtk/gtktreeview.c (gtk_tree_view_check_dirty): handle case where
6780         there are no rows in the model
6781
6782         * gtk/gtkliststore.c (gtk_list_store_iter_children): if parent is
6783         NULL, then return the start of the list
6784
6785         * gtk/gtktreeview.c (gtk_tree_view_setup_model): don't build tree
6786         if we can't get any rows from an empty model 
6787
6788         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): remove
6789         extraneous * after function pointer typedef usage
6790
6791         * Makefile.am: don't specify full path to cp and rm
6792
6793         * gtk/gtkcellrenderertextpixbuf.c
6794         (gtk_cell_renderer_text_pixbuf_get_size): check width/height !=
6795         NULL before dereferencing, fixes a segfault that happened from
6796         time to time
6797
6798         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render):
6799         use gdk_pixbuf_render_to_drawable_alpha() to get alpha channel,
6800         and reindent the function
6801         (gtk_cell_renderer_pixbuf_get_size): indentation
6802
6803         * gtk/gtkdialog.c (gtk_dialog_run): destroy main loop only after
6804         we quit it
6805         (gtk_dialog_add_buttons_valist): add g_return_if_fail
6806         (gtk_dialog_set_default_response): New function, to set default
6807         button
6808         (gtk_dialog_set_response_sensitive): New function, to set 
6809         sensitivity of buttons
6810
6811         * gtk/gtkcellrendererpixbuf.c
6812         (gtk_cell_renderer_pixbuf_get_property): allow getting a NULL pixbuf
6813         (gtk_cell_renderer_pixbuf_set_property): allow setting a NULL pixbuf
6814
6815         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_to_value):
6816         handle any G_TYPE_OBJECT subclass, not just the base class, and 
6817         also boxed types.
6818         (_gtk_tree_data_list_value_to_node): ditto
6819
6820         * gtk/gtkrbtree.c: Run _gtk_rbtree_test at strategic points if 
6821         --gtk-debug=tree
6822
6823         * gtk/gtkmain.c: add GTK_DEBUG_TREE
6824
6825         * gtk/gtkdebug.h: add GTK_DEBUG_TREE
6826
6827 2001-01-09  Tor Lillqvist  <tml@iki.fi>
6828
6829         * gdk/win32/gdkevents-win32.c: Implement better mouse
6830         capturing. Do use SetCapture(). Thanks to jpe@archaeopteryx.com.
6831         (find_window_for_pointer_event): New function.
6832         (gdk_event_translate): Use it when handling mouse events.
6833
6834 2001-01-09  Alexander Larsson  <alla@lysator.liu.se>
6835
6836         * configure.in:
6837         Added --with-included-loaders option
6838
6839         * gdk-pixbuf/Makefile.am:
6840         * gdk-pixbuf/gdk-pixbuf-io.c:
6841         Add support for including selected gdk-pixbuf loaders only.
6842
6843         * gtk/gtkwindow.c (gtk_window_set_frame_dimensions,
6844         gtk_window_set_has_frame):
6845         Added inline documentation.
6846
6847         * gdk/x11/gdkwindow-x11.c (gdk_window_get_decorations):
6848         * docs/reference/gdk/tmpl/windows.sgml:
6849         Added inline documentation.
6850
6851 Mon Jan  8 14:42:06 2001  Jonathan Blandford  <jrb@redhat.com>
6852
6853         * gtk/gtktreeview.c (gtk_tree_view_realize_buttons): Skip
6854         realizing buttons that have already been realized.
6855
6856 Mon Jan  8 14:06:29 2001  Jonathan Blandford  <jrb@redhat.com>
6857
6858         * tests/testtreeview.c (main): Show menu items before adding to
6859         option menu.
6860
6861         * gtk/gtktreeview.c (gtk_tree_view_set_model): Keep the columns
6862         around if we kill them.
6863
6864         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
6865         Return if we pass in a NULL model.
6866
6867 2001-01-08  Havoc Pennington  <hp@redhat.com>
6868
6869         * tests/testtreeview.c: hack on this some
6870
6871         * gtk/gtktreestore.c (gtk_tree_store_setv): rename
6872         gtk_tree_store_set_valist, v is for arrays, valist for varargs
6873         list
6874         (gtk_tree_store_getv): rename gtk_tree_store_get_valist
6875
6876         * gtk/gtkliststore.h: Add varargs set() and get() convenience
6877         functions
6878
6879 2001-01-08  Alexander Larsson  <alexl@redhat.com>
6880
6881         * gtk/gtkwindow-decorate.[hc]:
6882         * gtk/Makefile.am:
6883         New files. Contains an implementation of a minimal WM for
6884         linux-fb.
6885
6886         * gtk/gtkwindow.h:
6887         Add the possibility for GtkWindows to specify a frame. This
6888         is used for the window decoration code, but could concievably
6889         be used for X programs too (xmms style windows).
6890         GtkWindow->frame is the toplevel window if the window is framed.
6891         The signal frame_event gets all events that are targeted to
6892         GtkWindow->frame.
6893         (_gtk_window_constrain_size): Exported for usage by gtkwindow-decorate.c.
6894         
6895         * gtk/gtkwindow.c:
6896         Implement gtk_window_set_has_frame and gtk_window_set_frame_dimensions.
6897         Call out to gtkwindow-decorate.c for WM support in linx-fb.
6898
6899 2001-01-08  Alexander Larsson  <alexl@redhat.com>
6900
6901         * docs/README.linux-fb:
6902         Correct filename ~/.pangoft2_aliases
6903
6904         * gdk/gdkwindow.h:
6905         Added new function gdk_window_get_decorations.
6906
6907         * gdk/linux-fb/gdkfb.h:
6908         Removed _gdk_window_get_decorations declaration.
6909         Renamed _gdk_window_set_child_handler to
6910         gdk_fb_window_set_child_handler.
6911
6912         * gdk/linux-fb/gdkwindow-fb.c:
6913         Renamed _gdk_window_set_child_handler to
6914         gdk_fb_window_set_child_handler.
6915
6916         * gdk/x11/gdkwindow-x11.c:
6917         New function gdk_window_get_mwm_hints().
6918         Implemented gdk_window_get_decorations.
6919
6920         * docs/reference/gdk/tmpl/windows.sgml:
6921         * docs/reference/gdk/gdk-sections.txt:
6922         Added gdk_window_get_decorations docs.
6923         
6924 2001-01-08  Alexander Larsson  <alla@lysator.liu.se>
6925
6926         * gdk/linux-fb/gdkwindow-fb.c (_gdk_fb_window_find_focus,
6927         gdk_fb_window_find_focus, gdk_fb_send_focus_change,
6928         gdk_fb_window_send_crossing_events):
6929         Possibly send focus events when the mouse moves from one
6930         window to another.
6931
6932 2001-01-07  Tor Lillqvist  <tml@iki.fi>
6933
6934         * gdk/win32/gdkwindow-win32.c (gdk_window_set_title,
6935         gdk_window_new): Adapt calls to g_{locale,filename}_{to,from}_utf8
6936         to match current API.
6937
6938         * gdk/win32/gdkvisual-win32.c (gdk_visual_init): If a secret
6939         environment variable is set, don't call g_error when on a
6940         palettized (PseudoColor) display. Some people want to use GTK+ 
6941         in 256-colour mode even though works only partially.
6942
6943         * gdk/gdk.def
6944         * gtk/gtk.def
6945         * gtk/makefile.mingw.in: Update.
6946
6947 2001-01-05  Havoc Pennington  <hp@redhat.com>
6948
6949         * tests/testtreeview.c: hack on this a bit
6950
6951         * gtk/gtktextlayout.c (gtk_text_layout_class_init):
6952         s/GTK_RUN_LAST/G_SIGNAL_RUN_LAST
6953
6954         * gtk/gtktreemodelsimple.h (GTK_IS_TREE_MODEL_SIMPLE_CLASS): 
6955         was spelled incorrectly
6956         (GTK_IS_TREE_MODEL_SIMPLE): ditto
6957
6958         * gtk/gtktreeview.c (gtk_tree_view_set_headers_clickable): rename
6959         from gtk_tree_view_set_headers_active   
6960
6961         * gtk/gtktexttag.c:
6962         (gtk_text_tag_get_property): handle PROP_DIRECTION
6963         (gtk_text_tag_set_property): g_object_notify when we toggle the _set
6964         properties, bug 40235
6965
6966         * gtk/gtktextiter.c (gtk_text_iter_forward_to_delimiters): rename
6967         forward_to_line_end
6968
6969 Fri Jan  5 16:16:29 2001  Owen Taylor  <otaylor@redhat.com>
6970
6971         * gtk/{gtkcalender.c,gtkfilesel.c,gtkimcontext.c},
6972         modules/input/gtkimcontextxim.c: Adapt to new prototypes
6973         for unicode,locale,filename conversion functions.
6974
6975 2001-01-05  Havoc Pennington  <hp@redhat.com>
6976
6977         * gtk/gtktextiter.c (gtk_text_iter_ends_line): this function was
6978         broken if called on the first position in the buffer.
6979
6980         * gtk/gtktextlayout.c (line_display_index_to_iter): fix
6981         forward_to_delimiters to be called only if we aren't already at
6982         the delimiters.
6983
6984 2001-01-05  Havoc Pennington  <hp@redhat.com>
6985
6986         * demos/gtk-demo/main.c (create_tree): Oops, that didn't link. Fix.
6987
6988 2001-01-05  Alexander Larsson  <alexl@redhat.com>
6989
6990         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_drawable_finalize): free
6991         colormap in here. Sync from X port.
6992         (gdk_fb_set_colormap): allow the colormap to be NULL if you like.
6993         Sync from X port.
6994         (gdk_fb_clip_region): Comment out g_warning about empty clip region.
6995         This happens now and then, and i don't think it is a bug.
6996         (gdk_fb_draw_polygon): Correctly add extra point if startpoint
6997         != endpoint.
6998         (gdk_fb_draw_lines): Don't draw dashed lines if line_style is
6999         GDK_LINE_SOLID.
7000
7001         * gdk/linux-fb/gdkfont-fb.c: Return bogus GdkFont that has
7002         some of the fields filled in at least.
7003
7004         * gdk/linux-fb/miwideline.c: The widths argument to miLineArcI, and
7005         miLineArcD is no more, remove it from the function definition.
7006
7007 2001-01-04  Havoc Pennington  <hp@redhat.com>
7008
7009         * gtk/gtktreeselection.c (gtk_tree_selection_get_tree_view): add
7010         this
7011
7012         * gtk/gtktreemodel.h (struct _GtkTreeIter): rename fields to
7013         user_data instead of tree_node
7014
7015         * gtk/gtktreeprivate.h (TREE_VIEW_COLUMN_WIDTH): rename from
7016         TREE_VIEW_COLUMN_SIZE
7017
7018         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): rename
7019         "size" field to "width" finishes bug 40061
7020
7021         * gtk/gtkcellrenderer.h: Use GtkCellRendererState instead of guint
7022         for bitfields, bug 40268
7023
7024 2001-01-04  Havoc Pennington  <hp@redhat.com>
7025
7026         Rename some stuff:
7027         
7028         s/gtk_tree_view_column_set_size/gtk_tree_view_column_set_width/g;
7029
7030         s/GtkModelSimple/GtkTreeModelSimple/g;
7031         s/GTK_MODEL_SIMPLE/GTK_TREE_MODEL_SIMPLE/g;
7032         s/gtk_model_simple/gtk_tree_model_simple/g;
7033         s/gtkmodelsimple/gtktreemodelsimple/g;
7034
7035         s/gtk_tree_view_column_set_header_active/gtk_tree_view_column_set_header_clickable/g;
7036
7037         s/GtkTreeViewColumnType/GtkTreeViewColumnSizing/g;
7038         s/column_set_col_type/column_set_sizing/g;
7039
7040         s/GtkTreeSelectionType/GtkTreeSelectionMode/g;
7041         s/gtk_tree_selection_set_type/gtk_tree_selection_set_mode/g;
7042
7043         s/GtkCellRendererType/GtkCellRendererState/g;
7044         
7045         * gtk/gtkcellrenderertoggle.c: remove _ macro, include gtkintl.h
7046         (gtk_cell_renderer_toggle_class_init): change "state" property to
7047         "active", to match GtkToggleButton
7048         (gtk_cell_renderer_toggle_get_active): new function, bug
7049         40269
7050         (gtk_cell_renderer_toggle_set_active): new function
7051         (gtk_cell_renderer_toggle_set_property): route changes to toggle
7052         state through gtk_cell_renderer_set_active
7053
7054 Thu Jan  4 15:46:18 2001  Jonathan Blandford  <jrb@redhat.com>
7055
7056         * gtk/gtkmodelsimple.c: Changed a bunch of boxed types to pointers
7057         temporarily until they work again.  Brought up to date with
7058         changes in the model.
7059         * gtk/gtkmodelsimple.h: Brought up to date with changes in the
7060         model.
7061
7062 2001-01-04  Havoc Pennington  <hp@redhat.com>
7063
7064         * gtk/gtktextlayout.c (line_display_index_to_iter): if index is
7065         equal to the line length, then position iterator before paragraph 
7066         separators. Fixes crash reported by Mikael Hermansson when
7067         pressing left arrow from the start of a line.   
7068
7069         * gtk/gtktextiter.c (iter_set_from_byte_offset): Add g_error
7070         about byte indexes off the end
7071         (iter_set_from_char_offset): add g_error about char offsets
7072         off the end
7073
7074 2001-01-03  Havoc Pennington  <hp@redhat.com>
7075
7076         * gtk/gtktextbtree.c: Adapt to uscore-ification of gtktextiterprivate
7077
7078         * gtk/gtktextdisplay.c (gtk_text_layout_draw): remove use 
7079         of private functions; remove inclusion of private headers.
7080
7081         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_at_line): Add this 
7082         function, so we don't need private functions in gtktextdisplay.c
7083
7084         * gtk/gtktextiterprivate.h: underscore-ification
7085
7086         * gtk/gtkwidget.c: Clean up a bunch of docs that said "INTERNAL"
7087         to instead say "only useful to implement widgets"
7088
7089         * gtk/gtkenums.h (GtkMovementStep): Rename GTK_MOVEMENT_CHARS,
7090         GTK_MOVEMENT_POSITIONS to GTK_MOVEMENT_LOGICAL_POSITIONS,
7091         GTK_MOVEMENT_VISUAL_POSITIONS. Resolves bug 40249.
7092
7093         * gdk/x11/gdkwindow-x11.c (gdk_window_impl_x11_set_colormap):
7094         This function was completely broken
7095
7096         * gtk/testtext.c (line_numbers_expose): use gtk_paint_layout
7097
7098         * gtk/gtkvscale.c (gtk_vscale_draw_value): use gtk_paint_layout
7099
7100         * gtk/gtkvruler.c (gtk_vruler_draw_ticks): use gtk_paint_layout
7101
7102         * gtk/gtklabel.c (gtk_label_expose): use gtk_paint_layout
7103
7104         * gtk/gtkhscale.c (gtk_hscale_draw_value): use gtk_paint_layout
7105
7106         * gtk/gtkhruler.c (gtk_hruler_draw_ticks): use gtk_paint_layout
7107
7108         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_render): use
7109         gtk_paint_layout
7110
7111         * gtk/gtkaccellabel.c (gtk_accel_label_expose_event): use
7112         gtk_paint_layout
7113
7114         * gtk/gtkstyle.h: Add draw/paint expander to draw tree expanders.
7115         Progress on bug 40103. Add draw_layout to draw a PangoLayout.
7116         (struct _GtkStyleClass): Remove draw_cross, draw_oval, draw_ramp,
7117         which were not implemented.     
7118
7119         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): Add
7120         insert_pixbuf signal. Rename delete_text to delete_range since it
7121         also deletes pixbufs and child anchors. This almost closes bug
7122         40245 (still need to deal with child anchors)
7123
7124         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Add
7125         insert_pixbuf, change signal names as appropriate, change types of
7126         signals taking marks/tags to have the specific type, not just
7127         G_TYPE_OBJECT
7128         
7129         * gtk/gtkmain.c (gtk_get_current_event_state): Add this function; 
7130         closes bug 40051
7131
7132         * gtk/gtkoptionmenu.c (gtk_option_menu_set_history): clean up
7133         unnecessary remove_contents() call
7134         (gtk_option_menu_class_init): add a "changed" signal, closes
7135         bug 40039
7136         (gtk_option_menu_update_contents): emit "changed" if the 
7137         active menu item changes
7138
7139         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done): fix bad
7140         cast to GtkObject, reported by Jonas Borgstrom
7141         (gdk_pixbuf_loader_finalize): don't close the loader on finalize;
7142         we can't do stuff with side effects in finalize. Instead, spew a
7143         warning if the loader isn't closed.
7144
7145         * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_finalize): free
7146         colormap in here, non-X ports probably need to sync to this change
7147
7148         * gdk/x11/gdkdrawable-x11.c (gdk_x11_set_colormap): remove 
7149         assertion that colormap != NULL, you can set the colormap to NULL
7150         if you like.
7151         
7152         * Makefile.am: remove gtk-config-2.0
7153
7154         * configure.in: Use pkg-config to locate GLib. Remove
7155         separated-out GMODULE_LIBS, GMODULE_CFLAGS; these were not used,
7156         and the gmodule libs/cflags were in GLIB_LIBS GLIB_CFLAGS anyhow.
7157         Use pkg-config to locate Pango. Output correct Pango libs to
7158         gdk-2.0.pc.in. Fix test for FREETYPE_CONFIG (typo fix).
7159
7160         * Makefile.am (pkgconfig_DATA): install only target-specific pc
7161         files
7162         (install-data-local): symlink gtk+-2.0.pc and gdk-2.0.pc to the
7163         X11 pc files
7164
7165         * gtk+-2.0.pc.in (Requires): require the GDK for the current target
7166         unref from here
7167
7168 2001-01-03  Alexander Larsson  <alla@lysator.liu.se>
7169
7170         * configure.in:
7171         Change GTK_NO_CHECK_CASTS to G_DISABLE_CAST_CHECKS.
7172
7173 Tue Jan  2 16:23:05 2001  Owen Taylor  <otaylor@redhat.com>
7174
7175         * gtk/gtktextlayout.c
7176         (gtk_text_layout_move_iter_to_previous_line): Fix unitialized
7177         variable when moving back onto a single line.
7178
7179 2001-01-01  Havoc Pennington  <hp@redhat.com>
7180
7181         * gtk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
7182
7183         * gdk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
7184
7185         * configure.in (LIBTOOL_EXPORT_OPTIONS): define
7186         LIBTOOL_EXPORT_OPTIONS with options to control symbol export
7187
7188 2001-01-01  Havoc Pennington  <hp@redhat.com>
7189
7190         * gtk/gtktexttagprivate.h: uscore-prepend all the stuff in here.
7191
7192         * gtk/gtk-boxed.defs (GtkTextAttributes): Add boxed type for 
7193         GtkTextAttributes
7194
7195         * gtk/gtktexttag.c: Fix up GtkTextAttributes copying to close bug 
7196         #40246
7197         (gtk_text_attributes_copy_values): rename from 
7198         gtk_text_attributes_copy
7199         (gtk_text_attributes_copy): a more standard GTK copy function, 
7200         which returns a new object
7201
7202 2001-01-01  Havoc Pennington  <hp@redhat.com>
7203
7204         * gtk/gtktreeview.c: Adapt to GtkTreeSelection changes
7205         
7206         * gtk/gtktreeselection.c (_gtk_tree_selection_set_tree_view):
7207         don't fill in tree_view->priv->selection, kind of an unexpected
7208         side effect
7209
7210         * gtk/gtkcellrenderertext.c: Remove definition of _ and include
7211         gtkintl.h
7212         
7213         * gtk/gtkcellrenderer.c: Remove definition of _ and include
7214         gtkintl.h
7215         (gtk_cell_renderer_get_property): remove calls to g_value_init
7216
7217         * gtk/gtkcellrendererpixbuf.c: Remove definition of _ and include
7218         gtkintl.h
7219
7220         * gtk/gtkcellrenderertextpixbuf.c: Remove definition of _ macro
7221         and include gtkintl.h
7222         (gtk_cell_renderer_text_pixbuf_class_init): remove spaces from
7223         property names
7224
7225         * gtk/gtktreeselection.c (_gtk_tree_selection_new): rename, return
7226         GtkTreeSelection
7227         (_gtk_tree_selection_new_from_with_view): rename, return
7228         GtkTreeSelection
7229         (_gtk_tree_selection_set_tree_view): rename with uscore
7230         (gtk_tree_selection_get_selected): fill in the "model" out param
7231         first, so it gets filled in even if we return at the top of the 
7232         function
7233         (gtk_tree_selection_real_select_all): add a comment and an else{}
7234         to clarify this a bit
7235         (gtk_tree_selection_real_unselect_all): add the same else{}
7236
7237         * gtk/gtktreeselection.h: Rename new, new_with_tree_view, and
7238         set_tree_view to have underscore prefixes, move them to the
7239         private header, fix return type of new_with_tree_view
7240         (struct _GtkTreeSelection): mark struct
7241         fields private  
7242
7243         * gtk/gtktreemodel.c (gtk_tree_model_get_flags): return
7244         GtkTreeModelFlags, not a guint
7245         (gtk_tree_path_prev): return gboolean not gint
7246         (gtk_tree_path_up): return gboolean not gint
7247
7248         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): make get_flags
7249         return GtkTreeModelFlags, not a guint
7250
7251         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_finalize): check
7252         that child model is non-null before unrefing it
7253         (g_value_int_compare_func): make this a qsort compare func, not 
7254         a boolean predicate
7255
7256         * gtk/gtktreemodelsort.h: rename gtk_tree_model_set_sort_column,
7257         (add -umn to the end), and mark it unimplemented
7258         (gtk_tree_model_sort_resort): remove, this wasn't implemented, and 
7259         I don't see what it's for - doesn't the model always sort itself?
7260         (gtk_tree_model_sort_set_compare): this had the wrong signature
7261
7262         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_attributes):
7263         Fix the docs to say that it destructively replaces existing
7264         attributes (previously said that it added attributes).
7265         (gtk_tree_view_column_set_visible): canonicalize bool before
7266         equality testing. Also, check for realization before
7267         hiding/showing the tree_column->window; if this window could exist
7268         before realization, then it's busted and needs fixing, we can't 
7269         create GDK resources pre-realization. Also, remove
7270         superfluous queue_resize(), since set_size() does that for us.
7271         (gtk_tree_view_column_set_col_type): check realization before 
7272         using tree_column->window
7273
7274         * gtk/gtktreedatalist.c: fix filename in copyright notice
7275
7276 2000-12-31  Havoc Pennington  <hp@pobox.com>
7277
7278         * gtk/gtktextview.c: Rearrange all the
7279         scroll-while-dragging-or-selecting code to be different, not
7280         necessarily better. ;-)
7281         (gtk_text_view_scroll_to_mark): Change this
7282         function to take within_margin as a fraction instead of a pixel
7283         value, and to take alignment arguments (indicating where to align 
7284         the mark inside the visible area)
7285         
7286         * gtk/testtextbuffer.c (fill_buffer): fix bad cast of GtkTextTag
7287         to GtkObject
7288
7289         * gtk/gtktextiter.c (gtk_text_iter_set_line_offset): change
7290         behavior so that offsets past the end of the line are not 
7291         allowed, and an offset equal to the line length moves the iterator
7292         to the next line
7293         (gtk_text_iter_set_line_index): make parallel change
7294         (gtk_text_iter_get_bytes_in_line): add this function
7295         
7296         * gtk/gtktextbtree.c (_gtk_text_line_byte_locate): change handling
7297         of byte indexes off the end of the line; byte index at the end of
7298         the line now returns FALSE and doesn't fill in the requested
7299         values, byte index past the end of the line is an error.  Also,
7300         don't allow -1 offset anymore, since its meaning is unclear.
7301
7302         This change exposes some bug in visual cursor motion, where we
7303         end up with a huge invalid byte index; needs fixing. Symptom of 
7304         bug is a crash when you hit up arrow.
7305         
7306         (_gtk_text_line_char_locate): match the change to byte_locate
7307
7308         * gtk/gtktextiter.c (find_by_log_attrs): Handle iteration backward
7309         from start of line properly. fixes bug reported by Mikael
7310         Hermansson where backspace would delete all text before the
7311         cursor.
7312
7313 2000-12-30  Tor Lillqvist  <tml@iki.fi>
7314
7315         * gdk/win32/gdkwindow-win32.c
7316         (gdk_window_impl_win32_get_visible_region): New function, as in
7317         the X11 backend.
7318         (gdk_window_new, gdk_window_set_title): Use g_locale_from_utf8()
7319         instead of duplicating the same code here.
7320
7321         * gdk/win32/gdkwin32.h (GDK_COLORMAP_PRIVATE_DATA): Use
7322         GDK_COLORMAP macro.
7323
7324         * gdk/win32/gdkevents-win32.c (gdk_event_funcs): Use NULL as
7325         destroy function.
7326         (gdk_event_translate): Use GDK_COLORMAP_PRIVATE_DATA to correctly
7327         access that.
7328
7329         * gtk/gtk.def: Update.
7330
7331         * gtk/makefile.mingw.in: Use glib-genmarshal from $(GLIB)/gobject.
7332
7333 2000-12-30  Havoc Pennington  <hp@pobox.com>
7334
7335         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Set the system
7336         colormap on input only windows, to avoid special cases all over
7337         the code for these windows.
7338
7339 2000-12-26  Tor Lillqvist  <tml@iki.fi>
7340
7341         * gdk/win32/gdkvisual-win32.c (gdk_visual_init): Call g_error if
7342         we are on a palettized display ("PseudoColor" in X11), as the code
7343         for that doesn't work anyway, and never has.
7344
7345 2000-12-22  Alexander Larsson  <alexl@redhat.com>
7346
7347         * gdk/linux-fb/gdkkeyboard-fb.c (xlate_io):
7348         Don't use isprint() for chars > 255.
7349
7350 2000-12-21  Havoc Pennington  <hp@redhat.com>
7351
7352         * tests/testtreeview.c: more work
7353
7354 2000-12-21  Alexander Larsson  <alexl@redhat.com>
7355
7356         * docs/README.linux-fb:
7357         Update the docs to the new pangoft2 way.
7358
7359 2000-12-21  Alexander Larsson  <alexl@redhat.com>
7360
7361         * configure.in:
7362         For linux-fb get the pangoft2 cflags and libs. This needs a recent
7363         pango version.
7364         Remove modules/linux-fb/Makefile.
7365
7366         * gdk/linux-fb/gdkdrawable-fb2.c:
7367         Render glyphs using freetype.
7368
7369         * gdk/linux-fb/gdkfb.h:
7370         Add new fb-specific functions needed for managing windows.
7371
7372         * gdk/linux-fb/gdkmain-fb.c:
7373         Remove gdk_font_init/fini() calls.
7374
7375         * gdk/linux-fb/gdkpango-fb.c:
7376         Remove old implementation. Use pangoft2 instead.
7377
7378         * gdk/linux-fb/gdkprivate-fb.h:
7379         Remove PangoFBFont and related stuff.
7380
7381         * gdk/linux-fb/gdkwindow-fb.c:
7382         Implement drawable->get_visible_region.
7383         Implement support for _gdk_window_set_child_handler () and
7384         _gdk_window_get_decorations().
7385
7386         * modules/Makefile.am:
7387         Remove linux-fb subdir.
7388
7389         * modules/linux-fb/*:
7390         Removed all.
7391         
7392 2000-12-20  Jonathan Blandford  <jrb@redhat.com>
7393
7394         * gtk/gtkcellrenderer*.c (::get_property): remove g_value_init
7395         calls, as they are no longer needed.
7396
7397         * gtk/gtktreemodelsort.c: Fix up the comparison code.
7398         
7399         * gtk/gtktreemodel.h: Start work on ::reordered signal.  Need to
7400         figure out how to emit a signal on an interface.
7401
7402 2000-12-20  Havoc Pennington  <hp@redhat.com>
7403
7404         * tests: new directory to contain tests, gtk/test* should move
7405         here sometime (with appropriate on-cvs-server hackery)
7406
7407         * tests/testtreeview.c, tests/Makefile.am: a test
7408         
7409         * configure.in (AC_OUTPUT): add tests/Makefile
7410
7411         * gtk/gtktexttag.c (gtk_text_tag_get_property): Add "invisible"
7412         and "invisible_set" which were missing
7413
7414         * gtk/gtkrbtree.h: some cheesy indentation fix
7415         
7416 2000-12-20  Alexander Larsson  <alexl@redhat.com>
7417
7418         * gtk/gtkinvisible.c (gtk_invisible_realize):
7419         Attach the style to the window so that the style it is not
7420         leaked when unrealizing the window.
7421
7422 2000-12-18  Havoc Pennington  <hp@redhat.com>
7423
7424         * gtk/gtktextview.c (gtk_text_view_delete_from_cursor): do
7425         begin/end user action where appropriate
7426         (gtk_text_view_commit_handler): add begin/end user action
7427
7428         * gtk/gtktextbuffer.c: add begin/end user action signals, and
7429         bracket interactive operations with begin/end user action pair.
7430         
7431         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): remove
7432         "interactive" arg from insert_text and delete_text signals.
7433         Add begin_user_action, end_user_action signals
7434         (gtk_text_buffer_begin_user_action): 
7435         (gtk_text_buffer_end_user_action): New functions to delimit 
7436         a user-visible action
7437
7438         * gtk/gtkmarshal.list: update to reflect changes to gtktextbuffer
7439         signals.
7440         
7441 2000-12-18  Havoc Pennington  <hp@redhat.com>
7442
7443         * gdk/gdkevents.c (gdk_event_get_state): wow, that implementation
7444         was pretty non-working.
7445
7446         * gtk/testtext.c (fill_file_buffer): make this a bit more robust
7447         by passing the length to g_utf8_validate().
7448
7449 2000-12-16  Havoc Pennington  <hp@pobox.com>
7450
7451         * gtk/gdk-pixbuf-loader.h, gtk/gdk-pixbuf-loader.c: 
7452         Port to GObject, can go back in gdk-pixbuf after setting up 
7453         a gdk-pixbuf-marshal.h header over there.
7454
7455         * gtk/gtktreeview.c: s/SEPERATOR/SEPARATOR/g;
7456         (gtk_tree_view_class_init): specify GTK_TYPE_ADJUSTMENT for signal
7457         args
7458         (gtk_tree_view_init): don't unset GTK_NO_WINDOW, it shouldn't be
7459         set
7460         (gtk_tree_view_realize_buttons): don't gtk_widget_show() buttons
7461         here, do it when we create the buttons later
7462         (gtk_tree_view_realize_buttons): add some g_return_if_fail 
7463         (gtk_tree_view_map): paranoia checks that column->button is shown 
7464         and unmapped
7465         (gtk_tree_view_size_request): only request visible children.
7466         Move header size calculation in here, for cleanliness, and 
7467         to maintain invariants for child widgets if we eventually 
7468         let users set different children inside the buttons
7469         (gtk_tree_view_map_buttons): factor out code to map buttons,
7470         since it was being called several times
7471         (gtk_tree_view_size_allocate_buttons): move_resize the drag
7472         windows instead of just moving them; their height may change 
7473         if we allow random widgets in there, or the theme changes.
7474         (gtk_tree_view_size_allocate): move button size allocation 
7475         above emitting the scroll signals, to ensure a sane state when we
7476         hit user code
7477         (gtk_tree_view_button_release): remove queue_resize after
7478         tree_view_set_size(), set_size() will handle any resize queuing
7479         that's needed
7480         (gtk_tree_view_focus_in): just queue a draw, don't fool with
7481         draw_focus goo
7482         (gtk_tree_view_focus): use gtk_get_current_event() and
7483         gdk_event_get_state()
7484         (gtk_tree_view_deleted): don't queue_resize() after calling set_size()
7485         (gtk_tree_view_build_tree): fix a "if (foo); {}" bug - i.e. remove
7486         semicolon
7487         (gtk_tree_view_create_button): show the button here
7488         (gtk_tree_view_button_clicked): actually emit the clicked signal
7489         on the column
7490         (_gtk_tree_view_set_size): return right away if the size is
7491         unchanged, as a cheesy optimization
7492         (gtk_tree_view_setup_model): rename set_model_realized to 
7493         setup_model to match the flag that indicates whether we've 
7494         called it
7495         (gtk_tree_view_get_hadjustment): create adjustment if it doesn't
7496         exist, because set_scroll_adjustment does that and it shouldn't
7497         matter what order you call these in
7498         (gtk_tree_view_get_vadjustment): ditto
7499         (gtk_tree_view_set_headers_visible): canonicalize the bool, 
7500         for paranoia
7501         (gtk_tree_view_set_headers_visible): call
7502         gtk_tree_view_map_buttons() instead of using cut-and-paste code
7503         (gtk_tree_view_append_column): clarify whether the return value
7504         is the count of columns before or after, and do the increment 
7505         separately from the return statement so you can tell from the code.
7506         (gtk_tree_view_remove_column): ditto
7507         (gtk_tree_view_insert_column): ditto
7508         (gtk_tree_view_get_column): remove g_return_if_fail for columns
7509         outside the existing range, the docs say that outside-range
7510         columns are allowed, so we handle them as documented. (Presumably
7511         this allows a nice loop with column != NULL as test.)
7512         (gtk_tree_view_move_to): document what 0.0, 0.5, 1.0 alignments 
7513         mean (left/right/center etc.).
7514         (gtk_tree_view_collapse_all): only queue a draw if we're mapped
7515         (gtk_tree_view_expand_row): add docs
7516         (gtk_tree_view_collapse_row): add docs
7517
7518         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clicked): new
7519         function to emit the clicked signal on a column
7520         
7521         * gdk/gdkevents.c (gdk_event_get_state): new function, to get the
7522         state of an event
7523         (gdk_event_get_time): don't treat GDK_SCROLL 
7524         as a button event, remove default case from switch so gcc 
7525         will whine if we don't explicitly handle all event types
7526
7527         * gtk/gtktreeselection.h: added some FIXME 
7528         
7529         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): rename
7530         "columns" to "n_columns" and "column" to "columns" for clarity
7531
7532 2000-12-16  Havoc Pennington  <hp@pobox.com>
7533         
7534         * gtk/gtktextiter.c: General cleanup of the log attr iteration
7535         stuff. This should make e.g. the delete key work again in the
7536         text widget...
7537         (gtk_text_iter_forward_cursor_positions): handle negative count
7538         (gtk_text_iter_backward_cursor_positions): handle negative count
7539         (gtk_text_iter_forward_word_ends): handle negative count
7540         (gtk_text_iter_backward_word_starts): handle negative count
7541
7542         * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktexttag.h,
7543         gtk/gtktexttag.c, gtk/gtktexttagtable.h, gtk/gtktexttagtable.c, 
7544         gtk/gtktextbuffer.h, gtk/gtktextbuffer.c: Convert everything to 
7545         GObject. No doubt will cause breakage.
7546
7547         * demos/gtk-demo/textview.c: remove hacks around
7548         non-GObject-ification of the text objects
7549
7550         * demos/gtk-demo/main.c (main): use g_object_set() to manipulate 
7551         the text tag
7552         
7553 2000-12-14  Havoc Pennington  <hp@pobox.com>
7554
7555         * configure.in: only AC_DEFINE(HAVE_XFT) if we actually determined
7556         that we have Xrender
7557
7558 Thu Dec 14 20:22:31 2000  Owen Taylor  <otaylor@redhat.com>
7559
7560         * gdk/{gdkdrawable.[ch],gdkpixmap.c,gdkwindow.c,x11/gdkwindow.c}:
7561         Add two virtualized functions gdk_drawable_get_clip_region - to
7562         get the clip region when drawing.
7563         
7564         * gdk/gdkwindow.c (gdk_window_invalidate_rect): Rewrite to simple
7565         use invalidate_region.
7566
7567         * gdk/gdkwindow.c (gdk_window_invalidate_region): Clip to visible
7568         region.
7569
7570         * acconfig.h configure.in: Check for Xft. For now, assume
7571         that if Xft is found, Pango was compiled with Xft support
7572         as well.
7573
7574         * gdk/gdkcolor.h gdk/x11/gdkcolor-x11.c: Add 
7575         gdk_colormap_query_color().
7576         
7577         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_glyphs): Draw
7578         with Xft if appropriate.
7579
7580         * gdk/x11/gdkpango-x11.c (gdk_pango_context_get): Create
7581         a pangoxft context if we have XFT and the environment
7582         variable GD_USE_XFT is set.
7583         
7584         * gdk/x11/gdkx.h (struct _GdkGCX11): Cache the fg_pixel
7585         and also possibly an XftDraw structure.
7586
7587         * gtk/gtkfontsel.c: Handle the case where the font from the
7588         style doesn't match any of the fonts a bit better.
7589         
7590         * gtk/testgtk.c: Add tabs between directional segments for
7591         hebrew/arabic test. (Not really necessary, just a little
7592         prettier.)
7593
7594 2000-12-14  Havoc Pennington  <hp@redhat.com>
7595
7596         * gtk/testtext.c (fill_file_buffer): fix unicode validation when
7597         reading a file
7598
7599 2000-12-14  Havoc Pennington  <hp@redhat.com>
7600
7601         * gtk/gtktextbtree.c (_gtk_text_btree_validate_line): remove
7602         unused call to get_last_line()
7603
7604         * gtk/gtkobject.c (gtk_object_add_arg_type): add G_TYPE_POINTER
7605         here until boxed is working (and maybe after that - we should
7606         really not gratuitously break old code)
7607
7608         * gtk/gtktexttag.c (gtk_text_tag_class_init): add commented-out
7609         specific types for font_desc and tabs args, move them to
7610         GTK_TYPE_POINTER for now, waiting on g_param_spec_boxed() to get 
7611         fixed. Move GdkColor args to GTK_TYPE_POINTER also.
7612
7613         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): temporarily
7614         use GTK_TYPE_POINTER for signal signatures as a hack-around
7615
7616         * gtk/gtk-boxed.defs: Add boxed types for PangoFontDescription and
7617         PangoTabArray
7618
7619         * gtk/gtktextlayout.c (line_display_iter_to_index): 
7620         make static
7621         (line_display_index_to_iter): make static
7622
7623         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
7624         to marshal a string not a boxed
7625
7626         * gtk/gtkmarshal.list: add marshaller for GtkTextBuffer:insert_text
7627
7628         * gtk/testtext.c (fill_file_buffer): don't use g_utf8_next_char
7629         since the UTF-8 isn't validated yet
7630
7631         * gtk/gtktextsegment.c (char_segment_check_func): don't require
7632         lines to end in '\n'
7633         
7634         * gtk/gtktextview.c (gtk_text_view_move_cursor): update to use
7635         forward_to_delimiters, and grapheme boundaries
7636         (gtk_text_view_delete_from_cursor): properly handle non-newline
7637         delimiters, and grapheme boundaries
7638
7639         * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): rename
7640         to gtk_text_iter_forward_to_delimiters, and make it work properly
7641         if empty lines end with a character other than '\n'
7642
7643         * gtk/gtktextiter.h, gtk/gtktextiter.c: Add movement by cursor
7644         position
7645
7646 2000-12-15  Tor Lillqvist  <tml@iki.fi>
7647
7648         * gdk/makefile.{mingw.in,msc} (gdk_OBJECTS): Add gdkkeys.
7649
7650         * gtk/gtk.def
7651         * gdk/gdk.def: Update.
7652
7653         * gdk/win32/gdkmain-win32.c
7654         * gdk/win32/gdkkeys-win32.c: New file. Move some functions from
7655         gdkmain-win32.c here.
7656
7657         * gdk/win32/makefile.mingw.in (all): No need to make
7658         gdk-win32res.o here, the makefile one step up will call us to make
7659         it.
7660
7661         * gdk/win32/makefile.{mingw.in,msc} (gdk_win32_OBJECTS): Add
7662         gdkkeys-win32.
7663
7664         * gdk/win32/gdkcolor-win32.c: Silence gcc -Wall.
7665
7666         * gdk/win32/gdkevents-win32.c (gdk_events_init): Remove leftover
7667         call to g_source_add().
7668
7669         * gdk/win32/gdkgc-win32.c (BitmapToRegion): Plug memory
7670         leak. Thanks to Andreas Kemnade.
7671
7672 2000-12-13  Havoc Pennington  <hp@pobox.com>
7673
7674         * gtk/gtktextbtree.h: Remove double _ in front of some functions
7675
7676         * gtk/gtktext*.[hc]: update accordingly
7677         
7678 2000-12-13  Havoc Pennington  <hp@pobox.com>
7679
7680         * gtk/gtktextbtree.h: Put _ in front of every function in this 
7681         header file
7682
7683         * gtk/gtktext*.[hc]: update to reflect renamed btree functions
7684
7685 2000-12-13  Alex Larsson  <alexl@redhat.com>
7686
7687         * gdk/linux-fb/gdkmouse-fb.c (mouse_devs):
7688         Add support for ps2 intellimouse.
7689
7690         * gdkkeyboard-fb.c:
7691         Move shift-F1 repaint handling to xlate handler only.
7692         
7693         * docs/README.linux-fb:
7694         Add imps2 to docs.
7695         Document the new refresh keys.
7696         
7697 Tue Dec 12 23:46:44 2000  Tim Janik  <timj@gtk.org>
7698
7699         * gtk/stock-icons/Makefile.am: doh, this was broken beyond believe.
7700
7701         * gtk/gtkbox.c: change property types from (u)long to (u)int for
7702         ::position and ::padding.
7703
7704         * gtk/gtkcontainer.c: make ::border_width an INT property.
7705
7706         * gtk/gtkpacker.c: make ::position an INT property.
7707
7708         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed):
7709         guard against NULL h/v scrollbars, since this is used at construction
7710         time.
7711
7712         * gtk/gtkclist.[hc]: nuked gtk_clist_construct(), implemented
7713         internal gtk_clist_constructor().
7714
7715         * gtk/gtkctree.[hc]: nuked gtk_ctree_construct(), implemented
7716         gtk_ctree_constructor().
7717
7718         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): property
7719         ::pulse_step should use ARG_PULSE_STEP, not ARG_FRACTION.
7720
7721         * docs/reference/Makefile.am: fun stuff, disabled docs generation
7722         again, gtk-scan.c needs to introspec paramspecs, not GtkAgs.
7723
7724         * gtk/gtkwidget.[hc]:
7725         removed gtk_widget_setv(), gtk_widget_getv(), gtk_widget_newv()
7726         and gtk_widget_get().
7727         (gtk_widget_new): use g_object_new_valist().
7728         (gtk_widget_set): use g_object_set_valist().
7729
7730         * gtk/gtkobject.[hc]:
7731         removed gtk_object_arg_get_info(), gtk_object_getv(),
7732         gtk_object_query_args(), gtk_object_newv(),
7733         gtk_object_class_add_signals(),
7734         gtk_object_class_user_signal_new(),
7735         gtk_object_class_user_signal_newv(),
7736         gtk_object_arg_set(), gtk_object_arg_get(),
7737         gtk_object_args_collect(),
7738         gtk_object_default_construct(),
7739         gtk_object_constructed(),
7740         GTK_CONSTRUCTED and GTK_OBJECT_CONSTRUCTED().
7741         removed nsignals, signals and n_args members from GtkObjectClass.
7742         (gtk_object_new): use g_object_new_valist().
7743         (gtk_object_set): use g_object_set_valist().
7744         (gtk_object_get): use g_object_get_valist().
7745         
7746         * gtk/gtkcompat.h: define gtk_object_default_construct().
7747         
7748         * gtk/gtktypeutils.c (gtk_type_new): create constructed objects via
7749         g_object_new().
7750
7751         * gtk/*.c: removed gtk_object_class_add_signals() from class_init()
7752         fucntions, cleaned up method assignments (make sure your structures
7753         are setup properly before calling out). removed all GTK_CONSTRUCTED
7754         hacks ;)
7755
7756 Tue Dec 12 11:52:16 2000  Owen Taylor  <otaylor@redhat.com>
7757
7758         * gtk/gtkclist.c (gtk_clist_optimal_column_width): Fix 
7759         off-by-one error in checks. (Dave Lambert)
7760
7761 2000-12-12  Alexander Larsson  <alexl@redhat.com>
7762
7763         * gdk/linux-fb/gdkkeyboard-fb.c (xlate_close, raw_close):
7764         Don't free gdk_fb_keyboard twice.
7765
7766 Tue Dec 12 08:24:42 2000  Tim Janik  <timj@gtk.org>
7767
7768         * gtk/testgtk.c:
7769         (create_tooltips): 
7770         (create_statusbar): get rid of object_signal:: GtkObject argument uses,
7771         use GObject swapped_signal:: properties instead.
7772
7773         * gtk/gtkcellrenderertoggle.c: 
7774         * gtk/gtkcellrenderertextpixbuf.c: 
7775         * gtk/gtkcellrenderertext.c: 
7776         * gtk/gtkcellrendererpixbuf.c: 
7777         * gtk/gtkcellrenderer.c:
7778         * gtk/gtktreeviewcolumn.c: s/[sg]et_param/[sg]et_property/, fixed
7779         missing warnings for invalid property ids, install properties
7780         with g_object_class_install_property() now.
7781         
7782         * gtk/gtksignal.c:
7783         (gtk_signal_emit): let g_signal_emit_valist() collect the values for us.
7784         
7785 Wed Oct 25 14:17:43 2000  Owen Taylor  <otaylor@redhat.com>
7786         
7787         * gtk/gtkwidget.[ch] (gtk_widget_is_focus): Add a function
7788         to determine if a window is the focus widget within
7789         its toplevel.
7790
7791         * gtk/gtkcontainer.[ch]: Fix the return type of ::focus
7792         to be boolean.
7793
7794         * gtk/gtkcontainer.c (gtk_container_real_focus): Move handling 
7795         of the case where the container CAN_FOCUS to here instead
7796         of having it in each individual move-the-focus place.
7797
7798         * gtk/gtkcontainer.c: Rewrite handling of left-right and up-down
7799         focusing to be geometric in a much more obvious sense. Arrowing
7800         around is still non-intuitive because it isn't perfect and
7801         because entries, etc, grab the arrow keys, but it at least
7802         usually will do what you expect now.
7803         
7804         * gtk/gtknotebook.[ch]: Many cleanups. Moved docs inline in this
7805         file.
7806
7807         * gtk/gtknotebook.c: Change tabs to be a single item in
7808         the focus chain. Make movement of focus on tabs with arrow
7809         keys wrap around.
7810         
7811         * gtk/gtknotebook.c (gtk_notebook_find_child): Add
7812         CHECK_FIND_CHILD macro to give informative error messages
7813         instead of silent returns.
7814
7815         * gtk/gtknotebook.c (gtk_notebook_init): Set the RECEIVES_DEFAULT 
7816         flag since we handle GdkReturn on the tabs.
7817
7818         * gtk/gtknotebook.c (gtk_notebook_expose_tabs): Invalidate
7819         windows rather than sending expose events directly.
7820
7821         * gtk/gtknotebook.[ch] docs/Changes-2.0.txt: Move structure 
7822         definition for GtkNotebookPage into .c file, since it is private.
7823
7824         * gtk/testgtk.c (create_notebook): Add option for 
7825         testing borderless notebook.
7826
7827         * gtk/testgtk.c (page_switch): Removed egregious poking
7828         around in GTK+ internals.
7829
7830         * docs/widget-system.txt: Remove references to GTK_REDRAW_PENDING.
7831
7832         * gtk/gtkclist.[ch]: Remove key press handler, handle focusing
7833         properly through gtk_clist_focus. Make the title headers a
7834         single item in the tab-focus chain, and make left-right wrap
7835         around.
7836
7837         * gtk/gtkwindow.c (gtk_window_focus): Add a custom
7838         focus method so that wrapping around works properly.
7839
7840         * gtk/gtktreeview.c: Remove calls to gtk_container_set_focus_child() - 
7841         that is handled for the widget now. 
7842
7843 Mon Dec 11 11:41:12 2000  Owen Taylor  <otaylor@redhat.com>
7844
7845         * gtk/gtkinvisible.c (gtk_invisible_init): Flag invisible
7846         widgets as TOPLEVEL.
7847
7848         * gtk/gtkwidget.c (gtk_widget_queue_resize): Don't assume
7849         TOPLEVEL widgets are containers.
7850
7851         * gtk/gtkinvisible.h: Remove useless include.
7852
7853 2000-12-11  Havoc Pennington  <hp@redhat.com>
7854
7855         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): 
7856         Handle chopping off \r\n and 0x2029 in addition to \n before
7857         passing to PangoLayout
7858
7859         * gtk/gtkimcontextsimple.c
7860         (gtk_im_context_simple_get_preedit_string): 
7861         return an empty string if no match is pending
7862
7863         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): add
7864         assertion that the returned preedit string was sane
7865
7866         * gtk/gtktext*.[hc], gtk/testtext.c, gtk/testtextbuffer.c:
7867         s/gtk_text_iter_next_char/gtk_text_iter_forward_char/g;
7868         s/gtk_text_iter_prev_char/gtk_text_iter_backward_char/g;
7869
7870 Mon Dec 11 10:02:26 2000  Owen Taylor  <otaylor@redhat.com>
7871
7872         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_finalize): 
7873         Fix up finalizer to chain to its parent.
7874
7875 2000-12-11  Alexander Larsson  <alexl@redhat.com>
7876
7877         * docs/README.linux-fb (GDK_KEYBOARD_TYPE):
7878         Clearified the difference between the keyboard types. Wrote a note
7879         about the magic sysrq key to get out of raw mode.
7880
7881 2000-12-09  James Henstridge  <james@daa.com.au>
7882
7883         * gdk/linux-fb/gdkmouse-fb.c (GdkFBMouseDevice): add prot struct
7884         member to hold masks for detecting the start of a protocol packet.
7885         (mouse_devs): add packet start masks for ps2 and ms device types.
7886         Left the mask for fidmour blank, as I have no idea what it should
7887         be.
7888         (handle_mouse_io): skip bytes until we get to the start of a
7889         packet.  My Logitech mouse seems to be passing an extra NULL pad
7890         byte, and GPM does a similar thing here.
7891         (gdk_fb_mouse_ms_open): changed error message to not say psaux, as
7892         this is the ms mouse driver.
7893         (gdk_fb_mouse_ms_packet): fix up button handling, which was
7894         completely broken except for button1.  It was checking the wrong
7895         bit in the packet for the status of the right mouse button, and
7896         wrongly assuming right == button2 rather than 3.  I fixed that and
7897         also added support for middle button (button2).
7898
7899 2000-12-08  Havoc Pennington  <hp@redhat.com>
7900
7901         * gtk/gtktextbtree.c (gtk_text_btree_insert): fix breakage here
7902         that cause a segfault on text insertion
7903
7904         * gtk/gtktextchild.c (gtk_text_child_anchor_queue_resize): fix 
7905         warning
7906
7907         * gtk/gtktextiter.c (test_log_attrs): use
7908         _gtk_text_buffer_get_line_log_attrs to speed things up a bit
7909
7910         * gtk/gtktextbuffer.c (_gtk_text_buffer_get_line_log_attrs): 
7911         Get log attrs for a line, using a cache stored on the buffer
7912         
7913         * gtk/gtkcolorsel.h (GTK_COLOR_SELECTION_GET_CLASS): fix typo,
7914         reported by Jeff Franks
7915
7916 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
7917
7918         * gdk/linux-fb/gdkmouse-fb.c (gdk_fb_mouse_ms_open):
7919         /dev/ttyS0 -> /dev/mouse
7920
7921 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
7922
7923         * gdk/linux-fb/gdkfont-fb.c (gdk_fontset_load):
7924         Added dummy gdk_fontset_load.
7925
7926 2000-12-08  Alexander Larsson  <alexl@redhat.com>
7927
7928         * docs/README.linux-fb:
7929         * docs/Makefile.am:
7930         Initial GtkFB docs.
7931         
7932         * gdk/linux-fb/Makefile.am:
7933         Define GDK_DATA_PREFIX.
7934
7935         * gdk/linux-fb/gdkmain-fb.c:
7936         Fix typo.
7937         Change default display to /dev/fb0.
7938
7939         * gdk/linux-fb/gdkpango-fb.c:
7940         Add $(prefix)/share/fonts/ to font path.
7941         
7942 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
7943
7944         * gdk/linux-fb/gdkkeyboard-fb.c:
7945         New file containing the abstracted keyboard driver. Most code
7946         taken from gdkinput-ps2.c
7947
7948         * gdk/linux-fb/gdkinput-ps2.c:
7949         Removed file.
7950         
7951         * gdk/linux-fb/Makefile.am:
7952         Added gdkkeyboard-fb.c, removed gdkinput-ps2.c.
7953
7954         * gdk/linux-fb/gdkcolor-fb.c:
7955         display->fb was renamed to display->fb_fd.
7956
7957         * gdk/linux-fb/gdkcursor-fb.c:
7958         gdk_mouse_get_info -> gdk_fb_mouse_get_info
7959
7960         * gdk/linux-fb/gdkinput.c:
7961         Moved gdk_input_init here from gdkinput-ps2.c
7962
7963         * gdk/linux-fb/gdkmain-fb.c:
7964         display->fb was renamed to display->fb_fd.
7965         Now the tty and the console is opened here instead
7966         of in the keyboard driver. Also check GDK_VT to see what
7967         tty to open.
7968         Move gdk_beep () here from gdkinput-ps2.c
7969         gdk_mouse_get_info -> gdk_fb_mouse_get_info
7970
7971         * gdk/linux-fb/gdkmouse-fb.c:
7972         Add header.
7973         gdk_mouse_get_info -> gdk_fb_mouse_get_info
7974         Return correct keyboard modifiers.
7975         GDK_MOUSETYPE -> GDK_MOUSE_TYPE for consistancy
7976
7977         * gdk/linux-fb/gdkprivate-fb.h:
7978         Add tty and vt info to display.
7979         Add orignal modeinfo storage to display
7980         Update global functions
7981
7982         * gdk/linux-fb/gdkwindow-fb.c:
7983         Added gdk_fb_window_find_focus().
7984         gdk_mouse_get_info -> gdk_fb_mouse_get_info
7985
7986 2000-12-07  Havoc Pennington  <hp@pobox.com>
7987
7988         * gdk/x11/gdkkeys-x11.c (gdk_keymap_lookup_key): fix name of 
7989         function, noticed by Alex
7990
7991 2000-12-06  Elliot Lee  <sopwith@redhat.com>
7992
7993         * configure.in: Detect freetype properly
7994
7995         * modules/basic/Makefile.am, gdk/linux-fb/Makefile.am: Make use of
7996         above.
7997
7998 2000-12-06  Alexander Larsson  <alexl@redhat.com>
7999
8000         * gdk/linux-fb/Makefile.am:
8001         Add gdkmouse-fb.c
8002         
8003         * gdk/linux-fb/gdkmouse-fb.c:
8004         New file. Abstracted the mouse drivers a bit.
8005
8006         * gdk/linux-fb/gdkcursor-fb.c:
8007         The cursor hide/show functions was moved here from gdkinput-ps2.c.
8008
8009         * gdk/linux-fb/gdkinput-ps2.c:
8010         Removed old mouse handling code. Moved cursor handling code
8011         to gdkcursor-fb.c, moved gdk_fb_window_send_crossing_events() to
8012         gdkwindow-fb.c. gdk_input_get_mouseinfo was renamed to
8013         gdk_mouse_get_info.
8014
8015         * gdk/linux-fb/gdkmain-fb.c:
8016         Pass NULL pointers for x,y in gdk_mouse_get_info call.
8017
8018         * gdk/linux-fb/gdkprivate-fb.h:
8019         Removed public gdk_fb_find_common_ancestor, added and renamed
8020         functions for the new mouse handling code.
8021
8022         * gdk/linux-fb/gdkwindow-fb.c:
8023         Moved gdk_fb_window_send_crossing_events here. added global
8024         variable gdk_fb_window_containing_pointer. made
8025         gdk_fb_find_common_ancestor static. gdk_input_get_mouseinfo was
8026         renamed to gdk_mouse_get_info.
8027
8028 2000-12-06  Alexander Larsson  <alexl@redhat.com>
8029
8030         * gdk/linux-fb/gdkevents-fb.c:
8031         Update to match latest gmain/gsource changes.
8032
8033         * gdk/linux-fb/gdkinput-ps2.c:
8034         Bogus gdk_keymap_get_entries_for_keycode implementation so that
8035         it links. Will be implemented later.
8036
8037 2000-12-03  Havoc Pennington  <hp@pobox.com>
8038
8039         * gdk/Makefile.am: add gdkkeys.[hc]
8040
8041         * gdk/gdkkeys.h, gdk/gdkkeys.c: Move all the keyval stuff to these
8042         files from gdk.h, gdk.c; add GdkKeymap type and operations on it.
8043
8044         * acconfig.h, configure.in: add checks and command line options
8045         for XKB
8046
8047         * gdk/x11/gdkkeys-x11.c: Implement the above functions
8048         
8049         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Put the keycode
8050         and group in the key event
8051
8052         * gdk/gdkevents.h (struct _GdkEventKey): Add a hardware_keycode
8053         field with the low-level hardware key code, and a group
8054         field with the keyboard group
8055
8056         * gdk/x11/gdkprivate-x11.h: include config.h for HAVE_XKB,
8057         and declare a couple globals used for keymap handling
8058         
8059         * gtk/gtkimcontextsimple.c: Implement ISO 14755 input method,
8060         hold down Shift-Control and type a hex number to get a Unicode 
8061         character corresponding to the hex number
8062         (gtk_im_context_simple_get_preedit_string): Fix cursor position
8063         (return bytes not chars)
8064
8065 2000-12-05  Elliot Lee  <sopwith@redhat.com>
8066
8067         * gdk/gdkcolor.h: Make GdkColor specify element sizes
8068         to avoid waste on 64-bit platforms.
8069
8070 Tue Dec  5 15:49:31 2000  Owen Taylor  <otaylor@redhat.com>
8071
8072         * INSTALL: Fix link to PNG home, remove reference
8073         to fribidi.
8074
8075         * gdk/x11/gdkevents-x11.c: Fix up for new GMain API.
8076         
8077         * gdk/win32/gdkevents-win32.c: Fix up for new GMain API. (Not
8078         tested.)
8079
8080         * gtk/gtkcheckmenuitem.c: Permanently turn on
8081         always_show_toggle.
8082
8083         * gtk/gtkclist.c (gtk_clist_get_pixtext): Allow mask to 
8084         be NULL. (Vladimir Klebanov, #26545)
8085
8086         * gtk/gtkspinbutton.c (gtk_spin_button_insert_text): Fix 
8087         some signed/unsigned comparison problems. (#6510,
8088         David Kaelbling)
8089
8090         * gtk/gtkwidget.[ch] (gtk_widget_is_ancestor): Change
8091         return type to boolean (Oskar Liljeblad, #18648)
8092
8093 2000-12-05  Alexander Larsson  <alexl@redhat.com>
8094
8095         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_display_new):
8096         Remove bogus colormap setting.
8097
8098 2000-12-05  Alexander Larsson  <alexl@redhat.com>
8099
8100         * gdk/linux-fb/gdkcolor-fb.c:
8101         More complete colormap handling. Now GdkRGB work in 8 bpp modes.
8102
8103         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_image):
8104         Must set colormap.
8105         
8106 Tue Dec  5 13:17:53 GMT 2000  Tony Gale <gale@gtk.org>
8107
8108         * docs/tutorial/gtk-tut.sgml: DND updates
8109
8110 2000-12-05  Alexander Larsson  <alla@lysator.liu.se>
8111
8112         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
8113         Remove old debug g_warning().
8114         (gdk_fb_draw_drawable): The src argument can be either a wrapper
8115         or an implementation, just pass the implementation to draw_drawable_2.
8116         
8117         * gdk/linux-fb/gdkprivate-fb.h:
8118         Added GDK_IS_DRAWABLE_IMPL_FBDATA()
8119
8120         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
8121         clear and invalidate area when window is destroyed.
8122         (send_map_events): Remove old commented out code.
8123
8124 2000-12-05  Alexander Larsson  <alexl@redhat.com>
8125
8126         * gdk/linux-fb/gdkpango-fb.c:
8127         Use italic instead of oblique in font aliases.
8128         
8129         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic,
8130         _gdk_fb_gc_calc_state): Support GDK_XOR, add g_warning for
8131         other unsupported functions.
8132
8133 2000-12-04  Havoc Pennington  <hp@redhat.com>
8134
8135         * gtk/gtkpaned.c (gtk_paned_expose): fix this to be sane
8136
8137         * gtk/gtkvpaned.c (gtk_vpaned_expose): Add an expose handler
8138
8139         * gtk/gtkhpaned.c (gtk_hpaned_expose): Add an expose handler
8140
8141         * gtk/gtknotebook.c (gtk_notebook_draw_tab): put in a temporary 
8142         hack to avoid infinite loops (synthetic expose event) - 
8143         Owen has more appropriate fixes in a branch he'll check in later.
8144
8145         * gtk/gtktextiter.c (gtk_text_iter_ends_line): handle paragraph
8146         separator, CR, and CRLF as line ends
8147
8148         * gtk/gtktextbtree.c (gtk_text_btree_insert): on insertion, break
8149         into lines using pango_find_paragraph_boundary(); other bits of
8150         the widget are still going to be broken if the boundary isn't '\n'
8151         though
8152
8153 2000-12-04  Alexander Larsson  <alexl@redhat.com>
8154
8155         * gdk/linux-fb/gdkfont-fb.c (gdk_text_width): Divide size by 2, not
8156         multiply.
8157
8158         * gdk/linux-fb/gdkpango-fb.c:
8159         Copied some 26.6 scaling macros from pango to clean up the rounding.
8160         (pango_fb_font_get_glyph_info): Correct sign on x value.
8161
8162         * gdk/linux-fb/gdkprivate-fb.h:
8163         Removed unreferenced external functions.
8164
8165         * modules/linux-fb/Makefile.am: Use ` instead of '.
8166
8167         * modules/linux-fb/basic.c:
8168         Remove dead code. In particular the dummy lang engine which broke all
8169         pango layouts in GtkFB. Don't include tables-big.i anymore.
8170
8171         * modules/linux-fb/tables-big.i:
8172         Upgrade to latest version from pango. Left for reference, basic_ranges
8173         moved to basic.c.
8174         
8175 2000-12-04  Havoc Pennington  <hp@redhat.com>
8176
8177         Fix bugs Alex found:
8178         
8179         * gtk/gtktooltips.c (gtk_tooltips_force_window): nuke connection
8180         to "draw"
8181
8182         * gtk/gtkdnd.c (gtk_drag_highlight): nuke connection to "draw"
8183
8184         * gtk/gtkcolorsel.c (palette_new): nuke connection to "draw"
8185
8186         * gtk/gtklistitem.c (gtk_list_item_expose): Put the old _draw() 
8187         implementation in here, apparently the expose() implementation was
8188         dead code.
8189
8190 2000-12-04  Alexander Larsson  <alexl@redhat.com>
8191
8192         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
8193         Return positive descent.
8194
8195 2000-12-02  Havoc Pennington  <hp@pobox.com>
8196
8197         * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove "draw" virtual
8198         method and signal
8199         
8200         * gtk/gtkwidget.c (gtk_widget_draw): Now just queues a draw then
8201         calls gdk_window_process_updates() to push the exposes through
8202         (gtk_widget_class_init): No more draw signal, no
8203         gtk_widget_real_draw()  
8204         
8205         * gtk/gtkbin.c (gtk_bin_draw): remove
8206
8207         * gtk/gtkbox.c (gtk_box_draw): remove
8208
8209         * gtk/gtkbutton.c (gtk_button_draw): remove
8210
8211         * gtk/gtkcalendar.c (gtk_calendar_draw): remove
8212
8213         * gtk/gtkcheckbutton.c (gtk_check_button_draw): remove
8214
8215         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_draw): remove
8216
8217         * gtk/gtkclist.c (gtk_clist_draw): remove
8218
8219         * gtk/gtkentry.c (gtk_entry_draw): remove
8220
8221         * gtk/gtkeventbox.c (gtk_event_box_draw): remove
8222
8223         * gtk/gtkfixed.c (gtk_fixed_draw): remove
8224
8225         * gtk/gtkframe.c (gtk_frame_draw): remove
8226
8227         * gtk/gtkhandlebox.c (gtk_handle_box_draw): remove
8228
8229         * gtk/gtkhpaned.c (gtk_hpaned_draw): remove
8230
8231         * gtk/gtklayout.c (gtk_layout_draw): remove
8232
8233         * gtk/gtklist.c (gtk_list_draw): remove
8234
8235         * gtk/gtklistitem.c (gtk_list_item_draw): remove
8236
8237         * gtk/gtkmenu.c (gtk_menu_draw): remove
8238
8239         * gtk/gtkmenubar.c (gtk_menu_bar_draw): remove
8240
8241         * gtk/gtkmenuitem.c (gtk_menu_item_draw): remove
8242
8243         * gtk/gtknotebook.c (gtk_notebook_draw): remove
8244
8245         * gtk/gtkoptionmenu.c (gtk_option_menu_draw): remove
8246
8247         * gtk/gtkpacker.c (gtk_packer_draw): remove
8248
8249         * gtk/gtkrange.c (gtk_range_draw): remove
8250
8251         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_draw): remove
8252
8253         * gtk/gtkspinbutton.c (gtk_spin_button_draw): remove
8254
8255         * gtk/gtktable.c (gtk_table_draw): remove
8256
8257         * gtk/gtktearoffmenuitem.c (gtk_tearoff_menu_item_draw): remove
8258
8259         * gtk/gtktext.c (gtk_text_draw): remove
8260
8261         * gtk/gtktextview.c (gtk_text_view_draw): remove
8262
8263         * gtk/gtktogglebutton.c (gtk_toggle_button_draw): remove
8264
8265         * gtk/gtktoolbar.c (gtk_toolbar_draw): remove
8266
8267         * gtk/gtktree.c (gtk_tree_draw): remove
8268
8269         * gtk/gtktreeitem.c (gtk_tree_item_draw): remove
8270
8271         * gtk/gtktreeview.c (gtk_tree_view_draw): remove
8272
8273         * gtk/gtkviewport.c (gtk_viewport_draw): remove
8274
8275         * gtk/gtkvpaned.c (gtk_vpaned_draw): remove
8276
8277         * gtk/gtkvscale.c (gtk_vscale_draw): remove
8278
8279         * gtk/gtkwindow.c (gtk_window_draw): remove
8280
8281 2000-20-01  Anders Carlsson  <andersca@gnu.org>
8282
8283         * gtk/gtktogglebutton.c (gtk_toggle_button_draw): Fix bug when
8284         a GtkToggleButton is both insensitive and active, it was being
8285         drawn by the GtkButton draw handler which doesn't check the
8286         state. Now it's calling gtk_toggle_button_paint instead.
8287         
8288 2000-12-01  Havoc Pennington  <hp@redhat.com>
8289
8290         * gtk/gtktextdisplay.c (gtk_text_layout_draw): don't create
8291         dangling pointers to the appearance attributes from the 
8292         line display
8293
8294         * gdk/gdkdraw.c (gdk_drawable_get_image): allow negative
8295         width/height to mean "full width/height of drawable"
8296
8297         * gtk/gtktextview.h, gtk/gtktextview.c: Implement double/triple
8298         click to select word/line
8299         
8300         * gtk/gtktextiter.c (test_log_attrs): include paragraph delimiters 
8301         when getting log attrs. Get a slice, so that pixmaps and stuff
8302         are properly handled.
8303
8304         * gtk/gtktextbuffer.c (paste): Fix pasting to work properly if you
8305         paste into the selection (replaces selection now, previously
8306         crashed or added to selection). Reveals longstanding btree bug -
8307         select multiple lines, middle-click on the selection, boom. This
8308         isn't related to my changes though.
8309
8310         * gtk/gtkentry.c (gtk_entry_move_forward_word): Update to reflect
8311         PangoLogAttrs changes
8312         (gtk_entry_move_backward_word): ditto
8313
8314         * gtk/gtktextlayout.h, gtk/gtktextlayout.c: Make the iter motion
8315         functions return bool whether the iter moved onto a
8316         dereferenceable position.
8317  
8318         * gtk/gtktextview.h, gtk/gtktextview.c: Add a bunch of public
8319         functions for motion in terms of display lines.
8320
8321         * gtk/gtktextmark.c (gtk_text_mark_get_buffer): Add function to
8322         get the buffer a mark is inside
8323         
8324 2000-12-01  Alexander Larsson  <alexl@redhat.com>
8325
8326         * gdk/linux-fb/Makefile.am:
8327         * modules/linux-fb/Makefile.am:
8328         Freetype 2 final uses freetype-config
8329
8330         * gdk/linux-fb/gdkpango-fb.c:
8331         Upgrade to use Freetype 2 final.
8332         More flexible support for font aliases, this also fixes a bug with
8333         GtkFontSelector, as the aliases must be visible in the font/family list,
8334         or GtkFontSelector reads uninitialized memory.
8335
8336 2000-11-30 Hidetoshi Tajima  <tajima@eng.sun.com>
8337
8338         * modules/input/gtkimcontextxim.c (setup_im): Add NULL argument to
8339         XGetIMValues to properly terminate variable argument list, and do
8340         NULL return check for ic_values and xim_styles.
8341
8342         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset):
8343         Restore preedit state after XmbResetIC().
8344         
8345         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_get_ic):
8346         XvaCreateNestedList() should take XvaNestedList, but not
8347         XvaNestedList*.
8348
8349         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset,
8350         preedit_draw_callback, preedit_caret_callback): Match
8351         "preedit-changed" signal name to "preedit_changed" to be
8352         consistent to the spec.
8353
8354         * gtk/gtkimcontextsimple.c (check_table):
8355         Match "preedit-changed" to "preedit_changed" to be consistent
8356         to the spec.
8357
8358 Thu Nov 30 23:03:04 2000  Owen Taylor  <otaylor@redhat.com>
8359
8360         * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Properly handle
8361         gc->clip_region == NULL>
8362
8363 2000-11-30  Tor Lillqvist  <tml@iki.fi>
8364
8365         Changes by Hans Breuer:
8366         
8367         * gdk/win32/gdkwindow-win32.c (gdk_window_set_geometry_hints):
8368         Dont't use negative width and height as max_hints. This fixes
8369         Owen's recent testgtk changes for win32.
8370
8371         * gdk/win32/gdkgc-win32.c (gdk_win32_hdc_get,
8372         gdk_win32_hdc_release): These are exported and may be called with
8373         other drawable types than our GdkDrawableImplWin32 (?).
8374
8375         * gdk/gdkwindow.c: Backing store appears to work on Windows now,
8376         so always #define USE_BACKING_STORE.
8377
8378         * gtk/gtktextdisplay.c (render_layout_line): Use g_print instead
8379         of printf for debugging output.
8380
8381         * gtk/gtktextlayout.c (allocate_child_widgets): Ditto.
8382         
8383         * gtk/gtktextview.c (gtk_text_view_child_allocated): Ditto.
8384
8385         * gtk/gtkmain.h (GTKMAIN_C_VAR): Win32 fix for dllimport
8386         declaration.
8387
8388         * gtk/gtktexttypes.h: Ditto.
8389
8390         * gtk/gtklabel.c (gtk_label_set_markup_with_accel): Return a value
8391         (GDK_VoidSymbol) also if in case of arg check failure.
8392
8393         * gtk/gtkimcontextsimple.c
8394         (gtk_im_context_simple_get_preedit_string): Don't assign cursor
8395         position to the pointer, but to the variable it points to.
8396
8397         * gtk/makefile.msc.in (DEFINES): Define GTK_VERSION.
8398
8399         * gtk/gtk.def: Updates.
8400
8401 2000-11-29  Elliot Lee  <sopwith@redhat.com>
8402
8403         * gtk/gtkmodelsimple.c: Inherits from GTK_TYPE_OBJECT, not
8404         GTK_TYPE_TREE_MODEL.
8405
8406 2000-11-29  Alexander Larsson  <alexl@redhat.com>
8407
8408         * gdk/linux-fb/gdkfont-fb.c (gdk_font_from_description):
8409         Set the size of the font from the description.
8410         (gdk_text_width): Gross hack that calculates the width
8411         of text by text_length * size/2. This is necessary because
8412         GtkLabel does some ugly gtk_string_width call to calculate
8413         an good size.
8414         (linux-fb/gdkprivate-fb.h): Removed unused field FT_Face.
8415
8416 Wed Nov 29 13:39:19 GMT 2000  Tony Gale <gale@gtk.org>
8417
8418         * docs/tutorial/gtk-tut.sgml: DND updates
8419
8420 2000-11-29  Alexander Larsson  <alexl@redhat.com>
8421
8422         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_clear_area):
8423         If you pass width or height == 0 to gdk_window_clear_area they
8424         should be calculated from the window size.
8425
8426 2000-11-29  Alexander Larsson  <alexl@redhat.com>
8427
8428         * gdk/linux-fb/gdkinput-ps2.c (move_pointer): If there is
8429         a grab, but no grab-cursor, use the cursor from the grabbed
8430         window. (gdk_fb_window_send_crossing_events): Send normal
8431         enter/leave notifications if grab and owner_events == TRUE.
8432
8433 2000-11-29  Alexander Larsson  <alexl@redhat.com>
8434
8435         * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
8436         Do implicit button grabs, even if the window doesn't
8437         want the event.
8438         (gdk_fb_window_send_crossing_events): If there is a
8439         grab, only the grabbed window gets normal enter/leave
8440         notifications. On ungrab go from grabbed window to current.
8441         Don't send any notification to b when propagating from c -> b.
8442         If setting a grab on window, don't set prev_window.
8443         (handle_mouse_input): Send enter/leave events to the window the
8444         mouse is over, not the grabbed one.
8445         
8446 2000-11-28  Elliot Lee  <sopwith@redhat.com>
8447
8448         * gdk/gdkregion-generic.c: Zap warning.
8449         * modules/input/Makefile.am: Only build im-xim if USE_X11 is enabled
8450         * gtk/gtkrc.c: s/strcpy/memcpy/ to save a few nanoseconds.
8451
8452 2000-11-28  Alexander Larsson  <alla@lysator.liu.se>
8453
8454         * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
8455         The cursor should be hidden if it is part of either the
8456         source or destination region. Not only if it is in both.
8457         (gdk_window_set_transient_for): Silence warnings.
8458
8459 2000-11-28  Alexander Larsson  <alexl@redhat.com>
8460
8461         * gdk/linux-fb/mifillarc.c (miFillArcSliceSetup):
8462         The default mode in X is Pie Arcs, therefore that is
8463         what Gtk+ uses.
8464
8465 2000-11-28  Alexander Larsson  <alexl@redhat.com>
8466
8467         * gdk/linux-fb/gdkinput-ps2.c:
8468         Implement correct EnterNotify/LeaveNotify:
8469         (gdk_fb_window_send_crossing_events): New function that sends
8470         all GdkCrossingEvents from the last mouse-window to the specified
8471         destination.
8472         (gdk_fb_window_visibility_crossing): Removed function.
8473         (handle_mouse_input): Use gdk_fb_window_send_crossing_events()
8474         (send_button_event, gdk_fb_cursor_reset): Use gdk_window_at_pointer
8475         instead of gdk_window_get_pointer() for better readability.
8476
8477         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab,
8478         gdk_fb_pointer_ungrab): Use gdk_fb_window_send_crossing_events.
8479
8480         * gdk/linux-fb/gdkprivate-fb.h:
8481         removed gdk_fb_window_visibility_crossing, added
8482         gdk_fb_window_send_crossing_events and gdk_fb_find_common_ancestor.
8483
8484         gdk/linux-fb/gdkwindow-fb.c (gdk_fb_find_common_ancestor):
8485         New function that finds the least common ancestor of two windows.
8486         (gdk_window_show, gdk_window_hide):
8487         Use gdk_fb_window_send_crossing_events.
8488         (gdk_fb_window_move_resize): Send configure events to toplevel
8489         windows. Use gdk_fb_window_send_crossing_events.
8490
8491 2000-11-27  Havoc Pennington  <hp@redhat.com>
8492
8493         * gtk/gtkprivate.h (enum): Remove a trailing comma
8494
8495 2000-11-27  Federico Mena Quintero  <federico@helixcode.com>
8496
8497         * gtk/gtkspinbutton.c (gtk_spin_button_set_adjustment): Connect to
8498         the "changed" callback of the adjustment.  We need to redraw the
8499         spin button's arrows when the adjustment's range changes.
8500         (adjustment_changed_cb): Draw the arrows.
8501         (gtk_spin_button_value_changed): Draw the arrows.
8502
8503 2000-11-23  Alexander Larsson  <alexl@redhat.com>
8504
8505         * gdk/linux-fb/gdkselection-fb.c:
8506         Initial selection implementation.
8507
8508         * gtk/gtkselection.c:
8509         if GDK_WINDOWING_FB defined, include linux-fb/gdkfb.h and look up
8510         requestor in gtk_selection_request.
8511         
8512         * gdk/linux-fb/gdkfb.h, gdk/linux-fb/gdkglobals-fb.c:
8513         Added gdk_selection_property atom.
8514
8515         * gdk/linux-fb/gdkprivate-fb.h:
8516         Export _gdk_selection_window_destroyed.
8517         Removed mask_off_x/y from GdkCursorPrivateFB.
8518         Removed hbearing, added top, left to PangoFBGlyphInfo.
8519
8520         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
8521         Call _gdk_selection_window_destroyed
8522         (_gdk_windowing_window_init): Don't call gdk_cursor_new() before
8523         the root window has been created.
8524         (static_dx_hack, static_dy_hack, compare_draw_rects,
8525         gdk_fb_window_move_resize): Remove unnecessary sort of rectangles
8526         in region. They are already sorted. Instead just traverse them in
8527         reverse if draw_direction < 0.
8528         
8529         * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
8530         Double-clicks must be sent after the normal button_press.
8531         (gdk_fb_cursor_unhide): Remove usage of mask_off_x/y. Clean up.
8532         
8533         * gdk/linux-fb/gdkgeometry-fb.c (gdk_window_scroll):
8534         Pass _gdk_fb_screen_gc instead of NULL.
8535
8536         * gdk/linux-fb/gdkmain-fb.c (_gdk_windowing_init_check):
8537         Initialize gdk_selection_property.
8538         (gdk_event_make): Remove unused code.
8539
8540         * gdk/linux-fb/gdkcursor-fb.c:
8541         Make the pixmap for the cursor the same size as the mask. Also remove
8542         the mask_off_x/y fields in GdkCursorPrivateFB and combine
8543         _gdk_cursor_new_from_pixmap() and gdk_cursor_new_from_pixmap()
8544         Now the whole cursor is visible.
8545
8546         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
8547         Fix bug where xdest+height instead of ydest+height was used
8548         to calculate if the source and dest overlapped. This fixes the
8549         redraw bug when the main window in testgtk was scrolled when
8550         partially covered by a tall window.
8551         Copy rectangles in region in order depending on draw_direction.
8552         Also moved the draw_direction flipping of start_y and end_y into
8553         the gc functions, as this might not be what all of them want.
8554         (gdk_fb_draw_lines): Support dashed lines.
8555         (gdk_fb_draw_glyphs): Clean up glyph placement. Also fix positioning
8556         so that the text is positioned correctly (was 1 pixel high).
8557
8558         gdk/linux-fb/gdkgc-fb.c:
8559         Initialize cap_style to GTK_CAP_BUTT. This fixes a problem where
8560         all lines were drawn a pixel to short. Also checked the default of
8561         the rest of the values, and they're the same as X now.
8562
8563         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_glyph_info):
8564         Clean up pixel positioning of the glyphs. Just use bgy->top and
8565         bgy->left. Also used PANGO_PIXEL where appropriate and added 0.5
8566         to all divisions to get correct rounding behaviour.
8567
8568         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_draw_drawable_generic,
8569         gdk_fb_draw_drawable_memmove, gdk_fb_draw_drawable_aa_24):
8570         Moved start_y/end_y flip into draw_drawable implementations.
8571         Flip also x rendering when draw_direction < 0.
8572         Remove unneccesary multiply with draw_direction.
8573
8574 Wed Nov 22 14:11:19 GMT 2000  Tony Gale <gale@gtk.org>
8575
8576         * docs/tutorial/gtk-tut.sgml:
8577           - get rid of gtk_toggle_button_toggled FUD
8578           - start DND section - needs work - based on:
8579                 http://wolfpack.twu.net/docs/gtkdnd/
8580
8581 2000-11-22  Alexander Larsson  <alexl@redhat.com>
8582
8583         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
8584         Correct calculation of font metrics. Now GtkEntrys have sane
8585         size.
8586
8587 2000-11-22  Alexander Larsson  <alexl@redhat.com>
8588
8589         * gdk/gdktypes.h:
8590         Add new type GdkSpan
8591         
8592         * docs/reference/gdk/gdk-sections.txt,
8593         docs/reference/gdk/tmpl/regions.sgml, gdk/gdkregion-generic.c,
8594         gdk/gdkregion.h:
8595         Implement and document gdk_region_spans_intersect_foreach.
8596
8597         * gdk/linux-fb/Makefile.am, gdk/linux-fb/gdkrender-fb.c:
8598         Add new file gdkrender-fb.c which contains all core
8599         rendering code.
8600         Add gdk_fb_fill_rectangle_generic (old rectangle code) and
8601         gdk_fb_fill_rectangle_simple_16, gdk_fb_fill_rectangle_simple_32
8602         (optimized rectangle fillers).
8603
8604         * gdk/linux-fb/gdkdrawable-fb2.c:
8605         Move all rendering code to gdkrender-fb.c.
8606         Change from using GdkRectangles and GdkSegments for spans to GdkSpan.
8607         Use the new span intersection functions in gdk_fb_fill_spans.
8608         gdk_fb_draw_rectangle() clips filled rectangles and calls
8609         gc->fill_rectangle with the result.
8610         gdk_fb_fill_spans() gets extra argument "sorted".
8611
8612         * gdk/linux-fb/gdkevents-fb.c:
8613         Remove unused includes and defines.
8614         New function gdk_fb_get_time() to get correct time for events.
8615
8616         * gdk/linux-fb/gdkinput-ps2.c:
8617         Use gdk method of generating multiple-clicks (gdk_event_button_generate)
8618         Make sure to set the time of all events.
8619
8620         * gdk/linux-fb/gdkmain-fb.c:
8621         Use gdk_fb_get_time ().
8622
8623         * gdk/linux-fb/gdkprivate-fb.h:
8624         New virtual GC calls: fill_span & fill_rectangle.
8625         Export gdk_fb_get_time().
8626         gdk_fb_fill_spans() gets extra argument "sorted".
8627
8628         * gdk/linux-fb/mi*.c:
8629         Use GdkSpan instead of GdkRectangle.
8630         Pass correct sorted to gdk_fb_fill_spans. (sorted value taken
8631         from XFree 4 source)
8632         
8633 2000-11-22    <jrb@redhat.com>
8634
8635         * gtk/gtktreeview.c (gtk_tree_view_calc_size): It's amazing what
8636         reversing the order in an if statement will do.  Doing so managed
8637         to make the treemodelsort half work.  Other half will follow after
8638         I get the insert function fully fixed.
8639
8640 2000-11-21  Elliot Lee  <sopwith@redhat.com>
8641         * gtk/gtkmenushell.h: GdkEventButton->button can occupy significantly
8642         more than 2 bits. Besides, I need to implement an evil hack. :)
8643
8644 Tue Nov 21 14:17:51 GMT 2000  Tony Gale <gale@gtk.org>
8645
8646         * docs/tutorial/gtk-tut.sgml: minor corrections
8647
8648 2000-11-20  Jonathan Blandford <jrb@redhat.com>
8649         * gtk/gtktreemodelsort.h: Add convertion functions to let you
8650           convert to and from relative path's and iters.
8651
8652         * gtk/treestoretest.c: move to having a sorted/unsorted view.  Start
8653           testing sorting functions a bit better.  Currently broken -- will
8654           fix in morning.
8655
8656 2000-11-20  Havoc Pennington  <hp@redhat.com>
8657
8658         * gtk/gtkwidget.c: Documented a bunch of functions in here
8659         (gtk_widget_realize): Warn if you try to realize
8660         a widget with no parent that isn't a toplevel
8661         (gtk_widget_intersect): return a gboolean
8662
8663 2000-11-20  Havoc Pennington  <hp@redhat.com>
8664
8665         * gtk/gtktextview.c, gtk/gtktextlayout.c, gtk/gtktextchild.c,
8666         gtk/testtext.c: Semi-finish widget embedding. Need guffaw
8667         scrolling to be implemented in GDK to finish. Also, right now
8668         we just size_allocate all children on every layout change,
8669         which is pretty lame. Test commented out of testtext.c, 
8670         until it works better.
8671
8672 2000-11-20  Alexander Larsson  <alla@lysator.liu.se>
8673
8674         * gdk/linux-fb/gdkdrawable-fb2.c:
8675         Removed unused arguments from gdk_fb_drawable_get_pixel().
8676
8677         * gdk/linux-fb/gdkinput-ps2.c (handle_input_ps2):
8678         Renamed fidur specific mouse packet data in MouseDevice to
8679         generic. Used it in ps2 mouse handling code to avoid blocking
8680         reads.
8681
8682 Sat Nov 18 18:00:17 2000  Jonathan Blandford  <jrb@redhat.com>
8683
8684         * demos/gtk-demo/main.c: Changed to have the list become
8685         non-italic when the demo window is destroyed through an external
8686         event (like a close button).  Doing so found three bugs in the
8687         widget.
8688
8689         * demos/gtk-demo/*.c (do_*): Changed to return the toplevel window.
8690
8691         * gtk/gtkliststore.c (gtk_list_store_set_cell): emit "change" when
8692         we actually set the cell.
8693
8694         * gtk/gtktreestore.c (gtk_tree_store_set_cell): ditto
8695
8696         * gtk/gtktreeselection.c (gtk_tree_selection_real_select_node):
8697         free a leaked path.  Thanks memprof.
8698
8699 Sat Nov 18 11:58:17 2000  Owen Taylor  <otaylor@redhat.com>
8700
8701         * gdk/gdkrgb.c (gdk_rgb_allocate_images): Fix 
8702         off-by-one error when destroying allocated segments
8703         on failure. (Elliot)
8704
8705 Sat Nov 18 11:45:09 2000  Owen Taylor  <otaylor@redhat.com>
8706
8707         * gtk/gtkcalendar.c: Patch from ChiDeok Hwang to fix
8708         memleaks found by Evan Martin.
8709
8710 Fri Nov 17 20:14:20 2000  Owen Taylor  <otaylor@redhat.com>
8711
8712         * Released 1.3.2
8713         
8714         * NEWS: Updates for 1.3.2
8715
8716 2000-11-17  Tor Lillqvist  <tml@iki.fi>
8717
8718         * gdk/gdkevents.h: Add comment that GdkXEvent isn't only for XEvent,
8719         but in general for window system specific events.
8720
8721         * gtk/gtk.def
8722         * gtk/makefile.mingw.in
8723         * gtk/makefile.msc.in: Update.
8724         
8725         * gtk/gtktexttypes.h: Mark variables for export/import from DLL.
8726
8727 Thu Nov 16 16:11:39 2000  Owen Taylor  <otaylor@redhat.com>
8728
8729         * gtk/Makefile.am (EXTRA_DIST): Do not, in any circumstances,
8730         distribute gtk.immodules.
8731
8732         * gtk/Makefile.am (install-data-local): Don't install the
8733         gtk.immodules file created for the uninstalled modules;
8734         instead run gtk-query-immodules after install
8735
8736 Wed Nov 15 21:51:31 2000  Owen Taylor  <otaylor@redhat.com>
8737
8738         * modules/input/Makefile.am (im_xim_la_LDFLAGS): Point
8739         -rpath to the right install location.
8740
8741         * modules/input/Makefile.am (im_inuktitut_la_LDFLAGS): Remove
8742         -export-dynamic.
8743
8744         * gtk/gtkthemes.c (gtk_theme_engine_get): Set engine->name
8745         properly.
8746
8747 2000-11-15  Havoc Pennington  <hp@pobox.com>
8748
8749         * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): Apply
8750         patch from Mikael Hermansson to temporarily stop blinking while
8751         the user is using the keyboard to type or navigate. 
8752
8753         Also, when blinking, stay on for longer than we stay off. Also,
8754         return from start_cursor_blink if !cursor_visible, to save
8755         checking that flag all over the place before we call
8756         start_cursor_blink.
8757
8758 Thu Nov 16 01:25:51 2000  Robert Brady  <robert@suse.co.uk>
8759
8760         * gtk/gtkrc.*: Remove the locale-specific gtkrc's, as they
8761         only contain a "fontset" line, which is now ignored.
8762
8763         * gtk/gtkentry.c (gtk_entry_button_release): Make 
8764         double-click-to-select-word work.
8765         
8766 Wed Nov 15 20:16:54 2000  Owen Taylor  <otaylor@redhat.com>
8767
8768         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): 
8769         Don't move back one char when we are actually at the end of the 
8770         paragraph.
8771
8772 2000-11-15  Robert Brady  <robert@suse.co.uk>
8773
8774         * modules/input/iminuktitut.c (inuktitut_compose_seqs): 
8775         'o' < 'p'.
8776         
8777         * gtk/gtkmain.c: s/CODSET/CODESET/, include <libintl.h> for
8778         bind_textdomain_codeset.
8779
8780         (gtk_init_check): Make the warning about translating default:LTR
8781         sterner.
8782         
8783 Wed Nov 15 18:39:40 2000  Owen Taylor  <otaylor@redhat.com>
8784
8785         * **/Makefile.am : remove unecessary rules for win32-specific
8786         config-substituted targets. If you want these rules, use
8787         --enable-maintainer-mode (called automatically by autogen.sh).
8788         Stops a lot of unneccessary make-time warnings.
8789
8790         * gtk/gtktext{layout,display}.c: Factor in total width as
8791         well as screen when figuring alignment for word-wrap as well as
8792         no wrap; this is necessary to handle lines that cannot be wrapped
8793         at all.
8794
8795 2000-11-15  Havoc Pennington  <hp@redhat.com>
8796
8797         * gtk/testtext.c: Implement essential color cycling feature
8798
8799 2000-11-15  Havoc Pennington  <hp@redhat.com>
8800
8801         * gtk/gtktextview.c (changed_handler): Invalidate the side windows
8802         when we invalidate the main window.
8803
8804         * gtk/testtext.c (create_view): Get rid of text_changed_callback,
8805         GtkTextView will now invalidate the side windows for us when text
8806         changes.
8807
8808 Wed Nov 15 16:02:20 2000  Owen Taylor  <otaylor@redhat.com>
8809
8810         * gtk/gtktextview.c (changed_handler): Call scroll_calc_now()
8811         unconditionally, since we may need to update the horizontal
8812         scrollbars even if the height didn't change.
8813
8814         * gtk/gtktextlayout.c (add_preedit_attrs): Always get
8815         the extra attrs, since some of them affect size.
8816
8817         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Factor in
8818         x_offset correctly.
8819
8820 2000-11-15  Havoc Pennington  <hp@redhat.com>
8821
8822         * gtk/gtktextlayout.c (set_para_values): If indent is negative,
8823         don't move the first line out into the margin, instead move the
8824         whole paragraph in order to make space for the first line within 
8825         the margin
8826
8827 2000-11-15  Havoc Pennington  <hp@redhat.com>
8828
8829         * gtk/gtktextview.c (changed_handler): offset redraw rect by
8830         xoffset in addition to yoffset, so horizontal scrolling doesn't
8831         break redraws
8832
8833 2000-11-15  Havoc Pennington  <hp@redhat.com>
8834
8835         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Remove extra pixel
8836         from the cursor
8837         (render_layout_line): fix reversed test that caused weird
8838         underlines to get drawn
8839
8840 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
8841
8842         * gdk/linux-fb/gdkprivate-fb.h:
8843         Fix debug macros.
8844         
8845 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
8846
8847         * gdk/linux-fb/gdkprivate-fb.h:
8848         Added virtual functions set_pixel, get_color,
8849         fill_span and draw_drawable to the GC.
8850         Added global _gdk_fb_screen_gc to use instead of
8851         NULL when drawing to the screen.
8852         Added _gdk_fb_gc_calc_state() prototype.
8853
8854         * gdk/linux-fb/gdkgc-fb.c:
8855         Call _gdk_fb_gc_calc_state() on any gc state change.
8856
8857         * gdk/linux-fb/gdkglobals-fb.c:
8858         Add _gdk_fb_screen_gc
8859                 
8860         * gdk/linux-fb/gdkdrawable-fb2.c:
8861         _gdk_fb_gc_calc_state() calculates best functions
8862         for the GC state and depth.
8863         Moved bpp specialized code to separate functions.
8864         Added optimized 24 bpp AA draw_drawable.
8865
8866         * gdk/linux-fb/gdkevents-fb.c:
8867         Silence gcc warning.
8868
8869         * gdk/linux-fb/gdkimage-fb.c:
8870         Use _gdk_fb_screen_gc
8871
8872         * gdk/linux-fb/gdkwindow-fb.c:
8873         Init and use _gdk_fb_screen_gc
8874
8875         * gdk/linux-fb/mitypes.h:
8876         Remove unused types.
8877
8878 2000-11-14  Havoc Pennington  <hp@pobox.com>
8879
8880         * gtk/gtktextlayout.c (add_cursor): use PANGO_PIXELS() to convert
8881         to pixels
8882
8883 2000-11-14  Havoc Pennington  <hp@pobox.com>
8884
8885         * gtk/testtextbuffer.c (fill_buffer): change "offset" to "rise"
8886
8887         * gtk/gtktexttypes.h (GTK_TEXT_UNKNOWN_CHAR): Add macro for
8888         unknown char, no real reason we were using a variable. 
8889         Remove gtk_text_unknown_char variable. Fix all the text widget
8890         files accordingly.
8891
8892         * gtk/gtktexttypes.c: Change "unknown character" to 0xFFFC, 
8893         since the Unicode spec seems to prefer that character for our
8894         purposes.
8895
8896 Wed Nov 15 02:18:01 2000  Robert Brady  <robert@suse.co.uk>
8897
8898         * gtk/gtkrc.c (gtk_rc_get_im_module_file): The return 
8899         value of g_getenv() isn't freeable, so g_strdup it.
8900
8901         * modules/input/inuktitut.c: Inuktitut input method.
8902
8903         * modules/input/Makefile.am: Build this.
8904         
8905 2000-11-14  Elliot Lee  <sopwith@redhat.com>
8906
8907         * gtk/Makefile.am: Install gtk.immodules, needed for operation
8908         of gtk programs.
8909
8910 Tue Nov 14 20:13:06 2000  Owen Taylor  <otaylor@redhat.com>
8911
8912         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): Fix
8913         reversed > that was causing Home to go to end of previous line.
8914
8915         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_filter_keypress): Ignore
8916         modified-keypresses (leave for bindings.)
8917
8918         * modules/input/Makefile.am: Remove useless -export-dynamic
8919         from module LDFLAGS.
8920
8921 2000-11-14  Havoc Pennington  <hp@redhat.com>
8922
8923         * gdk/gdkpango.c (gdk_draw_layout_line): Draw underlines one pixel
8924         higher.
8925
8926         * gtk/gtktextdisplay.c (render_layout_line): Take rise into
8927         account. Also, render rise, underline, background, etc. for
8928         pixbufs as well as text. Also, draw underlines one pixel higher.
8929
8930         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): Add a
8931         PangoAttribute for the rise, so it gets drawn properly. Also,
8932         add the GtkTextAppearance attribute for pixbuf/widget segments
8933         as well; we should go ahead and have rise, underline, background,
8934         stipple work for those
8935
8936         * gtk/gtktexttag.c: Rename "offset" property to "rise" to match
8937         Pango
8938
8939 2000-11-15  Tor Lillqvist  <tml@iki.fi>
8940
8941         * gtk/makefile.{mingw,msc}.in (gtk_OBJECTS): Add new objects.
8942
8943         * gtk/gtk.def: Update.
8944
8945         * gtk/gtkrc.c: Can't check for G_OS_WIN32 until glib.h has been
8946         included.
8947         (gtk_rc_get_im_module_file): Use run-time installation directory
8948         on Win32.
8949
8950         * gdk/win32/rc/gdk.rc: Remove.
8951         * gdk/win32/rc/gdk.rc.in: New file.
8952         * gdk/win32/rc/Makefile.am: New file
8953         * gdk/win32/Makefile.am: Corresponding changes.
8954
8955         * gtk/gtk.rc: Remove.
8956         * gtk/gtk-win32.rc.in: New file.
8957         * gtk/Makefile.am: Corresponding changes.
8958
8959         * configure.in: Corresponding changes.
8960
8961         * gtk/gtkcompat.h.win32: Remove, useless. A distribution already
8962         has a built gtkcompat.h. Developers using CVS code on Win32 can
8963         hand-edit it from gtkcompat.h.in.
8964
8965         * gtk/makefile.{mingw,msc}.in: Correspondingly don't try to make
8966         gtkcompat.h from gtkcompat.h.win32.
8967
8968 2000-11-14  Havoc Pennington  <hp@redhat.com>
8969
8970         * gtk/gtktextview.c (gtk_text_view_drag_motion): Fix drag-and-drop
8971         to default to GDK_ACTION_MOVE if the drag is within a single
8972         widget. Defaults to GDK_ACTION_COPY between widgets.
8973
8974 Mon Nov 13 14:43:48 2000  Owen Taylor  <otaylor@redhat.com>
8975
8976         * demos/Makefile.am (test-inline-pixbufs.h): Fix srcdir != builddir
8977
8978         * gtk/Makefile.am (INCLUDES): Add -I$(builddir)/gtk
8979
8980         * gtk/stock-icons/Makefile.am (gtkstockpixbufs.h): Handles
8981         srcdir != builddir
8982
8983         * modules/input/Makefile.am (INCLUDES): add $(top_srcdir)/gdk
8984
8985         * configure.in (GTK_VERSION): Up to 1.3.2
8986
8987         * modules/input/Makefile.am (im_xim_la_SOURCES): Add 
8988         gtkimcontextxim.h
8989
8990         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): Add
8991         missing doc comment.
8992
8993 2000-11-14  Alexander Larsson  <alexl@redhat.com>
8994
8995         * modules/linux-fb/basic.c:
8996         Use the glib iconv wrappers.
8997
8998 2000-11-13  Havoc Pennington  <hp@pobox.com>
8999
9000         * demos/gtk-demo/textview.c: spiff up the demo a bit; reveals
9001         still more bugs.
9002
9003         * gtk/gtktextview.c (gtk_text_view_value_changed): don't try to
9004         scroll the GdkWindows before realization.
9005
9006 2000-11-13  Havoc Pennington  <hp@redhat.com>
9007
9008         * gtk/gtktextdisplay.c (gtk_text_render_state_update): fix bug 
9009         where GC didn't always get updated properly
9010
9011         * demos/gtk-demo/textview.c (create_tags): Use subattributes
9012         of fonts instead of setting the entire font
9013
9014         * gtk/testtext.c (fill_example_buffer): Use "size" instead of
9015         setting entire font
9016
9017         * gtk/gtkdialog.c (gtk_dialog_add_button): Fix some warnings
9018
9019         * gtk/gtktexttag.h, gtk/gtktexttag.c: Explode font_desc into 
9020         a bunch of individually-settable font attributes. You can still 
9021         use the "font" and "font_desc" args, they just set all the font
9022         attributes at once.
9023
9024 2000-11-13 Elliot Lee <sopwith@redhat.com>
9025
9026         * gdk/gdk.h: Add a couple of missing G_GNUC_CONST's.
9027
9028 Mon Nov 13 14:29:32 2000  Jonathan Blandford  <jrb@redhat.com>
9029
9030         * gtk/gtktreemodel.c (gtk_tree_path_copy): confirm path != NULL
9031         * gtk/gtktreemodel.c (gtk_tree_path_free): ditto
9032
9033         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): make
9034         work better.
9035
9036 2000-11-13  Havoc Pennington  <hp@redhat.com>
9037
9038         * gtk/gtkimmodule.c (gtk_im_module_init): Free the filename of 
9039         the module file.
9040
9041         * gtk/gtktexttag.c (gtk_text_attributes_copy): fix memory leak of
9042         dest->language
9043
9044         * gtk/testtext.c: Test pixels above/below/inside paragraphs
9045         settings
9046
9047         * gtk/gtktextview.c: Implement object args and setters/getters for
9048         all the aspects of the GtkTextAttributes that are not set from
9049         GtkWidget attributes. This is spacing, justification, margins,
9050         etc.
9051
9052         (gtk_text_view_set_arg)
9053         (gtk_text_view_get_arg): implement get/set for editable, wrap mode
9054         args
9055         (gtk_text_view_class_init): Add args for justify, left_margin,
9056         right_margin, indent, and tabs
9057         
9058
9059         * gtk/gtktextlayout.c (set_para_values): fix to display indent
9060         attribute properly
9061
9062         * gtk/gtktexttag.c: Remove left_wrapped_line_margin attribute, 
9063         replace with indent attribute
9064
9065         * gtk/gtktextlayout.c (set_para_values): multiply indent by
9066         PANGO_SCALE
9067
9068         * gtk/gtktextdisplay.c (render_para): Use PangoLayoutIter,
9069         rearranging code to do that
9070         (gtk_text_layout_draw): Pass in the y for the whole LineDisplay,
9071         i.e. don't subtract the top_margin first, just to keep
9072         all margin-futzing in one place.
9073
9074         * gdk/gdkpango.c (gdk_draw_layout): Use PangoLayoutIter
9075
9076         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Remove
9077         special case of last line, Pango now handles this itself.
9078         (gtk_text_layout_get_iter_at_pixel): Fix incorrect clamp of the 
9079         Y coordinate
9080         (gtk_text_layout_move_iter_to_x): port to use PangoLayoutIter
9081         (find_display_line_above): wasn't moving the byte index as it
9082         iterated over lines, so always returned byte 0. Also, port to use
9083         PangoLayoutIter.
9084         (find_display_line_below): same problem as
9085         find_display_line_above. Also, port to use PangoLayoutIter.
9086
9087 2000-11-13  Alexander Larsson  <alexl@redhat.com>
9088
9089         * gdk/linux-fb/*.[ch]:
9090         Massive reindent to gtk+ standard. My hands hurt.
9091
9092         * gdk/linux-fb/gdkcolor-fb.c:
9093         Move GdkColorPrivateFB from inherited to windowing_data
9094
9095         * gdk/linux-fb/gdkcursor-fb.c:
9096         _gdk_cursor_new_from_pixmap made static
9097
9098         * gdk/linux-fb/gdkdnd-fb.c:
9099         GdkDragContextPrivate moved to windowing_data
9100
9101         * gdk/linux-fb/gdkdrawable-fb2.c:
9102         Removed endian.h, use glib endianness macros instead
9103         Some cleanups in the usage of GDK_DRAWABLE_FBDATA
9104         and GDK_DRAWABLE_IMPL_FBDATA
9105
9106         * gdk/linux-fb/gdkfont-fb.c:
9107         Add empty gdk_font_load(). Needed for linking of Gtk+.
9108
9109         * gdk/linux-fb/gdkimage-fb.c:
9110         Removed endian.h, use glib endianness macros instead
9111         Moved GdkImagePrivateFB to windowing_data
9112         gdk_image_new_bitmap didn't always allocate enough
9113         memory.
9114
9115         * gdk/linux-fb/gdkinput-ps2.c:
9116         Added semi-working support for MS serial mice.
9117
9118         * gdk/linux-fb/gdkprivate-fb.h:
9119         s/GdkWindowPrivate/GdkWindowObject/
9120         Removed GdkWindowPrivate typedef
9121         s/GDK_DRAWABLE_P/GDK_DRAWABLE_FBDATA/
9122         Removed GDK_DRAWABLE_P
9123         Move GdkColorPrivateFB from inherited to windowing_data
9124         Moved GdkImagePrivateFB to windowing_data
9125
9126         * gdk/linux-fb/gdkvisual-fb.c:
9127         Removed some unused debug code.
9128
9129         * gdk/linux-fb/gdkwindow-fb.c:
9130         Use stock cursors instead of including X headers.
9131         s/GdkWindowPrivate/GdkWindowObject/
9132
9133         * gdk/linux-fb/mitypes.h:
9134         Removed unused types.
9135
9136         * modules/linux-fb/basic.c:
9137         Use the pango fribidi wrappers.
9138
9139 2000-11-13  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
9140
9141         * gdk/linux-fb/gdkcolor-fb.c, gdk/nanox/gdkmain-nanox.c,
9142         gdk/win32/gdkcolor-win32.c, gdk/win32/gdkwin32id.c,
9143         gdk/x11/gdkcolor-x11.c, gdk/x11/gdkvisual-x11.c, gdk/x11/gdkxid.c,
9144         gtk/gtkgc.c, gtk/gtkrc.c, gtk/gtktext.c: GCompareFunc ->
9145         GEqualFunc where applicable.
9146         
9147         * gdk/linux-fb/gdkpango-fb.c: pango_font_description_compare ->
9148         pango_font_description_equal as changed in pango.
9149         
9150         * gdk/nanox/gdkmain-nanox.c: gdk_xid_compare -> gdk_xid_equal.
9151
9152         * gdk/win32/gdkcolor-win32.c: gdk_colormap_cmp -> gdk_colormap_equal.
9153
9154         * gdk/win32/gdkwin32id.c: gdk_handle_compare -> gdk_handle_equal.
9155
9156         * gdk/x11/gdkcolor-x11.c: gdk_colormap_cmp -> gdk_colormap_equal.
9157
9158         * gdk/x11/gdkvisual-x11.c: gdk_visual_compare -> gdk_visual_equal.
9159
9160         * gdk/x11/gdkxid.c: gdk_xid_compare -> gdk_xid_equal.
9161
9162         * gtk/gtkgc.c: gtk_gc_key_compare -> gtk_gc_key_equal and
9163         gtk_gc_drawable_compare -> gtk_gc_drawable_equal.
9164
9165         * gtk/gtkrc.c: gtk_rc_style_compare -> gtk_rc_style_equal and
9166         gtk_rc_styles_compare -> gtk_rc_styles_equal.
9167
9168 2000-11-12  Havoc Pennington  <hp@pobox.com>
9169
9170         * demos/gtk-demo/Makefile.am (democodedir): change demo install
9171         dir to datadir/gtk+-2.0/demo
9172
9173         * demos/gtk-demo/textview.c: Text widget demo; reveals all 
9174         sorts of text widget and Pango font bugs. Urgh.
9175
9176         * demos/gtk-demo/Makefile.am (demos): Add textview.c
9177
9178         * demos/gtk-demo/main.c (create_tree): Add instructions at top of
9179         tree that you should double click to see the demo. Fix 
9180         types of variables to reflect changed return values from 
9181         GtkTreeStore and GtkTreeViewColumn constructors.
9182
9183         * gtk/gtktextbuffer.c (gtk_text_buffer_new): ref/sink the
9184         newly-created buffer to prepare for GObject semantics
9185
9186         * gtk/testtext.c: don't leak the buffer with GObject semantics
9187
9188         * gtk/testtextbuffer.c: ditto
9189         
9190 2000-11-12  Havoc Pennington  <hp@pobox.com>
9191
9192         Rename this testgtk to gtk-demo to avoid confusion, and 
9193         install it so people can use it as a supplement to 
9194         the documentation.
9195         
9196         * demos/gtk-demo: Moved from demos/testgtk
9197
9198         * demos/testgtk: Removed
9199
9200         * configure.in: make Makefile in gtk-demo
9201         
9202         * demos/gtk-demo/Makefile.am: Install sample source to 
9203         datadir/gtk-demo (maybe there's a better place?), and 
9204         rename the binary to gtk-demo
9205         
9206         * demos/gtk-demo/main.c (load_file): Load installed sample
9207         source if source isn't found in pwd.
9208
9209 2000-11-09  Havoc Pennington  <hp@pobox.com>
9210
9211         * gtk/gtkentry.c (gtk_entry_class_init): Add an "invisible_char" 
9212         argument to set the char displayed when visibility == FALSE
9213         (gtk_entry_create_layout): If !entry->visible, replace 
9214         all chars with the "invisible char"
9215
9216         * gtk/testgtk.c: Test the invisible_char deal
9217         
9218 Mon Nov 13 02:16:33 2000  Robert Brady  <robert@suse.co.uk>
9219
9220         * gtk/gtkstyle.c (gtk_style_init): Fall back to "fixed" if we
9221         can't get a native font in the right encoding.
9222
9223 Mon Nov 13 00:09:29 2000  Robert Brady  <robert@suse.co.uk>
9224
9225         * configure.in: Chinese .pos have been renamed to zh_CN and zh_TW
9226         respectively.
9227
9228 Sun Nov 12 19:11:42 2000  Owen Taylor  <otaylor@redhat.com>
9229
9230         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_next_line):
9231         Fix warning when moving between paragraphs.
9232
9233         * gtk/gtkentry.[ch]: Change move => move_cursor, 
9234         delete => delete_from_cursor, insert => insert_at_cursor
9235
9236 Sun Nov 12 22:52:51 2000  Robert Brady  <robert@suse.co.uk>
9237
9238         * modules/input/imviqr.c: A vietnamese VIQR-based input method.
9239
9240         * modules/input/imthai-broken.c: A Thai input method for use if
9241         Thai keys are really generating Latin1 keysyms.
9242
9243         * modules/input/Makefile.am: Build these.
9244
9245 Sun Nov 12 22:15:35 2000  Robert Brady  <robert@suse.co.uk>
9246
9247         * gtk/gtkfileselection.c, gdk/win32/gdkfont-win32.c: 
9248         g_filename_{to,from}_utf8 now takes an extra parameter.
9249
9250         * gtk/gtkcalendar.c (gtk_calendar_init): Convert output of
9251         strftime into UTF-8.
9252
9253         (column_from_x, gtk_calendar_paint_day_names): Support RTL
9254         calendars.
9255
9256         (gtk_calendar_paint_day_names): Draw day names in the right 
9257         place.
9258         
9259 Sun Nov 12 14:10:09 2000  Owen Taylor  <otaylor@redhat.com>
9260
9261         * gdk/x11/gdkselection-x11.c (gdk_utf8_to_compound_text): Fix
9262         problem with using result of g_get_charset() backwards -
9263         pointed out by Mikael Hermansson <mikeh@bahnhof.se>.
9264
9265         * gtk/gtkwindow.c (gtk_window_compute_hints): Support
9266         negative min_width/height and max_width/height to
9267         mean "requisition"; this allows setting a window
9268         to be user-resizable in only one direction easily.
9269
9270         * gtk/testgtk.c (create_main_window): Remove hard-coded
9271         usize - set a default size in the vertical direction.
9272
9273 Sun Nov 12 13:33:01 2000  Owen Taylor  <otaylor@redhat.com>
9274
9275         * gtk/gtkrange.c: Add some missing casts. Support 
9276         2 and 3 button clicks on the arrows to mean 
9277         "move by pages" and "jump to end". (Like gtkspinbutton)
9278
9279 2000-11-12 Hans Breuer <Hans@Breuer.Org>
9280
9281         * gdk/win32/makefile.msc : reflect build module changes
9282
9283         * gdk/win32/gdkcursor-win32.c : can't cast to impl type directly
9284         from GdkPixmap*, cast implementation member instead.
9285
9286         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_drawable) : The
9287         passed in drawable is of type GdkDrawableImplWin32, the GdkPixmap *src 
9288         maybe either GdkDrawable or GdkDrawableImpl. Corrected all casts, add
9289         more Gdi functions return value checking. 
9290         (gdk_win32_draw_image) : use IMAGE_PRIVATE_DATA to get on the
9291         GdkImagePrivateWin32 *.
9292
9293         * gdk/win32/gdkevents-win32.c : Disable the SetCapture call to make
9294         menus useable again. Add #pragma message to keep reminded on this issue.
9295         (gdk_event_translate) : don't generate GDK_EXPOSE events for InputOnly
9296         windows. This allows to enable backing store on Win32!
9297
9298         * gdk/win32/gdkimage-win32.c (_gdk_win32_get_image) : the passed
9299         in drawable is of impl type. Correct specific type checks appropriate.
9300  
9301         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_create_from_data) : check 
9302         GDK_WINDOW_DESTROYED before allocating new resources.
9303
9304         * gdk/win32/gdkselection-win32.c : Handle GDK_WINDOW_DESTROYED case
9305
9306         * gdk/win32/gdkwindow-win32.c : more Gdi return value checking,
9307         (gdk_window_foreign_new) initialize parent handle.
9308         (gdk_window_destroy_notify) add GDK_IS_WINDOW check
9309
9310         * gdk/win32/gdkgeometry-win32.c (_gdk_window_move_resize_child) :
9311         Let the GDI invalidate the window on MoveWindow call to fix scrolling
9312         problems (e.g. main buttons in testgtk). 
9313
9314 Sat Nov 11 23:07:30 2000  Owen Taylor  <otaylor@redhat.com>
9315
9316         * gtk/gtkentry.c (gtk_entry_key_press): Call 
9317         gtk_widget_activate for GDK_Return.
9318
9319         * gtk/gtkentry.c (gtk_entry_preedit_changed_cb): Fix handling
9320         of preedit cursor position.
9321
9322 Sun Nov  5 04:24:53 2000  Owen Taylor  <otaylor@redhat.com>
9323
9324         * gtk/gtkcellrenderertextpixbuf.c: Make parent_class
9325         static.
9326
9327 Tue Sep 19 10:54:22 2000  Owen Taylor  <otaylor@redhat.com>
9328
9329         * modules/input/{gtkimcontextxim.[ch],imxim.c}: Rip
9330         out support for multiple locales; that simple doesn't
9331         work reliably with current Xlib
9332
9333         * gtk/gtkimcontext*.[ch] gtk/gtkimmulticontext.[ch]
9334         gtk/gtktextlayout.[ch] gtk/gtktextview.c gtk/gtkentry.c: 
9335         Add support for positioning the cursor within the preedit string.
9336
9337 Mon Sep 18 23:56:32 2000  Owen Taylor  <otaylor@redhat.com>
9338
9339         * modules/input/{imxim.c,gtkimcontextxim.[ch]}: Start
9340         at XIM input method module.
9341
9342         * gtk/gtktextview.c: Check for bindings after passing
9343         events to im context filter.
9344
9345 Mon Sep 18 11:50:51 2000  Owen Taylor  <otaylor@redhat.com>
9346
9347         * gtk/gtktextlayout.c (add_preedit_attrs): Handle
9348         empty attribute lists properly.
9349
9350 Sun Sep 17 10:08:16 2000  Owen Taylor  <otaylor@redhat.com>
9351
9352         * gtk/queryimmodules.c (main): Return non-zero exit
9353         status if errors were encountered querying any
9354         modules.
9355
9356         * modules/input/Makefile.am (moduledir): remove
9357         leftover bin program target.
9358
9359         * docs/make-todo: Fix typo in error message.
9360
9361 Sat Sep 16 14:04:30 2000  Owen Taylor  <otaylor@redhat.com>
9362
9363         * configure.in: Add modules/input/Makefile
9364
9365 Sat Sep 16 14:01:52 2000  Owen Taylor  <otaylor@redhat.com>
9366
9367         * gtk/gtk.h: include gtkmodule.h gtkoldeditable.h,
9368         don't include gtkthemes.h.
9369
9370         * gtk/testgtk.c gtk/testtext.c: Set environment variables
9371         to point
9372
9373         * gtk/Makefile.am: Add new .c and .h files, build 
9374         gtk-query-immodules and use it to create a gtk.immodules
9375         file for use of test programs.
9376
9377         * gtk/gtkpreview.c: remove extra blank line.
9378
9379 Sat Sep 16 13:21:04 2000  Owen Taylor  <otaylor@redhat.com>
9380
9381         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_add_table): 
9382         Add the ability to add extra tables beyond the default
9383         one, and also the ability to have compose sequences 
9384         that are prefixes of other compose sequences. 
9385
9386         * gtk/gtkimcontextsimple.c: Export a preedit string which
9387         consists of possible candidates for keystrokes that have
9388         been entered but not yet committed.
9389
9390         * gtk/gtkimcontext.[ch] gtk/immulticontext.[ch]
9391         gtk/gtkimcontextsimple.[ch]: add gtk_im_context_reset()
9392
9393         * gtk/gtkmulticontext.[ch] (gtk_im_multicontext_append_menuitems): 
9394         Add a function to add input-method switching menu items
9395         to a menu.
9396
9397         * gtk/gtkimmulticontext.[ch]: Properly handly set_client_window
9398         when switching input methods.
9399
9400         * gtk/gtkimcontextsimple.[ch]: Change the format of
9401         the compose table to allow compose tables of different
9402         lengths / sequence.
9403
9404 Sat Sep 16 13:05:48 2000  Owen Taylor  <otaylor@redhat.com>
9405
9406         * gtk/gtkimmodule.[ch]: Support routines for loading
9407         GtkIMContext implementations dynamically at runtime.
9408
9409         * modules/input/imcyrillic-translit.c: A sample input
9410         method (based on GtkIMContextSimple with an extra table),
9411         which demonstrates preedit strings and the module
9412         system for input modules
9413
9414         * gtk/queryimmodules.c: Program to query the available
9415         input modules and write the results into a file.
9416          
9417         * gtk/gtkrc.[ch] (gtk_rc_get_im_module_file): Add
9418         extra config options "im_module_file" (cache file for
9419         input method modules), and "im_module_path" - path
9420         to look for modules when generating cache file.
9421
9422         This doesn't scale.
9423
9424 Sat Sep 16 13:09:06 2000  Owen Taylor  <otaylor@redhat.com>
9425
9426         * gtk/gtkthemes.[ch] gtk/gtkmodule.[ch]: Move most of the 
9427         generic code from gtkthemes into a new abstraction
9428         GtkModule which has the logic for implementing
9429         a loadable module which implements a number of 
9430         GObject types.
9431
9432 Sat Sep 16 13:07:13 2000  Owen Taylor  <otaylor@redhat.com>
9433
9434         * gtk/gtkeditable.[ch]: Convert GtkEditable from
9435         a class into an interface  
9436         
9437         * gtk/gtkoldeditable.[ch]: Move the old editable
9438         implementation into here, so legacy widgets can
9439         still rely on the implemenation. GtkOldEditable
9440         exports GtkEditable. Make selection handling
9441         code use new text conversion functions (and
9442         handle UTF-8 as a side-effect). Use GtkClipboard
9443         for CLIPBOARD.
9444
9445         * gtk/gtktext.[ch] gtk/gtkcombo.c gtk/gtkspinbutton.c:
9446         Adopt to match above changes.
9447
9448         * gtk/gtkentry.[ch]: Implement GtkEditable directly,
9449         avoid GtkOldEditable implementation. Restructure
9450         to reduce number of places that modify state directly.
9451         Move to GtkBindingSet. Display the preedit string.
9452         Queue recomputation of PangoLayout and scroll position
9453         to improve effiency of doing complex changes naively.
9454         Add a menu with cut/copy/paste and input method selection.
9455
9456 Thu Sep 14 22:11:05 2000  Owen Taylor  <otaylor@redhat.com>
9457
9458         * gtk/gtktextlayout.[ch]: Add gtk_text_layout_set_preedit_string()
9459         to set preedit string and attributes; display preedit string by
9460         inserting string and attributes at cursor when creating the
9461         GtkTextLineDisplay.
9462
9463         * gtk/gtktextlayout.c: Move all conversions between byte
9464         positions in PangoLayout and GtkTextIter into new functions
9465         line_display_iter_to_index/index_to_iter that properly
9466         handle the preedit string.
9467
9468         * gtk/gtktextmark.[ch]: Restore gtk_text_mark_get_name, modify
9469         it to return const char * (eventually will end up
9470         as GCONST char *, most likely.)
9471
9472         * gtk/gtktextview.[ch]: Handle the preedit string, call
9473         gtk_im_context_reset() as necessary, add a menu to switch
9474         input methods.
9475         
9476         * gtk/gtktextlayout.[ch]: Remove useless
9477         gtk_text_layout_get_log_attrs() function.
9478
9479 2000-11-11  Tor Lillqvist  <tml@iki.fi>
9480
9481         * gdk/gdk.def
9482         * gtk/gtk.def: Update.
9483
9484         * gdk/win32/*.c: Add last argument to g_type_register_static()
9485         calls.
9486
9487         * gdk/win32/gdkwindow-win32.c: Silence gcc -Wall.
9488
9489         * gdk/win32/gdkevents-win32.c: Handle MSH_MOUSEWHEEL messages
9490         generated by older wheel mouse drivers. Get the correct y
9491         coordinate from WM_MOUSEWHEEL messages.
9492
9493         * gdk/win32/gdkgc-win32.c (gdk_win32_cap_style_to_string,
9494         gdk_win32_fill_style_to_string, gdk_win32_function_to_string,
9495         gdk_win32_join_style_to_string, gdk_win32_line_style_to_string):
9496         Debugging functions.
9497
9498         * gdk/win32/gdkprivate-win32.h: Declare them.
9499
9500         * gdk/win32/gdkinput-win32.h: Add declaration for
9501         gdk_input_window_destroy().
9502
9503         * gtk/makefile.mingw.in: Pass -DGTK_VERSION. Add gtktreemodel.o.
9504
9505 Fri Nov 10 19:06:41 2000  Jonathan Blandford  <jrb@redhat.com>
9506
9507         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): New
9508         function to help handle keeping things in sync.
9509
9510 Fri Nov 10 12:10:34 2000  Jonathan Blandford  <jrb@redhat.com>
9511
9512         * gtk/gtkliststore.c (gtk_model_simple_class_init): use the new
9513         BOXED marshallers.
9514
9515         * gtk/gtkliststore.c (gtk_list_store_get_column_type): Add this.
9516         (gtk_list_store_class_init): use the new BOXED marshallers.
9517
9518         * gtk/gtktreestore.c (gtk_tree_store_new_with_types): change
9519         new_with_values to new_with_types.
9520         (gtk_tree_store_get_column_type): add this.
9521         (gtk_tree_store_class_init): use the new BOXED marshallers.
9522
9523         * gtk/gtkmarshal.list: Added a number of BOXED marshallers to
9524         mirror some POINTER marshallers.
9525
9526 Thu Nov  9 11:23:22 2000  Jonathan Blandford  <jrb@redhat.com>
9527
9528         * gtk/gtktreemodel.h (struct _GtkTreeIter): added more fields to
9529         allow more interesting iterators.  Also, made the lifecycle of
9530         iterators more explicit.
9531
9532         * gtk/gtktreemodelsort.[ch]: New model for sorting.
9533
9534         * gtk/gtk-boxed.defs (GtkTreeIter, GtkTreePath): Added two boxed
9535         types.
9536
9537 2000-11-09  Alexander Larsson  <alexl@redhat.com>
9538
9539         * demos/testgtk/menus.c:
9540         Changes to make the new testgtk compile after
9541         gtk_menu_append was removed.
9542
9543         * gdk/linux-fb/gdkdrawable-fb2.c
9544         (gdk_fb_get_depth, gdk_fb_get_visual,
9545         gdk_drawable_impl_fb_class_init): Implement
9546         these drawable functions. Now GtkImages work again.
9547
9548         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Change prototype.
9549
9550         * gdk/linux-fb/gdkprivate-fb.h (_gdk_fb_get_image): Change prototype.
9551         
9552         * gdk/linux-fb/gdkmain-fb.c (fb_modes_parse_mode,
9553         gdk_fb_setup_mode_from_name, gdk_fb_set_mode, gdk_fb_display_new);
9554         Parse /etc/fb.modes, use the environment variables GDK_DISPLAY_MODE,
9555         GDK_DISPLAY_DEPTH, GDK_DISPLAY_WIDTH, GDK_DISPLAY_HEIGHT.
9556
9557 2000-11-08  Havoc Pennington  <hp@pobox.com>
9558
9559         * gtk/gtktexttag.c (gtk_text_tag_class_init): Add visible and
9560         visible_set args, don't know where these had gone, I thought they
9561         used to be there
9562
9563         * gtk/testtext.c: Add a menu item to apply invisibility tag;
9564         now we can test the feature and see that it's totally broken.
9565
9566 2000-11-08  Havoc Pennington  <hp@pobox.com>
9567
9568         Make DND copy pixbufs and tags when source and target share a 
9569         tag table.
9570         
9571         * gtk/gtktextview.c (gtk_text_view_drag_data_get): provide the
9572         in-process GTK_TEXT_BUFFER_CONTENTS target
9573         (gtk_text_view_drag_data_received): Paste from
9574         GTK_TEXT_BUFFER_CONTENTS if we receive it.
9575
9576 2000-11-08  Alexander Larsson  <alexl@redhat.com>
9577
9578         * docs/Changes-2.0.txt: Add note about GtkMenuPositionFunc
9579         API changes.
9580
9581         * gtk/gtkmenu.c: Add support for scrolling menus.
9582         Remove gtk_menu_append/prepend/insert, these have been moved to
9583         gtkcompat.h as #defines.
9584
9585         * gtk/gtkcompat.h.in:
9586         Add compatibility #defines for gtk_menu_append/prepend/insert
9587
9588         * gtk/gtkmenu.h: Add data needed for scrolling menus.
9589         GtkMenuPositionFunc gets an extra argument push_in.
9590         gtk_menu_append/prepend/insert removed.
9591         
9592         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu): Change menu
9593         positioning behaviour to fit to scrolling menus.
9594
9595         * gtk/gtkmenuitem.c (gtk_menu_item_forall): Don't recurse
9596         into menuitem->submeny. That is wrong, and broke torn
9597         off submenus of torn off menus, since they were unrealized
9598         when the first menu was unrealized.
9599
9600         * gtk/gtkmenushell.[ch]: Virtualize gtk_menu_shell_insert() and
9601         gtk_menu_shell_select_item() since these need to be overridden in
9602         GtkMenu.
9603
9604         * gtk/gtkoptionmenu.c (gtk_opttion_menu_position): Change menu
9605         positioning behaviour to fit to scrolling menus.
9606         (gtk_option_menu_key_press, gtk_option_menu_button_press): Select
9607         the current item so that it is prelighted when the menu pops up.
9608         This is a workaround to the fact that the menu doesn't get the
9609         initial enter event (due to grabs).
9610
9611         * gtk/gtkfilesel.c, gtk/gtkinputdialog.c, gtk/testgtk.c:
9612         s/gtk_menu_append/gtk_menu_shell_append/
9613
9614         * gtk/gtknotebook.c:
9615         s/gtk_menu_insert/gtk_menu_shell_insert/
9616
9617         * gtk/testgtk.c (create_menu, create_menus):
9618         Create the first menu with 50 items so that menu scrolling
9619         can be tested.
9620         
9621         
9622         Patch from Jonathan Blandford  <jrb@redhat.com>
9623
9624         * gtk/gtkmenuitem.[ch] (gtk_menu_item_toggle_size_request): new
9625         system to handle size requests.  First, we ask what the size of
9626         the toggle is.  Then, when allocating the size, we allocate the
9627         toggle_size first.  This way we can have multiple menu-item
9628         classes w/o needing a seperate class for each.
9629
9630         * gtk/gtkmenu.c (gtk_menu_size_request): Actually use the new system.
9631         * gtk/gtkmenu.c (gtk_menu_size_allocate): Use the new system.
9632
9633         * gtk/gtkcheckmenuitem.c
9634         (gtk_check_menu_item_toggle_size_request): New function to handle
9635         the toggle size-request.
9636
9637 2000-11-07  Havoc Pennington  <hp@redhat.com>
9638
9639         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location):
9640         Half-ass somewhat fix this function, so that scrolling to the
9641         insertion point works. Pango hacking is in the future to really
9642         fix it.
9643
9644         * gtk/gtktextview.c (gtk_text_view_drag_data_get): Don't calculate
9645         length of data, no longer used.
9646
9647         * gtk/gtktextbuffer.c (gtk_text_buffer_finalize): move destroy
9648         method contents in here, get rid of destroy method
9649         (gtk_text_buffer_insert_range): Fix some g_return_if_fail checks
9650         that were backward. Remove debug spew.
9651         (cut_or_copy): Make the clipboard work with insert_range to
9652         preserve tags and pixbufs, not just the primary selection.
9653
9654 2000-11-07  Havoc Pennington  <hp@redhat.com>
9655
9656         * gtk/gtktextmark.c (gtk_text_mark_is_visible): rename 
9657         to gtk_text_mark_get_visible
9658
9659         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): fix
9660         bug that was generating an invalid iterator
9661
9662         * gtk/gtktextiter.c (gtk_text_iter_get_offset): move call to
9663         ensure_char_offsets() in front of code placing the iter in an
9664         invalid state.
9665
9666         * gtk/gtktextbuffer.c (gtk_text_buffer_paste_primary):
9667         make override_location arg const
9668         (paste): Replace the selection if we paste into the 
9669         current selection
9670
9671         * gtk/gtkselection.h: Remove "GtkSelectioData"
9672         (struct _GtkSelectionData): move the definition here.
9673
9674         * gtk/gtktextbuffer.c (gtk_text_buffer_update_primary_selection):
9675         Export the GTK_TEXT_BUFFER_CONTENTS target for in-process copies
9676
9677         * gtk/gtktextiter.c (gtk_text_iter_get_tags): New function
9678
9679         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_range): implement
9680         (gtk_text_buffer_insert_range_interactive): implement
9681         (gtk_text_buffer_get_tags): Remove, replaced by
9682         gtk_text_iter_get_tags()
9683
9684         * gtk/gtktextiter.c (gtk_text_iter_forward_search): Add a search
9685         limit parameter, to avoid infinite linear scan.
9686         (gtk_text_iter_backward_search): Add search limit
9687         (gtk_text_iter_forward_find_char): Add search limit
9688         (gtk_text_iter_backward_find_char): Add search limit
9689
9690 2000-11-07  Alexander Larsson  <alla@lysator.liu.se>
9691
9692         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
9693         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkimage-fb.c,
9694         gdk/linux-fb/gdkpango-fb.c, gdk/linux-fb/gdkpixmap-fb.c,
9695         gdk/linux-fb/gdkwindow-fb.c:
9696         use g_object_new() instead of g_type_create_instance() which
9697         is a private function for fundamental type implementations.
9698
9699         * gdk/linux-fb/gdkinput-ps2.c:
9700         Use MEDIUMRAW instead of RAW keycodes. Remove keyboard state-table
9701         instead just store the current modifier state. Add a (somewhat broken)
9702         keyboard input parser for XLATE mode too, if we couldn't use MEDIUMRAW.
9703         Rename exported function gdk_input_ps2_get_mouseinfo to
9704         gdk_input_get_mouseinfo.
9705
9706         * gdk/linux-fb/gdkmain-fb.c, gdk/linux-fb/gdkprivate-fb.h,
9707         gdk/linux-fb/gdkwindow-fb.c:
9708         gdk_input_ps2_get_mouseinfo was renamed to gdk_input_get_mouseinfo.
9709         
9710
9711 2000-11-02  Havoc Pennington  <hp@redhat.com>
9712
9713         * gtk/gtkfilesel.h, gtk/gtkfilesel.c: Derive from GtkDialog, and
9714         use stock buttons. Should be 100% source compatible, appropriate
9715         filesel fields now point to dialog->vbox and dialog->action_area.
9716         On the bizarre side, dialog->action_area and filesel->action_area
9717         are not the same widget.
9718         (gtk_file_selection_init): Put some padding around the selection
9719         entry, so it isn't touching the GtkDialog separator.    
9720
9721         * gtk/gtkfontsel.h, gtk/gtkfontsel.c: Derive from GtkDialog, 
9722         use stock buttons, etc. Should also be source compatible.
9723         Set the dialog default title in _init not _new().
9724         
9725         * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): 
9726         Use stock buttons; don't put a button box inside the existing
9727         dialog button box. Don't bother with push/pop colormap anymore.
9728
9729         * gtk/gtkdialog.h (GtkResponseType): Add a bunch of more 
9730         specific GTK_RESPONSE_* values. This is clearer than ACCEPT/REJECT
9731         for message dialog, and necessary for the font selection and color
9732         selection with help and apply buttons.
9733         
9734         * gtk/gtkdialog.c (gtk_dialog_add_button): Return a pointer 
9735         to the created button widget. Set GTK_CAN_DEFAULT on the button.
9736         (gtk_dialog_init): Default to GTK_BUTTONBOX_END, put less spacing
9737         between buttons, put less padding around the action area.
9738         (gtk_dialog_run): Exit on unmap rather than on destroy. 
9739         This will also exit the loop if the widget is hidden.
9740         (gtk_dialog_delete_event_handler): Use GTK_RESPONSE_DELETE_EVENT
9741         instead of GTK_RESPONSE_NONE; since we're already adding a bunch
9742         of GTK_RESPONSE_* stuff, this seems cleaner, and lets you 
9743         special-case delete event.
9744
9745         * gtk/gtktexttagtable.c, gtk/gtktextview.c: Fix doc comment
9746         formatting
9747         
9748 Sun Nov  5 05:32:39 2000  Tim Janik  <timj@gtk.org>
9749
9750         * gtk/testgtk.c (uposition_stop_configure): provide a toggle
9751         button to temporarily disable position recording in the
9752         "saved position" test.
9753
9754 Sat Nov  4 05:37:17 2000  Tim Janik  <timj@gtk.org>
9755
9756         * gtk/gtkthemes.c: added compat code that temporarily implements
9757         GtkThemeEnginePlugin as a GObject exporting GTypePlugin. this is
9758         going to be revamped by owen's upcoming GtkModule patches, but
9759         untill then people want gtk to build, right? ;)
9760
9761 2000-11-04  Havoc Pennington  <hp@pobox.com>
9762
9763         * gtk/gtkenums.h: remove trailing comma from GtkDeleteType member
9764         list
9765
9766         * docs/Changes-2.0.txt: Add note about
9767         gtk_container_get_toplevels()
9768
9769         * gtk/gtktextview.h: formatting
9770         
9771         * gtk/gtktextview.c: don't start descriptions with "Returns",
9772         confuses gtk-doc
9773
9774 Sat Nov  4 10:12:27 2000  Owen Taylor  <otaylor@redhat.com>
9775
9776         * autogen.sh: When doing sanity checking on ACLOCAL_FLAGS,
9777         look for glib-2.0.m4 not glib.m4. (Ali Abdin)
9778
9779 2000-11-03  Havoc Pennington  <hp@redhat.com>
9780
9781         * gtk/gtktexttagtable.c: Docs
9782         (gtk_text_tag_table_size): return a signed int
9783
9784         * gtk/gtktexttag.c: s/tkxt/text/g; write documentation
9785         (gtk_text_tag_event): make the event_object a GObject
9786
9787         * gtk/gtktextview.c: Write API docs for all functions.
9788
9789         * gtk/gtktextview.h: add GTK_TEXT_WINDOW_PRIVATE as return value
9790         for gtk_text_view_get_window_type() called on one of the private
9791         windows.
9792
9793         * gtk/gtktextview.c: Instead of accessing text_view->buffer
9794         directly, call get_buffer() which demand-creates a default
9795         buffer. So gtk_text_view_new() can be used to create a view with a
9796         default buffer in it, if you just want an empty text box users can
9797         put data in. Useful for GUI builders also.
9798
9799 2000-11-03  Pablo Saratxaga <pablo@mandrakesoft.com>
9800
9801         * gtk/gtkrc.zh_TW.*: moved gtkrc.zh_TW.Big5 to gtkrc.zh_TW.big5;
9802         the charset encodign portion MUST be in lowercase.
9803         * gtk/gtkrc.az: added file for Azeri language
9804
9805 2000-11-03  Havoc Pennington  <hp@redhat.com>
9806
9807         Get widgets working on the btree/buffer side. Display of them 
9808         still doesn't work.
9809         
9810         * gtk/gtktextview.c: start implementing child widget stuff
9811
9812         * gtk/gtktextiter.c (gtk_text_iter_get_child_anchor): new function
9813
9814         * gtk/gtktextlayout.c: handle embedded widgets
9815
9816         * gtk/gtktextdisplay.c: handle embedded widgets
9817
9818         * gtk/gtktextchild.c: Implement all the child anchor goo
9819
9820         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor): New
9821         function
9822
9823         * gtk/gtktextbtree.c: Add child anchor table to the btree struct
9824         (insert_pixbuf_or_widget_segment): abstract out common portions of 
9825         creating a child anchor or a pixbuf segment.
9826         (gtk_text_btree_create_child_anchor): new function
9827         (gtk_text_btree_unregister_child_anchor): new function
9828
9829         * gtk/gtkmarshal.list: added VOID:OBJECT,INT,INT for the
9830         allocate_child signal on GtkTextLayout
9831
9832         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): fix bogus return
9833         values
9834         (gtk_text_iter_get_child_anchor): new function
9835
9836         * gtk/gtktextbuffer.c (gtk_text_buffer_real_changed): Add a
9837         default handler for the changed signal, which calls
9838         gtk_text_buffer_set_modified(), instead of just always emitting
9839         changed then calling set_modified() manually. I guess this is
9840         maybe more flexible. It seems logical.
9841
9842 Fri Nov  3 08:58:38 2000  Tim Janik  <timj@gtk.org>
9843
9844         * gtk/gtkobject.c: _g_signal_handlers_destroy() is prefixed with '_'
9845         now.
9846
9847         * gtk/gtksignal.c: use g_signal_connect_closure_by_id() now.
9848
9849 Thu Nov  2 14:10:51 2000  Owen Taylor  <otaylor@redhat.com>
9850
9851         * gdk/x11/gdkdnd-x11.c: Fix a bunch of functions that should have
9852         been marked static.
9853
9854 2000-11-02  Havoc Pennington  <hp@redhat.com>
9855
9856         * gtk/testgtk.c (create_labels): had a test backward
9857
9858         * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Copy the client-side GC
9859         fields, so the dest GC ends up with the correct clip origin, 
9860         etc. Fixes a bug where colored labels didn't redraw 
9861         properly.
9862
9863 2000-11-02  Alexander Larsson  <alexl@redhat.com>
9864
9865         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
9866         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkpango-fb.c,
9867         gdk/linux-fb/gdkpixmap-fb.c, gdk/linux-fb/gdkwindow-fb.c:
9868         Add last argument to t_type_register_static call.
9869         
9870         * gdk/linux-fb/gdkdrawable-fb2.c:
9871         Add last argument to t_type_register_static call.
9872         export the get_image drawable virtual function.
9873
9874         * gdk/linux-fb/gdkimage-fb.c:
9875         Add last argument to t_type_register_static call.
9876         rename gtk_image_get to _gdk_fb_get_image and
9877         export it for use by gdkdrawable-fb2.
9878
9879         * gdk/linux-fb/gdkprivate-fb.h:
9880         export _gdk_fb_get_image.
9881
9882         * gdk/linux-fb/gdkselection-fb.c:
9883         Add new api call stubs.
9884
9885         * gtk/Makefile.am:
9886         Missing ( in linux-fb part.
9887
9888         * modules/linux-fb/Makefile.am:
9889         Must link with gdk_pixbuf or get unresolved symbol.
9890
9891 2000-11-01  Havoc Pennington  <hp@pobox.com>
9892
9893         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Use 
9894         GTK_TYPE_TEXT_ITER and BOXED marshallers
9895
9896         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): ditto
9897
9898         * gtk/gtktexttag.c (gtk_text_tag_class_init): ditto
9899         
9900         * gtk/gtk-boxed.defs: add GtkTextIter
9901
9902         * gtk/gtkmarshal.list: Add marshallers for text widget that 
9903         properly use OBJECT and BOXED
9904
9905 2000-11-01  Havoc Pennington  <hp@redhat.com>
9906
9907         * gtk/testgtk.c (create_labels): Test set_markup_with_accel()
9908
9909         * gtk/gtklabel.c (set_markup): Convert the unichar to a GDK keyval
9910         before returning it. 
9911         
9912 2000-11-01  Havoc Pennington  <hp@redhat.com>
9913
9914         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
9915         Clip the rectangle to be rendered to the drawable, since
9916         get_from_drawable() requires a region within the drawable
9917
9918 2000-11-01  Havoc Pennington  <hp@redhat.com>
9919
9920         * gtk/gtkimage.c (gtk_image_expose): Um, don't randomly subtract 4
9921         from coordinates.
9922
9923 Wed Oct 25 20:10:57 2000  Owen Taylor  <otaylor@redhat.com>
9924
9925         * gdk/gdkevents.c (gdk_event_copy): Only ref the window if
9926         it isn't NULL.
9927
9928 2000-11-01  Havoc Pennington  <hp@pobox.com>
9929
9930         * gtk/gtklabel.c (gtk_label_set_attributes): Set a PangoAttrList
9931         on a label
9932         (gtk_label_finalize): unref the attr list if any.
9933
9934         * gtk/testgtk.c (create_get_image): close test on second click
9935         (make_message_dialog): close dialog if it exists
9936
9937         * gdk/gdkpango.c (gdk_draw_layout): Handle rise attribute
9938
9939         * gdk-2.0.pc.in (Requires): Make it require gdk-pixbuf-2.0 not
9940         gdk-pixbuf
9941
9942         * gtk/gtklabel.c (gtk_label_set_markup): new function to set label
9943         from Pango markup format
9944         (gtk_label_set_markup_with_accel): ditto but with accelerator
9945         parsing
9946
9947         * gtk/gtkimage.c (gtk_image_expose): reformatting.
9948
9949         * gdk/gdkpixbuf-drawable.c (gdk_pixbuf_get_from_drawable): Hack to
9950         reflect current state of GDK - use gdk_drawable_get_colormap, etc.
9951         Check GDK_IS_WINDOW() not !GDK_IS_PIXMAP() to decide whether to 
9952         call gdk_window_get_origin().
9953
9954         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
9955         implement GDK_PIXBUF_ALPHA_FULL
9956         
9957 Wed Nov  1 03:43:42 2000  Tim Janik  <timj@gtk.org>
9958
9959         * gtk/gtksignal.c (gtk_signal_compat_matched): make use of
9960         g_signal_handlers_block_matched, g_signal_handlers_unblock_matched and
9961         g_signal_handlers_disconnect_matched to block/unblock and disconnect
9962         multiple handlers respectively, instead of only treating the
9963         first handler found (bug reported by owen).
9964
9965 Mon Oct 30 19:23:50 2000  Jonathan Blandford  <jrb@redhat.com>
9966
9967         * gtk/gtktreeview.c (gtk_tree_view_expand_row): New function.
9968
9969         * gtk/gtktreeview.c (gtk_tree_view_collapse_row): New function.
9970
9971         * gtk/gtktreeview.c, gtk/gtktreemodel.c, gtk/gtktreeselection.c
9972         gtk/gtktreestore.h, gtk/gtktreeview.h, gtk/gtktreeviewcolumn.c,
9973         gtk/gtktreeviewcolumn.h: Fixed inline docs.
9974
9975         * docs/reference/gtk/tree_widget.sgml: Proto intro to the tree
9976         widget.  Needs writing someday.
9977
9978         * docs/reference/gtk/tmpl/gtktree*sgml: Added the tree widget to
9979         the docs.
9980
9981 2000-10-30  Havoc Pennington  <hp@redhat.com>
9982
9983         * gtk/gtktextview.h, gtk/gtktextview.c:
9984         Rename delete_at_cursor delete_from_cursor, and 
9985         move to move_cursor.
9986
9987 2000-10-30  Havoc Pennington  <hp@redhat.com>
9988
9989         * gtktextbtree.c, gtktextbtree.h, gtktextbuffer.c,
9990         gtktextbuffer.h, gtktextchild.c, gtktextchild.h,
9991         gtktextchildprivate.h, gtktextdisplay.c, gtktextdisplay.h,
9992         gtktextiter.c, gtktextiter.h, gtktextiterprivate.h,
9993         gtktextlayout.c, gtktextlayout.h, gtktextmark.c, gtktextmark.h,
9994         gtktextmarkprivate.h, gtktextsegment.c, gtktextsegment.h,
9995         gtktexttag.c, gtktexttag.h, gtktexttagprivate.h,
9996         gtktexttagtable.c, gtktexttagtable.h, gtktexttypes.c,
9997         gtktexttypes.h, gtktextview.c, gtktextview.h:
9998
9999         Massive reindentation and reformatting. Arg alignment and comments
10000         still need fixing in various places.
10001
10002 2000-10-30  Havoc Pennington  <hp@redhat.com>
10003
10004         * gtk/gtktextview.h, gtk/gtktextview.c: Change run action signals
10005         to be named insert_at_cursor and delete_at_cursor so C++ can
10006         handle them.
10007
10008 2000-10-28  Tor Lillqvist  <tml@iki.fi>
10009
10010         * gtk/gtkrc.c (gtk_rc_append_default_module_path): Make sure not
10011         to get a double directory separator in case the home directory
10012         ends with one. This would cause trouble especially on Windows,
10013         where the path will be confused with the syntax for an an UNC
10014         (network share) path \\server\share\path.
10015         (gtk_rc_add_initial_default_files): Ditto.
10016
10017 Sat Oct 28 02:33:09 2000  Robert Brady  <robert@suse.co.uk>
10018
10019         * gtk/gtkmarshal.list: add new marshallers for GtkTextView.
10020
10021         * gtk/gtktextview.c: Use correct marshallers.
10022
10023 Fri Oct 27 17:56:26 2000  Jonathan Blandford  <jrb@redhat.com>
10024
10025         * gtk/gtkliststore.c: Not sure how this ever worked.  Fixed it to
10026         use new iter stuff, and added all the appropriate signals et al.
10027
10028         * gtk/gtktreedatalist.h: s/gtk/_gtk to further reinforce that this
10029         code is internal to gtk only.
10030
10031 2000-10-28  Tor Lillqvist  <tml@iki.fi>
10032
10033         * gtk/gtk.def
10034         * gtk/makefile.{mingw,msc}.in: Adjust to Tim's changes. Use
10035         glib-genmarshal etc.
10036
10037 Fri Oct 27 20:15:00 2000  Tim Janik  <timj@gtk.org>
10038
10039         * gtk/Makefile.am: added dependancies for testtextbuffer which broke
10040         parallel builds.
10041
10042 Fri Oct 27 18:51:44 2000  Tim Janik  <timj@gtk.org>
10043
10044         * gtk/gtksignal.[hc]: adapt to GSignal signature changes.
10045
10046 2000-10-27  Robert Brady  <robert@suse.co.uk>
10047
10048         * configure.in (ALL_LINGUAS): Add en@IPA (English, phonetic), 
10049         en_GB (British), ia (Interlingua).
10050
10051 2000-10-26  Havoc Pennington  <hp@redhat.com>
10052
10053         * gtk/gtktextiter.c (my_strrstr): fix constness warning
10054
10055         Fixed output of:
10056         nm -g -l .libs/libgtk-x11-1.3.so | grep ' T ' | grep -v gtk_ | grep -v GTK_
10057         
10058         * gtk/gtktextsegment.c (char_segment_new): rename
10059         (_char_segment_new_from_two_strings): rename
10060         (_toggle_segment_new): rename
10061         
10062         * gtk/gtkclipboard.c (ensure_clipboard_widget): make this static
10063         (make_clipboard_widget): make it static
10064         (text_get_func): static
10065         (text_clear_func): static
10066
10067         * gtk/gtkcolorsel.c (adjustment_changed): make this function
10068         static
10069         (hex_changed): make it static
10070         (hsv_changed): make it static
10071         (opacity_entry_changed): make it static
10072
10073         * gtk/gtktextbtree.c (change_node_toggle_count): rename with _gtk
10074         (toggle_segment_check_func): rename with _gtk
10075
10076         * gtk/gtktextchild.c (_pixbuf_segment_new): rename with _gtk
10077         (_widget_segment_new): rename
10078         (_widget_segment_add): rename
10079         (_widget_segment_remove): rename
10080         (_widget_segment_ref): rename
10081         (_widget_segment_unref): rename
10082
10083         * gtk/gtktextmark.c (_mark_segment_new): Rename
10084         _gtk_mark_segment_new   
10085
10086 2000-10-26  Havoc Pennington  <hp@redhat.com>
10087
10088         * gtk/gtkmarshal.list: add new marshallers used by the text widget
10089         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
10090         types
10091
10092         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): fix
10093         marshaller types
10094
10095         * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktextdisplay.h,
10096         gtk/gtktextdisplay.c: We need to preserve Tk copyrights and
10097         license on these files.
10098
10099         * gtk/gtktextiter.c (gtk_text_iter_backward_search): Make this
10100         work.
10101
10102         * gtk/gtktextbtree.c (gtk_text_btree_new): init stamps to 
10103         runtime random number different for each tree, instead of 
10104         a constant I made up.
10105
10106 Thu Oct 26 07:36:16 2000  Tim Janik  <timj@gtk.org>
10107
10108         * gtk/Makefile.am: buncha cleanups, kludged build sources
10109         dependencies with a Makefile: oldest-source-stamp dependancy
10110         for the moment. automake is really fighting us here, with
10111         intentionally not allowing user-defined rules or dependancies
10112         prior to it's -include $(DEP_FILES) statement. sucks rocks!
10113
10114         * gtk/Makefile.am: added gtktextlayout.h and gtktextdisplay.h
10115         to public headers. tehy have a comment stating that they are
10116         "semi-public" aren't included by gtk.h and if enums popup there,
10117         they can be /*< skip >*/-ed.
10118
10119         * gtk/gtktextlayout.h: 
10120         * gtk/gtktextdisplay.h: indentation fixes, comment fixes,
10121         added LGPL... <SIGH>
10122
10123 Wed Oct 25 20:40:25 2000  Jonathan Blandford  <jrb@redhat.com>
10124
10125         * gtk/gtktreemodel.h: Got rid of GtkTreeNode, and changed it to
10126         GtkTreeIter.  Added iterators everywhere.
10127
10128         * gtk/gtktreeviewcolumn.c: Changed to use the iterators.
10129
10130         * gtk/gtktreeviewselection.c: Changed to use the iterators.
10131
10132         * gtk/gtktreestore.c: Changed to use the iterators.
10133
10134         * gtk/gtkliststore.c: Commented out the code.  Will convert to
10135         iterators tomorrow.
10136
10137         * gtk/gtkmodelsimple.c: Commented out the code.  Will convert to
10138         iterators tomorrow.
10139
10140         * gtk/treestoretest.c: Changed to use iterators.
10141
10142         * demos/testgtk/main.c: Moved to use the new iterator system.
10143
10144 Thu Oct 26 02:10:32 2000  Tim Janik  <timj@gtk.org>
10145
10146         * gtk/Makefile.am: invoke maketypes.awk with LC_ALL=C to avoid
10147         localization misbehaviour.
10148
10149         * gtk/gtk-boxed.defs: nuked "boxed" type GtkCTreeNode, since it's
10150         a useless type without copy/free.
10151
10152         * gtk/gtkctree.c (gtk_ctree_class_init): use GTK_TYPE_POINTER instead
10153         of GTK_TYPE_CTREE_NODE.
10154
10155 Thu Oct 26 00:51:52 2000  Tim Janik  <timj@gtk.org>
10156
10157         * gtk/gtksignal.c:
10158         (gtk_signal_emitv): use g_value_set_static_{string|boxed} where
10159         applicable.
10160
10161         * gtk/gtk-boxed.defs (GtkSelectionData): specify
10162         gtk_selection_data_copy and gtk_selection_data_free
10163         do GtkSelectionData work as params in signals.
10164
10165 Wed Oct 25 20:47:41 2000  Tim Janik  <timj@gtk.org>
10166
10167         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init): urg, removed
10168         implementation of gtk_marshal_VOID__INT_INT_INT_INT. if people do that,
10169         couldn't they at least give it a non-standard name?
10170         
10171         * gtk/gtktextlayout.c: arg! yet another implementation of
10172         gtk_marshal_VOID__INT_INT_INT_INT(), is this a conspiracy?
10173
10174         * gtk/gtktextbuffer.c: gotcha! captured a vagabonding
10175         gtk_marshal_VOID__INT_POINTER_INT() implementation, braught it back
10176         home. now i know this _is_ a conspiracy.
10177
10178         * gtk/gtkwidget.c (gtk_widget_class_init): marshaller fixups for
10179         ::state-changed.
10180
10181         * gtk/gtkaccelgroup.c (gtk_accel_group_create_remove): 
10182         (gtk_accel_group_create_add): marshaller signature fixups.
10183
10184         * gtk/gtklistitem.c (gtk_list_item_class_init): signal creation fixups,
10185         pass in GTK_TYPE_SCROLL_TYPE instead of GTK_TYPE_ENUM.
10186
10187         * gtk/gtkobject.[hc]: removed GTK_CONNECTED flag, it's not valid
10188         anymore.
10189
10190 Tue Oct 24 23:59:21 2000  Tim Janik  <timj@gtk.org>
10191
10192         * docs/reference/Makefile.am: disabled SUBDIRS for the moment, since
10193         due to the signal system changes, it wouldn't build currently. to
10194         be fixed soon.
10195
10196         * docs/Changes-2.0.txt: GtkSignal/GSignal updates.
10197
10198         * gtk/gtkwidget.c: ::direction_changed takes an enum as argument,
10199         so it needs gtk_marshal_VOID__ENUM() instead of
10200         gtk_marshal_NONE__UINT().
10201
10202         * gdk/gdk*.c: adapted type registration functions.
10203
10204         * gtk/gtkbindings.c:
10205         * gtk/gtkaccelgroup.c: operate on GSignalQuery, GtkSignalQuery is
10206         gone.
10207
10208         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType.
10209
10210         * gtk/gtkobject.c:
10211         (gtk_object_destroy):
10212         (gtk_object_shutdown): fixed recursion guards. basically we have to
10213         catch the case where any of GObject.shutdown() or gtk_object_destroy()
10214         is called during ::destroy, and avoid recursion there.
10215
10216         * gtk/gtktypeutils.c:
10217         * gtk/maketypes.awk: awk-script hackup to provide gtk_type_init() with
10218         boxed_copy/boxed_free. this needs a more general solution based on a
10219         publically installed code-generator utility.
10220
10221         * gtk/gtktypeutils.[hc]: compat aliased GTK_TYPE_BOXED to G_TYPE_BOXED,
10222         glib's gobject has support for that now.
10223         define GtkSignalMarshaller in terms of GSignalCMarshaller.
10224
10225 Mon Oct 23 09:36:42 2000  Tim Janik  <timj@gtk.org>
10226
10227         * gtk/gtksignal.[hc]:
10228         * gtk/gtkmarshal.[hc]:
10229         * gtk/Makefile.am: generate marshallers with glib-genmarshal and don't
10230         compile gtkmarshal.c on its own anymore, just include it in gtksignal.c.
10231         removed #include <gtkmarshal.h>s all over the place, gtksignal.h takes
10232         care of that.
10233
10234         * *.c: marshaller name fixups.
10235
10236         * gtk/gtkmarshal.list: added a comment briefing the format.
10237
10238 Sun Oct 22 23:14:39 2000  Tim Janik  <timj@gtk.org>
10239
10240         * gtk/gtksignal.[hc]: nuked old implementation. we mostly have
10241         compatibility macros here now. more specifically, most of
10242         the API is preserved (yes, _most_, nonwithstanding the
10243         following exceptions listed, the API is stil lHUGE ;)
10244         things that got removed completely:
10245         GtkSignalQuery, gtk_signal_query(), gtk_signal_n_emissions(),
10246         gtk_signal_n_emissions_by_name(), gtk_signal_handlers_destroy(),
10247         gtk_signal_set_funcs(), gtk_signal_handler_pending_by_id(),
10248         gtk_signal_add_emission_hook(), gtk_signal_add_emission_hook_full(),
10249         gtk_signal_remove_emission_hook().
10250         non-functional functions variants:
10251         gtk_signal_add_emission_hook(), gtk_signal_remove_emission_hook().
10252         the GtkCallbackMarshal argument to gtk_signal_connect_full() is
10253         not supported anymore.
10254         (gtk_signal_compat_matched): new internal function to aid
10255         implementation of the compatibility macros, it  provides
10256         functionality to block/unblock/disconnect handlers based
10257         on func/data.
10258
10259         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType,
10260
10261         * *.c: adaptions to new type registration API signatures.
10262
10263 Fri Oct 20 15:26:33 2000  Tim Janik  <timj@gtk.org>
10264
10265         * gtk/gtktypeutils.[hc]: removed G_TYPE_GTK_POINTER cludge.
10266
10267 2000-10-25  Robert Brady  <robert@suse.co.uk>
10268
10269         * gdk/x11/gdkproperty-x11.c (gdk_property_get, gdk_property_change,
10270         gdk_property_delete): If window == NULL, assume the root window.
10271         (restoring the behaviour that was in 1.2).
10272         
10273         * gtk/testtext.c (save_buffer): Allow creation of new files when
10274         saving.
10275
10276         (fill_file_buffer): Don't die if a UTF-8 sequence is split across
10277         calls to read().
10278
10279 2000-10-25  Tor Lillqvist  <tml@iki.fi>
10280
10281         * gdk/gdkwindow.c: Include x11/gdkx.h only when building for X11.
10282
10283         * gdk/win32/gdkdrawable-win32.c
10284         * gdk/win32/gdkimage-win32.c
10285         * gdk/win32/gdkprivate-win32.h: Corresponding changes as in the
10286         X11 backend.
10287
10288         * gdk/win32/gdkcc-win32.c
10289         * gdk/win32/gdkcolor-win32.c
10290         * gdk/win32/gdkfont-win32.c
10291         * gdk/win32/gdkinput-win32.c
10292         * gdk/win32/gdkmain-win32.c
10293         * gdk/win32/gdkproperty-win32.c: Silence gcc -Wall.
10294
10295 2000-10-24  Havoc Pennington  <hp@redhat.com>
10296
10297         * gtk/gtktextview.c (gtk_text_view_scroll_to_mark_adjusted): make
10298         it a static function
10299
10300         * gtk/gtktextbtree.c (gtk_text_btree_tag): Gee, maybe we should
10301         redraw text when a tag is applied to it.
10302
10303         * gtk/gtktexttag.c (gtk_text_tag_affects_size)
10304         (gtk_text_tag_affects_nonsize_appearance): private functions to
10305         see if a tag requires various kinds of redraw/layout to be queued
10306         up.
10307
10308         * gtk/gtktexttag.h (struct _GtkTextTag): Remove relief crackrock
10309
10310         * gtk/testtext.c (fill_example_buffer): Put the cursor 
10311         at the start of the buffer, so search works by default
10312
10313         * gtk/gtktextiter.c (lines_match): init match_start always
10314
10315         * gtk/gtktextbuffer.c (gtk_text_buffer_get_iter_at_line_index): New
10316         function, get iter at a line + a byte index
10317
10318         * gtk/gtktextiter.c (gtk_text_iter_set_line_index): New function,
10319         to set byte position within a line
10320         (gtk_text_iter_check): remove leftover G_BREAKPOINT thing
10321
10322 2000-10-23  Havoc Pennington  <hp@redhat.com>
10323
10324         * gtk/testtext.c: Re-enable the "find" dialog
10325
10326         * gtk/testgtk.c: Add test for gdk_drawable_get_image
10327         
10328         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix bug where
10329         the arguments to gdk_draw_drawable were in the wrong order
10330         (gdk_window_paint_init_bg): This function was ignoring the
10331         init_region, instead of clipping to it, so the entire backing
10332         pixmap was cleared on every begin_paint()
10333         (gdk_window_begin_paint_region): Hmm, the same list-walking bug
10334         was in here again, the loop kept using the same GtkWindowPaint
10335         over and over.
10336         (gdk_window_begin_paint_region): Fix a bug where we had two
10337         x_offset instead of x_offset and y_offset
10338
10339         * gdk/gdkdraw.c (gdk_drawable_get_image): get composite drawable
10340         before we get the image.
10341         (gdk_draw_drawable): get the composite before we draw the drawable.
10342         (gdk_drawable_real_get_composite_drawable): default
10343         get_composite_drawable implementation that returns the drawable 
10344         itself
10345
10346         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Add
10347         get_composite_drawable virtual function
10348
10349         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix a cheesy
10350         list-walking bug
10351
10352         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable): Add a hack to
10353         make this work if the source drawable is a GdkDrawableImplX11
10354         instead of a public drawable type. This is really broken; the
10355         problem is that GdkDrawable needs a virtual method get_xid(), but
10356         of course that doesn't work in practice. Enter RTTI.
10357
10358         Also, improve mismatched depth message.
10359
10360         * gdk/gdkpixmap.c (gdk_pixmap_get_image): Implement get_image for
10361         GdkPixmap
10362
10363         * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_class_init):
10364         install _gdk_x11_get_image as our implementation of get_image
10365         
10366         * gdk/x11/gdkimage-x11.c (gdk_image_get): Rename to
10367         _gdk_x11_get_image and export for use in gdkdrawable-x11.c
10368
10369         * gdk/gdkimage.c (gdk_image_get): Make this just a wrapper around
10370         gdk_drawable_get_image
10371
10372         * gdk/gdkdraw.c (gdk_drawable_get_image): call virtual get_image
10373
10374         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Virtualize
10375         get_image
10376
10377         * gtk/gtktreestore.c (gtk_tree_store_get_node): remove weird
10378         trailing semicolon after for loop
10379
10380 Mon Oct 23 12:07:57 2000  Owen Taylor  <otaylor@redhat.com>
10381
10382         * gtk/gtkwidget.c (gtk_widget_set_style_internal): Fix problem
10383         where font_desc for widget's context lagged widget's font_desc by
10384         one step.
10385
10386 2000-10-22  Tor Lillqvist  <tml@iki.fi>
10387
10388         * gdk/win32/gdkgc-win32.c
10389         * gdk/win32/gdkimage-win32.c: Remove gcc -Wall warnings.
10390
10391         * gtk/makefile.mingw.in
10392         * gtk/gtk.def: Updates.
10393
10394         * gtk/testgtk.c: sleep() is called _sleep in MS's C
10395         library.
10396
10397         * gtk/gtkimcontextsimple.c: Include <stdlib.h> for bsearch().
10398
10399         * gtk/makefile.msc: Remove
10400
10401         * gtk/makefile.msc.in: New file, like makefile.mingw.in.
10402
10403         * gtk/Makefile.am: Add it.
10404
10405         * configure.in: Generate it.
10406
10407         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor)
10408         * gtk/gtktextbtree.c (gtk_text_line_char_to_byte): Return
10409         something even if not implemented, to satisfy picky MSVC.
10410
10411         Patches by Hans Breuer:
10412         
10413         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_glyphs): Call
10414         SetBkMode() and SetTextAlign() before calling
10415         pango_win32_render().
10416
10417         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_values_to_win32values):
10418         Set hcliprgn to NULL after destroying it.
10419         (gdk_gc_set_clip_rectangle): Delete hcliprgn and set to NULL.
10420
10421         * gdk/win32/gdkgeometry-win32.c
10422         (_gdk_windowing_window_queue_antiexpose): More effective
10423         implementation.
10424
10425         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_new): Use drawable's
10426         depth as default, not the visual's.
10427
10428         * gdk/win32/gdkwindow-win32.c (gdk_window_set_title): Guard
10429         against empty title.
10430
10431         * gdk/win32/gdkprivate-win32.h: Define a helper macro,
10432         IMAGE_PRIVATE_DATA.
10433
10434         * gdk/win32/gdkimage-win32.c: Use it.
10435
10436 2000-10-22  Robert Brady  <robert@suse.co.uk>
10437
10438         * configure.in: Check for bind_textdomain_codeset
10439
10440         * gtk/gtkmain.c (gtk_init_check): If bind_textdomain_codeset 
10441         present, make use of it.
10442
10443         Add a translatable string "default:LTR" which, if translated
10444         to "default:RTL", will cause the default direction to be
10445         Right-to-Left.
10446
10447         * gtk/gtkrange.h, gtk/gtkrange.c: Take into account the widget 
10448         direction if marked as flippable.
10449
10450         * gtk/gtkhscale.c: Mark widget as flippable.
10451         
10452 2000-10-04  Havoc Pennington  <hp@redhat.com>
10453
10454         * gtk/testgtk.c (create_buttons): create some stock buttons
10455         with the default accel group
10456         (create_image): test some new GtkImage features
10457         (make_message_dialog): test GtkMessageDialog
10458         (create_modal_window): fix someone's bizzarro indentation
10459
10460         * gtk/gtkwindow.h, gtk/gtkwindow.c: Implement 
10461         GTK_WIN_POS_CENTER_ON_PARENT. 
10462         Add "destroy with parent" setting, which means the window goes
10463         away with its transient parent.
10464         (gtk_window_get_default_accel_group): get the default accel group
10465         for the window.
10466         (gtk_window_set_destroy_with_parent): set/unset destroy with
10467         parent flag
10468         (gtk_window_read_rcfiles): invalidate icon set caches
10469         after reloading rcfiles 
10470
10471         * gtk/gtkenums.h (GtkWindowPosition): add
10472         GTK_WIN_POS_CENTER_ON_PARENT, which centers a dialog 
10473         on its parent window when the dialog is mapped for the first time.
10474
10475         * gtk/gtkmessagedialog.h, gtk/gtkmessagedialog.c: Add 
10476         a simple message dialog class
10477         
10478         * gtk/gtkdialog.c (gtk_dialog_init): Connect delete event 
10479         handler to emit response signal, and maybe later it would
10480         honor a hide_on_delete flag - though that isn't there yet.
10481         Set border width on the vbox to 2, so we get some padding.      
10482         Use a button box for the action area.
10483         (gtk_dialog_key_press): synthesize a delete event if Esc
10484         is pressed and the GtkWidget key press handler didn't 
10485         handle the escape key.
10486         (gtk_dialog_new_with_buttons): new function creates a dialog
10487         with some default buttons in it.
10488         (gtk_dialog_add_action_widget): add an activatable widget
10489         as a button in the dialog - you can also add a non-activatable
10490         widget by accessing the action area directly.
10491         (gtk_dialog_add_button): add a simple button - stock ID or 
10492         label - to the action area
10493         (gtk_dialog_response): emit response signal
10494         (gtk_dialog_run): block waiting for the dialog, return 
10495         the response. Override normal delete_event behavior, so that 
10496         delete_event does nothing inside gtk_dialog_run().
10497
10498         * gtk/gtkdialog.h, gtk/gtkdialog.c: Add "response" signal
10499         emitted when an action widget is clicked or the dialog gets
10500         delete_event
10501
10502         * gtk/gtk.h: add gtkmessagedialog.h
10503
10504         * gtk/Makefile.am: add gtkmessagedialog.[hc]
10505
10506 2000-10-18  Havoc Pennington  <hp@redhat.com>
10507
10508         * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): Fix a bug 
10509         where any number of empty lines would get skipped
10510
10511         * gtk/gtktextiter.h: Remove padding from GtkTextIter; live on the
10512         edge.
10513
10514         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): enhance the
10515         warning about invalid iterators (explain more thoroughly)
10516         (gtk_text_iter_in_region): rename gtk_text_iter_in_range
10517
10518         * gtk/gtktextview.c (FOCUS_EDGE_WIDTH): Make focus rectangle less
10519         big
10520
10521         * demos/*.c: Add error handling
10522
10523         * gtk/gtktextbuffer.c: don't modify const iterators
10524
10525         * gtk/gdk-pixbuf-loader.c: Add full error handling here
10526
10527         * gtk/gtkimage.c (gtk_image_set_from_file): ignore errors
10528         on file load
10529
10530         * gtk/gtkiconfactory.c: Update to reflect addition of error
10531         handling to gdk-pixbuf loaders
10532
10533 Wed Oct 18 11:14:05 2000  Owen Taylor  <otaylor@redhat.com>     
10534
10535         * configure.in demos/Makefile.am demos/testgtk/*: Start of work to
10536         move to new modularized testgtk.
10537
10538 2000-10-17  Jonathan Blandford  <jrb@redhat.com>
10539
10540         * gtk/gtktreeview.c: Draw the arrows correctly.
10541
10542         * gtk/gtktreemodel.c: Added user docs.
10543
10544         * gtk/gtk.h: remove gtktreedatalist.h.
10545
10546         * gtk/gtktreestore.c (gtk_tree_store_get_type): Get the correct
10547         parent when generating my type.
10548
10549         * gtk/gtkmarshal.list: Added four more marshallers: INT:NONE,
10550         POINTER:NONE, POINTER:POINTER, and POINTER:POINTER,INT.
10551
10552 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
10553
10554         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): Move
10555         GtkTreeModel from object to interface.
10556
10557 2000-10-16  Havoc Pennington  <hp@redhat.com>
10558
10559         * gtk/gtktreeviewcolumn.c: #include gtklabel.h, fixing 
10560         compilation
10561
10562 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
10563
10564         * gtk/gtktreeselection.c: Add API documentation to all public
10565         functions.
10566
10567         * gtk/gtktreeviewcolumn.c: Added API documentation to all public
10568         functions.
10569
10570 2000-10-15  Jonathan Blandford  <jrb@redhat.com>
10571
10572         * gtk/gtktreeview.c (gtk_tree_view_insert_column): New function
10573         proposed by Guy Harris <gharris@flashcom.net>.  Also, added API
10574         docs to all public functions.
10575
10576         * gtk/gtktreeview.c, gtk/gtktreeview.h, gtk/gtktreestore.h,
10577         gtk/gtktreestore.c, gtk/gtkliststore.h, gtk/gtkliststore.c,
10578         gtk/gtkmodelsimple.c, gtk/gtkmodelsimple.h, gtk/gtktreedatalist.c,
10579         gtk/gtktreemodel.h, gtk/gtktreeselection.c,
10580         gtk/gtktreeselection.h: Fix GtkTreeNode *node ->GtkTreeNode node
10581         issue.
10582
10583 2000-10-14  Robert Brady  <robert@suse.co.uk>
10584
10585         * configure.in: Added "fa" (Persian) to ALL_LINGUAS.
10586
10587 2000-10-12  Jonathan Blandford  <jrb@redhat.com>
10588
10589         * gtk/gtktreedatalist.[ch] (gtk_tree_data_list_value_to_node): Added
10590         values other then G_TYPE_STRING.
10591         * gtk/gtktreeselection.c: Minor commenting updates.
10592         * gtk/gtktreeview.c: Format updates.
10593
10594 2000-10-09  Tor Lillqvist  <tml@iki.fi>
10595
10596         * README.win32: Update.
10597
10598         * gdk/win32/gdkgeometry-win32.c (gdk_window_clip_changed): Add two
10599         lines that had been deleted by mistake (?).
10600
10601         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Handle
10602         also the case fg==white and bg==black (but still not randomly
10603         coloured cursors). Thanks to Wolfgang Sourdeau.
10604
10605         * gdk/win32/*.c: Silence gcc -Wall.
10606
10607         * gtk/gtk.def: Add missing entry points.
10608
10609         Fixes by Hans Breuer:
10610
10611         * gdk/makefile.msc
10612         * gdk/win32/makefile.msc: Update.
10613
10614         * gdk/testgdk.c: If compiling with debugging (with _DEBUG defined,
10615         some MSVC thing, presumably), cause breakpoint on failures. Add
10616         GDK_NOR case. Call g_log_set_always_fatal.
10617
10618         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_insert): Handle
10619         should be pased by reference.
10620         
10621         * gdk/win32/gdkprivate-win32.h: Correct declaration accordingly.
10622         
10623         * gdk/win32/*.c: Correct calls to gdk_win32_handle_table_insert.
10624
10625         * gdk/win32/gdkevents-win32.c
10626         * gdk/win32/gdkwindow-win32.c: Handle WM_CREATE.
10627
10628         * gdk/win32/gdkgc-win32.c: Fix mixups of drawable and
10629         implementation object.
10630
10631         * gdk/win32/gdkimage-win32.c (gdk_image_get): Handle drawables,
10632         not just windows.
10633         
10634         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_impl_win32_finalize):
10635         Use the wrapper object.
10636         
10637 2000-10-06  Havoc Pennington  <hp@redhat.com>
10638
10639         * Makefile.am (SRC_SUBDIRS): contrib subdir
10640
10641         * gdk/gdkpixbuf.h: Move GdkPixbufAlphaMode to gdk-pixbuf library,
10642         so it can be used in Xlib version
10643
10644         * demos/testpixbuf.c (update_timeout): error checking from 1.0
10645         tree
10646
10647         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_get_pixbuf): Sync
10648         change from 1.0 tree that returns first frame of animation
10649         if the loaded file is an animation.
10650
10651         * contrib: add new directory to hold stuff that comes with GTK+
10652         but isn't really part of GTK+ (for now, gdk-pixbuf-xlib)
10653         
10654         * configure.in: add contrib/*
10655
10656 2000-10-05  Havoc Pennington  <hp@redhat.com>
10657
10658         * demos/testpixbuf-save.c: add pixbuf save test
10659
10660         * demos/Makefile.am: add testpixbuf-save.c
10661
10662 2000-10-05  Jonathan Blandford  <jrb@redhat.com>
10663
10664         * gtk/gtktree.h (GTK_TREE_SELECTION): Replaced with
10665         GTK_TREE_SELECTION_OLD to prevent conflict with gtktreeselection.c
10666         * gtk/testgtk.c: s/GTK_TREE_SELECTION/GTK_TREE_SELECTION_OLD/
10667         * gtk/gtktreeselection.[ch]: Replaced
10668         "node_selected"/"node_unselected" signal with "selection_changed"
10669         signal.
10670
10671 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
10672
10673         * gtk/gtk{tree,cell}?*.[ch]: Checked in initial draft of the new
10674         tree widget.
10675
10676 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
10677
10678         * gdk/gdkwindow.c (gdk_window_draw_arc): Fix obvious bug in circle
10679         drawing.
10680
10681 Wed Oct  4 15:52:15 2000 Owen Taylor  <otaylor@redhat.com>
10682
10683         * gdk/x11/gdkselection-x11.c (_gdk_selection_window_destroyed):
10684         Move list pointer forwards before removing item from
10685         list. (Crash reported by Salmaso Raffaele)
10686
10687         * gdk/gdkwindow.h: Remove spurious trailing ,
10688
10689         * gdk/Makefile.am (LDFLAGS): You can't do interlibrary
10690         dependencies on uninstalled libraries, sorry folks.
10691
10692 2000-10-04  Havoc Pennington  <hp@redhat.com>
10693
10694         * gtk/gtkstock.h, gtk/gtkstock.c, gtk/gtkiconfactory.h,
10695         gtk/gtkiconfactory.c: Fix copyrights    
10696
10697         * demos/testpixbuf.c: add inline pixbuf test
10698         
10699 Mon Sep 25 15:05:17 2000  Owen Taylor  <otaylor@redhat.com>
10700
10701         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c (gdk_window_iconify):
10702         Add gdk_window_iconify.
10703
10704         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c
10705         (gdk_window_set_geometry_hints): Add win_gravity
10706         to geometry structure.
10707
10708         * gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter):
10709         Implement _NET_WM_PING.
10710
10711         * gdk/x11/gdkmain-x11.c (_gdk_windowing_init_check):
10712         Set _NET_WM_PID on the client leader.
10713
10714         * gdk/x11/gdkwindow-x11.c (gdk_window_set_icon_name):
10715         Handle UTF-8 better.
10716
10717         * gdk/x11/gdkwindow-x11.c (gdk_window_set_title): Handle
10718         UTF-8 better, set _NET_WM_NAME as well. Only set
10719         icon name if it hasn't previously been explicitely 
10720         set.
10721
10722 2000-10-03  Havoc Pennington  <hp@redhat.com>
10723
10724         * gtk/testtextbuffer.c: clean up trailing whitespace,
10725         add extensive tests for tag toggle iteration.
10726         
10727         * gtk/gtktextiter.c (MAX_LINEAR_SCAN): decrease linear scan 
10728         distance
10729
10730         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
10731         optimize case where the tag root is on level 1
10732         (gtk_text_line_previous_could_contain_tag): attempt to implement
10733         (gtk_text_line_next_could_contain_tag): Abstract out node_compare
10734         functionality
10735
10736         * gtk/gtktextiter.c (gtk_text_iter_backward_to_tag_toggle):
10737         Implement this, though not very efficiently.
10738
10739         * gtk/gtktextiterprivate.h: reformat
10740
10741         * gtk/gtktextiter.c (gtk_text_iter_get_char): return 0 on the end
10742         iterator
10743
10744         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_interactive): Fix
10745         this to properly revalidate the iterators.
10746
10747         * gtk/gtktextview.c (gtk_text_view_delete): fix control-K to work
10748         properly at the end of the line (and therefore on empty lines)
10749
10750         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Gee,
10751         maybe we should return a value...
10752
10753 2000-10-03  Tor Lillqvist  <tml@iki.fi>
10754
10755         * config.h.win32: Guard definition of alloca(). glib.h now handles
10756         that.
10757
10758         * gdk/gdk.def
10759         * gtk/gtk.def: Add new entry points.
10760
10761         Changes just to make GTK+ build without errors on Win32. No hope
10762         of it working in its current state, though...:
10763         
10764         * gdk/win32/gdkselection-win32.c: Remove gcc -Wall warnings.  Add
10765         some functions from the X11 backend, just to make GTK+ build.
10766
10767         * gdk/makefile.mingw.in
10768         * gtk/makefile.mingw.in: Use correct gdk_pixbuf version
10769         number. Add new object files.
10770
10771         * gtk/gtkclipboard.c: Include gdkwin32.h on Win32. Use
10772         GetMessageTime to get timestamp (where on X11 uses
10773         gdk_x11_get_server_time()).
10774
10775 2000-10-02  Havoc Pennington  <hp@pobox.com>
10776
10777         * gtk/gtktextview.c: text_window_* weren't static and should have
10778         been.
10779         Start work on child widgets; not yet complete, syncing to 
10780         office computer.
10781
10782         * gtk/gtktextchild.h: change this to contain a public interface,
10783         starting work on child interfaces.
10784         * gtk/gtktextchildprivate.h: move private interfaces here
10785
10786         * gtk/Makefile.am: update to reflect gtktextchildprivate.h
10787
10788         * gtk/gtktextview.h, gtk/gtktextview.c, gtk/gtktextbuffer.h,
10789         gtk/gtktextbuffer.c, gtk/gtktextiter.h, gtk/gtk/textiter.c, 
10790         gtk/gtktextmark.c: copyright notices
10791
10792         * gtk/gtktextmarkprivate.h: reformat, and put _ in front of
10793         internal functions      
10794
10795         * gtk/gtktextchild.c (_pixbuf_segment_new): put _ in front of
10796         internal function
10797
10798         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
10799         Reformatting    
10800
10801 2000-09-30  Havoc Pennington  <hp@pobox.com>
10802
10803         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Handle
10804         NULL start/end pointers
10805
10806         * gtk/gtktextbuffer.c: Write some docs
10807         (gtk_text_buffer_get_selection_bounds): Allow start/end to be
10808         NULL, so you can just check whether there's a selection.        
10809
10810         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): No need to 
10811         cleanup_line or segments_changed ourselves, it gets done 
10812         in unlink_segment
10813
10814         * gtk/gtktextmark.h:
10815         s/gtk_text_mark_deleted/gtk_text_mark_get_deleted/
10816         
10817         * gtk/gtktextsegment.h: Clean up some indentation and naming mess
10818
10819         * gtk/gtktextmark.c: delete some more old Tk cruft
10820
10821         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_mark): add ref to
10822         mark before removing it, so we can emit MARK_DELETED with a valid
10823         pointer.
10824         (gtk_text_buffer_mark_set): hold ref across signal emission
10825
10826         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): improve
10827         whining about attempts to delete special marks
10828
10829         * gtk/gtktextbuffer.c (_gtk_text_buffer_spew): Prepend with
10830         underscore, since it's internal.
10831
10832         * gtk/gtktextbuffer.h: Remove find_string prototype, this is 
10833         now implemented in terms of iterators in gtktextiter.h
10834
10835         * gtk/gtktextbuffer.c (gtk_text_buffer_set_text): 
10836         New function, destructively sets contents of buffer. Also 
10837         a convenient way to clear the buffer by setting text to ""
10838
10839         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): reformat
10840         multiline string literal
10841
10842         * gtk/testtext.c (text_changed_callback): Redraw line numbers if
10843         text changes.
10844
10845         * gtk/gtktextiter.c (forward_char): Return FALSE if new location 
10846         is not dereferenceable
10847         (gtk_text_iter_forward_lines): fix return value
10848
10849 2000-09-29  Havoc Pennington  <hp@redhat.com>
10850
10851         * gtk/gtktexttag.c (gtk_text_tag_set_priority): fix indentation
10852
10853         * gtk/gtktextview.c: Implement drag thresholding; change functions 
10854         that set border window size to have nicer name
10855         (gtk_text_view_mark_set_handler):  Fix this to have the 
10856         right signature.
10857
10858         * gtk/testtextbuffer.c (fill_buffer): Update with pixbuf changes
10859
10860         * gtk/testtext.c: Update with API changes, put line numbers on 
10861         both sides.
10862         
10863         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): Replace get_pixmap
10864         with this
10865
10866         * gtk/gtktextchild.h, gtk/gtktextchild.c: replace all pixmap with
10867         pixbuf; delete a big block of #if 0 Tk code
10868
10869         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_pixbuf): Replace 
10870         insert_pixmap with insert_pixbuf
10871
10872 2000-09-29  Martin Baulig  <baulig@suse.de>
10873
10874         * gdk-pixbuf.pc.in: Renamed to gdb-pixbuf-2.0.pc.in to avoid
10875         confusion with the GdkPixbuf of the GNOME 1.x platform.
10876
10877 2000-09-29  Havoc Pennington  <hp@pobox.com>
10878
10879         * gtk/gtktextview.c: Implement the side windows.
10880
10881         * gtk/testtext.c: Implement simple line numbering in the 
10882         left side window; seems to make scrolling sloooow. Oops.
10883         Also, cursor blink is for some reason causing redraws
10884         of the line numbers. Should investigate...
10885
10886 2000-09-28  Havoc Pennington  <hp@redhat.com>
10887
10888         * gtk/gtktextview.c: Set up infrastructure to deal with lots of 
10889         scrolling child windows, and draw focus rectangle properly.
10890         
10891         (gtk_text_view_buffer_to_window_coords):
10892         Coordinate transformation to deal with all these freaking windows
10893         and offsets
10894         (gtk_text_view_window_to_buffer_coords): transform the other way
10895
10896         * gtk/testtext.c (create_buffer): Update to match Pango API change
10897
10898         * gtk/gtktexttagtable.c (gtk_text_tag_table_foreach): Go over the
10899         anonymous tags
10900         (foreach_unref): don't emit remove signal from finalize, just
10901         set tag's parent to NULL
10902
10903 2000-09-26  Havoc Pennington  <hp@redhat.com>
10904
10905         * gtk/gtkiconfactory.c (gtk_icon_set_clear): remove
10906         Fix some warnings       
10907
10908 2000-09-26  Havoc Pennington  <hp@redhat.com>
10909
10910         * gtk/Makefile.am (gtk_private_h_sources): Move more text widget
10911         headers into the private header list
10912
10913         * Makefile.am (pkgconfig_DATA): install pkg-config files
10914
10915         * configure.in: add pkg-config files
10916
10917         * gdk-2.0.pc.in, gdk-pixbuf.pc.in, gtk+-2.0.pc.in: pkg-config files
10918
10919         * gtk/gtkwindow.c (gtk_window_read_rcfiles): Invalidate
10920         outstanding icon caches on theme change.
10921
10922         * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: New icon system. Three 
10923         important types:
10924
10925         (GtkIconSource): Specification for creating a pixbuf 
10926         appropriate for a direction/state/size triplet from 
10927         a source pixbuf or filename
10928
10929         (GtkIconSet): List of GtkIconSource objects that are used to
10930         create the "same" icon (e.g. an OK button icon), and cache for
10931         rendered icons
10932
10933         (GtkIconFactory): Hash from stock ID to GtkIconSet; used to look
10934         up the icon set for a given stock ID.  GTK maintains a stack of
10935         GtkIconFactory to search, and applications or libraries can add
10936         additional icon factories on top of the stack
10937         
10938         * gtk/gtkrc.h, gtk/gtkrc.c: When loading an RcStyle, parse 
10939         the set of GtkIconSource specified for a given stock ID into 
10940         a GtkIconSet, and put the GtkIconSet into a GtkIconFactory for the 
10941         RcStyle, under the specified stock ID.
10942
10943         * gtk/gtkstyle.h, gtk/gtkstyle.c: Add a virtual function
10944         render_icon used to derive a GdkPixbuf from a GtkIconSource.
10945         This allows people to theme how prelight, insensitive, etc. are
10946         done.
10947
10948         (gtk_style_lookup_icon_set): Look up a stock ID in the list of
10949         icon factories for a style, and return the resulting 
10950         icon set if any.
10951
10952         (gtk_style_render_icon): Render an icon using the render_icon 
10953         method in the GtkStyleClass.
10954
10955         * gtk/gtkwidget.h, gtk/gtkwidget.c (gtk_widget_render_icon): 
10956         Use the style for a given widget to look up a stock ID, get the
10957         icon set, and render an icon using the render_icon method 
10958         of the style
10959
10960         * gtk/gtkstock.h, gtk/gtkstock.c: Header with the GtkStockItem type
10961         (contains information about a stock item), the built-in stock item
10962         IDs, and functions to add/lookup stock items.
10963
10964         * gtk/stock-icons/*: Stock icons that come with GTK
10965
10966         * gtk/gtkbutton.h, gtk/gtkbutton.c (gtk_button_new_stock): Returns
10967         a button based on a GtkStockItem
10968         (gtk_button_new_accel): Takes a uline string and accel group, and
10969         installs the accelerator.
10970
10971         * gtk/gtkimage.h, gtk/gtkimage.c: Make this into a generic
10972         image-display widget.
10973
10974 2000-09-25  Havoc Pennington  <hp@redhat.com>
10975
10976         * gtk/gtktexttypes.c: Remove Latin1 conversion stuff
10977
10978         * gtk/gtktextbtree.c (gtk_text_btree_node_remove_data): 
10979         Fix a bug when removing node data, we didn't properly 
10980         re-splice the linked list after removing the data.
10981
10982         * gtk/gtktextview.c (gtk_text_view_key_press_event): Pass through 
10983         GDK_Tab as literal tab, Ctrl-Tab to tab to focus widget
10984
10985         * gtk/gtktextbuffer.c (selection_received): fix g_convert usage
10986
10987         * gtk/gtktextlayout.c (set_para_values): Set tab array 
10988         for the layout from the GtkTextTag.
10989
10990         * gtk/gtktexttypes.h: delete tab and search cruft, 
10991         remove g_convert() in favor of GLib version
10992
10993         * gtk/gtktexttypes.c: remove tab implementation from here,
10994         move to Pango
10995
10996         * gtk/gtktexttag.h, gtk/gtktexttag.c: Implement 
10997         tab stuff using new PangoTabArray from Pango
10998
10999         * gtk/gtktexttag.c (gtk_text_attributes_fill_from_tags): Remove
11000         unused border_width stuff
11001
11002 Thu Sep 14 12:21:12 2000  Owen Taylor  <otaylor@redhat.com>
11003
11004         * gtk/gtktexttypes.[ch]: Remove g_convert (moved to
11005         glib) and now useless utf_to_latin1() latin1_to_utf()
11006
11007         * gtk/gtktextview.[ch]: Change ::move_insert and
11008         ::delete_text action signals to ::move and ::delete;
11009         create the signals with the right enumeration type,
11010         not GTK_TYPE_ENUM so that bindings work. Add C-d, M-d,
11011         C-v bindings, change Home, End to move to beginning/end
11012         of line, Add C-Home C-End to move to beginning/end
11013         of buffer. Change ::cut_text to ::cut_clipboard, etc;
11014         combine ::scroll_text into ::move; use new GtkSelectionData
11015         functions to simplify DND text handling.
11016         
11017         * gtk/gtkenums.h gtk/gtktextview.h: Move movement,
11018         deletion enumerations here, rename enumeration values to 
11019         be consistently plural.
11020
11021         * gtk/gtktextbuffer.c: Use new clipboard interfaces
11022         for cut/copy/paste and primary selection.
11023
11024         * gtk/gtktextbuffer.[ch]: Remove excess time and
11025         'interactive' arguments from cut/copy/paste;
11026         rename cut to cut_clipboard, etc; remove
11027         gtk_text_buffer_get_clipboard_contents().
11028
11029         * gtk/gtktextlayout.[ch]: Add 
11030         gtk_text_layout_move_iter_to_line_end() to move the iter to 
11031         line ends.
11032
11033         * gtk/gtkselection.[ch] (gtk_selection_data_set/get_text):
11034         Functions to set or get a UTF-8 string on the selection
11035         data.
11036
11037         * gtk/gtkclipboard.[ch]: New, simplified selection handling
11038         interfaces.
11039
11040         * gtk/gtkinvisible.c (gtk_invisible_new): Realize newly
11041         created widgets - one of these is useless if we don't.
11042
11043         * gtk/gtkselection.[ch] (gtk_selection_clear_targets): Export
11044         a public function clear all targets registered for the
11045         widget.
11046
11047         * gtk/gtkselection.c (gtk_selection_owner_set) docs/Changes-2.0.txt:
11048         Never call gtk_widget_realize() - that was just asking
11049         for bizarre side-effects.
11050
11051         * gtk/gtkselection.c (gtk_selection_owner_set): Call
11052         gdk_selection_owner_set even if the widget is the
11053         same so that we reliably update the timestamp on
11054         the server.
11055
11056         * gdk/x11/gdkevents-x11.c gdk/x11/gdkx.h: Add a 
11057         gdk_x11_get_server_time() function.
11058         
11059         * gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.h
11060         gdk/x11/gdkselection-x11.c gdk/x11/gdkwindow-x11.h:
11061         Add some tricky filtering on serial numbers for
11062         selection clear events to fix up long-standard
11063         race condition FIXME's in gtkselection.c.
11064
11065         * gdk/gdkproperty.h gdk/x11/gdkselection-x11.h: Add
11066         routines to convert from utf8 to compound text or
11067         STRING and from a text property to UTF-8.
11068
11069         * gtk/gtkmain.[ch] (gtk_get_current_event_time): Add 
11070         a convenience function gdk_get_current_event_time().
11071
11072         * gtk/gtkselection.c (gtk_selection_data_copy/free): Copy
11073         and free selection_data->data properly
11074
11075 Sat Sep  9 10:23:53 2000  Owen Taylor  <otaylor@redhat.com>
11076
11077         * gtk/gtkthemes.c: Remove some unecessary includes.
11078
11079 2000-09-08  Jonathan Blandford  <jrb@redhat.com>
11080
11081         * gtk/gtktextdisplay.c
11082         * gtk/gtktextlayout.c
11083         * gtk/gtktexttag.c
11084         * gtk/gtktexttag.h
11085         * gtk/testtext.c: Change the overstrike property to strikethrough,
11086         to closer match pango.
11087
11088 Fri Sep  8 14:28:00 2000  Owen Taylor  <otaylor@redhat.com>
11089
11090         * gtk/gtktextview.c: Fix up visibility so that focus,
11091         cursor_visible and blink interact properly.  Reenable cursor blink
11092         which had been roughly disabled. Make blink and focus
11093         properly per-view.
11094
11095         * gtk/gtktextlayout.[ch] (gtk_text_layout_set_cursor_visible):
11096         Add a flag for whether to display insertion cursor and
11097         a function to set the flag.
11098
11099         * gtk/gtktextlayout.c (gtk_text_layout_get_line_yrange): Change
11100         get_line_y() to get_line_yrange(), to be a bit more generally
11101         useful.
11102
11103 Thu Sep 07 20:54:33 2000  George Lebl <jirka@5z.com>
11104
11105         * gtk/gtkmenu.c:  in gtk_menu_set_submenu_navigation_region
11106           do stop_navigating_submenu, to clear last timeout properly.
11107           Also in gtk_menu_motion_notify move ignore_enter above
11108           the conditional to make it always happen as suggested by Owen
11109
11110 2000-09-07  Tor Lillqvist  <tml@iki.fi>
11111
11112         * gdk/win32/makefile.mingw.in: Use -Wall. Add gdkpango-win32.o
11113
11114         * gdk/win32/gdkwin32.h: Add more definitions missing from the free
11115         w32api headers.
11116
11117         * gdk/win32/gdkprivate-win32.h: Add a couple of missing
11118         declarations.
11119
11120         * gdk/win32/gdkdrawable-win32.c: Remove gcc -Wall warnings.
11121         (gdk_win32_get_colormap): A line had been deleted by mistake.
11122
11123         * gdk/win32/gdkevents-win32.c: Remove lint (gcc -Wall) here, too.
11124         (gdk_event_translate): Handle more virtual keycodes to be able to
11125         generate GDK events for Control-comma, Control-period, etc.
11126
11127         * gtk/gtk.def: Add some missing entry points.
11128
11129 Thu Sep  7 11:47:02 2000  Owen Taylor  <otaylor@redhat.com>
11130
11131         * gtk/gtktextbuffer.c gtk/gtkimcontext.c gtk/gtkwidget.c:
11132         Doc comment fixing. (Mostly non-matching parameter names.)
11133
11134         * gtk/gtkcalendar.c gtk/gtklist.c gtk/gtknotebook.c: Modify
11135         comments a little to avoid looking like a doc comment.
11136
11137         * gtk/gtkspinbutton.h (GTK_INPUT_ERROR): Change INPUT_ERROR to
11138         GTK_INPUT_ERROR. (Should the mechanism for erros in spin button
11139         conversions be changed to GError?)
11140
11141         * gtk/gtkcolorsel.c (GTK_CUSTOM_PALETTE_WIDTH/HEIGHT): 
11142         Move private #defines into .c file.
11143
11144         * gtk/gtktexttag.c (gtk_text_tag_class_init): Alphabetize
11145         order of argument addition, remove duplicates.
11146
11147         * gtk/gtkaspectframe.h (struct _GtkAspectFrameClass):
11148         parent class is FrameClass, not BinClass.
11149
11150         * gtk/gtk.h: Add gtkinvisible, which was missing.
11151         (It's occasionalyl useful for client apps, if seldom.)
11152
11153         * gdk/gdktypes.h: Remove obsolete GDK_CORE_POINTER
11154         #define.
11155
11156 Wed Sep  6 09:53:15 2000  Owen Taylor  <otaylor@redhat.com>
11157
11158         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Use X-space
11159         coordinates when creating window, instead of GDK-space
11160         coordinates. (Avoid BadValue on too large windows.)
11161
11162 2000-09-05  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
11163
11164         * configure.in (use_mmx_asm): Remove conftest* after use along the
11165         lines of AC_TRY_COMPILE.        
11166         
11167         * gtk/gtkrc.c (gtk_rc_parse_file): Use g_path_get_dirname instead
11168         of g_dirname, which is deprecated.
11169         (gtk_rc_parse_any): Removed calls to
11170         g_scanner_{freeze,thaw}_symbol_table, which are deprecated.
11171
11172         * gtk/gtkbindings.c (binding_entry_new, binding_entry_destroy):
11173         Removed calls to g_hash_table_{freeze,thaw}, as they are
11174         deprecated now.
11175
11176         * gtk/testtext.c (buffer_pretty_name): Use g_path_get_basename
11177         instead of g_basename.
11178         
11179 2000-09-04 Elliot Lee <sopwith@redhat.com>
11180         
11181         * gdk/gdkpixbuf.h: Put text after #endif inside a comment to avoid
11182         ANSI warning.
11183
11184 Sun Sep 03 00:47:08 2000  George Lebl <jirka@5z.com>
11185
11186         * gtk/gtkwidget.h:  Add some documenting comments about 
11187           GTK_CAN_DEFAULT, GTK_HAS_DEFAULT and GTK_RECEIVES_DEFAULT
11188           just as owen said on irc.
11189
11190         * gtk/gtkwindow.c (gtk_window_set_default):  Don't blindly
11191           set HAS_DEFAULT.  Only set it if there isn't another window
11192           holding it (a focus window which RECEIVES_DEFAULT) and only unset
11193           it if the widget is not the focused window with RECEIVES_DEFAULT.
11194           This fixes weird double default bugs in dialogs which has things
11195           call gtk_window_set_default at times.
11196
11197 Fri Sep  1 22:39:07 2000  Owen Taylor  <otaylor@redhat.com>
11198
11199         * gtk/gtkmenu.[ch] TODO.xml: Apply patch from
11200         Nils Barth and David Santiago to improve submenu
11201         navigation. The patch does this by creating a triangular
11202         region from the point where the pointer leaves the
11203         menu to the submenu.  While the pointer is in
11204         that region and a timeout has not expired, events 
11205         that would cause the active submenu to change are
11206         ignored.
11207
11208 Fri Sep  1 15:34:46 2000  Owen Taylor  <otaylor@redhat.com>
11209
11210         * gdk/x11/gdkwindow-x11.c (gdk_window_move): Fix bug where
11211         moving a toplevel window immediately after sizing it would
11212         result in it being sized back to the old size since 
11213         impl->width, impl->height aren't updated until we hear
11214         back from the server. There is still a (longstanding) bug
11215         here that gdk_window_get_size() will give the wrong size
11216         until we do hear back.
11217
11218 2000-08-31  Havoc Pennington  <hp@redhat.com>
11219
11220         * gtk/gtktextiter.h, gtk/gtktextiter.c, gtk/gtktextlayout.h, 
11221         gtk/gtktextlayout.c, gtk/gtktexttag.h, gtk/gtktexttag.c, 
11222         gtk/gtktexttagprivate.h, gtk/gtktextview.c:
11223         Rename GtkTextStyleValues to GtkTextAttributes
11224
11225 2000-08-31  Havoc Pennington  <hp@pobox.com>
11226
11227         * gtk/gtktextbtree.c (GtkTextBTree): cache end line, 
11228         for rapid testing whether an iterator is the end iterator
11229         (gtk_text_btree_new): init end line cache
11230         (gtk_text_line_is_last): use fast cached line to 
11231         see if we're the last line.
11232         (get_last_line): use cached line here too, should 
11233         speed up some random unrelated code.
11234         
11235 2000-08-30  Havoc Pennington  <hp@pobox.com>
11236
11237         * gtk/gtkmarshal.list: Add marshallers for changed GtkTextBuffer
11238         signals.
11239
11240         * gtk/gtktextbuffer.h: Add "interactive" arg to insert_text and
11241         delete_text signals. This allows the signals to be used for
11242         implementing undo.
11243
11244         * gtk/gtktextbuffer.c: Change signal handler signatures; 
11245         provide "interactive" argument when emitting insert_text or
11246         delete_text signal.
11247         
11248 2000-08-30  Havoc Pennington  <hp@pobox.com>
11249
11250         * gtk/gtktextbuffer.c: Docs
11251
11252 Fri Aug 25 12:16:15 2000  Owen Taylor  <otaylor@redhat.com>
11253
11254         * gdk/x11/gdkimage-x11.c: remove GDK_IMAGE_SHARED_PIXMAP
11255         from switch statements, since Tor removed the enumeration
11256         value.
11257         
11258         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
11259         s/GDK_IS_WINDOW/GDK_IS_DRAWABLE/.
11260
11261 2000-08-29 Elliot Lee <sopwith@redhat.com>
11262         * */*.h: Use G_GNUC_CONST.
11263
11264 2000-08-27  Havoc Pennington  <hp@pobox.com>
11265
11266         * gtk/gtktextiter.c, gtk/gtktextiter.h: wrote lots of API docs,
11267         minor indentation fixes, inserted some FIXME about stuff I
11268         realized was broken while documenting it.
11269         (gtk_text_iter_get_pixmap): allow out params to be NULL, following
11270         GTK convention  
11271
11272 Tue Aug 22 12:33:24 2000  Owen Taylor  <otaylor@redhat.com>
11273
11274         * gtk/testgtk.c (create_styles): Fix double free of
11275         font desc.
11276
11277 Mon Aug 21 22:39:18 2000  Owen Taylor  <otaylor@redhat.com>
11278
11279         * gtk/gtkwidget.[ch]: Add gtk_widget_modify_{fg,bg,text,base,font}.
11280         
11281         * gtk/testgtk.c (create_styles): Add a test for modifying
11282         the style through gtk_widget_modify_*.
11283
11284         * gtk/gtkwidget.c (gtk_widget_get_modifier_style): Add
11285         a function to get the current modifier style.
11286
11287         * gtk/gtkwidget.c (gtk_widget_modify_style): Make a copy
11288         of the passed in GtkRcStyle instead of ref'ing it.
11289
11290         * gtk/gtkrc.[ch]: Add gtk_rc_style_copy().
11291
11292 2000-08-20  Tor Lillqvist  <tml@iki.fi>
11293
11294         * gdk/gdkimage.h
11295         * gdk/win32/gdkimage-win32.c: No need any longer on Win32 for the
11296         shared memory image+pixmap GdkImage type, or
11297         gdk_image_bitmap_new(). They were used in the gdk_imlib port, but
11298         I am dropping that.
11299
11300         * gtk/gtkmain.h: On Win32, use a #define to map gtk_init() to
11301         actually call gtk_init_abi_check(), passing also
11302         sizeof(GtkWindow). Ditto for gtk_init_check(). 
11303
11304         * gtk/gtk.def
11305         * gtk/gtkmain.c: (gtk_init_abi_check, gtk_init_check_abi_check):
11306         New functions, used to check that the GTK+-using code has been
11307         compiled using the correct compiler and switches. In particular,
11308         with gcc one has to use the -fnative-struct switch as GTK+ is
11309         compiled with that.
11310
11311 Fri Aug 18 17:27:46 2000  Owen Taylor  <otaylor@redhat.com>
11312
11313         * gtk/gtkclist.c (gtk_clist_merge): Don't leave dangling
11314         ->prev fields when merging lists. (Found simultaneously
11315         by Pawel Salek and Jakub Jelinek)
11316
11317 2000-08-12  Tor Lillqvist  <tml@iki.fi>
11318
11319         * gdk/gdk.def
11320         * gtk/gtk.def: Add missing entries.
11321
11322         * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Use
11323         OUT_TT_ONLY_PRECIS, try to get a TrueType font.
11324
11325         * gdk/win32/gdkinput-win32.c (gdk_device_get_state): New
11326         function. Dummy implementation at this point.
11327
11328         * gtk/makefile.mingw.in: Fix typo. Add testtext and testtextbuffer
11329         rules. Undefine GTK_COMPILATION when compiling the test programs.
11330         
11331         * gtk/gtkdebug.h: Mark gtk_debug_flags for export/import.
11332
11333 2000-08-11  Tor Lillqvist  <tml@iki.fi>
11334
11335         * gtk/gtkfilesel.c: Add more calls to g_filename_{to,from}_utf8()
11336         to convert back and forth from UTF-8 and the "system" (or "current
11337         locale") charset when necessary. Indentation/spacing cleanup.
11338
11339 2000-08-10  Havoc Pennington  <hp@redhat.com>
11340
11341         * Makefile.am (snapshot): Change the format of the snapshot
11342         version to match glib
11343
11344         * gdk/win32/Makefile.am (EXTRA_DIST): remove gdkinputprivate.h
11345         from EXTRA_DIST since it doesn't seem to exist
11346
11347 2000-08-10  Tor Lillqvist  <tml@iki.fi>
11348
11349         * gtk/gtkfilesel.c (open_new_dir): Use the "system codepage"
11350         version of the directory name (not the UTF-8 one) when building
11351         the path name to stat().
11352
11353 2000-08-03  Elliot Lee  <sopwith@redhat.com>
11354
11355         * gdk/gdkpango.c (gdk_draw_layout_line): Don't shape runs with a
11356         PANGO_ATTR_SHAPE set.
11357
11358 Thu Aug  3 09:17:06 2000  Owen Taylor  <otaylor@redhat.com>
11359
11360         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Applied patch from
11361         Peter Osterlund to simplify the code while keeping the
11362         functionality the same.
11363
11364 Wed Aug  2 14:57:38 2000  Owen Taylor  <otaylor@redhat.com>
11365
11366         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Move
11367         is_viewable() test further inside the function, since removing the 
11368         window from the redraw list without clearing ->update_area
11369         was also very broken.
11370
11371 2000-08-02  Tor Lillqvist  <tml@iki.fi>
11372
11373         * configure.in: Check for <unistd.h>.
11374
11375 2000-08-01  Martin Baulig  <baulig@suse.de>
11376
11377         * gtk/gtkmain.c (gtk_init_check): Use g_message() and not g_warning()
11378         to display the message that this is a development version of GTK+.
11379
11380 Mon Jul 31 18:37:36 2000  Owen Taylor  <otaylor@redhat.com>
11381
11382         * gtk/gtkentry.c (entry_adjust_scroll): Fix problem where computation
11383         was depending on widget->allocation instead of the width of text_area,
11384         which was incorrect for subclasses like GtkSpinButton.
11385
11386         * gdk/gdkpango.c (gdk_draw_layout): Fix a couple of typos
11387         with width == 1 tests that should be width == -1.
11388
11389 Mon Jul 31 16:45:48 2000  Owen Taylor  <otaylor@redhat.com>
11390
11391         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Replace broken, 
11392         (broken, Elliot, every single window blank on X) custom code with call
11393         to gdk_window_is_viewable() which a) prevents code duplicate and
11394         b) works. 
11395
11396 2000-07-31  Elliot Lee  <sopwith@redhat.com>
11397
11398         * gtk/gtkcolorsel.c: We really do need to include gdkfb.h in order
11399         to get the GDK_PARENT_ROOT() macro to work.
11400         * gtk/gtkmarshal.list: Add NONE:STRING,POINTER
11401         * gdk/gdkwindow.c: Don't send expose events, or invalidate pieces
11402         of, windows that aren't shown.
11403         * gdk/linux-fb: Redraw-when-menu-hidden solved, plus a bunch of
11404         pointer grab stuff.
11405
11406 Mon Jul 31 13:53:16 BST 2000  Tony Gale <gale@gtk.org>
11407
11408         * docs/gtkfaq.sgml docs/gtk-faq.sgml:
11409           s/gtk_main_iteration/g_main_iteration/
11410
11411           Did this already in change:
11412                 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
11413           don't know how it got reverted.
11414
11415 2000-07-31  Stanislav Brabec  <utx@penguin.cz>
11416
11417         * gdk/gdk.c: #ifdef G_ENABLE_DEBUG around gdk_arg_debug_cb and
11418         gdk_arg_no_debug_cb to fix compilation problem with --disable-debug.
11419
11420         * gdk/Makefile.am: Link gdk against actually compiled gdk_pixbuf-1.3,
11421         not gdk_pixbuf.
11422
11423 2000-07-30  Pablo Saratxaga <pablo@mandrakesoft.com>
11424
11425         * configure.in,po/{sp,sr}.po: Added Serbian files
11426
11427 2000-07-30  Tor Lillqvist  <tml@iki.fi>
11428
11429         * gdk/Makefile.am: Add makefile.mingw.in to EXTRA_DIST.
11430
11431         * gdk/win32/gdkevents-win32.c (gdk_events_init, gdk_events_queue):
11432         Remove the g_pipe_readable_msg stuff. Not needed with new GLib
11433         GIOChannel implementation.
11434
11435         * gdk/win32/gdkinput.c
11436         * gdk/win32/gdkpango-win32.c: Update license name here, too.
11437
11438         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_lookup): Fix
11439         definition to match prototype.
11440
11441         * gtk/makefile.mingw.in: Add libiconv CFLAGS and LIBS.
11442
11443 2000-07-27  Elliot Lee  <sopwith@redhat.com>
11444
11445         * gtk/gdk-pixbuf-loader.[ch]: Add gdk_pixbuf_loader_new_with_type
11446         function, to allow handling image formats that cannot be detected
11447         by looking at content alone.
11448
11449 Thu Jul 27 13:13:21 BST 2000  Tony Gale <gale@gtk.org>
11450
11451         * docs/tutorial/*.gif *.jpg *.eps
11452           Update these to the same look-n-feel.
11453           Why does including images in DocBook suck so badly?
11454
11455 Thu Jul 27 05:06:29 2000  Tim Janik  <timj@gtk.org>
11456
11457         * gtk/gtktable.c: applied patch from Phil Thompson
11458         <phil@river-bank.demon.co.uk> that enables space settings for
11459         the last row/columns as well.
11460
11461 Wed Jul 26 12:59:31 2000  Tim Janik  <timj@gtk.org>
11462
11463         * *.[hc]: applied patch from Andreas Persenius <ndap@swipnet.se> that
11464         updates the license headers to the GNU Lesser General Public License,
11465         as well as updating the copyright year to 2000.
11466
11467 2000-07-26  Robert Brady  <rwb197@zepler.org>
11468
11469         * configure.in: Cause GETTEXT_PACKAGE to be consistent in config.h
11470           and po/Makefile, was installing and looking for them under gtk20
11471           and gtk2 respectively.
11472
11473 2000-07-25  Havoc Pennington  <hp@redhat.com>
11474
11475         * gtk/testtext.c: Comment out some stuff that depends on the rest
11476         of my patches.
11477
11478 2000-07-25  Havoc Pennington  <hp@redhat.com>
11479
11480         * gtk/gtkmarshal.list: Add NONE:POINTER,POINTER,INT for the text
11481         buffer
11482
11483 2000-07-25  Havoc Pennington  <hp@redhat.com>
11484
11485         * gtk/testtext.c, gtk/testtextbuffer.c: update to reflect text
11486         widget changes.
11487
11488         * gtk/gtktextview.h: To be consistent with usage of "line"
11489         throughout the API to mean "newline-terminated thingy", change
11490         MOVEMENT_LINE to be MOVEMENT_WRAPPED_LINE, and MOVEMENT_PARAGRAPH
11491         to MOVEMENT_LINE.
11492
11493         (GtkTextView): Add flags for default editability, and whether to
11494         show the cursor. Add functions to get/set that. Add 
11495
11496         (gtk_text_view_get_iter_location): new function
11497
11498         * gtk/gtktexttypes.h: Move GtkTextLine typedef from here to
11499         gtktextlayout.h
11500         (g_convert): Add g_convert temporarily, will go in glib in a bit
11501         
11502         * gtk/gtktexttagtable.h: include gtktexttag.h, and define
11503         GtkTextTagTableForeach instead of brokenly using GHFunc.
11504         Change gtk_text_tag_table_foreach() so it doesn't use GHFunc.
11505
11506         * gtk/gtktexttagprivate.h: Remove GtkTextStyleValues from here,
11507         moved to public header.
11508
11509         * gtk/gtktexttag.h: Rename the "elide" attribute of tags to
11510         "invisible", since "elide" was a bad name.
11511         (gtk_text_tag_get_priority): Added
11512
11513         (GtkTextStyleValues): put this in public header, along with
11514         functions to use it.
11515
11516         * gtk/gtktextmarkprivate.h: Include more headers, since we no
11517         longer include gtktextbtree.h.
11518
11519         * gtk/gtktextmark.h: Add gtk_text_mark_ref, gtk_text_mark_unref,
11520         gtk_text_mark_deleted
11521
11522         * gtk/gtktextlayout.h: Don't include the "really private" headers,
11523         only buffer/iter. Forward declare GtkTextLIne and GtkTextLineData
11524         to make this possible. Now we only need to install
11525         gtktextlayout.h, not gtktextbtree.h and gtktext*private.h.
11526         (However the Makefile.am isn't changed yet because of the
11527         logistics of merging gtk-hp-patches piecemeal)
11528
11529         * gtk/gtktextiterprivate.h: include btree header, so it compiles;
11530         rename gtk_text_iter_get_line to gtk_text_iter_get_text_line since
11531         gtk_text_iter_get_line is now used in the public API for a
11532         different purpose.
11533
11534         * gtk/gtktextiter.h: Clean up function names to be more
11535         consistent. Always call char offset "offset" and byte index
11536         "index". A "line" is always a line number. 
11537
11538         (gtk_text_iter_is_last): new function, more efficient than 
11539         the existing way to check
11540         (gtk_text_iter_is_first): new function, also more efficient
11541
11542         (gtk_text_iter_up_lines, gtk_text_iter_down_lines): Remove these
11543
11544         (gtk_text_iter_next_char, gtk_text_iter_prev_char): Renamed from 
11545         gtk_text_iter_forward_char, etc.
11546
11547         (gtk_text_iter_forward_to_tag_toggle): Renamed from
11548         forward_find_tag_toggle, since this isn't a linear search
11549
11550         (GtkTextCharPredicate): rename from GtkTextViewCharPredicate
11551
11552         (gtk_text_iter_forward_search, gtk_text_iter_backward_search): 
11553         New functions, search for a buffer substring.
11554
11555         * gtk/gtktextbuffer.h: Add fields to store whether a paste is
11556         interactive and default editable (since we need to store that info
11557         until we receive the selection data).
11558
11559         Remove all the _at_char and at_line etc. versions of functions;
11560         only have iterator versions.
11561
11562         Add _interactive() versions of functions, that consider the
11563         editability of text. (FIXME add interactive flag to the 
11564         insert/delete signals per Darin's suggestion)
11565
11566         (gtk_text_buffer_get_tag_table): new function, demand-creates the
11567         tag table if necessary
11568
11569         Remove declaration of gtk_text_buffer_get_iter_from_string
11570
11571         (_gtk_text_buffer_get_btree): private/internal function, added.
11572         
11573
11574         * gtk/gtktextbtree.h: Remove forward decl of GtkTextLineData.
11575         (gtk_text_line_is_last): new function
11576
11577 2000-07-25  Havoc Pennington  <hp@redhat.com>
11578
11579         * gtk/gtkprogressbar.h: Implement new sane, 5-function API for
11580         using GtkProgressBar. See Changes-2.0.txt for details.
11581
11582         * gtk/gtkprogressbar.c: Add object arguments "fraction" and
11583         "pulse_step" which are the equivalent of
11584         gtk_progress_bar_set_pulse_step and gtk_progress_bar_set_fraction.
11585         Implement new API.
11586         
11587         * gtk/gtkprogress.h (struct _GtkProgress): Add a field
11588         (use_text_format) to mark whether text set on the progress bar is
11589         a format string. Deprecate entire GtkProgress interface.
11590
11591         * gtk/gtkprogress.c (gtk_progress_init): init use_text_format to TRUE
11592         (gtk_progress_build_string): make this a no-op if use_text_format
11593         is FALSE
11594
11595         * docs/Changes-2.0.txt: Describe progress bar changes.
11596
11597 2000-07-25  Tor Lillqvist  <tml@iki.fi>
11598
11599         * Makefile.am: Include the build directory.
11600
11601         * configure.in: Generate build/Makefile, build/win32/Makefile,
11602         gdk/, gdk/win32/, and gtk/makefile.mingw.
11603
11604         * config.h.win32: Add USE_GMODULE and USE_MMX for gdk-pixbuf.
11605         Add GETTEXT_PACKAGE.
11606         
11607         * gdk/gdk.def
11608         * gtk/gtk.def: Updates.
11609
11610         * gdk/gdkfont.h
11611         * gdk/gdkpixmap.h: Remove temporary Win32-only functions, we don't
11612         need them any longer.
11613
11614         * gdk/gdkinput.h: Mark gdk_core_pointer for export/import.
11615
11616         * gdk/makefile.mingw.in: Define GDK_COMPILATION. Link with
11617         PANGOWIN32_LIBS and gdk_pixbuf.
11618
11619         * gdk/win32: Compiles, but no doubt doesn't work at all.
11620
11621         * gdk/win32/makefile.mingw.in: Define GDK_COMPILATION. 
11622
11623         * gdk/win32/gdkinput.c: New file, temporarily.
11624         
11625         * gdk/win32/gdkinput-win32.h: New file
11626
11627         * gdk/win32/gdkinputprivate.h: Remove.
11628
11629         * gdk/win32/gdkpango-win32.c: New file.
11630
11631         * gtk/makefile.mingw.in: New file
11632
11633         * gtk/makefile.cygwin: Removed
11634         
11635         * gtk/Makefile.am: Update accordingly.
11636
11637         * gtk/gtkrc.[ch] (gtk_win32_get_installation_directory): Renamed and
11638         made externally visible.
11639
11640         * gtk/gtkmain.c: Use it.
11641         
11642         * gtk/gtktextdisplay.c: No need to include pangox.h, pango.h
11643         is enough.
11644
11645         * gtk/gtktypeutils.c: Mark glib_debug_objects for import.
11646
11647 2000-07-24 Elliot Lee <sopwith@redhat.com>
11648         * gdk/gdkprivate.h: Remove gdk_*_lookup() defines, since they are defined by the
11649         individual backends already.
11650         * gdk/gdkregion-generic.h, gdk/gdktypes.h: Put gdkregionbox & gdksegment back together
11651         again. Yes, there really is a good reason for this, if you are using the gdkregion
11652         internals, and if you're not, why do you care?
11653         * gdk/gdkwindow.c: Fix inverted condition
11654         * gdk/linux-fb: Compiles (for me - it will not work elsewhere most likely).
11655         * gtk/gtkcolorsel.c, gtk/gtkwindow.c: Add include for linux-fb
11656         * gtk/gtkrange.c: Redraw trough when moving.
11657         * gtk/gtktypeutils.c: Fix warning by adding const cast.
11658         * modules/linux-fb/basic.c: Fix unknown glyph retrieval.
11659
11660 2000-07-23  Tor Lillqvist  <tml@iki.fi>
11661
11662         * configure.in: Check for mkstemp and sigsetjmp. Output
11663         gdk-pixbuf/makefile.mingw and gdk-pixbuf/pixops/makefile.mingw.
11664
11665         More work on GDK for Win32. Still in an intermediate state.
11666
11667         * gdk/makefile.cygwin
11668         * gdk/win32/makefile.cygwin: Removed.
11669         
11670         * gdk/makefile.mingw.in
11671         * gdk/win32/makefile.mingw.in: New files.
11672
11673         * gdk/Makefile.am
11674         * gdk/win32/Makefile.am: Generate and distribute them.
11675
11676         * gdk/win32/gdkwindow-win32.h
11677         * gdk/win32/gdkdrawable-win32.h
11678         * gdk/win32/gdkpixmap-win32.h: New files.
11679
11680         * gdk/win32/gdkcolor-win32.c
11681         * gdk/win32/gdkcursor-win32.c
11682         * gdk/win32/gdkdrawable-win32.c
11683         * gdk/win32/gdkgc-win32.c
11684         * gdk/win32/gdkimage-win32.c
11685         * gdk/win32/gdkprivate-win32.h
11686         * gdk/win32/gdkwin32.h: Update data structures. Cosmetics:
11687         Rename fields and variables called xcursor, xid, etc (these names
11688         were leftovers from the X11 backend) to hcursor, hwnd, hbitmap etc.
11689
11690 Sat Jul 22 17:41:26 2000  Owen Taylor  <otaylor@redhat.com>
11691
11692         * gtk/gtkentry.[ch]: Fix some problems with vertical
11693         alignment.
11694
11695         * gtk/gtkentry.c (gtk_entry_find_position): Fix 
11696         char/byte confusion.
11697
11698 Sat Jul 22 11:16:05 2000  Owen Taylor  <otaylor@redhat.com>
11699
11700         * gtk/gtktextview.c (changed_handler): Fix bug where
11701         redraw wasn't being done properly when height of
11702         dirty region changed.
11703
11704         * demos/Makefile.am: Remove various references to
11705         -lgmodule
11706
11707 Fri Jul 21 15:28:13 2000  Owen Taylor  <otaylor@redhat.com>
11708
11709         * gtk/gtktextlayout.[ch], gtk/gtktextdisplay.c: Use new
11710         PangoAttrShape to reserve space for pixmaps, add 
11711         GSList *pixmaps to GtkTextLineDisplay, draw the pixmaps
11712         in the display functions.
11713         
11714         * gtk/testgtk.c (create_layout): Set some more exotic
11715         scrolled window options
11716
11717         * gtk/gtkscrolledwindow.[ch] (gtk_scrolled_window_set_shadow_type):
11718         Add function to set the shadow type of a window, to allow
11719         putting a shadow around widgets such as GtkLayout or GnomeCanvas
11720         which don't draw their own frame.
11721
11722 Fri Jul 21 16:34:42 BST 2000  Tony Gale <gale@gtk.org>
11723
11724         * docs/tutorial/package-db-tutorial.sh: New file for
11725           packaging DocBook format tutorial
11726
11727 Fri Jul 21 14:23:51 BST 2000  Tony Gale <gale@gtk.org>
11728
11729         * docs/tutorial/gtk-tut.sgml: Minor updates
11730
11731         * docs/tutorial/*.jpg *.eps: Screenshots for tutorial
11732
11733 2000-07-19  Tor Lillqvist  <tml@iki.fi>
11734
11735         * gtk/gtksignal.c: Fix C++ comment.
11736
11737         * gtk/gtkimmulticontext.c
11738         * gtk/gtktextbtree.c: Remove gccisms: Don't use __FUNCTION__,
11739         don't return value from void functions.
11740
11741         * gtk/gtk.def: Add gtk_rc_style_unref.
11742
11743 2000-07-19  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
11744
11745         * gdk-pixbuf/gdk-pixbuf.h, gtk/gtkhsv.h, gtk/gtktextbtree.h,
11746         gtk/gtktextbuffer.h, gtk/gtktextchild.h, gtk/gtktextdisplay.h,
11747         gtk/gtktextiter.h, gtk/gtktextiterprivate.h, gtk/gtktextlayout.h,
11748         gtk/gtktextmarkprivate.h, gtk/gtktextsegment.h, gtk/gtktexttag.h,
11749         gtk/gtktexttagtable.h, gtk/gtktexttypes.h, gtk/gtktextview.h,
11750         gtk/gtktypeutils.h: Include files outside of the extern "C"
11751         block. Makes some C++ compiler happy. Reported by Denis Vakatov
11752         <vakatov@peony.nlm.nih.gov>.
11753
11754 Wed Jul 19 14:07:57 BST 2000  Tony Gale <gale@gtk.org>
11755
11756         * docs/tutorial/gtk-tut.sgml: Yet more clean ups.
11757           Completes first pass. Hurrah!
11758
11759 Tue Jul 18 17:17:55 BST 2000  Tony Gale <gale@gtk.org>
11760
11761         * docs/tutorial/gtk-tut.sgml: More clean ups.
11762
11763 Mon Jul 17 18:52:38 2000  Owen Taylor  <otaylor@redhat.com>
11764
11765         * gtk/gtkentry.c (gtk_entry_draw_text): Restore code to
11766         paint the background of the text area which was accidentally
11767         removed at some point.
11768
11769         * gtk/gtkrc.[ch] gtk/gtkstyle.[ch] gtk/gtkthemes.[ch]: 
11770           
11771          - Move most of the functionality from the theme vtable
11772            into GtkRcStyleClass and GtkStyleClass. The moved
11773            vtable functions were changed a bit in the move to
11774            work better in their new home.
11775
11776          - Get rid of the engine and engine_data fields from
11777            GtkRcStyle and GtkStyle; instead the theme
11778            engine derives theme-specific subclasses of GtkRcStyle
11779            and GtkStyle
11780
11781          - Add extra dlsym() found entry point to themes,
11782            theme_create_rc_style().
11783
11784         * gtk/gtkstyle.c: Copy xthickness, ythickness fields
11785         in gtk_style_real_copy.
11786
11787         * gtk/themes.[ch]: add a function gtk_theme_engine_register_type()
11788         to register a type associated with an engine. (The engine
11789         won't be unloaded as there is an instance of the type.)
11790
11791
11792 Mon Jul 17 18:19:06 BST 2000  Tony Gale <gale@gtk.org>
11793
11794         * docs/tutorial/gtk-tut.sgml: Clean ups.
11795
11796 Mon Jul 17 13:59:29 BST 2000  Tony Gale <gale@gtk.org>
11797
11798         * docs/tutorial/gtk-tut.sgml: Initial DocBook version. Lots
11799           of cleaning up to do.
11800
11801 2000-07-15  Tor Lillqvist  <tml@iki.fi>
11802
11803         * gdk/testgdk.c: New file, quick hack to test backends for
11804         pixel-by-pixel correctness of the most simple graphic operations.
11805
11806 Fri Jul 14 20:30:25 2000  Owen Taylor  <otaylor@redhat.com>
11807
11808         * Really release 1.3.1
11809         
11810         * gtk-config-2.0.in gtk-2.0.m4: Fix up to correspond to new
11811         include structure.
11812
11813 Fri Jul 14 18:40:39 2000  Owen Taylor  <otaylor@redhat.com>
11814
11815         * Released 1.3.1
11816
11817 Fri Jul 14 16:21:26 2000  Owen Taylor  <otaylor@redhat.com>
11818
11819         * gtk/gtktextlayout.c: use FALSE for size_only most
11820         of the time when calling gtk_text_layout_get_line_display()
11821         to avoid causing double reshapes when a redraw follows
11822         immediately after.
11823
11824 Tue Jul 11 11:13:40 2000  Owen Taylor  <otaylor@redhat.com>
11825
11826         * gtk/gtkrange.c (gtk_range_default_[hv]slider_update): Invalidate
11827         appropriate region and gdk_window_process_updates() so trough
11828         updating doesn't lag behind the window being scrolled.
11829
11830         * gdk/gdkgc.c: Make parent_class pointer static.
11831          
11832 Sun Jul  9 21:31:23 2000  Owen Taylor  <otaylor@redhat.com>
11833
11834         * gdk/gdk-pixbuf.c gtk/gdk-pixbuf-loader.c gtk/gtktextview.c:
11835         include <string.h>.
11836          
11837         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Fix
11838         cut-and-paste error in computing memory offset for 4 channels.
11839
11840 Fri Jul 14 14:05:02 2000  Owen Taylor  <otaylor@redhat.com>
11841
11842         * gtk/gtkrc.c (gtk_rc_parse_pixmap_path_string): Remove
11843         gtk_rc_append_default_pixmap_path(), since it wasn't
11844         adding an interesting path and we don't have a meaningful
11845         default for this value.
11846
11847 Fri Jul 14 12:22:49 2000  Owen Taylor  <otaylor@redhat.com>
11848
11849         * configure.in Makefile.am gtk-config.m4 gtk.m4: Move
11850         gtk-config to gtk-config-2.0 move gtk_.m4 to
11851         gtk-2.0.m4
11852
11853         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
11854         gdk/Makefile.am demos/Makefile.am: Change 
11855         library names to libgtk-1.3.la, etc, so that we
11856         can distinguish gtk-1.2 and gtk-2.0 on the linkline.
11857
11858         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
11859         gdk/Makefile.am gdk/x11/Makfile.am
11860         Move include files into /usr/include/gtk-2.0, 
11861         /usr/lib/gtk-2.0/include/
11862          
11863         * autogen.sh acconfig.h configure.in gtk/gtkmain.c
11864         gtk/gtkintl.h: Change package for gettext from 
11865         gtk+ to gtk20. Put hack in autogen.sh to modify
11866         po/Makefile.in.in after gettextize to make this
11867         possible.
11868
11869         * gtk+.spec: Some updates, not tested.
11870
11871         * gdk-pixbuf/Makefile.am: Move loaders into
11872         $(libdir)/gtk-2.0/$(GTK_VERSION)/loaders.
11873
11874         * gtk/Makefile.am gtk/gtkrc.c: Move RC file locations
11875         $(sysconfdir)/gtk-2.0 ~/.gtkrc-2.0; theme subdir
11876         to THEMENAME/gtk-2.0/. Move engine directory  to
11877         $(libdir)/gtk-2.0/$(GTK_VERSION)/engines.
11878         
11879 2000-07-12  Tor Lillqvist  <tml@iki.fi>
11880
11881         Win32 changes, still doesn't build though.
11882
11883         * gdk/makefile.cygwin
11884         * gdk/win32/makefile.cygwin
11885         * gtk/makefile.cygwin: Updates.
11886
11887         * gdk/win32/gdkgc-win32.c (_gdk_win32_gc_new): Use the same
11888         default values for fg and bg pixel as X11 does (0 and 1), not
11889         black and white. Use PS_ENDCAP_FLAT and PS_JOIN_MITER by default.
11890         Use 0 for pen width by default (treated as 1 anyway later, but for
11891         apps that might check the value in the GdkGC).
11892         (gdk_win32_hdc_get, gdk_win32_hdc_release): New functions, public
11893         interface to gdk_gc_predraw and _postdraw.
11894
11895         * gdk/win32/gdkwin32.h
11896         * gdk/gdk.def: Add gdk_win32_hdc_{get,release}.
11897
11898         * gdk/win32/gdkcolor-win32.c (gdk_colormap_alloc1): Remove
11899         extraneous semicolon.
11900
11901         * gdk/win32/gdkdrawable-win32.c: Check also for pen_width == 0.
11902
11903         * gdk/win32/gdkimage-win32.c (gdk_image_new): Use the visual's depth,
11904         not the Win32 bitspixel value.
11905
11906         * gdk/win32/gdkcc-win32.c:
11907         * gdk/win32/gdkcolor-win32.c 
11908         * gdk/win32/gdkprivate-win32.h
11909         * gdk/win32/gdkwin32.h: Changes to make compilable, with new
11910         GDK object structure.
11911
11912 Tue Jul 11 20:59:35 2000  Tim Janik  <timj@gtk.org>
11913
11914         * docs/tutorial/gtk_tut_12.es.sgml (name): 
11915         * docs/tutorial/gtk_tut_it.sgml (name): 
11916         * docs/tutorial/gtk_tut_fr.sgml (name): 
11917         * docs/tutorial/gtk_tut.sgml (name): scratched notion of completely
11918         outdated email adress: s/timj@psynet.net/timj@gtk.org/.
11919
11920 Tue Jul 11 13:10:57 BST 2000  Tony Gale <gale@gtk.org>
11921
11922         * docs/faq/gtk-faq.sgml: Cleanup indenting and various
11923           small changes.
11924
11925 Tue Jul 11 08:04:58 2000  Tim Janik  <timj@gtk.org>
11926
11927         * gtk/gtktree.c (gtk_real_tree_select_child): eek, i've never seen
11928         a bug here, never been here and never fixed anything ;(
11929         (don't segfault if tree->root_tree is NULL, which happens prior
11930         to widget realization, but puke instead).
11931
11932 Tue Jul 11 06:38:42 2000  Tim Janik  <timj@gtk.org>
11933
11934         * gtk/gtkrc.h: add xthickness and ythickness to GtkRcStyle and
11935         add the necessary tokens.
11936
11937         * gtk/gtkrc.c (gtk_rc_style_init): properly initiality the rc style.
11938         (gtk_rc_style_to_style): copy thicknesses.
11939         (gtk_rc_init_style): apply thicknesses.
11940         (gtk_rc_parse_style): parse xthickness and ythickness.
11941
11942         * gdk/x11/gdkdnd-x11.c: silence compiler in switch() statements.
11943
11944         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): 
11945         (gdk_window_new): 
11946         (_gdk_windowing_window_init): 
11947         * gdk/x11/gdkpixmap-x11.c (gdk_pixmap_foreign_new): 
11948         (gdk_pixmap_create_from_data): 
11949         (gdk_bitmap_create_from_data): 
11950         (gdk_pixmap_new): 
11951         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
11952         (gdk_image_new): 
11953         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): 
11954         * gdk/x11/gdkdnd-x11.c (gdk_drag_context_new): 
11955         * gdk/x11/gdkcolor-x11.c (gdkx_colormap_get):
11956         (gdk_colormap_get_system): 
11957         (gdk_colormap_new): 
11958         * gdk/gdkwindow.c (gdk_window_init): 
11959         * gtk/gtkstyle.c (gtk_style_new):
11960         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done):
11961         * gdk/gdkpixmap.c (gdk_pixmap_init): 
11962         * gtk/gtkrc.c (gtk_rc_style_new):
11963         use g_object_new() instead of g_type_create_instance() which
11964         is a private function for fundamental type implementations.
11965
11966 Thu Jul  6 16:12:14 2000  Owen Taylor  <otaylor@redhat.com>
11967
11968         * configure.in: Add check for db2html
11969
11970 Thu Jul  6 14:53:05 2000  Owen Taylor  <otaylor@redhat.com>
11971
11972         * gtk/gtktypeutils.c (gtk_type_init): Add a temporary 
11973         hack to set glib_debug_objects based on gtk_debug_flags.
11974
11975 Thu Jul  6 14:12:13 2000  Owen Taylor  <otaylor@redhat.com>
11976
11977         * INSTALL.in: Update the Prerequisites section.
11978
11979         * Makefile.am demos/Makefile.am docs/Makefile.am
11980         docs/tutorial/Makefile.am gdk/x11/Makefile.am
11981         gdk/linux-fb/Makefile.am: Dist fixes
11982
11983 Thu Jul  6 12:26:03 2000  Owen Taylor  <otaylor@redhat.com>
11984
11985         * NEWS: 10,000 foot view of 1.3.1 changes.
11986
11987 Thu Jul  6 11:54:03 2000  Owen Taylor  <otaylor@redhat.com>
11988
11989         * gdk/gdk.h gdk/gdktypes.h gdk/linux-fb/gdkmain-fb.c
11990         gdk/nanox/gdkmain-nanox.c gdk/win32/gdkevents-win32.c
11991         gdk/win32/gdkinput-win32.c gdk/win32/gdkwin32.h
11992         gdk/x11/gdkmain-x11.c: 
11993
11994         Patch from George Lebl to add a GdkGrabStatus enumeration to use
11995         as a return value of gdk_*_grab(). Previously, we just
11996         returned the X11 values directly.
11997
11998 Thu Jul  6 11:27:44 2000  Owen Taylor  <otaylor@redhat.com>
11999
12000         * gdk/x11/Makefile.am: Patch from George Lebl to 
12001         install all the headers in the right place.
12002
12003 Tue Jul  4 13:13:01 BST 2000  Tony Gale <gale@gtk.org>
12004
12005         * docs/faq/gtk-faq.sgml: Add remaining sections. Completes
12006           initial conversion to DocBook.
12007
12008 2000-07-04  Tor Lillqvist  <tml@iki.fi>
12009
12010         * README.win32: Improve a bit.
12011
12012         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Handle also
12013         WM_SYSCHAR, and other changes to get handling of Alt+nnn or
12014         Alt+0nnn on the numpad (used to enter characters by numeric code
12015         from current DOS or ANSI codepage) working correctly, as in other
12016         Windows apps.
12017
12018         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Use
12019         same argument validity tests as in X11 version.
12020         (_gdk_cursor_destroy): Use DestroyCursor, not DestroyIcon.
12021
12022         * gdk/win32/gdkwin32.h: Add also WM_MOUSEWHEEL and CopyCursor
12023         definitions in case missing from headers.
12024
12025         * gdk/win32/gdkwindow-win32.c (gdk_win32_window_destroy): Also
12026         destroy the window-specific cursor.
12027         (RegisterGdkClass): Use the global gdk_ProgInstance instead of
12028         calling GetModuleHandle(NULL).
12029         (gdk_window_set_cursor): Reworked to always copy the passed cursor
12030         with CopyCursor before setting it as the window-specific
12031         cursor. It is OK for the caller to destroy the GdkCursor (and thus
12032         also its Windows cursor) after calling this function. Destroy any
12033         previous window-specific cursor.
12034
12035 Mon Jul  3 17:54:49 2000  Owen Taylor  <otaylor@redhat.com>
12036
12037         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): 
12038         font charset is iso8859-1, not iso-8859-1.
12039
12040 Mon Jul  3 17:08:14 2000  Owen Taylor  <otaylor@redhat.com>
12041
12042         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale):
12043         Use g_get_charset() instead of g_get_codeset().
12044
12045         * gtk/gtkframe.[ch] gtkframe.h gtk/gtktextmark.h: 
12046         Comment out some strdup'ing functions to keep timj
12047         happy until we finish fighting this out.
12048
12049 Mon Jul  3 14:24:16 2000  Owen Taylor  <otaylor@redhat.com>
12050
12051         * gtk/gtkwidget.c (gtk_widget_draw): Ignore calls with
12052         <= width or height.
12053
12054         * gtk/gtktable.c (gtk_table_attach): Fix missed merge
12055         from 1.2 for parent/child states.
12056
12057         * gdk/gdkgc.c (gdk_gc_set_rgb_fg/bg_color): Fix a couple
12058         of typos.
12059
12060         * gdk/gdkevents.[ch]: Remove press/xtilt/ytilt fields of
12061         event structures, replace with a generic axes field. Replace 
12062         deviceid/sourec with GdkDevice *device.
12063
12064         * gdk/gdkevents.[ch] (gdk_event_get_axis): Add function
12065         to extract particular axis use value from event. (Also
12066         can be used for normal X/Y.)
12067
12068         * gdk/gdkinput.h gdk/x11/gdkinput*: Major revision;
12069         allow for arbitrary number of axes, namespace everything
12070         as gdk_device_*. Replace guint32 deviceid with GdkDevice *
12071         everywhere.
12072
12073         * gdk/x11/{gdkmain-x11.c,gdkevent-x11.c,gdkinput*}: 
12074         Get rid of the gdk_input_vtable setup if favor of simply
12075         defining the functions in gdkinput-none/gxi/xfree.c in
12076         a similar fashion to the way that the port structure is 
12077         done.
12078
12079         * gtk/gtkdnd.c: Fix fields of synthesized button press event
12080         for new event structures. 
12081
12082         * gtk/gtkinputdialog.c gtk/testinput.c: Revise to match
12083         new device interfaces.
12084
12085 Sun Jul  2 18:19:50 2000  Owen Taylor  <otaylor@redhat.com>
12086
12087         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_layout): Add a 'text' argument to
12088         set the initial text.
12089
12090         * gtk/gtkaccellabel.c gtk/gtkcalendar.c gtk/gtkclist.c
12091         gtk/gtkentry.c gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c
12092         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvruler.c
12093         gtk/gtkvscale.c: Adapt to new argument of create_pango_layout().
12094
12095         * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
12096         pango_layout_set_font_description to simplify.
12097
12098 Sun Jul  2 17:43:41 2000  Owen Taylor  <otaylor@redhat.com>
12099
12100         * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
12101         pango_layout_set_font_description to simplify.
12102
12103 Sun Jul  2 17:06:40 2000  Owen Taylor  <otaylor@redhat.com>
12104
12105         * gtk/gtkcalendar.c gtk/gtkclist.c gtk/gtkctree.c gtk/gtkhscale.c
12106         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvscale.c gtk/gtkaccellabel.c: Use
12107         pango_layout_get_pixel_extents() to remove a large number of '/ PANGO_SCALE'.
12108
12109         * gtk/gtk[hv]ruler.c gtk/gtklabel.c: replace some / PANGO_SCALE with
12110         PANGO_PIXELS() macro.
12111
12112 Sun Jul  2 15:24:41 2000  Owen Taylor  <otaylor@redhat.com>
12113
12114         * gtk/gtkwidget.[ch] (gtk_widget_get_pango_context): Add new function
12115         that returns a PangoContext owned by the widget and updated to
12116         match future changes in the widget. Also, make 
12117         gtk_widget_create_pango_layout() use this context. If we ever
12118         add a ::changed signal to PangoContext, this will make things
12119         much more convenient. 
12120
12121         * gtk/gtkentry.c gtk/gtklabel.c: Call pango_layout_context_changed()
12122         in the appropriate places instead of destroying the layouts and
12123         creating new ones.
12124
12125         * gtk/gtkfontsel.[ch] gtk/gtkclist.c: Use gtk_widget_get_pango_context()
12126         in a few strategic places.
12127
12128 Sun Jul  2 14:37:58 2000  Owen Taylor  <otaylor@redhat.com>
12129
12130         * gtk/gtkoptionmenu.c (gtk_option_menu_size_request): Call 
12131         gtk_widget_size_request() on reparented child, if one. Otherwise,
12132         queue_resize() on the child never results in it getting size-requested
12133         at all.
12134
12135         * gtk/testgtk.c (build_option_menu): Remove silly radio-menu-items
12136         in option menus, so that (with luck) people won't copy it into
12137         their apps in the future.
12138
12139         * gtk/gtkoptionmenu.c: Connect ::size_request on the menu
12140         to gtk_option_menu_calc_size. This isn't perfect, but should fix
12141         a lot of problems with changing the size of the menu's menu
12142         items after adding it to the option menu.
12143
12144         * gtk/gtktexttag.c: Include gtkmain.h for gtk_get_default_language().
12145
12146         * gtk/gtkwidget.[ch]: Add a ::direction_changed that triggers when
12147         the text direction for a widget changes.
12148
12149         * gtk/gtk{entry.c,label.[ch],textview.[ch]} gtk/testgtk.c: Use
12150         ::direction_changed to get rid of various hacks.
12151
12152 Sun Jul  2 13:19:12 2000  Owen Taylor  <otaylor@redhat.com>
12153
12154         * docs/Changes-2.0.txt: Move Changes-1.4.txt to the appropriate
12155         name.
12156
12157 Sun Jul  2 13:06:26 2000  Owen Taylor  <otaylor@redhat.com>
12158
12159         * gdk/x11/gdkpixmap-x11.[ch] Changes-1.4.txt: Add a is_foreign
12160         flag to the structure. Do not call XFreePixmap on pixmaps created
12161         by gdk_pixmap_foreign_new().
12162
12163 Sun Jul  2 12:45:50 2000  Owen Taylor  <otaylor@redhat.com>
12164
12165         * gdk/gdkrgb.[ch]: Add gdk_rgb_find_color() to get a pixel
12166         value using GdkRGB functionality given GdkColormap and GdkColor.
12167         (name not final, waiting for inspiration.)
12168         
12169         * gdk/gdkgc.[ch] (gdk_gc_set_rgb_fg/bg_color): New functions to
12170         set the foreground/background of a GC using the GC's colormap
12171         and GdkRGB. (name not final, waiting for inspiration.)
12172
12173         * gdk/gdkcompat.h gdk/gdkrgb.c (gdk_rgb_get_colormap): Rename from 
12174         gdk_rgb_get_cmap(), put #define in gdkcompat.h.
12175
12176         * gtk/gtkwidget.[ch] gtkcompat.h: Make visuals for
12177         gtk_widget_get_visual(), gtk_widget_get_default_visual, etc,
12178         purely a function of the corresponding colormap. Make
12179         gtk_widget_set_visual(), etc, noop macros in gtkcompat.h.
12180
12181         * gdk/gdkpixmap.c gdk/x11/gdkpixmap-c11.c: Rewrite
12182         gdk_pixbuf_*create_from_xpm_* in terms of
12183         gdk_pixbuf_new_from_xpm_data(), move into platform independent
12184         code.
12185
12186         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Take
12187         advantage of the new draw_rgb_32_image_dithalign.
12188
12189         * gdk/gdkrgb.c (gdk_draw_rgb_32_image_dithalign): Added.
12190
12191         * gtk/gtkgc.c (gtk_gc_new): Set the appropriate colormap
12192         on each created GC.
12193
12194         * gdk/gdkgc.[ch]: Add gdk_gc_get/set_colormap.
12195
12196         * gdk/gdkgc.[ch]: Add a colormap field to the GdkGC structure
12197         which we initialize from the drawable when the GC is created,
12198         if the drawable has a colormap.
12199
12200         * gdk/x11/gdkgc-x11.c: include string.h for memset.
12201
12202         * gdk/x11/gdkinput-x11.c: include string.h for strlen, etc.
12203
12204         * gtk/gtklayout.[ch]: Remove unsed configure serial member.
12205
12206 Sat Jul  1 16:28:32 2000  Owen Taylor  <otaylor@redhat.com>
12207
12208         * gdk/x11/gdkevents-x11.c (gdk_event_translate): When
12209         actually returning expose events, make sure to set
12210         the count field properly.
12211
12212         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): Fix
12213         accidentally reintroced bug which always cleared
12214         the graphics_exposures value. 
12215
12216 Wed Jun 28 18:03:09 BST 2000  Tony Gale <gale@gtk.org>
12217
12218         * docs/faq/gtk-faq.sgml: Change DocBook layout slightly
12219
12220 Wed Jun 28 17:49:05 BST 2000  Tony Gale <gale@gtk.org>
12221
12222         * docs/faq/gtk-faq.sgml: Finish Section 6. Add Section 7.
12223
12224 Wed Jun 28 13:31:55 BST 2000  Tony Gale <gale@gtk.org>
12225
12226         * docs/faq/gtk-faq.sgml: Start of Section 6.
12227
12228 Mon Jun 26 19:37:04 2000  Owen Taylor  <otaylor@redhat.com>
12229
12230         * configure.in: Put 1.3.1 in warning message, not 1.3.0.
12231         
12232         (Fixes problem with drawing childless frames. Pointed out
12233         by and a first patch from Anders)
12234         
12235         * gtk/gtkframe.c (gtk_frame_compute_child_allocation): Always
12236         compute a child_allocation, even if we don't have a child.
12237
12238         * gtk/gtkaspectframe.c (gtk_aspect_frame_compute_child_allocation):
12239         Always chain to the parent's impl, even if we don't have a child.
12240
12241 Mon Jun 26 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
12242
12243         * gdk/gdkrgb.c: If possible, create only a single shm segment and
12244         use multiple parts of it instead of creating a bunch of separate
12245         segments, since the maximum number of segments per system is not
12246         large. (This might be worth backporting to GTK+-1.2.x if we make a
12247         new release )
12248
12249         * gdk/gdkrgb.c: Localize a bunch of variables into the GdkRgbInfo
12250         structure in preparation for per-colormap GdkRGB.
12251
12252         * gdk/x11/gdkimage-x11.c (gdk_image_new): Don't set gdk_use_xshm
12253         to False when we get EINVAL from shmget so that the caller of
12254         gdk_image_new can retry with a smaller segment size.
12255
12256 Mon Jun 26 13:01:16 BST 2000  Tony Gale <gale@gtk.org>
12257
12258         * docs/faq/gtk-faq.sgml: Add Sections 4 & 5.
12259
12260 Fri Jun 23 17:54:23 2000  Tim Janik  <timj@gtk.org>
12261
12262         * configure.in: make the current version number 1.3.1 (binary age 0,
12263         interface age 0).
12264         
12265         * gtkfeatures.h, gtkfeatures.h.in: dejavue, get rid of these *again*,
12266         gtkcompat.h is all we want.
12267
12268         * gtk/gtktypeutils.[hc]: define most of the primitive types in terms of
12269         GLib primitive types. fixed g_type_register_fundamental() argument
12270         ordering.
12271
12272         * gtk-config.in (lib_gtk): add -lgdk_pixbuf so third party code
12273         compiles.
12274
12275         * gdk-pixbuf-loader.[hc]: get rid of unistd.h include.
12276         object code cleanup, comment trigraph fixes, etc...
12277
12278 2000-06-23  Havoc Pennington  <hp@redhat.com>
12279
12280         * gtk/gtktextview.c (gtk_text_view_set_buffer): Use anonymous mark 
12281         instead of making up a bogus name for first_para_mark
12282
12283         * gtk/gtkstatusbar.h, gtk/gtkstatusbar.c: Allow 
12284         0 as a context ID
12285
12286 Thu Jun 22 17:43:51 BST 2000  Tony Gale <gale@gtk.org>
12287
12288         * docs/faq/gtk-faq.sgml: Change filename. Add Section 3.
12289
12290 2000-06-21  Havoc Pennington  <hp@pobox.com>
12291
12292         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Fix bug where
12293         we didn't check window->bg_pixmap != GDK_NO_BG.
12294
12295         * gtk/gdk-pixbuf-loader.c: Change to reflect GObject-ification of
12296         gdk-pixbuf
12297
12298 Thu Jun 22 14:02:19 BST 2000  Tony Gale <gale@gtk.org>
12299
12300         * docs/faq/gtk-faq.sgm: Move file to here.
12301           TODO: Update Makfile.am 
12302
12303 Thu Jun 22 13:41:09 BST 2000  Tony Gale <gale@gtk.org>
12304
12305         * docs/gtk-faq.sgm: Add Section 2
12306
12307 Thu Jun 22 08:43:45 BST 2000  Tony Gale <gale@gtk.org>
12308
12309         * docs/gtk-faq.sgm: New file. Start of DocBook
12310           version of the FAQ.
12311
12312 Wed Jun 21 23:04:17 2000  Owen Taylor  <otaylor@redhat.com>
12313
12314         * configure.in (GDK_PIXBUF_MAJOR): Define version
12315         numbers for GDK_PIXBUF_*, as they get substituted
12316         into a header file. Need to consider versioning
12317         for gdk-pixbuf more carefully later.
12318
12319 2000-06-21  Raja R Harinath  <harinath@cs.umn.edu>
12320
12321         Work with srcdir != builddir.   
12322         * demos/testanimation.c: Don't include "gdk-pixbuf.h".  Use
12323         <gtk/gdk-pixbuf-loader.h>, not "gtk-pixbuf/gdk-pixbuf-loader.h".
12324         * demos/testpixbuf.c: Likewise.
12325         * demos/testpixbuf-scale.c: Don't include "gdk-pixbuf.h".
12326         * demos/testpixbuf-drawable.c: Don't include "gdk-pixbuf.h".  Use
12327         <gdk/x11/gdkx.h>.
12328         * demos/pixbuf-demo.c: Use <gtk/gtk.h> not "gtk.h".  Don't include
12329         "gdk-pixbuf.h".
12330         * demos/Makefile.am (INCLUDES): Remove unneeded directories.
12331
12332 Wed Jun 21 19:45:02 2000  Owen Taylor  <otaylor@redhat.com>
12333
12334         * TODO.xml: Change 1.4 version numbers to 2.0.
12335
12336 Wed Jun 21 19:29:08 2000  Owen Taylor  <otaylor@redhat.com>
12337
12338         * gdk/gdkpixbuf-render.c gdk/gdkpixbuf-drawable.c: Indentation
12339         fixups to GTK+ standard.
12340
12341 Wed Jun 21 16:38:13 2000  Owen Taylor  <otaylor@redhat.com>
12342
12343         * gdk-pixbuf/* docs/reference/gdk-pixbuf/*: Welcome aboard,
12344         gdk-pixbuf.
12345
12346         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init):
12347         fixups for GObject.
12348
12349         * gdk/Makefile.am gdk/gdkpixbuf-render.[ch] gdk/gdkpixbuf.[ch]: Bits of 
12350         gdk-pixbuf with GDK dependencies moved into GDK.
12351         
12352         * gtk/Makefile.am gtk/gdk-pixbuf-loader.[ch]: Temporarily
12353         move gdk-pixbuf-loader here until GObject has signals.
12354
12355         * demos/: New directory of demos. Move demos from
12356         gdk-pixbuf here.
12357
12358         * demos/pixbuf-init.c: Small bit of code to check for
12359         loaders in ../gdk-pixbuf/.libs/gdk-pixbuf, and if found,
12360         set GDK_PIXBUF_MODULEDIR appropriately.
12361
12362         * gdk/gdkcompat.h: Remove GDK_DRAWABLE_PIXMAP compat
12363         define which no longer makes sense.
12364
12365 2000-06-21  Havoc Pennington  <hp@redhat.com>
12366
12367         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Use
12368         gtk_get_default_language
12369
12370         * gtk/gtkmain.h, gtk/gtkmain.c (gtk_get_default_language): 
12371         new function to get the default language
12372
12373         * gtk/gtktexttagprivate.h, gtk/gtktexttag.c, gtktextview.c: 
12374         s/gtk_text_view_style_values/gtk_text_style_values/
12375
12376         * gtk/gtktexttag.c, gtk/gtktexttag.h, gtk/gtktexttagprivate.h:
12377         Add a "language" field to tags.
12378
12379         (gtk_text_tag_set_arg): Fix bug in setting
12380         "bg_full_height_set" tag.
12381
12382 2000-06-21  Havoc Pennington  <hp@redhat.com>
12383
12384         * gtk/gtktextiter.h: Use gunichar instead of gint when appropriate
12385         in the interfaces
12386
12387         * gtk/gtktexttypes.c: Remove UTF functions, use glib 
12388         stuff instead when possible.
12389
12390         * gtk/gtktexttypes.h: Delete some unused constants
12391
12392         * gtktextbtree.c, gtktextiter.c, gtktextsegment.c, gtktextview.c,
12393         testtextbuffer.c: use glib instead of custom unicode routines
12394
12395 Wed Jun 21 12:50:58 2000  Owen Taylor  <otaylor@redhat.com>
12396
12397         * docs/es/: Removed mistakenly added generated sgml
12398
12399         * docs/{gdk.texi,gtk.texi,gdk.sgml} macros.texi texinfo.tex:
12400         Remove outdated info files.
12401
12402         * docs/gtk_tut* docs/package_tutorial.sh docs/tutorial:
12403         Moved tutorial files into subdir
12404
12405         * docs/gtkfaq.sgml docs/faq/gtkfaq.sgml: Move FAQ into
12406         subdir.
12407
12408         * docs/man/gtk_button.pod: Remove. (contents will be
12409         integrated into gtk-reference button page.)
12410
12411         * configure.in docs/Makefile.am docs/tutorial/Makefile.am
12412         docs/faq/Makefile.am: Adjust for new organization
12413
12414 2000-06-21 Christopher Blizzard  <blizzard@redhat.com>
12415
12416         * gdk/x11/Makefile.am (install-data-local): use $(mkinstalldirs)
12417         not $(MKINSTALLDIRS)
12418
12419 Wed Jun 21 12:24:28 2000  Owen Taylor  <otaylor@redhat.com>
12420
12421         * gtk/testgtk.c (create_text): Finish the job Elliot started
12422         of removing font setting test for text widget. (Since text widget
12423         and GdkFont are not deprecated, and cause portability problems.)
12424
12425 Wed Jun 21 11:41:43 2000  Owen Taylor  <otaylor@redhat.com>
12426
12427         * gtk/gtkentry.c gtk/gtkimcontextsimple.c gtk/gtklabel.c
12428         gtk/gtktexttypes.c gtk/testtext.c modules/linux-fb/basic.c:
12429         Remove use of libunicode in favor of new GLib functions.
12430
12431         * gtk/gtkcolorsel.c: Remove conditional includes for FB, win32,
12432         nano-x, framebuffer. The X11 include is just a hack until we get
12433         the necessary functions in gdkcolor.h, so there is no reason to
12434         add other includes of platforms.
12435
12436         * gtk/gtkwindow.c (gtk_window_compute_default_size): Revert 
12437         window bigger than the screen change.
12438
12439         * gtk/testgtk.c: Revert some random changes from Elliot
12440         that had no particular point and were causing testgtkrc
12441         not to function correctly.
12442         
12443         * gdk/gdkregion-generic.h: Revert change from Elliot. Just
12444         because GdkSegment and GdkRegionBox have the same fields,
12445         it doesn't mean that 'typedef GdkSegment GdkRegionBox'
12446         results in clearer code.
12447
12448         * gdk/x11/gdkinput-x11.c (gdk_input_common_select_events,
12449         gdk_input_translate_coordinates): Fix missed GdkObjectification
12450
12451 2000-06-18  Elliot Lee  <sopwith@redhat.com>
12452
12453         * gdk/Makefile.am, gdk/*/Makefile.am: Fix conditionality to work the "right" way.
12454         * gtk/gtk{plug,socket}.h: Missed commits from previous.
12455
12456 2000-06-20  Havoc Pennington  <hp@redhat.com>
12457
12458         * modules/linux-fb/Makefile.am: Make this compile
12459         without framebuffer enabled
12460
12461         * gdk/linux-fb/Makefile.am: Add conditional to not build
12462         framebuffer unless specified in configure
12463
12464         * gdk/gdkdraw.c (gdk_draw_drawable): Fix bug where I was getting
12465         the size of the target instead of source if -1 was passed for
12466         width/height
12467
12468         * gdk/x11/gdkgeometry-x11.c (gdk_window_compute_position): Fix 
12469         width/height confusion.
12470
12471 2000-06-19  Havoc Pennington  <hp@redhat.com>
12472
12473         * gdk/x11/gdkx.h (GDK_WINDOW_XWINDOW): change this to be
12474         GDK_DRAWABLE_XID. In the future, we probably want to make it
12475         faster with G_DISABLE_CHECKS turned on.
12476
12477 2000-06-14  Havoc Pennington  <hp@redhat.com>
12478
12479         * gdk/Makefile.am: add gdkpixmap.c
12480
12481         * gdk/gdk.c: s/gdk_window_init/_gdk_windowing_window_init/
12482         s/gdk_image_init/_gdk_windowing_image_init
12483
12484         * gdk/gdkcolor.c: make ref/unref compat wrappers for GObject
12485         ref/unref
12486
12487         * gdk/gdkcolor.h: make GdkColormap a GObject subclass
12488
12489         * gdk/gdkcompat.h: remove GdkWindowType compat, since
12490         GdkWindowType is now non-deprecated; 
12491         change gdk_window_get_type() compat to be
12492         gdk_window_get_window_type().
12493
12494         * gdk/gdkdnd.h: make GdkDragContext a GObject.
12495
12496         * gdk/gdkdraw.c, gdk/gdkdraw.h: Convert GdkDrawable to a pure
12497         virtual GObject. Make all functions call into the vtable.
12498         Move gdk_image_put() guts in here. Remove GdkDrawableType
12499         and gdk_drawable_get_type(), these are now GdkWindow-specific.
12500         draw_image, get_depth, get_size, set_colormap, get_colormap,
12501         get_visual added to the vtable.
12502         
12503         * gdk/gdkgc.h, gdk/gdkgc.c: Convert GdkGC to a pure virtual 
12504         GObject. Virtualize everything. 
12505         (gdk_gc_new_with_values): remove check for destroyed window,
12506         because now GdkWindow::create_gc will check this.
12507         (gdk_gc_set_values): New function to set GC values, this 
12508         was already implemented but wasn't in the header
12509
12510         * gdk/gdkimage.h, gdk/gdkimage.c: Convert GdkImage to a GObject.
12511
12512         * gdk/gdkinternals.h: Remove _gdk_window_alloc(), remove
12513         _gdk_window_draw_image(), remove _gdk_windowing_window_class,
12514         remove _gdk_window_class; add _gdk_window_impl_get_type() and
12515         _gdk_pixmap_impl_get_type(). Rename gdk_window_init to
12516         _gdk_windowing_window_init, rename gdk_image_init to
12517         _gdk_windowing_image_init.
12518         
12519         * gdk/gdkpango.c: Reflect GObject-ification of PangoContext.
12520         (gdk_draw_layout): Remove check for destroyed window, 
12521         because all the drawable methods already check it.
12522         
12523         * gdk/gdkpixmap.h, gdk/gdkpixmap.c: Convert GdkPixmap to GObject.
12524         Add gdkpixmap.c which contains implementation of GdkDrawable
12525         virtual table (by chaining to a platform-specific implementation
12526         object).
12527         
12528         * gdk/gdkprivate.h: Remove GDK_IS_WINDOW, GDK_IS_PIXMAP, 
12529         GDK_DRAWABLE_DESTROYED. Add GDK_WINDOW_DESTROYED. Replace
12530         GDK_DRAWABLE_TYPE with GDK_WINDOW_TYPE. Remove GdkDrawablePrivate,
12531         GdkWindowPrivate, GdkImageClass, GdkImagePrivate, GdkGCPrivate,
12532         GdkColormapPrivate. 
12533
12534         * gdk/gdktypes.h: #include <glib-object.h>
12535
12536         * gdk/gdkwindow.h, gdk/gdkwindow.c: Convert GdkWindow to GObject.
12537         Move most functionality to platform-specific implementation
12538         object. GdkWindow itself now handles the backing store, then
12539         chains to the platform-specific implementation.
12540         (gdk_window_get_window_type): return GdkWindowType of the window.
12541         (gdk_window_peek_children): New routine, returns the children of 
12542         a GdkWindow
12543         (gdk_window_get_children): Was in X11-specific code and did 
12544         XQueryTree. Changed to simply return a copy of window->children; 
12545         so it can go in cross-platform code.
12546         
12547         * gdk/x11/Makefile.am: fix broken MKINSTALLDIRS path
12548
12549         * gdk/x11/gdkcolor-x11.c: implement X-specific parts of 
12550         GdkColormap; just changed to use the new private data instead
12551         of casting to GdkColormapPrivate.
12552
12553         * gdk/x11/gdkcursor-x11.c: added a couple typechecks to 
12554         gdk_cursor_new().
12555
12556         * gdk/x11/gdkdnd-x11.c: Change the way we access private fields 
12557         (private data member in the GObject). 
12558         (xdnd_manager_source_filter): Function had broken 
12559         error handling, fix it (use gdk_error_trap_push).
12560
12561         * gdk/x11/gdkdrawable-x11.c: This file now implements
12562         a base class for GdkWindowImplX11/GdkPixmapImplX11. This 
12563         base class is purely for the convenience of the X port,
12564         and not part of the interface to cross-platform GDK.
12565
12566         * gdk/x11/gdkevents-x11.c: Reflect various renamings.
12567         
12568         * gdk/x11/gdkgc-x11.c: Implement a subclass of GdkGC that's
12569         specific to X, and returned by the create_gc virtual method
12570         of GdkDrawableImplX11. 
12571         (gdk_x11_gc_set_dashes): Change this to take an array of gint8
12572         rather than gchar, this was also changed in the GdkGC vtable.
12573         (gdk_x11_gc_values_to_xvalues): If GdkGCValues is NULL, or the
12574         mask is 0, return immediately, instead of checking every flag.
12575         This is faster, and keeps us from segfaulting if values is NULL
12576         and the mask contains some nonzero flags.
12577
12578         * gdk/x11/gdkgeometry-x11.c: deal with all the rearranging of
12579         GdkWindow.
12580
12581         * gdk/x11/gdkglobals-x11.c: change type of grab window, since 
12582         GdkWindowPrivate is gone.
12583
12584         * gdk/x11/gdkim-x11.c: rename things that got renamed.
12585
12586         * gdk/x11/gdkimage-x11.c: implement in terms of GObject, and 
12587         remove the image_put stuff that got transferred to GdkDrawable.
12588         
12589         * gdk/x11/gdkinput.c: renamings
12590
12591         * gdk/x11/gdkmain-x11.c: #include <pango/pangox.h>
12592
12593         * gdk/x11/gdkpixmap-x11.c: GObject conversion
12594
12595         * gdk/x11/gdkprivate-x11.h: indentation fixes
12596
12597         * gdk/x11/gdkproperty-x11.c: renamings
12598
12599         * gdk/x11/gdkselection-x11.c: renamings
12600
12601         * gdk/x11/gdkwindow-x11.c: Restructuring and renaming; this now 
12602         implements the platform-specific "impl" object.
12603         Moved gdk_window_get_children to gdk/gdkwindow.c
12604
12605         * gdk/x11/gdkx.h: Remove all the private structs and private datas
12606         that no longer exist. Add declaration of GdkGCX11 object here.
12607         Fix all the macros to still work. 
12608
12609         * gtk/gtk-boxed.defs: Remove GtkStyle, GdkColormap, GdkWindow,
12610         GdkDragContext from the boxed types since they are now GObjects.
12611
12612         * gtk/gtkstyle.h, gtk/gtkstyle.c: Converted GtkStyle to a GObject,
12613         moved xthickness/ythickness into the instance. GtkStyleClass
12614         functions are now in the standard vtable for GtkStyle, so you have
12615         to create a GObject subclass to write a theme engine.
12616         (gtk_style_copy): fixed a leaked PangoFontDescription
12617         (gtk_style_init): renamed gtk_style_realize, so gtk_style_init
12618         can be the standard GObject function.
12619         
12620         * Throughout GTK:
12621         s/style->klass->[xy]thickness/style->[xy]thickness
12622         s/pango_layout_unref/g_object_unref/
12623
12624         * gtk/gtkrc.h, gtk/gtkrc.c: Converted GtkRcStyle to a GObject.
12625         
12626         * gtk/gtksocket.c: Use gdk_window_get_user_data() instead of 
12627         accessing GDK internals.
12628
12629         * gtk/gtkwidget.c: Use gdk_window_peek_children() instead of 
12630         accessing GDK internals.
12631
12632 2000-06-18  Elliot Lee  <sopwith@redhat.com>
12633
12634         * gtk/gtkwindow.c: Don't allow creation of a window bigger than the screen.
12635
12636         * gtk/gtkrange.c: Fix the mega-jumpy-with-lagged-events scrollbar
12637         problem by calculating event position relative to the trough
12638         rather than the slider.
12639         * gtk/gtkdnd.c, gtk/gtkcolorsel.c: Include FB headers if appropriate.
12640
12641         * gdk/gdkgc.h: Add GDK_NOR.
12642
12643         * configure.in, Makefile.am: Add modules top level dir
12644         * configure.in: Only use pangox library if building x11 target.
12645         * gdk/gdkdnd.h: Add GDK_DRAG_PROTO_LOCAL enum for future intra-app use.
12646
12647 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
12648
12649         * gtk/gtkcolorsel.c: Change private class member to be named
12650         private_data throughout the file.
12651
12652         * gtk/gtkcolorsel.h (struct _GtkColorSelection): Change private to
12653         private_data to avoid clashing with keyword.
12654
12655 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
12656
12657         * gdk/gdkdnd.h: Add comment to remove warning.
12658
12659 Sun Jun 18 15:35:35 2000  Pablo Saratxaga <pablo@mandrakesoft.com>
12660
12661         * gtk/gtkrc.cp1251,gtk/Makefile.am: the cp1251 is also used by
12662         Byelorussian language; changed the Makefile and file names 
12663         to reflect that.
12664
12665 Mon Jun 12 16:58:40 2000  Owen Taylor  <otaylor@redhat.com>
12666
12667         * gtk/gtkwindow.c (gtk_window_unmap): Call gdk_window_withdraw
12668         rather than gdk_window_hide; this makes things work
12669         correctly if the window is programmatically hidden while
12670         iconified.
12671
12672 Sun Jun 11 12:46:19 2000  Owen Taylor  <otaylor@redhat.com>
12673
12674         * gtk/gtkdnd.c (gtk_drag_set_default_icon): Fix
12675         cut and paste typo where wrong pixmap was being
12676         unref'ed. (Pointed out by a friend of KUSANO Takayuki.)
12677
12678 Sun Jun 11 10:22:36 2000  Owen Taylor  <otaylor@redhat.com>
12679
12680         * gtk/gtkselection.c (gtk_selection_bytes_per_item):
12681         Add helper function to compute format / bytes 
12682         relationship. Use in a couple places to fix up
12683         errors which assume 8 * format.
12684
12685         * gtk/gtkselection.c (gtk_selection_request): Use 32
12686         rather than 8 * sizeof (GdkAtom), to work correctly
12687         on Alpha.
12688
12689 Thu Jun  8 21:54:51 2000 Christopher Blizzard  <blizzard@redhat.com>
12690
12691         * gtk/Makefile.am (DEPS): deps include libgtk-x11.la, not
12692         libgtk.la
12693         (LDADDS): include libgtk-x11.la and libgdk-x11.la, not the non-x11
12694         versions
12695
12696         * gtk/gtklabel.c (gtk_label_get_text): Make sure that the error
12697         checking macros return NULL since the function has a return value.
12698
12699 Wed Jun  7 15:44:42 2000  Owen Taylor  <otaylor@redhat.com>
12700
12701         * gtk/Makefile.am (LDFLAGS): Add missing backslash that was keeping
12702         GTK+ from building at all.
12703
12704         * gdk/Makefile.am (gdk_c_sources): Fix up some indentation issues.
12705
12706 Mon Jun  5 19:32:53 CEST 2000 Paolo Molaro <lupus@linuxcare.com>
12707
12708         * configure.in, gtk-config.in, gdk/Makefile.am, gdk/*/Makefile.am,
12709         gtk/Makefile.am: make it possible to configure gtk for different
12710         targets on the same platform. The library name is now 
12711         libgtk-$target-$version.so. gtk-config accepts a --target x11|nanox|linux-fb
12712         flag. Only the x11 target compiles right now.
12713         * gdk/gdkregion-generic.h, gdk/gdkregion-generic.c, gdk/gdkpoly-generic.h,
12714         gdk/gdkpolyreg-generic.c: move generic region code in the main GDK dir.
12715         * gdk/nanox/gdk*generic*: delete generic region code.
12716         * gdk/linux-fb/gdk*generic*: delete generic region code.
12717         * README.nanox: update information.
12718         
12719 Tue Jun  6 10:53:59 2000  Owen Taylor  <otaylor@redhat.com>
12720
12721         * gtk/gtktoolbar.c (gtk_toolbar_prepend_widget): Fix to
12722         prepend not append. (Pointed out by Brett Hall.)
12723
12724 Tue Jun  6 01:59:57 2000  Owen Taylor  <otaylor@redhat.com>
12725
12726         * gtk/gtkentry.c (gtk_entry_finalize): Unref the entry's layout.
12727
12728 Mon Jun  5 16:00:09 2000  Owen Taylor  <otaylor@redhat.com>
12729
12730         * gdk/gdk.c (gdk_init_check): Add call to g_type_init() - we'll
12731         need this later, and this makes sure that the atexit for
12732         glib gets called after that for GDK, so atexits are
12733         properly ordered for object leak checking.
12734
12735         * gdk/gdk.c (gdk_exit_func): Call gdk_windowing_exit().
12736
12737         * gdk/x11/gdkmain-x11.c (gdk_windowing_exit): Call 
12738         pango_x_shutdown_display()
12739
12740         * gtk/simple.c (main): Close window on destroy.
12741
12742 Mon Jun  5 11:50:02 2000  Owen Taylor  <otaylor@redhat.com>
12743
12744         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): We need
12745         to treat initial creation different from setting with 
12746         regards to the graphics-exposures parameter, so add a parameter
12747         indicating whether this is initial or not.
12748
12749 Mon Jun  5 13:29:31 2000  Owen Taylor  <otaylor@redhat.com>
12750
12751         * gdk/x11/gdkevents-x11.c: Hack gdk_event_get_graphics_expose()
12752         to sort of work by adding an extra return_exposes arg
12753         to gdk_event_translate() - it might be better to simply
12754         deprecate the function altogether and force people to rewrite
12755         without it. gdk_window_scroll() handles most of it, and where
12756         gdk_window_scroll() doesn't work, simply redrawing more does.
12757
12758         * gtk/gtkwidget.c (gtk_widget_set_default_direction): Fix up
12759         assertion.
12760
12761         * gtk-config.in: Include PANGO_CFLAGS/LIBS.
12762
12763         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Remove a 
12764         bunch of pretty much useless /* Print debugging info */ comments 
12765         which had drifted away from the code they were commenting.
12766
12767 2000-06-02  Havoc Pennington  <hp@pobox.com>
12768
12769         * gtk/testtextbuffer.c: Test program to make sure GtkTextBuffer
12770         is in working order.
12771         
12772         * gtk/testtext.c: Change to reflect anonymous mark API
12773
12774         * gtk/gtktextview.c: Convert from mark names to GtkTextMark*.
12775
12776         * gtk/gtktexttag.h (struct _GtkTextTag): remove the affects_size
12777         field, which was unused.
12778
12779         * gtk/gtktextmarkprivate.h (GTK_IS_TEXT_MARK): add this macro,
12780         saves some typing.
12781
12782         * gtk/gtktextbuffer.c: Switch from mark names to GtkTextMark*   
12783
12784         * gtk/gtktextbtree.c (gtk_text_btree_new): set the not_deleteable
12785         flag on the insertion point and selection bound
12786
12787         Throughout, use GtkTextMark instead of GtkTextLineSegment, and 
12788         make mark-manipulation functions take a GtkTextMark* instead of a
12789         mark name.
12790         
12791         * gtk/gtktextmarkprivate.h: Add a "not_deleteable" flag to 
12792         GtkTextMarkBody; will be used to detect attempts to delete
12793         the permanent marks (insert and selection bound)
12794
12795         * gtk/Makefile.am (noinst_PROGRAMS): add testtextbuffer 
12796
12797 Fri Jun  2 12:56:01 2000  Owen Taylor  <otaylor@redhat.com>
12798
12799         * gtk/gtkwidget.c (gtk_widget_init): Initialize DOUBLE_BUFFERED
12800         flag to on.
12801
12802         * gtk/gtkwidget.c (gtk_widget_draw) gtk/gtkmain.c (gtk_main_do_event): 
12803         Honor DOUBLE_BUFFRED_FLAG
12804
12805         * gtk/gtkwidget.c (gtk_widget_set_double_buffered): Add a
12806         function to set the DOUBLE_BUFFERED flag.
12807
12808         * gtk/gtkwidget.h: Add GTK_DOUBLE_BUFFERED flag to indicate whether
12809         or not exposes done on the widget should be double-buffered.
12810
12811         * gtk/gtkenums.h (GtkTextDirection): Reverse order of enumerations
12812         to be what would be expected. (Fixes problem with a
12813         g_return_if_fail() validating a TextDirection enumeration)
12814
12815 Thu Jun  1 23:05:13 2000  Owen Taylor  <otaylor@redhat.com>
12816
12817         * gtk/gtkwidget.c: Remove all references to 
12818         offscreen flag which was no longer used.
12819
12820         * gtk/gtkprivate.h (enum): Remove unused flags and compress.
12821
12822         * gtk/gtkframe.c (gtk_frame_set_label_widget): Check
12823         for non-null label_widget->parent.
12824
12825         * gtk/gtkentry.c: Get rid of code to deal with PangoAttribute 
12826         which no longer was used.
12827
12828         * gdk/gdkpango.c (gdk_pango_context_get_info): make static.
12829
12830         * gdk/gdkpango.c (gdk_draw_layout[_line]): Add checks
12831         for null arguments.
12832
12833         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): add
12834         check for destroyed windows.
12835
12836 Thu Jun  1 13:48:45 2000  Owen Taylor  <otaylor@redhat.com>
12837
12838         * gtk/gtkimmulticontext.c: Add a finalize method and unref
12839         the slave context there.
12840
12841         * gtk/gtkinvisible.[ch]: Make reference counting behavior
12842         identical to GtkWindow.
12843
12844 Thu Jun  1 01:54:11 2000  Owen Taylor  <otaylor@redhat.com>
12845
12846         * Makefile.am gdk/gdkpango.c: Copy the layout render function from
12847         pangox to here, so we can write them independent of rendering
12848         system, using GDK primitives.
12849
12850         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c
12851         gdk/x11/gdkdrawable-x11.c: Remove draw_layout() from the vtable,
12852         since we have a rendering-system independent implementation in
12853         terms of draw_glyphs().
12854         
12855         * gdk/gdkpango.c gdkdrawable.h (gdk_draw_layout_line): New
12856         function to render a single line.
12857
12858         * gdk/x11/gdkpango.c: Move the guts of this file mostly
12859         into ../gdkpango.c, which simplifies things, since we
12860         don't have to deal with raw X gc's.
12861
12862 Fri May 19 04:28:16 2000  Owen Taylor  <otaylor@redhat.com>
12863
12864         * gtk/gtktextlayout.[ch]: Add get_log_attrs() function to
12865         get the logical attributes for a given GtkTextLine.
12866
12867 Tue May 30 16:05:39 2000  Owen Taylor  <otaylor@redhat.com>
12868
12869         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Track
12870         g_locale_get_codeset() to g_get_codeset() change.
12871
12872 Tue May 30 15:03:19 2000  Owen Taylor  <otaylor@redhat.com>
12873
12874         * gtk/testcalendar.c (calendar_font_selection_ok): Use font
12875         descriptions.
12876
12877         * gtk/gtkentry.c (gtk_entry_draw_text): Center text within
12878         the entry.
12879
12880         * gtk/gtkfontsel.c (gtk_font_selection_dialog_init): Start of
12881         redoing (vastly simplifying) for Pango. Still needs quite
12882         a bit of work. (Size selection is currently poor. List of 
12883         predefined sizes is not a good idea, since all of these
12884         sizes won't necessarily be distinct.)
12885
12886 Tue May 30 13:50:19 2000  Owen Taylor  <otaylor@redhat.com>
12887
12888         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Handle
12889         CODESET results for LANG=C.
12890
12891 Mon May 29 15:49:10 2000  Owen Taylor  <otaylor@redhat.com>
12892
12893         * gtk/gtkrc.[ch]: Add a 'font_name' declaration to RC
12894         which takes a stringized pango font description;
12895         ignore the older 'font' and 'fontset' declarations.
12896
12897         * gtk/gtkstyle.c gtk/gtkrc.c: Fill in the style->font
12898         field with a GdkFont derived via gdk_font_from_description(),
12899         for compatibility. (Should we just remove it entirely?
12900         Probably too much compatibility breakage, but people
12901         should be migrating to the new Pango stuff as quickly
12902         as possible.)
12903
12904 Mon May 29 15:47:41 2000  Owen Taylor  <otaylor@redhat.com>
12905
12906         * gtk/gtkentry.c gtk/gtkclist.c: s/pango_font_unref/g_object_unref/.
12907
12908 Mon May 29 15:44:46 2000  Owen Taylor  <otaylor@redhat.com>
12909
12910         * gtk/gtkcalender.c: Roughly pango-ized. Really needs 
12911         redoing; there are some bugs in size allocation right
12912         now, the semi-existant distinction between header / day
12913         fonts was removed, but, with Pango, could actually
12914         be made functional in a nice way.
12915         
12916         * gtk/testcalender: Move calender from examples into this
12917         directory as a test program. (We really need to restrcture
12918         testgtk into a whole directory full of tests for every
12919         widget or functionality group, separated into multiple .c
12920         files.)
12921
12922 Mon May 29 15:19:56 2000  Owen Taylor  <otaylor@redhat.com>
12923
12924         * gtk/testgtk.c (file_exists): Fix stupid typo that
12925         was keeping RC file from being loaded.
12926
12927         * gtk/testgtkrc gtk/testgtkrc2: Test new pango-ized
12928         RC file font code.
12929
12930 Mon May 29 14:31:27 2000  Owen Taylor  <otaylor@redhat.com>
12931
12932         * gdk/gdkfont.h gdk/x11/gdkfont-x11.c (gdk_font_from_description):
12933         Add function to load a GdkFont from a PangoFontDescription.
12934
12935 2000-05-29  Tor Lillqvist  <tml@iki.fi>
12936
12937         * gdk/win32/gdkevents-win32.c (gdk_WindowProc): The local "event"
12938         variable should be of type GdkEventPrivate.
12939
12940 Fri May 26 17:16:40 2000  Owen Taylor  <otaylor@redhat.com>
12941
12942         * gtk/frame.[ch] gtkaspectframe.c: Make frame widgets able
12943         to have any widget for the label, use a GtkLabel widget
12944         to display the text. (Based partially on a patch from
12945         Anders Carlson.)
12946
12947         (Quite a bit of code reorganization - strip 90% of the
12948         guts out of gtkaspectframe and add a single virtual
12949         func to GtkFrameClass - compute_child_allocation.)
12950
12951 Fri May 26 12:00:02 2000  Owen Taylor  <otaylor@redhat.com>
12952
12953         * gtk/gtkctree.c gtk/gtkclist.[ch]: Pangoized.
12954         (Removed clist->row_center_offset field because caching
12955         it wasn't saving time or code, added private function
12956         _gtk_clist_create_cell_layout()).
12957
12958 Wed May 24 15:59:37 2000  Owen Taylor  <otaylor@redhat.com>
12959
12960         * gtk/gtkaccellabel.c: Pangoized.
12961
12962         * gtk/[hv]ruler.c: Pangoized
12963
12964 Mon May 22 19:23:59 2000  Owen Taylor  <otaylor@redhat.com>
12965
12966         * gtk/gtkfilesel.c (gtk_file_selection_init):
12967         Use gtk_clist_set_column_auto_resize() to remove need
12968         need for manual column width computations.
12969
12970 Mon May 22 18:50:26 2000  Owen Taylor  <otaylor@redhat.com>
12971
12972         * gtk/gtktooltips.[ch]: Replace custom drawing with a GtkLabel, 
12973         ensuring Pango correctness, and considerably simplifying the
12974         code.
12975         
12976         * gtk/gtklabel.c gtk[hv]scale.c: 1000 => PANGO_SCALE.
12977
12978         * gtk/gtklabel.c (gtk_label_size_request): Fixed incorrect
12979         getting of numbers of lines.
12980
12981         * gtk/gtklabel.c (gtk_label_size_request): Set the requisition
12982         to the actual requested width of the lable, not to the wrap
12983         width we set.
12984
12985         * gtk/gtktextchild.h: Remove extraneous include of gtk/gtk.h.
12986
12987         * gtk/gtktextbtree.c gtk/gtktextbuffer.c gtk/gtktextlayout.c
12988           gtk/gtktextview.c gtk/gtktextview.[ch]: Fix up includes.
12989
12990         * gtk/gtktextview.c: Fix structure inheritance.
12991
12992         * gtk/gtkprogressbar.c: Pangoize.
12993
12994 Mon May 22 15:47:30 2000  Owen Taylor  <otaylor@redhat.com>
12995
12996         * gtk/gtktextview.c (gtk_text_view_get_first_para_iter): Encapsulate
12997         in a function.
12998
12999         * gtk/gtktextlayout.c (find_display_line_above): Fixed
13000         bug with computing line tops.
13001
13002         * gtk/gtktextview.c (changed_handler): Fix < , <= confusion.
13003
13004 Thu May 18 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
13005
13006         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Fix up the x_offset
13007         and y_offset coordinates to do what we need now. (The offset between
13008         buffer and layout coordinates has been reintroduced, but is a 
13009         bit different than before.)
13010
13011         * gtk/gtktextview.[ch]: No longer inherit from GtkLayout; instead
13012         handle the adjustments ourselves, and scroll as necessary using
13013         the new gdk_window_scroll().
13014         
13015         The advantage of this is that when we are incrementally revalidating,
13016         we are essentially rearranging things around the visible portion
13017         of the screen. With the old setup, the visible portion of the
13018         screen was moved around in the layout, so scrolling and redrawing
13019         to track that caused jumping of the display. Since we now
13020         control the scrolling ourselves, we can suppress this and
13021         only redraw when things actually change.
13022
13023 Thu May 18 18:47:25 2000  Owen Taylor  <otaylor@redhat.com>
13024
13025         * gtk/gtktextbtree.c (redisplay_mark): We need to invalidate
13026         the region not just redisplay it after-all, since we store the
13027         cursors in the LineDisplay. (Ugly interactions here between
13028         GtkLayout and GtkTextBTree here.)
13029         
13030         * gtk/gtktextbtree.c (redisplay_region): Fixed reversed comparison.
13031
13032 Thu May 18 18:43:21 2000  Owen Taylor  <otaylor@redhat.com>
13033
13034         * gdk/gdkwindow.h gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): 
13035         Added function to scroll contents of a window while keeping the
13036         window constant. Works by XCopyArea or guffaw-scrolling depending
13037         on the details of how the window is set up. (guffaw-scrolling
13038         still needs to be filled in.)
13039
13040 Wed May 17 22:36:53 2000  Owen Taylor  <otaylor@redhat.com>
13041
13042         * gtk/gtktextiter.c gtk/gtkmain.c: Add a debug key for the text widget,
13043         move the debugging that was tied to a global variable
13044         to that.
13045
13046         * gtk/gtkmarshal.list: Add NONE:INT,INT,INT
13047
13048         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.c: Keep a separate
13049         validated flag, in line data instead of setting height/width to
13050         -1. This allows us to perform operations with partially invalid
13051         buffer (using the old size for invalid lines) and thus to do
13052         incremental vaidation. Keep height/width aggregates up to date
13053         when deleting text and rebalancing the tree.
13054
13055         * gtk/gtktextbtree.[ch]: Add functions validate a line
13056         (gtk_text_btree_validate_line), and to validate up
13057         to a number of pixels (gtk_text_btree_validate).
13058
13059         * gtk/gtktextlayout.[ch]: Add an ::invalidated signal
13060         that indicates that something is changed and a revalidation
13061         pass is needed. Change ::need_repaint to ::changed, and
13062         make it take old and new yranges instead of a rectangle.
13063
13064         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.[ch]: Move
13065         the line_data_destroy() function from 
13066         gtk_text_btree_add_view() to a virtual function in 
13067         GtkTextLayout
13068
13069         * gtk/gtktextbtree.[ch]: Remove gtk_text_btree_get_damage_range(),
13070         since we are handling partial repaints in a different fashion
13071         now.
13072
13073         * gtk/gtktextbtree.[ch]: Only repaint the changed portion
13074         of the selection instead of queueing a repaint on the
13075         entire widget.
13076
13077         * gtk/gtktextbuffer.[ch] gtk/gtktextbtree.[ch]: Move
13078         get_selection_bounds() down to btree, make the function
13079         in buffer a wrapper around the btree function.
13080
13081         * gtk/gtktextlayout.[ch]: Add functions to check if the
13082         layout is valid and to recompute either a range of pixels
13083         aroudn a line or a certain total number of pixels.
13084
13085         * gtk/gtktextlayout.[ch]: Cache a single line display;
13086         now that we only redraw the needed portions, the hit rate
13087         for this cache is quite high.
13088         
13089         * gtk/gtktextview.[ch]: Keep track of the first paragraph
13090         on the screen so that when re-laying-out the buffer, we can
13091         keep the same place. This requires connecting to ::value_changed
13092         on the adjustments
13093
13094         * gtk/gtktextview.[ch]: Add idle functions to revalidate
13095         the buffer after we receive an ::invalidated signal.
13096         
13097 Wed May 17 22:10:47 2000  Owen Taylor  <otaylor@redhat.com>
13098
13099         * gtk/gtklayout.c (gtk_layout_size_allocate): Set upper
13100         to max of allocation and layout size, not just to the
13101         layout size.
13102
13103         * gtk/gtk[hv]scrollbar.c (gtk_[hv]scrollbar_calc_slider_size): 
13104         Invalidate window so it gets redrawn properly.
13105
13106         * gdk/gdkwindow.c (gdk_window_invalidate_rect): Allow rect == NULL
13107         to mean the entire window.
13108
13109         * gdk/gdkevents.h: Move definition for GDK_PRIORITY_REDRAW
13110         into public header.
13111
13112 Mon May 15 14:51:31 2000  Owen Taylor  <otaylor@redhat.com>
13113
13114         * gtk/gtktextmark.c (gtk_text_mark_get_name): Add function
13115         to get the name of a mark.
13116
13117         * gtk/gtktextlayout.c (gtk_text_layout_get_line_at_y): Add a function
13118         to find the paragraph from a y position.
13119
13120 Thu May 11 12:57:20 2000  Owen Taylor  <otaylor@redhat.com>
13121
13122         * gtk/gtktextbtree.c (gtk_text_btree_node_invalidate_upward): Valid
13123         nodes have width/height >= 0, not > 0.
13124
13125 Tue May  9 21:29:06 2000  Owen Taylor  <otaylor@redhat.com>
13126
13127         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c (gtk_text_layout_get_line_display):
13128         Add a size_only flag, so when we only need the size, we don't create
13129         useless appearance attributes.
13130
13131         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Remove
13132         duplicate setting of font description.
13133
13134         * gtk/gtkscale.c: Use PANGO_SCALE instead of 1000 
13135
13136 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
13137
13138         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
13139         EXTRA_DIST. It does not work well when the file that
13140         everything depends on is not in the tarball.
13141
13142 Wed Apr 26 00:56:14 2000  Owen Taylor  <otaylor@redhat.com>
13143
13144         * gtk/testgtk.c: Some hacks and fixes so that it basically
13145         works when not sitting in the GTK+ build tree.
13146
13147 2000-05-03  Havoc Pennington  <hp@redhat.com>
13148
13149         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
13150         Properly determine the ordering of the tag root and the current
13151         line within the tree. Previous algorithm only worked if the tag
13152         root's immediate parent was the common root of both the current
13153         line and the tag root.
13154
13155 Wed Apr 26 00:43:00 2000  Owen Taylor  <otaylor@redhat.com>
13156
13157         * gtk/gtktextlayout.c (set_para_values): Fix some bugs in
13158         alignment.
13159
13160         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Track
13161         the widget text directional dynamically.
13162
13163         * gtk/gtktextview.[ch]: Added functions to get and set default
13164         wrap mode.
13165
13166 Tue Apr 25 23:47:38 2000  Owen Taylor  <otaylor@redhat.com>
13167
13168         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Fix bug
13169         in cursor location computation.
13170
13171 Tue Apr 25 23:22:59 2000  Owen Taylor  <otaylor@redhat.com>
13172
13173         * gtk/gtklayout.c (gtk_layout_set_size): Clamp hadjustment/
13174         vadjusment values properly when layout gets smaller.
13175
13176         * gtk/gtktextview.c (need_repaint_handler): Areas being
13177         passed in are far completely inaccurate, and sometimes
13178         too small, so, for now, just queue a redraw on the
13179         whole visible region.
13180
13181 2000-04-25  Havoc Pennington  <hp@redhat.com>
13182
13183         * gtk/gtktextbtree.c (summary_destroy): new function to 
13184         destroy tag summary nodes
13185         (gtk_text_line_next_could_contain_tag): this function was 
13186         totally broken if the line passed in wasn't below the tag
13187         root. Fix it.
13188         (gtk_text_btree_first_could_contain_tag): In the tag == NULL 
13189         "wildcard" case, we have to do a linear scan. Blah.
13190         (gtk_text_btree_last_could_contain_tag): In tag == NULL case,
13191         we have to do the linear scan
13192         (tag_removed_cb): When a tag is removed from the tag table, 
13193         remove the GtkTextTagInfo node from the btree.
13194         (gtk_text_btree_spew): Implement the spew function, for 
13195         our debugging pleasure.
13196
13197 Tue Apr 25 19:40:18 2000  Owen Taylor  <otaylor@redhat.com>
13198
13199         * gtk/gtktextlayout.c (gtk_text_layout_set_buffer): Fix
13200         a problem with referring to the wrong buffer.
13201
13202         * gtk/gtkentry.c: Fix focus-in/focus-out confusion.
13203
13204         * gtk/gtkrc.c gtk/gtkstyle.c: Moving setting default
13205         font description to gtk_style_new() - otherwise things
13206         don't work without a .gtkrc file.
13207
13208         * gtk/gtktextbuffer.c (gtk_text_buffer_new): Sink the
13209         tags table if we create it ourself, too.
13210
13211         * gdk/gdktypes.h (enum): Move GDK_RELEASE_MASK, since
13212         it was conflicting with XKB modifiers.
13213
13214         * gtk/gtktextview.[ch]: Add simple support for 
13215         GtkIMContext.
13216
13217 Mon Apr 24 19:34:18 2000  Owen Taylor  <otaylor@redhat.com>
13218
13219         * gtk/gtkentry.c (gtk_entry_move_cursor_visually): Fix problem
13220         with deletion from last commit.
13221
13222 Mon Apr 24 19:29:40 2000  Owen Taylor  <otaylor@redhat.com>
13223
13224         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Set the language
13225         in the context from the current locale.
13226         
13227         * gtk/gtkentry.c (gtk_entry_size_request): Use language from the
13228         context, not hardcoded value.
13229
13230         * gtk/gtkentry.c (gtk_entry_move_cursor): Make character movement visual,
13231         not logical.
13232
13233 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
13234
13235         * gtk/gtkentry.c gtk/gtktextdisplay.c: Don't handle selections as
13236         attributes - that doesn't handle partial-glyph selection
13237         properly. Instead use new pango_layout_line_get_x_ranges()
13238         functionality to draw the selection.
13239
13240         * gtk/gtkentry.c: Simplify code since pango_layout_line_index_to_x()
13241         now properly handles out-of-range coordinates.
13242
13243         * gtk/gtktextbuffer.c: Emit "mark_set" when the cursor is moved.
13244
13245         * gtk/gtktextiter.h gtk/gtktextiterprivate.h: Make gtk_text_iter_get_line_byte()
13246         public.
13247
13248         * gtk/gtktextlayout.[ch]: Properly set the direction in the PangoContext
13249         for paragraphs opposite to the base direction of the widget.
13250
13251         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c: Fixes for alignment.
13252
13253         * gtk/gtktextlayout.c: Don't split segments on marks, since that
13254         causes Arabic words to reshape as you cursor through.
13255
13256         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Implement virtual
13257         cursor position when moving vertically with the arrow keys and
13258         scrolling with page-up/page-down. (Arrow keys save only the X,
13259         scrolling saves both X and Y.)
13260
13261         This means you can line-up / line-down or page-up / page-down
13262         without losing your place, and also that moving vertically
13263         with the cursor keys keeps the same X position, not the same
13264         character count:
13265
13266         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Make vertical
13267         arrow keys move by display lines, not paragraphs.
13268
13269 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
13270
13271         * gtk/gtklayout.c: Make sure that the bin window is at least
13272         as big as the allocation. (Should we also make sure that the
13273         bin window is big enough to completely cover widget->window?)
13274
13275         * gtk/gtktextview.c (gtk_text_view_get_visible_rect): Add
13276         function to get the onscreen rectangle.
13277
13278         * gdk/x11/gdkwindow-x11.c (gdk_window_get_pointer): Correctly account
13279         for offsets in window coordinates.
13280
13281 Sun Apr 16 16:13:27 2000  Owen Taylor  <otaylor@redhat.com>
13282
13283         * gtk/gtkentry.c (gtk_entry_get_cursor_locations): Fix index/offset
13284         confusion.
13285
13286         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Set the default direction
13287         from the widget direction.
13288
13289         * gtk/gtktexttag.c gtk/gtktexttagprivate.h (gtk_text_tag_set_arg): 
13290         Add a "direction" attribute.
13291
13292         * gtk/gtktextview.c: global s/tkxt/text_view/.
13293
13294         * gtk/testtext.c: Added long block of text in Arabic, to test out
13295         the direction attributes. (Some problems with the shaping system
13296         for arabic become obvious - like the fact the cursor splits words
13297         into unjoined pieces.)
13298
13299 Fri Apr 14 12:54:34 2000  Owen Taylor  <otaylor@redhat.com>
13300
13301         * gtk/gtktextdisplay.c (render_layout): Add overstrike handling.
13302
13303         * gtk/gtktextlayout.c: Fix up alignment.
13304
13305         * gtk/testtext.c: Add some tests for centering, wrapping.
13306
13307 Fri Apr 14 09:26:22 2000  Owen Taylor  <otaylor@redhat.com>
13308
13309         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c gdk/x11/gdkdrawable-x11.c:
13310         Add a draw_glyphs() operation to the drawable vtable and gdk_draw_glyphs().
13311         If we wrote GTK+-specific layout-render function this could just replace
13312         the draw_layout() operation in the vtable.
13313
13314         * gtk/gtkentry.c: Move guts of gtk_entry_get_cursor_locations to 
13315         pango_layout_get_cursor_pos() and use that function.
13316
13317         * gtk/gtktextchild.[ch]: add gtk_ onto pixmap_segment_new(), since it
13318         is a non-static symbol.
13319
13320         * gtk/gtktextbtree.[ch]: Replace gtk_text_btree_find_line_data_by_y()
13321         with gtk_text_btree_find_line_by_y()
13322
13323         * gtk/gtktextdisplay.c: Rewrote for Pango - uses a custom layout
13324         renderer that handles GtkTextAppearance attributes.
13325
13326         * gtk/gtktexttag.[ch] gtk/gtktexttagprivate.h: 
13327
13328           - Move the values in the style that don't affect geometry into a
13329             GtkTextAppearance structure.
13330           - Change underline to take a PangoUnderline and "font" a string
13331             representation of a font description
13332           - Add a "font_desc" attribute which takes a FontDescription structure.
13333
13334         * gtk/gtktextlayout.[ch]:
13335
13336           - Get rid of the display-line list per each line. Instead, we
13337             generate, on demand, a GtkTextLineDisplay structure which]
13338             contains a PangoLayout * and other necesary information
13339             (offsets, cursor locations) for displaying a paragraph.
13340           - Get rid of the code to wrap lines, create display chunks,
13341             etc. Instead, we just go through a paragraph and convert
13342             it into the necessary inputs to a PangoLayout.
13343           - Implement a new attribute type, GtkTextAttrAppearance. This
13344             holds a GtkTextAppearance, and is used to pass colors, 
13345             stipple, etc, through from the layout to the display without
13346             having to use lots and lots of individual attributes.
13347           - Reimplement gtk_layout_get_iter_at_pixel() gtk_layout_get_iter_pos()
13348             in terms of PangoLayout functions.
13349         
13350         * gtk/gtktextview.c: 
13351          
13352           - Handle passing the necessary PangoContext to the layout
13353           - Some fixups in painting to deal with the automatic backing store
13354             and offsetting of GTK+-1.4
13355           - Add a style_set handler so that the default style reacts
13356             properly to theme changes.
13357         
13358         * gtk/gtktext?*.[ch]: Random code-style fixes.
13359
13360         * gtk/testtext.c: Substitute in languages that Pango handles now for Thai
13361
13362 Mon Apr 10 10:33:45 2000  Owen Taylor  <otaylor@redhat.com>
13363
13364         * gtk/gtktext?*.[ch]: Check in Havoc's port of the Tk text widget,
13365         in original form preparatory to Pango-ization and gdkimcontext-ization.
13366
13367 Thu Apr  6 19:25:39 2000  Owen Taylor  <otaylor@redhat.com>
13368
13369         * gtk/gtkimcontext.c: Move default implementations to real_* vfuncs,
13370         so that we can derive from gtkimcontext in language bindings properly.
13371
13372 Thu Apr  6 16:02:52 2000  Owen Taylor  <otaylor@redhat.com>
13373
13374         * gtk/gtkimcontextsimple.[ch]: Use gdk_keyval_to_unicode to gdk_unicode_to_keyval.
13375         Add a compose table including (almost) all the compose combinations
13376         from X. This is 6k of static, shared data as opposed to 50k or so of dynamic
13377         data in the XIM implementation.
13378
13379         * gdk/gdk.h gdk/gdkkeyuni.c gdk/win32/gdkevents-win32.c (gdk_keyval_to_unicode, gdk_unicode_to_keyval):
13380         Moved functions to convert keyvalues from and to unicode here from
13381         the win32 port and made them public.
13382
13383 Wed Apr  5 16:37:29 2000  Owen Taylor  <otaylor@redhat.com>
13384
13385         * gtk/gtkeditable.c (gtk_editable_insert_text): Allow new_text_length == -1.
13386
13387 Wed Apr  5 16:27:45 2000  Owen Taylor  <otaylor@redhat.com>
13388
13389         * gtk/gtkimcontext.[ch]: Base class for new input context system
13390
13391         * gtk/gtkimmulticontext.[ch]: Proxy input context that allows
13392         the real input context implementation to be loaded from modules
13393         and switched on the fly.
13394
13395         * gtk/gtkcontextsimple.[ch]: Simple implementation of an input
13396         context that just does direct keysymbol => unicode translation.
13397
13398         * gtk/gtkentry.[ch]: Start switching editing over to using
13399         GtkInputContext. (No handling of preedit yet.)
13400
13401 Wed Apr  5 15:48:41 2000  Owen Taylor  <otaylor@redhat.com>
13402
13403         * gtk/gtktypeutils.h (GTK_CHECK_GET_CLASS): Fix problem with one too
13404         many substitutions. (klass should not be subsituted.)
13405
13406 Wed Apr  5 00:18:14 2000  Owen Taylor  <otaylor@redhat.com>
13407
13408         * configure.in: Add checks for Pango
13409
13410         * configure.in docs/Makefile.am: Add test for sgml2html
13411         and allow 'make dist' without building html, but print out
13412         warnings in that case. (For making snapshots)
13413
13414         * gdk/Makefile.am gdk/x11/Makefile.am gtk/Makefile.am:
13415         Add Pango libraries and C flags
13416
13417         * gdk/gdkdraw.c gdk/gdkdrawable.h gdkwindow.c gdk/x11/gdkdrawable-x11.c:
13418         Add function (gdk_draw_layout) to draw a pango layout.
13419
13420         * gdk/gdkpango.h gdk/x11/gdkpango-x11.c: New file with functions
13421         for getting Pango contexts for GDK.
13422
13423         * gtk/gtkeditable.c: Get rid of dead code gtk_editable_parent_set()
13424
13425         * gtk/gtkentry.[ch]: Complete rewrite to use Pango, add bidirectional
13426         editing.
13427
13428         * gtk/gtkentry.c: Hack in simple Hebrew input with direct
13429         keysym => unicode translations. More languages can be added
13430         here, but real input-method support is needed.
13431
13432         * docs/Changes-1.4.txt: Added note about entry behavior.
13433         
13434         * gtk/gtkenums.h gtk/gtkwidget.[ch] testgtk.c gtkprivate.h: Add functions
13435         to set the reading direction for a widget and the global direction.
13436         Add test which allows toggling the global direction. Two private
13437         flags are used to store the direction. (GTK_DIRECTION_SET + GTK_DIRECTION_LTR)
13438
13439         * gtk/gtkcheckbutton.c gtk/gtkframe.c gtk/gtkhbbox.c gtk/gtkhbox.c
13440           gtk/gtkradiobutton.c gtk/gtkspinbutton.c gtk/gtktable.c 
13441
13442         * gtk/gtk[hv]scale.c gtk/gtkscale.[ch]: Draw numbers using Pango
13443
13444         * gtk/gtklabel.[ch]: Moved to Pango and considerably rewritten. Line breaking,
13445         underlining now handled by Pango.
13446
13447         * gtk/gtkstyle.[ch] gtk/gtkrc.[ch]: Add a PangoFontDescription
13448         to RCStyle and Style. (Having both this and the old font name and GdkFont 
13449         is temporary.)
13450
13451         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_{context,layout}): Added 
13452         convenience functions for creating contexts and layouts for widgets.
13453
13454         * gtk/testgtk.c: Enhance label tests with multilingual labels.
13455
13456 2000-05-29  Jonathan Blandford  <jrb@redhat.com>
13457
13458         * gtk/gtkclist.c (gtk_clist_column_titles_active): let you set the
13459         titles to be active, even if they aren't visible.
13460         (gtk_clist_column_titles_passive):  Ditto.
13461
13462 2000-05-21  Nils Barth  <nils_barth@post.harvard.edu>
13463
13464         * gtkmenu.c:
13465         * gtkmenu.h:
13466         * gtktypeutils.h: Spelling/grammar fixes in comments.
13467
13468 Tue May 23 12:25:07 CEST 2000 lupus <lupus@debian.org>
13469
13470         * gdk/nanox/*.h: add missing header files.
13471
13472 Fri May 19 11:52:59 2000  Tim Janik  <timj@gtk.org>
13473
13474         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set
13475         send_event to TRUE.
13476         (gtk_drawing_area_size): queue a resize.
13477
13478 Sun Mar 26 03:21:28 2000  Tim Janik  <timj@gtk.org>
13479
13480         * gtk/gtksignal.c (gtk_signal_handlers_destroy): when unref-ing
13481         the handlers, also invalidate them. bug nailed down by Karl Nelson
13482         <kenelson@ece.ucdavis.edu>.
13483
13484 Fri May 19 06:49:23 2000  Tim Janik  <timj@gtk.org>
13485
13486         * gtk/gtkfontsel.c (gtk_font_selection_get_font_name): handle
13487         "(nil)" foundries, patch from Grigorios Magklis.
13488
13489         * gtk/gtkfontsel.c (gtk_font_selection_load_font): don't crash
13490         on non-available fonts, based on a patch by Grigorios Magklis
13491         <maglis@cs.rochester.edu>.
13492
13493 2000-05-18  Elliot Lee  <sopwith@redhat.com>
13494
13495         * gdk/x11/gdkregion-generic.c: If a region does not have any
13496         rectangles, or if the specified rectangle is not in the region, then return GDK_OVERLAP_RECTANGLE_OUT
13497         instead of GDK_OVERLAP_RECTANGLE_IN.
13498
13499 2000-05-17  Jonathan Blandford  <jrb@redhat.com>
13500
13501         * gtk/gtklayout.c (gtk_layout_map): Remove references to
13502         OFFSCREEN, as it is no longer necessary.
13503
13504 Wed May 17 10:52:12 2000  Owen Taylor  <otaylor@redhat.com>
13505
13506         * gtk/gtkcolorsel.c: Patch from David Santiago
13507         <mrcooger@cyberverse.com> to change things so that the 
13508         indicator of the active palette entry is done independently,
13509         not via the focus, since it should always be visible.
13510
13511 2000-05-17  Tor Lillqvist  <tml@iki.fi>
13512
13513         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Plug same
13514         refcount leaks as in the X11 backend.
13515
13516         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Logging
13517         cosmetics.
13518
13519         * gdk/win32/gdkwindow-win32.c: Similar changes as in X11
13520         backend. Add _gdk_windowing_window_destroy().
13521
13522         * gtk/gtkcolorsel.c: Include correct backend-specific header.
13523         Don't use XColor unless on X11. (No GDK_VISUAL_STATIC_COLOR
13524         either, but these probably do exist on nanox?)
13525         
13526         * gtk/gtkhsv.c: Use G_PI (fresh from <glib.h>) instead of M_PI
13527         which isn't necessarily defined by <math.h>.
13528
13529         * gtk/gtkobject.c (gtk_object_init): Don't go up the class
13530         ancestry past GtkObject.
13531
13532         * gtk/gtktypeutils.h: Mark GTK_TYPE_IDENTIFIER for export/import
13533         from DLL on Win32.
13534
13535         * gtk/gtk.def: Update corresponding to recent changes.
13536
13537         * gtk/makefile.{cygwin,msc}: Updates.
13538
13539 Fri May 12 18:46:51 2000  Owen Taylor  <otaylor@redhat.com>
13540
13541         * docs/Changes-1.4.txt: A bit of editing.
13542
13543         * gdk/gdkwindow.c (_gdk_window_clear_update_area) 
13544         * gdk/x11/gdkwindow-x11.c (gdk_window_hide): Add a function
13545         to clear the update area for the window, and clear it
13546         when hiding a window.
13547
13548         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Ignore
13549         if window destroyed.
13550
13551         * gdk/gdkwindow.c (gdk_window_end_paint): Likewise.
13552
13553         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c gdk/gdkinternals.h: Move 
13554         gdk_window_destroy() to the generic code, since there was a lot of 
13555         window-system-independent logic it in. Add a function:
13556         
13557          _gdk_window_destroy() 
13558
13559         to the internal API to destroy a window without unreferencing it.
13560         Add a function:
13561
13562          _gdk_windowing_window_destroy()
13563
13564         That does the windowing-system-dependent part of destroying 
13565         the window.
13566
13567 Fri May 12 11:07:41 2000  Owen Taylor  <otaylor@redhat.com>
13568
13569         * gtk/testgtk.c: Fix various memory leaks of pixmaps.
13570
13571 Fri May 12 11:06:10 2000  Owen Taylor  <otaylor@redhat.com>
13572
13573         * gtk/gtkwidget.c docs/Changes-1.4.txt (gtk_widget_shape_combine_mask): 
13574         Make gtk_widget_shape_combine_mask() keep a reference count on
13575         the pixmap since it keeps it around.
13576
13577 Fri May 12 10:53:29 2000  Owen Taylor  <otaylor@redhat.com>
13578
13579         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix refcount
13580         leak.
13581
13582         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Fix refcount
13583         leak with event filters.
13584
13585 Thu May 11 14:29:44 2000  Owen Taylor  <otaylor@redhat.com>
13586
13587         * gtk/gtkdnd.c (gtk_drag_dest_set_internal): Remove the
13588         signal handlers with the right data arguments. (Fixes
13589         some warnings when a widget was repeatedly set as a drag
13590         destination.)
13591
13592         * gdk/x11/gdkdnd-x11.c (gdk_window_register_dnd): Set data on the
13593         window so we can avoid avoid setting the DND properties on the
13594         toplevel window repeatedly.
13595
13596 2000-05-13  Tor Lillqvist  <tml@iki.fi>
13597
13598         * gdk/win32/gdkwin32.h: Define more message types missing from
13599         mingw headers.
13600
13601         * gdk/win32/gdkevents-win32.c (gdk_event_translate): On WM_DESTROY
13602         call gdk_window_destroy_notify(). It was never called. This
13603         probably meant that the GdkWindow was never freed. Thanks Owen for
13604         noticing (!).
13605
13606         * gdk/win32/gdkwindow-win32.c (gdk_window_internal_destroy): Mark
13607         window as destroyed before calling DestroyWindow(). DestroyWindow()
13608         causes a call to the window procedure (gdk_WindowProc), which
13609         calls gdk_event_translate(), which calls
13610         gdk_window_destroy_notify(), which gets confused unless the window
13611         is set as destroyed.
13612
13613         * gdk/win32/gdkcolor-win32.c (gdk_win32_color_to_string): Rename
13614         this function to indicate it's win32 only. Put inside #ifdef
13615         G_ENABLE_DEBUG.
13616
13617         * gdk/win32/gdkevents-win32.c (gdk_win32_message_name): New
13618         debugging function. (gdk_event_translate:) Add a default branch
13619         that uses the above function to print debug messages with all
13620         Windows messages symbolically.
13621
13622         * gdk/win32/gdkprivate-win32.h: Declare it, and
13623         gdk_win32_color_to_string, but only if G_ENABLE_DEBUG.
13624
13625 Fri May 12 20:07:32 2000  Tim Janik  <timj@gtk.org>
13626
13627         * gtk/gtkcolorseldialog.c: don't include gtk/gtkintl.h in a
13628         public header file.
13629
13630 Fri May 12 17:13:32 2000  Tim Janik  <timj@gtk.org>
13631
13632         * docs/Changes-1.4.txt: documented necessary changes for 1.4 transition.
13633
13634         * gtk/gtktext.c: made the adjustments no-construct args, simply
13635         provide default adjustments.
13636         (gtk_text_destroy): release adjustments.
13637
13638         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): made the
13639         adjustment argument non-construct.
13640
13641         * gtk/gtkprogress.c (gtk_progress_destroy): release adjustment here,
13642         instead of in finalize.
13643         (gtk_progress_get_text_from_value): 
13644         (gtk_progress_get_current_text): 
13645         (gtk_progress_set_value): 
13646         (gtk_progress_get_percentage_from_value): 
13647         (gtk_progress_get_current_percentage): 
13648         (gtk_progress_set_percentage): 
13649         (gtk_progress_configure): ensure an adjustment is present.
13650
13651 Thu May 11 01:24:08 2000  Tim Janik  <timj@gtk.org>
13652
13653         * gtk/gtkcolorsel.[hc]:
13654         * gtk/gtkcolorseldialog.[hc]:
13655         * gtk/gtkhsv.[hc]: major code cleanups, destroy handlers need to chain
13656         their parent implementation, use bit fields for boolean values, don't
13657         create unused widgets, usage of glib types, braces go on their own
13658         lines, function argument alignment, #include directives etc. etc. etc..
13659
13660         * gtk/Makefile.am (gtk_public_h_sources): install gtkhsv.h.
13661
13662 Wed May 10 23:29:52 2000  Tim Janik  <timj@gtk.org>
13663
13664         * gtk/gtktoolbar.c (gtk_toolbar_destroy): don't unref a NULL tooltips.
13665
13666         * gtk/gtkfilesel.c (gtk_file_selection_destroy): don't free a cmpl_state
13667         of NULL.
13668
13669         * gtk/gtkcombo.c (gtk_combo_item_destroy): don't keep references
13670         to freed data.
13671         (gtk_combo_destroy): don't keep a pointer to a destroyed window.
13672
13673         * gtk/gtkmenu.c (gtk_menu_init): reset the menu's toplevel pointer
13674         to NULL when the toplevel is getting destroyed.
13675         (gtk_menu_set_tearoff_state): same here for the tearoff_window.
13676         (gtk_menu_destroy): 
13677         (gtk_menu_init): store the information of whether we have to
13678         readd the initial child ref_count during destruction in a new
13679         GtkMenu field needs_destruction_ref_count.
13680
13681         * gtk/gtkviewport.c: SHAME! ok this one is tricky, so i note it
13682         here, those reading: learn from my mistake! ;)
13683         in order for set_?adjustment to support a default adjustemnt if
13684         invoked with an adjustment pointer of NULL, the code read (pseudo):
13685         if (v->adjustment) unref (v->adjustment);
13686         if (!adjustment) adjustment = adjustment_new ();
13687         if (v->adjustment != adjustment) v->adjustment = ref (adjustment);
13688         now imagine the first unref to actually free the old adjustment and
13689         adjustment_new() creating a new adjustment from the very same memory
13690         portion. here, the latter comparision will unintendedly fail, and
13691         all hell breaks loose.
13692         (gtk_viewport_set_hadjustment):
13693         (gtk_viewport_set_vadjustment): reset viewport->?adjustment to NULL
13694         after unreferencing it.
13695
13696         * gtk/gtkcontainer.[hc]: removed toplevel registration
13697         functions: gtk_container_register_toplevel(),
13698         gtk_container_unregister_toplevel() and
13699         gtk_container_get_toplevels() which had wrong semantics
13700         anyways: it didn't reference and copy the list.
13701
13702         * gtk/gtkwindow.c: we take over the container toplevel registration
13703         bussiness now. windows are registered across multiple destructions,
13704         untill they are finalized. the initial implicit reference count
13705         users are holding on windows is removed with the first destruction
13706         though.
13707         (gtk_window_init): ref & sink and set has_user_ref_count, got
13708         rid of gtk_container_register_toplevel() call. add window to
13709         toplevel_list.
13710         (gtk_window_destroy): unref the window if has_user_ref_count
13711         is still set, got rid of call to
13712         gtk_container_unregister_toplevel().
13713         (gtk_window_finalize): remove window from toplevel list.
13714         (gtk_window_list_toplevels): new function to return a newly
13715         created list with referenced toplevels.
13716         (gtk_window_read_rcfiles): use gtk_window_list_toplevels().
13717
13718         * gtk/gtkhscale.c (gtk_hscale_class_init): made the GtkRange
13719         adjustment a non-construct arg.
13720         * gtk/gtkvscale.c (gtk_vscale_class_init): likewise.
13721         * gtk/gtkhscrollbar.c (gtk_vscrollbar_class_init): likewise.
13722         * gtk/gtkvscrollbar.c (gtk_vscrollbar_class_init): likewise.
13723
13724         * gtk/gtkrange.c: added some realized checks.
13725         (gtk_range_destroy): get rid of the h/v adjustments in the
13726         destroy handler instead of finalize. remove timer.
13727         (gtk_range_get_adjustment): demand create adjustment.
13728
13729         * gtk/gtkviewport.c: made h/v adjustment non-construct args.
13730         we simply create them on demand now and get rid of them in
13731         the destroy handler.
13732         (gtk_viewport_destroy): get rid of the h/v adjustments in the
13733         destroy handler instead of finalize.
13734         (gtk_viewport_get_hadjustment): 
13735         (gtk_viewport_get_vadjustment): 
13736         (gtk_viewport_size_allocate): demand create h/v adjustment
13737         if required.
13738
13739         * gtk/gtkwidget.c (gtk_widget_finalize): duplicate part of the
13740         gtk_widget_real_destroy () functionality.
13741         (gtk_widget_real_destroy): reinitialize with a new style, instead
13742         of setting widget->style to NULL.
13743
13744 Fri May  5 13:02:09 2000  Tim Janik  <timj@gtk.org>
13745
13746         * gtk/gtkcalendar.c:
13747         * gtk/gtkbutton.c: ported _get_type() implementation over to
13748         GType, either to preserve memchunks allocation facilities,
13749         or because Gtk+ 1.0 GtkTypeInfo was still being used.
13750
13751         * gtk/gtkobject.[hc]: derive from GObject. ported various functions
13752         over. prepare for ::destroy to be emitted multiple times.
13753         removed reference tracer magic. chain into GObjectClass.shutdown()
13754         to emit ::destroy signal.
13755
13756         * gtk/gtksignal.c: removed assumptions about GTK_TYPE_OBJECT being
13757         fundamental.
13758
13759         * gtk/gtkmain.c: removed gtk_object_post_arg_parsing_init()
13760         cludge.
13761
13762         * gtk/gtksocket.c:
13763         * gtk/gtkplug.c:
13764         * gtk/gtklayout.c:
13765         * gtk/gtklabel.c:
13766         * gtk/gtkargcollector.c:
13767         * gtk/gtkarg.c: various fixups to work with GTK_TYPE_OBJECT
13768         not being a fundamental anymore, and to work with the new
13769         type system (nuked fundamental type varargs clutter).
13770
13771         * gtk/*.c: install finalize handlers in the GObjectClass
13772         part of the class structure.
13773         changed direct GTK_OBJECT()->klass accesses to
13774         GTK_*_GET_CLASS().
13775         changed direct object_class->type accesses to GTK_CLASS_TYPE().
13776
13777         * gtktypeutils.[hc]: use the reserved fundamental ids provided by
13778         GType. made most of the GTK_*() type macros and Gtk* typedefs
13779         simple wrappers around macros and types provided by GType.
13780         most notably, a significant portion of the old API vanished:
13781         GTK_TYPE_MAKE(),
13782         GTK_TYPE_SEQNO(),
13783         GTK_TYPE_FLAT_FIRST, GTK_TYPE_FLAT_LAST,
13784         GTK_TYPE_STRUCTURED_FIRST, GTK_TYPE_STRUCTURED_LAST,
13785         GTK_TYPE_ARGS,
13786         GTK_TYPE_CALLBACK,
13787         GTK_TYPE_C_CALLBACK,
13788         GTK_TYPE_FOREIGN,
13789         GtkTypeQuery,
13790         gtk_type_query(),
13791         gtk_type_set_varargs_type(),
13792         gtk_type_get_varargs_type(),
13793         gtk_type_check_object_cast(),
13794         gtk_type_check_class_cast(),
13795         gtk_type_describe_tree(),
13796         gtk_type_describe_heritage(),
13797         gtk_type_free(),
13798         gtk_type_children_types(),
13799         gtk_type_set_chunk_alloc(),
13800         gtk_type_register_enum(),
13801         gtk_type_register_flags(),
13802         gtk_type_parent_class().
13803         replacements, where available are described in ../docs/Changes-1.4.txt.
13804         implemented compatibility functions for the remaining API.
13805
13806         * configure.in: depend on glib 1.3.1, use gobject module.
13807
13808 Thu May 11 12:39:50 2000  Owen Taylor  <otaylor@redhat.com>
13809
13810         * TODO.xml: Various updates to current status.
13811
13812 Wed May 10 20:25:04 2000  Owen Taylor  <otaylor@redhat.com>
13813
13814         * gtk.m4: Print out version when test succeeds.
13815
13816 Wed May 10 16:38:17 2000  Owen Taylor  <otaylor@redhat.com>
13817
13818         * gtk/Makefile.am docs/Changes-1.4.txt gtk/gtkcolorsel.[ch]
13819         gtk/gtkhsv.[ch]: Color selection dialog rewrite.
13820         
13821         (Original triangle color selector from Simon Budig
13822         <Simon.Budig@unix-ag.org>, Cleaned up and rewritten for GTK+ by
13823         from Jonathan, Havoc, and Federico. Merge into GTK+ done by David
13824         Santiago <mrcooger@cyberverse.com>)
13825
13826         * gtk/gtkcolorseldialog.[ch]: Split color selection dialog
13827         out into a separate widget.
13828
13829         * gtk/testgtk.c: Add some checkbuttons for toggling palette
13830         and opacity controls.
13831
13832 Wed May 10 16:08:09 2000  Owen Taylor  <otaylor@redhat.com>
13833
13834         * configure.in (GTK_LIBS_EXTRA): Remove references to gobject that 
13835         snuck in prematurely.
13836
13837 2000-05-07  Tor Lillqvist  <tml@iki.fi>
13838
13839         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Fix typo. I
13840         had deleted a ! operator by mistake, which caused
13841         GDK_SELECTION_CLEAR events never to be generated, which caused
13842         only the first copy to the clipboard from an gtkeditable to
13843         actually cause a copy to the Windows clipboard.
13844
13845 2000-05-06  Tor Lillqvist  <tml@iki.fi>
13846
13847         * gdk/win32/gdkdnd-win32.c: Enable shortcut resolution for gcc
13848         compilation, too. Current mingw gcc distributions include the
13849         necessary headers. Also the necessary IIDs are now in mingw
13850         headers/libraries, and own definitions unnecessary.
13851
13852         More hacking on OLE2 DND, still doesn't work though, and thus
13853         ifdeffed out.
13854
13855         * gdk/win32/gdkwindow-win32.c: Remove gdk_window_clear() from
13856         here, too.
13857
13858 Sat,  6 May 2000 13:31:34 +0200 Paolo Molaro <lupus@linuxcare.com>
13859
13860         * gdk/nanox/*: nano-X port work in progress.
13861         * gdk/simple.c: simple test for Gdk.
13862         * README.nanox: notes about the port: read this first!
13863         * gtk/gtk{dnd,plug,selection,window}.c: minimal changes to make gtk compile
13864         with nano-X.
13865
13866 Fri May  5 11:18:47 2000  Owen Taylor  <otaylor@redhat.com>
13867
13868         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c (gdk_window_clear): Move
13869         gdk_window_clear() into common code, implement in terms of
13870         gdk_window_clear_area(). (Fixes bug where gdk_window_clear() was
13871         not redirected to the backing rectangle.
13872
13873 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
13874
13875         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
13876         EXTRA_DIST. It does not work well when the file that
13877         everything depends on is not in the tarball.
13878
13879 Tue Apr 25 22:20:41 2000  Owen Taylor  <otaylor@redhat.com>
13880
13881         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix error
13882         with recursion where process_updates() is called from
13883         an expose handler. (GtkTextView is highly broken in
13884         doing this, but it should work, so it is a nice test
13885         case.)
13886
13887 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
13888
13889         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Gracefully
13890         handle the case where updates are queued during processing of
13891         updates.
13892
13893 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
13894
13895         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): We already assume
13896         window is on gdk_display - use that instead of segfaulting.
13897
13898 Thu May  4 02:04:46 2000  Tim Janik  <timj@gtk.org>
13899
13900         * configure.in (STRIP_DUMMY): some Make 3.79 $(strip ) versions are
13901         broken and require an empty arg, give it to them.
13902
13903 Fri Apr 28 19:34:32 2000  Tim Janik  <timj@gtk.org>
13904
13905         * gtk/gtklabel.h: indentation fixes.
13906
13907 2000-05-02  Tor Lillqvist  <tml@iki.fi>
13908
13909         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_arc): Don't try to
13910         draw too narrow or too low arcs, they seem to fail, at least with
13911         some display drivers.
13912
13913         * gdk/gdk.c (gdk_init_check): Use G_DIR_SEPARATOR.
13914
13915         Large changes to the Win32 backend, partially made necessary by
13916         the changes to the backend-independent internal
13917         structures. Attempts to implement similar backing store stuff as
13918         on X11. The current (CVS) version of the Win32 backend is *not* as
13919         stable as it was before the no-flicker branch was merged. A
13920         zipfile with that version is available from
13921         http://www.gimp.org/win32/. That should be use by "production"
13922         code until this CVS version is usable. (But note, the Win32
13923         backend has never been claimed to be "production quality".)
13924
13925         * README.win32: Add the above comment about versions.
13926
13927         * gdk/gdkwindow.c: Don't use backing store for now on Win32.
13928
13929         * gdk/gdk.def: Update.
13930
13931         * gdk/gdkfont.h: Declare temporary Win32-only functions. Will
13932         presumably be replaced by some more better mechanism as 1.4 gets
13933         closer to release shape.
13934
13935         * gdk/makefile.{cygwin,msc}: Update.
13936
13937         * gdk/win32/*.c: Correct inclusions of the backend-specific and
13938         internal headers. Change code according to changes in these. Use
13939         gdk_drawable_*, not gdk_window_* where necessary.
13940
13941         * gdk/win32/gdkdnd-win32.c: Use MISC selector for GDK_NOTE, not
13942         our old DND.
13943
13944         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_text): Don't try
13945         to interpret single characters as UTF-8. Thanks to Hans Breuer.
13946         Use correct function name in warning messages.
13947
13948         * gdk/win32/gdkevents-win32.c: Use correct parameter lists for the
13949         GSourceFuncs gdk_event_prepare and gdk_event_check.
13950         (gdk_event_get_graphics_expose): Do implement, use
13951         PeekMessage. Thanks to Hans Breuer.
13952         (event_mask_string): Debugging function to print an GdkEventMask.
13953         (gdk_pointer_grab): Use it.
13954
13955         * gdk/win32/gdkfont-win32.c: The Unicode subrange that the
13956         (old) book I used claimed was Hangul actually is CJK Unified
13957         Ideographs Extension A. Also, Hangul Syllables were missing.
13958         Improve logging.
13959
13960         * gdk/win32/gdkgc-win32.c: Largish changes.
13961
13962         * gdk/win32/gdkim-win32.c (gdk_set_locale): Use
13963         g_win32_getlocale() from GLib, and not setlocale() to get current
13964         locale name.
13965
13966         * gdk/win32/gdkprivate-win32.h
13967         * gdk/win32/gdkwin32.h: Move stuff from gdkprivate-win32.h to
13968         gdkwin32.h, similarily as in the X11 backend.
13969
13970         * gdk/win32/gdkwindow-win32.c (gdk_propagate_shapes): Bugfix,
13971         assignment was used instead of equals in if test. Thanks to Hans
13972         Breuer.
13973
13974         * gdk/win32/gdkgeometry-win32.c: New file, just a quick hack of
13975         the X11 version.
13976
13977         * gdk/win32/makefile.{cygwin,msc}
13978         * gtk/makefile.{cygwin,msc}: Updates. Better kludge to get the
13979         path to the Win32 headers that works also with the mingw compiler.
13980
13981         * gtk/gtkstyle.c: Include <string.h>.
13982
13983 2000-04-26  Havoc Pennington  <hp@redhat.com>
13984
13985         * gtk/gtklabel.c (gtk_label_get_text): Add this function,
13986         replacing the broken gtk_label_get ()
13987
13988 2000-04-15  Havoc Pennington  <hp@pobox.com>
13989
13990         * gdk/gdkdnd.h: clean up enum format, remove extra comma, 
13991         this keeps scanner scripts from getting confused.
13992
13993         * gdk/gdkdraw.c (gdk_drawable_get_data): This should return the
13994         data, rather than void
13995
13996 2000-04-15  Tor Lillqvist  <tml@iki.fi>
13997
13998         * gtk/gtkclist.c (gtk_clist_motion)
13999         * gtk/gtklist.c (gtk_list_motion_notify): If we get a motion event
14000         with is_hint FALSE, get x and y from the event. They used to be
14001         used uninitialised. The Win32 backend never sends motion events
14002         marked as hints. This for instance fixes the annoying file and
14003         font selector behaviour in the Win32 version.
14004
14005 2000-04-14  Tor Lillqvist  <tml@iki.fi>
14006
14007         * gtk/gtksignal.c: (Win32:) Export the gtk_private_signals and
14008         gtk_private_n_signals variables, they are used by some software,
14009         sigh.
14010
14011         * gtk/gtkrc.c (get_gtk_sysconf_directory): (Win32:) Fetch the
14012         installation directory from the Registry, where the installer
14013         should have put it.
14014
14015 Fri Apr  7 17:19:27 2000  Owen Taylor  <otaylor@redhat.com>
14016
14017         * gdk/x11/Makefile.am: Fix problem with installation directory for
14018         gdkx.h
14019
14020         * gtk/gtkmenuitem.c gtk/gtkmenushell.c: Patch from David Santiago
14021         <mrcooger@cyberverse.com> so that when selecting menus with the
14022         mouse, the first item will not be selected, but when selecting
14023         with an accelerator, or navigating left-right on a menubar with
14024         the menus popped up, the first item will be selected.
14025
14026 2000-04-05  Dan Damian  <dand@dnttm.ro>
14027
14028         * configure.in: Added "ro" to ALL_LINGUAS.
14029
14030 Wed Apr  5 00:08:36 2000  Owen Taylor  <otaylor@redhat.com>
14031
14032         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): Fix screwy
14033         indentation.
14034
14035         * Makefile.am (EXTRA_DIST): Fix typo.
14036
14037         * gdk[/x11]/Makefile.am (INCLUDES): Add $(top_builddir)/gdk
14038         to catch gdkconfig.h
14039
14040         * gtk/gtkitemfactory.c: Added FIXME.
14041
14042 2000-03-30  Jonathan Blandford  <jrb@redhat.com>
14043
14044         * gtk/gtkpaned.c (gtk_paned_get_position): oops.
14045         s/return_if_fail/return_val_if_fail/g and add a return value.
14046
14047 Mon Mar 27 20:56:14 2000  Owen Taylor  <otaylor@redhat.com>
14048
14049         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Fix up 
14050         merge slipup.
14051
14052         * gdk/gdkinput.h: Fix missing line from merge.
14053
14054 Mon Mar 27 20:39:49 2000  Owen Taylor  <otaylor@redhat.com>
14055
14056         * gdk/gdkcolor.c cursor.c gdkdraw.c gdkfont.c: Include gdkinternals.h
14057         instead of gdkprivate.h.
14058
14059 Sun Mar 12 15:19:24 2000  Owen Taylor  <otaylor@redhat.com>
14060
14061         * gtk/gtkinputdialog.h (struct _GtkInputDialogClass): Fix
14062         parent class to correctly be GtkDialogClass.
14063
14064 Thu Feb 24 23:58:21 2000  Owen Taylor  <otaylor@redhat.com>
14065
14066         * gdk/x11/gdkgeometry-x11.c: Don't worry about clipping of
14067         toplevel windows and their immediate children by their parents,
14068         since the size of toplevel windows is out of our immediate
14069         control and we don't get any real benefit from trying to track
14070         this size for clipping.
14071
14072         * gdk/gdkprivate.h (struct _GdkWindowPrivate) gdk/x11/gdkwindow-x11.c : Add a flag
14073         for input_only windows.
14074
14075         * gdk/gdkwindow.c gdk/x11/gdkgeometry-x11.c: Use the above flag
14076         to fix some hacks and make sure that we don't try to set the
14077         background of input only windows.
14078
14079 Thu Feb 24 18:11:46 2000  Owen Taylor  <otaylor@redhat.com>
14080
14081         * gdk/gdkinternals.h gdk/gdkprivate.h gdk/Makefile.am: Add a header file for
14082         the _really_ internal stuff, and leave gdkprivate.h for the fake private
14083         stuff that we've traditionally exposed.
14084
14085         * gdk/**.c: Use gdkinternals.h where appropriate.
14086
14087         * gdk/x11/gdkx.h gdk/x11/gdkprivate-x11.h gdk/x11/*.c: Make gdkx.h
14088         not include gdkprivate-x11.h, move all stuff of conceivable public
14089         interest into gdkx.h; keep all really private stuff in
14090         uninstalled header gdkprivate-x11.h.
14091
14092         * gdk/gdkdraw.c gdk/gdkwindow.c gdk/gdkinternals: Redirect all calls to
14093         image->image_put on windows through a new function _gdk_window_draw_image()
14094         to allow us to do backing store for images. (Sort of ugly)
14095
14096         * gdk/gdkgc.c gdk/gdkprivate.h: Cache the ts and clip origins for graphics
14097         contexts locally so that we can offset them properly when drawing 
14098         onto backing pixmaps.
14099
14100         * gdk/gdkinput.h: Reindented
14101
14102         * gdk/gdkprivate.h gdk/x11/gdkwindow-x11.c: Store the background
14103         pixmap or color for the window, so we can properly initialize
14104         our double-buffer pixmaps, and also so that we temporarily set
14105         a background of None while scrolling.
14106
14107         * gdk/gdkregion.h: Revise region boolean operators to have an
14108         interface that is actually convenient - switch from creating new
14109         regions on every op, to "methods" that modify existing regions
14110         (A = A OP B). 3 argument forms which allow dest == src, would also
14111         be possible, but the current interfaces seem to map nicely
14112         onto what needs to be done. (There is quite a lot of region
14113         code in GDK now.)
14114
14115         * gdk/gdkregion.h: Add constructor from rectangle and a copy
14116         operator.
14117
14118         * gdk/x11/{gdkregion-generic.[ch],gdkpolyreg-generic.c,
14119         gdkpoly-generic.h: Copy region code from Xlib, switch it over
14120         to 32 bit coordinates, modify it to be mostly GTK+ style
14121         and to have interfaces that match gdkregion.h.
14122
14123         * gdk/gdkwindow.c gdk/gdkprivate.h: Add facility for
14124         double-buffered drawing. gdk_window_begin_paint_{rect,region}()
14125         create a backing pixmap and redirect all drawing to
14126         that backing pixmap until a matching gdk_window_end_paint().
14127
14128         * gdk/gdkwindow.[ch] gdk/gdkinternals.h gdk/x11/gdkdrawable-x11.c:
14129         Create a special drawable class for GtkWindow's that 
14130         redirects the drawing to the backing pixmap as necessary
14131         and then calls the real operations in _gdk_windowing_window_class.
14132
14133         * gdk/gdkprivate.h gdk/gdkwindow.[ch] gdk/x11/gdkevents-x11.c:
14134         Store invalid region for each window. Generate expose events for invalid
14135         region in an idle. This replaces both the expose compression
14136         and the redrawing queuing in GTK+. It is both more efficient and
14137         simpler than either one individually and far more so then the
14138         combination.
14139
14140         * gdk/x11/gdkgeometry.c gdk/x11/gdkwindow.c gdk/x11/gdkprivate-x11.h:
14141         Emulate 32 bit coordinates for windows with 16 bit coordinates
14142         by offsetting drawing, guffaw scrolling techniques and
14143         mapping/unmapping child windows as necessary.
14144
14145         * gdk/gdkwindow.[ch] gdk/x11/gdkgeometry.c: Add anti-exposes,
14146         where, when invalid regions are processed, the region is stored,
14147         and if expose events come in that are detectably duplicate
14148         the processed exposes (by comparison of event serial numbers),
14149         the stored region is subtracted out of those exposes.
14150
14151         * gdk/x11/gdkgeometry.c: Temporarily unset backing pixmaps of
14152         regions newly exposed when scrolling or resizing windows.
14153         This, combined with forcing processesing of queued invalidated
14154         regions, gives nice flicker-free scrolling.
14155
14156         * gtk/gtklayout.c gtk/gtkviewport.c: Force processing of
14157         invalidated regions after every scroll.
14158
14159         * gtk/gtklayout.c: Vastly simplify using the new 32 bit coordinate
14160         emulation in GDK. Its, for all practical purposes just a
14161         GtkViewport/GtkFixed hybrid now.
14162
14163         * gdk/gdkdrawable-x11.c: Convert from GDK (32 bit) to X11
14164         (16-bit) structures as necessary instead of just casting.
14165
14166         * gdk/x11/gdkgc-x11.c gdk/x11/gdkx.h: Replace XSetRegion with code
14167         in terms of the structures from gdkregion-generic.c, using appropriate
14168         offsets from GDK to X11 coordinates. Cache clip mask and
14169         origin and ts origin locally and only flush to the server
14170         when drawing, to avoid constantly setting and resetting these
14171         values when offsetting GC's for scrolling and backing pixmaps.
14172
14173         * gdk/x11/gdkinput-x11.c: Fix leak of axes structures.
14174
14175         * gtk/gtkcontainer.c: Call process_all_updates at end
14176         of resizing to reduce flicker. (Avoids having redraw
14177         lag arbitrarily behind resize under some circumstances)
14178
14179         * gtk/gtkentry.c: Remove old backing store code, and simply take
14180         advantage of the new backing store capabilities of GDK.
14181
14182         * gtk/gtkmain.c: Simple implementation of widget backing
14183         store - simply push a paint while handling each expose.
14184         (Should really be configurable widget for widget.)
14185         
14186         * gtk/gtkwidget.c: Remove all the old complicated redraw
14187         code, and simply invalidate the GDK windows from
14188         gdk_window_queue_clear(), etc. (Sigh, so much carefully
14189         debugged complexity ... gone to the winds.)
14190
14191         Remove all the code for suppressing expose events while
14192         resizes are pending; this isn't needed since the invalid
14193         areas won't be processed until after the resizes are
14194         processed, since they are in a lower priority idle.
14195
14196 Thu Feb 24 15:37:41 2000  Owen Taylor  <otaylor@redhat.com>
14197
14198         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Set width
14199         and height of dest rectangle for non-intersecting rectangles.
14200
14201 Sun Feb 20 16:47:31 2000  Owen Taylor  <otaylor@redhat.com>
14202
14203         * gtk/gtkwidget.h: Make GtkAllocation just a typedef
14204         for GdkRectangle.
14205
14206 Sun Feb 20 11:27:00 2000  Owen Taylor  <otaylor@redhat.com>
14207
14208         * gdk/gdk{events,image,private,types,window}.h
14209          gdk/x11/gdkinputprivate.h: Change all coordinates
14210          from int16 to int. Also, Change width and height from
14211          unsigned to signed to avoid all the stupid C 
14212          signedness bugs.
14213
14214 Sat Feb 19 12:01:53 2000  Owen Taylor  <otaylor@redhat.com>
14215
14216         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable):
14217         Use gdk_drawable_get_depth instead of gdk_drawable_get_visual.
14218         Add some more detailed checking.
14219
14220         * gdk/gdkdraw.c gdk/gdkdrawable.h (gdk_drawable_get_depth):
14221         New function to retrieve the depth of a drawable.
14222
14223         * gdk/gdkprivate.h (struct _GdkDrawablePrivate): Add a depth
14224         field, reorder fields to save memory. 
14225
14226 Mon Dec 13 14:06:03 1999  Owen Taylor  <otaylor@redhat.com>
14227
14228         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): Draw a small portion
14229         of the background image instead of scaling the background down to
14230         a line.
14231
14232         * gtk/gtk[hv]scrollbar.c (gtk_hscrollbar_size_allocate): Removed mysterious
14233         which temporarily set slider to wrong size.
14234
14235         * gtk/gtkaspectframe.c gtkbin.c: Remove unecessary calls to
14236         queue_clear().
14237
14238 Wed Nov 17 18:36:05 1999  Owen Taylor  <otaylor@redhat.com>
14239
14240 2000-03-23  Jonathan Blandford  <jrb@redhat.com>
14241
14242         * gtk/gtkpaned.c (gtk_paned_get_position): add getter.
14243
14244 2000-03-17  Tor Lillqvist  <tml@iki.fi>
14245
14246         * gdk/win32/gdkevents-win32.c: Remove the #ifndef
14247         USE_DISPATCHMESSAGE sections, we do want to use DispatchMessage.
14248
14249         * gdk/win32/gdkfont-win32.c
14250         * gdk/win32/gdkproperty-win32.c
14251         * gdk/win32/gdkselection-win32.c
14252         * gdk/win32/gdkwindow-win32.c: Add const to some arguments that are
14253         now declared such.
14254
14255 Wed Mar 15 02:59:38 PST 2000 Manish Singh <yosh@gimp.org>
14256
14257         * gtk/gtkvpaned.c: removed stray gutter_size reference, a 1.2 relic
14258
14259 Mon Mar 13 18:37:55 2000  Owen Taylor  <otaylor@redhat.com>
14260
14261         * gdk/gdkdnd.c: Fix a bunch of cases where XGetWindowProperty()
14262         is called without trapping X errors.
14263
14264 Fri Feb 25 10:48:53 2000  Owen Taylor  <otaylor@redhat.com>
14265
14266         * gtk/gtkrc.*: Fix problem where stray '"' characters found their
14267         way into the fontset lists.
14268
14269 Tue Feb 22 08:52:52 2000  Tim Janik  <timj@gtk.org>
14270
14271         * gtk/gtkthemes.h: add extern "C" scope.
14272
14273 Mon Feb 21 20:16:42 2000  Lars Hamann  <lars@gtk.org>
14274
14275         * gtk/gtkclist.c: applied  patch from Guy Harris <guy@netapp.com>
14276         to make appends to the list constant. (gtk-guy-990901-0.patch)
14277
14278 Mon Feb 14 22:50:10 2000  Tim Janik  <timj@gtk.org>
14279
14280         * gtk/gtktypeutils.c (gtk_type_init): use g_str_hash() and g_str_equal()
14281         for the typename hash table.
14282
14283 Mon Feb 14 15:01:23 2000  Owen Taylor  <otaylor@redhat.com>
14284
14285         * gtk/gtkpaned.c (gtk_paned_compute_position): Add some sanity checks
14286         to make sure we never divide by zero. 
14287         (Problem pointed out by Michal Jaegermann <michal@ellpspace.math.ualberta.ca>)
14288
14289 Mon Feb 14 12:29:38 2000  Owen Taylor  <otaylor@redhat.com>
14290
14291         * gtk/gtkfontsel.c: Apply patch from
14292         SHIRASAKI Yasuhiro <yasuhiro@awa.tohoku.ac.jp> to make font selector work a little
14293         better with 2-byte fonts. (Load a fontset instead of a font for two byte fonts.)
14294
14295         Also, some cleanups in atom handling.
14296
14297 Sun Feb 13 08:02:21 2000  Tim Janik  <timj@gtk.org>
14298
14299         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
14300         not GtkWidget.
14301
14302 Fri Feb 11 02:19:32 2000  Tim Janik  <timj@gtk.org>
14303
14304         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): 
14305         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): 
14306         * gtk/gtkpaned.c (gtk_paned_compute_position): had to squeeze some
14307         more guint wrap-around bugs before going to bed.
14308
14309 Thu Feb 10 16:16:35 2000  Tim Janik  <timj@gtk.org>
14310
14311         * gtk/gtkspinbutton.c (gtk_spin_button_size_allocate): guard against
14312         guint wrap arounds in allocation.width.
14313
14314         * gtk/gtktable.c (gtk_table_size_allocate_pass1): repeat shrinking
14315         process untill we fit the allocation given.
14316
14317 Tue Feb  8 09:38:29 2000  Tim Janik  <timj@gtk.org>
14318
14319         * gtk/gtkwidget.c:
14320         (gtk_widget_unrealize): guard widget access with ref/unref
14321         around signal emission.
14322         (gtk_widget_hide): same here, but also check its destroyed
14323         state before queueing a resize.
14324
14325 Tue Feb  8 03:05:55 2000  Tim Janik  <timj@gtk.org>
14326
14327         * gtk/gtkstyle.c (gtk_style_new): use gtk_default_prelight_bg instead
14328         of gtk_default_insensitive_bg as insensitive base color.
14329
14330         * gtk/gtktext.c (gtk_text_style_set): set the background color according
14331         to the widget's state.
14332         (gtk_text_realize): same here.
14333         (gtk_text_state_changed): same here.
14334         (draw_bg_rect): compare background color against base[] from
14335         GTK_WIDGET_STATE (text) not GTK_STATE_NORMAL.
14336
14337 Mon Feb  7 04:01:55 2000  Tim Janik  <timj@gtk.org>
14338
14339         * gtk/gtkmain.c (gtk_main_do_event): ignore delete events when
14340         grabs are active, unless a delete event is send to the toplevel
14341         of the currently grab holding widget.
14342
14343 Sun Feb  6 10:13:15 2000  Owen Taylor  <otaylor@redhat.com>
14344
14345         * gtk/gtkctree.c (gtk_ctree_drag_data_received): Remove
14346         debugging g_print's.
14347
14348 Fri Feb  4 15:54:54 2000  Owen Taylor  <otaylor@redhat.com>
14349
14350         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_request): Don't
14351         ever make the scrolled-window requisition ever depend on the 
14352         visibility state of the scrollbars for the AUTOMATIC policy. 
14353         This breaks the GTK+ requisition model, and causes loops.
14354
14355 Fri Feb  4 15:09:12 2000  Owen Taylor  <otaylor@redhat.com>
14356
14357         * gtk/gtkstyle.c (gtk_style_new): Set the charset explicitely for
14358         the default font to avoid problems with XFree86-4.0 where the
14359         default charset is iso10646-1, not iso8859-1.
14360
14361 Thu Feb  3 14:58:48 PST 2000 Manish Singh <yosh@gimp.org>
14362
14363         * acinclude.m4
14364         * config.guess
14365         * config.sub
14366         * ltconfig
14367         * ltmain.sh: upgrade to libtool 1.3.4 (bugfix only release)
14368
14369         * gtk/Makefile.am: minor cosmetic consistency tweak
14370
14371 Thu Feb  3 14:46:01 2000  Owen Taylor  <otaylor@redhat.com>
14372
14373         * gtk/gtkmenushell.c (gtk_menu_shell_button_release): Set
14374         the activate_time to 0, so that we handle a quick
14375         press/release press/release properly and don't suppress
14376         the second release. (Red Hat bug #7545)
14377
14378 Wed Feb  2 22:25:17 2000  Tim Janik  <timj@gtk.org>
14379
14380         * gtk/gtkctree.c (row_delete):
14381         (gtk_ctree_node_set_row_data_full): fixed very evil reentrancy
14382         bugs with destruction notifier, *always* update internal
14383         structures *before* calling user code.
14384
14385 Sun Jan 30 20:10:52 2000  Lars Hamann  <lars@gtk.org>
14386
14387         A few more fixes for bug #5487, #2051, #2677.
14388         * gtk/gtkclist.c : 
14389         (gtk_clist_button_press):  Reset clist->anchor to -1 if event->type is
14390         not GDK_BUTTON_PRESS.
14391         (resync_selection): resync only if selection_mode is
14392         GTK_SELECTION_EXTENDED
14393         * gtk/gtkctree.c (resync_selection): same here
14394
14395 Sun Jan 30 12:29:20 2000  Owen Taylor  <otaylor@redhat.com>
14396
14397         * gdk/gdk.h gtk/gtkmenu.h: Removed duplicate prototypes for
14398         gdk_drag_get_selection() and gtk_menu_detach().
14399
14400         [ From Jeroen Ruigrok/Asmodai ]
14401
14402 Sat Jan 29 10:11:56 2000  Owen Taylor  <otaylor@redhat.com>
14403
14404         * gtk/gtknotebook.c (gtk_notebook_size_request): 
14405         page->tab_label can be NULL.
14406
14407 2000-01-25  Havoc Pennington  <hp@pobox.com>
14408         
14409         * gdk/gdkwindow.c (gdk_window_set_back_pixmap): parent_relative
14410         arg is boolean
14411
14412         * gdk/gdkselection.c (gdk_selection_owner_set): return boolean
14413
14414         * gdk/gdkrectangle.c (gdk_rectangle_intersect): return boolean
14415
14416         * gdk/gdkproperty.c (gdk_property_get): return boolean
14417
14418         * gdk/gdkinput.c (gdk_input_set_mode): return boolean
14419
14420         * gdk/gdkim.c (gdk_im_ready): return boolean
14421
14422         * gdk/gdkgc.c (gdk_gc_set_exposures): gboolean arg
14423
14424         * gdk/gdkfont.c (gdk_font_equal): return gboolean (mild
14425         glib clash, should fix glib)
14426
14427         * gdk/gdkevents.c (gdk_set_show_events): take gboolean arg
14428         (gdk_get_show_events): return gboolean, and canonicalize 
14429         to TRUE/FALSE
14430
14431         * gdk/gdkcolor.c (gdk_colormap_new): gboolean flag whether the
14432         colormap is private
14433         (gdk_colors_alloc): gboolean whether to be contiguous
14434         (gdk_color_equal): return gboolean since we are a predicate
14435         and not a qsort() (this looks semi-wrong due to glib breakage,
14436         IMO glib should be fixed)
14437         
14438         * gdk/gdk.c (gdk_set_use_xshm): take gboolean arg
14439         (gdk_get_use_xshm): return gboolean
14440         (gdk_pointer_is_grabbed): return gboolean
14441
14442         * gdk/gdk.h: Change prototypes to match all the above changes,
14443         and re-run egtk-format-protos as required.
14444
14445 Fri Jan 28 12:28:17 2000  Owen Taylor  <otaylor@redhat.com>
14446
14447         * gtk/gtkctree.c (resync_selection): 
14448         * gtk/gtkclist.c (resync_selection):
14449
14450         Return immediately if clist->drag_pos < 0. This is a workaround
14451         for the corrupt state that the clist gets into when a
14452         GDK_2BUTTON_PRESS occurs. See note in gtk_clist_button_press().
14453
14454         Bug #5487, #2051, #2677; fix suggested by David Helder and T. Alexander Popiel.
14455         
14456         * gtk/gtknotebook.c (gtk_notebook_size_request): Fix uninitialized
14457         variable from recent commit.
14458
14459 Thu Jan 27 15:22:09 2000  Owen Taylor  <otaylor@redhat.com>
14460
14461         * gtk/gtkdnd.c (gtk_drag_begin): Fix stupid typo in last commit.
14462
14463 Thu Jan 27 18:00:55 2000  Tim Janik  <timj@gtk.org>
14464
14465         * gtk/Makefile.am: prefix all autogenerated source that get build in
14466         $(srcdir) with $(srcdir)/, so make doesn't assume they got generted
14467         in builddir. since we subsequently cd into srcdir for autogeneration,
14468         the paths have to be stripped from the target file names, thusly we
14469         use $(@F) as target names now.
14470         put a comment about configure.in's --disable-rebuilds option,
14471         which can be used for non-writable source directories, for development
14472         setups though, srcdir has to be *writable*.
14473
14474 hu Jan 27 00:15:03 2000  Owen Taylor  <otaylor@redhat.com>
14475
14476         * gtk/gtkdnd.c (gtk_drag_begin gtk_drag_get_event_actions):
14477           Finish the job of allowing event to be NULL.
14478           (Fixes bug #4283, reported by Chris Blizzard)
14479
14480         * gtk/gtkentry.c (entry_adjust_scroll): When calculating
14481           things so that the cursor appears on screen, properly
14482           take into account INNER_BORDER.
14483           (Fixes bug #4754, reported by Antonio Campos)
14484
14485 Wed Jan 26 23:12:28 2000  Owen Taylor  <otaylor@redhat.com>
14486
14487         * gtk/gtknotebook.c (gtk_notebook_map): Don't
14488           show the tab_label unless it itself is visible.
14489
14490           gtk/gtknotebook.c (gtk_notebook_size_request):
14491           Do a better job of making sure that the visibility
14492           of the tab label corresponds to whether it should
14493           be mapped or not.
14494
14495 Wed Jan 26 21:17:03 2000  Owen Taylor  <otaylor@redhat.com>
14496
14497         * gtk/gtkoptionmenu.c (gtk_option_menu_position):
14498           Use the requisition, not the allocation, since the
14499           allocation has not necessarily been computed yet.
14500           (Pointed out by Eugene Osintsev)
14501
14502 Wed Jan 26 19:44:25 2000  Owen Taylor  <otaylor@redhat.com>
14503
14504         * gtk/gtkstyle.c (gtk_style_new): Dont' set
14505           style/base[GTK_STATE_INSENSITIVE] both to
14506           gtk_default_insensitive_bg!
14507           (Bug #2187, reported by Jonathan Blandford)
14508
14509         * gtk/gtkaccelgroup.c (gtk_accelerator_valid):
14510           Add Alt_L, Alt_R to list of invalid accelerators.
14511           (Bug #3736, reported by Vlad Harchev)
14512
14513 Wed Jan 26 19:01:56 2000  Owen Taylor  <otaylor@redhat.com>
14514
14515         * gtk/gtkfilesel.c (open_ref_dir): Fix several
14516         bugs which occured after an attempt to open 
14517         invalid home directory left cmpl_state->reference_dir == NULL.
14518
14519          - completion on files in home directory didn't work
14520          - completion on an empty string caused  segfault
14521
14522          (Bug #3678, reported by Steve Ratcliffe)
14523
14524         * gtk/gtkscale.c (gtk_scale_get_value_width): Fix
14525         cut and paste error that was causing scales to
14526         be incorrectly positioned.
14527         (Bug #2956,
14528          patch from Steve Ratcliffe <steve@parabola.demon.co.uk>)
14529
14530 2000-01-27  Shirasaki Yasuhiro  <yasuhiro@gnome.gr.jp>
14531
14532         * acinclude.m4 (AM_GTK_WITH_NLS): Add -lintl to libs
14533         when checking for dcgettext, if we've found we needed
14534         it for dgettext.
14535 +
14536 Wed Jan 26 18:06:07 2000  Owen Taylor  <otaylor@redhat.com>
14537
14538         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
14539         queue_clear on NO_WINDOW widgets during a reparent,
14540         since at that point the window and widget heirarchies
14541         are out of sync. This stops crashing in some cases
14542         (the scrolled window reparent test, for instance), and
14543         _probably_ won't cause drawing errors.
14544
14545         * gtk/testgtk.c: Make the reparenting-a-scrolled-window
14546         test do what it was supposed to do and be robust against
14547         window closings, etc. (Bug #2443)
14548
14549 Wed Jan 26 16:56:54 2000  Owen Taylor  <otaylor@redhat.com>
14550
14551         * gtk/gtkentry.c: Fix return values on mouse events.
14552         (Bug #2686, Sky <seb_sky@yahoo.com>)
14553
14554         * gtk/genmarshal.pl: Fix up handling of FOREIGN.
14555         (pointed out by George Lebl)
14556
14557         * gdk/gdkcolor.c (gdk_color_copy): Made const-safe.
14558         (From Ettore Perazzoli  <ettore@helixcode.com>)
14559  
14560 Mon Jan 24 10:44:48 2000  Owen Taylor  <otaylor@redhat.com>
14561
14562         * gtk/gtkcalendar.c (gtk_calendar_main_button): Handle
14563         clicks between rows or outside calender area correctly.
14564         (Patch from Damon Chaplin)
14565
14566         * gtk/gtkclist.c (gtk_clist_set_row_data_full): 
14567         * gtk/gtkctree.c (gtk_ctree_node_set_row_data_full): 
14568           Call destroy function when overwriting existing data. 
14569           (Pointed out by Damon Chaplin)
14570
14571 Tue Jan 25 09:55:41 2000  Owen Taylor  <otaylor@redhat.com>
14572
14573         * gdk/gdk.c: Remove useless #include of <X11/Xmu/WinUtil.h>,
14574           which was causing problems on various systems with Xmu.
14575           This hasn't been needed for a very long time.
14576           (Fixes #1185 3167)
14577
14578 Sun Jan 23 22:27:36 2000  Owen Taylor  <otaylor@redhat.com>
14579
14580         * gdk/gdki18n.h: Include <ctype.h> when defining
14581           gdk_isw* in terms of is* as a fallback.
14582           (Bug #4106 - Dan Winship <danw@MIT.EDU>)
14583
14584 Sun Jan 23 22:12:36 2000  Owen Taylor  <otaylor@redhat.com>
14585
14586         * gtk/gtkviewport.c (gtk_viewport_size_allocate): Don't
14587           realize the widget when it is size allocated!
14588           (old, old bug)
14589
14590         * gtk/gtkviewport.c (gtk_viewport_adjustment_value_changed):
14591           Removed unused call to gdk_window_get_size() that
14592           showed up when the above was fixed.
14593
14594 Sat Jan 22 15:44:30 2000  Owen Taylor  <otaylor@redhat.com>
14595
14596         * gtk/gtkwidget.c (gtk_widget_reparent): Correctly
14597           fix up widget->window when the widget is a
14598           NO_WINDOW container widget.
14599
14600 Sat Jan 22 12:40:48 2000  Owen Taylor  <otaylor@redhat.com>
14601
14602         * gdk/gdkpixmap.c (gdk_pixmap_seek_string): Rewrite
14603           to account for the fact that feof() does _not_ 
14604           return TRUE on errors, and thus avoid infinite loops
14605           when trying to use gdk_pixmap_create_from_xpm()
14606           on unreadable values.
14607
14608 Fri Jan 21 18:32:43 2000  Owen Taylor  <otaylor@redhat.com>
14609
14610         * gtk/gtkaspectframe.h (struct _GtkAspectFrame): s/gint/gboolean/.
14611
14612 Fri Jan 21 16:24:08 2000  Owen Taylor  <otaylor@redhat.com>
14613
14614         * gdk/gdkgc.c (gdk_gc_set_dashes): Change from
14615           gdk_gc_set_dashes to take gint8 instead of gchar to
14616           make it clearer that it is _not_ a NULL terminated string.
14617
14618         * gdk/gdk.h gdk/gdkfont.c gdk/gdkgc.c gdk/gdkselection.c
14619           gdk/gdkwindow.c gtk/gtkprogress.[ch] gtk/gtkthemes.[ch]
14620           gtk/gtktreeitem.[ch] gtk/gtkwidget.[ch]: Constify string
14621           arguments.
14622
14623 Thu Dec 30 04:51:05 1999  Tim Janik  <timj@gtk.org>
14624
14625         * gtk/gtkvscale.c (gtk_vscale_pos_background): 
14626         * gtk/gtkhscale.c (gtk_hscale_pos_background): when calculating the
14627         background size relative to our allocation, guard against small
14628         allocations, we may have not yet been size allocated.
14629
14630 Thu Dec  2 10:59:14 1999  Owen Taylor  <otaylor@redhat.com>
14631
14632         * gdk/gdkdnd.c (xdnd_check_dest): Allow version >= 3,
14633         not just version == 3. We implement all 3 + most of 4 - 
14634         (we don't support matching text/plain;charset=iso-8859-1
14635         to a dest that expects text/plain). We'll still advertise
14636         3 to be safe, but any client implementing version >= 3
14637         must interoperate with 3.
14638         
14639 Tue Mar 14 11:53:31 2000  Owen Taylor  <otaylor@redhat.com>
14640
14641         * gtk/gtktooltips.[ch] (struct _GtkTooltips): Remove foreground,
14642         background and gc members, add a warning in gtk_tooltips_set_color()
14643         indicating that this function is deprecated.
14644
14645 Thu Mar  9 22:10:56 GMT 2000  Tony Gale <gale@gtk.org>
14646
14647         * docs/gtkfaq.sgml: FAQ Update:
14648           - Minor cleanups (Emmanuel, me)
14649           - New questions:
14650                 I need to add a new signal to a GTK+ widget. Any idea? (timj)
14651                 How can I retrieve the text from a GtkMenuItem? (timj)
14652                 How do I validate/limit/filter the input to a GtkEntry? (me)
14653                 Memory does not seem to be released when I free the list
14654                         nodes I've allocated (timj)
14655
14656 2000-03-07  Tor Lillqvist  <tml@iki.fi>
14657
14658         * gdk/win32/gdkmain-win32.c: Internal GDK error reporting changes:
14659         (gdk_win32_gdi_failed) New function for reporting errors from GDI,
14660         for which it is no use to call GetLastError onWin9x.
14661         (gdk_other_api_failed) New function, for general error
14662         reporting without calling GetLastError.
14663         (gdk_win32_api_failed) OTOH, this function always calls
14664         GetLastError. (gdk_win32_last_error_string) Remove this function,
14665         GLib has the equivalent now.
14666
14667         * gdk/win32/gdkprivate-win32.h: Declare the above, and macros to
14668         call them with function name, file name and line number in the
14669         arguments.
14670
14671         * gdk/win32/*.c: Use the new macros for reporting errors from GDI
14672         functions.
14673         
14674         * gtk/gtk.def: Add some missing entry points.
14675
14676         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
14677         gtk_paned_set_gutter_size, which don't exist any longer, as void.
14678         
14679         Fixes by Hans Breuer:
14680
14681         * gdk/makefile.msc: Update for debugging.
14682
14683         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_dashes): Fake
14684         implementation, just use the PS_DASH, PS_DOT, PS_DASHDOT or
14685         PS_DASHDOTDOT or PS_DASH styles depending on the number of entries
14686         in the dash_list.
14687
14688         * gdk/win32/gdkwin32.h (GDK_FONT_XFONT): New macro, similar as in
14689         the x11 backend.
14690
14691         * gdk/win32/gdkprivate-win32.h (IS_WIN_NT): New macro.
14692
14693         * gtk/testgtk.c: Include config.h, guard inclusion of unistd.h.
14694
14695 2000-03-04  Tor Lillqvist  <tml@iki.fi>
14696
14697         * gdk/win32/gdkprivate-win32.h (struct _GdkWindowWin32Data): Store
14698         just pixel value of background colour.
14699
14700         * gdk/win32/gdkgc-win32.c (gdk_colormap_color): New function
14701         containing code snippet previously duplicated in a couple of
14702         places.
14703         
14704         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_points): Use
14705         gdk_colormap_color.
14706
14707         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Generate
14708         GDK_SCROLL events for WM_MOUSEWHEEL messages. Don't generate
14709         events for autorepeated Shift, Control and Alt keys. Use
14710         gdk_colormap_color.
14711
14712         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): If the
14713         pointer is inside the window the cursor of which we are setting,
14714         call SetCursor immediately.
14715
14716         * gdk/win32/makefile.cygwin
14717         * gtk/makefile.cygwin: If we don't have the build number stamp
14718         file, use zero.
14719
14720         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
14721         gtk_paned_set_gutter_size as empty.
14722
14723         * gtk/gtk.def: Remove gtk_paned_set_gutter_size.
14724         
14725 Tue Feb 29 13:10:00 GMT 2000  Tony Gale <gale@gtk.org>
14726
14727         * gdk/gdkwindow.h gdk/x11/gxid.c gtk/gtkclist.c gtk/gtkclist.h
14728           gtk/gtkctree.c gtk/gtkmenu.h gtk/gtkwidget.c gtk/testgtk.c
14729           docs/styles.txt docs/refcounting.txt docs/gtkfaq.sgml
14730           docs/gtk_tut.sgml docs/gtk.texi TODO:
14731
14732           Spelling/grammar fixes from Martin Buchholz <martin@xemacs.org>
14733
14734 Sat Feb 26 11:46:25 GMT 2000  Tony Gale <gale@gtk.org>
14735
14736         * gtk/gtkcalendar.c: Implement num_marked_dates,
14737           and don't emit mutiple day_selected signals on
14738           month_prev.
14739
14740 2000-02-25  Jonathan Blandford  <jrb@redhat.com>
14741
14742         * docs/make-todo (lineno): let title and logo be configurable so
14743         that GNOME can use this script too.
14744
14745         * TODO.xml: added logourl and a title
14746
14747 Fri Feb 25 11:12:00 2000  Owen Taylor  <otaylor@redhat.com>
14748
14749         * TODO.xml: Added some UI items, and an explanatory
14750         comment at the top of the file.
14751
14752 Thu Feb 24 09:07:28 2000  Tim Janik  <timj@gtk.org>
14753
14754         * TODO.xml: some updates, added abunch of new entries.
14755         a note for those fiddeling with this file, when done
14756         with it, invoke:
14757         $ ./docs/make-todo TODO.xml >/dev/null
14758         and correct output errors before comitting changes.
14759
14760 Wed Feb 23 22:59:50 2000  Owen Taylor  <otaylor@redhat.com>
14761
14762         * TODO.xml: Added XML-structured TODO file.
14763         * docs/make-todo: python script to turn TODO.xml into
14764           pretty XML output. 
14765
14766 2000-02-23  Jonathan Blandford  <jrb@redhat.com>
14767
14768         * gtk/gtkstyle.c (gtk_default_draw_handle): add a 'paned' mode to
14769         the function to let it draw the seven dots, instead of the old,
14770         much maligned, method.
14771         (draw_dot): New function to draw a dot.
14772
14773         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): changed allocation
14774         to draw the handle inside the border width as opposed to outside.
14775         Use paint function instead of gdk_draw_point.
14776
14777         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): changed allocation
14778         to draw the handle inside the border width as opposed to outside.
14779         Use paint function instead of gdk_draw_point.
14780
14781         * gtk/gtkfilesel.c (gtk_file_selection_update_history_menu):
14782         Change indenting to be more GTK like.
14783
14784 Wed Feb 23 10:54:14 GMT 2000  Tony Gale <gale@gtk.org>
14785
14786         * docs/gtk_tut.sgml: New section on GtkCalendar
14787         * examples/calendar: Update example code
14788
14789 Tue Feb 22 13:54:12 GMT 2000  Tony Gale <gale@gtk.org>
14790
14791         * docs/gtkfaq.sgml: FAQ Update
14792
14793 2000-02-19  Anders Carlsson  <andersca@gnu.org>
14794
14795         * gtk/gtkrange.c (gtk_range_scroll_event): Return TRUE
14796         to prevent the scroll event to be propagated upwards.
14797
14798 Fri Feb 18 14:37:29 2000  Owen Taylor  <otaylor@redhat.com>
14799
14800         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Remove
14801         OwnerGrabButtonMask from button entries for
14802         GDK_BUTTON_PRESS / GDK_BUTTON_RELEASE.
14803
14804         * gtk/gtklayout.c (gtk_layout_realize): Always add GDK_SCROLL
14805         to the event mask (which will result in button/press release
14806         being added to the event mask on Unix) so scrolling works
14807         for layouts in scroll windows.
14808
14809         * gdk/gdkevents.h (enum): Fix up GDK_ALL_EVENTS_MASK.
14810
14811         Patch from Anders Carlsson  <andersca@gnu.org> to add
14812         a scroll event.
14813
14814         * gtk/testgtk.c (scroll_test_scroll): Added an example of mouse wheel
14815         scrolling to the "Test Scrolling" part of testgtk.
14816  
14817         * gtk/gtkwidget.h (struct _GtkWidgetClass): Added scroll_event signal.
14818  
14819         * gtk/gtkwidget.c: Added "scroll_event" GTK+ signal and matched
14820         it against GDK_SCROLL.
14821  
14822         * gtk/gtkrange.c (gtk_range_scroll_event): Updated to use the new
14823         way of mouse wheel scrolling.
14824  
14825         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_scroll_event): Likewise.
14826  
14827         * gtk/gtkspinbutton.c (gtk_spin_button_scroll): Likewise.
14828  
14829         * gtk/gtkmain.c: Removed previous mouse wheel hack.
14830  
14831         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Added entry in
14832         gdk_event_mask_table.
14833  
14834         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Added 
14835         GdkEventScroll handler.
14836  
14837         * gdk/gdkevents.h: Added GdkEventScroll structure.
14838  
14839 Thu Feb 17 17:10:12 2000  Owen Taylor  <otaylor@redhat.com>
14840
14841         * gtk/gt{h,k,}vpaned.[ch]: Add patch from Jonathan Blandford
14842         and Anders Carlsson to change the Paned widgets so that they
14843         can be dragged from anywhere along the length. Also change
14844         the way that this is drawn to make this apparent.
14845
14846         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): Apply patch
14847         from George Lebl to check that option_menu->menu is present
14848         before getting history.
14849
14850 2000-02-14  Tor Lillqvist  <tml@iki.fi>
14851
14852         * gdk/gdkdraw.c (gdk_draw_segments): Move the test for no segments
14853         before the assertion for non-NULL segment list.
14854
14855         * gdk/win32/gdkgc-win32.c: (gdk_win32_gc_values_to_win32values):
14856         Seems that pattern brushes *must* be 8x8 pixels! At least on my
14857         machine, but it might be display driver dependent. Sigh, so make
14858         sure the stipple is that size. Does Windows suck or what?
14859
14860         * gdk/win32/gdkdrawable-win32.c: Improve error handling in a few
14861         places.
14862
14863 2000-02-13  Havoc Pennington  <hp@pobox.com>
14864
14865         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): init
14866         refcount to 1
14867         (gdk_cursor_new): init refcount to 1
14868
14869         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new): init refcount to 1
14870
14871 2000-02-13  Tor Lillqvist  <tml@iki.fi>
14872
14873         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Add an extra parameter
14874         so that we don't have to do unnecessary settings to the HDC.
14875
14876         * gdk/win32/gdkdrawable-win32.c
14877         * gdk/win32/gdkimage-win32.c: Corresponding changes to the calls of
14878         gdk_gc_predraw.
14879
14880         * gdk/win32/gdkdrawable-win32.c: Special-casing for GdkGCs where
14881         the fill style is GDK_OPAQUE_STIPPLED. In those cases we construct
14882         GDI paths, call WidenPath to get the outline of the stroken path,
14883         and then fill the outline (with the brush that was built from the
14884         stipple).
14885
14886         * gdk/win32/gdkgc-win32.c: Factor out common code from
14887         _gdk_win32_gc_new and gdk_win32_gc_set_values into
14888         gdk_win32_gc_values_to_win32values. Use correct colour for
14889         SetBkColor() (Until now the code actually used a random colour in
14890         the call to SetBkColor()... but that didn't show up as not many
14891         GDI APIs use the background colour. Pattern (opaque stippled)
14892         brushes do.)
14893
14894         * gdk/win32/gdkmain-win32.c (gdk_win32_last_error_string,
14895         gdk_win32_api_failed): New functions for error logging.
14896
14897         * gdk/win32/gdkprivate-win32.h: Declare them, and define a macro
14898         WIN32_API_FAILED to call them, passing function or file name and
14899         line number.
14900
14901         * gdk/win32/*.c: Use the WIN32_API_FAILED macro.
14902
14903         * gdk/win32/gdkprivate-win32.h: Store just the pixel values from
14904         GdkColor for foreground and background in GdkGCWin32Data.
14905
14906         * gdk/makefile.cygwin: Link in the resource object separately.
14907
14908         * gdk/win32/rc/gdk.rc
14909         * gtk/gtk.rc (New file)
14910         * gdk/win32/makefile.cygwin
14911         * gtk/makefile.cygwin: Update build number in DLLs automatically,
14912         as in GLib.
14913
14914 Sun Feb 13 08:54:45 2000  Tim Janik  <timj@gtk.org>
14915
14916         * gdk/gdkcursor.h (struct _GdkCursor): s/refcount/ref_count/.
14917         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): 
14918         * gdk/x11/gdkcursor-x11.c (_gdk_cursor_destroy): 
14919         * gdk/gdkcursor.c (gdk_cursor_ref): insert assertments for the
14920         parameters given and cursor->ref_count. coding style fixups.
14921
14922         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
14923         not GtkWidget.
14924         
14925         * gtk/*.h: applied patch from Mathieu Lacage <lacage@email.enst.fr> to
14926         fix up widget macros and add _GET_CLASS() variant.
14927         
14928         * gtk/*.c: some GtkType fixups.
14929
14930 2000-02-09  Tor Lillqvist  <tml@iki.fi>
14931
14932         * gdk/win32/gdkproperty-win32.c
14933         * gdk/x11/gdkproperty-x11.c: The assertions for GDK_IS_WINDOW
14934         were reversed.
14935
14936 2000-02-04  Tor Lillqvist  <tml@iki.fi>
14937
14938         * gdk/win32/gdkfont-win32.c (logfont_to_xlfd): Use
14939         g_filename_to_utf8 to convert the font names Windows gives us from
14940         whatever is the default codepage to UTF-8.
14941         (gdk_font_load_internal) Use g_filename_from_utf8 for conversion
14942         in the other direction.
14943
14944         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Fix cut&paste
14945         error in debugging output.
14946
14947 2000-02-02  Tor Lillqvist  <tml@iki.fi>
14948
14949         * gdk/win32/gdkwindow-win32.c (gdk_window_clear): Pass zero width
14950         and height parameters to gdk_window_clear_area(). Not minus one.
14951
14952 Wed Feb  2 11:58:05 2000  Owen Taylor  <otaylor@redhat.com>
14953
14954         * gtk/gtkdnd.c (gtk_drag_selection_received): Add some sanity
14955         checks if the widget passed to gtk_drag_get_data() was not the
14956         dest widget.
14957
14958 2000-02-01  Tor Lillqvist  <tml@iki.fi>
14959
14960         * gtk/gtkfilesel.c: Use the g_filename_to_utf8 and
14961         g_filename_from_utf8 functions (which were added a moment ago to
14962         GLib). Some cleanups: Use gbooleans. Use GStrings instead of fixed
14963         size buffers.
14964
14965         gtk_file_selection_get_filename returns the filename in the C
14966         runtime encoding. It calls g_filename_from_utf8, but copies the
14967         returned string to a static buffer, which is returned. I think
14968         this is better than returning the result from g_filename_from_utf8
14969         directly, which would mean all apps that use it would have to free
14970         the return value. Or should this function care about this issue at
14971         all? Maybe a new function with clearly defined semantics.
14972
14973         * gtk/gtkfilesel.h: Add comment about
14974         gtk_file_selection_get_filename returning the filename in the C
14975         runtime's encoding.
14976
14977         * README.win32
14978         * gdk/gdk.def
14979         * gdk/makefile.{cygwin,msc}
14980         * gtk/gtk.def: Updates.
14981
14982         * gdk/gdkcursor-win32.c: Initialise refcount.
14983
14984 2000-01-31  Yuan-Chung Cheng <platin@linux.org.tw>
14985
14986         * configure.in: Added "zh_CN.GB2312" to ALL_LINGUAS.
14987
14988 2000-01-30  Havoc Pennington  <hp@pobox.com>
14989
14990         * gtk/testgtk.c (set_cursor): use gdk_cursor_unref instead of
14991         destroy
14992
14993         * gdk/gdkimage.c (gdk_image_ref): image wasn't being returned
14994
14995         * gdk/gdkprivate.h: declare _gdk_cursor_destroy which is then 
14996         implemented in platform-specific code
14997
14998         * gdk/Makefile.am (gdk_c_sources): add gdkcursor.c
14999
15000         * gdk/x11/gdkcursor-x11.c (gdk_cursor_destroy): rename with an
15001         underscore in front
15002
15003         * gdk/win32/gdkcursor-win32.c (gdk_cursor_destroy):
15004         put an underscore in front
15005
15006         * gdk/gdkcursor.c: new file, implements
15007         gdk_cursor_ref/gdk_cursor_unref
15008
15009         * gdk/gdkcursor.h: Refcount GdkCursor
15010
15011         * gdk/gdkcompat.h (gdk_cursor_destroy): compat
15012
15013 2000-01-29  Tor Lillqvist  <tml@iki.fi>
15014
15015         * gdk/gdkwindow.h
15016         * gdk/gdkpixmap.h: Remove prototypes for renamed functions.
15017
15018 Tue Jan 25 11:43:21 2000  Owen Taylor  <otaylor@redhat.com>
15019
15020         * gtk/gtkinvisible.h (struct _GtkInvisible[Class]): Fix
15021         structures to properly inherit from GtkWidget not GtkBin.
15022
15023 Sun Jan 23 20:28:24 2000  Owen Taylor  <otaylor@redhat.com>
15024
15025         * gtk+.spec.in: Added lib/gtk+/include/* to %files
15026         (bug #5178 - Peter Wainright)
15027         
15028         * gtk/Makefile.am (gtk_public_h_sources): Add gtkcompat.h
15029         so that it will be installed.
15030         (bug #4889 - "david d `zoo' zuhn" <zoo@mnnr.org>)
15031
15032 Fri Jan 21 16:29:28 2000  Owen Taylor  <otaylor@redhat.com>
15033
15034         * gtk/gtkstyle.[ch] docs/Changes-1.4.txt: Make the @detail argument
15035         for the GtkStyleClass vtable const.
15036
15037         * gtk/gtkitemfactory.[ch] docs/Changes-1.4.txt: Make GtkPrintFunc
15038         take a const string argument like GtkTranslateFunc. This will
15039         require changes in use code.
15040
15041 2000-01-19  Tor Lillqvist  <tml@iki.fi>
15042
15043         * gdk/win32/gdkwindow-win32.c (gdk_window_clear_area): The correct
15044         semantics (to mimic the X11 backend, which just calls XClearArea)
15045         is to check for zero width (and height), and in that case use the
15046         window's width minus x (height minus y). This fixes for instance
15047         some redraw problems with gtkclist, which were easily noticeable
15048         in the gtk file selection widget.
15049
15050         (gdk_window_new): Don't set WS_EX_TOPMOST for dialog
15051         windows.
15052
15053 2000-01-13  Tor Lillqvist  <tml@iki.fi>
15054
15055         * configure.in
15056         * gdk/Makefile.am
15057         * gdk/x11/Makefile.am
15058         * gdk/win32/Makefile.am: Small fixes, thanks to Peter Wainwright
15059         (bug #5177).
15060         * gdk/win32/gdkcc-win32.c: Reintroduce, to be thrown
15061         out later.
15062
15063 2000-01-09  Tor Lillqvist  <tml@iki.fi>
15064
15065         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Ignore
15066         WM_MOVE for iconified or invisible windows. This fixes various
15067         problems when minimising windows. Thanks to Bernd Herd.
15068
15069 2000-01-05  Tor Lillqvist  <tml@iki.fi>
15070
15071         * gdk/gdkdraw.c (gdk_draw_lines): Fix copy&paste error: Call the
15072         backend's draw_lines method, not draw_points.
15073
15074 2000-01-02  Tor Lillqvist  <tml@iki.fi>
15075
15076         * gdk/win32/gdkevents-win32.c: Clean up some more leftovers from
15077         before Owen's reorganisation: Don't have queued_events and
15078         queued_tail statics in this file, but use gdk_queued_events and
15079         gdk_queued_tail. This makes exposure event compression work again.
15080
15081         (gdk_WindowProc): Comment out a posting of gdk_ping_msg, doesn't
15082         seem to be needed?
15083
15084 1999-12-30  Tor Lillqvist  <tml@iki.fi>
15085
15086         * gdk/gdk.c: If we don't HAVE_XCONVERTCASE we must #include
15087         gdkkeysyms.h to get the GDK_* keysym constants that are needed by
15088         gdk_keyval_convert_case(). Otherwise, gdk_keyval_convert_case()
15089         doesn't do anything.
15090
15091         * gdk/gdk.def: Add gdk_xid_table_insert.
15092
15093         * gdk/win32/gdkprivate-win32.h
15094         * gdk/win32/gdkevents-win32.c
15095         * gdk/win32/gdkinput-win32.c
15096         
15097         * gdk/win32/gdkwindow-win32.c: Remove the superfluous
15098         extension_events field in the GdkWindowWin32Data struct. Use only
15099         the extension_events field in GdkWindowPrivate. Previously one was
15100         set, and the other one tested, which broke tablet
15101         functionality. Thanks to Keishi Suenaga for pointing this out.
15102
15103 1999-12-18  Tor Lillqvist  <tml@iki.fi>
15104
15105         * gdk/win32/gdkfont-win32.c (gdk_text_size, gdk_text_extents):
15106         When handling a single character (text length == 1), don't handle
15107         it as if it was UTF-8.
15108
15109 1999-12-11  Tor Lillqvist  <tml@iki.fi>
15110
15111         * Makefile.am: Distribute README.win32.
15112         
15113         * gdk/Makefile.am
15114         * gdk/win32/Makefile.am: Distribute Win32 files.
15115
15116         * gdk/makefile.msc: New file.
15117
15118         * gdk/gdk.c (gdk_arg_context_parse): Fix gccism (no statement
15119         after label).
15120
15121         * gdk/gdkprivate.h: Must mark also gdk_error_warnings and
15122         gdk_error_code as GDKVAR, as they are referred outside GDK.
15123
15124         * gdk/win32/makefile.msc: Update.
15125
15126         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): More
15127         tweaks. Check only if at least one of those Unicode subrange bits
15128         we care for is set. If no code page bits are set, guess (wildly)
15129         based on the charset.
15130
15131         * gdk/win32/gdkinput-win32.c: Remove debugging leftover.
15132
15133         * gdk/win32/gdkwindow-win32.c (gdk_window_new): Assure title is
15134         non-NULL.
15135
15136         * gtk/gtkdnd.c
15137         * gtk/gtklayout.c
15138         * gtk/gtkplug.c
15139         * gtk/gtkselection.c
15140         * gtk/gtksocket.c
15141         * gtk/gtkwindow.c: Include x11/gdkx.h *or* win32/gdkwin32.c as
15142         appropriate. There must be a cleaner way to handle this?
15143
15144         * gtk/gtkrc.c: Must include windows.h on Win32.
15145
15146         * gtk/testgtk.c: No need to include gdkx.h.
15147
15148         * gtk/makefile.cygwin: Correct invokation of genmarshal.pl.
15149
15150 1999-12-07  Tor Lillqvist  <tml@iki.fi>
15151
15152         * gdk/win32/gdkfont-win32.c: Fix string measurement code. For now,
15153         the rbearing is set to the same as the width, but this should be
15154         fixed.
15155
15156 1999-12-06  Tor Lillqvist  <tml@iki.fi>
15157
15158         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): New
15159         function. If Windows doesn't tell us what Unicode subranges a font
15160         covers, guesstimate based on the codepages it covers. This will
15161         hopefully help those Windows versions or fonts that don't give us
15162         any useful Unicode subrange information with GetTextCharsetInfo.
15163         Call this function in gdk_font_load_internal.
15164
15165         * gdk/win32/{gdkdnd,gdkimage,gdkpixmap,gdkprivate}-win32.c: Misc
15166         minor changes.
15167
15168 Fri Dec  3 14:09:50 1999  Owen Taylor  <otaylor@redhat.com>
15169
15170         * gtk/gtkoptionmenu.[ch] (gtk_option_menu_get_history):
15171         New function, long needed.
15172
15173 Wed Dec  1 22:35:43 1999  Owen Taylor  <otaylor@redhat.com>
15174
15175         * gdk/gdkproperty.h x11/gdkproperty.c: Change 
15176         only_if_exists argument of gdk_atom_intern to
15177         bool.
15178
15179 1999-11-25  Tor Lillqvist  <tml@iki.fi>
15180
15181         * gdk/gdkgc.c (gdk_gc_set_ts_origin, gdk_gc_set_clip_origin): 
15182         Fix two copy&paste errors.
15183
15184         * gdk/makefile.cygwin: Also rebuild DLL when the static archive in
15185         win32 has changed.
15186
15187         * gdk/win32/gdkprivate-win32.h: Don't need CPINFO in the
15188         GdkWin32SingleFont struct.
15189
15190         * gdk/win32/gdkfont-win32.c: Some more debugging: Print Unicode
15191         subranges of loaded fonts. Clear font signature first, in case
15192         GetTextCharsetInfo fails. Pretend SYMBOL_CHARSET fonts have
15193         ASCII+Basic Latin (i.e. 0x40--0xFF) as they are single-byte.
15194
15195         * gdk/win32/gdkgc-win32.c: Improved logging. (gdk_gc_postdraw):
15196         Unoffset clip region.
15197
15198 1999-11-23  Tor Lillqvist  <tml@iki.fi>
15199
15200         * gdk/win32/gdkevents-win32.c (gdk_event_translate): set
15201         event->any.window before calling filter functions.
15202
15203 Fri Nov 19 10:34:41 1999  Owen Taylor  <otaylor@redhat.com>
15204
15205         * gtk/gtkgamma.h: Adapt cast macros to standard.
15206
15207 [ Merges from 1.2 ]
15208
15209 Tue Nov 16 10:15:54 1999  Owen Taylor  <otaylor@redhat.com>
15210
15211         * gtk/gtkitemfactory.c (gtk_item_factory_parse_path):
15212         If translation does not include a '/', use entire
15213         translation instead of crashing.
15214
15215 Sun Oct 31 22:21:11 1999  Tim Janik  <timj@gtk.org>
15216
15217         * docs/gtk_tut.sgml:
15218         s/gtk_accel_group_attach/gtk_window_add_accel_group/.
15219
15220 Sat Oct 30 09:09:09 1999  Owen Taylor  <otaylor@redhat.com>
15221
15222         * gtk/gtkselection.c (gtk_target_list_remove): Use
15223         g_list_remove_link, not g_list_remove.
15224
15225         [ From Geert Bevin <gbevin@thunderstorms.org> ]
15226         
15227 Sun Oct 24 07:41:40 1999  Tim Janik  <timj@gtk.org>
15228
15229         * gtk/gtkclist.c (real_undo_selection): commented out g_print()
15230         statement upon unselection (how the heck did that slip in?).
15231
15232 Sat Oct 23 03:03:08 1999  Tim Janik  <timj@gtk.org>
15233
15234         * gtk/gtktext.c (gtk_text_freeze): 
15235         (gtk_text_thaw): undraw/draw cursor here to avoid unnecessary scrolling
15236         in frozen state (and aparently crashes). patch provided by Anders
15237         Melchiorsen <and@kampsax.dtu.dk>.
15238
15239 Sat Oct 23 02:53:20 1999  Tim Janik  <timj@gtk.org>
15240
15241         * fix insensitive default/focus widget activation,
15242         reported by Matt Goodall <mgg@isotek.co.uk>.
15243
15244         * gtk/gtkwindow.c (gtk_window_key_press_event): 
15245         (gtk_window_activate_default):
15246         (gtk_window_activate_focus):
15247         return handled=FALSE for actiavtion of insensitive default
15248         widgets. return handled=TRUE for activation of insensitive
15249         focus widgets. don't activate in either case.
15250
15251 Tue Oct 19 09:55:08 1999  Owen Taylor  <otaylor@redhat.com>
15252
15253         * gtk-config.in (lib_gtk): Switch order of @x_cflags@
15254         and $glib_cflags to match library order and in the
15255         theory that an old version of GLib is more likely to
15256         be in the include directory for X then vice-versa.
15257         (Bug #2776)
15258
15259 Tue Oct 19 09:46:49 1999  Owen Taylor  <otaylor@redhat.com>
15260
15261         * gtk/gtkrc.c (gtk_rc_init): Always use LC_CTYPE 
15262         to determine the locale for fontsets, not LC_MESSAGES;
15263         the user may want English messages with a handling
15264         for non-English languages. (LC_CTYPE=ru_RU LC_MESSAGES=fr_FR
15265         will still be broken) (Bug #2891)
15266
15267 Tue Oct 19 20:36:42 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
15268
15269         * gtk/gtkrc.ko: Fixed the wrong number of "*"'s.
15270
15271 Tue Oct 19 12:15:13 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
15272
15273         * gtk/gtkrc.ko: Changed the Korean default fontset.
15274
15275 Fri Oct  8 02:32:47 1999  Owen Taylor  <otaylor@redhat.com>
15276
15277         * gtk/gtklayout.c (gtk_layout_adjustment_changed): Fix bug
15278         where when scrolling to the left or top double exposes
15279         were done, causing major slowdowns.
15280
15281 Thu Oct  7 18:31:55 1999  Owen Taylor  <otaylor@redhat.com>
15282
15283         * gtk/gtkrc.c (gtk_rc_init): Always normalize codeset
15284         names to lowercase and alphanumeric, before looking
15285         them up.
15286
15287         * gtk/Makefile.am: Install codeset variant gtkrc files
15288         with normalized names.
15289
15290 Thu Oct  7 22:52:42 1999  Tim Janik  <timj@gtk.org>
15291
15292         * gtk/gtkitemfactory.c (gtk_item_factory_popup_with_data): even
15293         popup menus when the menu is already visible, but its parent
15294         is still hidden, (happens after tornoff window got hidden).
15295
15296 Thu Oct  7 11:09:55 1999  Owen Taylor  <otaylor@redhat.com>
15297
15298         * gtk/Makefile.am (install-data-local): Fix
15299         a typo where gtkrc.vi_VN.tcvn5712 wasn't getting
15300         deleted, causing error messages on install.
15301
15302 Thu Oct  7 11:03:06 1999  Owen Taylor  <otaylor@redhat.com>
15303
15304         * gtk/gtk[hv]paned.c (gtk_{h,v}paned_draw): Redraw
15305         the handle as well, since we now sometimes ignore
15306         exposes on the handle while resizing.
15307
15308 Wed Oct  6 18:02:31 1999  Owen Taylor  <otaylor@redhat.com>
15309
15310         * gtk/gtkrc.c (gtk_rc_append_default_pixmap_path): Fix stupid
15311         extra g_free introduced in one of the last one or two 
15312         commits.
15313
15314 Wed Oct  6 16:38:36 1999  Owen Taylor  <otaylor@redhat.com>
15315
15316         * gtk/Makefile.am gtk/gtkrc*: Make naming of gtkrc files
15317         consistent, put each style that a gtkrc.* file creates
15318         in a unique namespace, remove old files before installing.
15319
15320 Wed Oct  6 14:31:16 1999  Owen Taylor  <otaylor@redhat.com>
15321
15322         * gtk/gtkrc.c (gtk_rc_init): Avoid leaking memory when
15323         gtk_rc_init is called multiple times. (Yes, people who
15324         do that have bugs in their code.)
15325
15326 Tue Oct  5 11:36:57 PDT 1999 Manish Singh <yosh@gimp.org>
15327
15328         * gtk/Makefile.am: listing gtkrc in gtkconf_DATA seems to barf.
15329         Remove it since it's generated by the Makefile anyway
15330
15331 Tue Oct  5 02:43:41 1999  Owen Taylor  <otaylor@redhat.com>
15332
15333         * gdk/gdkinputcommon.h (gdk_input_device_new): Free
15334         device->info.axes for core pointer.
15335
15336 Thu Sep 30 13:55:25 1999  Owen Taylor  <otaylor@redhat.com>
15337
15338         * gtk/testgtk.c (destroy_idle_test): Rename idle to 
15339         idle_id, to deal with obsolete, broken C libraries.
15340
15341 Mon Sep 27 02:50:15 1999  Owen Taylor  <otaylor@redhat.com>
15342
15343         * gtk/gtkvscale.c (gtk_vscale_draw): Don't add in
15344         allocation->x/y twice!
15345
15346         * gtk/gtkhscale.c: Make usage of gtk_hscale_pos_trough()
15347         consistent with gtk_vscale_pos_trough().
15348
15349 Sun Sep 26 19:44:34 1999  Owen Taylor  <otaylor@redhat.com>
15350
15351         * gtk/gtkcontainer.c (gtk_container_queue_resize): We may
15352         be queueing a resize on a toplevel container between
15353         the time we show it and when we map it. So, we need
15354         to test GTK_WIDGET_VISIBLE() for toplevels, and only
15355         use GTK_WIDGET_DRAWABLE() for child windows.
15356
15357 Thu Sep 23 16:41:03 1999  Owen Taylor  <otaylor@redhat.com>
15358
15359         * gtk/Makefile.am (LDADDS): Add GDK_WLIBS to LDADDS 
15360         (fixes bug #2144)
15361
15362 Fri Sep 24 00:51:45 1999  Tim Janik  <timj@gtk.org>
15363
15364         * gtk/gtkcontainer.c (gtk_container_queue_resize): check for
15365         container DRAWABLE (instead of VISIBLE), so we don't queue
15366         resizes on non-toplevel containers.
15367
15368 Sun Sep 19 18:13:31 1999  Owen Taylor  <otaylor@redhat.com>
15369
15370         * gtk/gtkselection.[ch]: Make the data argument
15371         const guchar *.
15372
15373 Sat Sep 18 21:27:40 1999  Owen Taylor  <otaylor@redhat.com>
15374
15375         * gtk/gtkwindow.c: Try to behave sensibly if 
15376         the focus widget is the window itself. (Should
15377         we allow this at all?)
15378
15379 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
15380
15381         * gtk/gtkwidget.c (gtk_widget_set_sensitive): 
15382         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): 
15383         * gtk/gtknotebook.c (gtk_notebook_set_show_border): 
15384         * gtk/gtkclist.c (gtk_notebook_set_show_border): make gboolean args
15385         in prototypes and implementations consistent (Tomas Ogren).
15386
15387         * gtk/gtklayout.c (gtk_layout_remove): unset GTK_IS_OFFSCREEN flag
15388         before the widget is unparented (reported by damon).
15389
15390         * gtk/gtkdnd.c: make the cursor and icon data _unsigned_ char,
15391         since we provide unsigned data anyways.
15392
15393 Thu Sep 16 21:32:01 1999  Owen Taylor  <otaylor@redhat.com>
15394
15395         * gtk/gtktooltips.c (gtk_tooltips_set_tip): Delay
15396         the call to gtk_tooltips_layout_text() until later.
15397
15398         * gtk/gtktooltips.c (gtk_tooltips_draw_tips):
15399         Call gtk_widget_ensure_style() before using the style.
15400
15401 Wed Sep 15 02:52:19 1999  Owen Taylor  <otaylor@redhat.com>
15402
15403         * gtk/gtkwidget.c (gtk_widget_event): Added workaround
15404         for old widgets that don't propagate draws to all
15405         children. (Namely gnome-dock for gnome-libs <= 1.0.16)
15406
15407 Tue Sep 14 19:22:19 1999  Tim Janik  <timj@gtk.org>
15408
15409         * gtk/gtkwidget.c (gtk_widget_queue_resize): don't queue the parent
15410         for a redraw but just the widget that requested the resize.
15411
15412 Tue Sep 14 18:29:47 1999  Tim Janik  <timj@gtk.org>
15413
15414         * gtk/gtkcontainer.c: added new widget level method
15415         gtk_container_set_reallocate_redraws() and a GtkContainer flag
15416         reallocate_redraws : 1 to reflect the setting, exported this through
15417         the argument system as a boolean ::reallocate_redraws.
15418
15419         * gtk/gtkwidget.c (gtk_widget_size_allocate): when queueing redraws
15420         on the widget because the allocation changes, do so as well for
15421         widget->parent if the parent has reallocate_redraws set to TRUE.
15422         with that containers requesting reallocation redraws get automatically
15423         redrawn if their children changed allocation (this unfortunately
15424         affects also other children that didn't change allocation, but we
15425         cannot work around that before 1.3).
15426
15427 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
15428
15429         * gtk/gtkwidget.c (gtk_widget_idle_draw): only emit ::draw if width
15430         _and_ height are >0 (not _or_).
15431
15432         * gtk/gtktable.c (gtk_table_remove): use gtk_widget_queue_resize()
15433         instead of gtk_container_queue_resize(), which is a core gtk internal
15434         function (must have been on crack when i queued that).
15435
15436         * gtk/gtkprivate.h: added new private flag GTK_FULLDRAW_PENDING, so
15437         we can check more reliably if we want to discard expose events.
15438         * gtk/gtkwidget.c: added setting/unsetting of the GTK_FULLDRAW_PENDING
15439         flag.
15440         
15441         * gtk/gtkwidget.c (gtk_widget_event): don't discard synthesized exposes,
15442         we simply trust these events. for deciding whether to discard exposes,
15443         check GTK_FULLDRAW_PENDING instead of RESIZE_PENDING.
15444         
15445 Mon Sep 13 15:01:21 1999  Owen Taylor  <otaylor@redhat.com>
15446
15447         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
15448         queues of areas that are completely off screen.
15449
15450         * gtk/gtkwidget.c (gtk_widget_idle_draw): Fix broken
15451         logic for handleboxes.
15452
15453         * gtk/gtkwidget.c (gtk_widget_queue_draw_data): Add santity
15454         check on width/height.
15455
15456 Mon Sep 13 02:22:47 1999  Tim Janik  <timj@gtk.org>
15457
15458         * gtk/Makefile.am: backed out Raja's recent VPATH build "improvements",
15459         we are fine with using $@ the way we do (if we actually encounter
15460         brokeness with $@ in VPATH builds because of additional path prefixes,
15461         we need to use $(@F) actually).
15462
15463 Mon Sep 13 01:34:53 1999  Tim Janik  <timj@gtk.org>
15464
15465         * gtk/gtksignal.c: renamed two variables, hopefully didn't introduce
15466         short lived bugs, that would allow language bindings to do surgeries
15467         to our guts.
15468
15469 Fri Sep 10 15:22:50 1999  Owen Taylor  <otaylor@redhat.com>
15470
15471         * gtk/gtkwindow.c (gtk_window_size_allocate): Fix typo
15472         where comparison was being done against an uninitialized
15473         value causing intermittant results depending on
15474         compiler flags. Also make it clearer that we aren't
15475         ever initializing the child as 0x0 (though this will
15476         be caught in gtk_widget_size_allocate())
15477
15478 Fri Sep 10 10:06:56 1999  Owen Taylor  <otaylor@redhat.com>
15479
15480         * gtk/gtkwindow.c (gtk_window_set_transient_for): Move
15481         gtk_window_unset_transient_for() call after we do checks
15482         involving the old transient parent.
15483         [ From Lance Capser <lmc@cyberhighway.net> ]
15484
15485 1999-09-07  Raja R Harinath  <harinath@cs.umn.edu>
15486
15487         * gtk/Makefile.am (gtk.defs): Go back to using `touch' to create
15488         an empty file.
15489
15490 Mon Sep  6 00:11:56 1999  Lars Hamann  <lars@gtk.org>
15491
15492         * gtk/gtkctree.c (gtk_ctree_is_ancestor): return FALSE if node has
15493         no children. (Reported by: Chris Rogers <gandalf@pobox.com>)
15494
15495 1999-09-03  Raja R Harinath  <harinath@cs.umn.edu>
15496
15497         * gtk/Makefile.am (gen_sources): Improve VPATH builds.
15498         `$@' is valid only in the build dir, not after we've done 
15499         `cd $srcdir'.  Also use `test -f' instead of less portable
15500         `test -e'.
15501
15502 Fri Sep  3 15:59:56 1999  Owen Taylor  <otaylor@redhat.com>
15503
15504         * gtk/gtktext.c (correct_cache_insert): Rewrite
15505          for simplicity, and hopefully correctness.
15506          (Fixes bug #1322, which was a segfault when
15507           on some insertions with the properties around
15508           the insertion set up just wrong.)
15509
15510         * gtk/gtktext.c (gtk_text_adjustment): When we receive
15511          a "changed" signal, clamp the new value to the adjustment
15512          bounds to avoid segfaulting if someone tries to change
15513          the adjustment to a bogus value. (Bug #1795)
15514
15515 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
15516
15517         * gtk/gtkmain.c: Ignore unexpected destroy notifies
15518         for children, for toplevel windows handle them
15519         like delete_event.
15520
15521         * gtk/gtkplug.c: Add an unrealize handler so that
15522         we unref plug->socket_window when we are done
15523         with it.
15524
15525 Fri Sep  3 14:52:54 1999  Owen Taylor  <otaylor@redhat.com>
15526
15527         * gtk/gtktext.c (clear_area): Fix stupid signedness
15528          problem that was causing background to sometimes
15529          be misaligned.
15530
15531 Fri Sep  3 12:26:33 1999  Owen Taylor  <otaylor@redhat.com>
15532
15533         [ Fixes pointed out by Ettore Perazzoli <ettore@comm2000.it> ]
15534         
15535         * gtk/gtkmenu.c (gtk_menu_position): Make
15536          sure we never position menus with negative x, y,
15537          since gtk_widget_set_uposition() can't handle that.
15538
15539         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu):
15540          Modify the positioning code a bit so that we always
15541          put the top-left corner onscreen. (This is for
15542          UI reasons, gtk_menu_position() now takes care of
15543          gtk_widet_set_uposition() brokeness.)
15544
15545 Fri Sep  3 03:06:30 1999  Tim Janik  <timj@gtk.org>
15546
15547         * gtk/Makefile.am: fixed up things for -jx, x > 1.
15548
15549 Sun Sep  5 08:48:51 1999  Owen Taylor  <otaylor@redhat.com>
15550
15551         * gtk/gtkwidget.c (gtk_widget_modify_style): Ref the
15552           RC style that is passed in. The lack of the ref
15553           before was a bug. If people worked around this
15554           bug, this will introduce a slight memory leak
15555           in their code. The code should typically look like:
15556
15557             rc_style = gtk_rc_style_new ();
15558             [...]
15559             gtk_widget_modify_style (widget, rc_style);
15560             gtk_rc_style_unref (rc_style);
15561
15562         * gtk/gtkwidget.c (gtk_widget_modify_style): Reset
15563           the style if it was already set.
15564
15565         * gtk/gtkwidget.c (gtk_widget_set_name): Only set the
15566           style if it was set before.
15567
15568 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
15569
15570         * gtk/testgtk.c (main): Add a check to see if we
15571           are being run from the correct directory and
15572           to quit nicely if we are not.
15573
15574         * gtk/gtkrc.c (gtk_rc_slist_remove_all): Make function
15575           static.
15576
15577 Thu Sep  2 23:00:03 1999  Tim Janik  <timj@gtk.org>
15578
15579         * gtk/gtkenums.h (GtkWindowPosition): added GTK_WIN_POS_CENTER_ALWAYS.
15580
15581         * gtk/gtkwindow.c:
15582         queue resizes unconditionally (gtk_widget_queue_resize will figure
15583         what to do if the window is not realized).
15584         (gtk_window_move_resize): only recenter the window
15585         for GTK_WIN_POS_CENTER_ALWAYS.
15586         (gtk_window_compute_reposition): handle GTK_WIN_POS_CENTER_ALWAYS in
15587         the same way as GTK_WIN_POS_CENTER.
15588
15589 Thu Sep  2 22:39:27 1999  Tim Janik  <timj@gtk.org>
15590
15591         * gtk/gtkwindow.c (gtk_window_reposition): check for the last position
15592         with (!(info->last_flags & GDK_HINT_POS)) instead of
15593         (!info->last_flags & GDK_HINT_POS).
15594
15595         * gtk/gtkwindow.c (gtk_window_move_resize): constrain new_width and
15596         new_height unconditionally, because we use these values even if
15597         !default_size_changed && !hints_changed.
15598         comented the (default_size_changed || hints_changed) case with
15599         respect to resize rejects from the window manager.
15600
15601         * gtk/gtkwindow.c (gtk_window_move_resize): save info->last values
15602         in the zvt condition hack, since this includes the window hints, set
15603         the hints after the handling_resize case.
15604
15605         * gtk/gtkwindow.c (gtk_window_show): constrain the default size that a
15606         window is initially shown with to the geometry.
15607
15608 Thu Sep  2 07:38:56 1999  Tim Janik  <timj@gtk.org>
15609
15610         * gtk/gtkwindow.c (gtk_window_move_resize):
15611         s/size_changed/default_size_changed/g so i know what's
15612         really going on (frying brain on smaller flame now).
15613
15614 Thu Sep  2 05:47:47 1999  Tim Janik  <timj@gtk.org>
15615
15616         * gtk/gtkwindow.c (gtk_window_move_resize): queue a new resize if
15617         we have size_changed upon handling_resize. this is a gross
15618         workaround for the broken zvt widget and should be removed in
15619         1.3 again (search for FIXME).
15620         Owen provided an accurate comment for this:
15621
15622         /* We could be here for two reasons
15623          *  1) We coincidentally got a resize while handling
15624          *     another resize.
15625          *  2) Our computation of size_changed was completely
15626          *     screwed up, probably because one of our children
15627          *     is broken. It's probably a zvt widget.
15628          *
15629          * For 1), we could just go ahead and ask for the
15630          * new size right now, but doing that for 2)
15631          * might well be fighting the user (and can even
15632          * trigger a loop). Since we really don't want to
15633          * do that, we requeue a resize in hopes that
15634          * by the time it gets handled, the child has seen
15635          * the light and is willing to go along with the
15636          * new size. (this happens for the zvt widget, since
15637          * the size_allocate() above will have stored the
15638          * requisition corresponding to the new size in the
15639          * zvt widget)
15640          *
15641          * This doesn't buy us anything for 1), but it shouldn't
15642          * hurt us too badly, since it is what would have
15643          * happened if we had gotten the configure event before
15644          * the new size had been set.
15645          */
15646
15647 Wed Sep  1 20:46:11 1999  Owen Taylor  <otaylor@redhat.com>
15648
15649         * gtk/gtkrc.c: deal properly with the fact that RC
15650           style lists may include rc styles more than once.
15651
15652         * gtk/gtkrc.c (gtk_rc_append_pixmap_path): Removed
15653           unused static function.
15654
15655         * gtk/gtkrc.c (gtk_rc_find_pixmap_in_path): Keep a
15656           stack of directories of RC files currently being
15657           parsed and implicitely add them to pixmap path.
15658           
15659           This fixes a bug where the directory would get
15660           appended then overwritten by pixmap_path declarations.
15661
15662           (bug #1462, from Peter Wainright <prw@wainpr.demon.co.uk>)
15663
15664         * gtk/gtkthemes.c (gtk_theme_engine_unref): Call
15665           theme's exit function. (Patch from Peter Wainwright,
15666           bug #1454)
15667
15668         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_destroy):
15669           Add a destroy() handler to take care of removing
15670           group for menu item. (Fixes bug #1197)
15671
15672         * gtk/gtkwidget.c (gtk_widget_size_request): Fixed thinko
15673           in warning message.
15674
15675 Wed Sep  1 21:27:42 1999  Tim Janik  <timj@gtk.org>
15676
15677         * gtk/gtkwindow.c (gtk_window_move_resize): don't require a server
15678         roundtrip to figure window's width and height, since we know that
15679         anyways from widget->allocation.
15680
15681 Wed Sep  1 12:37:44 1999  Owen Taylor  <otaylor@redhat.com>
15682
15683         * gtk/gtkwindow.c (gtk_window_move_resize): Compute
15684           the hints after we request the new size.
15685
15686 Wed Sep  1 10:38:37 1999  Owen Taylor  <otaylor@redhat.com>
15687
15688         * gtk/gtkwindow.c (gtk_window_compute_hints): Removed
15689           GTK_WIDGET_REALIZED() assertion - we can compute the
15690           hints before we are realized.
15691
15692         * gtk/gtkwindow.c (gtk_window_move_resize): Reorder
15693           hint changing so that we have a value of hints_changed
15694           when we decide whether to constrain the window size.
15695
15696         * gtk/gtkwindow.c (gtk_window_move_resize): Spelling fix.
15697
15698         * gtk/gtkwindow.c (gtk_window_constrain_size): cleanups,
15699         change back to G_MAXINT.
15700
15701 Wed Sep  1 06:54:59 1999  Tim Janik  <timj@gtk.org>
15702
15703         * gtk/gtkwindow.c (gtk_window_get_geometry_info): zero initialize
15704         new GtkWindowGeometryInfo, so fields like GdkGeometry geometry
15705         contain uncluttered values.
15706         (gtk_window_compute_hints): simply assert that window is realized
15707         and that geometry_info is valid, since we rely on this anyways.
15708         (gtk_window_constrain_size): major cleanups to the code.
15709         if (flags & GDK_HINT_BASE_SIZE) use geometry's base width and height
15710         for the base size, instead of the minimums. use 32767 as max width
15711         and height (like in gtkwindow.c) instead of G_MAXINT.
15712
15713 Wed Sep  1 04:41:25 1999  Tim Janik  <timj@gtk.org>
15714
15715         * cleaned up the GtkContainer.need_resize flag handling mess, we
15716         only need to force resize requests when we were prematurely
15717         realized, or our widget tree was modified when we were temporarily
15718         hidden. handling these cases directly upon showing the window (i.e.
15719         while the GdkWindow is still unmapped) avoids the need to wait for
15720         a configure event response and therefore makes the GUI more snappier
15721         and avoids blank windows during the roundtrip.
15722
15723         * gtk/gtkwidget.c:
15724         (gtk_widget_hide): 
15725         (gtk_widget_show): don't queue resizes on toplevels, they know how
15726         to deal with matters.
15727
15728         * gtk/gtkcontainer.c (gtk_container_queue_resize): set the ->need_resize
15729         flag directly for not visible resize containers and spare us unecessary
15730         signal emissions.
15731
15732         * gtk/gtkwindow.c:
15733         (gtk_window_realize): if we need to enforce premature size allocation,
15734         queue a container resize so we are correctly resized later on.
15735         (gtk_window_init):
15736         (gtk_window_size_request):
15737         don't freak around with the ->need_resize flag,
15738         gtk_container_queue_resize() will care about that.
15739         (gtk_window_show):
15740         handle initial resizing issues here, we can handle matters better in
15741         this place, especially since we know that our GdkWindow is still
15742         unmapped.
15743         (gtk_window_move_resize):
15744         don't care about ->need_resize at all.
15745         handle size changes properly that occoured while we waited for a
15746         configure event.
15747
15748 Tue Aug 31 15:58:46 1999  Owen Taylor  <otaylor@redhat.com>
15749
15750         * gtk/gtkwidget.c (gtk_widget_set_uposition):
15751         * gtk/gtkwindow.[hc] (gtk_window_reposition):
15752         Move the hint setting code from gtk_widget_set_uposition
15753         to here; set the hints so that we respect any previously
15754         set geometry hints.
15755
15756         * gtk/gtkwindow.c (gtk_window_compute_reposition): Don't
15757         change the window hints here or move the window here,
15758         let that happen in gtk_window_move_resize().
15759
15760 Tue Aug 31 06:58:52 1999  Tim Janik  <timj@gtk.org>
15761
15762         * gtk/gtkwidget.c (gtk_widget_event): when discarding exposes due
15763         to already queued resizes (and therefore redraws) on a widget, check
15764         its anchestry as well.
15765
15766         * gtk/gtkcontainer.c:
15767         (gtk_container_queue_resize): clear resize widgets for resize
15768         containers before aborting prematurely. this is especially important
15769         for toplevels which may need imemdiate processing or their resize
15770         handler to be queued.
15771         (gtk_container_dequeue_resize_handler): added new internal function for
15772         gtkwindow.c.
15773
15774         * gtk/gtkwindow.c (gtk_window_move_resize): if we are resizing due to a
15775         configure event, take possible changes in window position into account
15776         as well.
15777         if we request a new window size, queue up a resize handler that will
15778         last until the configure event response arrives.
15779         combined the ->need_resize case (initial show) with the general size
15780         (hints) changed case and added even more comments.
15781         if !auto_shrink, only revert to the old allocation if the new size
15782         is smaller than the current allocation.
15783
15784 Tue Aug 31 11:55:20 1999  Owen Taylor  <otaylor@redhat.com>
15785
15786         * gtk/gtkwindow.c (gtk_window_set_arg, gtk_window_set_policy,
15787                            gtk_window_set_geometry_hints
15788                            gtk_window_set_default_size):
15789         When hints are set, queue a resize so that the hints will
15790         be eventually reset on the toplevel.
15791
15792         * gtk/gtkwindow.c (gtk_window_show): Use
15793         gtk_window_compute_default_size(). Clear the need_resize flag
15794         on the initail map so that we don't unnecessarily trigger the
15795         resize code.
15796
15797         * gtk/gtkwindow.c (gtk_window_move_resize): Split apart
15798         into separate functions. Compare the hints we are setting
15799         with what we set last time so that we can accurately
15800         tell when we need to reset the hints.
15801
15802         * gtk/gtkwindow.c (gtk_window_compute_default_size): New
15803         function to figure out the size from requisition
15804         and default_size.
15805
15806         * gtk/gtkwindow.c (gtk_window_constrain_size): Function
15807         from fvwm to constrain a size to the geometry hints.
15808
15809         * gtk/gtkwindow.c (gtk_window_compare_hints): New function
15810         to compare two sets of geometry hints.
15811
15812         * gtk/gtkwindow.c (gtk_window_compute_hints): Renamed
15813         from gtk_window_set_hints(), just compute the hints,
15814         don't set them.
15815
15816         * gtk/gtkwindow.c (gtk_window_compute_reposition): Move
15817         code from gtk_window_move_resize() to separate function,
15818         rationalize a bit.
15819
15820 Tue Aug 31 13:05:03 1999  Owen Taylor  <otaylor@redhat.com>
15821
15822         * gtkrc.h: Move the ref_count member out of the GtkRcStyle
15823         structure into a new private structure.
15824
15825         * gtkrc.c: Split GtkRcStyle into public/private.
15826         In the private part, add a list of pointers to the
15827         RcStyle lists this RcStyle participates in.
15828
15829         * gtkrc.c: When a RcStyle is free, remove all
15830         lists referencing it from the 
15831         realized_style_ht hash, and free those lists.
15832         
15833         * gtk/gtkrc.c (gtk_rc_clear_styles): Don't call
15834         gtk_rc_init(), since that adds the default styles
15835         to the list of parsed RC files again.
15836
15837         * gtk/gtkrc.c: Use gtk_rc_style_find() consistently.
15838         
15839 Thu Aug 26 14:14:42 1999  Tim Janik  <timj@gtk.org>
15840
15841         * gtk/gtkwidget.c (gtk_widget_size_allocate): reactivated the sanity
15842         checks that ensure that a widget's allocation is at least 1 in width
15843         and height. (GNOME note: this doesn't affect old panel code anymore,
15844         because GtkSocket will request width and height of at least 1 since
15845         Fri Jul 23).
15846
15847         * gtk/gtkwindow.c (gtk_window_realize): if the widget hasn't been
15848         allocated yet (happens if the user realizes the window prematurely),
15849         size request and allocate it.
15850         (gtk_window_size_allocate): guard against guint underflows.
15851
15852 Wed Aug 25 19:01:36 1999  Lars Hamann  <lars@gtk.org>
15853
15854         * gtk/Makefile.am (gtk_built_sources): reordered stamp-gtk.defs
15855         in gtk_built_sources, so gtk.defs gets built prior to all other
15856         sources.
15857
15858 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
15859
15860         * gtk/Makefile.am:
15861         invoke indent on gtkmarshal.*. 
15862         rewrote source generation rules, use COPYING as oldest source tag for
15863         a piggyback rule to generate all sources from (don't touch it ;).
15864         major cleanups, strip spaces on build rules for GNU Make.
15865
15866         * gtk/genmarshal.pl: don't operate on hardcoded filenames but take
15867         source and target files from commandline arguments. don't invoke indent.
15868
15869 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
15870
15871         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
15872         notebook after switch to avoid drawing problems.
15873         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
15874         
15875         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
15876         show them instead. 
15877         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
15878
15879 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
15880
15881         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
15882         notebook after switch to avoid drawing problems.
15883         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
15884         
15885         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
15886         show them instead. 
15887         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
15888
15889 Wed Aug 18 09:20:10 1999  Tim Janik  <timj@gtk.org>
15890
15891         * gtk/gtkwindow.c:
15892         we use window->need_resize from configure_event now, to indicate that
15893         the gtkwindow should keep its allocation (e.g. because the user resized
15894         the window through window manager handles). resize_count is now reliably
15895         used to figure whether we got the allocation we requested from the
15896         window manager.
15897         configure events get queued as resizes now, the real stuff (size
15898         computation and allocation) now only goes on in gtk_window_move_resize().
15899         GtkWindow's requisition now contains its *real* requisition (like all
15900         other widgets), *not* taking usize into account.
15901         geometry_info->last_{width|height} is now updated from set_hints() only
15902         so it always contains the last hints we set for the window manager.
15903         made some event handlers return TRUE instead of FALSE.
15904         the overall code should be much more straight forward now, and the
15905         significant code portions are accompanied by comments now.
15906         (gtk_window_set_hints):
15907         removed requisition argument and made it
15908         fetch the requisition through gtk_widget_get_child_requisition.
15909         we also don't move the gdkwindow here anymore, gtk_window_move_resize()
15910         does that now.
15911         (gtk_window_show):
15912         ensure that the widget is realized before calling 
15913         gtk_container_check_resize() (and thus gtk_window_move_resize()), also
15914         ensure that we got properly size requested and allocated before
15915         realization.
15916         (gtk_window_configure_event):
15917         ignore plain window moves, or reallocate the widget tree through the
15918         resize queue otherwise.
15919         (gtk_window_move_resize):
15920         mostly rewrote this function to figure window manager hints more
15921         reliably, coalesce window moves and resizes to reduce configure events
15922         and do actuall size allocations.
15923
15924 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
15925
15926         * gtk/gtkwidget.c (gtk_widget_event): discard expose events for widgets
15927         that have a resize pending, because a redraw is already queued for them.
15928
15929         * gtk/gtkcontainer.c: removed ugly connect_to ::size_allocate signal
15930         hack to clear resize_widgets.
15931
15932         * gtk/gtkwidget.c (gtk_widget_size_allocate): call clear_resize_widgets
15933         for resize containers prior to size allocation. (this is also a bit
15934         ugly, but avoids side effects for stopped emissions and is thus more
15935         reliable).
15936         (gtk_widget_unparent): removed disconnect call for clear_resize_widgets.
15937
15938         * gtk/gtktooltips.c (gtk_tooltips_paint_window): renamed this
15939         function from gtk_tooltips_expose, as we connect to ::expose_event
15940         *and* ::draw now.
15941
15942 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
15943
15944         * gtk/gtkselection.c (gtk_target_list_ref): Added missing sanity
15945         checks.
15946         (gtk_target_list_unref): Likewise.
15947
15948         * gtk/gtkthemes.c (gtk_theme_engine_unref): Likewise.
15949
15950 Tue Aug 17 15:47:07 1999  Owen Taylor  <otaylor@redhat.com>
15951
15952         * gtk/gtkcolorsel.c (gtk_color_selection_draw_value_bar):
15953         guard against division by zero. (Fixes bug #1339)
15954
15955 Tue Aug 17 10:56:49 1999  Owen Taylor  <otaylor@redhat.com>
15956
15957         * gtk/gtkentry.c (gtk_move_{forward,backward}_word): 
15958         Prevent the trivial leak of information of allowing
15959         word motion when the entry is not visible.
15960
15961 Tue Aug 17 10:28:52 1999  Owen Taylor  <otaylor@redhat.com>
15962
15963         * gtk/gtkfilesel.c (gtk_file_selection_fileop_error): Propagate
15964         modality to error dialog as well as confirmation dialogs.
15965         (Bug #1803, reported by Rosanna Wing Sze Yuen)
15966
15967 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
15968
15969         * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): Honor
15970         tree->view_lines.
15971         (gtk-guy-990611-3.patch: Guy Harris <guy@netapp.com>)
15972
15973         * gtk/Makefile.am (install-data-local): Solaris apparently
15974         has various troubles with ln -f; use rm first instead.
15975         (gtk-guy-990611-2.patch: Guy Harris <guy@netapp.com>)
15976
15977 1999-07-30  Raja R Harinath  <harinath@cs.umn.edu>
15978
15979         * gtk/Makefile.am (stamp-m): Don't `mv' from builddir to srcdir,
15980         use `cp' followed by `rm' (the `rm' was already there).
15981
15982 July 30, 1999 Elliot Lee <sopwith@redhat.com>
15983         
15984         * configure.in: Fix autoconf warnings about cross compilation by
15985         trying to provide sane defaults for AC_TRY_RUN.
15986         * gtk/Makefile.am: If we refer to gtkmarshal.[ch] in $(srcdir),
15987         put them into $(srcdir) when generated. Also add a dependency of
15988         gtksignal.h on gtkmarshal.h for -j builds. 
15989         * gtk/gtk(dnd,style,gamma).c: Minor warning fixes.
15990
15991 Wed Jul 28 09:29:19 1999  Owen Taylor  <otaylor@redhat.com>
15992
15993         * gtk/gtkmain.c (gtk_main_iteration_do): Added missing
15994         GDK_THREADS_{LEAVE,ENTER} pair.
15995         (From Paul Fisher <pnfisher@redhat.com>)
15996
15997 Fri Jul 23 01:00:15 1999  Tim Janik  <timj@gtk.org>
15998
15999         * gtk/gtksocket.c (gtk_socket_size_request): asure that the requested
16000         width and height are always >0 (owen).
16001
16002 Fri Jul 23 00:00:47 1999  Tim Janik  <timj@gtk.org>
16003
16004         * gtk/gtkwidget.c (gtk_widget_size_allocate): backed out my recent
16005         change that assured that a widget's allocated with and height are
16006         always >1, since this breaks *buggy* panel code. unfortunately this
16007         back-breaks the gimp's color selector.
16008
16009         * gtk/gtkdrawingarea.c (gtk_drawing_area_size_allocate): asure that our
16010         allocation is always >0 in width and height, before sending the
16011         configure event; this is a *gross* hack to get the gimp back to work.
16012         
16013         * marked both cases with TODO-1.3
16014
16015 Wed Jul 21 15:47:39 1999  Owen Taylor  <otaylor@redhat.com>
16016
16017         * gtk/gtktext.c: Don't display wrap indicators when
16018         text is not editable and word wrap is on.
16019
16020 Wed Jul 21 08:21:40 1999  Tim Janik  <timj@gtk.org>
16021
16022         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): special case
16023         option menus here as they are not derived from menu shell, assure that
16024         the option menu has a menu we can add items to.
16025
16026 Tue Jul 20 23:29:48 1999  Tim Janik  <timj@gtk.org>
16027
16028         * gtk/gtknotebook.c (gtk_notebook_page_allocate): convert allocation->
16029         width/height to (gint) before calculations and check against < 0 to
16030         avoid guint wraparounds.
16031
16032 Sun Jul 18 00:35:49 1999  Tim Janik  <timj@gtk.org>
16033
16034         * gtk/gtkwidget.c (gtk_widget_size_allocate): ensure that the allocated
16035         width and height is never zero. sanity check both dimensions against
16036         32767 and issue a warning if the allocation is greater than that.
16037
16038 Wed Jul  7 15:03:30 1999  Owen Taylor  <otaylor@redhat.com>
16039
16040         * gtk/gtkmain.c (gtk_events_pending): Unlock around call
16041         to g_main_pending() as well.
16042
16043 Wed Jul  7 14:59:01 1999  Owen Taylor  <otaylor@redhat.com>
16044
16045         * gtk/gtkmain.c (gtk_main_iteration): Unlock around
16046         call to g_main_iteration() - since that will regrab
16047         GTK+ lock to process events.
16048
16049 Thu Jul  1 15:01:55 1999  Owen Taylor  <otaylor@redhat.com>
16050
16051         * gtk/gtkwindow.c
16052         - Regularize with the rest of GTK+ by making widget->requisition
16053           not reflect the set_usize()
16054         - Always recompute geometry hints, then check if they
16055           changed before sending them to the X server. The
16056           previous checks for changes would fail in a number
16057           of circumstances. 
16058
16059 Thu Jul  1 11:55:59 1999  Owen Taylor  <otaylor@redhat.com>
16060
16061         * gtk/gtkstyle.c: Include <stdlib.h> for strcmp().
16062
16063 Wed Jun 30 19:26:36 1999  Owen Taylor  <otaylor@redhat.com>
16064
16065         * gtk/gtkdnd.c:
16066         - Code cleanups
16067         - Instantaneously update on modifier key presses
16068         - Allow cancellation of the drag with Escape.
16069
16070 Tue Jun 29 17:04:09 1999  Owen Taylor  <otaylor@redhat.com>
16071
16072         * gtk/testgtk.c (create_handle_box): Set the policy
16073         to auto_shrink - otherwise the appearance is rather
16074         strange when flipping between horizontal and vertical.
16075
16076 Mon Jun 28 09:29:52 1999  Tim Janik  <timj@gtk.org>
16077
16078         * gtk/gtkwindow.c: add ::default_width and ::default_height arguments.
16079         (gtk_window_set_default_size): don't change a value if it's < 0.
16080         queue a resize.
16081
16082 Sun Jun 27 11:00:33 1999  Tim Janik  <timj@gtk.org>
16083
16084         * gtk/gtktext.c (gtk_text_insert): don't segfault on NULL inserts.
16085
16086 Mon Jun 28 12:08:25 1999  Owen Taylor  <otaylor@redhat.com>
16087
16088         * gtk/gtkfilesel.c (cmpl_completion_fullname): Don't
16089         add an extra "/" when concating "/" + filename.
16090         (From Matt Grossman <mattg@oz.net>)
16091
16092 Mon Jun 28 10:57:12 1999  Owen Taylor  <otaylor@redhat.com>
16093
16094         * gtk/gtkctree.c (draw_cell_pixmap): Reset clip mask
16095         for fg_gc if we set it for drawing pixmap.
16096
16097 Tue Jun 15 12:45:12 1999  Owen Taylor  <otaylor@redhat.com>
16098
16099         Fixes from Peter Wainwright <prw@wainpr.demon.co.uk>
16100         
16101         * gtk/gtkrc.c (gtk_rc_parse_engine): If rc_style->engine is
16102         already set, call old engine's destroy function and
16103         unref the old engine.
16104
16105 Thu Jun 10 17:59:38 1999  Tim Janik  <timj@gtk.org>
16106
16107         * gtk/gtkdrawingarea.c (gtk_drawing_area_size): queue a resize.
16108
16109 Wed Jun  9 15:13:16 1999  Tim Janik  <timj@gtk.org>
16110
16111         * gtk/gtkaccelgroup.h: mark certain functions as internal.
16112
16113 Wed Jun  9 13:48:28 1999  Tim Janik  <timj@gtk.org>
16114
16115         * gtk/gtkpreview.c (gtk_preview_set_expand): queue a resize if the
16116         expand behaviour changed.
16117
16118         * gtk/gtklabel.c (gtk_label_set_pattern):
16119         (gtk_label_set_justify):
16120         (gtk_label_set_line_wrap):
16121         don't bother invoking queue_clear, the reallocation does
16122         that for us, always free_words so the upcoming resize will
16123         relayout the label's contents.
16124
16125 Wed Jun  9 12:50:48 1999  Tim Janik  <timj@gtk.org>
16126
16127         * applied argument implementation patches from Elena Devdariani
16128         <elena@cogent.ca>.
16129
16130         * gtk/gtktoolbar.c: ::orientation, ::toolbar_style, ::space_size,
16131         ::space_style, ::relief
16132         * gtk/gtkruler.c: ::lower, ::upper, ::position, ::max_size
16133         * gtk/gtkpreview.c: ::expand
16134         * gtk/gtkpaned.c: ::handle_size, ::gutter_size
16135         * gtk/gtknotebook.c: ::homogeneous
16136         * gtk/gtklabel.c: ::wrap
16137         * gtk/gtklist.c: ::selection_mode
16138         * gtk/gtkhandlebox.c: ::handle_position, ::snap_edge
16139         * gtk/gtkcurve.c: ::curve_type, ::min_x, ::max_x, ::min_y, ::max_y
16140         * gtk/gtkcolorsel.c: ::update_policy, ::use_opacity
16141         * gtk/gtkclist.c: ::sort_type
16142         * gtk/gtkcheckmenuitem.c: ::active, ::show_toggle
16143         * gtk/gtkaspectframe.c: ::xalign, ::yalign, ::ratio, ::obey_child
16144
16145 Tue Jun  1 23:38:38 1999  Owen Taylor  <otaylor@redhat.com>
16146
16147         * gtk/gtkstyle.c: Removed ill-thought-out part of last
16148         comment.
16149
16150 Tue Jun  1 23:30:09 1999  Owen Taylor  <otaylor@redhat.com>
16151
16152         * gtk/gtkstyle.c (gtk_style_attach): Get the reference
16153         counting right when we have to attach a new style
16154         for a different visual. (Chi-Deok Hwang <cdhwang@sr.hei.co.kr>)
16155
16156         * gtk/gtkstyle.c: Documented the refcounting
16157         peculularities of gtk_style_attach.
16158
16159 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
16160
16161         * gtk/gtkwindow.c (gtk_window_new): added return if fail for invalid
16162         window types.
16163
16164         * examples/packer/pack.c (main): use GTK_WINDOW_TOPLEVEL instead
16165         of GTK_TOPLEVEL for creating the window.
16166
16167 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
16168
16169         * gtk/gtkmain.c (gtk_init_check): don't segfault when --gtk-module is
16170         the last argument (reported by Per Winkvist).
16171         
16172 Tue May 25 13:13:12 1999  Owen Taylor  <otaylor@redhat.com>
16173
16174         Fixes for invisible XOR lines (Frank Loemker
16175         <floemker@TechFak.Uni-Bielefeld.DE>)
16176         
16177         * gtk/gtkclist.c (gtk_clist_realize): Always use
16178         a non-zero pixel for GDK_XOR.
16179
16180         * gtk/gtkvpaned.c gtk/gtkhpaned.c: 
16181         Use GDK_INVERT instead of GDK_XOR.
16182
16183 Wed May 12 21:56:40 1999  Lars Hamann  <lars@gtk.org>
16184
16185         * gtk/gtkclist.c (adjust_adjustments): signal emit value_changed
16186         signals if h/voffsets differ from adjustment values.
16187         Reportet by Jerome Bolliet <bolliet@in2p3.fr>
16188
16189 Mon May 10 04:20:41 1999  Tim Janik  <timj@gtk.org>
16190
16191         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): propagate
16192         ::selection-done emissions up to the topmost menu shell.
16193
16194 Fri May  7 10:15:14 1999  Owen Taylor  <otaylor@redhat.com>
16195
16196         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): Unset
16197         the user data on the window before destroying it.
16198
16199         * gtk/gtknotebook.c (gtk_notebook_unrealize): Add an
16200         unrealize handler to take care of destroying 
16201         notebook->panel properly. 
16202         (Bug #1198 - Morten Welinder <terra@diku.dk>)
16203
16204         * gtk/gtktext.c (expand_scratch_buffer): Fix reversal
16205         of g_new and g_realloc to stop memory leak. (Actually,
16206         we could just use g_realloc(), but I'm not 100% sure
16207         that is portable).
16208         (Bug #1196 - Morten Welinder <terra@diku.dk>)
16209
16210 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
16211
16212         * gtk/gtkplug.h: Removed stray GtkPlugButton declaration.
16213
16214         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
16215         for fontsets.
16216
16217         * gtk/gtkbutton.c (gtkbutton_expose): Fix warning
16218         with bin/button confusion.
16219
16220 Thu May  6 04:53:26 1999  Tim Janik  <timj@gtk.org>
16221
16222         * gtk/testgtk.c: in the ItemFactory test, link radio items together,
16223         and show how preselection of radio items is done.
16224
16225 Sun May  2 13:31:14 1999  Tim Janik  <timj@gtk.org>
16226
16227         * gtk/gtktreeitem.c (gtk_tree_item_set_subtree): 
16228         * gtk/gtktree.c (gtk_tree_add) (gtk_tree_insert):
16229         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): 
16230         * gtk/gtkpaned.c (gtk_paned_pack2) (gtk_paned_pack1):
16231         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_add): 
16232         * gtk/gtktable.c (gtk_table_attach): 
16233         * gtk/gtklist.c (gtk_list_insert_items): 
16234         * gtk/gtkmenushell.c (gtk_menu_shell_insert): 
16235         * gtk/gtknotebook.c (gtk_notebook_insert_page_menu): 
16236         * gtk/gtkpacker.c (gtk_packer_add_defaults) (gtk_packer_add): 
16237         * gtk/gtkbin.c (gtk_bin_add): 
16238         * gtk/gtkbox.c (gtk_box_pack_start) (gtk_box_pack_end): 
16239         * gtk/gtkfixed.c (gtk_fixed_put): 
16240         * gtk/gtklayout.c (gtk_layout_put):
16241         general fixups to container_add logic. always realize child if
16242         child->parent is realized, only map the child and queue a resize
16243         if child and child->parent are both visible.
16244
16245 Fri Apr 30 09:02:28 1999  Tim Janik  <timj@gtk.org>
16246
16247         * gtk/gtkwidget.c (gtk_widget_real_unrealize): use gtk_container_forall
16248         instead of gtk_container_foreach to walk and unrealize children, so
16249         composite children get also unrealized.
16250         (gtk_widget_real_show): don't call gtk_widget_map() if we don't need to.
16251         (gtk_widget_map): assert that the widget is visible (basic constrain).
16252         (gtk_widget_real_map): assert that the widget is realized (basic
16253         constrain).
16254
16255 Fri Apr 29 00:53:20 1999  Tim Janik  <timj@gtk.org>
16256
16257         * gtk/gtkbindings.c (gtk_pattern_spec_init): plugged a memory leak.
16258
16259 Tue May  4 09:32:08 1999  Owen Taylor  <otaylor@redhat.com>
16260
16261         * gtk/Makefile.am gtk/gtkrc.iso-8859-2: Add a gtkrc
16262         file for iso-8859-2 locales.
16263
16264         * configure.in (ALL_LINGUAS): ALL_LINGUAS update.
16265
16266 Tue Apr 27 16:38:32 1999  Owen Taylor  <otaylor@redhat.com>
16267
16268         * gtk/Makefile.am: Fix typo of static_sources for static_SOURCES.
16269          (Pointed out by andy@rz.uni-karlsruhe.de and others).
16270          Remove some suspicious and useless lines. 
16271
16272 Tue May  4 08:44:08 1999  Owen Taylor  <otaylor@redhat.com>
16273
16274         * gtk/gtkclist.c (gtk_clist_draw, draw_rows): Use 
16275         width,height = 0, 0 to mean - here to edge of window,
16276         instead of -1, -1, since the former is all we support.
16277
16278 Tue May  4 08:34:43 1999  Owen Taylor  <otaylor@redhat.com>
16279
16280         * gtk/gtkmain.c (gtk_main): Correctly free list nodes
16281         when removing from quit_functions list.
16282
16283 Tue Apr 27 14:17:16 1999  Tim Janik  <timj@gtk.org>
16284
16285         * gtk/gtkpacker.c (gtk_packer_size_request): remove unused variable.
16286
16287 Tue Apr 27 18:23:35 1999  Owen Taylor  <otaylor@redhat.com>
16288
16289         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): 
16290          When redrawing characters on non-visible entry, use appropriate
16291          '*' character. (Bug #1130 - Jean-Marc Jacquet <jm@littleigloo.org>)
16292
16293 Tue Apr 27 01:31:40 1999  Lars Hamann  <lars@gtk.org>
16294
16295         * gtk/gtkclist.c (drag_dest_cell): compute destination cell
16296         from drag coordinates.
16297         (gtk_clist_drag_data_received) (gtk_clist_drag_motion):
16298         use drag_dest_cell.
16299
16300         * gtk/gtktree (drag_dest_cell)
16301         (gtk_ctree_drag_data_received) (gtk_ctree_drag_motion): likewise.
16302         (Bug #1129)
16303
16304 Wed Apr 21 21:26:11 1999  Tim Janik  <timj@gtk.org>
16305
16306         * gtk/gtkitemfactory.c (gtk_item_factory_init): properly initialize
16307         translate_* fields.
16308         (gtk_item_factory_finalize): invoke translate_notify independant from
16309         translate_data.
16310         (gtk_item_factory_set_translate_func): likewise.
16311         (gtk_item_factory_destroy): only remove ifactory pointer from those
16312         widgets that belong to us (stupid me).
16313
16314 Mon Apr 19 12:05:31 1999  Owen Taylor  <otaylor@redhat.com>
16315
16316         * gtk/gtkrc.c (gtk_rc_style_init): Fixed leak of
16317         rc_style list when lookup succeeeds.
16318
16319 Thu Apr 15 01:11:24 1999  Lars Hamann  <lars@gtk.org>
16320
16321         * gtk/gtkctree.c (resync_selection): 
16322         * gtk/gtkclist.c (resync_selection): fixed undo_selection bug.
16323         * gtk/gtkclist.c (gtk_clist_button_release): fixed resync_selection
16324         bug.
16325
16326 Fri Apr  9 19:22:19 1999  Owen Taylor  <otaylor@redhat.com>
16327
16328         * gtk/gtkcolorsel.c gtk/gtkdnd.c gtk/gtkmenuitem.c:
16329         Add some missing GDK_THREADS_ENTER()/LEAVE around
16330         timeouts. (Patches from Sebastian Wilhelmi <wilhelmi@ira.uka.de>)
16331
16332 Thu Apr  8 20:10:33 1999  Tim Janik  <timj@gtk.org>
16333
16334         * gtk/gtkentry.c (gtk_entry_key_press): use gtk_widget_activate()
16335         rather than emit_by_name.
16336
16337         * gtk/gtkeditable.c (gtk_editable_insert_text): keep a reference
16338         on the widget across multiple signal emissions.
16339         (gtk_editable_delete_text): same here.
16340         (gtk_editable_class_init): set widget_class->activate_signal after
16341         editable_signals[ACTIVATE] has been created.
16342
16343 Wed Apr  7 22:59:47 1999  Owen Taylor  <otaylor@redhat.com>
16344
16345         * gtk/gtkpaned.c (gtk_paned_set_position): Don't clamp
16346         position here prematurely -- we might not have the
16347         right ->min_position and ->max_position yet.
16348
16349 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
16350
16351         * gtk/gtkselection.c gdk/gdkselection.c: (gtk_selection_request):
16352         Add error traps so if the other end of the connection
16353         dies, we survive.
16354
16355         * gtk/gtkselection.c (gtk_selection_notify): Clean
16356         up properly when selection property retrieval fails.
16357         
16358         * gtk/gtkselection.c (gtk_selection_request): Correctly
16359         reject SelectionRequest notifies where the handler
16360         returns no data.
16361
16362 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
16363
16364         * gtk/gtkdnd.c (gtk_drag_dest_leave): Only unhighlight
16365         when we've previously highlighted.
16366
16367         * gtk/gtkdnd.c (gtk_drag_dest_handle_event): Don't
16368         emit two "drag_leave" signals for Motif drops.
16369
16370         * gtk/gtkdnd.c (gtk_drag_source_handle_event): Send
16371         back the correct status messages when dropping from
16372         Motif onto a proxy window that is rejecting the
16373         drop.
16374
16375 Sat Mar 27 23:32:13 1999  Tim Janik  <timj@gtk.org>
16376
16377         * gtk/gtkarg.[hc]: added functions from GLE, gtk_arg_reset() to free
16378         the value and reset type to GTK_TYPE_INVALID, and gtk_arg_values_equal()
16379         to compare two argument values. added gtk_arg_to_valueloc() to set a
16380         variable from an arg through its location (pointer).
16381
16382         * gtk/gtkobject.[hc]: implemented gtk_object_get() in terms of
16383         gtk_object_arg_get() and gtk_arg_to_valueloc(), floats are collected
16384         as gfloat*, uchars are collected as guchar*, ints are collected as
16385         gint*, etc...
16386
16387 Mon Mar 29 17:45:47 1999  Owen Taylor  <otaylor@redhat.com>
16388
16389         * gtk/gtkaccelgroup.c gtk/gtkgtkbindings.c:
16390         Include <string.h> instead of <strings.h>.
16391
16392         * gtk/gtkstyle.c: Fix double include of gtkthemes.h
16393         (actually, a lot more duplicate includes occur if
16394          you trace through the sequence of #include's)
16395         gtk-jbb-990320-0: John Bley, jbb6@acpub.duke.edu
16396         
16397 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
16398
16399         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
16400         gtk-a-higuti-990322-[0-3]
16401
16402         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
16403         that was causing -DX_LOCALE not to work.
16404
16405         * gtk/gtkrc.c (gtk_rc_init):
16406         X_LOCALE will never have LC_MESSAGES defined
16407
16408 Thu Mar 25 12:38:31 1999  Tim Janik  <timj@gtk.org>
16409
16410         * gtk/gtkrc.c (gtk_rc_append_default_module_path): get $HOME from
16411         g_get_home_dir() (gtk-pmc-990123-0.patch.gz).
16412
16413         * gtk/gtkwindow.c (gtk_window_key_press_event): feature keypad up/down/
16414         left/right as well (gtk-michael-980726-0.patch.gz).
16415
16416         * gtk/gtklabel.[hc]: bunch of miscellaneous cleanups, such as s/0/NULL/
16417         for pointer values, use gchar instead of char. fixed uline allocation
16418         leaks, changed the allocation pattern so we use G_ALLOC_AND_FREE mem
16419         chunks instead of G_ALLOC_ONLY.
16420         (gtk_label_size_request): always alter requisition as passed and leave
16421         widget->requisition alone.
16422         (gtk_label_set_text): allow NULL strings.
16423         (gtk_label_new): likewise.
16424
16425 Wed Mar 24 09:24:03 1999  Tim Janik  <timj@gtk.org>
16426
16427         * gtk/gtkdrawingarea.[hc]: type/macro fixups.
16428
16429 Mon Mar 22 05:51:34 1999  Tim Janik  <timj@gtk.org>
16430
16431         * gtk/gtkbin.c (gtk_bin_draw): only redraw children that are visible
16432         *and* mapped (i.e. drawable).
16433         (gtk_bin_expose): only send exposes to drawable children.
16434
16435         * gtk/gtkbox.c (gtk_box_draw): only redraw children that are drawable.
16436         (gtk_box_expose): only send exposes to drawable children.
16437
16438         * gtk/gtkhscale.c (gtk_hscale_draw): 
16439         * gtk/gtkvscale.c (gtk_vscale_draw):
16440         hm, this is an ugly one. we first compute the size of our trough area
16441         here (window relative) and then check intersection with the draw_area
16442         which is parent relative because we're a NO_WINDOW widget, so we need
16443         to offset the trough area by allocation.x and allocation.y before the
16444         check. (this must not be done for the background area though, since
16445         that's already computed parent relative).
16446
16447 Mon Mar 22 00:41:39 1999  Lars Hamann  <lars@gtk.org>
16448
16449         * gtk/gtkclist.c (gtk_clist_unrealize): unmap clist if neccessary,
16450         unrealize title buttons.
16451
16452 Fri Mar 19 00:00:22 1999  Lars Hamann  <lars@gtk.org>
16453
16454         * gtk/gtkclist.c (gtk_clist_column_title_passive)
16455         (gtk_clist_column_title_active): 
16456         only connect/disconnect to GtkWidgetClass::event to block mouse events.
16457
16458         * gtk/gtkclist.c (vertical_timeout) (horizontal_timeout): 
16459         zero initialize event, removed superfluous gdk_window_get_pointer call
16460
16461         * gtk/gtklist.c (gtk_list_vertical_timeout)
16462         (gtk_list_horizontal_timeout): removed superfluous
16463         gdk_window_get_pointer call
16464
16465 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
16466
16467         * plugging problems reported by "Bruce Mitchener, Jr."
16468         <bruce@puremagic.com> due to a purify session.
16469
16470         * gtk/gtkstyle.c:
16471         (gtk_style_ref): 
16472         (gtk_style_unref): assert ref_count to be > 0.
16473
16474         * gtk/gtkclist.c (gtk_clist_set_cell_style): { 0 } initilaize
16475         the requisition.
16476         (gtk_clist_set_shift): likewise.
16477
16478         * gtk/gtklayout.c: introduce gtk_layout_finalize() to unref the
16479         adjustments.
16480
16481         * gtk/gtklist.c (gtk_list_horizontal_timeout): zero initialize the
16482         event before sending it and set send_event to TRUE (which needs to
16483         be done for *all* synthesized events).
16484         (gtk_list_vertical_timeout): likewise.
16485
16486         * gtk/gtktipsquery.c (gtk_tips_query_destroy): plug small memory
16487         leaks.
16488
16489         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set send_event
16490         to TRUE when synthesizing events.
16491
16492 [ *** end of merges from 1.2 *** ]      
16493         
16494 1999-11-21  Tor Lillqvist  <tml@iki.fi>
16495
16496         * gdk/gdkconfig.h: Remove, as this is a file generated by configure
16497         (or copied from gdkconfig.h.win32 on Win32, sigh).
16498
16499         * gdk/gdkprivate.h: Mark gdk_parent_root for export from DLL.
16500
16501         * gdk/gdk.c (gdk_keyval_convert_case): Fix typo.
16502
16503         * gdk/gdkgc.c (gdk_gc_alloc): Remove duplicated line.
16504
16505         * gdk/gdkconfig.h.win32: New file.
16506
16507         * gdk/win32/makefile.cygwin: Build just a static archive here.
16508
16509         * gdk/makefile.cygwin: New file. Get the win32-specific stuff
16510         for the DLL from the static archive built above.
16511
16512         * gdk/gdk.def: Moved here from the win32 subdirectory.
16513
16514         * gdk/win32/*: Adapt for the changed private struct organisation.
16515
16516         * gtk/makefile.{cygwin,msc}: Get gdk library from ../gdk now.
16517
16518 Sun Nov 21 16:44:35 1999  Stefan Jeske  <stefan@gtk.org>
16519
16520         * gtk/gtkspinbutton.c (gtk_spin_button_button_press): Added support 
16521         for wheel mice (buttons 4 and 5).
16522
16523 1999-11-18  Tor Lillqvist  <tml@iki.fi>
16524
16525         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Also for truecolor
16526         drawables use just the pixel field in the foreground and
16527         background GdkColor of the GdkGC.
16528
16529         gdk_gc_set_{fore,back}ground() are called in the GIMP with
16530         GdkColors containing uninitialized (red,green,blue) fields, and
16531         just the pixel field filled in, and furthermore in the
16532         visual-dependent format as returned by gdk_rgb_xpixel_from_rgb().
16533         It thus turns out that we really don't need to have the full
16534         GdkColor for fg and bg in GdkGCWin32Data after all. Will change
16535         it later to have just the pixel values.
16536
16537 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
16538
16539         * docs/gtkfaq.sgml: s/gtk_main_iteration/g_main_iteration/
16540
16541 Sat Nov 13 22:30:29 GMT 1999 Tony Gale  <gale@gtk.org>
16542
16543         * docs/gtkfaq.sgml: threads example from Erik Mouw.
16544         New question on GtkLabel background colors.
16545
16546         * docs/gtk_tut.sgml:
16547           - Correct the example code callback
16548             function definitions.
16549           - Update the gtkdial example code, from Frans van Schaik.
16550           - Update setselection.c to current API.
16551
16552         * examples/Makefile examples/*/*.c: Update to code
16553         listed in tutorial.
16554
16555 1999-11-10  Tor Lillqvist  <tml@iki.fi>
16556
16557         * gdk/win32/gdkfont-win32.c: Fix a couple of bugs. The Unicode
16558         subrange table (from the "Developing International Software for
16559         WIndows 95 and Windows NT" book) was missing the Hangul syllable
16560         block... Get the loaded font's charset correctly.
16561
16562         (Note that this, and the other *-win32.c files, still really are
16563         the old ones, the win32 subdirectory is not ready for compilation
16564         yet after the reorg.)
16565
16566 Wed Nov 10 17:26:49 GMT 1999 Tony Gale  <gale@gtk.org>
16567
16568         * gtk/gtkclist.c: Fix off-by-one bug in parameter
16569         check.
16570
16571 Wed Nov 10 12:12:03 1999  Owen Taylor  <otaylor@redhat.com>
16572
16573         * gdk/x11/gdkinput-{x11,xfree}.c: Call XFreeDeviceState()
16574         on results of XQueryDeviceState().
16575
16576 Mon Nov  8 16:40:43 1999  Owen Taylor  <otaylor@redhat.com>
16577
16578         * gtk/gtkwidget.c: Substitute gdkx.h => gdkprivate.h since
16579         we need to accesss only ->children. We need an accessor
16580         for the children.
16581
16582         * gtk/gtkhandlebox.c gtk/testgtk.c: Substitute G
16583         DK_ROOT_PARENT() => NULL, in call to gtk_window_get_pointer()
16584         to get rid of gdkx.h include.
16585         
16586         * gtk/gtkctree.c: Get rid of #include <gdk/gdkx.h>
16587         and random references to 'None'.
16588
16589         * gtk/gtkclist.c gtk/gtkeditable.c gtk/gtkpreview.c
16590         Get rid of unused #include <gdk/gdkx.h>
16591
16592         * gtk/gtkrc.c gtk/gtkmain.c: Get rid of #include <gdk/gdkx.h>
16593         gdkx.h is _X_ specific stuff. GDK_WINDOWING comes from
16594         gdkconfig.h.
16595
16596 1999-11-08  Tor Lillqvist  <tml@iki.fi>
16597
16598         * gdk/win32/gdkdraw.c
16599         * gdk/win32/gdkfont.c
16600         * gdk/win32/gdkgc.c: Various minor cleanups and bugfixes
16601         following yesterday's changes. (Unrelated to Owen's reorg.)
16602
16603 Mon Nov  8 16:18:25 1999  Owen Taylor  <otaylor@redhat.com>
16604
16605         * gdk/x11/gdkinput-gxi.c: Add missing include,
16606           fix GdkWindowPrivate => GdkDrawablePrivate.
16607
16608         * gdk/x11/gdkinputprivate.h: include <X11/Xlib.h>.
16609
16610         * gdk/x11/Makefile.am (xinput_sources): Add missing
16611         backslash to fix building with --with-xinput=none
16612
16613 Mon Nov  8 14:47:04 1999  Owen Taylor  <otaylor@redhat.com>
16614
16615         Move all X specific code into the x11/ directory.
16616         Aside from shuffling things around, did the following:
16617
16618        * gdk/gdkprivate.h gdk/gdk.h gdk/x11/gdkmain-x11.h: Add
16619          gdk_arg_context_* - a simple argument parsing system
16620          in the style of popt.
16621
16622        * gdk/gdkdrawable.[ch] gdk/gdkprivate.h gdk/gdkwindow.[ch]
16623          gdk/x11/gdkprivate-x11.h:
16624          Remove X specific stuff from GdkDrawable and GdkWindowPrivate - 
16625          add ->klass and ->klass_data fields. The klass_data
16626          field points to an auxilliary structure that is
16627          windowing system dependent.
16628
16629        * gdk/gdkfont.c: Make most of the measurement functions
16630          simply wrappers around gdk_text_extents().
16631
16632        * gdk/gdkfont.c gdk/gdkprivate.h gdk/x11/gdkfont-x11.c: Add a 
16633          _gdk_font_strlen() function that hides the weird
16634          behavior in gtk+-1.[02] where a string is interpreted
16635          differently for 8-bit and 16-bit fonts.
16636
16637        * gdk/gdkevents.c: Add a new function gdk_event_button_generate()
16638          to store common code for synthesizing double/triple
16639          press events.
16640         
16641        * gdk/gdkgc.[ch]: Virtualize in the same way as gdkdrawable.h.
16642          Make all the function that modify an existing GC
16643          simply wrappers around gdk_gc_set_values().
16644          
16645        * gdk/gdkcc.[ch]: Moved into x11/ directory in preparation
16646          for throwing out later.
16647
16648        * gdk/gdkfont.c gdk/gdkimage.c gdk/gdkcolor.c: Change GdkFontPrivate,
16649          GdkImagePrivate and GdkColormapPrivate to have a
16650          windowing system dependent part (GdkFontPrivateX etc.)
16651          that "derives" from the system-independent part.
16652
16653        * configure.in gdk/x11/Makefile.in gdk/x11/gdkinput*.c:
16654          Got rid of the included-source-files for XInput in
16655          favor of automake conditionals. (Which didn't exist
16656          when XInput support was originally added.)
16657
16658        * gdk/gdkrgb.c: Remove the visual id from the debugging
16659          statements since that is X11 specific; print out
16660          type/depth info instead.
16661          
16662
16663 Wed Nov  3 18:14:49 1999  Owen Taylor  <otaylor@redhat.com>
16664
16665         * gdk/x11/gdkfont-x11.c (gdk_font_load): Ref fonts when
16666         loading duplicates of hashed fonts.
16667
16668         * gdk/gdk.c (gdk_keysym_convert_case): rename
16669         gdk_XConvertCase to gdk_keysym_convert_case, allow
16670         results to be NULL in the GTK+ style.
16671
16672         * gdk/gdkcompat.h: Started compatibility header
16673         for renames.
16674
16675 1999-11-07  Tor Lillqvist  <tml@iki.fi>
16676
16677         * gdk/win32/gdkprivate.h: New font private structures, related to
16678         fontsets.
16679
16680         * gdk/win32/gdkfont.c: New functions gdk_font_list_new() and
16681         gdk_font_list_free(). On X11, will just be wrappers to
16682         XListFonts() and XFreeFontNames(). On Win32, the code previously
16683         in gtkfontsel.c is now here.
16684
16685         New function gdk_font_xlfd_create(). On X11 will get the FONT
16686         property of the font (for GDK_FONT_FONTs), or call
16687         XBaseFontNameListOfFontSet (for GDK_FONT_FONTSETs), on Win32
16688         builds a XLFD style name from the font information in the LOGFONT
16689         struct(s).
16690
16691         New function gdk_font_xlfd_free(), which correspondingly frees the
16692         string returned by gdk_font_xlfd_create().
16693
16694         Implement fontsets on Win32. Add a function that iterates over a
16695         wide char string and calls a callback function for each substring
16696         of wide chars from the same Unicode subrange (and thus probably
16697         available in the same real font).
16698
16699         Improve the XLFD emulation a bit.
16700
16701         * gdk/win32/gdkim.c (gdk_nmbstowchar_ts): Small bugfix.
16702
16703         * gdk/win32/gdkevents.c: Workaround for suspected bug on Win2k
16704         Beta3, WM_IME_CHAR messages don't seem to contain the composed
16705         multi-byte char as with the Active IMM on Win9x. Oh well, handle
16706         WM_IME_COMPOSITION with GCS_RESULTSTR instead, use
16707         ImmGetCompositionStringW() to get the composed Unicode chars.
16708
16709         * gdk/win32/gdkgc.c
16710         * gdk/win32/gdkdraw.c: Changes needed because of the font private
16711         struct changes.
16712
16713         * gdk/win32/gdk.def: Add the new functions.
16714
16715 1999-11-04  Tor Lillqvist  <tml@iki.fi>
16716
16717         * config.h.win32: Don't define HAVE_DIMM_H if MSC, as you have to
16718         get the Platform SDK to get <dimm.h>.
16719
16720         * gdk/win32/gdkevents.c: More event handling fixes and
16721         simplification. Never generate motion events with is_hint true. We
16722         used to do that on bogus grounds earlier. Windows sends
16723         WM_MOUSEMOVE messages on button events even if the mouse hasn't
16724         moved, ignore these.
16725
16726         * gdk/win32/gdkfont.c: Load all fonts as (pretended) fontsets.
16727
16728         * gdk/win32/gdkglobals.c
16729         * gdk/win32/gdkprivate.h: Define a typedef for the pointer to
16730         the TrackMouseEvent function, and use it.
16731
16732         * gdk/win32/gdkwindow.c: Terminate widechar string with a zero
16733         char before calling WideCharToMultiByte in order to get a string
16734         for the window title.
16735
16736         * gdk/win32/gdkdnd.c: Some more random hacking, ifdeffed out.
16737
16738         * gdk/win32/gdk.def: Remove obsolete functions.
16739
16740         * gdk/win32/makefile.{cygwin,msc}: Remove gdkcompat.{o,obj}. Add
16741         /nodefaultlib and /defaultlib switches.
16742
16743         * gtk/gtkrc.c: s/gwin_getlocale/g_win32_getlocale/.
16744
16745 1999-10-31  Tor Lillqvist  <tml@iki.fi>
16746
16747         * gdk/gdkkeysyms.h: Add new keysyms from X11R6.4 (including
16748         EuroSign).
16749
16750         * gdk/gdktypes.h: Add note about wchar_t not necessarily being the
16751         same type as GdkWChar, especially on Win32.
16752
16753         * gdk/win32/*.c: Change gdk_root_parent to be a pointer.
16754
16755         * gdk/win32/*.c: Assume all strings are UTF-8. Convert to Unicode
16756         before passing to Windows GDI for drawing etc. Convert to the
16757         system default codepage before passing to Windows as window
16758         titles.
16759
16760         * gdk/win32/gdkprivate.h: Add more fields to GdkWindowPrivate to
16761         support changing input locale on the fly.
16762
16763         * gdk/win32/gdkevent.c: Support input language (keyboard locale)
16764         on-the-fly changes. Convert incoming characters from the current
16765         codepage to Unicode (and then to a UTF-8 multi-byte string) based
16766         on the current input language. Use keysym<->Unicode mapping tables
16767         and functions borrowed from xterm sources.
16768
16769         Support IMEs (Input Method Editors) for CJK languages. On non-CJK
16770         editions of Win9x, use the ActiveX-based Active IMM (Input Method
16771         Manager) if available. IMEs and the Active IMM are available under
16772         the disguise of Chinese, Korean and Japanese support for IE and
16773         Outlook Express from "Windows Update" for Win98. On Win2k, the CJK
16774         support is present in all editions (as long as you install it).
16775
16776         Call DispatchMessage from gdk_events_queue() (and thus
16777         gdk_WindowProc()), instead of duplicating the code in
16778         gdk_WindowProc().
16779
16780         Reworked the grab handling and propagation code, factored out
16781         duplicated code snippets into separate functions. Other cleanups,
16782         too.
16783
16784         * gdk/win32/surrogate-dimm.h: Provide just the bits we need from
16785         the <dimm.h> header describing the Active IMM.
16786
16787         * gdk/win32/gdkfont.c: Pretend to support fontsets, but so far
16788         just do the same as for "single" fonts.
16789
16790         * gdk/win32/gdk.c: Call CoInitialize() (COM initialisation) from
16791         gdk_init_check, and CoUninitialize() from gdk_exit_func. Handle
16792         the new keysyms from gdkkeysyms.h.
16793
16794         * gtk/gtkfontsel.c (Win32): Load the font for the preview as a
16795         fontset, so that gtkentry uses wide characters.
16796
16797         * gtk/gtkrc.c (Win32): Get the locale with gwin_getlocale(). Call
16798         GTk+'s system directory "gtk+", not "gtk".
16799
16800 Sat Oct 30 13:17:18 BST 1999 Tony Gale <gale@gtk.org>
16801
16802         * docs/gtkfaq.sgml: FAQ update
16803
16804 1999-10-21  Tor Lillqvist  <tml@iki.fi>
16805
16806         * gdk/win32/gdkprivate.h: Add more font private data.
16807
16808         * gdk/win32/gdkfont.c
16809         * gdk/win32/gdkdraw.c: Revamped handling of multi-byte charset
16810         fonts and strings. Now works much better. You still have to
16811         have a correct font selected, though. No fontset emulation yet.
16812
16813 1999-10-19  Tor Lillqvist  <tml@iki.fi>
16814
16815         * gtk/maketypes.awk: Use G_OS_WIN32.
16816
16817         * gtk/gtk.def: Add some missing entry points. Also some non-public
16818         ones, but PyGTK porter claims to need them.
16819
16820         * gtk/makefile.{cygwin,msc}: Drop some unneeded headers from the
16821         built-in type generation.
16822
16823 1999-10-14  Tor Lillqvist  <tml@iki.fi>
16824
16825         * gdk/win32/gdkdraw.c (gdk_draw_text_wc): Don't use TextOutW for
16826         GDK_FONT_FONT fonts (which is all we have for now, we don't
16827         emulate fontsets). The X11 version uses plain XDrawString in that
16828         case, too. The string passed to gdk_draw_text_wc seems to be in
16829         fact (at least, when used by gtkentry and gtktext) either in a
16830         single-byte charset, or a DBCS. Not Unicode.
16831
16832         This fixes the problem in gtkfontsel, where even if you had
16833         selected a font with a non-Latin1 charset (windows-greek, for
16834         instance), the preview still used Latin-1 glyphs.
16835
16836         * gdk/win32/gdkfont.c (gdk_text_width_wc): Similar change. Don't
16837         use GetTextExtentPoint32W, use GetTextExtentPoint32A.
16838         (gdk_font_load): Recognize the demibold etc weights, even if we
16839         don't have the corresponding constants in the headers.
16840         (gdk_font_hash_insert): Use same hash mechanism as in the X11
16841         version. Should save font resources a bit, when we don't have
16842         multiple HFONTs for the same font.
16843
16844         * gdk/win32/gdkprivate.h: Add the names field as in the X11
16845         version.
16846
16847 1999-10-11  ERDI Gergo  <cactus@cactus.rulez.org>
16848
16849         * gdk/gdk.c (gdk_beep): Modified the XBell call to use the default
16850         X values
16851
16852 1999-10-09  ERDI Gergo  <cactus@cactus.rulez.org>
16853
16854         * gtk/gtktoolbar.h, gtk/gtktoolbar.c: Added horizontal icon/text
16855         layout support (as mentioned on
16856         http://www.jcinteractive.com/gnome-ui/software/widgets/)
16857
16858 Wed Oct  6 12:46:17 PDT 1999 Manish Singh <yosh@gimp.org>
16859
16860         * gtk/fnmatch.c
16861         * gtk/gtkfilesel.c: s/G_HAVE_CYGWIN/G_WITH_CYGWIN/
16862
16863 1999-10-05  Jesus Bravo Alvarez  <jba@pobox.com>
16864
16865         * configure.in (ALL_LINGUAS): Added Galician (gl)
16866
16867 1999-10-05  Tor Lillqvist  <tml@iki.fi>
16868
16869         * gdk/win32/*.[ch]: Corresponding changes as in X11 backend.
16870
16871         * gdk/win32/gdkcompat.c: New file, actually provide an
16872         implementation for the deprecated functions. (Just temporarily.)
16873
16874         * gtk/gtkfilesel.c: Fix an #ifdef syntax botch.
16875
16876         * gtk/makefile.{cygwin,msc}: Update gdk_headers.
16877
16878         * gdk/win32/gdk.def gtk/gtk.def: Updates.
16879
16880 1999-10-05  Kjartan Maraas  <kmaraas@online.no>
16881
16882         * configure.in: Added "uk" to ALL_LINGUAS.
16883         
16884 Mon Oct  4 11:57:11 PDT 1999 Manish Singh <yosh@gimp.org>
16885
16886         * configure.in: correct checking for BeOS check
16887
16888         * gdk/gdktypes.h
16889         * gtk/fnmatch.c
16890         * gtk/gtkfilesel.c
16891         * gtk/gtkitemfactory.c
16892         * gtk/gtkmain.[ch]
16893         * gtk/gtkrc.c: use G_OS_WIN32 and G_HAVE_CYGWIN #defines
16894
16895 Mon Oct  4 16:16:53 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
16896
16897         * gtk/gtkrc.{bg,iso88591[345]}: add gtkrc files for some new charset
16898         encodings: iso-8859-13 (for Lithuanian), iso-8859-14 (used by celtic
16899         languages), iso-8859-15 (used in Estonia) and microsoft-cp1251 (used
16900         by Bulgarian). 
16901
16902 Sun Oct  3 18:13:44 1999  Owen Taylor  <otaylor@redhat.com>
16903
16904         * gtk/gtkwidget.c (gtk_reset_shapes_recurse): 
16905         Fix a reference to window_private->destroyed.   
16906
16907         * gtk/gtkplug.c (gtk_plug_realize): Fix up a direct
16908         (ugly) setting of an internal GdkWindow member to use
16909         a _slightly_ cleaner macro.
16910
16911         * gdk/gdkprivate.h: Split GdkWindowPrivate into
16912         GdkDrawablePrivate and GdkWindowPrivate.
16913         Add extra macros for accessing GDK_DRAWABLE_ components.
16914
16915         * *.[ch]: Massive adjustments for the above, use the
16916         new macros in a lot of places.
16917
16918 Sun Oct  3 15:16:24 1999  Owen Taylor  <otaylor@redhat.com>
16919
16920         * gdk/gdktypes.h: Make GdkDrawable the base type,
16921         not GdkWindow.
16922
16923 Sun Oct  3 15:08:44 1999  Owen Taylor  <otaylor@redhat.com>
16924
16925         * gdk/gdkdraw.c (gdk_drawable_get_data): Added new function.
16926
16927 Sun Oct  3 14:26:15 1999  Owen Taylor  <otaylor@redhat.com>
16928
16929         * gdk/gxid* gdk/x11/gxid*: Move files into x11 subdirectory.
16930
16931 Sun Oct  3 14:16:23 1999  Owen Taylor  <otaylor@redhat.com>
16932
16933         * gdk/gdkdrawable.h: Include gdk/gdkdrawable.h with
16934         gdk/ prefix. (Pointed out by chak@is.tsukuba.ac.jp)
16935
16936         * configure.in gdk/Makefile.am x11/: create x-specific subdirectory.
16937
16938         * docs/gtk-config.1: Now autogenerated.
16939         * docs/Changes-1.4.txt: started
16940         
16941 1999-10-03  Tor Lillqvist  <tml@iki.fi>
16942
16943         * gdk/gdkimage.h gdk/gdkpixmap.h: Change GDK_WINDOWING_WIN32 usage
16944         to #ifdef also here.
16945
16946         * gdk/win32/*.h gdk/win32/*.c: Make corresponding changes as those
16947         Owen did to the X11 backend.
16948
16949         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Fix it again, don't use
16950         ScrollWindowEx when blitting inside a window, it can't be correct
16951         in the general case.
16952
16953         * gdk/win32/gdkevents.c: Don't handle WM_SIZING, handling
16954         WM_GETMINMAXINFO is easier.
16955
16956         * gdk/win32/gdkimage.c (gdk_image_new): Create new image with
16957         depth equal to the bitspixel value, not the visual's depth.
16958
16959         * gdk/win32/gdkvisual.c (gdk_visual_init): Set the visual's depth
16960         to 24 even if the bitspixel value is 32.
16961
16962         * gdk/gdkrgb.c (gdk_rgb_select_conv): After the above change, no
16963         need to check for depth==32 when bpp==32, depth will always be 24.
16964
16965 Fri Oct  1 18:03:36 1999  Owen Taylor  <otaylor@redhat.com>
16966
16967         * docs/Changes-1.4.txt: Started
16968         
16969         * gtk/Makefile.am (gdk_headers): Include all the new headers.
16970
16971         * gdk/*.h gdk/*.c: Split gdk.h into lots of itty-bitty little pieces.
16972         
16973         * gdk/gdkprivate.h gdk/gdkcc.c: Moved GdkColorContext private
16974         into C file.
16975         
16976         * gdkinput.h gdkinputprivate.h - renamed the internal gdkinput
16977         header to gdkinputprivate.h.
16978
16979         * gdk/gdk.h gdk/gdk.c: Removed gdk_time* functions which have been
16980         unused since before 1.2.
16981
16982 1999-09-30  Tor Lillqvist  <tml@iki.fi>
16983
16984         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): On Win32,
16985         expand possible hex escapes in the font family (put there by
16986         logfont_to_xlfd if the font name isn't a legal XLFD font family,
16987         mainly if it contains slashes). (gtk_font_selection_create_xlfd):
16988         On Win32, add hex escapes here, too.
16989
16990 Wed Sep 29 19:55:35 1999  Owen Taylor  <otaylor@redhat.com>
16991
16992         * */*.[ch]: Changed from #if GDK_WINDOWING == GDK_WINDOWING_X11
16993         to #ifdef GDK_WINDOWING_X11.
16994
16995 [ Merges from gtk-1-2 ]
16996
16997 Wed Sep  8 07:13:29 1999  Tim Janik  <timj@gtk.org>
16998
16999         * configure.in: fixed "GNU Make" check to pass with new make version
17000         3.77.95.
17001
17002 Fri Sep  3 16:04:41 1999  Tim Janik  <timj@gtk.org>
17003
17004         * gtk-config.in (--version): don't echo @GTK_VERSION@, but
17005         @GTK_MAJOR_VERSION@.@GTK_MINOR_VERSION@.@GTK_MICRO_VERSION@, so the
17006         AM_PATH_GTK() macros don't get confused by the -pre1.
17007
17008 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
17009
17010         * configure.in (REBUILD): Change check for perl5
17011           to check explicitely for v >= 5.002. (5.001
17012           does not work with our scripts.)
17013
17014 Wed Aug 25 15:45:46 1999  Tim Janik  <timj@gtk.org>
17015
17016         * configure.in: evaluate $PERL for the perl version check. added
17017         --disable-rebuilds to give the user an option to completely disable
17018         any source autogeneration rules.
17019
17020 Mon Aug 23 23:16:14 1999  Tim Janik  <timj@gtk.org>
17021
17022         * configure.in: evaluate $ac_make when checking for GNU Make.
17023
17024 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
17025
17026         * docs/Makefile.am: added generation.txt.
17027
17028         * Makefile.am: require automake 1.4, build README from README.in and
17029         INSTALL from INSTALL.in in dist-hook.
17030         
17031         * README.in:
17032         * INSTALL.in: new files to autogenerate README and INSTALL from.
17033
17034         * configure.in: figure whether we have GNU Make
17035
17036         * docs/generation.txt: minor additions/corrections.
17037
17038 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
17039
17040         * docs/gtkfaq.sgml: FAQ Update
17041
17042 July 30, 1999 Elliot Lee <sopwith@redhat.com>
17043         
17044         * configure.in: Fix autoconf warnings about cross compilation by
17045         trying to provide sane defaults for AC_TRY_RUN.
17046
17047 Fri Jul 16 22:20:21 PDT 1999 Manish Singh <yosh@gimp.org>
17048
17049         * ltconfig
17050         * ltmain.sh: upgrade to libtool 1.3.3
17051
17052 Thu Jul  8 11:30:18 1999  Owen Taylor  <otaylor@redhat.com>
17053
17054         * INSTALL: Indicate that the --with-glib= configure
17055         time flag is unsupported.
17056
17057 Mon Jul  5 20:36:03 1999  Owen Taylor  <otaylor@redhat.com>
17058
17059         * docs/generation.txt: Added a file that gives
17060         documenation about the autogeneration process for
17061         various autogenerated files.
17062         
17063 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
17064
17065         * configure.in (LIBS): Look for libgmodule in the
17066         right location.
17067
17068 Thu Jun 17 13:57:31 1999  Owen Taylor  <otaylor@redhat.com>
17069
17070         * docs/gtk_tut.sgml: Removed references to
17071         code examples in my directory on gtk.org as
17072         they should all be in the tutorial now.
17073
17074         * docs/gtk_tut.sgml: Added sources for dial-test
17075         and scribble-xinput programs that were previously
17076         missing.
17077
17078 Fri Jun  4 00:08:59 1999  Owen Taylor  <otaylor@redhat.com>
17079
17080         * TODO: Added entry about menu keyboard navigation, removed
17081         some finished items.
17082
17083 Mon May 31 00:11:24 1999  Owen Taylor  <otaylor@redhat.com>
17084
17085         * acinclude.m4: Standardize on func_dgettext
17086         not func_gettext, so that the checks for dgettext
17087         actually are paid attention to.
17088
17089 Wed May  5 10:47:54 1999  Owen Taylor  <otaylor@redhat.com>
17090
17091         * configure.in (LIBS): Add $INTLLIBS into $LIBS
17092         directly, rather than repeating the checks for
17093         gettext.
17094
17095         * INSTALL: Added information about gettext and
17096         NLS support.
17097
17098         * acinclude.m4 (LIBM): Check for dgettext, not
17099         just gettext. This should hopefully fix things wrt
17100         systems with old versions of GNU gettext installed.
17101
17102 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
17103
17104         * configure.in (LIBS): Look for libgmodule in the
17105         right location.
17106
17107 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
17108
17109         * autogen.sh: add --enable-maintainer-mode
17110
17111         * configure.in: set ACLOCAL="$ACLOCAL $ACLOCAL_FLAGS"
17112
17113 Wed Mar 24 23:03:49 CST 1999 Shawn T. Amundson <amundson@gtk.org>
17114
17115         * docs/gtk-config.1.in:
17116           docs/Makefile.am:
17117           configure.in: gtk-config is now generated.
17118
17119         * docs/gtk-config.1: Removed, now generated.
17120
17121 Thu Sep 23 17:59:59 1999  Tim Janik  <timj@gtk.org>
17122
17123         * gdk/gdkevents.c (gdk_event_translate): grr, even if Gdk doesn't
17124         handle CreateNotify itself, still put out a debuging message for
17125         --gdk-debug=events. made the ReparentNotify debugging message more
17126         verbose.
17127         wrap xcoords translation for ConfigureEvents into an error trap,
17128         a destroy event may already be pending, and in that case, the
17129         actuall coordinate values are not at all critical.
17130
17131 Sat Sep 18 22:24:15 1999  Owen Taylor  <otaylor@redhat.com>
17132
17133         * gdk/gdkcc.c: Stop leaking the color_hash all over
17134         the place. Simplify and improve the logic.
17135
17136 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
17137
17138         * gdk/gdk.h, gdk/gdkcolor.c: make return types (gint or gboolean)
17139         for prototypes and function implementations consistent (reported
17140         by Tomas Ogren).
17141
17142 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
17143
17144         * gdk/gdkevents.c (gdk_event_translate): tell if expose events have
17145         send_event set in debugging output.
17146         (gdk_compress_exposures): default initialize the event so we don't
17147         operate on bogus values (namely send_event).
17148
17149 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
17150
17151         * gdk/gdkwindow.c: When we receive an unexpected
17152         destroy notify on one of our windows, don't just
17153         warn about it, also mark our windows as destroyed.
17154
17155 Sun Sep  5 08:10:53 1999  Owen Taylor  <otaylor@redhat.com>
17156
17157         * gdk/gdkfont.c (gdk_font_hash_insert): Add
17158           name => font and name => fontset hashes. The 
17159           name => fontset hash is a _big_ win since we
17160           weren't previously caching fontsets at all and loading
17161           fontsets is expensive. The name => font hash
17162           is less of a win, but it does save us from doing
17163           repeated XQueryFont calls on the same font.
17164
17165         * gdk/gdkprivate.h (struct _GdkFontPrivate): Add a names
17166           list so we can remove font/fontset from hash.
17167
17168 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
17169
17170         * gdk/gdkproperty.c (gdk_atom_intern): Remove useless
17171           and slightly confusing test. [ XInternAtom (,,TRUE)
17172           will never return None ].
17173
17174 Sat Sep  4 08:39:26 1999  Owen Taylor  <otaylor@redhat.com>
17175
17176         * gdk/gdkwindow.c (gdk_window_set_geometry_hints)
17177           gdk/gdkwindow.c (gdk_window_set_hints):
17178
17179         Don't omit setting the properties if flags == 0 -
17180         there may be an existing set of properties there
17181         already. (Very old bug. Would it be better to
17182         delete the property instead?)
17183
17184         * gdk/gdkselection.c (gdk_selection_property_get): Fix 
17185           spelling error in comment.
17186
17187 Wed Sep  1 14:05:30 1999  Owen Taylor  <otaylor@redhat.com>
17188
17189         * gdk/gdkimage.c (gdk_image_new): Use gdk_error_trap_push()
17190           to avoid stomping over gdk_error_warnings.
17191
17192         * gdk/gdkimage.c (gdk_image_new): compute image->bpp
17193           as (bits_per_pixel + 7) / 8. This gives the same
17194           result as before for multiples of 8, but actually
17195           a "reasonable" value for 1bit or 4bit displays.
17196
17197 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
17198
17199         * gdk/Makefile.am: minor cleanups, strip spaces on build rules for
17200         GNU Make.
17201
17202 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
17203
17204         * gdk/gdkevents.c (gdk_event_translate): give a debugging note when
17205         discarding configure events.
17206
17207 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
17208
17209         * gdk/gdkpixmap.c (gdk_pixmap_unref): g_return_if_fail() the
17210         refcount is greater than zero.
17211
17212         * gdk/gdkwindow.c (gdk_window_unref): Likewise.
17213
17214         * gdk/gdkfont.c (gdk_font_unref): Likewise.
17215
17216         * gdk/gdkgc.c (gdk_gc_unref): Likewise.
17217
17218         * gdk/gdkdnd.c (gdk_drag_context_unref): Likewise.
17219
17220 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
17221
17222         * gdk/gdkproperty.c (gdk_property_get): Fix assumption
17223         that format 32 => sizeof(item) == 4. It really is
17224         sizeof(long).
17225
17226 Tue Jun 29 23:02:42 1999  Owen Taylor  <otaylor@redhat.com>
17227
17228         * gdk/gdk.c (gdk_x_error / gdk_x_io_error): Don't
17229         core dump at all on X IO errors, only core dump
17230         if --enable-debug for X errors.
17231
17232 Thu Jun 24 17:06:23 1999  Tim Janik  <timj@gtk.org>
17233
17234         * gdk/gdkevents.c (gdk_event_translate): removed old ""Got event for
17235         unknown window:" message. disabled ConfigureNotify discarding code,
17236         because it led to events being processed out of order.
17237
17238 Thu Jun 24 12:22:02 1999  Tim Janik  <timj@gtk.org>
17239
17240         * gdk/gdkglobals.c: preinitialize gdk_error_code to 0.
17241
17242         * gdk/gdkevents.c (gdk_event_send_client_message_to_all_recurse): since
17243         we export this function, supress error warnings and don't reset the
17244         error code in the first half of this function.
17245
17246         * gdk/gdk.c (gdk_x_error): set gdk_error_code to the actuall X error
17247         code (instead of just -1) so gdk_error_trap_pop() reveals something
17248         actually informative about the error that happened.
17249
17250         * gdk/*.c:
17251         don't rely on gdk_error_code being -1 if an error occoured, but just
17252         gdk_error_code != 0.
17253
17254 Thu Jun 24 11:50:07 1999  Tim Janik  <timj@gtk.org>
17255
17256         * gdk/gdkevents.c (gdk_event_apply_filters): advance the filter list
17257         pointer *before* invoking the filter function, so we at least don't
17258         crash if a filter is removed that is currently executed. window filters
17259         *really* need to be made truely reentrant at some point.
17260
17261 Mon Jun 14 11:10:15 1999  Tim Janik  <timj@gtk.org>
17262
17263         * gdk/gdkevents.c (gdk_event_translate): print the atom name in the
17264         PropertyNotify debug messages.
17265
17266 Wed May  5 22:51:06 1999  Owen Taylor  <otaylor@redhat.com>
17267         
17268         Patch from Sung-Hyun Nam <namsh@lgic.co.kr>
17269         
17270         * gdk/gdkim.c: Fix cut-and-paste errors for 
17271         x/y and PreeditAttributes/StatusAttributes.
17272
17273 Wed May  5 22:24:21 1999  Owen Taylor  <otaylor@redhat.com>
17274
17275         * gdk/gdkwindow.c (gdk_window_set_geometry_hints): Change
17276         G_MAXINT to 2^16 to alleviate overflow problems in
17277         various window managers.
17278
17279 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
17280
17281         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
17282         for fontsets.
17283
17284 Wed May  5 12:42:01 1999  Owen Taylor  <otaylor@redhat.com>
17285
17286         * gdk/gdkwindow.c (gdk_window_set_geometry_hints):
17287         Initialize size_hints.x and size_hints.y because kwm
17288         brokenly pays attention to them.
17289         (Bug #1181 -  Lars Heete <hel@admin.de>)
17290
17291 Wed May  5 11:38:56 1999  Owen Taylor  <otaylor@redhat.com>
17292
17293         * gdk/gdkrgb.c (gdk_rgb_choose_visual): Free the 
17294         return value of gdk_list_visuals(). 
17295         (Bug #1193 - Morten Welinder <terra@diku.dk>)
17296
17297 Tue May  4 11:12:56 PDT 1999 Manish Singh <yosh@gimp.org>
17298
17299         * gdk/gdkim.c (gdk_im_real_open): cast the return value of
17300         XSetIMValues to (void *) when comparing to NULL, to workaround
17301         the problem of some compilers barfing since older X headers don't
17302         have the prototype for it.
17303
17304 Mon Apr 19 10:11:12 1999  Owen Taylor  <otaylor@redhat.com>
17305
17306         * gdk/gdkcolor.c (gdk_colormap_new): Fix memory leak
17307         for pseudocolor where colormap->colors was double
17308         allocated.
17309
17310         * gdk/gdkcolor.c (gdk_colormap_alloc1): Store the
17311         color value in the hash table with the pixel filled
17312         in so when we do later hash table lookups, the color
17313         value is correct.
17314         
17315 Sun May  2 15:29:45 PDT 1999 Manish Singh <yosh@gimp.org>
17316
17317         * gdk/gdkdraw.c (gdk_draw_lines): check private->destroyed before
17318         making the call
17319
17320 Tue Apr 27 11:17:35 1999  Owen Taylor  <otaylor@redhat.com>
17321
17322         * gdk/gdkdnd.c (xdnd_set_{targets,actions}): Fix leak
17323         pointed out by Morten Welinder <terra@diku.dk>.
17324
17325 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
17326
17327         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
17328           default filter from the list
17329
17330 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
17331
17332         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
17333           default filter from the list
17334
17335 Fri Apr 16 20:41:43 PDT 1999 Manish Singh <yosh@gimp.org>
17336
17337         * gdk/gdk.c: #include "gdkkeysyms.h" for gdk_XConvertCase #defines
17338
17339         * gtk/gtkfontsel.c (gtk_font_selection_create_xlfd): use
17340         g_strdup_printf instead of calcing the length separately
17341
17342 Tue Apr 13 02:49:33 1999  Owen Taylor  <otaylor@redhat.com>
17343
17344         * gdk/gdkwindow.c: removed some silly #ifdef HAVE_CONFIG
17345         that we don't do in many other places. (Fixing duplicate 
17346         #include of config.h)
17347
17348         * gdk/gdkevents.c: include gdkinput.h _after_ config.h.
17349         Otherwise, #ifndef XINPUT_NONE check in the latter
17350         doesn't work. (Bug #546)
17351
17352 Sun Apr 11 14:38:03 1999  Tim Janik  <timj@gtk.org>
17353
17354         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): check for color
17355         "None" case insensitive.
17356
17357 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
17358
17359         * gdk/gdkselection.c: 
17360         Add error traps so if the other end of the connection
17361         dies, we survive.
17362
17363 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
17364
17365         * gdk/gdkdnd.c (gdk_drag_motion): Separate out the
17366         dest_xid field into two fields - one for the window
17367         to send in messages, one to indicate the last looked
17368         up window for caching purposes. This is needed, so
17369         that Leave messages get the correct window.
17370
17371 Mon Apr  5 13:21:30 1999  Owen Taylor  <otaylor@redhat.com>
17372
17373         * gdk/gdkevents.c (gdk_event_check, gdk_event_prepare):
17374         Fix warning created by people mucking around
17375         with the gsource API.
17376
17377         * gdk/gdkevents.c (gdk_io_invoke, gdk_input_add_full):
17378         Change mapping between GIOCondition and GdkInputCondition
17379         to match the way the Linux kernel does it. This should
17380         fix problems where closed pipes were no longer signalling
17381         GDK_INPUT_READ on systems with a native poll().
17382
17383 Mon Apr  5 17:11:57 1999  Owen Taylor  <otaylor@redhat.com>
17384
17385         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): Check 
17386         explicitly for the string "None" - it is in the XPM
17387         spec and some servers treat unknown colors in odd ways
17388         (like asking the user!)
17389
17390 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
17391
17392         * gdk/gdkevents.c: made "->" into a "." of previous change so
17393         it compiles
17394
17395 Thu Apr  1 18:41:25 1999  Owen Taylor  <otaylor@redhat.com>
17396
17397         * gdk/gdkevents.c (gdk_compress_exposures): Set the
17398         window field of the event structure before calling
17399         user filters.
17400
17401 1999-03-31  Federico Mena Quintero  <federico@nuclecu.unam.mx>
17402
17403         * gdk/gdk.c (gdk_init_check): Use False as the last argument to
17404         XInternAtom() here.  This is a particularly Old And Nasty(tm) bug.
17405
17406 Mon Mar 29 17:31:52 1999  Owen Taylor  <otaylor@redhat.com>
17407
17408         * gdk/gdkim.c (gdk_mbstowcs): Free the value of the
17409         intermediate text property - prevents major memory
17410         leak when gdk_use_mb.
17411         gtk-d3august-990311-0: Bj|rn Augustsson <d3august@dtek.chalmers.se>
17412
17413 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
17414
17415         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
17416         gtk-a-higuti-990322-[0-3]
17417
17418         * gdk/gdkfont.c (gdk_text_extents_wc): Make  work when
17419         sizeof(wchar_t) != sizeof (GdkWChar)
17420
17421         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
17422         that was causing -DX_LOCALE not to work.
17423
17424         * gtk/gtkrc.c (gtk_rc_init):
17425         X_LOCALE will never have LC_MESSAGES defined
17426
17427         * gdk/gdk.c (gdk_init_check):
17428         Remove --xim-preedit and --xim-status from argv properly.
17429
17430         * gdk/gdkim.c (gdk_ic_real_new): Add a gdk_flush() so
17431         that the client window is present on the X server
17432         before we pass it to the input method.
17433
17434 Tue Mar  9 10:46:49 1999  Owen Taylor  <otaylor@redhat.com>
17435
17436         * gdk/gdkdnd.c (motif_find_drag_window): Fix bug where
17437         if --display is specified on the command line, than
17438         the drag window will not be created on that display.
17439         
17440 Tue Mar  9 10:38:24 1999  Owen Taylor  <otaylor@redhat.com>
17441
17442         * gdk/gdkproperty.c (gdk_atom_intern): Fixed bug where
17443         lookups with only_if_exists == TRUE were inserting
17444         bogus values into the atom cache.
17445
17446 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
17447
17448         * gdk/gdkselection.c (gdk_selection_property_get): first XFree(t),
17449         then reset it to NULL.
17450
17451         * gdk/gdkcolor.c:
17452         (gdk_colors_free): 
17453         (gdk_colormap_free_colors): use colormap->colors[in_pixels[i]] as the
17454         key for g_hash_table_remove() in both functions, this prevents us
17455         from accessing possibly uninitialized portions of a GdkColor structure
17456         where we are only interested in its pixel value.
17457
17458 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
17459
17460         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
17461         font hash table, if we have a GdkFontPrivate entry for this font
17462         already, simply increment its reference count, provided by Olaf Dietsche
17463         <olaf.dietsche+list.gtk@netcologne.de>.
17464
17465 1999-09-21  Tor Lillqvist  <tml@iki.fi>
17466
17467         * gdk/win32/gdk.c (gdk_exit_func): Delete the gdk_DC when exiting,
17468         just to be sure.
17469
17470         * gdk/win32/gdkvisual.c (gdk_visual_init): Remove a couple of
17471         unused variables, leftovers from the X11 version.
17472
17473         * gdk/win32/rc/*.cur: Better cursors provided by Bernd Herd.
17474
17475         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): Only
17476         downcase fields on X11.
17477
17478 Mon Sep 20 13:17:39 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
17479         
17480         * configure.in,po/pt_BR.po: added Portuguese Brazilian file from
17481         Alex Sandro Queiroz e Silva <asandro@lcg.dc.ufc.br>
17482
17483 1999-09-17  Tor Lillqvist  <tml@iki.fi>
17484
17485         * gdk/win32/gdk.def: Add gdk_threads_mutex.
17486
17487         * gtk/makefile.msc: Correct path to libintl.
17488
17489         Thanks to Tomi Ollila and Bernd Herd: Fix some inconsistencies in
17490         use of gint vs. int, and gint vs. gboolean in headers and
17491         definitions. Use GtkType for the *_get_type functions. Note that
17492         these changes preserve binary compatibility.
17493
17494         * gdk/gdk.c
17495         * gdk/win32/gdk.c
17496         * gdk/gdk.h: Fix inconsistencies: gint vs int.
17497
17498         * gtk/gtkmain.c
17499         * gtk/gtkclist.c
17500         * gtk/gtkmenufactory.c
17501         * gtk/gtknotebook.c
17502         * gtk/gtkwidget.c: Fix inconsistencies, also gint
17503         vs. gboolean.
17504
17505         * gtk/gtkcolorsel.[ch]
17506         * gtk/gtkcombo.[ch]
17507         * gtk/gtkdrawingarea.[ch]
17508         * gtk/gtkgamma.[ch]
17509         * gtk/gtkhandlebox.[ch]
17510         * gtk/gtkhpaned.[ch]
17511         * gtk/gtkhruler.[ch]
17512         * gtk/gtkplug.[ch]
17513         * gtk/gtkpreview.[ch]
17514         * gtk/gtkruler.[ch]
17515         * gtk/gtksocket.[ch]
17516         * gtk/gtkstatusbar.[ch]
17517         * gtk/gtktoolbar.[ch]
17518         * gtk/gtkvbbox.[ch]
17519         * gtk/gtkvpaned.[ch]
17520         * gtk/gtkvruler.[ch]: Always use type GtkType for the *_get_type
17521         functions.
17522
17523         * gtk/gtkgamma.h: Fix bug, missing () in call of
17524         gtk_gamma_curve_get_type() in GTK_GAMMA_CURVE_CLASS. 
17525
17526 1999-09-14  Tor Lillqvist  <tml@iki.fi>
17527
17528         * gdk/gdkcolor.c (gdk_colormap_new)
17529         * gdk/win32/gdkcolor.c (gdk_colormap_new): Fix memory leak:
17530         colormap->colors was allocated twice.
17531
17532         * gdk/win32/gdk.c: Remove some unused stuff.
17533
17534         * gdk/win32/gdkcolor.c (gdk_colormap_sync): Initialize all of the
17535         colormap.
17536
17537         * gtk/gtkfontsel.c (gtk_font_selection_dialog_get_type)
17538         * gtk/gtklabel.h (gtk_label_get_type)
17539         * gtk/gtktipsquery.c (gtk_tips_query_get_type)
17540         * gtk/gtktypeutils.h (gtk_type_name): : Use GtkType
17541         in a couple of places, not guint.
17542
17543 Fri Sep 10 21:31:00 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
17544
17545         * configure.in,po/et.po: added Estonian language file
17546
17547 Wed Sep  1 14:36:12 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
17548
17549         * configure.in,po/da.po: added Danish file
17550
17551 Sun Aug 29 13:38:59 BST 1999 Tony Gale <gale@gtk.org>
17552
17553         * docs/gtkfaq.sgml: Minor FAQ Update
17554
17555 Sat Aug 28 14:34:37 BST 1999 Tony Gale <gale@gtk.org>
17556
17557         * docs/gtkfaq.sgml: FAQ update
17558
17559 1999-08-27  Tor Lillqvist  <tml@iki.fi>
17560
17561         Win32: Philippe Colantoni <colanton@aris.ss.uci.edu> suggests a
17562         way to get window contents continually refreshed while resizing. I
17563         didn't like the effects myself, so it's not on by default.
17564
17565         * gdk/win32/gdkprivate.h: New flag variable
17566         gdk_event_func_from_window_proc, FALSE by default.
17567
17568         * gdk/win32/gdk.c (gdk_init_check): Set above flag if the
17569         environment variable GDK_EVENT_FUNC_FROM_WINDOW_PROC is set, or we
17570         are passed --gdk-event-func-from-window-proc.
17571
17572         * gdk/win32/gdkevents.c (gdk_WindowProc): If above flag is set,
17573         and we have am event_func, call it instead of enqueing the event.
17574
17575 1999-08-23  Tor Lillqvist  <tml@iki.fi>
17576
17577         * gdk/win32/gdkevents.c (gdk_event_translate): Fix from Simon
17578         Kelley: Set expose_count in GdkEventExposes correctly.
17579
17580         * gdk/win32/gdkwindow.c: Remove dead code (#ifdef
17581         MULTIPLE_WINDOW_CLASSES).
17582
17583         * gdk/win32/gdkdraw.c (gdk_draw_line): Workaround from Hans Breuer
17584         for bug in NT, apparently NT *does* draw the end pixel, too, in
17585         LineTo with a one-pixel pen, so we don't have to do it ourselves.
17586
17587 1999-08-21  Tor Lillqvist  <tml@iki.fi>
17588
17589         Improvements by Hans Breuer: 
17590
17591         * gdk/win32/gdkwindow.c (RegisterGdkClass): New function
17592
17593         * gdk/win32/gdkwindow.c (gdk_window_new): Use it. Don't set the
17594         CS_?REDRAW flags as they cause lots of (late) redraws when "show
17595         window contents while dragging" is turned on. Allocate at least
17596         one unique class for every GdkWindowType. If support for single
17597         window-specific icons is ever needed (eg. Dialog specific), every
17598         such window should get its own class.
17599
17600 1999-08-19  Tor Lillqvist  <tml@iki.fi>
17601
17602         * gdk/win32/gdkgc.c (gdk_gc_new_with_values): Fix a cut&paste
17603         error that caused crashes.
17604
17605 1999-08-17  Tor Lillqvist  <tml@iki.fi>
17606
17607         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): When blitting inside one
17608         window, use ScrollWindowEx, and call UpdateWindow. This prevents
17609         bugs when for instance part of the window was outside the
17610         display. Thanks to Philippe Colantoni for finding and fixing this.
17611
17612 1999-08-16  Tor Lillqvist  <tml@iki.fi>
17613
17614         * gdk/win32/gdkdraw.c (gdk_draw_arc): Fix start and end radial
17615         endpoint calculations which were totally wrong. (A little RTFMing
17616         helps a lot ;-)
17617
17618         * gtk/makefile.{cygwin,msc}: Use libintl extracted from glibc
17619         from a separate directory, not from gettext, because of licensing
17620         issues (we want to use the LGPL version).
17621
17622         * README.win32: Mention the intl from glibc vs from gettext issue.
17623
17624 1999-08-13  Tor Lillqvist  <tml@iki.fi>
17625
17626         * gdk/win32/gdkevents.c (gdk_event_translate): Fix a couple of bugs
17627         in the key event handling: Now AltGr chars work again. Also,
17628         now Alt-digits are passed up as well as Control-digits.
17629         Pass keypad plus and minus as normal plus and minus.
17630
17631 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
17632
17633         * docs/gtkfaq.sgml: FAQ Update
17634
17635 1999-07-25  Tor Lillqvist  <tml@iki.fi>
17636
17637         * README.win32
17638         * config.h.win32: Add HAVE_WINTAB. Undefine it if bulding without
17639         the Wintab SDK.
17640
17641         * gdk/win32/gdkinput.c: Hack some more. Still doesn't quite work
17642         OK, but getting closer. Guard against bogus tilt data from Wacom
17643         ArtPad II with the 3.40 driver. Add ifdefs for HAVE_WINTAB to
17644         enable easier building without Wintab.
17645
17646         * gdk/win32/gdkinput.h
17647         * gdk/win32/gdkevents.c 
17648         * gdk/win32/gdkwindow.c: Minor changes related related to above.
17649         
17650         * gdk/win32/gdkvisual.c: Simplify a lot, remove leftovers from X11
17651         code. As we have just one visual on Win32, no sense to have it in a
17652         table, and no need for the hash table.
17653
17654         * gdk/win32/rc/cursor*.cur: Edit some of the cursors a bit to look
17655         better on white background.
17656
17657 1999-07-21  Tor Lillqvist  <tml@iki.fi>
17658
17659         * README.win32: Update gcc build instructions. Mention gettext is
17660         GPL.
17661
17662         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Get correct
17663         supported cursor size with GetSystemMetrics.
17664
17665         * gdk/win32/gdkfont.c
17666         * gtk/gtkfontsel.c: Guard against some font weight and charset
17667         symbols being undefined (in mingw32 headers).
17668
17669         * gdk/win32/makefile.cygwin
17670         * gtk/makefile.cygwin
17671         * gtk/gtkthemes.c: No longer need to have differently named
17672         gcc-built DLLs when using gcc-2.95 and -fnative-struct.
17673
17674 hu Jul 15 13:33:15 BST 1999 Tony Gale <gale@gtk.org>
17675
17676         * docs/gtkfaq.sgml: Long awaited FAQ update.
17677
17678 1999-07-15  Tor Lillqvist  <tml@iki.fi>
17679
17680         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Implement
17681         it. Obscure bit manipulation needed.
17682
17683         * gdk/win32/gdkevents.c: Logging.
17684         
17685         * gtk/gtkthemes.c (gtk_theme_engine_get): (Win32) Use new DLL naming
17686         style (file name include compiler name) for theme engines.
17687
17688 1999-07-13  Tor Lillqvist  <tml@iki.fi>
17689
17690         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Less logging verbiage.
17691
17692         * gdk/win32/gdkevents.c: Fix long-standing bug in key
17693         events. The key.string wasn't zero-terminated, still we strdup'ed
17694         it in gdk_event_copy(). Synthesize crossing events for button
17695         events before possible propagation.
17696
17697         * gdk/win32/gdkwindow.c: Log gdk_window_set_title.
17698
17699         * gdk/win32/makefile.cygwin
17700         * gtk/makefile.cygwin: Use new DLL naming style for the
17701         GCC-compiled ones.
17702
17703         * gdk/win32/makefile.msc
17704         * gtk/makefile.msc: Cosmetics mostly.
17705
17706         * gtk/gtk.def: Add missing entry points.
17707
17708         * gtk/gtksocket.c: Add dummy gtk_socket_get_type() for Win32.
17709
17710 1999-07-09  Tor Lillqvist  <tml@iki.fi>
17711
17712         * gdk/win32/gdkdraw.c (gdk_draw_arc): Don't draw anything if width
17713         or height is zero. Don't print a warning if Pie or Arc fails, they
17714         always fail (?) for very narrow ellipses.
17715
17716         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Call InvalidateRgn for
17717         the part or the destination window corresponding to source area
17718         outside of the source drawable's boundary.
17719
17720         * gdk/win32/gdkdraw.c (gdk_draw_lines, gdk_draw_polygon): Don't do
17721         anything if less than two points.
17722
17723         * gdk/win32/gdkselection.c (gdk_selection_owner_get): Always
17724         return NULL. Gtk cut-and-paste inside a single program works
17725         better this way. (It always gets the clipboard contents from
17726         Windows, not from its own copy, which is cleared anyway. I can't
17727         say I fully understand what happens... Emulating the X selection
17728         and property stuff is a bit of a mess.)
17729
17730         * gdk/win32/gdkevents.c
17731         * gdk/win32/gdkproperty.c: A bit more verbose logging.
17732
17733         * gdk/win32/gdkregion.c: Fix some memory leaks (temporary regions
17734         that never got deleted). Revamp gdk_region_shrink.
17735
17736         * gdk/win32/gdkregion.c: Fix memory leak, delete temporary regions
17737         after use.
17738
17739         * gtk/gtk.def: Add some missing entry points.
17740
17741         * gtk/gtkrc.c: Strip trailing directory separator from pixmap path
17742         component.
17743
17744 1999-07-04  Tor Lillqvist  <tml@iki.fi>
17745
17746         * gdk/win32/gdkevents.c (gdk_event_translate): Handle
17747         Control-digits specially.
17748
17749 1999-07-03  Tor Lillqvist  <tml@iki.fi>
17750
17751         * gtk/makefile.{cygwin,msc}: New pthreads version. Use gettext.
17752
17753 1999-06-28  Tor Lillqvist  <tml@iki.fi>
17754
17755         * gdk/win32/gdkimage.c (gdk_image_get): bpl was set wrong for
17756         bitmaps, should be multiple of 4. (Thanks to Hans Breuer for
17757         finding this.)
17758
17759 1999-06-01  Jose H Mercado  <jmercado@mit.edu>
17760
17761         * gtk+.spec.in: Corrected some typos in files section.
17762         
17763 1999-06-15  Tor Lillqvist  <tml@iki.fi>
17764
17765         * README.win32: Mention using GNU gettext.
17766         * config.h.win32: Enable NLS stuff.
17767         * gtk/makefile.msc: Use GNU gettext.
17768         * gdk/win32/gdkdnd.c: Minor header reorg.
17769         * gdk/win32/{gdkevents,gdkwindow}.c: No semantic changes, mainly
17770         cosmetics.
17771         * gtk/gtkrc.c (Win32): Make get_gtk_sysconf_directory() public.
17772         * gtk/gtkmain.c (Win32): Use it in bindtextdomain() call.
17773
17774 Wed Jun  2 11:44:25 PDT 1999 Manish Singh <yosh@gimp.org>
17775
17776         * acinclude.m4
17777         * config.guess
17778         * config.status
17779         * ltconfig
17780         * ltmain.sh: upgrade to libtool 1.3.2 (BeOS changes merged)
17781
17782 1999-05-30  Tor Lillqvist  <tml@iki.fi>
17783
17784         * gdk/win32/gdkwindow.c: AdjustWindowRectEx2 renamed to
17785         SafeAdjustWindowRectEx. Don't override all calls to
17786         AdjustWindowRectEx by it, but use it only in two places: When
17787         creating a new top-level window and when moving a top-level
17788         window.
17789
17790         Use screen coordinate rectangle, not client rectangle, in
17791         gdk_window_move. Thus SafeAdjustWindowRectEx will do its job only
17792         when we try to place a window so that the decoration (mainly,
17793         title bar) isn't visible.
17794
17795         These changes fix the bug that showed up for instance as the
17796         GIMP's saved top-level windows moving right and down (by an amount
17797         equal to the window decoration) for each session. This bug showed
17798         up also in testgtk's "Saved Position".
17799
17800         gdk_window_resize also redone a bit.
17801
17802 1999-05-25  Tor Lillqvist  <tml@iki.fi>
17803
17804         * gtk/testgtkrc: Add (commented out) Windows-style theme
17805         include line.
17806
17807         * gdk/win32/gdk.def,gtk/gtk.def: Add some missing entry points.
17808
17809 1999-05-18  Tor Lillqvist  <tml@iki.fi>
17810
17811         * gdk/win32/makefile.{cygwin,msc}: Copy our gdkprivate.h and
17812         gdkx.h to a gdk subdirectory, so that applications can include
17813         these with <gdk/*.h> without trouble.
17814
17815         * gdk/win32/gdkimage.c (gdk_image_new_with_depth): Code simplified.
17816         (gdk_image_destroy): Plug resource leak, some GdkImages didn't
17817         have their bitmap destroyed.
17818
17819         * gdk/win32/gdk.def: Add gdk_root_parent.
17820
17821 Wed May 12 03:00:56 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
17822
17823         * configure.in
17824           gtk-config.in
17825           ltconfig
17826           ltmain.sh     
17827           gtk/Makefile.am: changes to compile nicely (with xlib) 
17828           on BeOS
17829
17830 Sat May  1 15:04:42 PDT 1999 Manish Singh <yosh@gimp.org>
17831
17832         * acinclude.m4
17833         * config.guess
17834         * config.sub
17835         * ltconfig
17836         * ltmain.sh: upgrade to libtool 1.3
17837
17838 Fri Apr 30 13:38:16 1999  Lars Hamann  <lars@gtk.org>
17839
17840         * gtk/gtkclist.c:
17841         * gtk/gtkctree.c: merges from gtk-1-2
17842
17843 1999-04-25  Tor Lillqvist  <tml@iki.fi>
17844
17845         Support added for building using a GNU toolchain on Win32,
17846         gcc -mno-cygwin (egcs-1.1.2) on cygwin-b20.1.
17847
17848         * gdk/win32/makefile.cygwin gtk/makefile.cygwin: New files.
17849         * config.h.win32: Changes for gcc.
17850         * gdk/gdkrectangle.c: Include gdk.h as <gdk/gdk.h>.
17851         * gdk/gdkcolor.c: config.h.win32 already defines strcasecmp.
17852         * gdk/win32/gdkconfig.h: Only the MS compiler has wctype.h.
17853         * gdk/win32/gdkdnd.c: Protect (unused) OLE2 stuff better.
17854         Protect shl stuff unavaiilable with mingw32 headers.
17855         * gdk/win32/gdkevents.c: Fix typo.
17856         * gdk/win32/gdkglobals.c: Use GDKVAR here also for gcc.
17857         * gdk/win32/gdkim.c: Use OEM code page for multibyte chars. (?)
17858         * gdk/win32/gdkinput.c: Use __try __except only with the MS compiler.
17859         * gdk/win32/gdkprivate.h: Make up for some stuff missing from
17860         the mingw32 headers.
17861         * gdk/win32/makefile.msc: Use latest Wintab kit and glib.
17862         * gtk/gtkfilesel.c: Include <glib.h> early, to get stat->_stat
17863         definition on Win32. Test for NATIVE_WIN32, not _MSC_VER.
17864         * gtk/gtkfontsel.c: Protect CHARSET redefinition on Win32.
17865         Test for NATIVE_WIN32, not _MSC_VER.
17866         * gtk/gtkmain.c: No use warning about developer version on Win32,
17867         there aren't any non-developer versions anyhow.
17868         * gtk/gtkrc.c: Test for NATIVE_WIN32, not _MSC_VER.
17869         * gtk/makefile.msc: Use pthread from another directory. Minor other
17870         changes. 
17871
17872 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
17873
17874         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
17875           default filter from the list
17876
17877 Mon Mar  8 12:52:53 1999  Owen Taylor  <otaylor@redhat.com>
17878
17879         * gtk/gtkwidget.c (gtk_widget_grab_default): Add a warning
17880          when gtk_widget_grab_default() is called for a widget that
17881          is not within a GtkWindow.
17882
17883 Sat Apr 10 13:52:54 BST 1999  Tony Gale <gale@gtk.org>
17884
17885         * docs/gtk_tut.sgml, examples/clist.c: use a
17886           scrolled window in the clist example. Minor
17887           tutorial fixes.
17888
17889 Fri Apr  2 09:19:20 BST 1999  Tony Gale <gale@gtk.org>
17890
17891         * docs/gtk_tut.sgml: Style check from David King
17892           <dking@youvegotmail.net>
17893
17894 1999-03-30  Pavel Machek  <pavel@artax.karlin.mff.cuni.cz>
17895
17896         * gtk/gtkfontsel.c (gtk_font_selection_get_fonts): Make code
17897         compile with unknown value of GDK_WINDOWING
17898
17899 1999-03-28  Raja R Harinath  <harinath@cs.umn.edu>
17900
17901         * gdk/Makefile.am (gdkconfig.h): Make sure `gdkconfig.h' exists
17902         after the rule is fired.
17903         (install-exec-local): Install gdkconfig.h only if the contents are
17904         different from the currently installed gdkconfig.h.
17905
17906 1999-03-26  Raja R Harinath  <harinath@cs.umn.edu>
17907
17908         * gdk/Makefile.am (configexecincludedir): Rename from 
17909         configincludedir so that gdkconfig.h will be installed 
17910         as part of `make install-exec'. 
17911
17912 Fri Mar 19 16:50:33 PST 1999 Manish Singh <yosh@gimp.org>
17913
17914         * acinclude.m4
17915         * config.guess
17916         * config.sub
17917         * ltconfig
17918         * ltmain.sh: upgrade to libtool 1.2f
17919
17920         * autogen.sh: libtool is not required to autogen gtk+
17921
17922         * acconfig.h: remove WITH_SYMBOL_UNDERSCORE (not explictly
17923         needed)
17924
17925 1999-03-18  Tor Lillqvist  <tml@iki.fi>
17926
17927         * gdk/gdktypes.h: Merge in Win32 version: Define macro GDKVAR for
17928         declaring gdk variables exported/imported from the DLL. New image
17929         type enum, GDK_IMAGE_SHARED_PIXMAP, for gdk_imlib. New drag and
17930         drop protocol enums, GDK_DRAG_PROTO_WIN32_DROPFILES and
17931         GDK_DRAG_PROTO_OLE2.
17932
17933         * gdk/gdk.h: Merge in Win32 version: Two new functions,
17934         gdk_pixmap_create_on_shared_image and gdk_image_bitmap_new. So far
17935         declared only for the Win32 version, but could be in the X11
17936         version as well. (Needed for a Xlib-less gdk_imlib.)
17937         gdk_color_hash should have only one parameter. Declare
17938         gdk_threads_mutex with GDKVAR.
17939         
17940         * gdk/gdkcolor.c (gdk_color_hash): A hash function should have
17941         just one parameter.
17942
17943         * gdk/gdkimage.c (gdk_image_get): Initialize bpp correctly. Bytes
17944         per pixel, not bits.
17945
17946         * gdk/gdkrgb.c: Mingle includes somewhat. (gdk_rgb_select_conv):
17947         Fetch bpp (which means bits-per-pixel here) from another place on
17948         Win32. Accept also depth==32 (which we might get on Win32) with
17949         bpp==32.
17950
17951         * gtk/{gtkclist,gtkctree,gtkdnd,gtkditable,gtkfontsel,
17952         gtkhandlebox,gtklayout,gtkmain,gtkplug,gtkpreview,gtkrc,
17953         gtkselection,gtksocket,gtkstyle,gtkwidget,gtkwindow}.c:
17954         Include gdx.h from "gdkx.h", not "gdk/gdkx.h", as gdkx.h will be
17955         in the backend-dependent directory, not in the common gdk
17956         directory.
17957
17958         * gtk/testgtk.c: Ditto. Also, don't use ../gdk path to gdk
17959         headers.
17960
17961 Wed Mar 17 05:06:49 1999  Tim Janik  <timj@gtk.org>
17962
17963         * gtk/gtkmain.c (gtk_init_check): tell people that they don't really
17964         want to use the Gtk+ devel version (which is true, and yes - even i am
17965         currently working with the 1.2.x branch). so everyone reading this, you
17966         probably want to issue
17967         cvs checkout -r glib-1-2 glib
17968         and
17969         cvs checkout -r gtk-1-2 gtk+
17970         as your next two comands.
17971
17972 Wed Mar 17 02:49:32 1999  Tim Janik  <timj@gtk.org>
17973
17974         * configure.in: build gtkcompat.h from gtkcompat.h.in instead of
17975         gtkfeatures.h from gtkfeatures.h.in, require GLib 1.3.0.
17976
17977         * gtk/gtkcompat.h.in: combined gtkcompat.h and gtkfeatures.in in this
17978         file. strongly deprecated the GTK_HAVE_* macros, we provide
17979         GTK_CHECK_VERSION() for people that need to check for certain
17980         Gtk+ versions.
17981
17982         * gtk/gtkcompat.h: removed this from CVS.
17983         * gtk/gtkfeatures.h.in: removed this from CVS, gtkfeatures.h was a bad
17984         idea right from the start, it just didn't seem like that back then.
17985
17986 Wed Mar 17 01:46:28 1999  Tim Janik  <timj@gtk.org>
17987
17988         * merges from gtk-1-2:
17989
17990 Tue Mar 16 17:43:33 1999  Tim Janik  <timj@gtk.org>
17991
17992         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc_string): ensure the
17993         item factory class has been created.
17994         (gtk_item_factory_parse_rc): likewise.
17995
17996         * gtk/gtkmenu.c:
17997         keep proper references for old_active_menu_item.
17998         (gtk_menu_reparent): unset the usize of the new parent,
17999         so the menu can sanely be size requested and we don't get nasty screen
18000         artefacts upon next reparentation.
18001         (gtk_menu_motion_notify): set send_event to TRUE if we synthesize an
18002         enter notify. only synthesize enter notifies if the pointer really is
18003         inside the event window.
18004         (gtk_menu_popdown): use gtk_menu_shell_deselect().
18005         (gtk_menu_popup): move the background setting stuff into
18006         gtk_menu_tearoff_bg_copy() so it can be called from other places as well.
18007
18008         * gtk/gtkmenushell.c (gtk_menu_shell_button_press): use
18009         gtk_menu_shell_select_item() to select the new item.
18010         (gtk_menu_shell_deselect): export this function, so gtkmenu.c can
18011         do the right thing for deselection as well.
18012
18013 Sat Mar 15 20:10:33 1999  Tim Janik  <timj@gtk.org>
18014
18015         * gtk/gtkwidget.[hc]:
18016         (gtk_widget_accelerators_locked): return whether a widget's accelerators
18017         are locked.
18018
18019         * gtk/gtkmenu.c (gtk_menu_key_press): don't remove or install new or
18020         existing accelerators if the widget's accelerators are locked.
18021
18022 Sat Mar 14 19:44:05 1999  Tim Janik  <timj@gtk.org>
18023
18024         * gtk/gtkitemfactory.[hc]: allow managing of foreign menu items.
18025
18026         * gtk/gtkmenu.c: truely forward key press and key release events to
18027         the menu widget from the toplevel or tearoff window. we can't simply
18028         connect to that, we need to stop further processing of the events as
18029         well.
18030
18031 Sat Mar 13 13:14:17 1999  Tim Janik  <timj@gtk.org>
18032
18033         * gtk/gtkmenu.c:
18034         (gtk_menu_key_press): pass event->keyval, event->state to
18035         gtk_accelerator_valid, instead of event->keyval twice.
18036         refuse to install single letter accelerators for menus that use
18037         single letter shortcuts.
18038
18039         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): use
18040         gtk_menu_ensure_uline_accel_group().
18041
18042         * gtk/gtkmenu.[hc]: added gtk_menu_ensure_uline_accel_group()
18043         which will always return an uline accel group, made
18044         gtk_menu_get_uline_accel_group() return NULL if the group isn't
18045         yet created.
18046
18047 Mon Mar 15 01:03:27 1999  Lars Hamann  <lars@gtk.org>
18048
18049         * gtk/gtkclist.h (struct _GtkCListColumn): added button_passive flag.
18050
18051         * gtk/gtkclist.c (gtk_clist_column_title_passive):
18052         Leave button sensitive, trap  button_press, button_release,
18053         motion_notify, enter_notify and leave_notify events instead.
18054         (gtk_clist_column_title_active): disconnect event handler.
18055         (gtk_clist_drag_data_get): fixed memory leak. Reported by
18056         Guillaume Laurent <glaurent@worldnet.fr>
18057
18058 Wed Mar 10 23:49:55 1999  Lars Hamann  <lars@gtk.org>
18059
18060         * gtk/gtklayout.c (gtk_layout_adjustment_changed): fixed a few
18061         width/height mixups.
18062
18063         * gtk/gtkctree.c (tree_delete): emit an tree_unselect_row signal
18064         if needed.
18065
18066 Wed Mar 10 00:11:32 1999  Tim Janik  <timj@gtk.org>
18067
18068         * gtk/testgtk.c (create_item_factory): unref the item factory after
18069         window's destruction.
18070
18071         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): keep a reference
18072         count on the menu shell around the menu item's activation, since the
18073         signal emission may cause menu shell destruction.
18074
18075         * gtk/gtkitemfactory.c:
18076         the previous code leaked one accel group per menu. we use
18077         gtk_menu_get_uline_accel_group() now to fix that, and with that
18078         also create the underline accelerator group of the menus only if
18079         required (i.e. an underline accelerator has been specified).
18080         (gtk_item_factory_construct):
18081         (gtk_item_factory_create_item): removed code that would create an
18082         extra accel group for the menu (and leak references).
18083         (gtk_item_factory_create_item): adapted the underline accelerator
18084         installation code to properly feature gtk_menu_get_uline_accel_group().
18085
18086         * gtk/gtkmenu.[hc]: added gtk_menu_get_accel_group() to retrive
18087         menu->accel_group, this may return NULL if the accelerator group
18088         hasn't been set yet.
18089         added gtk_menu_get_uline_accel_group() to retrive the underline
18090         accelerator group of the menu, this will be created on demand
18091         and proper care is taken about its reference count.
18092
18093         * gtk/gtkitemfactory.h:
18094         * gtk/gtkitemfactory.c:
18095         dumped the approach of keeping a widgets by action list on the
18096         factory since the factory<->widget destroy negotiation didn't work
18097         and would be hard to get going at all. instead we keep a list of
18098         GtkItemFactoryItem items on the factory (GtkItemFactoryItems are
18099         persistant throughout a program's life time).
18100         also, i removed the static const gchar *key_* variables, and made
18101         them inline strings (they weren't actually used anyways).
18102         (gtk_item_factory_add_item): update ifactory->items.
18103         (gtk_item_factory_destroy): destroy ifactory->items (and remove
18104         the item factory pointer from the remaining ifactory widgets).
18105         (gtk_item_factory_get_widget_by_action): walk the GtkItemFactoryItem
18106         list to find the widget.
18107         (gtk_item_factory_get_item): new function that works around
18108         gtk_item_factory_get_widget() limitations, this function will only
18109         return menu items, even for <Branch> entries.
18110
18111 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
18112
18113         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
18114         font hash table, if we have a GdkFontPrivate entry for this font
18115         already, simply increment its reference count, provided by Olaf Dietsche
18116         <olaf.dietsche+list.gtk@netcologne.de>.
18117
18118         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
18119         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
18120
18121 Sun Mar  7 06:13:29 1999  Tim Janik  <timj@gtk.org>
18122
18123         * gtk/gtkcontainer.c:
18124         (gtk_container_add_with_args):
18125         (gtk_container_addv):
18126         (gtk_container_add): before adding a child to a conatiner, make sure
18127         it is (default) constructed, this is neccessary because under certain
18128         circumstances the child will get relized and mapped immediatedly, in
18129         which case it has to be constructed already.
18130
18131 Mon Mar  1 17:58:21 1999  Tim Janik  <timj@gtk.org>
18132
18133         * gtk/gtksignal.c (gtk_signal_connect_by_type): count object_signal
18134         values > 1 as TRUE also.
18135
18136 1999-03-16  Tor Lillqvist  <tml@iki.fi>
18137
18138         * README.win32: New file.
18139                 
18140         * configure.in: Check for lstat.
18141
18142         * config.h.win32: Add non-definition of HAVE_LSTAT, just for
18143         completeness.
18144
18145         * gtk/gtkrc.c: If don't HAVE_LSTAT, use stat.
18146
18147         * gtk/gtk.def: Removed CRs.
18148
18149         * gtk/makefile.msc: Correct include path to Win32 GDK version (in
18150         ..\gdk\win32).
18151
18152         * gdk/win32/makefile.msc: Correct upwards relative paths.
18153         
18154 Mon Mar 15 03:38:34 1999  George Lebl  <jirka@5z.com>
18155
18156         * gtk/gtkdnd.c: (gtk_drag_highlight) swap the
18157           gtk_drag_highlight_expose and gtk_drag_highlight_paint since
18158           it was connecting a void function to expose_event and the int
18159           returning function to the draw signal
18160
18161 1999-03-14  Jeff Garzik  <jgarzik@pobox.com>
18162
18163         * configure.in:
18164         Use correct path to libgmodule.la when ref'ing uninstalled copy
18165         of glib.  (Already in stable branch, Bug #417)
18166
18167 1999-03-15  Tor Lillqvist  <tml@iki.fi>
18168
18169         Win32 merge and general portability stuff:
18170                 
18171         * acconfig.h,configure.in: Check for <sys/time.h>.
18172
18173         * gdk/win32: New directory (actually, been there for a while).
18174         
18175         * gtk/fnmatch.c: Include <glib.h> for G_DIR_SEPARATOR, WIN32 and
18176         NATIVE_WIN32, and use these. Always case fold on Win32. No
18177         backslashed escapes on native Win32.
18178
18179         * gtk/{gtk.def,makefile.msc}: New files.
18180
18181         * gtk/Makefile.am: Add above new files.
18182         
18183         * gtk/{gtkaccelgroup,gtkbindings}.c: Include <string.h>
18184         instead of <strings.h>.
18185
18186         * gtk/{gtkcalendar,gtkitemfactory,gtkpreview,gtkrc}.c: Include
18187         config.h. Protect inclusion of <sys/param.h>, <sys/time.h>, and
18188         <unistd.h> appropriately.
18189
18190         * gtk/gtkdnd.c: Merge in Win32 version (which doesn't do much).
18191         Use ABS() (from <glib.h>) instead of abs().
18192         
18193         * gtk/gtkfilesel.c: Moved Win32-specific includes after inclusion
18194         of gtk (and thus glib) headers, so that WIN32 will be
18195         defined. With MS C, include <direct.h> for mkdir prototype.
18196
18197         * gtk/gtkitemfactory.c (gtk_item_factory_callback_marshal): Add
18198         some casts, needed by MS C.
18199
18200         * gtk/{gtklayout,gtkplug}.c: Merge in Win32 version (which isn't
18201         implemented).
18202
18203         * gtk/gtkmain.c: Include gdk/gdkx.h for GDK_WINDOWING. Include
18204         <X11/Xlocale.h> only on X11 platform, otherwise <locale.h>.  Use
18205         G_SEARCHPATH_SEPARATOR_S and g_module_build_path.
18206
18207         * gtk/gtkmain.h: Mark variables for export/import on Win32.
18208                 
18209         * gtk/gtkrange.c (gtk_range_motion_notify): Set mods also in case
18210         the event is not a hint, or its window is not the slider. Needed
18211         on Win32, at least.
18212
18213         * gtk/gtkrc.c: Include config.h and gdk/gdkx.h. Use <locale.h>
18214         unless on X11. Skip \r chars, too. Use G_DIR_SEPARATOR and
18215         G_SEARCHPATH_SEPARATOR(_S). Use g_path_is_absolute. On Win32, use
18216         a subdirectory of the Windows directory as gtk system
18217         configuration directory.
18218
18219         * gtk/gtkselection.c: No chunks on Win32.
18220
18221         * gtk/gtksocket.c: Not implemented on Win32.
18222
18223         * gtk/gtkthemes.c (gtk_theme_engine_get): Use g_module_build_path.
18224
18225         * gtk/makeenums.h: Include gdkprivate.h after gdk.h.
18226
18227         * gtk/maketypes.awk: Declare variables with a macro that expands to
18228         necessary export/import magic in the case of Win32.
18229                 
18230         * gtk/testrgb.c: Use dynamically allocated buffer. Use GTimers.
18231
18232 1999-03-13  Raja R Harinath  <harinath@cs.umn.edu>
18233
18234         * configure.in (gdk_wc): Move widechar tests from `glib' to here,
18235         since those were meant only for gdki18n.h.  
18236         * gdk/gdki18n.h: Include gdkconfig.h and use GDK_* instead of G_*
18237         for widechar tests.
18238         * gtk/Makefile.am (INCLUDES): Add -I../gdk for gdkconfig.h.
18239
18240 1999-03-13  Tor Lillqvist  <tml@iki.fi>
18241
18242         * configure.in acconfig.h: Check for dirent.h and pwd.h. Generate
18243         gdk/gdkconfig.h using similar mechanism as GLib's glibconfig.h.
18244
18245         * gtk-config.in: Add @libdir/gtk+/include (where gdkconfig.h is
18246         installed) to CFLAGS.
18247
18248         * gdk/Makefile.am: Add rules for gdkconfig.h.
18249
18250         * gdk/gdktypes.h: Include gdkconfig.h. Define macros for windowing
18251         APIs.
18252
18253         * gdk/gdkfontsel.c: Don't include Xlib.h, it gets included via
18254         gdkx.h anyway when compiling for X11.
18255         (gtk_font_selection_create_xlfd): Use g_strdup_printf. (In
18256         general): Merge in Win32 version.
18257         
18258         * gtk/gtkfilesel.c: Use g_get_current_dir(). Merge in Win32
18259         version: Use G_DIR_SEPARATOR, g_path_is_absolute, no tilde
18260         expansion (if we don't have HAVE_PWD_H), allow for drive
18261         letters. UNC paths (\\server\share\...) are not handled yet.  Also,
18262         included code from Craig Setera's port to Win32 (the one that uses
18263         X11, and the cygwin dll), even if it probably will be abandoned.
18264
18265         * gtk/gtkfilesel.c: Don't append a * to the pattern to complete if
18266         the user entered one herself.  This way one can complete *.h and
18267         don't get matches on any .help files, for instance.
18268         
18269 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
18270
18271         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
18272         font hash table, if we have a GdkFontPrivate entry for this font
18273         already, simply increment its reference count, provided by Olaf Dietsche
18274         <olaf.dietsche+list.gtk@netcologne.de>.
18275
18276         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
18277         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
18278
18279 1999-03-09  Federico Mena Quintero  <federico@nuclecu.unam.mx>
18280
18281         * gtk/gtkstyle.c (gtk_default_draw_handle): Significantly reduced
18282         the number of calls to gdk_draw_point() (and thus to X) by
18283         clipping the points by hand.
18284
18285         * gtk/gtkhandlebox.c (draw_textured_frame): Actually make use of
18286         the clip parameter.
18287         (gtk_handle_box_paint): Only paint the handle if the expose area
18288         intersects it.
18289
18290 Sun Mar  7 18:46:37 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
18291
18292         * gtk/gtkmain.c (add_dll_suffix): Add this function (OS/2 ver.)
18293
18294 Sun Mar  7 11:43:34 1999  ape@spacetec.no  (Asbjorn Pettersen)
18295
18296         * gtk/gtkthemes.c (gtk_theme_engine_get): Add OS/2 changes.
18297         Added function gen_8_3_dll_name(gchar *name, gchar *fullname).
18298
18299 Fri Mar  5 09:12:24 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
18300
18301         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc): Open file in
18302          textmode (O_TEXT) for OS/2 version.
18303
18304 Sun Feb 28 16:46:02 1999  Stefan Jeske  <stefan@gtk.org>
18305
18306         * gtk/gtkspinbutton.[c,h] gtk/testgtk.c: Added two new signals to 
18307         GtkSpinButton, "input" and "output", to make the output more flexible.
18308         The user has to provide a mapping between adjustment->value and the
18309         output string (and vice versa, if the spin button is editable). 
18310         See testgtk for examples.
18311
18312 Sat Feb 27 01:18:47 1999  Tim Janik  <timj@gtk.org>
18313
18314         * ChangeLog: moved old ChangeLog to ChangeLog.pre-1-2, and started
18315         new one.
18316         
18317         * configure.in: set gtk+ version to 1.3.0.