]> Pileus Git - ~andy/gtk/blob - ChangeLog
Properly clean up when handling events for move-resize emulation. (Problem
[~andy/gtk] / ChangeLog
1 Thu Jul 12 13:53:28 2001  Owen Taylor  <otaylor@redhat.com>
2
3         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Properly
4         clean up when handling events for move-resize emulation.
5         (Problem traced down by Matthias Clasen, #57271)
6
7 Thu Jul 12 13:43:27 2001  Owen Taylor  <otaylor@redhat.com>
8
9         * gtk/gtkclist.c gtk/gtkcolorsel.c gtk/gtkcombo.c
10           gtk/gtkctree.c gtk/gtkcurve.c gtk/gtkentry.c
11           gtk/gtkfontsel.c gtk/gtkhandlebox.c 
12           gtk/gtkimcontextsimple.c gtk/gtkmain.c gtk/gtkmenu.c
13           gtk/gtkmenuitem.c gtk/gtkoptionmenu.c gtk/gtkpixmap.c
14           gtk/gtkselection.c gtk/gtktextdisplay.c gtk/gtktextview.c
15           gtk/gtktooltips.c gtk/gtkwidget.c gtk/gtkwindow.c:
16         Formatting fixes from multihead brnach. [ mostly foo(bar) => foo (bar) ]
17
18 2001-07-09  Peter Williams  <peterw@ximian.com>
19
20         * gtk/Makefile.am ($(srcdir)/stamp-gtk.defs): Add a cd $(srcdir)
21         for when srcdir != builddir
22
23 Mon Jul  9 12:50:51 2001  Jonathan Blandford  <jrb@redhat.com>
24
25         * gtk/gtktreemodel.c: remove gtk_tree_model_get_first in favor of
26         gtk_tree_model_get_iter_root.
27
28         * gtk/gtkliststore.c: Add a bunch of g_return statements.
29         (gtk_list_store_iter_n_children): Fix up.
30
31         * gtk/gtktreestore.c: Add a bunch of g_return statements.
32
33 Fri Jul  6 15:38:33 2001  Owen Taylor  <otaylor@redhat.com>
34
35         * gtk/gtkwidget.c (gtk_widget_class_init):
36         G_SIGNAL_TYPE_STATIC_SCOPE GtkSelectionData to
37         restore some workingness.
38
39         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Fix 
40         handle of window type for input-only windows.
41
42 Thu Jul  5 21:53:46 2001  Owen Taylor  <otaylor@redhat.com>
43
44         * gtk/gtkbbox.[ch] gtk/gtkbox.[ch] gtk/gtk[hv]bbox.c:
45         Patch from Gregory Merchan to add 
46         gtk_button_box_set_secondary(), which separates
47         the child into a separate group from the normal
48         buttons. (#56331)
49
50         * gtk/gtkdialog.c: Make help buttons secondary by
51         default.
52
53         * gtk/gtkbbox.c: Added a child property "secondary".
54
55         * gtk/testgtk.c: Turn on the help button for the 
56         color selector to check that it properly appears
57         as secondary.
58
59 Mon Jul  2 01:09:37 2001  Owen Taylor  <otaylor@redhat.com>
60  
61         * gdk/gdkwindow.[ch] gdk/gdkinternals.h gdk/x11/gdkwindow-x11.c
62         gdk/linux-fb/gdkwindow-fb.c gdk/x11/gdkwindow-x11.c gdk/gdk:
63         Add gdk_set_pointer_hooks() to allow pointer-querying to
64         be hooked by an event record/playback system like GERD.
65         (#56914)
66         
67 Thu Jul  5 08:57:07 2001  Owen Taylor  <otaylor@redhat.com>
68
69         * gtk/gtkwidget.c (gtk_widget_reset_rc_style): Pass
70         in the right value of initial_emission to
71         gtk_widget_set_style_internal (#57091)
72
73 Wed Jul  4 23:17:04 2001  Owen Taylor  <otaylor@redhat.com>
74
75         * gtk/gtkdnd.c (gtk_drag_dest_hierarchy_changed):
76         Make compile.
77
78         * gtk/gtkwidget.c (gtk_widget_reset_rc_style): Fix problem
79         with calling gtk_widget_set_style_internal() with
80         the old style, not the new style. (#56989)
81
82 Wed Jul  4 22:35:40 2001  Owen Taylor  <otaylor@redhat.com>
83
84         * gtk/gtklabel.c gtk/gtkmenubar.c gtk/gtktreeviewcolumn.c
85           gtk/gtkwidget.c:
86         Check GTK_WIDGET_TOPLEVEL(gtk_widget_get_toplevel (widget)),
87         not GTK_WIDGET_GET_ANCESTOR ... see 
88         http://mail.gnome.org/archives/gtk-devel-list/2001-July/msg00072.html.
89         Indicate the best practice in the docs for gtk_widget_get_toplevel().
90
91         * gtk/gtkwidget.[ch]: Expose a private _gtk_widget_hierarchy_changed(),
92         so GtkPlug can give the correct signals when transforming
93         from a child to a toplevel.
94         
95         * gtk/gtkdnd.c (gtk_drag_dest_hierarchy_changed): Handle
96         reparentation correctly.
97
98         * gtk/gtkwidget.c (gtk_widget_propagate_hierarchy_changed):
99         Propagate the previous_toplevel argument down properly.
100
101         * gtk/gtklabel.c (gtk_label_finalize): Fix unrefing
102         of wrong atr list.
103
104         * gtk/gtkplug.[ch]: Add an "embedded" signal.
105
106         * gtk/gtksocket.[ch]: Add "child_added", "child_removed"
107         signals.
108
109         * gtk/gtkplug.[ch] gtk/gtksocket.[ch]: Add 
110         functions gtk_plug_get_id(), gtk_socket_get_id(),
111         to avoid the user having to worry about realization,
112         and gdkx.h.
113
114         * tests/testsocket.c: Extend to try out the new signals
115         and gtk_plug/socket_get_id().
116
117         * gtk/gtklabel.c (gtk_label_set_pattern_internal): Fix
118         setting of underline attributes.
119
120         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Ignore
121         DestroyNotify events from SubstructureNotifyMask
122
123         * gdk/x11/gdkwindow-x11.c (gdk_window_reparent):
124         Switch GDK_WINDOW_TYPE (window) as needed.
125
126         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Clean up,
127         allow creation of toplevel windows as children of
128         foreign windows.
129
130         * gtk/gtkplug.c: Remove hacks involving changing private
131         fields of GdkWindow.
132
133         * gtk/gtkplug.[ch] gtk/gtksocket.c: Work to make 
134         exactly the same signals and notification
135         be emitted for local embedding as for inter-process
136         embedding.
137
138 2001-07-04  James Henstridge  <james@daa.com.au>
139
140         * gtk/gtkliststore.h: add missing gtk_list_store_newv prototype.
141
142 Mon Jul  2 16:53:25 2001  Owen Taylor  <otaylor@redhat.com>
143
144         * gtk/xembed.h gtk/gtkplug.c gtk/gtksocket.c: For
145         XEMBED embedding add a _XEMBED_INFO property to the
146         client with version number and a "mapped" flags.
147         Use the mapped flag instead of the racy MapRequestEvent
148
149         * gtk/gtksocket.c: Clean up the gtk_socket_steal()
150         code to reliably set things (when the child is a passive
151         embedder participating in the XEMBED protocol) intead
152         of just being a hack for embedding non-participating
153         programs. Fix various bugs and race conditions.
154         
155         * gtk/gtksocket.[ch] gtk/gtkplug.[ch]: Make local embedding
156         work by simply making the GtkSocket the gtk parent
157         of the GtkPlug. Set a flag in this case and make
158         the GtkPlug work like a normal container by overriding
159         methods such as check_resize and "chaining past" GtkWindow
160         to GtkBin.
161
162         * gtk/gtkentry.c (gtk_entry_real_activate)
163           gtk/gtkmain.c (gtk_propagate_event): 
164         Eliminate use of gtk_widget_get_ancestor (widget, GTK_TYPE_WINDOW).
165         
166         * gtk/gtkwidget.c (gtk_widget_get_toplevel,
167         gtk_widget_get_ancestor):
168         Explain why gtk_widget_get_ancestor (widget, GTK_TYPE_WINDOW)
169         might not give the expected result and recommend
170         an alternative.
171
172         * tests/testsocket.c tests/testsocket_child.c
173         tests/testsocket_common.c tests/Makefile.am: Extended
174         to test different type of adding plugs to sockets
175         (local,active,passive), and to test mapping/unmapping
176         the plug.
177
178         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Don't
179         mark the window as destroyed until after we
180         called _gdk_windowing_window_destroy().
181         (_gdk_windowing_window_destroy() may use GDK functions
182         on the window.)
183
184         * gdk/x11/gdkinput.c: Remove the check for finalization - 
185         devices can be finalized under some circumnstances.
186  
187         * gdk/x11/gdkinput-x11.c (gdk_input_device_new): Fix 
188         small problem with GDK_TYPE_DEVICE.
189  
190 2001-07-02  Havoc Pennington  <hp@pobox.com>
191
192         * gdk/x11/gdkwindow-x11.c (gdk_wmspec_change_state): fix to 
193         use constants not atoms.
194
195 2001-07-02  James Henstridge  <james@daa.com.au>
196
197         * gtk/gtktextview.c (gtk_text_view_class_init): same here for
198         PANGO_TYPE_TAB_ARRAY.
199
200         * gtk/gtktexttag.c (gtk_text_tag_class_init): same here, but also
201         for PANGO_TYPE_TAB_ARRAY.
202
203         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_class_init):
204         s/GTK_TYPE_PANGO_FONT_DESCRIPTION/PANGO_TYPE_FONT_DESCRIPTION/
205
206         * gtk/gtk-boxed.defs: move all the boxed definitions to the top of
207         the file.  Remove Pango types from defs -- they are now defined in
208         libpango.
209
210 Mon Jul  2 06:35:10 2001  Tim Janik  <timj@gtk.org>
211
212         * gdk/gdkkeys.c (gdk_keymap_class_init): s/signal_newc/signal_new/
213
214         * gtk/gtkobject.c (gtk_object_destroy): invoke
215         g_object_run_dispose().
216
217         * gtk/gtkwindow.c: 
218         * gtk/gtkwidget.c: 
219         * gtk/gtkobject.c:
220         * gtk/gtklist.c: s/shutdown/dispose/ for the GObject
221         method.
222
223 Sat Jun 30 20:44:48 2001  Owen Taylor  <otaylor@redhat.com>
224
225         * gtk/gtktypeutils.c (gtk_type_class): Remove
226         change check for GTK_TYPE_OBJECT derivation to
227         G_TYPE_OBJECTS - it's Tim-approved to use this 
228         for arbitary objects.
229
230         * gtk/gtkwindow.c gtk/gtkcontainer.[ch]: underscore
231         prefix gtk_container_dequeue_resize_handler().
232
233         * gtk/gtkwidget.[ch]: Add a previous_toplevel argument
234         to the hierarachy_changed signal, since you otherwise
235         have to always keep that around.
236
237         * gtk/gtkmenubar.c gtk/gtklabel.c gtk/gtksocket.c: Adapt
238         for extra argument to hierarchy_changed.
239
240 Tue Jun 26 19:39:03 2001  Owen Taylor  <otaylor@redhat.com>
241
242         * gtk/gtkwidget.c (gtk_widget_set_style): Allow %NULL
243         for style to mean "revert to default style"
244
245         * gtk/gtkwidget.[ch] (gtk_widget_set_rc_style,
246           gtk_widget_restore_default_style): Make this functions
247         deprecated aliases for gtk_widget_set_style (widget, NULL).
248
249         * gtk/gtkwidget.[ch]: Remove:
250            gtk_widget_set_default_style ()
251            gtk_widget_push_style ()
252            gtk_widget_pop_style ()
253         These functions interact are overriden by RC files, and
254         thus virtually useless, and complicated.
255
256 Fri Jun 22 18:49:48 2001  Owen Taylor  <otaylor@redhat.com>
257
258         * gtk/gtkrc.c: Add a GtkRcContext structure to hold 
259         most of the previous global variables in gtkrc.c. This is
260         in preparation for multi-head, since each screen can
261         have different GtkSettings and RC information.
262
263         * gtk/gtkrc.[ch]: 
264
265         * gtk/gtkrc.h (struct _GtkRcStyleClass): Add a
266         GtkSettings parameter to GtkRcStyle::parse.
267
268         * gdk/x11/gdkevents-x11.c gtk/gtksettings.c gtk/gtkrc.c: 
269         Add two new settings gtk-theme-name, gtk-key-theme-name,
270         for RC files that are loaded by name after reading
271         the default RC files.
272         
273         * gtk/gtkrc.c: Allow priorities for styles, as wll as
274         bindings.
275
276         * gtk/gtkenums.h gtk/gtkrc.c: Add GTK_PATH_PRIO_THEME,
277         and use it by default for RC files loaded via 
278         gtk-theme-name, gtk-key-theme-name.
279
280         * gtk/gtkiconfactory.c (gtk_icon_source_set_filename)
281         gtk/gtkrc.c (gtk_rc_parse_pixmap_path_string) 
282         tests/testgtkrc: Require pathnames to be absolute.
283
284         * gtk/gtkrc.c gtk/gtkiconfactory.c: Look up the full filename for
285         the source when parsing, since the operation of looking up a
286         pixmap from an RC file depends on the parsing context.
287
288         * gtk/gtkrc.c (gtk_rc_context_reparse_all): Automatically
289         reset RC styles on all widgets when files are reparsed.
290
291         * tests/testgtk.c (create_rc_file) 
292           gtk/gtkwindow.c (gtk_window_read_rcfiles): 
293         Simplify, now that gtk_rc_reparse_all() resets styles on
294         all widgets itself.
295
296         * gtk/gtkmain.c (gtk_get_default_language): Fix broken
297         return value.
298
299         * gtk/gtksettings.[ch] (gtk_settings_install_property[_ch]): Remove
300         GtkSettings argument.
301
302         * gtk/gtksettings.[ch] (gtk_settings_get_default): Rename from
303         gtk_settings_get_global().
304
305         * gtk/gtkwidget.[ch]: Add a function gtk_widget_Get_settings()
306         to get the appropriate GtkSettings for a widget. (For now,
307         just gets the default GtkSetttings.) 
308
309         * gtk/gtkcolorsel.c gtk/gtkentry.c gtk/gtkmenu.c gtk/gtkmenubar.c
310           gtk/gtktextview.c gtk/gtktoolbar.c: Fixes for GtkSettings
311         changes.
312
313         * gtk/gtkrc.[ch]: Add gtk_rc_get_style_by_paths() to allow
314         getting a style for a path without actually having a widget.
315         (Allows using a style for a subpart of a widget, for
316         example.)
317
318         * gtk/gtkrc.[ch]: Add gtk_rc_reparse_all_for_setting() to allow forcing
319         the RC files to be reloaded for just one GtkSettings
320         (not sure how useful this really is.)
321
322         * gtk/gtkrc.h: Deprecate
323         gtk_rc_add_widget_name/widget_class/class_style
324
325 2001-06-30  Alex Larsson  <alexl@redhat.com>
326
327         * gdk/linux-fb/gdkinput-none.c:
328         * gdk/linux-fb/gdkinput.c:
329         * gdk/linux-fb/gdkinputprivate.h:
330         Convert GdkDevice to a GObject.
331
332         * linux-fb/gdkprivate-fb.h:
333         * linux-fb/gdkvisual-fb.c:
334         Convert GdkVisual to a GObject.
335
336 2001-06-29  Alex Larsson  <alexl@redhat.com>
337
338         * gdk/gdkvisual.h:
339         * gdk/gdkcolor.c:
340         * gdk/x11/gdkx.h:
341         * gdk/x11/gdkvisual-x11.c:
342         Convert GdkVisual to a GObject.
343
344         * gdk/gdkinput.h:
345         * gdk/gdkevents.c:
346         * gdk/x11/gdkinputprivate.h:
347         * gdk/x11/gdkinput-gxi.c:
348         * gdk/x11/gdkinput-none.c:
349         * gdk/x11/gdkinput-x11.c:
350         * gdk/x11/gdkinput-xfree.c:
351         * gdk/x11/gdkinput.c:
352         Convert GdkDevice to a GObject.
353
354 Fri Jun 29 22:13:28 2001  Jonathan Blandford  <jrb@redhat.com>
355
356         * gtk/gtktreestore.c (gtk_tree_store_new): changed new_with_types
357         to just plain new, fixing the number of columns, and column types
358         at creation time.
359
360         * gtk/gtkliststore.c (gtk_list_store_new): ditto.
361
362         * gtk/gtkcellrenderertext.c
363         (gtk_cell_renderer_text_set_fixed_height_from_font): FIX the
364         height to a specific font.
365
366         * gtk/gtktreeview.c (gtk_tree_view_is_expander_column): fix brokenness.
367
368         * tests/*c: change to work with new store models.
369
370 2001-06-29  Havoc Pennington  <hp@redhat.com>
371
372        * Throughout: fixes to compile with G_DISABLE_COMPAT
373         (s/g_signal_connectc/g_signal_connect/,
374         s/g_signal_newc/g_signal_new/,
375         s/g_signal_disconnect_by_func/g_signal_handlers_disconnect_by_func/)
376
377 Fri Jun 29 03:14:16 2001  Jonathan Blandford  <jrb@webwynk.net>
378
379         * gtk/gtktreeselection.c (gtk_tree_selection_selected_foreach):
380         add path argument to selection callbacks.
381
382 Fri Jun 29 00:13:34 2001  Jonathan Blandford  <jrb@redhat.com>
383
384         * gtk/gtktreemodel.c (gtk_tree_model_foreach): New function to
385         walk through a model in a depth first manner, with the option to
386         break out.
387
388 Fri Jun  8 18:52:10 2001  Jonathan Blandford  <jrb@redhat.com>
389
390         * gtk/gtktreeview.[hc]: Patch Thomas Broyer from
391         <tbroyer@ltgt.net>. Expander arrows are now attached to a specific
392         column and follow it when draged, rather than a location in the
393         view. "expander_column" property and drawing functions changed
394         accordingly.  Fixes bug #55942.
395
396         (gtk_tree_view_{set,get}_expander_column): Now works with a
397         GtkTreeViewColumn* instead of int.
398
399 Thu Jun 28 22:53:18 2001  Owen Taylor  <otaylor@redhat.com>
400
401         *  gdk/gdk.c gtk/gtktypeutils.c: Fix args to g_type_init(). 
402
403 2001-06-28  Havoc Pennington  <hp@pobox.com>
404
405         * gdk/x11/gdkimage-x11.c (_gdk_x11_get_image): Clip the retrieved
406         image data to the screen, using a server grab to avoid race
407         conditions.
408
409         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): remove 
410         check for NULL return from gtk_image_new_from_stock(), it never
411         returns NULL.
412         (gtk_item_factory_create_item): fix bug where we parsed the stock
413         ID as an inline pixbuf
414
415         * gtk/gtktext.c (gtk_text_key_press): numeric keypad support
416
417         * gtk/gtkspinbutton.c (gtk_spin_button_key_press): numeric keypad
418         support (should be using binding set here)
419
420         * gtk/gtkoptionmenu.c (gtk_option_menu_key_press): numeric keypad
421         support (should be using binding set here)
422
423         * gtk/gtkmenushell.c (gtk_menu_shell_class_init): numeric keypad 
424         support
425
426         * gtk/gtkmenu.c (gtk_menu_class_init): numeric keypad support
427
428         * gtk/gtkmenubar.c (gtk_menu_bar_class_init): numeric keypad
429
430         * gtk/gtklistitem.c (gtk_list_item_class_init): numeric keypad
431
432         * gtk/gtkimcontextsimple.c
433         (gtk_im_context_simple_filter_keypress): keypad
434
435         * gtk/gtkfilesel.c (gtk_file_selection_key_press): keypad 
436
437         * gtk/gtkentry.c (gtk_entry_class_init): numeric keypad fixes
438
439         * gtk/gtkctree.c (gtk_ctree_class_init): numeric keypad support
440
441         * gtk/gtkcolorsel.c (palette_activate): keypad support (of course,
442         should be binding-setted)
443
444         * gtk/gtkwindow.c (gtk_window_class_init): numeric keypad fixes
445
446         * gtk/gtkclist.c (gtk_clist_class_init): numeric keypad fixes
447
448         * gtk/gtkcalendar.c: numeric keypad fixes
449
450         * gtk/gtktextview.c (gtk_text_view_class_init): numeric keypad
451         support
452
453         * gdk/gdkwindow.c (gdk_window_get_clip_region): fix infinite loop
454         screwup
455
456         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha): 
457         clip the render area to the drawable's clip region in advance,
458         so we don't get data from the server that we don't need.
459
460         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
461         check return value of gdk_pixbuf_get_from_drawable(), fall back 
462         to bilevel alpha if we can't get the pixbuf to composite against.
463
464         * gdk/gdkdraw.c (gdk_drawable_get_image): set the image colormap
465
466         * gdk/gdkimage.c (gdk_image_get_colormap): add
467         gdk_image_set_colormap, gdk_image_get_colormap
468
469         * gdk/gdkpixbuf-drawable.c (rgbconvert): Change all converters to
470         take a region of the image, instead of converting the entire
471         image.
472
473         * gtk/gtkwidget.h (struct _GtkWidgetClass): add show_help
474         keybinding signal. Add default bindings for it. Add default
475         handler for show_help that shows the tooltip for the widget.
476
477         * gtk/gtkdialog.c (gtk_dialog_class_init): add binding set and
478         "close" keybinding signal, remove key press handler.
479
480         * gtk/gtktooltips.c (gtk_tooltips_set_colors): Just remove this,
481         it's not our usual practice to leave a deprecated function around
482         with a runtime warning, plus we don't want it to appear in docs,
483         plus if we make them yellow no one will want to change them
484         anyhow.
485
486 Thu Jun 28 23:53:31 2001  Tim Janik  <timj@gtk.org>
487
488         * gtk/gtkwidget.c (gtk_widget_hide): !GTK_OBJECT_DESTROYED() ->
489         GTK_WIDGET_REALIZE() for resize queueing.
490
491         * gtk/gtkmain.c (gtk_main_do_event): !GTK_OBJECT_DESTROYED() ->
492         GTK_WIDGET_REALIZE() for post event delivery destruction upon
493         GDK_DESTROY.
494         
495         * gtk/gtkwidget.c: added GtkWidget::event-after notification signal, to
496         sompensate for former (pre-2.0) connect_after() facility.
497         (gtk_widget_send_expose): 
498         (gtk_widget_event): assert the widget is realized, since event delivery
499         to non-realized widgets is essentially a bug. event handlers should
500         be able to unconditionally rely on widget->window (unless they
501         emit events on their own which can trigger widget destruction).
502         (gtk_widget_event_internal): removed old outdated GTK_OBJECT_DESTROYED()
503         logic. event delivery happens as follows:
504         a) emission of GtkWidget::event (RUN_LAST handler). returns was_handled.
505         b) if !was_handled in (a) and the widget is still realized, emit event-
506            specific signal (RUN_LAST handler). returns was_handled.
507         c) emission of GtkWidget::event-after for notification if the widget is
508            still realized (regardless of was_handled from previous stages, no
509            class handler). no return value.
510         d) was_handled gets passed on to caller, to determine further
511            propagation. if the widget got unrealized meanwhile, was_handled
512            is returned as TRUE.
513
514         * gdk/gdkevents.[hc]: added gdk_event_get_root_coords() and
515         gdk_event_get_coords().
516
517 Thu Jun 28 17:18:41 2001  Tim Janik  <timj@gtk.org>
518
519         * configure.in (GTK_MICRO_VERSION): up version to 1.3.7, interface
520         age 0, binary age 0. depend on glib 1.3.7.
521
522         * gtk/gtkcontainer.c: remove g_signal_handlers_disconnect_by_func() hack.
523
524         * gtk/gtkmenubar.c: same here.
525         
526         * gtk/gtkcontainer.c (gtk_container_focus_tab): fix param-spec retrival.
527
528         * gtk/gtkcolorsel.c (gtk_color_selection_init): fix connect_data() usage.
529
530         * gtk/gtkentry.c (gtk_entry_focus_in): same here.
531         
532         * gtk/gtkmenubar.c (add_to_window): likewise.
533         
534         * gtk/gtktextbtree.c: and here...
535         
536         * gtk/gtktextview.c (gtk_text_view_ensure_layout): same thing.
537         
538         * gtk/gtktoolbar.c (gtk_toolbar_init): once more.
539         
540         * gtk/gtktreemodel.c (connect_ref_callbacks): and another time.
541         
542         * gtk/gtktreeviewcolumn.c:
543         (_gtk_tree_view_column_set_tree_view): yet again.
544
545         * demos/gtk-demo/images.c (progressive_timeout): demonstrate
546         signal connections without g_signal_connect_data().
547         
548         * demos/gtk-demo/stock_browser.c (do_stock_browser): second
549         demo of the matter.
550         
551         * demos/testpixbuf.c (main): running out of equality phrases for the
552         ChangeLog, but had to adapt connections here as well.
553         
554         * demos/testanimation.c (progressive_timeout): and for the fun of it,
555         tackled this the same way.
556         
557         * tests/testtext.c (create_view): ok, it's becoming a pain at this
558         point, but had enough enery for one more fix.
559
560         * tests/testtreecolumns.c (main): stand up man, do your work!
561
562         * tests/testtreeview.c (set_columns_type): ok, this is the last file i
563         fix, either that's been all of it or CVS gtk is broken yet again.
564         
565 2001-06-29  James Henstridge  <james@daa.com.au>
566
567         The following changes correspond to bug #56812
568
569         * gdk/gdkinput.h, gdk/gdkevents.c (GDK_TYPE_DEVICE): register type
570         code for GdkDevice.
571
572         * gdk/gdkcursor.[ch] (GDK_TYPE_CURSOR): register type code for
573         GdkCursor.
574
575 2001-06-19  Havoc Pennington  <hp@pobox.com>
576
577         * gdk/x11/gdkwindow-x11.c (gdk_window_show_unraised): new function
578         for mapping a window without fooling with stacking order, but
579         updating the "withdrawn" flag
580
581         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Do event
582         filtering as soon as possible, moving move resize and wmspec_check
583         handling after the event filter.  Make default filter apply to all
584         events, not just those with no GdkWindow wrapped around the X
585         window. Fix a FIXME about how the window could be a pixmap using 
586         RTTI; this of course assumes GDK_IS_WINDOW() is optimized. 
587
588         Also, be robust against events not on a known GdkWindow.
589
590         * gdk/x11/gdkmain-x11.c (gdk_x11_grab_server,
591         gdk_x11_ungrab_server): export reference-counted server grabs, so
592         other people can grab server over a GDK function that also does
593         so.
594
595 Wed Jun 27 19:40:31 2001  Jonathan Blandford  <jrb@redhat.com>
596
597         * gtk/gtktreeviewcolumn.c
598         (gtk_tree_view_column_pack_start_cell_renderer): New function to
599         reflect that you can (hypothetically) pack cell renderers into a
600         column.
601         (gtk_tree_view_column_pack_end_cell_renderer): ditto.
602         (gtk_tree_view_column_cell_is_visible): Move more functionality to
603         the column.
604         (gtk_tree_view_column_cell_can_focus): Move more functionality to
605         the column.
606
607         * gtk/gtktreeview.c: Move to use new column-packing code.
608         (gtk_tree_view_real_expand_row): remove totally braindead code.
609         (gtk_tree_view_real_collapse_row): ditto.
610
611 2001-06-27  Kjartan Maraas  <kmaraas@gnome.org>
612
613         * gtk/gtktreeviewcolumn.c: Fix a typo.
614         
615 2001-06-26  Joel Becker  <jlbec@evilplan.org>
616
617         * gdk-pixbuf/gdk-pixbuf-csource.c: remove '#include "x"' line
618           at the end of the file
619
620 2001-06-26  Havoc Pennington  <hp@redhat.com>
621
622         * gtk/gtkwindow.c (gtk_window_set_policy): forgot a notification
623
624 2001-06-26  Havoc Pennington  <hp@redhat.com>
625
626         * gtk/gtkwindow.c (gtk_window_class_init): add "resizable"
627         property
628
629 Tue Jun 26 12:59:28 2001  Jonathan Blandford  <jrb@redhat.com>
630
631         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_set_model): fix
632         stupid missing statement
633
634         * gtk/gtktreeview.c (gtk_tree_view_set_destroy_count_func): New
635         private function for ATK.  It notifies you of how many _visible_
636         children are deleted when a node is deleted.  Should be used by
637         atk only.
638
639 Tue Jun 26 11:06:34 2001  Owen Taylor  <otaylor@redhat.com>
640
641         * gtk/gtkclist.c gtk/gtkentry.c gtk/gtkspinbutton.c:
642         Use new pango_context_get_metrics() to fix problems
643         with font lists in descriptions. (#56184, reported by
644         Jonas Borgström)
645
646 Tue Jun 26 10:04:30 2001  Tim Janik  <timj@gtk.org>
647
648         * gtk/gtkiconfactory.c:
649         * gtk/gtkitemfactory.c: use gdk_pixbuf_new_from_stream(). fixed up
650         item factory so inlined pixbufs actually work.
651
652 2001-06-25  Havoc Pennington  <hp@redhat.com>
653
654         * gtk/gtktreeviewcolumn.h, gtk/gtktreeviewcolumn.c:
655         s/RESIZEABLE/RESIZABLE/
656
657         * gtk/gtkwindow.c, gtk/gtkwindow.h: s/resizeable/resizable/
658
659 2001-06-25  Alexander Larsson  <alexl@redhat.com>
660
661         * configure.in:
662         Added --enable-fbmanager. This is some experimental code
663         that lets several GtkFB apps coordinate their access to the
664         framebuffer.
665         
666         * acconfig.h:
667         Added ENABLE_FB_MANAGER.
668
669         * gdk/linux-fb/Makefile.am:
670         Added gdkfbmanager and gdkfbswitch.
671
672         * gdk/linux-fb/gdkkeyboard-fb.c:
673         * gdk/linux-fb/gdkmouse-fb.c:
674         * gdk/linux-fb/gdkprivate-fb.h:
675         Split device init and open so that
676         they can be opened and closed while switched
677         away.
678
679         * gdk/linux-fb/gdkmain-fb.c:
680         Add the basic manager communication.
681
682         * gdk/linux-fb/gdkrender-fb.c:
683         Don't update to the shadow fb if we're
684         blocked by the fb manager.
685
686 Sun Jun 24 22:15:16 2001  Owen Taylor  <otaylor@redhat.com>
687
688         * docs/Changes-2.0.txt: Add note about child property
689         changes.
690
691 Sun Jun 24 21:34:32 2001  Owen Taylor  <otaylor@redhat.com>
692
693         * gtk/gtkenums.h gtk/gtkiconfactory.c: Add a special size for
694         drag-and-drop GTK_ICON_SIZE_DND (Default to 32x32)
695
696         * gtk/gtkdnd.c (gtk_drag_dest_set_target_list): Fix problem
697         with un'reffing wrong list reported by Jeff Franks.
698
699         * gtk/gtkdnd.[ch] (_gtk_drag_{source,}dest_handle_event): _prefix.
700
701         * gtk/gtkdnd.c (gtk_drag_set_icon_default): Use GTK_STOCK_DND
702         for the default icon. Remove inline XPM.
703
704         * gtk/gtkstock.h gtk/gtkiconfactory.c:
705         Add GTK_STOCK_DND GTK_STOCK_DND_MULTIPLE (Currently, stock_new
706         is used for GTK_STOCK_DND, but it is a bit too small.)
707
708         * gtk/stock-icons/stock_dnd_multiple.png
709         gtk/stock-icons/Makefile.am: New stock icon moved from gnome-libs.
710
711         * gtk/gtkdnd.c (gtk_drag_source_event_cb): Only return
712         TRUE when starting a drag. In other cases, we are
713         just observing. (#52995)
714
715         * gtk/gtkdnd.[ch] (gtk_drag_set_icon_{stock,pixbuf}): Add 
716         function to set the icon for a drag from a GdkPixbuf
717         or stock ID.
718
719         * gtk/gtkdnd.[ch] (gtk_drag_source_set_icon_{stock,pixbuf}): 
720         Likewise, for drag sources.
721
722         * gtk/gtkdnd.h: Deprecate gtk_drag_set_default_icon.
723         (Now should be done using the stock system.)
724
725 Sun Jun 24 12:06:47 2001  Owen Taylor  <otaylor@redhat.com>
726
727         * gtk/gtktextview.[ch] (gtk_text_view_set_text_window_size): 
728         Removed - didn't work and not particularly useful anyways
729         if it did. 
730
731 Sun Jun 24 11:29:35 2001  Owen Taylor  <otaylor@redhat.com>
732
733         * gdk/x11/gdkimage-x11.c (gdk_image_new): Fix stupid error
734         introduced last night that was making things decidedly not work.
735
736         * gtk/*.[ch]: Patch from Kristian Rietveld adding 80 getters
737         so that we have getter/setter pairing everywhere it makes
738         sense. (#55767)
739
740         * gtk/gtkradiobutton.[ch] gtk/gtktoolbar.c tests/testgtk.:
741         Rename gtk_radio_button_group to gtk_radio_button_get_group, add a
742         deprecated compat macro. (#55516)
743
744         * gtk/gtklabel.[ch]: Add functions
745         gtk_label_set/get_use_underline(), gtk_label_set/get_use_markup(),
746         gtk_label_set_label(), which mirror the property API for GtkLabel.
747         Make gtk_label_get_attributes() only reflect the attributes
748         set by gtk_label_set_attributes.
749
750         * gtk/gtknotebook.c (gtk_notebook_set_current_page) gtk/gtkcompat.h: Rename
751         from gtk_notebook_set_page().
752
753 Sat Jun 23 18:02:46 2001  Owen Taylor  <otaylor@redhat.com>
754
755         * configure.in: Fix tests for XShm.h.
756
757         * gdk/x11/gdkimage-x11.c: Cleanup error handling in
758         gdk_image_new() by use of goto, properly use g_object_unref().
759
760 Sat Jun 23 22:03:20 2001  Tim Janik  <timj@gtk.org>
761
762         * gdk/x11/gdkimage-x11.c (gdk_image_init): disabled g_free (image)
763         calls, as GdkImage is an object. these should be g_obejct_unref()
764         instead but that won't work because of the g_error() statement
765         in gdk_x11_image_destroy(). so for now, i did s/g_free/LEAK_IMAGE/
766         to spot these places.
767
768 Sat Jun 23 10:27:53 2001  Owen Taylor  <otaylor@redhat.com>
769
770         * modules/input/gtkimcontextxim.c: Fixup some problems with 
771         text length handling in error cases.
772
773         * gtk/gtkwidget.c (gtk_widget_size_allocate): Reorder
774         a bit to make test actually warn on attempt to allocation
775         a negative size. (#56101, Matthias Clasen)
776
777 Fri Jun 22 14:06:08 2001  Jonathan Blandford  <jrb@redhat.com>
778
779         * gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): Fix bug
780         noticed by Brian Cameron.
781         (gtk_tree_view_real_expand_row): Fix bug noticed by Brian
782         Cameron.
783
784 2001-06-22  Hans Breuer  <hans@breuer.org>
785
786         * gdk/gdk.def : updated externals
787
788         * gdk/win32/gdkdrawable-win32.c : corrected some casts
789         in GDK_NOTEs
790
791         * gdk/win32/gdkevents-win32.c : use _gdk_windowing_window_get_offsets
792         to translate coordinates to the internal > 16 bit system
793         Try to handle WM_WINDOWPOSCHANGED to get better performance for
794         when moving/resizing
795
796         * gdk/win32/gdkkeys-win32.c : implement gdk_keymap_get_default ()
797         and gdk_keymap_get_direction (). The latter is untested for
798         the RTL case
799
800         * gtk/gtk.def : updated externals
801
802         * gtk/gtkmain.c : gtk_get_default_language () should reurn the result
803         from pango_language_from_string (), not an already freed pointer
804
805         * gtk/stock-icons/stock_menu_sort_ascending.png : PNGs need to be 
806         binary (-kb) to be useable on windoze
807  
808 2001-06-21  Alexander Larsson  <alexl@redhat.com>
809
810         * gdk/linux-fb/gdkfont-fb.c (gdk_font_from_description): 
811         Update to new PangoLanguage changes.
812         
813         * gtk/gtkwindow-decorate.c:
814         * gtk/gtkwindow.[ch]:
815         Added setting argument to gtk_window_set_has_frame ()
816         
817 Thu Jun 21 13:42:01 2001  Owen Taylor  <otaylor@redhat.com>
818
819         * gdk/x11/gdkkeys-x11.c (gdk_keymap_get_direction): Handle
820         the case without XKB properly.
821
822         * gtk/gtkrc.c (gtk_rc_set_default_files): Remove
823         unused gtk_rc_auto_parse variable.
824
825         * gtk/gtkrc.[ch] gtk/gtkstyle.c docs/Changes-2.0.txt:
826         Remove gtk_rc_set_image_loader(), gtk_rc_load_image(), no
827         longer needed with GdkPixbuf.
828
829         * gtk/gtkrc.c (_gtk_rc_init): Make private.
830
831 Fri Jun 15 16:26:12 2001  Owen Taylor  <otaylor@redhat.com>
832
833         * gtk/gtkentry.h: Mark deprecated functions with
834         GTK_DISABLE_DEPRECATED.
835
836 Mon Jun 11 18:15:16 2001  Owen Taylor  <otaylor@redhat.com>
837
838         * gdk/gdk.h: Add missing gdk_rectangle_get_type() prototype.
839
840         * gtk/gtk[hv]scale.c: Include math.h, stdlib.h
841
842         * gdk/gdkpango.h gtk/gtkclist.c gtk/gtkentry.c gtk/gtkmain.[ch]
843           gtk/gtkspinbutton.c gtk/gtkstyle.c gtk/gtktextbuffer.c
844           gtk/gtktextdisplay.c gtk/gtktextiter.[ch]
845           gtk/gtktextlayout.c gtk/gtktexttag.[ch] gtk/gtkwidget.c: Adapt
846           to recent changes in Pango.
847
848         * tests/testgtk.c: Set language tags with gtk_label_set_markup()
849           to test whether the basic engine honors them.
850
851 Thu Jun 21 02:13:40 2001  Tim Janik  <timj@gtk.org>
852
853         * gtk/gtkcontainer.[hc]: added gtk_container_child_set_property() and
854         gtk_container_child_get_property().
855
856 Wed Jun 20 19:19:15 2001  Jonathan Blandford  <jrb@redhat.com>
857
858         * gtk/gtktreeview.c (gtk_tree_view_move_cursor_up_down): clean up
859         (gtk_tree_view_move_cursor_page_up_down): implement.
860
861 Wed Jun 20 05:32:05 2001  Tim Janik  <timj@gtk.org>
862
863         * gtk/gtkspinbutton.c: make maximum digits compile time configurable
864         via MAX_DIGITS and up to 20. 5 was just ridiculously small.
865         don't use automatic fixed size buffer for printf-ing floats, doubles
866         can expand to really _huge_ strings, use g_strdup_printf() instead.
867
868 Wed Jun 20 04:28:24 2001  Tim Janik  <timj@gtk.org>
869
870         * gtk/gtkrange.c (gtk_range_class_init): hum, "adjustment" was a
871         construct property in 1.2 and still needs to be.
872
873         * gtk/gtkwidget.c: "composite_child" is not a settable property.
874
875 Tue Jun 19 19:13:19 2001  Jonathan Blandford  <jrb@redhat.com>
876
877         * gtk/gtkliststore.c (gtk_list_store_clear): 
878         * gtk/gtktreestore.c (gtk_tree_store_clear): New functions to
879         clear a model.
880
881 Mon Jun 18 02:00:49 2001  Tim Janik  <timj@gtk.org>
882
883         * gtk/gtkwidget.c (gtk_widget_get_property): fix PROP_EVENTS.
884
885         * gtk/Makefile.am:
886         * gtk/gtk.h: disabled GtkPacker compilation.
887
888         * gtk/gtkarg.[hc], gtk/gtkargcollector.c: got rid of these.
889
890         * gtk/gtknotebook.c:
891         * gtk/gtktable.c:
892         * gtk/gtkbox.c: ported this over to child properties.
893
894         * gtk/gtksettings.c: fetch class properties via
895         g_object_class_list_properties().
896
897         * gtk/gtkcontainer.[hc]: implemented child properties, got rid of the
898         child arg interface. use gobjectnotifyqueue.c for child property
899         notification.
900
901         * gtk/gtkwidget.[hc]: provide necessary means for container child
902         properties, i.e. ::child_notify signal,
903         gtk_widget_freeze_child_notify(),
904         gtk_widget_child_notify(),
905         gtk_widget_thaw_child_notify().
906
907         * tests/testgtk.c: removed inferior property handling code, for
908         property editing, a generic module should be used, and GLE
909         coincidentally fullfills that purpose.
910
911         * docs/reference/Makefile.am: disabled gtk docs building, gtk-doc
912         needs to be adapted to g_object_class_list_properties() before this
913         builds again.
914
915 Mon Jun 18 20:06:10 2001  Jonathan Blandford  <jrb@redhat.com>
916
917         * gtk/gtktreeview.c (gtk_tree_view_row_expanded): New function to
918         test if a node is expanded.
919
920 Mon Jun 18 19:41:38 2001  Jonathan Blandford  <jrb@redhat.com>
921
922         * gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): Fix bug
923         where collapsing a selected row would result in the cursor/anchor
924         getting screwed up.
925
926 Fri Jun 15 18:53:48 2001  Jonathan Blandford  <jrb@redhat.com>
927
928         * gtk/gtktreesortable.c (gtk_tree_sortable_set_sort_func): Rename
929         gtk_tree_sortable_sort_column_id_set_func.  It's much shorter now.
930         * gtk/gtktreeview.c (gtk_tree_view_sort_iter_changed): WOOO!!!
931         Now I can really reorder/sort all Store widgets.  treesorttest
932         seems to just work now.
933         * gtk/gtklistview.c (gtk_list_store_iter_changed): Whoops.
934         testtreesort worked through a big coincidence all this time.
935         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): Nasty bug fix in nasty
936         code.
937         * tests/testtreecolumns.c: Big 'ol warning at the top letting
938         people know that this code should never ever ever be copied.
939
940 2001-06-15  Jonas Borgström  <jonas@codefactory.se>
941
942         * gtk/gtkwindow.h: Fixed a small typo, it should be
943         GTK_WINDOW_GROUP_GET_CLASS and not GTK_WINDOW_GET_CLASS
944         on line 134.
945
946 2001-06-14  Havoc Pennington  <hp@redhat.com>
947
948         Docs fixups, and:
949         
950         * gtk/gtkcompat.h: remove GTK_DISABLE_COMPAT_H, replace with
951         GTK_DISABLE_DEPRECATED
952
953 Thu Jun 14 19:21:27 2001  Jonathan Blandford  <jrb@redhat.com>
954
955         * gtk/gtktreestore.c (gtk_tree_store_sort_helper): Whoops.  Forgot
956         this a couple months ago.  Now GtkTreeStore sort of sorts.  I'll
957         finish it off tonight, though it basically works now when it's a
958         list.  Also, I have a sinking feeling neither GtkTreeStore or
959         GtkListStore actually resort when adding a new item.  I'll look
960         into it.
961
962 2001-06-14  Havoc Pennington  <hp@redhat.com>
963
964         * demos/gtk-demo/main.c (load_file): fix bug identified by
965         warnings I just added to gtktextbuffer
966
967 2001-06-14  Havoc Pennington  <hp@redhat.com>
968
969         * gtk/gtkwindow.c (window_group_cleanup_grabs): fix other typo
970
971         * gtk/gtkwidget.c (gtk_widget_propagate_state): fix typo
972
973         * gtk/gtktextbtree.c: don't leak node data all over the place.
974
975         * demos/gtk-demo/main.c (main): create fontify tags for the right
976         buffer
977
978         * gtk/gtktextbuffer.c, gtk/gtktexttagtable.c: enhance docs
979         to mention tags in the same table can't have the same name,
980         suggested by Skip Montanaro
981
982 2001-06-11  Havoc Pennington  <hp@redhat.com>
983
984         * gtk/gtktexttagtable.c (gtk_text_tag_table_add): improve warning 
985         for trying to add two tags with same name to the tag table
986
987         * demos/gtk-demo/main.c (main): fix colors ;-)
988
989 `Fri Jun  8 17:56:52 2001  Owen Taylor  <otaylor@redhat.com>
990
991         * gtk/gtkwindow.[ch] gtk/gtkmain.c: Add a GtkWindowGroup struct
992         that allows grouping together multiple windows so that grabs
993         within that set of windows only affect those windows.
994
995         * gtk/gtkmain.c gtk/gtkwidget.[ch]: Add a "grab_notify"
996         signal for notification when a widget becomes shadowed
997         by a grab or is no longer shadowed by a grab.
998
999         * gtk/gtkwidget.c (gtk_widget_propagate_state)
1000           gtk/gtkmain.c: (gtk_widget_grab_add): Don't allow
1001         insenstive widgets to maintain a grab.
1002
1003 2001-06-14  Alexander Larsson  <alexl@redhat.com>
1004
1005         * docs/README.linux-fb:
1006         Add some example config files that can be used with the URW fonts.
1007         
1008         * gdk/linux-fb/gdkvisual-fb.c (gdk_visual_init): 
1009         Set up the color ramps for DirectColor mode.
1010
1011 2001-06-11  Havoc Pennington  <hp@redhat.com>
1012
1013         * Release 1.3.6
1014          
1015 2001-06-13  Alexander Larsson  <alla@lysator.liu.se>
1016
1017         * gdk/linux-fb/gdkwindow-fb.c:
1018         Unify shaped window code and make it repaint the area that used
1019         to be part of the shape, but isn't anymore.
1020
1021 2001-06-11  Havoc Pennington  <hp@redhat.com>
1022
1023         * NEWS: Updates
1024
1025         * configure.in (GTK_MINOR_VERSION): bump version to 1.3.6
1026
1027         * gtk/Makefile.am: glib_genmarshal already contains top_builddir
1028         
1029 2001-06-13  Alexander Larsson  <alla@lysator.liu.se>
1030
1031         * gdk/linux-fb/gdkdnd-fb.c (gdk_drag_status):
1032         Don't pass on GDK_ACTION_DEFAULT. The Xdnd code
1033         passes zero instead, so do we.
1034         
1035 2001-06-13  Alexander Larsson  <alla@lysator.liu.se>
1036
1037         * gdk/linux-fb/gdkgc-fb.c (gdk_gc_copy):
1038         Deep copy dash_list too.
1039         (_gdk_fb_gc_new): Set default cap_style before
1040         setting values.
1041
1042 2001-06-12  Alexander Larsson  <alla@lysator.liu.se>
1043
1044         * gdk/linux-fb/gdkkeyboard-fb.c (gdk_keymap_get_default,
1045         gdk_keymap_get_direction): New functions.
1046
1047 Tue Jun 12 12:41:27 2001  Jonathan Blandford  <jrb@redhat.com>
1048
1049         * gtk/gtktreemodel.h (GTK_TREE_MODEL_LIST_ONLY): further justify
1050         gtk_tree_model_get_flags by adding a second flag for atk.
1051
1052         * gtk/gtktreemodel.c: make cursor behavior interact better with
1053         mouse presses.
1054
1055 Mon Jun 11 12:43:08 2001  Jonathan Blandford  <jrb@redhat.com>
1056
1057         * gtk/gtktreeview.c (gtk_tree_view_class_init): changed
1058         expand_row/collapse_row to be 2 signals each -- test_expand_row
1059         and row_expanded as well as test_collapse_row and row_collapsed.
1060
1061 2001-06-10  Anders Carlsson  <andersca@codefactory.se>
1062
1063         * demos/gtk-demo/stock_browser.c (do_stock_browser): Update
1064         signal name to be changed instead of selection_changed.
1065
1066 2001-06-08  Havoc Pennington  <hp@redhat.com>
1067
1068         * gtk/gtkentry.c (gtk_entry_class_init): add read-only
1069         "scroll_offset" property for notification when the layout offsets
1070         may have changed
1071         (gtk_entry_adjust_scroll): add notify for scroll_offset
1072         (gtk_entry_layout_index_to_text_index): function to compensate for
1073         preedit string when doing coordinate stuff on the entry's layout
1074         (gtk_entry_text_index_to_layout_index): inverse function
1075         (gtk_entry_get_layout_offsets): hook to get current position of
1076         the layout      
1077         (gtk_entry_get_layout): hook to get the layout itself.
1078
1079         * gtk/gtklabel.c (gtk_label_get_layout): new function
1080
1081 Fri Jun  8 19:49:29 2001  Jonathan Blandford  <jrb@redhat.com>
1082
1083         * gtk/gtktreeview.c (gtk_tree_view_real_select_cursor_row): New
1084         keybinding.
1085         (gtk_tree_view_focus): Fix merge conflict.
1086
1087 Fri Jun  8 18:41:30 2001  Jonathan Blandford  <jrb@redhat.com>
1088
1089         * gtk/gtktreeview.c (gtk_tree_view_set_cursor): new function to
1090         clean up cursor handling.
1091
1092 2001-06-08  Havoc Pennington  <hp@redhat.com>
1093
1094         * gtk/gtktextbuffer.c (gtk_text_buffer_get_start_iter): added this
1095         function
1096
1097         * gtk/gtktextview.c (gtk_text_view_get_default_attributes): added
1098         this function
1099
1100 2001-06-08  Alex Larsson  <alexl@redhat.com>
1101
1102         * gtk/gtkcompat.h.in:
1103         Added compat macros for all old GTK_TYPE_GDK_xxx types.
1104         Fixes bug #52892
1105
1106 2001-06-08  Havoc Pennington  <hp@redhat.com>
1107         
1108         * gtk/gtkhsv.h (struct _GtkHSVClass): had GtkContainerClass as
1109         parent still
1110
1111 2001-06-08  Havoc Pennington  <hp@redhat.com>
1112
1113         * gtk/gtktextbuffer.c (gtk_text_buffer_remove_all_tags): geez,
1114         don't call g_list funcs on GSList
1115
1116         * gtk/gtkwidget.c (gtk_widget_child_focus): replaces
1117         gtk_container_focus(), since some widgets have focusable locations
1118         which are not other widgets. These widgets should not have to be 
1119         containers just to manage the focus. For example, GtkHSV is
1120         currently a container for no good reason. Also, this cleans
1121         up the "if (is_container && is_sensitive && is_drawable)
1122         container_focus ()" mess in widget implementations.
1123
1124         * gtk/gtkcontainer.c (gtk_container_focus): deprecate this
1125         function, and have it just call gtk_widget_child_focus().
1126
1127         * gtk/gtkhsv.c: derive from widget not container
1128         
1129         Throughout: fix to reflect GtkContainer::focus change
1130         
1131 Fri Jun  8 12:38:49 2001  Jonathan Blandford  <jrb@redhat.com>
1132
1133         * gtk/gtktable.c (gtk_table_resize): warn if row/cols are out of
1134         range.  Fix bug #55921
1135
1136         * gtk/gtkliststore.c (gtk_list_store_new_with_types): fix doc bug
1137         (#55920).
1138
1139 Fri Jun  8 12:03:07 2001  Owen Taylor  <otaylor@redhat.com>
1140
1141         * gdk/gdkkeys.[ch]: Add a direction-changed signal,
1142         and gdk_keymap_get_current_direction().
1143
1144         * gdk/x11/gdkevents-x11.c gdk/x11/gdkkeys-x11.c
1145           gdk/x11/gdkmain-x11.c gdk/x11/gdkprivate-x11.h: Track
1146         the current locked group, use it to set the keymap
1147         direction.
1148
1149         * gtk/gtksettings.c: Add a new gtk-split-cursor setting
1150         to determine whether we draw a split cursor or use
1151         a jumping cursor based on the current direction.
1152
1153         * gtk/gtkentry.c gtk/gtktextview.c gtk/gtktextlayout.[ch]:
1154         Obey the split cursor setting. 
1155
1156 Fri Jun  8 11:57:50 2001  Owen Taylor  <otaylor@redhat.com>
1157
1158         * gtk/gtkimmulticontext.c (activate_cb): Only activate
1159         when toggling on, not when toggling off... (#55906)
1160
1161 Wed Jun  6 10:37:07 2001  Owen Taylor  <otaylor@redhat.com>
1162
1163         * gtk/gtkwidget.c (gtk_widget_set_double_buffered): 
1164         s/gdk_window_begin_paint/gdk_window_begin_paint_region/
1165         in docs. (#55812, Vitaly Tishkov)
1166
1167 2001-06-08  Anders Carlsson  <andersca@codefactory.se>
1168
1169         * demos/gtk-demo/main.c (create_tree): Changed signal name from
1170         selection_changed to changed in signal connection to GtkTreeSelection,
1171         also used g_signal_connectc since GtkTreeSelection is now a GObject.
1172
1173 Thu Jun  7 18:25:42 2001  Jonathan Blandford  <jrb@redhat.com>
1174
1175         * gtk/gtktreeselection.c: Now it's a GObject instead of a
1176         GtkObject.  The GtkTreeSelection::selection_changed signal is now
1177         the GtkTreeSelection::changed signal.
1178
1179         * gtk/gtktreeview.c: Modified to deal with new GtkTreeSelection
1180         object.
1181
1182         * tests/gtktree*.c: Modified to deal with new GtkTreeSelection
1183         object.
1184
1185 2001-06-07  Havoc Pennington  <hp@redhat.com>
1186
1187         * gtk/Makefile.am: fix glib-mkenums and glib-genmarshal again
1188
1189 2001-06-07  Havoc Pennington  <hp@redhat.com>
1190         
1191         * gtk/Makefile.am: fixups for glib-mkenums and glib-genmarshal
1192         (not tested yet because with absolute path to srcdir I can't build
1193         atk, but it was broken anyway so this may help) 
1194
1195 2001-06-07  Havoc Pennington  <hp@redhat.com>
1196
1197         * configure.in: output m4macros/Makefile
1198         
1199 Wed Jun  6 21:59:16 2001  Jonathan Blandford  <jrb@redhat.com>
1200
1201         * gtk/gtktreeview.c (gtk_tree_view_size_allocate): hook up arrow
1202         buttons.  Fixes #55460 reported by matthiasc@poet.de.
1203
1204 Wed Jun  6 21:18:54 2001  Jonathan Blandford  <jrb@redhat.com>
1205
1206         * gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): centralize
1207         expansion/collapsing so it only happens in one place.
1208         (gtk_tree_view_real_expand_row): ditto.
1209
1210 2001-06-07  Havoc Pennington  <hp@redhat.com>
1211
1212         * tests/Makefile.am: add missing -I flag
1213
1214         * gtk/Makefile.am: use @GLIB_MKENUMS@, @GLIB_GENMARSHAL@, etc.
1215
1216         * configure.in: use pkg-config to see if GModule is
1217         supported; fix to properly turn on included loaders 
1218         when GModule isn't supported; don't use AC_CHECK_LIB 
1219         when libs are not installed yet
1220
1221         * autogen.sh: add support for AUTOGEN_SUBDIR_MODE
1222
1223         * Makefile.am (SUBDIRS): add m4macros subdir
1224
1225         * gtk/Makefile.am: $(srcdir)/foo targets must be $(srcdir)/foo in
1226         dependencies also.
1227
1228 Wed Jun  6 19:31:11 2001  Jonathan Blandford  <jrb@redhat.com>
1229
1230         * gtk/gtktreeview.c (gtk_tree_view_set_model): fix silly bug
1231         reported by "Padraig O'Briain" <Padraig.Obriain@Sun.COM>.
1232
1233 Wed Jun  6 20:01:38 2001  Jonathan Blandford  <jrb@redhat.com>
1234
1235         * gtk/gtktreeview.c
1236         (gtk_tree_view_real_expand_collapse_cursor_row): Handle key
1237         bindings to expand and collapse rows.
1238         (gtk_tree_view_real_select_cursor_parent): New key binding.
1239         (gtk_tree_view_real_toggle_cursor_row): New key binding.
1240
1241         * gtk/gtkmarshal.list: new
1242         marshaller. (VOID__BOOLEAN_BOOLEAN_BOOLEAN)
1243
1244 2001-06-06  Havoc Pennington  <hp@redhat.com>
1245
1246         * gtk/gtkrange.c (gtk_range_class_init): add "inverted" property
1247
1248         * gtk/gtkscale.c (gtk_scale_class_init): Change Page Up and Page
1249         Down to move visually rather than logically, since it confuses 
1250         people. Add -/+ and Ctrl--/+ bindings for logical movement.
1251
1252 2001-06-06  Alex Larsson  <alexl@redhat.com>
1253
1254         * gdk/linux-fb/gdkmain-fb.c (_gdk_windowing_init_check):
1255         Fix up error messages.
1256
1257 Wed Jun  6 10:34:42 2001  Owen Taylor  <otaylor@redhat.com>
1258
1259         * gtk/gtktooltips.h: Include gtkwidget.h 
1260         (#55798, Karl Nelson)
1261
1262         * gdk/x11/gdkwindow-x11.c (utf8_is_latin1): 0xff is
1263         a valid latin-1 character. (Marc Lehmann, #35467)
1264
1265         * gdk/x11/gdkwindow-x11.c: Fix minor typo in comment. 
1266         (Marc Lehmann, #35467)
1267         
1268 2001-06-05  Alex Larsson  <alexl@redhat.com>
1269
1270         * demos/gtk-demo/appwindow.c (do_appwindow):
1271         Don't swap the order of the args to gtk_widget_destroyed.
1272
1273         * tests/testgtk.c (destroy_properties):
1274         Don't crash when the properties window is destroyed.
1275
1276         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_new_from_stock):
1277         Use with_mnemonics to handle the case of stock items with
1278         underscores in them.
1279
1280 2001-06-05  Havoc Pennington  <hp@redhat.com>
1281
1282         * gtk/gtktextiter.c (gtk_text_iter_order): rename from 
1283         gtk_text_iter_reorder
1284
1285 2001-06-05  Havoc Pennington  <hp@redhat.com>
1286
1287         * gtk/gtktoolbar.c (gtk_toolbar_remove_space): new function
1288
1289 2001-06-05  Havoc Pennington  <hp@redhat.com>
1290
1291         * gtk/gtkspinbutton.c (gtk_spin_button_set_range): clamp the value 
1292         to the range that was set
1293
1294         * gtk/gtkrange.c: add value_changed signal, primarily 
1295         intended for use with GtkScale
1296         (gtk_range_set_increments): new function
1297         (gtk_range_set_range): new function with weird name
1298         (gtk_range_set_value): new function
1299         (gtk_range_get_value): new function
1300
1301         * gtk/gtkspinbutton.c (gtk_spin_button_get_value): rename 
1302         from gtk_spin_button_get_value_as_float(). Compat #define
1303         added for get_value_as_float.
1304
1305         * gtk/gtkhscale.c (gtk_hscale_new_with_range): new function
1306
1307         * gtk/gtkvscale.c (gtk_vscale_new_with_range): new function
1308
1309 Tue Jun  5 14:57:18 2001  Jonathan Blandford  <jrb@redhat.com>
1310
1311         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_get_size): Fix bug #55573
1312
1313 Mon Jun  4 12:41:25 2001  Owen Taylor  <otaylor@redhat.com>
1314
1315         * gtk/gtkwidget.h: Deprecate gtk_widget_set().
1316
1317         * tests/testgtk.c (create_tooltips): Remove usage of
1318         gtk_widget_set().
1319
1320 2001-06-05  Havoc Pennington  <hp@redhat.com>
1321
1322         * gtk/gtkcolorsel.c: Use new mnemonic convenience functions
1323
1324         Applying patch from Jeff Franks, with function docs added.
1325         
1326         * gtk/gtkcheckbutton.c (gtk_check_button_new_with_mnemonic):
1327         remove call to set_mnemonic_widget, change docs a bit.  
1328
1329         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_new_with_mnemonic):
1330         new function
1331
1332         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_new_with_mnemonic):
1333         new function
1334
1335         * gtk/gtkmenuitem.c (gtk_menu_item_new_with_mnemonic): new function
1336
1337         * gtk/gtkradiobutton.c (gtk_radio_button_new_with_mnemonic): new
1338         function
1339         (gtk_radio_button_new_with_mnemonic_from_widget): new function
1340
1341         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_new_with_mnemonic):
1342         new function
1343
1344         * gtk/gtktogglebutton.c (gtk_toggle_button_new_with_mnemonic): new
1345         function        
1346
1347         * gtk/gtklabel.c (gtk_label_new_with_mnemonic): Improve docs on 
1348         auto-selection of mnemonic widget.
1349
1350 Mon Jun  4 15:05:24 2001  Jonathan Blandford  <jrb@redhat.com>
1351
1352         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_max_width):
1353         Fix segfault found by Vitaly Tishkov <tvv@sparc.spb.su>.
1354         (gtk_tree_view_column_set_min_width): ditto.
1355
1356 Tue Jun  5 11:04:06 2001  Owen Taylor  <otaylor@redhat.com>
1357
1358         * gdk/gdkpixmap.h (GDK_PIXMAP_GET_CLASS): 
1359         s/GdkPixmapClass/GdkPixmapObjectClass/. (#51890, Jeff Franks)
1360
1361 Mon Jun  4 12:50:11 2001  Owen Taylor  <otaylor@redhat.com>
1362
1363         * gtk/gtkctree.c (gtk_ctree_insert_gnode): Add a missing
1364         gtk_clist_thaw().
1365
1366 2001-06-04  Havoc Pennington  <hp@pobox.com>
1367
1368         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Ignore 
1369         releases for buttons 6, 7
1370
1371 2001-06-04  Havoc Pennington  <hp@redhat.com>
1372
1373         * gtk/gtkseparatormenuitem.h: Fix a search-and-replace screwup
1374         (s/CHECK/SEPARATOR/ gone awry). Patch from Jeff Franks, bug
1375         #55562
1376
1377 2001-06-04  Havoc Pennington  <hp@redhat.com>
1378
1379         * gtk/gtktextview.c (gtk_text_view_size_request): handle case
1380         where text_view->layout == NULL by assuming its size is 0, 
1381         i.e. same as if we haven't done any reflow. Reported by 
1382         Hidetoshi Tajima #55448 
1383
1384 2001-06-04  Havoc Pennington  <hp@redhat.com>
1385
1386         * gdk/x11/gdkevents-x11.c (gdk_event_translate): support button 6
1387         and 7 for scroll left/right, from Thomas Broyer
1388
1389 2001-05-10  Havoc Pennington  <hp@redhat.com>
1390
1391         * gtk/gtksettings.c (gtk_settings_get_property): Handle case where
1392         we need to parse the xsetting as if it were an RC file string.
1393
1394         * gtk/gtkcolorsel.c (gtk_color_selection_class_init): load initial
1395         value of palette from settings, not from static variable
1396
1397         * gdk/x11/gdkevents-x11.c: add color palette, toolbar mode to
1398         xsettings translation table
1399
1400         * gtk/gtktoolbar.c (gtk_toolbar_new): Remove arguments, because 
1401         hardcoding the toolbar style conflicts with new customizable 
1402         toolbar style philosophy
1403         (gtk_toolbar_class_init): add settings for default toolbar style;
1404         these are used unless the app specifically forces a toolbar style
1405
1406         * gtk/gtksettings.c (settings_install_property_parser): only
1407         return at the start if we warn and parser == NULL
1408
1409         * gtk/gtkcolorsel.c (gtk_color_selection_finalize): disconnect the
1410         palette changed handler so we don't notify dead color selections
1411
1412         * gtk/gtkstyle.c (gtk_default_draw_shadow): handle
1413         xthickness/ythickness of 0 or 1 properly 
1414         (gtk_default_draw_resize_grip): clear the background behind the
1415         resize grips, and align to bottom right if we square the 
1416         area to be drawn.
1417
1418         * gtk/gtkstatusbar.c (gtk_statusbar_init): set horizontal usize on 
1419         statusbar label to 1, so it doesn't make toplevels resize oddly
1420         (gtk_statusbar_size_request): add grip size to request
1421         (gtk_statusbar_size_allocate): hack so the hbox still works with 
1422         the grip size in the request
1423
1424         * gtk/gtktoolbar.c (gtk_toolbar_show_all): override to fix 
1425         bug where showing all on a toplevel makes the toolbar 
1426         button text appear despite the toolbar mode
1427
1428         * gtk/gtkmenubar.c: add internal padding style property
1429
1430         * gtk/gtktoolbar.c: Add internal padding style property; add
1431         shadow type style property
1432
1433         * gtk/gtkmenubar.c (gtk_menu_bar_paint): paint box with widget
1434         state; and put Container::border_width outside the frame
1435
1436         * gtk/gtktextview.c: don't draw focus rectangle if we're in
1437         interior focus mode, we just use blinking cursor
1438
1439 2001-06-04  Havoc Pennington  <hp@redhat.com>
1440
1441         * configure.in: Make gdk-pixbuf have same version number as GTK
1442
1443 2001-06-04  Havoc Pennington  <hp@redhat.com>
1444
1445         * gtk/gtkspinbutton.c: Get rid of stupid g_return_if_fail on 
1446         digits greater than 6. If there actually are limits (which there
1447         likely aren't), should clamp to them not warn.
1448         (gtk_spin_button_new_with_range): don't take log of 0
1449         (gtk_spin_button_size_request): use digits to compute size
1450         request, rather than step increment.
1451
1452         * tests/testgtk.c (create_spins): test larger values of digits
1453         
1454         * gtk/gtkfontsel.c (gtk_font_selection_init): scroll to selected
1455         font on map not expose, so we don't get weirdness during scrolling
1456
1457 2001-06-04  Havoc Pennington  <hp@redhat.com>
1458
1459         * gtk/gtkclist.c (vadjustment_value_changed): Apply fix from
1460         Sam Solon, bug #54577, update value even if not drawable.
1461
1462 2001-06-04  Havoc Pennington  <hp@redhat.com>
1463
1464         * gtk/gtkrange.c (gtk_range_scroll_event): change SCROLL_RIGHT to
1465         SCROLL_LEFT, reported by Thomas Broyer.
1466
1467 2001-06-04  Havoc Pennington  <hp@redhat.com>
1468
1469         * gtk/gtkrange.c (gtk_range_adjustment_value_changed): 
1470         Process updates immediately, to prevent funny lag effect
1471         when scrolling, at some mild potential efficiency cost.
1472
1473 2001-06-04  Havoc Pennington  <hp@redhat.com>
1474
1475         * gtk/gtkrange.c (gtk_range_button_press): on middle click, center
1476         slider on the click.
1477
1478 2001-06-03  Havoc Pennington  <hp@pobox.com>
1479
1480         * gtk/gtkstyle.c (gtk_default_draw_slider): make this special-case
1481         hscale/vscale details, so we can use it for scrollbar as well.
1482
1483         * tests/testgtk.c (reformat_value): honor digits from GtkScale
1484
1485         * gtk/gtkenums.h (GtkTroughType): Remove this enum
1486         (GtkScrollType): add START and END from GtkTroughType
1487
1488         * gtk/gtkstyle.c (gtk_default_draw_slider): was not properly using
1489         its x/y arguments
1490
1491         * gtk/gtkrange.h, gtk/gtkrange.c, gtk/gtkscrollbar.h,
1492         gtk/gtkscrollbar.c, gtk/gtkscale.h, gtk/gtkscale.c,
1493         gtk/gtkhscrollbar.h, gtk/gtkhscrollbar.c, gtk/gtkvscrollbar.h,
1494         gtk/gtkvscrollbar.c, gtk/gtkhscale.h, gtk/gtkhscale.c,
1495         gtk/gtkvscale.h, gtk/gtkvscale.c: Rewrite GtkRange and subclasses.
1496
1497         Notable changes in the process:
1498          
1499         - stepper_size style property is the height for vertical 
1500           ranges, width for horizontal; the other dimension matches
1501           the trough size
1502         - add ability to do NeXT-style steppers (and several other styles
1503           that don't make any sense)
1504         - added min_slider_length, fixed_slider_length properties to
1505           GtkScrollbar
1506         - cleaned some private (or at least useless) functions out of
1507           gtkscale.h    
1508         - moved bindings to GtkScale from subclasses, even arrow keys,
1509           since blind users don't know scale orientation.
1510         - change move_slider action signal to use new GtkScrollType,
1511           remove GtkTroughType argument
1512         - digits rounds the values a range will input to the given 
1513           number of decimals, but will not try to force adjustment 
1514           values set by other controllers. That is, we no longer
1515           modify adjustment->value inside a value_changed handler.
1516         - added getters for GtkScale setters
1517         - middle-click begins a slider drag
1518         
1519 Fri Jun  1 18:54:47 2001  Jonathan Blandford  <jrb@redhat.com>
1520
1521         * gtk/gtktreeview.c: (gtk_tree_view_focus): Initial stab at
1522         getting the focus code to work.
1523         (gtk_tree_view_class_init): Add a bunch of keybindings.
1524
1525         * gtk/gtktreeviewcolumn.c
1526         (gtk_tree_view_column_set_cell_data_func):
1527         s/GtkCellDataFunc/GtkTreeCellDataFunc.
1528         (_gtk_tree_view_column_set_tree_view): Use "notify::model" instead
1529         of "properties_changed" to help justify the death of the latter
1530         signal. (-:
1531
1532         * tests/testtreefocus.c (main): Let some columns be focussable to
1533         test focus better.
1534
1535 2001-06-01  Havoc Pennington  <hp@redhat.com>
1536
1537         * gtk/gtkentry.c (gtk_entry_commit_cb): implement overwrite mode
1538         
1539         * gtk/gtktextview.c (gtk_text_view_commit_handler): don't
1540         overwrite in overwrite mode if we already deleted the selection
1541         and replaced it with new text.  
1542
1543         * gtk/gtklabel.c (gtk_label_select_region_index): if you set the
1544         selection to an empty range, clear the clipboard if we owned it.
1545         (gtk_label_set_selectable): give up selection if we become
1546         unselectable.
1547         (gtk_label_state_changed): override state changed to unselect text
1548         when insensitive
1549         (get_text_callback): add paranoia check that indexes aren't
1550         outside of label->text
1551         (gtk_label_select_region): make -1 for start_offset mean "end of
1552         label," for consistency with GtkEditable
1553
1554         * gtk/gtkmessagedialog.c (gtk_message_dialog_new): honor
1555         GTK_DIALOG_NO_SEPARATOR flag
1556
1557 Fri Jun  1 11:47:11 2001  Owen Taylor  <otaylor@redhat.com>
1558
1559         * gtk/gtkcombo.c (gtk_combo_set_use_arrows_always): Fix 
1560         notifications on non-existant "enable_arrow_keys".
1561         (#53753, Skip Montanaro)
1562
1563 Fri Jun  1 11:31:55 2001  Owen Taylor  <otaylor@redhat.com>
1564
1565         * gdk/gdkrectangle.c (gdk_rectangle_get_type): Add 
1566         GDK_TYPE_RECTANGLE.
1567
1568         * gtk/gtkwidget.c (gtk_widget_class_init): Fix type
1569         of allocation argument be GDK_TYPE_RECTANGLE.
1570
1571 Thu May 31 12:43:57 2001  Owen Taylor  <otaylor@redhat.com>
1572
1573         * gtk/gtkoptionmenu.c: Account for the fact that the border
1574         width is _outside_ the window. (Fixes #54585, bug found
1575         by Bastien Nocera.)
1576
1577 Wed May 30 15:56:30 2001  Owen Taylor  <otaylor@redhat.com>
1578
1579         * gtk/gtksettings.c (gtk_settings_get_property): Validate
1580         value from GDK settings against parameter spec.
1581
1582         * gdk/x11/gdkevents-x11.c (gdk_setting_get): Add assignments
1583         to temporary values and use g_value_transform(), since
1584         thinking that GValue was going to be easy or efficient
1585         to use was, of course, a mistake.
1586
1587         * gtk/gtksettings.c: Add cursor blink setting.
1588         
1589         * gdk/x11/gdkevents-x11.c: Add cursor blink X settings.
1590
1591         * gtk/gtkentry.c: Add cursor blinking.
1592
1593         * gtk/gtktextview.c (gtk_text_view_check_cursor_blink): Use
1594         cursor blink global settings.
1595
1596         * gtk/gtkentry.c (gtk_entry_button_press): Add notification
1597         for :text_position in places where it is missing.
1598
1599 Tue May 29 18:17:11 2001  Owen Taylor  <otaylor@redhat.com>
1600
1601         * autogen.sh (have_libtool): Fix GNU sedism (#55430)
1602
1603 Tue May 29 17:40:29 2001  Owen Taylor  <otaylor@redhat.com>
1604
1605         * configure.in (GTK_DEP_CFLAGS): Use $PKG_CONFIG,
1606         not pkg-config. (#51032)
1607
1608         * gdk/gdkproperty.h: Remove inappropriate G_GNUC_CONST
1609         (fixes #51952, James Henstridge)
1610         
1611 2001-05-27  Alexander Larsson  <alla@lysator.liu.se>
1612
1613         * gtk/gtkstock.h (GTK_STOCK_GO_UP):
1614         Rename to the more correct gtk-go-up.
1615
1616         * gtk/stock-icons/stock_menu_sort_ascending.png:
1617         Added new file.
1618         
1619         * gtk/stock-icons/stock_menu_sort_descending.png:
1620         Changed to show descending instead of ascending.
1621
1622         * gtk/gtkiconfactory.c:
1623         Added menu size icon to sort ascending.
1624
1625         * gtk/stock-icons/Makefile.am:
1626         Added stock_menu_sort_ascending.png.
1627         
1628         * gtk/gtkseparatormenuitem.c:
1629         Use correct typenames.
1630
1631 Sun May 20 20:07:35 2001  Tim Janik  <timj@gtk.org>
1632
1633         * gtk/gtksignal.[hc] (gtk_signal_connect_full): make hanlder id a
1634         gulong as in GSignal.
1635
1636 Fri May 25 19:04:17 2001  Jonathan Blandford  <jrb@redhat.com>
1637
1638         * gtk/gtktreeview.c (gtk_tree_view_calc_size): Remove almost all
1639         instances of GtkCellRenderer in code (all but dnd icon code).
1640         Virtualized in GtkTreeViewColumn.  Now I need to move focus in
1641         there, and I can do multiple Cells per column.
1642
1643         * gtk/gtktreeviewcolumn.c: Proxy all cell calls correctly
1644
1645         * gtk/gtktreemodel.c (gtk_tree_row_reference_new_proxy): fix bug
1646         when model was unreffed prior to removing the row reference.
1647
1648 2001-05-25  Havoc Pennington  <hp@redhat.com>
1649
1650         * gtk/gtkiconfactory.c: fix so that default icons are created if 
1651         you call gtk_stock_list_ids()
1652
1653         * demos/gtk-demo/stock_browser.c (create_model): sort stock items
1654         in list
1655
1656 2001-05-25  Havoc Pennington  <hp@redhat.com>
1657
1658         * gtk/gtkiconfactory.c (gtk_icon_set_get_sizes): get sizes an icon
1659         set can render without falling back to missing image icon
1660
1661         * gtk/gtktextview.c (gtk_text_view_size_request): request full
1662         size of text, instead of random values
1663
1664         * gtk/gtktreeview.c (gtk_tree_view_size_request): request full
1665         size of tree view, instead of random values
1666
1667         * gtk/gtkiconfactory.c (gtk_icon_set_render_icon): render fallback
1668         image in an appropriate size
1669
1670         * gtk/gtkstock.h: Rename the stock items including _BUTTON_,
1671         etc. not to include that. i.e. s/GTK_STOCK_BUTTON_OK/GTK_STOCK_OK/
1672
1673         Throughout: fix GTK_STOCK_BUTTON_ instances
1674         
1675         * gtk/gtkstock.h, gtk/gtkstock.c, gtk/gtkiconfactory.h,
1676         gtk/gtkiconfactory.c, gtk/stock-icons/Makefile.am:
1677         Add a bunch of new stock items/icons
1678
1679         * gtk/gtktreeview.c (gtk_tree_view_insert_column_with_data_func):
1680         new function, convenience for inserting columns with a data func
1681
1682         * gtk/gtkiconfactory.c: keep a list of all existing icon factories
1683         (_gtk_icon_factory_list_ids): use list of all factories to
1684         generate a list of all known IDs
1685
1686         * gtk/gtkstock.c (gtk_stock_list_ids): replace
1687         gtk_stock_list_items() with a function that returns all IDs known
1688         including those for GtkIconFactory.
1689
1690 2001-05-25  Hans Breuer  <hans@breuer.org>
1691
1692         * gdk/win32/gdkgc-win32.c : made fil mode GDK_STIPPLED actually
1693         work -> check boxes and radio buttons are drawn now, even on win9x.
1694         Improved line settings a bit, still no clue how to get really dotted
1695         lines on win9x, on NT it's PS_ALTERNATE.
1696
1697         * gdk/win32/gdkwindow-win32.c : use SafeAdjustWindowRect for 
1698         GDK_HINT_MIN_SIZE as well
1699
1700         * gdk/win32/makefile.am : added gdkkeys-win32.c to EXTRA_DIST
1701
1702         * gtk/gtk.def : updated
1703
1704         * gtk/gtktreeprivate.h : change column_drop_func to be a function
1705         pointer not a function pointer pointer
1706
1707         * tests/testdnd.c : include <stdlib.h> for putenv prototype
1708
1709         * tests/testsocket.c : made it compile on win32 again
1710
1711         * tests/makefile.msc : one more test-app uses prop-editor.obj
1712
1713 2001-05-22  Havoc Pennington  <hp@pobox.com>
1714
1715         * gtk/gtkbin.c (gtk_bin_get_child): New function
1716
1717 Wed May 23 20:07:53 2001  Owen Taylor  <otaylor@redhat.com>
1718
1719         * gtk/gtkimcontextsimple.c: Add Mode_Switch to list of keys
1720         to ignore when doing compose processing.
1721
1722 2001-05-22  Joe Shaw  <joe@ximian.com>
1723
1724         * gtk/gtktextiter.c (_gtk_text_btree_get_iter_at_last_toggle): 
1725         Simplify as suggested by Havoc. Just get the last iter and work
1726         backward to the tag instead of getting a line and working back from
1727         there. Fixes passing in an invalid offset to
1728         iter_init_from_byte_offset().
1729
1730 Tue May 22 16:25:27 2001  Jonathan Blandford  <jrb@redhat.com>
1731
1732         * gtk/gtktreeview*.h: 
1733         * gtk/gtkcell*.h:
1734         * gtk/gtk*store.h:
1735         Added patch from Jeff Franks <jcf@tpg.com.au> to add GET_CLASS
1736         macros to all objects.
1737
1738 Tue May 22 15:13:52 2001  Jonathan Blandford  <jrb@redhat.com>
1739
1740         * gtk/gtkcellrenderertext.c
1741         (gtk_cell_renderer_text_set_fixed_size): Evil function to deal
1742         with very large (TM) amounts of text.  May be moved to
1743         GtkCellRenderer in the future, though I'm not sure it wants to be
1744         this accessible.
1745
1746         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_update_button):
1747         More sanity brought to this class.  I like it.
1748
1749         * tests/testtreecolumns.c (ViewColumnModel): Amazingly scary test
1750         case.  Kids, don't try this at home.
1751
1752         * gtk/gtktreemodel.c (gtk_tree_model_get_iter_root): new
1753         convenience function.
1754
1755         * gtk/gtkwindow.c (gtk_window_set_geometry_hints): Fix typo in docs.
1756
1757 2001-05-21  Alexander Larsson  <alexl@redhat.com>
1758
1759         * gtk/gtkfontsel.c:
1760         Added properties. Based on patch by Lee Mallabone.
1761
1762         * gtk/gtkruler.c:
1763         * gtk/gtkhruler.c:
1764         * gtk/gtkvruler.c:
1765         * gtk/gtktext.c:
1766         * gtk/gtktextview.c:
1767         Converted GtkArg to GParam. Based on patches by John Margaglione.
1768
1769         * tests/Makefile.am:
1770         * tests/testtext.c:
1771         Add a property editor to testtext.
1772         
1773 Mon May 21 11:29:21 2001  Owen Taylor  <otaylor@redhat.com>
1774
1775         * gtk/gtk{h,v,}paned.c: Only show the separator if 
1776
1777         * configure.in: Fixed reversed conditional causing all image
1778         libraries to be linked in.
1779
1780 2001-05-21  Joe Shaw  <joe@ximian.com>
1781
1782         * gtk/gtklayout.c (gtk_text_layout_get_lines): Remove the assertion
1783         that top_y needs to be >= 0.
1784
1785 2001-05-11  Havoc Pennington  <hp@pobox.com>
1786         
1787         * gdk/x11/gdkmain-x11.c: Improve error messages for X errors and
1788         losing connection to the X server.
1789
1790 Sun May 20 13:59:20 2001  Owen Taylor  <otaylor@redhat.com>
1791
1792         * configure.in: Start checks for X from pangox/pangoxft
1793         CFLAGS to avoid duplicate libraries.
1794
1795         * gdk/Makefile.am (LDFLAGS): Remove extra -lm.
1796
1797         * configure.in (GDK_PIXBUF_PACKAGES): Fix GDK_PIXBUF_PACKAGES
1798         to include gobject.
1799         
1800 2001-05-18  Alexander Larsson  <alexl@redhat.com>
1801
1802         * gtk/gtkspinbutton.c:
1803         Convert GtkArgs to GParams. Based on patch by John Margaglione.
1804         Also do size request reasonable for MAXDOUBLE. Previously it printed
1805         the limits to a buffer and overran it. Instead do it using log10() and
1806         limit the width to 10 digits.
1807         
1808         * gtk/gtkwidget.c (gtk_widget_get_property):
1809         Correctly handle setting the parent property to NULL.
1810
1811 Fri May 18 15:26:26 2001  Owen Taylor  <otaylor@redhat.com>
1812
1813         * gtk/gtktextview.c (gtk_text_view_style_set): Reset 
1814         style attributes even if the widget isn't realized.
1815
1816         * demos/gtk-demo/main.c: Use a slightly smaller font.
1817
1818 Fri May 18 14:25:20 2001  Owen Taylor  <otaylor@redhat.com>
1819
1820         * gtk/gtkcontainer.c: Remove reallocate-redraws property.
1821         This is something that only a widget writer would ever want
1822         to change.
1823
1824         * gtk/gtksignal.c: Handle G_SIGNAL_TYPE_STATIC_SCOPE for
1825         gtk_signal_emit_by_name().
1826
1827         * gtk/gtkviewport.c: Fix some warnings.
1828
1829         * gtk/gtkwidget.c gtk/gtksizegroup.c: Add "size group" facility
1830         allowing the requisitions of multiple widgets to be grouped
1831         together.
1832
1833         * tests/testgtk.c: Add GtkSizeGroup test
1834
1835         * demos/gtk-demo/sizegroup.c: Add GtkSizeGroup demo.
1836
1837         * demos/gtk-demo/main.c demos/gtk-demo/pixbufs.c: Fix some
1838         warnings.
1839
1840         * configure.in: Switch to using AM_GLIB_GNU_GETTEXT.
1841
1842 2001-04-28  Martin Baulig  <baulig@suse.de>
1843
1844         * gtk/gtkimagemenuitem.[ch]: Renamed gtk_image_menu_item_add_icon()
1845         to gtk_image_menu_item_set_icon() and made it work if there's already
1846         an image.
1847         (gtk_image_menu_item_new): This function doesn't take any arguments anymore.
1848         (gtk_image_menu_item_new_with_label): New function.
1849
1850 Thu May 17 16:20:04 2001  Jonathan Blandford  <jrb@redhat.com>
1851
1852         * demos/gtk-demo/main.c (fontify): It's the worlds ugliest
1853         highlighting code!!!!  The result is okay so long as you don't try
1854         to stress it.  It also highlights a bug in the TextView so it's in
1855         an unproportional font right now until it's fixed.
1856
1857         *demos/gtk-demo/*.c: Clean up code a bit to make it
1858         ugly-parser(TM) friendly. (-:
1859
1860 2001-05-17  Joe Shaw  <joe@ximian.com>
1861
1862         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Remove the assertions
1863         that x_offset and y_offset must be >= 0. Clip the cursor being drawn
1864         if it is only partially onscreen.
1865
1866 Thu May 17 17:10:13 2001  Owen Taylor  <otaylor@redhat.com>
1867
1868         * gtk/gtkentry.c: Make logical motion and deletion by graphemes, 
1869         not by characters.
1870
1871         * gtk/gtkentry.c: Handle "trailing" returns from Pango when they
1872         are not zero or one; that is, when graphemes of multiple characters
1873         are involved.
1874
1875         * gtk/gtktextlayout.c (line_display_index_to_iter): Remove unnecessary
1876         FIXME.
1877
1878 2001-05-17  Alexander Larsson  <alla@lysator.liu.se>
1879         
1880         * gtk/gtkbbox.c:
1881         Add properties, based on patch by Lee Mallabone.
1882
1883         * gtk/gtknotebook.c:
1884         * gtk/gtktoolbar.c:
1885         Convert from GtkArg to GParam, based on patch by John Margaglione.
1886         
1887         * gtk/gtkhscale.c:
1888         * gtk/gtkvscale.c:
1889         * gtk/gtkhscrollbar.c:
1890         * gtk/gtkvscrollbar.c:
1891         * gtk/gtkrange.c:
1892         Move adjustment property to GtkRange.
1893
1894         * gtk/gtklabel.c:
1895         Setup mnemonics on property changes
1896
1897         * gtk/gtkwidget.c (gtk_widget_get_property):
1898         GdkExtensionMode is an enum, not a flag. Set it with
1899         g_value_set_enum ().
1900
1901         * tests/prop-editor.c:
1902         Better propery editor.
1903
1904         * tests/testgtk.c:
1905         Add new property test. Pass zero to the property editor to
1906         get properties from all derived types.
1907         
1908 Sun May 13 12:01:12 2001  Owen Taylor  <otaylor@redhat.com>
1909
1910         * autogen.sh (have_automake): Require libtool-1.4,
1911         automake-1.4p1.
1912
1913         * acinclude.m4: Remove libtool macros.
1914
1915         * gdk-pixbuf/Makefile.am: Add dependencies to loade
1916         modules.
1917
1918         * gdk/Makefile.am: Add dependency on libgdk_pixbuf.la
1919         for libgdk.
1920
1921         * gtk/Makefile.am: Add dependency on libgdk_pixbuf.la
1922         libgdk.la for libgtk.
1923
1924         * modules/input/Makefile.am: Make modules have full
1925         dependencies.
1926
1927 Wed May 16 14:06:01 2001  Jonathan Blandford  <jrb@redhat.com>
1928
1929         * gtk/gtktreemodel.c (gtk_tree_path_new_from_string): fix bug
1930         #54699 where paths weren't being checked for correctness.
1931
1932 Tue May 15 20:13:24 2001  Jonathan Blandford  <jrb@redhat.com>
1933
1934         * gtk/gtktreeviewcolumn.c: You can now set all sorts of properties
1935         in any order you wan, whether or not the column is added to the
1936         tree, or the tree is realized.  Yay!
1937
1938         * gtk/gtktreeviewcolumn.c
1939         (gtk_tree_view_column_setup_sort_column_id_callback): handle
1940         sorting columns a lot saner
1941
1942         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_reorderable):
1943         new function to actually set wether or not a column is
1944         reorderable.
1945
1946         * gtk/gtktreeview.c (gtk_tree_view_unrealize): Only destroy things
1947         if we have 'em.
1948
1949         * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_set_tree_view):
1950         Fix nasty bug where we were showing the button just before
1951         realizing it.  As a result, the parent window was
1952         tree_view->window instead of tree_view->priv->header_window.
1953
1954         * gtk/gtktreeview.c (gtk_tree_view_set_reorderable): new property
1955         to let you easily reorder a list or tree.
1956
1957 2001-05-15  Alexander Larsson  <alla@lysator.liu.se>
1958
1959         * gtk/gtkpacker.c: Apply patch from John Margaglione that converts
1960         from args to properties.
1961
1962 Tue May 15 10:11:59 2001  Owen Taylor  <otaylor@redhat.com>
1963
1964         * gtk/gtkpreview.c: Apply patch from John Margaglione converting
1965         from args to properties. (#51957)
1966
1967         * gtk/gtkscale.c (gtk_scale_class_init): Move install property
1968         calls to after ->set_property call.
1969
1970 Mon May 14 14:56:21 2001  Owen Taylor  <otaylor@redhat.com>
1971
1972         * tests/prop-editor.c: Block against redundant changes.
1973
1974         * gtk/gtkpaned.c gtk/gtk[hv]paned.c: Add position, position_set
1975         properties.
1976
1977 Sun May 13 18:40:04 2001  Owen Taylor  <otaylor@redhat.com>
1978
1979         * gdk/gdkpixmap.h: Remove creative formatting.
1980
1981 Thu May 10 19:22:28 2001  Owen Taylor  <otaylor@redhat.com>
1982
1983         * gtk/gtktogglebutton.c:  Patch from John Margaglione converting to
1984         property API. (#51669)
1985
1986         * gtk/gtkscale.c: Patch from John Margaglione converting to
1987         property API. (#51891)
1988
1989         * gtk/gtkaccellabel.c: Applied patch from Lee Mallabone, converting
1990         to property API. (#50985)
1991
1992 Fri May 11 20:13:44 2001  Tim Janik  <timj@gtk.org>
1993
1994         * gtk/gtkmain.c (gtk_main_do_event): remember widget's double
1995         buffering state across expose event, so we still call end_paint().
1996
1997 2001-05-11  Alexander Larsson  <alexl@redhat.com>
1998
1999         * gtk/gtkhsv.c (paint_triangle):
2000         Expose the ring in the triangle at the correct place when
2001         exposing just a part of the triangle.
2002
2003         * gtk/gtkwindow-decorate.c (gtk_decorated_window_focus_change):
2004         Return FALSE, or window focusing will not work.
2005
2006 2001-05-11  Havoc Pennington  <hp@pobox.com>
2007
2008         * gtk/gtkimage.c (gtk_image_new_from_stock): docs, fixes bug
2009         #54144
2010
2011         * gtk/gtkcolorsel.c (gtk_color_selection_new): docs, fixes
2012         bug #54330
2013
2014 Fri May 11 02:53:57 2001  Tim Janik  <timj@gtk.org>
2015
2016         * gtk/gtktogglebutton.c (gtk_toggle_button_expose): don't
2017         propagate exposes to NULL child.
2018
2019         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed): guard
2020         against not having one of the scrollbars.
2021
2022         * gtk/gtklabel.c (gtk_label_setup_mnemonic): clean up after us,
2023         we don't keep a mnemonic window if we have no mnemonic installed.
2024
2025 Fri May 11 01:05:00 2001  Tim Janik  <timj@gtk.org>
2026
2027         * gtk/gtktypeutils.h: grum, gtk_type_class() is not GNUC_CONST
2028         it has the _important_ side effect of initializing a class.
2029
2030 2001-05-10  Alexander Larsson  <alexl@redhat.com>
2031
2032         * gdk/linux-fb/gdkprivate-fb.h:
2033         Make sure you can compile out the implementation/wrapper assert
2034         macros.
2035
2036         * gdk/linux-fb/gdkdrawable-fb2.c:
2037         Check implementation/wrappers, initialize type for pixmap dummys.
2038
2039         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image):
2040         Hide the cursor if reading from the screen.
2041
2042         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic):
2043         Fix sign bug in tiling code.
2044
2045         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_clear_area):
2046         Handle background pixmaps.
2047
2048 Wed May  9 15:27:22 2001  Jonathan Blandford  <jrb@redhat.com>
2049
2050         * gtk/gtktreeview.c (gtk_tree_view_set_column_drag_function): New
2051         function to let user control where columns are dragged.
2052
2053         * gtk/gtktreeview.c (gtk_tree_view_key_press): Cancel drags if
2054         Escape is pressed.
2055
2056 Wed May  9 09:08:44 2001  Jonathan Blandford  <jrb@redhat.com>
2057
2058         * gtk/gtktreeview.c (gtk_tree_view_class_init): New
2059         "columns_changed" signal.
2060         (gtk_tree_view_motion_draw_column_motion_arrow): Change column
2061         motion code to draw arrows to the side if indicator is outside the
2062         widget.
2063         (gtk_tree_view_map_expanded_rows): Implement.
2064
2065 2001-05-07  Alexander Larsson  <alexl@redhat.com>
2066
2067         * demos/testpixbuf-save.c: 
2068         * demos/testpixbuf-drawable.c:
2069         Include gdkfb.h on linux-fb.
2070
2071 2001-05-07  Alexander Larsson  <alexl@redhat.com>
2072
2073         * gdk/linux-fb/gdkdnd-fb.c (get_toplevel_window_at):
2074         New function for getting toplevel window at position.
2075         (gdk_drag_find_window): Use get_toplevel_window () instead
2076         of gdk_window_get_pointer(). (gdk_drag_status): Use
2077         correct context for getting window.
2078
2079         * gdk/linux-fb/gdkproperty-fb.c (gdk_atom_name):
2080         g_strdup the atom name.
2081
2082         * gdk/linux-fb/gdkwindow-fb.c:
2083         Costmetic fix.
2084
2085         * gtk/gtkdnd.c (gtk_drag_source_handle_event):
2086         Add code for changing cursor on linux-fb backend (same as
2087         win32).
2088
2089 2001-05-07  Federico Mena Quintero  <federico@ximian.com>
2090
2091         * gtk/gtkwindow.c (gtk_window_focus): Test for bin->child being
2092         present before doing anything with it.  Patch from HÃ¥vard KvÃ¥len
2093         <havardk@netcom.no>.  Fixes Ximian bugzilla #2492 (OK, the bug
2094         report was not for the development branch of GTK+, but it applies
2095         anyways).
2096
2097 2001-05-04  Havoc Pennington  <hp@redhat.com>
2098
2099         * configure.in: fix some shell typos
2100
2101         * gtk/gtkcolorsel.c (gtk_color_selection_destroy): warning fix
2102
2103         * gtk/gtkimage.c: handle animations
2104
2105         * gtk/gtkcheckbutton.c (gtk_check_button_size_request): request
2106         border_width * 2, not just border_width
2107
2108         * gtk/gtkscale.c: add "format_value" signal to allow people
2109         to override the way values are drawn.
2110         (gtk_scale_get_value_size): fix width/height mistake,
2111         and compute size from actual displayed text, not 
2112         from made-up text.
2113
2114         * gtk/gtktexttag.c (gtk_text_tag_class_init): fix return type in 
2115         signal registration
2116
2117         * tests/testtext.c: Add "Remove all tags" menu item for testing
2118
2119         * gtk/gtktextbuffer.c (gtk_text_buffer_remove_all_tags): implement
2120
2121         * demos/gtk-demo/main.c (main): add hack so we can find modules
2122         without installing gtk
2123
2124         * demos/gtk-demo/textview.c (insert_text): demo font scaling
2125
2126         * gtk/gtkcellrenderertext.c: Add "scale" property (font scaling
2127         factor)
2128         (gtk_cell_renderer_text_set_property): remove some bogus
2129         g_object_notify
2130
2131         * gtk/gtktexttag.c: add "scale" property which is a font scaling
2132         factor
2133
2134         * gtk/gtktextlayout.c (add_text_attrs): add font scale attribute 
2135         to layout
2136
2137         * gtk/gtktextiter.c (gtk_text_iter_is_start): rename from
2138         gtk_text_iter_is_first
2139
2140 2001-01-06  Hans Breuer  <hans@breuer.org>
2141
2142         * gdk/gdk.def : updated exports
2143
2144         * gdk/win32/makefile.msc : -DGDK_ENABLE_BROKEN otherwise
2145         gdk won't compile anymore
2146  
2147         * gdk/win32/gdkevents-win32.c : initialize ret_val when
2148         processing GDK_FILTER functions, initialize event.key->hardware_keycode.
2149         Improved gdk_flush () to not only do pending drawing operations
2150         but also process all currently pending events. This should make
2151         the behaviour more similar to the X11 version.  
2152
2153         * gdk/win32/gdkgc-win32.c (predraw_set_background) : a background
2154         option needs to be set even if there is no GDK_GC_BACKGROUND.
2155         (gdk_win32_hdc_get) : use predraw_set_background () independent
2156         of value_mask. This allows to draw dashed lines leaving the original
2157         background intact.
2158
2159         * gdk/win32/gdkimage-win32.c (gdk_image_new_bitamp) : free data
2160         after processing, because we can't reuse it as the X11 version does.
2161
2162         * gtk/gtk.def : updated exports
2163
2164         * gtk/makefile.msc.in : added ATK, removed all test apps. (I
2165         would like to get rid of this file again, and use straight
2166         makefile.msc again, as the other Gtk+ subdirs do)
2167
2168         * test/makefile.msc (new file) : build the test apps here
2169
2170 2001-05-05  ERDI Gergo  <cactus@cactus.rulez.org>
2171
2172         * gdk/gdkpango.c (gdk_pango_get_item_properties): Peek
2173         strike-through setting
2174         (gdk_draw_layout_line_with_colors): Render strike-through
2175
2176 Sat May  5 10:06:24 2001  Owen Taylor  <otaylor@redhat.com>
2177
2178         * Release 1.3.5
2179
2180         * configure.in (GTK_MICRO_VERSION): Up to 1.3.5
2181
2182         * NEWS: Updated
2183
2184         * demos/gtk-demo/Makefile.am (EXTRA_DIST): Fix minor
2185         Makefile breakage.
2186
2187 Sat May  5 09:18:30 2001  Owen Taylor  <otaylor@redhat.com>
2188
2189         * demos/gtk-demo/images.c (progressive_timeout): Fix
2190         typo in filename.
2191
2192         * gtk/gtktreeview.c (gtk_tree_view_row_activated): Comment
2193         out FIXME warning; just too annoying.
2194
2195 2001-05-04  Alex Larsson  <alla@lysator.liu.se>
2196
2197         * gdk/linux-fb/gdkcolor-fb.c:
2198         Better error messages.
2199
2200         * gdk/linux-fb/gdkpixmap-fb.c (gdk_pixmap_new):
2201         Initialize abs_x and abs_y.
2202         
2203         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic):
2204         Correct handling of stipple offset.
2205
2206         * gdk/linux-fb/gdkvisual-fb.c (gdk_visual_init):
2207         Treat directcolor framebuffers as truecolor.
2208         
2209 Thu May  3 14:13:49 2001  Owen Taylor  <otaylor@redhat.com>
2210
2211         * INSTALL.in HACKING gtk/gtkaccessible.[ch] gtk/gtk.c: Add
2212         dependency on Atk for accessibility support.
2213
2214         * configure.in **/Makefile.am: Major reworking of substituted
2215         variables for CFLAGS/LIBS to make a lot more sane and 
2216         keep the the compile/link lines a bit shorter.
2217
2218         * gdk/x11/gdkkeys-x11.c: Fix #endif with trailing stuff.
2219
2220 Thu May  3 08:10:54 2001  Owen Taylor  <otaylor@redhat.com>
2221
2222         * gtk/gtktexttag.c (gtk_text_tag_class_init): Fix return
2223         value to be G_TYPE_BOOLEAN, not G_TYPE_INT, also,
2224         use _gtk_boolean_handled_accumulator.
2225
2226 Thu May  3 07:00:09 2001  Owen Taylor  <otaylor@redhat.com>
2227
2228         * gtk/gtktextview.c: Patch from Juan Pablo Mendoza Mendoza
2229         to fix things so clicking inside selection leaves cursor
2230         at point where clicked. (#50324)
2231
2232         * gtk/gtksettings.c (gtk_settings_class_init): Restore
2233         sane value for default double click time.
2234
2235         * tests/testtext.c (test_init): Really path to input modules.
2236
2237 2001-05-03  Sven Neumann  <sven@convergence.de>
2238
2239         * demos/testpixbuf-save.c: include target-specific headers as
2240         done in testpixbuf-drawable.c
2241
2242 Wed May  2 20:36:38 2001  Owen Taylor  <otaylor@redhat.com>
2243
2244         * gtk/gtkentry.c (gtk_entry_real_insert_text): Reduce
2245         new_text_length appropriately when we run into the 
2246         size limit for the entry. (#53445, reported by Jeff Franks)
2247
2248         * tests/testgtk.c (create_entry): Remove most of the
2249         property toggle buttons. Replace with a "Props" button
2250         that brings up a property editor.
2251
2252         * tests/prop-editor.[ch] test/testtreeview.c tests/Makefile.am:
2253         Split the property editor code out for reuse, improve.
2254
2255 Wed May  2 17:26:22 2001  Owen Taylor  <otaylor@redhat.com>
2256
2257         * gdk/x11/gdkevents-x11.c gdk/x11/gdkwindow-x11.c: Always
2258         trap errors around calls to XSetInputFocus since we have
2259         no way of knowing reliably whether we are viewable or
2260         not. (#53947)
2261
2262 Tue May  1 09:21:23 2001  Jonathan Blandford  <jrb@redhat.com>
2263
2264         * gtk/gtktreeview.c (gtk_tree_view_button_release_drag_column):
2265         fix bug in dropping columns.  Moving columns now basically works
2266         modula some fine tuning.
2267
2268 Tue May  1 19:09:21 2001  Jonathan Blandford  <jrb@redhat.com>
2269
2270         * gtk/gtktreeview.c (gtk_tree_view_horizontal_autoscroll): Add
2271         autoscroll support.  It mostly works, but could use some fine
2272         tuning.
2273         * gtk/gtktreeview.c (gtk_tree_view_button_release_drag_column):
2274         Actually move the column.
2275
2276 Mon Apr 30 20:29:27 2001  Owen Taylor  <otaylor@redhat.com>
2277
2278         * gtk/gtkbutton.c gtk/gtkcheckbutton.c gtk/gtkoptionmenu.c 
2279           gtk/gtkspinbutton.c gtk/gtkstyle.c gtk/gtkwidget.c:
2280           New default theme! A slighly improved version of the 2.0 Raleigh
2281           theme, with Windows-esque focus/drawing default. 
2282           (GtkWidget::interior_focus defaults to TRUE.)
2283
2284         * gtk/gtkstyle.[ch]: Add a text_aa color halfway between text and base.
2285
2286 2001-04-30  Havoc Pennington  <hp@pobox.com>
2287
2288         * tests/testtext.c (line_numbers_expose): fix to work with
2289         gtk_paint_layout change
2290
2291 Mon Apr 30 19:18:07 2001  Owen Taylor  <otaylor@redhat.com>
2292
2293         * gtk/gtkstyle.[ch] gtk/gtkaccellabel.c gtk/gtkcellrenderertext.c
2294           gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c gtk/gtkprogressbar.c
2295           gtk/gtkvruler.c gtk/gtkvscale.c: Add an extra parameter
2296           use_text to gtk_paint_label() to deal with style->bg[] vs style->text[].
2297
2298         * gtk/gtkbbox.c gtk/gtkdialog.c: Tweak padding some to deal
2299           with GtkWidget::interior_focus = TRUE better.
2300
2301         * gtk/gtkbutton.c: Switch ::default_spacing to ::default_border,
2302         ::default_outside_border for more flexibility.
2303
2304         * gtk/gtkwidget.c (gtk_widget_style_get_valist): Remove 
2305         G_VALUE_NO_COPY_CONTENTS, to correspond with the recent
2306         change that had to be made with g_object_get.
2307
2308 Sun Apr 29 20:13:40 2001  Jonathan Blandford  <jrb@redhat.com>
2309
2310         * gtk/gtktreeview.c (gtk_tree_view_get_columns): new function.
2311         (gtk_tree_view_move_column_after): Clean up interface. 
2312
2313 Sun Apr 29 03:02:02 2001  Tim Janik  <timj@gtk.org>
2314
2315         * gtk/gtkpacker.h:
2316         * gtk/gtkenums.h: moved GtkAnchorType and GtkSideType from gtkpacker.h
2317          to gtkenum.h.
2318
2319         * gtk/gtkmain.c (gtk_main_do_event): silence compiler (GDK_SETTING not
2320         handled in switch).
2321
2322         * gtk/Makefile.am:
2323         (gtk.defs): generate enum portions with  glib-mkenums.
2324         (gtktypebuiltins_evals.c): generate this with glib-mkenums.
2325         got rid of makeenums.pl and makeenums.awk in distributed tarballs.
2326         
2327         * gtk/gtkaccelgroup.c (gtk_accel_group_add): refined havocs warning
2328         addition.
2329
2330         * docs/Changes-2.0.txt: keep a note on signal handlers now
2331         not getting emitted during the emission they were connected within.
2332
2333 2001-04-28  Havoc Pennington  <hp@pobox.com>
2334
2335         * gtk/gtkcolorsel.c (palette_new): fix bug in tooltip
2336
2337 2001-04-24  Havoc Pennington  <hp@redhat.com>
2338
2339         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_previous_line): 
2340         (gtk_text_layout_move_iter_to_next_line): fix these two for
2341         invisible text, lots of other stuff still hosed.
2342
2343         * gtk/gtkcolorsel.c (gtk_color_selection_set_change_palette_hook):
2344         new function, replaces the get/set palette stuff. This function 
2345         is intended for use by libgnomeui which should set the hook to a
2346         thing which sets the palette in GConf, and we need the
2347         GConf-to-xsettings proxy which will result in the change being
2348         propagated back to the GTK app.
2349
2350         * gtk/gtkaccelgroup.c (gtk_accel_group_add): add note to warning 
2351         about unusable signals that it may be because the signal has 
2352         parameters.
2353
2354         * gtk/gtkwidget.c (gtk_widget_modify_style): always copy the
2355         style, otherwise gtkrc.c won't know to create a new GtkStyle for
2356         it.
2357         (gtk_widget_modify_color_component): call
2358         gtk_widget_modify_style() so the rc style will get copied.
2359         (gtk_widget_modify_font): ditto
2360
2361         * gtk/gtkrc.c: make a couple variables static
2362
2363         * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): hide
2364         help button by default, since it does nothing
2365
2366         * gtk/gtkcolorsel.c: add tooltips, work on key navigation, fool
2367         around with UI
2368
2369         * gtk/gtkentry.c (gtk_entry_realize): request enter/leave notify
2370         so we can have tooltips
2371
2372         * gtk/gtkhsv.c (gtk_hsv_realize): request enter/leave notify so we
2373         can have tooltips
2374
2375         * gdk/gdkimage.h: mark gdk_image_new_bitmap with
2376         GDK_ENABLE_BROKEN, because its memory behavior is completely
2377         hosed.
2378
2379         * gtk/gtknotebook.c: remove key press handler, replace with
2380         binding set, add numeric keypad support
2381
2382         * gtk/gtktextview.c (gtk_text_view_class_init): accept KP_Delete
2383
2384         * gtk/gtktext.c (gtk_text_key_press): add a bunch of KP keysyms
2385
2386         * gtk/gtkentry.c (gtk_entry_class_init): accept GDK_KP_Delete in
2387         addition to plain Delete
2388
2389         * gtk/gtktextview.c (gtk_text_view_key_press_event): accept
2390         GDK_KP_Enter in addition to GDK_Return
2391
2392         * gtk/gtkfontsel.c (gtk_font_selection_size_key_press): connect to
2393         activate on entry instead of key press
2394         (gtk_font_selection_on_clist_key_press): get
2395         rid of this signal handler, not needed with new font sel.
2396
2397         * gtk/gtkfilesel.c (gtk_file_selection_key_press): remove a
2398         no-longer-needed emit_stop_by_name(), just return TRUE
2399
2400         * gtk/gtkhscrollbar.c, gtk/gtkvscrollbar.c: remove keybindings
2401         cruft, this widget is no longer focusable.
2402
2403         * gtk/gtkrange.h, gtk/gtkrange.c, gtk/gtkvscale.c,
2404         gtk/gtkhscale.c: Get rid of trough_keys virtual function, add
2405         move_slider action signal, add binding set for vscale/hscale, in
2406         the process support numeric keypad
2407
2408         * gtk/gtkentry.c (gtk_entry_class_init): Add keypad bindings; 
2409         make GDK_Return and GDK_KP_Enter activate the entry via 
2410         binding set, instead of hardcoded.
2411
2412 Fri Apr 27 20:27:21 2001  Jonathan Blandford  <jrb@redhat.com>
2413
2414         * gtk/gtktreeview.[hc]: Massive reorder/cleanup of a lot of the
2415         code.  Some documentation added.
2416
2417 2001-04-27  Havoc Pennington  <hp@redhat.com>
2418
2419         * gtk/gtkcombo.c (gtk_combo_popup_button_press): fix warning
2420
2421         * gtk/gtkmessagedialog.c (gtk_message_dialog_init): make messages selectable
2422
2423         * gtk/gtkentry.c (gtk_entry_real_insert_text): don't strip
2424         line/para separators
2425         (gtk_entry_create_layout): set single paragraph mode on the layout
2426
2427         * gtk/gtkbutton.c (gtk_button_new_from_stock): don't put much
2428         spacing between the image and label; instead, inside a button box 
2429         the button will get extra space that will go there, but if people 
2430         configure button box for 0 chubbiness, then there's no spacing.
2431
2432         * gtk/gtkbbox.c (gtk_button_box_class_init): Make child ipadding
2433         and min/max size style properties, so people can tune their
2434         chubbiness.
2435
2436         * tests/testgtk.c (make_toolbar): remove calls to removed toolbar
2437         functions
2438
2439         * gtk/gtktoolbar.c (gtk_toolbar_class_init): Make space_size,
2440         space_style, and button_relief into style properties, remove
2441         functions for setting them
2442         
2443         * gtk/gtkmenu.c (gtk_menu_key_press): handle menu bar accel to pop 
2444         it back down
2445
2446         * gtk/gtkoptionmenu.c (gtk_option_menu_get_props): free boxed
2447         types from gtk_widget_style_get
2448
2449         * gtk/gtkmenubar.c (gtk_menu_bar_set_shadow_type): Remove, replace
2450         with a style property.
2451
2452         * gdk/x11/gdkevents-x11.c: namespace the settings
2453
2454         * gtk/gtkmenubar.c: Add F10 accelerator to move between menubars.
2455
2456         * gtk/gtksettings.c (gtk_settings_class_init): remove code with
2457         side effects from inside g_assert(), so that G_DISABLE_ASSERT can
2458         be used. Also, translate doc strings for settings. Also, namespace
2459         the double-click-time property. Also, remove bell properties crap.
2460
2461 2001-04-27  Sven Neumann  <sven@gimp.org>
2462
2463         * Makefile.am: before creating links, check if pkg-config files
2464         exist for the default target. Otherwise link to the pkg-config files
2465         that got installed with this build.
2466
2467 Thu Apr 26 19:11:46 2001  Jonathan Blandford  <jrb@redhat.com>
2468
2469         * gtk/gtktreeview.c (gtk_tree_view_motion): clean up column
2470         dragging code.  Revealed some (potential) GdkWindow bugs.
2471
2472         * gdk/x11/gdkwindow-x11.c (gdk_window_reparent): add
2473         _gdk_window_init_position to the end of reparent to fix the case
2474         of reparenting when new_x != old_x and new_y != old_y.
2475
2476 Thu Apr 26 10:54:50 2001  Owen Taylor  <otaylor@redhat.com>
2477
2478         * gtk/gtkentry.c (strstr_len): Fix optimization that
2479         was correct for the use here, but completely incorrect
2480         in general.
2481
2482 Thu Apr 26 10:40:41 2001  Owen Taylor  <otaylor@redhat.com>
2483
2484         * gtk/gtkwindow.h: Remove deprecation of gtk_window_set_default_size()
2485         until patch adding gtk_window_set_size() is recommitted. 
2486
2487         * **Makefile.am configure.in gdk/x11/gdkim-11.c
2488           gtk/gtkmain.c gtk/gtkimmulticontext.c gtk/gtkmain.c
2489           gtk/gtkrc.c: Remove all traces of -DX_LOCALE support.
2490           (#10784)
2491
2492 Wed Apr 25 12:16:36 2001  Owen Taylor  <otaylor@redhat.com>
2493
2494         * gdk/X11/gdkevents-x11.c (gdk_event_translate): Test for 
2495         window == NULL in a number of cases.
2496
2497         * tests/testdnd.c: Set module path for gdk-pixbuf.
2498
2499 Thu Apr 19 16:11:07 2001  Owen Taylor  <otaylor@redhat.com>
2500
2501         * gtk/Makefile.am xembed.h: File containing #defines
2502         for XEMBED protocol.
2503
2504         * gtk/gtkplug.[ch] gtk/gtksocket.[ch]: 
2505
2506         - Change protocol from old plug/socket specific protocol
2507           to XEMBED draft
2508         - Various fixes to work with GTK+-2.0
2509
2510         Still quite a bit of work to do here to handle initiation
2511         from the socket side (as specified by XEMBED), to handle
2512         the more advanced features of XEMBED, and to figure out
2513         a good way to handle same-app embedding with less overhead
2514         than using full XEMBED.
2515
2516 Wed Apr 18 16:04:28 2001  Owen Taylor  <otaylor@redhat.com>
2517
2518         * gtk/gtkwindow.[ch] (gtk_window_real_set_focus): Keep
2519         track of whether the toplevel has the focus; only send
2520         focus-in events to the focus widget when the window
2521         actually has the focus.
2522
2523 2001-04-25  Havoc Pennington  <hp@pobox.com>
2524
2525         * gtk/gtkwindow.h: set_decorations_hint and set_functions_hint
2526         were still in the header
2527
2528 2001-04-24  Alexander Larsson  <alexl@redhat.com>
2529
2530         * gtk/gtkclist.[ch]:
2531         * gtk/gtkctree.c:
2532         When there is a row highlighted for D'n'D it must alse
2533         be painted hightlighted on exposes. Otherwise exposes from
2534         the icon being dragged will mess up the hightlight.
2535
2536         * gtk/gtkfontsel.c:
2537         Don't recenter selected font when exposing the font family
2538         clist. This means you can now actually scroll the font family
2539         list.
2540
2541         * gtk/gtknotebook.c:
2542         Fix focus movement on scrolling tabs that are placed on the left
2543         and right.
2544
2545 2001-04-21  Havoc Pennington  <hp@pobox.com>
2546
2547         * gtk/gtktextdisplay.c (gtk_text_layout_draw): handle 0-height
2548         empty/invisible lines.
2549
2550         * gtk/gtktextiter.c (gtk_text_iter_set_visible_line_offset)
2551         (gtk_text_iter_set_visible_line_index): new functions to set
2552         indexes excluding invisible text
2553
2554         * gtk/gtktextlayout.c (line_display_iter_to_index): get visible 
2555         index
2556
2557         * gtk/gtktextiter.c (gtk_text_iter_get_visible_line_index)
2558         (gtk_text_iter_get_visible_line_offset): new functions to 
2559         get indexes excluding invisible text
2560
2561         * gtk/gtkmessagedialog.c (gtk_message_dialog_init): strip out a
2562         bunch of extra padding that served no purpose
2563
2564         * gtk/gtkdialog.c: Make all the spacings configurable via style
2565         properties, for chubbiness configuration in themes
2566
2567         * tests/testtext.c: fix path to the immodules.
2568         
2569 Mon Apr 23 18:57:03 2001  Jonathan Blandford  <jrb@redhat.com>
2570
2571         * gtk/gtksocket.c (gtk_socket_filter_func): add missing '}' that
2572         got munched by #endif.
2573
2574         * gtk/Makefile.am (gtk_plug_c_sources): add missing '\'
2575
2576         * gtk/gtktreeview.c: Refactored code to clean up a number of
2577         events.
2578
2579         * gtk/gtktreemodel.c (gtk_tree_path_compare): Switched return
2580         values to make consistent with other functions.  Spotted by Jeff
2581         Franks <jcf@tpg.com.au>.
2582
2583         * gtk/gtktreeview.h (struct _GtkTreeViewClass): Fixes to signal
2584         declaration spotted by Jeff Franks <jcf@tpg.com.au>.
2585
2586 2001-04-23  Sven Neumann  <sven@gimp.org>
2587
2588         * gtk/Makefile.am
2589         * gtk/gtkplug.c
2590         * gtk/gtksocket.c: on request of Owen, reverted my last change 
2591         and exclude gtkplug.c/gtksocket.c from the build for non-X11 targets
2592
2593 2001-04-23  Sven Neumann  <sven@gimp.org>
2594
2595         * gtk/gtkplug.c: put into #ifdef GDK_WINDOWING_X11 to make GTK+
2596         compile for non-X11 targets again
2597
2598 2001-04-20  Alexander Larsson  <alexl@redhat.com>
2599
2600         * gtk/gtkcolorsel.[ch]:
2601         API Change. Take GdkColor arguments instead of gdouble *.
2602         Leave the old gtk_color_selection_set_color for compatibility,
2603         but marked deprecated.
2604         Do correct rounding when converting RGB <-> HSV.
2605         
2606         * gtk/gtkcolorseldialog.c:
2607         * tests/testgtk.c:
2608         Use new GtkColorSelection API.
2609
2610         * gtk/gtkhsv.c:
2611         Fix problem selecting colors in triangle when Hue is 330.
2612         Fix some black dots around the HSB triangle.
2613         
2614         * gtk/gtkfilesel.c:
2615         return FALSE from the focus_in_event handler to fix focus problems.
2616
2617 2001-04-18  Havoc Pennington  <hp@redhat.com>
2618
2619         * gtk/gtkwindow.c (gtk_window_class_init): add signals and binding
2620         set, so keybindings are configurable    
2621         (gtk_window_activate_default): Change to activate the focus widget
2622         instead if there's a focus widget, to be consistent with the
2623         behavior that previously existed in key_press_event
2624
2625 2001-04-18  Havoc Pennington  <hp@redhat.com>
2626
2627         * gdk/gdkkeyuni.c: Handle numeric keypad keysyms; bug #50201
2628
2629 2001-04-18  Havoc Pennington  <hp@redhat.com>
2630
2631         Close bug #50615:
2632         
2633         * gtk/gtkstyle.c (gtk_default_draw_layout): Use text_gc to draw
2634         the layout
2635
2636         * gtk/gtktext.c: Use base/text instead of bg/fg throughout
2637
2638         * gtk/gtkentry.c: Use base/text instead of bg/fg throughout
2639
2640         * gtk/gtktextdisplay.c: Use base/text instead of bg/fg throughout
2641         
2642         * gtk/gtkstyle.c (gtk_style_init): make GTK_STATE_SELECTED default
2643         to blue for base, in addition to bg
2644         
2645 2001-04-18  Havoc Pennington  <hp@redhat.com>
2646
2647         * tests/testgtk.c (create_image): allow shrinking the image window
2648         to test that we clip to allocation.
2649
2650         * gtk/gtkimage.c (gtk_image_expose): clip to allocation,
2651         #9845
2652
2653         * gtk/gtkenums.h: move GtkWrapMode in here, #50472
2654
2655 Wed Apr 18 14:23:14 2001  Owen Taylor  <otaylor@redhat.com>
2656
2657         * gdk/x11/gdkimage-x11.c (gdk_image_new): Try changing
2658         mode on shm segments to 0600. We'll see who complains.
2659
2660         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Call
2661         _gdk_windowing_window_destroy() AFTER recursing through
2662         children.
2663
2664         * tests/Makefile.am (noinst_PROGRAMS): Build testsocket,
2665         testsocket_child on X.
2666
2667         * tests/testsocket[_child].c: Fix uses of
2668         gtk_window_get_default_accel_group().
2669
2670         [ Merge patch from Ramiro Estrugo  <ramiro@eazel.com> from gtk-1-2 ]
2671
2672         * gdk/gdkimage.c: (gdk_image_get):
2673         Deal with the possibility that XGetImage() might return NULL.
2674         Allocate the GdkImagePrivate structure only after XGetImage()
2675         succeeds in order not to dereference a NULL ximage pointer.  This
2676         prevents a core dump when XGetImage() fails - which is unlikely,
2677         but can happen due to race conditions accessing the geometries of
2678         drawables.  An x error will still be triggered, but the gdk image
2679         wrapper at least wont seg fault.
2680         
2681 2001-04-18  Havoc Pennington  <hp@redhat.com>
2682
2683         * gtk/gtkimage.c: fix to properly queue resizes when the image is
2684         set
2685
2686         * gtk/gtktextview.c (gtk_text_view_do_popup): desensitize Paste
2687         if the insertion point isn't editable
2688
2689         * demos/gtk-demo/images.c: Added a GtkImage demo
2690
2691         * demos/gtk-demo/drawingarea.c: drawing area demo
2692         
2693         * demos/gtk-demo/menus.c (create_menu): cleanups
2694
2695 Wed Apr 18 12:15:52 2001  Owen Taylor  <otaylor@redhat.com>
2696
2697         * gdk/x11/gdkwindow-x11.c gdk/x11/gdkwindow-x11.h 
2698           gdk/x11/gdkevents-x11.c: Introduce an extra child
2699         of toplevel windows that serves to hold the focus to
2700         avoid events being delivered to embedded windows.
2701
2702         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Introduce
2703         some extra variables to clean up code and reduce the
2704         number of casts.
2705
2706         * gdk/x11/gdkwindow-x11.h (struct _GdkXPositionInfo): Use
2707         guint for 1 bit bit fields, not gboolean.
2708
2709 Wed Apr 18 10:04:23 2001  Owen Taylor  <otaylor@redhat.com>
2710
2711         * gtk/gtktooltips.c (gtk_tooltips_paint_window): Return FALSE,
2712         not TRUE. (Fixes #52925)
2713
2714 Tue Apr 17 18:05:34 2001  Owen Taylor  <otaylor@redhat.com>
2715
2716         * Released 1.3.4
2717
2718         * NEWS: Updated
2719
2720         * gtk/gtktextview.c (gtk_text_view_class_init): Fix to not
2721         use GTK_TYPE_ENUM.
2722
2723 Tue Apr 17 13:47:12 2001  Owen Taylor  <otaylor@redhat.com>
2724
2725         * configure.in: Don't put -lgthread in GLIB_LIBS, GLIB_DEPLIBS
2726
2727         * gtk/gtktypeutils.h gtk/gtksignals.h: Restore proper parameter
2728         names to compatibility #defines so docs work.
2729
2730         * gtk/gtkenums.h: Remove GtkMenuFactoryType
2731
2732         * gtk/gtkwindow.c gtk/gtkdnd.c: Docs cleanups.
2733
2734         * configure.in: Don't include -lgthread in GLIB_LIBS, GLIB_DEPLIBS
2735
2736         * tests/testgtkrc: No magenta cursors, please.
2737
2738         * README.in INSTALL.in HACKING README.cvs-commits: Updated.
2739
2740         * gtk/gtkenums.h (enum): Remove left over GtkMenuFactoryType.
2741         
2742 Mon Apr 16 14:38:41 2001  Owen Taylor  <otaylor@redhat.com>
2743
2744         * gtk/gtklist.c gtk/gtklistitem.c: Remove explicit pointer
2745         grabs, since they are no longer necessary.
2746
2747         * gtk/gtkcombo.c (gtk_combo_popup_button_press): Fix #52926
2748         by signal_connect() and call gtk_button_pressed() rather
2749         than signal_connect_after().
2750
2751         * tests/testgtk.c: Restore radio menu items to combos 
2752         since they'll look OK with Raleigh, and it is easier
2753         than finishing the process of removing them that was
2754         started earlier.
2755
2756 2001-04-16  Hans Breuer  <hans@breuer.org>
2757
2758         * gdk/gdk.def :
2759         * gtk/gtk.def : added all exports required to link PyGtk 0.7.1
2760
2761         * gdk/gdkfont.h : #define GDK_TYPE gdk_font_get_type ()
2762         we are interested in the functions return value not the function address
2763         * gdk/gdkvisual.h : same for GDK_TYPE_VISUAL
2764
2765         * gtk/makefile.msc.in : reflect movement of GDK_TYPEs from gtk to gdk
2766
2767 2001-04-14  Hans Breuer  <hans@breuer.org>
2768
2769         * gdk/gdk.def :
2770         * gdk/makefile.msc : updated
2771
2772         * gdk/win32/gdkdrawable.win32 (gdk_win32_draw_rectangle) : if modus is 
2773         "fill with tile" do so with new helper function gdk_win32_draw_tiles 
2774         (the testgtk::text backgound pixmap is drawn again)
2775         Changed SetTextAlign before pango_win32_render to TA_BASELINE to reflect 
2776         Win32 Pango change
2777         * gdk/win32/gdkprivate-win32.h : prototype for gdk_win32_draw_tiles
2778
2779         * gdk/win32/gdkproperty-win32.c : first implementation of gdk_setting_get
2780         Not sure if the returned settings have the right unit, because I couldn't
2781         find any docs for the X version ...
2782
2783         * gtk/gtk.def :
2784         * gtk/makefile.msc.in : updated
2785
2786 Thu Apr 12 17:41:17 2001  Owen Taylor  <otaylor@redhat.com>
2787
2788         * gtk-2.0.m4: Fix up to refer to GTK+, not to GLib; fix some
2789         wording problems. (Compared to version from Johannes Stezenbach to
2790         check correctness.)
2791
2792 Thu Apr 12 21:04:26 2001  Tim Janik  <timj@gtk.org>
2793
2794         * gtk/gtktreeview.c (_gtk_tree_view_column_start_drag): get
2795         this to compile.
2796
2797 2001-04-12  Anders Carlsson  <andersca@codefactory.se>
2798
2799         * gtk/gtkcellrenderertextpixbuf.c (gtk_cell_renderer_text_pixbuf_class_init): It's pixbuf_pos,
2800         not pixbufpos.
2801
2802         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render): Fix small typo.
2803
2804         * gtk/gtkcellrenderer.c (gtk_cell_renderer_get_property): xpad and ypad
2805         are unsigned insts, therefore use g_value_set_uint.
2806         (gtk_cell_renderer_set_property): Likewise, use g_value_get_uint.
2807
2808 Sun Apr  8 05:36:06 2001  Jonathan Blandford  <jrb@redhat.com>
2809
2810         * gtk/gtktextview.c (gtk_text_view_class_init): fix a fixme.
2811
2812         * gtk/gtkcellrendertoggle.c: change GTK_TYPE_POINTER to
2813         GTK_TYPE_STRING.
2814
2815         * gtk/gtktreeview.c: New functions to allow initial column
2816         dragging work.
2817
2818         * gtk/gtktreeviewcolumn.c: Initial column dragging support.
2819
2820         * tests/testtreefocus.c: give dave some love.
2821
2822         * tests/testtreesort.c: Modify test to check really long samples.
2823
2824 2001-04-11  Alexander Larsson  <alexl@redhat.com>
2825
2826         * gtk-2.0.m4: Pass pkg-config options
2827         before the other args so it works even if
2828         POSIXLY_CORRECT is set.
2829
2830 Mon Apr  9 19:02:07 2001  Tim Janik  <timj@gtk.org>
2831
2832         * configure.in (GTK_MICRO_VERSION): increment version to 1.3.4 (binary
2833         0, interface 0).
2834
2835 2001-04-04  Denis Oliver Kropp  <dok@convergence.de>
2836
2837         * gtk/gtkcalendar.c (gtk_calendar_button_press):
2838         check for action_func != NULL
2839
2840 2001-04-04  Sven Neumann  <sven@gimp.org>
2841
2842         * tests/testgtk.c (test_init): corrected path to gtk.immodules
2843
2844 Wed Apr  4 09:18:18 2001  Tim Janik  <timj@gtk.org>
2845
2846         * Released Gtk+-1.3.3.
2847
2848 Wed Apr  4 07:42:23 2001  Tim Janik  <timj@gtk.org>
2849
2850         * gdk/Makefile.am (EXTRA_DIST): add makeenums.pl to EXTRA_DIST.
2851
2852 Wed Apr  4 04:13:18 2001  Tim Janik  <timj@gtk.org>
2853
2854         * gtk/stock-icons/Makefile.am: stay in builddir and read/write
2855         files to/from source dir. (if we don't stay in builddir, we
2856         can't reach make-inline-pixbuf.
2857
2858         * gdk/Makefile.am (gdkenumtypes.c): add $(srcdir) to mekeenums.pl
2859         deps.
2860
2861         * configure.in (GTK_MICRO_VERSION): up and away (1.3.3 bin/interface
2862         ages 0).
2863
2864 Tue Apr  3 15:04:45 2001  Jonathan Blandford  <jrb@redhat.com>
2865
2866         * gtk/gtktreemodelsort.h:  removed set_sort_column, as it was
2867         moved to the GtkTreeSortable interface.
2868
2869         * gtk/gtktreeselection.c (gtk_tree_selection_selected_foreach):
2870         Make more efficient (fixes #50262).
2871
2872 Tue Apr  3 13:55:37 2001  Owen Taylor  <otaylor@redhat.com>
2873
2874         * NEWS: Updated.
2875
2876         * configure.in: Remove support for uninstalled glib.
2877
2878         * gtk/gtkdnd.c (gtk_drag_highlight_expose): Return FALSE as
2879         so as not to stop emission.
2880
2881         * gtk-config-2.0.in: Exit with an error message that gtk-config-2.0
2882         is no longer supported.
2883
2884         * Makefile.am gtk/Makefile.am tests/*: Moved all tests
2885         into tests, change build order to build modules before
2886         gtk/.
2887
2888         * modules/input/Makefile.am: Move gtk-query-immodules-2.0 invocation
2889         to here.
2890
2891 Tue Apr  3 13:52:57 2001  Tim Janik  <timj@gtk.org>
2892
2893         * gtk/gtkitemfactory.[hc]: changed gtk_item_factory_dump_items()
2894         and gtk_item_factory_dump_rc() GtkPatternSpec argument to
2895         GPatternSpec. this is actually unlikely to cause breakage in
2896         third-party apps since except for gle, pretty much ever caller
2897         passes NULL here.
2898
2899         * gtk/gtkbindings.[hc]: removed gtk_pattern_*() API.
2900
2901         * *.c: use g_pattern_*() API.
2902
2903         * docs/Changes-2.0.txt: GtkPatternSpec->GPatternSpec updates.
2904
2905         * gtk/gtkstyle.c (gtk_default_draw_resize_grip): assert unhandled
2906         directions aren't passed in.
2907
2908         * gtk/gtksettings.[hc] (_gtk_settings_parse_convert): export conversion
2909         functionality to be usable from gtkstyle.c as well, give precedence
2910         for conversion to user-supplied parsers.
2911         s/_gtk_rc_property_parser_for_type/_gtk_rc_property_parser_from_type/;
2912
2913         * gtk/gtkstyle.c (_gtk_style_peek_property_value): use
2914         _gtk_settings_parse_convert() for rcporperty value conversion.
2915
2916 2001-04-03  Alexander Larsson  <alexl@redhat.com>
2917
2918         * gdk/linux-fb/gdkevents-fb.c:
2919         Add empty gdk_setting_get().
2920
2921 Tue Apr  3 05:09:07 2001  Tim Janik  <timj@gtk.org>
2922
2923         * gtk/gtkmain.c (_gtk_boolean_handled_accumulator): use more elaborate
2924         variable names.
2925         
2926         * gtk/makeenums.pl: touch this so enum files get remade.
2927
2928 Mon Apr  2 19:36:57 2001  Jonathan Blandford  <jrb@redhat.com>
2929
2930         * gtk/gtktreestore.c (gtk_tree_store_init):  Bug fix to make trees
2931         work again when not sorted.
2932
2933         * gtk/gtktreeview.c (gtk_tree_view_class_init): Add "collapse_row"
2934         and "expand_row" signal, closing bug 52578.
2935
2936         * gtk/gtktreeview.c (gtk_tree_view_expand_row): Add signal
2937         support.
2938
2939         * gtk/gtktreeview.c (gtk_tree_view_collapse_row): Add signal
2940         support.
2941
2942 Mon Apr  2 18:18:07 2001  Owen Taylor  <otaylor@redhat.com>
2943
2944         * gdk/gdkevents.h: Add GdkEventSetting event for notification
2945         of changes to system settings, gdk_setting_get() to retrieve
2946         a single system setting.
2947
2948         * gdk/x11/gdkevents-x11.c: Bridge gdk_setting_get() and GdkEventSetting
2949         to the draft XSETTINGS mechanism.
2950
2951         * gdk/x11/xsettings-{common,client}.[ch]: Sample-implementation of
2952         XSETTINGS.
2953
2954         * gtk/gtkmain.c gtk/gtksettings.[ch]: Propagate notification
2955         of GDK settings changes to the GtkSettings object.
2956
2957         * gdk/gdkevents.[ch] gdk/gtk/gtksettings.c: Hook up the
2958         double-click-timeout property to GDK.
2959
2960         * gdk/gdkcolor.[ch] gdk/gdkvisual.h gdk/gdkevent.[ch] gdk/gdkfont.[ch]:
2961         Define GDK boxed types here.
2962
2963         * gdk/Makefile.am gdk/makeenums.pl: Generate source files
2964         gdk/gdkenumtypes.[ch] for enum definitions.
2965
2966         * gtk/gtkcompat.h: Add defines for GTK_TYPE_GDK_*
2967         * gtk/gtk-boxed.defs: Comment out GDK types
2968         * gtk/gtktypeutils.h: Remove GDK types
2969         * gtk/Makefile.am: No longer scan GDK headers for enumerataions
2970
2971 Mon Apr  2 16:41:08 2001  Owen Taylor  <otaylor@redhat.com>
2972
2973         * Applied patch from Ron Steinke to add signal accumulators
2974         so that signals with the convention 'TRUE return means
2975         handled' stop emission on a TRUE return.
2976
2977         * gtk/gtkmain.[ch]: Add private accumulator 
2978         _gtk_boolean_handled_accumulator, used throughout GTK+.
2979         
2980         * gtk/gtkspinbutton.c: Add accumulator for ::output.
2981
2982         * gtk/gtktipsquery.c: Add accumulator for ::widget_selected
2983         
2984         * gtk/gtkwidget.c: Add accumulators for event signals,
2985         ::drag_motion, ::drag_drop. Use _gtk_boolean_handled_accumator
2986         for ::mnemonic-activate.
2987
2988         * gtk/gtkwindow.c: Add accumulator for ::frame_event
2989
2990 Mon Apr  2 16:24:21 2001  Owen Taylor  <otaylor@redhat.com>
2991
2992         * gtk/gtkwidget.c: Add missing include.
2993
2994 Mon Apr  2 16:56:15 2001  Jonathan Blandford  <jrb@redhat.com>
2995
2996         * gtk/gtkmarshal.list (VOID:BOXED,BOXED,BOXED,BOXED): new
2997         marshaller.
2998
2999         * gtk/gtktreemodel.c (gtk_tree_model_range_changed): change
3000         "changed" signal to "range_changed".
3001
3002         * gtk/gtktreeview.c (gtk_tree_view_set_model): fix small bug where
3003         removing a tree from one model would remove all trees from that
3004         model.
3005         * gtk/gtktreeview.c (gtk_tree_view_range_changed): use range
3006         changed signal instead.
3007
3008 Mon Apr  2 16:13:58 2001  Owen Taylor  <otaylor@redhat.com>
3009
3010         * gtk/gtkinvisible.c (gtk_invisible_style_set): Avoid
3011         chaining up to parent impl, since we have a INPUT_ONLY
3012         window.
3013
3014         * gtk/gtkentry.[ch]: Add a cursor_color property to set the
3015         foreground color for the cursor.
3016
3017 Mon Apr  2 15:06:13 2001  Owen Taylor  <otaylor@redhat.com>
3018
3019         * gtk/gtkstyle.c (_gtk_style_peek_property_value): Reference 
3020         param spec when caching property values, since we unref it
3021         later when we free the style.
3022
3023         * gtk/gtkoptionmenu.c (gtk_option_menu_get_props): Dont' free
3024         values since they are retrieved with G_VALUE_NO_COPY_CONTENTS.
3025
3026 Mon Apr  2 10:47:57 2001  Owen Taylor  <otaylor@redhat.com>
3027
3028         * gtk/gtkwidget.c (gtk_widget_class_init): Fix 
3029         G_VALUE_NO_COPY_CONTENTS instead of G_SIGNAL_TYPE_STATIC_SCOPE
3030         stupidity.
3031
3032 Mon Apr  2 00:51:11 2001  Owen Taylor  <otaylor@redhat.com>
3033
3034         [ First pass at adding style properties. Still needs some definite
3035         fine-tuning. ]
3036
3037         * gtk/gtkbutton.c: Add ::default_spacing style property.
3038          
3039         * gtk/gtkcheckbutton.[ch] gtkradiobutton.c: Add ::indicator_size,
3040         ::indicator_spacing style properties.
3041
3042         * gtk/gtkoptionmenu.c: Add ::indicator_size, ::indicator_spacing
3043         style properties.
3044
3045         * gtk/gtk{,h,v}paned.[ch]: Make handle_size a style property
3046         rather than a normal property.
3047
3048         * gtk/gtkwidget.c: Add an ::interior_focus style property to
3049         draw focus inside buttons, in the Windows/Java Metal/etc. style.
3050
3051         * gtk/gtkbutton.c gtk/gtkcheckbutton.c gtk/gtktogglenbutton.c:
3052         Honor ::interior_focus.
3053         
3054         * gtk/gtkentry.c: Don't draw focus at all when ::interior_focus is 
3055         TRUE.
3056
3057         * gtk/gtkrange.[ch] gtk/gtk{h,v}scrollbar.c gtk/gtk{h,v}scale.c:
3058         Add ::slider_width, ::trough_border, ::stepper_size,
3059         ::stepper_spacing style properties.
3060
3061         * gtk/gtkscale.[ch] Add ::slider-length style property.
3062
3063 2001-04-02 Alexander Larsson   <alexl@redhat.com>
3064
3065         * gdk/linux-fb/gdkwindow-fb.c:
3066         Add gdk_window_begin_resize_drag and gdk_window_begin_move_drag. Remove some
3067         warnings that were spewed on startup.
3068
3069         * gtk/gtkwindow-decorate.c:
3070         gtk_window_reposition -> _gtk_window_reposition
3071
3072 Sun Apr  1 21:37:22 2001  Owen Taylor  <otaylor@redhat.com>
3073
3074         * gtk/gtkwidget.[ch] gtk/gtktypeutils.c gtk/gtk-boxed.defs:
3075         Add boxed type for GtkRequistion. Use it for ::size-request.
3076
3077         * gtk/gtkstyle.[ch] gtk/gtktypeutils.c gtk/gtk-boxed.defs:
3078         Add a new GtkBorder structure useful for geometry properties
3079         for widgets. Add corresponding GTK_TYPE_BORDER.
3080         
3081         * gtk/gtkwidget.c (gtk_widget_class_install_style_property):
3082         Support automatic parser selection like
3083         gtk_settings_install_property_parser().
3084
3085         * gtk/gtksettings.c (_gtk_rc_property_select_parser): Export
3086         functionality for use by gtk_widget_class_install_style_property.
3087         Support GTK_TYPE_BORDER, GTK_TYPE_REQUISITION.
3088
3089 Sun Apr  1 20:48:59 2001  Owen Taylor  <otaylor@redhat.com>
3090
3091         * gtk/gtkentry.c (gtk_entry_class_init): Make invisible-char
3092         g_param_spec_unichar(). 
3093
3094 Sun Apr  1 23:41:37 2001  Tim Janik  <timj@gtk.org>
3095
3096         * gdk/x11/gdkwindow-x11.c (gdk_window_focus): raise window for non
3097         _NET window managers.
3098
3099         * gtk/gtkmenufactory.[hc]: cvs removed those files now.
3100
3101 Sun Apr  1 08:00:13 2001  Tim Janik  <timj@gtk.org>
3102
3103         * gtk/gtkwidget.[hc]: got rid of gtk_widget_popup(), a function that
3104         bad needs to be nuked, not just deprecated.
3105
3106         * gtk/gtktooltips.c (gtk_tooltips_draw_tips): don't use 
3107         gtk_widget_popup().
3108
3109         * gtk/*.[hc]: s/activate_mnemonic/mnemonic_activate/g;
3110         
3111         * gtk/gtkmenufactory.[hc]: removed this long-standingly deprecated
3112         widget.
3113         
3114         * docs/Changes-2.0.txt: updates.
3115         
3116 Sun Apr  1 01:02:54 2001  Jonathan Blandford  <jrb@redhat.com>
3117
3118         * gtk/gtktreestore.c (gtk_tree_store_sort_iter_changed):
3119         for (i = 0; i < 100; i ++)
3120           g_print ("I will confirm it compile before committing\n");
3121
3122 Sun Apr  1 00:52:06 2001  Jonathan Blandford  <jrb@redhat.com>
3123
3124         * gtk/gtktreestore.c: Initial work on implementing the
3125         GtkTreeSortable interface.  Basicaly a big cut'n'paste job.
3126
3127 Sun Apr  1 03:28:14 2001  Tim Janik  <timj@gtk.org>
3128
3129         * gtk/gtkwidget.c: fixed a bunch of notifications, added
3130         reference counts around emissions where the widget is used afterwards.
3131         added freeze/thaws around multiple properties being notified.
3132         (_gtk_widget_get_aux_info): cleanups.
3133         
3134         * gtk/gtksettings.c (gtk_settings_install_property): provide
3135         default parsing functions for gdkcolor, enums and flags.
3136
3137         * gtk/gtkwindow.[hc]: partially reverted patch from havoc,
3138         applied by owen.
3139         backed out gtk_window_get_location(), gtk_window_set_location(),
3140         gtk_window_get_size() and gtk_window_set_size(), these
3141         have to be sorted out wrg x/y/width/height/default_with/default_height
3142         properties.
3143         kept a flag in GtkWindowGeometryInfo to handle user
3144         resetting default sizes.
3145         cleaned up ZVT comments.
3146         bunch of assorted bug fixes, notification fixes.
3147         (_gtk_window_reposition): make this a really internal function.
3148         
3149         * gtk/testgtk.c: fixups.
3150         
3151 2001-03-31  Hans Breuer  <hans@breuer.org>
3152
3153         * config.h.win32.in : disable USE_MMX for msvc build cause
3154         the assembler doesn't fit and is out of my scope. Disable
3155         USE_GMODULE for msvc build as wel. The right way to share
3156         binaries on win32 would be to use libtiff.dll etc. To reduce
3157         installation hassles IMO it's better to include all fileformats
3158         builtin to gdk-pixbuf
3159
3160         * gdk-pixbuf/makefile.msc : new file
3161
3162         * gdk/gdk.def : updated
3163
3164         * gdk/win32/gdkevents-win32.c : don't erase the background if
3165         .no_bg is set. It improves the scrolling (e.g. of testgtk main
3166         buttons
3167         * gdk/win32/gdkgeometry-win32.c : added comment about the above
3168
3169         * gdk/win32/gdkwindow-win32.c : added three new functions like
3170         the X version. Only one is implemented, because the other two
3171         "gdk_window_begin_(resize|move)_drag" got no docs and appear to
3172         be default behaviour on win32 anyway ...
3173
3174         * gtk/gtk.def : updated
3175
3176         * gtk/makefile.msc.in : update for new files, use glib-genmarshal
3177         from where it was built and add an additional rule to automagically
3178         build gtkmarshal.[hc]
3179
3180         * gtk/gtkfilesel.c (open_new_dir) : don't increase n_entries
3181         before array access for the current entry isn't finished
3182
3183         * gtk/gtktreeitem.c (gtk_tree_item_subtree_button_click) :
3184         use g_return_val_if_fail
3185
3186         * gtk/testgtk.c (window_controls) : don't use the *wrong* size
3187         for the static array, but let the compiler calculate it. It
3188         makes me wonder if gcc isn't capable to catch bugs like this ...
3189
3190 2001-03-31  James Henstridge  <james@daa.com.au>
3191
3192         * gtk/gtkwidget.c (gtk_widget_size_adjust): fix use of magic
3193         constant "-1" in the aux info structure.
3194
3195 2001-03-30  Alexander Larsson  <alexl@redhat.com>
3196
3197         * gtk/gtkbutton.c (gtk_button_get_property):
3198         * gtk/gtklabel.c:
3199         Remove leaks.
3200         
3201         * gtk/gtkcontainer.c:
3202         * gtk/gtkhscale.c:
3203         * gtk/gtkhscrollbar.c:
3204         * gtk/gtklayout.c:
3205         * gtk/gtkmisc.c:
3206         * gtk/gtkprogress.c:
3207         * gtk/gtkprogressbar.c:
3208         * gtk/gtkrange.c:
3209         * gtk/gtktable.c:
3210         * gtk/gtkviewport.c:
3211         * gtk/gtkvscale.c:
3212         * gtk/gtkvscrollbar.c:
3213         * gtk/gtkwidget.c:
3214         Property patches, based on patches from John Margaglione and Lee Mallabone.
3215
3216 Thu Mar 29 21:20:38 2001  Mike Kestner  <mkestner@ameritech.net>
3217
3218         * gtk/gtkspinbutton.c : added value_changed signal which proxies for the
3219         adjustment. Cleaned redundant preconditions (spin != NULL). Added
3220         inline API function docs.
3221         (gtk_spin_button_new_with_range): New convenience constructor.
3222         (gtk_spin_button_set_increments): New adjustment helper.
3223         (gtk_spin_button_set_range): New adjustment helper.
3224
3225         * gtk/testgtk.c : added test of the new convenince constructor and
3226         value_changed signals.
3227
3228 Thu Mar 29 20:20:38 2001  Jonathan Blandford  <jrb@redhat.com>
3229
3230         * gtk/gtktreemodel.c (gtk_tree_row_ref_reordered_callback): Now we
3231         listen to the reorder signal.
3232
3233 Wed Mar 28 20:30:26 2001  Owen Taylor  <otaylor@redhat.com>
3234
3235         * gtk/gtkwidget.[ch] (_gtk_widget_get_aux_info): Add private function
3236         to get the aux info structure fo the widget.
3237
3238         * gtk/gtklabel.c gtk/gtkscrolledwindow.c gtk/gtkwindow.c: Use
3239         above function.
3240
3241         [ Patch from  Havoc Pennington  <hp@redhat.com> ]
3242
3243         * gdk/x11/gdkwindow-x11.c (gdk_window_get_frame_extents): function
3244         to get the size of the window manager frame, basically the same
3245         code that gdk_window_get_root_origin() had
3246         (gdk_window_get_root_origin): use gdk_window_get_frame_extents()
3247
3248         * gtk/gtkwindow.c (gtk_window_set_default_size): use
3249         gdk_window_resize() if the window is realized and resizeable
3250
3251         * gdk/x11/gdkwindow-x11.c (gdk_window_set_geometry_hints): fix
3252         typo so that setting gravity works
3253
3254         * gtk/gtkwindow.c (gtk_window_move_resize): don't ever use
3255         allocation if auto_shrink is on, even if the default size
3256         has not changed.
3257
3258         * gtk/gtkwidget.c (gtk_widget_render_icon): remove bogus
3259         g_return_if_fail
3260
3261 Thu Mar 29 16:29:12 2001  Jonathan Blandford  <jrb@redhat.com>
3262
3263         * gtk/gtkliststore.c (gtk_list_store_iter_changed): Massive
3264         reordering/sorting work.  Now pretty much works.
3265
3266         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): Lots of work to make
3267         reorder mostly work.  Still need to get the parity correct.
3268
3269         * gtk/gtktreeviewcolumn.c: Listen for "model" property changed
3270         signal, so I can listen for the sort_column_changed signal so I
3271         can change my "sort_indicator" property.  Cool.
3272
3273 Wed Mar 28 00:03:10 2001  Owen Taylor  <otaylor@redhat.com>
3274
3275         [ Patch from Havoc Pennington, hp@redhat.com ]
3276
3277         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c:
3278         Add functions gdk_window_begin_resize_drag/begin_move_drag
3279         to start resizing or moving a toplevel window. This
3280         is done either using the _NET_WM_MOVERESIZE protocol,
3281         or, if that isn't present, by emulation.
3282
3283         * gtk/gtkwindow.[ch]: Add functions gtk_begin_move/resize_drag
3284         to export the above to GTK+-land.
3285
3286         * gtk/gtkstyle.[ch]: Add ->draw_resize_grip() paint func.
3287         
3288         * gtk/gtkwindow.c gdk/gdkwindow.[ch] (gdk_window_constrain_size):
3289         Move this function into gdkwindow, since we need it
3290         when implementing fallback resizing.
3291
3292         * gdk/x11/gdkwindow-x11.c: gdk_window_set_geometry_hints.
3293         Fix typo when setting gravity.
3294
3295         * gtk/gtkstatusbar.[ch] (gtk_statusbar_set_has_resize_grip):
3296         Add an optional (but on by default) resize grip for resizing 
3297         the parent window.
3298
3299 01-03-29  Alexander Larsson  <alexl@redhat.com>
3300
3301         * gtk/gtktooltips.c (gtk_tooltips_event_handler):
3302         Don't return TRUE from the event handler, that blocks all
3303         event signals on the tooltip widget. Now you can press buttons
3304         in toolbars again.
3305
3306 Wed Mar 28 19:20:43 2001  Owen Taylor  <otaylor@redhat.com>
3307
3308         * gtk/testtext.c (create_buffer): Add missing NULL on
3309         valist.
3310
3311         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_class_init): Fix
3312         c-n-p problem with INCONSISTENT property.
3313
3314         [ Patch from Havoc Pennington  <hp@redhat.com> ]
3315
3316         * gtk/gtkentry.h (struct _GtkEntryClass): add same populate_popup
3317         hook.
3318
3319         * gtk/gtktextview.h (struct _GtkTextViewClass): add populate_popup
3320         signal as a hook for extending the default popup menu
3321
3322         * gtk/gtkimmulticontext.c (gtk_im_multicontext_append_menuitems):
3323         use radio menu items for the input method menuitems
3324
3325         * gtk/gtkimcontextsimple.c (check_hex): do better validation of 
3326         inserted unicode from Ctrl-Shift-hex input method
3327
3328         * gtk/gtktextbtree.c (_gtk_text_btree_insert): remove utf8
3329         validatation here, already done at GtkTextBuffer level.
3330
3331         * gtk/gtkwidget.c (gtk_widget_class_init): add binding set, add
3332         popup_menu run action signal and Shift+F10 and Menu keybindings.
3333
3334         * gtk/gtkentry.c: implement a default handler for popup_menu
3335
3336         * gtk/gtktextview.c: implement a default handler for popup_menu
3337
3338         * gtk/gtkmenu.c (gtk_menu_popup): select first item if popup is
3339         from a key event
3340         
3341         * gtk/gtklabel.c: remove "trailer" cruft
3342
3343 Wed Mar 28 17:27:12 2001  Jonathan Blandford  <jrb@redhat.com>
3344
3345         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): new function to
3346         handle reordering of trees.  Seems to mostly work w/ the exception
3347         of the parity flag.
3348
3349         * gtk/gtktreeview.c (gtk_tree_view_reordered): handle "reordered"
3350         signal.
3351
3352 Wed Mar 28 21:12:37 2001  Tim Janik  <timj@gtk.org>
3353
3354         * gtk/gtkwidget.h: c++ fixes.
3355
3356 Sun Mar 25 15:51:28 2001  Owen Taylor  <otaylor@redhat.com>
3357
3358         * gtk/gtksettings.c (gtk_settings_init): Fix use of uninitialized
3359         memory.
3360
3361 Tue Mar 27 22:36:07 2001  Owen Taylor  <otaylor@redhat.com>
3362
3363         * gtk/gtkwidget.h gtk/gtkrange.h: Apply patch from 
3364         Nils Barth fixing event return values. (#51041)
3365
3366         * gtk/gtkwidget.c: Fix some return values for default
3367         functions.
3368
3369         * gtk/gtk[vh]scrollbar.c gtk/gtk[vh]range.c: Fix
3370         return values for trough_keys functions.
3371
3372         * gtk/gtkwidget.h (struct _GtkWidgetClass): Fix return
3373         value for add_accelerator (shoudl have been a void
3374         return.)
3375
3376         * gtk/gtkcellrenderer.[ch]: gtkcellrenderertoggle.h:
3377         Fix return type of EVENT.
3378
3379         * gtk/gtkmarshal.list gtk/gtktexttag.c: Make EVENT
3380         signal return a boolean.
3381
3382 Tue Mar 27 22:07:44 2001  Jonathan Blandford  <jrb@redhat.com>
3383
3384         * gtk/gtkliststore.c (gtk_list_store_sort): Fix arguments to
3385         reordered signal.
3386
3387         * tests/testtreesort.c (main): fix spelling.
3388
3389 Tue Mar 27 20:55:29 2001  Jonathan Blandford  <jrb@redhat.com>
3390
3391         * gtk/gtkliststore.c: More work on implementing sortable
3392         interface.
3393
3394 Mon Mar 26 15:48:45 2001  Owen Taylor  <otaylor@redhat.com>
3395
3396         * gtk/gtkwindow.c (gtk_window_list_toplevels): Don't
3397         reference the widgets in the resulting list. (#11821)
3398         This makes this consistent with gtk_container_children.
3399
3400         * gtk/gtkwindow.c gtk/gtkwidget.c: Fix up the two
3401         uses of gtk_window_list_toplevels.
3402
3403 Mon Mar 26 15:26:17 2001  Owen Taylor  <otaylor@redhat.com>
3404
3405         * gtk/gtkimcontext.c (gtk_im_context_set_use_preedit): Add
3406         a virtual function to set whether the IM context should use 
3407         the preedit string. (#51922)
3408         
3409 Mon Mar 26 14:42:59 2001  Owen Taylor  <otaylor@redhat.com>
3410
3411         * gdk/gdkpango.h: Remove stale FIXME comment.
3412
3413 2001-03-26  Alexander Larsson  <alla@lysator.liu.se>
3414
3415         * gtk/gtkfilesel.c (gtk_file_selection_get_filename):
3416         Fixed bug that returned NULL if a filename was selected.
3417
3418 2001-03-24  Havoc Pennington  <hp@pobox.com>
3419
3420         * gtk/gtkthemes.c (gtk_theme_engine_load): improve error message
3421         to contain the word "theme"
3422
3423 2001-03-24  Havoc Pennington  <hp@pobox.com>
3424
3425         * gtk/gtkhsv.c (gtk_hsv_move): make motion around the ring much
3426         slower but finer-grained
3427         (gtk_hsv_focus): get initial focus on the ring or triangle 
3428         according to tab direction
3429
3430         * gtk/testgtk.c (main): get rid of weird sleep(1) on exit
3431
3432 2001-03-23  Havoc Pennington  <hp@pobox.com>
3433
3434         * gtk/gtkhsv.c: make this somewhat key-navigable
3435
3436         * gtk/gtkfontsel.c: mnemonics
3437
3438         * gtk/gtkgamma.c: mnemonics
3439
3440         * gtk/gtkcolorsel.c: add mnemonics to labels
3441
3442 2001-03-22  Havoc Pennington  <hp@pobox.com>
3443
3444         Applied big patch from Seth Lytle to fix event handler return
3445         values, slightly modified.
3446
3447         * gtk/gtkcalendar.c (gtk_calendar_button_press): return TRUE if
3448         handled.
3449         (gtk_calendar_key_press): return TRUE for GDK_space triggers
3450         select_day
3451
3452         * gtk/gtkclist.c (gtk_clist_button_press): return TRUE if handled
3453         (gtk_clist_button_release): return TRUE if handled
3454
3455         * gtk/gtkcolorsel.c (mouse_release):
3456         (palette_activate): 
3457         (palette_press): 
3458         (palette_new): 
3459         (mouse_press): 
3460         (get_screen_color): 
3461         fixed return type (void to gboolean), return TRUE,
3462         added GTK_SIGNAL_FUNC cast
3463
3464         * gtk/gtkcombo.c (gtk_combo_popup_button_press): fixed return type
3465         (void to gboolean), and return TRUE
3466         (gtk_combo_button_release): changed return value to TRUE after
3467         gtk_grab_add on combo->popwin
3468
3469         * gtk/gtkctree.c (gtk_ctree_button_press): return TRUE if triggers a
3470         collapse or expand
3471
3472         * gtk/gtkcurve.c (gtk_curve_graph_events): return TRUE for
3473         button/motion
3474
3475         * gtk/gtkdnd.c (gtk_drag_source_event_cb): return TRUE for button
3476         press/release and motion that trigger act
3477
3478         * gtk/gtkentry.c (gtk_entry_button_release): return TRUE
3479
3480         * gtk/gtkfontsel.c (gtk_font_selection_size_key_press): return TRUE
3481         for GDK_Return
3482         
3483         * gtk/gtklist.c (gtk_list_button_press): return TRUE mostly
3484         (gtk_list_button_release): return TRUE if selection
3485
3486         * gtk/gtklistitem.c (gtk_list_item_button_press): return TRUE on
3487         press
3488
3489         * gtk/gtkmenushell.c (gtk_menu_shell_button_press):
3490         (gtk_menu_shell_button_release): chain parent_menu_shell retval
3491
3492         * gtk/gtknotebook.c (gtk_notebook_button_press): return FALSE if
3493         nothing triggered
3494         (gtk_notebook_button_release): return TRUE if we do anything
3495
3496         * gtk/gtkspinbutton.c (gtk_spin_button_button_press): 
3497         (gtk_spin_button_button_release): return TRUE or chained retval
3498
3499         * gtk/gtktext.c (gtk_text_button_press): 
3500         (gtk_text_button_release): return TRUE
3501         (gtk_text_key_press): remove redundant retval code
3502         
3503         * gtk/gtktreeitem.c (gtk_tree_item_button_press): return TRUE if button
3504         and sensitive
3505         (gtk_tree_item_subtree_button_click): changed type to gint, and return
3506         TRUE if sensitive
3507
3508         * gtk/gtktooltips.c (gtk_tooltips_event_handler): deactivate implies 
3509         return TRUE
3510
3511 2001-03-23  Havoc Pennington  <hp@redhat.com>
3512
3513         * gtk/testgtk.c: fix warnings
3514
3515         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): fix return value
3516
3517         * gtk/gtktextview.c: fix warnings
3518
3519         * gtk/gtktext.c (find_cursor_at_line): fix warning
3520
3521         * gtk/gtkselection.c (gtk_selection_notify): fix warning 
3522
3523         * gtk/gtkitemfactory.c (gtk_item_factory_menu_pos): fix signature
3524         of this function
3525
3526         * gtk/gtkimmulticontext.c (gtk_im_multicontext_append_menuitems):
3527         fix warning
3528
3529         * gtk/gtkhandlebox.c (gtk_handle_box_style_set): fix warning
3530
3531         * gtk/gtkfontsel.c: fix warning
3532
3533         * gtk/gtkcolorsel.c: fix warnings
3534
3535 2001-03-23  Havoc Pennington  <hp@redhat.com>
3536
3537         * gtk/gtkhandlebox.c: Apply property patch from Lee Mallabone
3538
3539         * gtk/gtkbox.c: Apply property patch from Lee Mallabone
3540
3541         * gtk/gtkcheckmenuitem.c: Apply property patch from Lee Mallabone,
3542         and deprecated gtk_check_menu_item_set_show_toggle().
3543         
3544         * gtk/gtkbutton.c: Apply property patch from Lee Mallabone
3545
3546         * gtk/gtkfilesel.c: Apply property patch from Lee Mallabone
3547
3548         * gtk/gtkframe.c: Apply property patch from Lee Mallabone
3549
3550 2001-03-23  Havoc Pennington  <hp@redhat.com>
3551
3552         * gtk/gtktoolbar.c, gtk/gtkimcontext.c, gtk/gtklabel.c: fix up
3553         some docs
3554
3555 Fri Mar 23 16:13:43 2001  Jonathan Blandford  <jrb@redhat.com>
3556
3557         * gtk/gtktreeviewcolumn.h (GtkCellDataFunc): Forgot to namespace
3558         this.
3559
3560         * gtk/gtktreestore.c (gtk_tree_store_set_value): change from
3561         set_cell to set_value
3562
3563         * gtk/gtkliststore.c (gtk_list_store_set_value): change from
3564         set_cell to set_value
3565
3566 Thu Mar 22 19:27:34 2001  Jonathan Blandford  <jrb@redhat.com>
3567
3568         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
3569         fix braino.
3570         * gtk/gtktreesortable.[ch]: New interface to add cleanup sortable
3571         support.
3572
3573         * gtk/gtktreeview.c: Addition of initial sortable support.
3574
3575         * gtk/gtktreestore.c: Addition of initial sortable support.
3576
3577         * gtk/gtkliststore.c: Addition of initial sortable support.
3578
3579         * gtk/gtkmarshal.list: yet another marshaller.
3580
3581         * gtk/gtktreedatallist.[ch]: shared code between the store models
3582         for handling sorting headers.
3583
3584 2001-03-22  Havoc Pennington  <hp@redhat.com>
3585
3586         * gtk/gtkcontainer.c (gtk_container_set_focus_chain): 
3587         (gtk_container_unset_focus_chain): Add ability to override the 
3588         focus chain for a container explicitly
3589
3590 Thu Mar 22 13:01:44 2001  Tim Janik  <timj@gtk.org>
3591
3592         * gtk/gtklabel.[hc]: some cleanups, fixed mnemonic_widget handling,
3593         added PROP_MNEMONIC_WIDGET.
3594
3595         * gtk/gtkwindow.c (gtk_window_activate_mnemonic): 
3596         (gtk_window_remove_mnemonic): 
3597         (gtk_window_add_mnemonic): fixed assertions.
3598         (gtk_window_activate_mnemonic): constrain modifier checks to those
3599         permitted by gtk_accelerator_get_default_mod_mask().
3600         got rid of gtk_window_get_default_accel_group().
3601
3602         * gtk/gtkwidget.c (gtk_widget_real_activate_mnemonic): handle non
3603         activatable widgets either by focussing or a warning.
3604         added a signal accumulator to ::activate_mnemonic which stops the
3605         emission once a handler returned TRUE.
3606
3607 2001-03-22  Havoc Pennington  <hp@pobox.com>
3608
3609         * gtk/gtktoolbar.c (gtk_toolbar_insert_stock): handle mnemonics in
3610         the stock item label
3611
3612         * gtk/gtklabel.c: s/@gtk_func/gtk_func()/ in docs
3613
3614         * gtk/gtkstock.c (builtin_items): add mnemonics where missing
3615
3616         * demos/gtk-demo/*.c: Add mnemonics all over the place
3617
3618         * gtk/gtklabel.h: mark parse_uline deprecated
3619
3620 2001-03-21  Alexander Larsson  <alexl@redhat.com>
3621
3622         * gtk/gtkitemfactory.[ch]:
3623         Add support for stock and normal imagemenuitems.
3624         
3625         * gtk/testgtk.c:
3626         Add some tests for mnemonics, stock toolbars, stock
3627         and image menuitems in itemfactory and gdk_window_scroll.
3628
3629 2001-03-21  Alexander Larsson  <alexl@redhat.com>
3630
3631         * gtk/gtkbutton.[ch]:
3632         * gtk/gtkdialog.c:
3633         Renamed gtk_button_new_stock() to gtk_button_new_from_stock() and
3634         removed accel_group argument. Renamed gtk_button_new_accel() to
3635         gtk_button_new_with_mnemonic() and removed accel_group argument.
3636
3637         * gtk/gtkcheckbutton.[ch]:
3638         New function gtk_check_button_new_with_mnemonic().
3639
3640         * gtk/gtkentry.c:
3641         Override activate_mnemonic and just grab focus.
3642
3643         * gtk/gtkitemfactory.c:
3644         Don't add menu uline accel group, instead use mnemonics support.
3645
3646         * gtk/gtklabel.[ch]:
3647         New support for mnemonics.
3648
3649         * gtk/gtkmarshal.list:
3650         Needed BOOLEAN:BOOLEAN for activate_mnemonic.
3651
3652         * gtk/gtkmenu.[c]:
3653         * gtkmenushell.c:
3654         Use mnemonics instead of accel groups for uline
3655         support in menu items.
3656         Removed gtk_menu_get_uline_accel_group() and
3657         gtk_menu_ensure_uline_accel_group().
3658
3659         * gtk/gtkmenuitem.c:
3660         Override activate_mnemonic to handle switching between
3661         menu items if there are collisions.
3662         
3663         * gtk/gtknotebook.c:
3664         Connect to activate_mnemonic on the tab_label, so that
3665         activating it switches to that notebook page.
3666
3667         * gtk/gtkwidget.[ch]:
3668         Add activate_mnemonic signal. New function
3669         gtk_widget_activate_mnemonic() to emit it.
3670         Default implementation does activate/grab_focus.
3671
3672         * gtk/gtkwindow.[ch]:
3673         Add support for mnemonics in windows.
3674         New functions:
3675         gtk_window_add_mnemonic, gtk_window_remove_mnemonic,
3676         gtk_window_activate_mnemonic, gtk_window_set_mnemonic_modifier
3677
3678         * gtk/testgtk.c:
3679         Update to function name changes.
3680         
3681 2001-03-21  Alexander Larsson  <alexl@redhat.com>
3682
3683         * gtk/gtkimagemenuitem.[c]:
3684         Add gtk_image_menu_item_new_from_stock()
3685
3686 Tue Mar 20 15:00:43 2001  Jonathan Blandford  <jrb@redhat.com>
3687
3688         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
3689         Fix buglet in meeting.
3690
3691 2001-03-19  Havoc Pennington  <hp@redhat.com>
3692
3693         * gtk/gtkiconfactory.c: Make GtkIconSource an opaque datatype, and
3694         add a bunch of accessor functions. This is because we have
3695         reasonable expectations of extending what fields it contains in
3696         the future.
3697
3698         * gtk/gtkstyle.c (gtk_default_render_icon): adapt to icon source
3699         changes
3700
3701         * gtk/gtkrc.c (gtk_rc_parse_icon_source): fix to use new
3702         GtkIconSource   
3703
3704 Mon Mar 19 15:53:36 2001  Owen Taylor  <otaylor@redhat.com>
3705
3706         * gtk/gtkitemfactory.c gtk/testgtk.c: Handle quoting of / with \; properly
3707         handle __ in paths, quote " and \n in gtk_item_factory_dump_items().
3708
3709         * gtk/gtkadjustment.[ch] gtk/gtkclist.c gtk/gtkhruler.c gtk/gtklayout.c 
3710           gtk/gtklist.c gtk/gtkprogress.[ch] gtk/gtkprogressbar.[ch] gtk/gtkrange.[ch]
3711           gtk/gtkruler.[ch] gtk/gtkscale.c gtk/gtkscrolledwindow.c gtk/gtkspinbutton.[ch]
3712           gtk/gtktext.c gtk/gtktextview.c gtk/gtkvruler.c gtk/testgtk.c:
3713         Change float to double everywhere with the exception of 0<->1.0 alignment
3714         and GtkCurve.
3715
3716 2001-03-19  Tor Lillqvist  <tml@iki.fi>
3717
3718         * gdk/win32/gdkdrawable-win32.c
3719         * gdk/win32/gdkimage-win32.c: Use correct casts in debugging
3720         output.
3721
3722         * demos/testpixbuf-drawable.c: If GDK_WINDOWING_WIN32, include
3723         gdkwin32.h.
3724
3725 2001-03-18  Tor Lillqvist  <tml@iki.fi>
3726
3727         * gdk/win32/gdkevents-win32.c (print_window_state): New function.
3728         print_event_state, print_event): Use preprocessor macro to make
3729         code more compact. Print also GDK_WINDOW_STATE events.
3730         (synthesize_crossing_events): Remove the old #ifdeffed-out code.
3731         
3732         * gtk/gtk.def
3733         * gtk/makefile.mingw.in: Update.
3734
3735         * gtk/gtkmain.h: Check for G_PLATFORM_WIN32, not only G_OS_WIN32,
3736         to catch also Cygwin.
3737
3738 Sun Mar 18 01:15:30 2001  Tim Janik  <timj@gtk.org>
3739
3740         * gtk/gtkspinbutton.[hc]: added rc-style argument
3741         GtkSpinButton::shadow_type.
3742         removed spin_button->shadow_type, gtk_spin_button_set_shadow_type()
3743         and ARG_SHADOW_TYPE as it doesn' make much sense to try to override
3744         rc-style settings.
3745
3746         * gtk/gtkfixed.c: removed gtk_fixed_paint() (was unused).
3747
3748         * gtk/gtkwidget.c: quark cleanups.
3749
3750         * gtk/gtkrc.[hc]: added gtk_rc_scanner_new() to create an rc-file
3751         scanner with appropriate configuration, renamed GtkRcStyleClass.clone
3752         to create_rc_style() (we don't do cloning in standard OO sense).
3753         added per rc style properties.
3754         
3755         * gtk/gtkstyle.[hc]: added code to retrive pspec conformant rc-style
3756         property values and for caching those. some cleanups.
3757         
3758         * gtk/Makefile.am: -DG_DISABLE_CONST_RETURNS.
3759         
3760         * gtk/gtksettings.[hc]: new file for global rc-file properties
3761         (at least currently, should get extended to support X properties
3762         and other communication mechanisms).
3763         
3764         * gtk/gtkwidget.[hc]: added style property support:
3765         (gtk_widget_class_install_style_property_parser): install style
3766         property pspec with parser function for rc-file values other
3767         than LONG, DOUBLE or STRING.
3768         (gtk_widget_class_install_style_property): same as above without
3769         parser (parsers are going to be needed quite infrequently).
3770         (gtk_widget_style_get_property): retrive style property value.
3771         (gtk_widget_style_get_valist): same as above with varargs support,
3772         has NOCOPY semantics.
3773         (gtk_widget_style_get): wrapper around gtk_widget_style_get_valist().
3774
3775 Fri Mar 16 18:24:53 2001  Jonathan Blandford  <jrb@redhat.com>
3776
3777         * demos/gtk-demo/main.c (row_activated_cb): modified to use
3778         "row_activated" signal.
3779
3780         * gtk/gtktreeview.c (gtk_tree_view_row_activated): oh, the
3781         stupidity.  Lets actually pass in the row with this signal...
3782
3783 Fri Mar 16 18:01:17 2001  Jonathan Blandford  <jrb@redhat.com>
3784
3785         * gtk/gtktreeviewcolumn.[ch]: s/GTK_TREE_COLUMN/GTK_TREE_VIEW_COLUMN
3786
3787         * gtk/gtktreeview.c (gtk_tree_view_row_activated): New signal.
3788
3789         * gtk/gtktreeview.c (gtk_tree_view_destroy): moved pretty much
3790         everything into the ::destroy function, and freed a lot more.
3791
3792 2001-03-16  Havoc Pennington  <hp@redhat.com>
3793
3794         * gtk/gtkwidget.h (struct _GtkWidgetAuxInfo): change to use gint
3795         instead of gint16, to avoid overflow issues, since sizes > 16-bit
3796         are now allowed.
3797
3798 2001-03-16  Havoc Pennington  <hp@redhat.com>
3799
3800         * Applied patch from Nils Barth (bug # 51041) to 
3801         replace "gint" with "gboolean" and 0/1 with TRUE/FALSE
3802         in various places.
3803
3804 2001-03-15  Havoc Pennington  <hp@redhat.com>
3805         
3806         * gtk/gtktextbuffer.c (gtk_text_buffer_create_tag): add varargs 
3807         for properties to set on the tag.
3808
3809         * gtk/testtext.c: fixups to reflect create_tag change
3810         
3811         * gtk/gtktexttag.c (gtk_text_tag_set_property):
3812         background/foreground stipple are objects, not boxed.
3813
3814         * demos/gtk-demo/textview.c: intellihancing
3815
3816 Fri Mar 16 11:38:42 2001  Jonathan Blandford  <jrb@redhat.com>
3817
3818         * gtk/gtktreeview.c (gtk_tree_view_set_model): Fixed some
3819         braindeadness spotted by Jamie Strachan <frostfreek@yahoo.com>.
3820
3821 2001-03-16  Alexander Larsson  <alexl@redhat.com>
3822
3823         * gdk/x11/gdkgeometry-x11.c (_gdk_window_process_expose):
3824         Fix sign error with queued region translations.
3825
3826 2001-03-15  HideToshi Tajima  <tajima@happy>
3827
3828         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_set_cursor_location): 
3829         * gtk/gtkimmulticontext.c (gtk_im_multicontext_set_cursor_location):
3830         * gtk/gtkentry.c (update_im_cursor_location): 
3831         * gtk/gtkimcontext.c (gtk_im_context_set_cursor_location):
3832         * gtk/gtkimcontext.h (struct _GtkIMContextClass): rename
3833         set_cursor_pos to set_cursor_location in GtkInputContext class
3834
3835 Thu Mar 15 18:22:44 2001  Jonathan Blandford  <jrb@redhat.com>
3836
3837         * gtk/gtkcellrenderer.h: Changed prototype to allow for getting
3838         the location of the cell relative to its area.
3839         * gtk/gtkcell*: modified for above change
3840         * gtk/gtktreeview.c: modified for above change.
3841
3842 Wed Mar 14 13:58:32 2001  Jonathan Blandford  <jrb@redhat.com>
3843
3844         * gtk/gtktreeview.c (gtk_tree_view_set_model): Ref the model.
3845          (gtk_tree_view_finalize): actually unref the model.  Thanks to
3846         Jamie Strachan <frostfreek@yahoo.com> for noticing this error.
3847
3848 2001-03-14  Havoc Pennington  <hp@redhat.com>
3849
3850         * gtk/gtkdata.h, gtk/gtkdata.c: Delete.
3851         
3852         * gtk/gtk.h: remove gtkdata.h
3853
3854         * gtk/Makefile.am: remove gtkdata
3855         
3856         * gtk/gtktext.c (gtk_text_set_adjustments): connect to "destroy"
3857         not "disconnect" on the adjustments.
3858         
3859         * gtk/gtktooltips.h, gtk/gtktooltips.c: derive from GtkObject not
3860         GtkData
3861
3862         * gtk/gtkadjustment.h, gtk/gtkadjustment.c: derive from GtkObject
3863         not GtkData
3864
3865         * configure.in: handle case where X render exists, but Pango lacks
3866         Xft support.
3867
3868 2001-03-15 Alexander Larsson  <alexl@redhat.com>
3869
3870         * gtk/gtktoolbar.[ch]:
3871         New functions gtk_toolbar_set_icon_size and gtk_toolbar_insert_stock
3872         to add stock items to toolbars.
3873
3874         * gtk/Makefile.am:
3875         Remove ../gdk/gdkim.h from gdk_headers.
3876
3877 2001-03-15  Sven Neumann  <sven@gimp.org>
3878
3879         * gdk/gdkim.h: removed
3880         
3881         * gdk/gdkprivate.h
3882         * gdk/x11/gdkim-x11.c: do not include gdkim.h 
3883
3884 2001-03-14  HideToshi Tajima  <tajima@happy.sunsoft.eng.sun.com>
3885
3886         * gtk/gtkimmulticontext.c (gtk_im_multicontext_set_cursor_pos):
3887         * gtk/gtkimcontext.c (gtk_im_context_set_cursor_pos):
3888         * gtk/gtkimcontext.h (struct _GtkIMContextClass): add
3889         set_cursor_pos() virtual method
3890
3891         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_class_init):
3892         (gtk_im_context_xim_set_cursor_pos): add implementation for
3893         set_cursor_pos() method
3894
3895         * gtk/gtkentry.c (recompute_idle_func): set current cursor
3896         position to input methods
3897
3898 Mon Mar 12 21:02:08 2001  Jonathan Blandford  <jrb@redhat.com>
3899
3900         * gtk/gtktreeview.c (gtk_tree_view_header_focus): Fix up focus
3901         code a lot.
3902
3903         * gtk/gtktreedatalist.c (_gtk_tree_data_list_free): use
3904         g_mem_chunk.
3905         (_gtk_tree_data_list_alloc): use g_mem_chunk.
3906         (_gtk_tree_data_list_node_to_value): Fix to switch on
3907         G_TYPE_FUNDAMENTAL.
3908         (_gtk_tree_data_list_value_to_node): Fix to switch on
3909         G_TYPE_FUNDAMENTAL.
3910         (_gtk_tree_data_list_node_copy): Fix to switch on
3911         G_TYPE_FUNDAMENTAL.
3912
3913 2001-03-12  Havoc Pennington  <hp@redhat.com>
3914
3915         * gtk/gtkwindow.c (gtk_window_class_init): Patch from John Margaglione 
3916         to convert to new property API. Also, change default_width and
3917         default_height get_property to return 0 as the flag value for
3918         "unset"; -1 is not a valid value for these fields.
3919
3920 2001-03-12  Havoc Pennington  <hp@redhat.com>
3921
3922         * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: Switch to using an
3923         enum with registration for icon sizes, instead of strings.
3924
3925         * gtkimage.h, gtkimage.c, gtkstyle.h, gtkstyle.c, gtkwidget.h, 
3926         gtkwidget.c: Fix to reflect GtkIconSize
3927         
3928 2001-03-12  Alexander Larsson  <alexl@redhat.com>
3929
3930         Make GtkFB compile and link.
3931         
3932         * gdk/linux-fb/gdkdrawable-fb2.c:
3933         window->mapped to GDK_WINDOW_IS_MAPPED(). 
3934         
3935         * gdk/linux-fb/gdkwindow-fb.c:
3936         window->mapped to GDK_WINDOW_IS_MAPPED(). 
3937         Added gdk_window_shape_combine_region.
3938         Added assorted placeholders for unimplemented new GdkWindow API calls.
3939
3940 2001-03-12  Alexander Larsson  <alexl@redhat.com>
3941
3942         * gtk/gtkfilesel.c:
3943         Add more test when converting filenames from/to utf-8.
3944         Don't allow entering text in the filename entry which isn't allowed in
3945         a filename. Just beep instead.
3946
3947 2001-03-12  Alexander Larsson  <alexl@redhat.com>
3948
3949         * gtk/gtkclist.c:
3950         Scroll using gdk_window_scroll(). Don't wait for exposes.
3951         Move the column headers in an order that makes them flash less.
3952
3953 2001-03-10  Hans Breuer  <hans@breuer.org>
3954
3955         * gdk/gdk.def : updated
3956
3957         * gdk/win32/gdkgc-win32.c : pixmaps are visible again, due
3958         to offseting the clip_mask at the right place
3959
3960         * gdk/win32/gdkwindow-win32.c : don't create background brushes
3961         for all the gdkClasses, especially not for the input_only case.
3962         Otherwise flickering wont be avoidable, because we don't get
3963         WM_ERASEBKGND message for these windows.
3964
3965         * gdk/win32/gdkevents-win32.c : initialize event->expose.region
3966         and fixed massive redraw problems apparently triggered by Alexanders 
3967         recent change. Not fully understood the GDK_EXPOSE / WM_PAINT handling
3968         but it seems to work quite well :-)
3969
3970         * gdk/win32/gdkprivate-win32.h : added _gdk_window_process_expose
3971         prototype
3972
3973 Sat Mar 10 12:15:31 2001  Jonathan Blandford  <jrb@redhat.com>
3974
3975         * gtk/gtktreestore.c (gtk_tree_store_set_cell): Fix a stupid typo.
3976         (gtk_list_store_set_cell): Fix a stupid typo.
3977
3978 Fri Mar  9 20:36:21 2001  Jonathan Blandford  <jrb@redhat.com>
3979
3980         * gtk/gtktreeselection.c (gtk_tree_selection_select_all): Make
3981         select_all not work if you're in SINGLE mode (it doesn't make that
3982         much sense, anyway.)
3983
3984         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_to_value):
3985         handle types more sanely.
3986         (_gtk_tree_data_list_value_to_node): handle types more sanely.
3987         (_gtk_tree_data_list_node_copy): handle types more sanely.
3988
3989         * gtk/gtkliststore.c (gtk_list_store_set_cell): fix to work with
3990         GValue better. Converts the type as well.
3991
3992         * gtk/gtktreestore.c (gtk_tree_store_set_cell): fix to work with
3993         GValue better. Converts the type as well.
3994
3995 Wed Mar  7 20:47:41 2001  Owen Taylor  <otaylor@redhat.com>
3996
3997         * gtk/gtktext.c gtk/gtkoldeditable.[ch] gdk/gdk.[ch]
3998         gdk/Makefile.am gdk/x11/Makefile.am gdk/x11/gdkevents-x11.c 
3999         gdk/x11/gdkglobals-x11.c gdk/x11/gdkprivate-x11.c
4000         gdk/x11/gdkx.h gdk/x11/gdkim-x11.c: Remove old XIM code.
4001
4002         * gdk/win32/gdkim-win32.c gdk/linux-fb/gdkim-fb.c: Remove
4003         gdk_im/gdk_ic.
4004
4005 2001-03-09  Hans Breuer  <hans@breuer.org>
4006
4007         * gdk/gdk.def : updated
4008
4009         * gdk/win32/gdkevents-win32.c : don't ask input_only windows
4010         for their palette
4011
4012         * gdk/win32/gdkgeometry-win32.c : reflect GdkWindowObject::mapped
4013         removing
4014
4015         * gdk/win32/gdkwindow-win32.c : reflect GdkWindowObject::mapped
4016         removing and implemented Havoc's GdkWindow state functions; 
4017         stick/unstick only as no-op, cause I don't know how to emulate 
4018         on win32 ...
4019
4020         * gtk/gtk.def : updated
4021
4022         * gtk/gtkbox.c (gtk_box_get_spacing) : use g_return_val_if_fail ()
4023
4024         * gtk/gtktypeutils.c : #include <string.h>
4025
4026         * gtk/gtkwindow.h : declare gtk_window_set_decorated ()
4027
4028 Fri Mar  9 09:31:55 2001  Tim Janik  <timj@gtk.org>
4029
4030         * gtk/gtkwidget.c (gtk_widget_class_init): fixed signals with
4031         GDK_TYPE_DRAG_CONTEXT, it needs to be marshaled as an object,
4032         not a boxed.
4033
4034 2001-03-09  Alexander Larsson  <alexl@redhat.com>
4035
4036         * docs/Changes-2.0.txt:
4037         Document expose event->region change and that gtk_widget_event
4038         doesn't allow passing expose events.
4039
4040         * gdk/gdkevents.h:
4041         Add region to expose event.
4042         
4043         * gdk/gdkevents.c:
4044         Handle event->region in gdk_event_copy() and gdk_event_free().
4045
4046         * gdk/gdkwindow.c (gdk_window_process_updates_internal):
4047         Generate expose_event->region when creating expose events.
4048
4049         * gdk/x11/gdkevents-x11.c:
4050         Generate expose events with regions when translating X events.
4051
4052         * gtk/gtkcontainer.[ch]:
4053         Default expose handler that propagates expose events to NO_WINDOW
4054         children. New function gtk_container_propagate_expose()
4055
4056         * gtk/gtkwidget.[ch]:
4057         Moved gtk_widget_event implementation to gtk_widget_event_internal.
4058         gtk_widget_event calls gtk_widget_event_internal but doesn't allow
4059         expose events. New function gtk_widget_send_expose() to send expose
4060         events. New function gtk_widget_region_intersect() to calculate
4061         window/region intersections.
4062         
4063         * gtk/gtkmain.c (gtk_main_do_event):
4064         Use gdk_window_begin_paint_region() instead of gdk_window_begin_paint_rect().
4065         Use gtk_widget_send_expose() to send expose events.
4066         
4067         * gtk/gtkbin.c:
4068         * gtk/gtkbox.c:
4069         * gtk/gtkfixed.c:
4070         * gtk/gtkimagemenuitem.c:
4071         * gtk/gtklist.c:
4072         * gtk/gtkpacker.c:
4073         * gtk/gtktable.c:
4074         * gtk/gtktree.c:
4075         Remove expose handler, using the default container implementation
4076         instead.
4077         
4078         * gtk/gtkbutton.c:
4079         * gtk/gtkcheckbutton.c:
4080         * gtk/gtkeventbox.c:
4081         * gtk/gtkfixed.c:
4082         * gtk/gtkhandlebox.c:
4083         * gtk/gtklayout.c:
4084         * gtk/gtklistitem.c:
4085         * gtk/gtkmenu.c:
4086         * gtk/gtkmenubar.c:
4087         * gtk/gtkmenuitem.c:
4088         * gtk/gtknotebook.c:
4089         * gtk/gtkoptionmenu.c:
4090         * gtk/gtkpaned.c:
4091         * gtk/gtkscrolledwindow.c:
4092         * gtk/gtktogglebutton.c:
4093         * gtk/gtktoolbar.c:
4094         * gtk/gtktreeitem.c:
4095         * gtk/gtkviewport.c:
4096         Chain expose handler to parent class handler. Use
4097         gtk_container_propagate_expose() to propagate exposes.
4098
4099         * gtk/gtkclist.c (check_exposures):
4100         * gtk/gtktext.c (process_exposes):
4101         Use gtk_widget_send_expose instead of gtk_widget_event.
4102
4103 Thu Mar  8 19:40:28 2001  Jonathan Blandford  <jrb@redhat.com>
4104
4105         * gtk/gtktreeview.c (gtk_tree_view_destroy): Add destroy function.
4106
4107 Thu Mar  8 19:18:27 2001  Jonathan Blandford  <jrb@redhat.com>
4108
4109         * gtk/gtktreeview.c (gtk_tree_view_unref_tree_helper): Actually
4110         unref the nodes.   Fixes bug #50058.
4111
4112         * gtk/gtktreemodel.c (gtk_tree_model_ref_node): change
4113         "::ref_iter" to "::ref_node".
4114         (gtk_tree_model_unref_node): change "::unref_iter" to
4115         "::unref_node". Fixes bug #50064.
4116
4117 Thu Mar  8 17:40:09 2001  Jonathan Blandford  <jrb@redhat.com>
4118
4119         * gtk/gtktreeview.c (gtk_tree_view_create_row_drag_icon): add
4120         support for invisible cells.
4121          (gtk_tree_view_bin_expose): ditto
4122
4123 Thu Mar  8 16:36:00 2001  Jonathan Blandford  <jrb@redhat.com>
4124
4125         * gtk/gtktreemodel.c (gtk_tree_model_get_type): add prerequesite
4126         on gobjects.
4127
4128         * tests/testtreefocus.c (main): New test file.
4129
4130         * tests/testtreeview.c: update to latest glib changes.
4131
4132         * tests/testtreecolumns.c: update to latest glib changes.
4133
4134 Thu Mar  8 18:13:20 2001  Tim Janik  <timj@gtk.org>
4135
4136         * gtk/testgtk.c: re-enabled event watcher emission hooks.
4137
4138 Thu Mar  8 16:51:21 2001  Tim Janik  <timj@gtk.org>
4139
4140         * *.c: added accumulator data argument to g_signal_newc()
4141         functions.
4142
4143         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_set_model): 
4144         * gtk/gtktreeview.c (gtk_tree_view_setup_model): 
4145         * gtk/treestoretest.c (make_window):
4146         s/g_signal_connect/g_signal_connectc/.
4147
4148         * gtk/gtktextbuffer.c: completed signal arg fixups,
4149         they also needed G_SIGNAL_TYPE_STATIC_SCOPE flag.
4150
4151 Thu Mar  8 00:02:30 2001  Owen Taylor  <otaylor@redhat.com>
4152
4153         * gtk/gtkwidget.[ch] (gtk_widget_get_name): Make
4154         G_CONST_RETURN.
4155
4156         * gtk/gtkwidget.[ch] gtk/gtkprivate.h: Add a 
4157         ::hierarchy-changed signal when a widget changes
4158         from anchored to unanchored or vice versa.
4159         (anchored means 
4160          gtk_widget_get_ancestor (widget, GTK_TYPE_WINDOW) != NULL.)
4161         Use a private flag to keep track of this efficiently.
4162
4163 2001-03-07  Havoc Pennington  <hp@redhat.com>
4164
4165         * gtk/testgtk.c (create_spins): uglify so that size request gets
4166         tested.
4167
4168         * gtk/gtkspinbutton.c (gtk_spin_button_size_request): Base size
4169         request on values for upper/lower, completes #6152
4170
4171 Wed Mar  7 20:07:22 2001  Owen Taylor  <otaylor@redhat.com>
4172
4173         * Makefile.am: Remove gtk-config-2.0 again.
4174         (Grrrr, pkg-config. And stops make loops.)
4175
4176 Thu Mar  8 00:18:29 2001  Tim Janik  <timj@gtk.org>
4177
4178         * gtk/gtksignal.[hc]: removed old emission hook API.
4179         
4180         * docs/Changes-2.0.txt: fixed sections.
4181         
4182         * gtk/gtktextbuffer.c: signal arg fixups.
4183
4184 2001-03-07  Havoc Pennington  <hp@redhat.com>
4185
4186         * gtk/gtktextview.c (invalidated_handler): use PRIORITY_VALIDATE
4187
4188         * gtk/gtktextview.h (GTK_TEXT_VIEW_PRIORITY_VALIDATE): add this
4189         here, bug #50368; changed to be GDK_PRIORITY_REDRAW + 5, instead
4190         of GDK_PRIORITY_REDRAW + 1, so you can insert stuff in between the
4191         validation and the redraw which is higher priority than the
4192         validation.
4193
4194 2001-03-07  Havoc Pennington  <hp@redhat.com>
4195
4196         * gtk/gtkentry.c (gtk_entry_get_property): remove trailer
4197         (gtk_entry_set_property): remove trailer
4198
4199         * gtk/gtkentry.c (gtk_entry_set_width_chars): 
4200         (gtk_entry_get_width_chars): new functions, to set size request to 
4201         a given number of characters
4202
4203         * gtk/testgtk.c (create_dialog): beef up the dialog test slightly
4204
4205         * gtk/gtkdialog.c (gtk_dialog_set_has_separator): new function
4206         (gtk_dialog_get_has_separator): new function
4207         (run_delete_handler): fix to not emit "response" signal
4208         because we already did in the delete event handler installed
4209         at dialog creation time.
4210         
4211         * gtk/gtkdialog.h: add a has_separator property,
4212         add GTK_DIALOG_NO_SEPARATOR flag
4213
4214 2001-03-07  Havoc Pennington  <hp@redhat.com>
4215
4216         * gtk/gtkwindow.c (gtk_window_set_decorated): new function, turns
4217         off decorations for a window.
4218
4219         * demos/gtk-demo/button_box.c (create_bbox): adapt to button box
4220         changes
4221
4222         * gtk/gtklabel.c (gtk_label_get_layout_offsets): new function 
4223         to get location of PangoLayout inside the label, closes #51198
4224
4225         * gtk/testgtk.c (create_bbox): fix up button box usage
4226
4227         * gtk/testcalendar.c (create_calendar): fix up button box usage
4228
4229         * gtk/gtkfilesel.c (gtk_file_selection_init): fixup buttonbox usage
4230
4231         * gtk/gtkdialog.c (gtk_dialog_init): fixup buttonbox usage
4232
4233         * gtk/gtkhbbox.h: deprecations
4234
4235         * gtk/gtkvbbox.h: deprecations
4236
4237         * gtk/gtkbox.c (gtk_box_get_spacing): new function, used to
4238         emulate deprecated gtk_button_box_get_spacing
4239
4240         * gtk/gtkbbox.h: deprecate some useless functions, remove entirely 
4241         the "set global default" functions
4242         (struct _GtkButtonBox): remove "spacing" field, use the one from 
4243         GtkBox base class
4244
4245         * gtk/gtkbbox.c (_gtk_button_box_child_requisition): rename with uscore
4246
4247         * gtk/gtkiconfactory.c (gtk_icon_set_render_icon): If we fail to
4248         render the icon, return the missing image icon.
4249
4250         * gtk/gtkimage.c (gtk_image_set_from_file): fall back to missing
4251         image icon if the load fails.   
4252
4253         * gtk/gtkstock.h (GTK_STOCK_MISSING_IMAGE): Add stock icon for use
4254         when no image is found; should be the Netscape "missing image"
4255         icon eventually but for now is a random image
4256
4257         * gtk/gtkwindow.c (gtk_window_set_role): new function, sets the 
4258         role for the session manager
4259
4260         * gtk/testgtk.c (dnd_drop): remove use of GTK_WINDOW_DIALOG
4261
4262         * gtk/gtkcompat.h (GTK_WINDOW_DIALOG): compat #define
4263         GTK_WINDOW_DIALOG GTK_WINDOW_TOPLEVEL
4264
4265         * gtk/gtkenums.h (enum GtkWindowType): remove GTK_WINDOW_DIALOG
4266
4267 Wed Mar  7 13:24:57 2001  Tim Janik  <timj@gtk.org>
4268
4269         * gtk/*.c: marshaller fixes.
4270         
4271         * gtk/gtkmarshal.list: extreme cleanup.
4272
4273         * gtk/gtktreeview.c (gtk_tree_view_class_init): disable interface
4274         param spec for now.
4275
4276         * gtk/gtktexttag.c (gtk_text_tag_set_property): use g_value_get_boxed()
4277         where appliable.
4278
4279         * gtk/gtktypeutils.[hc]: updates to GLib API changes.
4280         special cased autogenerated boxed types from gtktypebuiltins_ids.c
4281         which are not reference counted:
4282         GtkSelectionData, GdkEvent, GdkColor, GtkTextIter, PangoTabArray,
4283         PangoFontDescription, GtkTreeIter and GtkTreePath.
4284
4285 Thu Mar  1 03:58:56 2001  Tim Janik  <timj@gtk.org>
4286
4287         * gtk/gtktreeselection.h: 
4288         * gtk/gtktreemodel.c:
4289         * gtk/gtktreedatalist.[hc]: fixed includes. no gobject/*
4290         file should be included directly, and gobject/gmarshal.h
4291         as well as gtk/gtkmarshal.h even can't be included directly.
4292
4293         * Makefile.am: grr, install gtk-config-2.0.
4294
4295         * gtk/testgtk.c:
4296         * gtk/simple.c:
4297         * gtk/gtkmenu.c:
4298         * gtk/gtkitemfactory.c: use g_object_connect() instead of
4299         passing "*signal*::*" args to gtk_widget_set().
4300         
4301         * gtk/gtktypeutils.[hc]: got rid of GTK_TYPE_SIGNAL.
4302         
4303         * gtk/*.c: removed trailer arg from property setters and getters.
4304         macro fixups.
4305
4306 2001-03-07  Alexander Larsson  <alexl@redhat.com>
4307
4308         * gtk/gtklabel.c (set_markup): Removed warning
4309
4310 Tue Mar  6 19:59:12 2001  Jonathan Blandford  <jrb@redhat.com>
4311
4312         * gtk/gtkcellrenderer.h (struct _GtkCellRenderer): Add visible
4313         field to allow you to hide cell renderers.
4314
4315         * gtk/gtkcellrenderer.c: Add support for invisible cells.
4316
4317         * gtk/gtktreeview.c: Add support for invisible cells.
4318
4319 Tue Mar  6 17:25:07 2001  Jonathan Blandford  <jrb@redhat.com>
4320
4321         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_button_clicked):
4322         Add "clicked" signal back to columns.
4323
4324         * ChangeLog: remove conflict markers.
4325
4326 Tue Mar  6 10:45:45 2001  Owen Taylor  <otaylor@redhat.com>
4327
4328         * gtk/gtkbutton.c: Add animation of activation by, on 
4329         activate, pressing the button, and adding a timeout that 
4330         releases the button after 250ms or on key release and
4331         emits ::clicked. (#51501)
4332
4333         * gtk/gtkdialog.c: Bit of a hack - for buttons in the
4334         action area, we connect to ::clicked instead of ::activate
4335         so the dialog stays up through the animation.
4336
4337 Mon Mar  5 16:38:15 2001  Owen Taylor  <otaylor@redhat.com>
4338
4339         * gtk/gtkmenushell.c (gtk_menu_shell_enter_notify): Only
4340         check the ignore_enter flag for the menu shell that
4341         the item is actually a child of, not for attached
4342         submenus. (#51536)
4343
4344 Tue Feb 27 02:16:14 2001  Owen Taylor  <otaylor@redhat.com>
4345
4346         * gtk/gtkmain.c (gtk_propagate_event): Only do special
4347         special key-press grab handling for widgets within
4348         GtkWindows. Otherwise, fall through to normal case.
4349
4350         This prevents key events being sent twice to GtkInvisible
4351         widgets, which can cause all sorts of mischief.
4352
4353 Fri Feb  2 13:20:12 2001  Owen Taylor  <otaylor@redhat.com>
4354
4355         * gtk/gtkmain.c (gtk_propagate_event): When a grab
4356         widget is in effect, give the grab widget a first
4357         crack at KEY_PRESS/RELEASE events. (#424)
4358
4359 2001-03-06  James Henstridge  <james@daa.com.au>
4360
4361         * gtk/gtkwidget.c (gtk_widget_class_init): set the class closure
4362         offset for the window_state_event to point at window_state_event
4363         rather than no_expose_event.
4364
4365 Mon Mar  5 19:10:15 2001  Jonathan Blandford  <jrb@redhat.com>
4366
4367         * gtk/gtkimmodule.h: fix busted /* comment */
4368
4369 Mon Mar  5 15:07:05 2001  Jonathan Blandford  <jrb@redhat.com>
4370
4371         * gtk/gtktreeview.c: Apply patch from John Margaglione to add
4372         object properties.
4373
4374 Mon Mar  5 14:55:19 2001  Jonathan Blandford  <jrb@redhat.com>
4375
4376         * gtk/gtkcellrenderertoggle.c: Apply patch from Lee Mallabone to
4377         add object properties.
4378
4379         * gtk/gtkcellrenderertextpixbuf.c: Apply patch from Lee Mallabone
4380         to add object properties.
4381
4382         * gtk/gtkcellrenderertext.c: Apply patch from Lee Mallabone to add
4383         object properties.
4384
4385         * gtk/gtkcellrendererpixbuf.c: Apply patch from Lee Mallabone to
4386         add object properties.
4387
4388         * gtk/gtkcellrenderer.c: Apply patch from Lee Mallabone to add
4389         object properties.
4390
4391 Mon Mar  5 14:38:54 2001  Jonathan Blandford  <jrb@redhat.com>
4392
4393         * gtk/gtktreemodel.c: renamed "child_toggled" to
4394         "has_child_toggled".
4395
4396         * gtk/gtktreeview.c: Handle removing columns better.  Updated to
4397         handle new signal name.
4398
4399         * gtk/gtktreestore.c: Updated to handle new signal name.
4400         * gtk/gtklisttore.c: Updated to handle new signal name.
4401         * gtk/gtktreemodelsort.c: Updated to handle new signal name.
4402
4403 2001-03-05  Alexander Larsson  <alexl@redhat.com>
4404
4405         * gtk/gtkmenu.c (gtk_menu_set_tearoff_state):
4406         Set GDK_WINDOW_TYPE_HINT_MENU on tearoff window.
4407
4408 2001-03-05  Michael Natterer  <mitch@gimp.org>
4409
4410         * gtk/gtklabel.c: Made the "parent_class" pointer static. The
4411         pixbuf-engine coincidentially also failed to make one of it's
4412         parent_class pointers static, causing overwriting of GtkLabel's
4413         parent_class pointer in pixbuf_style_class_init().
4414         (Will commit the fix to the pixbuf-engine too).
4415
4416 2001-03-05  Alexander Larsson  <alexl@redhat.com>
4417
4418         * gdk/gdkwindow.h:
4419         Added GdkWindowTypeHint type. Added modal_hint field to GdkWindindow.
4420         New functions gdk_window_set_type_hint, gdk_window_set_modal_hint and
4421         gdk_window_set_icon_list for net wmspec functionality.
4422
4423         * gdk/x11/gdkwindow-x11.c:
4424         Set _NEW_WM_STATE_MODAL from window->modal_hint in set_inital_hints.
4425         Implement gdk_window_set_type_hint, gdk_window_set_modal_hint and
4426         gdk_window_set_icon_list.
4427         Added gdk_wmspec_change_state helper function and used it in the code.
4428         Set _NET_WM_ICON_NAME in gdk_window_set_title and gdk_window_set_icon_name.
4429
4430         * gtk/gtkdialog.c (gtk_dialog_init):
4431         Set GDK_WINDOW_TYPE_HINT_DIALOG.
4432
4433         * gtk/gtkhandlebox.c (gtk_handle_box_realize):
4434         Set GDK_WINDOW_TYPE_HINT_TOOLBAR.
4435
4436         * gtk/gtkwindow.c:
4437         new function gtk_window_set_type_hint.
4438         On realize, set type hint and modal hint.
4439
4440         * gtk/gtkwindow.h:
4441         Added type_hint field and gtk_window_set_type_hint.
4442
4443 2001-03-05  Alexander Larsson  <alexl@redhat.com>
4444
4445         * gtk/gtklabel.[ch]:
4446         Convert from GtkArg to GParam (originally based on patch from Lee Mallabone).
4447         New function gtk_label_get_accel_keyval () to get the underline accelerator
4448         of the label. Setting the label pattern overrides other attributes.
4449
4450 Mon Mar  5 14:51:10 MET 2001  Sven Neumann  <sven@gimp.org>
4451
4452         * gtk/gtkrc.c: fixed compiler warnings by inserting some consts.
4453         Added missing initializers to gtk_rc_style_init().
4454
4455 Sun Mar 04  07:30:03 2001 CET Mikael Hermansson <mikeh@bahnhof.se>
4456
4457         * gtk/gtktextview.c: fixed bug #51097 about setting 
4458         gtk_text_view_set_border_window_size() if the widget is 
4459         already realized.
4460
4461 Sat Mar  3 16:59:16 2001  Owen Taylor  <otaylor@redhat.com>
4462
4463         * gdk/gdkpango.h gdk/x11/gdkwindow-x11.c: Doc fixes
4464
4465         * gdk/win32/gdkinput.c (gdk_device_get_axis): Remove doc
4466         comment. Won't do to have duplicated doc comments between
4467         the platform subdirs.
4468
4469 Sat Mar  3 16:26:33 2001  Owen Taylor  <otaylor@redhat.com>
4470
4471         * gdk/x11/gdkmain-x11.c gdk/x11/gdkkeys-x11.c 
4472           gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.c:
4473
4474         Detectable auto-repeat - make a repeating key generate
4475         press/press/press/release instead of press/release pairs.
4476
4477         If we have Xkb and XkbSetDectableAutoRepeat supports
4478         that, we do it that way. Otherwise, when we get
4479         a release event, we check ahead with XPending to see
4480         if the next key is a KeyPress with the same keycode
4481         and timestamp. (Not 100% reliable, but pretty close.)
4482           
4483 Tue Feb 27 02:16:14 2001  Owen Taylor  <otaylor@redhat.com>
4484         
4485         * gtk/gtkmain.c (gtk_propagate_event): Only do special
4486         special key-press grab handling for widgets within
4487         GtkWindows. Otherwise, fall through to normal case.
4488  
4489         This prevents key events being sent twice to GtkInvisible
4490         widgets, which can cause all sorts of mischief.
4491  
4492 Fri Feb  2 13:20:12 2001  Owen Taylor  <otaylor@redhat.com>
4493  
4494         * gtk/gtkmain.c (gtk_propagate_event): When a grab
4495         widget is in effect, give the grab widget a first
4496         crack at KEY_PRESS/RELEASE events. (#424)
4497  
4498 Sat Mar  3 15:39:49 2001  Owen Taylor  <otaylor@redhat.com>
4499
4500         * gtk/gtkentry.c (gtk_entry_button_press): Add shift-clicking
4501         to extend the selection. (Roughly based on patch
4502         from Jay Cox, #50939)
4503
4504         * gtk/gtkentry.c (gtk_entry_button_press): Fix triple-clicking
4505         to properly handle previous GDK_BUTTON_PRESS. 
4506         (Patch from Jay Cox, #50938)
4507
4508         * gtk/gtkentry.c (gtk_entry_real_delete_text): Move the
4509         '\0' back along with the deleted text. (#51148)
4510
4511 Mon Jan 22 14:31:29 2001  Owen Taylor  <otaylor@redhat.com>
4512
4513         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Unshift
4514         the group when extracting it from the X keyboard event.
4515
4516         * modules/input/Makefile.am modules/input/imipa.c: 
4517         Simple module for entering IPA. (Do we need a 
4518         gtk-stupid-input-tricks CVS module?)
4519
4520 Sat Mar  3 13:32:47 2001  Owen Taylor  <otaylor@redhat.com>
4521
4522         * gtk/gtkimmodule.c (gtk_im_module_init): Remove spurious
4523         const.
4524
4525         * gdk-pixbuf-2.0.pc.in gtk+-2.0.pc.in: Fix include path.
4526
4527         * gtk/gtkdialog.c (gtk_dialog_set_default_response): If there
4528         is no focus widget for the dialog currently, grab the focus as well
4529         as the default.
4530
4531         * gtk/gtkdialog.c (gtk_dialog_set_default_response): Get
4532         the action area's children to iterate through, not the
4533         dialog's children.
4534
4535 Sat Mar  3 13:21:27 2001  Owen Taylor  <otaylor@redhat.com>
4536
4537         * tests/Makefile.am tests/testsocket.c tests/testsocket_child.c:
4538         Add plug-socket tests. (Won't work worth a darn until I commit
4539         the rest of the plug-socket changes, but no reason these
4540         can't go into CVS now.)
4541
4542 2001-03-02  Havoc Pennington  <hp@redhat.com>
4543
4544         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_flush): use
4545         _gdk_region_get_xrectangles()
4546
4547         * gdk/x11/gdkmain-x11.c (_gdk_region_get_xrectangles): new function
4548
4549         * gtk/testgtk.c (create_shapes): add test for shape_combine_region
4550
4551         * gdk/x11/gdkwindow-x11.c (gdk_window_shape_combine_region): new
4552         function, contributed by Ron Steinke    
4553
4554         * gdk/x11/gdkevents-x11.c (gdk_wmspec_supported): rename
4555         gdk_net_wm_supports
4556
4557         * gdk/gdkregion-generic.c (gdk_region_get_rectangles): 
4558         New function, contributed by Ron Steinke
4559
4560         * gtk/gtkentry.c (gtk_entry_get_layout_offsets): New function, 
4561         used to line up the text in the entry when using the entry for
4562         editable sheet cell hacks
4563
4564         * gtk/testgtk.c (create_entry): test the activate_default setting
4565         on GtkEntry
4566
4567         * gtk/gtkentry.c (gtk_entry_set_activates_default): New function to 
4568         cause the entry to activate the default button for a dialog when 
4569         activated
4570         (gtk_entry_get_activates_default): new function
4571
4572 Wed Feb 28 19:10:43 2001  Owen Taylor  <otaylor@redhat.com>
4573
4574         * gtk/gtkclist.c (real_remove_row): Patch from ChiDeok
4575         Hwang to move call to sync_selection() up a few lines
4576         to before the row list is modified, to fix crash when
4577         removing rows in the undo_selection list.
4578
4579         (Test case provided by Daniel Elstner:
4580
4581         http://mail.gnome.org/archives/gtk-list/2001-February/msg00359.html)
4582
4583 Fri Feb 23 15:06:48 2001  Owen Taylor  <otaylor@redhat.com>
4584
4585         * gtk/gtktree.c (gtk_tree_class_init): Do the setting
4586         of tree->root_tree in parent_set rather than _map(), 
4587         fixing #50892 in a bit better manner.
4588
4589 Thu Feb 22 17:07:58 2001  Owen Taylor  <otaylor@redhat.com>
4590
4591         * gtk/gtkmenu.c (gtk_menu_popup): Don't flip cursor. (#50934)
4592
4593 Tue Feb  2 11:22:33 2001  Jody Goldberg <jgoldberg@home.com>
4594
4595         * gtk/gtkstyle.c : Remove duplicate fwd decl for
4596         gtk_default_draw_shadow.
4597
4598 ue Feb 20 11:40:58 2001  Owen Taylor  <otaylor@redhat.com>
4599
4600         * gdk/gdkimage.c (gdk_image_new): Remove excess 
4601         warning, make warnings more verbose, treat a error
4602         in shmat as permanent, and don't try again.
4603         (#51163, Ed Randall.)
4604
4605 Mon Feb 19 20:15:28 2001  Owen Taylor  <otaylor@redhat.com>
4606
4607         * gtk/gtkrange.c (gtk_range_timer_1st_time): Add an initial
4608         delay for the first click before starting to scroll.
4609         (based on #51026, gtk-enf-990512-0.patch, Eric Fisher)
4610
4611         * gtk/gtktext.c: GtkText should have I-beam cursor. 
4612         (based on gtk-enf-990513-1.patch, Eric Fisher.)
4613
4614 Mon Feb 19 16:42:19 2001  Owen Taylor  <otaylor@redhat.com>
4615
4616         * gtk/gtklayout.c (gtk_layout_allocate_child): Tiny
4617         cleanup to remove some references to unused
4618         ->xoffset, ->yoffset.
4619
4620 Mon Feb 19 14:20:36 2001  Owen Taylor  <otaylor@redhat.com>
4621
4622         * gdk/gdkrgb.c (gdk_rgb_convert_555_br): Fix incorrect
4623         mask. (#51039, fix from Martin Maierhofer)
4624
4625 Fri Feb 16 20:09:42 2001  Owen Taylor  <otaylor@redhat.com>
4626
4627         * gtk/gtkctree.c (gtk_ctree_class_init): Add bindings
4628         for unshifted + and shifted = for non-us keyboards.
4629         Make <Control>+ and <Control>- work as well as 
4630         <Control>KP_Plus, <Control>KP_Minus for recursive
4631         open/close.  (#2682, René Seindal)
4632
4633 Fri Feb 16 18:50:59 2001  Owen Taylor  <otaylor@redhat.com>
4634
4635         * gtk/gtkmenushell.c (gtk_real_menu_shell_cancel): Unset
4636         the active menu item before deactivating the menu,
4637         so gtk_menu_popdown doesn't change the history. (#50964)
4638         
4639 Fri Feb 16 15:55:22 2001  Owen Taylor  <otaylor@redhat.com>
4640
4641         * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): 
4642         draw lines with text_gc rather than black_gc.
4643         (Patch from Vlad Harchev <hvv hippo ru>, #50926)
4644
4645 Thu Mar  1 19:50:56 2001  Jonathan Blandford  <jrb@redhat.com>
4646
4647         * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_realize_button):
4648         Move handling of buttons fully in gtktreeviewcolumn.  This code is
4649         less interrelated then it was, but it still requires the
4650         GtkTreeView to map it.
4651
4652         * test/testtreecolumn.c: Now I can add a column to one view,
4653         remove it, add it to the another view, remove it, then re-add it
4654         to the first.  Nifty.
4655
4656 Thu Mar  1 13:14:27 GMT 2001  Tony Gale <gale@gtk.org>
4657
4658         * docs/tutorial/gtk-tut.sgml: Minor corrections
4659
4660 Wed Feb 28 16:36:46 2001  Jonathan Blandford  <jrb@redhat.com>
4661
4662         * gtk/gtktreemodel.c (gtk_tree_row_reference_*): Sanitize
4663         GtkRowReference.
4664
4665 2001-02-28  Havoc Pennington  <hp@redhat.com>
4666
4667         * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove draw_focus and
4668         draw_default
4669         (gtk_widget_draw_focus): remove this function; we could instead
4670         make it just gtk_widget_draw(), but in most cases I think the
4671         result would be broken user code, so think it's better to have
4672         that code not compile and get fixed
4673         (gtk_widget_draw_default): ditto
4674
4675         * gtk/gtkwidget.c: Add default handlers for focus_in_event and
4676         focus_out_event that set/unset GTK_HAS_FOCUS and call queue_draw
4677         
4678         * gtk/gtkwindow.c (gtk_window_set_default): just queue a draw when
4679         widgets lose/get the default, instead of calling draw_default
4680         
4681         * docs/Changes-2.0.txt: note about all this
4682
4683         Then fixed every widget in GTK, I won't list all the filenames.
4684
4685 Tue Feb 27 19:32:53 2001  Jonathan Blandford  <jrb@redhat.com>
4686
4687         * gtk/gtktreemodel.c (deleted_callback): Proxy out to
4688         _gtk_tree_row_reference_deleted.
4689         (inserted_callback): Proxy out to
4690         _gtk_tree_row_reference_inserted.
4691         (_gtk_tree_row_reference_new_from_view): Somewhat yukky hack to
4692         get around signal emission ordering problem.
4693
4694         * gtk/gtktreeselection.c (gtk_tree_selection_real_unselect_all):
4695         fix to work with SINGLE 
4696         (_gtk_tree_selection_internal_select_node): Major sanitization on
4697         selections.  SINGLE now seems to work.
4698
4699         * tests/Makefile.am: add testtreecolumn.c:
4700
4701         * tests/testtreecolumn.c: New test.  Mostly points out selection
4702         bugs currently, but will test columns later.
4703
4704         * gtk/gtkrbtree.c (_gtk_rbtree_remove_node): Fix really nasty
4705         selection bug.  I hate touching this code -- it's scary.
4706
4707 2001-02-26  Havoc Pennington  <hp@redhat.com>
4708
4709         * gtk/testgtk.c: test the window state stuff
4710
4711         * gtk/gtkwindow.c (gtk_window_present): new function, makes a
4712         window come to the user's attention as if it were just created
4713         (gtk_window_iconify): new function
4714         (gtk_window_deiconify): new function
4715         (gtk_window_stick): new function
4716         (gtk_window_unstick): new function
4717         (gtk_window_maximize): new function
4718         (gtk_window_unmaximize): new function
4719
4720         * gtk/gtkwidget.h, gtk/gtkwidget.c: add window_state_event signal
4721
4722         * gtk/gtkmain.c (gtk_main_do_event): handle GDK_WINDOW_STATE
4723
4724         * gdk/x11/gdkevents-x11.c: create window state events when
4725         appropriate
4726         (gdk_wmspec_supported): new function
4727
4728         * gdk/x11/gdkwindow-x11.c (gdk_window_iconify): handle
4729         iconification before showing the window
4730         (gdk_window_deiconify): new function
4731         (gdk_window_stick): new function
4732         (gdk_window_unstick): new function
4733         (gdk_window_maximize): new function
4734         (gdk_window_unmaximize): new function
4735
4736         * gdk/gdkwindow.c: store the window state in the window; 
4737         change to using the GDK_WINDOW_STATE_WITHDRAWN flag instead of
4738         window->mapped.
4739         (gdk_window_get_state): return the current window state
4740
4741         * gdk/gdkevents.c (gdk_event_get_time): handle GDK_WINDOW_STATE
4742         (gdk_event_get_state): handle GDK_WINDOW_STATE
4743         (gdk_synthesize_window_state): function to create the window state
4744         events
4745
4746         * gdk/gdkevents.h (struct _GdkEventWindowState): new type of
4747         event, for changes to "window state" such as maximized, sticky, 
4748         etc.
4749         
4750         * gdk/x11/gdkwindow-x11.c (gdk_window_focus): new function,
4751         focuses a window
4752
4753         * gdk/x11/gdkmain-x11.c (_gdk_wmspec_supported): new function, 
4754         finds out if we support a given WM spec hint
4755
4756 Tue Feb 27 13:37:38 GMT 2001  Tony Gale <gale@gtk.org>
4757
4758         * docs/faq/gtk-faq.sgml: New question re memory leaks.
4759
4760 2001-02-25  Hans Breuer  <hans@breuer.org>
4761
4762         * gdk/gdk.h : changed #ifdef GDK_DISBALE_DEPRECARED to #ifndef
4763         cause we want to loose those prototypes only in the latter case
4764
4765         * gdk/win32/gdkevents-win32.c : can't cast from GdkPixmap to
4766         GdkPixmapImplWin32 because it itsn't derived from it. Use the
4767         impl member variable instead
4768
4769         * gtk/gtk.def : updated
4770
4771         * gtk/gtklist.c : 
4772         * gtk/gtkmenus.c : include <string.h> for memset ()
4773
4774         * gtk/makefile.msc.in : updated and don't define GTK_COMPILATION
4775         for everthing built here, but for gtk-x.x.dll only. This solves
4776         problem of indifferent gtk type definitions
4777
4778 Sat Feb 24 20:11:39 2001  Jonathan Blandford  <jrb@redhat.com>
4779
4780         * gtk/gtkclipboard.h: actually put /* */ around #endif comment.
4781
4782 Fri Feb 23 17:50:13 2001  Jonathan Blandford  <jrb@redhat.com>
4783
4784         * gtk/gtktreeview.c (gtk_tree_view_bin_expose): Only draw the
4785         column that is exposed.
4786
4787         (_gtk_tree_view_update_size): Changed name from set_size, and
4788         changed function to do more work, and not force people calling it
4789         to figure out the size.  Simplifies a lot of code elsewhere.
4790
4791 2001-02-23  Alexander Larsson  <alexl@redhat.com>
4792
4793         * gdk/gdkpixmap.c (gdk_pixmap_colormap_new_from_pixbuf):
4794         return solid masks for xpms that have no transparent color.
4795         This makes the ..._create_from_xpm... API backwards
4796         compatible.
4797
4798 2001-02-23  Tor Lillqvist  <tml@iki.fi>
4799
4800         * README.win32: Update. Mention the gtk-1-3-win32-production
4801         branch.
4802
4803         * gdk/win32/bdfcursor.c: New file. A program that generates
4804         xcursors.h. Thanks to Stefan Ondrejicka.
4805
4806         * gdk/win32/xcursors.h: New file, contains the X cursor font in a
4807         compact format.
4808
4809         * gdk/win32/Makefile.am (EXTRA_DIST): Add new files.
4810
4811         * gdk/win32/gdkcursor-win32.c (_gdk_win32_data_to_wcursor): New
4812         function, uses xcursors.h.
4813         (gdk_cursor_new): Use _gdk_win32_data_to_wcursor to generate
4814         cursor from inline data instead of using LoadCursor() to generate
4815         it from a resource.
4816
4817         * gdk/win32/gdkevents-win32.c (gdk_event_translate): At button up
4818         event, must check the Windows message for mouse button state, as
4819         the GDK event state might not have been built if it is
4820         undelivered. Remove one goto.
4821
4822         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Call
4823         SetCursor() if the current cursor as returned by GetCursor() is
4824         the window's previous cursor. The ChildWindowFromPoint() test
4825         apparently didn't work correctly.
4826
4827         * gdk/win32/rc/*.cur: Remove.
4828
4829         * gdk/win32/rc/gdk.rc.in: Remove cursors.
4830
4831         * gdk/win32/rc/Makefile.am (EXTRA_DIST): Remove from here, too.
4832
4833         * gtk/makefile.{mingw,msc}.in: Updates.
4834
4835 Wed Feb 21 20:56:50 2001  Jonathan Blandford  <jrb@redhat.com>
4836
4837         * gtk/gtktreemodel.h: add functions for signal emission.
4838
4839         * gtk/gtktreestore.c: move to use above functions instead of
4840         g_signal_emit.
4841
4842         * gtk/gtkliststore.c: ditto
4843
4844 Wed Feb 21 15:41:34 2001  Jonathan Blandford  <jrb@redhat.com>
4845
4846         * gtk/gtktreestore.c: removed signals.  Moved to inherit from
4847         GObject instead of GtkObject.
4848
4849         * gtk/gtkliststore.c: ditto.
4850
4851         * gtk/gtktreemodelsort.c: ditto.
4852
4853         * gtk/gtktreemodel.c (gtk_tree_model_base_init): moved signals to
4854         GtkTreeModelIface, instead of in each model.
4855
4856 2001-02-21  Havoc Pennington  <hp@redhat.com>
4857
4858         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_child_anchor):
4859         unbreak this function
4860
4861         * gtk/gtkentry.c: apply patch from Lee Mallabone to add object 
4862         properties
4863
4864         * gtk/gtkcurve.c: apply patch from Lee Mallabone to add object
4865         properties
4866
4867         * gtk/gtkcombo.c: apply patch from Lee Mallabone to add object 
4868         properties
4869
4870         * gtk/gtkentry.c (gtk_entry_set_max_length): have this take -1 to
4871         mean unset the max length
4872
4873 Wed Feb 21 14:23:05 2001  Jonathan Blandford  <jrb@redhat.com>
4874
4875         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data_func):
4876         Changed name to be set_cell_data_func to make it clear what
4877         the functino does.  Close bug #51069.
4878
4879 Tue Feb 20 16:49:00 2001  Jonathan Blandford  <jrb@redhat.com>
4880
4881         * gtk/testgtk.c (main): Remove turning on of profiling malloc,
4882         have memory actually freed.  Keeps box running longer.
4883
4884 2001-02-21  Alexander Larsson  <alexl@redhat.com>
4885         
4886         * gtk/gtkseparatormenuitem.[ch]:
4887         Added new menu separator item. The drawing and size handling
4888         is still done in GtkMenuItem, but the API is a bit more sane.
4889         
4890         * gtk/Makefile.am:
4891         Add gtkseparatormenuitem.[ch].
4892
4893         * gtk/gtk.h:
4894         Add gtkseparatormenuitem.h.
4895         
4896         * gtk/gtkentry.c:
4897         * gtk/gtkmenufactory.c:
4898         * gtk/gtktextview.c:
4899         Use the new API for menu separators.
4900         
4901         * demos/gtk-demo/menus.c (create_menu):
4902         Add some GtkSeparatorMenuItem demo code.
4903
4904 2001-02-20  Havoc Pennington  <hp@redhat.com>
4905
4906         * gtk/gtkaspectframe.c: Convert to new property API, patch from 
4907         Lee Mallabone
4908
4909         * gtk/gtkarrow.c: Convert to new property API, patch from 
4910         Lee Mallabone
4911
4912 Tue Feb 20 14:26:41 2001  Jonathan Blandford  <jrb@redhat.com>
4913
4914         * tests/testtreeview.c (toggled_callback): fix to reflect change
4915         in GtkTreeModelStore.
4916
4917 Tue Feb 20 12:16:12 2001  Jonathan Blandford  <jrb@redhat.com>
4918
4919         * gtk/gtkiconfactory.c (gtk_icon_set_new_from_pixbuf): New
4920         function to create an icon set from a pixbuf.
4921
4922 2001-02-20  Alexander Larsson  <alexl@redhat.com>
4923
4924         * gtk/gtkcellrenderertext.[ch]:
4925         Add a "markup" property.
4926
4927         * gtk/treestoretest.c:
4928         Use the markup property, remove some leftover stuff from
4929         GtkTreeModelMapping.
4930
4931 2001-02-20  Alexander Larsson  <alexl@redhat.com>
4932
4933         * gtk/gtklabel.c (gtk_label_set_selectable):
4934         Queue a redraw if the selectable setting was changed.
4935
4936 2001-02-20  Alexander Larsson  <alexl@redhat.com>
4937
4938         * gdk/linux-fb/gdkgc-fb.c (gdk_gc_copy):
4939         Actually copy the whole gc, not just the public parts.
4940         
4941         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
4942         GDK_WINDOW_TEMP are not toplevel. Fixes selectable
4943         labels.
4944
4945 2001-02-19  Havoc Pennington  <hp@pobox.com>
4946
4947         * gdk/gdkwindow.c: docs
4948
4949         * gdk/gdkrgb.c: docs
4950
4951         * gdk/gdkregion-generic.c: docs
4952
4953         * gdk/gdkgc.c (gdk_gc_set_values): docs
4954
4955         * gdk/gdkdraw.c: docs
4956
4957         * gdk/gdkdrawable.h: deprecate drawable get/set data
4958
4959 Mon Feb 19 20:37:35 2001  Jonathan Blandford  <jrb@redhat.com>
4960
4961         * demos/gtk-demo/dialog.c: Add simple new demo.
4962
4963 2001-02-19  Havoc Pennington  <hp@redhat.com>
4964
4965         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): add
4966         insert_child_anchor signal, bug #50245
4967
4968         * gtk/gtktextbtree.c (_gtk_text_btree_insert_child_anchor): change
4969         from create_child_anchor, so the anchor is passed in
4970
4971         * gtk/gtktextchild.c (gtk_text_child_anchor_new): new function
4972         (_gtk_widget_segment_new): have the child anchor object passed in, 
4973         instead of creating it.
4974
4975         * gtk/gtktextbuffer.c (gtk_text_buffer_modified): rename
4976         to gtk_text_buffer_get_modified
4977
4978 2001-02-19  Havoc Pennington  <hp@redhat.com>
4979
4980         * gtk/gtktreemodel.c (gtk_tree_model_get_valist): hmm, someone
4981         changed GLib without fixing GTK
4982
4983         * gtk/gtkrange.h: Rename all the stupid implementation detail 
4984         functions to have an underscore in front. Most of them should 
4985         probably just go away, but for starters don't export them.
4986         Bug #50482
4987
4988 2001-02-19  Havoc Pennington  <hp@redhat.com>
4989
4990         * gdk/gdkcolor.h: test was backward, so deprecated functions were
4991         excluded by default
4992
4993         * gtk/gtkstyle.c (gtk_default_draw_diamond): draw etched in/out,
4994         clean up the old code a bit
4995
4996         * gtk/gtkradiobutton.c (gtk_radio_button_draw_indicator): draw
4997         inconsistent state
4998
4999         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_draw_indicator):
5000         draw inconsistent state
5001
5002         * gtk/testgtk.c (create_toggle_buttons): add test for inconsistent
5003         (create_menu): add inconsistent test
5004
5005         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_set_inconsistent):
5006         new function
5007         (gtk_check_menu_item_get_inconsistent): new function
5008         (gtk_real_check_menu_item_draw_indicator): draw the inconsistent
5009         state (using etched in for now)
5010
5011         * gtk/gtkcheckbutton.c (gtk_real_check_button_draw_indicator):
5012         draw inconsistent state
5013
5014         * gtk/gtktogglebutton.c (gtk_toggle_button_set_inconsistent): new
5015         function, used when the user has selected a range of stuff in
5016         different states
5017         (gtk_toggle_button_get_inconsistent): accessor for that
5018         (gtk_toggle_button_paint): draw inconsistent state (etched in?
5019         don't know what else to do)
5020
5021 2001-02-19  Hans Breuer <hans@breuer.org>
5022
5023         * gtk/gtk.def : updated exported symbols
5024
5025         * gtk/makefile.msc.in : updated
5026
5027         * gtk/gtkstyle.c (gtk_style_realize) : gets called without
5028         a colormap, when invoked from testgtk::entry. I'm not sure where
5029         the bug is, but g_return_if_fail (GDK_IS_COLORMAP (colormap));
5030         avoids immediate crashing ...
5031
5032         * gtk/gtkmain.c (check_setugid) : totally disabled on win32;
5033         any objections ?
5034
5035         * gtk/gtktreemodel.c : called G_VALUE_LCOPY with an extra
5036         0 parameter. At least msvc doesn't like macros with var args. 
5037         I simply removed the extra 0, was it a feature or a typo ?
5038
5039         * gtk/gtktreeviewcolumn.[hc] (gtk_tree_view_column_set_func) :
5040         removed the extra indirection from the GtkTreeViewColumnFunc parameter,
5041         because the value assignment to the internal struct wasn't working.
5042         I'm not absolutely sure. The problem could have been resolved by
5043         changing the "func" declartion in the struct, but was the pointer
5044         to the function pointer intended ?
5045
5046         * gtk+/gtk/gtktreedatalist.c : include gboxed.h
5047
5048         * gdk/gdk.def : updated exported symbols
5049
5050         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_image) :
5051         only use SetDIBitsToDevice if there is a palette at the drawable
5052         and the image is GDK_VISUAL_PSEUDO_COLOR
5053
5054         * gdk/win32/gdkkeys-win32.c : msvc still has no <unistd.h> ...
5055
5056         * gdk/win32/gdkwindow-win32.c : #include "gdk.h" /* gdk_rectangle_intersect */
5057
5058         * gdk/*/makefile.msc : updated
5059
5060 2001-02-19  Havoc Pennington  <hp@redhat.com>
5061
5062         * demos/gtk-demo/Makefile.am (INCLUDES): GDK_DISABLE_COMPAT_H,
5063         GDK_DISABLE_DEPRECATED (we need to merge those two #defines)
5064
5065         * gdk/x11/gdkmain-x11.c (gdk_key_repeat_disable): nuke
5066         (gdk_key_repeat_restore): nuke
5067
5068         * gdk/gdk.c (gdk_exit_func): #if 0 this for now, don't install it
5069         (gdk_init_check): no atexit func
5070
5071         * gdk/gdkrgb.h: mark some stuff deprecated
5072
5073         * gdk/gdkcolor.h: mark some stuff deprecated
5074         
5075         * gdk/gdk.h: deprecated gdk_exit, gdk_input_*
5076
5077         * gdk/gdkfont.h: bracket in GDK_DISABLE_DEPRECATED
5078
5079 2001-02-16  Havoc Pennington  <hp@redhat.com>
5080
5081         * gtk/gtkvscrollbar.c (gtk_vscrollbar_trough_keys): use the visual
5082         scroll steps.
5083
5084         * gtk/gtkvscale.c (gtk_vscale_trough_keys): use the visual scroll
5085         steps, and add Ctrl-arrow shortcuts for paging visually as with
5086         HScale, since Page Up and Page Down move logically.
5087
5088         * gtk/gtkenums.h (GtkScrollType): add GTK_SCROLL_STEP_UP,
5089         GTK_SCROLL_STEP_DOWN, etc. for visual scroll directions
5090         
5091         * gtk/gtkrange.c (gtk_range_key_press): handle the visual scroll
5092         steps
5093         (gtk_range_scroll): handle the visual steps
5094
5095         * gtk/gtklist.c (gtk_list_scroll_horizontal): handle the up/down
5096         scroll steps
5097
5098         * gtk/gtkhscale.c (gtk_hscale_trough_keys): use the visual scroll
5099         steps, not the logical ones.
5100
5101         * gtk/gtkclist.c (move_focus_row): handle the up/down scroll steps
5102         (scroll_vertical): handle up/down steps
5103
5104 2001-02-19 Alexander Larsson  <alexl@redhat.com>
5105
5106         * gdk/linux-fb/gdkimage-fb.c (gdk_image_new_bitmap):
5107         Copy data and free data with free().
5108
5109         * gdk-pixbuf/gdk-pixbuf.c:
5110         * gdk-pixbuf/io-jpeg.c:
5111         * gdk-pixbuf/io-png.c:
5112         Use g_try_malloc/g_free instead malloc/free.
5113         
5114         * gdk-pixbuf/test-gdk-pixbuf.c:
5115         Must... initialize... gobject...
5116         
5117         * gdk-pixbuf/pixops/timescale.c:
5118         * gtk/gtkcalendar.c:
5119         Use g_malloc instead of malloc.
5120         
5121 2001-02-19 Alexander Larsson  <alla@lysator.liu.se>
5122
5123         * gtk/testgtkrc:
5124         Comment out property assignments, these don't work yet.
5125
5126 2001-02-17  Havoc Pennington  <hp@pobox.com>
5127
5128         * gtk/gtkalignment.c (gtk_alignment_class_init): clean this up a
5129         bit.
5130
5131 2001-02-17  Havoc Pennington  <hp@pobox.com>
5132
5133         * gtk/gtklabel.c (gtk_label_ensure_layout): fix screwup with
5134         shadowed variables that had broken size request in some cases,
5135         leading to bogus tooltips (#50996)
5136
5137 2001-02-06  Jon K Hellan  <hellan@acm.org>
5138
5139         Implement fast browsing of tooltips, bug #50619
5140         
5141         * gtk/gtktooltips.h (struct _GtkTooltips): Add use_sticky_delay
5142         and last_popdown
5143         
5144         * gtk/gtktooltips.c (gtk_tooltips_init): Initialize sticky_delay,
5145         use_sticky_delay and last_popdown.
5146         (gtk_tooltips_draw_tips, gtk_tooltips_set_active_widget): Record
5147         time of popdown.
5148         (gtk_tooltips_set_active_widget): Unset sticky behaviour if widget
5149         is NULL.
5150         (gtk_tooltips_recently_shown): New static function.  Return true
5151         if < sticky_delay has elapsed since last popdown.
5152         (gtk_tooltips_event_handler): Display window after sticky_delay
5153         (presumably < normal delay) if < STICKY_REVERT_DELAY has elapsed
5154         since last popdown.
5155         
5156 2001-02-17  Havoc Pennington  <hp@pobox.com>
5157
5158         * gtk/gtktypeutils.h (GtkSignalFunc): change it to take (void)
5159         instead of (). #6394
5160
5161         * gtk/gtkprogressbar.c (gtk_progress_bar_get_text): Add
5162         G_CONST_RETURN, make it return by reference, #50473
5163         
5164 Sat Feb 17 06:47:27 2001  Tim Janik  <timj@gtk.org>
5165
5166         * gtk/gtkmenu.c (gtk_menu_motion_notify): default initialize the
5167         generated ENTER_NOTIFY event with 0, otherwise not explicitely
5168         setup fields contain garbage (e.g. subwindow, breaking
5169         gdk_drawable_ref() upon event copy).
5170         (gtk_menu_stop_navigating_submenu_cb): same here.
5171
5172         * gtk/gtklist.c (gtk_list_vertical_timeout): 
5173         * gtk/gtklist.c (gtk_list_horizontal_timeout): 
5174         * gtk/gtkclist.c (vertical_timeout): 
5175         * gtk/gtkclist.c (horizontal_timeout): change direct assignment
5176         default-zero-intialization for unions to memset(,0,), as unions are
5177         not fully default-zero-initialized by compilers (GdkEvent x = { 0, };
5178         has to become GdkEvent x; memset (&x, 0, sizeof (x)); )
5179
5180         * gtk/gtktreeview.c (gtk_tree_view_set_rows_drag_source): scratch
5181         g_closure_sink() warning.
5182
5183         * gtk/gtktreemodel.c (gtk_tree_model_get_valist): 
5184         * gtk/gtktreestore.c (gtk_tree_store_set_valist): 
5185         * gtk/gtkliststore.c (gtk_list_store_set_valist): 
5186         fix G_VALUE_COLLECT() and G_VALUE_LCOPY() calls.
5187         
5188 Fri Feb 16 17:49:59 2001  Jonathan Blandford  <jrb@redhat.com>
5189
5190         * gtk/gtktreestore.[hc], gtk/gtkliststore.[ch]: removed
5191         gtk_*_store_get, and moved to GtkTreeModel.
5192
5193         * gtk/gtktreemodel.h (gtk_tree_model_set{v,}): Added
5194
5195         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_finalize): added.
5196
5197         * gtk/Makefile.am: remove gtktreemodelmapping.[ch]
5198
5199         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_func): let you
5200         set the func.
5201
5202         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
5203         freeze/thaw notify between setting all the properties for a cell.
5204
5205         * gtk/gtk.h: remove gtktreemodelsimple.h, and gtktreemodelmapping.h
5206
5207 2001-02-15  Havoc Pennington  <hp@redhat.com>
5208
5209         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): convert
5210         the X coordinates so they're with respect to the line, rather than 
5211         with respect to the layout.
5212
5213         * gtk/gtkalignment.c: Convert to new property API, patch from Lee
5214         Mallabone
5215
5216         * gtk/testgtk.c (create_range_controls): add vscale tests, 
5217         and inverted test
5218
5219         * gtk/gtkrange.c (gtk_range_set_inverted): new function to fix 
5220         #50806
5221
5222         * gtk/gtkentry.c (gtk_entry_get_text): add G_CONST_RETURN
5223
5224         * gtk/gtktextiter.h (gtk_text_iter_is_last): rename 
5225         gtk_text_iter_is_end
5226
5227         * gtk/gtktextbuffer.h (gtk_text_buffer_get_last_iter):
5228         rename gtk_text_buffer_get_end_iter
5229
5230         * gtk/testgtk.c (create_labels): Add test for selectable
5231
5232         * gtk/gtkentry.c (gtk_entry_draw_text): Use new GDK API to draw
5233         the selection stuff. This code is kind of broken since it doesn't 
5234         use the theme engine.
5235
5236         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): 
5237         fix infinite loop and y offset problem
5238         (gdk_draw_layout_line_with_colors): fix foreground color handling
5239
5240         * gtk/gtklabel.h, gtk/gtklabel.c: Implement a "selectable" flag 
5241         that makes the label selectable.
5242         
5243         * gtk/gtklabel.c (gtk_label_style_set): recreate the label's
5244         layout when the style is set, since fonts etc. could have changed.      
5245
5246 Fri Feb 16 14:22:05 2001  Jonathan Blandford  <jrb@redhat.com>
5247
5248         * gtk/Makefile.am: Removed gtktreemodelsimple.[ch]
5249
5250         * gtk/gtktreemodelsimple.[ch]: removed.
5251
5252 2001-02-16  Alexander Larsson  <alexl@redhat.com>
5253
5254         * gtk/gtktreemodelmapping.[ch]:
5255         New files. Implement GtkTreeModelMapping.
5256         
5257         * gtk/Makefile.am:
5258         Add gtktreemodelmapping.[ch].
5259         
5260         * gtk/gtk.h:
5261         Add gtktreemodelmapping.h
5262
5263         * gtk/treestoretest.c:
5264         Test the GtkTreeModelMapping
5265
5266 Tue Feb 13 13:16:09 2001  Jonathan Blandford  <jrb@redhat.com>
5267
5268         * demos/gtk-demo/panes.c (create_pane_options): If we're going to
5269         have a demo, we might as well pass in real values.  Thanks to
5270         clahey for pointing this out.
5271
5272 2001-02-14  Havoc Pennington  <hp@pobox.com>
5273
5274         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_remove): add
5275         "static" to a private function
5276         (gtk_image_menu_item_class_init): remove destroy handler,
5277         add "image" object property
5278
5279 2001-02-13  Alexander Larsson  <alla@lysator.liu.se>
5280
5281         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_clip_region):
5282         Add a shortcut if the window and the current clip_region doesn't
5283         overlap. This is needed when there are a lot of windows in a
5284         window. The layout test in testgtk is a good test.
5285
5286         * gdk/linux-fb/gdkwindow-fb.c:
5287         Whitespace fix.
5288
5289 2001-02-13  Sven Neumann  <sven@convergence.de>
5290
5291         * demos/testanimation.c: replaced deprecated gtk_drawing_area_size
5292
5293 2001-02-13  Alexander Larsson  <alexl@redhat.com>
5294
5295         * gdk/linux-fb/gdkcursor-fb.c (gdk_fb_cursor_unhide):
5296         Don't reference last_cursor if it is null. Fixes crash when rotating
5297         the screen before having moved the mouse.
5298
5299         * gdk/linux-fb/gdkcc-fb.c: Zapp!
5300
5301         * gdk/linux-fb/Makefile.am: Don't compile gdkcc-fb.c
5302
5303         * gdk/linux-fb/gdkwindow-fb.c: Fix typo. width->height. Fixes redraw 
5304         when using 90 or 270 degrees rotation.
5305
5306 2001-02-12  Havoc Pennington  <hp@pobox.com>
5307
5308         * gdk/gdkpango.c (gdk_pango_get_gc): fix bug where 
5309         it always set the foreground, even if we were only using
5310         a stipple.
5311         (gdk_draw_layout_line_with_colors): new function, allow
5312         override colors
5313         (gdk_draw_layout_with_colors): new function, allow override
5314         colors
5315         (gdk_pango_layout_line_get_clip_region): function to get the clip
5316         region for a logical text range
5317         (gdk_pango_layout_get_clip_region): get the clip region for a
5318         logical text range
5319
5320         * gdk/x11/gdkcolor-x11.c: forward declare gdk_colormap_sync(),
5321         (gdk_colormap_new): fix call to gdk_colormap_sync() so it has 
5322         the right number of arguments.
5323
5324         * gtk/gtktextbtree.c (gtk_text_btree_node_check_consistency):
5325         enhance the function to check that node data corresponds to a 
5326         view still belonging to the tree.
5327
5328         * gtk/gtktreeview.c (gtk_tree_view_changed): we were leaking the 
5329         GtkTreePath
5330         (gtk_tree_view_inserted): ditto
5331         (gtk_tree_view_child_toggled): ditto
5332
5333         * gtk/gtktreemodel.c (gtk_tree_path_append_index): use realloc to
5334         simplify this code.
5335
5336         * gtk/gtkcellrenderertext.c (get_layout): fix leak of 
5337         a PangoAttrList
5338
5339         * demos/gtk-demo/main.c (load_file): Fix leak of a GString
5340
5341         * gtk/gtkentry.c (gtk_entry_realize): Fix leak of a GdkCursor
5342
5343         * gtk/gtkmenubar.c (gtk_menu_bar_size_request): consider toggle
5344         size in the size request 
5345         (gtk_menu_bar_size_allocate): consider toggle size here
5346
5347         * gtk/gtkimagemenuitem.h, gtkimagemenuitem.c: Menu item
5348         that displays a widget in the toggle slot
5349
5350         * gtk/testgtk.c: test GtkImageMenuItem
5351
5352         * gtk/Makefile.am, gtk/gtk.h: Add GtkImageMenuItem
5353         
5354         * gtk/gtkmenuitem.h: Use "gint" not "guint16" for toggle size
5355         request and allocation
5356
5357         * gtk/gtkmenu.c (gtk_menu_size_request): use gint not guint16
5358
5359         * gtk/gtkcheckmenuitem.c
5360         (gtk_check_menu_item_toggle_size_request): ditto
5361         
5362 Mon Feb 12 23:43:30 2001  Owen Taylor  <otaylor@redhat.com>
5363
5364         * gtk/Makefile.am (gdk_headers): Remove gdkcc.h 
5365         reference.
5366
5367         * configure.in gtk/gtkmain.c: Add checks for setuid/setgid,
5368         and refuse to initialize GTK+ if they fail.
5369
5370 Mon Feb 12 15:02:07 2001  Owen Taylor  <otaylor@redhat.com>
5371
5372         * configure.in: Add check for gtk-doc version.
5373
5374 Thu Feb  8 17:18:26 2001  Owen Taylor  <otaylor@redhat.com>
5375
5376         * gtk/gtklabel.c (gtk_label_size_request): Fix bug
5377         where the xpad/ypad was only being used on one side!
5378
5379 2001-02-11  Tor Lillqvist  <tml@iki.fi>
5380
5381         * gdk/win32/gdkcolor-win32.c (gdk_colormap_query_color): New
5382         function, copied from X11 version.
5383
5384         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Eliminate
5385         DestroyCursor failures. The reason for the problem (despite the
5386         inconsistent messages from GetLastError()) was that
5387         DestroyCursor() cannot be called while a cursor is set in a
5388         window. Set the new cursor first and then destroy the old one.
5389         Thanks to jpe@archaeopteryx.com.
5390
5391         * gdk/win32/gdkcc-win32.c: Remove.
5392
5393         * gdk/win32/Makefile.am: Remove from here, too.
5394         
5395         * gdk/gdk.def
5396         * gdk/makefile.mingw.in: Update. Godbye GdkColorContext.
5397
5398         * gtk/gtk.def
5399         * gtk/makefile.mingw.in: Updates.
5400
5401 2001-02-08  Havoc Pennington  <hp@redhat.com>
5402
5403         * gtk/gtkbin.c (gtk_bin_add): better error message if you try to
5404         add a widget to a bin that already has a child.
5405
5406         * gdk/gdkcc.h, gdk/gdkcc-x11.c: Remove GdkColorContext, #50512
5407
5408         * docs/Changes-2.0.txt: note that GdkColorContext is gone.
5409         
5410         * gdk/x11/Makefile.am (libgdk_x11_la_SOURCES): remove gdkcc-x11.c
5411
5412         * gdk/gdk.h: remove gdkcc.h
5413
5414         * gdk/Makefile.am (gdk_public_h_sources): remove gdkcc.h
5415
5416         * gtk/gtkpixmap.c (build_insensitive_pixmap): rewrite using
5417         GdkPixbuf, since the previous implementation was GdkColorContext
5418         dependent.
5419
5420         * gtk/testgtk.c (create_pixmap): add test for insensitive GtkPixmap
5421         
5422 Thu Feb  8 19:00:00 2001  Jonathan Blandford  <jrb@redhat.com>
5423
5424         * gtk/gtktreeview.c (TREE_VIEW_VERTICAL_SEPARATOR): moved back to
5425         a sane value!
5426
5427 2001-02-08  Havoc Pennington  <hp@redhat.com>
5428
5429         * gtk/gtkstyle.c (get_darkened_gc): let's darken colors, not
5430         lighten them.
5431
5432 2001-02-08  Havoc Pennington  <hp@redhat.com>
5433
5434         * gtk/gtktextview.c (gtk_text_view_destroy_layout): remove
5435         validation idle
5436
5437         * demos/gtk-demo/main.c (create_tree): adjust to changes in text
5438         cell renderer
5439
5440         * demos/pixbuf-demo.c (timeout): remove deprecated
5441         gtk_widget_draw
5442
5443         * demos/testpixbuf-save.c (main): remove deprecated
5444         gtk_drawing_area_size
5445
5446         * gtk/gtktreeview.c (gtk_tree_view_size_allocate): allocate
5447         buttons even if the model isn't setup. gtk_tree_view_check_dirty()
5448         at the start of the allocation.
5449         (gtk_tree_view_check_dirty): handle column->button == NULL, handle
5450         unsetup or NULL model.
5451
5452         * gtk/gtkstyle.c (gtk_default_draw_flat_box): drawing for the 
5453         even/odd/sorted cells in the tree view.
5454
5455         * gtk/gtktreeselection.c (gtk_tree_selection_real_unselect_all):
5456         bugfixes
5457
5458         * gtk/gtktreeview.c: assorted bugfixy stuff. Draw the row
5459         backgrounds with draw_flat_box using different detail for even/odd
5460         rows.
5461
5462         * gtk/gtkrbtree.c, gtkrbtree.h: Keep track of the parity of each
5463         row, so we can draw the alternating colors thing
5464
5465         * gtk/gtktexttag.c (gtk_text_tag_set_property): if we change a
5466         property from a synonym property, notify for the synonym.
5467         Also, nuke the background_gdk_set and foreground_gdk_set synonyms
5468         (gtk_text_tag_get_property): Always return the font, even if
5469         all its fields aren't set
5470
5471         * gtk/gtkcellrenderertext.h (struct _GtkCellRendererText): don't
5472         store the attr list; it leaves us with no way to change attributes
5473         in _render according to the render flags, and no way to implement
5474         get_property. Instead store all the specific text attributes. 
5475         Separate whether an attribute is enabled from its value. Sync all
5476         properties with GtkTextTag, make them all consistent, etc.
5477
5478         * gtk/gtkcellrenderer.h: Add a flag GTK_CELL_RENDERER_SORTED so
5479         renderers can highlight the sort row/column     
5480
5481         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_get_property): use
5482         accessor functions to get values; this has the side effect of
5483         showing up which accessor functions were missing. Added those.
5484
5485         * gtk/gtktreeviewcolumn.h: Replace set_justification with
5486         set_alignment, to be consistent with GtkLabel, GtkMisc
5487
5488         * gtk/gtktreeviewcolumn.c: Added code to display sort indicator
5489         arrow.
5490
5491         * gtk/Makefile.am (gtk_public_h_sources): add gtktreesortable.h
5492
5493         * gtk/gtktreesortable.h: updates in here
5494
5495 2001-02-07  Sven Neumann  <sven@convergence.de>
5496
5497         * gtk/gtkentry.c (gtk_entry_draw_text): convert area_height to 
5498         pango dimensions after painting the background. We used to draw
5499         gigantic flat boxes here.
5500
5501 Mon Feb  5 22:05:57 2001  Owen Taylor  <otaylor@redhat.com>
5502
5503         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Fix syntax
5504         error introduced with earlier commit) (pointed out by
5505         Ollie Lho)
5506
5507 Mon Feb  5 12:25:06 2001  Owen Taylor  <otaylor@redhat.com>
5508
5509         * gtk/gtkbutton.c: Remove calls to gtk_grab_add/gtk_grab_remove,
5510         which are no longer necessary.
5511
5512 Mon Feb  5 13:22:54 GMT 2001  Tony Gale <gale@gtk.org>
5513
5514         * docs/faq/gtk-faq.sgml: s/MISK/MISC/
5515
5516 2001-02-04  Tor Lillqvist  <tml@iki.fi>
5517
5518         * gdk/gdk.def
5519         * gdk/win32/gdkim-win32.c (gdk_ic_attr_new, gdk_ic_attr_destroy):
5520         Provide dummy implementations.
5521
5522 Sun Feb  4 07:55:17 2001  Tim Janik  <timj@gtk.org>
5523
5524         * gtk/gtksignal.h: removed gtk_signal_init() compat define.
5525
5526         * gtk/gtktypeutils.[hc]: gtk_tpye_init() take an additional argument
5527         GTypeDebugFlags debug_flags and pass it on to g_type_init ();
5528         deprecated this function.
5529
5530         * gdk/gdk.c (gdk_init_check): call g_type_init () with 0 as
5531         argument.
5532
5533 Sun Feb  4 07:45:45 2001  Tim Janik  <timj@gtk.org>
5534
5535         * gtk/gtkdebug.h: nuke GTK_DEBUG_OBJECTS and GTK_DEBUG_SIGNALS.
5536
5537 2001-02-03  Havoc Pennington  <hp@pobox.com>
5538
5539         * gtk/gtktextbtree.c (_gtk_text_btree_tag): Fix bug reported by
5540         Mikael Hermansson with patch from Mikael (if there was a toggle
5541         start one after the first character in the range, this function
5542         was broken). Bug #50380
5543
5544 Sat Feb  3 11:28:03 2001  Owen Taylor  <otaylor@redhat.com>
5545
5546         * configure.in: Remove confusing comment about X11.
5547
5548 Fri Feb  2 19:21:23 2001  Owen Taylor  <otaylor@redhat.com>
5549
5550         * gdk/gdkwindow.c (gdk_propagate_shapes): Surround additional
5551         regions with HAVE_SHAPE_EXT. (#50511, Eric Ding)
5552         
5553 Fri Feb  2 18:31:54 2001  Owen Taylor  <otaylor@redhat.com>
5554
5555         * gdk/x11/gdkimage-x11.c: Remove definition of _XOPEN_SOURCE, since
5556         it breaks things on BSD. If you want to compile GTK+ with
5557         -ansi -pedantic, you should supply CPP_FLAGS=_XOPEN_SOURCE 
5558         when configuring, since GTK+ simply can't be "pure ANSI" 
5559         in the header files it uses. (#8170, Greg Hudson)
5560
5561 2001-02-02  Havoc Pennington  <hp@redhat.com>
5562
5563         * gtk/gtkwindow.c: docs
5564
5565         * gtk/gtkwidget.c: docs
5566         (gtk_widget_set_colormap): add a reference to the colormap
5567         (gtk_widget_get_default_colormap): add a reference to the colormap
5568
5569         * gtk/gtktextbtree.c (gtk_text_mark_set_visible): docs
5570
5571         * gtk/gtktextiter.c: docs
5572
5573         * gtk/gtkmain.c (gtk_propagate_event): docs
5574
5575         * gtk/gtkpaned.c (gtk_paned_get_position): docs
5576         (gtk_paned_set_position): docs
5577
5578         * gtk/gtktreesortable.h (struct _GtkTreeSortableIface): Initial
5579         sort interface, no implementation yet.
5580
5581         * demos/testpixbuf.c (new_testrgb_window): replace
5582         gtk_drawing_area_size() with gtk_widget_set_usize()
5583
5584         * demos/testpixbuf-drawable.c (main): ditto
5585         
5586         * gtk/testgtk.c: remove use of GtkStatusbarMsg
5587
5588         * gtk/gtktextbuffer.c: docs
5589
5590         * gtk/gtkstock.c: docs
5591
5592         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_set_shadow_type): docs
5593
5594         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): docs
5595
5596         * gtk/gtklabel.c (gtk_label_set_markup_with_accel): fix docs
5597         
5598         * gtk/gtkimage.c: add some docs in here
5599         (gtk_image_size_request): change name of
5600         gtk_widget_render_stock_icon
5601         (gtk_image_get_icon_set): don't dup returned string
5602         (gtk_image_get_icon_set): don't dup returned string
5603
5604         * gtk/gtkwidget.c (gtk_widget_render_icon): rename from 
5605         gtk_widget_render_stock_icon(), more consistent with gtkstyle.h
5606         and gtkiconfactory.h functions
5607
5608         * gtk/gtkiconfactory.c: add some docs in here
5609
5610         * gtk/gtkmain.c (gtk_get_default_language): document
5611         (gtk_get_current_event): document
5612         (gtk_get_current_event_state): document
5613         (gtk_get_event_widget): document
5614
5615         * gtk/gtkentry.c (gtk_entry_set_invisible_char): document
5616
5617         * gtk/gtkcontainer.c: Add some documentation
5618         (gtk_container_add): give a more explanatory warning on adding an
5619         already-parented widget, this is kind of a FAQ and also a common
5620         typo that's easier to debug with a nice warning 
5621
5622         * gtk/gtkcellrenderertoggle.c
5623         (gtk_cell_renderer_toggle_get_active): remove, I was on crack
5624         adding this, it's useless
5625         (gtk_cell_renderer_toggle_set_active): remove
5626         (gtk_cell_renderer_toggle_get_radio): add
5627
5628         * gtk/gtkcellrenderer.c (gtk_cell_renderer_get_size): don't allow
5629         the NULL cell renderer, that doesn't make any sense to me. 
5630
5631         * demos/gtk-demo/Makefile.am (INCLUDES): -DGTK_DISABLE_DEPRECATED,
5632         demo code should never use deprecated features.
5633
5634         * demos/Makefile.am (INCLUDES): -DGTK_DISABLE_DEPRECATED, demo
5635         code should never use deprecated features.
5636
5637         * gtk/gtkwidget.h: Mark gtk_widget_draw, gtk_widget_queue_clear,
5638         gtk_widget_queue_clear_area deprecated
5639
5640         * gtk/gtklayout.h: mark gtk_layout_freeze/gtk_layout_thaw
5641         deprecated
5642
5643         * gtk/gtklabel.h: mark gtk_label_get() deprecated
5644
5645         * gtk/gtkimage.h: mark the legacy GtkImage functions that took 
5646         a GdkImage deprecated, replaced by new consistently-named
5647         functions       
5648
5649         * gtk/gtkmain.h: Mark gtk_exit() deprecated
5650
5651         * gtk/gtkdrawingarea.h: mark gtk_drawing_area_size deprecated
5652
5653         * gtk/gtkstyle.h: mark gtk_draw_string, gtk_paint_string 
5654         deprecated
5655
5656         * gtk/gtkstatusbar.h: Move GtkStatusbarMsg to the .c file, 
5657         so it won't appear in docs and confuse people.
5658
5659         * gtk/gtkprogressbar.h: Mark all the old methods deprecated
5660
5661         * gtk/gtkprogress.h: Mark all methods deprecated, mark the cast
5662         macros deprecated. (can't mark the type itself deprecated, since
5663         GtkProgressBar is not deprecated and we need the type decl to use
5664         GtkProgressBar)
5665
5666         * gtk/gtkpixmap.h: Mark deprecated
5667
5668         * gtk/gtkoldeditable.h: Mark deprecated
5669
5670         * gtk/gtklist.h: Mark deprecated
5671
5672         * gtk/gtklabel.h: delete "GtkLabelWord" typedef, not used 
5673         for anything anymore.
5674
5675         * gtk/gtkctree.h: Mark deprecated
5676
5677         * gtk/gtkclist.h: Mark deprecated
5678
5679         * gtk/gtkpreview.h: Mark deprecated
5680
5681         * gtk/gtkpacker.h: Mark deprecated
5682
5683         * gtk/gtktipsquery.h: Mark deprecated
5684
5685         * gtk/gtkinputdialog.h: Add comment that it will move out of GTK
5686
5687         * gtk/gtkvruler.h: Add comment that it will move out of GTK
5688
5689         * gtk/gtkhruler.h: Add comment that it will move out of GTK
5690
5691         * gtk/gtkruler.h: Add comment that it will move out of GTK
5692
5693         * gtk/gtkgamma.h: Add comment that it will move out of GTK
5694
5695         * gtk/gtkcurve.h: Add comment that it will move out of GTK
5696
5697 Fri Feb  2 17:16:09 2001  Owen Taylor  <otaylor@redhat.com>
5698
5699         * gdk/x11/gdkcolor-x11.c (gdk_colormap_sync): Make
5700         gdk_colormap_sync private since it was never exported
5701         in a header file.
5702
5703         * gdk/x11/gdkcolor-x11.c (gdk_colormap_new): Fill in
5704         colormap->colors[] for StaticGray, StaticColor colormaps.
5705
5706         * gdk/gdkpixbuf-drawable.c: Fix problems where image->bpp
5707         was being used as if it was image->bits_per_pixel.
5708
5709         * gdk/gdkimage.h, gdk/x11/gdkimage-x11.c: Save the bits-per-pixel
5710         for the image in the GdkImage structure since it isn't
5711         reconstructable, and we need it to handle packed types
5712
5713         * gdk/win32/gdkimage-win32.c: Set image->bits_per_pixel. (I'm making
5714         the assumption that on Win32 image->bits_per_pixel == image->depth,
5715         always.
5716
5717         * gdk/linux-fb/gdkimage-fb.c: Set image->bits_per_pixel.
5718
5719         * gdk/gdkrgb.c (gdk_rgb_select_conv): Exit with an informative
5720         warning message if no converter can be found. 
5721
5722 Fri Feb  2 15:09:51 2001  Owen Taylor  <otaylor@redhat.com>
5723
5724         * gtk/fnmatch.c (FOLD): Fix problem with passing signed
5725         chars to isupper() / tolower(). (#567)
5726
5727         * examples/packer/pack.c: Add GINT_TO_POINTER, GPOINTER_TO_INT
5728         to clear up 64-bit warnings. (#567)
5729
5730 Fri Feb  2 12:26:50 2001  Owen Taylor  <otaylor@redhat.com>
5731
5732         * gtk/gtkrc.c (gtk_rc_add_initial_default_files): Get rid of
5733         a bunch of g_strdup_printf("%s%s") in favor of g_strconcat().
5734
5735         * gtk/gtkrc.c Makefile.am: Use $(libdir), not $(exe_prefix),
5736         since some people set $(libdir) separately. (#1290, David Kaelbling)
5737
5738 Thu Feb  1 18:25:46 2001  Owen Taylor  <otaylor@redhat.com>
5739
5740         * gtk/gtkfilesel.c: If PATH_MAX and MAXPATHLEN are not
5741         defined, define MAXPATHLEN to 2048. (The Hurd doesn't have
5742         MAXPATHLEN, but the code here depends on a fixed value.)
5743         (#4524)
5744
5745 Wed Jan 31 22:01:04 2001  Owen Taylor  <otaylor@redhat.com>
5746
5747         * gtk/gtkhandlebox.c (gtk_handle_box_button_changed): Handle the case
5748         where child == NULL and handle_position == RIGHT or BOTTOM. (#8041g)
5749
5750 Wed Jan 31 21:20:39 2001  Owen Taylor  <otaylor@redhat.com>
5751
5752         * gtk/gtkctree.c (real_tree_move): If the node being moved isn't
5753         viewable there is no way that moving the node will cause the 
5754         focus row to become not viewable, so omit check on the visibility
5755         of new_sibling, which is irrelevant. (Fixes #8002, David Helder)
5756
5757 Wed Jan 31 20:38:17 2001  Owen Taylor  <otaylor@redhat.com>
5758
5759         * gtk/gtkentry.c (gtk_entry_commit_cb): Delete the current
5760         selection before inserting new text.
5761
5762 Wed Jan 31 18:49:33 2001  Owen Taylor  <otaylor@redhat.com>
5763
5764         * gtk/gtkoptionmenu.c (gtk_option_menu_item_state_changed_cb):
5765         Make the sensitivity of the reparented child track that of
5766         the original parent menu item. (#34218, David Hodson)
5767
5768         * gtk/gtkoptionmenu.c (gtk_option_menu_item_destroy_cb): Handle
5769         the case where the current item is destroyed properly.
5770
5771         * gtk/gtkoptionmenu.c: Some additional code cleanups and fix
5772         some edge cases with child-less menuitems.
5773         
5774 Wed Jan 31 17:16:13 2001  Owen Taylor  <otaylor@redhat.com>
5775
5776         * gtk/gtkcombo.c (gtk_combo_window_key_press): Make Return
5777         key pop down window. (#12074, Jon K Hellan)
5778
5779 Wed Jan 31 16:21:42 2001  Owen Taylor  <otaylor@redhat.com>
5780
5781         * gtk/gtklist.c (gtk_list_signal_item_toggle): Don't allow
5782         toggling of rows off in BROWSE or EXTENDED mode. (#12072, Jon K Hellan) 
5783         The solution here isn't perfect - you get an extraneous
5784         emission of "toggle", which could conceivably confuse an app,
5785         but better than the current situation. LXR search seems to
5786         indicate that no apps in GNOME CVS connect to "toggle".
5787
5788 Wed Jan 31 15:46:13 2001  Owen Taylor  <otaylor@redhat.com>
5789
5790         * gtk/Makefile.am (libgtkinclude_HEADERS): Move gtkcompat.h from
5791         gtk_public_h_sources to directly here to avoid warning when
5792         building srcdir != builddir. (#9656)
5793
5794 Tue Jan 30 19:49:02 2001  Owen Taylor  <otaylor@redhat.com>
5795
5796         * gtk/gtkrange.c: Patch from Kipp Hickman to make the event
5797         handlers in gtkrange.c return the proper values (TRUE == handled)
5798         (#10316).
5799
5800         This is just the tip of the iceberg, but gtkrange.c is the
5801         most common place where the propagation is problematical,
5802         and also a place where it is almost certainly safe to change
5803         this in the stable branch.
5804
5805         (You don't want right click popups on a range control or anything...)
5806
5807 Tue Jan 30 18:57:59 2001  Owen Taylor  <otaylor@redhat.com>
5808
5809         * gtk/gtktext.c (clear_focus_area): We need to clear the focus
5810         area on focus out, even if a background pixmap isn't set.
5811         (#13941)
5812         
5813 Tue Jan 30 18:24:10 2001  Owen Taylor  <otaylor@redhat.com>
5814
5815         * gtk/gtknotebook.c (gtk_notebook_set_shape): Fix from Sean Cunningham
5816         to deal with setting the shape properly when scrolling arrows are
5817         turned on, but not visible because there is sufficient space.
5818         (#13432)
5819
5820 Tue Jan 30 16:39:25 2001  Owen Taylor  <otaylor@redhat.com>
5821
5822         * gtk/gtkitemfactory.c (gtk_item_factory_delete_item): For menu
5823         items with submenus, destroy the item along with the submenu.
5824         (#7841, Brian Masney(?)) Also, handle paths of the form '<foo>/abcd...' 
5825         properly.
5826
5827         * gtk/testgtk.c (menu_items): Add a dummy branch that we delete
5828         later.
5829
5830 Tue Jan 30 15:51:25 2001  Owen Taylor  <otaylor@redhat.com>
5831
5832         * gtk/gtkwindow.c (gtk_window_real_set_focus): Fix a problem where
5833         the focus widget sometimes wasn't drawn with the default if there
5834         was no default widget.
5835
5836         * gtk/gtkstyle.c (gtk_style_real_unrealize): free colors,
5837         unreference pixmaps. 
5838
5839         * gtk/gtkstyle.c (gtk_style_realize): Reference colormap
5840         for some extra safety.
5841
5842 Mon Jan 29 19:00:01 2001  Owen Taylor  <otaylor@redhat.com>
5843
5844         * gtk/gtk{ctree.c,clist.c} (set_cell_contents): Handle setting
5845         the text of a cell to the old pointer value better, by
5846         copying the new text before freeing the old text. Some code
5847         cleanup. (#8079, Karl Nelson)
5848
5849 Mon Jan 29 16:50:19 2001  Owen Taylor  <otaylor@redhat.com>
5850
5851         * gtk/gtklabel.[ch] gtk/gtkframe.[ch]: Make gtk_label_get_text()
5852         gtk_frame_get_label() non strdup'ing, and G_CONST_RETURN.
5853
5854 Mon Jan 29 15:22:51 2001  Owen Taylor  <otaylor@redhat.com>
5855
5856         * gtk/gtkmenu.c (gtk_menu_remove): When removing an
5857         item from a menu, check to see if it matches 
5858         menu->old_active_menu_item, and if so, unref and clear
5859         old_active_menu_item (Patch from Pavel Cisler)
5860
5861         * gtk/gtkmenushell.c (gtk_menu_shell_remove): Unset 
5862         menu_shell->active_menu_item, if it is the child being
5863         removed. (Patch based on that of Gene Ragan, #50337)
5864
5865 2001-01-31  Alexander Larsson  <alla@lysator.liu.se>
5866
5867         * gdk/linux-fb/gdkselection-fb.c: 
5868         * gdk/linux-fb/gdkcolor-fb.c: 
5869         * gdk/linux-fb/gdkdrawable-fb2.c: 
5870         * gdk/linux-fb/gdkfont-fb.c: 
5871         * gdk/linux-fb/gdkim-fb.c: 
5872         * gdk/linux-fb/gdkinput.c: 
5873         * gdk/linux-fb/gdkkeyboard-fb.c: 
5874         * gdk/linux-fb/gdkmain-fb.c: 
5875         * gdk/linux-fb/gdkrender-fb.c: 
5876         A bunch of whitespace cleanup.
5877         
5878 2001-01-30  Havoc Pennington  <hp@pobox.com>
5879
5880         * gtk/gtktreeitem.h, gtk/gtktree.h, gtk/gtktext.h: bracket in 
5881         #ifdef GTK_ENABLE_BROKEN.
5882
5883         * gtk/gtktreeitem.c, gtk/gtktree.c, gtk/gtktext.c: #define
5884         GTK_ENABLE_BROKEN just before including the broken headers.
5885         
5886         * gtk/gtktypeutils.c: #define GTK_ENABLE_BROKEN, so we can get the
5887         deprecated types registered.
5888
5889         * gtk/testgtk.c, gtk/testselection.c: #define GTK_ENABLE_BROKEN,
5890         we have to test the broken stuff.
5891
5892         * docs/Changes-2.0.txt: explain GTK_ENABLE_BROKEN
5893         
5894 2001-01-30  Havoc Pennington  <hp@redhat.com>
5895
5896         * gtk/gtkliststore.c (gtk_list_store_insert_before): fix bug in
5897         here where prev pointer was set to the wrong thing
5898
5899         * gtk/gtktreemodel.c (gtk_tree_path_is_ancestor): new function
5900         (gtk_tree_path_is_descendant): new function
5901
5902         * gtk/gtkliststore.c (gtk_list_store_iter_n_children): return
5903         cached length
5904         (gtk_list_store_get_iter): don't modify iter if we can't get the
5905         path.
5906
5907         * gtk/gtkliststore.h (struct _GtkListStore): cache the length
5908         
5909         * gtk/gtktreednd.h: add virtual function row_drop_possible() to
5910         GtkTreeDragDest
5911
5912         * gtk/gtktreestore.c (copy_node_data): fix varargs type error that
5913         was causing segfault
5914
5915         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_copy): set next
5916         pointer to NULL
5917
5918         * gtk/gtktreestore.c (gtk_tree_store_append): fix memleak
5919
5920         * gtk/gtkliststore.c (gtk_list_store_iter_next): don't modify iter
5921         on returning FALSE
5922         (gtk_list_store_iter_children): ditto
5923         (gtk_list_store_iter_nth_child): ditto
5924         (gtk_list_store_iter_nth_child): ditto
5925         (gtk_list_store_iter_parent): ditto
5926
5927         * gtk/gtktreestore.c (gtk_tree_store_get_path): g_return_if_fail
5928         on iter->user_data != NULL instead of silently accepting it.
5929         (gtk_tree_store_iter_next): ditto. Also, don't modify iter unless
5930         we are returning TRUE.
5931         (gtk_tree_store_iter_children): ditto
5932         (gtk_tree_store_iter_nth_child): ditto
5933         (gtk_tree_store_iter_parent): ditto
5934         (gtk_tree_store_insert): remove handling of parent->user_data ==
5935         NULL, replace with parent == NULL       
5936
5937         * gtk/gtktreemodel.c (inserted_callback): put some fixes in here,
5938         and a comment explaining things
5939
5940         * gtk/gtktreestore.c: add GtkTreeDragSource/GtkTreeDragDest
5941         interface support to GtkTreeStore.
5942
5943         * gtk/gtktreemodel.c (gtk_tree_path_prev): didn't properly return
5944         FALSE if no prev, fix
5945
5946         * gtk/gtktreeview.c (set_source_row): use a row reference
5947         (set_dest_row): use a row reference
5948
5949 Sat Jan 27 15:52:02 2001  Jonathan Blandford  <jrb@redhat.com>
5950
5951         * gtk/gtktreeselection.c (gtk_tree_selection_unselect_iter): Fix
5952         stupid typo pointed out by Kristian Rietveld <kristian@planet.nl>.
5953         (gtk_tree_selection_select_iter): The same as above.
5954
5955 2001-01-26  Havoc Pennington  <hp@redhat.com>
5956
5957         * gtk/gtktreemodel.c, gtk/gtktreemodel.h: add GtkTreeRowReference
5958         which holds a handle to a specific row (particular set of values
5959         in the model, i.e. pointer-identity row).
5960
5961         * gtk/gtktreeview.c, gtk/gtktreeprivate.h, gtk/gtktreeselection.c:
5962         use GtkTreeRowReference for anchor, cursor, and drag_dest_row.
5963         Still need to use it for the src/dest row saved on the drag context.
5964
5965 2001-01-26  Havoc Pennington  <hp@redhat.com>
5966
5967         * gtk/gtktextlayout.c (convert_color): adapt to handle PangoColor
5968
5969         * gtk/gtktreeview.c (gtk_tree_view_widget_to_tree_coords): fix to
5970         not offset by TREE_VIEW_HEADER_HEIGHT
5971         (gtk_tree_view_tree_to_widget_coords): fix to not offset by
5972         TREE_VIEW_HEADER_HEIGHT
5973
5974         * configure.in (included_loaders): for me, --with-included-loaders
5975         generates the error "the specified loader yes does not exist",
5976         i.e. the arg defaults to "yes", so change test for value ""
5977         to test for value "yes", and include all loaders in that case.
5978
5979         * gtk/gtkrbtree.c (_gtk_rbtree_get_depth): new function
5980
5981         * gtk/gtktreeview.c (gtk_tree_view_get_cell_rect): fix to properly
5982         handle TREE_VIEW_VERTICAL_SEPARATOR
5983         (gtk_tree_view_bin_expose): fix to consider the row offset as
5984         pointing halfway into vertical separator.       
5985         (gtk_tree_view_draw_node_focus_rect): ditto
5986
5987         * gtk/gtkdebug.h, gtk/gtkmain.c (gtk_init_check): Add
5988         --gtk-debug=updates, which causes gdk_window_set_debug_updates
5989         (TRUE) to be called.
5990
5991         * gdk/gdkwindow.c (gdk_window_set_debug_updates): Allow enabling a
5992         debug mode where the invalid region is colored in on invalidate,
5993         so you can see the flicker and know whether your redraw code is 
5994         doing a good job.
5995
5996         * gtk/gtktreeview.c (gtk_tree_view_queue_draw_node): Work in 
5997         tree window coordinates (clip rect is in tree window coords)
5998
5999         * gtk/Makefile.am: add gtktreednd.[hc]
6000
6001         * gtk/gtkliststore.c: implement gtktreednd interfaces.
6002
6003         * gtk/gtktreednd.c, gtk/gtktreednd.h: New interface to support
6004         drag-and-drop data operations on a model (so we can set up tree
6005         drag-and-drop automatically)
6006
6007         * gtk/testgtk.c: Add a window to change sensitivity in the
6008         GtkLabel test; add a way to change the entry frame in GtkEntry
6009         test
6010
6011         * gtk/gtkentry.c (gtk_entry_set_has_frame): 
6012         (gtk_entry_get_has_frame): new functions to remove the frame
6013         around an entry
6014         (gtk_entry_size_request): shrink requisition if no frame
6015         (gtk_entry_draw_focus): don't draw frame if no frame
6016
6017         * gtk/gtkstyle.c (gtk_default_draw_check): draw custom look for
6018         checks inside a cell renderer
6019         (gtk_default_draw_option): ditto for options
6020
6021         * gtk/gtktreeviewcolumn.c (update_button_contents): add/remove
6022         children from the alignment, not the button
6023         (gtk_tree_view_column_init): ref/sink the column, to emulate
6024         GObject refcounting.
6025
6026         * gtk/gtkcellrenderer.c (gtk_cell_renderer_init): ref/sink
6027         
6028         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
6029         Use theme functions to draw the toggles 
6030
6031         * gdk/gdkpango.c (gdk_pango_get_gc): use GdkRGB to alloc colors
6032
6033         * gdk/gdkpango.h, gdk/gdkpango.c: Add GdkPangoAttrStipple and
6034         GdkPangoAttrEmbossed to use in rendering insensitive text
6035
6036         * gdk/gdkpango.c (gdk_draw_layout_line): render new properties
6037
6038         * gtk/gtkstyle.c (gtk_default_draw_layout): handle sensitivity
6039         using new GDK features
6040         
6041 2001-01-24  Alexander Larsson  <alexl@redhat.com>
6042
6043         * gtk/gtkimage.c:
6044         Splitted gtk_image_clear into gtk_image_clear() and
6045         gtk_image_reset(). Call gtk_image_clear() in ::destroy
6046         to avoid leaks.
6047
6048         * gtk/gtklabel.c (set_markup):
6049         Don't leak text.
6050
6051         * gtk/gtktextlayout.c:
6052         Always free display->shaped_objects.
6053
6054         * gtk/testgtk.c (create_clist):
6055         Don't leak custom style.
6056
6057 2001-01-23  Alexander Larsson  <alexl@redhat.com>
6058
6059         * gtk/gtkcolorsel.c (grab_color_at_mouse):
6060         Don't leak image. Simplify using gdk_colormap_query_color().
6061         (gtk_color_selection_init): Don't leak dropper_pixmap and mask.
6062
6063         * linux-fb/gdkcolor-fb.c:
6064         Implemented gdk_colormap_query_color.
6065
6066 2001-01-23  Alexander Larsson  <alexl@redhat.com>
6067
6068         * linux-fb/gdkcursor-fb.c:
6069         Don't leak built-in cursors.
6070
6071         * linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_polygon):
6072         Don't leak tmp_points.
6073
6074         * linux-fb/gdkfont-fb.c (gdk_font_from_description):
6075         Don't modify desc. Don't leak font if the PangoFont
6076         isn't found.
6077         
6078         * linux-fb/gdkgc-fb.c (gdk_fb_gc_finalize):
6079         Free dash_list.
6080
6081         * linux-fb/gdkkeyboard-fb.c (gdk_fb_handle_key):
6082         Don't leak string.
6083         
6084 2001-01-20  Havoc Pennington  <hp@pobox.com>
6085
6086         * gtk/gtktexttag.h (enum GtkWrapMode): rename member fields
6087         from GTK_WRAPMODE_WORD to GTK_WRAP_WORD, etc., seems nicer to 
6088         me, matches Pango
6089
6090 2001-01-22  Havoc Pennington  <hp@redhat.com>
6091
6092         * demos/testanimation.c: fix to reflect gdk-pixbuf changes
6093
6094         * demos/testpixbuf.c: fix to reflect gdk-pixbuf changes
6095
6096         * gtk/gdk-pixbuf-loader.c, gtk/gdk-pixbuf-loader.h: 
6097         Remove, move back to gdk-pixbuf
6098
6099         * gtk/gtktextiter.c, gtk/gtktextiter.h: add sentence equivalents
6100         to all the word functions
6101
6102         * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): return
6103         before doing anything on NULL layout or if we don't have the focus
6104
6105         * gtk/testtext.c (fill_example_buffer): "justification"
6106
6107         * gtk/gtktexttag.h, gtk/gtktexttag.c: change the tag attribute
6108         to be called "justification" not "justify"
6109
6110         * demos/gtk-demo/textview.c (create_tags): "justification"
6111         
6112         * gtk/gtktextlayout.c (set_para_values): Handle char-wise wrapping
6113
6114 2001-01-22  Alexander Larsson  <alexl@redhat.com>
6115
6116         * gdk/gdkwindow.c (gdk_window_invalidate_region):
6117         Don't leak visible_region. Use visible_region instead of region.
6118         
6119         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
6120         Don't do extra gdk_drawable_ref(). This is not X.
6121         (gdk_fb_window_find_focus, gdk_fb_change_focus): make sure
6122         gdk_fb_focused_window is ref:ed.
6123         (gdk_fb_window_send_crossing_events): Watch out for destroyed
6124         windows.
6125
6126 2001-01-22  Alexander Larsson  <alexl@redhat.com>
6127
6128         * gtk/gtkwindow-decorate.c (gtk_decorated_window_realize):
6129         Don't leak the PangoFontDescriptor.
6130
6131 Sun Jan 21 09:58:00 2001  Jonathan Blandford  <jrb@redhat.com>
6132
6133         * gtk/gtktreeview.c (gtk_tree_view_scroll_to_point): Make fail
6134         when not realized.
6135         (gtk_tree_view_scroll_to_cell): Make work when not realized.
6136         (gtk_tree_view_realize): add scroll_to support
6137         (gtk_tree_view_finalize): add a finalize method.  Populate.
6138         (gtk_tree_view_insert_column): ref and sink the column.
6139         (gtk_tree_view_append_column): ref and sink the column.
6140         (gtk_tree_view_queue_draw_node): New function to handle redrawing
6141         individual nodes.  Should make the code much more efficient, if
6142         actually used.
6143
6144 2001-01-19  Havoc Pennington  <hp@redhat.com>
6145
6146         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
6147         byte_offset variable was being used to mean both "offset into
6148         layout" and "offset into buffer line" which was no longer true
6149         with addition of preedit string; fix
6150
6151 2001-01-19  Havoc Pennington  <hp@redhat.com>
6152
6153         * demos/gtk-demo/main.c (button_press_event_cb): sync to tree changes
6154
6155         * gtk/gtkrbtree.c (_gtk_rbtree_node_find_offset): fix this
6156         function
6157
6158         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_widget):
6159         implement
6160
6161         * gtk/gtktreeview.c (gtk_tree_view_move_to): rename
6162         scroll_to_cell, matches TextView scroll functions better
6163         (gtk_tree_view_tree_to_widget_coords): new function
6164         (gtk_tree_view_widget_to_tree_coords): new function
6165         (gtk_tree_view_get_visible_rect): new function
6166         (gtk_tree_view_get_path_at_pos): accept negative coordinates
6167         (gtk_tree_view_draw_node_focus_rect): new function moved from
6168         draw_focus, also, use width of bin_window as width of the focus
6169         rect
6170         (gtk_tree_view_expand_row): fix bug where it didn't recognize
6171         already-expanded rows
6172         (gtk_tree_view_get_cell_rect): new function
6173         (gtk_tree_view_get_path_at_pos): return the click position
6174         relative to the passed-in cell
6175         (gtk_tree_view_set_expander_column): new function
6176
6177         * configure.in: remove gtk-config-2.0 chmod
6178
6179         * gtk/gtktextview.c (gtk_text_view_drag_motion): small cleanups,
6180         and properly handle drags with targets we don't understand
6181         (gtk_text_view_drag_end): don't stop scrolling, the source isn't
6182         scrolling anyway
6183         (gtk_text_view_drag_drop): stop scrolling here though, and set the
6184         mark invisible
6185
6186         * gtk/gtkdnd.c (gtk_drag_dest_find_target): export as a public
6187         function
6188         (gtk_drag_dest_get_target_list): new function
6189         (gtk_drag_dest_set_target_list): new function
6190         
6191         * gtk/gtktreeview.c: Add a bunch of drag-and-drop implementation
6192
6193         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): add fields
6194         related to drag-and-drop
6195
6196 2001-01-19  Alexander Larsson  <alexl@redhat.com>
6197
6198         * gdk/linux-fb/gdkprivate-fb.h:
6199         Define EMULATE_GDKFONT.
6200         Add extra pango_font stuff to GfkFontPrivate.
6201         
6202         * gdk/linux-fb/gdkdrawable-fb2.c:
6203         * gdk/linux-fb/gdkfont-fb.c:
6204         If EMULATE_GDKFONT defined, implement a slow lame GdkFont
6205         emulation using PangoFont.
6206
6207 2001-01-17  Havoc Pennington  <hp@pobox.com>
6208
6209         * gtk/gtkprogressbar.c, gtk/gtkprogressbar.h: Add "getters" for
6210         all the non-deprecated set_foo functions. Added missing object
6211         properties, and added g_object_notify() to setters. 
6212         Wrote docs.
6213         
6214 2001-01-18  Tor Lillqvist  <tml@iki.fi>
6215
6216         * gtk/gtkmain.c
6217         * gtk/gtkrc.c: (Win32) Use the new
6218         g_win32_get_package_installation_(sub)directory() functions.
6219
6220         * config.h.win32.in: New file.
6221         
6222         * config.h.win32: Removed.
6223
6224         * configure.in: Output config.h.win32.
6225
6226         * Makefile.am: Add it to EXTRA_DIST.
6227
6228         * gtk/gtk.def: Update.
6229
6230 Wed Jan 17 16:22:54 2001  Owen Taylor  <otaylor@redhat.com>
6231
6232         * gtk/gtklabel.c (gtk_label_size_request): Set the
6233         attributes onto the PangoLayout even if they are newly
6234         created from label->pattern.
6235
6236 Tue Jan  9 11:20:48 2001  Owen Taylor  <otaylor@redhat.com>
6237
6238         * gdk/x11/gdkdnd-x11.c: Remove unused variable.
6239
6240         * gtk/gtkdnd.c: Encapsulate storing and retrieving info
6241         structures in functions. Fixes bug where gtk_dataset_*
6242         was accidentally still being used in one place, causing
6243         every dest side event to be treated independently.
6244
6245         * gtk/gtkdnd.c: Remove last vestages of handling
6246         ::draw (fixes warning)
6247         
6248         * gtk/gtkentry.[ch]: Add drag and drop support.
6249
6250         * gtk/gtkdnd.[ch] gtk/gtktextview.c gtk/gtkentry.c: Add
6251         new function gtk_check_drag_threshhold() for checking
6252         to check if (dx,dy) has exceeded the threshhold for starting
6253         a drag and use it everywhere.
6254
6255 Mon Jan  8 11:58:05 2001  Owen Taylor  <otaylor@redhat.com>
6256
6257         * gtk+-2.0.pc.in gdk-pixbuf-2.0.pc.in (Cflags): Remove -I${includedir},
6258         add -I{includedir}/gtk-2.0.
6259
6260         * gtk/gtktreeview.[ch] gtktreemodelsort.[ch] gtknotebook.c
6261         gdk/gdk-pixbuf.h: Doc fixups.
6262         
6263         * gtk/gtkobject.h: Remove trailing , from enum
6264
6265 2001-01-17 Alexander Larsson <alexl@redhat.com> 
6266
6267         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_shadow_fb_draw_arc):
6268         Doh! Mixed up x and y.
6269
6270         * gdk/linux-fb/gdkglobals-fb.c:
6271         Removed gdk_fb_pointer_grab_window_events,
6272         added _gdk_fb_pointer_grab_owner_events and
6273         _gdk_fb_keyboard_grab_owner_events.
6274
6275         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab):
6276         Set all button mask if GDK_BUTTON_MOTION_MASK set. Send
6277         crossing events before grabbing. Set _gdk_fb_pointer_grab_owner_events.
6278         (gdk_fb_pointer_ungrab): Unset _gdk_fb_pointer_grab_owner_events
6279         Send crossing events after ungrab finished.
6280         (gdk_keyboard_grab): Set ..._owner_events
6281         (type_masks): Move out of function.
6282         (gdk_fb_other_event_window, gdk_fb_pointer_event_window,
6283         gdk_fb_keyboard_event_window): New functions, return the
6284         window an event should be targeted at. Handles grabs and
6285         event propagation. Can return NULL.
6286         (gdk_event_make): Remove event_mask checking. Now always
6287         returns an event.
6288                 
6289         * gdk/linux-fb/gdkkeyboard-fb.c:
6290         * gdk/linux-fb/gdkproperty-fb.c:
6291         * gdk/linux-fb/gdkselection-fb.c:
6292         Use new event_window/gdk_event_make() behaviour.
6293         
6294         * gdk/linux-fb/gdkmouse-fb.c:
6295         Use new event_window/gdk_event_make() behaviour.
6296         Only send motion events if in the same window.
6297         If grabbed, use cursor from window if sibling of grabbed
6298         window, and cursor from grabbed window otherwise.
6299
6300         * gdk/linux-fb/gdkprivate-fb.h:
6301         Update gdk_fb_window_send_crossing_events, gdk_event_make
6302         and grab varaible declarations. Add gdk_fb_*_event_window().
6303
6304         * gdk/linux-fb/gdkwindow-fb.c:
6305         Use new event_window/gdk_event_make() behaviour.
6306         Keep correct track of focus window.
6307         (gdk_window_set_events): Set all specific button motion masks
6308         if GDK_BUTTON_MOTION_MASK set.
6309
6310         * gtk/gtkdnd.c (gtk_drag_update):
6311         Free info->last_event if gdk_drag_motion returned FALSE.
6312
6313 2001-01-16  Tor Lillqvist  <tml@iki.fi>
6314
6315         * gdk/win32/gdkwindow-win32.c (gdk_window_show, gdk_window_hide):
6316         Eliminate redraws when input-only windows are shown or
6317         hidden. Thanks to jpe@archaeopteryx.com.
6318
6319 Tue Jan 16 13:13:13 GMT 2001  Tony Gale <gale@gtk.org>
6320
6321         * docs/faq/gtk-faq.sgml: FAQ update:
6322           - Update to bugzilla
6323           - Add GTK+ and security/SUID/SGID
6324           - Add DnD question
6325
6326 2001-01-16  Alexander Larsson  <alla@lysator.liu.se>
6327
6328         * gdk/linux-fb/gdkdnd-fb.c:
6329         Some cleanups.
6330         
6331 2001-01-15  Havoc Pennington  <hp@pobox.com>
6332
6333         * tests/testtreeview.c: add test stuff for CellRendererToggle
6334
6335         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_get_model): add this
6336         accessor
6337
6338         * gtk/gtkcellrenderertoggle.c: distinguish different event types,
6339         only toggle on button press (would do release like GtkButton, but
6340         we'd need implicit grab code for treeview cells)
6341
6342 2001-01-16  Tor Lillqvist  <tml@iki.fi>
6343
6344         * gdk/win32/gdkvisual-win32.c: Include <stdlib.h> for getenv().
6345
6346         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Don't use
6347         GDK_COLORMAP_PRIVATE_DATA on a potentially NULL GdkColormap.
6348
6349         * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Adapt calls
6350         to g_{locale,filename}_{to,from}_utf8 to match current API.
6351
6352         * gtk/makefile.msc.in (gtk_OBJECTS)
6353         * gtk/makefile.mingw.in (gtk_OBJECTS): Add gtkwindow-decorate.
6354
6355         * gtk/gtk.def: Update.
6356
6357 2001-01-15  Tor Lillqvist  <tml@iki.fi>
6358
6359         * gdk/win32/gdkevents-win32.c (synthesize_crossing_events): New
6360         implementaion that more closely mimics the events that an X server
6361         would generate. Especially, properly generate GDK_NOTIFY_VIRTUAL and
6362         GDK_NOTIFY_NONLINEAR_VIRTUAL crossing events. This makes buttons
6363         with nested preview widgets, for instance, more responsive when
6364         you move the mouse quickly into them.
6365         (find_window_for_pointer_event): Make it actually compile.
6366         (gdk_event_translate): Set send_event to the value of
6367         InSendMessage (). This doesn't really mean the same as X11's
6368         send_event flag, but is close enough, says jpe@archaeopteryx.com
6369
6370 2001-01-15  Alexander Larsson  <alexl@redhat.com>
6371
6372         * gdk/linux-fb/gdkdnd-fb.c:
6373         Implemented drag and drop.
6374         Seems to be mostly working. I sometimes get an assert from gtkdnd.c:2664
6375         when it tries to free and then copy the same event (info->last_event).
6376         I am not sure about why this happens, but will continue looking.
6377
6378 2001-01-15  Alexander Larsson  <alexl@redhat.com>
6379
6380         * gdk/linux-fb/gdkwindow-fb.c:
6381         Use gdk_window_invalidate_rect instead of
6382         gdk_window_invalidate_rect_clear to minimise flashing.
6383         When hiding windows you need to clear the root window though.
6384
6385 2001-01-15  Alexander Larsson  <alexl@redhat.com>
6386
6387         * gdk/linux-fb/gdkdrawable-fb2.c:
6388         For optization, add an full_shapes argument to gdk_fb_clip_region.
6389         If this is false, only the cliprects of the shapes are used.
6390
6391         * gdk/linux-fb/gdkprivate-fb.h:
6392         Export gdk_fb_window_peek_shape.
6393         Add full_shapes to gdk_fb_clip_region.
6394
6395         * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
6396         When moving a window, don't clear everything under the it, just the
6397         root window. Makes stuff faster and flash less.
6398         (gdk_window_get_pointer): Correctly handle offseted shapes, due to
6399         USE_CHILD_SHAPE. (gdk_fb_window_peek_shape): Return the correct
6400         offset of the shape.
6401         
6402
6403 2001-01-12  Havoc Pennington  <hp@redhat.com>
6404
6405         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): offset the 
6406         current invalid region, fixes redraw bug while scrolling the 
6407         text widget
6408
6409         * gtk/gtktextview.c, gtk/gtktextview.h:
6410         Rearrange the scrolling/validation/etc. code in a major way, 
6411         so it seems to make sense to me. Probably isn't genuinely that
6412         much better, but...
6413
6414         * gtk/gtktexttag.c (set_fg_color): fix name of property used for
6415         notifies
6416
6417         * gtk/gtktextmark.c (gtk_text_mark_get_left_gravity): new function
6418
6419 2001-01-12  Alexander Larsson  <alla@lysator.liu.se>
6420
6421         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_set_rotation):
6422         Hide mouse pointer while rotation. Show it afterwards.
6423
6424 2001-01-12  Alexander Larsson  <alexl@redhat.com>
6425
6426         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_clip_region): Take shaped
6427         windows in consideration when generating clip region.
6428
6429         * gdk/linux-fb/gdkfb.h:
6430         Huge HACK. Added GDK_FB_USE_CHILD_SHAPE.
6431
6432         * gdk/linux-fb/gdkprivate-fb.h:
6433         Add shape to GdkWindowFBDatat.
6434         exported gdk_fb_window_get_abs_shape().
6435         removed gdk_fb_draw_lines declaration.
6436
6437         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_impl_fb_init):
6438         Init shape to NULL. (gdk_fb_window_send_crossing_events): Don't
6439         send focus changes when there is a grabbed window.
6440         (gdk_window_get_pointer): Handle shaped windows.
6441         (gdk_fb_region_create_from_bitmap): Convert bitmap to region.
6442         (gdk_fb_window_peek_shape): Returns the shape for a window,
6443         handles GDK_FB_USE_CHILD_SHAPE.
6444         (gdk_fb_window_get_abs_shape): Returns the shape of the window,
6445         offseted to absolute positions. Handles GDK_FB_USE_CHILD_SHAPE.
6446         (gdk_window_shape_combine_mask): Implement.
6447
6448         * gtk/gtkwindow-decorate.c:
6449         HACK! Set GDK_FB_USE_CHILD_SHAPE on window->frame to make sure
6450         setting the shape of a window makes the window transparent.
6451
6452 2001-01-11  Havoc Pennington  <hp@redhat.com>
6453
6454         * gtk/gtktreemodelsimple.h: Oops, broke some macros
6455
6456 2001-01-10  Havoc Pennington  <hp@redhat.com>
6457
6458         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clear_attributes):
6459         add this function, bug 40251
6460
6461         * gtk/gtktreemodelsimple.h (GTK_TYPE_TREE_MODEL_SIMPLE): fix name
6462         of type macro   
6463
6464 2001-01-11  Alexander Larsson  <alexl@redhat.com>
6465
6466         * acconfig.h:
6467         Added ENABLE_SHADOW_FB
6468
6469         * configure.in:
6470         Added --disable-shadowfb
6471
6472         * gdk/linux-fb/gdkcursor-fb.c:
6473         Update shadowfb when updating cursor
6474
6475         * gdk/linux-fb/gdkdrawable-fb2.c:
6476         Added wrappers for shadowfb that calls  the normal drawable
6477         methods, but calls gdk_shadow_fb_update(bounding box) when
6478         GdkWindows are drawed to.
6479         Moved gdk_draw_glyphs implementation to _gdk_draw_glyphs
6480         which also returns the bounding box.
6481
6482         * gdk/linux-fb/gdkfb.h:
6483         Added GdkFBAngle type and gdk_fb_set_rotation declaration.
6484
6485         * gdk/linux-fb/gdkgeometry-fb.c:
6486         Update shadowfb when scrolling window.
6487
6488         * gdk/linux-fb/gdkglobals-fb.c:
6489         Add _gdk_fb_screen_angle.
6490         
6491         * gdk/linux-fb/gdkkeyboard-fb.c:
6492         Test code for screen rotation. Shift-F2 in the xlate driver
6493         rotates the screen.
6494
6495         * gdk/linux-fb/gdkmain-fb.c:
6496         Handle shadowfb. Add gdk_fb_set_rotation(). Remove CM and RP.
6497
6498         * gdk/linux-fb/gdkmouse-fb.c:
6499         Use fb_width/height instead of modeinfo.xres/yres.
6500
6501         * gdk/linux-fb/gdkprivate-fb.h:
6502         Added fb_men, fb_width, fb_height & fb_stride. When using
6503         shadow fb these can differ from the framebuffer stuff.
6504         Declarations for gdk_shadow_fb_update, gdk_shadow_fb_init,
6505         gdk_shadow_fb_stop_updates, gdk_fb_recompute_all,
6506         _gdk_fb_screen_angle. Removed CM, RP.
6507
6508         * gdk/linux-fb/gdkrender-fb.c:
6509         Added code for shadowfb handling and screen rotation using
6510         shadowfb.
6511
6512         * gdk/linux-fb/gdkwindow-fb.c:
6513         Use fb_mem, fb_stride, fb_width, fb_height.
6514         Added recompute_rowstride to reset the rowstride of all windows.
6515         Added gdk_fb_recompute_all() which recomputes rootwindow size,
6516         window abs positions and window rowstrides. Usefull when the
6517         rotation has changed.
6518
6519 Thu Jan 11 13:16:50 GMT 2001  Tony Gale <gale@gtk.org>
6520
6521         * docs/faq/gtk-faq.sgml: update to make web site updating easier
6522
6523 2001-01-10  Havoc Pennington  <hp@redhat.com>
6524
6525         * gtk/gtktreestore.c (gtk_tree_store_insert_before): handle case
6526         where sibling == iter
6527         (gtk_tree_store_insert_after): handle sibling == iter
6528         (gtk_tree_store_prepend): remove stamp checks
6529         (gtk_tree_store_insert_before): ditto
6530         (gtk_tree_store_append): ditto
6531         (gtk_tree_store_get_path): ditto
6532         (gtk_tree_store_get_value): ditto
6533         (gtk_tree_store_iter_has_child): ditto
6534         (gtk_tree_store_iter_n_children): ditto
6535         (gtk_tree_store_iter_nth_child): ditto
6536         (gtk_tree_store_insert_after): ditto
6537         (gtk_tree_store_is_ancestor): ditto
6538         (gtk_tree_store_iter_depth): ditto
6539         (gtk_tree_store_insert_before): assert that sibling's parent is
6540         the same as the passed-in parent
6541         (gtk_tree_store_insert_after): assert that sibling's parent is
6542         the same as the passed-in parent
6543
6544         
6545         * gtk/gtktreemodel.c (gtk_tree_model_get_first): new convenience 
6546         function to get the first iterator in a model
6547         
6548         * gtk/gtktreestore.c (gtk_tree_store_get_root_iter): remove,
6549         conventionally the "root" in this sense is just NULL afaict.
6550
6551         * gtk/gtkliststore.c (gtk_list_store_insert_before): handle case
6552         where sibling == iter
6553         (gtk_list_store_insert_after): handle case where sibling == iter
6554
6555         * tests/testtreeview.c (run_automated_tests): fairly lame basic
6556         automated tests for ListStore, TreeStore
6557
6558         * gtk/gtkliststore.c (gtk_list_store_remove): update tail pointer
6559         (gtk_list_store_insert): update tail pointer, and fix it to work
6560         (gtk_list_store_insert_before): update tail pointer, and fix it to work
6561         (gtk_list_store_append): use tail to be faster
6562         (gtk_list_store_prepend): fix it, update tail pointer
6563         (gtk_list_store_insert_after): fix it, update tail pointer
6564
6565         * gtk/gtkliststore.h (struct _GtkListStore): add tail pointer for 
6566         the list
6567
6568 2001-01-09  Havoc Pennington  <hp@redhat.com>
6569
6570         * gtk/gtklabel.c (gtk_label_expose): don't draw if label->layout
6571         is NULL due to a pending resize
6572
6573         * gtk/gtktreeview.c (gtk_tree_view_check_dirty): don't set the
6574         column width to values less than 1
6575
6576         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_width): clamp
6577         width to be between min/max width, and still set the width 
6578         even if autosize is turned on, so the tree view can use this 
6579         function in order to autosize.
6580         (gtk_tree_view_column_init): set initial width to 1 not 0
6581
6582         * gtk/gtktreeview.c (gtk_tree_view_size_request_buttons): use
6583         setter function to modify column width, so we get notification
6584         (gtk_tree_view_insert_iter_height): ditto
6585         (gtk_tree_view_calc_size): ditto
6586         (gtk_tree_view_check_dirty): ditto
6587
6588         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_class_init): Add
6589         properties to change all the interesting attributes of the tree
6590         view column.
6591         (gtk_tree_view_column_set_header_clickable): rename set_clickable
6592         (gtk_tree_view_column_get_clickable): add
6593         (gtk_tree_view_column_set_cell_renderer): don't unset the current
6594         attributes; assume a cell renderer with equivalent object
6595         properties has been swapped in. Do g_object_notify().
6596         (gtk_tree_view_column_set_visible): g_object_notify
6597         (gtk_tree_view_column_get_sizing): rename from get_col_type
6598         (gtk_tree_view_column_set_sizing): g_object_notify
6599         (gtk_tree_view_column_set_width): add g_object_notify
6600         (gtk_tree_view_column_set_min_width): ditto
6601         (gtk_tree_view_column_set_max_width): ditto
6602         (gtk_tree_view_column_set_title): ditto
6603         (gtk_tree_view_column_set_clickable): ditto
6604         (gtk_tree_view_column_set_widget): ditto
6605         (gtk_tree_view_column_set_justification): ditto
6606
6607 2001-01-09  Havoc Pennington  <hp@redhat.com>
6608
6609         * gtk/gtktreeview.c (gtk_tree_view_check_dirty): handle case where
6610         there are no rows in the model
6611
6612         * gtk/gtkliststore.c (gtk_list_store_iter_children): if parent is
6613         NULL, then return the start of the list
6614
6615         * gtk/gtktreeview.c (gtk_tree_view_setup_model): don't build tree
6616         if we can't get any rows from an empty model 
6617
6618         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): remove
6619         extraneous * after function pointer typedef usage
6620
6621         * Makefile.am: don't specify full path to cp and rm
6622
6623         * gtk/gtkcellrenderertextpixbuf.c
6624         (gtk_cell_renderer_text_pixbuf_get_size): check width/height !=
6625         NULL before dereferencing, fixes a segfault that happened from
6626         time to time
6627
6628         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render):
6629         use gdk_pixbuf_render_to_drawable_alpha() to get alpha channel,
6630         and reindent the function
6631         (gtk_cell_renderer_pixbuf_get_size): indentation
6632
6633         * gtk/gtkdialog.c (gtk_dialog_run): destroy main loop only after
6634         we quit it
6635         (gtk_dialog_add_buttons_valist): add g_return_if_fail
6636         (gtk_dialog_set_default_response): New function, to set default
6637         button
6638         (gtk_dialog_set_response_sensitive): New function, to set 
6639         sensitivity of buttons
6640
6641         * gtk/gtkcellrendererpixbuf.c
6642         (gtk_cell_renderer_pixbuf_get_property): allow getting a NULL pixbuf
6643         (gtk_cell_renderer_pixbuf_set_property): allow setting a NULL pixbuf
6644
6645         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_to_value):
6646         handle any G_TYPE_OBJECT subclass, not just the base class, and 
6647         also boxed types.
6648         (_gtk_tree_data_list_value_to_node): ditto
6649
6650         * gtk/gtkrbtree.c: Run _gtk_rbtree_test at strategic points if 
6651         --gtk-debug=tree
6652
6653         * gtk/gtkmain.c: add GTK_DEBUG_TREE
6654
6655         * gtk/gtkdebug.h: add GTK_DEBUG_TREE
6656
6657 2001-01-09  Tor Lillqvist  <tml@iki.fi>
6658
6659         * gdk/win32/gdkevents-win32.c: Implement better mouse
6660         capturing. Do use SetCapture(). Thanks to jpe@archaeopteryx.com.
6661         (find_window_for_pointer_event): New function.
6662         (gdk_event_translate): Use it when handling mouse events.
6663
6664 2001-01-09  Alexander Larsson  <alla@lysator.liu.se>
6665
6666         * configure.in:
6667         Added --with-included-loaders option
6668
6669         * gdk-pixbuf/Makefile.am:
6670         * gdk-pixbuf/gdk-pixbuf-io.c:
6671         Add support for including selected gdk-pixbuf loaders only.
6672
6673         * gtk/gtkwindow.c (gtk_window_set_frame_dimensions,
6674         gtk_window_set_has_frame):
6675         Added inline documentation.
6676
6677         * gdk/x11/gdkwindow-x11.c (gdk_window_get_decorations):
6678         * docs/reference/gdk/tmpl/windows.sgml:
6679         Added inline documentation.
6680
6681 Mon Jan  8 14:42:06 2001  Jonathan Blandford  <jrb@redhat.com>
6682
6683         * gtk/gtktreeview.c (gtk_tree_view_realize_buttons): Skip
6684         realizing buttons that have already been realized.
6685
6686 Mon Jan  8 14:06:29 2001  Jonathan Blandford  <jrb@redhat.com>
6687
6688         * tests/testtreeview.c (main): Show menu items before adding to
6689         option menu.
6690
6691         * gtk/gtktreeview.c (gtk_tree_view_set_model): Keep the columns
6692         around if we kill them.
6693
6694         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
6695         Return if we pass in a NULL model.
6696
6697 2001-01-08  Havoc Pennington  <hp@redhat.com>
6698
6699         * tests/testtreeview.c: hack on this some
6700
6701         * gtk/gtktreestore.c (gtk_tree_store_setv): rename
6702         gtk_tree_store_set_valist, v is for arrays, valist for varargs
6703         list
6704         (gtk_tree_store_getv): rename gtk_tree_store_get_valist
6705
6706         * gtk/gtkliststore.h: Add varargs set() and get() convenience
6707         functions
6708
6709 2001-01-08  Alexander Larsson  <alexl@redhat.com>
6710
6711         * gtk/gtkwindow-decorate.[hc]:
6712         * gtk/Makefile.am:
6713         New files. Contains an implementation of a minimal WM for
6714         linux-fb.
6715
6716         * gtk/gtkwindow.h:
6717         Add the possibility for GtkWindows to specify a frame. This
6718         is used for the window decoration code, but could concievably
6719         be used for X programs too (xmms style windows).
6720         GtkWindow->frame is the toplevel window if the window is framed.
6721         The signal frame_event gets all events that are targeted to
6722         GtkWindow->frame.
6723         (_gtk_window_constrain_size): Exported for usage by gtkwindow-decorate.c.
6724         
6725         * gtk/gtkwindow.c:
6726         Implement gtk_window_set_has_frame and gtk_window_set_frame_dimensions.
6727         Call out to gtkwindow-decorate.c for WM support in linx-fb.
6728
6729 2001-01-08  Alexander Larsson  <alexl@redhat.com>
6730
6731         * docs/README.linux-fb:
6732         Correct filename ~/.pangoft2_aliases
6733
6734         * gdk/gdkwindow.h:
6735         Added new function gdk_window_get_decorations.
6736
6737         * gdk/linux-fb/gdkfb.h:
6738         Removed _gdk_window_get_decorations declaration.
6739         Renamed _gdk_window_set_child_handler to
6740         gdk_fb_window_set_child_handler.
6741
6742         * gdk/linux-fb/gdkwindow-fb.c:
6743         Renamed _gdk_window_set_child_handler to
6744         gdk_fb_window_set_child_handler.
6745
6746         * gdk/x11/gdkwindow-x11.c:
6747         New function gdk_window_get_mwm_hints().
6748         Implemented gdk_window_get_decorations.
6749
6750         * docs/reference/gdk/tmpl/windows.sgml:
6751         * docs/reference/gdk/gdk-sections.txt:
6752         Added gdk_window_get_decorations docs.
6753         
6754 2001-01-08  Alexander Larsson  <alla@lysator.liu.se>
6755
6756         * gdk/linux-fb/gdkwindow-fb.c (_gdk_fb_window_find_focus,
6757         gdk_fb_window_find_focus, gdk_fb_send_focus_change,
6758         gdk_fb_window_send_crossing_events):
6759         Possibly send focus events when the mouse moves from one
6760         window to another.
6761
6762 2001-01-07  Tor Lillqvist  <tml@iki.fi>
6763
6764         * gdk/win32/gdkwindow-win32.c (gdk_window_set_title,
6765         gdk_window_new): Adapt calls to g_{locale,filename}_{to,from}_utf8
6766         to match current API.
6767
6768         * gdk/win32/gdkvisual-win32.c (gdk_visual_init): If a secret
6769         environment variable is set, don't call g_error when on a
6770         palettized (PseudoColor) display. Some people want to use GTK+ 
6771         in 256-colour mode even though works only partially.
6772
6773         * gdk/gdk.def
6774         * gtk/gtk.def
6775         * gtk/makefile.mingw.in: Update.
6776
6777 2001-01-05  Havoc Pennington  <hp@redhat.com>
6778
6779         * tests/testtreeview.c: hack on this a bit
6780
6781         * gtk/gtktextlayout.c (gtk_text_layout_class_init):
6782         s/GTK_RUN_LAST/G_SIGNAL_RUN_LAST
6783
6784         * gtk/gtktreemodelsimple.h (GTK_IS_TREE_MODEL_SIMPLE_CLASS): 
6785         was spelled incorrectly
6786         (GTK_IS_TREE_MODEL_SIMPLE): ditto
6787
6788         * gtk/gtktreeview.c (gtk_tree_view_set_headers_clickable): rename
6789         from gtk_tree_view_set_headers_active   
6790
6791         * gtk/gtktexttag.c:
6792         (gtk_text_tag_get_property): handle PROP_DIRECTION
6793         (gtk_text_tag_set_property): g_object_notify when we toggle the _set
6794         properties, bug 40235
6795
6796         * gtk/gtktextiter.c (gtk_text_iter_forward_to_delimiters): rename
6797         forward_to_line_end
6798
6799 Fri Jan  5 16:16:29 2001  Owen Taylor  <otaylor@redhat.com>
6800
6801         * gtk/{gtkcalender.c,gtkfilesel.c,gtkimcontext.c},
6802         modules/input/gtkimcontextxim.c: Adapt to new prototypes
6803         for unicode,locale,filename conversion functions.
6804
6805 2001-01-05  Havoc Pennington  <hp@redhat.com>
6806
6807         * gtk/gtktextiter.c (gtk_text_iter_ends_line): this function was
6808         broken if called on the first position in the buffer.
6809
6810         * gtk/gtktextlayout.c (line_display_index_to_iter): fix
6811         forward_to_delimiters to be called only if we aren't already at
6812         the delimiters.
6813
6814 2001-01-05  Havoc Pennington  <hp@redhat.com>
6815
6816         * demos/gtk-demo/main.c (create_tree): Oops, that didn't link. Fix.
6817
6818 2001-01-05  Alexander Larsson  <alexl@redhat.com>
6819
6820         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_drawable_finalize): free
6821         colormap in here. Sync from X port.
6822         (gdk_fb_set_colormap): allow the colormap to be NULL if you like.
6823         Sync from X port.
6824         (gdk_fb_clip_region): Comment out g_warning about empty clip region.
6825         This happens now and then, and i don't think it is a bug.
6826         (gdk_fb_draw_polygon): Correctly add extra point if startpoint
6827         != endpoint.
6828         (gdk_fb_draw_lines): Don't draw dashed lines if line_style is
6829         GDK_LINE_SOLID.
6830
6831         * gdk/linux-fb/gdkfont-fb.c: Return bogus GdkFont that has
6832         some of the fields filled in at least.
6833
6834         * gdk/linux-fb/miwideline.c: The widths argument to miLineArcI, and
6835         miLineArcD is no more, remove it from the function definition.
6836
6837 2001-01-04  Havoc Pennington  <hp@redhat.com>
6838
6839         * gtk/gtktreeselection.c (gtk_tree_selection_get_tree_view): add
6840         this
6841
6842         * gtk/gtktreemodel.h (struct _GtkTreeIter): rename fields to
6843         user_data instead of tree_node
6844
6845         * gtk/gtktreeprivate.h (TREE_VIEW_COLUMN_WIDTH): rename from
6846         TREE_VIEW_COLUMN_SIZE
6847
6848         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): rename
6849         "size" field to "width" finishes bug 40061
6850
6851         * gtk/gtkcellrenderer.h: Use GtkCellRendererState instead of guint
6852         for bitfields, bug 40268
6853
6854 2001-01-04  Havoc Pennington  <hp@redhat.com>
6855
6856         Rename some stuff:
6857         
6858         s/gtk_tree_view_column_set_size/gtk_tree_view_column_set_width/g;
6859
6860         s/GtkModelSimple/GtkTreeModelSimple/g;
6861         s/GTK_MODEL_SIMPLE/GTK_TREE_MODEL_SIMPLE/g;
6862         s/gtk_model_simple/gtk_tree_model_simple/g;
6863         s/gtkmodelsimple/gtktreemodelsimple/g;
6864
6865         s/gtk_tree_view_column_set_header_active/gtk_tree_view_column_set_header_clickable/g;
6866
6867         s/GtkTreeViewColumnType/GtkTreeViewColumnSizing/g;
6868         s/column_set_col_type/column_set_sizing/g;
6869
6870         s/GtkTreeSelectionType/GtkTreeSelectionMode/g;
6871         s/gtk_tree_selection_set_type/gtk_tree_selection_set_mode/g;
6872
6873         s/GtkCellRendererType/GtkCellRendererState/g;
6874         
6875         * gtk/gtkcellrenderertoggle.c: remove _ macro, include gtkintl.h
6876         (gtk_cell_renderer_toggle_class_init): change "state" property to
6877         "active", to match GtkToggleButton
6878         (gtk_cell_renderer_toggle_get_active): new function, bug
6879         40269
6880         (gtk_cell_renderer_toggle_set_active): new function
6881         (gtk_cell_renderer_toggle_set_property): route changes to toggle
6882         state through gtk_cell_renderer_set_active
6883
6884 Thu Jan  4 15:46:18 2001  Jonathan Blandford  <jrb@redhat.com>
6885
6886         * gtk/gtkmodelsimple.c: Changed a bunch of boxed types to pointers
6887         temporarily until they work again.  Brought up to date with
6888         changes in the model.
6889         * gtk/gtkmodelsimple.h: Brought up to date with changes in the
6890         model.
6891
6892 2001-01-04  Havoc Pennington  <hp@redhat.com>
6893
6894         * gtk/gtktextlayout.c (line_display_index_to_iter): if index is
6895         equal to the line length, then position iterator before paragraph 
6896         separators. Fixes crash reported by Mikael Hermansson when
6897         pressing left arrow from the start of a line.   
6898
6899         * gtk/gtktextiter.c (iter_set_from_byte_offset): Add g_error
6900         about byte indexes off the end
6901         (iter_set_from_char_offset): add g_error about char offsets
6902         off the end
6903
6904 2001-01-03  Havoc Pennington  <hp@redhat.com>
6905
6906         * gtk/gtktextbtree.c: Adapt to uscore-ification of gtktextiterprivate
6907
6908         * gtk/gtktextdisplay.c (gtk_text_layout_draw): remove use 
6909         of private functions; remove inclusion of private headers.
6910
6911         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_at_line): Add this 
6912         function, so we don't need private functions in gtktextdisplay.c
6913
6914         * gtk/gtktextiterprivate.h: underscore-ification
6915
6916         * gtk/gtkwidget.c: Clean up a bunch of docs that said "INTERNAL"
6917         to instead say "only useful to implement widgets"
6918
6919         * gtk/gtkenums.h (GtkMovementStep): Rename GTK_MOVEMENT_CHARS,
6920         GTK_MOVEMENT_POSITIONS to GTK_MOVEMENT_LOGICAL_POSITIONS,
6921         GTK_MOVEMENT_VISUAL_POSITIONS. Resolves bug 40249.
6922
6923         * gdk/x11/gdkwindow-x11.c (gdk_window_impl_x11_set_colormap):
6924         This function was completely broken
6925
6926         * gtk/testtext.c (line_numbers_expose): use gtk_paint_layout
6927
6928         * gtk/gtkvscale.c (gtk_vscale_draw_value): use gtk_paint_layout
6929
6930         * gtk/gtkvruler.c (gtk_vruler_draw_ticks): use gtk_paint_layout
6931
6932         * gtk/gtklabel.c (gtk_label_expose): use gtk_paint_layout
6933
6934         * gtk/gtkhscale.c (gtk_hscale_draw_value): use gtk_paint_layout
6935
6936         * gtk/gtkhruler.c (gtk_hruler_draw_ticks): use gtk_paint_layout
6937
6938         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_render): use
6939         gtk_paint_layout
6940
6941         * gtk/gtkaccellabel.c (gtk_accel_label_expose_event): use
6942         gtk_paint_layout
6943
6944         * gtk/gtkstyle.h: Add draw/paint expander to draw tree expanders.
6945         Progress on bug 40103. Add draw_layout to draw a PangoLayout.
6946         (struct _GtkStyleClass): Remove draw_cross, draw_oval, draw_ramp,
6947         which were not implemented.     
6948
6949         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): Add
6950         insert_pixbuf signal. Rename delete_text to delete_range since it
6951         also deletes pixbufs and child anchors. This almost closes bug
6952         40245 (still need to deal with child anchors)
6953
6954         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Add
6955         insert_pixbuf, change signal names as appropriate, change types of
6956         signals taking marks/tags to have the specific type, not just
6957         G_TYPE_OBJECT
6958         
6959         * gtk/gtkmain.c (gtk_get_current_event_state): Add this function; 
6960         closes bug 40051
6961
6962         * gtk/gtkoptionmenu.c (gtk_option_menu_set_history): clean up
6963         unnecessary remove_contents() call
6964         (gtk_option_menu_class_init): add a "changed" signal, closes
6965         bug 40039
6966         (gtk_option_menu_update_contents): emit "changed" if the 
6967         active menu item changes
6968
6969         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done): fix bad
6970         cast to GtkObject, reported by Jonas Borgstrom
6971         (gdk_pixbuf_loader_finalize): don't close the loader on finalize;
6972         we can't do stuff with side effects in finalize. Instead, spew a
6973         warning if the loader isn't closed.
6974
6975         * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_finalize): free
6976         colormap in here, non-X ports probably need to sync to this change
6977
6978         * gdk/x11/gdkdrawable-x11.c (gdk_x11_set_colormap): remove 
6979         assertion that colormap != NULL, you can set the colormap to NULL
6980         if you like.
6981         
6982         * Makefile.am: remove gtk-config-2.0
6983
6984         * configure.in: Use pkg-config to locate GLib. Remove
6985         separated-out GMODULE_LIBS, GMODULE_CFLAGS; these were not used,
6986         and the gmodule libs/cflags were in GLIB_LIBS GLIB_CFLAGS anyhow.
6987         Use pkg-config to locate Pango. Output correct Pango libs to
6988         gdk-2.0.pc.in. Fix test for FREETYPE_CONFIG (typo fix).
6989
6990         * Makefile.am (pkgconfig_DATA): install only target-specific pc
6991         files
6992         (install-data-local): symlink gtk+-2.0.pc and gdk-2.0.pc to the
6993         X11 pc files
6994
6995         * gtk+-2.0.pc.in (Requires): require the GDK for the current target
6996         unref from here
6997
6998 2001-01-03  Alexander Larsson  <alla@lysator.liu.se>
6999
7000         * configure.in:
7001         Change GTK_NO_CHECK_CASTS to G_DISABLE_CAST_CHECKS.
7002
7003 Tue Jan  2 16:23:05 2001  Owen Taylor  <otaylor@redhat.com>
7004
7005         * gtk/gtktextlayout.c
7006         (gtk_text_layout_move_iter_to_previous_line): Fix unitialized
7007         variable when moving back onto a single line.
7008
7009 2001-01-01  Havoc Pennington  <hp@redhat.com>
7010
7011         * gtk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
7012
7013         * gdk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
7014
7015         * configure.in (LIBTOOL_EXPORT_OPTIONS): define
7016         LIBTOOL_EXPORT_OPTIONS with options to control symbol export
7017
7018 2001-01-01  Havoc Pennington  <hp@redhat.com>
7019
7020         * gtk/gtktexttagprivate.h: uscore-prepend all the stuff in here.
7021
7022         * gtk/gtk-boxed.defs (GtkTextAttributes): Add boxed type for 
7023         GtkTextAttributes
7024
7025         * gtk/gtktexttag.c: Fix up GtkTextAttributes copying to close bug 
7026         #40246
7027         (gtk_text_attributes_copy_values): rename from 
7028         gtk_text_attributes_copy
7029         (gtk_text_attributes_copy): a more standard GTK copy function, 
7030         which returns a new object
7031
7032 2001-01-01  Havoc Pennington  <hp@redhat.com>
7033
7034         * gtk/gtktreeview.c: Adapt to GtkTreeSelection changes
7035         
7036         * gtk/gtktreeselection.c (_gtk_tree_selection_set_tree_view):
7037         don't fill in tree_view->priv->selection, kind of an unexpected
7038         side effect
7039
7040         * gtk/gtkcellrenderertext.c: Remove definition of _ and include
7041         gtkintl.h
7042         
7043         * gtk/gtkcellrenderer.c: Remove definition of _ and include
7044         gtkintl.h
7045         (gtk_cell_renderer_get_property): remove calls to g_value_init
7046
7047         * gtk/gtkcellrendererpixbuf.c: Remove definition of _ and include
7048         gtkintl.h
7049
7050         * gtk/gtkcellrenderertextpixbuf.c: Remove definition of _ macro
7051         and include gtkintl.h
7052         (gtk_cell_renderer_text_pixbuf_class_init): remove spaces from
7053         property names
7054
7055         * gtk/gtktreeselection.c (_gtk_tree_selection_new): rename, return
7056         GtkTreeSelection
7057         (_gtk_tree_selection_new_from_with_view): rename, return
7058         GtkTreeSelection
7059         (_gtk_tree_selection_set_tree_view): rename with uscore
7060         (gtk_tree_selection_get_selected): fill in the "model" out param
7061         first, so it gets filled in even if we return at the top of the 
7062         function
7063         (gtk_tree_selection_real_select_all): add a comment and an else{}
7064         to clarify this a bit
7065         (gtk_tree_selection_real_unselect_all): add the same else{}
7066
7067         * gtk/gtktreeselection.h: Rename new, new_with_tree_view, and
7068         set_tree_view to have underscore prefixes, move them to the
7069         private header, fix return type of new_with_tree_view
7070         (struct _GtkTreeSelection): mark struct
7071         fields private  
7072
7073         * gtk/gtktreemodel.c (gtk_tree_model_get_flags): return
7074         GtkTreeModelFlags, not a guint
7075         (gtk_tree_path_prev): return gboolean not gint
7076         (gtk_tree_path_up): return gboolean not gint
7077
7078         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): make get_flags
7079         return GtkTreeModelFlags, not a guint
7080
7081         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_finalize): check
7082         that child model is non-null before unrefing it
7083         (g_value_int_compare_func): make this a qsort compare func, not 
7084         a boolean predicate
7085
7086         * gtk/gtktreemodelsort.h: rename gtk_tree_model_set_sort_column,
7087         (add -umn to the end), and mark it unimplemented
7088         (gtk_tree_model_sort_resort): remove, this wasn't implemented, and 
7089         I don't see what it's for - doesn't the model always sort itself?
7090         (gtk_tree_model_sort_set_compare): this had the wrong signature
7091
7092         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_attributes):
7093         Fix the docs to say that it destructively replaces existing
7094         attributes (previously said that it added attributes).
7095         (gtk_tree_view_column_set_visible): canonicalize bool before
7096         equality testing. Also, check for realization before
7097         hiding/showing the tree_column->window; if this window could exist
7098         before realization, then it's busted and needs fixing, we can't 
7099         create GDK resources pre-realization. Also, remove
7100         superfluous queue_resize(), since set_size() does that for us.
7101         (gtk_tree_view_column_set_col_type): check realization before 
7102         using tree_column->window
7103
7104         * gtk/gtktreedatalist.c: fix filename in copyright notice
7105
7106 2000-12-31  Havoc Pennington  <hp@pobox.com>
7107
7108         * gtk/gtktextview.c: Rearrange all the
7109         scroll-while-dragging-or-selecting code to be different, not
7110         necessarily better. ;-)
7111         (gtk_text_view_scroll_to_mark): Change this
7112         function to take within_margin as a fraction instead of a pixel
7113         value, and to take alignment arguments (indicating where to align 
7114         the mark inside the visible area)
7115         
7116         * gtk/testtextbuffer.c (fill_buffer): fix bad cast of GtkTextTag
7117         to GtkObject
7118
7119         * gtk/gtktextiter.c (gtk_text_iter_set_line_offset): change
7120         behavior so that offsets past the end of the line are not 
7121         allowed, and an offset equal to the line length moves the iterator
7122         to the next line
7123         (gtk_text_iter_set_line_index): make parallel change
7124         (gtk_text_iter_get_bytes_in_line): add this function
7125         
7126         * gtk/gtktextbtree.c (_gtk_text_line_byte_locate): change handling
7127         of byte indexes off the end of the line; byte index at the end of
7128         the line now returns FALSE and doesn't fill in the requested
7129         values, byte index past the end of the line is an error.  Also,
7130         don't allow -1 offset anymore, since its meaning is unclear.
7131
7132         This change exposes some bug in visual cursor motion, where we
7133         end up with a huge invalid byte index; needs fixing. Symptom of 
7134         bug is a crash when you hit up arrow.
7135         
7136         (_gtk_text_line_char_locate): match the change to byte_locate
7137
7138         * gtk/gtktextiter.c (find_by_log_attrs): Handle iteration backward
7139         from start of line properly. fixes bug reported by Mikael
7140         Hermansson where backspace would delete all text before the
7141         cursor.
7142
7143 2000-12-30  Tor Lillqvist  <tml@iki.fi>
7144
7145         * gdk/win32/gdkwindow-win32.c
7146         (gdk_window_impl_win32_get_visible_region): New function, as in
7147         the X11 backend.
7148         (gdk_window_new, gdk_window_set_title): Use g_locale_from_utf8()
7149         instead of duplicating the same code here.
7150
7151         * gdk/win32/gdkwin32.h (GDK_COLORMAP_PRIVATE_DATA): Use
7152         GDK_COLORMAP macro.
7153
7154         * gdk/win32/gdkevents-win32.c (gdk_event_funcs): Use NULL as
7155         destroy function.
7156         (gdk_event_translate): Use GDK_COLORMAP_PRIVATE_DATA to correctly
7157         access that.
7158
7159         * gtk/gtk.def: Update.
7160
7161         * gtk/makefile.mingw.in: Use glib-genmarshal from $(GLIB)/gobject.
7162
7163 2000-12-30  Havoc Pennington  <hp@pobox.com>
7164
7165         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Set the system
7166         colormap on input only windows, to avoid special cases all over
7167         the code for these windows.
7168
7169 2000-12-26  Tor Lillqvist  <tml@iki.fi>
7170
7171         * gdk/win32/gdkvisual-win32.c (gdk_visual_init): Call g_error if
7172         we are on a palettized display ("PseudoColor" in X11), as the code
7173         for that doesn't work anyway, and never has.
7174
7175 2000-12-22  Alexander Larsson  <alexl@redhat.com>
7176
7177         * gdk/linux-fb/gdkkeyboard-fb.c (xlate_io):
7178         Don't use isprint() for chars > 255.
7179
7180 2000-12-21  Havoc Pennington  <hp@redhat.com>
7181
7182         * tests/testtreeview.c: more work
7183
7184 2000-12-21  Alexander Larsson  <alexl@redhat.com>
7185
7186         * docs/README.linux-fb:
7187         Update the docs to the new pangoft2 way.
7188
7189 2000-12-21  Alexander Larsson  <alexl@redhat.com>
7190
7191         * configure.in:
7192         For linux-fb get the pangoft2 cflags and libs. This needs a recent
7193         pango version.
7194         Remove modules/linux-fb/Makefile.
7195
7196         * gdk/linux-fb/gdkdrawable-fb2.c:
7197         Render glyphs using freetype.
7198
7199         * gdk/linux-fb/gdkfb.h:
7200         Add new fb-specific functions needed for managing windows.
7201
7202         * gdk/linux-fb/gdkmain-fb.c:
7203         Remove gdk_font_init/fini() calls.
7204
7205         * gdk/linux-fb/gdkpango-fb.c:
7206         Remove old implementation. Use pangoft2 instead.
7207
7208         * gdk/linux-fb/gdkprivate-fb.h:
7209         Remove PangoFBFont and related stuff.
7210
7211         * gdk/linux-fb/gdkwindow-fb.c:
7212         Implement drawable->get_visible_region.
7213         Implement support for _gdk_window_set_child_handler () and
7214         _gdk_window_get_decorations().
7215
7216         * modules/Makefile.am:
7217         Remove linux-fb subdir.
7218
7219         * modules/linux-fb/*:
7220         Removed all.
7221         
7222 2000-12-20  Jonathan Blandford  <jrb@redhat.com>
7223
7224         * gtk/gtkcellrenderer*.c (::get_property): remove g_value_init
7225         calls, as they are no longer needed.
7226
7227         * gtk/gtktreemodelsort.c: Fix up the comparison code.
7228         
7229         * gtk/gtktreemodel.h: Start work on ::reordered signal.  Need to
7230         figure out how to emit a signal on an interface.
7231
7232 2000-12-20  Havoc Pennington  <hp@redhat.com>
7233
7234         * tests: new directory to contain tests, gtk/test* should move
7235         here sometime (with appropriate on-cvs-server hackery)
7236
7237         * tests/testtreeview.c, tests/Makefile.am: a test
7238         
7239         * configure.in (AC_OUTPUT): add tests/Makefile
7240
7241         * gtk/gtktexttag.c (gtk_text_tag_get_property): Add "invisible"
7242         and "invisible_set" which were missing
7243
7244         * gtk/gtkrbtree.h: some cheesy indentation fix
7245         
7246 2000-12-20  Alexander Larsson  <alexl@redhat.com>
7247
7248         * gtk/gtkinvisible.c (gtk_invisible_realize):
7249         Attach the style to the window so that the style it is not
7250         leaked when unrealizing the window.
7251
7252 2000-12-18  Havoc Pennington  <hp@redhat.com>
7253
7254         * gtk/gtktextview.c (gtk_text_view_delete_from_cursor): do
7255         begin/end user action where appropriate
7256         (gtk_text_view_commit_handler): add begin/end user action
7257
7258         * gtk/gtktextbuffer.c: add begin/end user action signals, and
7259         bracket interactive operations with begin/end user action pair.
7260         
7261         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): remove
7262         "interactive" arg from insert_text and delete_text signals.
7263         Add begin_user_action, end_user_action signals
7264         (gtk_text_buffer_begin_user_action): 
7265         (gtk_text_buffer_end_user_action): New functions to delimit 
7266         a user-visible action
7267
7268         * gtk/gtkmarshal.list: update to reflect changes to gtktextbuffer
7269         signals.
7270         
7271 2000-12-18  Havoc Pennington  <hp@redhat.com>
7272
7273         * gdk/gdkevents.c (gdk_event_get_state): wow, that implementation
7274         was pretty non-working.
7275
7276         * gtk/testtext.c (fill_file_buffer): make this a bit more robust
7277         by passing the length to g_utf8_validate().
7278
7279 2000-12-16  Havoc Pennington  <hp@pobox.com>
7280
7281         * gtk/gdk-pixbuf-loader.h, gtk/gdk-pixbuf-loader.c: 
7282         Port to GObject, can go back in gdk-pixbuf after setting up 
7283         a gdk-pixbuf-marshal.h header over there.
7284
7285         * gtk/gtktreeview.c: s/SEPERATOR/SEPARATOR/g;
7286         (gtk_tree_view_class_init): specify GTK_TYPE_ADJUSTMENT for signal
7287         args
7288         (gtk_tree_view_init): don't unset GTK_NO_WINDOW, it shouldn't be
7289         set
7290         (gtk_tree_view_realize_buttons): don't gtk_widget_show() buttons
7291         here, do it when we create the buttons later
7292         (gtk_tree_view_realize_buttons): add some g_return_if_fail 
7293         (gtk_tree_view_map): paranoia checks that column->button is shown 
7294         and unmapped
7295         (gtk_tree_view_size_request): only request visible children.
7296         Move header size calculation in here, for cleanliness, and 
7297         to maintain invariants for child widgets if we eventually 
7298         let users set different children inside the buttons
7299         (gtk_tree_view_map_buttons): factor out code to map buttons,
7300         since it was being called several times
7301         (gtk_tree_view_size_allocate_buttons): move_resize the drag
7302         windows instead of just moving them; their height may change 
7303         if we allow random widgets in there, or the theme changes.
7304         (gtk_tree_view_size_allocate): move button size allocation 
7305         above emitting the scroll signals, to ensure a sane state when we
7306         hit user code
7307         (gtk_tree_view_button_release): remove queue_resize after
7308         tree_view_set_size(), set_size() will handle any resize queuing
7309         that's needed
7310         (gtk_tree_view_focus_in): just queue a draw, don't fool with
7311         draw_focus goo
7312         (gtk_tree_view_focus): use gtk_get_current_event() and
7313         gdk_event_get_state()
7314         (gtk_tree_view_deleted): don't queue_resize() after calling set_size()
7315         (gtk_tree_view_build_tree): fix a "if (foo); {}" bug - i.e. remove
7316         semicolon
7317         (gtk_tree_view_create_button): show the button here
7318         (gtk_tree_view_button_clicked): actually emit the clicked signal
7319         on the column
7320         (_gtk_tree_view_set_size): return right away if the size is
7321         unchanged, as a cheesy optimization
7322         (gtk_tree_view_setup_model): rename set_model_realized to 
7323         setup_model to match the flag that indicates whether we've 
7324         called it
7325         (gtk_tree_view_get_hadjustment): create adjustment if it doesn't
7326         exist, because set_scroll_adjustment does that and it shouldn't
7327         matter what order you call these in
7328         (gtk_tree_view_get_vadjustment): ditto
7329         (gtk_tree_view_set_headers_visible): canonicalize the bool, 
7330         for paranoia
7331         (gtk_tree_view_set_headers_visible): call
7332         gtk_tree_view_map_buttons() instead of using cut-and-paste code
7333         (gtk_tree_view_append_column): clarify whether the return value
7334         is the count of columns before or after, and do the increment 
7335         separately from the return statement so you can tell from the code.
7336         (gtk_tree_view_remove_column): ditto
7337         (gtk_tree_view_insert_column): ditto
7338         (gtk_tree_view_get_column): remove g_return_if_fail for columns
7339         outside the existing range, the docs say that outside-range
7340         columns are allowed, so we handle them as documented. (Presumably
7341         this allows a nice loop with column != NULL as test.)
7342         (gtk_tree_view_move_to): document what 0.0, 0.5, 1.0 alignments 
7343         mean (left/right/center etc.).
7344         (gtk_tree_view_collapse_all): only queue a draw if we're mapped
7345         (gtk_tree_view_expand_row): add docs
7346         (gtk_tree_view_collapse_row): add docs
7347
7348         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clicked): new
7349         function to emit the clicked signal on a column
7350         
7351         * gdk/gdkevents.c (gdk_event_get_state): new function, to get the
7352         state of an event
7353         (gdk_event_get_time): don't treat GDK_SCROLL 
7354         as a button event, remove default case from switch so gcc 
7355         will whine if we don't explicitly handle all event types
7356
7357         * gtk/gtktreeselection.h: added some FIXME 
7358         
7359         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): rename
7360         "columns" to "n_columns" and "column" to "columns" for clarity
7361
7362 2000-12-16  Havoc Pennington  <hp@pobox.com>
7363         
7364         * gtk/gtktextiter.c: General cleanup of the log attr iteration
7365         stuff. This should make e.g. the delete key work again in the
7366         text widget...
7367         (gtk_text_iter_forward_cursor_positions): handle negative count
7368         (gtk_text_iter_backward_cursor_positions): handle negative count
7369         (gtk_text_iter_forward_word_ends): handle negative count
7370         (gtk_text_iter_backward_word_starts): handle negative count
7371
7372         * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktexttag.h,
7373         gtk/gtktexttag.c, gtk/gtktexttagtable.h, gtk/gtktexttagtable.c, 
7374         gtk/gtktextbuffer.h, gtk/gtktextbuffer.c: Convert everything to 
7375         GObject. No doubt will cause breakage.
7376
7377         * demos/gtk-demo/textview.c: remove hacks around
7378         non-GObject-ification of the text objects
7379
7380         * demos/gtk-demo/main.c (main): use g_object_set() to manipulate 
7381         the text tag
7382         
7383 2000-12-14  Havoc Pennington  <hp@pobox.com>
7384
7385         * configure.in: only AC_DEFINE(HAVE_XFT) if we actually determined
7386         that we have Xrender
7387
7388 Thu Dec 14 20:22:31 2000  Owen Taylor  <otaylor@redhat.com>
7389
7390         * gdk/{gdkdrawable.[ch],gdkpixmap.c,gdkwindow.c,x11/gdkwindow.c}:
7391         Add two virtualized functions gdk_drawable_get_clip_region - to
7392         get the clip region when drawing.
7393         
7394         * gdk/gdkwindow.c (gdk_window_invalidate_rect): Rewrite to simple
7395         use invalidate_region.
7396
7397         * gdk/gdkwindow.c (gdk_window_invalidate_region): Clip to visible
7398         region.
7399
7400         * acconfig.h configure.in: Check for Xft. For now, assume
7401         that if Xft is found, Pango was compiled with Xft support
7402         as well.
7403
7404         * gdk/gdkcolor.h gdk/x11/gdkcolor-x11.c: Add 
7405         gdk_colormap_query_color().
7406         
7407         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_glyphs): Draw
7408         with Xft if appropriate.
7409
7410         * gdk/x11/gdkpango-x11.c (gdk_pango_context_get): Create
7411         a pangoxft context if we have XFT and the environment
7412         variable GD_USE_XFT is set.
7413         
7414         * gdk/x11/gdkx.h (struct _GdkGCX11): Cache the fg_pixel
7415         and also possibly an XftDraw structure.
7416
7417         * gtk/gtkfontsel.c: Handle the case where the font from the
7418         style doesn't match any of the fonts a bit better.
7419         
7420         * gtk/testgtk.c: Add tabs between directional segments for
7421         hebrew/arabic test. (Not really necessary, just a little
7422         prettier.)
7423
7424 2000-12-14  Havoc Pennington  <hp@redhat.com>
7425
7426         * gtk/testtext.c (fill_file_buffer): fix unicode validation when
7427         reading a file
7428
7429 2000-12-14  Havoc Pennington  <hp@redhat.com>
7430
7431         * gtk/gtktextbtree.c (_gtk_text_btree_validate_line): remove
7432         unused call to get_last_line()
7433
7434         * gtk/gtkobject.c (gtk_object_add_arg_type): add G_TYPE_POINTER
7435         here until boxed is working (and maybe after that - we should
7436         really not gratuitously break old code)
7437
7438         * gtk/gtktexttag.c (gtk_text_tag_class_init): add commented-out
7439         specific types for font_desc and tabs args, move them to
7440         GTK_TYPE_POINTER for now, waiting on g_param_spec_boxed() to get 
7441         fixed. Move GdkColor args to GTK_TYPE_POINTER also.
7442
7443         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): temporarily
7444         use GTK_TYPE_POINTER for signal signatures as a hack-around
7445
7446         * gtk/gtk-boxed.defs: Add boxed types for PangoFontDescription and
7447         PangoTabArray
7448
7449         * gtk/gtktextlayout.c (line_display_iter_to_index): 
7450         make static
7451         (line_display_index_to_iter): make static
7452
7453         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
7454         to marshal a string not a boxed
7455
7456         * gtk/gtkmarshal.list: add marshaller for GtkTextBuffer:insert_text
7457
7458         * gtk/testtext.c (fill_file_buffer): don't use g_utf8_next_char
7459         since the UTF-8 isn't validated yet
7460
7461         * gtk/gtktextsegment.c (char_segment_check_func): don't require
7462         lines to end in '\n'
7463         
7464         * gtk/gtktextview.c (gtk_text_view_move_cursor): update to use
7465         forward_to_delimiters, and grapheme boundaries
7466         (gtk_text_view_delete_from_cursor): properly handle non-newline
7467         delimiters, and grapheme boundaries
7468
7469         * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): rename
7470         to gtk_text_iter_forward_to_delimiters, and make it work properly
7471         if empty lines end with a character other than '\n'
7472
7473         * gtk/gtktextiter.h, gtk/gtktextiter.c: Add movement by cursor
7474         position
7475
7476 2000-12-15  Tor Lillqvist  <tml@iki.fi>
7477
7478         * gdk/makefile.{mingw.in,msc} (gdk_OBJECTS): Add gdkkeys.
7479
7480         * gtk/gtk.def
7481         * gdk/gdk.def: Update.
7482
7483         * gdk/win32/gdkmain-win32.c
7484         * gdk/win32/gdkkeys-win32.c: New file. Move some functions from
7485         gdkmain-win32.c here.
7486
7487         * gdk/win32/makefile.mingw.in (all): No need to make
7488         gdk-win32res.o here, the makefile one step up will call us to make
7489         it.
7490
7491         * gdk/win32/makefile.{mingw.in,msc} (gdk_win32_OBJECTS): Add
7492         gdkkeys-win32.
7493
7494         * gdk/win32/gdkcolor-win32.c: Silence gcc -Wall.
7495
7496         * gdk/win32/gdkevents-win32.c (gdk_events_init): Remove leftover
7497         call to g_source_add().
7498
7499         * gdk/win32/gdkgc-win32.c (BitmapToRegion): Plug memory
7500         leak. Thanks to Andreas Kemnade.
7501
7502 2000-12-13  Havoc Pennington  <hp@pobox.com>
7503
7504         * gtk/gtktextbtree.h: Remove double _ in front of some functions
7505
7506         * gtk/gtktext*.[hc]: update accordingly
7507         
7508 2000-12-13  Havoc Pennington  <hp@pobox.com>
7509
7510         * gtk/gtktextbtree.h: Put _ in front of every function in this 
7511         header file
7512
7513         * gtk/gtktext*.[hc]: update to reflect renamed btree functions
7514
7515 2000-12-13  Alex Larsson  <alexl@redhat.com>
7516
7517         * gdk/linux-fb/gdkmouse-fb.c (mouse_devs):
7518         Add support for ps2 intellimouse.
7519
7520         * gdkkeyboard-fb.c:
7521         Move shift-F1 repaint handling to xlate handler only.
7522         
7523         * docs/README.linux-fb:
7524         Add imps2 to docs.
7525         Document the new refresh keys.
7526         
7527 Tue Dec 12 23:46:44 2000  Tim Janik  <timj@gtk.org>
7528
7529         * gtk/stock-icons/Makefile.am: doh, this was broken beyond believe.
7530
7531         * gtk/gtkbox.c: change property types from (u)long to (u)int for
7532         ::position and ::padding.
7533
7534         * gtk/gtkcontainer.c: make ::border_width an INT property.
7535
7536         * gtk/gtkpacker.c: make ::position an INT property.
7537
7538         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed):
7539         guard against NULL h/v scrollbars, since this is used at construction
7540         time.
7541
7542         * gtk/gtkclist.[hc]: nuked gtk_clist_construct(), implemented
7543         internal gtk_clist_constructor().
7544
7545         * gtk/gtkctree.[hc]: nuked gtk_ctree_construct(), implemented
7546         gtk_ctree_constructor().
7547
7548         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): property
7549         ::pulse_step should use ARG_PULSE_STEP, not ARG_FRACTION.
7550
7551         * docs/reference/Makefile.am: fun stuff, disabled docs generation
7552         again, gtk-scan.c needs to introspec paramspecs, not GtkAgs.
7553
7554         * gtk/gtkwidget.[hc]:
7555         removed gtk_widget_setv(), gtk_widget_getv(), gtk_widget_newv()
7556         and gtk_widget_get().
7557         (gtk_widget_new): use g_object_new_valist().
7558         (gtk_widget_set): use g_object_set_valist().
7559
7560         * gtk/gtkobject.[hc]:
7561         removed gtk_object_arg_get_info(), gtk_object_getv(),
7562         gtk_object_query_args(), gtk_object_newv(),
7563         gtk_object_class_add_signals(),
7564         gtk_object_class_user_signal_new(),
7565         gtk_object_class_user_signal_newv(),
7566         gtk_object_arg_set(), gtk_object_arg_get(),
7567         gtk_object_args_collect(),
7568         gtk_object_default_construct(),
7569         gtk_object_constructed(),
7570         GTK_CONSTRUCTED and GTK_OBJECT_CONSTRUCTED().
7571         removed nsignals, signals and n_args members from GtkObjectClass.
7572         (gtk_object_new): use g_object_new_valist().
7573         (gtk_object_set): use g_object_set_valist().
7574         (gtk_object_get): use g_object_get_valist().
7575         
7576         * gtk/gtkcompat.h: define gtk_object_default_construct().
7577         
7578         * gtk/gtktypeutils.c (gtk_type_new): create constructed objects via
7579         g_object_new().
7580
7581         * gtk/*.c: removed gtk_object_class_add_signals() from class_init()
7582         fucntions, cleaned up method assignments (make sure your structures
7583         are setup properly before calling out). removed all GTK_CONSTRUCTED
7584         hacks ;)
7585
7586 Tue Dec 12 11:52:16 2000  Owen Taylor  <otaylor@redhat.com>
7587
7588         * gtk/gtkclist.c (gtk_clist_optimal_column_width): Fix 
7589         off-by-one error in checks. (Dave Lambert)
7590
7591 2000-12-12  Alexander Larsson  <alexl@redhat.com>
7592
7593         * gdk/linux-fb/gdkkeyboard-fb.c (xlate_close, raw_close):
7594         Don't free gdk_fb_keyboard twice.
7595
7596 Tue Dec 12 08:24:42 2000  Tim Janik  <timj@gtk.org>
7597
7598         * gtk/testgtk.c:
7599         (create_tooltips): 
7600         (create_statusbar): get rid of object_signal:: GtkObject argument uses,
7601         use GObject swapped_signal:: properties instead.
7602
7603         * gtk/gtkcellrenderertoggle.c: 
7604         * gtk/gtkcellrenderertextpixbuf.c: 
7605         * gtk/gtkcellrenderertext.c: 
7606         * gtk/gtkcellrendererpixbuf.c: 
7607         * gtk/gtkcellrenderer.c:
7608         * gtk/gtktreeviewcolumn.c: s/[sg]et_param/[sg]et_property/, fixed
7609         missing warnings for invalid property ids, install properties
7610         with g_object_class_install_property() now.
7611         
7612         * gtk/gtksignal.c:
7613         (gtk_signal_emit): let g_signal_emit_valist() collect the values for us.
7614         
7615 Wed Oct 25 14:17:43 2000  Owen Taylor  <otaylor@redhat.com>
7616         
7617         * gtk/gtkwidget.[ch] (gtk_widget_is_focus): Add a function
7618         to determine if a window is the focus widget within
7619         its toplevel.
7620
7621         * gtk/gtkcontainer.[ch]: Fix the return type of ::focus
7622         to be boolean.
7623
7624         * gtk/gtkcontainer.c (gtk_container_real_focus): Move handling 
7625         of the case where the container CAN_FOCUS to here instead
7626         of having it in each individual move-the-focus place.
7627
7628         * gtk/gtkcontainer.c: Rewrite handling of left-right and up-down
7629         focusing to be geometric in a much more obvious sense. Arrowing
7630         around is still non-intuitive because it isn't perfect and
7631         because entries, etc, grab the arrow keys, but it at least
7632         usually will do what you expect now.
7633         
7634         * gtk/gtknotebook.[ch]: Many cleanups. Moved docs inline in this
7635         file.
7636
7637         * gtk/gtknotebook.c: Change tabs to be a single item in
7638         the focus chain. Make movement of focus on tabs with arrow
7639         keys wrap around.
7640         
7641         * gtk/gtknotebook.c (gtk_notebook_find_child): Add
7642         CHECK_FIND_CHILD macro to give informative error messages
7643         instead of silent returns.
7644
7645         * gtk/gtknotebook.c (gtk_notebook_init): Set the RECEIVES_DEFAULT 
7646         flag since we handle GdkReturn on the tabs.
7647
7648         * gtk/gtknotebook.c (gtk_notebook_expose_tabs): Invalidate
7649         windows rather than sending expose events directly.
7650
7651         * gtk/gtknotebook.[ch] docs/Changes-2.0.txt: Move structure 
7652         definition for GtkNotebookPage into .c file, since it is private.
7653
7654         * gtk/testgtk.c (create_notebook): Add option for 
7655         testing borderless notebook.
7656
7657         * gtk/testgtk.c (page_switch): Removed egregious poking
7658         around in GTK+ internals.
7659
7660         * docs/widget-system.txt: Remove references to GTK_REDRAW_PENDING.
7661
7662         * gtk/gtkclist.[ch]: Remove key press handler, handle focusing
7663         properly through gtk_clist_focus. Make the title headers a
7664         single item in the tab-focus chain, and make left-right wrap
7665         around.
7666
7667         * gtk/gtkwindow.c (gtk_window_focus): Add a custom
7668         focus method so that wrapping around works properly.
7669
7670         * gtk/gtktreeview.c: Remove calls to gtk_container_set_focus_child() - 
7671         that is handled for the widget now. 
7672
7673 Mon Dec 11 11:41:12 2000  Owen Taylor  <otaylor@redhat.com>
7674
7675         * gtk/gtkinvisible.c (gtk_invisible_init): Flag invisible
7676         widgets as TOPLEVEL.
7677
7678         * gtk/gtkwidget.c (gtk_widget_queue_resize): Don't assume
7679         TOPLEVEL widgets are containers.
7680
7681         * gtk/gtkinvisible.h: Remove useless include.
7682
7683 2000-12-11  Havoc Pennington  <hp@redhat.com>
7684
7685         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): 
7686         Handle chopping off \r\n and 0x2029 in addition to \n before
7687         passing to PangoLayout
7688
7689         * gtk/gtkimcontextsimple.c
7690         (gtk_im_context_simple_get_preedit_string): 
7691         return an empty string if no match is pending
7692
7693         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): add
7694         assertion that the returned preedit string was sane
7695
7696         * gtk/gtktext*.[hc], gtk/testtext.c, gtk/testtextbuffer.c:
7697         s/gtk_text_iter_next_char/gtk_text_iter_forward_char/g;
7698         s/gtk_text_iter_prev_char/gtk_text_iter_backward_char/g;
7699
7700 Mon Dec 11 10:02:26 2000  Owen Taylor  <otaylor@redhat.com>
7701
7702         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_finalize): 
7703         Fix up finalizer to chain to its parent.
7704
7705 2000-12-11  Alexander Larsson  <alexl@redhat.com>
7706
7707         * docs/README.linux-fb (GDK_KEYBOARD_TYPE):
7708         Clearified the difference between the keyboard types. Wrote a note
7709         about the magic sysrq key to get out of raw mode.
7710
7711 2000-12-09  James Henstridge  <james@daa.com.au>
7712
7713         * gdk/linux-fb/gdkmouse-fb.c (GdkFBMouseDevice): add prot struct
7714         member to hold masks for detecting the start of a protocol packet.
7715         (mouse_devs): add packet start masks for ps2 and ms device types.
7716         Left the mask for fidmour blank, as I have no idea what it should
7717         be.
7718         (handle_mouse_io): skip bytes until we get to the start of a
7719         packet.  My Logitech mouse seems to be passing an extra NULL pad
7720         byte, and GPM does a similar thing here.
7721         (gdk_fb_mouse_ms_open): changed error message to not say psaux, as
7722         this is the ms mouse driver.
7723         (gdk_fb_mouse_ms_packet): fix up button handling, which was
7724         completely broken except for button1.  It was checking the wrong
7725         bit in the packet for the status of the right mouse button, and
7726         wrongly assuming right == button2 rather than 3.  I fixed that and
7727         also added support for middle button (button2).
7728
7729 2000-12-08  Havoc Pennington  <hp@redhat.com>
7730
7731         * gtk/gtktextbtree.c (gtk_text_btree_insert): fix breakage here
7732         that cause a segfault on text insertion
7733
7734         * gtk/gtktextchild.c (gtk_text_child_anchor_queue_resize): fix 
7735         warning
7736
7737         * gtk/gtktextiter.c (test_log_attrs): use
7738         _gtk_text_buffer_get_line_log_attrs to speed things up a bit
7739
7740         * gtk/gtktextbuffer.c (_gtk_text_buffer_get_line_log_attrs): 
7741         Get log attrs for a line, using a cache stored on the buffer
7742         
7743         * gtk/gtkcolorsel.h (GTK_COLOR_SELECTION_GET_CLASS): fix typo,
7744         reported by Jeff Franks
7745
7746 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
7747
7748         * gdk/linux-fb/gdkmouse-fb.c (gdk_fb_mouse_ms_open):
7749         /dev/ttyS0 -> /dev/mouse
7750
7751 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
7752
7753         * gdk/linux-fb/gdkfont-fb.c (gdk_fontset_load):
7754         Added dummy gdk_fontset_load.
7755
7756 2000-12-08  Alexander Larsson  <alexl@redhat.com>
7757
7758         * docs/README.linux-fb:
7759         * docs/Makefile.am:
7760         Initial GtkFB docs.
7761         
7762         * gdk/linux-fb/Makefile.am:
7763         Define GDK_DATA_PREFIX.
7764
7765         * gdk/linux-fb/gdkmain-fb.c:
7766         Fix typo.
7767         Change default display to /dev/fb0.
7768
7769         * gdk/linux-fb/gdkpango-fb.c:
7770         Add $(prefix)/share/fonts/ to font path.
7771         
7772 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
7773
7774         * gdk/linux-fb/gdkkeyboard-fb.c:
7775         New file containing the abstracted keyboard driver. Most code
7776         taken from gdkinput-ps2.c
7777
7778         * gdk/linux-fb/gdkinput-ps2.c:
7779         Removed file.
7780         
7781         * gdk/linux-fb/Makefile.am:
7782         Added gdkkeyboard-fb.c, removed gdkinput-ps2.c.
7783
7784         * gdk/linux-fb/gdkcolor-fb.c:
7785         display->fb was renamed to display->fb_fd.
7786
7787         * gdk/linux-fb/gdkcursor-fb.c:
7788         gdk_mouse_get_info -> gdk_fb_mouse_get_info
7789
7790         * gdk/linux-fb/gdkinput.c:
7791         Moved gdk_input_init here from gdkinput-ps2.c
7792
7793         * gdk/linux-fb/gdkmain-fb.c:
7794         display->fb was renamed to display->fb_fd.
7795         Now the tty and the console is opened here instead
7796         of in the keyboard driver. Also check GDK_VT to see what
7797         tty to open.
7798         Move gdk_beep () here from gdkinput-ps2.c
7799         gdk_mouse_get_info -> gdk_fb_mouse_get_info
7800
7801         * gdk/linux-fb/gdkmouse-fb.c:
7802         Add header.
7803         gdk_mouse_get_info -> gdk_fb_mouse_get_info
7804         Return correct keyboard modifiers.
7805         GDK_MOUSETYPE -> GDK_MOUSE_TYPE for consistancy
7806
7807         * gdk/linux-fb/gdkprivate-fb.h:
7808         Add tty and vt info to display.
7809         Add orignal modeinfo storage to display
7810         Update global functions
7811
7812         * gdk/linux-fb/gdkwindow-fb.c:
7813         Added gdk_fb_window_find_focus().
7814         gdk_mouse_get_info -> gdk_fb_mouse_get_info
7815
7816 2000-12-07  Havoc Pennington  <hp@pobox.com>
7817
7818         * gdk/x11/gdkkeys-x11.c (gdk_keymap_lookup_key): fix name of 
7819         function, noticed by Alex
7820
7821 2000-12-06  Elliot Lee  <sopwith@redhat.com>
7822
7823         * configure.in: Detect freetype properly
7824
7825         * modules/basic/Makefile.am, gdk/linux-fb/Makefile.am: Make use of
7826         above.
7827
7828 2000-12-06  Alexander Larsson  <alexl@redhat.com>
7829
7830         * gdk/linux-fb/Makefile.am:
7831         Add gdkmouse-fb.c
7832         
7833         * gdk/linux-fb/gdkmouse-fb.c:
7834         New file. Abstracted the mouse drivers a bit.
7835
7836         * gdk/linux-fb/gdkcursor-fb.c:
7837         The cursor hide/show functions was moved here from gdkinput-ps2.c.
7838
7839         * gdk/linux-fb/gdkinput-ps2.c:
7840         Removed old mouse handling code. Moved cursor handling code
7841         to gdkcursor-fb.c, moved gdk_fb_window_send_crossing_events() to
7842         gdkwindow-fb.c. gdk_input_get_mouseinfo was renamed to
7843         gdk_mouse_get_info.
7844
7845         * gdk/linux-fb/gdkmain-fb.c:
7846         Pass NULL pointers for x,y in gdk_mouse_get_info call.
7847
7848         * gdk/linux-fb/gdkprivate-fb.h:
7849         Removed public gdk_fb_find_common_ancestor, added and renamed
7850         functions for the new mouse handling code.
7851
7852         * gdk/linux-fb/gdkwindow-fb.c:
7853         Moved gdk_fb_window_send_crossing_events here. added global
7854         variable gdk_fb_window_containing_pointer. made
7855         gdk_fb_find_common_ancestor static. gdk_input_get_mouseinfo was
7856         renamed to gdk_mouse_get_info.
7857
7858 2000-12-06  Alexander Larsson  <alexl@redhat.com>
7859
7860         * gdk/linux-fb/gdkevents-fb.c:
7861         Update to match latest gmain/gsource changes.
7862
7863         * gdk/linux-fb/gdkinput-ps2.c:
7864         Bogus gdk_keymap_get_entries_for_keycode implementation so that
7865         it links. Will be implemented later.
7866
7867 2000-12-03  Havoc Pennington  <hp@pobox.com>
7868
7869         * gdk/Makefile.am: add gdkkeys.[hc]
7870
7871         * gdk/gdkkeys.h, gdk/gdkkeys.c: Move all the keyval stuff to these
7872         files from gdk.h, gdk.c; add GdkKeymap type and operations on it.
7873
7874         * acconfig.h, configure.in: add checks and command line options
7875         for XKB
7876
7877         * gdk/x11/gdkkeys-x11.c: Implement the above functions
7878         
7879         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Put the keycode
7880         and group in the key event
7881
7882         * gdk/gdkevents.h (struct _GdkEventKey): Add a hardware_keycode
7883         field with the low-level hardware key code, and a group
7884         field with the keyboard group
7885
7886         * gdk/x11/gdkprivate-x11.h: include config.h for HAVE_XKB,
7887         and declare a couple globals used for keymap handling
7888         
7889         * gtk/gtkimcontextsimple.c: Implement ISO 14755 input method,
7890         hold down Shift-Control and type a hex number to get a Unicode 
7891         character corresponding to the hex number
7892         (gtk_im_context_simple_get_preedit_string): Fix cursor position
7893         (return bytes not chars)
7894
7895 2000-12-05  Elliot Lee  <sopwith@redhat.com>
7896
7897         * gdk/gdkcolor.h: Make GdkColor specify element sizes
7898         to avoid waste on 64-bit platforms.
7899
7900 Tue Dec  5 15:49:31 2000  Owen Taylor  <otaylor@redhat.com>
7901
7902         * INSTALL: Fix link to PNG home, remove reference
7903         to fribidi.
7904
7905         * gdk/x11/gdkevents-x11.c: Fix up for new GMain API.
7906         
7907         * gdk/win32/gdkevents-win32.c: Fix up for new GMain API. (Not
7908         tested.)
7909
7910         * gtk/gtkcheckmenuitem.c: Permanently turn on
7911         always_show_toggle.
7912
7913         * gtk/gtkclist.c (gtk_clist_get_pixtext): Allow mask to 
7914         be NULL. (Vladimir Klebanov, #26545)
7915
7916         * gtk/gtkspinbutton.c (gtk_spin_button_insert_text): Fix 
7917         some signed/unsigned comparison problems. (#6510,
7918         David Kaelbling)
7919
7920         * gtk/gtkwidget.[ch] (gtk_widget_is_ancestor): Change
7921         return type to boolean (Oskar Liljeblad, #18648)
7922
7923 2000-12-05  Alexander Larsson  <alexl@redhat.com>
7924
7925         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_display_new):
7926         Remove bogus colormap setting.
7927
7928 2000-12-05  Alexander Larsson  <alexl@redhat.com>
7929
7930         * gdk/linux-fb/gdkcolor-fb.c:
7931         More complete colormap handling. Now GdkRGB work in 8 bpp modes.
7932
7933         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_image):
7934         Must set colormap.
7935         
7936 Tue Dec  5 13:17:53 GMT 2000  Tony Gale <gale@gtk.org>
7937
7938         * docs/tutorial/gtk-tut.sgml: DND updates
7939
7940 2000-12-05  Alexander Larsson  <alla@lysator.liu.se>
7941
7942         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
7943         Remove old debug g_warning().
7944         (gdk_fb_draw_drawable): The src argument can be either a wrapper
7945         or an implementation, just pass the implementation to draw_drawable_2.
7946         
7947         * gdk/linux-fb/gdkprivate-fb.h:
7948         Added GDK_IS_DRAWABLE_IMPL_FBDATA()
7949
7950         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
7951         clear and invalidate area when window is destroyed.
7952         (send_map_events): Remove old commented out code.
7953
7954 2000-12-05  Alexander Larsson  <alexl@redhat.com>
7955
7956         * gdk/linux-fb/gdkpango-fb.c:
7957         Use italic instead of oblique in font aliases.
7958         
7959         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic,
7960         _gdk_fb_gc_calc_state): Support GDK_XOR, add g_warning for
7961         other unsupported functions.
7962
7963 2000-12-04  Havoc Pennington  <hp@redhat.com>
7964
7965         * gtk/gtkpaned.c (gtk_paned_expose): fix this to be sane
7966
7967         * gtk/gtkvpaned.c (gtk_vpaned_expose): Add an expose handler
7968
7969         * gtk/gtkhpaned.c (gtk_hpaned_expose): Add an expose handler
7970
7971         * gtk/gtknotebook.c (gtk_notebook_draw_tab): put in a temporary 
7972         hack to avoid infinite loops (synthetic expose event) - 
7973         Owen has more appropriate fixes in a branch he'll check in later.
7974
7975         * gtk/gtktextiter.c (gtk_text_iter_ends_line): handle paragraph
7976         separator, CR, and CRLF as line ends
7977
7978         * gtk/gtktextbtree.c (gtk_text_btree_insert): on insertion, break
7979         into lines using pango_find_paragraph_boundary(); other bits of
7980         the widget are still going to be broken if the boundary isn't '\n'
7981         though
7982
7983 2000-12-04  Alexander Larsson  <alexl@redhat.com>
7984
7985         * gdk/linux-fb/gdkfont-fb.c (gdk_text_width): Divide size by 2, not
7986         multiply.
7987
7988         * gdk/linux-fb/gdkpango-fb.c:
7989         Copied some 26.6 scaling macros from pango to clean up the rounding.
7990         (pango_fb_font_get_glyph_info): Correct sign on x value.
7991
7992         * gdk/linux-fb/gdkprivate-fb.h:
7993         Removed unreferenced external functions.
7994
7995         * modules/linux-fb/Makefile.am: Use ` instead of '.
7996
7997         * modules/linux-fb/basic.c:
7998         Remove dead code. In particular the dummy lang engine which broke all
7999         pango layouts in GtkFB. Don't include tables-big.i anymore.
8000
8001         * modules/linux-fb/tables-big.i:
8002         Upgrade to latest version from pango. Left for reference, basic_ranges
8003         moved to basic.c.
8004         
8005 2000-12-04  Havoc Pennington  <hp@redhat.com>
8006
8007         Fix bugs Alex found:
8008         
8009         * gtk/gtktooltips.c (gtk_tooltips_force_window): nuke connection
8010         to "draw"
8011
8012         * gtk/gtkdnd.c (gtk_drag_highlight): nuke connection to "draw"
8013
8014         * gtk/gtkcolorsel.c (palette_new): nuke connection to "draw"
8015
8016         * gtk/gtklistitem.c (gtk_list_item_expose): Put the old _draw() 
8017         implementation in here, apparently the expose() implementation was
8018         dead code.
8019
8020 2000-12-04  Alexander Larsson  <alexl@redhat.com>
8021
8022         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
8023         Return positive descent.
8024
8025 2000-12-02  Havoc Pennington  <hp@pobox.com>
8026
8027         * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove "draw" virtual
8028         method and signal
8029         
8030         * gtk/gtkwidget.c (gtk_widget_draw): Now just queues a draw then
8031         calls gdk_window_process_updates() to push the exposes through
8032         (gtk_widget_class_init): No more draw signal, no
8033         gtk_widget_real_draw()  
8034         
8035         * gtk/gtkbin.c (gtk_bin_draw): remove
8036
8037         * gtk/gtkbox.c (gtk_box_draw): remove
8038
8039         * gtk/gtkbutton.c (gtk_button_draw): remove
8040
8041         * gtk/gtkcalendar.c (gtk_calendar_draw): remove
8042
8043         * gtk/gtkcheckbutton.c (gtk_check_button_draw): remove
8044
8045         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_draw): remove
8046
8047         * gtk/gtkclist.c (gtk_clist_draw): remove
8048
8049         * gtk/gtkentry.c (gtk_entry_draw): remove
8050
8051         * gtk/gtkeventbox.c (gtk_event_box_draw): remove
8052
8053         * gtk/gtkfixed.c (gtk_fixed_draw): remove
8054
8055         * gtk/gtkframe.c (gtk_frame_draw): remove
8056
8057         * gtk/gtkhandlebox.c (gtk_handle_box_draw): remove
8058
8059         * gtk/gtkhpaned.c (gtk_hpaned_draw): remove
8060
8061         * gtk/gtklayout.c (gtk_layout_draw): remove
8062
8063         * gtk/gtklist.c (gtk_list_draw): remove
8064
8065         * gtk/gtklistitem.c (gtk_list_item_draw): remove
8066
8067         * gtk/gtkmenu.c (gtk_menu_draw): remove
8068
8069         * gtk/gtkmenubar.c (gtk_menu_bar_draw): remove
8070
8071         * gtk/gtkmenuitem.c (gtk_menu_item_draw): remove
8072
8073         * gtk/gtknotebook.c (gtk_notebook_draw): remove
8074
8075         * gtk/gtkoptionmenu.c (gtk_option_menu_draw): remove
8076
8077         * gtk/gtkpacker.c (gtk_packer_draw): remove
8078
8079         * gtk/gtkrange.c (gtk_range_draw): remove
8080
8081         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_draw): remove
8082
8083         * gtk/gtkspinbutton.c (gtk_spin_button_draw): remove
8084
8085         * gtk/gtktable.c (gtk_table_draw): remove
8086
8087         * gtk/gtktearoffmenuitem.c (gtk_tearoff_menu_item_draw): remove
8088
8089         * gtk/gtktext.c (gtk_text_draw): remove
8090
8091         * gtk/gtktextview.c (gtk_text_view_draw): remove
8092
8093         * gtk/gtktogglebutton.c (gtk_toggle_button_draw): remove
8094
8095         * gtk/gtktoolbar.c (gtk_toolbar_draw): remove
8096
8097         * gtk/gtktree.c (gtk_tree_draw): remove
8098
8099         * gtk/gtktreeitem.c (gtk_tree_item_draw): remove
8100
8101         * gtk/gtktreeview.c (gtk_tree_view_draw): remove
8102
8103         * gtk/gtkviewport.c (gtk_viewport_draw): remove
8104
8105         * gtk/gtkvpaned.c (gtk_vpaned_draw): remove
8106
8107         * gtk/gtkvscale.c (gtk_vscale_draw): remove
8108
8109         * gtk/gtkwindow.c (gtk_window_draw): remove
8110
8111 2000-20-01  Anders Carlsson  <andersca@gnu.org>
8112
8113         * gtk/gtktogglebutton.c (gtk_toggle_button_draw): Fix bug when
8114         a GtkToggleButton is both insensitive and active, it was being
8115         drawn by the GtkButton draw handler which doesn't check the
8116         state. Now it's calling gtk_toggle_button_paint instead.
8117         
8118 2000-12-01  Havoc Pennington  <hp@redhat.com>
8119
8120         * gtk/gtktextdisplay.c (gtk_text_layout_draw): don't create
8121         dangling pointers to the appearance attributes from the 
8122         line display
8123
8124         * gdk/gdkdraw.c (gdk_drawable_get_image): allow negative
8125         width/height to mean "full width/height of drawable"
8126
8127         * gtk/gtktextview.h, gtk/gtktextview.c: Implement double/triple
8128         click to select word/line
8129         
8130         * gtk/gtktextiter.c (test_log_attrs): include paragraph delimiters 
8131         when getting log attrs. Get a slice, so that pixmaps and stuff
8132         are properly handled.
8133
8134         * gtk/gtktextbuffer.c (paste): Fix pasting to work properly if you
8135         paste into the selection (replaces selection now, previously
8136         crashed or added to selection). Reveals longstanding btree bug -
8137         select multiple lines, middle-click on the selection, boom. This
8138         isn't related to my changes though.
8139
8140         * gtk/gtkentry.c (gtk_entry_move_forward_word): Update to reflect
8141         PangoLogAttrs changes
8142         (gtk_entry_move_backward_word): ditto
8143
8144         * gtk/gtktextlayout.h, gtk/gtktextlayout.c: Make the iter motion
8145         functions return bool whether the iter moved onto a
8146         dereferenceable position.
8147  
8148         * gtk/gtktextview.h, gtk/gtktextview.c: Add a bunch of public
8149         functions for motion in terms of display lines.
8150
8151         * gtk/gtktextmark.c (gtk_text_mark_get_buffer): Add function to
8152         get the buffer a mark is inside
8153         
8154 2000-12-01  Alexander Larsson  <alexl@redhat.com>
8155
8156         * gdk/linux-fb/Makefile.am:
8157         * modules/linux-fb/Makefile.am:
8158         Freetype 2 final uses freetype-config
8159
8160         * gdk/linux-fb/gdkpango-fb.c:
8161         Upgrade to use Freetype 2 final.
8162         More flexible support for font aliases, this also fixes a bug with
8163         GtkFontSelector, as the aliases must be visible in the font/family list,
8164         or GtkFontSelector reads uninitialized memory.
8165
8166 2000-11-30 Hidetoshi Tajima  <tajima@eng.sun.com>
8167
8168         * modules/input/gtkimcontextxim.c (setup_im): Add NULL argument to
8169         XGetIMValues to properly terminate variable argument list, and do
8170         NULL return check for ic_values and xim_styles.
8171
8172         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset):
8173         Restore preedit state after XmbResetIC().
8174         
8175         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_get_ic):
8176         XvaCreateNestedList() should take XvaNestedList, but not
8177         XvaNestedList*.
8178
8179         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset,
8180         preedit_draw_callback, preedit_caret_callback): Match
8181         "preedit-changed" signal name to "preedit_changed" to be
8182         consistent to the spec.
8183
8184         * gtk/gtkimcontextsimple.c (check_table):
8185         Match "preedit-changed" to "preedit_changed" to be consistent
8186         to the spec.
8187
8188 Thu Nov 30 23:03:04 2000  Owen Taylor  <otaylor@redhat.com>
8189
8190         * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Properly handle
8191         gc->clip_region == NULL>
8192
8193 2000-11-30  Tor Lillqvist  <tml@iki.fi>
8194
8195         Changes by Hans Breuer:
8196         
8197         * gdk/win32/gdkwindow-win32.c (gdk_window_set_geometry_hints):
8198         Dont't use negative width and height as max_hints. This fixes
8199         Owen's recent testgtk changes for win32.
8200
8201         * gdk/win32/gdkgc-win32.c (gdk_win32_hdc_get,
8202         gdk_win32_hdc_release): These are exported and may be called with
8203         other drawable types than our GdkDrawableImplWin32 (?).
8204
8205         * gdk/gdkwindow.c: Backing store appears to work on Windows now,
8206         so always #define USE_BACKING_STORE.
8207
8208         * gtk/gtktextdisplay.c (render_layout_line): Use g_print instead
8209         of printf for debugging output.
8210
8211         * gtk/gtktextlayout.c (allocate_child_widgets): Ditto.
8212         
8213         * gtk/gtktextview.c (gtk_text_view_child_allocated): Ditto.
8214
8215         * gtk/gtkmain.h (GTKMAIN_C_VAR): Win32 fix for dllimport
8216         declaration.
8217
8218         * gtk/gtktexttypes.h: Ditto.
8219
8220         * gtk/gtklabel.c (gtk_label_set_markup_with_accel): Return a value
8221         (GDK_VoidSymbol) also if in case of arg check failure.
8222
8223         * gtk/gtkimcontextsimple.c
8224         (gtk_im_context_simple_get_preedit_string): Don't assign cursor
8225         position to the pointer, but to the variable it points to.
8226
8227         * gtk/makefile.msc.in (DEFINES): Define GTK_VERSION.
8228
8229         * gtk/gtk.def: Updates.
8230
8231 2000-11-29  Elliot Lee  <sopwith@redhat.com>
8232
8233         * gtk/gtkmodelsimple.c: Inherits from GTK_TYPE_OBJECT, not
8234         GTK_TYPE_TREE_MODEL.
8235
8236 2000-11-29  Alexander Larsson  <alexl@redhat.com>
8237
8238         * gdk/linux-fb/gdkfont-fb.c (gdk_font_from_description):
8239         Set the size of the font from the description.
8240         (gdk_text_width): Gross hack that calculates the width
8241         of text by text_length * size/2. This is necessary because
8242         GtkLabel does some ugly gtk_string_width call to calculate
8243         an good size.
8244         (linux-fb/gdkprivate-fb.h): Removed unused field FT_Face.
8245
8246 Wed Nov 29 13:39:19 GMT 2000  Tony Gale <gale@gtk.org>
8247
8248         * docs/tutorial/gtk-tut.sgml: DND updates
8249
8250 2000-11-29  Alexander Larsson  <alexl@redhat.com>
8251
8252         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_clear_area):
8253         If you pass width or height == 0 to gdk_window_clear_area they
8254         should be calculated from the window size.
8255
8256 2000-11-29  Alexander Larsson  <alexl@redhat.com>
8257
8258         * gdk/linux-fb/gdkinput-ps2.c (move_pointer): If there is
8259         a grab, but no grab-cursor, use the cursor from the grabbed
8260         window. (gdk_fb_window_send_crossing_events): Send normal
8261         enter/leave notifications if grab and owner_events == TRUE.
8262
8263 2000-11-29  Alexander Larsson  <alexl@redhat.com>
8264
8265         * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
8266         Do implicit button grabs, even if the window doesn't
8267         want the event.
8268         (gdk_fb_window_send_crossing_events): If there is a
8269         grab, only the grabbed window gets normal enter/leave
8270         notifications. On ungrab go from grabbed window to current.
8271         Don't send any notification to b when propagating from c -> b.
8272         If setting a grab on window, don't set prev_window.
8273         (handle_mouse_input): Send enter/leave events to the window the
8274         mouse is over, not the grabbed one.
8275         
8276 2000-11-28  Elliot Lee  <sopwith@redhat.com>
8277
8278         * gdk/gdkregion-generic.c: Zap warning.
8279         * modules/input/Makefile.am: Only build im-xim if USE_X11 is enabled
8280         * gtk/gtkrc.c: s/strcpy/memcpy/ to save a few nanoseconds.
8281
8282 2000-11-28  Alexander Larsson  <alla@lysator.liu.se>
8283
8284         * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
8285         The cursor should be hidden if it is part of either the
8286         source or destination region. Not only if it is in both.
8287         (gdk_window_set_transient_for): Silence warnings.
8288
8289 2000-11-28  Alexander Larsson  <alexl@redhat.com>
8290
8291         * gdk/linux-fb/mifillarc.c (miFillArcSliceSetup):
8292         The default mode in X is Pie Arcs, therefore that is
8293         what Gtk+ uses.
8294
8295 2000-11-28  Alexander Larsson  <alexl@redhat.com>
8296
8297         * gdk/linux-fb/gdkinput-ps2.c:
8298         Implement correct EnterNotify/LeaveNotify:
8299         (gdk_fb_window_send_crossing_events): New function that sends
8300         all GdkCrossingEvents from the last mouse-window to the specified
8301         destination.
8302         (gdk_fb_window_visibility_crossing): Removed function.
8303         (handle_mouse_input): Use gdk_fb_window_send_crossing_events()
8304         (send_button_event, gdk_fb_cursor_reset): Use gdk_window_at_pointer
8305         instead of gdk_window_get_pointer() for better readability.
8306
8307         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab,
8308         gdk_fb_pointer_ungrab): Use gdk_fb_window_send_crossing_events.
8309
8310         * gdk/linux-fb/gdkprivate-fb.h:
8311         removed gdk_fb_window_visibility_crossing, added
8312         gdk_fb_window_send_crossing_events and gdk_fb_find_common_ancestor.
8313
8314         gdk/linux-fb/gdkwindow-fb.c (gdk_fb_find_common_ancestor):
8315         New function that finds the least common ancestor of two windows.
8316         (gdk_window_show, gdk_window_hide):
8317         Use gdk_fb_window_send_crossing_events.
8318         (gdk_fb_window_move_resize): Send configure events to toplevel
8319         windows. Use gdk_fb_window_send_crossing_events.
8320
8321 2000-11-27  Havoc Pennington  <hp@redhat.com>
8322
8323         * gtk/gtkprivate.h (enum): Remove a trailing comma
8324
8325 2000-11-27  Federico Mena Quintero  <federico@helixcode.com>
8326
8327         * gtk/gtkspinbutton.c (gtk_spin_button_set_adjustment): Connect to
8328         the "changed" callback of the adjustment.  We need to redraw the
8329         spin button's arrows when the adjustment's range changes.
8330         (adjustment_changed_cb): Draw the arrows.
8331         (gtk_spin_button_value_changed): Draw the arrows.
8332
8333 2000-11-23  Alexander Larsson  <alexl@redhat.com>
8334
8335         * gdk/linux-fb/gdkselection-fb.c:
8336         Initial selection implementation.
8337
8338         * gtk/gtkselection.c:
8339         if GDK_WINDOWING_FB defined, include linux-fb/gdkfb.h and look up
8340         requestor in gtk_selection_request.
8341         
8342         * gdk/linux-fb/gdkfb.h, gdk/linux-fb/gdkglobals-fb.c:
8343         Added gdk_selection_property atom.
8344
8345         * gdk/linux-fb/gdkprivate-fb.h:
8346         Export _gdk_selection_window_destroyed.
8347         Removed mask_off_x/y from GdkCursorPrivateFB.
8348         Removed hbearing, added top, left to PangoFBGlyphInfo.
8349
8350         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
8351         Call _gdk_selection_window_destroyed
8352         (_gdk_windowing_window_init): Don't call gdk_cursor_new() before
8353         the root window has been created.
8354         (static_dx_hack, static_dy_hack, compare_draw_rects,
8355         gdk_fb_window_move_resize): Remove unnecessary sort of rectangles
8356         in region. They are already sorted. Instead just traverse them in
8357         reverse if draw_direction < 0.
8358         
8359         * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
8360         Double-clicks must be sent after the normal button_press.
8361         (gdk_fb_cursor_unhide): Remove usage of mask_off_x/y. Clean up.
8362         
8363         * gdk/linux-fb/gdkgeometry-fb.c (gdk_window_scroll):
8364         Pass _gdk_fb_screen_gc instead of NULL.
8365
8366         * gdk/linux-fb/gdkmain-fb.c (_gdk_windowing_init_check):
8367         Initialize gdk_selection_property.
8368         (gdk_event_make): Remove unused code.
8369
8370         * gdk/linux-fb/gdkcursor-fb.c:
8371         Make the pixmap for the cursor the same size as the mask. Also remove
8372         the mask_off_x/y fields in GdkCursorPrivateFB and combine
8373         _gdk_cursor_new_from_pixmap() and gdk_cursor_new_from_pixmap()
8374         Now the whole cursor is visible.
8375
8376         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
8377         Fix bug where xdest+height instead of ydest+height was used
8378         to calculate if the source and dest overlapped. This fixes the
8379         redraw bug when the main window in testgtk was scrolled when
8380         partially covered by a tall window.
8381         Copy rectangles in region in order depending on draw_direction.
8382         Also moved the draw_direction flipping of start_y and end_y into
8383         the gc functions, as this might not be what all of them want.
8384         (gdk_fb_draw_lines): Support dashed lines.
8385         (gdk_fb_draw_glyphs): Clean up glyph placement. Also fix positioning
8386         so that the text is positioned correctly (was 1 pixel high).
8387
8388         gdk/linux-fb/gdkgc-fb.c:
8389         Initialize cap_style to GTK_CAP_BUTT. This fixes a problem where
8390         all lines were drawn a pixel to short. Also checked the default of
8391         the rest of the values, and they're the same as X now.
8392
8393         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_glyph_info):
8394         Clean up pixel positioning of the glyphs. Just use bgy->top and
8395         bgy->left. Also used PANGO_PIXEL where appropriate and added 0.5
8396         to all divisions to get correct rounding behaviour.
8397
8398         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_draw_drawable_generic,
8399         gdk_fb_draw_drawable_memmove, gdk_fb_draw_drawable_aa_24):
8400         Moved start_y/end_y flip into draw_drawable implementations.
8401         Flip also x rendering when draw_direction < 0.
8402         Remove unneccesary multiply with draw_direction.
8403
8404 Wed Nov 22 14:11:19 GMT 2000  Tony Gale <gale@gtk.org>
8405
8406         * docs/tutorial/gtk-tut.sgml:
8407           - get rid of gtk_toggle_button_toggled FUD
8408           - start DND section - needs work - based on:
8409                 http://wolfpack.twu.net/docs/gtkdnd/
8410
8411 2000-11-22  Alexander Larsson  <alexl@redhat.com>
8412
8413         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
8414         Correct calculation of font metrics. Now GtkEntrys have sane
8415         size.
8416
8417 2000-11-22  Alexander Larsson  <alexl@redhat.com>
8418
8419         * gdk/gdktypes.h:
8420         Add new type GdkSpan
8421         
8422         * docs/reference/gdk/gdk-sections.txt,
8423         docs/reference/gdk/tmpl/regions.sgml, gdk/gdkregion-generic.c,
8424         gdk/gdkregion.h:
8425         Implement and document gdk_region_spans_intersect_foreach.
8426
8427         * gdk/linux-fb/Makefile.am, gdk/linux-fb/gdkrender-fb.c:
8428         Add new file gdkrender-fb.c which contains all core
8429         rendering code.
8430         Add gdk_fb_fill_rectangle_generic (old rectangle code) and
8431         gdk_fb_fill_rectangle_simple_16, gdk_fb_fill_rectangle_simple_32
8432         (optimized rectangle fillers).
8433
8434         * gdk/linux-fb/gdkdrawable-fb2.c:
8435         Move all rendering code to gdkrender-fb.c.
8436         Change from using GdkRectangles and GdkSegments for spans to GdkSpan.
8437         Use the new span intersection functions in gdk_fb_fill_spans.
8438         gdk_fb_draw_rectangle() clips filled rectangles and calls
8439         gc->fill_rectangle with the result.
8440         gdk_fb_fill_spans() gets extra argument "sorted".
8441
8442         * gdk/linux-fb/gdkevents-fb.c:
8443         Remove unused includes and defines.
8444         New function gdk_fb_get_time() to get correct time for events.
8445
8446         * gdk/linux-fb/gdkinput-ps2.c:
8447         Use gdk method of generating multiple-clicks (gdk_event_button_generate)
8448         Make sure to set the time of all events.
8449
8450         * gdk/linux-fb/gdkmain-fb.c:
8451         Use gdk_fb_get_time ().
8452
8453         * gdk/linux-fb/gdkprivate-fb.h:
8454         New virtual GC calls: fill_span & fill_rectangle.
8455         Export gdk_fb_get_time().
8456         gdk_fb_fill_spans() gets extra argument "sorted".
8457
8458         * gdk/linux-fb/mi*.c:
8459         Use GdkSpan instead of GdkRectangle.
8460         Pass correct sorted to gdk_fb_fill_spans. (sorted value taken
8461         from XFree 4 source)
8462         
8463 2000-11-22    <jrb@redhat.com>
8464
8465         * gtk/gtktreeview.c (gtk_tree_view_calc_size): It's amazing what
8466         reversing the order in an if statement will do.  Doing so managed
8467         to make the treemodelsort half work.  Other half will follow after
8468         I get the insert function fully fixed.
8469
8470 2000-11-21  Elliot Lee  <sopwith@redhat.com>
8471         * gtk/gtkmenushell.h: GdkEventButton->button can occupy significantly
8472         more than 2 bits. Besides, I need to implement an evil hack. :)
8473
8474 Tue Nov 21 14:17:51 GMT 2000  Tony Gale <gale@gtk.org>
8475
8476         * docs/tutorial/gtk-tut.sgml: minor corrections
8477
8478 2000-11-20  Jonathan Blandford <jrb@redhat.com>
8479         * gtk/gtktreemodelsort.h: Add convertion functions to let you
8480           convert to and from relative path's and iters.
8481
8482         * gtk/treestoretest.c: move to having a sorted/unsorted view.  Start
8483           testing sorting functions a bit better.  Currently broken -- will
8484           fix in morning.
8485
8486 2000-11-20  Havoc Pennington  <hp@redhat.com>
8487
8488         * gtk/gtkwidget.c: Documented a bunch of functions in here
8489         (gtk_widget_realize): Warn if you try to realize
8490         a widget with no parent that isn't a toplevel
8491         (gtk_widget_intersect): return a gboolean
8492
8493 2000-11-20  Havoc Pennington  <hp@redhat.com>
8494
8495         * gtk/gtktextview.c, gtk/gtktextlayout.c, gtk/gtktextchild.c,
8496         gtk/testtext.c: Semi-finish widget embedding. Need guffaw
8497         scrolling to be implemented in GDK to finish. Also, right now
8498         we just size_allocate all children on every layout change,
8499         which is pretty lame. Test commented out of testtext.c, 
8500         until it works better.
8501
8502 2000-11-20  Alexander Larsson  <alla@lysator.liu.se>
8503
8504         * gdk/linux-fb/gdkdrawable-fb2.c:
8505         Removed unused arguments from gdk_fb_drawable_get_pixel().
8506
8507         * gdk/linux-fb/gdkinput-ps2.c (handle_input_ps2):
8508         Renamed fidur specific mouse packet data in MouseDevice to
8509         generic. Used it in ps2 mouse handling code to avoid blocking
8510         reads.
8511
8512 Sat Nov 18 18:00:17 2000  Jonathan Blandford  <jrb@redhat.com>
8513
8514         * demos/gtk-demo/main.c: Changed to have the list become
8515         non-italic when the demo window is destroyed through an external
8516         event (like a close button).  Doing so found three bugs in the
8517         widget.
8518
8519         * demos/gtk-demo/*.c (do_*): Changed to return the toplevel window.
8520
8521         * gtk/gtkliststore.c (gtk_list_store_set_cell): emit "change" when
8522         we actually set the cell.
8523
8524         * gtk/gtktreestore.c (gtk_tree_store_set_cell): ditto
8525
8526         * gtk/gtktreeselection.c (gtk_tree_selection_real_select_node):
8527         free a leaked path.  Thanks memprof.
8528
8529 Sat Nov 18 11:58:17 2000  Owen Taylor  <otaylor@redhat.com>
8530
8531         * gdk/gdkrgb.c (gdk_rgb_allocate_images): Fix 
8532         off-by-one error when destroying allocated segments
8533         on failure. (Elliot)
8534
8535 Sat Nov 18 11:45:09 2000  Owen Taylor  <otaylor@redhat.com>
8536
8537         * gtk/gtkcalendar.c: Patch from ChiDeok Hwang to fix
8538         memleaks found by Evan Martin.
8539
8540 Fri Nov 17 20:14:20 2000  Owen Taylor  <otaylor@redhat.com>
8541
8542         * Released 1.3.2
8543         
8544         * NEWS: Updates for 1.3.2
8545
8546 2000-11-17  Tor Lillqvist  <tml@iki.fi>
8547
8548         * gdk/gdkevents.h: Add comment that GdkXEvent isn't only for XEvent,
8549         but in general for window system specific events.
8550
8551         * gtk/gtk.def
8552         * gtk/makefile.mingw.in
8553         * gtk/makefile.msc.in: Update.
8554         
8555         * gtk/gtktexttypes.h: Mark variables for export/import from DLL.
8556
8557 Thu Nov 16 16:11:39 2000  Owen Taylor  <otaylor@redhat.com>
8558
8559         * gtk/Makefile.am (EXTRA_DIST): Do not, in any circumstances,
8560         distribute gtk.immodules.
8561
8562         * gtk/Makefile.am (install-data-local): Don't install the
8563         gtk.immodules file created for the uninstalled modules;
8564         instead run gtk-query-immodules after install
8565
8566 Wed Nov 15 21:51:31 2000  Owen Taylor  <otaylor@redhat.com>
8567
8568         * modules/input/Makefile.am (im_xim_la_LDFLAGS): Point
8569         -rpath to the right install location.
8570
8571         * modules/input/Makefile.am (im_inuktitut_la_LDFLAGS): Remove
8572         -export-dynamic.
8573
8574         * gtk/gtkthemes.c (gtk_theme_engine_get): Set engine->name
8575         properly.
8576
8577 2000-11-15  Havoc Pennington  <hp@pobox.com>
8578
8579         * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): Apply
8580         patch from Mikael Hermansson to temporarily stop blinking while
8581         the user is using the keyboard to type or navigate. 
8582
8583         Also, when blinking, stay on for longer than we stay off. Also,
8584         return from start_cursor_blink if !cursor_visible, to save
8585         checking that flag all over the place before we call
8586         start_cursor_blink.
8587
8588 Thu Nov 16 01:25:51 2000  Robert Brady  <robert@suse.co.uk>
8589
8590         * gtk/gtkrc.*: Remove the locale-specific gtkrc's, as they
8591         only contain a "fontset" line, which is now ignored.
8592
8593         * gtk/gtkentry.c (gtk_entry_button_release): Make 
8594         double-click-to-select-word work.
8595         
8596 Wed Nov 15 20:16:54 2000  Owen Taylor  <otaylor@redhat.com>
8597
8598         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): 
8599         Don't move back one char when we are actually at the end of the 
8600         paragraph.
8601
8602 2000-11-15  Robert Brady  <robert@suse.co.uk>
8603
8604         * modules/input/iminuktitut.c (inuktitut_compose_seqs): 
8605         'o' < 'p'.
8606         
8607         * gtk/gtkmain.c: s/CODSET/CODESET/, include <libintl.h> for
8608         bind_textdomain_codeset.
8609
8610         (gtk_init_check): Make the warning about translating default:LTR
8611         sterner.
8612         
8613 Wed Nov 15 18:39:40 2000  Owen Taylor  <otaylor@redhat.com>
8614
8615         * **/Makefile.am : remove unecessary rules for win32-specific
8616         config-substituted targets. If you want these rules, use
8617         --enable-maintainer-mode (called automatically by autogen.sh).
8618         Stops a lot of unneccessary make-time warnings.
8619
8620         * gtk/gtktext{layout,display}.c: Factor in total width as
8621         well as screen when figuring alignment for word-wrap as well as
8622         no wrap; this is necessary to handle lines that cannot be wrapped
8623         at all.
8624
8625 2000-11-15  Havoc Pennington  <hp@redhat.com>
8626
8627         * gtk/testtext.c: Implement essential color cycling feature
8628
8629 2000-11-15  Havoc Pennington  <hp@redhat.com>
8630
8631         * gtk/gtktextview.c (changed_handler): Invalidate the side windows
8632         when we invalidate the main window.
8633
8634         * gtk/testtext.c (create_view): Get rid of text_changed_callback,
8635         GtkTextView will now invalidate the side windows for us when text
8636         changes.
8637
8638 Wed Nov 15 16:02:20 2000  Owen Taylor  <otaylor@redhat.com>
8639
8640         * gtk/gtktextview.c (changed_handler): Call scroll_calc_now()
8641         unconditionally, since we may need to update the horizontal
8642         scrollbars even if the height didn't change.
8643
8644         * gtk/gtktextlayout.c (add_preedit_attrs): Always get
8645         the extra attrs, since some of them affect size.
8646
8647         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Factor in
8648         x_offset correctly.
8649
8650 2000-11-15  Havoc Pennington  <hp@redhat.com>
8651
8652         * gtk/gtktextlayout.c (set_para_values): If indent is negative,
8653         don't move the first line out into the margin, instead move the
8654         whole paragraph in order to make space for the first line within 
8655         the margin
8656
8657 2000-11-15  Havoc Pennington  <hp@redhat.com>
8658
8659         * gtk/gtktextview.c (changed_handler): offset redraw rect by
8660         xoffset in addition to yoffset, so horizontal scrolling doesn't
8661         break redraws
8662
8663 2000-11-15  Havoc Pennington  <hp@redhat.com>
8664
8665         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Remove extra pixel
8666         from the cursor
8667         (render_layout_line): fix reversed test that caused weird
8668         underlines to get drawn
8669
8670 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
8671
8672         * gdk/linux-fb/gdkprivate-fb.h:
8673         Fix debug macros.
8674         
8675 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
8676
8677         * gdk/linux-fb/gdkprivate-fb.h:
8678         Added virtual functions set_pixel, get_color,
8679         fill_span and draw_drawable to the GC.
8680         Added global _gdk_fb_screen_gc to use instead of
8681         NULL when drawing to the screen.
8682         Added _gdk_fb_gc_calc_state() prototype.
8683
8684         * gdk/linux-fb/gdkgc-fb.c:
8685         Call _gdk_fb_gc_calc_state() on any gc state change.
8686
8687         * gdk/linux-fb/gdkglobals-fb.c:
8688         Add _gdk_fb_screen_gc
8689                 
8690         * gdk/linux-fb/gdkdrawable-fb2.c:
8691         _gdk_fb_gc_calc_state() calculates best functions
8692         for the GC state and depth.
8693         Moved bpp specialized code to separate functions.
8694         Added optimized 24 bpp AA draw_drawable.
8695
8696         * gdk/linux-fb/gdkevents-fb.c:
8697         Silence gcc warning.
8698
8699         * gdk/linux-fb/gdkimage-fb.c:
8700         Use _gdk_fb_screen_gc
8701
8702         * gdk/linux-fb/gdkwindow-fb.c:
8703         Init and use _gdk_fb_screen_gc
8704
8705         * gdk/linux-fb/mitypes.h:
8706         Remove unused types.
8707
8708 2000-11-14  Havoc Pennington  <hp@pobox.com>
8709
8710         * gtk/gtktextlayout.c (add_cursor): use PANGO_PIXELS() to convert
8711         to pixels
8712
8713 2000-11-14  Havoc Pennington  <hp@pobox.com>
8714
8715         * gtk/testtextbuffer.c (fill_buffer): change "offset" to "rise"
8716
8717         * gtk/gtktexttypes.h (GTK_TEXT_UNKNOWN_CHAR): Add macro for
8718         unknown char, no real reason we were using a variable. 
8719         Remove gtk_text_unknown_char variable. Fix all the text widget
8720         files accordingly.
8721
8722         * gtk/gtktexttypes.c: Change "unknown character" to 0xFFFC, 
8723         since the Unicode spec seems to prefer that character for our
8724         purposes.
8725
8726 Wed Nov 15 02:18:01 2000  Robert Brady  <robert@suse.co.uk>
8727
8728         * gtk/gtkrc.c (gtk_rc_get_im_module_file): The return 
8729         value of g_getenv() isn't freeable, so g_strdup it.
8730
8731         * modules/input/inuktitut.c: Inuktitut input method.
8732
8733         * modules/input/Makefile.am: Build this.
8734         
8735 2000-11-14  Elliot Lee  <sopwith@redhat.com>
8736
8737         * gtk/Makefile.am: Install gtk.immodules, needed for operation
8738         of gtk programs.
8739
8740 Tue Nov 14 20:13:06 2000  Owen Taylor  <otaylor@redhat.com>
8741
8742         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): Fix
8743         reversed > that was causing Home to go to end of previous line.
8744
8745         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_filter_keypress): Ignore
8746         modified-keypresses (leave for bindings.)
8747
8748         * modules/input/Makefile.am: Remove useless -export-dynamic
8749         from module LDFLAGS.
8750
8751 2000-11-14  Havoc Pennington  <hp@redhat.com>
8752
8753         * gdk/gdkpango.c (gdk_draw_layout_line): Draw underlines one pixel
8754         higher.
8755
8756         * gtk/gtktextdisplay.c (render_layout_line): Take rise into
8757         account. Also, render rise, underline, background, etc. for
8758         pixbufs as well as text. Also, draw underlines one pixel higher.
8759
8760         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): Add a
8761         PangoAttribute for the rise, so it gets drawn properly. Also,
8762         add the GtkTextAppearance attribute for pixbuf/widget segments
8763         as well; we should go ahead and have rise, underline, background,
8764         stipple work for those
8765
8766         * gtk/gtktexttag.c: Rename "offset" property to "rise" to match
8767         Pango
8768
8769 2000-11-15  Tor Lillqvist  <tml@iki.fi>
8770
8771         * gtk/makefile.{mingw,msc}.in (gtk_OBJECTS): Add new objects.
8772
8773         * gtk/gtk.def: Update.
8774
8775         * gtk/gtkrc.c: Can't check for G_OS_WIN32 until glib.h has been
8776         included.
8777         (gtk_rc_get_im_module_file): Use run-time installation directory
8778         on Win32.
8779
8780         * gdk/win32/rc/gdk.rc: Remove.
8781         * gdk/win32/rc/gdk.rc.in: New file.
8782         * gdk/win32/rc/Makefile.am: New file
8783         * gdk/win32/Makefile.am: Corresponding changes.
8784
8785         * gtk/gtk.rc: Remove.
8786         * gtk/gtk-win32.rc.in: New file.
8787         * gtk/Makefile.am: Corresponding changes.
8788
8789         * configure.in: Corresponding changes.
8790
8791         * gtk/gtkcompat.h.win32: Remove, useless. A distribution already
8792         has a built gtkcompat.h. Developers using CVS code on Win32 can
8793         hand-edit it from gtkcompat.h.in.
8794
8795         * gtk/makefile.{mingw,msc}.in: Correspondingly don't try to make
8796         gtkcompat.h from gtkcompat.h.win32.
8797
8798 2000-11-14  Havoc Pennington  <hp@redhat.com>
8799
8800         * gtk/gtktextview.c (gtk_text_view_drag_motion): Fix drag-and-drop
8801         to default to GDK_ACTION_MOVE if the drag is within a single
8802         widget. Defaults to GDK_ACTION_COPY between widgets.
8803
8804 Mon Nov 13 14:43:48 2000  Owen Taylor  <otaylor@redhat.com>
8805
8806         * demos/Makefile.am (test-inline-pixbufs.h): Fix srcdir != builddir
8807
8808         * gtk/Makefile.am (INCLUDES): Add -I$(builddir)/gtk
8809
8810         * gtk/stock-icons/Makefile.am (gtkstockpixbufs.h): Handles
8811         srcdir != builddir
8812
8813         * modules/input/Makefile.am (INCLUDES): add $(top_srcdir)/gdk
8814
8815         * configure.in (GTK_VERSION): Up to 1.3.2
8816
8817         * modules/input/Makefile.am (im_xim_la_SOURCES): Add 
8818         gtkimcontextxim.h
8819
8820         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): Add
8821         missing doc comment.
8822
8823 2000-11-14  Alexander Larsson  <alexl@redhat.com>
8824
8825         * modules/linux-fb/basic.c:
8826         Use the glib iconv wrappers.
8827
8828 2000-11-13  Havoc Pennington  <hp@pobox.com>
8829
8830         * demos/gtk-demo/textview.c: spiff up the demo a bit; reveals
8831         still more bugs.
8832
8833         * gtk/gtktextview.c (gtk_text_view_value_changed): don't try to
8834         scroll the GdkWindows before realization.
8835
8836 2000-11-13  Havoc Pennington  <hp@redhat.com>
8837
8838         * gtk/gtktextdisplay.c (gtk_text_render_state_update): fix bug 
8839         where GC didn't always get updated properly
8840
8841         * demos/gtk-demo/textview.c (create_tags): Use subattributes
8842         of fonts instead of setting the entire font
8843
8844         * gtk/testtext.c (fill_example_buffer): Use "size" instead of
8845         setting entire font
8846
8847         * gtk/gtkdialog.c (gtk_dialog_add_button): Fix some warnings
8848
8849         * gtk/gtktexttag.h, gtk/gtktexttag.c: Explode font_desc into 
8850         a bunch of individually-settable font attributes. You can still 
8851         use the "font" and "font_desc" args, they just set all the font
8852         attributes at once.
8853
8854 2000-11-13 Elliot Lee <sopwith@redhat.com>
8855
8856         * gdk/gdk.h: Add a couple of missing G_GNUC_CONST's.
8857
8858 Mon Nov 13 14:29:32 2000  Jonathan Blandford  <jrb@redhat.com>
8859
8860         * gtk/gtktreemodel.c (gtk_tree_path_copy): confirm path != NULL
8861         * gtk/gtktreemodel.c (gtk_tree_path_free): ditto
8862
8863         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): make
8864         work better.
8865
8866 2000-11-13  Havoc Pennington  <hp@redhat.com>
8867
8868         * gtk/gtkimmodule.c (gtk_im_module_init): Free the filename of 
8869         the module file.
8870
8871         * gtk/gtktexttag.c (gtk_text_attributes_copy): fix memory leak of
8872         dest->language
8873
8874         * gtk/testtext.c: Test pixels above/below/inside paragraphs
8875         settings
8876
8877         * gtk/gtktextview.c: Implement object args and setters/getters for
8878         all the aspects of the GtkTextAttributes that are not set from
8879         GtkWidget attributes. This is spacing, justification, margins,
8880         etc.
8881
8882         (gtk_text_view_set_arg)
8883         (gtk_text_view_get_arg): implement get/set for editable, wrap mode
8884         args
8885         (gtk_text_view_class_init): Add args for justify, left_margin,
8886         right_margin, indent, and tabs
8887         
8888
8889         * gtk/gtktextlayout.c (set_para_values): fix to display indent
8890         attribute properly
8891
8892         * gtk/gtktexttag.c: Remove left_wrapped_line_margin attribute, 
8893         replace with indent attribute
8894
8895         * gtk/gtktextlayout.c (set_para_values): multiply indent by
8896         PANGO_SCALE
8897
8898         * gtk/gtktextdisplay.c (render_para): Use PangoLayoutIter,
8899         rearranging code to do that
8900         (gtk_text_layout_draw): Pass in the y for the whole LineDisplay,
8901         i.e. don't subtract the top_margin first, just to keep
8902         all margin-futzing in one place.
8903
8904         * gdk/gdkpango.c (gdk_draw_layout): Use PangoLayoutIter
8905
8906         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Remove
8907         special case of last line, Pango now handles this itself.
8908         (gtk_text_layout_get_iter_at_pixel): Fix incorrect clamp of the 
8909         Y coordinate
8910         (gtk_text_layout_move_iter_to_x): port to use PangoLayoutIter
8911         (find_display_line_above): wasn't moving the byte index as it
8912         iterated over lines, so always returned byte 0. Also, port to use
8913         PangoLayoutIter.
8914         (find_display_line_below): same problem as
8915         find_display_line_above. Also, port to use PangoLayoutIter.
8916
8917 2000-11-13  Alexander Larsson  <alexl@redhat.com>
8918
8919         * gdk/linux-fb/*.[ch]:
8920         Massive reindent to gtk+ standard. My hands hurt.
8921
8922         * gdk/linux-fb/gdkcolor-fb.c:
8923         Move GdkColorPrivateFB from inherited to windowing_data
8924
8925         * gdk/linux-fb/gdkcursor-fb.c:
8926         _gdk_cursor_new_from_pixmap made static
8927
8928         * gdk/linux-fb/gdkdnd-fb.c:
8929         GdkDragContextPrivate moved to windowing_data
8930
8931         * gdk/linux-fb/gdkdrawable-fb2.c:
8932         Removed endian.h, use glib endianness macros instead
8933         Some cleanups in the usage of GDK_DRAWABLE_FBDATA
8934         and GDK_DRAWABLE_IMPL_FBDATA
8935
8936         * gdk/linux-fb/gdkfont-fb.c:
8937         Add empty gdk_font_load(). Needed for linking of Gtk+.
8938
8939         * gdk/linux-fb/gdkimage-fb.c:
8940         Removed endian.h, use glib endianness macros instead
8941         Moved GdkImagePrivateFB to windowing_data
8942         gdk_image_new_bitmap didn't always allocate enough
8943         memory.
8944
8945         * gdk/linux-fb/gdkinput-ps2.c:
8946         Added semi-working support for MS serial mice.
8947
8948         * gdk/linux-fb/gdkprivate-fb.h:
8949         s/GdkWindowPrivate/GdkWindowObject/
8950         Removed GdkWindowPrivate typedef
8951         s/GDK_DRAWABLE_P/GDK_DRAWABLE_FBDATA/
8952         Removed GDK_DRAWABLE_P
8953         Move GdkColorPrivateFB from inherited to windowing_data
8954         Moved GdkImagePrivateFB to windowing_data
8955
8956         * gdk/linux-fb/gdkvisual-fb.c:
8957         Removed some unused debug code.
8958
8959         * gdk/linux-fb/gdkwindow-fb.c:
8960         Use stock cursors instead of including X headers.
8961         s/GdkWindowPrivate/GdkWindowObject/
8962
8963         * gdk/linux-fb/mitypes.h:
8964         Removed unused types.
8965
8966         * modules/linux-fb/basic.c:
8967         Use the pango fribidi wrappers.
8968
8969 2000-11-13  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
8970
8971         * gdk/linux-fb/gdkcolor-fb.c, gdk/nanox/gdkmain-nanox.c,
8972         gdk/win32/gdkcolor-win32.c, gdk/win32/gdkwin32id.c,
8973         gdk/x11/gdkcolor-x11.c, gdk/x11/gdkvisual-x11.c, gdk/x11/gdkxid.c,
8974         gtk/gtkgc.c, gtk/gtkrc.c, gtk/gtktext.c: GCompareFunc ->
8975         GEqualFunc where applicable.
8976         
8977         * gdk/linux-fb/gdkpango-fb.c: pango_font_description_compare ->
8978         pango_font_description_equal as changed in pango.
8979         
8980         * gdk/nanox/gdkmain-nanox.c: gdk_xid_compare -> gdk_xid_equal.
8981
8982         * gdk/win32/gdkcolor-win32.c: gdk_colormap_cmp -> gdk_colormap_equal.
8983
8984         * gdk/win32/gdkwin32id.c: gdk_handle_compare -> gdk_handle_equal.
8985
8986         * gdk/x11/gdkcolor-x11.c: gdk_colormap_cmp -> gdk_colormap_equal.
8987
8988         * gdk/x11/gdkvisual-x11.c: gdk_visual_compare -> gdk_visual_equal.
8989
8990         * gdk/x11/gdkxid.c: gdk_xid_compare -> gdk_xid_equal.
8991
8992         * gtk/gtkgc.c: gtk_gc_key_compare -> gtk_gc_key_equal and
8993         gtk_gc_drawable_compare -> gtk_gc_drawable_equal.
8994
8995         * gtk/gtkrc.c: gtk_rc_style_compare -> gtk_rc_style_equal and
8996         gtk_rc_styles_compare -> gtk_rc_styles_equal.
8997
8998 2000-11-12  Havoc Pennington  <hp@pobox.com>
8999
9000         * demos/gtk-demo/Makefile.am (democodedir): change demo install
9001         dir to datadir/gtk+-2.0/demo
9002
9003         * demos/gtk-demo/textview.c: Text widget demo; reveals all 
9004         sorts of text widget and Pango font bugs. Urgh.
9005
9006         * demos/gtk-demo/Makefile.am (demos): Add textview.c
9007
9008         * demos/gtk-demo/main.c (create_tree): Add instructions at top of
9009         tree that you should double click to see the demo. Fix 
9010         types of variables to reflect changed return values from 
9011         GtkTreeStore and GtkTreeViewColumn constructors.
9012
9013         * gtk/gtktextbuffer.c (gtk_text_buffer_new): ref/sink the
9014         newly-created buffer to prepare for GObject semantics
9015
9016         * gtk/testtext.c: don't leak the buffer with GObject semantics
9017
9018         * gtk/testtextbuffer.c: ditto
9019         
9020 2000-11-12  Havoc Pennington  <hp@pobox.com>
9021
9022         Rename this testgtk to gtk-demo to avoid confusion, and 
9023         install it so people can use it as a supplement to 
9024         the documentation.
9025         
9026         * demos/gtk-demo: Moved from demos/testgtk
9027
9028         * demos/testgtk: Removed
9029
9030         * configure.in: make Makefile in gtk-demo
9031         
9032         * demos/gtk-demo/Makefile.am: Install sample source to 
9033         datadir/gtk-demo (maybe there's a better place?), and 
9034         rename the binary to gtk-demo
9035         
9036         * demos/gtk-demo/main.c (load_file): Load installed sample
9037         source if source isn't found in pwd.
9038
9039 2000-11-09  Havoc Pennington  <hp@pobox.com>
9040
9041         * gtk/gtkentry.c (gtk_entry_class_init): Add an "invisible_char" 
9042         argument to set the char displayed when visibility == FALSE
9043         (gtk_entry_create_layout): If !entry->visible, replace 
9044         all chars with the "invisible char"
9045
9046         * gtk/testgtk.c: Test the invisible_char deal
9047         
9048 Mon Nov 13 02:16:33 2000  Robert Brady  <robert@suse.co.uk>
9049
9050         * gtk/gtkstyle.c (gtk_style_init): Fall back to "fixed" if we
9051         can't get a native font in the right encoding.
9052
9053 Mon Nov 13 00:09:29 2000  Robert Brady  <robert@suse.co.uk>
9054
9055         * configure.in: Chinese .pos have been renamed to zh_CN and zh_TW
9056         respectively.
9057
9058 Sun Nov 12 19:11:42 2000  Owen Taylor  <otaylor@redhat.com>
9059
9060         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_next_line):
9061         Fix warning when moving between paragraphs.
9062
9063         * gtk/gtkentry.[ch]: Change move => move_cursor, 
9064         delete => delete_from_cursor, insert => insert_at_cursor
9065
9066 Sun Nov 12 22:52:51 2000  Robert Brady  <robert@suse.co.uk>
9067
9068         * modules/input/imviqr.c: A vietnamese VIQR-based input method.
9069
9070         * modules/input/imthai-broken.c: A Thai input method for use if
9071         Thai keys are really generating Latin1 keysyms.
9072
9073         * modules/input/Makefile.am: Build these.
9074
9075 Sun Nov 12 22:15:35 2000  Robert Brady  <robert@suse.co.uk>
9076
9077         * gtk/gtkfileselection.c, gdk/win32/gdkfont-win32.c: 
9078         g_filename_{to,from}_utf8 now takes an extra parameter.
9079
9080         * gtk/gtkcalendar.c (gtk_calendar_init): Convert output of
9081         strftime into UTF-8.
9082
9083         (column_from_x, gtk_calendar_paint_day_names): Support RTL
9084         calendars.
9085
9086         (gtk_calendar_paint_day_names): Draw day names in the right 
9087         place.
9088         
9089 Sun Nov 12 14:10:09 2000  Owen Taylor  <otaylor@redhat.com>
9090
9091         * gdk/x11/gdkselection-x11.c (gdk_utf8_to_compound_text): Fix
9092         problem with using result of g_get_charset() backwards -
9093         pointed out by Mikael Hermansson <mikeh@bahnhof.se>.
9094
9095         * gtk/gtkwindow.c (gtk_window_compute_hints): Support
9096         negative min_width/height and max_width/height to
9097         mean "requisition"; this allows setting a window
9098         to be user-resizable in only one direction easily.
9099
9100         * gtk/testgtk.c (create_main_window): Remove hard-coded
9101         usize - set a default size in the vertical direction.
9102
9103 Sun Nov 12 13:33:01 2000  Owen Taylor  <otaylor@redhat.com>
9104
9105         * gtk/gtkrange.c: Add some missing casts. Support 
9106         2 and 3 button clicks on the arrows to mean 
9107         "move by pages" and "jump to end". (Like gtkspinbutton)
9108
9109 2000-11-12 Hans Breuer <Hans@Breuer.Org>
9110
9111         * gdk/win32/makefile.msc : reflect build module changes
9112
9113         * gdk/win32/gdkcursor-win32.c : can't cast to impl type directly
9114         from GdkPixmap*, cast implementation member instead.
9115
9116         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_drawable) : The
9117         passed in drawable is of type GdkDrawableImplWin32, the GdkPixmap *src 
9118         maybe either GdkDrawable or GdkDrawableImpl. Corrected all casts, add
9119         more Gdi functions return value checking. 
9120         (gdk_win32_draw_image) : use IMAGE_PRIVATE_DATA to get on the
9121         GdkImagePrivateWin32 *.
9122
9123         * gdk/win32/gdkevents-win32.c : Disable the SetCapture call to make
9124         menus useable again. Add #pragma message to keep reminded on this issue.
9125         (gdk_event_translate) : don't generate GDK_EXPOSE events for InputOnly
9126         windows. This allows to enable backing store on Win32!
9127
9128         * gdk/win32/gdkimage-win32.c (_gdk_win32_get_image) : the passed
9129         in drawable is of impl type. Correct specific type checks appropriate.
9130  
9131         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_create_from_data) : check 
9132         GDK_WINDOW_DESTROYED before allocating new resources.
9133
9134         * gdk/win32/gdkselection-win32.c : Handle GDK_WINDOW_DESTROYED case
9135
9136         * gdk/win32/gdkwindow-win32.c : more Gdi return value checking,
9137         (gdk_window_foreign_new) initialize parent handle.
9138         (gdk_window_destroy_notify) add GDK_IS_WINDOW check
9139
9140         * gdk/win32/gdkgeometry-win32.c (_gdk_window_move_resize_child) :
9141         Let the GDI invalidate the window on MoveWindow call to fix scrolling
9142         problems (e.g. main buttons in testgtk). 
9143
9144 Sat Nov 11 23:07:30 2000  Owen Taylor  <otaylor@redhat.com>
9145
9146         * gtk/gtkentry.c (gtk_entry_key_press): Call 
9147         gtk_widget_activate for GDK_Return.
9148
9149         * gtk/gtkentry.c (gtk_entry_preedit_changed_cb): Fix handling
9150         of preedit cursor position.
9151
9152 Sun Nov  5 04:24:53 2000  Owen Taylor  <otaylor@redhat.com>
9153
9154         * gtk/gtkcellrenderertextpixbuf.c: Make parent_class
9155         static.
9156
9157 Tue Sep 19 10:54:22 2000  Owen Taylor  <otaylor@redhat.com>
9158
9159         * modules/input/{gtkimcontextxim.[ch],imxim.c}: Rip
9160         out support for multiple locales; that simple doesn't
9161         work reliably with current Xlib
9162
9163         * gtk/gtkimcontext*.[ch] gtk/gtkimmulticontext.[ch]
9164         gtk/gtktextlayout.[ch] gtk/gtktextview.c gtk/gtkentry.c: 
9165         Add support for positioning the cursor within the preedit string.
9166
9167 Mon Sep 18 23:56:32 2000  Owen Taylor  <otaylor@redhat.com>
9168
9169         * modules/input/{imxim.c,gtkimcontextxim.[ch]}: Start
9170         at XIM input method module.
9171
9172         * gtk/gtktextview.c: Check for bindings after passing
9173         events to im context filter.
9174
9175 Mon Sep 18 11:50:51 2000  Owen Taylor  <otaylor@redhat.com>
9176
9177         * gtk/gtktextlayout.c (add_preedit_attrs): Handle
9178         empty attribute lists properly.
9179
9180 Sun Sep 17 10:08:16 2000  Owen Taylor  <otaylor@redhat.com>
9181
9182         * gtk/queryimmodules.c (main): Return non-zero exit
9183         status if errors were encountered querying any
9184         modules.
9185
9186         * modules/input/Makefile.am (moduledir): remove
9187         leftover bin program target.
9188
9189         * docs/make-todo: Fix typo in error message.
9190
9191 Sat Sep 16 14:04:30 2000  Owen Taylor  <otaylor@redhat.com>
9192
9193         * configure.in: Add modules/input/Makefile
9194
9195 Sat Sep 16 14:01:52 2000  Owen Taylor  <otaylor@redhat.com>
9196
9197         * gtk/gtk.h: include gtkmodule.h gtkoldeditable.h,
9198         don't include gtkthemes.h.
9199
9200         * gtk/testgtk.c gtk/testtext.c: Set environment variables
9201         to point
9202
9203         * gtk/Makefile.am: Add new .c and .h files, build 
9204         gtk-query-immodules and use it to create a gtk.immodules
9205         file for use of test programs.
9206
9207         * gtk/gtkpreview.c: remove extra blank line.
9208
9209 Sat Sep 16 13:21:04 2000  Owen Taylor  <otaylor@redhat.com>
9210
9211         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_add_table): 
9212         Add the ability to add extra tables beyond the default
9213         one, and also the ability to have compose sequences 
9214         that are prefixes of other compose sequences. 
9215
9216         * gtk/gtkimcontextsimple.c: Export a preedit string which
9217         consists of possible candidates for keystrokes that have
9218         been entered but not yet committed.
9219
9220         * gtk/gtkimcontext.[ch] gtk/immulticontext.[ch]
9221         gtk/gtkimcontextsimple.[ch]: add gtk_im_context_reset()
9222
9223         * gtk/gtkmulticontext.[ch] (gtk_im_multicontext_append_menuitems): 
9224         Add a function to add input-method switching menu items
9225         to a menu.
9226
9227         * gtk/gtkimmulticontext.[ch]: Properly handly set_client_window
9228         when switching input methods.
9229
9230         * gtk/gtkimcontextsimple.[ch]: Change the format of
9231         the compose table to allow compose tables of different
9232         lengths / sequence.
9233
9234 Sat Sep 16 13:05:48 2000  Owen Taylor  <otaylor@redhat.com>
9235
9236         * gtk/gtkimmodule.[ch]: Support routines for loading
9237         GtkIMContext implementations dynamically at runtime.
9238
9239         * modules/input/imcyrillic-translit.c: A sample input
9240         method (based on GtkIMContextSimple with an extra table),
9241         which demonstrates preedit strings and the module
9242         system for input modules
9243
9244         * gtk/queryimmodules.c: Program to query the available
9245         input modules and write the results into a file.
9246          
9247         * gtk/gtkrc.[ch] (gtk_rc_get_im_module_file): Add
9248         extra config options "im_module_file" (cache file for
9249         input method modules), and "im_module_path" - path
9250         to look for modules when generating cache file.
9251
9252         This doesn't scale.
9253
9254 Sat Sep 16 13:09:06 2000  Owen Taylor  <otaylor@redhat.com>
9255
9256         * gtk/gtkthemes.[ch] gtk/gtkmodule.[ch]: Move most of the 
9257         generic code from gtkthemes into a new abstraction
9258         GtkModule which has the logic for implementing
9259         a loadable module which implements a number of 
9260         GObject types.
9261
9262 Sat Sep 16 13:07:13 2000  Owen Taylor  <otaylor@redhat.com>
9263
9264         * gtk/gtkeditable.[ch]: Convert GtkEditable from
9265         a class into an interface  
9266         
9267         * gtk/gtkoldeditable.[ch]: Move the old editable
9268         implementation into here, so legacy widgets can
9269         still rely on the implemenation. GtkOldEditable
9270         exports GtkEditable. Make selection handling
9271         code use new text conversion functions (and
9272         handle UTF-8 as a side-effect). Use GtkClipboard
9273         for CLIPBOARD.
9274
9275         * gtk/gtktext.[ch] gtk/gtkcombo.c gtk/gtkspinbutton.c:
9276         Adopt to match above changes.
9277
9278         * gtk/gtkentry.[ch]: Implement GtkEditable directly,
9279         avoid GtkOldEditable implementation. Restructure
9280         to reduce number of places that modify state directly.
9281         Move to GtkBindingSet. Display the preedit string.
9282         Queue recomputation of PangoLayout and scroll position
9283         to improve effiency of doing complex changes naively.
9284         Add a menu with cut/copy/paste and input method selection.
9285
9286 Thu Sep 14 22:11:05 2000  Owen Taylor  <otaylor@redhat.com>
9287
9288         * gtk/gtktextlayout.[ch]: Add gtk_text_layout_set_preedit_string()
9289         to set preedit string and attributes; display preedit string by
9290         inserting string and attributes at cursor when creating the
9291         GtkTextLineDisplay.
9292
9293         * gtk/gtktextlayout.c: Move all conversions between byte
9294         positions in PangoLayout and GtkTextIter into new functions
9295         line_display_iter_to_index/index_to_iter that properly
9296         handle the preedit string.
9297
9298         * gtk/gtktextmark.[ch]: Restore gtk_text_mark_get_name, modify
9299         it to return const char * (eventually will end up
9300         as GCONST char *, most likely.)
9301
9302         * gtk/gtktextview.[ch]: Handle the preedit string, call
9303         gtk_im_context_reset() as necessary, add a menu to switch
9304         input methods.
9305         
9306         * gtk/gtktextlayout.[ch]: Remove useless
9307         gtk_text_layout_get_log_attrs() function.
9308
9309 2000-11-11  Tor Lillqvist  <tml@iki.fi>
9310
9311         * gdk/gdk.def
9312         * gtk/gtk.def: Update.
9313
9314         * gdk/win32/*.c: Add last argument to g_type_register_static()
9315         calls.
9316
9317         * gdk/win32/gdkwindow-win32.c: Silence gcc -Wall.
9318
9319         * gdk/win32/gdkevents-win32.c: Handle MSH_MOUSEWHEEL messages
9320         generated by older wheel mouse drivers. Get the correct y
9321         coordinate from WM_MOUSEWHEEL messages.
9322
9323         * gdk/win32/gdkgc-win32.c (gdk_win32_cap_style_to_string,
9324         gdk_win32_fill_style_to_string, gdk_win32_function_to_string,
9325         gdk_win32_join_style_to_string, gdk_win32_line_style_to_string):
9326         Debugging functions.
9327
9328         * gdk/win32/gdkprivate-win32.h: Declare them.
9329
9330         * gdk/win32/gdkinput-win32.h: Add declaration for
9331         gdk_input_window_destroy().
9332
9333         * gtk/makefile.mingw.in: Pass -DGTK_VERSION. Add gtktreemodel.o.
9334
9335 Fri Nov 10 19:06:41 2000  Jonathan Blandford  <jrb@redhat.com>
9336
9337         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): New
9338         function to help handle keeping things in sync.
9339
9340 Fri Nov 10 12:10:34 2000  Jonathan Blandford  <jrb@redhat.com>
9341
9342         * gtk/gtkliststore.c (gtk_model_simple_class_init): use the new
9343         BOXED marshallers.
9344
9345         * gtk/gtkliststore.c (gtk_list_store_get_column_type): Add this.
9346         (gtk_list_store_class_init): use the new BOXED marshallers.
9347
9348         * gtk/gtktreestore.c (gtk_tree_store_new_with_types): change
9349         new_with_values to new_with_types.
9350         (gtk_tree_store_get_column_type): add this.
9351         (gtk_tree_store_class_init): use the new BOXED marshallers.
9352
9353         * gtk/gtkmarshal.list: Added a number of BOXED marshallers to
9354         mirror some POINTER marshallers.
9355
9356 Thu Nov  9 11:23:22 2000  Jonathan Blandford  <jrb@redhat.com>
9357
9358         * gtk/gtktreemodel.h (struct _GtkTreeIter): added more fields to
9359         allow more interesting iterators.  Also, made the lifecycle of
9360         iterators more explicit.
9361
9362         * gtk/gtktreemodelsort.[ch]: New model for sorting.
9363
9364         * gtk/gtk-boxed.defs (GtkTreeIter, GtkTreePath): Added two boxed
9365         types.
9366
9367 2000-11-09  Alexander Larsson  <alexl@redhat.com>
9368
9369         * demos/testgtk/menus.c:
9370         Changes to make the new testgtk compile after
9371         gtk_menu_append was removed.
9372
9373         * gdk/linux-fb/gdkdrawable-fb2.c
9374         (gdk_fb_get_depth, gdk_fb_get_visual,
9375         gdk_drawable_impl_fb_class_init): Implement
9376         these drawable functions. Now GtkImages work again.
9377
9378         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Change prototype.
9379
9380         * gdk/linux-fb/gdkprivate-fb.h (_gdk_fb_get_image): Change prototype.
9381         
9382         * gdk/linux-fb/gdkmain-fb.c (fb_modes_parse_mode,
9383         gdk_fb_setup_mode_from_name, gdk_fb_set_mode, gdk_fb_display_new);
9384         Parse /etc/fb.modes, use the environment variables GDK_DISPLAY_MODE,
9385         GDK_DISPLAY_DEPTH, GDK_DISPLAY_WIDTH, GDK_DISPLAY_HEIGHT.
9386
9387 2000-11-08  Havoc Pennington  <hp@pobox.com>
9388
9389         * gtk/gtktexttag.c (gtk_text_tag_class_init): Add visible and
9390         visible_set args, don't know where these had gone, I thought they
9391         used to be there
9392
9393         * gtk/testtext.c: Add a menu item to apply invisibility tag;
9394         now we can test the feature and see that it's totally broken.
9395
9396 2000-11-08  Havoc Pennington  <hp@pobox.com>
9397
9398         Make DND copy pixbufs and tags when source and target share a 
9399         tag table.
9400         
9401         * gtk/gtktextview.c (gtk_text_view_drag_data_get): provide the
9402         in-process GTK_TEXT_BUFFER_CONTENTS target
9403         (gtk_text_view_drag_data_received): Paste from
9404         GTK_TEXT_BUFFER_CONTENTS if we receive it.
9405
9406 2000-11-08  Alexander Larsson  <alexl@redhat.com>
9407
9408         * docs/Changes-2.0.txt: Add note about GtkMenuPositionFunc
9409         API changes.
9410
9411         * gtk/gtkmenu.c: Add support for scrolling menus.
9412         Remove gtk_menu_append/prepend/insert, these have been moved to
9413         gtkcompat.h as #defines.
9414
9415         * gtk/gtkcompat.h.in:
9416         Add compatibility #defines for gtk_menu_append/prepend/insert
9417
9418         * gtk/gtkmenu.h: Add data needed for scrolling menus.
9419         GtkMenuPositionFunc gets an extra argument push_in.
9420         gtk_menu_append/prepend/insert removed.
9421         
9422         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu): Change menu
9423         positioning behaviour to fit to scrolling menus.
9424
9425         * gtk/gtkmenuitem.c (gtk_menu_item_forall): Don't recurse
9426         into menuitem->submeny. That is wrong, and broke torn
9427         off submenus of torn off menus, since they were unrealized
9428         when the first menu was unrealized.
9429
9430         * gtk/gtkmenushell.[ch]: Virtualize gtk_menu_shell_insert() and
9431         gtk_menu_shell_select_item() since these need to be overridden in
9432         GtkMenu.
9433
9434         * gtk/gtkoptionmenu.c (gtk_opttion_menu_position): Change menu
9435         positioning behaviour to fit to scrolling menus.
9436         (gtk_option_menu_key_press, gtk_option_menu_button_press): Select
9437         the current item so that it is prelighted when the menu pops up.
9438         This is a workaround to the fact that the menu doesn't get the
9439         initial enter event (due to grabs).
9440
9441         * gtk/gtkfilesel.c, gtk/gtkinputdialog.c, gtk/testgtk.c:
9442         s/gtk_menu_append/gtk_menu_shell_append/
9443
9444         * gtk/gtknotebook.c:
9445         s/gtk_menu_insert/gtk_menu_shell_insert/
9446
9447         * gtk/testgtk.c (create_menu, create_menus):
9448         Create the first menu with 50 items so that menu scrolling
9449         can be tested.
9450         
9451         
9452         Patch from Jonathan Blandford  <jrb@redhat.com>
9453
9454         * gtk/gtkmenuitem.[ch] (gtk_menu_item_toggle_size_request): new
9455         system to handle size requests.  First, we ask what the size of
9456         the toggle is.  Then, when allocating the size, we allocate the
9457         toggle_size first.  This way we can have multiple menu-item
9458         classes w/o needing a seperate class for each.
9459
9460         * gtk/gtkmenu.c (gtk_menu_size_request): Actually use the new system.
9461         * gtk/gtkmenu.c (gtk_menu_size_allocate): Use the new system.
9462
9463         * gtk/gtkcheckmenuitem.c
9464         (gtk_check_menu_item_toggle_size_request): New function to handle
9465         the toggle size-request.
9466
9467 2000-11-07  Havoc Pennington  <hp@redhat.com>
9468
9469         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location):
9470         Half-ass somewhat fix this function, so that scrolling to the
9471         insertion point works. Pango hacking is in the future to really
9472         fix it.
9473
9474         * gtk/gtktextview.c (gtk_text_view_drag_data_get): Don't calculate
9475         length of data, no longer used.
9476
9477         * gtk/gtktextbuffer.c (gtk_text_buffer_finalize): move destroy
9478         method contents in here, get rid of destroy method
9479         (gtk_text_buffer_insert_range): Fix some g_return_if_fail checks
9480         that were backward. Remove debug spew.
9481         (cut_or_copy): Make the clipboard work with insert_range to
9482         preserve tags and pixbufs, not just the primary selection.
9483
9484 2000-11-07  Havoc Pennington  <hp@redhat.com>
9485
9486         * gtk/gtktextmark.c (gtk_text_mark_is_visible): rename 
9487         to gtk_text_mark_get_visible
9488
9489         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): fix
9490         bug that was generating an invalid iterator
9491
9492         * gtk/gtktextiter.c (gtk_text_iter_get_offset): move call to
9493         ensure_char_offsets() in front of code placing the iter in an
9494         invalid state.
9495
9496         * gtk/gtktextbuffer.c (gtk_text_buffer_paste_primary):
9497         make override_location arg const
9498         (paste): Replace the selection if we paste into the 
9499         current selection
9500
9501         * gtk/gtkselection.h: Remove "GtkSelectioData"
9502         (struct _GtkSelectionData): move the definition here.
9503
9504         * gtk/gtktextbuffer.c (gtk_text_buffer_update_primary_selection):
9505         Export the GTK_TEXT_BUFFER_CONTENTS target for in-process copies
9506
9507         * gtk/gtktextiter.c (gtk_text_iter_get_tags): New function
9508
9509         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_range): implement
9510         (gtk_text_buffer_insert_range_interactive): implement
9511         (gtk_text_buffer_get_tags): Remove, replaced by
9512         gtk_text_iter_get_tags()
9513
9514         * gtk/gtktextiter.c (gtk_text_iter_forward_search): Add a search
9515         limit parameter, to avoid infinite linear scan.
9516         (gtk_text_iter_backward_search): Add search limit
9517         (gtk_text_iter_forward_find_char): Add search limit
9518         (gtk_text_iter_backward_find_char): Add search limit
9519
9520 2000-11-07  Alexander Larsson  <alla@lysator.liu.se>
9521
9522         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
9523         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkimage-fb.c,
9524         gdk/linux-fb/gdkpango-fb.c, gdk/linux-fb/gdkpixmap-fb.c,
9525         gdk/linux-fb/gdkwindow-fb.c:
9526         use g_object_new() instead of g_type_create_instance() which
9527         is a private function for fundamental type implementations.
9528
9529         * gdk/linux-fb/gdkinput-ps2.c:
9530         Use MEDIUMRAW instead of RAW keycodes. Remove keyboard state-table
9531         instead just store the current modifier state. Add a (somewhat broken)
9532         keyboard input parser for XLATE mode too, if we couldn't use MEDIUMRAW.
9533         Rename exported function gdk_input_ps2_get_mouseinfo to
9534         gdk_input_get_mouseinfo.
9535
9536         * gdk/linux-fb/gdkmain-fb.c, gdk/linux-fb/gdkprivate-fb.h,
9537         gdk/linux-fb/gdkwindow-fb.c:
9538         gdk_input_ps2_get_mouseinfo was renamed to gdk_input_get_mouseinfo.
9539         
9540
9541 2000-11-02  Havoc Pennington  <hp@redhat.com>
9542
9543         * gtk/gtkfilesel.h, gtk/gtkfilesel.c: Derive from GtkDialog, and
9544         use stock buttons. Should be 100% source compatible, appropriate
9545         filesel fields now point to dialog->vbox and dialog->action_area.
9546         On the bizarre side, dialog->action_area and filesel->action_area
9547         are not the same widget.
9548         (gtk_file_selection_init): Put some padding around the selection
9549         entry, so it isn't touching the GtkDialog separator.    
9550
9551         * gtk/gtkfontsel.h, gtk/gtkfontsel.c: Derive from GtkDialog, 
9552         use stock buttons, etc. Should also be source compatible.
9553         Set the dialog default title in _init not _new().
9554         
9555         * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): 
9556         Use stock buttons; don't put a button box inside the existing
9557         dialog button box. Don't bother with push/pop colormap anymore.
9558
9559         * gtk/gtkdialog.h (GtkResponseType): Add a bunch of more 
9560         specific GTK_RESPONSE_* values. This is clearer than ACCEPT/REJECT
9561         for message dialog, and necessary for the font selection and color
9562         selection with help and apply buttons.
9563         
9564         * gtk/gtkdialog.c (gtk_dialog_add_button): Return a pointer 
9565         to the created button widget. Set GTK_CAN_DEFAULT on the button.
9566         (gtk_dialog_init): Default to GTK_BUTTONBOX_END, put less spacing
9567         between buttons, put less padding around the action area.
9568         (gtk_dialog_run): Exit on unmap rather than on destroy. 
9569         This will also exit the loop if the widget is hidden.
9570         (gtk_dialog_delete_event_handler): Use GTK_RESPONSE_DELETE_EVENT
9571         instead of GTK_RESPONSE_NONE; since we're already adding a bunch
9572         of GTK_RESPONSE_* stuff, this seems cleaner, and lets you 
9573         special-case delete event.
9574
9575         * gtk/gtktexttagtable.c, gtk/gtktextview.c: Fix doc comment
9576         formatting
9577         
9578 Sun Nov  5 05:32:39 2000  Tim Janik  <timj@gtk.org>
9579
9580         * gtk/testgtk.c (uposition_stop_configure): provide a toggle
9581         button to temporarily disable position recording in the
9582         "saved position" test.
9583
9584 Sat Nov  4 05:37:17 2000  Tim Janik  <timj@gtk.org>
9585
9586         * gtk/gtkthemes.c: added compat code that temporarily implements
9587         GtkThemeEnginePlugin as a GObject exporting GTypePlugin. this is
9588         going to be revamped by owen's upcoming GtkModule patches, but
9589         untill then people want gtk to build, right? ;)
9590
9591 2000-11-04  Havoc Pennington  <hp@pobox.com>
9592
9593         * gtk/gtkenums.h: remove trailing comma from GtkDeleteType member
9594         list
9595
9596         * docs/Changes-2.0.txt: Add note about
9597         gtk_container_get_toplevels()
9598
9599         * gtk/gtktextview.h: formatting
9600         
9601         * gtk/gtktextview.c: don't start descriptions with "Returns",
9602         confuses gtk-doc
9603
9604 Sat Nov  4 10:12:27 2000  Owen Taylor  <otaylor@redhat.com>
9605
9606         * autogen.sh: When doing sanity checking on ACLOCAL_FLAGS,
9607         look for glib-2.0.m4 not glib.m4. (Ali Abdin)
9608
9609 2000-11-03  Havoc Pennington  <hp@redhat.com>
9610
9611         * gtk/gtktexttagtable.c: Docs
9612         (gtk_text_tag_table_size): return a signed int
9613
9614         * gtk/gtktexttag.c: s/tkxt/text/g; write documentation
9615         (gtk_text_tag_event): make the event_object a GObject
9616
9617         * gtk/gtktextview.c: Write API docs for all functions.
9618
9619         * gtk/gtktextview.h: add GTK_TEXT_WINDOW_PRIVATE as return value
9620         for gtk_text_view_get_window_type() called on one of the private
9621         windows.
9622
9623         * gtk/gtktextview.c: Instead of accessing text_view->buffer
9624         directly, call get_buffer() which demand-creates a default
9625         buffer. So gtk_text_view_new() can be used to create a view with a
9626         default buffer in it, if you just want an empty text box users can
9627         put data in. Useful for GUI builders also.
9628
9629 2000-11-03  Pablo Saratxaga <pablo@mandrakesoft.com>
9630
9631         * gtk/gtkrc.zh_TW.*: moved gtkrc.zh_TW.Big5 to gtkrc.zh_TW.big5;
9632         the charset encodign portion MUST be in lowercase.
9633         * gtk/gtkrc.az: added file for Azeri language
9634
9635 2000-11-03  Havoc Pennington  <hp@redhat.com>
9636
9637         Get widgets working on the btree/buffer side. Display of them 
9638         still doesn't work.
9639         
9640         * gtk/gtktextview.c: start implementing child widget stuff
9641
9642         * gtk/gtktextiter.c (gtk_text_iter_get_child_anchor): new function
9643
9644         * gtk/gtktextlayout.c: handle embedded widgets
9645
9646         * gtk/gtktextdisplay.c: handle embedded widgets
9647
9648         * gtk/gtktextchild.c: Implement all the child anchor goo
9649
9650         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor): New
9651         function
9652
9653         * gtk/gtktextbtree.c: Add child anchor table to the btree struct
9654         (insert_pixbuf_or_widget_segment): abstract out common portions of 
9655         creating a child anchor or a pixbuf segment.
9656         (gtk_text_btree_create_child_anchor): new function
9657         (gtk_text_btree_unregister_child_anchor): new function
9658
9659         * gtk/gtkmarshal.list: added VOID:OBJECT,INT,INT for the
9660         allocate_child signal on GtkTextLayout
9661
9662         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): fix bogus return
9663         values
9664         (gtk_text_iter_get_child_anchor): new function
9665
9666         * gtk/gtktextbuffer.c (gtk_text_buffer_real_changed): Add a
9667         default handler for the changed signal, which calls
9668         gtk_text_buffer_set_modified(), instead of just always emitting
9669         changed then calling set_modified() manually. I guess this is
9670         maybe more flexible. It seems logical.
9671
9672 Fri Nov  3 08:58:38 2000  Tim Janik  <timj@gtk.org>
9673
9674         * gtk/gtkobject.c: _g_signal_handlers_destroy() is prefixed with '_'
9675         now.
9676
9677         * gtk/gtksignal.c: use g_signal_connect_closure_by_id() now.
9678
9679 Thu Nov  2 14:10:51 2000  Owen Taylor  <otaylor@redhat.com>
9680
9681         * gdk/x11/gdkdnd-x11.c: Fix a bunch of functions that should have
9682         been marked static.
9683
9684 2000-11-02  Havoc Pennington  <hp@redhat.com>
9685
9686         * gtk/testgtk.c (create_labels): had a test backward
9687
9688         * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Copy the client-side GC
9689         fields, so the dest GC ends up with the correct clip origin, 
9690         etc. Fixes a bug where colored labels didn't redraw 
9691         properly.
9692
9693 2000-11-02  Alexander Larsson  <alexl@redhat.com>
9694
9695         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
9696         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkpango-fb.c,
9697         gdk/linux-fb/gdkpixmap-fb.c, gdk/linux-fb/gdkwindow-fb.c:
9698         Add last argument to t_type_register_static call.
9699         
9700         * gdk/linux-fb/gdkdrawable-fb2.c:
9701         Add last argument to t_type_register_static call.
9702         export the get_image drawable virtual function.
9703
9704         * gdk/linux-fb/gdkimage-fb.c:
9705         Add last argument to t_type_register_static call.
9706         rename gtk_image_get to _gdk_fb_get_image and
9707         export it for use by gdkdrawable-fb2.
9708
9709         * gdk/linux-fb/gdkprivate-fb.h:
9710         export _gdk_fb_get_image.
9711
9712         * gdk/linux-fb/gdkselection-fb.c:
9713         Add new api call stubs.
9714
9715         * gtk/Makefile.am:
9716         Missing ( in linux-fb part.
9717
9718         * modules/linux-fb/Makefile.am:
9719         Must link with gdk_pixbuf or get unresolved symbol.
9720
9721 2000-11-01  Havoc Pennington  <hp@pobox.com>
9722
9723         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Use 
9724         GTK_TYPE_TEXT_ITER and BOXED marshallers
9725
9726         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): ditto
9727
9728         * gtk/gtktexttag.c (gtk_text_tag_class_init): ditto
9729         
9730         * gtk/gtk-boxed.defs: add GtkTextIter
9731
9732         * gtk/gtkmarshal.list: Add marshallers for text widget that 
9733         properly use OBJECT and BOXED
9734
9735 2000-11-01  Havoc Pennington  <hp@redhat.com>
9736
9737         * gtk/testgtk.c (create_labels): Test set_markup_with_accel()
9738
9739         * gtk/gtklabel.c (set_markup): Convert the unichar to a GDK keyval
9740         before returning it. 
9741         
9742 2000-11-01  Havoc Pennington  <hp@redhat.com>
9743
9744         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
9745         Clip the rectangle to be rendered to the drawable, since
9746         get_from_drawable() requires a region within the drawable
9747
9748 2000-11-01  Havoc Pennington  <hp@redhat.com>
9749
9750         * gtk/gtkimage.c (gtk_image_expose): Um, don't randomly subtract 4
9751         from coordinates.
9752
9753 Wed Oct 25 20:10:57 2000  Owen Taylor  <otaylor@redhat.com>
9754
9755         * gdk/gdkevents.c (gdk_event_copy): Only ref the window if
9756         it isn't NULL.
9757
9758 2000-11-01  Havoc Pennington  <hp@pobox.com>
9759
9760         * gtk/gtklabel.c (gtk_label_set_attributes): Set a PangoAttrList
9761         on a label
9762         (gtk_label_finalize): unref the attr list if any.
9763
9764         * gtk/testgtk.c (create_get_image): close test on second click
9765         (make_message_dialog): close dialog if it exists
9766
9767         * gdk/gdkpango.c (gdk_draw_layout): Handle rise attribute
9768
9769         * gdk-2.0.pc.in (Requires): Make it require gdk-pixbuf-2.0 not
9770         gdk-pixbuf
9771
9772         * gtk/gtklabel.c (gtk_label_set_markup): new function to set label
9773         from Pango markup format
9774         (gtk_label_set_markup_with_accel): ditto but with accelerator
9775         parsing
9776
9777         * gtk/gtkimage.c (gtk_image_expose): reformatting.
9778
9779         * gdk/gdkpixbuf-drawable.c (gdk_pixbuf_get_from_drawable): Hack to
9780         reflect current state of GDK - use gdk_drawable_get_colormap, etc.
9781         Check GDK_IS_WINDOW() not !GDK_IS_PIXMAP() to decide whether to 
9782         call gdk_window_get_origin().
9783
9784         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
9785         implement GDK_PIXBUF_ALPHA_FULL
9786         
9787 Wed Nov  1 03:43:42 2000  Tim Janik  <timj@gtk.org>
9788
9789         * gtk/gtksignal.c (gtk_signal_compat_matched): make use of
9790         g_signal_handlers_block_matched, g_signal_handlers_unblock_matched and
9791         g_signal_handlers_disconnect_matched to block/unblock and disconnect
9792         multiple handlers respectively, instead of only treating the
9793         first handler found (bug reported by owen).
9794
9795 Mon Oct 30 19:23:50 2000  Jonathan Blandford  <jrb@redhat.com>
9796
9797         * gtk/gtktreeview.c (gtk_tree_view_expand_row): New function.
9798
9799         * gtk/gtktreeview.c (gtk_tree_view_collapse_row): New function.
9800
9801         * gtk/gtktreeview.c, gtk/gtktreemodel.c, gtk/gtktreeselection.c
9802         gtk/gtktreestore.h, gtk/gtktreeview.h, gtk/gtktreeviewcolumn.c,
9803         gtk/gtktreeviewcolumn.h: Fixed inline docs.
9804
9805         * docs/reference/gtk/tree_widget.sgml: Proto intro to the tree
9806         widget.  Needs writing someday.
9807
9808         * docs/reference/gtk/tmpl/gtktree*sgml: Added the tree widget to
9809         the docs.
9810
9811 2000-10-30  Havoc Pennington  <hp@redhat.com>
9812
9813         * gtk/gtktextview.h, gtk/gtktextview.c:
9814         Rename delete_at_cursor delete_from_cursor, and 
9815         move to move_cursor.
9816
9817 2000-10-30  Havoc Pennington  <hp@redhat.com>
9818
9819         * gtktextbtree.c, gtktextbtree.h, gtktextbuffer.c,
9820         gtktextbuffer.h, gtktextchild.c, gtktextchild.h,
9821         gtktextchildprivate.h, gtktextdisplay.c, gtktextdisplay.h,
9822         gtktextiter.c, gtktextiter.h, gtktextiterprivate.h,
9823         gtktextlayout.c, gtktextlayout.h, gtktextmark.c, gtktextmark.h,
9824         gtktextmarkprivate.h, gtktextsegment.c, gtktextsegment.h,
9825         gtktexttag.c, gtktexttag.h, gtktexttagprivate.h,
9826         gtktexttagtable.c, gtktexttagtable.h, gtktexttypes.c,
9827         gtktexttypes.h, gtktextview.c, gtktextview.h:
9828
9829         Massive reindentation and reformatting. Arg alignment and comments
9830         still need fixing in various places.
9831
9832 2000-10-30  Havoc Pennington  <hp@redhat.com>
9833
9834         * gtk/gtktextview.h, gtk/gtktextview.c: Change run action signals
9835         to be named insert_at_cursor and delete_at_cursor so C++ can
9836         handle them.
9837
9838 2000-10-28  Tor Lillqvist  <tml@iki.fi>
9839
9840         * gtk/gtkrc.c (gtk_rc_append_default_module_path): Make sure not
9841         to get a double directory separator in case the home directory
9842         ends with one. This would cause trouble especially on Windows,
9843         where the path will be confused with the syntax for an an UNC
9844         (network share) path \\server\share\path.
9845         (gtk_rc_add_initial_default_files): Ditto.
9846
9847 Sat Oct 28 02:33:09 2000  Robert Brady  <robert@suse.co.uk>
9848
9849         * gtk/gtkmarshal.list: add new marshallers for GtkTextView.
9850
9851         * gtk/gtktextview.c: Use correct marshallers.
9852
9853 Fri Oct 27 17:56:26 2000  Jonathan Blandford  <jrb@redhat.com>
9854
9855         * gtk/gtkliststore.c: Not sure how this ever worked.  Fixed it to
9856         use new iter stuff, and added all the appropriate signals et al.
9857
9858         * gtk/gtktreedatalist.h: s/gtk/_gtk to further reinforce that this
9859         code is internal to gtk only.
9860
9861 2000-10-28  Tor Lillqvist  <tml@iki.fi>
9862
9863         * gtk/gtk.def
9864         * gtk/makefile.{mingw,msc}.in: Adjust to Tim's changes. Use
9865         glib-genmarshal etc.
9866
9867 Fri Oct 27 20:15:00 2000  Tim Janik  <timj@gtk.org>
9868
9869         * gtk/Makefile.am: added dependancies for testtextbuffer which broke
9870         parallel builds.
9871
9872 Fri Oct 27 18:51:44 2000  Tim Janik  <timj@gtk.org>
9873
9874         * gtk/gtksignal.[hc]: adapt to GSignal signature changes.
9875
9876 2000-10-27  Robert Brady  <robert@suse.co.uk>
9877
9878         * configure.in (ALL_LINGUAS): Add en@IPA (English, phonetic), 
9879         en_GB (British), ia (Interlingua).
9880
9881 2000-10-26  Havoc Pennington  <hp@redhat.com>
9882
9883         * gtk/gtktextiter.c (my_strrstr): fix constness warning
9884
9885         Fixed output of:
9886         nm -g -l .libs/libgtk-x11-1.3.so | grep ' T ' | grep -v gtk_ | grep -v GTK_
9887         
9888         * gtk/gtktextsegment.c (char_segment_new): rename
9889         (_char_segment_new_from_two_strings): rename
9890         (_toggle_segment_new): rename
9891         
9892         * gtk/gtkclipboard.c (ensure_clipboard_widget): make this static
9893         (make_clipboard_widget): make it static
9894         (text_get_func): static
9895         (text_clear_func): static
9896
9897         * gtk/gtkcolorsel.c (adjustment_changed): make this function
9898         static
9899         (hex_changed): make it static
9900         (hsv_changed): make it static
9901         (opacity_entry_changed): make it static
9902
9903         * gtk/gtktextbtree.c (change_node_toggle_count): rename with _gtk
9904         (toggle_segment_check_func): rename with _gtk
9905
9906         * gtk/gtktextchild.c (_pixbuf_segment_new): rename with _gtk
9907         (_widget_segment_new): rename
9908         (_widget_segment_add): rename
9909         (_widget_segment_remove): rename
9910         (_widget_segment_ref): rename
9911         (_widget_segment_unref): rename
9912
9913         * gtk/gtktextmark.c (_mark_segment_new): Rename
9914         _gtk_mark_segment_new   
9915
9916 2000-10-26  Havoc Pennington  <hp@redhat.com>
9917
9918         * gtk/gtkmarshal.list: add new marshallers used by the text widget
9919         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
9920         types
9921
9922         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): fix
9923         marshaller types
9924
9925         * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktextdisplay.h,
9926         gtk/gtktextdisplay.c: We need to preserve Tk copyrights and
9927         license on these files.
9928
9929         * gtk/gtktextiter.c (gtk_text_iter_backward_search): Make this
9930         work.
9931
9932         * gtk/gtktextbtree.c (gtk_text_btree_new): init stamps to 
9933         runtime random number different for each tree, instead of 
9934         a constant I made up.
9935
9936 Thu Oct 26 07:36:16 2000  Tim Janik  <timj@gtk.org>
9937
9938         * gtk/Makefile.am: buncha cleanups, kludged build sources
9939         dependencies with a Makefile: oldest-source-stamp dependancy
9940         for the moment. automake is really fighting us here, with
9941         intentionally not allowing user-defined rules or dependancies
9942         prior to it's -include $(DEP_FILES) statement. sucks rocks!
9943
9944         * gtk/Makefile.am: added gtktextlayout.h and gtktextdisplay.h
9945         to public headers. tehy have a comment stating that they are
9946         "semi-public" aren't included by gtk.h and if enums popup there,
9947         they can be /*< skip >*/-ed.
9948
9949         * gtk/gtktextlayout.h: 
9950         * gtk/gtktextdisplay.h: indentation fixes, comment fixes,
9951         added LGPL... <SIGH>
9952
9953 Wed Oct 25 20:40:25 2000  Jonathan Blandford  <jrb@redhat.com>
9954
9955         * gtk/gtktreemodel.h: Got rid of GtkTreeNode, and changed it to
9956         GtkTreeIter.  Added iterators everywhere.
9957
9958         * gtk/gtktreeviewcolumn.c: Changed to use the iterators.
9959
9960         * gtk/gtktreeviewselection.c: Changed to use the iterators.
9961
9962         * gtk/gtktreestore.c: Changed to use the iterators.
9963
9964         * gtk/gtkliststore.c: Commented out the code.  Will convert to
9965         iterators tomorrow.
9966
9967         * gtk/gtkmodelsimple.c: Commented out the code.  Will convert to
9968         iterators tomorrow.
9969
9970         * gtk/treestoretest.c: Changed to use iterators.
9971
9972         * demos/testgtk/main.c: Moved to use the new iterator system.
9973
9974 Thu Oct 26 02:10:32 2000  Tim Janik  <timj@gtk.org>
9975
9976         * gtk/Makefile.am: invoke maketypes.awk with LC_ALL=C to avoid
9977         localization misbehaviour.
9978
9979         * gtk/gtk-boxed.defs: nuked "boxed" type GtkCTreeNode, since it's
9980         a useless type without copy/free.
9981
9982         * gtk/gtkctree.c (gtk_ctree_class_init): use GTK_TYPE_POINTER instead
9983         of GTK_TYPE_CTREE_NODE.
9984
9985 Thu Oct 26 00:51:52 2000  Tim Janik  <timj@gtk.org>
9986
9987         * gtk/gtksignal.c:
9988         (gtk_signal_emitv): use g_value_set_static_{string|boxed} where
9989         applicable.
9990
9991         * gtk/gtk-boxed.defs (GtkSelectionData): specify
9992         gtk_selection_data_copy and gtk_selection_data_free
9993         do GtkSelectionData work as params in signals.
9994
9995 Wed Oct 25 20:47:41 2000  Tim Janik  <timj@gtk.org>
9996
9997         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init): urg, removed
9998         implementation of gtk_marshal_VOID__INT_INT_INT_INT. if people do that,
9999         couldn't they at least give it a non-standard name?
10000         
10001         * gtk/gtktextlayout.c: arg! yet another implementation of
10002         gtk_marshal_VOID__INT_INT_INT_INT(), is this a conspiracy?
10003
10004         * gtk/gtktextbuffer.c: gotcha! captured a vagabonding
10005         gtk_marshal_VOID__INT_POINTER_INT() implementation, braught it back
10006         home. now i know this _is_ a conspiracy.
10007
10008         * gtk/gtkwidget.c (gtk_widget_class_init): marshaller fixups for
10009         ::state-changed.
10010
10011         * gtk/gtkaccelgroup.c (gtk_accel_group_create_remove): 
10012         (gtk_accel_group_create_add): marshaller signature fixups.
10013
10014         * gtk/gtklistitem.c (gtk_list_item_class_init): signal creation fixups,
10015         pass in GTK_TYPE_SCROLL_TYPE instead of GTK_TYPE_ENUM.
10016
10017         * gtk/gtkobject.[hc]: removed GTK_CONNECTED flag, it's not valid
10018         anymore.
10019
10020 Tue Oct 24 23:59:21 2000  Tim Janik  <timj@gtk.org>
10021
10022         * docs/reference/Makefile.am: disabled SUBDIRS for the moment, since
10023         due to the signal system changes, it wouldn't build currently. to
10024         be fixed soon.
10025
10026         * docs/Changes-2.0.txt: GtkSignal/GSignal updates.
10027
10028         * gtk/gtkwidget.c: ::direction_changed takes an enum as argument,
10029         so it needs gtk_marshal_VOID__ENUM() instead of
10030         gtk_marshal_NONE__UINT().
10031
10032         * gdk/gdk*.c: adapted type registration functions.
10033
10034         * gtk/gtkbindings.c:
10035         * gtk/gtkaccelgroup.c: operate on GSignalQuery, GtkSignalQuery is
10036         gone.
10037
10038         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType.
10039
10040         * gtk/gtkobject.c:
10041         (gtk_object_destroy):
10042         (gtk_object_shutdown): fixed recursion guards. basically we have to
10043         catch the case where any of GObject.shutdown() or gtk_object_destroy()
10044         is called during ::destroy, and avoid recursion there.
10045
10046         * gtk/gtktypeutils.c:
10047         * gtk/maketypes.awk: awk-script hackup to provide gtk_type_init() with
10048         boxed_copy/boxed_free. this needs a more general solution based on a
10049         publically installed code-generator utility.
10050
10051         * gtk/gtktypeutils.[hc]: compat aliased GTK_TYPE_BOXED to G_TYPE_BOXED,
10052         glib's gobject has support for that now.
10053         define GtkSignalMarshaller in terms of GSignalCMarshaller.
10054
10055 Mon Oct 23 09:36:42 2000  Tim Janik  <timj@gtk.org>
10056
10057         * gtk/gtksignal.[hc]:
10058         * gtk/gtkmarshal.[hc]:
10059         * gtk/Makefile.am: generate marshallers with glib-genmarshal and don't
10060         compile gtkmarshal.c on its own anymore, just include it in gtksignal.c.
10061         removed #include <gtkmarshal.h>s all over the place, gtksignal.h takes
10062         care of that.
10063
10064         * *.c: marshaller name fixups.
10065
10066         * gtk/gtkmarshal.list: added a comment briefing the format.
10067
10068 Sun Oct 22 23:14:39 2000  Tim Janik  <timj@gtk.org>
10069
10070         * gtk/gtksignal.[hc]: nuked old implementation. we mostly have
10071         compatibility macros here now. more specifically, most of
10072         the API is preserved (yes, _most_, nonwithstanding the
10073         following exceptions listed, the API is stil lHUGE ;)
10074         things that got removed completely:
10075         GtkSignalQuery, gtk_signal_query(), gtk_signal_n_emissions(),
10076         gtk_signal_n_emissions_by_name(), gtk_signal_handlers_destroy(),
10077         gtk_signal_set_funcs(), gtk_signal_handler_pending_by_id(),
10078         gtk_signal_add_emission_hook(), gtk_signal_add_emission_hook_full(),
10079         gtk_signal_remove_emission_hook().
10080         non-functional functions variants:
10081         gtk_signal_add_emission_hook(), gtk_signal_remove_emission_hook().
10082         the GtkCallbackMarshal argument to gtk_signal_connect_full() is
10083         not supported anymore.
10084         (gtk_signal_compat_matched): new internal function to aid
10085         implementation of the compatibility macros, it  provides
10086         functionality to block/unblock/disconnect handlers based
10087         on func/data.
10088
10089         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType,
10090
10091         * *.c: adaptions to new type registration API signatures.
10092
10093 Fri Oct 20 15:26:33 2000  Tim Janik  <timj@gtk.org>
10094
10095         * gtk/gtktypeutils.[hc]: removed G_TYPE_GTK_POINTER cludge.
10096
10097 2000-10-25  Robert Brady  <robert@suse.co.uk>
10098
10099         * gdk/x11/gdkproperty-x11.c (gdk_property_get, gdk_property_change,
10100         gdk_property_delete): If window == NULL, assume the root window.
10101         (restoring the behaviour that was in 1.2).
10102         
10103         * gtk/testtext.c (save_buffer): Allow creation of new files when
10104         saving.
10105
10106         (fill_file_buffer): Don't die if a UTF-8 sequence is split across
10107         calls to read().
10108
10109 2000-10-25  Tor Lillqvist  <tml@iki.fi>
10110
10111         * gdk/gdkwindow.c: Include x11/gdkx.h only when building for X11.
10112
10113         * gdk/win32/gdkdrawable-win32.c
10114         * gdk/win32/gdkimage-win32.c
10115         * gdk/win32/gdkprivate-win32.h: Corresponding changes as in the
10116         X11 backend.
10117
10118         * gdk/win32/gdkcc-win32.c
10119         * gdk/win32/gdkcolor-win32.c
10120         * gdk/win32/gdkfont-win32.c
10121         * gdk/win32/gdkinput-win32.c
10122         * gdk/win32/gdkmain-win32.c
10123         * gdk/win32/gdkproperty-win32.c: Silence gcc -Wall.
10124
10125 2000-10-24  Havoc Pennington  <hp@redhat.com>
10126
10127         * gtk/gtktextview.c (gtk_text_view_scroll_to_mark_adjusted): make
10128         it a static function
10129
10130         * gtk/gtktextbtree.c (gtk_text_btree_tag): Gee, maybe we should
10131         redraw text when a tag is applied to it.
10132
10133         * gtk/gtktexttag.c (gtk_text_tag_affects_size)
10134         (gtk_text_tag_affects_nonsize_appearance): private functions to
10135         see if a tag requires various kinds of redraw/layout to be queued
10136         up.
10137
10138         * gtk/gtktexttag.h (struct _GtkTextTag): Remove relief crackrock
10139
10140         * gtk/testtext.c (fill_example_buffer): Put the cursor 
10141         at the start of the buffer, so search works by default
10142
10143         * gtk/gtktextiter.c (lines_match): init match_start always
10144
10145         * gtk/gtktextbuffer.c (gtk_text_buffer_get_iter_at_line_index): New
10146         function, get iter at a line + a byte index
10147
10148         * gtk/gtktextiter.c (gtk_text_iter_set_line_index): New function,
10149         to set byte position within a line
10150         (gtk_text_iter_check): remove leftover G_BREAKPOINT thing
10151
10152 2000-10-23  Havoc Pennington  <hp@redhat.com>
10153
10154         * gtk/testtext.c: Re-enable the "find" dialog
10155
10156         * gtk/testgtk.c: Add test for gdk_drawable_get_image
10157         
10158         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix bug where
10159         the arguments to gdk_draw_drawable were in the wrong order
10160         (gdk_window_paint_init_bg): This function was ignoring the
10161         init_region, instead of clipping to it, so the entire backing
10162         pixmap was cleared on every begin_paint()
10163         (gdk_window_begin_paint_region): Hmm, the same list-walking bug
10164         was in here again, the loop kept using the same GtkWindowPaint
10165         over and over.
10166         (gdk_window_begin_paint_region): Fix a bug where we had two
10167         x_offset instead of x_offset and y_offset
10168
10169         * gdk/gdkdraw.c (gdk_drawable_get_image): get composite drawable
10170         before we get the image.
10171         (gdk_draw_drawable): get the composite before we draw the drawable.
10172         (gdk_drawable_real_get_composite_drawable): default
10173         get_composite_drawable implementation that returns the drawable 
10174         itself
10175
10176         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Add
10177         get_composite_drawable virtual function
10178
10179         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix a cheesy
10180         list-walking bug
10181
10182         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable): Add a hack to
10183         make this work if the source drawable is a GdkDrawableImplX11
10184         instead of a public drawable type. This is really broken; the
10185         problem is that GdkDrawable needs a virtual method get_xid(), but
10186         of course that doesn't work in practice. Enter RTTI.
10187
10188         Also, improve mismatched depth message.
10189
10190         * gdk/gdkpixmap.c (gdk_pixmap_get_image): Implement get_image for
10191         GdkPixmap
10192
10193         * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_class_init):
10194         install _gdk_x11_get_image as our implementation of get_image
10195         
10196         * gdk/x11/gdkimage-x11.c (gdk_image_get): Rename to
10197         _gdk_x11_get_image and export for use in gdkdrawable-x11.c
10198
10199         * gdk/gdkimage.c (gdk_image_get): Make this just a wrapper around
10200         gdk_drawable_get_image
10201
10202         * gdk/gdkdraw.c (gdk_drawable_get_image): call virtual get_image
10203
10204         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Virtualize
10205         get_image
10206
10207         * gtk/gtktreestore.c (gtk_tree_store_get_node): remove weird
10208         trailing semicolon after for loop
10209
10210 Mon Oct 23 12:07:57 2000  Owen Taylor  <otaylor@redhat.com>
10211
10212         * gtk/gtkwidget.c (gtk_widget_set_style_internal): Fix problem
10213         where font_desc for widget's context lagged widget's font_desc by
10214         one step.
10215
10216 2000-10-22  Tor Lillqvist  <tml@iki.fi>
10217
10218         * gdk/win32/gdkgc-win32.c
10219         * gdk/win32/gdkimage-win32.c: Remove gcc -Wall warnings.
10220
10221         * gtk/makefile.mingw.in
10222         * gtk/gtk.def: Updates.
10223
10224         * gtk/testgtk.c: sleep() is called _sleep in MS's C
10225         library.
10226
10227         * gtk/gtkimcontextsimple.c: Include <stdlib.h> for bsearch().
10228
10229         * gtk/makefile.msc: Remove
10230
10231         * gtk/makefile.msc.in: New file, like makefile.mingw.in.
10232
10233         * gtk/Makefile.am: Add it.
10234
10235         * configure.in: Generate it.
10236
10237         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor)
10238         * gtk/gtktextbtree.c (gtk_text_line_char_to_byte): Return
10239         something even if not implemented, to satisfy picky MSVC.
10240
10241         Patches by Hans Breuer:
10242         
10243         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_glyphs): Call
10244         SetBkMode() and SetTextAlign() before calling
10245         pango_win32_render().
10246
10247         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_values_to_win32values):
10248         Set hcliprgn to NULL after destroying it.
10249         (gdk_gc_set_clip_rectangle): Delete hcliprgn and set to NULL.
10250
10251         * gdk/win32/gdkgeometry-win32.c
10252         (_gdk_windowing_window_queue_antiexpose): More effective
10253         implementation.
10254
10255         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_new): Use drawable's
10256         depth as default, not the visual's.
10257
10258         * gdk/win32/gdkwindow-win32.c (gdk_window_set_title): Guard
10259         against empty title.
10260
10261         * gdk/win32/gdkprivate-win32.h: Define a helper macro,
10262         IMAGE_PRIVATE_DATA.
10263
10264         * gdk/win32/gdkimage-win32.c: Use it.
10265
10266 2000-10-22  Robert Brady  <robert@suse.co.uk>
10267
10268         * configure.in: Check for bind_textdomain_codeset
10269
10270         * gtk/gtkmain.c (gtk_init_check): If bind_textdomain_codeset 
10271         present, make use of it.
10272
10273         Add a translatable string "default:LTR" which, if translated
10274         to "default:RTL", will cause the default direction to be
10275         Right-to-Left.
10276
10277         * gtk/gtkrange.h, gtk/gtkrange.c: Take into account the widget 
10278         direction if marked as flippable.
10279
10280         * gtk/gtkhscale.c: Mark widget as flippable.
10281         
10282 2000-10-04  Havoc Pennington  <hp@redhat.com>
10283
10284         * gtk/testgtk.c (create_buttons): create some stock buttons
10285         with the default accel group
10286         (create_image): test some new GtkImage features
10287         (make_message_dialog): test GtkMessageDialog
10288         (create_modal_window): fix someone's bizzarro indentation
10289
10290         * gtk/gtkwindow.h, gtk/gtkwindow.c: Implement 
10291         GTK_WIN_POS_CENTER_ON_PARENT. 
10292         Add "destroy with parent" setting, which means the window goes
10293         away with its transient parent.
10294         (gtk_window_get_default_accel_group): get the default accel group
10295         for the window.
10296         (gtk_window_set_destroy_with_parent): set/unset destroy with
10297         parent flag
10298         (gtk_window_read_rcfiles): invalidate icon set caches
10299         after reloading rcfiles 
10300
10301         * gtk/gtkenums.h (GtkWindowPosition): add
10302         GTK_WIN_POS_CENTER_ON_PARENT, which centers a dialog 
10303         on its parent window when the dialog is mapped for the first time.
10304
10305         * gtk/gtkmessagedialog.h, gtk/gtkmessagedialog.c: Add 
10306         a simple message dialog class
10307         
10308         * gtk/gtkdialog.c (gtk_dialog_init): Connect delete event 
10309         handler to emit response signal, and maybe later it would
10310         honor a hide_on_delete flag - though that isn't there yet.
10311         Set border width on the vbox to 2, so we get some padding.      
10312         Use a button box for the action area.
10313         (gtk_dialog_key_press): synthesize a delete event if Esc
10314         is pressed and the GtkWidget key press handler didn't 
10315         handle the escape key.
10316         (gtk_dialog_new_with_buttons): new function creates a dialog
10317         with some default buttons in it.
10318         (gtk_dialog_add_action_widget): add an activatable widget
10319         as a button in the dialog - you can also add a non-activatable
10320         widget by accessing the action area directly.
10321         (gtk_dialog_add_button): add a simple button - stock ID or 
10322         label - to the action area
10323         (gtk_dialog_response): emit response signal
10324         (gtk_dialog_run): block waiting for the dialog, return 
10325         the response. Override normal delete_event behavior, so that 
10326         delete_event does nothing inside gtk_dialog_run().
10327
10328         * gtk/gtkdialog.h, gtk/gtkdialog.c: Add "response" signal
10329         emitted when an action widget is clicked or the dialog gets
10330         delete_event
10331
10332         * gtk/gtk.h: add gtkmessagedialog.h
10333
10334         * gtk/Makefile.am: add gtkmessagedialog.[hc]
10335
10336 2000-10-18  Havoc Pennington  <hp@redhat.com>
10337
10338         * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): Fix a bug 
10339         where any number of empty lines would get skipped
10340
10341         * gtk/gtktextiter.h: Remove padding from GtkTextIter; live on the
10342         edge.
10343
10344         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): enhance the
10345         warning about invalid iterators (explain more thoroughly)
10346         (gtk_text_iter_in_region): rename gtk_text_iter_in_range
10347
10348         * gtk/gtktextview.c (FOCUS_EDGE_WIDTH): Make focus rectangle less
10349         big
10350
10351         * demos/*.c: Add error handling
10352
10353         * gtk/gtktextbuffer.c: don't modify const iterators
10354
10355         * gtk/gdk-pixbuf-loader.c: Add full error handling here
10356
10357         * gtk/gtkimage.c (gtk_image_set_from_file): ignore errors
10358         on file load
10359
10360         * gtk/gtkiconfactory.c: Update to reflect addition of error
10361         handling to gdk-pixbuf loaders
10362
10363 Wed Oct 18 11:14:05 2000  Owen Taylor  <otaylor@redhat.com>     
10364
10365         * configure.in demos/Makefile.am demos/testgtk/*: Start of work to
10366         move to new modularized testgtk.
10367
10368 2000-10-17  Jonathan Blandford  <jrb@redhat.com>
10369
10370         * gtk/gtktreeview.c: Draw the arrows correctly.
10371
10372         * gtk/gtktreemodel.c: Added user docs.
10373
10374         * gtk/gtk.h: remove gtktreedatalist.h.
10375
10376         * gtk/gtktreestore.c (gtk_tree_store_get_type): Get the correct
10377         parent when generating my type.
10378
10379         * gtk/gtkmarshal.list: Added four more marshallers: INT:NONE,
10380         POINTER:NONE, POINTER:POINTER, and POINTER:POINTER,INT.
10381
10382 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
10383
10384         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): Move
10385         GtkTreeModel from object to interface.
10386
10387 2000-10-16  Havoc Pennington  <hp@redhat.com>
10388
10389         * gtk/gtktreeviewcolumn.c: #include gtklabel.h, fixing 
10390         compilation
10391
10392 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
10393
10394         * gtk/gtktreeselection.c: Add API documentation to all public
10395         functions.
10396
10397         * gtk/gtktreeviewcolumn.c: Added API documentation to all public
10398         functions.
10399
10400 2000-10-15  Jonathan Blandford  <jrb@redhat.com>
10401
10402         * gtk/gtktreeview.c (gtk_tree_view_insert_column): New function
10403         proposed by Guy Harris <gharris@flashcom.net>.  Also, added API
10404         docs to all public functions.
10405
10406         * gtk/gtktreeview.c, gtk/gtktreeview.h, gtk/gtktreestore.h,
10407         gtk/gtktreestore.c, gtk/gtkliststore.h, gtk/gtkliststore.c,
10408         gtk/gtkmodelsimple.c, gtk/gtkmodelsimple.h, gtk/gtktreedatalist.c,
10409         gtk/gtktreemodel.h, gtk/gtktreeselection.c,
10410         gtk/gtktreeselection.h: Fix GtkTreeNode *node ->GtkTreeNode node
10411         issue.
10412
10413 2000-10-14  Robert Brady  <robert@suse.co.uk>
10414
10415         * configure.in: Added "fa" (Persian) to ALL_LINGUAS.
10416
10417 2000-10-12  Jonathan Blandford  <jrb@redhat.com>
10418
10419         * gtk/gtktreedatalist.[ch] (gtk_tree_data_list_value_to_node): Added
10420         values other then G_TYPE_STRING.
10421         * gtk/gtktreeselection.c: Minor commenting updates.
10422         * gtk/gtktreeview.c: Format updates.
10423
10424 2000-10-09  Tor Lillqvist  <tml@iki.fi>
10425
10426         * README.win32: Update.
10427
10428         * gdk/win32/gdkgeometry-win32.c (gdk_window_clip_changed): Add two
10429         lines that had been deleted by mistake (?).
10430
10431         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Handle
10432         also the case fg==white and bg==black (but still not randomly
10433         coloured cursors). Thanks to Wolfgang Sourdeau.
10434
10435         * gdk/win32/*.c: Silence gcc -Wall.
10436
10437         * gtk/gtk.def: Add missing entry points.
10438
10439         Fixes by Hans Breuer:
10440
10441         * gdk/makefile.msc
10442         * gdk/win32/makefile.msc: Update.
10443
10444         * gdk/testgdk.c: If compiling with debugging (with _DEBUG defined,
10445         some MSVC thing, presumably), cause breakpoint on failures. Add
10446         GDK_NOR case. Call g_log_set_always_fatal.
10447
10448         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_insert): Handle
10449         should be pased by reference.
10450         
10451         * gdk/win32/gdkprivate-win32.h: Correct declaration accordingly.
10452         
10453         * gdk/win32/*.c: Correct calls to gdk_win32_handle_table_insert.
10454
10455         * gdk/win32/gdkevents-win32.c
10456         * gdk/win32/gdkwindow-win32.c: Handle WM_CREATE.
10457
10458         * gdk/win32/gdkgc-win32.c: Fix mixups of drawable and
10459         implementation object.
10460
10461         * gdk/win32/gdkimage-win32.c (gdk_image_get): Handle drawables,
10462         not just windows.
10463         
10464         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_impl_win32_finalize):
10465         Use the wrapper object.
10466         
10467 2000-10-06  Havoc Pennington  <hp@redhat.com>
10468
10469         * Makefile.am (SRC_SUBDIRS): contrib subdir
10470
10471         * gdk/gdkpixbuf.h: Move GdkPixbufAlphaMode to gdk-pixbuf library,
10472         so it can be used in Xlib version
10473
10474         * demos/testpixbuf.c (update_timeout): error checking from 1.0
10475         tree
10476
10477         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_get_pixbuf): Sync
10478         change from 1.0 tree that returns first frame of animation
10479         if the loaded file is an animation.
10480
10481         * contrib: add new directory to hold stuff that comes with GTK+
10482         but isn't really part of GTK+ (for now, gdk-pixbuf-xlib)
10483         
10484         * configure.in: add contrib/*
10485
10486 2000-10-05  Havoc Pennington  <hp@redhat.com>
10487
10488         * demos/testpixbuf-save.c: add pixbuf save test
10489
10490         * demos/Makefile.am: add testpixbuf-save.c
10491
10492 2000-10-05  Jonathan Blandford  <jrb@redhat.com>
10493
10494         * gtk/gtktree.h (GTK_TREE_SELECTION): Replaced with
10495         GTK_TREE_SELECTION_OLD to prevent conflict with gtktreeselection.c
10496         * gtk/testgtk.c: s/GTK_TREE_SELECTION/GTK_TREE_SELECTION_OLD/
10497         * gtk/gtktreeselection.[ch]: Replaced
10498         "node_selected"/"node_unselected" signal with "selection_changed"
10499         signal.
10500
10501 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
10502
10503         * gtk/gtk{tree,cell}?*.[ch]: Checked in initial draft of the new
10504         tree widget.
10505
10506 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
10507
10508         * gdk/gdkwindow.c (gdk_window_draw_arc): Fix obvious bug in circle
10509         drawing.
10510
10511 Wed Oct  4 15:52:15 2000 Owen Taylor  <otaylor@redhat.com>
10512
10513         * gdk/x11/gdkselection-x11.c (_gdk_selection_window_destroyed):
10514         Move list pointer forwards before removing item from
10515         list. (Crash reported by Salmaso Raffaele)
10516
10517         * gdk/gdkwindow.h: Remove spurious trailing ,
10518
10519         * gdk/Makefile.am (LDFLAGS): You can't do interlibrary
10520         dependencies on uninstalled libraries, sorry folks.
10521
10522 2000-10-04  Havoc Pennington  <hp@redhat.com>
10523
10524         * gtk/gtkstock.h, gtk/gtkstock.c, gtk/gtkiconfactory.h,
10525         gtk/gtkiconfactory.c: Fix copyrights    
10526
10527         * demos/testpixbuf.c: add inline pixbuf test
10528         
10529 Mon Sep 25 15:05:17 2000  Owen Taylor  <otaylor@redhat.com>
10530
10531         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c (gdk_window_iconify):
10532         Add gdk_window_iconify.
10533
10534         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c
10535         (gdk_window_set_geometry_hints): Add win_gravity
10536         to geometry structure.
10537
10538         * gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter):
10539         Implement _NET_WM_PING.
10540
10541         * gdk/x11/gdkmain-x11.c (_gdk_windowing_init_check):
10542         Set _NET_WM_PID on the client leader.
10543
10544         * gdk/x11/gdkwindow-x11.c (gdk_window_set_icon_name):
10545         Handle UTF-8 better.
10546
10547         * gdk/x11/gdkwindow-x11.c (gdk_window_set_title): Handle
10548         UTF-8 better, set _NET_WM_NAME as well. Only set
10549         icon name if it hasn't previously been explicitely 
10550         set.
10551
10552 2000-10-03  Havoc Pennington  <hp@redhat.com>
10553
10554         * gtk/testtextbuffer.c: clean up trailing whitespace,
10555         add extensive tests for tag toggle iteration.
10556         
10557         * gtk/gtktextiter.c (MAX_LINEAR_SCAN): decrease linear scan 
10558         distance
10559
10560         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
10561         optimize case where the tag root is on level 1
10562         (gtk_text_line_previous_could_contain_tag): attempt to implement
10563         (gtk_text_line_next_could_contain_tag): Abstract out node_compare
10564         functionality
10565
10566         * gtk/gtktextiter.c (gtk_text_iter_backward_to_tag_toggle):
10567         Implement this, though not very efficiently.
10568
10569         * gtk/gtktextiterprivate.h: reformat
10570
10571         * gtk/gtktextiter.c (gtk_text_iter_get_char): return 0 on the end
10572         iterator
10573
10574         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_interactive): Fix
10575         this to properly revalidate the iterators.
10576
10577         * gtk/gtktextview.c (gtk_text_view_delete): fix control-K to work
10578         properly at the end of the line (and therefore on empty lines)
10579
10580         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Gee,
10581         maybe we should return a value...
10582
10583 2000-10-03  Tor Lillqvist  <tml@iki.fi>
10584
10585         * config.h.win32: Guard definition of alloca(). glib.h now handles
10586         that.
10587
10588         * gdk/gdk.def
10589         * gtk/gtk.def: Add new entry points.
10590
10591         Changes just to make GTK+ build without errors on Win32. No hope
10592         of it working in its current state, though...:
10593         
10594         * gdk/win32/gdkselection-win32.c: Remove gcc -Wall warnings.  Add
10595         some functions from the X11 backend, just to make GTK+ build.
10596
10597         * gdk/makefile.mingw.in
10598         * gtk/makefile.mingw.in: Use correct gdk_pixbuf version
10599         number. Add new object files.
10600
10601         * gtk/gtkclipboard.c: Include gdkwin32.h on Win32. Use
10602         GetMessageTime to get timestamp (where on X11 uses
10603         gdk_x11_get_server_time()).
10604
10605 2000-10-02  Havoc Pennington  <hp@pobox.com>
10606
10607         * gtk/gtktextview.c: text_window_* weren't static and should have
10608         been.
10609         Start work on child widgets; not yet complete, syncing to 
10610         office computer.
10611
10612         * gtk/gtktextchild.h: change this to contain a public interface,
10613         starting work on child interfaces.
10614         * gtk/gtktextchildprivate.h: move private interfaces here
10615
10616         * gtk/Makefile.am: update to reflect gtktextchildprivate.h
10617
10618         * gtk/gtktextview.h, gtk/gtktextview.c, gtk/gtktextbuffer.h,
10619         gtk/gtktextbuffer.c, gtk/gtktextiter.h, gtk/gtk/textiter.c, 
10620         gtk/gtktextmark.c: copyright notices
10621
10622         * gtk/gtktextmarkprivate.h: reformat, and put _ in front of
10623         internal functions      
10624
10625         * gtk/gtktextchild.c (_pixbuf_segment_new): put _ in front of
10626         internal function
10627
10628         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
10629         Reformatting    
10630
10631 2000-09-30  Havoc Pennington  <hp@pobox.com>
10632
10633         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Handle
10634         NULL start/end pointers
10635
10636         * gtk/gtktextbuffer.c: Write some docs
10637         (gtk_text_buffer_get_selection_bounds): Allow start/end to be
10638         NULL, so you can just check whether there's a selection.        
10639
10640         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): No need to 
10641         cleanup_line or segments_changed ourselves, it gets done 
10642         in unlink_segment
10643
10644         * gtk/gtktextmark.h:
10645         s/gtk_text_mark_deleted/gtk_text_mark_get_deleted/
10646         
10647         * gtk/gtktextsegment.h: Clean up some indentation and naming mess
10648
10649         * gtk/gtktextmark.c: delete some more old Tk cruft
10650
10651         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_mark): add ref to
10652         mark before removing it, so we can emit MARK_DELETED with a valid
10653         pointer.
10654         (gtk_text_buffer_mark_set): hold ref across signal emission
10655
10656         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): improve
10657         whining about attempts to delete special marks
10658
10659         * gtk/gtktextbuffer.c (_gtk_text_buffer_spew): Prepend with
10660         underscore, since it's internal.
10661
10662         * gtk/gtktextbuffer.h: Remove find_string prototype, this is 
10663         now implemented in terms of iterators in gtktextiter.h
10664
10665         * gtk/gtktextbuffer.c (gtk_text_buffer_set_text): 
10666         New function, destructively sets contents of buffer. Also 
10667         a convenient way to clear the buffer by setting text to ""
10668
10669         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): reformat
10670         multiline string literal
10671
10672         * gtk/testtext.c (text_changed_callback): Redraw line numbers if
10673         text changes.
10674
10675         * gtk/gtktextiter.c (forward_char): Return FALSE if new location 
10676         is not dereferenceable
10677         (gtk_text_iter_forward_lines): fix return value
10678
10679 2000-09-29  Havoc Pennington  <hp@redhat.com>
10680
10681         * gtk/gtktexttag.c (gtk_text_tag_set_priority): fix indentation
10682
10683         * gtk/gtktextview.c: Implement drag thresholding; change functions 
10684         that set border window size to have nicer name
10685         (gtk_text_view_mark_set_handler):  Fix this to have the 
10686         right signature.
10687
10688         * gtk/testtextbuffer.c (fill_buffer): Update with pixbuf changes
10689
10690         * gtk/testtext.c: Update with API changes, put line numbers on 
10691         both sides.
10692         
10693         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): Replace get_pixmap
10694         with this
10695
10696         * gtk/gtktextchild.h, gtk/gtktextchild.c: replace all pixmap with
10697         pixbuf; delete a big block of #if 0 Tk code
10698
10699         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_pixbuf): Replace 
10700         insert_pixmap with insert_pixbuf
10701
10702 2000-09-29  Martin Baulig  <baulig@suse.de>
10703
10704         * gdk-pixbuf.pc.in: Renamed to gdb-pixbuf-2.0.pc.in to avoid
10705         confusion with the GdkPixbuf of the GNOME 1.x platform.
10706
10707 2000-09-29  Havoc Pennington  <hp@pobox.com>
10708
10709         * gtk/gtktextview.c: Implement the side windows.
10710
10711         * gtk/testtext.c: Implement simple line numbering in the 
10712         left side window; seems to make scrolling sloooow. Oops.
10713         Also, cursor blink is for some reason causing redraws
10714         of the line numbers. Should investigate...
10715
10716 2000-09-28  Havoc Pennington  <hp@redhat.com>
10717
10718         * gtk/gtktextview.c: Set up infrastructure to deal with lots of 
10719         scrolling child windows, and draw focus rectangle properly.
10720         
10721         (gtk_text_view_buffer_to_window_coords):
10722         Coordinate transformation to deal with all these freaking windows
10723         and offsets
10724         (gtk_text_view_window_to_buffer_coords): transform the other way
10725
10726         * gtk/testtext.c (create_buffer): Update to match Pango API change
10727
10728         * gtk/gtktexttagtable.c (gtk_text_tag_table_foreach): Go over the
10729         anonymous tags
10730         (foreach_unref): don't emit remove signal from finalize, just
10731         set tag's parent to NULL
10732
10733 2000-09-26  Havoc Pennington  <hp@redhat.com>
10734
10735         * gtk/gtkiconfactory.c (gtk_icon_set_clear): remove
10736         Fix some warnings       
10737
10738 2000-09-26  Havoc Pennington  <hp@redhat.com>
10739
10740         * gtk/Makefile.am (gtk_private_h_sources): Move more text widget
10741         headers into the private header list
10742
10743         * Makefile.am (pkgconfig_DATA): install pkg-config files
10744
10745         * configure.in: add pkg-config files
10746
10747         * gdk-2.0.pc.in, gdk-pixbuf.pc.in, gtk+-2.0.pc.in: pkg-config files
10748
10749         * gtk/gtkwindow.c (gtk_window_read_rcfiles): Invalidate
10750         outstanding icon caches on theme change.
10751
10752         * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: New icon system. Three 
10753         important types:
10754
10755         (GtkIconSource): Specification for creating a pixbuf 
10756         appropriate for a direction/state/size triplet from 
10757         a source pixbuf or filename
10758
10759         (GtkIconSet): List of GtkIconSource objects that are used to
10760         create the "same" icon (e.g. an OK button icon), and cache for
10761         rendered icons
10762
10763         (GtkIconFactory): Hash from stock ID to GtkIconSet; used to look
10764         up the icon set for a given stock ID.  GTK maintains a stack of
10765         GtkIconFactory to search, and applications or libraries can add
10766         additional icon factories on top of the stack
10767         
10768         * gtk/gtkrc.h, gtk/gtkrc.c: When loading an RcStyle, parse 
10769         the set of GtkIconSource specified for a given stock ID into 
10770         a GtkIconSet, and put the GtkIconSet into a GtkIconFactory for the 
10771         RcStyle, under the specified stock ID.
10772
10773         * gtk/gtkstyle.h, gtk/gtkstyle.c: Add a virtual function
10774         render_icon used to derive a GdkPixbuf from a GtkIconSource.
10775         This allows people to theme how prelight, insensitive, etc. are
10776         done.
10777
10778         (gtk_style_lookup_icon_set): Look up a stock ID in the list of
10779         icon factories for a style, and return the resulting 
10780         icon set if any.
10781
10782         (gtk_style_render_icon): Render an icon using the render_icon 
10783         method in the GtkStyleClass.
10784
10785         * gtk/gtkwidget.h, gtk/gtkwidget.c (gtk_widget_render_icon): 
10786         Use the style for a given widget to look up a stock ID, get the
10787         icon set, and render an icon using the render_icon method 
10788         of the style
10789
10790         * gtk/gtkstock.h, gtk/gtkstock.c: Header with the GtkStockItem type
10791         (contains information about a stock item), the built-in stock item
10792         IDs, and functions to add/lookup stock items.
10793
10794         * gtk/stock-icons/*: Stock icons that come with GTK
10795
10796         * gtk/gtkbutton.h, gtk/gtkbutton.c (gtk_button_new_stock): Returns
10797         a button based on a GtkStockItem
10798         (gtk_button_new_accel): Takes a uline string and accel group, and
10799         installs the accelerator.
10800
10801         * gtk/gtkimage.h, gtk/gtkimage.c: Make this into a generic
10802         image-display widget.
10803
10804 2000-09-25  Havoc Pennington  <hp@redhat.com>
10805
10806         * gtk/gtktexttypes.c: Remove Latin1 conversion stuff
10807
10808         * gtk/gtktextbtree.c (gtk_text_btree_node_remove_data): 
10809         Fix a bug when removing node data, we didn't properly 
10810         re-splice the linked list after removing the data.
10811
10812         * gtk/gtktextview.c (gtk_text_view_key_press_event): Pass through 
10813         GDK_Tab as literal tab, Ctrl-Tab to tab to focus widget
10814
10815         * gtk/gtktextbuffer.c (selection_received): fix g_convert usage
10816
10817         * gtk/gtktextlayout.c (set_para_values): Set tab array 
10818         for the layout from the GtkTextTag.
10819
10820         * gtk/gtktexttypes.h: delete tab and search cruft, 
10821         remove g_convert() in favor of GLib version
10822
10823         * gtk/gtktexttypes.c: remove tab implementation from here,
10824         move to Pango
10825
10826         * gtk/gtktexttag.h, gtk/gtktexttag.c: Implement 
10827         tab stuff using new PangoTabArray from Pango
10828
10829         * gtk/gtktexttag.c (gtk_text_attributes_fill_from_tags): Remove
10830         unused border_width stuff
10831
10832 Thu Sep 14 12:21:12 2000  Owen Taylor  <otaylor@redhat.com>
10833
10834         * gtk/gtktexttypes.[ch]: Remove g_convert (moved to
10835         glib) and now useless utf_to_latin1() latin1_to_utf()
10836
10837         * gtk/gtktextview.[ch]: Change ::move_insert and
10838         ::delete_text action signals to ::move and ::delete;
10839         create the signals with the right enumeration type,
10840         not GTK_TYPE_ENUM so that bindings work. Add C-d, M-d,
10841         C-v bindings, change Home, End to move to beginning/end
10842         of line, Add C-Home C-End to move to beginning/end
10843         of buffer. Change ::cut_text to ::cut_clipboard, etc;
10844         combine ::scroll_text into ::move; use new GtkSelectionData
10845         functions to simplify DND text handling.
10846         
10847         * gtk/gtkenums.h gtk/gtktextview.h: Move movement,
10848         deletion enumerations here, rename enumeration values to 
10849         be consistently plural.
10850
10851         * gtk/gtktextbuffer.c: Use new clipboard interfaces
10852         for cut/copy/paste and primary selection.
10853
10854         * gtk/gtktextbuffer.[ch]: Remove excess time and
10855         'interactive' arguments from cut/copy/paste;
10856         rename cut to cut_clipboard, etc; remove
10857         gtk_text_buffer_get_clipboard_contents().
10858
10859         * gtk/gtktextlayout.[ch]: Add 
10860         gtk_text_layout_move_iter_to_line_end() to move the iter to 
10861         line ends.
10862
10863         * gtk/gtkselection.[ch] (gtk_selection_data_set/get_text):
10864         Functions to set or get a UTF-8 string on the selection
10865         data.
10866
10867         * gtk/gtkclipboard.[ch]: New, simplified selection handling
10868         interfaces.
10869
10870         * gtk/gtkinvisible.c (gtk_invisible_new): Realize newly
10871         created widgets - one of these is useless if we don't.
10872
10873         * gtk/gtkselection.[ch] (gtk_selection_clear_targets): Export
10874         a public function clear all targets registered for the
10875         widget.
10876
10877         * gtk/gtkselection.c (gtk_selection_owner_set) docs/Changes-2.0.txt:
10878         Never call gtk_widget_realize() - that was just asking
10879         for bizarre side-effects.
10880
10881         * gtk/gtkselection.c (gtk_selection_owner_set): Call
10882         gdk_selection_owner_set even if the widget is the
10883         same so that we reliably update the timestamp on
10884         the server.
10885
10886         * gdk/x11/gdkevents-x11.c gdk/x11/gdkx.h: Add a 
10887         gdk_x11_get_server_time() function.
10888         
10889         * gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.h
10890         gdk/x11/gdkselection-x11.c gdk/x11/gdkwindow-x11.h:
10891         Add some tricky filtering on serial numbers for
10892         selection clear events to fix up long-standard
10893         race condition FIXME's in gtkselection.c.
10894
10895         * gdk/gdkproperty.h gdk/x11/gdkselection-x11.h: Add
10896         routines to convert from utf8 to compound text or
10897         STRING and from a text property to UTF-8.
10898
10899         * gtk/gtkmain.[ch] (gtk_get_current_event_time): Add 
10900         a convenience function gdk_get_current_event_time().
10901
10902         * gtk/gtkselection.c (gtk_selection_data_copy/free): Copy
10903         and free selection_data->data properly
10904
10905 Sat Sep  9 10:23:53 2000  Owen Taylor  <otaylor@redhat.com>
10906
10907         * gtk/gtkthemes.c: Remove some unecessary includes.
10908
10909 2000-09-08  Jonathan Blandford  <jrb@redhat.com>
10910
10911         * gtk/gtktextdisplay.c
10912         * gtk/gtktextlayout.c
10913         * gtk/gtktexttag.c
10914         * gtk/gtktexttag.h
10915         * gtk/testtext.c: Change the overstrike property to strikethrough,
10916         to closer match pango.
10917
10918 Fri Sep  8 14:28:00 2000  Owen Taylor  <otaylor@redhat.com>
10919
10920         * gtk/gtktextview.c: Fix up visibility so that focus,
10921         cursor_visible and blink interact properly.  Reenable cursor blink
10922         which had been roughly disabled. Make blink and focus
10923         properly per-view.
10924
10925         * gtk/gtktextlayout.[ch] (gtk_text_layout_set_cursor_visible):
10926         Add a flag for whether to display insertion cursor and
10927         a function to set the flag.
10928
10929         * gtk/gtktextlayout.c (gtk_text_layout_get_line_yrange): Change
10930         get_line_y() to get_line_yrange(), to be a bit more generally
10931         useful.
10932
10933 Thu Sep 07 20:54:33 2000  George Lebl <jirka@5z.com>
10934
10935         * gtk/gtkmenu.c:  in gtk_menu_set_submenu_navigation_region
10936           do stop_navigating_submenu, to clear last timeout properly.
10937           Also in gtk_menu_motion_notify move ignore_enter above
10938           the conditional to make it always happen as suggested by Owen
10939
10940 2000-09-07  Tor Lillqvist  <tml@iki.fi>
10941
10942         * gdk/win32/makefile.mingw.in: Use -Wall. Add gdkpango-win32.o
10943
10944         * gdk/win32/gdkwin32.h: Add more definitions missing from the free
10945         w32api headers.
10946
10947         * gdk/win32/gdkprivate-win32.h: Add a couple of missing
10948         declarations.
10949
10950         * gdk/win32/gdkdrawable-win32.c: Remove gcc -Wall warnings.
10951         (gdk_win32_get_colormap): A line had been deleted by mistake.
10952
10953         * gdk/win32/gdkevents-win32.c: Remove lint (gcc -Wall) here, too.
10954         (gdk_event_translate): Handle more virtual keycodes to be able to
10955         generate GDK events for Control-comma, Control-period, etc.
10956
10957         * gtk/gtk.def: Add some missing entry points.
10958
10959 Thu Sep  7 11:47:02 2000  Owen Taylor  <otaylor@redhat.com>
10960
10961         * gtk/gtktextbuffer.c gtk/gtkimcontext.c gtk/gtkwidget.c:
10962         Doc comment fixing. (Mostly non-matching parameter names.)
10963
10964         * gtk/gtkcalendar.c gtk/gtklist.c gtk/gtknotebook.c: Modify
10965         comments a little to avoid looking like a doc comment.
10966
10967         * gtk/gtkspinbutton.h (GTK_INPUT_ERROR): Change INPUT_ERROR to
10968         GTK_INPUT_ERROR. (Should the mechanism for erros in spin button
10969         conversions be changed to GError?)
10970
10971         * gtk/gtkcolorsel.c (GTK_CUSTOM_PALETTE_WIDTH/HEIGHT): 
10972         Move private #defines into .c file.
10973
10974         * gtk/gtktexttag.c (gtk_text_tag_class_init): Alphabetize
10975         order of argument addition, remove duplicates.
10976
10977         * gtk/gtkaspectframe.h (struct _GtkAspectFrameClass):
10978         parent class is FrameClass, not BinClass.
10979
10980         * gtk/gtk.h: Add gtkinvisible, which was missing.
10981         (It's occasionalyl useful for client apps, if seldom.)
10982
10983         * gdk/gdktypes.h: Remove obsolete GDK_CORE_POINTER
10984         #define.
10985
10986 Wed Sep  6 09:53:15 2000  Owen Taylor  <otaylor@redhat.com>
10987
10988         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Use X-space
10989         coordinates when creating window, instead of GDK-space
10990         coordinates. (Avoid BadValue on too large windows.)
10991
10992 2000-09-05  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
10993
10994         * configure.in (use_mmx_asm): Remove conftest* after use along the
10995         lines of AC_TRY_COMPILE.        
10996         
10997         * gtk/gtkrc.c (gtk_rc_parse_file): Use g_path_get_dirname instead
10998         of g_dirname, which is deprecated.
10999         (gtk_rc_parse_any): Removed calls to
11000         g_scanner_{freeze,thaw}_symbol_table, which are deprecated.
11001
11002         * gtk/gtkbindings.c (binding_entry_new, binding_entry_destroy):
11003         Removed calls to g_hash_table_{freeze,thaw}, as they are
11004         deprecated now.
11005
11006         * gtk/testtext.c (buffer_pretty_name): Use g_path_get_basename
11007         instead of g_basename.
11008         
11009 2000-09-04 Elliot Lee <sopwith@redhat.com>
11010         
11011         * gdk/gdkpixbuf.h: Put text after #endif inside a comment to avoid
11012         ANSI warning.
11013
11014 Sun Sep 03 00:47:08 2000  George Lebl <jirka@5z.com>
11015
11016         * gtk/gtkwidget.h:  Add some documenting comments about 
11017           GTK_CAN_DEFAULT, GTK_HAS_DEFAULT and GTK_RECEIVES_DEFAULT
11018           just as owen said on irc.
11019
11020         * gtk/gtkwindow.c (gtk_window_set_default):  Don't blindly
11021           set HAS_DEFAULT.  Only set it if there isn't another window
11022           holding it (a focus window which RECEIVES_DEFAULT) and only unset
11023           it if the widget is not the focused window with RECEIVES_DEFAULT.
11024           This fixes weird double default bugs in dialogs which has things
11025           call gtk_window_set_default at times.
11026
11027 Fri Sep  1 22:39:07 2000  Owen Taylor  <otaylor@redhat.com>
11028
11029         * gtk/gtkmenu.[ch] TODO.xml: Apply patch from
11030         Nils Barth and David Santiago to improve submenu
11031         navigation. The patch does this by creating a triangular
11032         region from the point where the pointer leaves the
11033         menu to the submenu.  While the pointer is in
11034         that region and a timeout has not expired, events 
11035         that would cause the active submenu to change are
11036         ignored.
11037
11038 Fri Sep  1 15:34:46 2000  Owen Taylor  <otaylor@redhat.com>
11039
11040         * gdk/x11/gdkwindow-x11.c (gdk_window_move): Fix bug where
11041         moving a toplevel window immediately after sizing it would
11042         result in it being sized back to the old size since 
11043         impl->width, impl->height aren't updated until we hear
11044         back from the server. There is still a (longstanding) bug
11045         here that gdk_window_get_size() will give the wrong size
11046         until we do hear back.
11047
11048 2000-08-31  Havoc Pennington  <hp@redhat.com>
11049
11050         * gtk/gtktextiter.h, gtk/gtktextiter.c, gtk/gtktextlayout.h, 
11051         gtk/gtktextlayout.c, gtk/gtktexttag.h, gtk/gtktexttag.c, 
11052         gtk/gtktexttagprivate.h, gtk/gtktextview.c:
11053         Rename GtkTextStyleValues to GtkTextAttributes
11054
11055 2000-08-31  Havoc Pennington  <hp@pobox.com>
11056
11057         * gtk/gtktextbtree.c (GtkTextBTree): cache end line, 
11058         for rapid testing whether an iterator is the end iterator
11059         (gtk_text_btree_new): init end line cache
11060         (gtk_text_line_is_last): use fast cached line to 
11061         see if we're the last line.
11062         (get_last_line): use cached line here too, should 
11063         speed up some random unrelated code.
11064         
11065 2000-08-30  Havoc Pennington  <hp@pobox.com>
11066
11067         * gtk/gtkmarshal.list: Add marshallers for changed GtkTextBuffer
11068         signals.
11069
11070         * gtk/gtktextbuffer.h: Add "interactive" arg to insert_text and
11071         delete_text signals. This allows the signals to be used for
11072         implementing undo.
11073
11074         * gtk/gtktextbuffer.c: Change signal handler signatures; 
11075         provide "interactive" argument when emitting insert_text or
11076         delete_text signal.
11077         
11078 2000-08-30  Havoc Pennington  <hp@pobox.com>
11079
11080         * gtk/gtktextbuffer.c: Docs
11081
11082 Fri Aug 25 12:16:15 2000  Owen Taylor  <otaylor@redhat.com>
11083
11084         * gdk/x11/gdkimage-x11.c: remove GDK_IMAGE_SHARED_PIXMAP
11085         from switch statements, since Tor removed the enumeration
11086         value.
11087         
11088         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
11089         s/GDK_IS_WINDOW/GDK_IS_DRAWABLE/.
11090
11091 2000-08-29 Elliot Lee <sopwith@redhat.com>
11092         * */*.h: Use G_GNUC_CONST.
11093
11094 2000-08-27  Havoc Pennington  <hp@pobox.com>
11095
11096         * gtk/gtktextiter.c, gtk/gtktextiter.h: wrote lots of API docs,
11097         minor indentation fixes, inserted some FIXME about stuff I
11098         realized was broken while documenting it.
11099         (gtk_text_iter_get_pixmap): allow out params to be NULL, following
11100         GTK convention  
11101
11102 Tue Aug 22 12:33:24 2000  Owen Taylor  <otaylor@redhat.com>
11103
11104         * gtk/testgtk.c (create_styles): Fix double free of
11105         font desc.
11106
11107 Mon Aug 21 22:39:18 2000  Owen Taylor  <otaylor@redhat.com>
11108
11109         * gtk/gtkwidget.[ch]: Add gtk_widget_modify_{fg,bg,text,base,font}.
11110         
11111         * gtk/testgtk.c (create_styles): Add a test for modifying
11112         the style through gtk_widget_modify_*.
11113
11114         * gtk/gtkwidget.c (gtk_widget_get_modifier_style): Add
11115         a function to get the current modifier style.
11116
11117         * gtk/gtkwidget.c (gtk_widget_modify_style): Make a copy
11118         of the passed in GtkRcStyle instead of ref'ing it.
11119
11120         * gtk/gtkrc.[ch]: Add gtk_rc_style_copy().
11121
11122 2000-08-20  Tor Lillqvist  <tml@iki.fi>
11123
11124         * gdk/gdkimage.h
11125         * gdk/win32/gdkimage-win32.c: No need any longer on Win32 for the
11126         shared memory image+pixmap GdkImage type, or
11127         gdk_image_bitmap_new(). They were used in the gdk_imlib port, but
11128         I am dropping that.
11129
11130         * gtk/gtkmain.h: On Win32, use a #define to map gtk_init() to
11131         actually call gtk_init_abi_check(), passing also
11132         sizeof(GtkWindow). Ditto for gtk_init_check(). 
11133
11134         * gtk/gtk.def
11135         * gtk/gtkmain.c: (gtk_init_abi_check, gtk_init_check_abi_check):
11136         New functions, used to check that the GTK+-using code has been
11137         compiled using the correct compiler and switches. In particular,
11138         with gcc one has to use the -fnative-struct switch as GTK+ is
11139         compiled with that.
11140
11141 Fri Aug 18 17:27:46 2000  Owen Taylor  <otaylor@redhat.com>
11142
11143         * gtk/gtkclist.c (gtk_clist_merge): Don't leave dangling
11144         ->prev fields when merging lists. (Found simultaneously
11145         by Pawel Salek and Jakub Jelinek)
11146
11147 2000-08-12  Tor Lillqvist  <tml@iki.fi>
11148
11149         * gdk/gdk.def
11150         * gtk/gtk.def: Add missing entries.
11151
11152         * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Use
11153         OUT_TT_ONLY_PRECIS, try to get a TrueType font.
11154
11155         * gdk/win32/gdkinput-win32.c (gdk_device_get_state): New
11156         function. Dummy implementation at this point.
11157
11158         * gtk/makefile.mingw.in: Fix typo. Add testtext and testtextbuffer
11159         rules. Undefine GTK_COMPILATION when compiling the test programs.
11160         
11161         * gtk/gtkdebug.h: Mark gtk_debug_flags for export/import.
11162
11163 2000-08-11  Tor Lillqvist  <tml@iki.fi>
11164
11165         * gtk/gtkfilesel.c: Add more calls to g_filename_{to,from}_utf8()
11166         to convert back and forth from UTF-8 and the "system" (or "current
11167         locale") charset when necessary. Indentation/spacing cleanup.
11168
11169 2000-08-10  Havoc Pennington  <hp@redhat.com>
11170
11171         * Makefile.am (snapshot): Change the format of the snapshot
11172         version to match glib
11173
11174         * gdk/win32/Makefile.am (EXTRA_DIST): remove gdkinputprivate.h
11175         from EXTRA_DIST since it doesn't seem to exist
11176
11177 2000-08-10  Tor Lillqvist  <tml@iki.fi>
11178
11179         * gtk/gtkfilesel.c (open_new_dir): Use the "system codepage"
11180         version of the directory name (not the UTF-8 one) when building
11181         the path name to stat().
11182
11183 2000-08-03  Elliot Lee  <sopwith@redhat.com>
11184
11185         * gdk/gdkpango.c (gdk_draw_layout_line): Don't shape runs with a
11186         PANGO_ATTR_SHAPE set.
11187
11188 Thu Aug  3 09:17:06 2000  Owen Taylor  <otaylor@redhat.com>
11189
11190         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Applied patch from
11191         Peter Osterlund to simplify the code while keeping the
11192         functionality the same.
11193
11194 Wed Aug  2 14:57:38 2000  Owen Taylor  <otaylor@redhat.com>
11195
11196         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Move
11197         is_viewable() test further inside the function, since removing the 
11198         window from the redraw list without clearing ->update_area
11199         was also very broken.
11200
11201 2000-08-02  Tor Lillqvist  <tml@iki.fi>
11202
11203         * configure.in: Check for <unistd.h>.
11204
11205 2000-08-01  Martin Baulig  <baulig@suse.de>
11206
11207         * gtk/gtkmain.c (gtk_init_check): Use g_message() and not g_warning()
11208         to display the message that this is a development version of GTK+.
11209
11210 Mon Jul 31 18:37:36 2000  Owen Taylor  <otaylor@redhat.com>
11211
11212         * gtk/gtkentry.c (entry_adjust_scroll): Fix problem where computation
11213         was depending on widget->allocation instead of the width of text_area,
11214         which was incorrect for subclasses like GtkSpinButton.
11215
11216         * gdk/gdkpango.c (gdk_draw_layout): Fix a couple of typos
11217         with width == 1 tests that should be width == -1.
11218
11219 Mon Jul 31 16:45:48 2000  Owen Taylor  <otaylor@redhat.com>
11220
11221         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Replace broken, 
11222         (broken, Elliot, every single window blank on X) custom code with call
11223         to gdk_window_is_viewable() which a) prevents code duplicate and
11224         b) works. 
11225
11226 2000-07-31  Elliot Lee  <sopwith@redhat.com>
11227
11228         * gtk/gtkcolorsel.c: We really do need to include gdkfb.h in order
11229         to get the GDK_PARENT_ROOT() macro to work.
11230         * gtk/gtkmarshal.list: Add NONE:STRING,POINTER
11231         * gdk/gdkwindow.c: Don't send expose events, or invalidate pieces
11232         of, windows that aren't shown.
11233         * gdk/linux-fb: Redraw-when-menu-hidden solved, plus a bunch of
11234         pointer grab stuff.
11235
11236 Mon Jul 31 13:53:16 BST 2000  Tony Gale <gale@gtk.org>
11237
11238         * docs/gtkfaq.sgml docs/gtk-faq.sgml:
11239           s/gtk_main_iteration/g_main_iteration/
11240
11241           Did this already in change:
11242                 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
11243           don't know how it got reverted.
11244
11245 2000-07-31  Stanislav Brabec  <utx@penguin.cz>
11246
11247         * gdk/gdk.c: #ifdef G_ENABLE_DEBUG around gdk_arg_debug_cb and
11248         gdk_arg_no_debug_cb to fix compilation problem with --disable-debug.
11249
11250         * gdk/Makefile.am: Link gdk against actually compiled gdk_pixbuf-1.3,
11251         not gdk_pixbuf.
11252
11253 2000-07-30  Pablo Saratxaga <pablo@mandrakesoft.com>
11254
11255         * configure.in,po/{sp,sr}.po: Added Serbian files
11256
11257 2000-07-30  Tor Lillqvist  <tml@iki.fi>
11258
11259         * gdk/Makefile.am: Add makefile.mingw.in to EXTRA_DIST.
11260
11261         * gdk/win32/gdkevents-win32.c (gdk_events_init, gdk_events_queue):
11262         Remove the g_pipe_readable_msg stuff. Not needed with new GLib
11263         GIOChannel implementation.
11264
11265         * gdk/win32/gdkinput.c
11266         * gdk/win32/gdkpango-win32.c: Update license name here, too.
11267
11268         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_lookup): Fix
11269         definition to match prototype.
11270
11271         * gtk/makefile.mingw.in: Add libiconv CFLAGS and LIBS.
11272
11273 2000-07-27  Elliot Lee  <sopwith@redhat.com>
11274
11275         * gtk/gdk-pixbuf-loader.[ch]: Add gdk_pixbuf_loader_new_with_type
11276         function, to allow handling image formats that cannot be detected
11277         by looking at content alone.
11278
11279 Thu Jul 27 13:13:21 BST 2000  Tony Gale <gale@gtk.org>
11280
11281         * docs/tutorial/*.gif *.jpg *.eps
11282           Update these to the same look-n-feel.
11283           Why does including images in DocBook suck so badly?
11284
11285 Thu Jul 27 05:06:29 2000  Tim Janik  <timj@gtk.org>
11286
11287         * gtk/gtktable.c: applied patch from Phil Thompson
11288         <phil@river-bank.demon.co.uk> that enables space settings for
11289         the last row/columns as well.
11290
11291 Wed Jul 26 12:59:31 2000  Tim Janik  <timj@gtk.org>
11292
11293         * *.[hc]: applied patch from Andreas Persenius <ndap@swipnet.se> that
11294         updates the license headers to the GNU Lesser General Public License,
11295         as well as updating the copyright year to 2000.
11296
11297 2000-07-26  Robert Brady  <rwb197@zepler.org>
11298
11299         * configure.in: Cause GETTEXT_PACKAGE to be consistent in config.h
11300           and po/Makefile, was installing and looking for them under gtk20
11301           and gtk2 respectively.
11302
11303 2000-07-25  Havoc Pennington  <hp@redhat.com>
11304
11305         * gtk/testtext.c: Comment out some stuff that depends on the rest
11306         of my patches.
11307
11308 2000-07-25  Havoc Pennington  <hp@redhat.com>
11309
11310         * gtk/gtkmarshal.list: Add NONE:POINTER,POINTER,INT for the text
11311         buffer
11312
11313 2000-07-25  Havoc Pennington  <hp@redhat.com>
11314
11315         * gtk/testtext.c, gtk/testtextbuffer.c: update to reflect text
11316         widget changes.
11317
11318         * gtk/gtktextview.h: To be consistent with usage of "line"
11319         throughout the API to mean "newline-terminated thingy", change
11320         MOVEMENT_LINE to be MOVEMENT_WRAPPED_LINE, and MOVEMENT_PARAGRAPH
11321         to MOVEMENT_LINE.
11322
11323         (GtkTextView): Add flags for default editability, and whether to
11324         show the cursor. Add functions to get/set that. Add 
11325
11326         (gtk_text_view_get_iter_location): new function
11327
11328         * gtk/gtktexttypes.h: Move GtkTextLine typedef from here to
11329         gtktextlayout.h
11330         (g_convert): Add g_convert temporarily, will go in glib in a bit
11331         
11332         * gtk/gtktexttagtable.h: include gtktexttag.h, and define
11333         GtkTextTagTableForeach instead of brokenly using GHFunc.
11334         Change gtk_text_tag_table_foreach() so it doesn't use GHFunc.
11335
11336         * gtk/gtktexttagprivate.h: Remove GtkTextStyleValues from here,
11337         moved to public header.
11338
11339         * gtk/gtktexttag.h: Rename the "elide" attribute of tags to
11340         "invisible", since "elide" was a bad name.
11341         (gtk_text_tag_get_priority): Added
11342
11343         (GtkTextStyleValues): put this in public header, along with
11344         functions to use it.
11345
11346         * gtk/gtktextmarkprivate.h: Include more headers, since we no
11347         longer include gtktextbtree.h.
11348
11349         * gtk/gtktextmark.h: Add gtk_text_mark_ref, gtk_text_mark_unref,
11350         gtk_text_mark_deleted
11351
11352         * gtk/gtktextlayout.h: Don't include the "really private" headers,
11353         only buffer/iter. Forward declare GtkTextLIne and GtkTextLineData
11354         to make this possible. Now we only need to install
11355         gtktextlayout.h, not gtktextbtree.h and gtktext*private.h.
11356         (However the Makefile.am isn't changed yet because of the
11357         logistics of merging gtk-hp-patches piecemeal)
11358
11359         * gtk/gtktextiterprivate.h: include btree header, so it compiles;
11360         rename gtk_text_iter_get_line to gtk_text_iter_get_text_line since
11361         gtk_text_iter_get_line is now used in the public API for a
11362         different purpose.
11363
11364         * gtk/gtktextiter.h: Clean up function names to be more
11365         consistent. Always call char offset "offset" and byte index
11366         "index". A "line" is always a line number. 
11367
11368         (gtk_text_iter_is_last): new function, more efficient than 
11369         the existing way to check
11370         (gtk_text_iter_is_first): new function, also more efficient
11371
11372         (gtk_text_iter_up_lines, gtk_text_iter_down_lines): Remove these
11373
11374         (gtk_text_iter_next_char, gtk_text_iter_prev_char): Renamed from 
11375         gtk_text_iter_forward_char, etc.
11376
11377         (gtk_text_iter_forward_to_tag_toggle): Renamed from
11378         forward_find_tag_toggle, since this isn't a linear search
11379
11380         (GtkTextCharPredicate): rename from GtkTextViewCharPredicate
11381
11382         (gtk_text_iter_forward_search, gtk_text_iter_backward_search): 
11383         New functions, search for a buffer substring.
11384
11385         * gtk/gtktextbuffer.h: Add fields to store whether a paste is
11386         interactive and default editable (since we need to store that info
11387         until we receive the selection data).
11388
11389         Remove all the _at_char and at_line etc. versions of functions;
11390         only have iterator versions.
11391
11392         Add _interactive() versions of functions, that consider the
11393         editability of text. (FIXME add interactive flag to the 
11394         insert/delete signals per Darin's suggestion)
11395
11396         (gtk_text_buffer_get_tag_table): new function, demand-creates the
11397         tag table if necessary
11398
11399         Remove declaration of gtk_text_buffer_get_iter_from_string
11400
11401         (_gtk_text_buffer_get_btree): private/internal function, added.
11402         
11403
11404         * gtk/gtktextbtree.h: Remove forward decl of GtkTextLineData.
11405         (gtk_text_line_is_last): new function
11406
11407 2000-07-25  Havoc Pennington  <hp@redhat.com>
11408
11409         * gtk/gtkprogressbar.h: Implement new sane, 5-function API for
11410         using GtkProgressBar. See Changes-2.0.txt for details.
11411
11412         * gtk/gtkprogressbar.c: Add object arguments "fraction" and
11413         "pulse_step" which are the equivalent of
11414         gtk_progress_bar_set_pulse_step and gtk_progress_bar_set_fraction.
11415         Implement new API.
11416         
11417         * gtk/gtkprogress.h (struct _GtkProgress): Add a field
11418         (use_text_format) to mark whether text set on the progress bar is
11419         a format string. Deprecate entire GtkProgress interface.
11420
11421         * gtk/gtkprogress.c (gtk_progress_init): init use_text_format to TRUE
11422         (gtk_progress_build_string): make this a no-op if use_text_format
11423         is FALSE
11424
11425         * docs/Changes-2.0.txt: Describe progress bar changes.
11426
11427 2000-07-25  Tor Lillqvist  <tml@iki.fi>
11428
11429         * Makefile.am: Include the build directory.
11430
11431         * configure.in: Generate build/Makefile, build/win32/Makefile,
11432         gdk/, gdk/win32/, and gtk/makefile.mingw.
11433
11434         * config.h.win32: Add USE_GMODULE and USE_MMX for gdk-pixbuf.
11435         Add GETTEXT_PACKAGE.
11436         
11437         * gdk/gdk.def
11438         * gtk/gtk.def: Updates.
11439
11440         * gdk/gdkfont.h
11441         * gdk/gdkpixmap.h: Remove temporary Win32-only functions, we don't
11442         need them any longer.
11443
11444         * gdk/gdkinput.h: Mark gdk_core_pointer for export/import.
11445
11446         * gdk/makefile.mingw.in: Define GDK_COMPILATION. Link with
11447         PANGOWIN32_LIBS and gdk_pixbuf.
11448
11449         * gdk/win32: Compiles, but no doubt doesn't work at all.
11450
11451         * gdk/win32/makefile.mingw.in: Define GDK_COMPILATION. 
11452
11453         * gdk/win32/gdkinput.c: New file, temporarily.
11454         
11455         * gdk/win32/gdkinput-win32.h: New file
11456
11457         * gdk/win32/gdkinputprivate.h: Remove.
11458
11459         * gdk/win32/gdkpango-win32.c: New file.
11460
11461         * gtk/makefile.mingw.in: New file
11462
11463         * gtk/makefile.cygwin: Removed
11464         
11465         * gtk/Makefile.am: Update accordingly.
11466
11467         * gtk/gtkrc.[ch] (gtk_win32_get_installation_directory): Renamed and
11468         made externally visible.
11469
11470         * gtk/gtkmain.c: Use it.
11471         
11472         * gtk/gtktextdisplay.c: No need to include pangox.h, pango.h
11473         is enough.
11474
11475         * gtk/gtktypeutils.c: Mark glib_debug_objects for import.
11476
11477 2000-07-24 Elliot Lee <sopwith@redhat.com>
11478         * gdk/gdkprivate.h: Remove gdk_*_lookup() defines, since they are defined by the
11479         individual backends already.
11480         * gdk/gdkregion-generic.h, gdk/gdktypes.h: Put gdkregionbox & gdksegment back together
11481         again. Yes, there really is a good reason for this, if you are using the gdkregion
11482         internals, and if you're not, why do you care?
11483         * gdk/gdkwindow.c: Fix inverted condition
11484         * gdk/linux-fb: Compiles (for me - it will not work elsewhere most likely).
11485         * gtk/gtkcolorsel.c, gtk/gtkwindow.c: Add include for linux-fb
11486         * gtk/gtkrange.c: Redraw trough when moving.
11487         * gtk/gtktypeutils.c: Fix warning by adding const cast.
11488         * modules/linux-fb/basic.c: Fix unknown glyph retrieval.
11489
11490 2000-07-23  Tor Lillqvist  <tml@iki.fi>
11491
11492         * configure.in: Check for mkstemp and sigsetjmp. Output
11493         gdk-pixbuf/makefile.mingw and gdk-pixbuf/pixops/makefile.mingw.
11494
11495         More work on GDK for Win32. Still in an intermediate state.
11496
11497         * gdk/makefile.cygwin
11498         * gdk/win32/makefile.cygwin: Removed.
11499         
11500         * gdk/makefile.mingw.in
11501         * gdk/win32/makefile.mingw.in: New files.
11502
11503         * gdk/Makefile.am
11504         * gdk/win32/Makefile.am: Generate and distribute them.
11505
11506         * gdk/win32/gdkwindow-win32.h
11507         * gdk/win32/gdkdrawable-win32.h
11508         * gdk/win32/gdkpixmap-win32.h: New files.
11509
11510         * gdk/win32/gdkcolor-win32.c
11511         * gdk/win32/gdkcursor-win32.c
11512         * gdk/win32/gdkdrawable-win32.c
11513         * gdk/win32/gdkgc-win32.c
11514         * gdk/win32/gdkimage-win32.c
11515         * gdk/win32/gdkprivate-win32.h
11516         * gdk/win32/gdkwin32.h: Update data structures. Cosmetics:
11517         Rename fields and variables called xcursor, xid, etc (these names
11518         were leftovers from the X11 backend) to hcursor, hwnd, hbitmap etc.
11519
11520 Sat Jul 22 17:41:26 2000  Owen Taylor  <otaylor@redhat.com>
11521
11522         * gtk/gtkentry.[ch]: Fix some problems with vertical
11523         alignment.
11524
11525         * gtk/gtkentry.c (gtk_entry_find_position): Fix 
11526         char/byte confusion.
11527
11528 Sat Jul 22 11:16:05 2000  Owen Taylor  <otaylor@redhat.com>
11529
11530         * gtk/gtktextview.c (changed_handler): Fix bug where
11531         redraw wasn't being done properly when height of
11532         dirty region changed.
11533
11534         * demos/Makefile.am: Remove various references to
11535         -lgmodule
11536
11537 Fri Jul 21 15:28:13 2000  Owen Taylor  <otaylor@redhat.com>
11538
11539         * gtk/gtktextlayout.[ch], gtk/gtktextdisplay.c: Use new
11540         PangoAttrShape to reserve space for pixmaps, add 
11541         GSList *pixmaps to GtkTextLineDisplay, draw the pixmaps
11542         in the display functions.
11543         
11544         * gtk/testgtk.c (create_layout): Set some more exotic
11545         scrolled window options
11546
11547         * gtk/gtkscrolledwindow.[ch] (gtk_scrolled_window_set_shadow_type):
11548         Add function to set the shadow type of a window, to allow
11549         putting a shadow around widgets such as GtkLayout or GnomeCanvas
11550         which don't draw their own frame.
11551
11552 Fri Jul 21 16:34:42 BST 2000  Tony Gale <gale@gtk.org>
11553
11554         * docs/tutorial/package-db-tutorial.sh: New file for
11555           packaging DocBook format tutorial
11556
11557 Fri Jul 21 14:23:51 BST 2000  Tony Gale <gale@gtk.org>
11558
11559         * docs/tutorial/gtk-tut.sgml: Minor updates
11560
11561         * docs/tutorial/*.jpg *.eps: Screenshots for tutorial
11562
11563 2000-07-19  Tor Lillqvist  <tml@iki.fi>
11564
11565         * gtk/gtksignal.c: Fix C++ comment.
11566
11567         * gtk/gtkimmulticontext.c
11568         * gtk/gtktextbtree.c: Remove gccisms: Don't use __FUNCTION__,
11569         don't return value from void functions.
11570
11571         * gtk/gtk.def: Add gtk_rc_style_unref.
11572
11573 2000-07-19  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
11574
11575         * gdk-pixbuf/gdk-pixbuf.h, gtk/gtkhsv.h, gtk/gtktextbtree.h,
11576         gtk/gtktextbuffer.h, gtk/gtktextchild.h, gtk/gtktextdisplay.h,
11577         gtk/gtktextiter.h, gtk/gtktextiterprivate.h, gtk/gtktextlayout.h,
11578         gtk/gtktextmarkprivate.h, gtk/gtktextsegment.h, gtk/gtktexttag.h,
11579         gtk/gtktexttagtable.h, gtk/gtktexttypes.h, gtk/gtktextview.h,
11580         gtk/gtktypeutils.h: Include files outside of the extern "C"
11581         block. Makes some C++ compiler happy. Reported by Denis Vakatov
11582         <vakatov@peony.nlm.nih.gov>.
11583
11584 Wed Jul 19 14:07:57 BST 2000  Tony Gale <gale@gtk.org>
11585
11586         * docs/tutorial/gtk-tut.sgml: Yet more clean ups.
11587           Completes first pass. Hurrah!
11588
11589 Tue Jul 18 17:17:55 BST 2000  Tony Gale <gale@gtk.org>
11590
11591         * docs/tutorial/gtk-tut.sgml: More clean ups.
11592
11593 Mon Jul 17 18:52:38 2000  Owen Taylor  <otaylor@redhat.com>
11594
11595         * gtk/gtkentry.c (gtk_entry_draw_text): Restore code to
11596         paint the background of the text area which was accidentally
11597         removed at some point.
11598
11599         * gtk/gtkrc.[ch] gtk/gtkstyle.[ch] gtk/gtkthemes.[ch]: 
11600           
11601          - Move most of the functionality from the theme vtable
11602            into GtkRcStyleClass and GtkStyleClass. The moved
11603            vtable functions were changed a bit in the move to
11604            work better in their new home.
11605
11606          - Get rid of the engine and engine_data fields from
11607            GtkRcStyle and GtkStyle; instead the theme
11608            engine derives theme-specific subclasses of GtkRcStyle
11609            and GtkStyle
11610
11611          - Add extra dlsym() found entry point to themes,
11612            theme_create_rc_style().
11613
11614         * gtk/gtkstyle.c: Copy xthickness, ythickness fields
11615         in gtk_style_real_copy.
11616
11617         * gtk/themes.[ch]: add a function gtk_theme_engine_register_type()
11618         to register a type associated with an engine. (The engine
11619         won't be unloaded as there is an instance of the type.)
11620
11621
11622 Mon Jul 17 18:19:06 BST 2000  Tony Gale <gale@gtk.org>
11623
11624         * docs/tutorial/gtk-tut.sgml: Clean ups.
11625
11626 Mon Jul 17 13:59:29 BST 2000  Tony Gale <gale@gtk.org>
11627
11628         * docs/tutorial/gtk-tut.sgml: Initial DocBook version. Lots
11629           of cleaning up to do.
11630
11631 2000-07-15  Tor Lillqvist  <tml@iki.fi>
11632
11633         * gdk/testgdk.c: New file, quick hack to test backends for
11634         pixel-by-pixel correctness of the most simple graphic operations.
11635
11636 Fri Jul 14 20:30:25 2000  Owen Taylor  <otaylor@redhat.com>
11637
11638         * Really release 1.3.1
11639         
11640         * gtk-config-2.0.in gtk-2.0.m4: Fix up to correspond to new
11641         include structure.
11642
11643 Fri Jul 14 18:40:39 2000  Owen Taylor  <otaylor@redhat.com>
11644
11645         * Released 1.3.1
11646
11647 Fri Jul 14 16:21:26 2000  Owen Taylor  <otaylor@redhat.com>
11648
11649         * gtk/gtktextlayout.c: use FALSE for size_only most
11650         of the time when calling gtk_text_layout_get_line_display()
11651         to avoid causing double reshapes when a redraw follows
11652         immediately after.
11653
11654 Tue Jul 11 11:13:40 2000  Owen Taylor  <otaylor@redhat.com>
11655
11656         * gtk/gtkrange.c (gtk_range_default_[hv]slider_update): Invalidate
11657         appropriate region and gdk_window_process_updates() so trough
11658         updating doesn't lag behind the window being scrolled.
11659
11660         * gdk/gdkgc.c: Make parent_class pointer static.
11661          
11662 Sun Jul  9 21:31:23 2000  Owen Taylor  <otaylor@redhat.com>
11663
11664         * gdk/gdk-pixbuf.c gtk/gdk-pixbuf-loader.c gtk/gtktextview.c:
11665         include <string.h>.
11666          
11667         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Fix
11668         cut-and-paste error in computing memory offset for 4 channels.
11669
11670 Fri Jul 14 14:05:02 2000  Owen Taylor  <otaylor@redhat.com>
11671
11672         * gtk/gtkrc.c (gtk_rc_parse_pixmap_path_string): Remove
11673         gtk_rc_append_default_pixmap_path(), since it wasn't
11674         adding an interesting path and we don't have a meaningful
11675         default for this value.
11676
11677 Fri Jul 14 12:22:49 2000  Owen Taylor  <otaylor@redhat.com>
11678
11679         * configure.in Makefile.am gtk-config.m4 gtk.m4: Move
11680         gtk-config to gtk-config-2.0 move gtk_.m4 to
11681         gtk-2.0.m4
11682
11683         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
11684         gdk/Makefile.am demos/Makefile.am: Change 
11685         library names to libgtk-1.3.la, etc, so that we
11686         can distinguish gtk-1.2 and gtk-2.0 on the linkline.
11687
11688         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
11689         gdk/Makefile.am gdk/x11/Makfile.am
11690         Move include files into /usr/include/gtk-2.0, 
11691         /usr/lib/gtk-2.0/include/
11692          
11693         * autogen.sh acconfig.h configure.in gtk/gtkmain.c
11694         gtk/gtkintl.h: Change package for gettext from 
11695         gtk+ to gtk20. Put hack in autogen.sh to modify
11696         po/Makefile.in.in after gettextize to make this
11697         possible.
11698
11699         * gtk+.spec: Some updates, not tested.
11700
11701         * gdk-pixbuf/Makefile.am: Move loaders into
11702         $(libdir)/gtk-2.0/$(GTK_VERSION)/loaders.
11703
11704         * gtk/Makefile.am gtk/gtkrc.c: Move RC file locations
11705         $(sysconfdir)/gtk-2.0 ~/.gtkrc-2.0; theme subdir
11706         to THEMENAME/gtk-2.0/. Move engine directory  to
11707         $(libdir)/gtk-2.0/$(GTK_VERSION)/engines.
11708         
11709 2000-07-12  Tor Lillqvist  <tml@iki.fi>
11710
11711         Win32 changes, still doesn't build though.
11712
11713         * gdk/makefile.cygwin
11714         * gdk/win32/makefile.cygwin
11715         * gtk/makefile.cygwin: Updates.
11716
11717         * gdk/win32/gdkgc-win32.c (_gdk_win32_gc_new): Use the same
11718         default values for fg and bg pixel as X11 does (0 and 1), not
11719         black and white. Use PS_ENDCAP_FLAT and PS_JOIN_MITER by default.
11720         Use 0 for pen width by default (treated as 1 anyway later, but for
11721         apps that might check the value in the GdkGC).
11722         (gdk_win32_hdc_get, gdk_win32_hdc_release): New functions, public
11723         interface to gdk_gc_predraw and _postdraw.
11724
11725         * gdk/win32/gdkwin32.h
11726         * gdk/gdk.def: Add gdk_win32_hdc_{get,release}.
11727
11728         * gdk/win32/gdkcolor-win32.c (gdk_colormap_alloc1): Remove
11729         extraneous semicolon.
11730
11731         * gdk/win32/gdkdrawable-win32.c: Check also for pen_width == 0.
11732
11733         * gdk/win32/gdkimage-win32.c (gdk_image_new): Use the visual's depth,
11734         not the Win32 bitspixel value.
11735
11736         * gdk/win32/gdkcc-win32.c:
11737         * gdk/win32/gdkcolor-win32.c 
11738         * gdk/win32/gdkprivate-win32.h
11739         * gdk/win32/gdkwin32.h: Changes to make compilable, with new
11740         GDK object structure.
11741
11742 Tue Jul 11 20:59:35 2000  Tim Janik  <timj@gtk.org>
11743
11744         * docs/tutorial/gtk_tut_12.es.sgml (name): 
11745         * docs/tutorial/gtk_tut_it.sgml (name): 
11746         * docs/tutorial/gtk_tut_fr.sgml (name): 
11747         * docs/tutorial/gtk_tut.sgml (name): scratched notion of completely
11748         outdated email adress: s/timj@psynet.net/timj@gtk.org/.
11749
11750 Tue Jul 11 13:10:57 BST 2000  Tony Gale <gale@gtk.org>
11751
11752         * docs/faq/gtk-faq.sgml: Cleanup indenting and various
11753           small changes.
11754
11755 Tue Jul 11 08:04:58 2000  Tim Janik  <timj@gtk.org>
11756
11757         * gtk/gtktree.c (gtk_real_tree_select_child): eek, i've never seen
11758         a bug here, never been here and never fixed anything ;(
11759         (don't segfault if tree->root_tree is NULL, which happens prior
11760         to widget realization, but puke instead).
11761
11762 Tue Jul 11 06:38:42 2000  Tim Janik  <timj@gtk.org>
11763
11764         * gtk/gtkrc.h: add xthickness and ythickness to GtkRcStyle and
11765         add the necessary tokens.
11766
11767         * gtk/gtkrc.c (gtk_rc_style_init): properly initiality the rc style.
11768         (gtk_rc_style_to_style): copy thicknesses.
11769         (gtk_rc_init_style): apply thicknesses.
11770         (gtk_rc_parse_style): parse xthickness and ythickness.
11771
11772         * gdk/x11/gdkdnd-x11.c: silence compiler in switch() statements.
11773
11774         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): 
11775         (gdk_window_new): 
11776         (_gdk_windowing_window_init): 
11777         * gdk/x11/gdkpixmap-x11.c (gdk_pixmap_foreign_new): 
11778         (gdk_pixmap_create_from_data): 
11779         (gdk_bitmap_create_from_data): 
11780         (gdk_pixmap_new): 
11781         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
11782         (gdk_image_new): 
11783         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): 
11784         * gdk/x11/gdkdnd-x11.c (gdk_drag_context_new): 
11785         * gdk/x11/gdkcolor-x11.c (gdkx_colormap_get):
11786         (gdk_colormap_get_system): 
11787         (gdk_colormap_new): 
11788         * gdk/gdkwindow.c (gdk_window_init): 
11789         * gtk/gtkstyle.c (gtk_style_new):
11790         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done):
11791         * gdk/gdkpixmap.c (gdk_pixmap_init): 
11792         * gtk/gtkrc.c (gtk_rc_style_new):
11793         use g_object_new() instead of g_type_create_instance() which
11794         is a private function for fundamental type implementations.
11795
11796 Thu Jul  6 16:12:14 2000  Owen Taylor  <otaylor@redhat.com>
11797
11798         * configure.in: Add check for db2html
11799
11800 Thu Jul  6 14:53:05 2000  Owen Taylor  <otaylor@redhat.com>
11801
11802         * gtk/gtktypeutils.c (gtk_type_init): Add a temporary 
11803         hack to set glib_debug_objects based on gtk_debug_flags.
11804
11805 Thu Jul  6 14:12:13 2000  Owen Taylor  <otaylor@redhat.com>
11806
11807         * INSTALL.in: Update the Prerequisites section.
11808
11809         * Makefile.am demos/Makefile.am docs/Makefile.am
11810         docs/tutorial/Makefile.am gdk/x11/Makefile.am
11811         gdk/linux-fb/Makefile.am: Dist fixes
11812
11813 Thu Jul  6 12:26:03 2000  Owen Taylor  <otaylor@redhat.com>
11814
11815         * NEWS: 10,000 foot view of 1.3.1 changes.
11816
11817 Thu Jul  6 11:54:03 2000  Owen Taylor  <otaylor@redhat.com>
11818
11819         * gdk/gdk.h gdk/gdktypes.h gdk/linux-fb/gdkmain-fb.c
11820         gdk/nanox/gdkmain-nanox.c gdk/win32/gdkevents-win32.c
11821         gdk/win32/gdkinput-win32.c gdk/win32/gdkwin32.h
11822         gdk/x11/gdkmain-x11.c: 
11823
11824         Patch from George Lebl to add a GdkGrabStatus enumeration to use
11825         as a return value of gdk_*_grab(). Previously, we just
11826         returned the X11 values directly.
11827
11828 Thu Jul  6 11:27:44 2000  Owen Taylor  <otaylor@redhat.com>
11829
11830         * gdk/x11/Makefile.am: Patch from George Lebl to 
11831         install all the headers in the right place.
11832
11833 Tue Jul  4 13:13:01 BST 2000  Tony Gale <gale@gtk.org>
11834
11835         * docs/faq/gtk-faq.sgml: Add remaining sections. Completes
11836           initial conversion to DocBook.
11837
11838 2000-07-04  Tor Lillqvist  <tml@iki.fi>
11839
11840         * README.win32: Improve a bit.
11841
11842         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Handle also
11843         WM_SYSCHAR, and other changes to get handling of Alt+nnn or
11844         Alt+0nnn on the numpad (used to enter characters by numeric code
11845         from current DOS or ANSI codepage) working correctly, as in other
11846         Windows apps.
11847
11848         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Use
11849         same argument validity tests as in X11 version.
11850         (_gdk_cursor_destroy): Use DestroyCursor, not DestroyIcon.
11851
11852         * gdk/win32/gdkwin32.h: Add also WM_MOUSEWHEEL and CopyCursor
11853         definitions in case missing from headers.
11854
11855         * gdk/win32/gdkwindow-win32.c (gdk_win32_window_destroy): Also
11856         destroy the window-specific cursor.
11857         (RegisterGdkClass): Use the global gdk_ProgInstance instead of
11858         calling GetModuleHandle(NULL).
11859         (gdk_window_set_cursor): Reworked to always copy the passed cursor
11860         with CopyCursor before setting it as the window-specific
11861         cursor. It is OK for the caller to destroy the GdkCursor (and thus
11862         also its Windows cursor) after calling this function. Destroy any
11863         previous window-specific cursor.
11864
11865 Mon Jul  3 17:54:49 2000  Owen Taylor  <otaylor@redhat.com>
11866
11867         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): 
11868         font charset is iso8859-1, not iso-8859-1.
11869
11870 Mon Jul  3 17:08:14 2000  Owen Taylor  <otaylor@redhat.com>
11871
11872         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale):
11873         Use g_get_charset() instead of g_get_codeset().
11874
11875         * gtk/gtkframe.[ch] gtkframe.h gtk/gtktextmark.h: 
11876         Comment out some strdup'ing functions to keep timj
11877         happy until we finish fighting this out.
11878
11879 Mon Jul  3 14:24:16 2000  Owen Taylor  <otaylor@redhat.com>
11880
11881         * gtk/gtkwidget.c (gtk_widget_draw): Ignore calls with
11882         <= width or height.
11883
11884         * gtk/gtktable.c (gtk_table_attach): Fix missed merge
11885         from 1.2 for parent/child states.
11886
11887         * gdk/gdkgc.c (gdk_gc_set_rgb_fg/bg_color): Fix a couple
11888         of typos.
11889
11890         * gdk/gdkevents.[ch]: Remove press/xtilt/ytilt fields of
11891         event structures, replace with a generic axes field. Replace 
11892         deviceid/sourec with GdkDevice *device.
11893
11894         * gdk/gdkevents.[ch] (gdk_event_get_axis): Add function
11895         to extract particular axis use value from event. (Also
11896         can be used for normal X/Y.)
11897
11898         * gdk/gdkinput.h gdk/x11/gdkinput*: Major revision;
11899         allow for arbitrary number of axes, namespace everything
11900         as gdk_device_*. Replace guint32 deviceid with GdkDevice *
11901         everywhere.
11902
11903         * gdk/x11/{gdkmain-x11.c,gdkevent-x11.c,gdkinput*}: 
11904         Get rid of the gdk_input_vtable setup if favor of simply
11905         defining the functions in gdkinput-none/gxi/xfree.c in
11906         a similar fashion to the way that the port structure is 
11907         done.
11908
11909         * gtk/gtkdnd.c: Fix fields of synthesized button press event
11910         for new event structures. 
11911
11912         * gtk/gtkinputdialog.c gtk/testinput.c: Revise to match
11913         new device interfaces.
11914
11915 Sun Jul  2 18:19:50 2000  Owen Taylor  <otaylor@redhat.com>
11916
11917         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_layout): Add a 'text' argument to
11918         set the initial text.
11919
11920         * gtk/gtkaccellabel.c gtk/gtkcalendar.c gtk/gtkclist.c
11921         gtk/gtkentry.c gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c
11922         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvruler.c
11923         gtk/gtkvscale.c: Adapt to new argument of create_pango_layout().
11924
11925         * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
11926         pango_layout_set_font_description to simplify.
11927
11928 Sun Jul  2 17:43:41 2000  Owen Taylor  <otaylor@redhat.com>
11929
11930         * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
11931         pango_layout_set_font_description to simplify.
11932
11933 Sun Jul  2 17:06:40 2000  Owen Taylor  <otaylor@redhat.com>
11934
11935         * gtk/gtkcalendar.c gtk/gtkclist.c gtk/gtkctree.c gtk/gtkhscale.c
11936         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvscale.c gtk/gtkaccellabel.c: Use
11937         pango_layout_get_pixel_extents() to remove a large number of '/ PANGO_SCALE'.
11938
11939         * gtk/gtk[hv]ruler.c gtk/gtklabel.c: replace some / PANGO_SCALE with
11940         PANGO_PIXELS() macro.
11941
11942 Sun Jul  2 15:24:41 2000  Owen Taylor  <otaylor@redhat.com>
11943
11944         * gtk/gtkwidget.[ch] (gtk_widget_get_pango_context): Add new function
11945         that returns a PangoContext owned by the widget and updated to
11946         match future changes in the widget. Also, make 
11947         gtk_widget_create_pango_layout() use this context. If we ever
11948         add a ::changed signal to PangoContext, this will make things
11949         much more convenient. 
11950
11951         * gtk/gtkentry.c gtk/gtklabel.c: Call pango_layout_context_changed()
11952         in the appropriate places instead of destroying the layouts and
11953         creating new ones.
11954
11955         * gtk/gtkfontsel.[ch] gtk/gtkclist.c: Use gtk_widget_get_pango_context()
11956         in a few strategic places.
11957
11958 Sun Jul  2 14:37:58 2000  Owen Taylor  <otaylor@redhat.com>
11959
11960         * gtk/gtkoptionmenu.c (gtk_option_menu_size_request): Call 
11961         gtk_widget_size_request() on reparented child, if one. Otherwise,
11962         queue_resize() on the child never results in it getting size-requested
11963         at all.
11964
11965         * gtk/testgtk.c (build_option_menu): Remove silly radio-menu-items
11966         in option menus, so that (with luck) people won't copy it into
11967         their apps in the future.
11968
11969         * gtk/gtkoptionmenu.c: Connect ::size_request on the menu
11970         to gtk_option_menu_calc_size. This isn't perfect, but should fix
11971         a lot of problems with changing the size of the menu's menu
11972         items after adding it to the option menu.
11973
11974         * gtk/gtktexttag.c: Include gtkmain.h for gtk_get_default_language().
11975
11976         * gtk/gtkwidget.[ch]: Add a ::direction_changed that triggers when
11977         the text direction for a widget changes.
11978
11979         * gtk/gtk{entry.c,label.[ch],textview.[ch]} gtk/testgtk.c: Use
11980         ::direction_changed to get rid of various hacks.
11981
11982 Sun Jul  2 13:19:12 2000  Owen Taylor  <otaylor@redhat.com>
11983
11984         * docs/Changes-2.0.txt: Move Changes-1.4.txt to the appropriate
11985         name.
11986
11987 Sun Jul  2 13:06:26 2000  Owen Taylor  <otaylor@redhat.com>
11988
11989         * gdk/x11/gdkpixmap-x11.[ch] Changes-1.4.txt: Add a is_foreign
11990         flag to the structure. Do not call XFreePixmap on pixmaps created
11991         by gdk_pixmap_foreign_new().
11992
11993 Sun Jul  2 12:45:50 2000  Owen Taylor  <otaylor@redhat.com>
11994
11995         * gdk/gdkrgb.[ch]: Add gdk_rgb_find_color() to get a pixel
11996         value using GdkRGB functionality given GdkColormap and GdkColor.
11997         (name not final, waiting for inspiration.)
11998         
11999         * gdk/gdkgc.[ch] (gdk_gc_set_rgb_fg/bg_color): New functions to
12000         set the foreground/background of a GC using the GC's colormap
12001         and GdkRGB. (name not final, waiting for inspiration.)
12002
12003         * gdk/gdkcompat.h gdk/gdkrgb.c (gdk_rgb_get_colormap): Rename from 
12004         gdk_rgb_get_cmap(), put #define in gdkcompat.h.
12005
12006         * gtk/gtkwidget.[ch] gtkcompat.h: Make visuals for
12007         gtk_widget_get_visual(), gtk_widget_get_default_visual, etc,
12008         purely a function of the corresponding colormap. Make
12009         gtk_widget_set_visual(), etc, noop macros in gtkcompat.h.
12010
12011         * gdk/gdkpixmap.c gdk/x11/gdkpixmap-c11.c: Rewrite
12012         gdk_pixbuf_*create_from_xpm_* in terms of
12013         gdk_pixbuf_new_from_xpm_data(), move into platform independent
12014         code.
12015
12016         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Take
12017         advantage of the new draw_rgb_32_image_dithalign.
12018
12019         * gdk/gdkrgb.c (gdk_draw_rgb_32_image_dithalign): Added.
12020
12021         * gtk/gtkgc.c (gtk_gc_new): Set the appropriate colormap
12022         on each created GC.
12023
12024         * gdk/gdkgc.[ch]: Add gdk_gc_get/set_colormap.
12025
12026         * gdk/gdkgc.[ch]: Add a colormap field to the GdkGC structure
12027         which we initialize from the drawable when the GC is created,
12028         if the drawable has a colormap.
12029
12030         * gdk/x11/gdkgc-x11.c: include string.h for memset.
12031
12032         * gdk/x11/gdkinput-x11.c: include string.h for strlen, etc.
12033
12034         * gtk/gtklayout.[ch]: Remove unsed configure serial member.
12035
12036 Sat Jul  1 16:28:32 2000  Owen Taylor  <otaylor@redhat.com>
12037
12038         * gdk/x11/gdkevents-x11.c (gdk_event_translate): When
12039         actually returning expose events, make sure to set
12040         the count field properly.
12041
12042         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): Fix
12043         accidentally reintroced bug which always cleared
12044         the graphics_exposures value. 
12045
12046 Wed Jun 28 18:03:09 BST 2000  Tony Gale <gale@gtk.org>
12047
12048         * docs/faq/gtk-faq.sgml: Change DocBook layout slightly
12049
12050 Wed Jun 28 17:49:05 BST 2000  Tony Gale <gale@gtk.org>
12051
12052         * docs/faq/gtk-faq.sgml: Finish Section 6. Add Section 7.
12053
12054 Wed Jun 28 13:31:55 BST 2000  Tony Gale <gale@gtk.org>
12055
12056         * docs/faq/gtk-faq.sgml: Start of Section 6.
12057
12058 Mon Jun 26 19:37:04 2000  Owen Taylor  <otaylor@redhat.com>
12059
12060         * configure.in: Put 1.3.1 in warning message, not 1.3.0.
12061         
12062         (Fixes problem with drawing childless frames. Pointed out
12063         by and a first patch from Anders)
12064         
12065         * gtk/gtkframe.c (gtk_frame_compute_child_allocation): Always
12066         compute a child_allocation, even if we don't have a child.
12067
12068         * gtk/gtkaspectframe.c (gtk_aspect_frame_compute_child_allocation):
12069         Always chain to the parent's impl, even if we don't have a child.
12070
12071 Mon Jun 26 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
12072
12073         * gdk/gdkrgb.c: If possible, create only a single shm segment and
12074         use multiple parts of it instead of creating a bunch of separate
12075         segments, since the maximum number of segments per system is not
12076         large. (This might be worth backporting to GTK+-1.2.x if we make a
12077         new release )
12078
12079         * gdk/gdkrgb.c: Localize a bunch of variables into the GdkRgbInfo
12080         structure in preparation for per-colormap GdkRGB.
12081
12082         * gdk/x11/gdkimage-x11.c (gdk_image_new): Don't set gdk_use_xshm
12083         to False when we get EINVAL from shmget so that the caller of
12084         gdk_image_new can retry with a smaller segment size.
12085
12086 Mon Jun 26 13:01:16 BST 2000  Tony Gale <gale@gtk.org>
12087
12088         * docs/faq/gtk-faq.sgml: Add Sections 4 & 5.
12089
12090 Fri Jun 23 17:54:23 2000  Tim Janik  <timj@gtk.org>
12091
12092         * configure.in: make the current version number 1.3.1 (binary age 0,
12093         interface age 0).
12094         
12095         * gtkfeatures.h, gtkfeatures.h.in: dejavue, get rid of these *again*,
12096         gtkcompat.h is all we want.
12097
12098         * gtk/gtktypeutils.[hc]: define most of the primitive types in terms of
12099         GLib primitive types. fixed g_type_register_fundamental() argument
12100         ordering.
12101
12102         * gtk-config.in (lib_gtk): add -lgdk_pixbuf so third party code
12103         compiles.
12104
12105         * gdk-pixbuf-loader.[hc]: get rid of unistd.h include.
12106         object code cleanup, comment trigraph fixes, etc...
12107
12108 2000-06-23  Havoc Pennington  <hp@redhat.com>
12109
12110         * gtk/gtktextview.c (gtk_text_view_set_buffer): Use anonymous mark 
12111         instead of making up a bogus name for first_para_mark
12112
12113         * gtk/gtkstatusbar.h, gtk/gtkstatusbar.c: Allow 
12114         0 as a context ID
12115
12116 Thu Jun 22 17:43:51 BST 2000  Tony Gale <gale@gtk.org>
12117
12118         * docs/faq/gtk-faq.sgml: Change filename. Add Section 3.
12119
12120 2000-06-21  Havoc Pennington  <hp@pobox.com>
12121
12122         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Fix bug where
12123         we didn't check window->bg_pixmap != GDK_NO_BG.
12124
12125         * gtk/gdk-pixbuf-loader.c: Change to reflect GObject-ification of
12126         gdk-pixbuf
12127
12128 Thu Jun 22 14:02:19 BST 2000  Tony Gale <gale@gtk.org>
12129
12130         * docs/faq/gtk-faq.sgm: Move file to here.
12131           TODO: Update Makfile.am 
12132
12133 Thu Jun 22 13:41:09 BST 2000  Tony Gale <gale@gtk.org>
12134
12135         * docs/gtk-faq.sgm: Add Section 2
12136
12137 Thu Jun 22 08:43:45 BST 2000  Tony Gale <gale@gtk.org>
12138
12139         * docs/gtk-faq.sgm: New file. Start of DocBook
12140           version of the FAQ.
12141
12142 Wed Jun 21 23:04:17 2000  Owen Taylor  <otaylor@redhat.com>
12143
12144         * configure.in (GDK_PIXBUF_MAJOR): Define version
12145         numbers for GDK_PIXBUF_*, as they get substituted
12146         into a header file. Need to consider versioning
12147         for gdk-pixbuf more carefully later.
12148
12149 2000-06-21  Raja R Harinath  <harinath@cs.umn.edu>
12150
12151         Work with srcdir != builddir.   
12152         * demos/testanimation.c: Don't include "gdk-pixbuf.h".  Use
12153         <gtk/gdk-pixbuf-loader.h>, not "gtk-pixbuf/gdk-pixbuf-loader.h".
12154         * demos/testpixbuf.c: Likewise.
12155         * demos/testpixbuf-scale.c: Don't include "gdk-pixbuf.h".
12156         * demos/testpixbuf-drawable.c: Don't include "gdk-pixbuf.h".  Use
12157         <gdk/x11/gdkx.h>.
12158         * demos/pixbuf-demo.c: Use <gtk/gtk.h> not "gtk.h".  Don't include
12159         "gdk-pixbuf.h".
12160         * demos/Makefile.am (INCLUDES): Remove unneeded directories.
12161
12162 Wed Jun 21 19:45:02 2000  Owen Taylor  <otaylor@redhat.com>
12163
12164         * TODO.xml: Change 1.4 version numbers to 2.0.
12165
12166 Wed Jun 21 19:29:08 2000  Owen Taylor  <otaylor@redhat.com>
12167
12168         * gdk/gdkpixbuf-render.c gdk/gdkpixbuf-drawable.c: Indentation
12169         fixups to GTK+ standard.
12170
12171 Wed Jun 21 16:38:13 2000  Owen Taylor  <otaylor@redhat.com>
12172
12173         * gdk-pixbuf/* docs/reference/gdk-pixbuf/*: Welcome aboard,
12174         gdk-pixbuf.
12175
12176         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init):
12177         fixups for GObject.
12178
12179         * gdk/Makefile.am gdk/gdkpixbuf-render.[ch] gdk/gdkpixbuf.[ch]: Bits of 
12180         gdk-pixbuf with GDK dependencies moved into GDK.
12181         
12182         * gtk/Makefile.am gtk/gdk-pixbuf-loader.[ch]: Temporarily
12183         move gdk-pixbuf-loader here until GObject has signals.
12184
12185         * demos/: New directory of demos. Move demos from
12186         gdk-pixbuf here.
12187
12188         * demos/pixbuf-init.c: Small bit of code to check for
12189         loaders in ../gdk-pixbuf/.libs/gdk-pixbuf, and if found,
12190         set GDK_PIXBUF_MODULEDIR appropriately.
12191
12192         * gdk/gdkcompat.h: Remove GDK_DRAWABLE_PIXMAP compat
12193         define which no longer makes sense.
12194
12195 2000-06-21  Havoc Pennington  <hp@redhat.com>
12196
12197         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Use
12198         gtk_get_default_language
12199
12200         * gtk/gtkmain.h, gtk/gtkmain.c (gtk_get_default_language): 
12201         new function to get the default language
12202
12203         * gtk/gtktexttagprivate.h, gtk/gtktexttag.c, gtktextview.c: 
12204         s/gtk_text_view_style_values/gtk_text_style_values/
12205
12206         * gtk/gtktexttag.c, gtk/gtktexttag.h, gtk/gtktexttagprivate.h:
12207         Add a "language" field to tags.
12208
12209         (gtk_text_tag_set_arg): Fix bug in setting
12210         "bg_full_height_set" tag.
12211
12212 2000-06-21  Havoc Pennington  <hp@redhat.com>
12213
12214         * gtk/gtktextiter.h: Use gunichar instead of gint when appropriate
12215         in the interfaces
12216
12217         * gtk/gtktexttypes.c: Remove UTF functions, use glib 
12218         stuff instead when possible.
12219
12220         * gtk/gtktexttypes.h: Delete some unused constants
12221
12222         * gtktextbtree.c, gtktextiter.c, gtktextsegment.c, gtktextview.c,
12223         testtextbuffer.c: use glib instead of custom unicode routines
12224
12225 Wed Jun 21 12:50:58 2000  Owen Taylor  <otaylor@redhat.com>
12226
12227         * docs/es/: Removed mistakenly added generated sgml
12228
12229         * docs/{gdk.texi,gtk.texi,gdk.sgml} macros.texi texinfo.tex:
12230         Remove outdated info files.
12231
12232         * docs/gtk_tut* docs/package_tutorial.sh docs/tutorial:
12233         Moved tutorial files into subdir
12234
12235         * docs/gtkfaq.sgml docs/faq/gtkfaq.sgml: Move FAQ into
12236         subdir.
12237
12238         * docs/man/gtk_button.pod: Remove. (contents will be
12239         integrated into gtk-reference button page.)
12240
12241         * configure.in docs/Makefile.am docs/tutorial/Makefile.am
12242         docs/faq/Makefile.am: Adjust for new organization
12243
12244 2000-06-21 Christopher Blizzard  <blizzard@redhat.com>
12245
12246         * gdk/x11/Makefile.am (install-data-local): use $(mkinstalldirs)
12247         not $(MKINSTALLDIRS)
12248
12249 Wed Jun 21 12:24:28 2000  Owen Taylor  <otaylor@redhat.com>
12250
12251         * gtk/testgtk.c (create_text): Finish the job Elliot started
12252         of removing font setting test for text widget. (Since text widget
12253         and GdkFont are not deprecated, and cause portability problems.)
12254
12255 Wed Jun 21 11:41:43 2000  Owen Taylor  <otaylor@redhat.com>
12256
12257         * gtk/gtkentry.c gtk/gtkimcontextsimple.c gtk/gtklabel.c
12258         gtk/gtktexttypes.c gtk/testtext.c modules/linux-fb/basic.c:
12259         Remove use of libunicode in favor of new GLib functions.
12260
12261         * gtk/gtkcolorsel.c: Remove conditional includes for FB, win32,
12262         nano-x, framebuffer. The X11 include is just a hack until we get
12263         the necessary functions in gdkcolor.h, so there is no reason to
12264         add other includes of platforms.
12265
12266         * gtk/gtkwindow.c (gtk_window_compute_default_size): Revert 
12267         window bigger than the screen change.
12268
12269         * gtk/testgtk.c: Revert some random changes from Elliot
12270         that had no particular point and were causing testgtkrc
12271         not to function correctly.
12272         
12273         * gdk/gdkregion-generic.h: Revert change from Elliot. Just
12274         because GdkSegment and GdkRegionBox have the same fields,
12275         it doesn't mean that 'typedef GdkSegment GdkRegionBox'
12276         results in clearer code.
12277
12278         * gdk/x11/gdkinput-x11.c (gdk_input_common_select_events,
12279         gdk_input_translate_coordinates): Fix missed GdkObjectification
12280
12281 2000-06-18  Elliot Lee  <sopwith@redhat.com>
12282
12283         * gdk/Makefile.am, gdk/*/Makefile.am: Fix conditionality to work the "right" way.
12284         * gtk/gtk{plug,socket}.h: Missed commits from previous.
12285
12286 2000-06-20  Havoc Pennington  <hp@redhat.com>
12287
12288         * modules/linux-fb/Makefile.am: Make this compile
12289         without framebuffer enabled
12290
12291         * gdk/linux-fb/Makefile.am: Add conditional to not build
12292         framebuffer unless specified in configure
12293
12294         * gdk/gdkdraw.c (gdk_draw_drawable): Fix bug where I was getting
12295         the size of the target instead of source if -1 was passed for
12296         width/height
12297
12298         * gdk/x11/gdkgeometry-x11.c (gdk_window_compute_position): Fix 
12299         width/height confusion.
12300
12301 2000-06-19  Havoc Pennington  <hp@redhat.com>
12302
12303         * gdk/x11/gdkx.h (GDK_WINDOW_XWINDOW): change this to be
12304         GDK_DRAWABLE_XID. In the future, we probably want to make it
12305         faster with G_DISABLE_CHECKS turned on.
12306
12307 2000-06-14  Havoc Pennington  <hp@redhat.com>
12308
12309         * gdk/Makefile.am: add gdkpixmap.c
12310
12311         * gdk/gdk.c: s/gdk_window_init/_gdk_windowing_window_init/
12312         s/gdk_image_init/_gdk_windowing_image_init
12313
12314         * gdk/gdkcolor.c: make ref/unref compat wrappers for GObject
12315         ref/unref
12316
12317         * gdk/gdkcolor.h: make GdkColormap a GObject subclass
12318
12319         * gdk/gdkcompat.h: remove GdkWindowType compat, since
12320         GdkWindowType is now non-deprecated; 
12321         change gdk_window_get_type() compat to be
12322         gdk_window_get_window_type().
12323
12324         * gdk/gdkdnd.h: make GdkDragContext a GObject.
12325
12326         * gdk/gdkdraw.c, gdk/gdkdraw.h: Convert GdkDrawable to a pure
12327         virtual GObject. Make all functions call into the vtable.
12328         Move gdk_image_put() guts in here. Remove GdkDrawableType
12329         and gdk_drawable_get_type(), these are now GdkWindow-specific.
12330         draw_image, get_depth, get_size, set_colormap, get_colormap,
12331         get_visual added to the vtable.
12332         
12333         * gdk/gdkgc.h, gdk/gdkgc.c: Convert GdkGC to a pure virtual 
12334         GObject. Virtualize everything. 
12335         (gdk_gc_new_with_values): remove check for destroyed window,
12336         because now GdkWindow::create_gc will check this.
12337         (gdk_gc_set_values): New function to set GC values, this 
12338         was already implemented but wasn't in the header
12339
12340         * gdk/gdkimage.h, gdk/gdkimage.c: Convert GdkImage to a GObject.
12341
12342         * gdk/gdkinternals.h: Remove _gdk_window_alloc(), remove
12343         _gdk_window_draw_image(), remove _gdk_windowing_window_class,
12344         remove _gdk_window_class; add _gdk_window_impl_get_type() and
12345         _gdk_pixmap_impl_get_type(). Rename gdk_window_init to
12346         _gdk_windowing_window_init, rename gdk_image_init to
12347         _gdk_windowing_image_init.
12348         
12349         * gdk/gdkpango.c: Reflect GObject-ification of PangoContext.
12350         (gdk_draw_layout): Remove check for destroyed window, 
12351         because all the drawable methods already check it.
12352         
12353         * gdk/gdkpixmap.h, gdk/gdkpixmap.c: Convert GdkPixmap to GObject.
12354         Add gdkpixmap.c which contains implementation of GdkDrawable
12355         virtual table (by chaining to a platform-specific implementation
12356         object).
12357         
12358         * gdk/gdkprivate.h: Remove GDK_IS_WINDOW, GDK_IS_PIXMAP, 
12359         GDK_DRAWABLE_DESTROYED. Add GDK_WINDOW_DESTROYED. Replace
12360         GDK_DRAWABLE_TYPE with GDK_WINDOW_TYPE. Remove GdkDrawablePrivate,
12361         GdkWindowPrivate, GdkImageClass, GdkImagePrivate, GdkGCPrivate,
12362         GdkColormapPrivate. 
12363
12364         * gdk/gdktypes.h: #include <glib-object.h>
12365
12366         * gdk/gdkwindow.h, gdk/gdkwindow.c: Convert GdkWindow to GObject.
12367         Move most functionality to platform-specific implementation
12368         object. GdkWindow itself now handles the backing store, then
12369         chains to the platform-specific implementation.
12370         (gdk_window_get_window_type): return GdkWindowType of the window.
12371         (gdk_window_peek_children): New routine, returns the children of 
12372         a GdkWindow
12373         (gdk_window_get_children): Was in X11-specific code and did 
12374         XQueryTree. Changed to simply return a copy of window->children; 
12375         so it can go in cross-platform code.
12376         
12377         * gdk/x11/Makefile.am: fix broken MKINSTALLDIRS path
12378
12379         * gdk/x11/gdkcolor-x11.c: implement X-specific parts of 
12380         GdkColormap; just changed to use the new private data instead
12381         of casting to GdkColormapPrivate.
12382
12383         * gdk/x11/gdkcursor-x11.c: added a couple typechecks to 
12384         gdk_cursor_new().
12385
12386         * gdk/x11/gdkdnd-x11.c: Change the way we access private fields 
12387         (private data member in the GObject). 
12388         (xdnd_manager_source_filter): Function had broken 
12389         error handling, fix it (use gdk_error_trap_push).
12390
12391         * gdk/x11/gdkdrawable-x11.c: This file now implements
12392         a base class for GdkWindowImplX11/GdkPixmapImplX11. This 
12393         base class is purely for the convenience of the X port,
12394         and not part of the interface to cross-platform GDK.
12395
12396         * gdk/x11/gdkevents-x11.c: Reflect various renamings.
12397         
12398         * gdk/x11/gdkgc-x11.c: Implement a subclass of GdkGC that's
12399         specific to X, and returned by the create_gc virtual method
12400         of GdkDrawableImplX11. 
12401         (gdk_x11_gc_set_dashes): Change this to take an array of gint8
12402         rather than gchar, this was also changed in the GdkGC vtable.
12403         (gdk_x11_gc_values_to_xvalues): If GdkGCValues is NULL, or the
12404         mask is 0, return immediately, instead of checking every flag.
12405         This is faster, and keeps us from segfaulting if values is NULL
12406         and the mask contains some nonzero flags.
12407
12408         * gdk/x11/gdkgeometry-x11.c: deal with all the rearranging of
12409         GdkWindow.
12410
12411         * gdk/x11/gdkglobals-x11.c: change type of grab window, since 
12412         GdkWindowPrivate is gone.
12413
12414         * gdk/x11/gdkim-x11.c: rename things that got renamed.
12415
12416         * gdk/x11/gdkimage-x11.c: implement in terms of GObject, and 
12417         remove the image_put stuff that got transferred to GdkDrawable.
12418         
12419         * gdk/x11/gdkinput.c: renamings
12420
12421         * gdk/x11/gdkmain-x11.c: #include <pango/pangox.h>
12422
12423         * gdk/x11/gdkpixmap-x11.c: GObject conversion
12424
12425         * gdk/x11/gdkprivate-x11.h: indentation fixes
12426
12427         * gdk/x11/gdkproperty-x11.c: renamings
12428
12429         * gdk/x11/gdkselection-x11.c: renamings
12430
12431         * gdk/x11/gdkwindow-x11.c: Restructuring and renaming; this now 
12432         implements the platform-specific "impl" object.
12433         Moved gdk_window_get_children to gdk/gdkwindow.c
12434
12435         * gdk/x11/gdkx.h: Remove all the private structs and private datas
12436         that no longer exist. Add declaration of GdkGCX11 object here.
12437         Fix all the macros to still work. 
12438
12439         * gtk/gtk-boxed.defs: Remove GtkStyle, GdkColormap, GdkWindow,
12440         GdkDragContext from the boxed types since they are now GObjects.
12441
12442         * gtk/gtkstyle.h, gtk/gtkstyle.c: Converted GtkStyle to a GObject,
12443         moved xthickness/ythickness into the instance. GtkStyleClass
12444         functions are now in the standard vtable for GtkStyle, so you have
12445         to create a GObject subclass to write a theme engine.
12446         (gtk_style_copy): fixed a leaked PangoFontDescription
12447         (gtk_style_init): renamed gtk_style_realize, so gtk_style_init
12448         can be the standard GObject function.
12449         
12450         * Throughout GTK:
12451         s/style->klass->[xy]thickness/style->[xy]thickness
12452         s/pango_layout_unref/g_object_unref/
12453
12454         * gtk/gtkrc.h, gtk/gtkrc.c: Converted GtkRcStyle to a GObject.
12455         
12456         * gtk/gtksocket.c: Use gdk_window_get_user_data() instead of 
12457         accessing GDK internals.
12458
12459         * gtk/gtkwidget.c: Use gdk_window_peek_children() instead of 
12460         accessing GDK internals.
12461
12462 2000-06-18  Elliot Lee  <sopwith@redhat.com>
12463
12464         * gtk/gtkwindow.c: Don't allow creation of a window bigger than the screen.
12465
12466         * gtk/gtkrange.c: Fix the mega-jumpy-with-lagged-events scrollbar
12467         problem by calculating event position relative to the trough
12468         rather than the slider.
12469         * gtk/gtkdnd.c, gtk/gtkcolorsel.c: Include FB headers if appropriate.
12470
12471         * gdk/gdkgc.h: Add GDK_NOR.
12472
12473         * configure.in, Makefile.am: Add modules top level dir
12474         * configure.in: Only use pangox library if building x11 target.
12475         * gdk/gdkdnd.h: Add GDK_DRAG_PROTO_LOCAL enum for future intra-app use.
12476
12477 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
12478
12479         * gtk/gtkcolorsel.c: Change private class member to be named
12480         private_data throughout the file.
12481
12482         * gtk/gtkcolorsel.h (struct _GtkColorSelection): Change private to
12483         private_data to avoid clashing with keyword.
12484
12485 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
12486
12487         * gdk/gdkdnd.h: Add comment to remove warning.
12488
12489 Sun Jun 18 15:35:35 2000  Pablo Saratxaga <pablo@mandrakesoft.com>
12490
12491         * gtk/gtkrc.cp1251,gtk/Makefile.am: the cp1251 is also used by
12492         Byelorussian language; changed the Makefile and file names 
12493         to reflect that.
12494
12495 Mon Jun 12 16:58:40 2000  Owen Taylor  <otaylor@redhat.com>
12496
12497         * gtk/gtkwindow.c (gtk_window_unmap): Call gdk_window_withdraw
12498         rather than gdk_window_hide; this makes things work
12499         correctly if the window is programmatically hidden while
12500         iconified.
12501
12502 Sun Jun 11 12:46:19 2000  Owen Taylor  <otaylor@redhat.com>
12503
12504         * gtk/gtkdnd.c (gtk_drag_set_default_icon): Fix
12505         cut and paste typo where wrong pixmap was being
12506         unref'ed. (Pointed out by a friend of KUSANO Takayuki.)
12507
12508 Sun Jun 11 10:22:36 2000  Owen Taylor  <otaylor@redhat.com>
12509
12510         * gtk/gtkselection.c (gtk_selection_bytes_per_item):
12511         Add helper function to compute format / bytes 
12512         relationship. Use in a couple places to fix up
12513         errors which assume 8 * format.
12514
12515         * gtk/gtkselection.c (gtk_selection_request): Use 32
12516         rather than 8 * sizeof (GdkAtom), to work correctly
12517         on Alpha.
12518
12519 Thu Jun  8 21:54:51 2000 Christopher Blizzard  <blizzard@redhat.com>
12520
12521         * gtk/Makefile.am (DEPS): deps include libgtk-x11.la, not
12522         libgtk.la
12523         (LDADDS): include libgtk-x11.la and libgdk-x11.la, not the non-x11
12524         versions
12525
12526         * gtk/gtklabel.c (gtk_label_get_text): Make sure that the error
12527         checking macros return NULL since the function has a return value.
12528
12529 Wed Jun  7 15:44:42 2000  Owen Taylor  <otaylor@redhat.com>
12530
12531         * gtk/Makefile.am (LDFLAGS): Add missing backslash that was keeping
12532         GTK+ from building at all.
12533
12534         * gdk/Makefile.am (gdk_c_sources): Fix up some indentation issues.
12535
12536 Mon Jun  5 19:32:53 CEST 2000 Paolo Molaro <lupus@linuxcare.com>
12537
12538         * configure.in, gtk-config.in, gdk/Makefile.am, gdk/*/Makefile.am,
12539         gtk/Makefile.am: make it possible to configure gtk for different
12540         targets on the same platform. The library name is now 
12541         libgtk-$target-$version.so. gtk-config accepts a --target x11|nanox|linux-fb
12542         flag. Only the x11 target compiles right now.
12543         * gdk/gdkregion-generic.h, gdk/gdkregion-generic.c, gdk/gdkpoly-generic.h,
12544         gdk/gdkpolyreg-generic.c: move generic region code in the main GDK dir.
12545         * gdk/nanox/gdk*generic*: delete generic region code.
12546         * gdk/linux-fb/gdk*generic*: delete generic region code.
12547         * README.nanox: update information.
12548         
12549 Tue Jun  6 10:53:59 2000  Owen Taylor  <otaylor@redhat.com>
12550
12551         * gtk/gtktoolbar.c (gtk_toolbar_prepend_widget): Fix to
12552         prepend not append. (Pointed out by Brett Hall.)
12553
12554 Tue Jun  6 01:59:57 2000  Owen Taylor  <otaylor@redhat.com>
12555
12556         * gtk/gtkentry.c (gtk_entry_finalize): Unref the entry's layout.
12557
12558 Mon Jun  5 16:00:09 2000  Owen Taylor  <otaylor@redhat.com>
12559
12560         * gdk/gdk.c (gdk_init_check): Add call to g_type_init() - we'll
12561         need this later, and this makes sure that the atexit for
12562         glib gets called after that for GDK, so atexits are
12563         properly ordered for object leak checking.
12564
12565         * gdk/gdk.c (gdk_exit_func): Call gdk_windowing_exit().
12566
12567         * gdk/x11/gdkmain-x11.c (gdk_windowing_exit): Call 
12568         pango_x_shutdown_display()
12569
12570         * gtk/simple.c (main): Close window on destroy.
12571
12572 Mon Jun  5 11:50:02 2000  Owen Taylor  <otaylor@redhat.com>
12573
12574         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): We need
12575         to treat initial creation different from setting with 
12576         regards to the graphics-exposures parameter, so add a parameter
12577         indicating whether this is initial or not.
12578
12579 Mon Jun  5 13:29:31 2000  Owen Taylor  <otaylor@redhat.com>
12580
12581         * gdk/x11/gdkevents-x11.c: Hack gdk_event_get_graphics_expose()
12582         to sort of work by adding an extra return_exposes arg
12583         to gdk_event_translate() - it might be better to simply
12584         deprecate the function altogether and force people to rewrite
12585         without it. gdk_window_scroll() handles most of it, and where
12586         gdk_window_scroll() doesn't work, simply redrawing more does.
12587
12588         * gtk/gtkwidget.c (gtk_widget_set_default_direction): Fix up
12589         assertion.
12590
12591         * gtk-config.in: Include PANGO_CFLAGS/LIBS.
12592
12593         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Remove a 
12594         bunch of pretty much useless /* Print debugging info */ comments 
12595         which had drifted away from the code they were commenting.
12596
12597 2000-06-02  Havoc Pennington  <hp@pobox.com>
12598
12599         * gtk/testtextbuffer.c: Test program to make sure GtkTextBuffer
12600         is in working order.
12601         
12602         * gtk/testtext.c: Change to reflect anonymous mark API
12603
12604         * gtk/gtktextview.c: Convert from mark names to GtkTextMark*.
12605
12606         * gtk/gtktexttag.h (struct _GtkTextTag): remove the affects_size
12607         field, which was unused.
12608
12609         * gtk/gtktextmarkprivate.h (GTK_IS_TEXT_MARK): add this macro,
12610         saves some typing.
12611
12612         * gtk/gtktextbuffer.c: Switch from mark names to GtkTextMark*   
12613
12614         * gtk/gtktextbtree.c (gtk_text_btree_new): set the not_deleteable
12615         flag on the insertion point and selection bound
12616
12617         Throughout, use GtkTextMark instead of GtkTextLineSegment, and 
12618         make mark-manipulation functions take a GtkTextMark* instead of a
12619         mark name.
12620         
12621         * gtk/gtktextmarkprivate.h: Add a "not_deleteable" flag to 
12622         GtkTextMarkBody; will be used to detect attempts to delete
12623         the permanent marks (insert and selection bound)
12624
12625         * gtk/Makefile.am (noinst_PROGRAMS): add testtextbuffer 
12626
12627 Fri Jun  2 12:56:01 2000  Owen Taylor  <otaylor@redhat.com>
12628
12629         * gtk/gtkwidget.c (gtk_widget_init): Initialize DOUBLE_BUFFERED
12630         flag to on.
12631
12632         * gtk/gtkwidget.c (gtk_widget_draw) gtk/gtkmain.c (gtk_main_do_event): 
12633         Honor DOUBLE_BUFFRED_FLAG
12634
12635         * gtk/gtkwidget.c (gtk_widget_set_double_buffered): Add a
12636         function to set the DOUBLE_BUFFERED flag.
12637
12638         * gtk/gtkwidget.h: Add GTK_DOUBLE_BUFFERED flag to indicate whether
12639         or not exposes done on the widget should be double-buffered.
12640
12641         * gtk/gtkenums.h (GtkTextDirection): Reverse order of enumerations
12642         to be what would be expected. (Fixes problem with a
12643         g_return_if_fail() validating a TextDirection enumeration)
12644
12645 Thu Jun  1 23:05:13 2000  Owen Taylor  <otaylor@redhat.com>
12646
12647         * gtk/gtkwidget.c: Remove all references to 
12648         offscreen flag which was no longer used.
12649
12650         * gtk/gtkprivate.h (enum): Remove unused flags and compress.
12651
12652         * gtk/gtkframe.c (gtk_frame_set_label_widget): Check
12653         for non-null label_widget->parent.
12654
12655         * gtk/gtkentry.c: Get rid of code to deal with PangoAttribute 
12656         which no longer was used.
12657
12658         * gdk/gdkpango.c (gdk_pango_context_get_info): make static.
12659
12660         * gdk/gdkpango.c (gdk_draw_layout[_line]): Add checks
12661         for null arguments.
12662
12663         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): add
12664         check for destroyed windows.
12665
12666 Thu Jun  1 13:48:45 2000  Owen Taylor  <otaylor@redhat.com>
12667
12668         * gtk/gtkimmulticontext.c: Add a finalize method and unref
12669         the slave context there.
12670
12671         * gtk/gtkinvisible.[ch]: Make reference counting behavior
12672         identical to GtkWindow.
12673
12674 Thu Jun  1 01:54:11 2000  Owen Taylor  <otaylor@redhat.com>
12675
12676         * Makefile.am gdk/gdkpango.c: Copy the layout render function from
12677         pangox to here, so we can write them independent of rendering
12678         system, using GDK primitives.
12679
12680         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c
12681         gdk/x11/gdkdrawable-x11.c: Remove draw_layout() from the vtable,
12682         since we have a rendering-system independent implementation in
12683         terms of draw_glyphs().
12684         
12685         * gdk/gdkpango.c gdkdrawable.h (gdk_draw_layout_line): New
12686         function to render a single line.
12687
12688         * gdk/x11/gdkpango.c: Move the guts of this file mostly
12689         into ../gdkpango.c, which simplifies things, since we
12690         don't have to deal with raw X gc's.
12691
12692 Fri May 19 04:28:16 2000  Owen Taylor  <otaylor@redhat.com>
12693
12694         * gtk/gtktextlayout.[ch]: Add get_log_attrs() function to
12695         get the logical attributes for a given GtkTextLine.
12696
12697 Tue May 30 16:05:39 2000  Owen Taylor  <otaylor@redhat.com>
12698
12699         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Track
12700         g_locale_get_codeset() to g_get_codeset() change.
12701
12702 Tue May 30 15:03:19 2000  Owen Taylor  <otaylor@redhat.com>
12703
12704         * gtk/testcalendar.c (calendar_font_selection_ok): Use font
12705         descriptions.
12706
12707         * gtk/gtkentry.c (gtk_entry_draw_text): Center text within
12708         the entry.
12709
12710         * gtk/gtkfontsel.c (gtk_font_selection_dialog_init): Start of
12711         redoing (vastly simplifying) for Pango. Still needs quite
12712         a bit of work. (Size selection is currently poor. List of 
12713         predefined sizes is not a good idea, since all of these
12714         sizes won't necessarily be distinct.)
12715
12716 Tue May 30 13:50:19 2000  Owen Taylor  <otaylor@redhat.com>
12717
12718         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Handle
12719         CODESET results for LANG=C.
12720
12721 Mon May 29 15:49:10 2000  Owen Taylor  <otaylor@redhat.com>
12722
12723         * gtk/gtkrc.[ch]: Add a 'font_name' declaration to RC
12724         which takes a stringized pango font description;
12725         ignore the older 'font' and 'fontset' declarations.
12726
12727         * gtk/gtkstyle.c gtk/gtkrc.c: Fill in the style->font
12728         field with a GdkFont derived via gdk_font_from_description(),
12729         for compatibility. (Should we just remove it entirely?
12730         Probably too much compatibility breakage, but people
12731         should be migrating to the new Pango stuff as quickly
12732         as possible.)
12733
12734 Mon May 29 15:47:41 2000  Owen Taylor  <otaylor@redhat.com>
12735
12736         * gtk/gtkentry.c gtk/gtkclist.c: s/pango_font_unref/g_object_unref/.
12737
12738 Mon May 29 15:44:46 2000  Owen Taylor  <otaylor@redhat.com>
12739
12740         * gtk/gtkcalender.c: Roughly pango-ized. Really needs 
12741         redoing; there are some bugs in size allocation right
12742         now, the semi-existant distinction between header / day
12743         fonts was removed, but, with Pango, could actually
12744         be made functional in a nice way.
12745         
12746         * gtk/testcalender: Move calender from examples into this
12747         directory as a test program. (We really need to restrcture
12748         testgtk into a whole directory full of tests for every
12749         widget or functionality group, separated into multiple .c
12750         files.)
12751
12752 Mon May 29 15:19:56 2000  Owen Taylor  <otaylor@redhat.com>
12753
12754         * gtk/testgtk.c (file_exists): Fix stupid typo that
12755         was keeping RC file from being loaded.
12756
12757         * gtk/testgtkrc gtk/testgtkrc2: Test new pango-ized
12758         RC file font code.
12759
12760 Mon May 29 14:31:27 2000  Owen Taylor  <otaylor@redhat.com>
12761
12762         * gdk/gdkfont.h gdk/x11/gdkfont-x11.c (gdk_font_from_description):
12763         Add function to load a GdkFont from a PangoFontDescription.
12764
12765 2000-05-29  Tor Lillqvist  <tml@iki.fi>
12766
12767         * gdk/win32/gdkevents-win32.c (gdk_WindowProc): The local "event"
12768         variable should be of type GdkEventPrivate.
12769
12770 Fri May 26 17:16:40 2000  Owen Taylor  <otaylor@redhat.com>
12771
12772         * gtk/frame.[ch] gtkaspectframe.c: Make frame widgets able
12773         to have any widget for the label, use a GtkLabel widget
12774         to display the text. (Based partially on a patch from
12775         Anders Carlson.)
12776
12777         (Quite a bit of code reorganization - strip 90% of the
12778         guts out of gtkaspectframe and add a single virtual
12779         func to GtkFrameClass - compute_child_allocation.)
12780
12781 Fri May 26 12:00:02 2000  Owen Taylor  <otaylor@redhat.com>
12782
12783         * gtk/gtkctree.c gtk/gtkclist.[ch]: Pangoized.
12784         (Removed clist->row_center_offset field because caching
12785         it wasn't saving time or code, added private function
12786         _gtk_clist_create_cell_layout()).
12787
12788 Wed May 24 15:59:37 2000  Owen Taylor  <otaylor@redhat.com>
12789
12790         * gtk/gtkaccellabel.c: Pangoized.
12791
12792         * gtk/[hv]ruler.c: Pangoized
12793
12794 Mon May 22 19:23:59 2000  Owen Taylor  <otaylor@redhat.com>
12795
12796         * gtk/gtkfilesel.c (gtk_file_selection_init):
12797         Use gtk_clist_set_column_auto_resize() to remove need
12798         need for manual column width computations.
12799
12800 Mon May 22 18:50:26 2000  Owen Taylor  <otaylor@redhat.com>
12801
12802         * gtk/gtktooltips.[ch]: Replace custom drawing with a GtkLabel, 
12803         ensuring Pango correctness, and considerably simplifying the
12804         code.
12805         
12806         * gtk/gtklabel.c gtk[hv]scale.c: 1000 => PANGO_SCALE.
12807
12808         * gtk/gtklabel.c (gtk_label_size_request): Fixed incorrect
12809         getting of numbers of lines.
12810
12811         * gtk/gtklabel.c (gtk_label_size_request): Set the requisition
12812         to the actual requested width of the lable, not to the wrap
12813         width we set.
12814
12815         * gtk/gtktextchild.h: Remove extraneous include of gtk/gtk.h.
12816
12817         * gtk/gtktextbtree.c gtk/gtktextbuffer.c gtk/gtktextlayout.c
12818           gtk/gtktextview.c gtk/gtktextview.[ch]: Fix up includes.
12819
12820         * gtk/gtktextview.c: Fix structure inheritance.
12821
12822         * gtk/gtkprogressbar.c: Pangoize.
12823
12824 Mon May 22 15:47:30 2000  Owen Taylor  <otaylor@redhat.com>
12825
12826         * gtk/gtktextview.c (gtk_text_view_get_first_para_iter): Encapsulate
12827         in a function.
12828
12829         * gtk/gtktextlayout.c (find_display_line_above): Fixed
12830         bug with computing line tops.
12831
12832         * gtk/gtktextview.c (changed_handler): Fix < , <= confusion.
12833
12834 Thu May 18 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
12835
12836         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Fix up the x_offset
12837         and y_offset coordinates to do what we need now. (The offset between
12838         buffer and layout coordinates has been reintroduced, but is a 
12839         bit different than before.)
12840
12841         * gtk/gtktextview.[ch]: No longer inherit from GtkLayout; instead
12842         handle the adjustments ourselves, and scroll as necessary using
12843         the new gdk_window_scroll().
12844         
12845         The advantage of this is that when we are incrementally revalidating,
12846         we are essentially rearranging things around the visible portion
12847         of the screen. With the old setup, the visible portion of the
12848         screen was moved around in the layout, so scrolling and redrawing
12849         to track that caused jumping of the display. Since we now
12850         control the scrolling ourselves, we can suppress this and
12851         only redraw when things actually change.
12852
12853 Thu May 18 18:47:25 2000  Owen Taylor  <otaylor@redhat.com>
12854
12855         * gtk/gtktextbtree.c (redisplay_mark): We need to invalidate
12856         the region not just redisplay it after-all, since we store the
12857         cursors in the LineDisplay. (Ugly interactions here between
12858         GtkLayout and GtkTextBTree here.)
12859         
12860         * gtk/gtktextbtree.c (redisplay_region): Fixed reversed comparison.
12861
12862 Thu May 18 18:43:21 2000  Owen Taylor  <otaylor@redhat.com>
12863
12864         * gdk/gdkwindow.h gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): 
12865         Added function to scroll contents of a window while keeping the
12866         window constant. Works by XCopyArea or guffaw-scrolling depending
12867         on the details of how the window is set up. (guffaw-scrolling
12868         still needs to be filled in.)
12869
12870 Wed May 17 22:36:53 2000  Owen Taylor  <otaylor@redhat.com>
12871
12872         * gtk/gtktextiter.c gtk/gtkmain.c: Add a debug key for the text widget,
12873         move the debugging that was tied to a global variable
12874         to that.
12875
12876         * gtk/gtkmarshal.list: Add NONE:INT,INT,INT
12877
12878         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.c: Keep a separate
12879         validated flag, in line data instead of setting height/width to
12880         -1. This allows us to perform operations with partially invalid
12881         buffer (using the old size for invalid lines) and thus to do
12882         incremental vaidation. Keep height/width aggregates up to date
12883         when deleting text and rebalancing the tree.
12884
12885         * gtk/gtktextbtree.[ch]: Add functions validate a line
12886         (gtk_text_btree_validate_line), and to validate up
12887         to a number of pixels (gtk_text_btree_validate).
12888
12889         * gtk/gtktextlayout.[ch]: Add an ::invalidated signal
12890         that indicates that something is changed and a revalidation
12891         pass is needed. Change ::need_repaint to ::changed, and
12892         make it take old and new yranges instead of a rectangle.
12893
12894         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.[ch]: Move
12895         the line_data_destroy() function from 
12896         gtk_text_btree_add_view() to a virtual function in 
12897         GtkTextLayout
12898
12899         * gtk/gtktextbtree.[ch]: Remove gtk_text_btree_get_damage_range(),
12900         since we are handling partial repaints in a different fashion
12901         now.
12902
12903         * gtk/gtktextbtree.[ch]: Only repaint the changed portion
12904         of the selection instead of queueing a repaint on the
12905         entire widget.
12906
12907         * gtk/gtktextbuffer.[ch] gtk/gtktextbtree.[ch]: Move
12908         get_selection_bounds() down to btree, make the function
12909         in buffer a wrapper around the btree function.
12910
12911         * gtk/gtktextlayout.[ch]: Add functions to check if the
12912         layout is valid and to recompute either a range of pixels
12913         aroudn a line or a certain total number of pixels.
12914
12915         * gtk/gtktextlayout.[ch]: Cache a single line display;
12916         now that we only redraw the needed portions, the hit rate
12917         for this cache is quite high.
12918         
12919         * gtk/gtktextview.[ch]: Keep track of the first paragraph
12920         on the screen so that when re-laying-out the buffer, we can
12921         keep the same place. This requires connecting to ::value_changed
12922         on the adjustments
12923
12924         * gtk/gtktextview.[ch]: Add idle functions to revalidate
12925         the buffer after we receive an ::invalidated signal.
12926         
12927 Wed May 17 22:10:47 2000  Owen Taylor  <otaylor@redhat.com>
12928
12929         * gtk/gtklayout.c (gtk_layout_size_allocate): Set upper
12930         to max of allocation and layout size, not just to the
12931         layout size.
12932
12933         * gtk/gtk[hv]scrollbar.c (gtk_[hv]scrollbar_calc_slider_size): 
12934         Invalidate window so it gets redrawn properly.
12935
12936         * gdk/gdkwindow.c (gdk_window_invalidate_rect): Allow rect == NULL
12937         to mean the entire window.
12938
12939         * gdk/gdkevents.h: Move definition for GDK_PRIORITY_REDRAW
12940         into public header.
12941
12942 Mon May 15 14:51:31 2000  Owen Taylor  <otaylor@redhat.com>
12943
12944         * gtk/gtktextmark.c (gtk_text_mark_get_name): Add function
12945         to get the name of a mark.
12946
12947         * gtk/gtktextlayout.c (gtk_text_layout_get_line_at_y): Add a function
12948         to find the paragraph from a y position.
12949
12950 Thu May 11 12:57:20 2000  Owen Taylor  <otaylor@redhat.com>
12951
12952         * gtk/gtktextbtree.c (gtk_text_btree_node_invalidate_upward): Valid
12953         nodes have width/height >= 0, not > 0.
12954
12955 Tue May  9 21:29:06 2000  Owen Taylor  <otaylor@redhat.com>
12956
12957         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c (gtk_text_layout_get_line_display):
12958         Add a size_only flag, so when we only need the size, we don't create
12959         useless appearance attributes.
12960
12961         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Remove
12962         duplicate setting of font description.
12963
12964         * gtk/gtkscale.c: Use PANGO_SCALE instead of 1000 
12965
12966 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
12967
12968         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
12969         EXTRA_DIST. It does not work well when the file that
12970         everything depends on is not in the tarball.
12971
12972 Wed Apr 26 00:56:14 2000  Owen Taylor  <otaylor@redhat.com>
12973
12974         * gtk/testgtk.c: Some hacks and fixes so that it basically
12975         works when not sitting in the GTK+ build tree.
12976
12977 2000-05-03  Havoc Pennington  <hp@redhat.com>
12978
12979         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
12980         Properly determine the ordering of the tag root and the current
12981         line within the tree. Previous algorithm only worked if the tag
12982         root's immediate parent was the common root of both the current
12983         line and the tag root.
12984
12985 Wed Apr 26 00:43:00 2000  Owen Taylor  <otaylor@redhat.com>
12986
12987         * gtk/gtktextlayout.c (set_para_values): Fix some bugs in
12988         alignment.
12989
12990         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Track
12991         the widget text directional dynamically.
12992
12993         * gtk/gtktextview.[ch]: Added functions to get and set default
12994         wrap mode.
12995
12996 Tue Apr 25 23:47:38 2000  Owen Taylor  <otaylor@redhat.com>
12997
12998         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Fix bug
12999         in cursor location computation.
13000
13001 Tue Apr 25 23:22:59 2000  Owen Taylor  <otaylor@redhat.com>
13002
13003         * gtk/gtklayout.c (gtk_layout_set_size): Clamp hadjustment/
13004         vadjusment values properly when layout gets smaller.
13005
13006         * gtk/gtktextview.c (need_repaint_handler): Areas being
13007         passed in are far completely inaccurate, and sometimes
13008         too small, so, for now, just queue a redraw on the
13009         whole visible region.
13010
13011 2000-04-25  Havoc Pennington  <hp@redhat.com>
13012
13013         * gtk/gtktextbtree.c (summary_destroy): new function to 
13014         destroy tag summary nodes
13015         (gtk_text_line_next_could_contain_tag): this function was 
13016         totally broken if the line passed in wasn't below the tag
13017         root. Fix it.
13018         (gtk_text_btree_first_could_contain_tag): In the tag == NULL 
13019         "wildcard" case, we have to do a linear scan. Blah.
13020         (gtk_text_btree_last_could_contain_tag): In tag == NULL case,
13021         we have to do the linear scan
13022         (tag_removed_cb): When a tag is removed from the tag table, 
13023         remove the GtkTextTagInfo node from the btree.
13024         (gtk_text_btree_spew): Implement the spew function, for 
13025         our debugging pleasure.
13026
13027 Tue Apr 25 19:40:18 2000  Owen Taylor  <otaylor@redhat.com>
13028
13029         * gtk/gtktextlayout.c (gtk_text_layout_set_buffer): Fix
13030         a problem with referring to the wrong buffer.
13031
13032         * gtk/gtkentry.c: Fix focus-in/focus-out confusion.
13033
13034         * gtk/gtkrc.c gtk/gtkstyle.c: Moving setting default
13035         font description to gtk_style_new() - otherwise things
13036         don't work without a .gtkrc file.
13037
13038         * gtk/gtktextbuffer.c (gtk_text_buffer_new): Sink the
13039         tags table if we create it ourself, too.
13040
13041         * gdk/gdktypes.h (enum): Move GDK_RELEASE_MASK, since
13042         it was conflicting with XKB modifiers.
13043
13044         * gtk/gtktextview.[ch]: Add simple support for 
13045         GtkIMContext.
13046
13047 Mon Apr 24 19:34:18 2000  Owen Taylor  <otaylor@redhat.com>
13048
13049         * gtk/gtkentry.c (gtk_entry_move_cursor_visually): Fix problem
13050         with deletion from last commit.
13051
13052 Mon Apr 24 19:29:40 2000  Owen Taylor  <otaylor@redhat.com>
13053
13054         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Set the language
13055         in the context from the current locale.
13056         
13057         * gtk/gtkentry.c (gtk_entry_size_request): Use language from the
13058         context, not hardcoded value.
13059
13060         * gtk/gtkentry.c (gtk_entry_move_cursor): Make character movement visual,
13061         not logical.
13062
13063 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
13064
13065         * gtk/gtkentry.c gtk/gtktextdisplay.c: Don't handle selections as
13066         attributes - that doesn't handle partial-glyph selection
13067         properly. Instead use new pango_layout_line_get_x_ranges()
13068         functionality to draw the selection.
13069
13070         * gtk/gtkentry.c: Simplify code since pango_layout_line_index_to_x()
13071         now properly handles out-of-range coordinates.
13072
13073         * gtk/gtktextbuffer.c: Emit "mark_set" when the cursor is moved.
13074
13075         * gtk/gtktextiter.h gtk/gtktextiterprivate.h: Make gtk_text_iter_get_line_byte()
13076         public.
13077
13078         * gtk/gtktextlayout.[ch]: Properly set the direction in the PangoContext
13079         for paragraphs opposite to the base direction of the widget.
13080
13081         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c: Fixes for alignment.
13082
13083         * gtk/gtktextlayout.c: Don't split segments on marks, since that
13084         causes Arabic words to reshape as you cursor through.
13085
13086         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Implement virtual
13087         cursor position when moving vertically with the arrow keys and
13088         scrolling with page-up/page-down. (Arrow keys save only the X,
13089         scrolling saves both X and Y.)
13090
13091         This means you can line-up / line-down or page-up / page-down
13092         without losing your place, and also that moving vertically
13093         with the cursor keys keeps the same X position, not the same
13094         character count:
13095
13096         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Make vertical
13097         arrow keys move by display lines, not paragraphs.
13098
13099 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
13100
13101         * gtk/gtklayout.c: Make sure that the bin window is at least
13102         as big as the allocation. (Should we also make sure that the
13103         bin window is big enough to completely cover widget->window?)
13104
13105         * gtk/gtktextview.c (gtk_text_view_get_visible_rect): Add
13106         function to get the onscreen rectangle.
13107
13108         * gdk/x11/gdkwindow-x11.c (gdk_window_get_pointer): Correctly account
13109         for offsets in window coordinates.
13110
13111 Sun Apr 16 16:13:27 2000  Owen Taylor  <otaylor@redhat.com>
13112
13113         * gtk/gtkentry.c (gtk_entry_get_cursor_locations): Fix index/offset
13114         confusion.
13115
13116         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Set the default direction
13117         from the widget direction.
13118
13119         * gtk/gtktexttag.c gtk/gtktexttagprivate.h (gtk_text_tag_set_arg): 
13120         Add a "direction" attribute.
13121
13122         * gtk/gtktextview.c: global s/tkxt/text_view/.
13123
13124         * gtk/testtext.c: Added long block of text in Arabic, to test out
13125         the direction attributes. (Some problems with the shaping system
13126         for arabic become obvious - like the fact the cursor splits words
13127         into unjoined pieces.)
13128
13129 Fri Apr 14 12:54:34 2000  Owen Taylor  <otaylor@redhat.com>
13130
13131         * gtk/gtktextdisplay.c (render_layout): Add overstrike handling.
13132
13133         * gtk/gtktextlayout.c: Fix up alignment.
13134
13135         * gtk/testtext.c: Add some tests for centering, wrapping.
13136
13137 Fri Apr 14 09:26:22 2000  Owen Taylor  <otaylor@redhat.com>
13138
13139         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c gdk/x11/gdkdrawable-x11.c:
13140         Add a draw_glyphs() operation to the drawable vtable and gdk_draw_glyphs().
13141         If we wrote GTK+-specific layout-render function this could just replace
13142         the draw_layout() operation in the vtable.
13143
13144         * gtk/gtkentry.c: Move guts of gtk_entry_get_cursor_locations to 
13145         pango_layout_get_cursor_pos() and use that function.
13146
13147         * gtk/gtktextchild.[ch]: add gtk_ onto pixmap_segment_new(), since it
13148         is a non-static symbol.
13149
13150         * gtk/gtktextbtree.[ch]: Replace gtk_text_btree_find_line_data_by_y()
13151         with gtk_text_btree_find_line_by_y()
13152
13153         * gtk/gtktextdisplay.c: Rewrote for Pango - uses a custom layout
13154         renderer that handles GtkTextAppearance attributes.
13155
13156         * gtk/gtktexttag.[ch] gtk/gtktexttagprivate.h: 
13157
13158           - Move the values in the style that don't affect geometry into a
13159             GtkTextAppearance structure.
13160           - Change underline to take a PangoUnderline and "font" a string
13161             representation of a font description
13162           - Add a "font_desc" attribute which takes a FontDescription structure.
13163
13164         * gtk/gtktextlayout.[ch]:
13165
13166           - Get rid of the display-line list per each line. Instead, we
13167             generate, on demand, a GtkTextLineDisplay structure which]
13168             contains a PangoLayout * and other necesary information
13169             (offsets, cursor locations) for displaying a paragraph.
13170           - Get rid of the code to wrap lines, create display chunks,
13171             etc. Instead, we just go through a paragraph and convert
13172             it into the necessary inputs to a PangoLayout.
13173           - Implement a new attribute type, GtkTextAttrAppearance. This
13174             holds a GtkTextAppearance, and is used to pass colors, 
13175             stipple, etc, through from the layout to the display without
13176             having to use lots and lots of individual attributes.
13177           - Reimplement gtk_layout_get_iter_at_pixel() gtk_layout_get_iter_pos()
13178             in terms of PangoLayout functions.
13179         
13180         * gtk/gtktextview.c: 
13181          
13182           - Handle passing the necessary PangoContext to the layout
13183           - Some fixups in painting to deal with the automatic backing store
13184             and offsetting of GTK+-1.4
13185           - Add a style_set handler so that the default style reacts
13186             properly to theme changes.
13187         
13188         * gtk/gtktext?*.[ch]: Random code-style fixes.
13189
13190         * gtk/testtext.c: Substitute in languages that Pango handles now for Thai
13191
13192 Mon Apr 10 10:33:45 2000  Owen Taylor  <otaylor@redhat.com>
13193
13194         * gtk/gtktext?*.[ch]: Check in Havoc's port of the Tk text widget,
13195         in original form preparatory to Pango-ization and gdkimcontext-ization.
13196
13197 Thu Apr  6 19:25:39 2000  Owen Taylor  <otaylor@redhat.com>
13198
13199         * gtk/gtkimcontext.c: Move default implementations to real_* vfuncs,
13200         so that we can derive from gtkimcontext in language bindings properly.
13201
13202 Thu Apr  6 16:02:52 2000  Owen Taylor  <otaylor@redhat.com>
13203
13204         * gtk/gtkimcontextsimple.[ch]: Use gdk_keyval_to_unicode to gdk_unicode_to_keyval.
13205         Add a compose table including (almost) all the compose combinations
13206         from X. This is 6k of static, shared data as opposed to 50k or so of dynamic
13207         data in the XIM implementation.
13208
13209         * gdk/gdk.h gdk/gdkkeyuni.c gdk/win32/gdkevents-win32.c (gdk_keyval_to_unicode, gdk_unicode_to_keyval):
13210         Moved functions to convert keyvalues from and to unicode here from
13211         the win32 port and made them public.
13212
13213 Wed Apr  5 16:37:29 2000  Owen Taylor  <otaylor@redhat.com>
13214
13215         * gtk/gtkeditable.c (gtk_editable_insert_text): Allow new_text_length == -1.
13216
13217 Wed Apr  5 16:27:45 2000  Owen Taylor  <otaylor@redhat.com>
13218
13219         * gtk/gtkimcontext.[ch]: Base class for new input context system
13220
13221         * gtk/gtkimmulticontext.[ch]: Proxy input context that allows
13222         the real input context implementation to be loaded from modules
13223         and switched on the fly.
13224
13225         * gtk/gtkcontextsimple.[ch]: Simple implementation of an input
13226         context that just does direct keysymbol => unicode translation.
13227
13228         * gtk/gtkentry.[ch]: Start switching editing over to using
13229         GtkInputContext. (No handling of preedit yet.)
13230
13231 Wed Apr  5 15:48:41 2000  Owen Taylor  <otaylor@redhat.com>
13232
13233         * gtk/gtktypeutils.h (GTK_CHECK_GET_CLASS): Fix problem with one too
13234         many substitutions. (klass should not be subsituted.)
13235
13236 Wed Apr  5 00:18:14 2000  Owen Taylor  <otaylor@redhat.com>
13237
13238         * configure.in: Add checks for Pango
13239
13240         * configure.in docs/Makefile.am: Add test for sgml2html
13241         and allow 'make dist' without building html, but print out
13242         warnings in that case. (For making snapshots)
13243
13244         * gdk/Makefile.am gdk/x11/Makefile.am gtk/Makefile.am:
13245         Add Pango libraries and C flags
13246
13247         * gdk/gdkdraw.c gdk/gdkdrawable.h gdkwindow.c gdk/x11/gdkdrawable-x11.c:
13248         Add function (gdk_draw_layout) to draw a pango layout.
13249
13250         * gdk/gdkpango.h gdk/x11/gdkpango-x11.c: New file with functions
13251         for getting Pango contexts for GDK.
13252
13253         * gtk/gtkeditable.c: Get rid of dead code gtk_editable_parent_set()
13254
13255         * gtk/gtkentry.[ch]: Complete rewrite to use Pango, add bidirectional
13256         editing.
13257
13258         * gtk/gtkentry.c: Hack in simple Hebrew input with direct
13259         keysym => unicode translations. More languages can be added
13260         here, but real input-method support is needed.
13261
13262         * docs/Changes-1.4.txt: Added note about entry behavior.
13263         
13264         * gtk/gtkenums.h gtk/gtkwidget.[ch] testgtk.c gtkprivate.h: Add functions
13265         to set the reading direction for a widget and the global direction.
13266         Add test which allows toggling the global direction. Two private
13267         flags are used to store the direction. (GTK_DIRECTION_SET + GTK_DIRECTION_LTR)
13268
13269         * gtk/gtkcheckbutton.c gtk/gtkframe.c gtk/gtkhbbox.c gtk/gtkhbox.c
13270           gtk/gtkradiobutton.c gtk/gtkspinbutton.c gtk/gtktable.c 
13271
13272         * gtk/gtk[hv]scale.c gtk/gtkscale.[ch]: Draw numbers using Pango
13273
13274         * gtk/gtklabel.[ch]: Moved to Pango and considerably rewritten. Line breaking,
13275         underlining now handled by Pango.
13276
13277         * gtk/gtkstyle.[ch] gtk/gtkrc.[ch]: Add a PangoFontDescription
13278         to RCStyle and Style. (Having both this and the old font name and GdkFont 
13279         is temporary.)
13280
13281         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_{context,layout}): Added 
13282         convenience functions for creating contexts and layouts for widgets.
13283
13284         * gtk/testgtk.c: Enhance label tests with multilingual labels.
13285
13286 2000-05-29  Jonathan Blandford  <jrb@redhat.com>
13287
13288         * gtk/gtkclist.c (gtk_clist_column_titles_active): let you set the
13289         titles to be active, even if they aren't visible.
13290         (gtk_clist_column_titles_passive):  Ditto.
13291
13292 2000-05-21  Nils Barth  <nils_barth@post.harvard.edu>
13293
13294         * gtkmenu.c:
13295         * gtkmenu.h:
13296         * gtktypeutils.h: Spelling/grammar fixes in comments.
13297
13298 Tue May 23 12:25:07 CEST 2000 lupus <lupus@debian.org>
13299
13300         * gdk/nanox/*.h: add missing header files.
13301
13302 Fri May 19 11:52:59 2000  Tim Janik  <timj@gtk.org>
13303
13304         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set
13305         send_event to TRUE.
13306         (gtk_drawing_area_size): queue a resize.
13307
13308 Sun Mar 26 03:21:28 2000  Tim Janik  <timj@gtk.org>
13309
13310         * gtk/gtksignal.c (gtk_signal_handlers_destroy): when unref-ing
13311         the handlers, also invalidate them. bug nailed down by Karl Nelson
13312         <kenelson@ece.ucdavis.edu>.
13313
13314 Fri May 19 06:49:23 2000  Tim Janik  <timj@gtk.org>
13315
13316         * gtk/gtkfontsel.c (gtk_font_selection_get_font_name): handle
13317         "(nil)" foundries, patch from Grigorios Magklis.
13318
13319         * gtk/gtkfontsel.c (gtk_font_selection_load_font): don't crash
13320         on non-available fonts, based on a patch by Grigorios Magklis
13321         <maglis@cs.rochester.edu>.
13322
13323 2000-05-18  Elliot Lee  <sopwith@redhat.com>
13324
13325         * gdk/x11/gdkregion-generic.c: If a region does not have any
13326         rectangles, or if the specified rectangle is not in the region, then return GDK_OVERLAP_RECTANGLE_OUT
13327         instead of GDK_OVERLAP_RECTANGLE_IN.
13328
13329 2000-05-17  Jonathan Blandford  <jrb@redhat.com>
13330
13331         * gtk/gtklayout.c (gtk_layout_map): Remove references to
13332         OFFSCREEN, as it is no longer necessary.
13333
13334 Wed May 17 10:52:12 2000  Owen Taylor  <otaylor@redhat.com>
13335
13336         * gtk/gtkcolorsel.c: Patch from David Santiago
13337         <mrcooger@cyberverse.com> to change things so that the 
13338         indicator of the active palette entry is done independently,
13339         not via the focus, since it should always be visible.
13340
13341 2000-05-17  Tor Lillqvist  <tml@iki.fi>
13342
13343         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Plug same
13344         refcount leaks as in the X11 backend.
13345
13346         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Logging
13347         cosmetics.
13348
13349         * gdk/win32/gdkwindow-win32.c: Similar changes as in X11
13350         backend. Add _gdk_windowing_window_destroy().
13351
13352         * gtk/gtkcolorsel.c: Include correct backend-specific header.
13353         Don't use XColor unless on X11. (No GDK_VISUAL_STATIC_COLOR
13354         either, but these probably do exist on nanox?)
13355         
13356         * gtk/gtkhsv.c: Use G_PI (fresh from <glib.h>) instead of M_PI
13357         which isn't necessarily defined by <math.h>.
13358
13359         * gtk/gtkobject.c (gtk_object_init): Don't go up the class
13360         ancestry past GtkObject.
13361
13362         * gtk/gtktypeutils.h: Mark GTK_TYPE_IDENTIFIER for export/import
13363         from DLL on Win32.
13364
13365         * gtk/gtk.def: Update corresponding to recent changes.
13366
13367         * gtk/makefile.{cygwin,msc}: Updates.
13368
13369 Fri May 12 18:46:51 2000  Owen Taylor  <otaylor@redhat.com>
13370
13371         * docs/Changes-1.4.txt: A bit of editing.
13372
13373         * gdk/gdkwindow.c (_gdk_window_clear_update_area) 
13374         * gdk/x11/gdkwindow-x11.c (gdk_window_hide): Add a function
13375         to clear the update area for the window, and clear it
13376         when hiding a window.
13377
13378         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Ignore
13379         if window destroyed.
13380
13381         * gdk/gdkwindow.c (gdk_window_end_paint): Likewise.
13382
13383         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c gdk/gdkinternals.h: Move 
13384         gdk_window_destroy() to the generic code, since there was a lot of 
13385         window-system-independent logic it in. Add a function:
13386         
13387          _gdk_window_destroy() 
13388
13389         to the internal API to destroy a window without unreferencing it.
13390         Add a function:
13391
13392          _gdk_windowing_window_destroy()
13393
13394         That does the windowing-system-dependent part of destroying 
13395         the window.
13396
13397 Fri May 12 11:07:41 2000  Owen Taylor  <otaylor@redhat.com>
13398
13399         * gtk/testgtk.c: Fix various memory leaks of pixmaps.
13400
13401 Fri May 12 11:06:10 2000  Owen Taylor  <otaylor@redhat.com>
13402
13403         * gtk/gtkwidget.c docs/Changes-1.4.txt (gtk_widget_shape_combine_mask): 
13404         Make gtk_widget_shape_combine_mask() keep a reference count on
13405         the pixmap since it keeps it around.
13406
13407 Fri May 12 10:53:29 2000  Owen Taylor  <otaylor@redhat.com>
13408
13409         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix refcount
13410         leak.
13411
13412         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Fix refcount
13413         leak with event filters.
13414
13415 Thu May 11 14:29:44 2000  Owen Taylor  <otaylor@redhat.com>
13416
13417         * gtk/gtkdnd.c (gtk_drag_dest_set_internal): Remove the
13418         signal handlers with the right data arguments. (Fixes
13419         some warnings when a widget was repeatedly set as a drag
13420         destination.)
13421
13422         * gdk/x11/gdkdnd-x11.c (gdk_window_register_dnd): Set data on the
13423         window so we can avoid avoid setting the DND properties on the
13424         toplevel window repeatedly.
13425
13426 2000-05-13  Tor Lillqvist  <tml@iki.fi>
13427
13428         * gdk/win32/gdkwin32.h: Define more message types missing from
13429         mingw headers.
13430
13431         * gdk/win32/gdkevents-win32.c (gdk_event_translate): On WM_DESTROY
13432         call gdk_window_destroy_notify(). It was never called. This
13433         probably meant that the GdkWindow was never freed. Thanks Owen for
13434         noticing (!).
13435
13436         * gdk/win32/gdkwindow-win32.c (gdk_window_internal_destroy): Mark
13437         window as destroyed before calling DestroyWindow(). DestroyWindow()
13438         causes a call to the window procedure (gdk_WindowProc), which
13439         calls gdk_event_translate(), which calls
13440         gdk_window_destroy_notify(), which gets confused unless the window
13441         is set as destroyed.
13442
13443         * gdk/win32/gdkcolor-win32.c (gdk_win32_color_to_string): Rename
13444         this function to indicate it's win32 only. Put inside #ifdef
13445         G_ENABLE_DEBUG.
13446
13447         * gdk/win32/gdkevents-win32.c (gdk_win32_message_name): New
13448         debugging function. (gdk_event_translate:) Add a default branch
13449         that uses the above function to print debug messages with all
13450         Windows messages symbolically.
13451
13452         * gdk/win32/gdkprivate-win32.h: Declare it, and
13453         gdk_win32_color_to_string, but only if G_ENABLE_DEBUG.
13454
13455 Fri May 12 20:07:32 2000  Tim Janik  <timj@gtk.org>
13456
13457         * gtk/gtkcolorseldialog.c: don't include gtk/gtkintl.h in a
13458         public header file.
13459
13460 Fri May 12 17:13:32 2000  Tim Janik  <timj@gtk.org>
13461
13462         * docs/Changes-1.4.txt: documented necessary changes for 1.4 transition.
13463
13464         * gtk/gtktext.c: made the adjustments no-construct args, simply
13465         provide default adjustments.
13466         (gtk_text_destroy): release adjustments.
13467
13468         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): made the
13469         adjustment argument non-construct.
13470
13471         * gtk/gtkprogress.c (gtk_progress_destroy): release adjustment here,
13472         instead of in finalize.
13473         (gtk_progress_get_text_from_value): 
13474         (gtk_progress_get_current_text): 
13475         (gtk_progress_set_value): 
13476         (gtk_progress_get_percentage_from_value): 
13477         (gtk_progress_get_current_percentage): 
13478         (gtk_progress_set_percentage): 
13479         (gtk_progress_configure): ensure an adjustment is present.
13480
13481 Thu May 11 01:24:08 2000  Tim Janik  <timj@gtk.org>
13482
13483         * gtk/gtkcolorsel.[hc]:
13484         * gtk/gtkcolorseldialog.[hc]:
13485         * gtk/gtkhsv.[hc]: major code cleanups, destroy handlers need to chain
13486         their parent implementation, use bit fields for boolean values, don't
13487         create unused widgets, usage of glib types, braces go on their own
13488         lines, function argument alignment, #include directives etc. etc. etc..
13489
13490         * gtk/Makefile.am (gtk_public_h_sources): install gtkhsv.h.
13491
13492 Wed May 10 23:29:52 2000  Tim Janik  <timj@gtk.org>
13493
13494         * gtk/gtktoolbar.c (gtk_toolbar_destroy): don't unref a NULL tooltips.
13495
13496         * gtk/gtkfilesel.c (gtk_file_selection_destroy): don't free a cmpl_state
13497         of NULL.
13498
13499         * gtk/gtkcombo.c (gtk_combo_item_destroy): don't keep references
13500         to freed data.
13501         (gtk_combo_destroy): don't keep a pointer to a destroyed window.
13502
13503         * gtk/gtkmenu.c (gtk_menu_init): reset the menu's toplevel pointer
13504         to NULL when the toplevel is getting destroyed.
13505         (gtk_menu_set_tearoff_state): same here for the tearoff_window.
13506         (gtk_menu_destroy): 
13507         (gtk_menu_init): store the information of whether we have to
13508         readd the initial child ref_count during destruction in a new
13509         GtkMenu field needs_destruction_ref_count.
13510
13511         * gtk/gtkviewport.c: SHAME! ok this one is tricky, so i note it
13512         here, those reading: learn from my mistake! ;)
13513         in order for set_?adjustment to support a default adjustemnt if
13514         invoked with an adjustment pointer of NULL, the code read (pseudo):
13515         if (v->adjustment) unref (v->adjustment);
13516         if (!adjustment) adjustment = adjustment_new ();
13517         if (v->adjustment != adjustment) v->adjustment = ref (adjustment);
13518         now imagine the first unref to actually free the old adjustment and
13519         adjustment_new() creating a new adjustment from the very same memory
13520         portion. here, the latter comparision will unintendedly fail, and
13521         all hell breaks loose.
13522         (gtk_viewport_set_hadjustment):
13523         (gtk_viewport_set_vadjustment): reset viewport->?adjustment to NULL
13524         after unreferencing it.
13525
13526         * gtk/gtkcontainer.[hc]: removed toplevel registration
13527         functions: gtk_container_register_toplevel(),
13528         gtk_container_unregister_toplevel() and
13529         gtk_container_get_toplevels() which had wrong semantics
13530         anyways: it didn't reference and copy the list.
13531
13532         * gtk/gtkwindow.c: we take over the container toplevel registration
13533         bussiness now. windows are registered across multiple destructions,
13534         untill they are finalized. the initial implicit reference count
13535         users are holding on windows is removed with the first destruction
13536         though.
13537         (gtk_window_init): ref & sink and set has_user_ref_count, got
13538         rid of gtk_container_register_toplevel() call. add window to
13539         toplevel_list.
13540         (gtk_window_destroy): unref the window if has_user_ref_count
13541         is still set, got rid of call to
13542         gtk_container_unregister_toplevel().
13543         (gtk_window_finalize): remove window from toplevel list.
13544         (gtk_window_list_toplevels): new function to return a newly
13545         created list with referenced toplevels.
13546         (gtk_window_read_rcfiles): use gtk_window_list_toplevels().
13547
13548         * gtk/gtkhscale.c (gtk_hscale_class_init): made the GtkRange
13549         adjustment a non-construct arg.
13550         * gtk/gtkvscale.c (gtk_vscale_class_init): likewise.
13551         * gtk/gtkhscrollbar.c (gtk_vscrollbar_class_init): likewise.
13552         * gtk/gtkvscrollbar.c (gtk_vscrollbar_class_init): likewise.
13553
13554         * gtk/gtkrange.c: added some realized checks.
13555         (gtk_range_destroy): get rid of the h/v adjustments in the
13556         destroy handler instead of finalize. remove timer.
13557         (gtk_range_get_adjustment): demand create adjustment.
13558
13559         * gtk/gtkviewport.c: made h/v adjustment non-construct args.
13560         we simply create them on demand now and get rid of them in
13561         the destroy handler.
13562         (gtk_viewport_destroy): get rid of the h/v adjustments in the
13563         destroy handler instead of finalize.
13564         (gtk_viewport_get_hadjustment): 
13565         (gtk_viewport_get_vadjustment): 
13566         (gtk_viewport_size_allocate): demand create h/v adjustment
13567         if required.
13568
13569         * gtk/gtkwidget.c (gtk_widget_finalize): duplicate part of the
13570         gtk_widget_real_destroy () functionality.
13571         (gtk_widget_real_destroy): reinitialize with a new style, instead
13572         of setting widget->style to NULL.
13573
13574 Fri May  5 13:02:09 2000  Tim Janik  <timj@gtk.org>
13575
13576         * gtk/gtkcalendar.c:
13577         * gtk/gtkbutton.c: ported _get_type() implementation over to
13578         GType, either to preserve memchunks allocation facilities,
13579         or because Gtk+ 1.0 GtkTypeInfo was still being used.
13580
13581         * gtk/gtkobject.[hc]: derive from GObject. ported various functions
13582         over. prepare for ::destroy to be emitted multiple times.
13583         removed reference tracer magic. chain into GObjectClass.shutdown()
13584         to emit ::destroy signal.
13585
13586         * gtk/gtksignal.c: removed assumptions about GTK_TYPE_OBJECT being
13587         fundamental.
13588
13589         * gtk/gtkmain.c: removed gtk_object_post_arg_parsing_init()
13590         cludge.
13591
13592         * gtk/gtksocket.c:
13593         * gtk/gtkplug.c:
13594         * gtk/gtklayout.c:
13595         * gtk/gtklabel.c:
13596         * gtk/gtkargcollector.c:
13597         * gtk/gtkarg.c: various fixups to work with GTK_TYPE_OBJECT
13598         not being a fundamental anymore, and to work with the new
13599         type system (nuked fundamental type varargs clutter).
13600
13601         * gtk/*.c: install finalize handlers in the GObjectClass
13602         part of the class structure.
13603         changed direct GTK_OBJECT()->klass accesses to
13604         GTK_*_GET_CLASS().
13605         changed direct object_class->type accesses to GTK_CLASS_TYPE().
13606
13607         * gtktypeutils.[hc]: use the reserved fundamental ids provided by
13608         GType. made most of the GTK_*() type macros and Gtk* typedefs
13609         simple wrappers around macros and types provided by GType.
13610         most notably, a significant portion of the old API vanished:
13611         GTK_TYPE_MAKE(),
13612         GTK_TYPE_SEQNO(),
13613         GTK_TYPE_FLAT_FIRST, GTK_TYPE_FLAT_LAST,
13614         GTK_TYPE_STRUCTURED_FIRST, GTK_TYPE_STRUCTURED_LAST,
13615         GTK_TYPE_ARGS,
13616         GTK_TYPE_CALLBACK,
13617         GTK_TYPE_C_CALLBACK,
13618         GTK_TYPE_FOREIGN,
13619         GtkTypeQuery,
13620         gtk_type_query(),
13621         gtk_type_set_varargs_type(),
13622         gtk_type_get_varargs_type(),
13623         gtk_type_check_object_cast(),
13624         gtk_type_check_class_cast(),
13625         gtk_type_describe_tree(),
13626         gtk_type_describe_heritage(),
13627         gtk_type_free(),
13628         gtk_type_children_types(),
13629         gtk_type_set_chunk_alloc(),
13630         gtk_type_register_enum(),
13631         gtk_type_register_flags(),
13632         gtk_type_parent_class().
13633         replacements, where available are described in ../docs/Changes-1.4.txt.
13634         implemented compatibility functions for the remaining API.
13635
13636         * configure.in: depend on glib 1.3.1, use gobject module.
13637
13638 Thu May 11 12:39:50 2000  Owen Taylor  <otaylor@redhat.com>
13639
13640         * TODO.xml: Various updates to current status.
13641
13642 Wed May 10 20:25:04 2000  Owen Taylor  <otaylor@redhat.com>
13643
13644         * gtk.m4: Print out version when test succeeds.
13645
13646 Wed May 10 16:38:17 2000  Owen Taylor  <otaylor@redhat.com>
13647
13648         * gtk/Makefile.am docs/Changes-1.4.txt gtk/gtkcolorsel.[ch]
13649         gtk/gtkhsv.[ch]: Color selection dialog rewrite.
13650         
13651         (Original triangle color selector from Simon Budig
13652         <Simon.Budig@unix-ag.org>, Cleaned up and rewritten for GTK+ by
13653         from Jonathan, Havoc, and Federico. Merge into GTK+ done by David
13654         Santiago <mrcooger@cyberverse.com>)
13655
13656         * gtk/gtkcolorseldialog.[ch]: Split color selection dialog
13657         out into a separate widget.
13658
13659         * gtk/testgtk.c: Add some checkbuttons for toggling palette
13660         and opacity controls.
13661
13662 Wed May 10 16:08:09 2000  Owen Taylor  <otaylor@redhat.com>
13663
13664         * configure.in (GTK_LIBS_EXTRA): Remove references to gobject that 
13665         snuck in prematurely.
13666
13667 2000-05-07  Tor Lillqvist  <tml@iki.fi>
13668
13669         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Fix typo. I
13670         had deleted a ! operator by mistake, which caused
13671         GDK_SELECTION_CLEAR events never to be generated, which caused
13672         only the first copy to the clipboard from an gtkeditable to
13673         actually cause a copy to the Windows clipboard.
13674
13675 2000-05-06  Tor Lillqvist  <tml@iki.fi>
13676
13677         * gdk/win32/gdkdnd-win32.c: Enable shortcut resolution for gcc
13678         compilation, too. Current mingw gcc distributions include the
13679         necessary headers. Also the necessary IIDs are now in mingw
13680         headers/libraries, and own definitions unnecessary.
13681
13682         More hacking on OLE2 DND, still doesn't work though, and thus
13683         ifdeffed out.
13684
13685         * gdk/win32/gdkwindow-win32.c: Remove gdk_window_clear() from
13686         here, too.
13687
13688 Sat,  6 May 2000 13:31:34 +0200 Paolo Molaro <lupus@linuxcare.com>
13689
13690         * gdk/nanox/*: nano-X port work in progress.
13691         * gdk/simple.c: simple test for Gdk.
13692         * README.nanox: notes about the port: read this first!
13693         * gtk/gtk{dnd,plug,selection,window}.c: minimal changes to make gtk compile
13694         with nano-X.
13695
13696 Fri May  5 11:18:47 2000  Owen Taylor  <otaylor@redhat.com>
13697
13698         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c (gdk_window_clear): Move
13699         gdk_window_clear() into common code, implement in terms of
13700         gdk_window_clear_area(). (Fixes bug where gdk_window_clear() was
13701         not redirected to the backing rectangle.
13702
13703 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
13704
13705         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
13706         EXTRA_DIST. It does not work well when the file that
13707         everything depends on is not in the tarball.
13708
13709 Tue Apr 25 22:20:41 2000  Owen Taylor  <otaylor@redhat.com>
13710
13711         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix error
13712         with recursion where process_updates() is called from
13713         an expose handler. (GtkTextView is highly broken in
13714         doing this, but it should work, so it is a nice test
13715         case.)
13716
13717 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
13718
13719         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Gracefully
13720         handle the case where updates are queued during processing of
13721         updates.
13722
13723 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
13724
13725         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): We already assume
13726         window is on gdk_display - use that instead of segfaulting.
13727
13728 Thu May  4 02:04:46 2000  Tim Janik  <timj@gtk.org>
13729
13730         * configure.in (STRIP_DUMMY): some Make 3.79 $(strip ) versions are
13731         broken and require an empty arg, give it to them.
13732
13733 Fri Apr 28 19:34:32 2000  Tim Janik  <timj@gtk.org>
13734
13735         * gtk/gtklabel.h: indentation fixes.
13736
13737 2000-05-02  Tor Lillqvist  <tml@iki.fi>
13738
13739         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_arc): Don't try to
13740         draw too narrow or too low arcs, they seem to fail, at least with
13741         some display drivers.
13742
13743         * gdk/gdk.c (gdk_init_check): Use G_DIR_SEPARATOR.
13744
13745         Large changes to the Win32 backend, partially made necessary by
13746         the changes to the backend-independent internal
13747         structures. Attempts to implement similar backing store stuff as
13748         on X11. The current (CVS) version of the Win32 backend is *not* as
13749         stable as it was before the no-flicker branch was merged. A
13750         zipfile with that version is available from
13751         http://www.gimp.org/win32/. That should be use by "production"
13752         code until this CVS version is usable. (But note, the Win32
13753         backend has never been claimed to be "production quality".)
13754
13755         * README.win32: Add the above comment about versions.
13756
13757         * gdk/gdkwindow.c: Don't use backing store for now on Win32.
13758
13759         * gdk/gdk.def: Update.
13760
13761         * gdk/gdkfont.h: Declare temporary Win32-only functions. Will
13762         presumably be replaced by some more better mechanism as 1.4 gets
13763         closer to release shape.
13764
13765         * gdk/makefile.{cygwin,msc}: Update.
13766
13767         * gdk/win32/*.c: Correct inclusions of the backend-specific and
13768         internal headers. Change code according to changes in these. Use
13769         gdk_drawable_*, not gdk_window_* where necessary.
13770
13771         * gdk/win32/gdkdnd-win32.c: Use MISC selector for GDK_NOTE, not
13772         our old DND.
13773
13774         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_text): Don't try
13775         to interpret single characters as UTF-8. Thanks to Hans Breuer.
13776         Use correct function name in warning messages.
13777
13778         * gdk/win32/gdkevents-win32.c: Use correct parameter lists for the
13779         GSourceFuncs gdk_event_prepare and gdk_event_check.
13780         (gdk_event_get_graphics_expose): Do implement, use
13781         PeekMessage. Thanks to Hans Breuer.
13782         (event_mask_string): Debugging function to print an GdkEventMask.
13783         (gdk_pointer_grab): Use it.
13784
13785         * gdk/win32/gdkfont-win32.c: The Unicode subrange that the
13786         (old) book I used claimed was Hangul actually is CJK Unified
13787         Ideographs Extension A. Also, Hangul Syllables were missing.
13788         Improve logging.
13789
13790         * gdk/win32/gdkgc-win32.c: Largish changes.
13791
13792         * gdk/win32/gdkim-win32.c (gdk_set_locale): Use
13793         g_win32_getlocale() from GLib, and not setlocale() to get current
13794         locale name.
13795
13796         * gdk/win32/gdkprivate-win32.h
13797         * gdk/win32/gdkwin32.h: Move stuff from gdkprivate-win32.h to
13798         gdkwin32.h, similarily as in the X11 backend.
13799
13800         * gdk/win32/gdkwindow-win32.c (gdk_propagate_shapes): Bugfix,
13801         assignment was used instead of equals in if test. Thanks to Hans
13802         Breuer.
13803
13804         * gdk/win32/gdkgeometry-win32.c: New file, just a quick hack of
13805         the X11 version.
13806
13807         * gdk/win32/makefile.{cygwin,msc}
13808         * gtk/makefile.{cygwin,msc}: Updates. Better kludge to get the
13809         path to the Win32 headers that works also with the mingw compiler.
13810
13811         * gtk/gtkstyle.c: Include <string.h>.
13812
13813 2000-04-26  Havoc Pennington  <hp@redhat.com>
13814
13815         * gtk/gtklabel.c (gtk_label_get_text): Add this function,
13816         replacing the broken gtk_label_get ()
13817
13818 2000-04-15  Havoc Pennington  <hp@pobox.com>
13819
13820         * gdk/gdkdnd.h: clean up enum format, remove extra comma, 
13821         this keeps scanner scripts from getting confused.
13822
13823         * gdk/gdkdraw.c (gdk_drawable_get_data): This should return the
13824         data, rather than void
13825
13826 2000-04-15  Tor Lillqvist  <tml@iki.fi>
13827
13828         * gtk/gtkclist.c (gtk_clist_motion)
13829         * gtk/gtklist.c (gtk_list_motion_notify): If we get a motion event
13830         with is_hint FALSE, get x and y from the event. They used to be
13831         used uninitialised. The Win32 backend never sends motion events
13832         marked as hints. This for instance fixes the annoying file and
13833         font selector behaviour in the Win32 version.
13834
13835 2000-04-14  Tor Lillqvist  <tml@iki.fi>
13836
13837         * gtk/gtksignal.c: (Win32:) Export the gtk_private_signals and
13838         gtk_private_n_signals variables, they are used by some software,
13839         sigh.
13840
13841         * gtk/gtkrc.c (get_gtk_sysconf_directory): (Win32:) Fetch the
13842         installation directory from the Registry, where the installer
13843         should have put it.
13844
13845 Fri Apr  7 17:19:27 2000  Owen Taylor  <otaylor@redhat.com>
13846
13847         * gdk/x11/Makefile.am: Fix problem with installation directory for
13848         gdkx.h
13849
13850         * gtk/gtkmenuitem.c gtk/gtkmenushell.c: Patch from David Santiago
13851         <mrcooger@cyberverse.com> so that when selecting menus with the
13852         mouse, the first item will not be selected, but when selecting
13853         with an accelerator, or navigating left-right on a menubar with
13854         the menus popped up, the first item will be selected.
13855
13856 2000-04-05  Dan Damian  <dand@dnttm.ro>
13857
13858         * configure.in: Added "ro" to ALL_LINGUAS.
13859
13860 Wed Apr  5 00:08:36 2000  Owen Taylor  <otaylor@redhat.com>
13861
13862         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): Fix screwy
13863         indentation.
13864
13865         * Makefile.am (EXTRA_DIST): Fix typo.
13866
13867         * gdk[/x11]/Makefile.am (INCLUDES): Add $(top_builddir)/gdk
13868         to catch gdkconfig.h
13869
13870         * gtk/gtkitemfactory.c: Added FIXME.
13871
13872 2000-03-30  Jonathan Blandford  <jrb@redhat.com>
13873
13874         * gtk/gtkpaned.c (gtk_paned_get_position): oops.
13875         s/return_if_fail/return_val_if_fail/g and add a return value.
13876
13877 Mon Mar 27 20:56:14 2000  Owen Taylor  <otaylor@redhat.com>
13878
13879         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Fix up 
13880         merge slipup.
13881
13882         * gdk/gdkinput.h: Fix missing line from merge.
13883
13884 Mon Mar 27 20:39:49 2000  Owen Taylor  <otaylor@redhat.com>
13885
13886         * gdk/gdkcolor.c cursor.c gdkdraw.c gdkfont.c: Include gdkinternals.h
13887         instead of gdkprivate.h.
13888
13889 Sun Mar 12 15:19:24 2000  Owen Taylor  <otaylor@redhat.com>
13890
13891         * gtk/gtkinputdialog.h (struct _GtkInputDialogClass): Fix
13892         parent class to correctly be GtkDialogClass.
13893
13894 Thu Feb 24 23:58:21 2000  Owen Taylor  <otaylor@redhat.com>
13895
13896         * gdk/x11/gdkgeometry-x11.c: Don't worry about clipping of
13897         toplevel windows and their immediate children by their parents,
13898         since the size of toplevel windows is out of our immediate
13899         control and we don't get any real benefit from trying to track
13900         this size for clipping.
13901
13902         * gdk/gdkprivate.h (struct _GdkWindowPrivate) gdk/x11/gdkwindow-x11.c : Add a flag
13903         for input_only windows.
13904
13905         * gdk/gdkwindow.c gdk/x11/gdkgeometry-x11.c: Use the above flag
13906         to fix some hacks and make sure that we don't try to set the
13907         background of input only windows.
13908
13909 Thu Feb 24 18:11:46 2000  Owen Taylor  <otaylor@redhat.com>
13910
13911         * gdk/gdkinternals.h gdk/gdkprivate.h gdk/Makefile.am: Add a header file for
13912         the _really_ internal stuff, and leave gdkprivate.h for the fake private
13913         stuff that we've traditionally exposed.
13914
13915         * gdk/**.c: Use gdkinternals.h where appropriate.
13916
13917         * gdk/x11/gdkx.h gdk/x11/gdkprivate-x11.h gdk/x11/*.c: Make gdkx.h
13918         not include gdkprivate-x11.h, move all stuff of conceivable public
13919         interest into gdkx.h; keep all really private stuff in
13920         uninstalled header gdkprivate-x11.h.
13921
13922         * gdk/gdkdraw.c gdk/gdkwindow.c gdk/gdkinternals: Redirect all calls to
13923         image->image_put on windows through a new function _gdk_window_draw_image()
13924         to allow us to do backing store for images. (Sort of ugly)
13925
13926         * gdk/gdkgc.c gdk/gdkprivate.h: Cache the ts and clip origins for graphics
13927         contexts locally so that we can offset them properly when drawing 
13928         onto backing pixmaps.
13929
13930         * gdk/gdkinput.h: Reindented
13931
13932         * gdk/gdkprivate.h gdk/x11/gdkwindow-x11.c: Store the background
13933         pixmap or color for the window, so we can properly initialize
13934         our double-buffer pixmaps, and also so that we temporarily set
13935         a background of None while scrolling.
13936
13937         * gdk/gdkregion.h: Revise region boolean operators to have an
13938         interface that is actually convenient - switch from creating new
13939         regions on every op, to "methods" that modify existing regions
13940         (A = A OP B). 3 argument forms which allow dest == src, would also
13941         be possible, but the current interfaces seem to map nicely
13942         onto what needs to be done. (There is quite a lot of region
13943         code in GDK now.)
13944
13945         * gdk/gdkregion.h: Add constructor from rectangle and a copy
13946         operator.
13947
13948         * gdk/x11/{gdkregion-generic.[ch],gdkpolyreg-generic.c,
13949         gdkpoly-generic.h: Copy region code from Xlib, switch it over
13950         to 32 bit coordinates, modify it to be mostly GTK+ style
13951         and to have interfaces that match gdkregion.h.
13952
13953         * gdk/gdkwindow.c gdk/gdkprivate.h: Add facility for
13954         double-buffered drawing. gdk_window_begin_paint_{rect,region}()
13955         create a backing pixmap and redirect all drawing to
13956         that backing pixmap until a matching gdk_window_end_paint().
13957
13958         * gdk/gdkwindow.[ch] gdk/gdkinternals.h gdk/x11/gdkdrawable-x11.c:
13959         Create a special drawable class for GtkWindow's that 
13960         redirects the drawing to the backing pixmap as necessary
13961         and then calls the real operations in _gdk_windowing_window_class.
13962
13963         * gdk/gdkprivate.h gdk/gdkwindow.[ch] gdk/x11/gdkevents-x11.c:
13964         Store invalid region for each window. Generate expose events for invalid
13965         region in an idle. This replaces both the expose compression
13966         and the redrawing queuing in GTK+. It is both more efficient and
13967         simpler than either one individually and far more so then the
13968         combination.
13969
13970         * gdk/x11/gdkgeometry.c gdk/x11/gdkwindow.c gdk/x11/gdkprivate-x11.h:
13971         Emulate 32 bit coordinates for windows with 16 bit coordinates
13972         by offsetting drawing, guffaw scrolling techniques and
13973         mapping/unmapping child windows as necessary.
13974
13975         * gdk/gdkwindow.[ch] gdk/x11/gdkgeometry.c: Add anti-exposes,
13976         where, when invalid regions are processed, the region is stored,
13977         and if expose events come in that are detectably duplicate
13978         the processed exposes (by comparison of event serial numbers),
13979         the stored region is subtracted out of those exposes.
13980
13981         * gdk/x11/gdkgeometry.c: Temporarily unset backing pixmaps of
13982         regions newly exposed when scrolling or resizing windows.
13983         This, combined with forcing processesing of queued invalidated
13984         regions, gives nice flicker-free scrolling.
13985
13986         * gtk/gtklayout.c gtk/gtkviewport.c: Force processing of
13987         invalidated regions after every scroll.
13988
13989         * gtk/gtklayout.c: Vastly simplify using the new 32 bit coordinate
13990         emulation in GDK. Its, for all practical purposes just a
13991         GtkViewport/GtkFixed hybrid now.
13992
13993         * gdk/gdkdrawable-x11.c: Convert from GDK (32 bit) to X11
13994         (16-bit) structures as necessary instead of just casting.
13995
13996         * gdk/x11/gdkgc-x11.c gdk/x11/gdkx.h: Replace XSetRegion with code
13997         in terms of the structures from gdkregion-generic.c, using appropriate
13998         offsets from GDK to X11 coordinates. Cache clip mask and
13999         origin and ts origin locally and only flush to the server
14000         when drawing, to avoid constantly setting and resetting these
14001         values when offsetting GC's for scrolling and backing pixmaps.
14002
14003         * gdk/x11/gdkinput-x11.c: Fix leak of axes structures.
14004
14005         * gtk/gtkcontainer.c: Call process_all_updates at end
14006         of resizing to reduce flicker. (Avoids having redraw
14007         lag arbitrarily behind resize under some circumstances)
14008
14009         * gtk/gtkentry.c: Remove old backing store code, and simply take
14010         advantage of the new backing store capabilities of GDK.
14011
14012         * gtk/gtkmain.c: Simple implementation of widget backing
14013         store - simply push a paint while handling each expose.
14014         (Should really be configurable widget for widget.)
14015         
14016         * gtk/gtkwidget.c: Remove all the old complicated redraw
14017         code, and simply invalidate the GDK windows from
14018         gdk_window_queue_clear(), etc. (Sigh, so much carefully
14019         debugged complexity ... gone to the winds.)
14020
14021         Remove all the code for suppressing expose events while
14022         resizes are pending; this isn't needed since the invalid
14023         areas won't be processed until after the resizes are
14024         processed, since they are in a lower priority idle.
14025
14026 Thu Feb 24 15:37:41 2000  Owen Taylor  <otaylor@redhat.com>
14027
14028         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Set width
14029         and height of dest rectangle for non-intersecting rectangles.
14030
14031 Sun Feb 20 16:47:31 2000  Owen Taylor  <otaylor@redhat.com>
14032
14033         * gtk/gtkwidget.h: Make GtkAllocation just a typedef
14034         for GdkRectangle.
14035
14036 Sun Feb 20 11:27:00 2000  Owen Taylor  <otaylor@redhat.com>
14037
14038         * gdk/gdk{events,image,private,types,window}.h
14039          gdk/x11/gdkinputprivate.h: Change all coordinates
14040          from int16 to int. Also, Change width and height from
14041          unsigned to signed to avoid all the stupid C 
14042          signedness bugs.
14043
14044 Sat Feb 19 12:01:53 2000  Owen Taylor  <otaylor@redhat.com>
14045
14046         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable):
14047         Use gdk_drawable_get_depth instead of gdk_drawable_get_visual.
14048         Add some more detailed checking.
14049
14050         * gdk/gdkdraw.c gdk/gdkdrawable.h (gdk_drawable_get_depth):
14051         New function to retrieve the depth of a drawable.
14052
14053         * gdk/gdkprivate.h (struct _GdkDrawablePrivate): Add a depth
14054         field, reorder fields to save memory. 
14055
14056 Mon Dec 13 14:06:03 1999  Owen Taylor  <otaylor@redhat.com>
14057
14058         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): Draw a small portion
14059         of the background image instead of scaling the background down to
14060         a line.
14061
14062         * gtk/gtk[hv]scrollbar.c (gtk_hscrollbar_size_allocate): Removed mysterious
14063         which temporarily set slider to wrong size.
14064
14065         * gtk/gtkaspectframe.c gtkbin.c: Remove unecessary calls to
14066         queue_clear().
14067
14068 Wed Nov 17 18:36:05 1999  Owen Taylor  <otaylor@redhat.com>
14069
14070 2000-03-23  Jonathan Blandford  <jrb@redhat.com>
14071
14072         * gtk/gtkpaned.c (gtk_paned_get_position): add getter.
14073
14074 2000-03-17  Tor Lillqvist  <tml@iki.fi>
14075
14076         * gdk/win32/gdkevents-win32.c: Remove the #ifndef
14077         USE_DISPATCHMESSAGE sections, we do want to use DispatchMessage.
14078
14079         * gdk/win32/gdkfont-win32.c
14080         * gdk/win32/gdkproperty-win32.c
14081         * gdk/win32/gdkselection-win32.c
14082         * gdk/win32/gdkwindow-win32.c: Add const to some arguments that are
14083         now declared such.
14084
14085 Wed Mar 15 02:59:38 PST 2000 Manish Singh <yosh@gimp.org>
14086
14087         * gtk/gtkvpaned.c: removed stray gutter_size reference, a 1.2 relic
14088
14089 Mon Mar 13 18:37:55 2000  Owen Taylor  <otaylor@redhat.com>
14090
14091         * gdk/gdkdnd.c: Fix a bunch of cases where XGetWindowProperty()
14092         is called without trapping X errors.
14093
14094 Fri Feb 25 10:48:53 2000  Owen Taylor  <otaylor@redhat.com>
14095
14096         * gtk/gtkrc.*: Fix problem where stray '"' characters found their
14097         way into the fontset lists.
14098
14099 Tue Feb 22 08:52:52 2000  Tim Janik  <timj@gtk.org>
14100
14101         * gtk/gtkthemes.h: add extern "C" scope.
14102
14103 Mon Feb 21 20:16:42 2000  Lars Hamann  <lars@gtk.org>
14104
14105         * gtk/gtkclist.c: applied  patch from Guy Harris <guy@netapp.com>
14106         to make appends to the list constant. (gtk-guy-990901-0.patch)
14107
14108 Mon Feb 14 22:50:10 2000  Tim Janik  <timj@gtk.org>
14109
14110         * gtk/gtktypeutils.c (gtk_type_init): use g_str_hash() and g_str_equal()
14111         for the typename hash table.
14112
14113 Mon Feb 14 15:01:23 2000  Owen Taylor  <otaylor@redhat.com>
14114
14115         * gtk/gtkpaned.c (gtk_paned_compute_position): Add some sanity checks
14116         to make sure we never divide by zero. 
14117         (Problem pointed out by Michal Jaegermann <michal@ellpspace.math.ualberta.ca>)
14118
14119 Mon Feb 14 12:29:38 2000  Owen Taylor  <otaylor@redhat.com>
14120
14121         * gtk/gtkfontsel.c: Apply patch from
14122         SHIRASAKI Yasuhiro <yasuhiro@awa.tohoku.ac.jp> to make font selector work a little
14123         better with 2-byte fonts. (Load a fontset instead of a font for two byte fonts.)
14124
14125         Also, some cleanups in atom handling.
14126
14127 Sun Feb 13 08:02:21 2000  Tim Janik  <timj@gtk.org>
14128
14129         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
14130         not GtkWidget.
14131
14132 Fri Feb 11 02:19:32 2000  Tim Janik  <timj@gtk.org>
14133
14134         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): 
14135         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): 
14136         * gtk/gtkpaned.c (gtk_paned_compute_position): had to squeeze some
14137         more guint wrap-around bugs before going to bed.
14138
14139 Thu Feb 10 16:16:35 2000  Tim Janik  <timj@gtk.org>
14140
14141         * gtk/gtkspinbutton.c (gtk_spin_button_size_allocate): guard against
14142         guint wrap arounds in allocation.width.
14143
14144         * gtk/gtktable.c (gtk_table_size_allocate_pass1): repeat shrinking
14145         process untill we fit the allocation given.
14146
14147 Tue Feb  8 09:38:29 2000  Tim Janik  <timj@gtk.org>
14148
14149         * gtk/gtkwidget.c:
14150         (gtk_widget_unrealize): guard widget access with ref/unref
14151         around signal emission.
14152         (gtk_widget_hide): same here, but also check its destroyed
14153         state before queueing a resize.
14154
14155 Tue Feb  8 03:05:55 2000  Tim Janik  <timj@gtk.org>
14156
14157         * gtk/gtkstyle.c (gtk_style_new): use gtk_default_prelight_bg instead
14158         of gtk_default_insensitive_bg as insensitive base color.
14159
14160         * gtk/gtktext.c (gtk_text_style_set): set the background color according
14161         to the widget's state.
14162         (gtk_text_realize): same here.
14163         (gtk_text_state_changed): same here.
14164         (draw_bg_rect): compare background color against base[] from
14165         GTK_WIDGET_STATE (text) not GTK_STATE_NORMAL.
14166
14167 Mon Feb  7 04:01:55 2000  Tim Janik  <timj@gtk.org>
14168
14169         * gtk/gtkmain.c (gtk_main_do_event): ignore delete events when
14170         grabs are active, unless a delete event is send to the toplevel
14171         of the currently grab holding widget.
14172
14173 Sun Feb  6 10:13:15 2000  Owen Taylor  <otaylor@redhat.com>
14174
14175         * gtk/gtkctree.c (gtk_ctree_drag_data_received): Remove
14176         debugging g_print's.
14177
14178 Fri Feb  4 15:54:54 2000  Owen Taylor  <otaylor@redhat.com>
14179
14180         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_request): Don't
14181         ever make the scrolled-window requisition ever depend on the 
14182         visibility state of the scrollbars for the AUTOMATIC policy. 
14183         This breaks the GTK+ requisition model, and causes loops.
14184
14185 Fri Feb  4 15:09:12 2000  Owen Taylor  <otaylor@redhat.com>
14186
14187         * gtk/gtkstyle.c (gtk_style_new): Set the charset explicitely for
14188         the default font to avoid problems with XFree86-4.0 where the
14189         default charset is iso10646-1, not iso8859-1.
14190
14191 Thu Feb  3 14:58:48 PST 2000 Manish Singh <yosh@gimp.org>
14192
14193         * acinclude.m4
14194         * config.guess
14195         * config.sub
14196         * ltconfig
14197         * ltmain.sh: upgrade to libtool 1.3.4 (bugfix only release)
14198
14199         * gtk/Makefile.am: minor cosmetic consistency tweak
14200
14201 Thu Feb  3 14:46:01 2000  Owen Taylor  <otaylor@redhat.com>
14202
14203         * gtk/gtkmenushell.c (gtk_menu_shell_button_release): Set
14204         the activate_time to 0, so that we handle a quick
14205         press/release press/release properly and don't suppress
14206         the second release. (Red Hat bug #7545)
14207
14208 Wed Feb  2 22:25:17 2000  Tim Janik  <timj@gtk.org>
14209
14210         * gtk/gtkctree.c (row_delete):
14211         (gtk_ctree_node_set_row_data_full): fixed very evil reentrancy
14212         bugs with destruction notifier, *always* update internal
14213         structures *before* calling user code.
14214
14215 Sun Jan 30 20:10:52 2000  Lars Hamann  <lars@gtk.org>
14216
14217         A few more fixes for bug #5487, #2051, #2677.
14218         * gtk/gtkclist.c : 
14219         (gtk_clist_button_press):  Reset clist->anchor to -1 if event->type is
14220         not GDK_BUTTON_PRESS.
14221         (resync_selection): resync only if selection_mode is
14222         GTK_SELECTION_EXTENDED
14223         * gtk/gtkctree.c (resync_selection): same here
14224
14225 Sun Jan 30 12:29:20 2000  Owen Taylor  <otaylor@redhat.com>
14226
14227         * gdk/gdk.h gtk/gtkmenu.h: Removed duplicate prototypes for
14228         gdk_drag_get_selection() and gtk_menu_detach().
14229
14230         [ From Jeroen Ruigrok/Asmodai ]
14231
14232 Sat Jan 29 10:11:56 2000  Owen Taylor  <otaylor@redhat.com>
14233
14234         * gtk/gtknotebook.c (gtk_notebook_size_request): 
14235         page->tab_label can be NULL.
14236
14237 2000-01-25  Havoc Pennington  <hp@pobox.com>
14238         
14239         * gdk/gdkwindow.c (gdk_window_set_back_pixmap): parent_relative
14240         arg is boolean
14241
14242         * gdk/gdkselection.c (gdk_selection_owner_set): return boolean
14243
14244         * gdk/gdkrectangle.c (gdk_rectangle_intersect): return boolean
14245
14246         * gdk/gdkproperty.c (gdk_property_get): return boolean
14247
14248         * gdk/gdkinput.c (gdk_input_set_mode): return boolean
14249
14250         * gdk/gdkim.c (gdk_im_ready): return boolean
14251
14252         * gdk/gdkgc.c (gdk_gc_set_exposures): gboolean arg
14253
14254         * gdk/gdkfont.c (gdk_font_equal): return gboolean (mild
14255         glib clash, should fix glib)
14256
14257         * gdk/gdkevents.c (gdk_set_show_events): take gboolean arg
14258         (gdk_get_show_events): return gboolean, and canonicalize 
14259         to TRUE/FALSE
14260
14261         * gdk/gdkcolor.c (gdk_colormap_new): gboolean flag whether the
14262         colormap is private
14263         (gdk_colors_alloc): gboolean whether to be contiguous
14264         (gdk_color_equal): return gboolean since we are a predicate
14265         and not a qsort() (this looks semi-wrong due to glib breakage,
14266         IMO glib should be fixed)
14267         
14268         * gdk/gdk.c (gdk_set_use_xshm): take gboolean arg
14269         (gdk_get_use_xshm): return gboolean
14270         (gdk_pointer_is_grabbed): return gboolean
14271
14272         * gdk/gdk.h: Change prototypes to match all the above changes,
14273         and re-run egtk-format-protos as required.
14274
14275 Fri Jan 28 12:28:17 2000  Owen Taylor  <otaylor@redhat.com>
14276
14277         * gtk/gtkctree.c (resync_selection): 
14278         * gtk/gtkclist.c (resync_selection):
14279
14280         Return immediately if clist->drag_pos < 0. This is a workaround
14281         for the corrupt state that the clist gets into when a
14282         GDK_2BUTTON_PRESS occurs. See note in gtk_clist_button_press().
14283
14284         Bug #5487, #2051, #2677; fix suggested by David Helder and T. Alexander Popiel.
14285         
14286         * gtk/gtknotebook.c (gtk_notebook_size_request): Fix uninitialized
14287         variable from recent commit.
14288
14289 Thu Jan 27 15:22:09 2000  Owen Taylor  <otaylor@redhat.com>
14290
14291         * gtk/gtkdnd.c (gtk_drag_begin): Fix stupid typo in last commit.
14292
14293 Thu Jan 27 18:00:55 2000  Tim Janik  <timj@gtk.org>
14294
14295         * gtk/Makefile.am: prefix all autogenerated source that get build in
14296         $(srcdir) with $(srcdir)/, so make doesn't assume they got generted
14297         in builddir. since we subsequently cd into srcdir for autogeneration,
14298         the paths have to be stripped from the target file names, thusly we
14299         use $(@F) as target names now.
14300         put a comment about configure.in's --disable-rebuilds option,
14301         which can be used for non-writable source directories, for development
14302         setups though, srcdir has to be *writable*.
14303
14304 hu Jan 27 00:15:03 2000  Owen Taylor  <otaylor@redhat.com>
14305
14306         * gtk/gtkdnd.c (gtk_drag_begin gtk_drag_get_event_actions):
14307           Finish the job of allowing event to be NULL.
14308           (Fixes bug #4283, reported by Chris Blizzard)
14309
14310         * gtk/gtkentry.c (entry_adjust_scroll): When calculating
14311           things so that the cursor appears on screen, properly
14312           take into account INNER_BORDER.
14313           (Fixes bug #4754, reported by Antonio Campos)
14314
14315 Wed Jan 26 23:12:28 2000  Owen Taylor  <otaylor@redhat.com>
14316
14317         * gtk/gtknotebook.c (gtk_notebook_map): Don't
14318           show the tab_label unless it itself is visible.
14319
14320           gtk/gtknotebook.c (gtk_notebook_size_request):
14321           Do a better job of making sure that the visibility
14322           of the tab label corresponds to whether it should
14323           be mapped or not.
14324
14325 Wed Jan 26 21:17:03 2000  Owen Taylor  <otaylor@redhat.com>
14326
14327         * gtk/gtkoptionmenu.c (gtk_option_menu_position):
14328           Use the requisition, not the allocation, since the
14329           allocation has not necessarily been computed yet.
14330           (Pointed out by Eugene Osintsev)
14331
14332 Wed Jan 26 19:44:25 2000  Owen Taylor  <otaylor@redhat.com>
14333
14334         * gtk/gtkstyle.c (gtk_style_new): Dont' set
14335           style/base[GTK_STATE_INSENSITIVE] both to
14336           gtk_default_insensitive_bg!
14337           (Bug #2187, reported by Jonathan Blandford)
14338
14339         * gtk/gtkaccelgroup.c (gtk_accelerator_valid):
14340           Add Alt_L, Alt_R to list of invalid accelerators.
14341           (Bug #3736, reported by Vlad Harchev)
14342
14343 Wed Jan 26 19:01:56 2000  Owen Taylor  <otaylor@redhat.com>
14344
14345         * gtk/gtkfilesel.c (open_ref_dir): Fix several
14346         bugs which occured after an attempt to open 
14347         invalid home directory left cmpl_state->reference_dir == NULL.
14348
14349          - completion on files in home directory didn't work
14350          - completion on an empty string caused  segfault
14351
14352          (Bug #3678, reported by Steve Ratcliffe)
14353
14354         * gtk/gtkscale.c (gtk_scale_get_value_width): Fix
14355         cut and paste error that was causing scales to
14356         be incorrectly positioned.
14357         (Bug #2956,
14358          patch from Steve Ratcliffe <steve@parabola.demon.co.uk>)
14359
14360 2000-01-27  Shirasaki Yasuhiro  <yasuhiro@gnome.gr.jp>
14361
14362         * acinclude.m4 (AM_GTK_WITH_NLS): Add -lintl to libs
14363         when checking for dcgettext, if we've found we needed
14364         it for dgettext.
14365 +
14366 Wed Jan 26 18:06:07 2000  Owen Taylor  <otaylor@redhat.com>
14367
14368         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
14369         queue_clear on NO_WINDOW widgets during a reparent,
14370         since at that point the window and widget heirarchies
14371         are out of sync. This stops crashing in some cases
14372         (the scrolled window reparent test, for instance), and
14373         _probably_ won't cause drawing errors.
14374
14375         * gtk/testgtk.c: Make the reparenting-a-scrolled-window
14376         test do what it was supposed to do and be robust against
14377         window closings, etc. (Bug #2443)
14378
14379 Wed Jan 26 16:56:54 2000  Owen Taylor  <otaylor@redhat.com>
14380
14381         * gtk/gtkentry.c: Fix return values on mouse events.
14382         (Bug #2686, Sky <seb_sky@yahoo.com>)
14383
14384         * gtk/genmarshal.pl: Fix up handling of FOREIGN.
14385         (pointed out by George Lebl)
14386
14387         * gdk/gdkcolor.c (gdk_color_copy): Made const-safe.
14388         (From Ettore Perazzoli  <ettore@helixcode.com>)
14389  
14390 Mon Jan 24 10:44:48 2000  Owen Taylor  <otaylor@redhat.com>
14391
14392         * gtk/gtkcalendar.c (gtk_calendar_main_button): Handle
14393         clicks between rows or outside calender area correctly.
14394         (Patch from Damon Chaplin)
14395
14396         * gtk/gtkclist.c (gtk_clist_set_row_data_full): 
14397         * gtk/gtkctree.c (gtk_ctree_node_set_row_data_full): 
14398           Call destroy function when overwriting existing data. 
14399           (Pointed out by Damon Chaplin)
14400
14401 Tue Jan 25 09:55:41 2000  Owen Taylor  <otaylor@redhat.com>
14402
14403         * gdk/gdk.c: Remove useless #include of <X11/Xmu/WinUtil.h>,
14404           which was causing problems on various systems with Xmu.
14405           This hasn't been needed for a very long time.
14406           (Fixes #1185 3167)
14407
14408 Sun Jan 23 22:27:36 2000  Owen Taylor  <otaylor@redhat.com>
14409
14410         * gdk/gdki18n.h: Include <ctype.h> when defining
14411           gdk_isw* in terms of is* as a fallback.
14412           (Bug #4106 - Dan Winship <danw@MIT.EDU>)
14413
14414 Sun Jan 23 22:12:36 2000  Owen Taylor  <otaylor@redhat.com>
14415
14416         * gtk/gtkviewport.c (gtk_viewport_size_allocate): Don't
14417           realize the widget when it is size allocated!
14418           (old, old bug)
14419
14420         * gtk/gtkviewport.c (gtk_viewport_adjustment_value_changed):
14421           Removed unused call to gdk_window_get_size() that
14422           showed up when the above was fixed.
14423
14424 Sat Jan 22 15:44:30 2000  Owen Taylor  <otaylor@redhat.com>
14425
14426         * gtk/gtkwidget.c (gtk_widget_reparent): Correctly
14427           fix up widget->window when the widget is a
14428           NO_WINDOW container widget.
14429
14430 Sat Jan 22 12:40:48 2000  Owen Taylor  <otaylor@redhat.com>
14431
14432         * gdk/gdkpixmap.c (gdk_pixmap_seek_string): Rewrite
14433           to account for the fact that feof() does _not_ 
14434           return TRUE on errors, and thus avoid infinite loops
14435           when trying to use gdk_pixmap_create_from_xpm()
14436           on unreadable values.
14437
14438 Fri Jan 21 18:32:43 2000  Owen Taylor  <otaylor@redhat.com>
14439
14440         * gtk/gtkaspectframe.h (struct _GtkAspectFrame): s/gint/gboolean/.
14441
14442 Fri Jan 21 16:24:08 2000  Owen Taylor  <otaylor@redhat.com>
14443
14444         * gdk/gdkgc.c (gdk_gc_set_dashes): Change from
14445           gdk_gc_set_dashes to take gint8 instead of gchar to
14446           make it clearer that it is _not_ a NULL terminated string.
14447
14448         * gdk/gdk.h gdk/gdkfont.c gdk/gdkgc.c gdk/gdkselection.c
14449           gdk/gdkwindow.c gtk/gtkprogress.[ch] gtk/gtkthemes.[ch]
14450           gtk/gtktreeitem.[ch] gtk/gtkwidget.[ch]: Constify string
14451           arguments.
14452
14453 Thu Dec 30 04:51:05 1999  Tim Janik  <timj@gtk.org>
14454
14455         * gtk/gtkvscale.c (gtk_vscale_pos_background): 
14456         * gtk/gtkhscale.c (gtk_hscale_pos_background): when calculating the
14457         background size relative to our allocation, guard against small
14458         allocations, we may have not yet been size allocated.
14459
14460 Thu Dec  2 10:59:14 1999  Owen Taylor  <otaylor@redhat.com>
14461
14462         * gdk/gdkdnd.c (xdnd_check_dest): Allow version >= 3,
14463         not just version == 3. We implement all 3 + most of 4 - 
14464         (we don't support matching text/plain;charset=iso-8859-1
14465         to a dest that expects text/plain). We'll still advertise
14466         3 to be safe, but any client implementing version >= 3
14467         must interoperate with 3.
14468         
14469 Tue Mar 14 11:53:31 2000  Owen Taylor  <otaylor@redhat.com>
14470
14471         * gtk/gtktooltips.[ch] (struct _GtkTooltips): Remove foreground,
14472         background and gc members, add a warning in gtk_tooltips_set_color()
14473         indicating that this function is deprecated.
14474
14475 Thu Mar  9 22:10:56 GMT 2000  Tony Gale <gale@gtk.org>
14476
14477         * docs/gtkfaq.sgml: FAQ Update:
14478           - Minor cleanups (Emmanuel, me)
14479           - New questions:
14480                 I need to add a new signal to a GTK+ widget. Any idea? (timj)
14481                 How can I retrieve the text from a GtkMenuItem? (timj)
14482                 How do I validate/limit/filter the input to a GtkEntry? (me)
14483                 Memory does not seem to be released when I free the list
14484                         nodes I've allocated (timj)
14485
14486 2000-03-07  Tor Lillqvist  <tml@iki.fi>
14487
14488         * gdk/win32/gdkmain-win32.c: Internal GDK error reporting changes:
14489         (gdk_win32_gdi_failed) New function for reporting errors from GDI,
14490         for which it is no use to call GetLastError onWin9x.
14491         (gdk_other_api_failed) New function, for general error
14492         reporting without calling GetLastError.
14493         (gdk_win32_api_failed) OTOH, this function always calls
14494         GetLastError. (gdk_win32_last_error_string) Remove this function,
14495         GLib has the equivalent now.
14496
14497         * gdk/win32/gdkprivate-win32.h: Declare the above, and macros to
14498         call them with function name, file name and line number in the
14499         arguments.
14500
14501         * gdk/win32/*.c: Use the new macros for reporting errors from GDI
14502         functions.
14503         
14504         * gtk/gtk.def: Add some missing entry points.
14505
14506         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
14507         gtk_paned_set_gutter_size, which don't exist any longer, as void.
14508         
14509         Fixes by Hans Breuer:
14510
14511         * gdk/makefile.msc: Update for debugging.
14512
14513         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_dashes): Fake
14514         implementation, just use the PS_DASH, PS_DOT, PS_DASHDOT or
14515         PS_DASHDOTDOT or PS_DASH styles depending on the number of entries
14516         in the dash_list.
14517
14518         * gdk/win32/gdkwin32.h (GDK_FONT_XFONT): New macro, similar as in
14519         the x11 backend.
14520
14521         * gdk/win32/gdkprivate-win32.h (IS_WIN_NT): New macro.
14522
14523         * gtk/testgtk.c: Include config.h, guard inclusion of unistd.h.
14524
14525 2000-03-04  Tor Lillqvist  <tml@iki.fi>
14526
14527         * gdk/win32/gdkprivate-win32.h (struct _GdkWindowWin32Data): Store
14528         just pixel value of background colour.
14529
14530         * gdk/win32/gdkgc-win32.c (gdk_colormap_color): New function
14531         containing code snippet previously duplicated in a couple of
14532         places.
14533         
14534         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_points): Use
14535         gdk_colormap_color.
14536
14537         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Generate
14538         GDK_SCROLL events for WM_MOUSEWHEEL messages. Don't generate
14539         events for autorepeated Shift, Control and Alt keys. Use
14540         gdk_colormap_color.
14541
14542         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): If the
14543         pointer is inside the window the cursor of which we are setting,
14544         call SetCursor immediately.
14545
14546         * gdk/win32/makefile.cygwin
14547         * gtk/makefile.cygwin: If we don't have the build number stamp
14548         file, use zero.
14549
14550         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
14551         gtk_paned_set_gutter_size as empty.
14552
14553         * gtk/gtk.def: Remove gtk_paned_set_gutter_size.
14554         
14555 Tue Feb 29 13:10:00 GMT 2000  Tony Gale <gale@gtk.org>
14556
14557         * gdk/gdkwindow.h gdk/x11/gxid.c gtk/gtkclist.c gtk/gtkclist.h
14558           gtk/gtkctree.c gtk/gtkmenu.h gtk/gtkwidget.c gtk/testgtk.c
14559           docs/styles.txt docs/refcounting.txt docs/gtkfaq.sgml
14560           docs/gtk_tut.sgml docs/gtk.texi TODO:
14561
14562           Spelling/grammar fixes from Martin Buchholz <martin@xemacs.org>
14563
14564 Sat Feb 26 11:46:25 GMT 2000  Tony Gale <gale@gtk.org>
14565
14566         * gtk/gtkcalendar.c: Implement num_marked_dates,
14567           and don't emit mutiple day_selected signals on
14568           month_prev.
14569
14570 2000-02-25  Jonathan Blandford  <jrb@redhat.com>
14571
14572         * docs/make-todo (lineno): let title and logo be configurable so
14573         that GNOME can use this script too.
14574
14575         * TODO.xml: added logourl and a title
14576
14577 Fri Feb 25 11:12:00 2000  Owen Taylor  <otaylor@redhat.com>
14578
14579         * TODO.xml: Added some UI items, and an explanatory
14580         comment at the top of the file.
14581
14582 Thu Feb 24 09:07:28 2000  Tim Janik  <timj@gtk.org>
14583
14584         * TODO.xml: some updates, added abunch of new entries.
14585         a note for those fiddeling with this file, when done
14586         with it, invoke:
14587         $ ./docs/make-todo TODO.xml >/dev/null
14588         and correct output errors before comitting changes.
14589
14590 Wed Feb 23 22:59:50 2000  Owen Taylor  <otaylor@redhat.com>
14591
14592         * TODO.xml: Added XML-structured TODO file.
14593         * docs/make-todo: python script to turn TODO.xml into
14594           pretty XML output. 
14595
14596 2000-02-23  Jonathan Blandford  <jrb@redhat.com>
14597
14598         * gtk/gtkstyle.c (gtk_default_draw_handle): add a 'paned' mode to
14599         the function to let it draw the seven dots, instead of the old,
14600         much maligned, method.
14601         (draw_dot): New function to draw a dot.
14602
14603         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): changed allocation
14604         to draw the handle inside the border width as opposed to outside.
14605         Use paint function instead of gdk_draw_point.
14606
14607         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): changed allocation
14608         to draw the handle inside the border width as opposed to outside.
14609         Use paint function instead of gdk_draw_point.
14610
14611         * gtk/gtkfilesel.c (gtk_file_selection_update_history_menu):
14612         Change indenting to be more GTK like.
14613
14614 Wed Feb 23 10:54:14 GMT 2000  Tony Gale <gale@gtk.org>
14615
14616         * docs/gtk_tut.sgml: New section on GtkCalendar
14617         * examples/calendar: Update example code
14618
14619 Tue Feb 22 13:54:12 GMT 2000  Tony Gale <gale@gtk.org>
14620
14621         * docs/gtkfaq.sgml: FAQ Update
14622
14623 2000-02-19  Anders Carlsson  <andersca@gnu.org>
14624
14625         * gtk/gtkrange.c (gtk_range_scroll_event): Return TRUE
14626         to prevent the scroll event to be propagated upwards.
14627
14628 Fri Feb 18 14:37:29 2000  Owen Taylor  <otaylor@redhat.com>
14629
14630         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Remove
14631         OwnerGrabButtonMask from button entries for
14632         GDK_BUTTON_PRESS / GDK_BUTTON_RELEASE.
14633
14634         * gtk/gtklayout.c (gtk_layout_realize): Always add GDK_SCROLL
14635         to the event mask (which will result in button/press release
14636         being added to the event mask on Unix) so scrolling works
14637         for layouts in scroll windows.
14638
14639         * gdk/gdkevents.h (enum): Fix up GDK_ALL_EVENTS_MASK.
14640
14641         Patch from Anders Carlsson  <andersca@gnu.org> to add
14642         a scroll event.
14643
14644         * gtk/testgtk.c (scroll_test_scroll): Added an example of mouse wheel
14645         scrolling to the "Test Scrolling" part of testgtk.
14646  
14647         * gtk/gtkwidget.h (struct _GtkWidgetClass): Added scroll_event signal.
14648  
14649         * gtk/gtkwidget.c: Added "scroll_event" GTK+ signal and matched
14650         it against GDK_SCROLL.
14651  
14652         * gtk/gtkrange.c (gtk_range_scroll_event): Updated to use the new
14653         way of mouse wheel scrolling.
14654  
14655         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_scroll_event): Likewise.
14656  
14657         * gtk/gtkspinbutton.c (gtk_spin_button_scroll): Likewise.
14658  
14659         * gtk/gtkmain.c: Removed previous mouse wheel hack.
14660  
14661         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Added entry in
14662         gdk_event_mask_table.
14663  
14664         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Added 
14665         GdkEventScroll handler.
14666  
14667         * gdk/gdkevents.h: Added GdkEventScroll structure.
14668  
14669 Thu Feb 17 17:10:12 2000  Owen Taylor  <otaylor@redhat.com>
14670
14671         * gtk/gt{h,k,}vpaned.[ch]: Add patch from Jonathan Blandford
14672         and Anders Carlsson to change the Paned widgets so that they
14673         can be dragged from anywhere along the length. Also change
14674         the way that this is drawn to make this apparent.
14675
14676         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): Apply patch
14677         from George Lebl to check that option_menu->menu is present
14678         before getting history.
14679
14680 2000-02-14  Tor Lillqvist  <tml@iki.fi>
14681
14682         * gdk/gdkdraw.c (gdk_draw_segments): Move the test for no segments
14683         before the assertion for non-NULL segment list.
14684
14685         * gdk/win32/gdkgc-win32.c: (gdk_win32_gc_values_to_win32values):
14686         Seems that pattern brushes *must* be 8x8 pixels! At least on my
14687         machine, but it might be display driver dependent. Sigh, so make
14688         sure the stipple is that size. Does Windows suck or what?
14689
14690         * gdk/win32/gdkdrawable-win32.c: Improve error handling in a few
14691         places.
14692
14693 2000-02-13  Havoc Pennington  <hp@pobox.com>
14694
14695         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): init
14696         refcount to 1
14697         (gdk_cursor_new): init refcount to 1
14698
14699         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new): init refcount to 1
14700
14701 2000-02-13  Tor Lillqvist  <tml@iki.fi>
14702
14703         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Add an extra parameter
14704         so that we don't have to do unnecessary settings to the HDC.
14705
14706         * gdk/win32/gdkdrawable-win32.c
14707         * gdk/win32/gdkimage-win32.c: Corresponding changes to the calls of
14708         gdk_gc_predraw.
14709
14710         * gdk/win32/gdkdrawable-win32.c: Special-casing for GdkGCs where
14711         the fill style is GDK_OPAQUE_STIPPLED. In those cases we construct
14712         GDI paths, call WidenPath to get the outline of the stroken path,
14713         and then fill the outline (with the brush that was built from the
14714         stipple).
14715
14716         * gdk/win32/gdkgc-win32.c: Factor out common code from
14717         _gdk_win32_gc_new and gdk_win32_gc_set_values into
14718         gdk_win32_gc_values_to_win32values. Use correct colour for
14719         SetBkColor() (Until now the code actually used a random colour in
14720         the call to SetBkColor()... but that didn't show up as not many
14721         GDI APIs use the background colour. Pattern (opaque stippled)
14722         brushes do.)
14723
14724         * gdk/win32/gdkmain-win32.c (gdk_win32_last_error_string,
14725         gdk_win32_api_failed): New functions for error logging.
14726
14727         * gdk/win32/gdkprivate-win32.h: Declare them, and define a macro
14728         WIN32_API_FAILED to call them, passing function or file name and
14729         line number.
14730
14731         * gdk/win32/*.c: Use the WIN32_API_FAILED macro.
14732
14733         * gdk/win32/gdkprivate-win32.h: Store just the pixel values from
14734         GdkColor for foreground and background in GdkGCWin32Data.
14735
14736         * gdk/makefile.cygwin: Link in the resource object separately.
14737
14738         * gdk/win32/rc/gdk.rc
14739         * gtk/gtk.rc (New file)
14740         * gdk/win32/makefile.cygwin
14741         * gtk/makefile.cygwin: Update build number in DLLs automatically,
14742         as in GLib.
14743
14744 Sun Feb 13 08:54:45 2000  Tim Janik  <timj@gtk.org>
14745
14746         * gdk/gdkcursor.h (struct _GdkCursor): s/refcount/ref_count/.
14747         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): 
14748         * gdk/x11/gdkcursor-x11.c (_gdk_cursor_destroy): 
14749         * gdk/gdkcursor.c (gdk_cursor_ref): insert assertments for the
14750         parameters given and cursor->ref_count. coding style fixups.
14751
14752         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
14753         not GtkWidget.
14754         
14755         * gtk/*.h: applied patch from Mathieu Lacage <lacage@email.enst.fr> to
14756         fix up widget macros and add _GET_CLASS() variant.
14757         
14758         * gtk/*.c: some GtkType fixups.
14759
14760 2000-02-09  Tor Lillqvist  <tml@iki.fi>
14761
14762         * gdk/win32/gdkproperty-win32.c
14763         * gdk/x11/gdkproperty-x11.c: The assertions for GDK_IS_WINDOW
14764         were reversed.
14765
14766 2000-02-04  Tor Lillqvist  <tml@iki.fi>
14767
14768         * gdk/win32/gdkfont-win32.c (logfont_to_xlfd): Use
14769         g_filename_to_utf8 to convert the font names Windows gives us from
14770         whatever is the default codepage to UTF-8.
14771         (gdk_font_load_internal) Use g_filename_from_utf8 for conversion
14772         in the other direction.
14773
14774         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Fix cut&paste
14775         error in debugging output.
14776
14777 2000-02-02  Tor Lillqvist  <tml@iki.fi>
14778
14779         * gdk/win32/gdkwindow-win32.c (gdk_window_clear): Pass zero width
14780         and height parameters to gdk_window_clear_area(). Not minus one.
14781
14782 Wed Feb  2 11:58:05 2000  Owen Taylor  <otaylor@redhat.com>
14783
14784         * gtk/gtkdnd.c (gtk_drag_selection_received): Add some sanity
14785         checks if the widget passed to gtk_drag_get_data() was not the
14786         dest widget.
14787
14788 2000-02-01  Tor Lillqvist  <tml@iki.fi>
14789
14790         * gtk/gtkfilesel.c: Use the g_filename_to_utf8 and
14791         g_filename_from_utf8 functions (which were added a moment ago to
14792         GLib). Some cleanups: Use gbooleans. Use GStrings instead of fixed
14793         size buffers.
14794
14795         gtk_file_selection_get_filename returns the filename in the C
14796         runtime encoding. It calls g_filename_from_utf8, but copies the
14797         returned string to a static buffer, which is returned. I think
14798         this is better than returning the result from g_filename_from_utf8
14799         directly, which would mean all apps that use it would have to free
14800         the return value. Or should this function care about this issue at
14801         all? Maybe a new function with clearly defined semantics.
14802
14803         * gtk/gtkfilesel.h: Add comment about
14804         gtk_file_selection_get_filename returning the filename in the C
14805         runtime's encoding.
14806
14807         * README.win32
14808         * gdk/gdk.def
14809         * gdk/makefile.{cygwin,msc}
14810         * gtk/gtk.def: Updates.
14811
14812         * gdk/gdkcursor-win32.c: Initialise refcount.
14813
14814 2000-01-31  Yuan-Chung Cheng <platin@linux.org.tw>
14815
14816         * configure.in: Added "zh_CN.GB2312" to ALL_LINGUAS.
14817
14818 2000-01-30  Havoc Pennington  <hp@pobox.com>
14819
14820         * gtk/testgtk.c (set_cursor): use gdk_cursor_unref instead of
14821         destroy
14822
14823         * gdk/gdkimage.c (gdk_image_ref): image wasn't being returned
14824
14825         * gdk/gdkprivate.h: declare _gdk_cursor_destroy which is then 
14826         implemented in platform-specific code
14827
14828         * gdk/Makefile.am (gdk_c_sources): add gdkcursor.c
14829
14830         * gdk/x11/gdkcursor-x11.c (gdk_cursor_destroy): rename with an
14831         underscore in front
14832
14833         * gdk/win32/gdkcursor-win32.c (gdk_cursor_destroy):
14834         put an underscore in front
14835
14836         * gdk/gdkcursor.c: new file, implements
14837         gdk_cursor_ref/gdk_cursor_unref
14838
14839         * gdk/gdkcursor.h: Refcount GdkCursor
14840
14841         * gdk/gdkcompat.h (gdk_cursor_destroy): compat
14842
14843 2000-01-29  Tor Lillqvist  <tml@iki.fi>
14844
14845         * gdk/gdkwindow.h
14846         * gdk/gdkpixmap.h: Remove prototypes for renamed functions.
14847
14848 Tue Jan 25 11:43:21 2000  Owen Taylor  <otaylor@redhat.com>
14849
14850         * gtk/gtkinvisible.h (struct _GtkInvisible[Class]): Fix
14851         structures to properly inherit from GtkWidget not GtkBin.
14852
14853 Sun Jan 23 20:28:24 2000  Owen Taylor  <otaylor@redhat.com>
14854
14855         * gtk+.spec.in: Added lib/gtk+/include/* to %files
14856         (bug #5178 - Peter Wainright)
14857         
14858         * gtk/Makefile.am (gtk_public_h_sources): Add gtkcompat.h
14859         so that it will be installed.
14860         (bug #4889 - "david d `zoo' zuhn" <zoo@mnnr.org>)
14861
14862 Fri Jan 21 16:29:28 2000  Owen Taylor  <otaylor@redhat.com>
14863
14864         * gtk/gtkstyle.[ch] docs/Changes-1.4.txt: Make the @detail argument
14865         for the GtkStyleClass vtable const.
14866
14867         * gtk/gtkitemfactory.[ch] docs/Changes-1.4.txt: Make GtkPrintFunc
14868         take a const string argument like GtkTranslateFunc. This will
14869         require changes in use code.
14870
14871 2000-01-19  Tor Lillqvist  <tml@iki.fi>
14872
14873         * gdk/win32/gdkwindow-win32.c (gdk_window_clear_area): The correct
14874         semantics (to mimic the X11 backend, which just calls XClearArea)
14875         is to check for zero width (and height), and in that case use the
14876         window's width minus x (height minus y). This fixes for instance
14877         some redraw problems with gtkclist, which were easily noticeable
14878         in the gtk file selection widget.
14879
14880         (gdk_window_new): Don't set WS_EX_TOPMOST for dialog
14881         windows.
14882
14883 2000-01-13  Tor Lillqvist  <tml@iki.fi>
14884
14885         * configure.in
14886         * gdk/Makefile.am
14887         * gdk/x11/Makefile.am
14888         * gdk/win32/Makefile.am: Small fixes, thanks to Peter Wainwright
14889         (bug #5177).
14890         * gdk/win32/gdkcc-win32.c: Reintroduce, to be thrown
14891         out later.
14892
14893 2000-01-09  Tor Lillqvist  <tml@iki.fi>
14894
14895         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Ignore
14896         WM_MOVE for iconified or invisible windows. This fixes various
14897         problems when minimising windows. Thanks to Bernd Herd.
14898
14899 2000-01-05  Tor Lillqvist  <tml@iki.fi>
14900
14901         * gdk/gdkdraw.c (gdk_draw_lines): Fix copy&paste error: Call the
14902         backend's draw_lines method, not draw_points.
14903
14904 2000-01-02  Tor Lillqvist  <tml@iki.fi>
14905
14906         * gdk/win32/gdkevents-win32.c: Clean up some more leftovers from
14907         before Owen's reorganisation: Don't have queued_events and
14908         queued_tail statics in this file, but use gdk_queued_events and
14909         gdk_queued_tail. This makes exposure event compression work again.
14910
14911         (gdk_WindowProc): Comment out a posting of gdk_ping_msg, doesn't
14912         seem to be needed?
14913
14914 1999-12-30  Tor Lillqvist  <tml@iki.fi>
14915
14916         * gdk/gdk.c: If we don't HAVE_XCONVERTCASE we must #include
14917         gdkkeysyms.h to get the GDK_* keysym constants that are needed by
14918         gdk_keyval_convert_case(). Otherwise, gdk_keyval_convert_case()
14919         doesn't do anything.
14920
14921         * gdk/gdk.def: Add gdk_xid_table_insert.
14922
14923         * gdk/win32/gdkprivate-win32.h
14924         * gdk/win32/gdkevents-win32.c
14925         * gdk/win32/gdkinput-win32.c
14926         
14927         * gdk/win32/gdkwindow-win32.c: Remove the superfluous
14928         extension_events field in the GdkWindowWin32Data struct. Use only
14929         the extension_events field in GdkWindowPrivate. Previously one was
14930         set, and the other one tested, which broke tablet
14931         functionality. Thanks to Keishi Suenaga for pointing this out.
14932
14933 1999-12-18  Tor Lillqvist  <tml@iki.fi>
14934
14935         * gdk/win32/gdkfont-win32.c (gdk_text_size, gdk_text_extents):
14936         When handling a single character (text length == 1), don't handle
14937         it as if it was UTF-8.
14938
14939 1999-12-11  Tor Lillqvist  <tml@iki.fi>
14940
14941         * Makefile.am: Distribute README.win32.
14942         
14943         * gdk/Makefile.am
14944         * gdk/win32/Makefile.am: Distribute Win32 files.
14945
14946         * gdk/makefile.msc: New file.
14947
14948         * gdk/gdk.c (gdk_arg_context_parse): Fix gccism (no statement
14949         after label).
14950
14951         * gdk/gdkprivate.h: Must mark also gdk_error_warnings and
14952         gdk_error_code as GDKVAR, as they are referred outside GDK.
14953
14954         * gdk/win32/makefile.msc: Update.
14955
14956         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): More
14957         tweaks. Check only if at least one of those Unicode subrange bits
14958         we care for is set. If no code page bits are set, guess (wildly)
14959         based on the charset.
14960
14961         * gdk/win32/gdkinput-win32.c: Remove debugging leftover.
14962
14963         * gdk/win32/gdkwindow-win32.c (gdk_window_new): Assure title is
14964         non-NULL.
14965
14966         * gtk/gtkdnd.c
14967         * gtk/gtklayout.c
14968         * gtk/gtkplug.c
14969         * gtk/gtkselection.c
14970         * gtk/gtksocket.c
14971         * gtk/gtkwindow.c: Include x11/gdkx.h *or* win32/gdkwin32.c as
14972         appropriate. There must be a cleaner way to handle this?
14973
14974         * gtk/gtkrc.c: Must include windows.h on Win32.
14975
14976         * gtk/testgtk.c: No need to include gdkx.h.
14977
14978         * gtk/makefile.cygwin: Correct invokation of genmarshal.pl.
14979
14980 1999-12-07  Tor Lillqvist  <tml@iki.fi>
14981
14982         * gdk/win32/gdkfont-win32.c: Fix string measurement code. For now,
14983         the rbearing is set to the same as the width, but this should be
14984         fixed.
14985
14986 1999-12-06  Tor Lillqvist  <tml@iki.fi>
14987
14988         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): New
14989         function. If Windows doesn't tell us what Unicode subranges a font
14990         covers, guesstimate based on the codepages it covers. This will
14991         hopefully help those Windows versions or fonts that don't give us
14992         any useful Unicode subrange information with GetTextCharsetInfo.
14993         Call this function in gdk_font_load_internal.
14994
14995         * gdk/win32/{gdkdnd,gdkimage,gdkpixmap,gdkprivate}-win32.c: Misc
14996         minor changes.
14997
14998 Fri Dec  3 14:09:50 1999  Owen Taylor  <otaylor@redhat.com>
14999
15000         * gtk/gtkoptionmenu.[ch] (gtk_option_menu_get_history):
15001         New function, long needed.
15002
15003 Wed Dec  1 22:35:43 1999  Owen Taylor  <otaylor@redhat.com>
15004
15005         * gdk/gdkproperty.h x11/gdkproperty.c: Change 
15006         only_if_exists argument of gdk_atom_intern to
15007         bool.
15008
15009 1999-11-25  Tor Lillqvist  <tml@iki.fi>
15010
15011         * gdk/gdkgc.c (gdk_gc_set_ts_origin, gdk_gc_set_clip_origin): 
15012         Fix two copy&paste errors.
15013
15014         * gdk/makefile.cygwin: Also rebuild DLL when the static archive in
15015         win32 has changed.
15016
15017         * gdk/win32/gdkprivate-win32.h: Don't need CPINFO in the
15018         GdkWin32SingleFont struct.
15019
15020         * gdk/win32/gdkfont-win32.c: Some more debugging: Print Unicode
15021         subranges of loaded fonts. Clear font signature first, in case
15022         GetTextCharsetInfo fails. Pretend SYMBOL_CHARSET fonts have
15023         ASCII+Basic Latin (i.e. 0x40--0xFF) as they are single-byte.
15024
15025         * gdk/win32/gdkgc-win32.c: Improved logging. (gdk_gc_postdraw):
15026         Unoffset clip region.
15027
15028 1999-11-23  Tor Lillqvist  <tml@iki.fi>
15029
15030         * gdk/win32/gdkevents-win32.c (gdk_event_translate): set
15031         event->any.window before calling filter functions.
15032
15033 Fri Nov 19 10:34:41 1999  Owen Taylor  <otaylor@redhat.com>
15034
15035         * gtk/gtkgamma.h: Adapt cast macros to standard.
15036
15037 [ Merges from 1.2 ]
15038
15039 Tue Nov 16 10:15:54 1999  Owen Taylor  <otaylor@redhat.com>
15040
15041         * gtk/gtkitemfactory.c (gtk_item_factory_parse_path):
15042         If translation does not include a '/', use entire
15043         translation instead of crashing.
15044
15045 Sun Oct 31 22:21:11 1999  Tim Janik  <timj@gtk.org>
15046
15047         * docs/gtk_tut.sgml:
15048         s/gtk_accel_group_attach/gtk_window_add_accel_group/.
15049
15050 Sat Oct 30 09:09:09 1999  Owen Taylor  <otaylor@redhat.com>
15051
15052         * gtk/gtkselection.c (gtk_target_list_remove): Use
15053         g_list_remove_link, not g_list_remove.
15054
15055         [ From Geert Bevin <gbevin@thunderstorms.org> ]
15056         
15057 Sun Oct 24 07:41:40 1999  Tim Janik  <timj@gtk.org>
15058
15059         * gtk/gtkclist.c (real_undo_selection): commented out g_print()
15060         statement upon unselection (how the heck did that slip in?).
15061
15062 Sat Oct 23 03:03:08 1999  Tim Janik  <timj@gtk.org>
15063
15064         * gtk/gtktext.c (gtk_text_freeze): 
15065         (gtk_text_thaw): undraw/draw cursor here to avoid unnecessary scrolling
15066         in frozen state (and aparently crashes). patch provided by Anders
15067         Melchiorsen <and@kampsax.dtu.dk>.
15068
15069 Sat Oct 23 02:53:20 1999  Tim Janik  <timj@gtk.org>
15070
15071         * fix insensitive default/focus widget activation,
15072         reported by Matt Goodall <mgg@isotek.co.uk>.
15073
15074         * gtk/gtkwindow.c (gtk_window_key_press_event): 
15075         (gtk_window_activate_default):
15076         (gtk_window_activate_focus):
15077         return handled=FALSE for actiavtion of insensitive default
15078         widgets. return handled=TRUE for activation of insensitive
15079         focus widgets. don't activate in either case.
15080
15081 Tue Oct 19 09:55:08 1999  Owen Taylor  <otaylor@redhat.com>
15082
15083         * gtk-config.in (lib_gtk): Switch order of @x_cflags@
15084         and $glib_cflags to match library order and in the
15085         theory that an old version of GLib is more likely to
15086         be in the include directory for X then vice-versa.
15087         (Bug #2776)
15088
15089 Tue Oct 19 09:46:49 1999  Owen Taylor  <otaylor@redhat.com>
15090
15091         * gtk/gtkrc.c (gtk_rc_init): Always use LC_CTYPE 
15092         to determine the locale for fontsets, not LC_MESSAGES;
15093         the user may want English messages with a handling
15094         for non-English languages. (LC_CTYPE=ru_RU LC_MESSAGES=fr_FR
15095         will still be broken) (Bug #2891)
15096
15097 Tue Oct 19 20:36:42 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
15098
15099         * gtk/gtkrc.ko: Fixed the wrong number of "*"'s.
15100
15101 Tue Oct 19 12:15:13 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
15102
15103         * gtk/gtkrc.ko: Changed the Korean default fontset.
15104
15105 Fri Oct  8 02:32:47 1999  Owen Taylor  <otaylor@redhat.com>
15106
15107         * gtk/gtklayout.c (gtk_layout_adjustment_changed): Fix bug
15108         where when scrolling to the left or top double exposes
15109         were done, causing major slowdowns.
15110
15111 Thu Oct  7 18:31:55 1999  Owen Taylor  <otaylor@redhat.com>
15112
15113         * gtk/gtkrc.c (gtk_rc_init): Always normalize codeset
15114         names to lowercase and alphanumeric, before looking
15115         them up.
15116
15117         * gtk/Makefile.am: Install codeset variant gtkrc files
15118         with normalized names.
15119
15120 Thu Oct  7 22:52:42 1999  Tim Janik  <timj@gtk.org>
15121
15122         * gtk/gtkitemfactory.c (gtk_item_factory_popup_with_data): even
15123         popup menus when the menu is already visible, but its parent
15124         is still hidden, (happens after tornoff window got hidden).
15125
15126 Thu Oct  7 11:09:55 1999  Owen Taylor  <otaylor@redhat.com>
15127
15128         * gtk/Makefile.am (install-data-local): Fix
15129         a typo where gtkrc.vi_VN.tcvn5712 wasn't getting
15130         deleted, causing error messages on install.
15131
15132 Thu Oct  7 11:03:06 1999  Owen Taylor  <otaylor@redhat.com>
15133
15134         * gtk/gtk[hv]paned.c (gtk_{h,v}paned_draw): Redraw
15135         the handle as well, since we now sometimes ignore
15136         exposes on the handle while resizing.
15137
15138 Wed Oct  6 18:02:31 1999  Owen Taylor  <otaylor@redhat.com>
15139
15140         * gtk/gtkrc.c (gtk_rc_append_default_pixmap_path): Fix stupid
15141         extra g_free introduced in one of the last one or two 
15142         commits.
15143
15144 Wed Oct  6 16:38:36 1999  Owen Taylor  <otaylor@redhat.com>
15145
15146         * gtk/Makefile.am gtk/gtkrc*: Make naming of gtkrc files
15147         consistent, put each style that a gtkrc.* file creates
15148         in a unique namespace, remove old files before installing.
15149
15150 Wed Oct  6 14:31:16 1999  Owen Taylor  <otaylor@redhat.com>
15151
15152         * gtk/gtkrc.c (gtk_rc_init): Avoid leaking memory when
15153         gtk_rc_init is called multiple times. (Yes, people who
15154         do that have bugs in their code.)
15155
15156 Tue Oct  5 11:36:57 PDT 1999 Manish Singh <yosh@gimp.org>
15157
15158         * gtk/Makefile.am: listing gtkrc in gtkconf_DATA seems to barf.
15159         Remove it since it's generated by the Makefile anyway
15160
15161 Tue Oct  5 02:43:41 1999  Owen Taylor  <otaylor@redhat.com>
15162
15163         * gdk/gdkinputcommon.h (gdk_input_device_new): Free
15164         device->info.axes for core pointer.
15165
15166 Thu Sep 30 13:55:25 1999  Owen Taylor  <otaylor@redhat.com>
15167
15168         * gtk/testgtk.c (destroy_idle_test): Rename idle to 
15169         idle_id, to deal with obsolete, broken C libraries.
15170
15171 Mon Sep 27 02:50:15 1999  Owen Taylor  <otaylor@redhat.com>
15172
15173         * gtk/gtkvscale.c (gtk_vscale_draw): Don't add in
15174         allocation->x/y twice!
15175
15176         * gtk/gtkhscale.c: Make usage of gtk_hscale_pos_trough()
15177         consistent with gtk_vscale_pos_trough().
15178
15179 Sun Sep 26 19:44:34 1999  Owen Taylor  <otaylor@redhat.com>
15180
15181         * gtk/gtkcontainer.c (gtk_container_queue_resize): We may
15182         be queueing a resize on a toplevel container between
15183         the time we show it and when we map it. So, we need
15184         to test GTK_WIDGET_VISIBLE() for toplevels, and only
15185         use GTK_WIDGET_DRAWABLE() for child windows.
15186
15187 Thu Sep 23 16:41:03 1999  Owen Taylor  <otaylor@redhat.com>
15188
15189         * gtk/Makefile.am (LDADDS): Add GDK_WLIBS to LDADDS 
15190         (fixes bug #2144)
15191
15192 Fri Sep 24 00:51:45 1999  Tim Janik  <timj@gtk.org>
15193
15194         * gtk/gtkcontainer.c (gtk_container_queue_resize): check for
15195         container DRAWABLE (instead of VISIBLE), so we don't queue
15196         resizes on non-toplevel containers.
15197
15198 Sun Sep 19 18:13:31 1999  Owen Taylor  <otaylor@redhat.com>
15199
15200         * gtk/gtkselection.[ch]: Make the data argument
15201         const guchar *.
15202
15203 Sat Sep 18 21:27:40 1999  Owen Taylor  <otaylor@redhat.com>
15204
15205         * gtk/gtkwindow.c: Try to behave sensibly if 
15206         the focus widget is the window itself. (Should
15207         we allow this at all?)
15208
15209 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
15210
15211         * gtk/gtkwidget.c (gtk_widget_set_sensitive): 
15212         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): 
15213         * gtk/gtknotebook.c (gtk_notebook_set_show_border): 
15214         * gtk/gtkclist.c (gtk_notebook_set_show_border): make gboolean args
15215         in prototypes and implementations consistent (Tomas Ogren).
15216
15217         * gtk/gtklayout.c (gtk_layout_remove): unset GTK_IS_OFFSCREEN flag
15218         before the widget is unparented (reported by damon).
15219
15220         * gtk/gtkdnd.c: make the cursor and icon data _unsigned_ char,
15221         since we provide unsigned data anyways.
15222
15223 Thu Sep 16 21:32:01 1999  Owen Taylor  <otaylor@redhat.com>
15224
15225         * gtk/gtktooltips.c (gtk_tooltips_set_tip): Delay
15226         the call to gtk_tooltips_layout_text() until later.
15227
15228         * gtk/gtktooltips.c (gtk_tooltips_draw_tips):
15229         Call gtk_widget_ensure_style() before using the style.
15230
15231 Wed Sep 15 02:52:19 1999  Owen Taylor  <otaylor@redhat.com>
15232
15233         * gtk/gtkwidget.c (gtk_widget_event): Added workaround
15234         for old widgets that don't propagate draws to all
15235         children. (Namely gnome-dock for gnome-libs <= 1.0.16)
15236
15237 Tue Sep 14 19:22:19 1999  Tim Janik  <timj@gtk.org>
15238
15239         * gtk/gtkwidget.c (gtk_widget_queue_resize): don't queue the parent
15240         for a redraw but just the widget that requested the resize.
15241
15242 Tue Sep 14 18:29:47 1999  Tim Janik  <timj@gtk.org>
15243
15244         * gtk/gtkcontainer.c: added new widget level method
15245         gtk_container_set_reallocate_redraws() and a GtkContainer flag
15246         reallocate_redraws : 1 to reflect the setting, exported this through
15247         the argument system as a boolean ::reallocate_redraws.
15248
15249         * gtk/gtkwidget.c (gtk_widget_size_allocate): when queueing redraws
15250         on the widget because the allocation changes, do so as well for
15251         widget->parent if the parent has reallocate_redraws set to TRUE.
15252         with that containers requesting reallocation redraws get automatically
15253         redrawn if their children changed allocation (this unfortunately
15254         affects also other children that didn't change allocation, but we
15255         cannot work around that before 1.3).
15256
15257 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
15258
15259         * gtk/gtkwidget.c (gtk_widget_idle_draw): only emit ::draw if width
15260         _and_ height are >0 (not _or_).
15261
15262         * gtk/gtktable.c (gtk_table_remove): use gtk_widget_queue_resize()
15263         instead of gtk_container_queue_resize(), which is a core gtk internal
15264         function (must have been on crack when i queued that).
15265
15266         * gtk/gtkprivate.h: added new private flag GTK_FULLDRAW_PENDING, so
15267         we can check more reliably if we want to discard expose events.
15268         * gtk/gtkwidget.c: added setting/unsetting of the GTK_FULLDRAW_PENDING
15269         flag.
15270         
15271         * gtk/gtkwidget.c (gtk_widget_event): don't discard synthesized exposes,
15272         we simply trust these events. for deciding whether to discard exposes,
15273         check GTK_FULLDRAW_PENDING instead of RESIZE_PENDING.
15274         
15275 Mon Sep 13 15:01:21 1999  Owen Taylor  <otaylor@redhat.com>
15276
15277         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
15278         queues of areas that are completely off screen.
15279
15280         * gtk/gtkwidget.c (gtk_widget_idle_draw): Fix broken
15281         logic for handleboxes.
15282
15283         * gtk/gtkwidget.c (gtk_widget_queue_draw_data): Add santity
15284         check on width/height.
15285
15286 Mon Sep 13 02:22:47 1999  Tim Janik  <timj@gtk.org>
15287
15288         * gtk/Makefile.am: backed out Raja's recent VPATH build "improvements",
15289         we are fine with using $@ the way we do (if we actually encounter
15290         brokeness with $@ in VPATH builds because of additional path prefixes,
15291         we need to use $(@F) actually).
15292
15293 Mon Sep 13 01:34:53 1999  Tim Janik  <timj@gtk.org>
15294
15295         * gtk/gtksignal.c: renamed two variables, hopefully didn't introduce
15296         short lived bugs, that would allow language bindings to do surgeries
15297         to our guts.
15298
15299 Fri Sep 10 15:22:50 1999  Owen Taylor  <otaylor@redhat.com>
15300
15301         * gtk/gtkwindow.c (gtk_window_size_allocate): Fix typo
15302         where comparison was being done against an uninitialized
15303         value causing intermittant results depending on
15304         compiler flags. Also make it clearer that we aren't
15305         ever initializing the child as 0x0 (though this will
15306         be caught in gtk_widget_size_allocate())
15307
15308 Fri Sep 10 10:06:56 1999  Owen Taylor  <otaylor@redhat.com>
15309
15310         * gtk/gtkwindow.c (gtk_window_set_transient_for): Move
15311         gtk_window_unset_transient_for() call after we do checks
15312         involving the old transient parent.
15313         [ From Lance Capser <lmc@cyberhighway.net> ]
15314
15315 1999-09-07  Raja R Harinath  <harinath@cs.umn.edu>
15316
15317         * gtk/Makefile.am (gtk.defs): Go back to using `touch' to create
15318         an empty file.
15319
15320 Mon Sep  6 00:11:56 1999  Lars Hamann  <lars@gtk.org>
15321
15322         * gtk/gtkctree.c (gtk_ctree_is_ancestor): return FALSE if node has
15323         no children. (Reported by: Chris Rogers <gandalf@pobox.com>)
15324
15325 1999-09-03  Raja R Harinath  <harinath@cs.umn.edu>
15326
15327         * gtk/Makefile.am (gen_sources): Improve VPATH builds.
15328         `$@' is valid only in the build dir, not after we've done 
15329         `cd $srcdir'.  Also use `test -f' instead of less portable
15330         `test -e'.
15331
15332 Fri Sep  3 15:59:56 1999  Owen Taylor  <otaylor@redhat.com>
15333
15334         * gtk/gtktext.c (correct_cache_insert): Rewrite
15335          for simplicity, and hopefully correctness.
15336          (Fixes bug #1322, which was a segfault when
15337           on some insertions with the properties around
15338           the insertion set up just wrong.)
15339
15340         * gtk/gtktext.c (gtk_text_adjustment): When we receive
15341          a "changed" signal, clamp the new value to the adjustment
15342          bounds to avoid segfaulting if someone tries to change
15343          the adjustment to a bogus value. (Bug #1795)
15344
15345 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
15346
15347         * gtk/gtkmain.c: Ignore unexpected destroy notifies
15348         for children, for toplevel windows handle them
15349         like delete_event.
15350
15351         * gtk/gtkplug.c: Add an unrealize handler so that
15352         we unref plug->socket_window when we are done
15353         with it.
15354
15355 Fri Sep  3 14:52:54 1999  Owen Taylor  <otaylor@redhat.com>
15356
15357         * gtk/gtktext.c (clear_area): Fix stupid signedness
15358          problem that was causing background to sometimes
15359          be misaligned.
15360
15361 Fri Sep  3 12:26:33 1999  Owen Taylor  <otaylor@redhat.com>
15362
15363         [ Fixes pointed out by Ettore Perazzoli <ettore@comm2000.it> ]
15364         
15365         * gtk/gtkmenu.c (gtk_menu_position): Make
15366          sure we never position menus with negative x, y,
15367          since gtk_widget_set_uposition() can't handle that.
15368
15369         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu):
15370          Modify the positioning code a bit so that we always
15371          put the top-left corner onscreen. (This is for
15372          UI reasons, gtk_menu_position() now takes care of
15373          gtk_widet_set_uposition() brokeness.)
15374
15375 Fri Sep  3 03:06:30 1999  Tim Janik  <timj@gtk.org>
15376
15377         * gtk/Makefile.am: fixed up things for -jx, x > 1.
15378
15379 Sun Sep  5 08:48:51 1999  Owen Taylor  <otaylor@redhat.com>
15380
15381         * gtk/gtkwidget.c (gtk_widget_modify_style): Ref the
15382           RC style that is passed in. The lack of the ref
15383           before was a bug. If people worked around this
15384           bug, this will introduce a slight memory leak
15385           in their code. The code should typically look like:
15386
15387             rc_style = gtk_rc_style_new ();
15388             [...]
15389             gtk_widget_modify_style (widget, rc_style);
15390             gtk_rc_style_unref (rc_style);
15391
15392         * gtk/gtkwidget.c (gtk_widget_modify_style): Reset
15393           the style if it was already set.
15394
15395         * gtk/gtkwidget.c (gtk_widget_set_name): Only set the
15396           style if it was set before.
15397
15398 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
15399
15400         * gtk/testgtk.c (main): Add a check to see if we
15401           are being run from the correct directory and
15402           to quit nicely if we are not.
15403
15404         * gtk/gtkrc.c (gtk_rc_slist_remove_all): Make function
15405           static.
15406
15407 Thu Sep  2 23:00:03 1999  Tim Janik  <timj@gtk.org>
15408
15409         * gtk/gtkenums.h (GtkWindowPosition): added GTK_WIN_POS_CENTER_ALWAYS.
15410
15411         * gtk/gtkwindow.c:
15412         queue resizes unconditionally (gtk_widget_queue_resize will figure
15413         what to do if the window is not realized).
15414         (gtk_window_move_resize): only recenter the window
15415         for GTK_WIN_POS_CENTER_ALWAYS.
15416         (gtk_window_compute_reposition): handle GTK_WIN_POS_CENTER_ALWAYS in
15417         the same way as GTK_WIN_POS_CENTER.
15418
15419 Thu Sep  2 22:39:27 1999  Tim Janik  <timj@gtk.org>
15420
15421         * gtk/gtkwindow.c (gtk_window_reposition): check for the last position
15422         with (!(info->last_flags & GDK_HINT_POS)) instead of
15423         (!info->last_flags & GDK_HINT_POS).
15424
15425         * gtk/gtkwindow.c (gtk_window_move_resize): constrain new_width and
15426         new_height unconditionally, because we use these values even if
15427         !default_size_changed && !hints_changed.
15428         comented the (default_size_changed || hints_changed) case with
15429         respect to resize rejects from the window manager.
15430
15431         * gtk/gtkwindow.c (gtk_window_move_resize): save info->last values
15432         in the zvt condition hack, since this includes the window hints, set
15433         the hints after the handling_resize case.
15434
15435         * gtk/gtkwindow.c (gtk_window_show): constrain the default size that a
15436         window is initially shown with to the geometry.
15437
15438 Thu Sep  2 07:38:56 1999  Tim Janik  <timj@gtk.org>
15439
15440         * gtk/gtkwindow.c (gtk_window_move_resize):
15441         s/size_changed/default_size_changed/g so i know what's
15442         really going on (frying brain on smaller flame now).
15443
15444 Thu Sep  2 05:47:47 1999  Tim Janik  <timj@gtk.org>
15445
15446         * gtk/gtkwindow.c (gtk_window_move_resize): queue a new resize if
15447         we have size_changed upon handling_resize. this is a gross
15448         workaround for the broken zvt widget and should be removed in
15449         1.3 again (search for FIXME).
15450         Owen provided an accurate comment for this:
15451
15452         /* We could be here for two reasons
15453          *  1) We coincidentally got a resize while handling
15454          *     another resize.
15455          *  2) Our computation of size_changed was completely
15456          *     screwed up, probably because one of our children
15457          *     is broken. It's probably a zvt widget.
15458          *
15459          * For 1), we could just go ahead and ask for the
15460          * new size right now, but doing that for 2)
15461          * might well be fighting the user (and can even
15462          * trigger a loop). Since we really don't want to
15463          * do that, we requeue a resize in hopes that
15464          * by the time it gets handled, the child has seen
15465          * the light and is willing to go along with the
15466          * new size. (this happens for the zvt widget, since
15467          * the size_allocate() above will have stored the
15468          * requisition corresponding to the new size in the
15469          * zvt widget)
15470          *
15471          * This doesn't buy us anything for 1), but it shouldn't
15472          * hurt us too badly, since it is what would have
15473          * happened if we had gotten the configure event before
15474          * the new size had been set.
15475          */
15476
15477 Wed Sep  1 20:46:11 1999  Owen Taylor  <otaylor@redhat.com>
15478
15479         * gtk/gtkrc.c: deal properly with the fact that RC
15480           style lists may include rc styles more than once.
15481
15482         * gtk/gtkrc.c (gtk_rc_append_pixmap_path): Removed
15483           unused static function.
15484
15485         * gtk/gtkrc.c (gtk_rc_find_pixmap_in_path): Keep a
15486           stack of directories of RC files currently being
15487           parsed and implicitely add them to pixmap path.
15488           
15489           This fixes a bug where the directory would get
15490           appended then overwritten by pixmap_path declarations.
15491
15492           (bug #1462, from Peter Wainright <prw@wainpr.demon.co.uk>)
15493
15494         * gtk/gtkthemes.c (gtk_theme_engine_unref): Call
15495           theme's exit function. (Patch from Peter Wainwright,
15496           bug #1454)
15497
15498         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_destroy):
15499           Add a destroy() handler to take care of removing
15500           group for menu item. (Fixes bug #1197)
15501
15502         * gtk/gtkwidget.c (gtk_widget_size_request): Fixed thinko
15503           in warning message.
15504
15505 Wed Sep  1 21:27:42 1999  Tim Janik  <timj@gtk.org>
15506
15507         * gtk/gtkwindow.c (gtk_window_move_resize): don't require a server
15508         roundtrip to figure window's width and height, since we know that
15509         anyways from widget->allocation.
15510
15511 Wed Sep  1 12:37:44 1999  Owen Taylor  <otaylor@redhat.com>
15512
15513         * gtk/gtkwindow.c (gtk_window_move_resize): Compute
15514           the hints after we request the new size.
15515
15516 Wed Sep  1 10:38:37 1999  Owen Taylor  <otaylor@redhat.com>
15517
15518         * gtk/gtkwindow.c (gtk_window_compute_hints): Removed
15519           GTK_WIDGET_REALIZED() assertion - we can compute the
15520           hints before we are realized.
15521
15522         * gtk/gtkwindow.c (gtk_window_move_resize): Reorder
15523           hint changing so that we have a value of hints_changed
15524           when we decide whether to constrain the window size.
15525
15526         * gtk/gtkwindow.c (gtk_window_move_resize): Spelling fix.
15527
15528         * gtk/gtkwindow.c (gtk_window_constrain_size): cleanups,
15529         change back to G_MAXINT.
15530
15531 Wed Sep  1 06:54:59 1999  Tim Janik  <timj@gtk.org>
15532
15533         * gtk/gtkwindow.c (gtk_window_get_geometry_info): zero initialize
15534         new GtkWindowGeometryInfo, so fields like GdkGeometry geometry
15535         contain uncluttered values.
15536         (gtk_window_compute_hints): simply assert that window is realized
15537         and that geometry_info is valid, since we rely on this anyways.
15538         (gtk_window_constrain_size): major cleanups to the code.
15539         if (flags & GDK_HINT_BASE_SIZE) use geometry's base width and height
15540         for the base size, instead of the minimums. use 32767 as max width
15541         and height (like in gtkwindow.c) instead of G_MAXINT.
15542
15543 Wed Sep  1 04:41:25 1999  Tim Janik  <timj@gtk.org>
15544
15545         * cleaned up the GtkContainer.need_resize flag handling mess, we
15546         only need to force resize requests when we were prematurely
15547         realized, or our widget tree was modified when we were temporarily
15548         hidden. handling these cases directly upon showing the window (i.e.
15549         while the GdkWindow is still unmapped) avoids the need to wait for
15550         a configure event response and therefore makes the GUI more snappier
15551         and avoids blank windows during the roundtrip.
15552
15553         * gtk/gtkwidget.c:
15554         (gtk_widget_hide): 
15555         (gtk_widget_show): don't queue resizes on toplevels, they know how
15556         to deal with matters.
15557
15558         * gtk/gtkcontainer.c (gtk_container_queue_resize): set the ->need_resize
15559         flag directly for not visible resize containers and spare us unecessary
15560         signal emissions.
15561
15562         * gtk/gtkwindow.c:
15563         (gtk_window_realize): if we need to enforce premature size allocation,
15564         queue a container resize so we are correctly resized later on.
15565         (gtk_window_init):
15566         (gtk_window_size_request):
15567         don't freak around with the ->need_resize flag,
15568         gtk_container_queue_resize() will care about that.
15569         (gtk_window_show):
15570         handle initial resizing issues here, we can handle matters better in
15571         this place, especially since we know that our GdkWindow is still
15572         unmapped.
15573         (gtk_window_move_resize):
15574         don't care about ->need_resize at all.
15575         handle size changes properly that occoured while we waited for a
15576         configure event.
15577
15578 Tue Aug 31 15:58:46 1999  Owen Taylor  <otaylor@redhat.com>
15579
15580         * gtk/gtkwidget.c (gtk_widget_set_uposition):
15581         * gtk/gtkwindow.[hc] (gtk_window_reposition):
15582         Move the hint setting code from gtk_widget_set_uposition
15583         to here; set the hints so that we respect any previously
15584         set geometry hints.
15585
15586         * gtk/gtkwindow.c (gtk_window_compute_reposition): Don't
15587         change the window hints here or move the window here,
15588         let that happen in gtk_window_move_resize().
15589
15590 Tue Aug 31 06:58:52 1999  Tim Janik  <timj@gtk.org>
15591
15592         * gtk/gtkwidget.c (gtk_widget_event): when discarding exposes due
15593         to already queued resizes (and therefore redraws) on a widget, check
15594         its anchestry as well.
15595
15596         * gtk/gtkcontainer.c:
15597         (gtk_container_queue_resize): clear resize widgets for resize
15598         containers before aborting prematurely. this is especially important
15599         for toplevels which may need imemdiate processing or their resize
15600         handler to be queued.
15601         (gtk_container_dequeue_resize_handler): added new internal function for
15602         gtkwindow.c.
15603
15604         * gtk/gtkwindow.c (gtk_window_move_resize): if we are resizing due to a
15605         configure event, take possible changes in window position into account
15606         as well.
15607         if we request a new window size, queue up a resize handler that will
15608         last until the configure event response arrives.
15609         combined the ->need_resize case (initial show) with the general size
15610         (hints) changed case and added even more comments.
15611         if !auto_shrink, only revert to the old allocation if the new size
15612         is smaller than the current allocation.
15613
15614 Tue Aug 31 11:55:20 1999  Owen Taylor  <otaylor@redhat.com>
15615
15616         * gtk/gtkwindow.c (gtk_window_set_arg, gtk_window_set_policy,
15617                            gtk_window_set_geometry_hints
15618                            gtk_window_set_default_size):
15619         When hints are set, queue a resize so that the hints will
15620         be eventually reset on the toplevel.
15621
15622         * gtk/gtkwindow.c (gtk_window_show): Use
15623         gtk_window_compute_default_size(). Clear the need_resize flag
15624         on the initail map so that we don't unnecessarily trigger the
15625         resize code.
15626
15627         * gtk/gtkwindow.c (gtk_window_move_resize): Split apart
15628         into separate functions. Compare the hints we are setting
15629         with what we set last time so that we can accurately
15630         tell when we need to reset the hints.
15631
15632         * gtk/gtkwindow.c (gtk_window_compute_default_size): New
15633         function to figure out the size from requisition
15634         and default_size.
15635
15636         * gtk/gtkwindow.c (gtk_window_constrain_size): Function
15637         from fvwm to constrain a size to the geometry hints.
15638
15639         * gtk/gtkwindow.c (gtk_window_compare_hints): New function
15640         to compare two sets of geometry hints.
15641
15642         * gtk/gtkwindow.c (gtk_window_compute_hints): Renamed
15643         from gtk_window_set_hints(), just compute the hints,
15644         don't set them.
15645
15646         * gtk/gtkwindow.c (gtk_window_compute_reposition): Move
15647         code from gtk_window_move_resize() to separate function,
15648         rationalize a bit.
15649
15650 Tue Aug 31 13:05:03 1999  Owen Taylor  <otaylor@redhat.com>
15651
15652         * gtkrc.h: Move the ref_count member out of the GtkRcStyle
15653         structure into a new private structure.
15654
15655         * gtkrc.c: Split GtkRcStyle into public/private.
15656         In the private part, add a list of pointers to the
15657         RcStyle lists this RcStyle participates in.
15658
15659         * gtkrc.c: When a RcStyle is free, remove all
15660         lists referencing it from the 
15661         realized_style_ht hash, and free those lists.
15662         
15663         * gtk/gtkrc.c (gtk_rc_clear_styles): Don't call
15664         gtk_rc_init(), since that adds the default styles
15665         to the list of parsed RC files again.
15666
15667         * gtk/gtkrc.c: Use gtk_rc_style_find() consistently.
15668         
15669 Thu Aug 26 14:14:42 1999  Tim Janik  <timj@gtk.org>
15670
15671         * gtk/gtkwidget.c (gtk_widget_size_allocate): reactivated the sanity
15672         checks that ensure that a widget's allocation is at least 1 in width
15673         and height. (GNOME note: this doesn't affect old panel code anymore,
15674         because GtkSocket will request width and height of at least 1 since
15675         Fri Jul 23).
15676
15677         * gtk/gtkwindow.c (gtk_window_realize): if the widget hasn't been
15678         allocated yet (happens if the user realizes the window prematurely),
15679         size request and allocate it.
15680         (gtk_window_size_allocate): guard against guint underflows.
15681
15682 Wed Aug 25 19:01:36 1999  Lars Hamann  <lars@gtk.org>
15683
15684         * gtk/Makefile.am (gtk_built_sources): reordered stamp-gtk.defs
15685         in gtk_built_sources, so gtk.defs gets built prior to all other
15686         sources.
15687
15688 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
15689
15690         * gtk/Makefile.am:
15691         invoke indent on gtkmarshal.*. 
15692         rewrote source generation rules, use COPYING as oldest source tag for
15693         a piggyback rule to generate all sources from (don't touch it ;).
15694         major cleanups, strip spaces on build rules for GNU Make.
15695
15696         * gtk/genmarshal.pl: don't operate on hardcoded filenames but take
15697         source and target files from commandline arguments. don't invoke indent.
15698
15699 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
15700
15701         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
15702         notebook after switch to avoid drawing problems.
15703         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
15704         
15705         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
15706         show them instead. 
15707         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
15708
15709 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
15710
15711         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
15712         notebook after switch to avoid drawing problems.
15713         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
15714         
15715         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
15716         show them instead. 
15717         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
15718
15719 Wed Aug 18 09:20:10 1999  Tim Janik  <timj@gtk.org>
15720
15721         * gtk/gtkwindow.c:
15722         we use window->need_resize from configure_event now, to indicate that
15723         the gtkwindow should keep its allocation (e.g. because the user resized
15724         the window through window manager handles). resize_count is now reliably
15725         used to figure whether we got the allocation we requested from the
15726         window manager.
15727         configure events get queued as resizes now, the real stuff (size
15728         computation and allocation) now only goes on in gtk_window_move_resize().
15729         GtkWindow's requisition now contains its *real* requisition (like all
15730         other widgets), *not* taking usize into account.
15731         geometry_info->last_{width|height} is now updated from set_hints() only
15732         so it always contains the last hints we set for the window manager.
15733         made some event handlers return TRUE instead of FALSE.
15734         the overall code should be much more straight forward now, and the
15735         significant code portions are accompanied by comments now.
15736         (gtk_window_set_hints):
15737         removed requisition argument and made it
15738         fetch the requisition through gtk_widget_get_child_requisition.
15739         we also don't move the gdkwindow here anymore, gtk_window_move_resize()
15740         does that now.
15741         (gtk_window_show):
15742         ensure that the widget is realized before calling 
15743         gtk_container_check_resize() (and thus gtk_window_move_resize()), also
15744         ensure that we got properly size requested and allocated before
15745         realization.
15746         (gtk_window_configure_event):
15747         ignore plain window moves, or reallocate the widget tree through the
15748         resize queue otherwise.
15749         (gtk_window_move_resize):
15750         mostly rewrote this function to figure window manager hints more
15751         reliably, coalesce window moves and resizes to reduce configure events
15752         and do actuall size allocations.
15753
15754 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
15755
15756         * gtk/gtkwidget.c (gtk_widget_event): discard expose events for widgets
15757         that have a resize pending, because a redraw is already queued for them.
15758
15759         * gtk/gtkcontainer.c: removed ugly connect_to ::size_allocate signal
15760         hack to clear resize_widgets.
15761
15762         * gtk/gtkwidget.c (gtk_widget_size_allocate): call clear_resize_widgets
15763         for resize containers prior to size allocation. (this is also a bit
15764         ugly, but avoids side effects for stopped emissions and is thus more
15765         reliable).
15766         (gtk_widget_unparent): removed disconnect call for clear_resize_widgets.
15767
15768         * gtk/gtktooltips.c (gtk_tooltips_paint_window): renamed this
15769         function from gtk_tooltips_expose, as we connect to ::expose_event
15770         *and* ::draw now.
15771
15772 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
15773
15774         * gtk/gtkselection.c (gtk_target_list_ref): Added missing sanity
15775         checks.
15776         (gtk_target_list_unref): Likewise.
15777
15778         * gtk/gtkthemes.c (gtk_theme_engine_unref): Likewise.
15779
15780 Tue Aug 17 15:47:07 1999  Owen Taylor  <otaylor@redhat.com>
15781
15782         * gtk/gtkcolorsel.c (gtk_color_selection_draw_value_bar):
15783         guard against division by zero. (Fixes bug #1339)
15784
15785 Tue Aug 17 10:56:49 1999  Owen Taylor  <otaylor@redhat.com>
15786
15787         * gtk/gtkentry.c (gtk_move_{forward,backward}_word): 
15788         Prevent the trivial leak of information of allowing
15789         word motion when the entry is not visible.
15790
15791 Tue Aug 17 10:28:52 1999  Owen Taylor  <otaylor@redhat.com>
15792
15793         * gtk/gtkfilesel.c (gtk_file_selection_fileop_error): Propagate
15794         modality to error dialog as well as confirmation dialogs.
15795         (Bug #1803, reported by Rosanna Wing Sze Yuen)
15796
15797 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
15798
15799         * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): Honor
15800         tree->view_lines.
15801         (gtk-guy-990611-3.patch: Guy Harris <guy@netapp.com>)
15802
15803         * gtk/Makefile.am (install-data-local): Solaris apparently
15804         has various troubles with ln -f; use rm first instead.
15805         (gtk-guy-990611-2.patch: Guy Harris <guy@netapp.com>)
15806
15807 1999-07-30  Raja R Harinath  <harinath@cs.umn.edu>
15808
15809         * gtk/Makefile.am (stamp-m): Don't `mv' from builddir to srcdir,
15810         use `cp' followed by `rm' (the `rm' was already there).
15811
15812 July 30, 1999 Elliot Lee <sopwith@redhat.com>
15813         
15814         * configure.in: Fix autoconf warnings about cross compilation by
15815         trying to provide sane defaults for AC_TRY_RUN.
15816         * gtk/Makefile.am: If we refer to gtkmarshal.[ch] in $(srcdir),
15817         put them into $(srcdir) when generated. Also add a dependency of
15818         gtksignal.h on gtkmarshal.h for -j builds. 
15819         * gtk/gtk(dnd,style,gamma).c: Minor warning fixes.
15820
15821 Wed Jul 28 09:29:19 1999  Owen Taylor  <otaylor@redhat.com>
15822
15823         * gtk/gtkmain.c (gtk_main_iteration_do): Added missing
15824         GDK_THREADS_{LEAVE,ENTER} pair.
15825         (From Paul Fisher <pnfisher@redhat.com>)
15826
15827 Fri Jul 23 01:00:15 1999  Tim Janik  <timj@gtk.org>
15828
15829         * gtk/gtksocket.c (gtk_socket_size_request): asure that the requested
15830         width and height are always >0 (owen).
15831
15832 Fri Jul 23 00:00:47 1999  Tim Janik  <timj@gtk.org>
15833
15834         * gtk/gtkwidget.c (gtk_widget_size_allocate): backed out my recent
15835         change that assured that a widget's allocated with and height are
15836         always >1, since this breaks *buggy* panel code. unfortunately this
15837         back-breaks the gimp's color selector.
15838
15839         * gtk/gtkdrawingarea.c (gtk_drawing_area_size_allocate): asure that our
15840         allocation is always >0 in width and height, before sending the
15841         configure event; this is a *gross* hack to get the gimp back to work.
15842         
15843         * marked both cases with TODO-1.3
15844
15845 Wed Jul 21 15:47:39 1999  Owen Taylor  <otaylor@redhat.com>
15846
15847         * gtk/gtktext.c: Don't display wrap indicators when
15848         text is not editable and word wrap is on.
15849
15850 Wed Jul 21 08:21:40 1999  Tim Janik  <timj@gtk.org>
15851
15852         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): special case
15853         option menus here as they are not derived from menu shell, assure that
15854         the option menu has a menu we can add items to.
15855
15856 Tue Jul 20 23:29:48 1999  Tim Janik  <timj@gtk.org>
15857
15858         * gtk/gtknotebook.c (gtk_notebook_page_allocate): convert allocation->
15859         width/height to (gint) before calculations and check against < 0 to
15860         avoid guint wraparounds.
15861
15862 Sun Jul 18 00:35:49 1999  Tim Janik  <timj@gtk.org>
15863
15864         * gtk/gtkwidget.c (gtk_widget_size_allocate): ensure that the allocated
15865         width and height is never zero. sanity check both dimensions against
15866         32767 and issue a warning if the allocation is greater than that.
15867
15868 Wed Jul  7 15:03:30 1999  Owen Taylor  <otaylor@redhat.com>
15869
15870         * gtk/gtkmain.c (gtk_events_pending): Unlock around call
15871         to g_main_pending() as well.
15872
15873 Wed Jul  7 14:59:01 1999  Owen Taylor  <otaylor@redhat.com>
15874
15875         * gtk/gtkmain.c (gtk_main_iteration): Unlock around
15876         call to g_main_iteration() - since that will regrab
15877         GTK+ lock to process events.
15878
15879 Thu Jul  1 15:01:55 1999  Owen Taylor  <otaylor@redhat.com>
15880
15881         * gtk/gtkwindow.c
15882         - Regularize with the rest of GTK+ by making widget->requisition
15883           not reflect the set_usize()
15884         - Always recompute geometry hints, then check if they
15885           changed before sending them to the X server. The
15886           previous checks for changes would fail in a number
15887           of circumstances. 
15888
15889 Thu Jul  1 11:55:59 1999  Owen Taylor  <otaylor@redhat.com>
15890
15891         * gtk/gtkstyle.c: Include <stdlib.h> for strcmp().
15892
15893 Wed Jun 30 19:26:36 1999  Owen Taylor  <otaylor@redhat.com>
15894
15895         * gtk/gtkdnd.c:
15896         - Code cleanups
15897         - Instantaneously update on modifier key presses
15898         - Allow cancellation of the drag with Escape.
15899
15900 Tue Jun 29 17:04:09 1999  Owen Taylor  <otaylor@redhat.com>
15901
15902         * gtk/testgtk.c (create_handle_box): Set the policy
15903         to auto_shrink - otherwise the appearance is rather
15904         strange when flipping between horizontal and vertical.
15905
15906 Mon Jun 28 09:29:52 1999  Tim Janik  <timj@gtk.org>
15907
15908         * gtk/gtkwindow.c: add ::default_width and ::default_height arguments.
15909         (gtk_window_set_default_size): don't change a value if it's < 0.
15910         queue a resize.
15911
15912 Sun Jun 27 11:00:33 1999  Tim Janik  <timj@gtk.org>
15913
15914         * gtk/gtktext.c (gtk_text_insert): don't segfault on NULL inserts.
15915
15916 Mon Jun 28 12:08:25 1999  Owen Taylor  <otaylor@redhat.com>
15917
15918         * gtk/gtkfilesel.c (cmpl_completion_fullname): Don't
15919         add an extra "/" when concating "/" + filename.
15920         (From Matt Grossman <mattg@oz.net>)
15921
15922 Mon Jun 28 10:57:12 1999  Owen Taylor  <otaylor@redhat.com>
15923
15924         * gtk/gtkctree.c (draw_cell_pixmap): Reset clip mask
15925         for fg_gc if we set it for drawing pixmap.
15926
15927 Tue Jun 15 12:45:12 1999  Owen Taylor  <otaylor@redhat.com>
15928
15929         Fixes from Peter Wainwright <prw@wainpr.demon.co.uk>
15930         
15931         * gtk/gtkrc.c (gtk_rc_parse_engine): If rc_style->engine is
15932         already set, call old engine's destroy function and
15933         unref the old engine.
15934
15935 Thu Jun 10 17:59:38 1999  Tim Janik  <timj@gtk.org>
15936
15937         * gtk/gtkdrawingarea.c (gtk_drawing_area_size): queue a resize.
15938
15939 Wed Jun  9 15:13:16 1999  Tim Janik  <timj@gtk.org>
15940
15941         * gtk/gtkaccelgroup.h: mark certain functions as internal.
15942
15943 Wed Jun  9 13:48:28 1999  Tim Janik  <timj@gtk.org>
15944
15945         * gtk/gtkpreview.c (gtk_preview_set_expand): queue a resize if the
15946         expand behaviour changed.
15947
15948         * gtk/gtklabel.c (gtk_label_set_pattern):
15949         (gtk_label_set_justify):
15950         (gtk_label_set_line_wrap):
15951         don't bother invoking queue_clear, the reallocation does
15952         that for us, always free_words so the upcoming resize will
15953         relayout the label's contents.
15954
15955 Wed Jun  9 12:50:48 1999  Tim Janik  <timj@gtk.org>
15956
15957         * applied argument implementation patches from Elena Devdariani
15958         <elena@cogent.ca>.
15959
15960         * gtk/gtktoolbar.c: ::orientation, ::toolbar_style, ::space_size,
15961         ::space_style, ::relief
15962         * gtk/gtkruler.c: ::lower, ::upper, ::position, ::max_size
15963         * gtk/gtkpreview.c: ::expand
15964         * gtk/gtkpaned.c: ::handle_size, ::gutter_size
15965         * gtk/gtknotebook.c: ::homogeneous
15966         * gtk/gtklabel.c: ::wrap
15967         * gtk/gtklist.c: ::selection_mode
15968         * gtk/gtkhandlebox.c: ::handle_position, ::snap_edge
15969         * gtk/gtkcurve.c: ::curve_type, ::min_x, ::max_x, ::min_y, ::max_y
15970         * gtk/gtkcolorsel.c: ::update_policy, ::use_opacity
15971         * gtk/gtkclist.c: ::sort_type
15972         * gtk/gtkcheckmenuitem.c: ::active, ::show_toggle
15973         * gtk/gtkaspectframe.c: ::xalign, ::yalign, ::ratio, ::obey_child
15974
15975 Tue Jun  1 23:38:38 1999  Owen Taylor  <otaylor@redhat.com>
15976
15977         * gtk/gtkstyle.c: Removed ill-thought-out part of last
15978         comment.
15979
15980 Tue Jun  1 23:30:09 1999  Owen Taylor  <otaylor@redhat.com>
15981
15982         * gtk/gtkstyle.c (gtk_style_attach): Get the reference
15983         counting right when we have to attach a new style
15984         for a different visual. (Chi-Deok Hwang <cdhwang@sr.hei.co.kr>)
15985
15986         * gtk/gtkstyle.c: Documented the refcounting
15987         peculularities of gtk_style_attach.
15988
15989 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
15990
15991         * gtk/gtkwindow.c (gtk_window_new): added return if fail for invalid
15992         window types.
15993
15994         * examples/packer/pack.c (main): use GTK_WINDOW_TOPLEVEL instead
15995         of GTK_TOPLEVEL for creating the window.
15996
15997 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
15998
15999         * gtk/gtkmain.c (gtk_init_check): don't segfault when --gtk-module is
16000         the last argument (reported by Per Winkvist).
16001         
16002 Tue May 25 13:13:12 1999  Owen Taylor  <otaylor@redhat.com>
16003
16004         Fixes for invisible XOR lines (Frank Loemker
16005         <floemker@TechFak.Uni-Bielefeld.DE>)
16006         
16007         * gtk/gtkclist.c (gtk_clist_realize): Always use
16008         a non-zero pixel for GDK_XOR.
16009
16010         * gtk/gtkvpaned.c gtk/gtkhpaned.c: 
16011         Use GDK_INVERT instead of GDK_XOR.
16012
16013 Wed May 12 21:56:40 1999  Lars Hamann  <lars@gtk.org>
16014
16015         * gtk/gtkclist.c (adjust_adjustments): signal emit value_changed
16016         signals if h/voffsets differ from adjustment values.
16017         Reportet by Jerome Bolliet <bolliet@in2p3.fr>
16018
16019 Mon May 10 04:20:41 1999  Tim Janik  <timj@gtk.org>
16020
16021         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): propagate
16022         ::selection-done emissions up to the topmost menu shell.
16023
16024 Fri May  7 10:15:14 1999  Owen Taylor  <otaylor@redhat.com>
16025
16026         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): Unset
16027         the user data on the window before destroying it.
16028
16029         * gtk/gtknotebook.c (gtk_notebook_unrealize): Add an
16030         unrealize handler to take care of destroying 
16031         notebook->panel properly. 
16032         (Bug #1198 - Morten Welinder <terra@diku.dk>)
16033
16034         * gtk/gtktext.c (expand_scratch_buffer): Fix reversal
16035         of g_new and g_realloc to stop memory leak. (Actually,
16036         we could just use g_realloc(), but I'm not 100% sure
16037         that is portable).
16038         (Bug #1196 - Morten Welinder <terra@diku.dk>)
16039
16040 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
16041
16042         * gtk/gtkplug.h: Removed stray GtkPlugButton declaration.
16043
16044         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
16045         for fontsets.
16046
16047         * gtk/gtkbutton.c (gtkbutton_expose): Fix warning
16048         with bin/button confusion.
16049
16050 Thu May  6 04:53:26 1999  Tim Janik  <timj@gtk.org>
16051
16052         * gtk/testgtk.c: in the ItemFactory test, link radio items together,
16053         and show how preselection of radio items is done.
16054
16055 Sun May  2 13:31:14 1999  Tim Janik  <timj@gtk.org>
16056
16057         * gtk/gtktreeitem.c (gtk_tree_item_set_subtree): 
16058         * gtk/gtktree.c (gtk_tree_add) (gtk_tree_insert):
16059         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): 
16060         * gtk/gtkpaned.c (gtk_paned_pack2) (gtk_paned_pack1):
16061         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_add): 
16062         * gtk/gtktable.c (gtk_table_attach): 
16063         * gtk/gtklist.c (gtk_list_insert_items): 
16064         * gtk/gtkmenushell.c (gtk_menu_shell_insert): 
16065         * gtk/gtknotebook.c (gtk_notebook_insert_page_menu): 
16066         * gtk/gtkpacker.c (gtk_packer_add_defaults) (gtk_packer_add): 
16067         * gtk/gtkbin.c (gtk_bin_add): 
16068         * gtk/gtkbox.c (gtk_box_pack_start) (gtk_box_pack_end): 
16069         * gtk/gtkfixed.c (gtk_fixed_put): 
16070         * gtk/gtklayout.c (gtk_layout_put):
16071         general fixups to container_add logic. always realize child if
16072         child->parent is realized, only map the child and queue a resize
16073         if child and child->parent are both visible.
16074
16075 Fri Apr 30 09:02:28 1999  Tim Janik  <timj@gtk.org>
16076
16077         * gtk/gtkwidget.c (gtk_widget_real_unrealize): use gtk_container_forall
16078         instead of gtk_container_foreach to walk and unrealize children, so
16079         composite children get also unrealized.
16080         (gtk_widget_real_show): don't call gtk_widget_map() if we don't need to.
16081         (gtk_widget_map): assert that the widget is visible (basic constrain).
16082         (gtk_widget_real_map): assert that the widget is realized (basic
16083         constrain).
16084
16085 Fri Apr 29 00:53:20 1999  Tim Janik  <timj@gtk.org>
16086
16087         * gtk/gtkbindings.c (gtk_pattern_spec_init): plugged a memory leak.
16088
16089 Tue May  4 09:32:08 1999  Owen Taylor  <otaylor@redhat.com>
16090
16091         * gtk/Makefile.am gtk/gtkrc.iso-8859-2: Add a gtkrc
16092         file for iso-8859-2 locales.
16093
16094         * configure.in (ALL_LINGUAS): ALL_LINGUAS update.
16095
16096 Tue Apr 27 16:38:32 1999  Owen Taylor  <otaylor@redhat.com>
16097
16098         * gtk/Makefile.am: Fix typo of static_sources for static_SOURCES.
16099          (Pointed out by andy@rz.uni-karlsruhe.de and others).
16100          Remove some suspicious and useless lines. 
16101
16102 Tue May  4 08:44:08 1999  Owen Taylor  <otaylor@redhat.com>
16103
16104         * gtk/gtkclist.c (gtk_clist_draw, draw_rows): Use 
16105         width,height = 0, 0 to mean - here to edge of window,
16106         instead of -1, -1, since the former is all we support.
16107
16108 Tue May  4 08:34:43 1999  Owen Taylor  <otaylor@redhat.com>
16109
16110         * gtk/gtkmain.c (gtk_main): Correctly free list nodes
16111         when removing from quit_functions list.
16112
16113 Tue Apr 27 14:17:16 1999  Tim Janik  <timj@gtk.org>
16114
16115         * gtk/gtkpacker.c (gtk_packer_size_request): remove unused variable.
16116
16117 Tue Apr 27 18:23:35 1999  Owen Taylor  <otaylor@redhat.com>
16118
16119         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): 
16120          When redrawing characters on non-visible entry, use appropriate
16121          '*' character. (Bug #1130 - Jean-Marc Jacquet <jm@littleigloo.org>)
16122
16123 Tue Apr 27 01:31:40 1999  Lars Hamann  <lars@gtk.org>
16124
16125         * gtk/gtkclist.c (drag_dest_cell): compute destination cell
16126         from drag coordinates.
16127         (gtk_clist_drag_data_received) (gtk_clist_drag_motion):
16128         use drag_dest_cell.
16129
16130         * gtk/gtktree (drag_dest_cell)
16131         (gtk_ctree_drag_data_received) (gtk_ctree_drag_motion): likewise.
16132         (Bug #1129)
16133
16134 Wed Apr 21 21:26:11 1999  Tim Janik  <timj@gtk.org>
16135
16136         * gtk/gtkitemfactory.c (gtk_item_factory_init): properly initialize
16137         translate_* fields.
16138         (gtk_item_factory_finalize): invoke translate_notify independant from
16139         translate_data.
16140         (gtk_item_factory_set_translate_func): likewise.
16141         (gtk_item_factory_destroy): only remove ifactory pointer from those
16142         widgets that belong to us (stupid me).
16143
16144 Mon Apr 19 12:05:31 1999  Owen Taylor  <otaylor@redhat.com>
16145
16146         * gtk/gtkrc.c (gtk_rc_style_init): Fixed leak of
16147         rc_style list when lookup succeeeds.
16148
16149 Thu Apr 15 01:11:24 1999  Lars Hamann  <lars@gtk.org>
16150
16151         * gtk/gtkctree.c (resync_selection): 
16152         * gtk/gtkclist.c (resync_selection): fixed undo_selection bug.
16153         * gtk/gtkclist.c (gtk_clist_button_release): fixed resync_selection
16154         bug.
16155
16156 Fri Apr  9 19:22:19 1999  Owen Taylor  <otaylor@redhat.com>
16157
16158         * gtk/gtkcolorsel.c gtk/gtkdnd.c gtk/gtkmenuitem.c:
16159         Add some missing GDK_THREADS_ENTER()/LEAVE around
16160         timeouts. (Patches from Sebastian Wilhelmi <wilhelmi@ira.uka.de>)
16161
16162 Thu Apr  8 20:10:33 1999  Tim Janik  <timj@gtk.org>
16163
16164         * gtk/gtkentry.c (gtk_entry_key_press): use gtk_widget_activate()
16165         rather than emit_by_name.
16166
16167         * gtk/gtkeditable.c (gtk_editable_insert_text): keep a reference
16168         on the widget across multiple signal emissions.
16169         (gtk_editable_delete_text): same here.
16170         (gtk_editable_class_init): set widget_class->activate_signal after
16171         editable_signals[ACTIVATE] has been created.
16172
16173 Wed Apr  7 22:59:47 1999  Owen Taylor  <otaylor@redhat.com>
16174
16175         * gtk/gtkpaned.c (gtk_paned_set_position): Don't clamp
16176         position here prematurely -- we might not have the
16177         right ->min_position and ->max_position yet.
16178
16179 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
16180
16181         * gtk/gtkselection.c gdk/gdkselection.c: (gtk_selection_request):
16182         Add error traps so if the other end of the connection
16183         dies, we survive.
16184
16185         * gtk/gtkselection.c (gtk_selection_notify): Clean
16186         up properly when selection property retrieval fails.
16187         
16188         * gtk/gtkselection.c (gtk_selection_request): Correctly
16189         reject SelectionRequest notifies where the handler
16190         returns no data.
16191
16192 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
16193
16194         * gtk/gtkdnd.c (gtk_drag_dest_leave): Only unhighlight
16195         when we've previously highlighted.
16196
16197         * gtk/gtkdnd.c (gtk_drag_dest_handle_event): Don't
16198         emit two "drag_leave" signals for Motif drops.
16199
16200         * gtk/gtkdnd.c (gtk_drag_source_handle_event): Send
16201         back the correct status messages when dropping from
16202         Motif onto a proxy window that is rejecting the
16203         drop.
16204
16205 Sat Mar 27 23:32:13 1999  Tim Janik  <timj@gtk.org>
16206
16207         * gtk/gtkarg.[hc]: added functions from GLE, gtk_arg_reset() to free
16208         the value and reset type to GTK_TYPE_INVALID, and gtk_arg_values_equal()
16209         to compare two argument values. added gtk_arg_to_valueloc() to set a
16210         variable from an arg through its location (pointer).
16211
16212         * gtk/gtkobject.[hc]: implemented gtk_object_get() in terms of
16213         gtk_object_arg_get() and gtk_arg_to_valueloc(), floats are collected
16214         as gfloat*, uchars are collected as guchar*, ints are collected as
16215         gint*, etc...
16216
16217 Mon Mar 29 17:45:47 1999  Owen Taylor  <otaylor@redhat.com>
16218
16219         * gtk/gtkaccelgroup.c gtk/gtkgtkbindings.c:
16220         Include <string.h> instead of <strings.h>.
16221
16222         * gtk/gtkstyle.c: Fix double include of gtkthemes.h
16223         (actually, a lot more duplicate includes occur if
16224          you trace through the sequence of #include's)
16225         gtk-jbb-990320-0: John Bley, jbb6@acpub.duke.edu
16226         
16227 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
16228
16229         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
16230         gtk-a-higuti-990322-[0-3]
16231
16232         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
16233         that was causing -DX_LOCALE not to work.
16234
16235         * gtk/gtkrc.c (gtk_rc_init):
16236         X_LOCALE will never have LC_MESSAGES defined
16237
16238 Thu Mar 25 12:38:31 1999  Tim Janik  <timj@gtk.org>
16239
16240         * gtk/gtkrc.c (gtk_rc_append_default_module_path): get $HOME from
16241         g_get_home_dir() (gtk-pmc-990123-0.patch.gz).
16242
16243         * gtk/gtkwindow.c (gtk_window_key_press_event): feature keypad up/down/
16244         left/right as well (gtk-michael-980726-0.patch.gz).
16245
16246         * gtk/gtklabel.[hc]: bunch of miscellaneous cleanups, such as s/0/NULL/
16247         for pointer values, use gchar instead of char. fixed uline allocation
16248         leaks, changed the allocation pattern so we use G_ALLOC_AND_FREE mem
16249         chunks instead of G_ALLOC_ONLY.
16250         (gtk_label_size_request): always alter requisition as passed and leave
16251         widget->requisition alone.
16252         (gtk_label_set_text): allow NULL strings.
16253         (gtk_label_new): likewise.
16254
16255 Wed Mar 24 09:24:03 1999  Tim Janik  <timj@gtk.org>
16256
16257         * gtk/gtkdrawingarea.[hc]: type/macro fixups.
16258
16259 Mon Mar 22 05:51:34 1999  Tim Janik  <timj@gtk.org>
16260
16261         * gtk/gtkbin.c (gtk_bin_draw): only redraw children that are visible
16262         *and* mapped (i.e. drawable).
16263         (gtk_bin_expose): only send exposes to drawable children.
16264
16265         * gtk/gtkbox.c (gtk_box_draw): only redraw children that are drawable.
16266         (gtk_box_expose): only send exposes to drawable children.
16267
16268         * gtk/gtkhscale.c (gtk_hscale_draw): 
16269         * gtk/gtkvscale.c (gtk_vscale_draw):
16270         hm, this is an ugly one. we first compute the size of our trough area
16271         here (window relative) and then check intersection with the draw_area
16272         which is parent relative because we're a NO_WINDOW widget, so we need
16273         to offset the trough area by allocation.x and allocation.y before the
16274         check. (this must not be done for the background area though, since
16275         that's already computed parent relative).
16276
16277 Mon Mar 22 00:41:39 1999  Lars Hamann  <lars@gtk.org>
16278
16279         * gtk/gtkclist.c (gtk_clist_unrealize): unmap clist if neccessary,
16280         unrealize title buttons.
16281
16282 Fri Mar 19 00:00:22 1999  Lars Hamann  <lars@gtk.org>
16283
16284         * gtk/gtkclist.c (gtk_clist_column_title_passive)
16285         (gtk_clist_column_title_active): 
16286         only connect/disconnect to GtkWidgetClass::event to block mouse events.
16287
16288         * gtk/gtkclist.c (vertical_timeout) (horizontal_timeout): 
16289         zero initialize event, removed superfluous gdk_window_get_pointer call
16290
16291         * gtk/gtklist.c (gtk_list_vertical_timeout)
16292         (gtk_list_horizontal_timeout): removed superfluous
16293         gdk_window_get_pointer call
16294
16295 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
16296
16297         * plugging problems reported by "Bruce Mitchener, Jr."
16298         <bruce@puremagic.com> due to a purify session.
16299
16300         * gtk/gtkstyle.c:
16301         (gtk_style_ref): 
16302         (gtk_style_unref): assert ref_count to be > 0.
16303
16304         * gtk/gtkclist.c (gtk_clist_set_cell_style): { 0 } initilaize
16305         the requisition.
16306         (gtk_clist_set_shift): likewise.
16307
16308         * gtk/gtklayout.c: introduce gtk_layout_finalize() to unref the
16309         adjustments.
16310
16311         * gtk/gtklist.c (gtk_list_horizontal_timeout): zero initialize the
16312         event before sending it and set send_event to TRUE (which needs to
16313         be done for *all* synthesized events).
16314         (gtk_list_vertical_timeout): likewise.
16315
16316         * gtk/gtktipsquery.c (gtk_tips_query_destroy): plug small memory
16317         leaks.
16318
16319         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set send_event
16320         to TRUE when synthesizing events.
16321
16322 [ *** end of merges from 1.2 *** ]      
16323         
16324 1999-11-21  Tor Lillqvist  <tml@iki.fi>
16325
16326         * gdk/gdkconfig.h: Remove, as this is a file generated by configure
16327         (or copied from gdkconfig.h.win32 on Win32, sigh).
16328
16329         * gdk/gdkprivate.h: Mark gdk_parent_root for export from DLL.
16330
16331         * gdk/gdk.c (gdk_keyval_convert_case): Fix typo.
16332
16333         * gdk/gdkgc.c (gdk_gc_alloc): Remove duplicated line.
16334
16335         * gdk/gdkconfig.h.win32: New file.
16336
16337         * gdk/win32/makefile.cygwin: Build just a static archive here.
16338
16339         * gdk/makefile.cygwin: New file. Get the win32-specific stuff
16340         for the DLL from the static archive built above.
16341
16342         * gdk/gdk.def: Moved here from the win32 subdirectory.
16343
16344         * gdk/win32/*: Adapt for the changed private struct organisation.
16345
16346         * gtk/makefile.{cygwin,msc}: Get gdk library from ../gdk now.
16347
16348 Sun Nov 21 16:44:35 1999  Stefan Jeske  <stefan@gtk.org>
16349
16350         * gtk/gtkspinbutton.c (gtk_spin_button_button_press): Added support 
16351         for wheel mice (buttons 4 and 5).
16352
16353 1999-11-18  Tor Lillqvist  <tml@iki.fi>
16354
16355         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Also for truecolor
16356         drawables use just the pixel field in the foreground and
16357         background GdkColor of the GdkGC.
16358
16359         gdk_gc_set_{fore,back}ground() are called in the GIMP with
16360         GdkColors containing uninitialized (red,green,blue) fields, and
16361         just the pixel field filled in, and furthermore in the
16362         visual-dependent format as returned by gdk_rgb_xpixel_from_rgb().
16363         It thus turns out that we really don't need to have the full
16364         GdkColor for fg and bg in GdkGCWin32Data after all. Will change
16365         it later to have just the pixel values.
16366
16367 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
16368
16369         * docs/gtkfaq.sgml: s/gtk_main_iteration/g_main_iteration/
16370
16371 Sat Nov 13 22:30:29 GMT 1999 Tony Gale  <gale@gtk.org>
16372
16373         * docs/gtkfaq.sgml: threads example from Erik Mouw.
16374         New question on GtkLabel background colors.
16375
16376         * docs/gtk_tut.sgml:
16377           - Correct the example code callback
16378             function definitions.
16379           - Update the gtkdial example code, from Frans van Schaik.
16380           - Update setselection.c to current API.
16381
16382         * examples/Makefile examples/*/*.c: Update to code
16383         listed in tutorial.
16384
16385 1999-11-10  Tor Lillqvist  <tml@iki.fi>
16386
16387         * gdk/win32/gdkfont-win32.c: Fix a couple of bugs. The Unicode
16388         subrange table (from the "Developing International Software for
16389         WIndows 95 and Windows NT" book) was missing the Hangul syllable
16390         block... Get the loaded font's charset correctly.
16391
16392         (Note that this, and the other *-win32.c files, still really are
16393         the old ones, the win32 subdirectory is not ready for compilation
16394         yet after the reorg.)
16395
16396 Wed Nov 10 17:26:49 GMT 1999 Tony Gale  <gale@gtk.org>
16397
16398         * gtk/gtkclist.c: Fix off-by-one bug in parameter
16399         check.
16400
16401 Wed Nov 10 12:12:03 1999  Owen Taylor  <otaylor@redhat.com>
16402
16403         * gdk/x11/gdkinput-{x11,xfree}.c: Call XFreeDeviceState()
16404         on results of XQueryDeviceState().
16405
16406 Mon Nov  8 16:40:43 1999  Owen Taylor  <otaylor@redhat.com>
16407
16408         * gtk/gtkwidget.c: Substitute gdkx.h => gdkprivate.h since
16409         we need to accesss only ->children. We need an accessor
16410         for the children.
16411
16412         * gtk/gtkhandlebox.c gtk/testgtk.c: Substitute G
16413         DK_ROOT_PARENT() => NULL, in call to gtk_window_get_pointer()
16414         to get rid of gdkx.h include.
16415         
16416         * gtk/gtkctree.c: Get rid of #include <gdk/gdkx.h>
16417         and random references to 'None'.
16418
16419         * gtk/gtkclist.c gtk/gtkeditable.c gtk/gtkpreview.c
16420         Get rid of unused #include <gdk/gdkx.h>
16421
16422         * gtk/gtkrc.c gtk/gtkmain.c: Get rid of #include <gdk/gdkx.h>
16423         gdkx.h is _X_ specific stuff. GDK_WINDOWING comes from
16424         gdkconfig.h.
16425
16426 1999-11-08  Tor Lillqvist  <tml@iki.fi>
16427
16428         * gdk/win32/gdkdraw.c
16429         * gdk/win32/gdkfont.c
16430         * gdk/win32/gdkgc.c: Various minor cleanups and bugfixes
16431         following yesterday's changes. (Unrelated to Owen's reorg.)
16432
16433 Mon Nov  8 16:18:25 1999  Owen Taylor  <otaylor@redhat.com>
16434
16435         * gdk/x11/gdkinput-gxi.c: Add missing include,
16436           fix GdkWindowPrivate => GdkDrawablePrivate.
16437
16438         * gdk/x11/gdkinputprivate.h: include <X11/Xlib.h>.
16439
16440         * gdk/x11/Makefile.am (xinput_sources): Add missing
16441         backslash to fix building with --with-xinput=none
16442
16443 Mon Nov  8 14:47:04 1999  Owen Taylor  <otaylor@redhat.com>
16444
16445         Move all X specific code into the x11/ directory.
16446         Aside from shuffling things around, did the following:
16447
16448        * gdk/gdkprivate.h gdk/gdk.h gdk/x11/gdkmain-x11.h: Add
16449          gdk_arg_context_* - a simple argument parsing system
16450          in the style of popt.
16451
16452        * gdk/gdkdrawable.[ch] gdk/gdkprivate.h gdk/gdkwindow.[ch]
16453          gdk/x11/gdkprivate-x11.h:
16454          Remove X specific stuff from GdkDrawable and GdkWindowPrivate - 
16455          add ->klass and ->klass_data fields. The klass_data
16456          field points to an auxilliary structure that is
16457          windowing system dependent.
16458
16459        * gdk/gdkfont.c: Make most of the measurement functions
16460          simply wrappers around gdk_text_extents().
16461
16462        * gdk/gdkfont.c gdk/gdkprivate.h gdk/x11/gdkfont-x11.c: Add a 
16463          _gdk_font_strlen() function that hides the weird
16464          behavior in gtk+-1.[02] where a string is interpreted
16465          differently for 8-bit and 16-bit fonts.
16466
16467        * gdk/gdkevents.c: Add a new function gdk_event_button_generate()
16468          to store common code for synthesizing double/triple
16469          press events.
16470         
16471        * gdk/gdkgc.[ch]: Virtualize in the same way as gdkdrawable.h.
16472          Make all the function that modify an existing GC
16473          simply wrappers around gdk_gc_set_values().
16474          
16475        * gdk/gdkcc.[ch]: Moved into x11/ directory in preparation
16476          for throwing out later.
16477
16478        * gdk/gdkfont.c gdk/gdkimage.c gdk/gdkcolor.c: Change GdkFontPrivate,
16479          GdkImagePrivate and GdkColormapPrivate to have a
16480          windowing system dependent part (GdkFontPrivateX etc.)
16481          that "derives" from the system-independent part.
16482
16483        * configure.in gdk/x11/Makefile.in gdk/x11/gdkinput*.c:
16484          Got rid of the included-source-files for XInput in
16485          favor of automake conditionals. (Which didn't exist
16486          when XInput support was originally added.)
16487
16488        * gdk/gdkrgb.c: Remove the visual id from the debugging
16489          statements since that is X11 specific; print out
16490          type/depth info instead.
16491          
16492
16493 Wed Nov  3 18:14:49 1999  Owen Taylor  <otaylor@redhat.com>
16494
16495         * gdk/x11/gdkfont-x11.c (gdk_font_load): Ref fonts when
16496         loading duplicates of hashed fonts.
16497
16498         * gdk/gdk.c (gdk_keysym_convert_case): rename
16499         gdk_XConvertCase to gdk_keysym_convert_case, allow
16500         results to be NULL in the GTK+ style.
16501
16502         * gdk/gdkcompat.h: Started compatibility header
16503         for renames.
16504
16505 1999-11-07  Tor Lillqvist  <tml@iki.fi>
16506
16507         * gdk/win32/gdkprivate.h: New font private structures, related to
16508         fontsets.
16509
16510         * gdk/win32/gdkfont.c: New functions gdk_font_list_new() and
16511         gdk_font_list_free(). On X11, will just be wrappers to
16512         XListFonts() and XFreeFontNames(). On Win32, the code previously
16513         in gtkfontsel.c is now here.
16514
16515         New function gdk_font_xlfd_create(). On X11 will get the FONT
16516         property of the font (for GDK_FONT_FONTs), or call
16517         XBaseFontNameListOfFontSet (for GDK_FONT_FONTSETs), on Win32
16518         builds a XLFD style name from the font information in the LOGFONT
16519         struct(s).
16520
16521         New function gdk_font_xlfd_free(), which correspondingly frees the
16522         string returned by gdk_font_xlfd_create().
16523
16524         Implement fontsets on Win32. Add a function that iterates over a
16525         wide char string and calls a callback function for each substring
16526         of wide chars from the same Unicode subrange (and thus probably
16527         available in the same real font).
16528
16529         Improve the XLFD emulation a bit.
16530
16531         * gdk/win32/gdkim.c (gdk_nmbstowchar_ts): Small bugfix.
16532
16533         * gdk/win32/gdkevents.c: Workaround for suspected bug on Win2k
16534         Beta3, WM_IME_CHAR messages don't seem to contain the composed
16535         multi-byte char as with the Active IMM on Win9x. Oh well, handle
16536         WM_IME_COMPOSITION with GCS_RESULTSTR instead, use
16537         ImmGetCompositionStringW() to get the composed Unicode chars.
16538
16539         * gdk/win32/gdkgc.c
16540         * gdk/win32/gdkdraw.c: Changes needed because of the font private
16541         struct changes.
16542
16543         * gdk/win32/gdk.def: Add the new functions.
16544
16545 1999-11-04  Tor Lillqvist  <tml@iki.fi>
16546
16547         * config.h.win32: Don't define HAVE_DIMM_H if MSC, as you have to
16548         get the Platform SDK to get <dimm.h>.
16549
16550         * gdk/win32/gdkevents.c: More event handling fixes and
16551         simplification. Never generate motion events with is_hint true. We
16552         used to do that on bogus grounds earlier. Windows sends
16553         WM_MOUSEMOVE messages on button events even if the mouse hasn't
16554         moved, ignore these.
16555
16556         * gdk/win32/gdkfont.c: Load all fonts as (pretended) fontsets.
16557
16558         * gdk/win32/gdkglobals.c
16559         * gdk/win32/gdkprivate.h: Define a typedef for the pointer to
16560         the TrackMouseEvent function, and use it.
16561
16562         * gdk/win32/gdkwindow.c: Terminate widechar string with a zero
16563         char before calling WideCharToMultiByte in order to get a string
16564         for the window title.
16565
16566         * gdk/win32/gdkdnd.c: Some more random hacking, ifdeffed out.
16567
16568         * gdk/win32/gdk.def: Remove obsolete functions.
16569
16570         * gdk/win32/makefile.{cygwin,msc}: Remove gdkcompat.{o,obj}. Add
16571         /nodefaultlib and /defaultlib switches.
16572
16573         * gtk/gtkrc.c: s/gwin_getlocale/g_win32_getlocale/.
16574
16575 1999-10-31  Tor Lillqvist  <tml@iki.fi>
16576
16577         * gdk/gdkkeysyms.h: Add new keysyms from X11R6.4 (including
16578         EuroSign).
16579
16580         * gdk/gdktypes.h: Add note about wchar_t not necessarily being the
16581         same type as GdkWChar, especially on Win32.
16582
16583         * gdk/win32/*.c: Change gdk_root_parent to be a pointer.
16584
16585         * gdk/win32/*.c: Assume all strings are UTF-8. Convert to Unicode
16586         before passing to Windows GDI for drawing etc. Convert to the
16587         system default codepage before passing to Windows as window
16588         titles.
16589
16590         * gdk/win32/gdkprivate.h: Add more fields to GdkWindowPrivate to
16591         support changing input locale on the fly.
16592
16593         * gdk/win32/gdkevent.c: Support input language (keyboard locale)
16594         on-the-fly changes. Convert incoming characters from the current
16595         codepage to Unicode (and then to a UTF-8 multi-byte string) based
16596         on the current input language. Use keysym<->Unicode mapping tables
16597         and functions borrowed from xterm sources.
16598
16599         Support IMEs (Input Method Editors) for CJK languages. On non-CJK
16600         editions of Win9x, use the ActiveX-based Active IMM (Input Method
16601         Manager) if available. IMEs and the Active IMM are available under
16602         the disguise of Chinese, Korean and Japanese support for IE and
16603         Outlook Express from "Windows Update" for Win98. On Win2k, the CJK
16604         support is present in all editions (as long as you install it).
16605
16606         Call DispatchMessage from gdk_events_queue() (and thus
16607         gdk_WindowProc()), instead of duplicating the code in
16608         gdk_WindowProc().
16609
16610         Reworked the grab handling and propagation code, factored out
16611         duplicated code snippets into separate functions. Other cleanups,
16612         too.
16613
16614         * gdk/win32/surrogate-dimm.h: Provide just the bits we need from
16615         the <dimm.h> header describing the Active IMM.
16616
16617         * gdk/win32/gdkfont.c: Pretend to support fontsets, but so far
16618         just do the same as for "single" fonts.
16619
16620         * gdk/win32/gdk.c: Call CoInitialize() (COM initialisation) from
16621         gdk_init_check, and CoUninitialize() from gdk_exit_func. Handle
16622         the new keysyms from gdkkeysyms.h.
16623
16624         * gtk/gtkfontsel.c (Win32): Load the font for the preview as a
16625         fontset, so that gtkentry uses wide characters.
16626
16627         * gtk/gtkrc.c (Win32): Get the locale with gwin_getlocale(). Call
16628         GTk+'s system directory "gtk+", not "gtk".
16629
16630 Sat Oct 30 13:17:18 BST 1999 Tony Gale <gale@gtk.org>
16631
16632         * docs/gtkfaq.sgml: FAQ update
16633
16634 1999-10-21  Tor Lillqvist  <tml@iki.fi>
16635
16636         * gdk/win32/gdkprivate.h: Add more font private data.
16637
16638         * gdk/win32/gdkfont.c
16639         * gdk/win32/gdkdraw.c: Revamped handling of multi-byte charset
16640         fonts and strings. Now works much better. You still have to
16641         have a correct font selected, though. No fontset emulation yet.
16642
16643 1999-10-19  Tor Lillqvist  <tml@iki.fi>
16644
16645         * gtk/maketypes.awk: Use G_OS_WIN32.
16646
16647         * gtk/gtk.def: Add some missing entry points. Also some non-public
16648         ones, but PyGTK porter claims to need them.
16649
16650         * gtk/makefile.{cygwin,msc}: Drop some unneeded headers from the
16651         built-in type generation.
16652
16653 1999-10-14  Tor Lillqvist  <tml@iki.fi>
16654
16655         * gdk/win32/gdkdraw.c (gdk_draw_text_wc): Don't use TextOutW for
16656         GDK_FONT_FONT fonts (which is all we have for now, we don't
16657         emulate fontsets). The X11 version uses plain XDrawString in that
16658         case, too. The string passed to gdk_draw_text_wc seems to be in
16659         fact (at least, when used by gtkentry and gtktext) either in a
16660         single-byte charset, or a DBCS. Not Unicode.
16661
16662         This fixes the problem in gtkfontsel, where even if you had
16663         selected a font with a non-Latin1 charset (windows-greek, for
16664         instance), the preview still used Latin-1 glyphs.
16665
16666         * gdk/win32/gdkfont.c (gdk_text_width_wc): Similar change. Don't
16667         use GetTextExtentPoint32W, use GetTextExtentPoint32A.
16668         (gdk_font_load): Recognize the demibold etc weights, even if we
16669         don't have the corresponding constants in the headers.
16670         (gdk_font_hash_insert): Use same hash mechanism as in the X11
16671         version. Should save font resources a bit, when we don't have
16672         multiple HFONTs for the same font.
16673
16674         * gdk/win32/gdkprivate.h: Add the names field as in the X11
16675         version.
16676
16677 1999-10-11  ERDI Gergo  <cactus@cactus.rulez.org>
16678
16679         * gdk/gdk.c (gdk_beep): Modified the XBell call to use the default
16680         X values
16681
16682 1999-10-09  ERDI Gergo  <cactus@cactus.rulez.org>
16683
16684         * gtk/gtktoolbar.h, gtk/gtktoolbar.c: Added horizontal icon/text
16685         layout support (as mentioned on
16686         http://www.jcinteractive.com/gnome-ui/software/widgets/)
16687
16688 Wed Oct  6 12:46:17 PDT 1999 Manish Singh <yosh@gimp.org>
16689
16690         * gtk/fnmatch.c
16691         * gtk/gtkfilesel.c: s/G_HAVE_CYGWIN/G_WITH_CYGWIN/
16692
16693 1999-10-05  Jesus Bravo Alvarez  <jba@pobox.com>
16694
16695         * configure.in (ALL_LINGUAS): Added Galician (gl)
16696
16697 1999-10-05  Tor Lillqvist  <tml@iki.fi>
16698
16699         * gdk/win32/*.[ch]: Corresponding changes as in X11 backend.
16700
16701         * gdk/win32/gdkcompat.c: New file, actually provide an
16702         implementation for the deprecated functions. (Just temporarily.)
16703
16704         * gtk/gtkfilesel.c: Fix an #ifdef syntax botch.
16705
16706         * gtk/makefile.{cygwin,msc}: Update gdk_headers.
16707
16708         * gdk/win32/gdk.def gtk/gtk.def: Updates.
16709
16710 1999-10-05  Kjartan Maraas  <kmaraas@online.no>
16711
16712         * configure.in: Added "uk" to ALL_LINGUAS.
16713         
16714 Mon Oct  4 11:57:11 PDT 1999 Manish Singh <yosh@gimp.org>
16715
16716         * configure.in: correct checking for BeOS check
16717
16718         * gdk/gdktypes.h
16719         * gtk/fnmatch.c
16720         * gtk/gtkfilesel.c
16721         * gtk/gtkitemfactory.c
16722         * gtk/gtkmain.[ch]
16723         * gtk/gtkrc.c: use G_OS_WIN32 and G_HAVE_CYGWIN #defines
16724
16725 Mon Oct  4 16:16:53 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
16726
16727         * gtk/gtkrc.{bg,iso88591[345]}: add gtkrc files for some new charset
16728         encodings: iso-8859-13 (for Lithuanian), iso-8859-14 (used by celtic
16729         languages), iso-8859-15 (used in Estonia) and microsoft-cp1251 (used
16730         by Bulgarian). 
16731
16732 Sun Oct  3 18:13:44 1999  Owen Taylor  <otaylor@redhat.com>
16733
16734         * gtk/gtkwidget.c (gtk_reset_shapes_recurse): 
16735         Fix a reference to window_private->destroyed.   
16736
16737         * gtk/gtkplug.c (gtk_plug_realize): Fix up a direct
16738         (ugly) setting of an internal GdkWindow member to use
16739         a _slightly_ cleaner macro.
16740
16741         * gdk/gdkprivate.h: Split GdkWindowPrivate into
16742         GdkDrawablePrivate and GdkWindowPrivate.
16743         Add extra macros for accessing GDK_DRAWABLE_ components.
16744
16745         * *.[ch]: Massive adjustments for the above, use the
16746         new macros in a lot of places.
16747
16748 Sun Oct  3 15:16:24 1999  Owen Taylor  <otaylor@redhat.com>
16749
16750         * gdk/gdktypes.h: Make GdkDrawable the base type,
16751         not GdkWindow.
16752
16753 Sun Oct  3 15:08:44 1999  Owen Taylor  <otaylor@redhat.com>
16754
16755         * gdk/gdkdraw.c (gdk_drawable_get_data): Added new function.
16756
16757 Sun Oct  3 14:26:15 1999  Owen Taylor  <otaylor@redhat.com>
16758
16759         * gdk/gxid* gdk/x11/gxid*: Move files into x11 subdirectory.
16760
16761 Sun Oct  3 14:16:23 1999  Owen Taylor  <otaylor@redhat.com>
16762
16763         * gdk/gdkdrawable.h: Include gdk/gdkdrawable.h with
16764         gdk/ prefix. (Pointed out by chak@is.tsukuba.ac.jp)
16765
16766         * configure.in gdk/Makefile.am x11/: create x-specific subdirectory.
16767
16768         * docs/gtk-config.1: Now autogenerated.
16769         * docs/Changes-1.4.txt: started
16770         
16771 1999-10-03  Tor Lillqvist  <tml@iki.fi>
16772
16773         * gdk/gdkimage.h gdk/gdkpixmap.h: Change GDK_WINDOWING_WIN32 usage
16774         to #ifdef also here.
16775
16776         * gdk/win32/*.h gdk/win32/*.c: Make corresponding changes as those
16777         Owen did to the X11 backend.
16778
16779         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Fix it again, don't use
16780         ScrollWindowEx when blitting inside a window, it can't be correct
16781         in the general case.
16782
16783         * gdk/win32/gdkevents.c: Don't handle WM_SIZING, handling
16784         WM_GETMINMAXINFO is easier.
16785
16786         * gdk/win32/gdkimage.c (gdk_image_new): Create new image with
16787         depth equal to the bitspixel value, not the visual's depth.
16788
16789         * gdk/win32/gdkvisual.c (gdk_visual_init): Set the visual's depth
16790         to 24 even if the bitspixel value is 32.
16791
16792         * gdk/gdkrgb.c (gdk_rgb_select_conv): After the above change, no
16793         need to check for depth==32 when bpp==32, depth will always be 24.
16794
16795 Fri Oct  1 18:03:36 1999  Owen Taylor  <otaylor@redhat.com>
16796
16797         * docs/Changes-1.4.txt: Started
16798         
16799         * gtk/Makefile.am (gdk_headers): Include all the new headers.
16800
16801         * gdk/*.h gdk/*.c: Split gdk.h into lots of itty-bitty little pieces.
16802         
16803         * gdk/gdkprivate.h gdk/gdkcc.c: Moved GdkColorContext private
16804         into C file.
16805         
16806         * gdkinput.h gdkinputprivate.h - renamed the internal gdkinput
16807         header to gdkinputprivate.h.
16808
16809         * gdk/gdk.h gdk/gdk.c: Removed gdk_time* functions which have been
16810         unused since before 1.2.
16811
16812 1999-09-30  Tor Lillqvist  <tml@iki.fi>
16813
16814         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): On Win32,
16815         expand possible hex escapes in the font family (put there by
16816         logfont_to_xlfd if the font name isn't a legal XLFD font family,
16817         mainly if it contains slashes). (gtk_font_selection_create_xlfd):
16818         On Win32, add hex escapes here, too.
16819
16820 Wed Sep 29 19:55:35 1999  Owen Taylor  <otaylor@redhat.com>
16821
16822         * */*.[ch]: Changed from #if GDK_WINDOWING == GDK_WINDOWING_X11
16823         to #ifdef GDK_WINDOWING_X11.
16824
16825 [ Merges from gtk-1-2 ]
16826
16827 Wed Sep  8 07:13:29 1999  Tim Janik  <timj@gtk.org>
16828
16829         * configure.in: fixed "GNU Make" check to pass with new make version
16830         3.77.95.
16831
16832 Fri Sep  3 16:04:41 1999  Tim Janik  <timj@gtk.org>
16833
16834         * gtk-config.in (--version): don't echo @GTK_VERSION@, but
16835         @GTK_MAJOR_VERSION@.@GTK_MINOR_VERSION@.@GTK_MICRO_VERSION@, so the
16836         AM_PATH_GTK() macros don't get confused by the -pre1.
16837
16838 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
16839
16840         * configure.in (REBUILD): Change check for perl5
16841           to check explicitely for v >= 5.002. (5.001
16842           does not work with our scripts.)
16843
16844 Wed Aug 25 15:45:46 1999  Tim Janik  <timj@gtk.org>
16845
16846         * configure.in: evaluate $PERL for the perl version check. added
16847         --disable-rebuilds to give the user an option to completely disable
16848         any source autogeneration rules.
16849
16850 Mon Aug 23 23:16:14 1999  Tim Janik  <timj@gtk.org>
16851
16852         * configure.in: evaluate $ac_make when checking for GNU Make.
16853
16854 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
16855
16856         * docs/Makefile.am: added generation.txt.
16857
16858         * Makefile.am: require automake 1.4, build README from README.in and
16859         INSTALL from INSTALL.in in dist-hook.
16860         
16861         * README.in:
16862         * INSTALL.in: new files to autogenerate README and INSTALL from.
16863
16864         * configure.in: figure whether we have GNU Make
16865
16866         * docs/generation.txt: minor additions/corrections.
16867
16868 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
16869
16870         * docs/gtkfaq.sgml: FAQ Update
16871
16872 July 30, 1999 Elliot Lee <sopwith@redhat.com>
16873         
16874         * configure.in: Fix autoconf warnings about cross compilation by
16875         trying to provide sane defaults for AC_TRY_RUN.
16876
16877 Fri Jul 16 22:20:21 PDT 1999 Manish Singh <yosh@gimp.org>
16878
16879         * ltconfig
16880         * ltmain.sh: upgrade to libtool 1.3.3
16881
16882 Thu Jul  8 11:30:18 1999  Owen Taylor  <otaylor@redhat.com>
16883
16884         * INSTALL: Indicate that the --with-glib= configure
16885         time flag is unsupported.
16886
16887 Mon Jul  5 20:36:03 1999  Owen Taylor  <otaylor@redhat.com>
16888
16889         * docs/generation.txt: Added a file that gives
16890         documenation about the autogeneration process for
16891         various autogenerated files.
16892         
16893 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
16894
16895         * configure.in (LIBS): Look for libgmodule in the
16896         right location.
16897
16898 Thu Jun 17 13:57:31 1999  Owen Taylor  <otaylor@redhat.com>
16899
16900         * docs/gtk_tut.sgml: Removed references to
16901         code examples in my directory on gtk.org as
16902         they should all be in the tutorial now.
16903
16904         * docs/gtk_tut.sgml: Added sources for dial-test
16905         and scribble-xinput programs that were previously
16906         missing.
16907
16908 Fri Jun  4 00:08:59 1999  Owen Taylor  <otaylor@redhat.com>
16909
16910         * TODO: Added entry about menu keyboard navigation, removed
16911         some finished items.
16912
16913 Mon May 31 00:11:24 1999  Owen Taylor  <otaylor@redhat.com>
16914
16915         * acinclude.m4: Standardize on func_dgettext
16916         not func_gettext, so that the checks for dgettext
16917         actually are paid attention to.
16918
16919 Wed May  5 10:47:54 1999  Owen Taylor  <otaylor@redhat.com>
16920
16921         * configure.in (LIBS): Add $INTLLIBS into $LIBS
16922         directly, rather than repeating the checks for
16923         gettext.
16924
16925         * INSTALL: Added information about gettext and
16926         NLS support.
16927
16928         * acinclude.m4 (LIBM): Check for dgettext, not
16929         just gettext. This should hopefully fix things wrt
16930         systems with old versions of GNU gettext installed.
16931
16932 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
16933
16934         * configure.in (LIBS): Look for libgmodule in the
16935         right location.
16936
16937 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
16938
16939         * autogen.sh: add --enable-maintainer-mode
16940
16941         * configure.in: set ACLOCAL="$ACLOCAL $ACLOCAL_FLAGS"
16942
16943 Wed Mar 24 23:03:49 CST 1999 Shawn T. Amundson <amundson@gtk.org>
16944
16945         * docs/gtk-config.1.in:
16946           docs/Makefile.am:
16947           configure.in: gtk-config is now generated.
16948
16949         * docs/gtk-config.1: Removed, now generated.
16950
16951 Thu Sep 23 17:59:59 1999  Tim Janik  <timj@gtk.org>
16952
16953         * gdk/gdkevents.c (gdk_event_translate): grr, even if Gdk doesn't
16954         handle CreateNotify itself, still put out a debuging message for
16955         --gdk-debug=events. made the ReparentNotify debugging message more
16956         verbose.
16957         wrap xcoords translation for ConfigureEvents into an error trap,
16958         a destroy event may already be pending, and in that case, the
16959         actuall coordinate values are not at all critical.
16960
16961 Sat Sep 18 22:24:15 1999  Owen Taylor  <otaylor@redhat.com>
16962
16963         * gdk/gdkcc.c: Stop leaking the color_hash all over
16964         the place. Simplify and improve the logic.
16965
16966 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
16967
16968         * gdk/gdk.h, gdk/gdkcolor.c: make return types (gint or gboolean)
16969         for prototypes and function implementations consistent (reported
16970         by Tomas Ogren).
16971
16972 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
16973
16974         * gdk/gdkevents.c (gdk_event_translate): tell if expose events have
16975         send_event set in debugging output.
16976         (gdk_compress_exposures): default initialize the event so we don't
16977         operate on bogus values (namely send_event).
16978
16979 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
16980
16981         * gdk/gdkwindow.c: When we receive an unexpected
16982         destroy notify on one of our windows, don't just
16983         warn about it, also mark our windows as destroyed.
16984
16985 Sun Sep  5 08:10:53 1999  Owen Taylor  <otaylor@redhat.com>
16986
16987         * gdk/gdkfont.c (gdk_font_hash_insert): Add
16988           name => font and name => fontset hashes. The 
16989           name => fontset hash is a _big_ win since we
16990           weren't previously caching fontsets at all and loading
16991           fontsets is expensive. The name => font hash
16992           is less of a win, but it does save us from doing
16993           repeated XQueryFont calls on the same font.
16994
16995         * gdk/gdkprivate.h (struct _GdkFontPrivate): Add a names
16996           list so we can remove font/fontset from hash.
16997
16998 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
16999
17000         * gdk/gdkproperty.c (gdk_atom_intern): Remove useless
17001           and slightly confusing test. [ XInternAtom (,,TRUE)
17002           will never return None ].
17003
17004 Sat Sep  4 08:39:26 1999  Owen Taylor  <otaylor@redhat.com>
17005
17006         * gdk/gdkwindow.c (gdk_window_set_geometry_hints)
17007           gdk/gdkwindow.c (gdk_window_set_hints):
17008
17009         Don't omit setting the properties if flags == 0 -
17010         there may be an existing set of properties there
17011         already. (Very old bug. Would it be better to
17012         delete the property instead?)
17013
17014         * gdk/gdkselection.c (gdk_selection_property_get): Fix 
17015           spelling error in comment.
17016
17017 Wed Sep  1 14:05:30 1999  Owen Taylor  <otaylor@redhat.com>
17018
17019         * gdk/gdkimage.c (gdk_image_new): Use gdk_error_trap_push()
17020           to avoid stomping over gdk_error_warnings.
17021
17022         * gdk/gdkimage.c (gdk_image_new): compute image->bpp
17023           as (bits_per_pixel + 7) / 8. This gives the same
17024           result as before for multiples of 8, but actually
17025           a "reasonable" value for 1bit or 4bit displays.
17026
17027 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
17028
17029         * gdk/Makefile.am: minor cleanups, strip spaces on build rules for
17030         GNU Make.
17031
17032 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
17033
17034         * gdk/gdkevents.c (gdk_event_translate): give a debugging note when
17035         discarding configure events.
17036
17037 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
17038
17039         * gdk/gdkpixmap.c (gdk_pixmap_unref): g_return_if_fail() the
17040         refcount is greater than zero.
17041
17042         * gdk/gdkwindow.c (gdk_window_unref): Likewise.
17043
17044         * gdk/gdkfont.c (gdk_font_unref): Likewise.
17045
17046         * gdk/gdkgc.c (gdk_gc_unref): Likewise.
17047
17048         * gdk/gdkdnd.c (gdk_drag_context_unref): Likewise.
17049
17050 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
17051
17052         * gdk/gdkproperty.c (gdk_property_get): Fix assumption
17053         that format 32 => sizeof(item) == 4. It really is
17054         sizeof(long).
17055
17056 Tue Jun 29 23:02:42 1999  Owen Taylor  <otaylor@redhat.com>
17057
17058         * gdk/gdk.c (gdk_x_error / gdk_x_io_error): Don't
17059         core dump at all on X IO errors, only core dump
17060         if --enable-debug for X errors.
17061
17062 Thu Jun 24 17:06:23 1999  Tim Janik  <timj@gtk.org>
17063
17064         * gdk/gdkevents.c (gdk_event_translate): removed old ""Got event for
17065         unknown window:" message. disabled ConfigureNotify discarding code,
17066         because it led to events being processed out of order.
17067
17068 Thu Jun 24 12:22:02 1999  Tim Janik  <timj@gtk.org>
17069
17070         * gdk/gdkglobals.c: preinitialize gdk_error_code to 0.
17071
17072         * gdk/gdkevents.c (gdk_event_send_client_message_to_all_recurse): since
17073         we export this function, supress error warnings and don't reset the
17074         error code in the first half of this function.
17075
17076         * gdk/gdk.c (gdk_x_error): set gdk_error_code to the actuall X error
17077         code (instead of just -1) so gdk_error_trap_pop() reveals something
17078         actually informative about the error that happened.
17079
17080         * gdk/*.c:
17081         don't rely on gdk_error_code being -1 if an error occoured, but just
17082         gdk_error_code != 0.
17083
17084 Thu Jun 24 11:50:07 1999  Tim Janik  <timj@gtk.org>
17085
17086         * gdk/gdkevents.c (gdk_event_apply_filters): advance the filter list
17087         pointer *before* invoking the filter function, so we at least don't
17088         crash if a filter is removed that is currently executed. window filters
17089         *really* need to be made truely reentrant at some point.
17090
17091 Mon Jun 14 11:10:15 1999  Tim Janik  <timj@gtk.org>
17092
17093         * gdk/gdkevents.c (gdk_event_translate): print the atom name in the
17094         PropertyNotify debug messages.
17095
17096 Wed May  5 22:51:06 1999  Owen Taylor  <otaylor@redhat.com>
17097         
17098         Patch from Sung-Hyun Nam <namsh@lgic.co.kr>
17099         
17100         * gdk/gdkim.c: Fix cut-and-paste errors for 
17101         x/y and PreeditAttributes/StatusAttributes.
17102
17103 Wed May  5 22:24:21 1999  Owen Taylor  <otaylor@redhat.com>
17104
17105         * gdk/gdkwindow.c (gdk_window_set_geometry_hints): Change
17106         G_MAXINT to 2^16 to alleviate overflow problems in
17107         various window managers.
17108
17109 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
17110
17111         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
17112         for fontsets.
17113
17114 Wed May  5 12:42:01 1999  Owen Taylor  <otaylor@redhat.com>
17115
17116         * gdk/gdkwindow.c (gdk_window_set_geometry_hints):
17117         Initialize size_hints.x and size_hints.y because kwm
17118         brokenly pays attention to them.
17119         (Bug #1181 -  Lars Heete <hel@admin.de>)
17120
17121 Wed May  5 11:38:56 1999  Owen Taylor  <otaylor@redhat.com>
17122
17123         * gdk/gdkrgb.c (gdk_rgb_choose_visual): Free the 
17124         return value of gdk_list_visuals(). 
17125         (Bug #1193 - Morten Welinder <terra@diku.dk>)
17126
17127 Tue May  4 11:12:56 PDT 1999 Manish Singh <yosh@gimp.org>
17128
17129         * gdk/gdkim.c (gdk_im_real_open): cast the return value of
17130         XSetIMValues to (void *) when comparing to NULL, to workaround
17131         the problem of some compilers barfing since older X headers don't
17132         have the prototype for it.
17133
17134 Mon Apr 19 10:11:12 1999  Owen Taylor  <otaylor@redhat.com>
17135
17136         * gdk/gdkcolor.c (gdk_colormap_new): Fix memory leak
17137         for pseudocolor where colormap->colors was double
17138         allocated.
17139
17140         * gdk/gdkcolor.c (gdk_colormap_alloc1): Store the
17141         color value in the hash table with the pixel filled
17142         in so when we do later hash table lookups, the color
17143         value is correct.
17144         
17145 Sun May  2 15:29:45 PDT 1999 Manish Singh <yosh@gimp.org>
17146
17147         * gdk/gdkdraw.c (gdk_draw_lines): check private->destroyed before
17148         making the call
17149
17150 Tue Apr 27 11:17:35 1999  Owen Taylor  <otaylor@redhat.com>
17151
17152         * gdk/gdkdnd.c (xdnd_set_{targets,actions}): Fix leak
17153         pointed out by Morten Welinder <terra@diku.dk>.
17154
17155 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
17156
17157         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
17158           default filter from the list
17159
17160 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
17161
17162         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
17163           default filter from the list
17164
17165 Fri Apr 16 20:41:43 PDT 1999 Manish Singh <yosh@gimp.org>
17166
17167         * gdk/gdk.c: #include "gdkkeysyms.h" for gdk_XConvertCase #defines
17168
17169         * gtk/gtkfontsel.c (gtk_font_selection_create_xlfd): use
17170         g_strdup_printf instead of calcing the length separately
17171
17172 Tue Apr 13 02:49:33 1999  Owen Taylor  <otaylor@redhat.com>
17173
17174         * gdk/gdkwindow.c: removed some silly #ifdef HAVE_CONFIG
17175         that we don't do in many other places. (Fixing duplicate 
17176         #include of config.h)
17177
17178         * gdk/gdkevents.c: include gdkinput.h _after_ config.h.
17179         Otherwise, #ifndef XINPUT_NONE check in the latter
17180         doesn't work. (Bug #546)
17181
17182 Sun Apr 11 14:38:03 1999  Tim Janik  <timj@gtk.org>
17183
17184         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): check for color
17185         "None" case insensitive.
17186
17187 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
17188
17189         * gdk/gdkselection.c: 
17190         Add error traps so if the other end of the connection
17191         dies, we survive.
17192
17193 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
17194
17195         * gdk/gdkdnd.c (gdk_drag_motion): Separate out the
17196         dest_xid field into two fields - one for the window
17197         to send in messages, one to indicate the last looked
17198         up window for caching purposes. This is needed, so
17199         that Leave messages get the correct window.
17200
17201 Mon Apr  5 13:21:30 1999  Owen Taylor  <otaylor@redhat.com>
17202
17203         * gdk/gdkevents.c (gdk_event_check, gdk_event_prepare):
17204         Fix warning created by people mucking around
17205         with the gsource API.
17206
17207         * gdk/gdkevents.c (gdk_io_invoke, gdk_input_add_full):
17208         Change mapping between GIOCondition and GdkInputCondition
17209         to match the way the Linux kernel does it. This should
17210         fix problems where closed pipes were no longer signalling
17211         GDK_INPUT_READ on systems with a native poll().
17212
17213 Mon Apr  5 17:11:57 1999  Owen Taylor  <otaylor@redhat.com>
17214
17215         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): Check 
17216         explicitly for the string "None" - it is in the XPM
17217         spec and some servers treat unknown colors in odd ways
17218         (like asking the user!)
17219
17220 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
17221
17222         * gdk/gdkevents.c: made "->" into a "." of previous change so
17223         it compiles
17224
17225 Thu Apr  1 18:41:25 1999  Owen Taylor  <otaylor@redhat.com>
17226
17227         * gdk/gdkevents.c (gdk_compress_exposures): Set the
17228         window field of the event structure before calling
17229         user filters.
17230
17231 1999-03-31  Federico Mena Quintero  <federico@nuclecu.unam.mx>
17232
17233         * gdk/gdk.c (gdk_init_check): Use False as the last argument to
17234         XInternAtom() here.  This is a particularly Old And Nasty(tm) bug.
17235
17236 Mon Mar 29 17:31:52 1999  Owen Taylor  <otaylor@redhat.com>
17237
17238         * gdk/gdkim.c (gdk_mbstowcs): Free the value of the
17239         intermediate text property - prevents major memory
17240         leak when gdk_use_mb.
17241         gtk-d3august-990311-0: Bj|rn Augustsson <d3august@dtek.chalmers.se>
17242
17243 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
17244
17245         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
17246         gtk-a-higuti-990322-[0-3]
17247
17248         * gdk/gdkfont.c (gdk_text_extents_wc): Make  work when
17249         sizeof(wchar_t) != sizeof (GdkWChar)
17250
17251         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
17252         that was causing -DX_LOCALE not to work.
17253
17254         * gtk/gtkrc.c (gtk_rc_init):
17255         X_LOCALE will never have LC_MESSAGES defined
17256
17257         * gdk/gdk.c (gdk_init_check):
17258         Remove --xim-preedit and --xim-status from argv properly.
17259
17260         * gdk/gdkim.c (gdk_ic_real_new): Add a gdk_flush() so
17261         that the client window is present on the X server
17262         before we pass it to the input method.
17263
17264 Tue Mar  9 10:46:49 1999  Owen Taylor  <otaylor@redhat.com>
17265
17266         * gdk/gdkdnd.c (motif_find_drag_window): Fix bug where
17267         if --display is specified on the command line, than
17268         the drag window will not be created on that display.
17269         
17270 Tue Mar  9 10:38:24 1999  Owen Taylor  <otaylor@redhat.com>
17271
17272         * gdk/gdkproperty.c (gdk_atom_intern): Fixed bug where
17273         lookups with only_if_exists == TRUE were inserting
17274         bogus values into the atom cache.
17275
17276 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
17277
17278         * gdk/gdkselection.c (gdk_selection_property_get): first XFree(t),
17279         then reset it to NULL.
17280
17281         * gdk/gdkcolor.c:
17282         (gdk_colors_free): 
17283         (gdk_colormap_free_colors): use colormap->colors[in_pixels[i]] as the
17284         key for g_hash_table_remove() in both functions, this prevents us
17285         from accessing possibly uninitialized portions of a GdkColor structure
17286         where we are only interested in its pixel value.
17287
17288 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
17289
17290         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
17291         font hash table, if we have a GdkFontPrivate entry for this font
17292         already, simply increment its reference count, provided by Olaf Dietsche
17293         <olaf.dietsche+list.gtk@netcologne.de>.
17294
17295 1999-09-21  Tor Lillqvist  <tml@iki.fi>
17296
17297         * gdk/win32/gdk.c (gdk_exit_func): Delete the gdk_DC when exiting,
17298         just to be sure.
17299
17300         * gdk/win32/gdkvisual.c (gdk_visual_init): Remove a couple of
17301         unused variables, leftovers from the X11 version.
17302
17303         * gdk/win32/rc/*.cur: Better cursors provided by Bernd Herd.
17304
17305         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): Only
17306         downcase fields on X11.
17307
17308 Mon Sep 20 13:17:39 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
17309         
17310         * configure.in,po/pt_BR.po: added Portuguese Brazilian file from
17311         Alex Sandro Queiroz e Silva <asandro@lcg.dc.ufc.br>
17312
17313 1999-09-17  Tor Lillqvist  <tml@iki.fi>
17314
17315         * gdk/win32/gdk.def: Add gdk_threads_mutex.
17316
17317         * gtk/makefile.msc: Correct path to libintl.
17318
17319         Thanks to Tomi Ollila and Bernd Herd: Fix some inconsistencies in
17320         use of gint vs. int, and gint vs. gboolean in headers and
17321         definitions. Use GtkType for the *_get_type functions. Note that
17322         these changes preserve binary compatibility.
17323
17324         * gdk/gdk.c
17325         * gdk/win32/gdk.c
17326         * gdk/gdk.h: Fix inconsistencies: gint vs int.
17327
17328         * gtk/gtkmain.c
17329         * gtk/gtkclist.c
17330         * gtk/gtkmenufactory.c
17331         * gtk/gtknotebook.c
17332         * gtk/gtkwidget.c: Fix inconsistencies, also gint
17333         vs. gboolean.
17334
17335         * gtk/gtkcolorsel.[ch]
17336         * gtk/gtkcombo.[ch]
17337         * gtk/gtkdrawingarea.[ch]
17338         * gtk/gtkgamma.[ch]
17339         * gtk/gtkhandlebox.[ch]
17340         * gtk/gtkhpaned.[ch]
17341         * gtk/gtkhruler.[ch]
17342         * gtk/gtkplug.[ch]
17343         * gtk/gtkpreview.[ch]
17344         * gtk/gtkruler.[ch]
17345         * gtk/gtksocket.[ch]
17346         * gtk/gtkstatusbar.[ch]
17347         * gtk/gtktoolbar.[ch]
17348         * gtk/gtkvbbox.[ch]
17349         * gtk/gtkvpaned.[ch]
17350         * gtk/gtkvruler.[ch]: Always use type GtkType for the *_get_type
17351         functions.
17352
17353         * gtk/gtkgamma.h: Fix bug, missing () in call of
17354         gtk_gamma_curve_get_type() in GTK_GAMMA_CURVE_CLASS. 
17355
17356 1999-09-14  Tor Lillqvist  <tml@iki.fi>
17357
17358         * gdk/gdkcolor.c (gdk_colormap_new)
17359         * gdk/win32/gdkcolor.c (gdk_colormap_new): Fix memory leak:
17360         colormap->colors was allocated twice.
17361
17362         * gdk/win32/gdk.c: Remove some unused stuff.
17363
17364         * gdk/win32/gdkcolor.c (gdk_colormap_sync): Initialize all of the
17365         colormap.
17366
17367         * gtk/gtkfontsel.c (gtk_font_selection_dialog_get_type)
17368         * gtk/gtklabel.h (gtk_label_get_type)
17369         * gtk/gtktipsquery.c (gtk_tips_query_get_type)
17370         * gtk/gtktypeutils.h (gtk_type_name): : Use GtkType
17371         in a couple of places, not guint.
17372
17373 Fri Sep 10 21:31:00 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
17374
17375         * configure.in,po/et.po: added Estonian language file
17376
17377 Wed Sep  1 14:36:12 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
17378
17379         * configure.in,po/da.po: added Danish file
17380
17381 Sun Aug 29 13:38:59 BST 1999 Tony Gale <gale@gtk.org>
17382
17383         * docs/gtkfaq.sgml: Minor FAQ Update
17384
17385 Sat Aug 28 14:34:37 BST 1999 Tony Gale <gale@gtk.org>
17386
17387         * docs/gtkfaq.sgml: FAQ update
17388
17389 1999-08-27  Tor Lillqvist  <tml@iki.fi>
17390
17391         Win32: Philippe Colantoni <colanton@aris.ss.uci.edu> suggests a
17392         way to get window contents continually refreshed while resizing. I
17393         didn't like the effects myself, so it's not on by default.
17394
17395         * gdk/win32/gdkprivate.h: New flag variable
17396         gdk_event_func_from_window_proc, FALSE by default.
17397
17398         * gdk/win32/gdk.c (gdk_init_check): Set above flag if the
17399         environment variable GDK_EVENT_FUNC_FROM_WINDOW_PROC is set, or we
17400         are passed --gdk-event-func-from-window-proc.
17401
17402         * gdk/win32/gdkevents.c (gdk_WindowProc): If above flag is set,
17403         and we have am event_func, call it instead of enqueing the event.
17404
17405 1999-08-23  Tor Lillqvist  <tml@iki.fi>
17406
17407         * gdk/win32/gdkevents.c (gdk_event_translate): Fix from Simon
17408         Kelley: Set expose_count in GdkEventExposes correctly.
17409
17410         * gdk/win32/gdkwindow.c: Remove dead code (#ifdef
17411         MULTIPLE_WINDOW_CLASSES).
17412
17413         * gdk/win32/gdkdraw.c (gdk_draw_line): Workaround from Hans Breuer
17414         for bug in NT, apparently NT *does* draw the end pixel, too, in
17415         LineTo with a one-pixel pen, so we don't have to do it ourselves.
17416
17417 1999-08-21  Tor Lillqvist  <tml@iki.fi>
17418
17419         Improvements by Hans Breuer: 
17420
17421         * gdk/win32/gdkwindow.c (RegisterGdkClass): New function
17422
17423         * gdk/win32/gdkwindow.c (gdk_window_new): Use it. Don't set the
17424         CS_?REDRAW flags as they cause lots of (late) redraws when "show
17425         window contents while dragging" is turned on. Allocate at least
17426         one unique class for every GdkWindowType. If support for single
17427         window-specific icons is ever needed (eg. Dialog specific), every
17428         such window should get its own class.
17429
17430 1999-08-19  Tor Lillqvist  <tml@iki.fi>
17431
17432         * gdk/win32/gdkgc.c (gdk_gc_new_with_values): Fix a cut&paste
17433         error that caused crashes.
17434
17435 1999-08-17  Tor Lillqvist  <tml@iki.fi>
17436
17437         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): When blitting inside one
17438         window, use ScrollWindowEx, and call UpdateWindow. This prevents
17439         bugs when for instance part of the window was outside the
17440         display. Thanks to Philippe Colantoni for finding and fixing this.
17441
17442 1999-08-16  Tor Lillqvist  <tml@iki.fi>
17443
17444         * gdk/win32/gdkdraw.c (gdk_draw_arc): Fix start and end radial
17445         endpoint calculations which were totally wrong. (A little RTFMing
17446         helps a lot ;-)
17447
17448         * gtk/makefile.{cygwin,msc}: Use libintl extracted from glibc
17449         from a separate directory, not from gettext, because of licensing
17450         issues (we want to use the LGPL version).
17451
17452         * README.win32: Mention the intl from glibc vs from gettext issue.
17453
17454 1999-08-13  Tor Lillqvist  <tml@iki.fi>
17455
17456         * gdk/win32/gdkevents.c (gdk_event_translate): Fix a couple of bugs
17457         in the key event handling: Now AltGr chars work again. Also,
17458         now Alt-digits are passed up as well as Control-digits.
17459         Pass keypad plus and minus as normal plus and minus.
17460
17461 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
17462
17463         * docs/gtkfaq.sgml: FAQ Update
17464
17465 1999-07-25  Tor Lillqvist  <tml@iki.fi>
17466
17467         * README.win32
17468         * config.h.win32: Add HAVE_WINTAB. Undefine it if bulding without
17469         the Wintab SDK.
17470
17471         * gdk/win32/gdkinput.c: Hack some more. Still doesn't quite work
17472         OK, but getting closer. Guard against bogus tilt data from Wacom
17473         ArtPad II with the 3.40 driver. Add ifdefs for HAVE_WINTAB to
17474         enable easier building without Wintab.
17475
17476         * gdk/win32/gdkinput.h
17477         * gdk/win32/gdkevents.c 
17478         * gdk/win32/gdkwindow.c: Minor changes related related to above.
17479         
17480         * gdk/win32/gdkvisual.c: Simplify a lot, remove leftovers from X11
17481         code. As we have just one visual on Win32, no sense to have it in a
17482         table, and no need for the hash table.
17483
17484         * gdk/win32/rc/cursor*.cur: Edit some of the cursors a bit to look
17485         better on white background.
17486
17487 1999-07-21  Tor Lillqvist  <tml@iki.fi>
17488
17489         * README.win32: Update gcc build instructions. Mention gettext is
17490         GPL.
17491
17492         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Get correct
17493         supported cursor size with GetSystemMetrics.
17494
17495         * gdk/win32/gdkfont.c
17496         * gtk/gtkfontsel.c: Guard against some font weight and charset
17497         symbols being undefined (in mingw32 headers).
17498
17499         * gdk/win32/makefile.cygwin
17500         * gtk/makefile.cygwin
17501         * gtk/gtkthemes.c: No longer need to have differently named
17502         gcc-built DLLs when using gcc-2.95 and -fnative-struct.
17503
17504 hu Jul 15 13:33:15 BST 1999 Tony Gale <gale@gtk.org>
17505
17506         * docs/gtkfaq.sgml: Long awaited FAQ update.
17507
17508 1999-07-15  Tor Lillqvist  <tml@iki.fi>
17509
17510         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Implement
17511         it. Obscure bit manipulation needed.
17512
17513         * gdk/win32/gdkevents.c: Logging.
17514         
17515         * gtk/gtkthemes.c (gtk_theme_engine_get): (Win32) Use new DLL naming
17516         style (file name include compiler name) for theme engines.
17517
17518 1999-07-13  Tor Lillqvist  <tml@iki.fi>
17519
17520         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Less logging verbiage.
17521
17522         * gdk/win32/gdkevents.c: Fix long-standing bug in key
17523         events. The key.string wasn't zero-terminated, still we strdup'ed
17524         it in gdk_event_copy(). Synthesize crossing events for button
17525         events before possible propagation.
17526
17527         * gdk/win32/gdkwindow.c: Log gdk_window_set_title.
17528
17529         * gdk/win32/makefile.cygwin
17530         * gtk/makefile.cygwin: Use new DLL naming style for the
17531         GCC-compiled ones.
17532
17533         * gdk/win32/makefile.msc
17534         * gtk/makefile.msc: Cosmetics mostly.
17535
17536         * gtk/gtk.def: Add missing entry points.
17537
17538         * gtk/gtksocket.c: Add dummy gtk_socket_get_type() for Win32.
17539
17540 1999-07-09  Tor Lillqvist  <tml@iki.fi>
17541
17542         * gdk/win32/gdkdraw.c (gdk_draw_arc): Don't draw anything if width
17543         or height is zero. Don't print a warning if Pie or Arc fails, they
17544         always fail (?) for very narrow ellipses.
17545
17546         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Call InvalidateRgn for
17547         the part or the destination window corresponding to source area
17548         outside of the source drawable's boundary.
17549
17550         * gdk/win32/gdkdraw.c (gdk_draw_lines, gdk_draw_polygon): Don't do
17551         anything if less than two points.
17552
17553         * gdk/win32/gdkselection.c (gdk_selection_owner_get): Always
17554         return NULL. Gtk cut-and-paste inside a single program works
17555         better this way. (It always gets the clipboard contents from
17556         Windows, not from its own copy, which is cleared anyway. I can't
17557         say I fully understand what happens... Emulating the X selection
17558         and property stuff is a bit of a mess.)
17559
17560         * gdk/win32/gdkevents.c
17561         * gdk/win32/gdkproperty.c: A bit more verbose logging.
17562
17563         * gdk/win32/gdkregion.c: Fix some memory leaks (temporary regions
17564         that never got deleted). Revamp gdk_region_shrink.
17565
17566         * gdk/win32/gdkregion.c: Fix memory leak, delete temporary regions
17567         after use.
17568
17569         * gtk/gtk.def: Add some missing entry points.
17570
17571         * gtk/gtkrc.c: Strip trailing directory separator from pixmap path
17572         component.
17573
17574 1999-07-04  Tor Lillqvist  <tml@iki.fi>
17575
17576         * gdk/win32/gdkevents.c (gdk_event_translate): Handle
17577         Control-digits specially.
17578
17579 1999-07-03  Tor Lillqvist  <tml@iki.fi>
17580
17581         * gtk/makefile.{cygwin,msc}: New pthreads version. Use gettext.
17582
17583 1999-06-28  Tor Lillqvist  <tml@iki.fi>
17584
17585         * gdk/win32/gdkimage.c (gdk_image_get): bpl was set wrong for
17586         bitmaps, should be multiple of 4. (Thanks to Hans Breuer for
17587         finding this.)
17588
17589 1999-06-01  Jose H Mercado  <jmercado@mit.edu>
17590
17591         * gtk+.spec.in: Corrected some typos in files section.
17592         
17593 1999-06-15  Tor Lillqvist  <tml@iki.fi>
17594
17595         * README.win32: Mention using GNU gettext.
17596         * config.h.win32: Enable NLS stuff.
17597         * gtk/makefile.msc: Use GNU gettext.
17598         * gdk/win32/gdkdnd.c: Minor header reorg.
17599         * gdk/win32/{gdkevents,gdkwindow}.c: No semantic changes, mainly
17600         cosmetics.
17601         * gtk/gtkrc.c (Win32): Make get_gtk_sysconf_directory() public.
17602         * gtk/gtkmain.c (Win32): Use it in bindtextdomain() call.
17603
17604 Wed Jun  2 11:44:25 PDT 1999 Manish Singh <yosh@gimp.org>
17605
17606         * acinclude.m4
17607         * config.guess
17608         * config.status
17609         * ltconfig
17610         * ltmain.sh: upgrade to libtool 1.3.2 (BeOS changes merged)
17611
17612 1999-05-30  Tor Lillqvist  <tml@iki.fi>
17613
17614         * gdk/win32/gdkwindow.c: AdjustWindowRectEx2 renamed to
17615         SafeAdjustWindowRectEx. Don't override all calls to
17616         AdjustWindowRectEx by it, but use it only in two places: When
17617         creating a new top-level window and when moving a top-level
17618         window.
17619
17620         Use screen coordinate rectangle, not client rectangle, in
17621         gdk_window_move. Thus SafeAdjustWindowRectEx will do its job only
17622         when we try to place a window so that the decoration (mainly,
17623         title bar) isn't visible.
17624
17625         These changes fix the bug that showed up for instance as the
17626         GIMP's saved top-level windows moving right and down (by an amount
17627         equal to the window decoration) for each session. This bug showed
17628         up also in testgtk's "Saved Position".
17629
17630         gdk_window_resize also redone a bit.
17631
17632 1999-05-25  Tor Lillqvist  <tml@iki.fi>
17633
17634         * gtk/testgtkrc: Add (commented out) Windows-style theme
17635         include line.
17636
17637         * gdk/win32/gdk.def,gtk/gtk.def: Add some missing entry points.
17638
17639 1999-05-18  Tor Lillqvist  <tml@iki.fi>
17640
17641         * gdk/win32/makefile.{cygwin,msc}: Copy our gdkprivate.h and
17642         gdkx.h to a gdk subdirectory, so that applications can include
17643         these with <gdk/*.h> without trouble.
17644
17645         * gdk/win32/gdkimage.c (gdk_image_new_with_depth): Code simplified.
17646         (gdk_image_destroy): Plug resource leak, some GdkImages didn't
17647         have their bitmap destroyed.
17648
17649         * gdk/win32/gdk.def: Add gdk_root_parent.
17650
17651 Wed May 12 03:00:56 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
17652
17653         * configure.in
17654           gtk-config.in
17655           ltconfig
17656           ltmain.sh     
17657           gtk/Makefile.am: changes to compile nicely (with xlib) 
17658           on BeOS
17659
17660 Sat May  1 15:04:42 PDT 1999 Manish Singh <yosh@gimp.org>
17661
17662         * acinclude.m4
17663         * config.guess
17664         * config.sub
17665         * ltconfig
17666         * ltmain.sh: upgrade to libtool 1.3
17667
17668 Fri Apr 30 13:38:16 1999  Lars Hamann  <lars@gtk.org>
17669
17670         * gtk/gtkclist.c:
17671         * gtk/gtkctree.c: merges from gtk-1-2
17672
17673 1999-04-25  Tor Lillqvist  <tml@iki.fi>
17674
17675         Support added for building using a GNU toolchain on Win32,
17676         gcc -mno-cygwin (egcs-1.1.2) on cygwin-b20.1.
17677
17678         * gdk/win32/makefile.cygwin gtk/makefile.cygwin: New files.
17679         * config.h.win32: Changes for gcc.
17680         * gdk/gdkrectangle.c: Include gdk.h as <gdk/gdk.h>.
17681         * gdk/gdkcolor.c: config.h.win32 already defines strcasecmp.
17682         * gdk/win32/gdkconfig.h: Only the MS compiler has wctype.h.
17683         * gdk/win32/gdkdnd.c: Protect (unused) OLE2 stuff better.
17684         Protect shl stuff unavaiilable with mingw32 headers.
17685         * gdk/win32/gdkevents.c: Fix typo.
17686         * gdk/win32/gdkglobals.c: Use GDKVAR here also for gcc.
17687         * gdk/win32/gdkim.c: Use OEM code page for multibyte chars. (?)
17688         * gdk/win32/gdkinput.c: Use __try __except only with the MS compiler.
17689         * gdk/win32/gdkprivate.h: Make up for some stuff missing from
17690         the mingw32 headers.
17691         * gdk/win32/makefile.msc: Use latest Wintab kit and glib.
17692         * gtk/gtkfilesel.c: Include <glib.h> early, to get stat->_stat
17693         definition on Win32. Test for NATIVE_WIN32, not _MSC_VER.
17694         * gtk/gtkfontsel.c: Protect CHARSET redefinition on Win32.
17695         Test for NATIVE_WIN32, not _MSC_VER.
17696         * gtk/gtkmain.c: No use warning about developer version on Win32,
17697         there aren't any non-developer versions anyhow.
17698         * gtk/gtkrc.c: Test for NATIVE_WIN32, not _MSC_VER.
17699         * gtk/makefile.msc: Use pthread from another directory. Minor other
17700         changes. 
17701
17702 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
17703
17704         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
17705           default filter from the list
17706
17707 Mon Mar  8 12:52:53 1999  Owen Taylor  <otaylor@redhat.com>
17708
17709         * gtk/gtkwidget.c (gtk_widget_grab_default): Add a warning
17710          when gtk_widget_grab_default() is called for a widget that
17711          is not within a GtkWindow.
17712
17713 Sat Apr 10 13:52:54 BST 1999  Tony Gale <gale@gtk.org>
17714
17715         * docs/gtk_tut.sgml, examples/clist.c: use a
17716           scrolled window in the clist example. Minor
17717           tutorial fixes.
17718
17719 Fri Apr  2 09:19:20 BST 1999  Tony Gale <gale@gtk.org>
17720
17721         * docs/gtk_tut.sgml: Style check from David King
17722           <dking@youvegotmail.net>
17723
17724 1999-03-30  Pavel Machek  <pavel@artax.karlin.mff.cuni.cz>
17725
17726         * gtk/gtkfontsel.c (gtk_font_selection_get_fonts): Make code
17727         compile with unknown value of GDK_WINDOWING
17728
17729 1999-03-28  Raja R Harinath  <harinath@cs.umn.edu>
17730
17731         * gdk/Makefile.am (gdkconfig.h): Make sure `gdkconfig.h' exists
17732         after the rule is fired.
17733         (install-exec-local): Install gdkconfig.h only if the contents are
17734         different from the currently installed gdkconfig.h.
17735
17736 1999-03-26  Raja R Harinath  <harinath@cs.umn.edu>
17737
17738         * gdk/Makefile.am (configexecincludedir): Rename from 
17739         configincludedir so that gdkconfig.h will be installed 
17740         as part of `make install-exec'. 
17741
17742 Fri Mar 19 16:50:33 PST 1999 Manish Singh <yosh@gimp.org>
17743
17744         * acinclude.m4
17745         * config.guess
17746         * config.sub
17747         * ltconfig
17748         * ltmain.sh: upgrade to libtool 1.2f
17749
17750         * autogen.sh: libtool is not required to autogen gtk+
17751
17752         * acconfig.h: remove WITH_SYMBOL_UNDERSCORE (not explictly
17753         needed)
17754
17755 1999-03-18  Tor Lillqvist  <tml@iki.fi>
17756
17757         * gdk/gdktypes.h: Merge in Win32 version: Define macro GDKVAR for
17758         declaring gdk variables exported/imported from the DLL. New image
17759         type enum, GDK_IMAGE_SHARED_PIXMAP, for gdk_imlib. New drag and
17760         drop protocol enums, GDK_DRAG_PROTO_WIN32_DROPFILES and
17761         GDK_DRAG_PROTO_OLE2.
17762
17763         * gdk/gdk.h: Merge in Win32 version: Two new functions,
17764         gdk_pixmap_create_on_shared_image and gdk_image_bitmap_new. So far
17765         declared only for the Win32 version, but could be in the X11
17766         version as well. (Needed for a Xlib-less gdk_imlib.)
17767         gdk_color_hash should have only one parameter. Declare
17768         gdk_threads_mutex with GDKVAR.
17769         
17770         * gdk/gdkcolor.c (gdk_color_hash): A hash function should have
17771         just one parameter.
17772
17773         * gdk/gdkimage.c (gdk_image_get): Initialize bpp correctly. Bytes
17774         per pixel, not bits.
17775
17776         * gdk/gdkrgb.c: Mingle includes somewhat. (gdk_rgb_select_conv):
17777         Fetch bpp (which means bits-per-pixel here) from another place on
17778         Win32. Accept also depth==32 (which we might get on Win32) with
17779         bpp==32.
17780
17781         * gtk/{gtkclist,gtkctree,gtkdnd,gtkditable,gtkfontsel,
17782         gtkhandlebox,gtklayout,gtkmain,gtkplug,gtkpreview,gtkrc,
17783         gtkselection,gtksocket,gtkstyle,gtkwidget,gtkwindow}.c:
17784         Include gdx.h from "gdkx.h", not "gdk/gdkx.h", as gdkx.h will be
17785         in the backend-dependent directory, not in the common gdk
17786         directory.
17787
17788         * gtk/testgtk.c: Ditto. Also, don't use ../gdk path to gdk
17789         headers.
17790
17791 Wed Mar 17 05:06:49 1999  Tim Janik  <timj@gtk.org>
17792
17793         * gtk/gtkmain.c (gtk_init_check): tell people that they don't really
17794         want to use the Gtk+ devel version (which is true, and yes - even i am
17795         currently working with the 1.2.x branch). so everyone reading this, you
17796         probably want to issue
17797         cvs checkout -r glib-1-2 glib
17798         and
17799         cvs checkout -r gtk-1-2 gtk+
17800         as your next two comands.
17801
17802 Wed Mar 17 02:49:32 1999  Tim Janik  <timj@gtk.org>
17803
17804         * configure.in: build gtkcompat.h from gtkcompat.h.in instead of
17805         gtkfeatures.h from gtkfeatures.h.in, require GLib 1.3.0.
17806
17807         * gtk/gtkcompat.h.in: combined gtkcompat.h and gtkfeatures.in in this
17808         file. strongly deprecated the GTK_HAVE_* macros, we provide
17809         GTK_CHECK_VERSION() for people that need to check for certain
17810         Gtk+ versions.
17811
17812         * gtk/gtkcompat.h: removed this from CVS.
17813         * gtk/gtkfeatures.h.in: removed this from CVS, gtkfeatures.h was a bad
17814         idea right from the start, it just didn't seem like that back then.
17815
17816 Wed Mar 17 01:46:28 1999  Tim Janik  <timj@gtk.org>
17817
17818         * merges from gtk-1-2:
17819
17820 Tue Mar 16 17:43:33 1999  Tim Janik  <timj@gtk.org>
17821
17822         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc_string): ensure the
17823         item factory class has been created.
17824         (gtk_item_factory_parse_rc): likewise.
17825
17826         * gtk/gtkmenu.c:
17827         keep proper references for old_active_menu_item.
17828         (gtk_menu_reparent): unset the usize of the new parent,
17829         so the menu can sanely be size requested and we don't get nasty screen
17830         artefacts upon next reparentation.
17831         (gtk_menu_motion_notify): set send_event to TRUE if we synthesize an
17832         enter notify. only synthesize enter notifies if the pointer really is
17833         inside the event window.
17834         (gtk_menu_popdown): use gtk_menu_shell_deselect().
17835         (gtk_menu_popup): move the background setting stuff into
17836         gtk_menu_tearoff_bg_copy() so it can be called from other places as well.
17837
17838         * gtk/gtkmenushell.c (gtk_menu_shell_button_press): use
17839         gtk_menu_shell_select_item() to select the new item.
17840         (gtk_menu_shell_deselect): export this function, so gtkmenu.c can
17841         do the right thing for deselection as well.
17842
17843 Sat Mar 15 20:10:33 1999  Tim Janik  <timj@gtk.org>
17844
17845         * gtk/gtkwidget.[hc]:
17846         (gtk_widget_accelerators_locked): return whether a widget's accelerators
17847         are locked.
17848
17849         * gtk/gtkmenu.c (gtk_menu_key_press): don't remove or install new or
17850         existing accelerators if the widget's accelerators are locked.
17851
17852 Sat Mar 14 19:44:05 1999  Tim Janik  <timj@gtk.org>
17853
17854         * gtk/gtkitemfactory.[hc]: allow managing of foreign menu items.
17855
17856         * gtk/gtkmenu.c: truely forward key press and key release events to
17857         the menu widget from the toplevel or tearoff window. we can't simply
17858         connect to that, we need to stop further processing of the events as
17859         well.
17860
17861 Sat Mar 13 13:14:17 1999  Tim Janik  <timj@gtk.org>
17862
17863         * gtk/gtkmenu.c:
17864         (gtk_menu_key_press): pass event->keyval, event->state to
17865         gtk_accelerator_valid, instead of event->keyval twice.
17866         refuse to install single letter accelerators for menus that use
17867         single letter shortcuts.
17868
17869         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): use
17870         gtk_menu_ensure_uline_accel_group().
17871
17872         * gtk/gtkmenu.[hc]: added gtk_menu_ensure_uline_accel_group()
17873         which will always return an uline accel group, made
17874         gtk_menu_get_uline_accel_group() return NULL if the group isn't
17875         yet created.
17876
17877 Mon Mar 15 01:03:27 1999  Lars Hamann  <lars@gtk.org>
17878
17879         * gtk/gtkclist.h (struct _GtkCListColumn): added button_passive flag.
17880
17881         * gtk/gtkclist.c (gtk_clist_column_title_passive):
17882         Leave button sensitive, trap  button_press, button_release,
17883         motion_notify, enter_notify and leave_notify events instead.
17884         (gtk_clist_column_title_active): disconnect event handler.
17885         (gtk_clist_drag_data_get): fixed memory leak. Reported by
17886         Guillaume Laurent <glaurent@worldnet.fr>
17887
17888 Wed Mar 10 23:49:55 1999  Lars Hamann  <lars@gtk.org>
17889
17890         * gtk/gtklayout.c (gtk_layout_adjustment_changed): fixed a few
17891         width/height mixups.
17892
17893         * gtk/gtkctree.c (tree_delete): emit an tree_unselect_row signal
17894         if needed.
17895
17896 Wed Mar 10 00:11:32 1999  Tim Janik  <timj@gtk.org>
17897
17898         * gtk/testgtk.c (create_item_factory): unref the item factory after
17899         window's destruction.
17900
17901         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): keep a reference
17902         count on the menu shell around the menu item's activation, since the
17903         signal emission may cause menu shell destruction.
17904
17905         * gtk/gtkitemfactory.c:
17906         the previous code leaked one accel group per menu. we use
17907         gtk_menu_get_uline_accel_group() now to fix that, and with that
17908         also create the underline accelerator group of the menus only if
17909         required (i.e. an underline accelerator has been specified).
17910         (gtk_item_factory_construct):
17911         (gtk_item_factory_create_item): removed code that would create an
17912         extra accel group for the menu (and leak references).
17913         (gtk_item_factory_create_item): adapted the underline accelerator
17914         installation code to properly feature gtk_menu_get_uline_accel_group().
17915
17916         * gtk/gtkmenu.[hc]: added gtk_menu_get_accel_group() to retrive
17917         menu->accel_group, this may return NULL if the accelerator group
17918         hasn't been set yet.
17919         added gtk_menu_get_uline_accel_group() to retrive the underline
17920         accelerator group of the menu, this will be created on demand
17921         and proper care is taken about its reference count.
17922
17923         * gtk/gtkitemfactory.h:
17924         * gtk/gtkitemfactory.c:
17925         dumped the approach of keeping a widgets by action list on the
17926         factory since the factory<->widget destroy negotiation didn't work
17927         and would be hard to get going at all. instead we keep a list of
17928         GtkItemFactoryItem items on the factory (GtkItemFactoryItems are
17929         persistant throughout a program's life time).
17930         also, i removed the static const gchar *key_* variables, and made
17931         them inline strings (they weren't actually used anyways).
17932         (gtk_item_factory_add_item): update ifactory->items.
17933         (gtk_item_factory_destroy): destroy ifactory->items (and remove
17934         the item factory pointer from the remaining ifactory widgets).
17935         (gtk_item_factory_get_widget_by_action): walk the GtkItemFactoryItem
17936         list to find the widget.
17937         (gtk_item_factory_get_item): new function that works around
17938         gtk_item_factory_get_widget() limitations, this function will only
17939         return menu items, even for <Branch> entries.
17940
17941 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
17942
17943         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
17944         font hash table, if we have a GdkFontPrivate entry for this font
17945         already, simply increment its reference count, provided by Olaf Dietsche
17946         <olaf.dietsche+list.gtk@netcologne.de>.
17947
17948         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
17949         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
17950
17951 Sun Mar  7 06:13:29 1999  Tim Janik  <timj@gtk.org>
17952
17953         * gtk/gtkcontainer.c:
17954         (gtk_container_add_with_args):
17955         (gtk_container_addv):
17956         (gtk_container_add): before adding a child to a conatiner, make sure
17957         it is (default) constructed, this is neccessary because under certain
17958         circumstances the child will get relized and mapped immediatedly, in
17959         which case it has to be constructed already.
17960
17961 Mon Mar  1 17:58:21 1999  Tim Janik  <timj@gtk.org>
17962
17963         * gtk/gtksignal.c (gtk_signal_connect_by_type): count object_signal
17964         values > 1 as TRUE also.
17965
17966 1999-03-16  Tor Lillqvist  <tml@iki.fi>
17967
17968         * README.win32: New file.
17969                 
17970         * configure.in: Check for lstat.
17971
17972         * config.h.win32: Add non-definition of HAVE_LSTAT, just for
17973         completeness.
17974
17975         * gtk/gtkrc.c: If don't HAVE_LSTAT, use stat.
17976
17977         * gtk/gtk.def: Removed CRs.
17978
17979         * gtk/makefile.msc: Correct include path to Win32 GDK version (in
17980         ..\gdk\win32).
17981
17982         * gdk/win32/makefile.msc: Correct upwards relative paths.
17983         
17984 Mon Mar 15 03:38:34 1999  George Lebl  <jirka@5z.com>
17985
17986         * gtk/gtkdnd.c: (gtk_drag_highlight) swap the
17987           gtk_drag_highlight_expose and gtk_drag_highlight_paint since
17988           it was connecting a void function to expose_event and the int
17989           returning function to the draw signal
17990
17991 1999-03-14  Jeff Garzik  <jgarzik@pobox.com>
17992
17993         * configure.in:
17994         Use correct path to libgmodule.la when ref'ing uninstalled copy
17995         of glib.  (Already in stable branch, Bug #417)
17996
17997 1999-03-15  Tor Lillqvist  <tml@iki.fi>
17998
17999         Win32 merge and general portability stuff:
18000                 
18001         * acconfig.h,configure.in: Check for <sys/time.h>.
18002
18003         * gdk/win32: New directory (actually, been there for a while).
18004         
18005         * gtk/fnmatch.c: Include <glib.h> for G_DIR_SEPARATOR, WIN32 and
18006         NATIVE_WIN32, and use these. Always case fold on Win32. No
18007         backslashed escapes on native Win32.
18008
18009         * gtk/{gtk.def,makefile.msc}: New files.
18010
18011         * gtk/Makefile.am: Add above new files.
18012         
18013         * gtk/{gtkaccelgroup,gtkbindings}.c: Include <string.h>
18014         instead of <strings.h>.
18015
18016         * gtk/{gtkcalendar,gtkitemfactory,gtkpreview,gtkrc}.c: Include
18017         config.h. Protect inclusion of <sys/param.h>, <sys/time.h>, and
18018         <unistd.h> appropriately.
18019
18020         * gtk/gtkdnd.c: Merge in Win32 version (which doesn't do much).
18021         Use ABS() (from <glib.h>) instead of abs().
18022         
18023         * gtk/gtkfilesel.c: Moved Win32-specific includes after inclusion
18024         of gtk (and thus glib) headers, so that WIN32 will be
18025         defined. With MS C, include <direct.h> for mkdir prototype.
18026
18027         * gtk/gtkitemfactory.c (gtk_item_factory_callback_marshal): Add
18028         some casts, needed by MS C.
18029
18030         * gtk/{gtklayout,gtkplug}.c: Merge in Win32 version (which isn't
18031         implemented).
18032
18033         * gtk/gtkmain.c: Include gdk/gdkx.h for GDK_WINDOWING. Include
18034         <X11/Xlocale.h> only on X11 platform, otherwise <locale.h>.  Use
18035         G_SEARCHPATH_SEPARATOR_S and g_module_build_path.
18036
18037         * gtk/gtkmain.h: Mark variables for export/import on Win32.
18038                 
18039         * gtk/gtkrange.c (gtk_range_motion_notify): Set mods also in case
18040         the event is not a hint, or its window is not the slider. Needed
18041         on Win32, at least.
18042
18043         * gtk/gtkrc.c: Include config.h and gdk/gdkx.h. Use <locale.h>
18044         unless on X11. Skip \r chars, too. Use G_DIR_SEPARATOR and
18045         G_SEARCHPATH_SEPARATOR(_S). Use g_path_is_absolute. On Win32, use
18046         a subdirectory of the Windows directory as gtk system
18047         configuration directory.
18048
18049         * gtk/gtkselection.c: No chunks on Win32.
18050
18051         * gtk/gtksocket.c: Not implemented on Win32.
18052
18053         * gtk/gtkthemes.c (gtk_theme_engine_get): Use g_module_build_path.
18054
18055         * gtk/makeenums.h: Include gdkprivate.h after gdk.h.
18056
18057         * gtk/maketypes.awk: Declare variables with a macro that expands to
18058         necessary export/import magic in the case of Win32.
18059                 
18060         * gtk/testrgb.c: Use dynamically allocated buffer. Use GTimers.
18061
18062 1999-03-13  Raja R Harinath  <harinath@cs.umn.edu>
18063
18064         * configure.in (gdk_wc): Move widechar tests from `glib' to here,
18065         since those were meant only for gdki18n.h.  
18066         * gdk/gdki18n.h: Include gdkconfig.h and use GDK_* instead of G_*
18067         for widechar tests.
18068         * gtk/Makefile.am (INCLUDES): Add -I../gdk for gdkconfig.h.
18069
18070 1999-03-13  Tor Lillqvist  <tml@iki.fi>
18071
18072         * configure.in acconfig.h: Check for dirent.h and pwd.h. Generate
18073         gdk/gdkconfig.h using similar mechanism as GLib's glibconfig.h.
18074
18075         * gtk-config.in: Add @libdir/gtk+/include (where gdkconfig.h is
18076         installed) to CFLAGS.
18077
18078         * gdk/Makefile.am: Add rules for gdkconfig.h.
18079
18080         * gdk/gdktypes.h: Include gdkconfig.h. Define macros for windowing
18081         APIs.
18082
18083         * gdk/gdkfontsel.c: Don't include Xlib.h, it gets included via
18084         gdkx.h anyway when compiling for X11.
18085         (gtk_font_selection_create_xlfd): Use g_strdup_printf. (In
18086         general): Merge in Win32 version.
18087         
18088         * gtk/gtkfilesel.c: Use g_get_current_dir(). Merge in Win32
18089         version: Use G_DIR_SEPARATOR, g_path_is_absolute, no tilde
18090         expansion (if we don't have HAVE_PWD_H), allow for drive
18091         letters. UNC paths (\\server\share\...) are not handled yet.  Also,
18092         included code from Craig Setera's port to Win32 (the one that uses
18093         X11, and the cygwin dll), even if it probably will be abandoned.
18094
18095         * gtk/gtkfilesel.c: Don't append a * to the pattern to complete if
18096         the user entered one herself.  This way one can complete *.h and
18097         don't get matches on any .help files, for instance.
18098         
18099 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
18100
18101         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
18102         font hash table, if we have a GdkFontPrivate entry for this font
18103         already, simply increment its reference count, provided by Olaf Dietsche
18104         <olaf.dietsche+list.gtk@netcologne.de>.
18105
18106         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
18107         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
18108
18109 1999-03-09  Federico Mena Quintero  <federico@nuclecu.unam.mx>
18110
18111         * gtk/gtkstyle.c (gtk_default_draw_handle): Significantly reduced
18112         the number of calls to gdk_draw_point() (and thus to X) by
18113         clipping the points by hand.
18114
18115         * gtk/gtkhandlebox.c (draw_textured_frame): Actually make use of
18116         the clip parameter.
18117         (gtk_handle_box_paint): Only paint the handle if the expose area
18118         intersects it.
18119
18120 Sun Mar  7 18:46:37 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
18121
18122         * gtk/gtkmain.c (add_dll_suffix): Add this function (OS/2 ver.)
18123
18124 Sun Mar  7 11:43:34 1999  ape@spacetec.no  (Asbjorn Pettersen)
18125
18126         * gtk/gtkthemes.c (gtk_theme_engine_get): Add OS/2 changes.
18127         Added function gen_8_3_dll_name(gchar *name, gchar *fullname).
18128
18129 Fri Mar  5 09:12:24 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
18130
18131         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc): Open file in
18132          textmode (O_TEXT) for OS/2 version.
18133
18134 Sun Feb 28 16:46:02 1999  Stefan Jeske  <stefan@gtk.org>
18135
18136         * gtk/gtkspinbutton.[c,h] gtk/testgtk.c: Added two new signals to 
18137         GtkSpinButton, "input" and "output", to make the output more flexible.
18138         The user has to provide a mapping between adjustment->value and the
18139         output string (and vice versa, if the spin button is editable). 
18140         See testgtk for examples.
18141
18142 Sat Feb 27 01:18:47 1999  Tim Janik  <timj@gtk.org>
18143
18144         * ChangeLog: moved old ChangeLog to ChangeLog.pre-1-2, and started
18145         new one.
18146         
18147         * configure.in: set gtk+ version to 1.3.0.