]> Pileus Git - ~andy/gtk/blob - ChangeLog
Rename to gtk_radio_menu_item_get_group(), add deprecated alias. (#57044)
[~andy/gtk] / ChangeLog
1 Thu Jul 12 18:29:40 2001  Owen Taylor  <otaylor@redhat.com>
2
3         * gtk/gtkradiomenuitem.[ch] (gtk_radio_menu_item_group): 
4         Rename to gtk_radio_menu_item_get_group(), add deprecated
5         alias. (#57044)
6
7         * gtk/gtkfilesel.c: Indentation fix.
8
9 Thu Jul 12 17:33:00 2001  Owen Taylor  <otaylor@redhat.com>
10
11         * gtk/gtkbbox.h gtk/gtkcompat.h: Patch from Mathias 
12         Hasselmann to fix warnings in compat macros. 
13         (#56773)
14
15         * gtk/gtkmenubar.c (gtk_menu_bar_hierarchy_changed): Fix 
16         stupid wrong cast added in last patch.
17
18 Thu Jul 12 16:51:34 2001  Owen Taylor  <otaylor@redhat.com>
19
20         * gtk/gtkwidget.c: Replace a couple of inappropriate calls to 
21         GTK_WIDGET_HAS_FOCUS() with gtk_widget_is_focus(). (#57067)
22
23 Thu Jul 12 14:06:19 2001  Owen Taylor  <otaylor@redhat.com>
24
25         * gtk/gtkmenubar.c (gtk_menu_bar_hierarchy_changed): Add
26         missing cast.
27
28         * gtk/gtkcontainer.c (gtk_container_get_focus_chain): Fix
29         NULL/FALSE return value confusion.
30
31         * gtk/gtkrange.c (coord_to_value): Fix division-by-zero
32         problem when scrollbar completely fills range. (Patch
33         from  Matthias Clasen, #57047)
34
35 Thu Jul 12 13:53:28 2001  Owen Taylor  <otaylor@redhat.com>
36
37         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Properly
38         clean up when handling events for move-resize emulation.
39         (Problem traced down by Matthias Clasen, #57271)
40
41 Thu Jul 12 13:43:27 2001  Owen Taylor  <otaylor@redhat.com>
42
43         * gtk/gtkclist.c gtk/gtkcolorsel.c gtk/gtkcombo.c
44           gtk/gtkctree.c gtk/gtkcurve.c gtk/gtkentry.c
45           gtk/gtkfontsel.c gtk/gtkhandlebox.c 
46           gtk/gtkimcontextsimple.c gtk/gtkmain.c gtk/gtkmenu.c
47           gtk/gtkmenuitem.c gtk/gtkoptionmenu.c gtk/gtkpixmap.c
48           gtk/gtkselection.c gtk/gtktextdisplay.c gtk/gtktextview.c
49           gtk/gtktooltips.c gtk/gtkwidget.c gtk/gtkwindow.c:
50         Formatting fixes from multihead brnach. [ mostly foo(bar) => foo (bar) ]
51
52 2001-07-09  Peter Williams  <peterw@ximian.com>
53
54         * gtk/Makefile.am ($(srcdir)/stamp-gtk.defs): Add a cd $(srcdir)
55         for when srcdir != builddir
56
57 Mon Jul  9 12:50:51 2001  Jonathan Blandford  <jrb@redhat.com>
58
59         * gtk/gtktreemodel.c: remove gtk_tree_model_get_first in favor of
60         gtk_tree_model_get_iter_root.
61
62         * gtk/gtkliststore.c: Add a bunch of g_return statements.
63         (gtk_list_store_iter_n_children): Fix up.
64
65         * gtk/gtktreestore.c: Add a bunch of g_return statements.
66
67 Fri Jul  6 15:38:33 2001  Owen Taylor  <otaylor@redhat.com>
68
69         * gtk/gtkwidget.c (gtk_widget_class_init):
70         G_SIGNAL_TYPE_STATIC_SCOPE GtkSelectionData to
71         restore some workingness.
72
73         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Fix 
74         handle of window type for input-only windows.
75
76 Thu Jul  5 21:53:46 2001  Owen Taylor  <otaylor@redhat.com>
77
78         * gtk/gtkbbox.[ch] gtk/gtkbox.[ch] gtk/gtk[hv]bbox.c:
79         Patch from Gregory Merchan to add 
80         gtk_button_box_set_secondary(), which separates
81         the child into a separate group from the normal
82         buttons. (#56331)
83
84         * gtk/gtkdialog.c: Make help buttons secondary by
85         default.
86
87         * gtk/gtkbbox.c: Added a child property "secondary".
88
89         * gtk/testgtk.c: Turn on the help button for the 
90         color selector to check that it properly appears
91         as secondary.
92
93 Mon Jul  2 01:09:37 2001  Owen Taylor  <otaylor@redhat.com>
94  
95         * gdk/gdkwindow.[ch] gdk/gdkinternals.h gdk/x11/gdkwindow-x11.c
96         gdk/linux-fb/gdkwindow-fb.c gdk/x11/gdkwindow-x11.c gdk/gdk:
97         Add gdk_set_pointer_hooks() to allow pointer-querying to
98         be hooked by an event record/playback system like GERD.
99         (#56914)
100         
101 Thu Jul  5 08:57:07 2001  Owen Taylor  <otaylor@redhat.com>
102
103         * gtk/gtkwidget.c (gtk_widget_reset_rc_style): Pass
104         in the right value of initial_emission to
105         gtk_widget_set_style_internal (#57091)
106
107 Wed Jul  4 23:17:04 2001  Owen Taylor  <otaylor@redhat.com>
108
109         * gtk/gtkdnd.c (gtk_drag_dest_hierarchy_changed):
110         Make compile.
111
112         * gtk/gtkwidget.c (gtk_widget_reset_rc_style): Fix problem
113         with calling gtk_widget_set_style_internal() with
114         the old style, not the new style. (#56989)
115
116 Wed Jul  4 22:35:40 2001  Owen Taylor  <otaylor@redhat.com>
117
118         * gtk/gtklabel.c gtk/gtkmenubar.c gtk/gtktreeviewcolumn.c
119           gtk/gtkwidget.c:
120         Check GTK_WIDGET_TOPLEVEL(gtk_widget_get_toplevel (widget)),
121         not GTK_WIDGET_GET_ANCESTOR ... see 
122         http://mail.gnome.org/archives/gtk-devel-list/2001-July/msg00072.html.
123         Indicate the best practice in the docs for gtk_widget_get_toplevel().
124
125         * gtk/gtkwidget.[ch]: Expose a private _gtk_widget_hierarchy_changed(),
126         so GtkPlug can give the correct signals when transforming
127         from a child to a toplevel.
128         
129         * gtk/gtkdnd.c (gtk_drag_dest_hierarchy_changed): Handle
130         reparentation correctly.
131
132         * gtk/gtkwidget.c (gtk_widget_propagate_hierarchy_changed):
133         Propagate the previous_toplevel argument down properly.
134
135         * gtk/gtklabel.c (gtk_label_finalize): Fix unrefing
136         of wrong atr list.
137
138         * gtk/gtkplug.[ch]: Add an "embedded" signal.
139
140         * gtk/gtksocket.[ch]: Add "child_added", "child_removed"
141         signals.
142
143         * gtk/gtkplug.[ch] gtk/gtksocket.[ch]: Add 
144         functions gtk_plug_get_id(), gtk_socket_get_id(),
145         to avoid the user having to worry about realization,
146         and gdkx.h.
147
148         * tests/testsocket.c: Extend to try out the new signals
149         and gtk_plug/socket_get_id().
150
151         * gtk/gtklabel.c (gtk_label_set_pattern_internal): Fix
152         setting of underline attributes.
153
154         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Ignore
155         DestroyNotify events from SubstructureNotifyMask
156
157         * gdk/x11/gdkwindow-x11.c (gdk_window_reparent):
158         Switch GDK_WINDOW_TYPE (window) as needed.
159
160         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Clean up,
161         allow creation of toplevel windows as children of
162         foreign windows.
163
164         * gtk/gtkplug.c: Remove hacks involving changing private
165         fields of GdkWindow.
166
167         * gtk/gtkplug.[ch] gtk/gtksocket.c: Work to make 
168         exactly the same signals and notification
169         be emitted for local embedding as for inter-process
170         embedding.
171
172 2001-07-04  James Henstridge  <james@daa.com.au>
173
174         * gtk/gtkliststore.h: add missing gtk_list_store_newv prototype.
175
176 Mon Jul  2 16:53:25 2001  Owen Taylor  <otaylor@redhat.com>
177
178         * gtk/xembed.h gtk/gtkplug.c gtk/gtksocket.c: For
179         XEMBED embedding add a _XEMBED_INFO property to the
180         client with version number and a "mapped" flags.
181         Use the mapped flag instead of the racy MapRequestEvent
182
183         * gtk/gtksocket.c: Clean up the gtk_socket_steal()
184         code to reliably set things (when the child is a passive
185         embedder participating in the XEMBED protocol) intead
186         of just being a hack for embedding non-participating
187         programs. Fix various bugs and race conditions.
188         
189         * gtk/gtksocket.[ch] gtk/gtkplug.[ch]: Make local embedding
190         work by simply making the GtkSocket the gtk parent
191         of the GtkPlug. Set a flag in this case and make
192         the GtkPlug work like a normal container by overriding
193         methods such as check_resize and "chaining past" GtkWindow
194         to GtkBin.
195
196         * gtk/gtkentry.c (gtk_entry_real_activate)
197           gtk/gtkmain.c (gtk_propagate_event): 
198         Eliminate use of gtk_widget_get_ancestor (widget, GTK_TYPE_WINDOW).
199         
200         * gtk/gtkwidget.c (gtk_widget_get_toplevel,
201         gtk_widget_get_ancestor):
202         Explain why gtk_widget_get_ancestor (widget, GTK_TYPE_WINDOW)
203         might not give the expected result and recommend
204         an alternative.
205
206         * tests/testsocket.c tests/testsocket_child.c
207         tests/testsocket_common.c tests/Makefile.am: Extended
208         to test different type of adding plugs to sockets
209         (local,active,passive), and to test mapping/unmapping
210         the plug.
211
212         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Don't
213         mark the window as destroyed until after we
214         called _gdk_windowing_window_destroy().
215         (_gdk_windowing_window_destroy() may use GDK functions
216         on the window.)
217
218         * gdk/x11/gdkinput.c: Remove the check for finalization - 
219         devices can be finalized under some circumnstances.
220  
221         * gdk/x11/gdkinput-x11.c (gdk_input_device_new): Fix 
222         small problem with GDK_TYPE_DEVICE.
223  
224 2001-07-02  Havoc Pennington  <hp@pobox.com>
225
226         * gdk/x11/gdkwindow-x11.c (gdk_wmspec_change_state): fix to 
227         use constants not atoms.
228
229 2001-07-02  James Henstridge  <james@daa.com.au>
230
231         * gtk/gtktextview.c (gtk_text_view_class_init): same here for
232         PANGO_TYPE_TAB_ARRAY.
233
234         * gtk/gtktexttag.c (gtk_text_tag_class_init): same here, but also
235         for PANGO_TYPE_TAB_ARRAY.
236
237         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_class_init):
238         s/GTK_TYPE_PANGO_FONT_DESCRIPTION/PANGO_TYPE_FONT_DESCRIPTION/
239
240         * gtk/gtk-boxed.defs: move all the boxed definitions to the top of
241         the file.  Remove Pango types from defs -- they are now defined in
242         libpango.
243
244 Mon Jul  2 06:35:10 2001  Tim Janik  <timj@gtk.org>
245
246         * gdk/gdkkeys.c (gdk_keymap_class_init): s/signal_newc/signal_new/
247
248         * gtk/gtkobject.c (gtk_object_destroy): invoke
249         g_object_run_dispose().
250
251         * gtk/gtkwindow.c: 
252         * gtk/gtkwidget.c: 
253         * gtk/gtkobject.c:
254         * gtk/gtklist.c: s/shutdown/dispose/ for the GObject
255         method.
256
257 Sat Jun 30 20:44:48 2001  Owen Taylor  <otaylor@redhat.com>
258
259         * gtk/gtktypeutils.c (gtk_type_class): Remove
260         change check for GTK_TYPE_OBJECT derivation to
261         G_TYPE_OBJECTS - it's Tim-approved to use this 
262         for arbitary objects.
263
264         * gtk/gtkwindow.c gtk/gtkcontainer.[ch]: underscore
265         prefix gtk_container_dequeue_resize_handler().
266
267         * gtk/gtkwidget.[ch]: Add a previous_toplevel argument
268         to the hierarachy_changed signal, since you otherwise
269         have to always keep that around.
270
271         * gtk/gtkmenubar.c gtk/gtklabel.c gtk/gtksocket.c: Adapt
272         for extra argument to hierarchy_changed.
273
274 Tue Jun 26 19:39:03 2001  Owen Taylor  <otaylor@redhat.com>
275
276         * gtk/gtkwidget.c (gtk_widget_set_style): Allow %NULL
277         for style to mean "revert to default style"
278
279         * gtk/gtkwidget.[ch] (gtk_widget_set_rc_style,
280           gtk_widget_restore_default_style): Make this functions
281         deprecated aliases for gtk_widget_set_style (widget, NULL).
282
283         * gtk/gtkwidget.[ch]: Remove:
284            gtk_widget_set_default_style ()
285            gtk_widget_push_style ()
286            gtk_widget_pop_style ()
287         These functions interact are overriden by RC files, and
288         thus virtually useless, and complicated.
289
290 Fri Jun 22 18:49:48 2001  Owen Taylor  <otaylor@redhat.com>
291
292         * gtk/gtkrc.c: Add a GtkRcContext structure to hold 
293         most of the previous global variables in gtkrc.c. This is
294         in preparation for multi-head, since each screen can
295         have different GtkSettings and RC information.
296
297         * gtk/gtkrc.[ch]: 
298
299         * gtk/gtkrc.h (struct _GtkRcStyleClass): Add a
300         GtkSettings parameter to GtkRcStyle::parse.
301
302         * gdk/x11/gdkevents-x11.c gtk/gtksettings.c gtk/gtkrc.c: 
303         Add two new settings gtk-theme-name, gtk-key-theme-name,
304         for RC files that are loaded by name after reading
305         the default RC files.
306         
307         * gtk/gtkrc.c: Allow priorities for styles, as wll as
308         bindings.
309
310         * gtk/gtkenums.h gtk/gtkrc.c: Add GTK_PATH_PRIO_THEME,
311         and use it by default for RC files loaded via 
312         gtk-theme-name, gtk-key-theme-name.
313
314         * gtk/gtkiconfactory.c (gtk_icon_source_set_filename)
315         gtk/gtkrc.c (gtk_rc_parse_pixmap_path_string) 
316         tests/testgtkrc: Require pathnames to be absolute.
317
318         * gtk/gtkrc.c gtk/gtkiconfactory.c: Look up the full filename for
319         the source when parsing, since the operation of looking up a
320         pixmap from an RC file depends on the parsing context.
321
322         * gtk/gtkrc.c (gtk_rc_context_reparse_all): Automatically
323         reset RC styles on all widgets when files are reparsed.
324
325         * tests/testgtk.c (create_rc_file) 
326           gtk/gtkwindow.c (gtk_window_read_rcfiles): 
327         Simplify, now that gtk_rc_reparse_all() resets styles on
328         all widgets itself.
329
330         * gtk/gtkmain.c (gtk_get_default_language): Fix broken
331         return value.
332
333         * gtk/gtksettings.[ch] (gtk_settings_install_property[_ch]): Remove
334         GtkSettings argument.
335
336         * gtk/gtksettings.[ch] (gtk_settings_get_default): Rename from
337         gtk_settings_get_global().
338
339         * gtk/gtkwidget.[ch]: Add a function gtk_widget_Get_settings()
340         to get the appropriate GtkSettings for a widget. (For now,
341         just gets the default GtkSetttings.) 
342
343         * gtk/gtkcolorsel.c gtk/gtkentry.c gtk/gtkmenu.c gtk/gtkmenubar.c
344           gtk/gtktextview.c gtk/gtktoolbar.c: Fixes for GtkSettings
345         changes.
346
347         * gtk/gtkrc.[ch]: Add gtk_rc_get_style_by_paths() to allow
348         getting a style for a path without actually having a widget.
349         (Allows using a style for a subpart of a widget, for
350         example.)
351
352         * gtk/gtkrc.[ch]: Add gtk_rc_reparse_all_for_setting() to allow forcing
353         the RC files to be reloaded for just one GtkSettings
354         (not sure how useful this really is.)
355
356         * gtk/gtkrc.h: Deprecate
357         gtk_rc_add_widget_name/widget_class/class_style
358
359 2001-06-30  Alex Larsson  <alexl@redhat.com>
360
361         * gdk/linux-fb/gdkinput-none.c:
362         * gdk/linux-fb/gdkinput.c:
363         * gdk/linux-fb/gdkinputprivate.h:
364         Convert GdkDevice to a GObject.
365
366         * linux-fb/gdkprivate-fb.h:
367         * linux-fb/gdkvisual-fb.c:
368         Convert GdkVisual to a GObject.
369
370 2001-06-29  Alex Larsson  <alexl@redhat.com>
371
372         * gdk/gdkvisual.h:
373         * gdk/gdkcolor.c:
374         * gdk/x11/gdkx.h:
375         * gdk/x11/gdkvisual-x11.c:
376         Convert GdkVisual to a GObject.
377
378         * gdk/gdkinput.h:
379         * gdk/gdkevents.c:
380         * gdk/x11/gdkinputprivate.h:
381         * gdk/x11/gdkinput-gxi.c:
382         * gdk/x11/gdkinput-none.c:
383         * gdk/x11/gdkinput-x11.c:
384         * gdk/x11/gdkinput-xfree.c:
385         * gdk/x11/gdkinput.c:
386         Convert GdkDevice to a GObject.
387
388 Fri Jun 29 22:13:28 2001  Jonathan Blandford  <jrb@redhat.com>
389
390         * gtk/gtktreestore.c (gtk_tree_store_new): changed new_with_types
391         to just plain new, fixing the number of columns, and column types
392         at creation time.
393
394         * gtk/gtkliststore.c (gtk_list_store_new): ditto.
395
396         * gtk/gtkcellrenderertext.c
397         (gtk_cell_renderer_text_set_fixed_height_from_font): FIX the
398         height to a specific font.
399
400         * gtk/gtktreeview.c (gtk_tree_view_is_expander_column): fix brokenness.
401
402         * tests/*c: change to work with new store models.
403
404 2001-06-29  Havoc Pennington  <hp@redhat.com>
405
406        * Throughout: fixes to compile with G_DISABLE_COMPAT
407         (s/g_signal_connectc/g_signal_connect/,
408         s/g_signal_newc/g_signal_new/,
409         s/g_signal_disconnect_by_func/g_signal_handlers_disconnect_by_func/)
410
411 Fri Jun 29 03:14:16 2001  Jonathan Blandford  <jrb@webwynk.net>
412
413         * gtk/gtktreeselection.c (gtk_tree_selection_selected_foreach):
414         add path argument to selection callbacks.
415
416 Fri Jun 29 00:13:34 2001  Jonathan Blandford  <jrb@redhat.com>
417
418         * gtk/gtktreemodel.c (gtk_tree_model_foreach): New function to
419         walk through a model in a depth first manner, with the option to
420         break out.
421
422 Fri Jun  8 18:52:10 2001  Jonathan Blandford  <jrb@redhat.com>
423
424         * gtk/gtktreeview.[hc]: Patch Thomas Broyer from
425         <tbroyer@ltgt.net>. Expander arrows are now attached to a specific
426         column and follow it when draged, rather than a location in the
427         view. "expander_column" property and drawing functions changed
428         accordingly.  Fixes bug #55942.
429
430         (gtk_tree_view_{set,get}_expander_column): Now works with a
431         GtkTreeViewColumn* instead of int.
432
433 Thu Jun 28 22:53:18 2001  Owen Taylor  <otaylor@redhat.com>
434
435         *  gdk/gdk.c gtk/gtktypeutils.c: Fix args to g_type_init(). 
436
437 2001-06-28  Havoc Pennington  <hp@pobox.com>
438
439         * gdk/x11/gdkimage-x11.c (_gdk_x11_get_image): Clip the retrieved
440         image data to the screen, using a server grab to avoid race
441         conditions.
442
443         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): remove 
444         check for NULL return from gtk_image_new_from_stock(), it never
445         returns NULL.
446         (gtk_item_factory_create_item): fix bug where we parsed the stock
447         ID as an inline pixbuf
448
449         * gtk/gtktext.c (gtk_text_key_press): numeric keypad support
450
451         * gtk/gtkspinbutton.c (gtk_spin_button_key_press): numeric keypad
452         support (should be using binding set here)
453
454         * gtk/gtkoptionmenu.c (gtk_option_menu_key_press): numeric keypad
455         support (should be using binding set here)
456
457         * gtk/gtkmenushell.c (gtk_menu_shell_class_init): numeric keypad 
458         support
459
460         * gtk/gtkmenu.c (gtk_menu_class_init): numeric keypad support
461
462         * gtk/gtkmenubar.c (gtk_menu_bar_class_init): numeric keypad
463
464         * gtk/gtklistitem.c (gtk_list_item_class_init): numeric keypad
465
466         * gtk/gtkimcontextsimple.c
467         (gtk_im_context_simple_filter_keypress): keypad
468
469         * gtk/gtkfilesel.c (gtk_file_selection_key_press): keypad 
470
471         * gtk/gtkentry.c (gtk_entry_class_init): numeric keypad fixes
472
473         * gtk/gtkctree.c (gtk_ctree_class_init): numeric keypad support
474
475         * gtk/gtkcolorsel.c (palette_activate): keypad support (of course,
476         should be binding-setted)
477
478         * gtk/gtkwindow.c (gtk_window_class_init): numeric keypad fixes
479
480         * gtk/gtkclist.c (gtk_clist_class_init): numeric keypad fixes
481
482         * gtk/gtkcalendar.c: numeric keypad fixes
483
484         * gtk/gtktextview.c (gtk_text_view_class_init): numeric keypad
485         support
486
487         * gdk/gdkwindow.c (gdk_window_get_clip_region): fix infinite loop
488         screwup
489
490         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha): 
491         clip the render area to the drawable's clip region in advance,
492         so we don't get data from the server that we don't need.
493
494         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
495         check return value of gdk_pixbuf_get_from_drawable(), fall back 
496         to bilevel alpha if we can't get the pixbuf to composite against.
497
498         * gdk/gdkdraw.c (gdk_drawable_get_image): set the image colormap
499
500         * gdk/gdkimage.c (gdk_image_get_colormap): add
501         gdk_image_set_colormap, gdk_image_get_colormap
502
503         * gdk/gdkpixbuf-drawable.c (rgbconvert): Change all converters to
504         take a region of the image, instead of converting the entire
505         image.
506
507         * gtk/gtkwidget.h (struct _GtkWidgetClass): add show_help
508         keybinding signal. Add default bindings for it. Add default
509         handler for show_help that shows the tooltip for the widget.
510
511         * gtk/gtkdialog.c (gtk_dialog_class_init): add binding set and
512         "close" keybinding signal, remove key press handler.
513
514         * gtk/gtktooltips.c (gtk_tooltips_set_colors): Just remove this,
515         it's not our usual practice to leave a deprecated function around
516         with a runtime warning, plus we don't want it to appear in docs,
517         plus if we make them yellow no one will want to change them
518         anyhow.
519
520 Thu Jun 28 23:53:31 2001  Tim Janik  <timj@gtk.org>
521
522         * gtk/gtkwidget.c (gtk_widget_hide): !GTK_OBJECT_DESTROYED() ->
523         GTK_WIDGET_REALIZE() for resize queueing.
524
525         * gtk/gtkmain.c (gtk_main_do_event): !GTK_OBJECT_DESTROYED() ->
526         GTK_WIDGET_REALIZE() for post event delivery destruction upon
527         GDK_DESTROY.
528         
529         * gtk/gtkwidget.c: added GtkWidget::event-after notification signal, to
530         sompensate for former (pre-2.0) connect_after() facility.
531         (gtk_widget_send_expose): 
532         (gtk_widget_event): assert the widget is realized, since event delivery
533         to non-realized widgets is essentially a bug. event handlers should
534         be able to unconditionally rely on widget->window (unless they
535         emit events on their own which can trigger widget destruction).
536         (gtk_widget_event_internal): removed old outdated GTK_OBJECT_DESTROYED()
537         logic. event delivery happens as follows:
538         a) emission of GtkWidget::event (RUN_LAST handler). returns was_handled.
539         b) if !was_handled in (a) and the widget is still realized, emit event-
540            specific signal (RUN_LAST handler). returns was_handled.
541         c) emission of GtkWidget::event-after for notification if the widget is
542            still realized (regardless of was_handled from previous stages, no
543            class handler). no return value.
544         d) was_handled gets passed on to caller, to determine further
545            propagation. if the widget got unrealized meanwhile, was_handled
546            is returned as TRUE.
547
548         * gdk/gdkevents.[hc]: added gdk_event_get_root_coords() and
549         gdk_event_get_coords().
550
551 Thu Jun 28 17:18:41 2001  Tim Janik  <timj@gtk.org>
552
553         * configure.in (GTK_MICRO_VERSION): up version to 1.3.7, interface
554         age 0, binary age 0. depend on glib 1.3.7.
555
556         * gtk/gtkcontainer.c: remove g_signal_handlers_disconnect_by_func() hack.
557
558         * gtk/gtkmenubar.c: same here.
559         
560         * gtk/gtkcontainer.c (gtk_container_focus_tab): fix param-spec retrival.
561
562         * gtk/gtkcolorsel.c (gtk_color_selection_init): fix connect_data() usage.
563
564         * gtk/gtkentry.c (gtk_entry_focus_in): same here.
565         
566         * gtk/gtkmenubar.c (add_to_window): likewise.
567         
568         * gtk/gtktextbtree.c: and here...
569         
570         * gtk/gtktextview.c (gtk_text_view_ensure_layout): same thing.
571         
572         * gtk/gtktoolbar.c (gtk_toolbar_init): once more.
573         
574         * gtk/gtktreemodel.c (connect_ref_callbacks): and another time.
575         
576         * gtk/gtktreeviewcolumn.c:
577         (_gtk_tree_view_column_set_tree_view): yet again.
578
579         * demos/gtk-demo/images.c (progressive_timeout): demonstrate
580         signal connections without g_signal_connect_data().
581         
582         * demos/gtk-demo/stock_browser.c (do_stock_browser): second
583         demo of the matter.
584         
585         * demos/testpixbuf.c (main): running out of equality phrases for the
586         ChangeLog, but had to adapt connections here as well.
587         
588         * demos/testanimation.c (progressive_timeout): and for the fun of it,
589         tackled this the same way.
590         
591         * tests/testtext.c (create_view): ok, it's becoming a pain at this
592         point, but had enough enery for one more fix.
593
594         * tests/testtreecolumns.c (main): stand up man, do your work!
595
596         * tests/testtreeview.c (set_columns_type): ok, this is the last file i
597         fix, either that's been all of it or CVS gtk is broken yet again.
598         
599 2001-06-29  James Henstridge  <james@daa.com.au>
600
601         The following changes correspond to bug #56812
602
603         * gdk/gdkinput.h, gdk/gdkevents.c (GDK_TYPE_DEVICE): register type
604         code for GdkDevice.
605
606         * gdk/gdkcursor.[ch] (GDK_TYPE_CURSOR): register type code for
607         GdkCursor.
608
609 2001-06-19  Havoc Pennington  <hp@pobox.com>
610
611         * gdk/x11/gdkwindow-x11.c (gdk_window_show_unraised): new function
612         for mapping a window without fooling with stacking order, but
613         updating the "withdrawn" flag
614
615         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Do event
616         filtering as soon as possible, moving move resize and wmspec_check
617         handling after the event filter.  Make default filter apply to all
618         events, not just those with no GdkWindow wrapped around the X
619         window. Fix a FIXME about how the window could be a pixmap using 
620         RTTI; this of course assumes GDK_IS_WINDOW() is optimized. 
621
622         Also, be robust against events not on a known GdkWindow.
623
624         * gdk/x11/gdkmain-x11.c (gdk_x11_grab_server,
625         gdk_x11_ungrab_server): export reference-counted server grabs, so
626         other people can grab server over a GDK function that also does
627         so.
628
629 Wed Jun 27 19:40:31 2001  Jonathan Blandford  <jrb@redhat.com>
630
631         * gtk/gtktreeviewcolumn.c
632         (gtk_tree_view_column_pack_start_cell_renderer): New function to
633         reflect that you can (hypothetically) pack cell renderers into a
634         column.
635         (gtk_tree_view_column_pack_end_cell_renderer): ditto.
636         (gtk_tree_view_column_cell_is_visible): Move more functionality to
637         the column.
638         (gtk_tree_view_column_cell_can_focus): Move more functionality to
639         the column.
640
641         * gtk/gtktreeview.c: Move to use new column-packing code.
642         (gtk_tree_view_real_expand_row): remove totally braindead code.
643         (gtk_tree_view_real_collapse_row): ditto.
644
645 2001-06-27  Kjartan Maraas  <kmaraas@gnome.org>
646
647         * gtk/gtktreeviewcolumn.c: Fix a typo.
648         
649 2001-06-26  Joel Becker  <jlbec@evilplan.org>
650
651         * gdk-pixbuf/gdk-pixbuf-csource.c: remove '#include "x"' line
652           at the end of the file
653
654 2001-06-26  Havoc Pennington  <hp@redhat.com>
655
656         * gtk/gtkwindow.c (gtk_window_set_policy): forgot a notification
657
658 2001-06-26  Havoc Pennington  <hp@redhat.com>
659
660         * gtk/gtkwindow.c (gtk_window_class_init): add "resizable"
661         property
662
663 Tue Jun 26 12:59:28 2001  Jonathan Blandford  <jrb@redhat.com>
664
665         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_set_model): fix
666         stupid missing statement
667
668         * gtk/gtktreeview.c (gtk_tree_view_set_destroy_count_func): New
669         private function for ATK.  It notifies you of how many _visible_
670         children are deleted when a node is deleted.  Should be used by
671         atk only.
672
673 Tue Jun 26 11:06:34 2001  Owen Taylor  <otaylor@redhat.com>
674
675         * gtk/gtkclist.c gtk/gtkentry.c gtk/gtkspinbutton.c:
676         Use new pango_context_get_metrics() to fix problems
677         with font lists in descriptions. (#56184, reported by
678         Jonas Borgström)
679
680 Tue Jun 26 10:04:30 2001  Tim Janik  <timj@gtk.org>
681
682         * gtk/gtkiconfactory.c:
683         * gtk/gtkitemfactory.c: use gdk_pixbuf_new_from_stream(). fixed up
684         item factory so inlined pixbufs actually work.
685
686 2001-06-25  Havoc Pennington  <hp@redhat.com>
687
688         * gtk/gtktreeviewcolumn.h, gtk/gtktreeviewcolumn.c:
689         s/RESIZEABLE/RESIZABLE/
690
691         * gtk/gtkwindow.c, gtk/gtkwindow.h: s/resizeable/resizable/
692
693 2001-06-25  Alexander Larsson  <alexl@redhat.com>
694
695         * configure.in:
696         Added --enable-fbmanager. This is some experimental code
697         that lets several GtkFB apps coordinate their access to the
698         framebuffer.
699         
700         * acconfig.h:
701         Added ENABLE_FB_MANAGER.
702
703         * gdk/linux-fb/Makefile.am:
704         Added gdkfbmanager and gdkfbswitch.
705
706         * gdk/linux-fb/gdkkeyboard-fb.c:
707         * gdk/linux-fb/gdkmouse-fb.c:
708         * gdk/linux-fb/gdkprivate-fb.h:
709         Split device init and open so that
710         they can be opened and closed while switched
711         away.
712
713         * gdk/linux-fb/gdkmain-fb.c:
714         Add the basic manager communication.
715
716         * gdk/linux-fb/gdkrender-fb.c:
717         Don't update to the shadow fb if we're
718         blocked by the fb manager.
719
720 Sun Jun 24 22:15:16 2001  Owen Taylor  <otaylor@redhat.com>
721
722         * docs/Changes-2.0.txt: Add note about child property
723         changes.
724
725 Sun Jun 24 21:34:32 2001  Owen Taylor  <otaylor@redhat.com>
726
727         * gtk/gtkenums.h gtk/gtkiconfactory.c: Add a special size for
728         drag-and-drop GTK_ICON_SIZE_DND (Default to 32x32)
729
730         * gtk/gtkdnd.c (gtk_drag_dest_set_target_list): Fix problem
731         with un'reffing wrong list reported by Jeff Franks.
732
733         * gtk/gtkdnd.[ch] (_gtk_drag_{source,}dest_handle_event): _prefix.
734
735         * gtk/gtkdnd.c (gtk_drag_set_icon_default): Use GTK_STOCK_DND
736         for the default icon. Remove inline XPM.
737
738         * gtk/gtkstock.h gtk/gtkiconfactory.c:
739         Add GTK_STOCK_DND GTK_STOCK_DND_MULTIPLE (Currently, stock_new
740         is used for GTK_STOCK_DND, but it is a bit too small.)
741
742         * gtk/stock-icons/stock_dnd_multiple.png
743         gtk/stock-icons/Makefile.am: New stock icon moved from gnome-libs.
744
745         * gtk/gtkdnd.c (gtk_drag_source_event_cb): Only return
746         TRUE when starting a drag. In other cases, we are
747         just observing. (#52995)
748
749         * gtk/gtkdnd.[ch] (gtk_drag_set_icon_{stock,pixbuf}): Add 
750         function to set the icon for a drag from a GdkPixbuf
751         or stock ID.
752
753         * gtk/gtkdnd.[ch] (gtk_drag_source_set_icon_{stock,pixbuf}): 
754         Likewise, for drag sources.
755
756         * gtk/gtkdnd.h: Deprecate gtk_drag_set_default_icon.
757         (Now should be done using the stock system.)
758
759 Sun Jun 24 12:06:47 2001  Owen Taylor  <otaylor@redhat.com>
760
761         * gtk/gtktextview.[ch] (gtk_text_view_set_text_window_size): 
762         Removed - didn't work and not particularly useful anyways
763         if it did. 
764
765 Sun Jun 24 11:29:35 2001  Owen Taylor  <otaylor@redhat.com>
766
767         * gdk/x11/gdkimage-x11.c (gdk_image_new): Fix stupid error
768         introduced last night that was making things decidedly not work.
769
770         * gtk/*.[ch]: Patch from Kristian Rietveld adding 80 getters
771         so that we have getter/setter pairing everywhere it makes
772         sense. (#55767)
773
774         * gtk/gtkradiobutton.[ch] gtk/gtktoolbar.c tests/testgtk.:
775         Rename gtk_radio_button_group to gtk_radio_button_get_group, add a
776         deprecated compat macro. (#55516)
777
778         * gtk/gtklabel.[ch]: Add functions
779         gtk_label_set/get_use_underline(), gtk_label_set/get_use_markup(),
780         gtk_label_set_label(), which mirror the property API for GtkLabel.
781         Make gtk_label_get_attributes() only reflect the attributes
782         set by gtk_label_set_attributes.
783
784         * gtk/gtknotebook.c (gtk_notebook_set_current_page) gtk/gtkcompat.h: Rename
785         from gtk_notebook_set_page().
786
787 Sat Jun 23 18:02:46 2001  Owen Taylor  <otaylor@redhat.com>
788
789         * configure.in: Fix tests for XShm.h.
790
791         * gdk/x11/gdkimage-x11.c: Cleanup error handling in
792         gdk_image_new() by use of goto, properly use g_object_unref().
793
794 Sat Jun 23 22:03:20 2001  Tim Janik  <timj@gtk.org>
795
796         * gdk/x11/gdkimage-x11.c (gdk_image_init): disabled g_free (image)
797         calls, as GdkImage is an object. these should be g_obejct_unref()
798         instead but that won't work because of the g_error() statement
799         in gdk_x11_image_destroy(). so for now, i did s/g_free/LEAK_IMAGE/
800         to spot these places.
801
802 Sat Jun 23 10:27:53 2001  Owen Taylor  <otaylor@redhat.com>
803
804         * modules/input/gtkimcontextxim.c: Fixup some problems with 
805         text length handling in error cases.
806
807         * gtk/gtkwidget.c (gtk_widget_size_allocate): Reorder
808         a bit to make test actually warn on attempt to allocation
809         a negative size. (#56101, Matthias Clasen)
810
811 Fri Jun 22 14:06:08 2001  Jonathan Blandford  <jrb@redhat.com>
812
813         * gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): Fix bug
814         noticed by Brian Cameron.
815         (gtk_tree_view_real_expand_row): Fix bug noticed by Brian
816         Cameron.
817
818 2001-06-22  Hans Breuer  <hans@breuer.org>
819
820         * gdk/gdk.def : updated externals
821
822         * gdk/win32/gdkdrawable-win32.c : corrected some casts
823         in GDK_NOTEs
824
825         * gdk/win32/gdkevents-win32.c : use _gdk_windowing_window_get_offsets
826         to translate coordinates to the internal > 16 bit system
827         Try to handle WM_WINDOWPOSCHANGED to get better performance for
828         when moving/resizing
829
830         * gdk/win32/gdkkeys-win32.c : implement gdk_keymap_get_default ()
831         and gdk_keymap_get_direction (). The latter is untested for
832         the RTL case
833
834         * gtk/gtk.def : updated externals
835
836         * gtk/gtkmain.c : gtk_get_default_language () should reurn the result
837         from pango_language_from_string (), not an already freed pointer
838
839         * gtk/stock-icons/stock_menu_sort_ascending.png : PNGs need to be 
840         binary (-kb) to be useable on windoze
841  
842 2001-06-21  Alexander Larsson  <alexl@redhat.com>
843
844         * gdk/linux-fb/gdkfont-fb.c (gdk_font_from_description): 
845         Update to new PangoLanguage changes.
846         
847         * gtk/gtkwindow-decorate.c:
848         * gtk/gtkwindow.[ch]:
849         Added setting argument to gtk_window_set_has_frame ()
850         
851 Thu Jun 21 13:42:01 2001  Owen Taylor  <otaylor@redhat.com>
852
853         * gdk/x11/gdkkeys-x11.c (gdk_keymap_get_direction): Handle
854         the case without XKB properly.
855
856         * gtk/gtkrc.c (gtk_rc_set_default_files): Remove
857         unused gtk_rc_auto_parse variable.
858
859         * gtk/gtkrc.[ch] gtk/gtkstyle.c docs/Changes-2.0.txt:
860         Remove gtk_rc_set_image_loader(), gtk_rc_load_image(), no
861         longer needed with GdkPixbuf.
862
863         * gtk/gtkrc.c (_gtk_rc_init): Make private.
864
865 Fri Jun 15 16:26:12 2001  Owen Taylor  <otaylor@redhat.com>
866
867         * gtk/gtkentry.h: Mark deprecated functions with
868         GTK_DISABLE_DEPRECATED.
869
870 Mon Jun 11 18:15:16 2001  Owen Taylor  <otaylor@redhat.com>
871
872         * gdk/gdk.h: Add missing gdk_rectangle_get_type() prototype.
873
874         * gtk/gtk[hv]scale.c: Include math.h, stdlib.h
875
876         * gdk/gdkpango.h gtk/gtkclist.c gtk/gtkentry.c gtk/gtkmain.[ch]
877           gtk/gtkspinbutton.c gtk/gtkstyle.c gtk/gtktextbuffer.c
878           gtk/gtktextdisplay.c gtk/gtktextiter.[ch]
879           gtk/gtktextlayout.c gtk/gtktexttag.[ch] gtk/gtkwidget.c: Adapt
880           to recent changes in Pango.
881
882         * tests/testgtk.c: Set language tags with gtk_label_set_markup()
883           to test whether the basic engine honors them.
884
885 Thu Jun 21 02:13:40 2001  Tim Janik  <timj@gtk.org>
886
887         * gtk/gtkcontainer.[hc]: added gtk_container_child_set_property() and
888         gtk_container_child_get_property().
889
890 Wed Jun 20 19:19:15 2001  Jonathan Blandford  <jrb@redhat.com>
891
892         * gtk/gtktreeview.c (gtk_tree_view_move_cursor_up_down): clean up
893         (gtk_tree_view_move_cursor_page_up_down): implement.
894
895 Wed Jun 20 05:32:05 2001  Tim Janik  <timj@gtk.org>
896
897         * gtk/gtkspinbutton.c: make maximum digits compile time configurable
898         via MAX_DIGITS and up to 20. 5 was just ridiculously small.
899         don't use automatic fixed size buffer for printf-ing floats, doubles
900         can expand to really _huge_ strings, use g_strdup_printf() instead.
901
902 Wed Jun 20 04:28:24 2001  Tim Janik  <timj@gtk.org>
903
904         * gtk/gtkrange.c (gtk_range_class_init): hum, "adjustment" was a
905         construct property in 1.2 and still needs to be.
906
907         * gtk/gtkwidget.c: "composite_child" is not a settable property.
908
909 Tue Jun 19 19:13:19 2001  Jonathan Blandford  <jrb@redhat.com>
910
911         * gtk/gtkliststore.c (gtk_list_store_clear): 
912         * gtk/gtktreestore.c (gtk_tree_store_clear): New functions to
913         clear a model.
914
915 Mon Jun 18 02:00:49 2001  Tim Janik  <timj@gtk.org>
916
917         * gtk/gtkwidget.c (gtk_widget_get_property): fix PROP_EVENTS.
918
919         * gtk/Makefile.am:
920         * gtk/gtk.h: disabled GtkPacker compilation.
921
922         * gtk/gtkarg.[hc], gtk/gtkargcollector.c: got rid of these.
923
924         * gtk/gtknotebook.c:
925         * gtk/gtktable.c:
926         * gtk/gtkbox.c: ported this over to child properties.
927
928         * gtk/gtksettings.c: fetch class properties via
929         g_object_class_list_properties().
930
931         * gtk/gtkcontainer.[hc]: implemented child properties, got rid of the
932         child arg interface. use gobjectnotifyqueue.c for child property
933         notification.
934
935         * gtk/gtkwidget.[hc]: provide necessary means for container child
936         properties, i.e. ::child_notify signal,
937         gtk_widget_freeze_child_notify(),
938         gtk_widget_child_notify(),
939         gtk_widget_thaw_child_notify().
940
941         * tests/testgtk.c: removed inferior property handling code, for
942         property editing, a generic module should be used, and GLE
943         coincidentally fullfills that purpose.
944
945         * docs/reference/Makefile.am: disabled gtk docs building, gtk-doc
946         needs to be adapted to g_object_class_list_properties() before this
947         builds again.
948
949 Mon Jun 18 20:06:10 2001  Jonathan Blandford  <jrb@redhat.com>
950
951         * gtk/gtktreeview.c (gtk_tree_view_row_expanded): New function to
952         test if a node is expanded.
953
954 Mon Jun 18 19:41:38 2001  Jonathan Blandford  <jrb@redhat.com>
955
956         * gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): Fix bug
957         where collapsing a selected row would result in the cursor/anchor
958         getting screwed up.
959
960 Fri Jun 15 18:53:48 2001  Jonathan Blandford  <jrb@redhat.com>
961
962         * gtk/gtktreesortable.c (gtk_tree_sortable_set_sort_func): Rename
963         gtk_tree_sortable_sort_column_id_set_func.  It's much shorter now.
964         * gtk/gtktreeview.c (gtk_tree_view_sort_iter_changed): WOOO!!!
965         Now I can really reorder/sort all Store widgets.  treesorttest
966         seems to just work now.
967         * gtk/gtklistview.c (gtk_list_store_iter_changed): Whoops.
968         testtreesort worked through a big coincidence all this time.
969         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): Nasty bug fix in nasty
970         code.
971         * tests/testtreecolumns.c: Big 'ol warning at the top letting
972         people know that this code should never ever ever be copied.
973
974 2001-06-15  Jonas Borgström  <jonas@codefactory.se>
975
976         * gtk/gtkwindow.h: Fixed a small typo, it should be
977         GTK_WINDOW_GROUP_GET_CLASS and not GTK_WINDOW_GET_CLASS
978         on line 134.
979
980 2001-06-14  Havoc Pennington  <hp@redhat.com>
981
982         Docs fixups, and:
983         
984         * gtk/gtkcompat.h: remove GTK_DISABLE_COMPAT_H, replace with
985         GTK_DISABLE_DEPRECATED
986
987 Thu Jun 14 19:21:27 2001  Jonathan Blandford  <jrb@redhat.com>
988
989         * gtk/gtktreestore.c (gtk_tree_store_sort_helper): Whoops.  Forgot
990         this a couple months ago.  Now GtkTreeStore sort of sorts.  I'll
991         finish it off tonight, though it basically works now when it's a
992         list.  Also, I have a sinking feeling neither GtkTreeStore or
993         GtkListStore actually resort when adding a new item.  I'll look
994         into it.
995
996 2001-06-14  Havoc Pennington  <hp@redhat.com>
997
998         * demos/gtk-demo/main.c (load_file): fix bug identified by
999         warnings I just added to gtktextbuffer
1000
1001 2001-06-14  Havoc Pennington  <hp@redhat.com>
1002
1003         * gtk/gtkwindow.c (window_group_cleanup_grabs): fix other typo
1004
1005         * gtk/gtkwidget.c (gtk_widget_propagate_state): fix typo
1006
1007         * gtk/gtktextbtree.c: don't leak node data all over the place.
1008
1009         * demos/gtk-demo/main.c (main): create fontify tags for the right
1010         buffer
1011
1012         * gtk/gtktextbuffer.c, gtk/gtktexttagtable.c: enhance docs
1013         to mention tags in the same table can't have the same name,
1014         suggested by Skip Montanaro
1015
1016 2001-06-11  Havoc Pennington  <hp@redhat.com>
1017
1018         * gtk/gtktexttagtable.c (gtk_text_tag_table_add): improve warning 
1019         for trying to add two tags with same name to the tag table
1020
1021         * demos/gtk-demo/main.c (main): fix colors ;-)
1022
1023 `Fri Jun  8 17:56:52 2001  Owen Taylor  <otaylor@redhat.com>
1024
1025         * gtk/gtkwindow.[ch] gtk/gtkmain.c: Add a GtkWindowGroup struct
1026         that allows grouping together multiple windows so that grabs
1027         within that set of windows only affect those windows.
1028
1029         * gtk/gtkmain.c gtk/gtkwidget.[ch]: Add a "grab_notify"
1030         signal for notification when a widget becomes shadowed
1031         by a grab or is no longer shadowed by a grab.
1032
1033         * gtk/gtkwidget.c (gtk_widget_propagate_state)
1034           gtk/gtkmain.c: (gtk_widget_grab_add): Don't allow
1035         insenstive widgets to maintain a grab.
1036
1037 2001-06-14  Alexander Larsson  <alexl@redhat.com>
1038
1039         * docs/README.linux-fb:
1040         Add some example config files that can be used with the URW fonts.
1041         
1042         * gdk/linux-fb/gdkvisual-fb.c (gdk_visual_init): 
1043         Set up the color ramps for DirectColor mode.
1044
1045 2001-06-11  Havoc Pennington  <hp@redhat.com>
1046
1047         * Release 1.3.6
1048          
1049 2001-06-13  Alexander Larsson  <alla@lysator.liu.se>
1050
1051         * gdk/linux-fb/gdkwindow-fb.c:
1052         Unify shaped window code and make it repaint the area that used
1053         to be part of the shape, but isn't anymore.
1054
1055 2001-06-11  Havoc Pennington  <hp@redhat.com>
1056
1057         * NEWS: Updates
1058
1059         * configure.in (GTK_MINOR_VERSION): bump version to 1.3.6
1060
1061         * gtk/Makefile.am: glib_genmarshal already contains top_builddir
1062         
1063 2001-06-13  Alexander Larsson  <alla@lysator.liu.se>
1064
1065         * gdk/linux-fb/gdkdnd-fb.c (gdk_drag_status):
1066         Don't pass on GDK_ACTION_DEFAULT. The Xdnd code
1067         passes zero instead, so do we.
1068         
1069 2001-06-13  Alexander Larsson  <alla@lysator.liu.se>
1070
1071         * gdk/linux-fb/gdkgc-fb.c (gdk_gc_copy):
1072         Deep copy dash_list too.
1073         (_gdk_fb_gc_new): Set default cap_style before
1074         setting values.
1075
1076 2001-06-12  Alexander Larsson  <alla@lysator.liu.se>
1077
1078         * gdk/linux-fb/gdkkeyboard-fb.c (gdk_keymap_get_default,
1079         gdk_keymap_get_direction): New functions.
1080
1081 Tue Jun 12 12:41:27 2001  Jonathan Blandford  <jrb@redhat.com>
1082
1083         * gtk/gtktreemodel.h (GTK_TREE_MODEL_LIST_ONLY): further justify
1084         gtk_tree_model_get_flags by adding a second flag for atk.
1085
1086         * gtk/gtktreemodel.c: make cursor behavior interact better with
1087         mouse presses.
1088
1089 Mon Jun 11 12:43:08 2001  Jonathan Blandford  <jrb@redhat.com>
1090
1091         * gtk/gtktreeview.c (gtk_tree_view_class_init): changed
1092         expand_row/collapse_row to be 2 signals each -- test_expand_row
1093         and row_expanded as well as test_collapse_row and row_collapsed.
1094
1095 2001-06-10  Anders Carlsson  <andersca@codefactory.se>
1096
1097         * demos/gtk-demo/stock_browser.c (do_stock_browser): Update
1098         signal name to be changed instead of selection_changed.
1099
1100 2001-06-08  Havoc Pennington  <hp@redhat.com>
1101
1102         * gtk/gtkentry.c (gtk_entry_class_init): add read-only
1103         "scroll_offset" property for notification when the layout offsets
1104         may have changed
1105         (gtk_entry_adjust_scroll): add notify for scroll_offset
1106         (gtk_entry_layout_index_to_text_index): function to compensate for
1107         preedit string when doing coordinate stuff on the entry's layout
1108         (gtk_entry_text_index_to_layout_index): inverse function
1109         (gtk_entry_get_layout_offsets): hook to get current position of
1110         the layout      
1111         (gtk_entry_get_layout): hook to get the layout itself.
1112
1113         * gtk/gtklabel.c (gtk_label_get_layout): new function
1114
1115 Fri Jun  8 19:49:29 2001  Jonathan Blandford  <jrb@redhat.com>
1116
1117         * gtk/gtktreeview.c (gtk_tree_view_real_select_cursor_row): New
1118         keybinding.
1119         (gtk_tree_view_focus): Fix merge conflict.
1120
1121 Fri Jun  8 18:41:30 2001  Jonathan Blandford  <jrb@redhat.com>
1122
1123         * gtk/gtktreeview.c (gtk_tree_view_set_cursor): new function to
1124         clean up cursor handling.
1125
1126 2001-06-08  Havoc Pennington  <hp@redhat.com>
1127
1128         * gtk/gtktextbuffer.c (gtk_text_buffer_get_start_iter): added this
1129         function
1130
1131         * gtk/gtktextview.c (gtk_text_view_get_default_attributes): added
1132         this function
1133
1134 2001-06-08  Alex Larsson  <alexl@redhat.com>
1135
1136         * gtk/gtkcompat.h.in:
1137         Added compat macros for all old GTK_TYPE_GDK_xxx types.
1138         Fixes bug #52892
1139
1140 2001-06-08  Havoc Pennington  <hp@redhat.com>
1141         
1142         * gtk/gtkhsv.h (struct _GtkHSVClass): had GtkContainerClass as
1143         parent still
1144
1145 2001-06-08  Havoc Pennington  <hp@redhat.com>
1146
1147         * gtk/gtktextbuffer.c (gtk_text_buffer_remove_all_tags): geez,
1148         don't call g_list funcs on GSList
1149
1150         * gtk/gtkwidget.c (gtk_widget_child_focus): replaces
1151         gtk_container_focus(), since some widgets have focusable locations
1152         which are not other widgets. These widgets should not have to be 
1153         containers just to manage the focus. For example, GtkHSV is
1154         currently a container for no good reason. Also, this cleans
1155         up the "if (is_container && is_sensitive && is_drawable)
1156         container_focus ()" mess in widget implementations.
1157
1158         * gtk/gtkcontainer.c (gtk_container_focus): deprecate this
1159         function, and have it just call gtk_widget_child_focus().
1160
1161         * gtk/gtkhsv.c: derive from widget not container
1162         
1163         Throughout: fix to reflect GtkContainer::focus change
1164         
1165 Fri Jun  8 12:38:49 2001  Jonathan Blandford  <jrb@redhat.com>
1166
1167         * gtk/gtktable.c (gtk_table_resize): warn if row/cols are out of
1168         range.  Fix bug #55921
1169
1170         * gtk/gtkliststore.c (gtk_list_store_new_with_types): fix doc bug
1171         (#55920).
1172
1173 Fri Jun  8 12:03:07 2001  Owen Taylor  <otaylor@redhat.com>
1174
1175         * gdk/gdkkeys.[ch]: Add a direction-changed signal,
1176         and gdk_keymap_get_current_direction().
1177
1178         * gdk/x11/gdkevents-x11.c gdk/x11/gdkkeys-x11.c
1179           gdk/x11/gdkmain-x11.c gdk/x11/gdkprivate-x11.h: Track
1180         the current locked group, use it to set the keymap
1181         direction.
1182
1183         * gtk/gtksettings.c: Add a new gtk-split-cursor setting
1184         to determine whether we draw a split cursor or use
1185         a jumping cursor based on the current direction.
1186
1187         * gtk/gtkentry.c gtk/gtktextview.c gtk/gtktextlayout.[ch]:
1188         Obey the split cursor setting. 
1189
1190 Fri Jun  8 11:57:50 2001  Owen Taylor  <otaylor@redhat.com>
1191
1192         * gtk/gtkimmulticontext.c (activate_cb): Only activate
1193         when toggling on, not when toggling off... (#55906)
1194
1195 Wed Jun  6 10:37:07 2001  Owen Taylor  <otaylor@redhat.com>
1196
1197         * gtk/gtkwidget.c (gtk_widget_set_double_buffered): 
1198         s/gdk_window_begin_paint/gdk_window_begin_paint_region/
1199         in docs. (#55812, Vitaly Tishkov)
1200
1201 2001-06-08  Anders Carlsson  <andersca@codefactory.se>
1202
1203         * demos/gtk-demo/main.c (create_tree): Changed signal name from
1204         selection_changed to changed in signal connection to GtkTreeSelection,
1205         also used g_signal_connectc since GtkTreeSelection is now a GObject.
1206
1207 Thu Jun  7 18:25:42 2001  Jonathan Blandford  <jrb@redhat.com>
1208
1209         * gtk/gtktreeselection.c: Now it's a GObject instead of a
1210         GtkObject.  The GtkTreeSelection::selection_changed signal is now
1211         the GtkTreeSelection::changed signal.
1212
1213         * gtk/gtktreeview.c: Modified to deal with new GtkTreeSelection
1214         object.
1215
1216         * tests/gtktree*.c: Modified to deal with new GtkTreeSelection
1217         object.
1218
1219 2001-06-07  Havoc Pennington  <hp@redhat.com>
1220
1221         * gtk/Makefile.am: fix glib-mkenums and glib-genmarshal again
1222
1223 2001-06-07  Havoc Pennington  <hp@redhat.com>
1224         
1225         * gtk/Makefile.am: fixups for glib-mkenums and glib-genmarshal
1226         (not tested yet because with absolute path to srcdir I can't build
1227         atk, but it was broken anyway so this may help) 
1228
1229 2001-06-07  Havoc Pennington  <hp@redhat.com>
1230
1231         * configure.in: output m4macros/Makefile
1232         
1233 Wed Jun  6 21:59:16 2001  Jonathan Blandford  <jrb@redhat.com>
1234
1235         * gtk/gtktreeview.c (gtk_tree_view_size_allocate): hook up arrow
1236         buttons.  Fixes #55460 reported by matthiasc@poet.de.
1237
1238 Wed Jun  6 21:18:54 2001  Jonathan Blandford  <jrb@redhat.com>
1239
1240         * gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): centralize
1241         expansion/collapsing so it only happens in one place.
1242         (gtk_tree_view_real_expand_row): ditto.
1243
1244 2001-06-07  Havoc Pennington  <hp@redhat.com>
1245
1246         * tests/Makefile.am: add missing -I flag
1247
1248         * gtk/Makefile.am: use @GLIB_MKENUMS@, @GLIB_GENMARSHAL@, etc.
1249
1250         * configure.in: use pkg-config to see if GModule is
1251         supported; fix to properly turn on included loaders 
1252         when GModule isn't supported; don't use AC_CHECK_LIB 
1253         when libs are not installed yet
1254
1255         * autogen.sh: add support for AUTOGEN_SUBDIR_MODE
1256
1257         * Makefile.am (SUBDIRS): add m4macros subdir
1258
1259         * gtk/Makefile.am: $(srcdir)/foo targets must be $(srcdir)/foo in
1260         dependencies also.
1261
1262 Wed Jun  6 19:31:11 2001  Jonathan Blandford  <jrb@redhat.com>
1263
1264         * gtk/gtktreeview.c (gtk_tree_view_set_model): fix silly bug
1265         reported by "Padraig O'Briain" <Padraig.Obriain@Sun.COM>.
1266
1267 Wed Jun  6 20:01:38 2001  Jonathan Blandford  <jrb@redhat.com>
1268
1269         * gtk/gtktreeview.c
1270         (gtk_tree_view_real_expand_collapse_cursor_row): Handle key
1271         bindings to expand and collapse rows.
1272         (gtk_tree_view_real_select_cursor_parent): New key binding.
1273         (gtk_tree_view_real_toggle_cursor_row): New key binding.
1274
1275         * gtk/gtkmarshal.list: new
1276         marshaller. (VOID__BOOLEAN_BOOLEAN_BOOLEAN)
1277
1278 2001-06-06  Havoc Pennington  <hp@redhat.com>
1279
1280         * gtk/gtkrange.c (gtk_range_class_init): add "inverted" property
1281
1282         * gtk/gtkscale.c (gtk_scale_class_init): Change Page Up and Page
1283         Down to move visually rather than logically, since it confuses 
1284         people. Add -/+ and Ctrl--/+ bindings for logical movement.
1285
1286 2001-06-06  Alex Larsson  <alexl@redhat.com>
1287
1288         * gdk/linux-fb/gdkmain-fb.c (_gdk_windowing_init_check):
1289         Fix up error messages.
1290
1291 Wed Jun  6 10:34:42 2001  Owen Taylor  <otaylor@redhat.com>
1292
1293         * gtk/gtktooltips.h: Include gtkwidget.h 
1294         (#55798, Karl Nelson)
1295
1296         * gdk/x11/gdkwindow-x11.c (utf8_is_latin1): 0xff is
1297         a valid latin-1 character. (Marc Lehmann, #35467)
1298
1299         * gdk/x11/gdkwindow-x11.c: Fix minor typo in comment. 
1300         (Marc Lehmann, #35467)
1301         
1302 2001-06-05  Alex Larsson  <alexl@redhat.com>
1303
1304         * demos/gtk-demo/appwindow.c (do_appwindow):
1305         Don't swap the order of the args to gtk_widget_destroyed.
1306
1307         * tests/testgtk.c (destroy_properties):
1308         Don't crash when the properties window is destroyed.
1309
1310         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_new_from_stock):
1311         Use with_mnemonics to handle the case of stock items with
1312         underscores in them.
1313
1314 2001-06-05  Havoc Pennington  <hp@redhat.com>
1315
1316         * gtk/gtktextiter.c (gtk_text_iter_order): rename from 
1317         gtk_text_iter_reorder
1318
1319 2001-06-05  Havoc Pennington  <hp@redhat.com>
1320
1321         * gtk/gtktoolbar.c (gtk_toolbar_remove_space): new function
1322
1323 2001-06-05  Havoc Pennington  <hp@redhat.com>
1324
1325         * gtk/gtkspinbutton.c (gtk_spin_button_set_range): clamp the value 
1326         to the range that was set
1327
1328         * gtk/gtkrange.c: add value_changed signal, primarily 
1329         intended for use with GtkScale
1330         (gtk_range_set_increments): new function
1331         (gtk_range_set_range): new function with weird name
1332         (gtk_range_set_value): new function
1333         (gtk_range_get_value): new function
1334
1335         * gtk/gtkspinbutton.c (gtk_spin_button_get_value): rename 
1336         from gtk_spin_button_get_value_as_float(). Compat #define
1337         added for get_value_as_float.
1338
1339         * gtk/gtkhscale.c (gtk_hscale_new_with_range): new function
1340
1341         * gtk/gtkvscale.c (gtk_vscale_new_with_range): new function
1342
1343 Tue Jun  5 14:57:18 2001  Jonathan Blandford  <jrb@redhat.com>
1344
1345         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_get_size): Fix bug #55573
1346
1347 Mon Jun  4 12:41:25 2001  Owen Taylor  <otaylor@redhat.com>
1348
1349         * gtk/gtkwidget.h: Deprecate gtk_widget_set().
1350
1351         * tests/testgtk.c (create_tooltips): Remove usage of
1352         gtk_widget_set().
1353
1354 2001-06-05  Havoc Pennington  <hp@redhat.com>
1355
1356         * gtk/gtkcolorsel.c: Use new mnemonic convenience functions
1357
1358         Applying patch from Jeff Franks, with function docs added.
1359         
1360         * gtk/gtkcheckbutton.c (gtk_check_button_new_with_mnemonic):
1361         remove call to set_mnemonic_widget, change docs a bit.  
1362
1363         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_new_with_mnemonic):
1364         new function
1365
1366         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_new_with_mnemonic):
1367         new function
1368
1369         * gtk/gtkmenuitem.c (gtk_menu_item_new_with_mnemonic): new function
1370
1371         * gtk/gtkradiobutton.c (gtk_radio_button_new_with_mnemonic): new
1372         function
1373         (gtk_radio_button_new_with_mnemonic_from_widget): new function
1374
1375         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_new_with_mnemonic):
1376         new function
1377
1378         * gtk/gtktogglebutton.c (gtk_toggle_button_new_with_mnemonic): new
1379         function        
1380
1381         * gtk/gtklabel.c (gtk_label_new_with_mnemonic): Improve docs on 
1382         auto-selection of mnemonic widget.
1383
1384 Mon Jun  4 15:05:24 2001  Jonathan Blandford  <jrb@redhat.com>
1385
1386         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_max_width):
1387         Fix segfault found by Vitaly Tishkov <tvv@sparc.spb.su>.
1388         (gtk_tree_view_column_set_min_width): ditto.
1389
1390 Tue Jun  5 11:04:06 2001  Owen Taylor  <otaylor@redhat.com>
1391
1392         * gdk/gdkpixmap.h (GDK_PIXMAP_GET_CLASS): 
1393         s/GdkPixmapClass/GdkPixmapObjectClass/. (#51890, Jeff Franks)
1394
1395 Mon Jun  4 12:50:11 2001  Owen Taylor  <otaylor@redhat.com>
1396
1397         * gtk/gtkctree.c (gtk_ctree_insert_gnode): Add a missing
1398         gtk_clist_thaw().
1399
1400 2001-06-04  Havoc Pennington  <hp@pobox.com>
1401
1402         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Ignore 
1403         releases for buttons 6, 7
1404
1405 2001-06-04  Havoc Pennington  <hp@redhat.com>
1406
1407         * gtk/gtkseparatormenuitem.h: Fix a search-and-replace screwup
1408         (s/CHECK/SEPARATOR/ gone awry). Patch from Jeff Franks, bug
1409         #55562
1410
1411 2001-06-04  Havoc Pennington  <hp@redhat.com>
1412
1413         * gtk/gtktextview.c (gtk_text_view_size_request): handle case
1414         where text_view->layout == NULL by assuming its size is 0, 
1415         i.e. same as if we haven't done any reflow. Reported by 
1416         Hidetoshi Tajima #55448 
1417
1418 2001-06-04  Havoc Pennington  <hp@redhat.com>
1419
1420         * gdk/x11/gdkevents-x11.c (gdk_event_translate): support button 6
1421         and 7 for scroll left/right, from Thomas Broyer
1422
1423 2001-05-10  Havoc Pennington  <hp@redhat.com>
1424
1425         * gtk/gtksettings.c (gtk_settings_get_property): Handle case where
1426         we need to parse the xsetting as if it were an RC file string.
1427
1428         * gtk/gtkcolorsel.c (gtk_color_selection_class_init): load initial
1429         value of palette from settings, not from static variable
1430
1431         * gdk/x11/gdkevents-x11.c: add color palette, toolbar mode to
1432         xsettings translation table
1433
1434         * gtk/gtktoolbar.c (gtk_toolbar_new): Remove arguments, because 
1435         hardcoding the toolbar style conflicts with new customizable 
1436         toolbar style philosophy
1437         (gtk_toolbar_class_init): add settings for default toolbar style;
1438         these are used unless the app specifically forces a toolbar style
1439
1440         * gtk/gtksettings.c (settings_install_property_parser): only
1441         return at the start if we warn and parser == NULL
1442
1443         * gtk/gtkcolorsel.c (gtk_color_selection_finalize): disconnect the
1444         palette changed handler so we don't notify dead color selections
1445
1446         * gtk/gtkstyle.c (gtk_default_draw_shadow): handle
1447         xthickness/ythickness of 0 or 1 properly 
1448         (gtk_default_draw_resize_grip): clear the background behind the
1449         resize grips, and align to bottom right if we square the 
1450         area to be drawn.
1451
1452         * gtk/gtkstatusbar.c (gtk_statusbar_init): set horizontal usize on 
1453         statusbar label to 1, so it doesn't make toplevels resize oddly
1454         (gtk_statusbar_size_request): add grip size to request
1455         (gtk_statusbar_size_allocate): hack so the hbox still works with 
1456         the grip size in the request
1457
1458         * gtk/gtktoolbar.c (gtk_toolbar_show_all): override to fix 
1459         bug where showing all on a toplevel makes the toolbar 
1460         button text appear despite the toolbar mode
1461
1462         * gtk/gtkmenubar.c: add internal padding style property
1463
1464         * gtk/gtktoolbar.c: Add internal padding style property; add
1465         shadow type style property
1466
1467         * gtk/gtkmenubar.c (gtk_menu_bar_paint): paint box with widget
1468         state; and put Container::border_width outside the frame
1469
1470         * gtk/gtktextview.c: don't draw focus rectangle if we're in
1471         interior focus mode, we just use blinking cursor
1472
1473 2001-06-04  Havoc Pennington  <hp@redhat.com>
1474
1475         * configure.in: Make gdk-pixbuf have same version number as GTK
1476
1477 2001-06-04  Havoc Pennington  <hp@redhat.com>
1478
1479         * gtk/gtkspinbutton.c: Get rid of stupid g_return_if_fail on 
1480         digits greater than 6. If there actually are limits (which there
1481         likely aren't), should clamp to them not warn.
1482         (gtk_spin_button_new_with_range): don't take log of 0
1483         (gtk_spin_button_size_request): use digits to compute size
1484         request, rather than step increment.
1485
1486         * tests/testgtk.c (create_spins): test larger values of digits
1487         
1488         * gtk/gtkfontsel.c (gtk_font_selection_init): scroll to selected
1489         font on map not expose, so we don't get weirdness during scrolling
1490
1491 2001-06-04  Havoc Pennington  <hp@redhat.com>
1492
1493         * gtk/gtkclist.c (vadjustment_value_changed): Apply fix from
1494         Sam Solon, bug #54577, update value even if not drawable.
1495
1496 2001-06-04  Havoc Pennington  <hp@redhat.com>
1497
1498         * gtk/gtkrange.c (gtk_range_scroll_event): change SCROLL_RIGHT to
1499         SCROLL_LEFT, reported by Thomas Broyer.
1500
1501 2001-06-04  Havoc Pennington  <hp@redhat.com>
1502
1503         * gtk/gtkrange.c (gtk_range_adjustment_value_changed): 
1504         Process updates immediately, to prevent funny lag effect
1505         when scrolling, at some mild potential efficiency cost.
1506
1507 2001-06-04  Havoc Pennington  <hp@redhat.com>
1508
1509         * gtk/gtkrange.c (gtk_range_button_press): on middle click, center
1510         slider on the click.
1511
1512 2001-06-03  Havoc Pennington  <hp@pobox.com>
1513
1514         * gtk/gtkstyle.c (gtk_default_draw_slider): make this special-case
1515         hscale/vscale details, so we can use it for scrollbar as well.
1516
1517         * tests/testgtk.c (reformat_value): honor digits from GtkScale
1518
1519         * gtk/gtkenums.h (GtkTroughType): Remove this enum
1520         (GtkScrollType): add START and END from GtkTroughType
1521
1522         * gtk/gtkstyle.c (gtk_default_draw_slider): was not properly using
1523         its x/y arguments
1524
1525         * gtk/gtkrange.h, gtk/gtkrange.c, gtk/gtkscrollbar.h,
1526         gtk/gtkscrollbar.c, gtk/gtkscale.h, gtk/gtkscale.c,
1527         gtk/gtkhscrollbar.h, gtk/gtkhscrollbar.c, gtk/gtkvscrollbar.h,
1528         gtk/gtkvscrollbar.c, gtk/gtkhscale.h, gtk/gtkhscale.c,
1529         gtk/gtkvscale.h, gtk/gtkvscale.c: Rewrite GtkRange and subclasses.
1530
1531         Notable changes in the process:
1532          
1533         - stepper_size style property is the height for vertical 
1534           ranges, width for horizontal; the other dimension matches
1535           the trough size
1536         - add ability to do NeXT-style steppers (and several other styles
1537           that don't make any sense)
1538         - added min_slider_length, fixed_slider_length properties to
1539           GtkScrollbar
1540         - cleaned some private (or at least useless) functions out of
1541           gtkscale.h    
1542         - moved bindings to GtkScale from subclasses, even arrow keys,
1543           since blind users don't know scale orientation.
1544         - change move_slider action signal to use new GtkScrollType,
1545           remove GtkTroughType argument
1546         - digits rounds the values a range will input to the given 
1547           number of decimals, but will not try to force adjustment 
1548           values set by other controllers. That is, we no longer
1549           modify adjustment->value inside a value_changed handler.
1550         - added getters for GtkScale setters
1551         - middle-click begins a slider drag
1552         
1553 Fri Jun  1 18:54:47 2001  Jonathan Blandford  <jrb@redhat.com>
1554
1555         * gtk/gtktreeview.c: (gtk_tree_view_focus): Initial stab at
1556         getting the focus code to work.
1557         (gtk_tree_view_class_init): Add a bunch of keybindings.
1558
1559         * gtk/gtktreeviewcolumn.c
1560         (gtk_tree_view_column_set_cell_data_func):
1561         s/GtkCellDataFunc/GtkTreeCellDataFunc.
1562         (_gtk_tree_view_column_set_tree_view): Use "notify::model" instead
1563         of "properties_changed" to help justify the death of the latter
1564         signal. (-:
1565
1566         * tests/testtreefocus.c (main): Let some columns be focussable to
1567         test focus better.
1568
1569 2001-06-01  Havoc Pennington  <hp@redhat.com>
1570
1571         * gtk/gtkentry.c (gtk_entry_commit_cb): implement overwrite mode
1572         
1573         * gtk/gtktextview.c (gtk_text_view_commit_handler): don't
1574         overwrite in overwrite mode if we already deleted the selection
1575         and replaced it with new text.  
1576
1577         * gtk/gtklabel.c (gtk_label_select_region_index): if you set the
1578         selection to an empty range, clear the clipboard if we owned it.
1579         (gtk_label_set_selectable): give up selection if we become
1580         unselectable.
1581         (gtk_label_state_changed): override state changed to unselect text
1582         when insensitive
1583         (get_text_callback): add paranoia check that indexes aren't
1584         outside of label->text
1585         (gtk_label_select_region): make -1 for start_offset mean "end of
1586         label," for consistency with GtkEditable
1587
1588         * gtk/gtkmessagedialog.c (gtk_message_dialog_new): honor
1589         GTK_DIALOG_NO_SEPARATOR flag
1590
1591 Fri Jun  1 11:47:11 2001  Owen Taylor  <otaylor@redhat.com>
1592
1593         * gtk/gtkcombo.c (gtk_combo_set_use_arrows_always): Fix 
1594         notifications on non-existant "enable_arrow_keys".
1595         (#53753, Skip Montanaro)
1596
1597 Fri Jun  1 11:31:55 2001  Owen Taylor  <otaylor@redhat.com>
1598
1599         * gdk/gdkrectangle.c (gdk_rectangle_get_type): Add 
1600         GDK_TYPE_RECTANGLE.
1601
1602         * gtk/gtkwidget.c (gtk_widget_class_init): Fix type
1603         of allocation argument be GDK_TYPE_RECTANGLE.
1604
1605 Thu May 31 12:43:57 2001  Owen Taylor  <otaylor@redhat.com>
1606
1607         * gtk/gtkoptionmenu.c: Account for the fact that the border
1608         width is _outside_ the window. (Fixes #54585, bug found
1609         by Bastien Nocera.)
1610
1611 Wed May 30 15:56:30 2001  Owen Taylor  <otaylor@redhat.com>
1612
1613         * gtk/gtksettings.c (gtk_settings_get_property): Validate
1614         value from GDK settings against parameter spec.
1615
1616         * gdk/x11/gdkevents-x11.c (gdk_setting_get): Add assignments
1617         to temporary values and use g_value_transform(), since
1618         thinking that GValue was going to be easy or efficient
1619         to use was, of course, a mistake.
1620
1621         * gtk/gtksettings.c: Add cursor blink setting.
1622         
1623         * gdk/x11/gdkevents-x11.c: Add cursor blink X settings.
1624
1625         * gtk/gtkentry.c: Add cursor blinking.
1626
1627         * gtk/gtktextview.c (gtk_text_view_check_cursor_blink): Use
1628         cursor blink global settings.
1629
1630         * gtk/gtkentry.c (gtk_entry_button_press): Add notification
1631         for :text_position in places where it is missing.
1632
1633 Tue May 29 18:17:11 2001  Owen Taylor  <otaylor@redhat.com>
1634
1635         * autogen.sh (have_libtool): Fix GNU sedism (#55430)
1636
1637 Tue May 29 17:40:29 2001  Owen Taylor  <otaylor@redhat.com>
1638
1639         * configure.in (GTK_DEP_CFLAGS): Use $PKG_CONFIG,
1640         not pkg-config. (#51032)
1641
1642         * gdk/gdkproperty.h: Remove inappropriate G_GNUC_CONST
1643         (fixes #51952, James Henstridge)
1644         
1645 2001-05-27  Alexander Larsson  <alla@lysator.liu.se>
1646
1647         * gtk/gtkstock.h (GTK_STOCK_GO_UP):
1648         Rename to the more correct gtk-go-up.
1649
1650         * gtk/stock-icons/stock_menu_sort_ascending.png:
1651         Added new file.
1652         
1653         * gtk/stock-icons/stock_menu_sort_descending.png:
1654         Changed to show descending instead of ascending.
1655
1656         * gtk/gtkiconfactory.c:
1657         Added menu size icon to sort ascending.
1658
1659         * gtk/stock-icons/Makefile.am:
1660         Added stock_menu_sort_ascending.png.
1661         
1662         * gtk/gtkseparatormenuitem.c:
1663         Use correct typenames.
1664
1665 Sun May 20 20:07:35 2001  Tim Janik  <timj@gtk.org>
1666
1667         * gtk/gtksignal.[hc] (gtk_signal_connect_full): make hanlder id a
1668         gulong as in GSignal.
1669
1670 Fri May 25 19:04:17 2001  Jonathan Blandford  <jrb@redhat.com>
1671
1672         * gtk/gtktreeview.c (gtk_tree_view_calc_size): Remove almost all
1673         instances of GtkCellRenderer in code (all but dnd icon code).
1674         Virtualized in GtkTreeViewColumn.  Now I need to move focus in
1675         there, and I can do multiple Cells per column.
1676
1677         * gtk/gtktreeviewcolumn.c: Proxy all cell calls correctly
1678
1679         * gtk/gtktreemodel.c (gtk_tree_row_reference_new_proxy): fix bug
1680         when model was unreffed prior to removing the row reference.
1681
1682 2001-05-25  Havoc Pennington  <hp@redhat.com>
1683
1684         * gtk/gtkiconfactory.c: fix so that default icons are created if 
1685         you call gtk_stock_list_ids()
1686
1687         * demos/gtk-demo/stock_browser.c (create_model): sort stock items
1688         in list
1689
1690 2001-05-25  Havoc Pennington  <hp@redhat.com>
1691
1692         * gtk/gtkiconfactory.c (gtk_icon_set_get_sizes): get sizes an icon
1693         set can render without falling back to missing image icon
1694
1695         * gtk/gtktextview.c (gtk_text_view_size_request): request full
1696         size of text, instead of random values
1697
1698         * gtk/gtktreeview.c (gtk_tree_view_size_request): request full
1699         size of tree view, instead of random values
1700
1701         * gtk/gtkiconfactory.c (gtk_icon_set_render_icon): render fallback
1702         image in an appropriate size
1703
1704         * gtk/gtkstock.h: Rename the stock items including _BUTTON_,
1705         etc. not to include that. i.e. s/GTK_STOCK_BUTTON_OK/GTK_STOCK_OK/
1706
1707         Throughout: fix GTK_STOCK_BUTTON_ instances
1708         
1709         * gtk/gtkstock.h, gtk/gtkstock.c, gtk/gtkiconfactory.h,
1710         gtk/gtkiconfactory.c, gtk/stock-icons/Makefile.am:
1711         Add a bunch of new stock items/icons
1712
1713         * gtk/gtktreeview.c (gtk_tree_view_insert_column_with_data_func):
1714         new function, convenience for inserting columns with a data func
1715
1716         * gtk/gtkiconfactory.c: keep a list of all existing icon factories
1717         (_gtk_icon_factory_list_ids): use list of all factories to
1718         generate a list of all known IDs
1719
1720         * gtk/gtkstock.c (gtk_stock_list_ids): replace
1721         gtk_stock_list_items() with a function that returns all IDs known
1722         including those for GtkIconFactory.
1723
1724 2001-05-25  Hans Breuer  <hans@breuer.org>
1725
1726         * gdk/win32/gdkgc-win32.c : made fil mode GDK_STIPPLED actually
1727         work -> check boxes and radio buttons are drawn now, even on win9x.
1728         Improved line settings a bit, still no clue how to get really dotted
1729         lines on win9x, on NT it's PS_ALTERNATE.
1730
1731         * gdk/win32/gdkwindow-win32.c : use SafeAdjustWindowRect for 
1732         GDK_HINT_MIN_SIZE as well
1733
1734         * gdk/win32/makefile.am : added gdkkeys-win32.c to EXTRA_DIST
1735
1736         * gtk/gtk.def : updated
1737
1738         * gtk/gtktreeprivate.h : change column_drop_func to be a function
1739         pointer not a function pointer pointer
1740
1741         * tests/testdnd.c : include <stdlib.h> for putenv prototype
1742
1743         * tests/testsocket.c : made it compile on win32 again
1744
1745         * tests/makefile.msc : one more test-app uses prop-editor.obj
1746
1747 2001-05-22  Havoc Pennington  <hp@pobox.com>
1748
1749         * gtk/gtkbin.c (gtk_bin_get_child): New function
1750
1751 Wed May 23 20:07:53 2001  Owen Taylor  <otaylor@redhat.com>
1752
1753         * gtk/gtkimcontextsimple.c: Add Mode_Switch to list of keys
1754         to ignore when doing compose processing.
1755
1756 2001-05-22  Joe Shaw  <joe@ximian.com>
1757
1758         * gtk/gtktextiter.c (_gtk_text_btree_get_iter_at_last_toggle): 
1759         Simplify as suggested by Havoc. Just get the last iter and work
1760         backward to the tag instead of getting a line and working back from
1761         there. Fixes passing in an invalid offset to
1762         iter_init_from_byte_offset().
1763
1764 Tue May 22 16:25:27 2001  Jonathan Blandford  <jrb@redhat.com>
1765
1766         * gtk/gtktreeview*.h: 
1767         * gtk/gtkcell*.h:
1768         * gtk/gtk*store.h:
1769         Added patch from Jeff Franks <jcf@tpg.com.au> to add GET_CLASS
1770         macros to all objects.
1771
1772 Tue May 22 15:13:52 2001  Jonathan Blandford  <jrb@redhat.com>
1773
1774         * gtk/gtkcellrenderertext.c
1775         (gtk_cell_renderer_text_set_fixed_size): Evil function to deal
1776         with very large (TM) amounts of text.  May be moved to
1777         GtkCellRenderer in the future, though I'm not sure it wants to be
1778         this accessible.
1779
1780         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_update_button):
1781         More sanity brought to this class.  I like it.
1782
1783         * tests/testtreecolumns.c (ViewColumnModel): Amazingly scary test
1784         case.  Kids, don't try this at home.
1785
1786         * gtk/gtktreemodel.c (gtk_tree_model_get_iter_root): new
1787         convenience function.
1788
1789         * gtk/gtkwindow.c (gtk_window_set_geometry_hints): Fix typo in docs.
1790
1791 2001-05-21  Alexander Larsson  <alexl@redhat.com>
1792
1793         * gtk/gtkfontsel.c:
1794         Added properties. Based on patch by Lee Mallabone.
1795
1796         * gtk/gtkruler.c:
1797         * gtk/gtkhruler.c:
1798         * gtk/gtkvruler.c:
1799         * gtk/gtktext.c:
1800         * gtk/gtktextview.c:
1801         Converted GtkArg to GParam. Based on patches by John Margaglione.
1802
1803         * tests/Makefile.am:
1804         * tests/testtext.c:
1805         Add a property editor to testtext.
1806         
1807 Mon May 21 11:29:21 2001  Owen Taylor  <otaylor@redhat.com>
1808
1809         * gtk/gtk{h,v,}paned.c: Only show the separator if 
1810
1811         * configure.in: Fixed reversed conditional causing all image
1812         libraries to be linked in.
1813
1814 2001-05-21  Joe Shaw  <joe@ximian.com>
1815
1816         * gtk/gtklayout.c (gtk_text_layout_get_lines): Remove the assertion
1817         that top_y needs to be >= 0.
1818
1819 2001-05-11  Havoc Pennington  <hp@pobox.com>
1820         
1821         * gdk/x11/gdkmain-x11.c: Improve error messages for X errors and
1822         losing connection to the X server.
1823
1824 Sun May 20 13:59:20 2001  Owen Taylor  <otaylor@redhat.com>
1825
1826         * configure.in: Start checks for X from pangox/pangoxft
1827         CFLAGS to avoid duplicate libraries.
1828
1829         * gdk/Makefile.am (LDFLAGS): Remove extra -lm.
1830
1831         * configure.in (GDK_PIXBUF_PACKAGES): Fix GDK_PIXBUF_PACKAGES
1832         to include gobject.
1833         
1834 2001-05-18  Alexander Larsson  <alexl@redhat.com>
1835
1836         * gtk/gtkspinbutton.c:
1837         Convert GtkArgs to GParams. Based on patch by John Margaglione.
1838         Also do size request reasonable for MAXDOUBLE. Previously it printed
1839         the limits to a buffer and overran it. Instead do it using log10() and
1840         limit the width to 10 digits.
1841         
1842         * gtk/gtkwidget.c (gtk_widget_get_property):
1843         Correctly handle setting the parent property to NULL.
1844
1845 Fri May 18 15:26:26 2001  Owen Taylor  <otaylor@redhat.com>
1846
1847         * gtk/gtktextview.c (gtk_text_view_style_set): Reset 
1848         style attributes even if the widget isn't realized.
1849
1850         * demos/gtk-demo/main.c: Use a slightly smaller font.
1851
1852 Fri May 18 14:25:20 2001  Owen Taylor  <otaylor@redhat.com>
1853
1854         * gtk/gtkcontainer.c: Remove reallocate-redraws property.
1855         This is something that only a widget writer would ever want
1856         to change.
1857
1858         * gtk/gtksignal.c: Handle G_SIGNAL_TYPE_STATIC_SCOPE for
1859         gtk_signal_emit_by_name().
1860
1861         * gtk/gtkviewport.c: Fix some warnings.
1862
1863         * gtk/gtkwidget.c gtk/gtksizegroup.c: Add "size group" facility
1864         allowing the requisitions of multiple widgets to be grouped
1865         together.
1866
1867         * tests/testgtk.c: Add GtkSizeGroup test
1868
1869         * demos/gtk-demo/sizegroup.c: Add GtkSizeGroup demo.
1870
1871         * demos/gtk-demo/main.c demos/gtk-demo/pixbufs.c: Fix some
1872         warnings.
1873
1874         * configure.in: Switch to using AM_GLIB_GNU_GETTEXT.
1875
1876 2001-04-28  Martin Baulig  <baulig@suse.de>
1877
1878         * gtk/gtkimagemenuitem.[ch]: Renamed gtk_image_menu_item_add_icon()
1879         to gtk_image_menu_item_set_icon() and made it work if there's already
1880         an image.
1881         (gtk_image_menu_item_new): This function doesn't take any arguments anymore.
1882         (gtk_image_menu_item_new_with_label): New function.
1883
1884 Thu May 17 16:20:04 2001  Jonathan Blandford  <jrb@redhat.com>
1885
1886         * demos/gtk-demo/main.c (fontify): It's the worlds ugliest
1887         highlighting code!!!!  The result is okay so long as you don't try
1888         to stress it.  It also highlights a bug in the TextView so it's in
1889         an unproportional font right now until it's fixed.
1890
1891         *demos/gtk-demo/*.c: Clean up code a bit to make it
1892         ugly-parser(TM) friendly. (-:
1893
1894 2001-05-17  Joe Shaw  <joe@ximian.com>
1895
1896         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Remove the assertions
1897         that x_offset and y_offset must be >= 0. Clip the cursor being drawn
1898         if it is only partially onscreen.
1899
1900 Thu May 17 17:10:13 2001  Owen Taylor  <otaylor@redhat.com>
1901
1902         * gtk/gtkentry.c: Make logical motion and deletion by graphemes, 
1903         not by characters.
1904
1905         * gtk/gtkentry.c: Handle "trailing" returns from Pango when they
1906         are not zero or one; that is, when graphemes of multiple characters
1907         are involved.
1908
1909         * gtk/gtktextlayout.c (line_display_index_to_iter): Remove unnecessary
1910         FIXME.
1911
1912 2001-05-17  Alexander Larsson  <alla@lysator.liu.se>
1913         
1914         * gtk/gtkbbox.c:
1915         Add properties, based on patch by Lee Mallabone.
1916
1917         * gtk/gtknotebook.c:
1918         * gtk/gtktoolbar.c:
1919         Convert from GtkArg to GParam, based on patch by John Margaglione.
1920         
1921         * gtk/gtkhscale.c:
1922         * gtk/gtkvscale.c:
1923         * gtk/gtkhscrollbar.c:
1924         * gtk/gtkvscrollbar.c:
1925         * gtk/gtkrange.c:
1926         Move adjustment property to GtkRange.
1927
1928         * gtk/gtklabel.c:
1929         Setup mnemonics on property changes
1930
1931         * gtk/gtkwidget.c (gtk_widget_get_property):
1932         GdkExtensionMode is an enum, not a flag. Set it with
1933         g_value_set_enum ().
1934
1935         * tests/prop-editor.c:
1936         Better propery editor.
1937
1938         * tests/testgtk.c:
1939         Add new property test. Pass zero to the property editor to
1940         get properties from all derived types.
1941         
1942 Sun May 13 12:01:12 2001  Owen Taylor  <otaylor@redhat.com>
1943
1944         * autogen.sh (have_automake): Require libtool-1.4,
1945         automake-1.4p1.
1946
1947         * acinclude.m4: Remove libtool macros.
1948
1949         * gdk-pixbuf/Makefile.am: Add dependencies to loade
1950         modules.
1951
1952         * gdk/Makefile.am: Add dependency on libgdk_pixbuf.la
1953         for libgdk.
1954
1955         * gtk/Makefile.am: Add dependency on libgdk_pixbuf.la
1956         libgdk.la for libgtk.
1957
1958         * modules/input/Makefile.am: Make modules have full
1959         dependencies.
1960
1961 Wed May 16 14:06:01 2001  Jonathan Blandford  <jrb@redhat.com>
1962
1963         * gtk/gtktreemodel.c (gtk_tree_path_new_from_string): fix bug
1964         #54699 where paths weren't being checked for correctness.
1965
1966 Tue May 15 20:13:24 2001  Jonathan Blandford  <jrb@redhat.com>
1967
1968         * gtk/gtktreeviewcolumn.c: You can now set all sorts of properties
1969         in any order you wan, whether or not the column is added to the
1970         tree, or the tree is realized.  Yay!
1971
1972         * gtk/gtktreeviewcolumn.c
1973         (gtk_tree_view_column_setup_sort_column_id_callback): handle
1974         sorting columns a lot saner
1975
1976         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_reorderable):
1977         new function to actually set wether or not a column is
1978         reorderable.
1979
1980         * gtk/gtktreeview.c (gtk_tree_view_unrealize): Only destroy things
1981         if we have 'em.
1982
1983         * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_set_tree_view):
1984         Fix nasty bug where we were showing the button just before
1985         realizing it.  As a result, the parent window was
1986         tree_view->window instead of tree_view->priv->header_window.
1987
1988         * gtk/gtktreeview.c (gtk_tree_view_set_reorderable): new property
1989         to let you easily reorder a list or tree.
1990
1991 2001-05-15  Alexander Larsson  <alla@lysator.liu.se>
1992
1993         * gtk/gtkpacker.c: Apply patch from John Margaglione that converts
1994         from args to properties.
1995
1996 Tue May 15 10:11:59 2001  Owen Taylor  <otaylor@redhat.com>
1997
1998         * gtk/gtkpreview.c: Apply patch from John Margaglione converting
1999         from args to properties. (#51957)
2000
2001         * gtk/gtkscale.c (gtk_scale_class_init): Move install property
2002         calls to after ->set_property call.
2003
2004 Mon May 14 14:56:21 2001  Owen Taylor  <otaylor@redhat.com>
2005
2006         * tests/prop-editor.c: Block against redundant changes.
2007
2008         * gtk/gtkpaned.c gtk/gtk[hv]paned.c: Add position, position_set
2009         properties.
2010
2011 Sun May 13 18:40:04 2001  Owen Taylor  <otaylor@redhat.com>
2012
2013         * gdk/gdkpixmap.h: Remove creative formatting.
2014
2015 Thu May 10 19:22:28 2001  Owen Taylor  <otaylor@redhat.com>
2016
2017         * gtk/gtktogglebutton.c:  Patch from John Margaglione converting to
2018         property API. (#51669)
2019
2020         * gtk/gtkscale.c: Patch from John Margaglione converting to
2021         property API. (#51891)
2022
2023         * gtk/gtkaccellabel.c: Applied patch from Lee Mallabone, converting
2024         to property API. (#50985)
2025
2026 Fri May 11 20:13:44 2001  Tim Janik  <timj@gtk.org>
2027
2028         * gtk/gtkmain.c (gtk_main_do_event): remember widget's double
2029         buffering state across expose event, so we still call end_paint().
2030
2031 2001-05-11  Alexander Larsson  <alexl@redhat.com>
2032
2033         * gtk/gtkhsv.c (paint_triangle):
2034         Expose the ring in the triangle at the correct place when
2035         exposing just a part of the triangle.
2036
2037         * gtk/gtkwindow-decorate.c (gtk_decorated_window_focus_change):
2038         Return FALSE, or window focusing will not work.
2039
2040 2001-05-11  Havoc Pennington  <hp@pobox.com>
2041
2042         * gtk/gtkimage.c (gtk_image_new_from_stock): docs, fixes bug
2043         #54144
2044
2045         * gtk/gtkcolorsel.c (gtk_color_selection_new): docs, fixes
2046         bug #54330
2047
2048 Fri May 11 02:53:57 2001  Tim Janik  <timj@gtk.org>
2049
2050         * gtk/gtktogglebutton.c (gtk_toggle_button_expose): don't
2051         propagate exposes to NULL child.
2052
2053         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed): guard
2054         against not having one of the scrollbars.
2055
2056         * gtk/gtklabel.c (gtk_label_setup_mnemonic): clean up after us,
2057         we don't keep a mnemonic window if we have no mnemonic installed.
2058
2059 Fri May 11 01:05:00 2001  Tim Janik  <timj@gtk.org>
2060
2061         * gtk/gtktypeutils.h: grum, gtk_type_class() is not GNUC_CONST
2062         it has the _important_ side effect of initializing a class.
2063
2064 2001-05-10  Alexander Larsson  <alexl@redhat.com>
2065
2066         * gdk/linux-fb/gdkprivate-fb.h:
2067         Make sure you can compile out the implementation/wrapper assert
2068         macros.
2069
2070         * gdk/linux-fb/gdkdrawable-fb2.c:
2071         Check implementation/wrappers, initialize type for pixmap dummys.
2072
2073         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image):
2074         Hide the cursor if reading from the screen.
2075
2076         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic):
2077         Fix sign bug in tiling code.
2078
2079         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_clear_area):
2080         Handle background pixmaps.
2081
2082 Wed May  9 15:27:22 2001  Jonathan Blandford  <jrb@redhat.com>
2083
2084         * gtk/gtktreeview.c (gtk_tree_view_set_column_drag_function): New
2085         function to let user control where columns are dragged.
2086
2087         * gtk/gtktreeview.c (gtk_tree_view_key_press): Cancel drags if
2088         Escape is pressed.
2089
2090 Wed May  9 09:08:44 2001  Jonathan Blandford  <jrb@redhat.com>
2091
2092         * gtk/gtktreeview.c (gtk_tree_view_class_init): New
2093         "columns_changed" signal.
2094         (gtk_tree_view_motion_draw_column_motion_arrow): Change column
2095         motion code to draw arrows to the side if indicator is outside the
2096         widget.
2097         (gtk_tree_view_map_expanded_rows): Implement.
2098
2099 2001-05-07  Alexander Larsson  <alexl@redhat.com>
2100
2101         * demos/testpixbuf-save.c: 
2102         * demos/testpixbuf-drawable.c:
2103         Include gdkfb.h on linux-fb.
2104
2105 2001-05-07  Alexander Larsson  <alexl@redhat.com>
2106
2107         * gdk/linux-fb/gdkdnd-fb.c (get_toplevel_window_at):
2108         New function for getting toplevel window at position.
2109         (gdk_drag_find_window): Use get_toplevel_window () instead
2110         of gdk_window_get_pointer(). (gdk_drag_status): Use
2111         correct context for getting window.
2112
2113         * gdk/linux-fb/gdkproperty-fb.c (gdk_atom_name):
2114         g_strdup the atom name.
2115
2116         * gdk/linux-fb/gdkwindow-fb.c:
2117         Costmetic fix.
2118
2119         * gtk/gtkdnd.c (gtk_drag_source_handle_event):
2120         Add code for changing cursor on linux-fb backend (same as
2121         win32).
2122
2123 2001-05-07  Federico Mena Quintero  <federico@ximian.com>
2124
2125         * gtk/gtkwindow.c (gtk_window_focus): Test for bin->child being
2126         present before doing anything with it.  Patch from HÃ¥vard KvÃ¥len
2127         <havardk@netcom.no>.  Fixes Ximian bugzilla #2492 (OK, the bug
2128         report was not for the development branch of GTK+, but it applies
2129         anyways).
2130
2131 2001-05-04  Havoc Pennington  <hp@redhat.com>
2132
2133         * configure.in: fix some shell typos
2134
2135         * gtk/gtkcolorsel.c (gtk_color_selection_destroy): warning fix
2136
2137         * gtk/gtkimage.c: handle animations
2138
2139         * gtk/gtkcheckbutton.c (gtk_check_button_size_request): request
2140         border_width * 2, not just border_width
2141
2142         * gtk/gtkscale.c: add "format_value" signal to allow people
2143         to override the way values are drawn.
2144         (gtk_scale_get_value_size): fix width/height mistake,
2145         and compute size from actual displayed text, not 
2146         from made-up text.
2147
2148         * gtk/gtktexttag.c (gtk_text_tag_class_init): fix return type in 
2149         signal registration
2150
2151         * tests/testtext.c: Add "Remove all tags" menu item for testing
2152
2153         * gtk/gtktextbuffer.c (gtk_text_buffer_remove_all_tags): implement
2154
2155         * demos/gtk-demo/main.c (main): add hack so we can find modules
2156         without installing gtk
2157
2158         * demos/gtk-demo/textview.c (insert_text): demo font scaling
2159
2160         * gtk/gtkcellrenderertext.c: Add "scale" property (font scaling
2161         factor)
2162         (gtk_cell_renderer_text_set_property): remove some bogus
2163         g_object_notify
2164
2165         * gtk/gtktexttag.c: add "scale" property which is a font scaling
2166         factor
2167
2168         * gtk/gtktextlayout.c (add_text_attrs): add font scale attribute 
2169         to layout
2170
2171         * gtk/gtktextiter.c (gtk_text_iter_is_start): rename from
2172         gtk_text_iter_is_first
2173
2174 2001-01-06  Hans Breuer  <hans@breuer.org>
2175
2176         * gdk/gdk.def : updated exports
2177
2178         * gdk/win32/makefile.msc : -DGDK_ENABLE_BROKEN otherwise
2179         gdk won't compile anymore
2180  
2181         * gdk/win32/gdkevents-win32.c : initialize ret_val when
2182         processing GDK_FILTER functions, initialize event.key->hardware_keycode.
2183         Improved gdk_flush () to not only do pending drawing operations
2184         but also process all currently pending events. This should make
2185         the behaviour more similar to the X11 version.  
2186
2187         * gdk/win32/gdkgc-win32.c (predraw_set_background) : a background
2188         option needs to be set even if there is no GDK_GC_BACKGROUND.
2189         (gdk_win32_hdc_get) : use predraw_set_background () independent
2190         of value_mask. This allows to draw dashed lines leaving the original
2191         background intact.
2192
2193         * gdk/win32/gdkimage-win32.c (gdk_image_new_bitamp) : free data
2194         after processing, because we can't reuse it as the X11 version does.
2195
2196         * gtk/gtk.def : updated exports
2197
2198         * gtk/makefile.msc.in : added ATK, removed all test apps. (I
2199         would like to get rid of this file again, and use straight
2200         makefile.msc again, as the other Gtk+ subdirs do)
2201
2202         * test/makefile.msc (new file) : build the test apps here
2203
2204 2001-05-05  ERDI Gergo  <cactus@cactus.rulez.org>
2205
2206         * gdk/gdkpango.c (gdk_pango_get_item_properties): Peek
2207         strike-through setting
2208         (gdk_draw_layout_line_with_colors): Render strike-through
2209
2210 Sat May  5 10:06:24 2001  Owen Taylor  <otaylor@redhat.com>
2211
2212         * Release 1.3.5
2213
2214         * configure.in (GTK_MICRO_VERSION): Up to 1.3.5
2215
2216         * NEWS: Updated
2217
2218         * demos/gtk-demo/Makefile.am (EXTRA_DIST): Fix minor
2219         Makefile breakage.
2220
2221 Sat May  5 09:18:30 2001  Owen Taylor  <otaylor@redhat.com>
2222
2223         * demos/gtk-demo/images.c (progressive_timeout): Fix
2224         typo in filename.
2225
2226         * gtk/gtktreeview.c (gtk_tree_view_row_activated): Comment
2227         out FIXME warning; just too annoying.
2228
2229 2001-05-04  Alex Larsson  <alla@lysator.liu.se>
2230
2231         * gdk/linux-fb/gdkcolor-fb.c:
2232         Better error messages.
2233
2234         * gdk/linux-fb/gdkpixmap-fb.c (gdk_pixmap_new):
2235         Initialize abs_x and abs_y.
2236         
2237         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic):
2238         Correct handling of stipple offset.
2239
2240         * gdk/linux-fb/gdkvisual-fb.c (gdk_visual_init):
2241         Treat directcolor framebuffers as truecolor.
2242         
2243 Thu May  3 14:13:49 2001  Owen Taylor  <otaylor@redhat.com>
2244
2245         * INSTALL.in HACKING gtk/gtkaccessible.[ch] gtk/gtk.c: Add
2246         dependency on Atk for accessibility support.
2247
2248         * configure.in **/Makefile.am: Major reworking of substituted
2249         variables for CFLAGS/LIBS to make a lot more sane and 
2250         keep the the compile/link lines a bit shorter.
2251
2252         * gdk/x11/gdkkeys-x11.c: Fix #endif with trailing stuff.
2253
2254 Thu May  3 08:10:54 2001  Owen Taylor  <otaylor@redhat.com>
2255
2256         * gtk/gtktexttag.c (gtk_text_tag_class_init): Fix return
2257         value to be G_TYPE_BOOLEAN, not G_TYPE_INT, also,
2258         use _gtk_boolean_handled_accumulator.
2259
2260 Thu May  3 07:00:09 2001  Owen Taylor  <otaylor@redhat.com>
2261
2262         * gtk/gtktextview.c: Patch from Juan Pablo Mendoza Mendoza
2263         to fix things so clicking inside selection leaves cursor
2264         at point where clicked. (#50324)
2265
2266         * gtk/gtksettings.c (gtk_settings_class_init): Restore
2267         sane value for default double click time.
2268
2269         * tests/testtext.c (test_init): Really path to input modules.
2270
2271 2001-05-03  Sven Neumann  <sven@convergence.de>
2272
2273         * demos/testpixbuf-save.c: include target-specific headers as
2274         done in testpixbuf-drawable.c
2275
2276 Wed May  2 20:36:38 2001  Owen Taylor  <otaylor@redhat.com>
2277
2278         * gtk/gtkentry.c (gtk_entry_real_insert_text): Reduce
2279         new_text_length appropriately when we run into the 
2280         size limit for the entry. (#53445, reported by Jeff Franks)
2281
2282         * tests/testgtk.c (create_entry): Remove most of the
2283         property toggle buttons. Replace with a "Props" button
2284         that brings up a property editor.
2285
2286         * tests/prop-editor.[ch] test/testtreeview.c tests/Makefile.am:
2287         Split the property editor code out for reuse, improve.
2288
2289 Wed May  2 17:26:22 2001  Owen Taylor  <otaylor@redhat.com>
2290
2291         * gdk/x11/gdkevents-x11.c gdk/x11/gdkwindow-x11.c: Always
2292         trap errors around calls to XSetInputFocus since we have
2293         no way of knowing reliably whether we are viewable or
2294         not. (#53947)
2295
2296 Tue May  1 09:21:23 2001  Jonathan Blandford  <jrb@redhat.com>
2297
2298         * gtk/gtktreeview.c (gtk_tree_view_button_release_drag_column):
2299         fix bug in dropping columns.  Moving columns now basically works
2300         modula some fine tuning.
2301
2302 Tue May  1 19:09:21 2001  Jonathan Blandford  <jrb@redhat.com>
2303
2304         * gtk/gtktreeview.c (gtk_tree_view_horizontal_autoscroll): Add
2305         autoscroll support.  It mostly works, but could use some fine
2306         tuning.
2307         * gtk/gtktreeview.c (gtk_tree_view_button_release_drag_column):
2308         Actually move the column.
2309
2310 Mon Apr 30 20:29:27 2001  Owen Taylor  <otaylor@redhat.com>
2311
2312         * gtk/gtkbutton.c gtk/gtkcheckbutton.c gtk/gtkoptionmenu.c 
2313           gtk/gtkspinbutton.c gtk/gtkstyle.c gtk/gtkwidget.c:
2314           New default theme! A slighly improved version of the 2.0 Raleigh
2315           theme, with Windows-esque focus/drawing default. 
2316           (GtkWidget::interior_focus defaults to TRUE.)
2317
2318         * gtk/gtkstyle.[ch]: Add a text_aa color halfway between text and base.
2319
2320 2001-04-30  Havoc Pennington  <hp@pobox.com>
2321
2322         * tests/testtext.c (line_numbers_expose): fix to work with
2323         gtk_paint_layout change
2324
2325 Mon Apr 30 19:18:07 2001  Owen Taylor  <otaylor@redhat.com>
2326
2327         * gtk/gtkstyle.[ch] gtk/gtkaccellabel.c gtk/gtkcellrenderertext.c
2328           gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c gtk/gtkprogressbar.c
2329           gtk/gtkvruler.c gtk/gtkvscale.c: Add an extra parameter
2330           use_text to gtk_paint_label() to deal with style->bg[] vs style->text[].
2331
2332         * gtk/gtkbbox.c gtk/gtkdialog.c: Tweak padding some to deal
2333           with GtkWidget::interior_focus = TRUE better.
2334
2335         * gtk/gtkbutton.c: Switch ::default_spacing to ::default_border,
2336         ::default_outside_border for more flexibility.
2337
2338         * gtk/gtkwidget.c (gtk_widget_style_get_valist): Remove 
2339         G_VALUE_NO_COPY_CONTENTS, to correspond with the recent
2340         change that had to be made with g_object_get.
2341
2342 Sun Apr 29 20:13:40 2001  Jonathan Blandford  <jrb@redhat.com>
2343
2344         * gtk/gtktreeview.c (gtk_tree_view_get_columns): new function.
2345         (gtk_tree_view_move_column_after): Clean up interface. 
2346
2347 Sun Apr 29 03:02:02 2001  Tim Janik  <timj@gtk.org>
2348
2349         * gtk/gtkpacker.h:
2350         * gtk/gtkenums.h: moved GtkAnchorType and GtkSideType from gtkpacker.h
2351          to gtkenum.h.
2352
2353         * gtk/gtkmain.c (gtk_main_do_event): silence compiler (GDK_SETTING not
2354         handled in switch).
2355
2356         * gtk/Makefile.am:
2357         (gtk.defs): generate enum portions with  glib-mkenums.
2358         (gtktypebuiltins_evals.c): generate this with glib-mkenums.
2359         got rid of makeenums.pl and makeenums.awk in distributed tarballs.
2360         
2361         * gtk/gtkaccelgroup.c (gtk_accel_group_add): refined havocs warning
2362         addition.
2363
2364         * docs/Changes-2.0.txt: keep a note on signal handlers now
2365         not getting emitted during the emission they were connected within.
2366
2367 2001-04-28  Havoc Pennington  <hp@pobox.com>
2368
2369         * gtk/gtkcolorsel.c (palette_new): fix bug in tooltip
2370
2371 2001-04-24  Havoc Pennington  <hp@redhat.com>
2372
2373         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_previous_line): 
2374         (gtk_text_layout_move_iter_to_next_line): fix these two for
2375         invisible text, lots of other stuff still hosed.
2376
2377         * gtk/gtkcolorsel.c (gtk_color_selection_set_change_palette_hook):
2378         new function, replaces the get/set palette stuff. This function 
2379         is intended for use by libgnomeui which should set the hook to a
2380         thing which sets the palette in GConf, and we need the
2381         GConf-to-xsettings proxy which will result in the change being
2382         propagated back to the GTK app.
2383
2384         * gtk/gtkaccelgroup.c (gtk_accel_group_add): add note to warning 
2385         about unusable signals that it may be because the signal has 
2386         parameters.
2387
2388         * gtk/gtkwidget.c (gtk_widget_modify_style): always copy the
2389         style, otherwise gtkrc.c won't know to create a new GtkStyle for
2390         it.
2391         (gtk_widget_modify_color_component): call
2392         gtk_widget_modify_style() so the rc style will get copied.
2393         (gtk_widget_modify_font): ditto
2394
2395         * gtk/gtkrc.c: make a couple variables static
2396
2397         * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): hide
2398         help button by default, since it does nothing
2399
2400         * gtk/gtkcolorsel.c: add tooltips, work on key navigation, fool
2401         around with UI
2402
2403         * gtk/gtkentry.c (gtk_entry_realize): request enter/leave notify
2404         so we can have tooltips
2405
2406         * gtk/gtkhsv.c (gtk_hsv_realize): request enter/leave notify so we
2407         can have tooltips
2408
2409         * gdk/gdkimage.h: mark gdk_image_new_bitmap with
2410         GDK_ENABLE_BROKEN, because its memory behavior is completely
2411         hosed.
2412
2413         * gtk/gtknotebook.c: remove key press handler, replace with
2414         binding set, add numeric keypad support
2415
2416         * gtk/gtktextview.c (gtk_text_view_class_init): accept KP_Delete
2417
2418         * gtk/gtktext.c (gtk_text_key_press): add a bunch of KP keysyms
2419
2420         * gtk/gtkentry.c (gtk_entry_class_init): accept GDK_KP_Delete in
2421         addition to plain Delete
2422
2423         * gtk/gtktextview.c (gtk_text_view_key_press_event): accept
2424         GDK_KP_Enter in addition to GDK_Return
2425
2426         * gtk/gtkfontsel.c (gtk_font_selection_size_key_press): connect to
2427         activate on entry instead of key press
2428         (gtk_font_selection_on_clist_key_press): get
2429         rid of this signal handler, not needed with new font sel.
2430
2431         * gtk/gtkfilesel.c (gtk_file_selection_key_press): remove a
2432         no-longer-needed emit_stop_by_name(), just return TRUE
2433
2434         * gtk/gtkhscrollbar.c, gtk/gtkvscrollbar.c: remove keybindings
2435         cruft, this widget is no longer focusable.
2436
2437         * gtk/gtkrange.h, gtk/gtkrange.c, gtk/gtkvscale.c,
2438         gtk/gtkhscale.c: Get rid of trough_keys virtual function, add
2439         move_slider action signal, add binding set for vscale/hscale, in
2440         the process support numeric keypad
2441
2442         * gtk/gtkentry.c (gtk_entry_class_init): Add keypad bindings; 
2443         make GDK_Return and GDK_KP_Enter activate the entry via 
2444         binding set, instead of hardcoded.
2445
2446 Fri Apr 27 20:27:21 2001  Jonathan Blandford  <jrb@redhat.com>
2447
2448         * gtk/gtktreeview.[hc]: Massive reorder/cleanup of a lot of the
2449         code.  Some documentation added.
2450
2451 2001-04-27  Havoc Pennington  <hp@redhat.com>
2452
2453         * gtk/gtkcombo.c (gtk_combo_popup_button_press): fix warning
2454
2455         * gtk/gtkmessagedialog.c (gtk_message_dialog_init): make messages selectable
2456
2457         * gtk/gtkentry.c (gtk_entry_real_insert_text): don't strip
2458         line/para separators
2459         (gtk_entry_create_layout): set single paragraph mode on the layout
2460
2461         * gtk/gtkbutton.c (gtk_button_new_from_stock): don't put much
2462         spacing between the image and label; instead, inside a button box 
2463         the button will get extra space that will go there, but if people 
2464         configure button box for 0 chubbiness, then there's no spacing.
2465
2466         * gtk/gtkbbox.c (gtk_button_box_class_init): Make child ipadding
2467         and min/max size style properties, so people can tune their
2468         chubbiness.
2469
2470         * tests/testgtk.c (make_toolbar): remove calls to removed toolbar
2471         functions
2472
2473         * gtk/gtktoolbar.c (gtk_toolbar_class_init): Make space_size,
2474         space_style, and button_relief into style properties, remove
2475         functions for setting them
2476         
2477         * gtk/gtkmenu.c (gtk_menu_key_press): handle menu bar accel to pop 
2478         it back down
2479
2480         * gtk/gtkoptionmenu.c (gtk_option_menu_get_props): free boxed
2481         types from gtk_widget_style_get
2482
2483         * gtk/gtkmenubar.c (gtk_menu_bar_set_shadow_type): Remove, replace
2484         with a style property.
2485
2486         * gdk/x11/gdkevents-x11.c: namespace the settings
2487
2488         * gtk/gtkmenubar.c: Add F10 accelerator to move between menubars.
2489
2490         * gtk/gtksettings.c (gtk_settings_class_init): remove code with
2491         side effects from inside g_assert(), so that G_DISABLE_ASSERT can
2492         be used. Also, translate doc strings for settings. Also, namespace
2493         the double-click-time property. Also, remove bell properties crap.
2494
2495 2001-04-27  Sven Neumann  <sven@gimp.org>
2496
2497         * Makefile.am: before creating links, check if pkg-config files
2498         exist for the default target. Otherwise link to the pkg-config files
2499         that got installed with this build.
2500
2501 Thu Apr 26 19:11:46 2001  Jonathan Blandford  <jrb@redhat.com>
2502
2503         * gtk/gtktreeview.c (gtk_tree_view_motion): clean up column
2504         dragging code.  Revealed some (potential) GdkWindow bugs.
2505
2506         * gdk/x11/gdkwindow-x11.c (gdk_window_reparent): add
2507         _gdk_window_init_position to the end of reparent to fix the case
2508         of reparenting when new_x != old_x and new_y != old_y.
2509
2510 Thu Apr 26 10:54:50 2001  Owen Taylor  <otaylor@redhat.com>
2511
2512         * gtk/gtkentry.c (strstr_len): Fix optimization that
2513         was correct for the use here, but completely incorrect
2514         in general.
2515
2516 Thu Apr 26 10:40:41 2001  Owen Taylor  <otaylor@redhat.com>
2517
2518         * gtk/gtkwindow.h: Remove deprecation of gtk_window_set_default_size()
2519         until patch adding gtk_window_set_size() is recommitted. 
2520
2521         * **Makefile.am configure.in gdk/x11/gdkim-11.c
2522           gtk/gtkmain.c gtk/gtkimmulticontext.c gtk/gtkmain.c
2523           gtk/gtkrc.c: Remove all traces of -DX_LOCALE support.
2524           (#10784)
2525
2526 Wed Apr 25 12:16:36 2001  Owen Taylor  <otaylor@redhat.com>
2527
2528         * gdk/X11/gdkevents-x11.c (gdk_event_translate): Test for 
2529         window == NULL in a number of cases.
2530
2531         * tests/testdnd.c: Set module path for gdk-pixbuf.
2532
2533 Thu Apr 19 16:11:07 2001  Owen Taylor  <otaylor@redhat.com>
2534
2535         * gtk/Makefile.am xembed.h: File containing #defines
2536         for XEMBED protocol.
2537
2538         * gtk/gtkplug.[ch] gtk/gtksocket.[ch]: 
2539
2540         - Change protocol from old plug/socket specific protocol
2541           to XEMBED draft
2542         - Various fixes to work with GTK+-2.0
2543
2544         Still quite a bit of work to do here to handle initiation
2545         from the socket side (as specified by XEMBED), to handle
2546         the more advanced features of XEMBED, and to figure out
2547         a good way to handle same-app embedding with less overhead
2548         than using full XEMBED.
2549
2550 Wed Apr 18 16:04:28 2001  Owen Taylor  <otaylor@redhat.com>
2551
2552         * gtk/gtkwindow.[ch] (gtk_window_real_set_focus): Keep
2553         track of whether the toplevel has the focus; only send
2554         focus-in events to the focus widget when the window
2555         actually has the focus.
2556
2557 2001-04-25  Havoc Pennington  <hp@pobox.com>
2558
2559         * gtk/gtkwindow.h: set_decorations_hint and set_functions_hint
2560         were still in the header
2561
2562 2001-04-24  Alexander Larsson  <alexl@redhat.com>
2563
2564         * gtk/gtkclist.[ch]:
2565         * gtk/gtkctree.c:
2566         When there is a row highlighted for D'n'D it must alse
2567         be painted hightlighted on exposes. Otherwise exposes from
2568         the icon being dragged will mess up the hightlight.
2569
2570         * gtk/gtkfontsel.c:
2571         Don't recenter selected font when exposing the font family
2572         clist. This means you can now actually scroll the font family
2573         list.
2574
2575         * gtk/gtknotebook.c:
2576         Fix focus movement on scrolling tabs that are placed on the left
2577         and right.
2578
2579 2001-04-21  Havoc Pennington  <hp@pobox.com>
2580
2581         * gtk/gtktextdisplay.c (gtk_text_layout_draw): handle 0-height
2582         empty/invisible lines.
2583
2584         * gtk/gtktextiter.c (gtk_text_iter_set_visible_line_offset)
2585         (gtk_text_iter_set_visible_line_index): new functions to set
2586         indexes excluding invisible text
2587
2588         * gtk/gtktextlayout.c (line_display_iter_to_index): get visible 
2589         index
2590
2591         * gtk/gtktextiter.c (gtk_text_iter_get_visible_line_index)
2592         (gtk_text_iter_get_visible_line_offset): new functions to 
2593         get indexes excluding invisible text
2594
2595         * gtk/gtkmessagedialog.c (gtk_message_dialog_init): strip out a
2596         bunch of extra padding that served no purpose
2597
2598         * gtk/gtkdialog.c: Make all the spacings configurable via style
2599         properties, for chubbiness configuration in themes
2600
2601         * tests/testtext.c: fix path to the immodules.
2602         
2603 Mon Apr 23 18:57:03 2001  Jonathan Blandford  <jrb@redhat.com>
2604
2605         * gtk/gtksocket.c (gtk_socket_filter_func): add missing '}' that
2606         got munched by #endif.
2607
2608         * gtk/Makefile.am (gtk_plug_c_sources): add missing '\'
2609
2610         * gtk/gtktreeview.c: Refactored code to clean up a number of
2611         events.
2612
2613         * gtk/gtktreemodel.c (gtk_tree_path_compare): Switched return
2614         values to make consistent with other functions.  Spotted by Jeff
2615         Franks <jcf@tpg.com.au>.
2616
2617         * gtk/gtktreeview.h (struct _GtkTreeViewClass): Fixes to signal
2618         declaration spotted by Jeff Franks <jcf@tpg.com.au>.
2619
2620 2001-04-23  Sven Neumann  <sven@gimp.org>
2621
2622         * gtk/Makefile.am
2623         * gtk/gtkplug.c
2624         * gtk/gtksocket.c: on request of Owen, reverted my last change 
2625         and exclude gtkplug.c/gtksocket.c from the build for non-X11 targets
2626
2627 2001-04-23  Sven Neumann  <sven@gimp.org>
2628
2629         * gtk/gtkplug.c: put into #ifdef GDK_WINDOWING_X11 to make GTK+
2630         compile for non-X11 targets again
2631
2632 2001-04-20  Alexander Larsson  <alexl@redhat.com>
2633
2634         * gtk/gtkcolorsel.[ch]:
2635         API Change. Take GdkColor arguments instead of gdouble *.
2636         Leave the old gtk_color_selection_set_color for compatibility,
2637         but marked deprecated.
2638         Do correct rounding when converting RGB <-> HSV.
2639         
2640         * gtk/gtkcolorseldialog.c:
2641         * tests/testgtk.c:
2642         Use new GtkColorSelection API.
2643
2644         * gtk/gtkhsv.c:
2645         Fix problem selecting colors in triangle when Hue is 330.
2646         Fix some black dots around the HSB triangle.
2647         
2648         * gtk/gtkfilesel.c:
2649         return FALSE from the focus_in_event handler to fix focus problems.
2650
2651 2001-04-18  Havoc Pennington  <hp@redhat.com>
2652
2653         * gtk/gtkwindow.c (gtk_window_class_init): add signals and binding
2654         set, so keybindings are configurable    
2655         (gtk_window_activate_default): Change to activate the focus widget
2656         instead if there's a focus widget, to be consistent with the
2657         behavior that previously existed in key_press_event
2658
2659 2001-04-18  Havoc Pennington  <hp@redhat.com>
2660
2661         * gdk/gdkkeyuni.c: Handle numeric keypad keysyms; bug #50201
2662
2663 2001-04-18  Havoc Pennington  <hp@redhat.com>
2664
2665         Close bug #50615:
2666         
2667         * gtk/gtkstyle.c (gtk_default_draw_layout): Use text_gc to draw
2668         the layout
2669
2670         * gtk/gtktext.c: Use base/text instead of bg/fg throughout
2671
2672         * gtk/gtkentry.c: Use base/text instead of bg/fg throughout
2673
2674         * gtk/gtktextdisplay.c: Use base/text instead of bg/fg throughout
2675         
2676         * gtk/gtkstyle.c (gtk_style_init): make GTK_STATE_SELECTED default
2677         to blue for base, in addition to bg
2678         
2679 2001-04-18  Havoc Pennington  <hp@redhat.com>
2680
2681         * tests/testgtk.c (create_image): allow shrinking the image window
2682         to test that we clip to allocation.
2683
2684         * gtk/gtkimage.c (gtk_image_expose): clip to allocation,
2685         #9845
2686
2687         * gtk/gtkenums.h: move GtkWrapMode in here, #50472
2688
2689 Wed Apr 18 14:23:14 2001  Owen Taylor  <otaylor@redhat.com>
2690
2691         * gdk/x11/gdkimage-x11.c (gdk_image_new): Try changing
2692         mode on shm segments to 0600. We'll see who complains.
2693
2694         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Call
2695         _gdk_windowing_window_destroy() AFTER recursing through
2696         children.
2697
2698         * tests/Makefile.am (noinst_PROGRAMS): Build testsocket,
2699         testsocket_child on X.
2700
2701         * tests/testsocket[_child].c: Fix uses of
2702         gtk_window_get_default_accel_group().
2703
2704         [ Merge patch from Ramiro Estrugo  <ramiro@eazel.com> from gtk-1-2 ]
2705
2706         * gdk/gdkimage.c: (gdk_image_get):
2707         Deal with the possibility that XGetImage() might return NULL.
2708         Allocate the GdkImagePrivate structure only after XGetImage()
2709         succeeds in order not to dereference a NULL ximage pointer.  This
2710         prevents a core dump when XGetImage() fails - which is unlikely,
2711         but can happen due to race conditions accessing the geometries of
2712         drawables.  An x error will still be triggered, but the gdk image
2713         wrapper at least wont seg fault.
2714         
2715 2001-04-18  Havoc Pennington  <hp@redhat.com>
2716
2717         * gtk/gtkimage.c: fix to properly queue resizes when the image is
2718         set
2719
2720         * gtk/gtktextview.c (gtk_text_view_do_popup): desensitize Paste
2721         if the insertion point isn't editable
2722
2723         * demos/gtk-demo/images.c: Added a GtkImage demo
2724
2725         * demos/gtk-demo/drawingarea.c: drawing area demo
2726         
2727         * demos/gtk-demo/menus.c (create_menu): cleanups
2728
2729 Wed Apr 18 12:15:52 2001  Owen Taylor  <otaylor@redhat.com>
2730
2731         * gdk/x11/gdkwindow-x11.c gdk/x11/gdkwindow-x11.h 
2732           gdk/x11/gdkevents-x11.c: Introduce an extra child
2733         of toplevel windows that serves to hold the focus to
2734         avoid events being delivered to embedded windows.
2735
2736         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Introduce
2737         some extra variables to clean up code and reduce the
2738         number of casts.
2739
2740         * gdk/x11/gdkwindow-x11.h (struct _GdkXPositionInfo): Use
2741         guint for 1 bit bit fields, not gboolean.
2742
2743 Wed Apr 18 10:04:23 2001  Owen Taylor  <otaylor@redhat.com>
2744
2745         * gtk/gtktooltips.c (gtk_tooltips_paint_window): Return FALSE,
2746         not TRUE. (Fixes #52925)
2747
2748 Tue Apr 17 18:05:34 2001  Owen Taylor  <otaylor@redhat.com>
2749
2750         * Released 1.3.4
2751
2752         * NEWS: Updated
2753
2754         * gtk/gtktextview.c (gtk_text_view_class_init): Fix to not
2755         use GTK_TYPE_ENUM.
2756
2757 Tue Apr 17 13:47:12 2001  Owen Taylor  <otaylor@redhat.com>
2758
2759         * configure.in: Don't put -lgthread in GLIB_LIBS, GLIB_DEPLIBS
2760
2761         * gtk/gtktypeutils.h gtk/gtksignals.h: Restore proper parameter
2762         names to compatibility #defines so docs work.
2763
2764         * gtk/gtkenums.h: Remove GtkMenuFactoryType
2765
2766         * gtk/gtkwindow.c gtk/gtkdnd.c: Docs cleanups.
2767
2768         * configure.in: Don't include -lgthread in GLIB_LIBS, GLIB_DEPLIBS
2769
2770         * tests/testgtkrc: No magenta cursors, please.
2771
2772         * README.in INSTALL.in HACKING README.cvs-commits: Updated.
2773
2774         * gtk/gtkenums.h (enum): Remove left over GtkMenuFactoryType.
2775         
2776 Mon Apr 16 14:38:41 2001  Owen Taylor  <otaylor@redhat.com>
2777
2778         * gtk/gtklist.c gtk/gtklistitem.c: Remove explicit pointer
2779         grabs, since they are no longer necessary.
2780
2781         * gtk/gtkcombo.c (gtk_combo_popup_button_press): Fix #52926
2782         by signal_connect() and call gtk_button_pressed() rather
2783         than signal_connect_after().
2784
2785         * tests/testgtk.c: Restore radio menu items to combos 
2786         since they'll look OK with Raleigh, and it is easier
2787         than finishing the process of removing them that was
2788         started earlier.
2789
2790 2001-04-16  Hans Breuer  <hans@breuer.org>
2791
2792         * gdk/gdk.def :
2793         * gtk/gtk.def : added all exports required to link PyGtk 0.7.1
2794
2795         * gdk/gdkfont.h : #define GDK_TYPE gdk_font_get_type ()
2796         we are interested in the functions return value not the function address
2797         * gdk/gdkvisual.h : same for GDK_TYPE_VISUAL
2798
2799         * gtk/makefile.msc.in : reflect movement of GDK_TYPEs from gtk to gdk
2800
2801 2001-04-14  Hans Breuer  <hans@breuer.org>
2802
2803         * gdk/gdk.def :
2804         * gdk/makefile.msc : updated
2805
2806         * gdk/win32/gdkdrawable.win32 (gdk_win32_draw_rectangle) : if modus is 
2807         "fill with tile" do so with new helper function gdk_win32_draw_tiles 
2808         (the testgtk::text backgound pixmap is drawn again)
2809         Changed SetTextAlign before pango_win32_render to TA_BASELINE to reflect 
2810         Win32 Pango change
2811         * gdk/win32/gdkprivate-win32.h : prototype for gdk_win32_draw_tiles
2812
2813         * gdk/win32/gdkproperty-win32.c : first implementation of gdk_setting_get
2814         Not sure if the returned settings have the right unit, because I couldn't
2815         find any docs for the X version ...
2816
2817         * gtk/gtk.def :
2818         * gtk/makefile.msc.in : updated
2819
2820 Thu Apr 12 17:41:17 2001  Owen Taylor  <otaylor@redhat.com>
2821
2822         * gtk-2.0.m4: Fix up to refer to GTK+, not to GLib; fix some
2823         wording problems. (Compared to version from Johannes Stezenbach to
2824         check correctness.)
2825
2826 Thu Apr 12 21:04:26 2001  Tim Janik  <timj@gtk.org>
2827
2828         * gtk/gtktreeview.c (_gtk_tree_view_column_start_drag): get
2829         this to compile.
2830
2831 2001-04-12  Anders Carlsson  <andersca@codefactory.se>
2832
2833         * gtk/gtkcellrenderertextpixbuf.c (gtk_cell_renderer_text_pixbuf_class_init): It's pixbuf_pos,
2834         not pixbufpos.
2835
2836         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render): Fix small typo.
2837
2838         * gtk/gtkcellrenderer.c (gtk_cell_renderer_get_property): xpad and ypad
2839         are unsigned insts, therefore use g_value_set_uint.
2840         (gtk_cell_renderer_set_property): Likewise, use g_value_get_uint.
2841
2842 Sun Apr  8 05:36:06 2001  Jonathan Blandford  <jrb@redhat.com>
2843
2844         * gtk/gtktextview.c (gtk_text_view_class_init): fix a fixme.
2845
2846         * gtk/gtkcellrendertoggle.c: change GTK_TYPE_POINTER to
2847         GTK_TYPE_STRING.
2848
2849         * gtk/gtktreeview.c: New functions to allow initial column
2850         dragging work.
2851
2852         * gtk/gtktreeviewcolumn.c: Initial column dragging support.
2853
2854         * tests/testtreefocus.c: give dave some love.
2855
2856         * tests/testtreesort.c: Modify test to check really long samples.
2857
2858 2001-04-11  Alexander Larsson  <alexl@redhat.com>
2859
2860         * gtk-2.0.m4: Pass pkg-config options
2861         before the other args so it works even if
2862         POSIXLY_CORRECT is set.
2863
2864 Mon Apr  9 19:02:07 2001  Tim Janik  <timj@gtk.org>
2865
2866         * configure.in (GTK_MICRO_VERSION): increment version to 1.3.4 (binary
2867         0, interface 0).
2868
2869 2001-04-04  Denis Oliver Kropp  <dok@convergence.de>
2870
2871         * gtk/gtkcalendar.c (gtk_calendar_button_press):
2872         check for action_func != NULL
2873
2874 2001-04-04  Sven Neumann  <sven@gimp.org>
2875
2876         * tests/testgtk.c (test_init): corrected path to gtk.immodules
2877
2878 Wed Apr  4 09:18:18 2001  Tim Janik  <timj@gtk.org>
2879
2880         * Released Gtk+-1.3.3.
2881
2882 Wed Apr  4 07:42:23 2001  Tim Janik  <timj@gtk.org>
2883
2884         * gdk/Makefile.am (EXTRA_DIST): add makeenums.pl to EXTRA_DIST.
2885
2886 Wed Apr  4 04:13:18 2001  Tim Janik  <timj@gtk.org>
2887
2888         * gtk/stock-icons/Makefile.am: stay in builddir and read/write
2889         files to/from source dir. (if we don't stay in builddir, we
2890         can't reach make-inline-pixbuf.
2891
2892         * gdk/Makefile.am (gdkenumtypes.c): add $(srcdir) to mekeenums.pl
2893         deps.
2894
2895         * configure.in (GTK_MICRO_VERSION): up and away (1.3.3 bin/interface
2896         ages 0).
2897
2898 Tue Apr  3 15:04:45 2001  Jonathan Blandford  <jrb@redhat.com>
2899
2900         * gtk/gtktreemodelsort.h:  removed set_sort_column, as it was
2901         moved to the GtkTreeSortable interface.
2902
2903         * gtk/gtktreeselection.c (gtk_tree_selection_selected_foreach):
2904         Make more efficient (fixes #50262).
2905
2906 Tue Apr  3 13:55:37 2001  Owen Taylor  <otaylor@redhat.com>
2907
2908         * NEWS: Updated.
2909
2910         * configure.in: Remove support for uninstalled glib.
2911
2912         * gtk/gtkdnd.c (gtk_drag_highlight_expose): Return FALSE as
2913         so as not to stop emission.
2914
2915         * gtk-config-2.0.in: Exit with an error message that gtk-config-2.0
2916         is no longer supported.
2917
2918         * Makefile.am gtk/Makefile.am tests/*: Moved all tests
2919         into tests, change build order to build modules before
2920         gtk/.
2921
2922         * modules/input/Makefile.am: Move gtk-query-immodules-2.0 invocation
2923         to here.
2924
2925 Tue Apr  3 13:52:57 2001  Tim Janik  <timj@gtk.org>
2926
2927         * gtk/gtkitemfactory.[hc]: changed gtk_item_factory_dump_items()
2928         and gtk_item_factory_dump_rc() GtkPatternSpec argument to
2929         GPatternSpec. this is actually unlikely to cause breakage in
2930         third-party apps since except for gle, pretty much ever caller
2931         passes NULL here.
2932
2933         * gtk/gtkbindings.[hc]: removed gtk_pattern_*() API.
2934
2935         * *.c: use g_pattern_*() API.
2936
2937         * docs/Changes-2.0.txt: GtkPatternSpec->GPatternSpec updates.
2938
2939         * gtk/gtkstyle.c (gtk_default_draw_resize_grip): assert unhandled
2940         directions aren't passed in.
2941
2942         * gtk/gtksettings.[hc] (_gtk_settings_parse_convert): export conversion
2943         functionality to be usable from gtkstyle.c as well, give precedence
2944         for conversion to user-supplied parsers.
2945         s/_gtk_rc_property_parser_for_type/_gtk_rc_property_parser_from_type/;
2946
2947         * gtk/gtkstyle.c (_gtk_style_peek_property_value): use
2948         _gtk_settings_parse_convert() for rcporperty value conversion.
2949
2950 2001-04-03  Alexander Larsson  <alexl@redhat.com>
2951
2952         * gdk/linux-fb/gdkevents-fb.c:
2953         Add empty gdk_setting_get().
2954
2955 Tue Apr  3 05:09:07 2001  Tim Janik  <timj@gtk.org>
2956
2957         * gtk/gtkmain.c (_gtk_boolean_handled_accumulator): use more elaborate
2958         variable names.
2959         
2960         * gtk/makeenums.pl: touch this so enum files get remade.
2961
2962 Mon Apr  2 19:36:57 2001  Jonathan Blandford  <jrb@redhat.com>
2963
2964         * gtk/gtktreestore.c (gtk_tree_store_init):  Bug fix to make trees
2965         work again when not sorted.
2966
2967         * gtk/gtktreeview.c (gtk_tree_view_class_init): Add "collapse_row"
2968         and "expand_row" signal, closing bug 52578.
2969
2970         * gtk/gtktreeview.c (gtk_tree_view_expand_row): Add signal
2971         support.
2972
2973         * gtk/gtktreeview.c (gtk_tree_view_collapse_row): Add signal
2974         support.
2975
2976 Mon Apr  2 18:18:07 2001  Owen Taylor  <otaylor@redhat.com>
2977
2978         * gdk/gdkevents.h: Add GdkEventSetting event for notification
2979         of changes to system settings, gdk_setting_get() to retrieve
2980         a single system setting.
2981
2982         * gdk/x11/gdkevents-x11.c: Bridge gdk_setting_get() and GdkEventSetting
2983         to the draft XSETTINGS mechanism.
2984
2985         * gdk/x11/xsettings-{common,client}.[ch]: Sample-implementation of
2986         XSETTINGS.
2987
2988         * gtk/gtkmain.c gtk/gtksettings.[ch]: Propagate notification
2989         of GDK settings changes to the GtkSettings object.
2990
2991         * gdk/gdkevents.[ch] gdk/gtk/gtksettings.c: Hook up the
2992         double-click-timeout property to GDK.
2993
2994         * gdk/gdkcolor.[ch] gdk/gdkvisual.h gdk/gdkevent.[ch] gdk/gdkfont.[ch]:
2995         Define GDK boxed types here.
2996
2997         * gdk/Makefile.am gdk/makeenums.pl: Generate source files
2998         gdk/gdkenumtypes.[ch] for enum definitions.
2999
3000         * gtk/gtkcompat.h: Add defines for GTK_TYPE_GDK_*
3001         * gtk/gtk-boxed.defs: Comment out GDK types
3002         * gtk/gtktypeutils.h: Remove GDK types
3003         * gtk/Makefile.am: No longer scan GDK headers for enumerataions
3004
3005 Mon Apr  2 16:41:08 2001  Owen Taylor  <otaylor@redhat.com>
3006
3007         * Applied patch from Ron Steinke to add signal accumulators
3008         so that signals with the convention 'TRUE return means
3009         handled' stop emission on a TRUE return.
3010
3011         * gtk/gtkmain.[ch]: Add private accumulator 
3012         _gtk_boolean_handled_accumulator, used throughout GTK+.
3013         
3014         * gtk/gtkspinbutton.c: Add accumulator for ::output.
3015
3016         * gtk/gtktipsquery.c: Add accumulator for ::widget_selected
3017         
3018         * gtk/gtkwidget.c: Add accumulators for event signals,
3019         ::drag_motion, ::drag_drop. Use _gtk_boolean_handled_accumator
3020         for ::mnemonic-activate.
3021
3022         * gtk/gtkwindow.c: Add accumulator for ::frame_event
3023
3024 Mon Apr  2 16:24:21 2001  Owen Taylor  <otaylor@redhat.com>
3025
3026         * gtk/gtkwidget.c: Add missing include.
3027
3028 Mon Apr  2 16:56:15 2001  Jonathan Blandford  <jrb@redhat.com>
3029
3030         * gtk/gtkmarshal.list (VOID:BOXED,BOXED,BOXED,BOXED): new
3031         marshaller.
3032
3033         * gtk/gtktreemodel.c (gtk_tree_model_range_changed): change
3034         "changed" signal to "range_changed".
3035
3036         * gtk/gtktreeview.c (gtk_tree_view_set_model): fix small bug where
3037         removing a tree from one model would remove all trees from that
3038         model.
3039         * gtk/gtktreeview.c (gtk_tree_view_range_changed): use range
3040         changed signal instead.
3041
3042 Mon Apr  2 16:13:58 2001  Owen Taylor  <otaylor@redhat.com>
3043
3044         * gtk/gtkinvisible.c (gtk_invisible_style_set): Avoid
3045         chaining up to parent impl, since we have a INPUT_ONLY
3046         window.
3047
3048         * gtk/gtkentry.[ch]: Add a cursor_color property to set the
3049         foreground color for the cursor.
3050
3051 Mon Apr  2 15:06:13 2001  Owen Taylor  <otaylor@redhat.com>
3052
3053         * gtk/gtkstyle.c (_gtk_style_peek_property_value): Reference 
3054         param spec when caching property values, since we unref it
3055         later when we free the style.
3056
3057         * gtk/gtkoptionmenu.c (gtk_option_menu_get_props): Dont' free
3058         values since they are retrieved with G_VALUE_NO_COPY_CONTENTS.
3059
3060 Mon Apr  2 10:47:57 2001  Owen Taylor  <otaylor@redhat.com>
3061
3062         * gtk/gtkwidget.c (gtk_widget_class_init): Fix 
3063         G_VALUE_NO_COPY_CONTENTS instead of G_SIGNAL_TYPE_STATIC_SCOPE
3064         stupidity.
3065
3066 Mon Apr  2 00:51:11 2001  Owen Taylor  <otaylor@redhat.com>
3067
3068         [ First pass at adding style properties. Still needs some definite
3069         fine-tuning. ]
3070
3071         * gtk/gtkbutton.c: Add ::default_spacing style property.
3072          
3073         * gtk/gtkcheckbutton.[ch] gtkradiobutton.c: Add ::indicator_size,
3074         ::indicator_spacing style properties.
3075
3076         * gtk/gtkoptionmenu.c: Add ::indicator_size, ::indicator_spacing
3077         style properties.
3078
3079         * gtk/gtk{,h,v}paned.[ch]: Make handle_size a style property
3080         rather than a normal property.
3081
3082         * gtk/gtkwidget.c: Add an ::interior_focus style property to
3083         draw focus inside buttons, in the Windows/Java Metal/etc. style.
3084
3085         * gtk/gtkbutton.c gtk/gtkcheckbutton.c gtk/gtktogglenbutton.c:
3086         Honor ::interior_focus.
3087         
3088         * gtk/gtkentry.c: Don't draw focus at all when ::interior_focus is 
3089         TRUE.
3090
3091         * gtk/gtkrange.[ch] gtk/gtk{h,v}scrollbar.c gtk/gtk{h,v}scale.c:
3092         Add ::slider_width, ::trough_border, ::stepper_size,
3093         ::stepper_spacing style properties.
3094
3095         * gtk/gtkscale.[ch] Add ::slider-length style property.
3096
3097 2001-04-02 Alexander Larsson   <alexl@redhat.com>
3098
3099         * gdk/linux-fb/gdkwindow-fb.c:
3100         Add gdk_window_begin_resize_drag and gdk_window_begin_move_drag. Remove some
3101         warnings that were spewed on startup.
3102
3103         * gtk/gtkwindow-decorate.c:
3104         gtk_window_reposition -> _gtk_window_reposition
3105
3106 Sun Apr  1 21:37:22 2001  Owen Taylor  <otaylor@redhat.com>
3107
3108         * gtk/gtkwidget.[ch] gtk/gtktypeutils.c gtk/gtk-boxed.defs:
3109         Add boxed type for GtkRequistion. Use it for ::size-request.
3110
3111         * gtk/gtkstyle.[ch] gtk/gtktypeutils.c gtk/gtk-boxed.defs:
3112         Add a new GtkBorder structure useful for geometry properties
3113         for widgets. Add corresponding GTK_TYPE_BORDER.
3114         
3115         * gtk/gtkwidget.c (gtk_widget_class_install_style_property):
3116         Support automatic parser selection like
3117         gtk_settings_install_property_parser().
3118
3119         * gtk/gtksettings.c (_gtk_rc_property_select_parser): Export
3120         functionality for use by gtk_widget_class_install_style_property.
3121         Support GTK_TYPE_BORDER, GTK_TYPE_REQUISITION.
3122
3123 Sun Apr  1 20:48:59 2001  Owen Taylor  <otaylor@redhat.com>
3124
3125         * gtk/gtkentry.c (gtk_entry_class_init): Make invisible-char
3126         g_param_spec_unichar(). 
3127
3128 Sun Apr  1 23:41:37 2001  Tim Janik  <timj@gtk.org>
3129
3130         * gdk/x11/gdkwindow-x11.c (gdk_window_focus): raise window for non
3131         _NET window managers.
3132
3133         * gtk/gtkmenufactory.[hc]: cvs removed those files now.
3134
3135 Sun Apr  1 08:00:13 2001  Tim Janik  <timj@gtk.org>
3136
3137         * gtk/gtkwidget.[hc]: got rid of gtk_widget_popup(), a function that
3138         bad needs to be nuked, not just deprecated.
3139
3140         * gtk/gtktooltips.c (gtk_tooltips_draw_tips): don't use 
3141         gtk_widget_popup().
3142
3143         * gtk/*.[hc]: s/activate_mnemonic/mnemonic_activate/g;
3144         
3145         * gtk/gtkmenufactory.[hc]: removed this long-standingly deprecated
3146         widget.
3147         
3148         * docs/Changes-2.0.txt: updates.
3149         
3150 Sun Apr  1 01:02:54 2001  Jonathan Blandford  <jrb@redhat.com>
3151
3152         * gtk/gtktreestore.c (gtk_tree_store_sort_iter_changed):
3153         for (i = 0; i < 100; i ++)
3154           g_print ("I will confirm it compile before committing\n");
3155
3156 Sun Apr  1 00:52:06 2001  Jonathan Blandford  <jrb@redhat.com>
3157
3158         * gtk/gtktreestore.c: Initial work on implementing the
3159         GtkTreeSortable interface.  Basicaly a big cut'n'paste job.
3160
3161 Sun Apr  1 03:28:14 2001  Tim Janik  <timj@gtk.org>
3162
3163         * gtk/gtkwidget.c: fixed a bunch of notifications, added
3164         reference counts around emissions where the widget is used afterwards.
3165         added freeze/thaws around multiple properties being notified.
3166         (_gtk_widget_get_aux_info): cleanups.
3167         
3168         * gtk/gtksettings.c (gtk_settings_install_property): provide
3169         default parsing functions for gdkcolor, enums and flags.
3170
3171         * gtk/gtkwindow.[hc]: partially reverted patch from havoc,
3172         applied by owen.
3173         backed out gtk_window_get_location(), gtk_window_set_location(),
3174         gtk_window_get_size() and gtk_window_set_size(), these
3175         have to be sorted out wrg x/y/width/height/default_with/default_height
3176         properties.
3177         kept a flag in GtkWindowGeometryInfo to handle user
3178         resetting default sizes.
3179         cleaned up ZVT comments.
3180         bunch of assorted bug fixes, notification fixes.
3181         (_gtk_window_reposition): make this a really internal function.
3182         
3183         * gtk/testgtk.c: fixups.
3184         
3185 2001-03-31  Hans Breuer  <hans@breuer.org>
3186
3187         * config.h.win32.in : disable USE_MMX for msvc build cause
3188         the assembler doesn't fit and is out of my scope. Disable
3189         USE_GMODULE for msvc build as wel. The right way to share
3190         binaries on win32 would be to use libtiff.dll etc. To reduce
3191         installation hassles IMO it's better to include all fileformats
3192         builtin to gdk-pixbuf
3193
3194         * gdk-pixbuf/makefile.msc : new file
3195
3196         * gdk/gdk.def : updated
3197
3198         * gdk/win32/gdkevents-win32.c : don't erase the background if
3199         .no_bg is set. It improves the scrolling (e.g. of testgtk main
3200         buttons
3201         * gdk/win32/gdkgeometry-win32.c : added comment about the above
3202
3203         * gdk/win32/gdkwindow-win32.c : added three new functions like
3204         the X version. Only one is implemented, because the other two
3205         "gdk_window_begin_(resize|move)_drag" got no docs and appear to
3206         be default behaviour on win32 anyway ...
3207
3208         * gtk/gtk.def : updated
3209
3210         * gtk/makefile.msc.in : update for new files, use glib-genmarshal
3211         from where it was built and add an additional rule to automagically
3212         build gtkmarshal.[hc]
3213
3214         * gtk/gtkfilesel.c (open_new_dir) : don't increase n_entries
3215         before array access for the current entry isn't finished
3216
3217         * gtk/gtktreeitem.c (gtk_tree_item_subtree_button_click) :
3218         use g_return_val_if_fail
3219
3220         * gtk/testgtk.c (window_controls) : don't use the *wrong* size
3221         for the static array, but let the compiler calculate it. It
3222         makes me wonder if gcc isn't capable to catch bugs like this ...
3223
3224 2001-03-31  James Henstridge  <james@daa.com.au>
3225
3226         * gtk/gtkwidget.c (gtk_widget_size_adjust): fix use of magic
3227         constant "-1" in the aux info structure.
3228
3229 2001-03-30  Alexander Larsson  <alexl@redhat.com>
3230
3231         * gtk/gtkbutton.c (gtk_button_get_property):
3232         * gtk/gtklabel.c:
3233         Remove leaks.
3234         
3235         * gtk/gtkcontainer.c:
3236         * gtk/gtkhscale.c:
3237         * gtk/gtkhscrollbar.c:
3238         * gtk/gtklayout.c:
3239         * gtk/gtkmisc.c:
3240         * gtk/gtkprogress.c:
3241         * gtk/gtkprogressbar.c:
3242         * gtk/gtkrange.c:
3243         * gtk/gtktable.c:
3244         * gtk/gtkviewport.c:
3245         * gtk/gtkvscale.c:
3246         * gtk/gtkvscrollbar.c:
3247         * gtk/gtkwidget.c:
3248         Property patches, based on patches from John Margaglione and Lee Mallabone.
3249
3250 Thu Mar 29 21:20:38 2001  Mike Kestner  <mkestner@ameritech.net>
3251
3252         * gtk/gtkspinbutton.c : added value_changed signal which proxies for the
3253         adjustment. Cleaned redundant preconditions (spin != NULL). Added
3254         inline API function docs.
3255         (gtk_spin_button_new_with_range): New convenience constructor.
3256         (gtk_spin_button_set_increments): New adjustment helper.
3257         (gtk_spin_button_set_range): New adjustment helper.
3258
3259         * gtk/testgtk.c : added test of the new convenince constructor and
3260         value_changed signals.
3261
3262 Thu Mar 29 20:20:38 2001  Jonathan Blandford  <jrb@redhat.com>
3263
3264         * gtk/gtktreemodel.c (gtk_tree_row_ref_reordered_callback): Now we
3265         listen to the reorder signal.
3266
3267 Wed Mar 28 20:30:26 2001  Owen Taylor  <otaylor@redhat.com>
3268
3269         * gtk/gtkwidget.[ch] (_gtk_widget_get_aux_info): Add private function
3270         to get the aux info structure fo the widget.
3271
3272         * gtk/gtklabel.c gtk/gtkscrolledwindow.c gtk/gtkwindow.c: Use
3273         above function.
3274
3275         [ Patch from  Havoc Pennington  <hp@redhat.com> ]
3276
3277         * gdk/x11/gdkwindow-x11.c (gdk_window_get_frame_extents): function
3278         to get the size of the window manager frame, basically the same
3279         code that gdk_window_get_root_origin() had
3280         (gdk_window_get_root_origin): use gdk_window_get_frame_extents()
3281
3282         * gtk/gtkwindow.c (gtk_window_set_default_size): use
3283         gdk_window_resize() if the window is realized and resizeable
3284
3285         * gdk/x11/gdkwindow-x11.c (gdk_window_set_geometry_hints): fix
3286         typo so that setting gravity works
3287
3288         * gtk/gtkwindow.c (gtk_window_move_resize): don't ever use
3289         allocation if auto_shrink is on, even if the default size
3290         has not changed.
3291
3292         * gtk/gtkwidget.c (gtk_widget_render_icon): remove bogus
3293         g_return_if_fail
3294
3295 Thu Mar 29 16:29:12 2001  Jonathan Blandford  <jrb@redhat.com>
3296
3297         * gtk/gtkliststore.c (gtk_list_store_iter_changed): Massive
3298         reordering/sorting work.  Now pretty much works.
3299
3300         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): Lots of work to make
3301         reorder mostly work.  Still need to get the parity correct.
3302
3303         * gtk/gtktreeviewcolumn.c: Listen for "model" property changed
3304         signal, so I can listen for the sort_column_changed signal so I
3305         can change my "sort_indicator" property.  Cool.
3306
3307 Wed Mar 28 00:03:10 2001  Owen Taylor  <otaylor@redhat.com>
3308
3309         [ Patch from Havoc Pennington, hp@redhat.com ]
3310
3311         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c:
3312         Add functions gdk_window_begin_resize_drag/begin_move_drag
3313         to start resizing or moving a toplevel window. This
3314         is done either using the _NET_WM_MOVERESIZE protocol,
3315         or, if that isn't present, by emulation.
3316
3317         * gtk/gtkwindow.[ch]: Add functions gtk_begin_move/resize_drag
3318         to export the above to GTK+-land.
3319
3320         * gtk/gtkstyle.[ch]: Add ->draw_resize_grip() paint func.
3321         
3322         * gtk/gtkwindow.c gdk/gdkwindow.[ch] (gdk_window_constrain_size):
3323         Move this function into gdkwindow, since we need it
3324         when implementing fallback resizing.
3325
3326         * gdk/x11/gdkwindow-x11.c: gdk_window_set_geometry_hints.
3327         Fix typo when setting gravity.
3328
3329         * gtk/gtkstatusbar.[ch] (gtk_statusbar_set_has_resize_grip):
3330         Add an optional (but on by default) resize grip for resizing 
3331         the parent window.
3332
3333 01-03-29  Alexander Larsson  <alexl@redhat.com>
3334
3335         * gtk/gtktooltips.c (gtk_tooltips_event_handler):
3336         Don't return TRUE from the event handler, that blocks all
3337         event signals on the tooltip widget. Now you can press buttons
3338         in toolbars again.
3339
3340 Wed Mar 28 19:20:43 2001  Owen Taylor  <otaylor@redhat.com>
3341
3342         * gtk/testtext.c (create_buffer): Add missing NULL on
3343         valist.
3344
3345         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_class_init): Fix
3346         c-n-p problem with INCONSISTENT property.
3347
3348         [ Patch from Havoc Pennington  <hp@redhat.com> ]
3349
3350         * gtk/gtkentry.h (struct _GtkEntryClass): add same populate_popup
3351         hook.
3352
3353         * gtk/gtktextview.h (struct _GtkTextViewClass): add populate_popup
3354         signal as a hook for extending the default popup menu
3355
3356         * gtk/gtkimmulticontext.c (gtk_im_multicontext_append_menuitems):
3357         use radio menu items for the input method menuitems
3358
3359         * gtk/gtkimcontextsimple.c (check_hex): do better validation of 
3360         inserted unicode from Ctrl-Shift-hex input method
3361
3362         * gtk/gtktextbtree.c (_gtk_text_btree_insert): remove utf8
3363         validatation here, already done at GtkTextBuffer level.
3364
3365         * gtk/gtkwidget.c (gtk_widget_class_init): add binding set, add
3366         popup_menu run action signal and Shift+F10 and Menu keybindings.
3367
3368         * gtk/gtkentry.c: implement a default handler for popup_menu
3369
3370         * gtk/gtktextview.c: implement a default handler for popup_menu
3371
3372         * gtk/gtkmenu.c (gtk_menu_popup): select first item if popup is
3373         from a key event
3374         
3375         * gtk/gtklabel.c: remove "trailer" cruft
3376
3377 Wed Mar 28 17:27:12 2001  Jonathan Blandford  <jrb@redhat.com>
3378
3379         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): new function to
3380         handle reordering of trees.  Seems to mostly work w/ the exception
3381         of the parity flag.
3382
3383         * gtk/gtktreeview.c (gtk_tree_view_reordered): handle "reordered"
3384         signal.
3385
3386 Wed Mar 28 21:12:37 2001  Tim Janik  <timj@gtk.org>
3387
3388         * gtk/gtkwidget.h: c++ fixes.
3389
3390 Sun Mar 25 15:51:28 2001  Owen Taylor  <otaylor@redhat.com>
3391
3392         * gtk/gtksettings.c (gtk_settings_init): Fix use of uninitialized
3393         memory.
3394
3395 Tue Mar 27 22:36:07 2001  Owen Taylor  <otaylor@redhat.com>
3396
3397         * gtk/gtkwidget.h gtk/gtkrange.h: Apply patch from 
3398         Nils Barth fixing event return values. (#51041)
3399
3400         * gtk/gtkwidget.c: Fix some return values for default
3401         functions.
3402
3403         * gtk/gtk[vh]scrollbar.c gtk/gtk[vh]range.c: Fix
3404         return values for trough_keys functions.
3405
3406         * gtk/gtkwidget.h (struct _GtkWidgetClass): Fix return
3407         value for add_accelerator (shoudl have been a void
3408         return.)
3409
3410         * gtk/gtkcellrenderer.[ch]: gtkcellrenderertoggle.h:
3411         Fix return type of EVENT.
3412
3413         * gtk/gtkmarshal.list gtk/gtktexttag.c: Make EVENT
3414         signal return a boolean.
3415
3416 Tue Mar 27 22:07:44 2001  Jonathan Blandford  <jrb@redhat.com>
3417
3418         * gtk/gtkliststore.c (gtk_list_store_sort): Fix arguments to
3419         reordered signal.
3420
3421         * tests/testtreesort.c (main): fix spelling.
3422
3423 Tue Mar 27 20:55:29 2001  Jonathan Blandford  <jrb@redhat.com>
3424
3425         * gtk/gtkliststore.c: More work on implementing sortable
3426         interface.
3427
3428 Mon Mar 26 15:48:45 2001  Owen Taylor  <otaylor@redhat.com>
3429
3430         * gtk/gtkwindow.c (gtk_window_list_toplevels): Don't
3431         reference the widgets in the resulting list. (#11821)
3432         This makes this consistent with gtk_container_children.
3433
3434         * gtk/gtkwindow.c gtk/gtkwidget.c: Fix up the two
3435         uses of gtk_window_list_toplevels.
3436
3437 Mon Mar 26 15:26:17 2001  Owen Taylor  <otaylor@redhat.com>
3438
3439         * gtk/gtkimcontext.c (gtk_im_context_set_use_preedit): Add
3440         a virtual function to set whether the IM context should use 
3441         the preedit string. (#51922)
3442         
3443 Mon Mar 26 14:42:59 2001  Owen Taylor  <otaylor@redhat.com>
3444
3445         * gdk/gdkpango.h: Remove stale FIXME comment.
3446
3447 2001-03-26  Alexander Larsson  <alla@lysator.liu.se>
3448
3449         * gtk/gtkfilesel.c (gtk_file_selection_get_filename):
3450         Fixed bug that returned NULL if a filename was selected.
3451
3452 2001-03-24  Havoc Pennington  <hp@pobox.com>
3453
3454         * gtk/gtkthemes.c (gtk_theme_engine_load): improve error message
3455         to contain the word "theme"
3456
3457 2001-03-24  Havoc Pennington  <hp@pobox.com>
3458
3459         * gtk/gtkhsv.c (gtk_hsv_move): make motion around the ring much
3460         slower but finer-grained
3461         (gtk_hsv_focus): get initial focus on the ring or triangle 
3462         according to tab direction
3463
3464         * gtk/testgtk.c (main): get rid of weird sleep(1) on exit
3465
3466 2001-03-23  Havoc Pennington  <hp@pobox.com>
3467
3468         * gtk/gtkhsv.c: make this somewhat key-navigable
3469
3470         * gtk/gtkfontsel.c: mnemonics
3471
3472         * gtk/gtkgamma.c: mnemonics
3473
3474         * gtk/gtkcolorsel.c: add mnemonics to labels
3475
3476 2001-03-22  Havoc Pennington  <hp@pobox.com>
3477
3478         Applied big patch from Seth Lytle to fix event handler return
3479         values, slightly modified.
3480
3481         * gtk/gtkcalendar.c (gtk_calendar_button_press): return TRUE if
3482         handled.
3483         (gtk_calendar_key_press): return TRUE for GDK_space triggers
3484         select_day
3485
3486         * gtk/gtkclist.c (gtk_clist_button_press): return TRUE if handled
3487         (gtk_clist_button_release): return TRUE if handled
3488
3489         * gtk/gtkcolorsel.c (mouse_release):
3490         (palette_activate): 
3491         (palette_press): 
3492         (palette_new): 
3493         (mouse_press): 
3494         (get_screen_color): 
3495         fixed return type (void to gboolean), return TRUE,
3496         added GTK_SIGNAL_FUNC cast
3497
3498         * gtk/gtkcombo.c (gtk_combo_popup_button_press): fixed return type
3499         (void to gboolean), and return TRUE
3500         (gtk_combo_button_release): changed return value to TRUE after
3501         gtk_grab_add on combo->popwin
3502
3503         * gtk/gtkctree.c (gtk_ctree_button_press): return TRUE if triggers a
3504         collapse or expand
3505
3506         * gtk/gtkcurve.c (gtk_curve_graph_events): return TRUE for
3507         button/motion
3508
3509         * gtk/gtkdnd.c (gtk_drag_source_event_cb): return TRUE for button
3510         press/release and motion that trigger act
3511
3512         * gtk/gtkentry.c (gtk_entry_button_release): return TRUE
3513
3514         * gtk/gtkfontsel.c (gtk_font_selection_size_key_press): return TRUE
3515         for GDK_Return
3516         
3517         * gtk/gtklist.c (gtk_list_button_press): return TRUE mostly
3518         (gtk_list_button_release): return TRUE if selection
3519
3520         * gtk/gtklistitem.c (gtk_list_item_button_press): return TRUE on
3521         press
3522
3523         * gtk/gtkmenushell.c (gtk_menu_shell_button_press):
3524         (gtk_menu_shell_button_release): chain parent_menu_shell retval
3525
3526         * gtk/gtknotebook.c (gtk_notebook_button_press): return FALSE if
3527         nothing triggered
3528         (gtk_notebook_button_release): return TRUE if we do anything
3529
3530         * gtk/gtkspinbutton.c (gtk_spin_button_button_press): 
3531         (gtk_spin_button_button_release): return TRUE or chained retval
3532
3533         * gtk/gtktext.c (gtk_text_button_press): 
3534         (gtk_text_button_release): return TRUE
3535         (gtk_text_key_press): remove redundant retval code
3536         
3537         * gtk/gtktreeitem.c (gtk_tree_item_button_press): return TRUE if button
3538         and sensitive
3539         (gtk_tree_item_subtree_button_click): changed type to gint, and return
3540         TRUE if sensitive
3541
3542         * gtk/gtktooltips.c (gtk_tooltips_event_handler): deactivate implies 
3543         return TRUE
3544
3545 2001-03-23  Havoc Pennington  <hp@redhat.com>
3546
3547         * gtk/testgtk.c: fix warnings
3548
3549         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): fix return value
3550
3551         * gtk/gtktextview.c: fix warnings
3552
3553         * gtk/gtktext.c (find_cursor_at_line): fix warning
3554
3555         * gtk/gtkselection.c (gtk_selection_notify): fix warning 
3556
3557         * gtk/gtkitemfactory.c (gtk_item_factory_menu_pos): fix signature
3558         of this function
3559
3560         * gtk/gtkimmulticontext.c (gtk_im_multicontext_append_menuitems):
3561         fix warning
3562
3563         * gtk/gtkhandlebox.c (gtk_handle_box_style_set): fix warning
3564
3565         * gtk/gtkfontsel.c: fix warning
3566
3567         * gtk/gtkcolorsel.c: fix warnings
3568
3569 2001-03-23  Havoc Pennington  <hp@redhat.com>
3570
3571         * gtk/gtkhandlebox.c: Apply property patch from Lee Mallabone
3572
3573         * gtk/gtkbox.c: Apply property patch from Lee Mallabone
3574
3575         * gtk/gtkcheckmenuitem.c: Apply property patch from Lee Mallabone,
3576         and deprecated gtk_check_menu_item_set_show_toggle().
3577         
3578         * gtk/gtkbutton.c: Apply property patch from Lee Mallabone
3579
3580         * gtk/gtkfilesel.c: Apply property patch from Lee Mallabone
3581
3582         * gtk/gtkframe.c: Apply property patch from Lee Mallabone
3583
3584 2001-03-23  Havoc Pennington  <hp@redhat.com>
3585
3586         * gtk/gtktoolbar.c, gtk/gtkimcontext.c, gtk/gtklabel.c: fix up
3587         some docs
3588
3589 Fri Mar 23 16:13:43 2001  Jonathan Blandford  <jrb@redhat.com>
3590
3591         * gtk/gtktreeviewcolumn.h (GtkCellDataFunc): Forgot to namespace
3592         this.
3593
3594         * gtk/gtktreestore.c (gtk_tree_store_set_value): change from
3595         set_cell to set_value
3596
3597         * gtk/gtkliststore.c (gtk_list_store_set_value): change from
3598         set_cell to set_value
3599
3600 Thu Mar 22 19:27:34 2001  Jonathan Blandford  <jrb@redhat.com>
3601
3602         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
3603         fix braino.
3604         * gtk/gtktreesortable.[ch]: New interface to add cleanup sortable
3605         support.
3606
3607         * gtk/gtktreeview.c: Addition of initial sortable support.
3608
3609         * gtk/gtktreestore.c: Addition of initial sortable support.
3610
3611         * gtk/gtkliststore.c: Addition of initial sortable support.
3612
3613         * gtk/gtkmarshal.list: yet another marshaller.
3614
3615         * gtk/gtktreedatallist.[ch]: shared code between the store models
3616         for handling sorting headers.
3617
3618 2001-03-22  Havoc Pennington  <hp@redhat.com>
3619
3620         * gtk/gtkcontainer.c (gtk_container_set_focus_chain): 
3621         (gtk_container_unset_focus_chain): Add ability to override the 
3622         focus chain for a container explicitly
3623
3624 Thu Mar 22 13:01:44 2001  Tim Janik  <timj@gtk.org>
3625
3626         * gtk/gtklabel.[hc]: some cleanups, fixed mnemonic_widget handling,
3627         added PROP_MNEMONIC_WIDGET.
3628
3629         * gtk/gtkwindow.c (gtk_window_activate_mnemonic): 
3630         (gtk_window_remove_mnemonic): 
3631         (gtk_window_add_mnemonic): fixed assertions.
3632         (gtk_window_activate_mnemonic): constrain modifier checks to those
3633         permitted by gtk_accelerator_get_default_mod_mask().
3634         got rid of gtk_window_get_default_accel_group().
3635
3636         * gtk/gtkwidget.c (gtk_widget_real_activate_mnemonic): handle non
3637         activatable widgets either by focussing or a warning.
3638         added a signal accumulator to ::activate_mnemonic which stops the
3639         emission once a handler returned TRUE.
3640
3641 2001-03-22  Havoc Pennington  <hp@pobox.com>
3642
3643         * gtk/gtktoolbar.c (gtk_toolbar_insert_stock): handle mnemonics in
3644         the stock item label
3645
3646         * gtk/gtklabel.c: s/@gtk_func/gtk_func()/ in docs
3647
3648         * gtk/gtkstock.c (builtin_items): add mnemonics where missing
3649
3650         * demos/gtk-demo/*.c: Add mnemonics all over the place
3651
3652         * gtk/gtklabel.h: mark parse_uline deprecated
3653
3654 2001-03-21  Alexander Larsson  <alexl@redhat.com>
3655
3656         * gtk/gtkitemfactory.[ch]:
3657         Add support for stock and normal imagemenuitems.
3658         
3659         * gtk/testgtk.c:
3660         Add some tests for mnemonics, stock toolbars, stock
3661         and image menuitems in itemfactory and gdk_window_scroll.
3662
3663 2001-03-21  Alexander Larsson  <alexl@redhat.com>
3664
3665         * gtk/gtkbutton.[ch]:
3666         * gtk/gtkdialog.c:
3667         Renamed gtk_button_new_stock() to gtk_button_new_from_stock() and
3668         removed accel_group argument. Renamed gtk_button_new_accel() to
3669         gtk_button_new_with_mnemonic() and removed accel_group argument.
3670
3671         * gtk/gtkcheckbutton.[ch]:
3672         New function gtk_check_button_new_with_mnemonic().
3673
3674         * gtk/gtkentry.c:
3675         Override activate_mnemonic and just grab focus.
3676
3677         * gtk/gtkitemfactory.c:
3678         Don't add menu uline accel group, instead use mnemonics support.
3679
3680         * gtk/gtklabel.[ch]:
3681         New support for mnemonics.
3682
3683         * gtk/gtkmarshal.list:
3684         Needed BOOLEAN:BOOLEAN for activate_mnemonic.
3685
3686         * gtk/gtkmenu.[c]:
3687         * gtkmenushell.c:
3688         Use mnemonics instead of accel groups for uline
3689         support in menu items.
3690         Removed gtk_menu_get_uline_accel_group() and
3691         gtk_menu_ensure_uline_accel_group().
3692
3693         * gtk/gtkmenuitem.c:
3694         Override activate_mnemonic to handle switching between
3695         menu items if there are collisions.
3696         
3697         * gtk/gtknotebook.c:
3698         Connect to activate_mnemonic on the tab_label, so that
3699         activating it switches to that notebook page.
3700
3701         * gtk/gtkwidget.[ch]:
3702         Add activate_mnemonic signal. New function
3703         gtk_widget_activate_mnemonic() to emit it.
3704         Default implementation does activate/grab_focus.
3705
3706         * gtk/gtkwindow.[ch]:
3707         Add support for mnemonics in windows.
3708         New functions:
3709         gtk_window_add_mnemonic, gtk_window_remove_mnemonic,
3710         gtk_window_activate_mnemonic, gtk_window_set_mnemonic_modifier
3711
3712         * gtk/testgtk.c:
3713         Update to function name changes.
3714         
3715 2001-03-21  Alexander Larsson  <alexl@redhat.com>
3716
3717         * gtk/gtkimagemenuitem.[c]:
3718         Add gtk_image_menu_item_new_from_stock()
3719
3720 Tue Mar 20 15:00:43 2001  Jonathan Blandford  <jrb@redhat.com>
3721
3722         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
3723         Fix buglet in meeting.
3724
3725 2001-03-19  Havoc Pennington  <hp@redhat.com>
3726
3727         * gtk/gtkiconfactory.c: Make GtkIconSource an opaque datatype, and
3728         add a bunch of accessor functions. This is because we have
3729         reasonable expectations of extending what fields it contains in
3730         the future.
3731
3732         * gtk/gtkstyle.c (gtk_default_render_icon): adapt to icon source
3733         changes
3734
3735         * gtk/gtkrc.c (gtk_rc_parse_icon_source): fix to use new
3736         GtkIconSource   
3737
3738 Mon Mar 19 15:53:36 2001  Owen Taylor  <otaylor@redhat.com>
3739
3740         * gtk/gtkitemfactory.c gtk/testgtk.c: Handle quoting of / with \; properly
3741         handle __ in paths, quote " and \n in gtk_item_factory_dump_items().
3742
3743         * gtk/gtkadjustment.[ch] gtk/gtkclist.c gtk/gtkhruler.c gtk/gtklayout.c 
3744           gtk/gtklist.c gtk/gtkprogress.[ch] gtk/gtkprogressbar.[ch] gtk/gtkrange.[ch]
3745           gtk/gtkruler.[ch] gtk/gtkscale.c gtk/gtkscrolledwindow.c gtk/gtkspinbutton.[ch]
3746           gtk/gtktext.c gtk/gtktextview.c gtk/gtkvruler.c gtk/testgtk.c:
3747         Change float to double everywhere with the exception of 0<->1.0 alignment
3748         and GtkCurve.
3749
3750 2001-03-19  Tor Lillqvist  <tml@iki.fi>
3751
3752         * gdk/win32/gdkdrawable-win32.c
3753         * gdk/win32/gdkimage-win32.c: Use correct casts in debugging
3754         output.
3755
3756         * demos/testpixbuf-drawable.c: If GDK_WINDOWING_WIN32, include
3757         gdkwin32.h.
3758
3759 2001-03-18  Tor Lillqvist  <tml@iki.fi>
3760
3761         * gdk/win32/gdkevents-win32.c (print_window_state): New function.
3762         print_event_state, print_event): Use preprocessor macro to make
3763         code more compact. Print also GDK_WINDOW_STATE events.
3764         (synthesize_crossing_events): Remove the old #ifdeffed-out code.
3765         
3766         * gtk/gtk.def
3767         * gtk/makefile.mingw.in: Update.
3768
3769         * gtk/gtkmain.h: Check for G_PLATFORM_WIN32, not only G_OS_WIN32,
3770         to catch also Cygwin.
3771
3772 Sun Mar 18 01:15:30 2001  Tim Janik  <timj@gtk.org>
3773
3774         * gtk/gtkspinbutton.[hc]: added rc-style argument
3775         GtkSpinButton::shadow_type.
3776         removed spin_button->shadow_type, gtk_spin_button_set_shadow_type()
3777         and ARG_SHADOW_TYPE as it doesn' make much sense to try to override
3778         rc-style settings.
3779
3780         * gtk/gtkfixed.c: removed gtk_fixed_paint() (was unused).
3781
3782         * gtk/gtkwidget.c: quark cleanups.
3783
3784         * gtk/gtkrc.[hc]: added gtk_rc_scanner_new() to create an rc-file
3785         scanner with appropriate configuration, renamed GtkRcStyleClass.clone
3786         to create_rc_style() (we don't do cloning in standard OO sense).
3787         added per rc style properties.
3788         
3789         * gtk/gtkstyle.[hc]: added code to retrive pspec conformant rc-style
3790         property values and for caching those. some cleanups.
3791         
3792         * gtk/Makefile.am: -DG_DISABLE_CONST_RETURNS.
3793         
3794         * gtk/gtksettings.[hc]: new file for global rc-file properties
3795         (at least currently, should get extended to support X properties
3796         and other communication mechanisms).
3797         
3798         * gtk/gtkwidget.[hc]: added style property support:
3799         (gtk_widget_class_install_style_property_parser): install style
3800         property pspec with parser function for rc-file values other
3801         than LONG, DOUBLE or STRING.
3802         (gtk_widget_class_install_style_property): same as above without
3803         parser (parsers are going to be needed quite infrequently).
3804         (gtk_widget_style_get_property): retrive style property value.
3805         (gtk_widget_style_get_valist): same as above with varargs support,
3806         has NOCOPY semantics.
3807         (gtk_widget_style_get): wrapper around gtk_widget_style_get_valist().
3808
3809 Fri Mar 16 18:24:53 2001  Jonathan Blandford  <jrb@redhat.com>
3810
3811         * demos/gtk-demo/main.c (row_activated_cb): modified to use
3812         "row_activated" signal.
3813
3814         * gtk/gtktreeview.c (gtk_tree_view_row_activated): oh, the
3815         stupidity.  Lets actually pass in the row with this signal...
3816
3817 Fri Mar 16 18:01:17 2001  Jonathan Blandford  <jrb@redhat.com>
3818
3819         * gtk/gtktreeviewcolumn.[ch]: s/GTK_TREE_COLUMN/GTK_TREE_VIEW_COLUMN
3820
3821         * gtk/gtktreeview.c (gtk_tree_view_row_activated): New signal.
3822
3823         * gtk/gtktreeview.c (gtk_tree_view_destroy): moved pretty much
3824         everything into the ::destroy function, and freed a lot more.
3825
3826 2001-03-16  Havoc Pennington  <hp@redhat.com>
3827
3828         * gtk/gtkwidget.h (struct _GtkWidgetAuxInfo): change to use gint
3829         instead of gint16, to avoid overflow issues, since sizes > 16-bit
3830         are now allowed.
3831
3832 2001-03-16  Havoc Pennington  <hp@redhat.com>
3833
3834         * Applied patch from Nils Barth (bug # 51041) to 
3835         replace "gint" with "gboolean" and 0/1 with TRUE/FALSE
3836         in various places.
3837
3838 2001-03-15  Havoc Pennington  <hp@redhat.com>
3839         
3840         * gtk/gtktextbuffer.c (gtk_text_buffer_create_tag): add varargs 
3841         for properties to set on the tag.
3842
3843         * gtk/testtext.c: fixups to reflect create_tag change
3844         
3845         * gtk/gtktexttag.c (gtk_text_tag_set_property):
3846         background/foreground stipple are objects, not boxed.
3847
3848         * demos/gtk-demo/textview.c: intellihancing
3849
3850 Fri Mar 16 11:38:42 2001  Jonathan Blandford  <jrb@redhat.com>
3851
3852         * gtk/gtktreeview.c (gtk_tree_view_set_model): Fixed some
3853         braindeadness spotted by Jamie Strachan <frostfreek@yahoo.com>.
3854
3855 2001-03-16  Alexander Larsson  <alexl@redhat.com>
3856
3857         * gdk/x11/gdkgeometry-x11.c (_gdk_window_process_expose):
3858         Fix sign error with queued region translations.
3859
3860 2001-03-15  HideToshi Tajima  <tajima@happy>
3861
3862         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_set_cursor_location): 
3863         * gtk/gtkimmulticontext.c (gtk_im_multicontext_set_cursor_location):
3864         * gtk/gtkentry.c (update_im_cursor_location): 
3865         * gtk/gtkimcontext.c (gtk_im_context_set_cursor_location):
3866         * gtk/gtkimcontext.h (struct _GtkIMContextClass): rename
3867         set_cursor_pos to set_cursor_location in GtkInputContext class
3868
3869 Thu Mar 15 18:22:44 2001  Jonathan Blandford  <jrb@redhat.com>
3870
3871         * gtk/gtkcellrenderer.h: Changed prototype to allow for getting
3872         the location of the cell relative to its area.
3873         * gtk/gtkcell*: modified for above change
3874         * gtk/gtktreeview.c: modified for above change.
3875
3876 Wed Mar 14 13:58:32 2001  Jonathan Blandford  <jrb@redhat.com>
3877
3878         * gtk/gtktreeview.c (gtk_tree_view_set_model): Ref the model.
3879          (gtk_tree_view_finalize): actually unref the model.  Thanks to
3880         Jamie Strachan <frostfreek@yahoo.com> for noticing this error.
3881
3882 2001-03-14  Havoc Pennington  <hp@redhat.com>
3883
3884         * gtk/gtkdata.h, gtk/gtkdata.c: Delete.
3885         
3886         * gtk/gtk.h: remove gtkdata.h
3887
3888         * gtk/Makefile.am: remove gtkdata
3889         
3890         * gtk/gtktext.c (gtk_text_set_adjustments): connect to "destroy"
3891         not "disconnect" on the adjustments.
3892         
3893         * gtk/gtktooltips.h, gtk/gtktooltips.c: derive from GtkObject not
3894         GtkData
3895
3896         * gtk/gtkadjustment.h, gtk/gtkadjustment.c: derive from GtkObject
3897         not GtkData
3898
3899         * configure.in: handle case where X render exists, but Pango lacks
3900         Xft support.
3901
3902 2001-03-15 Alexander Larsson  <alexl@redhat.com>
3903
3904         * gtk/gtktoolbar.[ch]:
3905         New functions gtk_toolbar_set_icon_size and gtk_toolbar_insert_stock
3906         to add stock items to toolbars.
3907
3908         * gtk/Makefile.am:
3909         Remove ../gdk/gdkim.h from gdk_headers.
3910
3911 2001-03-15  Sven Neumann  <sven@gimp.org>
3912
3913         * gdk/gdkim.h: removed
3914         
3915         * gdk/gdkprivate.h
3916         * gdk/x11/gdkim-x11.c: do not include gdkim.h 
3917
3918 2001-03-14  HideToshi Tajima  <tajima@happy.sunsoft.eng.sun.com>
3919
3920         * gtk/gtkimmulticontext.c (gtk_im_multicontext_set_cursor_pos):
3921         * gtk/gtkimcontext.c (gtk_im_context_set_cursor_pos):
3922         * gtk/gtkimcontext.h (struct _GtkIMContextClass): add
3923         set_cursor_pos() virtual method
3924
3925         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_class_init):
3926         (gtk_im_context_xim_set_cursor_pos): add implementation for
3927         set_cursor_pos() method
3928
3929         * gtk/gtkentry.c (recompute_idle_func): set current cursor
3930         position to input methods
3931
3932 Mon Mar 12 21:02:08 2001  Jonathan Blandford  <jrb@redhat.com>
3933
3934         * gtk/gtktreeview.c (gtk_tree_view_header_focus): Fix up focus
3935         code a lot.
3936
3937         * gtk/gtktreedatalist.c (_gtk_tree_data_list_free): use
3938         g_mem_chunk.
3939         (_gtk_tree_data_list_alloc): use g_mem_chunk.
3940         (_gtk_tree_data_list_node_to_value): Fix to switch on
3941         G_TYPE_FUNDAMENTAL.
3942         (_gtk_tree_data_list_value_to_node): Fix to switch on
3943         G_TYPE_FUNDAMENTAL.
3944         (_gtk_tree_data_list_node_copy): Fix to switch on
3945         G_TYPE_FUNDAMENTAL.
3946
3947 2001-03-12  Havoc Pennington  <hp@redhat.com>
3948
3949         * gtk/gtkwindow.c (gtk_window_class_init): Patch from John Margaglione 
3950         to convert to new property API. Also, change default_width and
3951         default_height get_property to return 0 as the flag value for
3952         "unset"; -1 is not a valid value for these fields.
3953
3954 2001-03-12  Havoc Pennington  <hp@redhat.com>
3955
3956         * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: Switch to using an
3957         enum with registration for icon sizes, instead of strings.
3958
3959         * gtkimage.h, gtkimage.c, gtkstyle.h, gtkstyle.c, gtkwidget.h, 
3960         gtkwidget.c: Fix to reflect GtkIconSize
3961         
3962 2001-03-12  Alexander Larsson  <alexl@redhat.com>
3963
3964         Make GtkFB compile and link.
3965         
3966         * gdk/linux-fb/gdkdrawable-fb2.c:
3967         window->mapped to GDK_WINDOW_IS_MAPPED(). 
3968         
3969         * gdk/linux-fb/gdkwindow-fb.c:
3970         window->mapped to GDK_WINDOW_IS_MAPPED(). 
3971         Added gdk_window_shape_combine_region.
3972         Added assorted placeholders for unimplemented new GdkWindow API calls.
3973
3974 2001-03-12  Alexander Larsson  <alexl@redhat.com>
3975
3976         * gtk/gtkfilesel.c:
3977         Add more test when converting filenames from/to utf-8.
3978         Don't allow entering text in the filename entry which isn't allowed in
3979         a filename. Just beep instead.
3980
3981 2001-03-12  Alexander Larsson  <alexl@redhat.com>
3982
3983         * gtk/gtkclist.c:
3984         Scroll using gdk_window_scroll(). Don't wait for exposes.
3985         Move the column headers in an order that makes them flash less.
3986
3987 2001-03-10  Hans Breuer  <hans@breuer.org>
3988
3989         * gdk/gdk.def : updated
3990
3991         * gdk/win32/gdkgc-win32.c : pixmaps are visible again, due
3992         to offseting the clip_mask at the right place
3993
3994         * gdk/win32/gdkwindow-win32.c : don't create background brushes
3995         for all the gdkClasses, especially not for the input_only case.
3996         Otherwise flickering wont be avoidable, because we don't get
3997         WM_ERASEBKGND message for these windows.
3998
3999         * gdk/win32/gdkevents-win32.c : initialize event->expose.region
4000         and fixed massive redraw problems apparently triggered by Alexanders 
4001         recent change. Not fully understood the GDK_EXPOSE / WM_PAINT handling
4002         but it seems to work quite well :-)
4003
4004         * gdk/win32/gdkprivate-win32.h : added _gdk_window_process_expose
4005         prototype
4006
4007 Sat Mar 10 12:15:31 2001  Jonathan Blandford  <jrb@redhat.com>
4008
4009         * gtk/gtktreestore.c (gtk_tree_store_set_cell): Fix a stupid typo.
4010         (gtk_list_store_set_cell): Fix a stupid typo.
4011
4012 Fri Mar  9 20:36:21 2001  Jonathan Blandford  <jrb@redhat.com>
4013
4014         * gtk/gtktreeselection.c (gtk_tree_selection_select_all): Make
4015         select_all not work if you're in SINGLE mode (it doesn't make that
4016         much sense, anyway.)
4017
4018         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_to_value):
4019         handle types more sanely.
4020         (_gtk_tree_data_list_value_to_node): handle types more sanely.
4021         (_gtk_tree_data_list_node_copy): handle types more sanely.
4022
4023         * gtk/gtkliststore.c (gtk_list_store_set_cell): fix to work with
4024         GValue better. Converts the type as well.
4025
4026         * gtk/gtktreestore.c (gtk_tree_store_set_cell): fix to work with
4027         GValue better. Converts the type as well.
4028
4029 Wed Mar  7 20:47:41 2001  Owen Taylor  <otaylor@redhat.com>
4030
4031         * gtk/gtktext.c gtk/gtkoldeditable.[ch] gdk/gdk.[ch]
4032         gdk/Makefile.am gdk/x11/Makefile.am gdk/x11/gdkevents-x11.c 
4033         gdk/x11/gdkglobals-x11.c gdk/x11/gdkprivate-x11.c
4034         gdk/x11/gdkx.h gdk/x11/gdkim-x11.c: Remove old XIM code.
4035
4036         * gdk/win32/gdkim-win32.c gdk/linux-fb/gdkim-fb.c: Remove
4037         gdk_im/gdk_ic.
4038
4039 2001-03-09  Hans Breuer  <hans@breuer.org>
4040
4041         * gdk/gdk.def : updated
4042
4043         * gdk/win32/gdkevents-win32.c : don't ask input_only windows
4044         for their palette
4045
4046         * gdk/win32/gdkgeometry-win32.c : reflect GdkWindowObject::mapped
4047         removing
4048
4049         * gdk/win32/gdkwindow-win32.c : reflect GdkWindowObject::mapped
4050         removing and implemented Havoc's GdkWindow state functions; 
4051         stick/unstick only as no-op, cause I don't know how to emulate 
4052         on win32 ...
4053
4054         * gtk/gtk.def : updated
4055
4056         * gtk/gtkbox.c (gtk_box_get_spacing) : use g_return_val_if_fail ()
4057
4058         * gtk/gtktypeutils.c : #include <string.h>
4059
4060         * gtk/gtkwindow.h : declare gtk_window_set_decorated ()
4061
4062 Fri Mar  9 09:31:55 2001  Tim Janik  <timj@gtk.org>
4063
4064         * gtk/gtkwidget.c (gtk_widget_class_init): fixed signals with
4065         GDK_TYPE_DRAG_CONTEXT, it needs to be marshaled as an object,
4066         not a boxed.
4067
4068 2001-03-09  Alexander Larsson  <alexl@redhat.com>
4069
4070         * docs/Changes-2.0.txt:
4071         Document expose event->region change and that gtk_widget_event
4072         doesn't allow passing expose events.
4073
4074         * gdk/gdkevents.h:
4075         Add region to expose event.
4076         
4077         * gdk/gdkevents.c:
4078         Handle event->region in gdk_event_copy() and gdk_event_free().
4079
4080         * gdk/gdkwindow.c (gdk_window_process_updates_internal):
4081         Generate expose_event->region when creating expose events.
4082
4083         * gdk/x11/gdkevents-x11.c:
4084         Generate expose events with regions when translating X events.
4085
4086         * gtk/gtkcontainer.[ch]:
4087         Default expose handler that propagates expose events to NO_WINDOW
4088         children. New function gtk_container_propagate_expose()
4089
4090         * gtk/gtkwidget.[ch]:
4091         Moved gtk_widget_event implementation to gtk_widget_event_internal.
4092         gtk_widget_event calls gtk_widget_event_internal but doesn't allow
4093         expose events. New function gtk_widget_send_expose() to send expose
4094         events. New function gtk_widget_region_intersect() to calculate
4095         window/region intersections.
4096         
4097         * gtk/gtkmain.c (gtk_main_do_event):
4098         Use gdk_window_begin_paint_region() instead of gdk_window_begin_paint_rect().
4099         Use gtk_widget_send_expose() to send expose events.
4100         
4101         * gtk/gtkbin.c:
4102         * gtk/gtkbox.c:
4103         * gtk/gtkfixed.c:
4104         * gtk/gtkimagemenuitem.c:
4105         * gtk/gtklist.c:
4106         * gtk/gtkpacker.c:
4107         * gtk/gtktable.c:
4108         * gtk/gtktree.c:
4109         Remove expose handler, using the default container implementation
4110         instead.
4111         
4112         * gtk/gtkbutton.c:
4113         * gtk/gtkcheckbutton.c:
4114         * gtk/gtkeventbox.c:
4115         * gtk/gtkfixed.c:
4116         * gtk/gtkhandlebox.c:
4117         * gtk/gtklayout.c:
4118         * gtk/gtklistitem.c:
4119         * gtk/gtkmenu.c:
4120         * gtk/gtkmenubar.c:
4121         * gtk/gtkmenuitem.c:
4122         * gtk/gtknotebook.c:
4123         * gtk/gtkoptionmenu.c:
4124         * gtk/gtkpaned.c:
4125         * gtk/gtkscrolledwindow.c:
4126         * gtk/gtktogglebutton.c:
4127         * gtk/gtktoolbar.c:
4128         * gtk/gtktreeitem.c:
4129         * gtk/gtkviewport.c:
4130         Chain expose handler to parent class handler. Use
4131         gtk_container_propagate_expose() to propagate exposes.
4132
4133         * gtk/gtkclist.c (check_exposures):
4134         * gtk/gtktext.c (process_exposes):
4135         Use gtk_widget_send_expose instead of gtk_widget_event.
4136
4137 Thu Mar  8 19:40:28 2001  Jonathan Blandford  <jrb@redhat.com>
4138
4139         * gtk/gtktreeview.c (gtk_tree_view_destroy): Add destroy function.
4140
4141 Thu Mar  8 19:18:27 2001  Jonathan Blandford  <jrb@redhat.com>
4142
4143         * gtk/gtktreeview.c (gtk_tree_view_unref_tree_helper): Actually
4144         unref the nodes.   Fixes bug #50058.
4145
4146         * gtk/gtktreemodel.c (gtk_tree_model_ref_node): change
4147         "::ref_iter" to "::ref_node".
4148         (gtk_tree_model_unref_node): change "::unref_iter" to
4149         "::unref_node". Fixes bug #50064.
4150
4151 Thu Mar  8 17:40:09 2001  Jonathan Blandford  <jrb@redhat.com>
4152
4153         * gtk/gtktreeview.c (gtk_tree_view_create_row_drag_icon): add
4154         support for invisible cells.
4155          (gtk_tree_view_bin_expose): ditto
4156
4157 Thu Mar  8 16:36:00 2001  Jonathan Blandford  <jrb@redhat.com>
4158
4159         * gtk/gtktreemodel.c (gtk_tree_model_get_type): add prerequesite
4160         on gobjects.
4161
4162         * tests/testtreefocus.c (main): New test file.
4163
4164         * tests/testtreeview.c: update to latest glib changes.
4165
4166         * tests/testtreecolumns.c: update to latest glib changes.
4167
4168 Thu Mar  8 18:13:20 2001  Tim Janik  <timj@gtk.org>
4169
4170         * gtk/testgtk.c: re-enabled event watcher emission hooks.
4171
4172 Thu Mar  8 16:51:21 2001  Tim Janik  <timj@gtk.org>
4173
4174         * *.c: added accumulator data argument to g_signal_newc()
4175         functions.
4176
4177         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_set_model): 
4178         * gtk/gtktreeview.c (gtk_tree_view_setup_model): 
4179         * gtk/treestoretest.c (make_window):
4180         s/g_signal_connect/g_signal_connectc/.
4181
4182         * gtk/gtktextbuffer.c: completed signal arg fixups,
4183         they also needed G_SIGNAL_TYPE_STATIC_SCOPE flag.
4184
4185 Thu Mar  8 00:02:30 2001  Owen Taylor  <otaylor@redhat.com>
4186
4187         * gtk/gtkwidget.[ch] (gtk_widget_get_name): Make
4188         G_CONST_RETURN.
4189
4190         * gtk/gtkwidget.[ch] gtk/gtkprivate.h: Add a 
4191         ::hierarchy-changed signal when a widget changes
4192         from anchored to unanchored or vice versa.
4193         (anchored means 
4194          gtk_widget_get_ancestor (widget, GTK_TYPE_WINDOW) != NULL.)
4195         Use a private flag to keep track of this efficiently.
4196
4197 2001-03-07  Havoc Pennington  <hp@redhat.com>
4198
4199         * gtk/testgtk.c (create_spins): uglify so that size request gets
4200         tested.
4201
4202         * gtk/gtkspinbutton.c (gtk_spin_button_size_request): Base size
4203         request on values for upper/lower, completes #6152
4204
4205 Wed Mar  7 20:07:22 2001  Owen Taylor  <otaylor@redhat.com>
4206
4207         * Makefile.am: Remove gtk-config-2.0 again.
4208         (Grrrr, pkg-config. And stops make loops.)
4209
4210 Thu Mar  8 00:18:29 2001  Tim Janik  <timj@gtk.org>
4211
4212         * gtk/gtksignal.[hc]: removed old emission hook API.
4213         
4214         * docs/Changes-2.0.txt: fixed sections.
4215         
4216         * gtk/gtktextbuffer.c: signal arg fixups.
4217
4218 2001-03-07  Havoc Pennington  <hp@redhat.com>
4219
4220         * gtk/gtktextview.c (invalidated_handler): use PRIORITY_VALIDATE
4221
4222         * gtk/gtktextview.h (GTK_TEXT_VIEW_PRIORITY_VALIDATE): add this
4223         here, bug #50368; changed to be GDK_PRIORITY_REDRAW + 5, instead
4224         of GDK_PRIORITY_REDRAW + 1, so you can insert stuff in between the
4225         validation and the redraw which is higher priority than the
4226         validation.
4227
4228 2001-03-07  Havoc Pennington  <hp@redhat.com>
4229
4230         * gtk/gtkentry.c (gtk_entry_get_property): remove trailer
4231         (gtk_entry_set_property): remove trailer
4232
4233         * gtk/gtkentry.c (gtk_entry_set_width_chars): 
4234         (gtk_entry_get_width_chars): new functions, to set size request to 
4235         a given number of characters
4236
4237         * gtk/testgtk.c (create_dialog): beef up the dialog test slightly
4238
4239         * gtk/gtkdialog.c (gtk_dialog_set_has_separator): new function
4240         (gtk_dialog_get_has_separator): new function
4241         (run_delete_handler): fix to not emit "response" signal
4242         because we already did in the delete event handler installed
4243         at dialog creation time.
4244         
4245         * gtk/gtkdialog.h: add a has_separator property,
4246         add GTK_DIALOG_NO_SEPARATOR flag
4247
4248 2001-03-07  Havoc Pennington  <hp@redhat.com>
4249
4250         * gtk/gtkwindow.c (gtk_window_set_decorated): new function, turns
4251         off decorations for a window.
4252
4253         * demos/gtk-demo/button_box.c (create_bbox): adapt to button box
4254         changes
4255
4256         * gtk/gtklabel.c (gtk_label_get_layout_offsets): new function 
4257         to get location of PangoLayout inside the label, closes #51198
4258
4259         * gtk/testgtk.c (create_bbox): fix up button box usage
4260
4261         * gtk/testcalendar.c (create_calendar): fix up button box usage
4262
4263         * gtk/gtkfilesel.c (gtk_file_selection_init): fixup buttonbox usage
4264
4265         * gtk/gtkdialog.c (gtk_dialog_init): fixup buttonbox usage
4266
4267         * gtk/gtkhbbox.h: deprecations
4268
4269         * gtk/gtkvbbox.h: deprecations
4270
4271         * gtk/gtkbox.c (gtk_box_get_spacing): new function, used to
4272         emulate deprecated gtk_button_box_get_spacing
4273
4274         * gtk/gtkbbox.h: deprecate some useless functions, remove entirely 
4275         the "set global default" functions
4276         (struct _GtkButtonBox): remove "spacing" field, use the one from 
4277         GtkBox base class
4278
4279         * gtk/gtkbbox.c (_gtk_button_box_child_requisition): rename with uscore
4280
4281         * gtk/gtkiconfactory.c (gtk_icon_set_render_icon): If we fail to
4282         render the icon, return the missing image icon.
4283
4284         * gtk/gtkimage.c (gtk_image_set_from_file): fall back to missing
4285         image icon if the load fails.   
4286
4287         * gtk/gtkstock.h (GTK_STOCK_MISSING_IMAGE): Add stock icon for use
4288         when no image is found; should be the Netscape "missing image"
4289         icon eventually but for now is a random image
4290
4291         * gtk/gtkwindow.c (gtk_window_set_role): new function, sets the 
4292         role for the session manager
4293
4294         * gtk/testgtk.c (dnd_drop): remove use of GTK_WINDOW_DIALOG
4295
4296         * gtk/gtkcompat.h (GTK_WINDOW_DIALOG): compat #define
4297         GTK_WINDOW_DIALOG GTK_WINDOW_TOPLEVEL
4298
4299         * gtk/gtkenums.h (enum GtkWindowType): remove GTK_WINDOW_DIALOG
4300
4301 Wed Mar  7 13:24:57 2001  Tim Janik  <timj@gtk.org>
4302
4303         * gtk/*.c: marshaller fixes.
4304         
4305         * gtk/gtkmarshal.list: extreme cleanup.
4306
4307         * gtk/gtktreeview.c (gtk_tree_view_class_init): disable interface
4308         param spec for now.
4309
4310         * gtk/gtktexttag.c (gtk_text_tag_set_property): use g_value_get_boxed()
4311         where appliable.
4312
4313         * gtk/gtktypeutils.[hc]: updates to GLib API changes.
4314         special cased autogenerated boxed types from gtktypebuiltins_ids.c
4315         which are not reference counted:
4316         GtkSelectionData, GdkEvent, GdkColor, GtkTextIter, PangoTabArray,
4317         PangoFontDescription, GtkTreeIter and GtkTreePath.
4318
4319 Thu Mar  1 03:58:56 2001  Tim Janik  <timj@gtk.org>
4320
4321         * gtk/gtktreeselection.h: 
4322         * gtk/gtktreemodel.c:
4323         * gtk/gtktreedatalist.[hc]: fixed includes. no gobject/*
4324         file should be included directly, and gobject/gmarshal.h
4325         as well as gtk/gtkmarshal.h even can't be included directly.
4326
4327         * Makefile.am: grr, install gtk-config-2.0.
4328
4329         * gtk/testgtk.c:
4330         * gtk/simple.c:
4331         * gtk/gtkmenu.c:
4332         * gtk/gtkitemfactory.c: use g_object_connect() instead of
4333         passing "*signal*::*" args to gtk_widget_set().
4334         
4335         * gtk/gtktypeutils.[hc]: got rid of GTK_TYPE_SIGNAL.
4336         
4337         * gtk/*.c: removed trailer arg from property setters and getters.
4338         macro fixups.
4339
4340 2001-03-07  Alexander Larsson  <alexl@redhat.com>
4341
4342         * gtk/gtklabel.c (set_markup): Removed warning
4343
4344 Tue Mar  6 19:59:12 2001  Jonathan Blandford  <jrb@redhat.com>
4345
4346         * gtk/gtkcellrenderer.h (struct _GtkCellRenderer): Add visible
4347         field to allow you to hide cell renderers.
4348
4349         * gtk/gtkcellrenderer.c: Add support for invisible cells.
4350
4351         * gtk/gtktreeview.c: Add support for invisible cells.
4352
4353 Tue Mar  6 17:25:07 2001  Jonathan Blandford  <jrb@redhat.com>
4354
4355         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_button_clicked):
4356         Add "clicked" signal back to columns.
4357
4358         * ChangeLog: remove conflict markers.
4359
4360 Tue Mar  6 10:45:45 2001  Owen Taylor  <otaylor@redhat.com>
4361
4362         * gtk/gtkbutton.c: Add animation of activation by, on 
4363         activate, pressing the button, and adding a timeout that 
4364         releases the button after 250ms or on key release and
4365         emits ::clicked. (#51501)
4366
4367         * gtk/gtkdialog.c: Bit of a hack - for buttons in the
4368         action area, we connect to ::clicked instead of ::activate
4369         so the dialog stays up through the animation.
4370
4371 Mon Mar  5 16:38:15 2001  Owen Taylor  <otaylor@redhat.com>
4372
4373         * gtk/gtkmenushell.c (gtk_menu_shell_enter_notify): Only
4374         check the ignore_enter flag for the menu shell that
4375         the item is actually a child of, not for attached
4376         submenus. (#51536)
4377
4378 Tue Feb 27 02:16:14 2001  Owen Taylor  <otaylor@redhat.com>
4379
4380         * gtk/gtkmain.c (gtk_propagate_event): Only do special
4381         special key-press grab handling for widgets within
4382         GtkWindows. Otherwise, fall through to normal case.
4383
4384         This prevents key events being sent twice to GtkInvisible
4385         widgets, which can cause all sorts of mischief.
4386
4387 Fri Feb  2 13:20:12 2001  Owen Taylor  <otaylor@redhat.com>
4388
4389         * gtk/gtkmain.c (gtk_propagate_event): When a grab
4390         widget is in effect, give the grab widget a first
4391         crack at KEY_PRESS/RELEASE events. (#424)
4392
4393 2001-03-06  James Henstridge  <james@daa.com.au>
4394
4395         * gtk/gtkwidget.c (gtk_widget_class_init): set the class closure
4396         offset for the window_state_event to point at window_state_event
4397         rather than no_expose_event.
4398
4399 Mon Mar  5 19:10:15 2001  Jonathan Blandford  <jrb@redhat.com>
4400
4401         * gtk/gtkimmodule.h: fix busted /* comment */
4402
4403 Mon Mar  5 15:07:05 2001  Jonathan Blandford  <jrb@redhat.com>
4404
4405         * gtk/gtktreeview.c: Apply patch from John Margaglione to add
4406         object properties.
4407
4408 Mon Mar  5 14:55:19 2001  Jonathan Blandford  <jrb@redhat.com>
4409
4410         * gtk/gtkcellrenderertoggle.c: Apply patch from Lee Mallabone to
4411         add object properties.
4412
4413         * gtk/gtkcellrenderertextpixbuf.c: Apply patch from Lee Mallabone
4414         to add object properties.
4415
4416         * gtk/gtkcellrenderertext.c: Apply patch from Lee Mallabone to add
4417         object properties.
4418
4419         * gtk/gtkcellrendererpixbuf.c: Apply patch from Lee Mallabone to
4420         add object properties.
4421
4422         * gtk/gtkcellrenderer.c: Apply patch from Lee Mallabone to add
4423         object properties.
4424
4425 Mon Mar  5 14:38:54 2001  Jonathan Blandford  <jrb@redhat.com>
4426
4427         * gtk/gtktreemodel.c: renamed "child_toggled" to
4428         "has_child_toggled".
4429
4430         * gtk/gtktreeview.c: Handle removing columns better.  Updated to
4431         handle new signal name.
4432
4433         * gtk/gtktreestore.c: Updated to handle new signal name.
4434         * gtk/gtklisttore.c: Updated to handle new signal name.
4435         * gtk/gtktreemodelsort.c: Updated to handle new signal name.
4436
4437 2001-03-05  Alexander Larsson  <alexl@redhat.com>
4438
4439         * gtk/gtkmenu.c (gtk_menu_set_tearoff_state):
4440         Set GDK_WINDOW_TYPE_HINT_MENU on tearoff window.
4441
4442 2001-03-05  Michael Natterer  <mitch@gimp.org>
4443
4444         * gtk/gtklabel.c: Made the "parent_class" pointer static. The
4445         pixbuf-engine coincidentially also failed to make one of it's
4446         parent_class pointers static, causing overwriting of GtkLabel's
4447         parent_class pointer in pixbuf_style_class_init().
4448         (Will commit the fix to the pixbuf-engine too).
4449
4450 2001-03-05  Alexander Larsson  <alexl@redhat.com>
4451
4452         * gdk/gdkwindow.h:
4453         Added GdkWindowTypeHint type. Added modal_hint field to GdkWindindow.
4454         New functions gdk_window_set_type_hint, gdk_window_set_modal_hint and
4455         gdk_window_set_icon_list for net wmspec functionality.
4456
4457         * gdk/x11/gdkwindow-x11.c:
4458         Set _NEW_WM_STATE_MODAL from window->modal_hint in set_inital_hints.
4459         Implement gdk_window_set_type_hint, gdk_window_set_modal_hint and
4460         gdk_window_set_icon_list.
4461         Added gdk_wmspec_change_state helper function and used it in the code.
4462         Set _NET_WM_ICON_NAME in gdk_window_set_title and gdk_window_set_icon_name.
4463
4464         * gtk/gtkdialog.c (gtk_dialog_init):
4465         Set GDK_WINDOW_TYPE_HINT_DIALOG.
4466
4467         * gtk/gtkhandlebox.c (gtk_handle_box_realize):
4468         Set GDK_WINDOW_TYPE_HINT_TOOLBAR.
4469
4470         * gtk/gtkwindow.c:
4471         new function gtk_window_set_type_hint.
4472         On realize, set type hint and modal hint.
4473
4474         * gtk/gtkwindow.h:
4475         Added type_hint field and gtk_window_set_type_hint.
4476
4477 2001-03-05  Alexander Larsson  <alexl@redhat.com>
4478
4479         * gtk/gtklabel.[ch]:
4480         Convert from GtkArg to GParam (originally based on patch from Lee Mallabone).
4481         New function gtk_label_get_accel_keyval () to get the underline accelerator
4482         of the label. Setting the label pattern overrides other attributes.
4483
4484 Mon Mar  5 14:51:10 MET 2001  Sven Neumann  <sven@gimp.org>
4485
4486         * gtk/gtkrc.c: fixed compiler warnings by inserting some consts.
4487         Added missing initializers to gtk_rc_style_init().
4488
4489 Sun Mar 04  07:30:03 2001 CET Mikael Hermansson <mikeh@bahnhof.se>
4490
4491         * gtk/gtktextview.c: fixed bug #51097 about setting 
4492         gtk_text_view_set_border_window_size() if the widget is 
4493         already realized.
4494
4495 Sat Mar  3 16:59:16 2001  Owen Taylor  <otaylor@redhat.com>
4496
4497         * gdk/gdkpango.h gdk/x11/gdkwindow-x11.c: Doc fixes
4498
4499         * gdk/win32/gdkinput.c (gdk_device_get_axis): Remove doc
4500         comment. Won't do to have duplicated doc comments between
4501         the platform subdirs.
4502
4503 Sat Mar  3 16:26:33 2001  Owen Taylor  <otaylor@redhat.com>
4504
4505         * gdk/x11/gdkmain-x11.c gdk/x11/gdkkeys-x11.c 
4506           gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.c:
4507
4508         Detectable auto-repeat - make a repeating key generate
4509         press/press/press/release instead of press/release pairs.
4510
4511         If we have Xkb and XkbSetDectableAutoRepeat supports
4512         that, we do it that way. Otherwise, when we get
4513         a release event, we check ahead with XPending to see
4514         if the next key is a KeyPress with the same keycode
4515         and timestamp. (Not 100% reliable, but pretty close.)
4516           
4517 Tue Feb 27 02:16:14 2001  Owen Taylor  <otaylor@redhat.com>
4518         
4519         * gtk/gtkmain.c (gtk_propagate_event): Only do special
4520         special key-press grab handling for widgets within
4521         GtkWindows. Otherwise, fall through to normal case.
4522  
4523         This prevents key events being sent twice to GtkInvisible
4524         widgets, which can cause all sorts of mischief.
4525  
4526 Fri Feb  2 13:20:12 2001  Owen Taylor  <otaylor@redhat.com>
4527  
4528         * gtk/gtkmain.c (gtk_propagate_event): When a grab
4529         widget is in effect, give the grab widget a first
4530         crack at KEY_PRESS/RELEASE events. (#424)
4531  
4532 Sat Mar  3 15:39:49 2001  Owen Taylor  <otaylor@redhat.com>
4533
4534         * gtk/gtkentry.c (gtk_entry_button_press): Add shift-clicking
4535         to extend the selection. (Roughly based on patch
4536         from Jay Cox, #50939)
4537
4538         * gtk/gtkentry.c (gtk_entry_button_press): Fix triple-clicking
4539         to properly handle previous GDK_BUTTON_PRESS. 
4540         (Patch from Jay Cox, #50938)
4541
4542         * gtk/gtkentry.c (gtk_entry_real_delete_text): Move the
4543         '\0' back along with the deleted text. (#51148)
4544
4545 Mon Jan 22 14:31:29 2001  Owen Taylor  <otaylor@redhat.com>
4546
4547         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Unshift
4548         the group when extracting it from the X keyboard event.
4549
4550         * modules/input/Makefile.am modules/input/imipa.c: 
4551         Simple module for entering IPA. (Do we need a 
4552         gtk-stupid-input-tricks CVS module?)
4553
4554 Sat Mar  3 13:32:47 2001  Owen Taylor  <otaylor@redhat.com>
4555
4556         * gtk/gtkimmodule.c (gtk_im_module_init): Remove spurious
4557         const.
4558
4559         * gdk-pixbuf-2.0.pc.in gtk+-2.0.pc.in: Fix include path.
4560
4561         * gtk/gtkdialog.c (gtk_dialog_set_default_response): If there
4562         is no focus widget for the dialog currently, grab the focus as well
4563         as the default.
4564
4565         * gtk/gtkdialog.c (gtk_dialog_set_default_response): Get
4566         the action area's children to iterate through, not the
4567         dialog's children.
4568
4569 Sat Mar  3 13:21:27 2001  Owen Taylor  <otaylor@redhat.com>
4570
4571         * tests/Makefile.am tests/testsocket.c tests/testsocket_child.c:
4572         Add plug-socket tests. (Won't work worth a darn until I commit
4573         the rest of the plug-socket changes, but no reason these
4574         can't go into CVS now.)
4575
4576 2001-03-02  Havoc Pennington  <hp@redhat.com>
4577
4578         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_flush): use
4579         _gdk_region_get_xrectangles()
4580
4581         * gdk/x11/gdkmain-x11.c (_gdk_region_get_xrectangles): new function
4582
4583         * gtk/testgtk.c (create_shapes): add test for shape_combine_region
4584
4585         * gdk/x11/gdkwindow-x11.c (gdk_window_shape_combine_region): new
4586         function, contributed by Ron Steinke    
4587
4588         * gdk/x11/gdkevents-x11.c (gdk_wmspec_supported): rename
4589         gdk_net_wm_supports
4590
4591         * gdk/gdkregion-generic.c (gdk_region_get_rectangles): 
4592         New function, contributed by Ron Steinke
4593
4594         * gtk/gtkentry.c (gtk_entry_get_layout_offsets): New function, 
4595         used to line up the text in the entry when using the entry for
4596         editable sheet cell hacks
4597
4598         * gtk/testgtk.c (create_entry): test the activate_default setting
4599         on GtkEntry
4600
4601         * gtk/gtkentry.c (gtk_entry_set_activates_default): New function to 
4602         cause the entry to activate the default button for a dialog when 
4603         activated
4604         (gtk_entry_get_activates_default): new function
4605
4606 Wed Feb 28 19:10:43 2001  Owen Taylor  <otaylor@redhat.com>
4607
4608         * gtk/gtkclist.c (real_remove_row): Patch from ChiDeok
4609         Hwang to move call to sync_selection() up a few lines
4610         to before the row list is modified, to fix crash when
4611         removing rows in the undo_selection list.
4612
4613         (Test case provided by Daniel Elstner:
4614
4615         http://mail.gnome.org/archives/gtk-list/2001-February/msg00359.html)
4616
4617 Fri Feb 23 15:06:48 2001  Owen Taylor  <otaylor@redhat.com>
4618
4619         * gtk/gtktree.c (gtk_tree_class_init): Do the setting
4620         of tree->root_tree in parent_set rather than _map(), 
4621         fixing #50892 in a bit better manner.
4622
4623 Thu Feb 22 17:07:58 2001  Owen Taylor  <otaylor@redhat.com>
4624
4625         * gtk/gtkmenu.c (gtk_menu_popup): Don't flip cursor. (#50934)
4626
4627 Tue Feb  2 11:22:33 2001  Jody Goldberg <jgoldberg@home.com>
4628
4629         * gtk/gtkstyle.c : Remove duplicate fwd decl for
4630         gtk_default_draw_shadow.
4631
4632 ue Feb 20 11:40:58 2001  Owen Taylor  <otaylor@redhat.com>
4633
4634         * gdk/gdkimage.c (gdk_image_new): Remove excess 
4635         warning, make warnings more verbose, treat a error
4636         in shmat as permanent, and don't try again.
4637         (#51163, Ed Randall.)
4638
4639 Mon Feb 19 20:15:28 2001  Owen Taylor  <otaylor@redhat.com>
4640
4641         * gtk/gtkrange.c (gtk_range_timer_1st_time): Add an initial
4642         delay for the first click before starting to scroll.
4643         (based on #51026, gtk-enf-990512-0.patch, Eric Fisher)
4644
4645         * gtk/gtktext.c: GtkText should have I-beam cursor. 
4646         (based on gtk-enf-990513-1.patch, Eric Fisher.)
4647
4648 Mon Feb 19 16:42:19 2001  Owen Taylor  <otaylor@redhat.com>
4649
4650         * gtk/gtklayout.c (gtk_layout_allocate_child): Tiny
4651         cleanup to remove some references to unused
4652         ->xoffset, ->yoffset.
4653
4654 Mon Feb 19 14:20:36 2001  Owen Taylor  <otaylor@redhat.com>
4655
4656         * gdk/gdkrgb.c (gdk_rgb_convert_555_br): Fix incorrect
4657         mask. (#51039, fix from Martin Maierhofer)
4658
4659 Fri Feb 16 20:09:42 2001  Owen Taylor  <otaylor@redhat.com>
4660
4661         * gtk/gtkctree.c (gtk_ctree_class_init): Add bindings
4662         for unshifted + and shifted = for non-us keyboards.
4663         Make <Control>+ and <Control>- work as well as 
4664         <Control>KP_Plus, <Control>KP_Minus for recursive
4665         open/close.  (#2682, René Seindal)
4666
4667 Fri Feb 16 18:50:59 2001  Owen Taylor  <otaylor@redhat.com>
4668
4669         * gtk/gtkmenushell.c (gtk_real_menu_shell_cancel): Unset
4670         the active menu item before deactivating the menu,
4671         so gtk_menu_popdown doesn't change the history. (#50964)
4672         
4673 Fri Feb 16 15:55:22 2001  Owen Taylor  <otaylor@redhat.com>
4674
4675         * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): 
4676         draw lines with text_gc rather than black_gc.
4677         (Patch from Vlad Harchev <hvv hippo ru>, #50926)
4678
4679 Thu Mar  1 19:50:56 2001  Jonathan Blandford  <jrb@redhat.com>
4680
4681         * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_realize_button):
4682         Move handling of buttons fully in gtktreeviewcolumn.  This code is
4683         less interrelated then it was, but it still requires the
4684         GtkTreeView to map it.
4685
4686         * test/testtreecolumn.c: Now I can add a column to one view,
4687         remove it, add it to the another view, remove it, then re-add it
4688         to the first.  Nifty.
4689
4690 Thu Mar  1 13:14:27 GMT 2001  Tony Gale <gale@gtk.org>
4691
4692         * docs/tutorial/gtk-tut.sgml: Minor corrections
4693
4694 Wed Feb 28 16:36:46 2001  Jonathan Blandford  <jrb@redhat.com>
4695
4696         * gtk/gtktreemodel.c (gtk_tree_row_reference_*): Sanitize
4697         GtkRowReference.
4698
4699 2001-02-28  Havoc Pennington  <hp@redhat.com>
4700
4701         * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove draw_focus and
4702         draw_default
4703         (gtk_widget_draw_focus): remove this function; we could instead
4704         make it just gtk_widget_draw(), but in most cases I think the
4705         result would be broken user code, so think it's better to have
4706         that code not compile and get fixed
4707         (gtk_widget_draw_default): ditto
4708
4709         * gtk/gtkwidget.c: Add default handlers for focus_in_event and
4710         focus_out_event that set/unset GTK_HAS_FOCUS and call queue_draw
4711         
4712         * gtk/gtkwindow.c (gtk_window_set_default): just queue a draw when
4713         widgets lose/get the default, instead of calling draw_default
4714         
4715         * docs/Changes-2.0.txt: note about all this
4716
4717         Then fixed every widget in GTK, I won't list all the filenames.
4718
4719 Tue Feb 27 19:32:53 2001  Jonathan Blandford  <jrb@redhat.com>
4720
4721         * gtk/gtktreemodel.c (deleted_callback): Proxy out to
4722         _gtk_tree_row_reference_deleted.
4723         (inserted_callback): Proxy out to
4724         _gtk_tree_row_reference_inserted.
4725         (_gtk_tree_row_reference_new_from_view): Somewhat yukky hack to
4726         get around signal emission ordering problem.
4727
4728         * gtk/gtktreeselection.c (gtk_tree_selection_real_unselect_all):
4729         fix to work with SINGLE 
4730         (_gtk_tree_selection_internal_select_node): Major sanitization on
4731         selections.  SINGLE now seems to work.
4732
4733         * tests/Makefile.am: add testtreecolumn.c:
4734
4735         * tests/testtreecolumn.c: New test.  Mostly points out selection
4736         bugs currently, but will test columns later.
4737
4738         * gtk/gtkrbtree.c (_gtk_rbtree_remove_node): Fix really nasty
4739         selection bug.  I hate touching this code -- it's scary.
4740
4741 2001-02-26  Havoc Pennington  <hp@redhat.com>
4742
4743         * gtk/testgtk.c: test the window state stuff
4744
4745         * gtk/gtkwindow.c (gtk_window_present): new function, makes a
4746         window come to the user's attention as if it were just created
4747         (gtk_window_iconify): new function
4748         (gtk_window_deiconify): new function
4749         (gtk_window_stick): new function
4750         (gtk_window_unstick): new function
4751         (gtk_window_maximize): new function
4752         (gtk_window_unmaximize): new function
4753
4754         * gtk/gtkwidget.h, gtk/gtkwidget.c: add window_state_event signal
4755
4756         * gtk/gtkmain.c (gtk_main_do_event): handle GDK_WINDOW_STATE
4757
4758         * gdk/x11/gdkevents-x11.c: create window state events when
4759         appropriate
4760         (gdk_wmspec_supported): new function
4761
4762         * gdk/x11/gdkwindow-x11.c (gdk_window_iconify): handle
4763         iconification before showing the window
4764         (gdk_window_deiconify): new function
4765         (gdk_window_stick): new function
4766         (gdk_window_unstick): new function
4767         (gdk_window_maximize): new function
4768         (gdk_window_unmaximize): new function
4769
4770         * gdk/gdkwindow.c: store the window state in the window; 
4771         change to using the GDK_WINDOW_STATE_WITHDRAWN flag instead of
4772         window->mapped.
4773         (gdk_window_get_state): return the current window state
4774
4775         * gdk/gdkevents.c (gdk_event_get_time): handle GDK_WINDOW_STATE
4776         (gdk_event_get_state): handle GDK_WINDOW_STATE
4777         (gdk_synthesize_window_state): function to create the window state
4778         events
4779
4780         * gdk/gdkevents.h (struct _GdkEventWindowState): new type of
4781         event, for changes to "window state" such as maximized, sticky, 
4782         etc.
4783         
4784         * gdk/x11/gdkwindow-x11.c (gdk_window_focus): new function,
4785         focuses a window
4786
4787         * gdk/x11/gdkmain-x11.c (_gdk_wmspec_supported): new function, 
4788         finds out if we support a given WM spec hint
4789
4790 Tue Feb 27 13:37:38 GMT 2001  Tony Gale <gale@gtk.org>
4791
4792         * docs/faq/gtk-faq.sgml: New question re memory leaks.
4793
4794 2001-02-25  Hans Breuer  <hans@breuer.org>
4795
4796         * gdk/gdk.h : changed #ifdef GDK_DISBALE_DEPRECARED to #ifndef
4797         cause we want to loose those prototypes only in the latter case
4798
4799         * gdk/win32/gdkevents-win32.c : can't cast from GdkPixmap to
4800         GdkPixmapImplWin32 because it itsn't derived from it. Use the
4801         impl member variable instead
4802
4803         * gtk/gtk.def : updated
4804
4805         * gtk/gtklist.c : 
4806         * gtk/gtkmenus.c : include <string.h> for memset ()
4807
4808         * gtk/makefile.msc.in : updated and don't define GTK_COMPILATION
4809         for everthing built here, but for gtk-x.x.dll only. This solves
4810         problem of indifferent gtk type definitions
4811
4812 Sat Feb 24 20:11:39 2001  Jonathan Blandford  <jrb@redhat.com>
4813
4814         * gtk/gtkclipboard.h: actually put /* */ around #endif comment.
4815
4816 Fri Feb 23 17:50:13 2001  Jonathan Blandford  <jrb@redhat.com>
4817
4818         * gtk/gtktreeview.c (gtk_tree_view_bin_expose): Only draw the
4819         column that is exposed.
4820
4821         (_gtk_tree_view_update_size): Changed name from set_size, and
4822         changed function to do more work, and not force people calling it
4823         to figure out the size.  Simplifies a lot of code elsewhere.
4824
4825 2001-02-23  Alexander Larsson  <alexl@redhat.com>
4826
4827         * gdk/gdkpixmap.c (gdk_pixmap_colormap_new_from_pixbuf):
4828         return solid masks for xpms that have no transparent color.
4829         This makes the ..._create_from_xpm... API backwards
4830         compatible.
4831
4832 2001-02-23  Tor Lillqvist  <tml@iki.fi>
4833
4834         * README.win32: Update. Mention the gtk-1-3-win32-production
4835         branch.
4836
4837         * gdk/win32/bdfcursor.c: New file. A program that generates
4838         xcursors.h. Thanks to Stefan Ondrejicka.
4839
4840         * gdk/win32/xcursors.h: New file, contains the X cursor font in a
4841         compact format.
4842
4843         * gdk/win32/Makefile.am (EXTRA_DIST): Add new files.
4844
4845         * gdk/win32/gdkcursor-win32.c (_gdk_win32_data_to_wcursor): New
4846         function, uses xcursors.h.
4847         (gdk_cursor_new): Use _gdk_win32_data_to_wcursor to generate
4848         cursor from inline data instead of using LoadCursor() to generate
4849         it from a resource.
4850
4851         * gdk/win32/gdkevents-win32.c (gdk_event_translate): At button up
4852         event, must check the Windows message for mouse button state, as
4853         the GDK event state might not have been built if it is
4854         undelivered. Remove one goto.
4855
4856         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Call
4857         SetCursor() if the current cursor as returned by GetCursor() is
4858         the window's previous cursor. The ChildWindowFromPoint() test
4859         apparently didn't work correctly.
4860
4861         * gdk/win32/rc/*.cur: Remove.
4862
4863         * gdk/win32/rc/gdk.rc.in: Remove cursors.
4864
4865         * gdk/win32/rc/Makefile.am (EXTRA_DIST): Remove from here, too.
4866
4867         * gtk/makefile.{mingw,msc}.in: Updates.
4868
4869 Wed Feb 21 20:56:50 2001  Jonathan Blandford  <jrb@redhat.com>
4870
4871         * gtk/gtktreemodel.h: add functions for signal emission.
4872
4873         * gtk/gtktreestore.c: move to use above functions instead of
4874         g_signal_emit.
4875
4876         * gtk/gtkliststore.c: ditto
4877
4878 Wed Feb 21 15:41:34 2001  Jonathan Blandford  <jrb@redhat.com>
4879
4880         * gtk/gtktreestore.c: removed signals.  Moved to inherit from
4881         GObject instead of GtkObject.
4882
4883         * gtk/gtkliststore.c: ditto.
4884
4885         * gtk/gtktreemodelsort.c: ditto.
4886
4887         * gtk/gtktreemodel.c (gtk_tree_model_base_init): moved signals to
4888         GtkTreeModelIface, instead of in each model.
4889
4890 2001-02-21  Havoc Pennington  <hp@redhat.com>
4891
4892         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_child_anchor):
4893         unbreak this function
4894
4895         * gtk/gtkentry.c: apply patch from Lee Mallabone to add object 
4896         properties
4897
4898         * gtk/gtkcurve.c: apply patch from Lee Mallabone to add object
4899         properties
4900
4901         * gtk/gtkcombo.c: apply patch from Lee Mallabone to add object 
4902         properties
4903
4904         * gtk/gtkentry.c (gtk_entry_set_max_length): have this take -1 to
4905         mean unset the max length
4906
4907 Wed Feb 21 14:23:05 2001  Jonathan Blandford  <jrb@redhat.com>
4908
4909         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data_func):
4910         Changed name to be set_cell_data_func to make it clear what
4911         the functino does.  Close bug #51069.
4912
4913 Tue Feb 20 16:49:00 2001  Jonathan Blandford  <jrb@redhat.com>
4914
4915         * gtk/testgtk.c (main): Remove turning on of profiling malloc,
4916         have memory actually freed.  Keeps box running longer.
4917
4918 2001-02-21  Alexander Larsson  <alexl@redhat.com>
4919         
4920         * gtk/gtkseparatormenuitem.[ch]:
4921         Added new menu separator item. The drawing and size handling
4922         is still done in GtkMenuItem, but the API is a bit more sane.
4923         
4924         * gtk/Makefile.am:
4925         Add gtkseparatormenuitem.[ch].
4926
4927         * gtk/gtk.h:
4928         Add gtkseparatormenuitem.h.
4929         
4930         * gtk/gtkentry.c:
4931         * gtk/gtkmenufactory.c:
4932         * gtk/gtktextview.c:
4933         Use the new API for menu separators.
4934         
4935         * demos/gtk-demo/menus.c (create_menu):
4936         Add some GtkSeparatorMenuItem demo code.
4937
4938 2001-02-20  Havoc Pennington  <hp@redhat.com>
4939
4940         * gtk/gtkaspectframe.c: Convert to new property API, patch from 
4941         Lee Mallabone
4942
4943         * gtk/gtkarrow.c: Convert to new property API, patch from 
4944         Lee Mallabone
4945
4946 Tue Feb 20 14:26:41 2001  Jonathan Blandford  <jrb@redhat.com>
4947
4948         * tests/testtreeview.c (toggled_callback): fix to reflect change
4949         in GtkTreeModelStore.
4950
4951 Tue Feb 20 12:16:12 2001  Jonathan Blandford  <jrb@redhat.com>
4952
4953         * gtk/gtkiconfactory.c (gtk_icon_set_new_from_pixbuf): New
4954         function to create an icon set from a pixbuf.
4955
4956 2001-02-20  Alexander Larsson  <alexl@redhat.com>
4957
4958         * gtk/gtkcellrenderertext.[ch]:
4959         Add a "markup" property.
4960
4961         * gtk/treestoretest.c:
4962         Use the markup property, remove some leftover stuff from
4963         GtkTreeModelMapping.
4964
4965 2001-02-20  Alexander Larsson  <alexl@redhat.com>
4966
4967         * gtk/gtklabel.c (gtk_label_set_selectable):
4968         Queue a redraw if the selectable setting was changed.
4969
4970 2001-02-20  Alexander Larsson  <alexl@redhat.com>
4971
4972         * gdk/linux-fb/gdkgc-fb.c (gdk_gc_copy):
4973         Actually copy the whole gc, not just the public parts.
4974         
4975         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
4976         GDK_WINDOW_TEMP are not toplevel. Fixes selectable
4977         labels.
4978
4979 2001-02-19  Havoc Pennington  <hp@pobox.com>
4980
4981         * gdk/gdkwindow.c: docs
4982
4983         * gdk/gdkrgb.c: docs
4984
4985         * gdk/gdkregion-generic.c: docs
4986
4987         * gdk/gdkgc.c (gdk_gc_set_values): docs
4988
4989         * gdk/gdkdraw.c: docs
4990
4991         * gdk/gdkdrawable.h: deprecate drawable get/set data
4992
4993 Mon Feb 19 20:37:35 2001  Jonathan Blandford  <jrb@redhat.com>
4994
4995         * demos/gtk-demo/dialog.c: Add simple new demo.
4996
4997 2001-02-19  Havoc Pennington  <hp@redhat.com>
4998
4999         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): add
5000         insert_child_anchor signal, bug #50245
5001
5002         * gtk/gtktextbtree.c (_gtk_text_btree_insert_child_anchor): change
5003         from create_child_anchor, so the anchor is passed in
5004
5005         * gtk/gtktextchild.c (gtk_text_child_anchor_new): new function
5006         (_gtk_widget_segment_new): have the child anchor object passed in, 
5007         instead of creating it.
5008
5009         * gtk/gtktextbuffer.c (gtk_text_buffer_modified): rename
5010         to gtk_text_buffer_get_modified
5011
5012 2001-02-19  Havoc Pennington  <hp@redhat.com>
5013
5014         * gtk/gtktreemodel.c (gtk_tree_model_get_valist): hmm, someone
5015         changed GLib without fixing GTK
5016
5017         * gtk/gtkrange.h: Rename all the stupid implementation detail 
5018         functions to have an underscore in front. Most of them should 
5019         probably just go away, but for starters don't export them.
5020         Bug #50482
5021
5022 2001-02-19  Havoc Pennington  <hp@redhat.com>
5023
5024         * gdk/gdkcolor.h: test was backward, so deprecated functions were
5025         excluded by default
5026
5027         * gtk/gtkstyle.c (gtk_default_draw_diamond): draw etched in/out,
5028         clean up the old code a bit
5029
5030         * gtk/gtkradiobutton.c (gtk_radio_button_draw_indicator): draw
5031         inconsistent state
5032
5033         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_draw_indicator):
5034         draw inconsistent state
5035
5036         * gtk/testgtk.c (create_toggle_buttons): add test for inconsistent
5037         (create_menu): add inconsistent test
5038
5039         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_set_inconsistent):
5040         new function
5041         (gtk_check_menu_item_get_inconsistent): new function
5042         (gtk_real_check_menu_item_draw_indicator): draw the inconsistent
5043         state (using etched in for now)
5044
5045         * gtk/gtkcheckbutton.c (gtk_real_check_button_draw_indicator):
5046         draw inconsistent state
5047
5048         * gtk/gtktogglebutton.c (gtk_toggle_button_set_inconsistent): new
5049         function, used when the user has selected a range of stuff in
5050         different states
5051         (gtk_toggle_button_get_inconsistent): accessor for that
5052         (gtk_toggle_button_paint): draw inconsistent state (etched in?
5053         don't know what else to do)
5054
5055 2001-02-19  Hans Breuer <hans@breuer.org>
5056
5057         * gtk/gtk.def : updated exported symbols
5058
5059         * gtk/makefile.msc.in : updated
5060
5061         * gtk/gtkstyle.c (gtk_style_realize) : gets called without
5062         a colormap, when invoked from testgtk::entry. I'm not sure where
5063         the bug is, but g_return_if_fail (GDK_IS_COLORMAP (colormap));
5064         avoids immediate crashing ...
5065
5066         * gtk/gtkmain.c (check_setugid) : totally disabled on win32;
5067         any objections ?
5068
5069         * gtk/gtktreemodel.c : called G_VALUE_LCOPY with an extra
5070         0 parameter. At least msvc doesn't like macros with var args. 
5071         I simply removed the extra 0, was it a feature or a typo ?
5072
5073         * gtk/gtktreeviewcolumn.[hc] (gtk_tree_view_column_set_func) :
5074         removed the extra indirection from the GtkTreeViewColumnFunc parameter,
5075         because the value assignment to the internal struct wasn't working.
5076         I'm not absolutely sure. The problem could have been resolved by
5077         changing the "func" declartion in the struct, but was the pointer
5078         to the function pointer intended ?
5079
5080         * gtk+/gtk/gtktreedatalist.c : include gboxed.h
5081
5082         * gdk/gdk.def : updated exported symbols
5083
5084         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_image) :
5085         only use SetDIBitsToDevice if there is a palette at the drawable
5086         and the image is GDK_VISUAL_PSEUDO_COLOR
5087
5088         * gdk/win32/gdkkeys-win32.c : msvc still has no <unistd.h> ...
5089
5090         * gdk/win32/gdkwindow-win32.c : #include "gdk.h" /* gdk_rectangle_intersect */
5091
5092         * gdk/*/makefile.msc : updated
5093
5094 2001-02-19  Havoc Pennington  <hp@redhat.com>
5095
5096         * demos/gtk-demo/Makefile.am (INCLUDES): GDK_DISABLE_COMPAT_H,
5097         GDK_DISABLE_DEPRECATED (we need to merge those two #defines)
5098
5099         * gdk/x11/gdkmain-x11.c (gdk_key_repeat_disable): nuke
5100         (gdk_key_repeat_restore): nuke
5101
5102         * gdk/gdk.c (gdk_exit_func): #if 0 this for now, don't install it
5103         (gdk_init_check): no atexit func
5104
5105         * gdk/gdkrgb.h: mark some stuff deprecated
5106
5107         * gdk/gdkcolor.h: mark some stuff deprecated
5108         
5109         * gdk/gdk.h: deprecated gdk_exit, gdk_input_*
5110
5111         * gdk/gdkfont.h: bracket in GDK_DISABLE_DEPRECATED
5112
5113 2001-02-16  Havoc Pennington  <hp@redhat.com>
5114
5115         * gtk/gtkvscrollbar.c (gtk_vscrollbar_trough_keys): use the visual
5116         scroll steps.
5117
5118         * gtk/gtkvscale.c (gtk_vscale_trough_keys): use the visual scroll
5119         steps, and add Ctrl-arrow shortcuts for paging visually as with
5120         HScale, since Page Up and Page Down move logically.
5121
5122         * gtk/gtkenums.h (GtkScrollType): add GTK_SCROLL_STEP_UP,
5123         GTK_SCROLL_STEP_DOWN, etc. for visual scroll directions
5124         
5125         * gtk/gtkrange.c (gtk_range_key_press): handle the visual scroll
5126         steps
5127         (gtk_range_scroll): handle the visual steps
5128
5129         * gtk/gtklist.c (gtk_list_scroll_horizontal): handle the up/down
5130         scroll steps
5131
5132         * gtk/gtkhscale.c (gtk_hscale_trough_keys): use the visual scroll
5133         steps, not the logical ones.
5134
5135         * gtk/gtkclist.c (move_focus_row): handle the up/down scroll steps
5136         (scroll_vertical): handle up/down steps
5137
5138 2001-02-19 Alexander Larsson  <alexl@redhat.com>
5139
5140         * gdk/linux-fb/gdkimage-fb.c (gdk_image_new_bitmap):
5141         Copy data and free data with free().
5142
5143         * gdk-pixbuf/gdk-pixbuf.c:
5144         * gdk-pixbuf/io-jpeg.c:
5145         * gdk-pixbuf/io-png.c:
5146         Use g_try_malloc/g_free instead malloc/free.
5147         
5148         * gdk-pixbuf/test-gdk-pixbuf.c:
5149         Must... initialize... gobject...
5150         
5151         * gdk-pixbuf/pixops/timescale.c:
5152         * gtk/gtkcalendar.c:
5153         Use g_malloc instead of malloc.
5154         
5155 2001-02-19 Alexander Larsson  <alla@lysator.liu.se>
5156
5157         * gtk/testgtkrc:
5158         Comment out property assignments, these don't work yet.
5159
5160 2001-02-17  Havoc Pennington  <hp@pobox.com>
5161
5162         * gtk/gtkalignment.c (gtk_alignment_class_init): clean this up a
5163         bit.
5164
5165 2001-02-17  Havoc Pennington  <hp@pobox.com>
5166
5167         * gtk/gtklabel.c (gtk_label_ensure_layout): fix screwup with
5168         shadowed variables that had broken size request in some cases,
5169         leading to bogus tooltips (#50996)
5170
5171 2001-02-06  Jon K Hellan  <hellan@acm.org>
5172
5173         Implement fast browsing of tooltips, bug #50619
5174         
5175         * gtk/gtktooltips.h (struct _GtkTooltips): Add use_sticky_delay
5176         and last_popdown
5177         
5178         * gtk/gtktooltips.c (gtk_tooltips_init): Initialize sticky_delay,
5179         use_sticky_delay and last_popdown.
5180         (gtk_tooltips_draw_tips, gtk_tooltips_set_active_widget): Record
5181         time of popdown.
5182         (gtk_tooltips_set_active_widget): Unset sticky behaviour if widget
5183         is NULL.
5184         (gtk_tooltips_recently_shown): New static function.  Return true
5185         if < sticky_delay has elapsed since last popdown.
5186         (gtk_tooltips_event_handler): Display window after sticky_delay
5187         (presumably < normal delay) if < STICKY_REVERT_DELAY has elapsed
5188         since last popdown.
5189         
5190 2001-02-17  Havoc Pennington  <hp@pobox.com>
5191
5192         * gtk/gtktypeutils.h (GtkSignalFunc): change it to take (void)
5193         instead of (). #6394
5194
5195         * gtk/gtkprogressbar.c (gtk_progress_bar_get_text): Add
5196         G_CONST_RETURN, make it return by reference, #50473
5197         
5198 Sat Feb 17 06:47:27 2001  Tim Janik  <timj@gtk.org>
5199
5200         * gtk/gtkmenu.c (gtk_menu_motion_notify): default initialize the
5201         generated ENTER_NOTIFY event with 0, otherwise not explicitely
5202         setup fields contain garbage (e.g. subwindow, breaking
5203         gdk_drawable_ref() upon event copy).
5204         (gtk_menu_stop_navigating_submenu_cb): same here.
5205
5206         * gtk/gtklist.c (gtk_list_vertical_timeout): 
5207         * gtk/gtklist.c (gtk_list_horizontal_timeout): 
5208         * gtk/gtkclist.c (vertical_timeout): 
5209         * gtk/gtkclist.c (horizontal_timeout): change direct assignment
5210         default-zero-intialization for unions to memset(,0,), as unions are
5211         not fully default-zero-initialized by compilers (GdkEvent x = { 0, };
5212         has to become GdkEvent x; memset (&x, 0, sizeof (x)); )
5213
5214         * gtk/gtktreeview.c (gtk_tree_view_set_rows_drag_source): scratch
5215         g_closure_sink() warning.
5216
5217         * gtk/gtktreemodel.c (gtk_tree_model_get_valist): 
5218         * gtk/gtktreestore.c (gtk_tree_store_set_valist): 
5219         * gtk/gtkliststore.c (gtk_list_store_set_valist): 
5220         fix G_VALUE_COLLECT() and G_VALUE_LCOPY() calls.
5221         
5222 Fri Feb 16 17:49:59 2001  Jonathan Blandford  <jrb@redhat.com>
5223
5224         * gtk/gtktreestore.[hc], gtk/gtkliststore.[ch]: removed
5225         gtk_*_store_get, and moved to GtkTreeModel.
5226
5227         * gtk/gtktreemodel.h (gtk_tree_model_set{v,}): Added
5228
5229         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_finalize): added.
5230
5231         * gtk/Makefile.am: remove gtktreemodelmapping.[ch]
5232
5233         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_func): let you
5234         set the func.
5235
5236         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
5237         freeze/thaw notify between setting all the properties for a cell.
5238
5239         * gtk/gtk.h: remove gtktreemodelsimple.h, and gtktreemodelmapping.h
5240
5241 2001-02-15  Havoc Pennington  <hp@redhat.com>
5242
5243         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): convert
5244         the X coordinates so they're with respect to the line, rather than 
5245         with respect to the layout.
5246
5247         * gtk/gtkalignment.c: Convert to new property API, patch from Lee
5248         Mallabone
5249
5250         * gtk/testgtk.c (create_range_controls): add vscale tests, 
5251         and inverted test
5252
5253         * gtk/gtkrange.c (gtk_range_set_inverted): new function to fix 
5254         #50806
5255
5256         * gtk/gtkentry.c (gtk_entry_get_text): add G_CONST_RETURN
5257
5258         * gtk/gtktextiter.h (gtk_text_iter_is_last): rename 
5259         gtk_text_iter_is_end
5260
5261         * gtk/gtktextbuffer.h (gtk_text_buffer_get_last_iter):
5262         rename gtk_text_buffer_get_end_iter
5263
5264         * gtk/testgtk.c (create_labels): Add test for selectable
5265
5266         * gtk/gtkentry.c (gtk_entry_draw_text): Use new GDK API to draw
5267         the selection stuff. This code is kind of broken since it doesn't 
5268         use the theme engine.
5269
5270         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): 
5271         fix infinite loop and y offset problem
5272         (gdk_draw_layout_line_with_colors): fix foreground color handling
5273
5274         * gtk/gtklabel.h, gtk/gtklabel.c: Implement a "selectable" flag 
5275         that makes the label selectable.
5276         
5277         * gtk/gtklabel.c (gtk_label_style_set): recreate the label's
5278         layout when the style is set, since fonts etc. could have changed.      
5279
5280 Fri Feb 16 14:22:05 2001  Jonathan Blandford  <jrb@redhat.com>
5281
5282         * gtk/Makefile.am: Removed gtktreemodelsimple.[ch]
5283
5284         * gtk/gtktreemodelsimple.[ch]: removed.
5285
5286 2001-02-16  Alexander Larsson  <alexl@redhat.com>
5287
5288         * gtk/gtktreemodelmapping.[ch]:
5289         New files. Implement GtkTreeModelMapping.
5290         
5291         * gtk/Makefile.am:
5292         Add gtktreemodelmapping.[ch].
5293         
5294         * gtk/gtk.h:
5295         Add gtktreemodelmapping.h
5296
5297         * gtk/treestoretest.c:
5298         Test the GtkTreeModelMapping
5299
5300 Tue Feb 13 13:16:09 2001  Jonathan Blandford  <jrb@redhat.com>
5301
5302         * demos/gtk-demo/panes.c (create_pane_options): If we're going to
5303         have a demo, we might as well pass in real values.  Thanks to
5304         clahey for pointing this out.
5305
5306 2001-02-14  Havoc Pennington  <hp@pobox.com>
5307
5308         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_remove): add
5309         "static" to a private function
5310         (gtk_image_menu_item_class_init): remove destroy handler,
5311         add "image" object property
5312
5313 2001-02-13  Alexander Larsson  <alla@lysator.liu.se>
5314
5315         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_clip_region):
5316         Add a shortcut if the window and the current clip_region doesn't
5317         overlap. This is needed when there are a lot of windows in a
5318         window. The layout test in testgtk is a good test.
5319
5320         * gdk/linux-fb/gdkwindow-fb.c:
5321         Whitespace fix.
5322
5323 2001-02-13  Sven Neumann  <sven@convergence.de>
5324
5325         * demos/testanimation.c: replaced deprecated gtk_drawing_area_size
5326
5327 2001-02-13  Alexander Larsson  <alexl@redhat.com>
5328
5329         * gdk/linux-fb/gdkcursor-fb.c (gdk_fb_cursor_unhide):
5330         Don't reference last_cursor if it is null. Fixes crash when rotating
5331         the screen before having moved the mouse.
5332
5333         * gdk/linux-fb/gdkcc-fb.c: Zapp!
5334
5335         * gdk/linux-fb/Makefile.am: Don't compile gdkcc-fb.c
5336
5337         * gdk/linux-fb/gdkwindow-fb.c: Fix typo. width->height. Fixes redraw 
5338         when using 90 or 270 degrees rotation.
5339
5340 2001-02-12  Havoc Pennington  <hp@pobox.com>
5341
5342         * gdk/gdkpango.c (gdk_pango_get_gc): fix bug where 
5343         it always set the foreground, even if we were only using
5344         a stipple.
5345         (gdk_draw_layout_line_with_colors): new function, allow
5346         override colors
5347         (gdk_draw_layout_with_colors): new function, allow override
5348         colors
5349         (gdk_pango_layout_line_get_clip_region): function to get the clip
5350         region for a logical text range
5351         (gdk_pango_layout_get_clip_region): get the clip region for a
5352         logical text range
5353
5354         * gdk/x11/gdkcolor-x11.c: forward declare gdk_colormap_sync(),
5355         (gdk_colormap_new): fix call to gdk_colormap_sync() so it has 
5356         the right number of arguments.
5357
5358         * gtk/gtktextbtree.c (gtk_text_btree_node_check_consistency):
5359         enhance the function to check that node data corresponds to a 
5360         view still belonging to the tree.
5361
5362         * gtk/gtktreeview.c (gtk_tree_view_changed): we were leaking the 
5363         GtkTreePath
5364         (gtk_tree_view_inserted): ditto
5365         (gtk_tree_view_child_toggled): ditto
5366
5367         * gtk/gtktreemodel.c (gtk_tree_path_append_index): use realloc to
5368         simplify this code.
5369
5370         * gtk/gtkcellrenderertext.c (get_layout): fix leak of 
5371         a PangoAttrList
5372
5373         * demos/gtk-demo/main.c (load_file): Fix leak of a GString
5374
5375         * gtk/gtkentry.c (gtk_entry_realize): Fix leak of a GdkCursor
5376
5377         * gtk/gtkmenubar.c (gtk_menu_bar_size_request): consider toggle
5378         size in the size request 
5379         (gtk_menu_bar_size_allocate): consider toggle size here
5380
5381         * gtk/gtkimagemenuitem.h, gtkimagemenuitem.c: Menu item
5382         that displays a widget in the toggle slot
5383
5384         * gtk/testgtk.c: test GtkImageMenuItem
5385
5386         * gtk/Makefile.am, gtk/gtk.h: Add GtkImageMenuItem
5387         
5388         * gtk/gtkmenuitem.h: Use "gint" not "guint16" for toggle size
5389         request and allocation
5390
5391         * gtk/gtkmenu.c (gtk_menu_size_request): use gint not guint16
5392
5393         * gtk/gtkcheckmenuitem.c
5394         (gtk_check_menu_item_toggle_size_request): ditto
5395         
5396 Mon Feb 12 23:43:30 2001  Owen Taylor  <otaylor@redhat.com>
5397
5398         * gtk/Makefile.am (gdk_headers): Remove gdkcc.h 
5399         reference.
5400
5401         * configure.in gtk/gtkmain.c: Add checks for setuid/setgid,
5402         and refuse to initialize GTK+ if they fail.
5403
5404 Mon Feb 12 15:02:07 2001  Owen Taylor  <otaylor@redhat.com>
5405
5406         * configure.in: Add check for gtk-doc version.
5407
5408 Thu Feb  8 17:18:26 2001  Owen Taylor  <otaylor@redhat.com>
5409
5410         * gtk/gtklabel.c (gtk_label_size_request): Fix bug
5411         where the xpad/ypad was only being used on one side!
5412
5413 2001-02-11  Tor Lillqvist  <tml@iki.fi>
5414
5415         * gdk/win32/gdkcolor-win32.c (gdk_colormap_query_color): New
5416         function, copied from X11 version.
5417
5418         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Eliminate
5419         DestroyCursor failures. The reason for the problem (despite the
5420         inconsistent messages from GetLastError()) was that
5421         DestroyCursor() cannot be called while a cursor is set in a
5422         window. Set the new cursor first and then destroy the old one.
5423         Thanks to jpe@archaeopteryx.com.
5424
5425         * gdk/win32/gdkcc-win32.c: Remove.
5426
5427         * gdk/win32/Makefile.am: Remove from here, too.
5428         
5429         * gdk/gdk.def
5430         * gdk/makefile.mingw.in: Update. Godbye GdkColorContext.
5431
5432         * gtk/gtk.def
5433         * gtk/makefile.mingw.in: Updates.
5434
5435 2001-02-08  Havoc Pennington  <hp@redhat.com>
5436
5437         * gtk/gtkbin.c (gtk_bin_add): better error message if you try to
5438         add a widget to a bin that already has a child.
5439
5440         * gdk/gdkcc.h, gdk/gdkcc-x11.c: Remove GdkColorContext, #50512
5441
5442         * docs/Changes-2.0.txt: note that GdkColorContext is gone.
5443         
5444         * gdk/x11/Makefile.am (libgdk_x11_la_SOURCES): remove gdkcc-x11.c
5445
5446         * gdk/gdk.h: remove gdkcc.h
5447
5448         * gdk/Makefile.am (gdk_public_h_sources): remove gdkcc.h
5449
5450         * gtk/gtkpixmap.c (build_insensitive_pixmap): rewrite using
5451         GdkPixbuf, since the previous implementation was GdkColorContext
5452         dependent.
5453
5454         * gtk/testgtk.c (create_pixmap): add test for insensitive GtkPixmap
5455         
5456 Thu Feb  8 19:00:00 2001  Jonathan Blandford  <jrb@redhat.com>
5457
5458         * gtk/gtktreeview.c (TREE_VIEW_VERTICAL_SEPARATOR): moved back to
5459         a sane value!
5460
5461 2001-02-08  Havoc Pennington  <hp@redhat.com>
5462
5463         * gtk/gtkstyle.c (get_darkened_gc): let's darken colors, not
5464         lighten them.
5465
5466 2001-02-08  Havoc Pennington  <hp@redhat.com>
5467
5468         * gtk/gtktextview.c (gtk_text_view_destroy_layout): remove
5469         validation idle
5470
5471         * demos/gtk-demo/main.c (create_tree): adjust to changes in text
5472         cell renderer
5473
5474         * demos/pixbuf-demo.c (timeout): remove deprecated
5475         gtk_widget_draw
5476
5477         * demos/testpixbuf-save.c (main): remove deprecated
5478         gtk_drawing_area_size
5479
5480         * gtk/gtktreeview.c (gtk_tree_view_size_allocate): allocate
5481         buttons even if the model isn't setup. gtk_tree_view_check_dirty()
5482         at the start of the allocation.
5483         (gtk_tree_view_check_dirty): handle column->button == NULL, handle
5484         unsetup or NULL model.
5485
5486         * gtk/gtkstyle.c (gtk_default_draw_flat_box): drawing for the 
5487         even/odd/sorted cells in the tree view.
5488
5489         * gtk/gtktreeselection.c (gtk_tree_selection_real_unselect_all):
5490         bugfixes
5491
5492         * gtk/gtktreeview.c: assorted bugfixy stuff. Draw the row
5493         backgrounds with draw_flat_box using different detail for even/odd
5494         rows.
5495
5496         * gtk/gtkrbtree.c, gtkrbtree.h: Keep track of the parity of each
5497         row, so we can draw the alternating colors thing
5498
5499         * gtk/gtktexttag.c (gtk_text_tag_set_property): if we change a
5500         property from a synonym property, notify for the synonym.
5501         Also, nuke the background_gdk_set and foreground_gdk_set synonyms
5502         (gtk_text_tag_get_property): Always return the font, even if
5503         all its fields aren't set
5504
5505         * gtk/gtkcellrenderertext.h (struct _GtkCellRendererText): don't
5506         store the attr list; it leaves us with no way to change attributes
5507         in _render according to the render flags, and no way to implement
5508         get_property. Instead store all the specific text attributes. 
5509         Separate whether an attribute is enabled from its value. Sync all
5510         properties with GtkTextTag, make them all consistent, etc.
5511
5512         * gtk/gtkcellrenderer.h: Add a flag GTK_CELL_RENDERER_SORTED so
5513         renderers can highlight the sort row/column     
5514
5515         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_get_property): use
5516         accessor functions to get values; this has the side effect of
5517         showing up which accessor functions were missing. Added those.
5518
5519         * gtk/gtktreeviewcolumn.h: Replace set_justification with
5520         set_alignment, to be consistent with GtkLabel, GtkMisc
5521
5522         * gtk/gtktreeviewcolumn.c: Added code to display sort indicator
5523         arrow.
5524
5525         * gtk/Makefile.am (gtk_public_h_sources): add gtktreesortable.h
5526
5527         * gtk/gtktreesortable.h: updates in here
5528
5529 2001-02-07  Sven Neumann  <sven@convergence.de>
5530
5531         * gtk/gtkentry.c (gtk_entry_draw_text): convert area_height to 
5532         pango dimensions after painting the background. We used to draw
5533         gigantic flat boxes here.
5534
5535 Mon Feb  5 22:05:57 2001  Owen Taylor  <otaylor@redhat.com>
5536
5537         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Fix syntax
5538         error introduced with earlier commit) (pointed out by
5539         Ollie Lho)
5540
5541 Mon Feb  5 12:25:06 2001  Owen Taylor  <otaylor@redhat.com>
5542
5543         * gtk/gtkbutton.c: Remove calls to gtk_grab_add/gtk_grab_remove,
5544         which are no longer necessary.
5545
5546 Mon Feb  5 13:22:54 GMT 2001  Tony Gale <gale@gtk.org>
5547
5548         * docs/faq/gtk-faq.sgml: s/MISK/MISC/
5549
5550 2001-02-04  Tor Lillqvist  <tml@iki.fi>
5551
5552         * gdk/gdk.def
5553         * gdk/win32/gdkim-win32.c (gdk_ic_attr_new, gdk_ic_attr_destroy):
5554         Provide dummy implementations.
5555
5556 Sun Feb  4 07:55:17 2001  Tim Janik  <timj@gtk.org>
5557
5558         * gtk/gtksignal.h: removed gtk_signal_init() compat define.
5559
5560         * gtk/gtktypeutils.[hc]: gtk_tpye_init() take an additional argument
5561         GTypeDebugFlags debug_flags and pass it on to g_type_init ();
5562         deprecated this function.
5563
5564         * gdk/gdk.c (gdk_init_check): call g_type_init () with 0 as
5565         argument.
5566
5567 Sun Feb  4 07:45:45 2001  Tim Janik  <timj@gtk.org>
5568
5569         * gtk/gtkdebug.h: nuke GTK_DEBUG_OBJECTS and GTK_DEBUG_SIGNALS.
5570
5571 2001-02-03  Havoc Pennington  <hp@pobox.com>
5572
5573         * gtk/gtktextbtree.c (_gtk_text_btree_tag): Fix bug reported by
5574         Mikael Hermansson with patch from Mikael (if there was a toggle
5575         start one after the first character in the range, this function
5576         was broken). Bug #50380
5577
5578 Sat Feb  3 11:28:03 2001  Owen Taylor  <otaylor@redhat.com>
5579
5580         * configure.in: Remove confusing comment about X11.
5581
5582 Fri Feb  2 19:21:23 2001  Owen Taylor  <otaylor@redhat.com>
5583
5584         * gdk/gdkwindow.c (gdk_propagate_shapes): Surround additional
5585         regions with HAVE_SHAPE_EXT. (#50511, Eric Ding)
5586         
5587 Fri Feb  2 18:31:54 2001  Owen Taylor  <otaylor@redhat.com>
5588
5589         * gdk/x11/gdkimage-x11.c: Remove definition of _XOPEN_SOURCE, since
5590         it breaks things on BSD. If you want to compile GTK+ with
5591         -ansi -pedantic, you should supply CPP_FLAGS=_XOPEN_SOURCE 
5592         when configuring, since GTK+ simply can't be "pure ANSI" 
5593         in the header files it uses. (#8170, Greg Hudson)
5594
5595 2001-02-02  Havoc Pennington  <hp@redhat.com>
5596
5597         * gtk/gtkwindow.c: docs
5598
5599         * gtk/gtkwidget.c: docs
5600         (gtk_widget_set_colormap): add a reference to the colormap
5601         (gtk_widget_get_default_colormap): add a reference to the colormap
5602
5603         * gtk/gtktextbtree.c (gtk_text_mark_set_visible): docs
5604
5605         * gtk/gtktextiter.c: docs
5606
5607         * gtk/gtkmain.c (gtk_propagate_event): docs
5608
5609         * gtk/gtkpaned.c (gtk_paned_get_position): docs
5610         (gtk_paned_set_position): docs
5611
5612         * gtk/gtktreesortable.h (struct _GtkTreeSortableIface): Initial
5613         sort interface, no implementation yet.
5614
5615         * demos/testpixbuf.c (new_testrgb_window): replace
5616         gtk_drawing_area_size() with gtk_widget_set_usize()
5617
5618         * demos/testpixbuf-drawable.c (main): ditto
5619         
5620         * gtk/testgtk.c: remove use of GtkStatusbarMsg
5621
5622         * gtk/gtktextbuffer.c: docs
5623
5624         * gtk/gtkstock.c: docs
5625
5626         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_set_shadow_type): docs
5627
5628         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): docs
5629
5630         * gtk/gtklabel.c (gtk_label_set_markup_with_accel): fix docs
5631         
5632         * gtk/gtkimage.c: add some docs in here
5633         (gtk_image_size_request): change name of
5634         gtk_widget_render_stock_icon
5635         (gtk_image_get_icon_set): don't dup returned string
5636         (gtk_image_get_icon_set): don't dup returned string
5637
5638         * gtk/gtkwidget.c (gtk_widget_render_icon): rename from 
5639         gtk_widget_render_stock_icon(), more consistent with gtkstyle.h
5640         and gtkiconfactory.h functions
5641
5642         * gtk/gtkiconfactory.c: add some docs in here
5643
5644         * gtk/gtkmain.c (gtk_get_default_language): document
5645         (gtk_get_current_event): document
5646         (gtk_get_current_event_state): document
5647         (gtk_get_event_widget): document
5648
5649         * gtk/gtkentry.c (gtk_entry_set_invisible_char): document
5650
5651         * gtk/gtkcontainer.c: Add some documentation
5652         (gtk_container_add): give a more explanatory warning on adding an
5653         already-parented widget, this is kind of a FAQ and also a common
5654         typo that's easier to debug with a nice warning 
5655
5656         * gtk/gtkcellrenderertoggle.c
5657         (gtk_cell_renderer_toggle_get_active): remove, I was on crack
5658         adding this, it's useless
5659         (gtk_cell_renderer_toggle_set_active): remove
5660         (gtk_cell_renderer_toggle_get_radio): add
5661
5662         * gtk/gtkcellrenderer.c (gtk_cell_renderer_get_size): don't allow
5663         the NULL cell renderer, that doesn't make any sense to me. 
5664
5665         * demos/gtk-demo/Makefile.am (INCLUDES): -DGTK_DISABLE_DEPRECATED,
5666         demo code should never use deprecated features.
5667
5668         * demos/Makefile.am (INCLUDES): -DGTK_DISABLE_DEPRECATED, demo
5669         code should never use deprecated features.
5670
5671         * gtk/gtkwidget.h: Mark gtk_widget_draw, gtk_widget_queue_clear,
5672         gtk_widget_queue_clear_area deprecated
5673
5674         * gtk/gtklayout.h: mark gtk_layout_freeze/gtk_layout_thaw
5675         deprecated
5676
5677         * gtk/gtklabel.h: mark gtk_label_get() deprecated
5678
5679         * gtk/gtkimage.h: mark the legacy GtkImage functions that took 
5680         a GdkImage deprecated, replaced by new consistently-named
5681         functions       
5682
5683         * gtk/gtkmain.h: Mark gtk_exit() deprecated
5684
5685         * gtk/gtkdrawingarea.h: mark gtk_drawing_area_size deprecated
5686
5687         * gtk/gtkstyle.h: mark gtk_draw_string, gtk_paint_string 
5688         deprecated
5689
5690         * gtk/gtkstatusbar.h: Move GtkStatusbarMsg to the .c file, 
5691         so it won't appear in docs and confuse people.
5692
5693         * gtk/gtkprogressbar.h: Mark all the old methods deprecated
5694
5695         * gtk/gtkprogress.h: Mark all methods deprecated, mark the cast
5696         macros deprecated. (can't mark the type itself deprecated, since
5697         GtkProgressBar is not deprecated and we need the type decl to use
5698         GtkProgressBar)
5699
5700         * gtk/gtkpixmap.h: Mark deprecated
5701
5702         * gtk/gtkoldeditable.h: Mark deprecated
5703
5704         * gtk/gtklist.h: Mark deprecated
5705
5706         * gtk/gtklabel.h: delete "GtkLabelWord" typedef, not used 
5707         for anything anymore.
5708
5709         * gtk/gtkctree.h: Mark deprecated
5710
5711         * gtk/gtkclist.h: Mark deprecated
5712
5713         * gtk/gtkpreview.h: Mark deprecated
5714
5715         * gtk/gtkpacker.h: Mark deprecated
5716
5717         * gtk/gtktipsquery.h: Mark deprecated
5718
5719         * gtk/gtkinputdialog.h: Add comment that it will move out of GTK
5720
5721         * gtk/gtkvruler.h: Add comment that it will move out of GTK
5722
5723         * gtk/gtkhruler.h: Add comment that it will move out of GTK
5724
5725         * gtk/gtkruler.h: Add comment that it will move out of GTK
5726
5727         * gtk/gtkgamma.h: Add comment that it will move out of GTK
5728
5729         * gtk/gtkcurve.h: Add comment that it will move out of GTK
5730
5731 Fri Feb  2 17:16:09 2001  Owen Taylor  <otaylor@redhat.com>
5732
5733         * gdk/x11/gdkcolor-x11.c (gdk_colormap_sync): Make
5734         gdk_colormap_sync private since it was never exported
5735         in a header file.
5736
5737         * gdk/x11/gdkcolor-x11.c (gdk_colormap_new): Fill in
5738         colormap->colors[] for StaticGray, StaticColor colormaps.
5739
5740         * gdk/gdkpixbuf-drawable.c: Fix problems where image->bpp
5741         was being used as if it was image->bits_per_pixel.
5742
5743         * gdk/gdkimage.h, gdk/x11/gdkimage-x11.c: Save the bits-per-pixel
5744         for the image in the GdkImage structure since it isn't
5745         reconstructable, and we need it to handle packed types
5746
5747         * gdk/win32/gdkimage-win32.c: Set image->bits_per_pixel. (I'm making
5748         the assumption that on Win32 image->bits_per_pixel == image->depth,
5749         always.
5750
5751         * gdk/linux-fb/gdkimage-fb.c: Set image->bits_per_pixel.
5752
5753         * gdk/gdkrgb.c (gdk_rgb_select_conv): Exit with an informative
5754         warning message if no converter can be found. 
5755
5756 Fri Feb  2 15:09:51 2001  Owen Taylor  <otaylor@redhat.com>
5757
5758         * gtk/fnmatch.c (FOLD): Fix problem with passing signed
5759         chars to isupper() / tolower(). (#567)
5760
5761         * examples/packer/pack.c: Add GINT_TO_POINTER, GPOINTER_TO_INT
5762         to clear up 64-bit warnings. (#567)
5763
5764 Fri Feb  2 12:26:50 2001  Owen Taylor  <otaylor@redhat.com>
5765
5766         * gtk/gtkrc.c (gtk_rc_add_initial_default_files): Get rid of
5767         a bunch of g_strdup_printf("%s%s") in favor of g_strconcat().
5768
5769         * gtk/gtkrc.c Makefile.am: Use $(libdir), not $(exe_prefix),
5770         since some people set $(libdir) separately. (#1290, David Kaelbling)
5771
5772 Thu Feb  1 18:25:46 2001  Owen Taylor  <otaylor@redhat.com>
5773
5774         * gtk/gtkfilesel.c: If PATH_MAX and MAXPATHLEN are not
5775         defined, define MAXPATHLEN to 2048. (The Hurd doesn't have
5776         MAXPATHLEN, but the code here depends on a fixed value.)
5777         (#4524)
5778
5779 Wed Jan 31 22:01:04 2001  Owen Taylor  <otaylor@redhat.com>
5780
5781         * gtk/gtkhandlebox.c (gtk_handle_box_button_changed): Handle the case
5782         where child == NULL and handle_position == RIGHT or BOTTOM. (#8041g)
5783
5784 Wed Jan 31 21:20:39 2001  Owen Taylor  <otaylor@redhat.com>
5785
5786         * gtk/gtkctree.c (real_tree_move): If the node being moved isn't
5787         viewable there is no way that moving the node will cause the 
5788         focus row to become not viewable, so omit check on the visibility
5789         of new_sibling, which is irrelevant. (Fixes #8002, David Helder)
5790
5791 Wed Jan 31 20:38:17 2001  Owen Taylor  <otaylor@redhat.com>
5792
5793         * gtk/gtkentry.c (gtk_entry_commit_cb): Delete the current
5794         selection before inserting new text.
5795
5796 Wed Jan 31 18:49:33 2001  Owen Taylor  <otaylor@redhat.com>
5797
5798         * gtk/gtkoptionmenu.c (gtk_option_menu_item_state_changed_cb):
5799         Make the sensitivity of the reparented child track that of
5800         the original parent menu item. (#34218, David Hodson)
5801
5802         * gtk/gtkoptionmenu.c (gtk_option_menu_item_destroy_cb): Handle
5803         the case where the current item is destroyed properly.
5804
5805         * gtk/gtkoptionmenu.c: Some additional code cleanups and fix
5806         some edge cases with child-less menuitems.
5807         
5808 Wed Jan 31 17:16:13 2001  Owen Taylor  <otaylor@redhat.com>
5809
5810         * gtk/gtkcombo.c (gtk_combo_window_key_press): Make Return
5811         key pop down window. (#12074, Jon K Hellan)
5812
5813 Wed Jan 31 16:21:42 2001  Owen Taylor  <otaylor@redhat.com>
5814
5815         * gtk/gtklist.c (gtk_list_signal_item_toggle): Don't allow
5816         toggling of rows off in BROWSE or EXTENDED mode. (#12072, Jon K Hellan) 
5817         The solution here isn't perfect - you get an extraneous
5818         emission of "toggle", which could conceivably confuse an app,
5819         but better than the current situation. LXR search seems to
5820         indicate that no apps in GNOME CVS connect to "toggle".
5821
5822 Wed Jan 31 15:46:13 2001  Owen Taylor  <otaylor@redhat.com>
5823
5824         * gtk/Makefile.am (libgtkinclude_HEADERS): Move gtkcompat.h from
5825         gtk_public_h_sources to directly here to avoid warning when
5826         building srcdir != builddir. (#9656)
5827
5828 Tue Jan 30 19:49:02 2001  Owen Taylor  <otaylor@redhat.com>
5829
5830         * gtk/gtkrange.c: Patch from Kipp Hickman to make the event
5831         handlers in gtkrange.c return the proper values (TRUE == handled)
5832         (#10316).
5833
5834         This is just the tip of the iceberg, but gtkrange.c is the
5835         most common place where the propagation is problematical,
5836         and also a place where it is almost certainly safe to change
5837         this in the stable branch.
5838
5839         (You don't want right click popups on a range control or anything...)
5840
5841 Tue Jan 30 18:57:59 2001  Owen Taylor  <otaylor@redhat.com>
5842
5843         * gtk/gtktext.c (clear_focus_area): We need to clear the focus
5844         area on focus out, even if a background pixmap isn't set.
5845         (#13941)
5846         
5847 Tue Jan 30 18:24:10 2001  Owen Taylor  <otaylor@redhat.com>
5848
5849         * gtk/gtknotebook.c (gtk_notebook_set_shape): Fix from Sean Cunningham
5850         to deal with setting the shape properly when scrolling arrows are
5851         turned on, but not visible because there is sufficient space.
5852         (#13432)
5853
5854 Tue Jan 30 16:39:25 2001  Owen Taylor  <otaylor@redhat.com>
5855
5856         * gtk/gtkitemfactory.c (gtk_item_factory_delete_item): For menu
5857         items with submenus, destroy the item along with the submenu.
5858         (#7841, Brian Masney(?)) Also, handle paths of the form '<foo>/abcd...' 
5859         properly.
5860
5861         * gtk/testgtk.c (menu_items): Add a dummy branch that we delete
5862         later.
5863
5864 Tue Jan 30 15:51:25 2001  Owen Taylor  <otaylor@redhat.com>
5865
5866         * gtk/gtkwindow.c (gtk_window_real_set_focus): Fix a problem where
5867         the focus widget sometimes wasn't drawn with the default if there
5868         was no default widget.
5869
5870         * gtk/gtkstyle.c (gtk_style_real_unrealize): free colors,
5871         unreference pixmaps. 
5872
5873         * gtk/gtkstyle.c (gtk_style_realize): Reference colormap
5874         for some extra safety.
5875
5876 Mon Jan 29 19:00:01 2001  Owen Taylor  <otaylor@redhat.com>
5877
5878         * gtk/gtk{ctree.c,clist.c} (set_cell_contents): Handle setting
5879         the text of a cell to the old pointer value better, by
5880         copying the new text before freeing the old text. Some code
5881         cleanup. (#8079, Karl Nelson)
5882
5883 Mon Jan 29 16:50:19 2001  Owen Taylor  <otaylor@redhat.com>
5884
5885         * gtk/gtklabel.[ch] gtk/gtkframe.[ch]: Make gtk_label_get_text()
5886         gtk_frame_get_label() non strdup'ing, and G_CONST_RETURN.
5887
5888 Mon Jan 29 15:22:51 2001  Owen Taylor  <otaylor@redhat.com>
5889
5890         * gtk/gtkmenu.c (gtk_menu_remove): When removing an
5891         item from a menu, check to see if it matches 
5892         menu->old_active_menu_item, and if so, unref and clear
5893         old_active_menu_item (Patch from Pavel Cisler)
5894
5895         * gtk/gtkmenushell.c (gtk_menu_shell_remove): Unset 
5896         menu_shell->active_menu_item, if it is the child being
5897         removed. (Patch based on that of Gene Ragan, #50337)
5898
5899 2001-01-31  Alexander Larsson  <alla@lysator.liu.se>
5900
5901         * gdk/linux-fb/gdkselection-fb.c: 
5902         * gdk/linux-fb/gdkcolor-fb.c: 
5903         * gdk/linux-fb/gdkdrawable-fb2.c: 
5904         * gdk/linux-fb/gdkfont-fb.c: 
5905         * gdk/linux-fb/gdkim-fb.c: 
5906         * gdk/linux-fb/gdkinput.c: 
5907         * gdk/linux-fb/gdkkeyboard-fb.c: 
5908         * gdk/linux-fb/gdkmain-fb.c: 
5909         * gdk/linux-fb/gdkrender-fb.c: 
5910         A bunch of whitespace cleanup.
5911         
5912 2001-01-30  Havoc Pennington  <hp@pobox.com>
5913
5914         * gtk/gtktreeitem.h, gtk/gtktree.h, gtk/gtktext.h: bracket in 
5915         #ifdef GTK_ENABLE_BROKEN.
5916
5917         * gtk/gtktreeitem.c, gtk/gtktree.c, gtk/gtktext.c: #define
5918         GTK_ENABLE_BROKEN just before including the broken headers.
5919         
5920         * gtk/gtktypeutils.c: #define GTK_ENABLE_BROKEN, so we can get the
5921         deprecated types registered.
5922
5923         * gtk/testgtk.c, gtk/testselection.c: #define GTK_ENABLE_BROKEN,
5924         we have to test the broken stuff.
5925
5926         * docs/Changes-2.0.txt: explain GTK_ENABLE_BROKEN
5927         
5928 2001-01-30  Havoc Pennington  <hp@redhat.com>
5929
5930         * gtk/gtkliststore.c (gtk_list_store_insert_before): fix bug in
5931         here where prev pointer was set to the wrong thing
5932
5933         * gtk/gtktreemodel.c (gtk_tree_path_is_ancestor): new function
5934         (gtk_tree_path_is_descendant): new function
5935
5936         * gtk/gtkliststore.c (gtk_list_store_iter_n_children): return
5937         cached length
5938         (gtk_list_store_get_iter): don't modify iter if we can't get the
5939         path.
5940
5941         * gtk/gtkliststore.h (struct _GtkListStore): cache the length
5942         
5943         * gtk/gtktreednd.h: add virtual function row_drop_possible() to
5944         GtkTreeDragDest
5945
5946         * gtk/gtktreestore.c (copy_node_data): fix varargs type error that
5947         was causing segfault
5948
5949         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_copy): set next
5950         pointer to NULL
5951
5952         * gtk/gtktreestore.c (gtk_tree_store_append): fix memleak
5953
5954         * gtk/gtkliststore.c (gtk_list_store_iter_next): don't modify iter
5955         on returning FALSE
5956         (gtk_list_store_iter_children): ditto
5957         (gtk_list_store_iter_nth_child): ditto
5958         (gtk_list_store_iter_nth_child): ditto
5959         (gtk_list_store_iter_parent): ditto
5960
5961         * gtk/gtktreestore.c (gtk_tree_store_get_path): g_return_if_fail
5962         on iter->user_data != NULL instead of silently accepting it.
5963         (gtk_tree_store_iter_next): ditto. Also, don't modify iter unless
5964         we are returning TRUE.
5965         (gtk_tree_store_iter_children): ditto
5966         (gtk_tree_store_iter_nth_child): ditto
5967         (gtk_tree_store_iter_parent): ditto
5968         (gtk_tree_store_insert): remove handling of parent->user_data ==
5969         NULL, replace with parent == NULL       
5970
5971         * gtk/gtktreemodel.c (inserted_callback): put some fixes in here,
5972         and a comment explaining things
5973
5974         * gtk/gtktreestore.c: add GtkTreeDragSource/GtkTreeDragDest
5975         interface support to GtkTreeStore.
5976
5977         * gtk/gtktreemodel.c (gtk_tree_path_prev): didn't properly return
5978         FALSE if no prev, fix
5979
5980         * gtk/gtktreeview.c (set_source_row): use a row reference
5981         (set_dest_row): use a row reference
5982
5983 Sat Jan 27 15:52:02 2001  Jonathan Blandford  <jrb@redhat.com>
5984
5985         * gtk/gtktreeselection.c (gtk_tree_selection_unselect_iter): Fix
5986         stupid typo pointed out by Kristian Rietveld <kristian@planet.nl>.
5987         (gtk_tree_selection_select_iter): The same as above.
5988
5989 2001-01-26  Havoc Pennington  <hp@redhat.com>
5990
5991         * gtk/gtktreemodel.c, gtk/gtktreemodel.h: add GtkTreeRowReference
5992         which holds a handle to a specific row (particular set of values
5993         in the model, i.e. pointer-identity row).
5994
5995         * gtk/gtktreeview.c, gtk/gtktreeprivate.h, gtk/gtktreeselection.c:
5996         use GtkTreeRowReference for anchor, cursor, and drag_dest_row.
5997         Still need to use it for the src/dest row saved on the drag context.
5998
5999 2001-01-26  Havoc Pennington  <hp@redhat.com>
6000
6001         * gtk/gtktextlayout.c (convert_color): adapt to handle PangoColor
6002
6003         * gtk/gtktreeview.c (gtk_tree_view_widget_to_tree_coords): fix to
6004         not offset by TREE_VIEW_HEADER_HEIGHT
6005         (gtk_tree_view_tree_to_widget_coords): fix to not offset by
6006         TREE_VIEW_HEADER_HEIGHT
6007
6008         * configure.in (included_loaders): for me, --with-included-loaders
6009         generates the error "the specified loader yes does not exist",
6010         i.e. the arg defaults to "yes", so change test for value ""
6011         to test for value "yes", and include all loaders in that case.
6012
6013         * gtk/gtkrbtree.c (_gtk_rbtree_get_depth): new function
6014
6015         * gtk/gtktreeview.c (gtk_tree_view_get_cell_rect): fix to properly
6016         handle TREE_VIEW_VERTICAL_SEPARATOR
6017         (gtk_tree_view_bin_expose): fix to consider the row offset as
6018         pointing halfway into vertical separator.       
6019         (gtk_tree_view_draw_node_focus_rect): ditto
6020
6021         * gtk/gtkdebug.h, gtk/gtkmain.c (gtk_init_check): Add
6022         --gtk-debug=updates, which causes gdk_window_set_debug_updates
6023         (TRUE) to be called.
6024
6025         * gdk/gdkwindow.c (gdk_window_set_debug_updates): Allow enabling a
6026         debug mode where the invalid region is colored in on invalidate,
6027         so you can see the flicker and know whether your redraw code is 
6028         doing a good job.
6029
6030         * gtk/gtktreeview.c (gtk_tree_view_queue_draw_node): Work in 
6031         tree window coordinates (clip rect is in tree window coords)
6032
6033         * gtk/Makefile.am: add gtktreednd.[hc]
6034
6035         * gtk/gtkliststore.c: implement gtktreednd interfaces.
6036
6037         * gtk/gtktreednd.c, gtk/gtktreednd.h: New interface to support
6038         drag-and-drop data operations on a model (so we can set up tree
6039         drag-and-drop automatically)
6040
6041         * gtk/testgtk.c: Add a window to change sensitivity in the
6042         GtkLabel test; add a way to change the entry frame in GtkEntry
6043         test
6044
6045         * gtk/gtkentry.c (gtk_entry_set_has_frame): 
6046         (gtk_entry_get_has_frame): new functions to remove the frame
6047         around an entry
6048         (gtk_entry_size_request): shrink requisition if no frame
6049         (gtk_entry_draw_focus): don't draw frame if no frame
6050
6051         * gtk/gtkstyle.c (gtk_default_draw_check): draw custom look for
6052         checks inside a cell renderer
6053         (gtk_default_draw_option): ditto for options
6054
6055         * gtk/gtktreeviewcolumn.c (update_button_contents): add/remove
6056         children from the alignment, not the button
6057         (gtk_tree_view_column_init): ref/sink the column, to emulate
6058         GObject refcounting.
6059
6060         * gtk/gtkcellrenderer.c (gtk_cell_renderer_init): ref/sink
6061         
6062         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
6063         Use theme functions to draw the toggles 
6064
6065         * gdk/gdkpango.c (gdk_pango_get_gc): use GdkRGB to alloc colors
6066
6067         * gdk/gdkpango.h, gdk/gdkpango.c: Add GdkPangoAttrStipple and
6068         GdkPangoAttrEmbossed to use in rendering insensitive text
6069
6070         * gdk/gdkpango.c (gdk_draw_layout_line): render new properties
6071
6072         * gtk/gtkstyle.c (gtk_default_draw_layout): handle sensitivity
6073         using new GDK features
6074         
6075 2001-01-24  Alexander Larsson  <alexl@redhat.com>
6076
6077         * gtk/gtkimage.c:
6078         Splitted gtk_image_clear into gtk_image_clear() and
6079         gtk_image_reset(). Call gtk_image_clear() in ::destroy
6080         to avoid leaks.
6081
6082         * gtk/gtklabel.c (set_markup):
6083         Don't leak text.
6084
6085         * gtk/gtktextlayout.c:
6086         Always free display->shaped_objects.
6087
6088         * gtk/testgtk.c (create_clist):
6089         Don't leak custom style.
6090
6091 2001-01-23  Alexander Larsson  <alexl@redhat.com>
6092
6093         * gtk/gtkcolorsel.c (grab_color_at_mouse):
6094         Don't leak image. Simplify using gdk_colormap_query_color().
6095         (gtk_color_selection_init): Don't leak dropper_pixmap and mask.
6096
6097         * linux-fb/gdkcolor-fb.c:
6098         Implemented gdk_colormap_query_color.
6099
6100 2001-01-23  Alexander Larsson  <alexl@redhat.com>
6101
6102         * linux-fb/gdkcursor-fb.c:
6103         Don't leak built-in cursors.
6104
6105         * linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_polygon):
6106         Don't leak tmp_points.
6107
6108         * linux-fb/gdkfont-fb.c (gdk_font_from_description):
6109         Don't modify desc. Don't leak font if the PangoFont
6110         isn't found.
6111         
6112         * linux-fb/gdkgc-fb.c (gdk_fb_gc_finalize):
6113         Free dash_list.
6114
6115         * linux-fb/gdkkeyboard-fb.c (gdk_fb_handle_key):
6116         Don't leak string.
6117         
6118 2001-01-20  Havoc Pennington  <hp@pobox.com>
6119
6120         * gtk/gtktexttag.h (enum GtkWrapMode): rename member fields
6121         from GTK_WRAPMODE_WORD to GTK_WRAP_WORD, etc., seems nicer to 
6122         me, matches Pango
6123
6124 2001-01-22  Havoc Pennington  <hp@redhat.com>
6125
6126         * demos/testanimation.c: fix to reflect gdk-pixbuf changes
6127
6128         * demos/testpixbuf.c: fix to reflect gdk-pixbuf changes
6129
6130         * gtk/gdk-pixbuf-loader.c, gtk/gdk-pixbuf-loader.h: 
6131         Remove, move back to gdk-pixbuf
6132
6133         * gtk/gtktextiter.c, gtk/gtktextiter.h: add sentence equivalents
6134         to all the word functions
6135
6136         * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): return
6137         before doing anything on NULL layout or if we don't have the focus
6138
6139         * gtk/testtext.c (fill_example_buffer): "justification"
6140
6141         * gtk/gtktexttag.h, gtk/gtktexttag.c: change the tag attribute
6142         to be called "justification" not "justify"
6143
6144         * demos/gtk-demo/textview.c (create_tags): "justification"
6145         
6146         * gtk/gtktextlayout.c (set_para_values): Handle char-wise wrapping
6147
6148 2001-01-22  Alexander Larsson  <alexl@redhat.com>
6149
6150         * gdk/gdkwindow.c (gdk_window_invalidate_region):
6151         Don't leak visible_region. Use visible_region instead of region.
6152         
6153         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
6154         Don't do extra gdk_drawable_ref(). This is not X.
6155         (gdk_fb_window_find_focus, gdk_fb_change_focus): make sure
6156         gdk_fb_focused_window is ref:ed.
6157         (gdk_fb_window_send_crossing_events): Watch out for destroyed
6158         windows.
6159
6160 2001-01-22  Alexander Larsson  <alexl@redhat.com>
6161
6162         * gtk/gtkwindow-decorate.c (gtk_decorated_window_realize):
6163         Don't leak the PangoFontDescriptor.
6164
6165 Sun Jan 21 09:58:00 2001  Jonathan Blandford  <jrb@redhat.com>
6166
6167         * gtk/gtktreeview.c (gtk_tree_view_scroll_to_point): Make fail
6168         when not realized.
6169         (gtk_tree_view_scroll_to_cell): Make work when not realized.
6170         (gtk_tree_view_realize): add scroll_to support
6171         (gtk_tree_view_finalize): add a finalize method.  Populate.
6172         (gtk_tree_view_insert_column): ref and sink the column.
6173         (gtk_tree_view_append_column): ref and sink the column.
6174         (gtk_tree_view_queue_draw_node): New function to handle redrawing
6175         individual nodes.  Should make the code much more efficient, if
6176         actually used.
6177
6178 2001-01-19  Havoc Pennington  <hp@redhat.com>
6179
6180         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
6181         byte_offset variable was being used to mean both "offset into
6182         layout" and "offset into buffer line" which was no longer true
6183         with addition of preedit string; fix
6184
6185 2001-01-19  Havoc Pennington  <hp@redhat.com>
6186
6187         * demos/gtk-demo/main.c (button_press_event_cb): sync to tree changes
6188
6189         * gtk/gtkrbtree.c (_gtk_rbtree_node_find_offset): fix this
6190         function
6191
6192         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_widget):
6193         implement
6194
6195         * gtk/gtktreeview.c (gtk_tree_view_move_to): rename
6196         scroll_to_cell, matches TextView scroll functions better
6197         (gtk_tree_view_tree_to_widget_coords): new function
6198         (gtk_tree_view_widget_to_tree_coords): new function
6199         (gtk_tree_view_get_visible_rect): new function
6200         (gtk_tree_view_get_path_at_pos): accept negative coordinates
6201         (gtk_tree_view_draw_node_focus_rect): new function moved from
6202         draw_focus, also, use width of bin_window as width of the focus
6203         rect
6204         (gtk_tree_view_expand_row): fix bug where it didn't recognize
6205         already-expanded rows
6206         (gtk_tree_view_get_cell_rect): new function
6207         (gtk_tree_view_get_path_at_pos): return the click position
6208         relative to the passed-in cell
6209         (gtk_tree_view_set_expander_column): new function
6210
6211         * configure.in: remove gtk-config-2.0 chmod
6212
6213         * gtk/gtktextview.c (gtk_text_view_drag_motion): small cleanups,
6214         and properly handle drags with targets we don't understand
6215         (gtk_text_view_drag_end): don't stop scrolling, the source isn't
6216         scrolling anyway
6217         (gtk_text_view_drag_drop): stop scrolling here though, and set the
6218         mark invisible
6219
6220         * gtk/gtkdnd.c (gtk_drag_dest_find_target): export as a public
6221         function
6222         (gtk_drag_dest_get_target_list): new function
6223         (gtk_drag_dest_set_target_list): new function
6224         
6225         * gtk/gtktreeview.c: Add a bunch of drag-and-drop implementation
6226
6227         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): add fields
6228         related to drag-and-drop
6229
6230 2001-01-19  Alexander Larsson  <alexl@redhat.com>
6231
6232         * gdk/linux-fb/gdkprivate-fb.h:
6233         Define EMULATE_GDKFONT.
6234         Add extra pango_font stuff to GfkFontPrivate.
6235         
6236         * gdk/linux-fb/gdkdrawable-fb2.c:
6237         * gdk/linux-fb/gdkfont-fb.c:
6238         If EMULATE_GDKFONT defined, implement a slow lame GdkFont
6239         emulation using PangoFont.
6240
6241 2001-01-17  Havoc Pennington  <hp@pobox.com>
6242
6243         * gtk/gtkprogressbar.c, gtk/gtkprogressbar.h: Add "getters" for
6244         all the non-deprecated set_foo functions. Added missing object
6245         properties, and added g_object_notify() to setters. 
6246         Wrote docs.
6247         
6248 2001-01-18  Tor Lillqvist  <tml@iki.fi>
6249
6250         * gtk/gtkmain.c
6251         * gtk/gtkrc.c: (Win32) Use the new
6252         g_win32_get_package_installation_(sub)directory() functions.
6253
6254         * config.h.win32.in: New file.
6255         
6256         * config.h.win32: Removed.
6257
6258         * configure.in: Output config.h.win32.
6259
6260         * Makefile.am: Add it to EXTRA_DIST.
6261
6262         * gtk/gtk.def: Update.
6263
6264 Wed Jan 17 16:22:54 2001  Owen Taylor  <otaylor@redhat.com>
6265
6266         * gtk/gtklabel.c (gtk_label_size_request): Set the
6267         attributes onto the PangoLayout even if they are newly
6268         created from label->pattern.
6269
6270 Tue Jan  9 11:20:48 2001  Owen Taylor  <otaylor@redhat.com>
6271
6272         * gdk/x11/gdkdnd-x11.c: Remove unused variable.
6273
6274         * gtk/gtkdnd.c: Encapsulate storing and retrieving info
6275         structures in functions. Fixes bug where gtk_dataset_*
6276         was accidentally still being used in one place, causing
6277         every dest side event to be treated independently.
6278
6279         * gtk/gtkdnd.c: Remove last vestages of handling
6280         ::draw (fixes warning)
6281         
6282         * gtk/gtkentry.[ch]: Add drag and drop support.
6283
6284         * gtk/gtkdnd.[ch] gtk/gtktextview.c gtk/gtkentry.c: Add
6285         new function gtk_check_drag_threshhold() for checking
6286         to check if (dx,dy) has exceeded the threshhold for starting
6287         a drag and use it everywhere.
6288
6289 Mon Jan  8 11:58:05 2001  Owen Taylor  <otaylor@redhat.com>
6290
6291         * gtk+-2.0.pc.in gdk-pixbuf-2.0.pc.in (Cflags): Remove -I${includedir},
6292         add -I{includedir}/gtk-2.0.
6293
6294         * gtk/gtktreeview.[ch] gtktreemodelsort.[ch] gtknotebook.c
6295         gdk/gdk-pixbuf.h: Doc fixups.
6296         
6297         * gtk/gtkobject.h: Remove trailing , from enum
6298
6299 2001-01-17 Alexander Larsson <alexl@redhat.com> 
6300
6301         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_shadow_fb_draw_arc):
6302         Doh! Mixed up x and y.
6303
6304         * gdk/linux-fb/gdkglobals-fb.c:
6305         Removed gdk_fb_pointer_grab_window_events,
6306         added _gdk_fb_pointer_grab_owner_events and
6307         _gdk_fb_keyboard_grab_owner_events.
6308
6309         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab):
6310         Set all button mask if GDK_BUTTON_MOTION_MASK set. Send
6311         crossing events before grabbing. Set _gdk_fb_pointer_grab_owner_events.
6312         (gdk_fb_pointer_ungrab): Unset _gdk_fb_pointer_grab_owner_events
6313         Send crossing events after ungrab finished.
6314         (gdk_keyboard_grab): Set ..._owner_events
6315         (type_masks): Move out of function.
6316         (gdk_fb_other_event_window, gdk_fb_pointer_event_window,
6317         gdk_fb_keyboard_event_window): New functions, return the
6318         window an event should be targeted at. Handles grabs and
6319         event propagation. Can return NULL.
6320         (gdk_event_make): Remove event_mask checking. Now always
6321         returns an event.
6322                 
6323         * gdk/linux-fb/gdkkeyboard-fb.c:
6324         * gdk/linux-fb/gdkproperty-fb.c:
6325         * gdk/linux-fb/gdkselection-fb.c:
6326         Use new event_window/gdk_event_make() behaviour.
6327         
6328         * gdk/linux-fb/gdkmouse-fb.c:
6329         Use new event_window/gdk_event_make() behaviour.
6330         Only send motion events if in the same window.
6331         If grabbed, use cursor from window if sibling of grabbed
6332         window, and cursor from grabbed window otherwise.
6333
6334         * gdk/linux-fb/gdkprivate-fb.h:
6335         Update gdk_fb_window_send_crossing_events, gdk_event_make
6336         and grab varaible declarations. Add gdk_fb_*_event_window().
6337
6338         * gdk/linux-fb/gdkwindow-fb.c:
6339         Use new event_window/gdk_event_make() behaviour.
6340         Keep correct track of focus window.
6341         (gdk_window_set_events): Set all specific button motion masks
6342         if GDK_BUTTON_MOTION_MASK set.
6343
6344         * gtk/gtkdnd.c (gtk_drag_update):
6345         Free info->last_event if gdk_drag_motion returned FALSE.
6346
6347 2001-01-16  Tor Lillqvist  <tml@iki.fi>
6348
6349         * gdk/win32/gdkwindow-win32.c (gdk_window_show, gdk_window_hide):
6350         Eliminate redraws when input-only windows are shown or
6351         hidden. Thanks to jpe@archaeopteryx.com.
6352
6353 Tue Jan 16 13:13:13 GMT 2001  Tony Gale <gale@gtk.org>
6354
6355         * docs/faq/gtk-faq.sgml: FAQ update:
6356           - Update to bugzilla
6357           - Add GTK+ and security/SUID/SGID
6358           - Add DnD question
6359
6360 2001-01-16  Alexander Larsson  <alla@lysator.liu.se>
6361
6362         * gdk/linux-fb/gdkdnd-fb.c:
6363         Some cleanups.
6364         
6365 2001-01-15  Havoc Pennington  <hp@pobox.com>
6366
6367         * tests/testtreeview.c: add test stuff for CellRendererToggle
6368
6369         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_get_model): add this
6370         accessor
6371
6372         * gtk/gtkcellrenderertoggle.c: distinguish different event types,
6373         only toggle on button press (would do release like GtkButton, but
6374         we'd need implicit grab code for treeview cells)
6375
6376 2001-01-16  Tor Lillqvist  <tml@iki.fi>
6377
6378         * gdk/win32/gdkvisual-win32.c: Include <stdlib.h> for getenv().
6379
6380         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Don't use
6381         GDK_COLORMAP_PRIVATE_DATA on a potentially NULL GdkColormap.
6382
6383         * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Adapt calls
6384         to g_{locale,filename}_{to,from}_utf8 to match current API.
6385
6386         * gtk/makefile.msc.in (gtk_OBJECTS)
6387         * gtk/makefile.mingw.in (gtk_OBJECTS): Add gtkwindow-decorate.
6388
6389         * gtk/gtk.def: Update.
6390
6391 2001-01-15  Tor Lillqvist  <tml@iki.fi>
6392
6393         * gdk/win32/gdkevents-win32.c (synthesize_crossing_events): New
6394         implementaion that more closely mimics the events that an X server
6395         would generate. Especially, properly generate GDK_NOTIFY_VIRTUAL and
6396         GDK_NOTIFY_NONLINEAR_VIRTUAL crossing events. This makes buttons
6397         with nested preview widgets, for instance, more responsive when
6398         you move the mouse quickly into them.
6399         (find_window_for_pointer_event): Make it actually compile.
6400         (gdk_event_translate): Set send_event to the value of
6401         InSendMessage (). This doesn't really mean the same as X11's
6402         send_event flag, but is close enough, says jpe@archaeopteryx.com
6403
6404 2001-01-15  Alexander Larsson  <alexl@redhat.com>
6405
6406         * gdk/linux-fb/gdkdnd-fb.c:
6407         Implemented drag and drop.
6408         Seems to be mostly working. I sometimes get an assert from gtkdnd.c:2664
6409         when it tries to free and then copy the same event (info->last_event).
6410         I am not sure about why this happens, but will continue looking.
6411
6412 2001-01-15  Alexander Larsson  <alexl@redhat.com>
6413
6414         * gdk/linux-fb/gdkwindow-fb.c:
6415         Use gdk_window_invalidate_rect instead of
6416         gdk_window_invalidate_rect_clear to minimise flashing.
6417         When hiding windows you need to clear the root window though.
6418
6419 2001-01-15  Alexander Larsson  <alexl@redhat.com>
6420
6421         * gdk/linux-fb/gdkdrawable-fb2.c:
6422         For optization, add an full_shapes argument to gdk_fb_clip_region.
6423         If this is false, only the cliprects of the shapes are used.
6424
6425         * gdk/linux-fb/gdkprivate-fb.h:
6426         Export gdk_fb_window_peek_shape.
6427         Add full_shapes to gdk_fb_clip_region.
6428
6429         * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
6430         When moving a window, don't clear everything under the it, just the
6431         root window. Makes stuff faster and flash less.
6432         (gdk_window_get_pointer): Correctly handle offseted shapes, due to
6433         USE_CHILD_SHAPE. (gdk_fb_window_peek_shape): Return the correct
6434         offset of the shape.
6435         
6436
6437 2001-01-12  Havoc Pennington  <hp@redhat.com>
6438
6439         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): offset the 
6440         current invalid region, fixes redraw bug while scrolling the 
6441         text widget
6442
6443         * gtk/gtktextview.c, gtk/gtktextview.h:
6444         Rearrange the scrolling/validation/etc. code in a major way, 
6445         so it seems to make sense to me. Probably isn't genuinely that
6446         much better, but...
6447
6448         * gtk/gtktexttag.c (set_fg_color): fix name of property used for
6449         notifies
6450
6451         * gtk/gtktextmark.c (gtk_text_mark_get_left_gravity): new function
6452
6453 2001-01-12  Alexander Larsson  <alla@lysator.liu.se>
6454
6455         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_set_rotation):
6456         Hide mouse pointer while rotation. Show it afterwards.
6457
6458 2001-01-12  Alexander Larsson  <alexl@redhat.com>
6459
6460         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_clip_region): Take shaped
6461         windows in consideration when generating clip region.
6462
6463         * gdk/linux-fb/gdkfb.h:
6464         Huge HACK. Added GDK_FB_USE_CHILD_SHAPE.
6465
6466         * gdk/linux-fb/gdkprivate-fb.h:
6467         Add shape to GdkWindowFBDatat.
6468         exported gdk_fb_window_get_abs_shape().
6469         removed gdk_fb_draw_lines declaration.
6470
6471         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_impl_fb_init):
6472         Init shape to NULL. (gdk_fb_window_send_crossing_events): Don't
6473         send focus changes when there is a grabbed window.
6474         (gdk_window_get_pointer): Handle shaped windows.
6475         (gdk_fb_region_create_from_bitmap): Convert bitmap to region.
6476         (gdk_fb_window_peek_shape): Returns the shape for a window,
6477         handles GDK_FB_USE_CHILD_SHAPE.
6478         (gdk_fb_window_get_abs_shape): Returns the shape of the window,
6479         offseted to absolute positions. Handles GDK_FB_USE_CHILD_SHAPE.
6480         (gdk_window_shape_combine_mask): Implement.
6481
6482         * gtk/gtkwindow-decorate.c:
6483         HACK! Set GDK_FB_USE_CHILD_SHAPE on window->frame to make sure
6484         setting the shape of a window makes the window transparent.
6485
6486 2001-01-11  Havoc Pennington  <hp@redhat.com>
6487
6488         * gtk/gtktreemodelsimple.h: Oops, broke some macros
6489
6490 2001-01-10  Havoc Pennington  <hp@redhat.com>
6491
6492         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clear_attributes):
6493         add this function, bug 40251
6494
6495         * gtk/gtktreemodelsimple.h (GTK_TYPE_TREE_MODEL_SIMPLE): fix name
6496         of type macro   
6497
6498 2001-01-11  Alexander Larsson  <alexl@redhat.com>
6499
6500         * acconfig.h:
6501         Added ENABLE_SHADOW_FB
6502
6503         * configure.in:
6504         Added --disable-shadowfb
6505
6506         * gdk/linux-fb/gdkcursor-fb.c:
6507         Update shadowfb when updating cursor
6508
6509         * gdk/linux-fb/gdkdrawable-fb2.c:
6510         Added wrappers for shadowfb that calls  the normal drawable
6511         methods, but calls gdk_shadow_fb_update(bounding box) when
6512         GdkWindows are drawed to.
6513         Moved gdk_draw_glyphs implementation to _gdk_draw_glyphs
6514         which also returns the bounding box.
6515
6516         * gdk/linux-fb/gdkfb.h:
6517         Added GdkFBAngle type and gdk_fb_set_rotation declaration.
6518
6519         * gdk/linux-fb/gdkgeometry-fb.c:
6520         Update shadowfb when scrolling window.
6521
6522         * gdk/linux-fb/gdkglobals-fb.c:
6523         Add _gdk_fb_screen_angle.
6524         
6525         * gdk/linux-fb/gdkkeyboard-fb.c:
6526         Test code for screen rotation. Shift-F2 in the xlate driver
6527         rotates the screen.
6528
6529         * gdk/linux-fb/gdkmain-fb.c:
6530         Handle shadowfb. Add gdk_fb_set_rotation(). Remove CM and RP.
6531
6532         * gdk/linux-fb/gdkmouse-fb.c:
6533         Use fb_width/height instead of modeinfo.xres/yres.
6534
6535         * gdk/linux-fb/gdkprivate-fb.h:
6536         Added fb_men, fb_width, fb_height & fb_stride. When using
6537         shadow fb these can differ from the framebuffer stuff.
6538         Declarations for gdk_shadow_fb_update, gdk_shadow_fb_init,
6539         gdk_shadow_fb_stop_updates, gdk_fb_recompute_all,
6540         _gdk_fb_screen_angle. Removed CM, RP.
6541
6542         * gdk/linux-fb/gdkrender-fb.c:
6543         Added code for shadowfb handling and screen rotation using
6544         shadowfb.
6545
6546         * gdk/linux-fb/gdkwindow-fb.c:
6547         Use fb_mem, fb_stride, fb_width, fb_height.
6548         Added recompute_rowstride to reset the rowstride of all windows.
6549         Added gdk_fb_recompute_all() which recomputes rootwindow size,
6550         window abs positions and window rowstrides. Usefull when the
6551         rotation has changed.
6552
6553 Thu Jan 11 13:16:50 GMT 2001  Tony Gale <gale@gtk.org>
6554
6555         * docs/faq/gtk-faq.sgml: update to make web site updating easier
6556
6557 2001-01-10  Havoc Pennington  <hp@redhat.com>
6558
6559         * gtk/gtktreestore.c (gtk_tree_store_insert_before): handle case
6560         where sibling == iter
6561         (gtk_tree_store_insert_after): handle sibling == iter
6562         (gtk_tree_store_prepend): remove stamp checks
6563         (gtk_tree_store_insert_before): ditto
6564         (gtk_tree_store_append): ditto
6565         (gtk_tree_store_get_path): ditto
6566         (gtk_tree_store_get_value): ditto
6567         (gtk_tree_store_iter_has_child): ditto
6568         (gtk_tree_store_iter_n_children): ditto
6569         (gtk_tree_store_iter_nth_child): ditto
6570         (gtk_tree_store_insert_after): ditto
6571         (gtk_tree_store_is_ancestor): ditto
6572         (gtk_tree_store_iter_depth): ditto
6573         (gtk_tree_store_insert_before): assert that sibling's parent is
6574         the same as the passed-in parent
6575         (gtk_tree_store_insert_after): assert that sibling's parent is
6576         the same as the passed-in parent
6577
6578         
6579         * gtk/gtktreemodel.c (gtk_tree_model_get_first): new convenience 
6580         function to get the first iterator in a model
6581         
6582         * gtk/gtktreestore.c (gtk_tree_store_get_root_iter): remove,
6583         conventionally the "root" in this sense is just NULL afaict.
6584
6585         * gtk/gtkliststore.c (gtk_list_store_insert_before): handle case
6586         where sibling == iter
6587         (gtk_list_store_insert_after): handle case where sibling == iter
6588
6589         * tests/testtreeview.c (run_automated_tests): fairly lame basic
6590         automated tests for ListStore, TreeStore
6591
6592         * gtk/gtkliststore.c (gtk_list_store_remove): update tail pointer
6593         (gtk_list_store_insert): update tail pointer, and fix it to work
6594         (gtk_list_store_insert_before): update tail pointer, and fix it to work
6595         (gtk_list_store_append): use tail to be faster
6596         (gtk_list_store_prepend): fix it, update tail pointer
6597         (gtk_list_store_insert_after): fix it, update tail pointer
6598
6599         * gtk/gtkliststore.h (struct _GtkListStore): add tail pointer for 
6600         the list
6601
6602 2001-01-09  Havoc Pennington  <hp@redhat.com>
6603
6604         * gtk/gtklabel.c (gtk_label_expose): don't draw if label->layout
6605         is NULL due to a pending resize
6606
6607         * gtk/gtktreeview.c (gtk_tree_view_check_dirty): don't set the
6608         column width to values less than 1
6609
6610         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_width): clamp
6611         width to be between min/max width, and still set the width 
6612         even if autosize is turned on, so the tree view can use this 
6613         function in order to autosize.
6614         (gtk_tree_view_column_init): set initial width to 1 not 0
6615
6616         * gtk/gtktreeview.c (gtk_tree_view_size_request_buttons): use
6617         setter function to modify column width, so we get notification
6618         (gtk_tree_view_insert_iter_height): ditto
6619         (gtk_tree_view_calc_size): ditto
6620         (gtk_tree_view_check_dirty): ditto
6621
6622         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_class_init): Add
6623         properties to change all the interesting attributes of the tree
6624         view column.
6625         (gtk_tree_view_column_set_header_clickable): rename set_clickable
6626         (gtk_tree_view_column_get_clickable): add
6627         (gtk_tree_view_column_set_cell_renderer): don't unset the current
6628         attributes; assume a cell renderer with equivalent object
6629         properties has been swapped in. Do g_object_notify().
6630         (gtk_tree_view_column_set_visible): g_object_notify
6631         (gtk_tree_view_column_get_sizing): rename from get_col_type
6632         (gtk_tree_view_column_set_sizing): g_object_notify
6633         (gtk_tree_view_column_set_width): add g_object_notify
6634         (gtk_tree_view_column_set_min_width): ditto
6635         (gtk_tree_view_column_set_max_width): ditto
6636         (gtk_tree_view_column_set_title): ditto
6637         (gtk_tree_view_column_set_clickable): ditto
6638         (gtk_tree_view_column_set_widget): ditto
6639         (gtk_tree_view_column_set_justification): ditto
6640
6641 2001-01-09  Havoc Pennington  <hp@redhat.com>
6642
6643         * gtk/gtktreeview.c (gtk_tree_view_check_dirty): handle case where
6644         there are no rows in the model
6645
6646         * gtk/gtkliststore.c (gtk_list_store_iter_children): if parent is
6647         NULL, then return the start of the list
6648
6649         * gtk/gtktreeview.c (gtk_tree_view_setup_model): don't build tree
6650         if we can't get any rows from an empty model 
6651
6652         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): remove
6653         extraneous * after function pointer typedef usage
6654
6655         * Makefile.am: don't specify full path to cp and rm
6656
6657         * gtk/gtkcellrenderertextpixbuf.c
6658         (gtk_cell_renderer_text_pixbuf_get_size): check width/height !=
6659         NULL before dereferencing, fixes a segfault that happened from
6660         time to time
6661
6662         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render):
6663         use gdk_pixbuf_render_to_drawable_alpha() to get alpha channel,
6664         and reindent the function
6665         (gtk_cell_renderer_pixbuf_get_size): indentation
6666
6667         * gtk/gtkdialog.c (gtk_dialog_run): destroy main loop only after
6668         we quit it
6669         (gtk_dialog_add_buttons_valist): add g_return_if_fail
6670         (gtk_dialog_set_default_response): New function, to set default
6671         button
6672         (gtk_dialog_set_response_sensitive): New function, to set 
6673         sensitivity of buttons
6674
6675         * gtk/gtkcellrendererpixbuf.c
6676         (gtk_cell_renderer_pixbuf_get_property): allow getting a NULL pixbuf
6677         (gtk_cell_renderer_pixbuf_set_property): allow setting a NULL pixbuf
6678
6679         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_to_value):
6680         handle any G_TYPE_OBJECT subclass, not just the base class, and 
6681         also boxed types.
6682         (_gtk_tree_data_list_value_to_node): ditto
6683
6684         * gtk/gtkrbtree.c: Run _gtk_rbtree_test at strategic points if 
6685         --gtk-debug=tree
6686
6687         * gtk/gtkmain.c: add GTK_DEBUG_TREE
6688
6689         * gtk/gtkdebug.h: add GTK_DEBUG_TREE
6690
6691 2001-01-09  Tor Lillqvist  <tml@iki.fi>
6692
6693         * gdk/win32/gdkevents-win32.c: Implement better mouse
6694         capturing. Do use SetCapture(). Thanks to jpe@archaeopteryx.com.
6695         (find_window_for_pointer_event): New function.
6696         (gdk_event_translate): Use it when handling mouse events.
6697
6698 2001-01-09  Alexander Larsson  <alla@lysator.liu.se>
6699
6700         * configure.in:
6701         Added --with-included-loaders option
6702
6703         * gdk-pixbuf/Makefile.am:
6704         * gdk-pixbuf/gdk-pixbuf-io.c:
6705         Add support for including selected gdk-pixbuf loaders only.
6706
6707         * gtk/gtkwindow.c (gtk_window_set_frame_dimensions,
6708         gtk_window_set_has_frame):
6709         Added inline documentation.
6710
6711         * gdk/x11/gdkwindow-x11.c (gdk_window_get_decorations):
6712         * docs/reference/gdk/tmpl/windows.sgml:
6713         Added inline documentation.
6714
6715 Mon Jan  8 14:42:06 2001  Jonathan Blandford  <jrb@redhat.com>
6716
6717         * gtk/gtktreeview.c (gtk_tree_view_realize_buttons): Skip
6718         realizing buttons that have already been realized.
6719
6720 Mon Jan  8 14:06:29 2001  Jonathan Blandford  <jrb@redhat.com>
6721
6722         * tests/testtreeview.c (main): Show menu items before adding to
6723         option menu.
6724
6725         * gtk/gtktreeview.c (gtk_tree_view_set_model): Keep the columns
6726         around if we kill them.
6727
6728         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
6729         Return if we pass in a NULL model.
6730
6731 2001-01-08  Havoc Pennington  <hp@redhat.com>
6732
6733         * tests/testtreeview.c: hack on this some
6734
6735         * gtk/gtktreestore.c (gtk_tree_store_setv): rename
6736         gtk_tree_store_set_valist, v is for arrays, valist for varargs
6737         list
6738         (gtk_tree_store_getv): rename gtk_tree_store_get_valist
6739
6740         * gtk/gtkliststore.h: Add varargs set() and get() convenience
6741         functions
6742
6743 2001-01-08  Alexander Larsson  <alexl@redhat.com>
6744
6745         * gtk/gtkwindow-decorate.[hc]:
6746         * gtk/Makefile.am:
6747         New files. Contains an implementation of a minimal WM for
6748         linux-fb.
6749
6750         * gtk/gtkwindow.h:
6751         Add the possibility for GtkWindows to specify a frame. This
6752         is used for the window decoration code, but could concievably
6753         be used for X programs too (xmms style windows).
6754         GtkWindow->frame is the toplevel window if the window is framed.
6755         The signal frame_event gets all events that are targeted to
6756         GtkWindow->frame.
6757         (_gtk_window_constrain_size): Exported for usage by gtkwindow-decorate.c.
6758         
6759         * gtk/gtkwindow.c:
6760         Implement gtk_window_set_has_frame and gtk_window_set_frame_dimensions.
6761         Call out to gtkwindow-decorate.c for WM support in linx-fb.
6762
6763 2001-01-08  Alexander Larsson  <alexl@redhat.com>
6764
6765         * docs/README.linux-fb:
6766         Correct filename ~/.pangoft2_aliases
6767
6768         * gdk/gdkwindow.h:
6769         Added new function gdk_window_get_decorations.
6770
6771         * gdk/linux-fb/gdkfb.h:
6772         Removed _gdk_window_get_decorations declaration.
6773         Renamed _gdk_window_set_child_handler to
6774         gdk_fb_window_set_child_handler.
6775
6776         * gdk/linux-fb/gdkwindow-fb.c:
6777         Renamed _gdk_window_set_child_handler to
6778         gdk_fb_window_set_child_handler.
6779
6780         * gdk/x11/gdkwindow-x11.c:
6781         New function gdk_window_get_mwm_hints().
6782         Implemented gdk_window_get_decorations.
6783
6784         * docs/reference/gdk/tmpl/windows.sgml:
6785         * docs/reference/gdk/gdk-sections.txt:
6786         Added gdk_window_get_decorations docs.
6787         
6788 2001-01-08  Alexander Larsson  <alla@lysator.liu.se>
6789
6790         * gdk/linux-fb/gdkwindow-fb.c (_gdk_fb_window_find_focus,
6791         gdk_fb_window_find_focus, gdk_fb_send_focus_change,
6792         gdk_fb_window_send_crossing_events):
6793         Possibly send focus events when the mouse moves from one
6794         window to another.
6795
6796 2001-01-07  Tor Lillqvist  <tml@iki.fi>
6797
6798         * gdk/win32/gdkwindow-win32.c (gdk_window_set_title,
6799         gdk_window_new): Adapt calls to g_{locale,filename}_{to,from}_utf8
6800         to match current API.
6801
6802         * gdk/win32/gdkvisual-win32.c (gdk_visual_init): If a secret
6803         environment variable is set, don't call g_error when on a
6804         palettized (PseudoColor) display. Some people want to use GTK+ 
6805         in 256-colour mode even though works only partially.
6806
6807         * gdk/gdk.def
6808         * gtk/gtk.def
6809         * gtk/makefile.mingw.in: Update.
6810
6811 2001-01-05  Havoc Pennington  <hp@redhat.com>
6812
6813         * tests/testtreeview.c: hack on this a bit
6814
6815         * gtk/gtktextlayout.c (gtk_text_layout_class_init):
6816         s/GTK_RUN_LAST/G_SIGNAL_RUN_LAST
6817
6818         * gtk/gtktreemodelsimple.h (GTK_IS_TREE_MODEL_SIMPLE_CLASS): 
6819         was spelled incorrectly
6820         (GTK_IS_TREE_MODEL_SIMPLE): ditto
6821
6822         * gtk/gtktreeview.c (gtk_tree_view_set_headers_clickable): rename
6823         from gtk_tree_view_set_headers_active   
6824
6825         * gtk/gtktexttag.c:
6826         (gtk_text_tag_get_property): handle PROP_DIRECTION
6827         (gtk_text_tag_set_property): g_object_notify when we toggle the _set
6828         properties, bug 40235
6829
6830         * gtk/gtktextiter.c (gtk_text_iter_forward_to_delimiters): rename
6831         forward_to_line_end
6832
6833 Fri Jan  5 16:16:29 2001  Owen Taylor  <otaylor@redhat.com>
6834
6835         * gtk/{gtkcalender.c,gtkfilesel.c,gtkimcontext.c},
6836         modules/input/gtkimcontextxim.c: Adapt to new prototypes
6837         for unicode,locale,filename conversion functions.
6838
6839 2001-01-05  Havoc Pennington  <hp@redhat.com>
6840
6841         * gtk/gtktextiter.c (gtk_text_iter_ends_line): this function was
6842         broken if called on the first position in the buffer.
6843
6844         * gtk/gtktextlayout.c (line_display_index_to_iter): fix
6845         forward_to_delimiters to be called only if we aren't already at
6846         the delimiters.
6847
6848 2001-01-05  Havoc Pennington  <hp@redhat.com>
6849
6850         * demos/gtk-demo/main.c (create_tree): Oops, that didn't link. Fix.
6851
6852 2001-01-05  Alexander Larsson  <alexl@redhat.com>
6853
6854         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_drawable_finalize): free
6855         colormap in here. Sync from X port.
6856         (gdk_fb_set_colormap): allow the colormap to be NULL if you like.
6857         Sync from X port.
6858         (gdk_fb_clip_region): Comment out g_warning about empty clip region.
6859         This happens now and then, and i don't think it is a bug.
6860         (gdk_fb_draw_polygon): Correctly add extra point if startpoint
6861         != endpoint.
6862         (gdk_fb_draw_lines): Don't draw dashed lines if line_style is
6863         GDK_LINE_SOLID.
6864
6865         * gdk/linux-fb/gdkfont-fb.c: Return bogus GdkFont that has
6866         some of the fields filled in at least.
6867
6868         * gdk/linux-fb/miwideline.c: The widths argument to miLineArcI, and
6869         miLineArcD is no more, remove it from the function definition.
6870
6871 2001-01-04  Havoc Pennington  <hp@redhat.com>
6872
6873         * gtk/gtktreeselection.c (gtk_tree_selection_get_tree_view): add
6874         this
6875
6876         * gtk/gtktreemodel.h (struct _GtkTreeIter): rename fields to
6877         user_data instead of tree_node
6878
6879         * gtk/gtktreeprivate.h (TREE_VIEW_COLUMN_WIDTH): rename from
6880         TREE_VIEW_COLUMN_SIZE
6881
6882         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): rename
6883         "size" field to "width" finishes bug 40061
6884
6885         * gtk/gtkcellrenderer.h: Use GtkCellRendererState instead of guint
6886         for bitfields, bug 40268
6887
6888 2001-01-04  Havoc Pennington  <hp@redhat.com>
6889
6890         Rename some stuff:
6891         
6892         s/gtk_tree_view_column_set_size/gtk_tree_view_column_set_width/g;
6893
6894         s/GtkModelSimple/GtkTreeModelSimple/g;
6895         s/GTK_MODEL_SIMPLE/GTK_TREE_MODEL_SIMPLE/g;
6896         s/gtk_model_simple/gtk_tree_model_simple/g;
6897         s/gtkmodelsimple/gtktreemodelsimple/g;
6898
6899         s/gtk_tree_view_column_set_header_active/gtk_tree_view_column_set_header_clickable/g;
6900
6901         s/GtkTreeViewColumnType/GtkTreeViewColumnSizing/g;
6902         s/column_set_col_type/column_set_sizing/g;
6903
6904         s/GtkTreeSelectionType/GtkTreeSelectionMode/g;
6905         s/gtk_tree_selection_set_type/gtk_tree_selection_set_mode/g;
6906
6907         s/GtkCellRendererType/GtkCellRendererState/g;
6908         
6909         * gtk/gtkcellrenderertoggle.c: remove _ macro, include gtkintl.h
6910         (gtk_cell_renderer_toggle_class_init): change "state" property to
6911         "active", to match GtkToggleButton
6912         (gtk_cell_renderer_toggle_get_active): new function, bug
6913         40269
6914         (gtk_cell_renderer_toggle_set_active): new function
6915         (gtk_cell_renderer_toggle_set_property): route changes to toggle
6916         state through gtk_cell_renderer_set_active
6917
6918 Thu Jan  4 15:46:18 2001  Jonathan Blandford  <jrb@redhat.com>
6919
6920         * gtk/gtkmodelsimple.c: Changed a bunch of boxed types to pointers
6921         temporarily until they work again.  Brought up to date with
6922         changes in the model.
6923         * gtk/gtkmodelsimple.h: Brought up to date with changes in the
6924         model.
6925
6926 2001-01-04  Havoc Pennington  <hp@redhat.com>
6927
6928         * gtk/gtktextlayout.c (line_display_index_to_iter): if index is
6929         equal to the line length, then position iterator before paragraph 
6930         separators. Fixes crash reported by Mikael Hermansson when
6931         pressing left arrow from the start of a line.   
6932
6933         * gtk/gtktextiter.c (iter_set_from_byte_offset): Add g_error
6934         about byte indexes off the end
6935         (iter_set_from_char_offset): add g_error about char offsets
6936         off the end
6937
6938 2001-01-03  Havoc Pennington  <hp@redhat.com>
6939
6940         * gtk/gtktextbtree.c: Adapt to uscore-ification of gtktextiterprivate
6941
6942         * gtk/gtktextdisplay.c (gtk_text_layout_draw): remove use 
6943         of private functions; remove inclusion of private headers.
6944
6945         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_at_line): Add this 
6946         function, so we don't need private functions in gtktextdisplay.c
6947
6948         * gtk/gtktextiterprivate.h: underscore-ification
6949
6950         * gtk/gtkwidget.c: Clean up a bunch of docs that said "INTERNAL"
6951         to instead say "only useful to implement widgets"
6952
6953         * gtk/gtkenums.h (GtkMovementStep): Rename GTK_MOVEMENT_CHARS,
6954         GTK_MOVEMENT_POSITIONS to GTK_MOVEMENT_LOGICAL_POSITIONS,
6955         GTK_MOVEMENT_VISUAL_POSITIONS. Resolves bug 40249.
6956
6957         * gdk/x11/gdkwindow-x11.c (gdk_window_impl_x11_set_colormap):
6958         This function was completely broken
6959
6960         * gtk/testtext.c (line_numbers_expose): use gtk_paint_layout
6961
6962         * gtk/gtkvscale.c (gtk_vscale_draw_value): use gtk_paint_layout
6963
6964         * gtk/gtkvruler.c (gtk_vruler_draw_ticks): use gtk_paint_layout
6965
6966         * gtk/gtklabel.c (gtk_label_expose): use gtk_paint_layout
6967
6968         * gtk/gtkhscale.c (gtk_hscale_draw_value): use gtk_paint_layout
6969
6970         * gtk/gtkhruler.c (gtk_hruler_draw_ticks): use gtk_paint_layout
6971
6972         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_render): use
6973         gtk_paint_layout
6974
6975         * gtk/gtkaccellabel.c (gtk_accel_label_expose_event): use
6976         gtk_paint_layout
6977
6978         * gtk/gtkstyle.h: Add draw/paint expander to draw tree expanders.
6979         Progress on bug 40103. Add draw_layout to draw a PangoLayout.
6980         (struct _GtkStyleClass): Remove draw_cross, draw_oval, draw_ramp,
6981         which were not implemented.     
6982
6983         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): Add
6984         insert_pixbuf signal. Rename delete_text to delete_range since it
6985         also deletes pixbufs and child anchors. This almost closes bug
6986         40245 (still need to deal with child anchors)
6987
6988         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Add
6989         insert_pixbuf, change signal names as appropriate, change types of
6990         signals taking marks/tags to have the specific type, not just
6991         G_TYPE_OBJECT
6992         
6993         * gtk/gtkmain.c (gtk_get_current_event_state): Add this function; 
6994         closes bug 40051
6995
6996         * gtk/gtkoptionmenu.c (gtk_option_menu_set_history): clean up
6997         unnecessary remove_contents() call
6998         (gtk_option_menu_class_init): add a "changed" signal, closes
6999         bug 40039
7000         (gtk_option_menu_update_contents): emit "changed" if the 
7001         active menu item changes
7002
7003         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done): fix bad
7004         cast to GtkObject, reported by Jonas Borgstrom
7005         (gdk_pixbuf_loader_finalize): don't close the loader on finalize;
7006         we can't do stuff with side effects in finalize. Instead, spew a
7007         warning if the loader isn't closed.
7008
7009         * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_finalize): free
7010         colormap in here, non-X ports probably need to sync to this change
7011
7012         * gdk/x11/gdkdrawable-x11.c (gdk_x11_set_colormap): remove 
7013         assertion that colormap != NULL, you can set the colormap to NULL
7014         if you like.
7015         
7016         * Makefile.am: remove gtk-config-2.0
7017
7018         * configure.in: Use pkg-config to locate GLib. Remove
7019         separated-out GMODULE_LIBS, GMODULE_CFLAGS; these were not used,
7020         and the gmodule libs/cflags were in GLIB_LIBS GLIB_CFLAGS anyhow.
7021         Use pkg-config to locate Pango. Output correct Pango libs to
7022         gdk-2.0.pc.in. Fix test for FREETYPE_CONFIG (typo fix).
7023
7024         * Makefile.am (pkgconfig_DATA): install only target-specific pc
7025         files
7026         (install-data-local): symlink gtk+-2.0.pc and gdk-2.0.pc to the
7027         X11 pc files
7028
7029         * gtk+-2.0.pc.in (Requires): require the GDK for the current target
7030         unref from here
7031
7032 2001-01-03  Alexander Larsson  <alla@lysator.liu.se>
7033
7034         * configure.in:
7035         Change GTK_NO_CHECK_CASTS to G_DISABLE_CAST_CHECKS.
7036
7037 Tue Jan  2 16:23:05 2001  Owen Taylor  <otaylor@redhat.com>
7038
7039         * gtk/gtktextlayout.c
7040         (gtk_text_layout_move_iter_to_previous_line): Fix unitialized
7041         variable when moving back onto a single line.
7042
7043 2001-01-01  Havoc Pennington  <hp@redhat.com>
7044
7045         * gtk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
7046
7047         * gdk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
7048
7049         * configure.in (LIBTOOL_EXPORT_OPTIONS): define
7050         LIBTOOL_EXPORT_OPTIONS with options to control symbol export
7051
7052 2001-01-01  Havoc Pennington  <hp@redhat.com>
7053
7054         * gtk/gtktexttagprivate.h: uscore-prepend all the stuff in here.
7055
7056         * gtk/gtk-boxed.defs (GtkTextAttributes): Add boxed type for 
7057         GtkTextAttributes
7058
7059         * gtk/gtktexttag.c: Fix up GtkTextAttributes copying to close bug 
7060         #40246
7061         (gtk_text_attributes_copy_values): rename from 
7062         gtk_text_attributes_copy
7063         (gtk_text_attributes_copy): a more standard GTK copy function, 
7064         which returns a new object
7065
7066 2001-01-01  Havoc Pennington  <hp@redhat.com>
7067
7068         * gtk/gtktreeview.c: Adapt to GtkTreeSelection changes
7069         
7070         * gtk/gtktreeselection.c (_gtk_tree_selection_set_tree_view):
7071         don't fill in tree_view->priv->selection, kind of an unexpected
7072         side effect
7073
7074         * gtk/gtkcellrenderertext.c: Remove definition of _ and include
7075         gtkintl.h
7076         
7077         * gtk/gtkcellrenderer.c: Remove definition of _ and include
7078         gtkintl.h
7079         (gtk_cell_renderer_get_property): remove calls to g_value_init
7080
7081         * gtk/gtkcellrendererpixbuf.c: Remove definition of _ and include
7082         gtkintl.h
7083
7084         * gtk/gtkcellrenderertextpixbuf.c: Remove definition of _ macro
7085         and include gtkintl.h
7086         (gtk_cell_renderer_text_pixbuf_class_init): remove spaces from
7087         property names
7088
7089         * gtk/gtktreeselection.c (_gtk_tree_selection_new): rename, return
7090         GtkTreeSelection
7091         (_gtk_tree_selection_new_from_with_view): rename, return
7092         GtkTreeSelection
7093         (_gtk_tree_selection_set_tree_view): rename with uscore
7094         (gtk_tree_selection_get_selected): fill in the "model" out param
7095         first, so it gets filled in even if we return at the top of the 
7096         function
7097         (gtk_tree_selection_real_select_all): add a comment and an else{}
7098         to clarify this a bit
7099         (gtk_tree_selection_real_unselect_all): add the same else{}
7100
7101         * gtk/gtktreeselection.h: Rename new, new_with_tree_view, and
7102         set_tree_view to have underscore prefixes, move them to the
7103         private header, fix return type of new_with_tree_view
7104         (struct _GtkTreeSelection): mark struct
7105         fields private  
7106
7107         * gtk/gtktreemodel.c (gtk_tree_model_get_flags): return
7108         GtkTreeModelFlags, not a guint
7109         (gtk_tree_path_prev): return gboolean not gint
7110         (gtk_tree_path_up): return gboolean not gint
7111
7112         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): make get_flags
7113         return GtkTreeModelFlags, not a guint
7114
7115         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_finalize): check
7116         that child model is non-null before unrefing it
7117         (g_value_int_compare_func): make this a qsort compare func, not 
7118         a boolean predicate
7119
7120         * gtk/gtktreemodelsort.h: rename gtk_tree_model_set_sort_column,
7121         (add -umn to the end), and mark it unimplemented
7122         (gtk_tree_model_sort_resort): remove, this wasn't implemented, and 
7123         I don't see what it's for - doesn't the model always sort itself?
7124         (gtk_tree_model_sort_set_compare): this had the wrong signature
7125
7126         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_attributes):
7127         Fix the docs to say that it destructively replaces existing
7128         attributes (previously said that it added attributes).
7129         (gtk_tree_view_column_set_visible): canonicalize bool before
7130         equality testing. Also, check for realization before
7131         hiding/showing the tree_column->window; if this window could exist
7132         before realization, then it's busted and needs fixing, we can't 
7133         create GDK resources pre-realization. Also, remove
7134         superfluous queue_resize(), since set_size() does that for us.
7135         (gtk_tree_view_column_set_col_type): check realization before 
7136         using tree_column->window
7137
7138         * gtk/gtktreedatalist.c: fix filename in copyright notice
7139
7140 2000-12-31  Havoc Pennington  <hp@pobox.com>
7141
7142         * gtk/gtktextview.c: Rearrange all the
7143         scroll-while-dragging-or-selecting code to be different, not
7144         necessarily better. ;-)
7145         (gtk_text_view_scroll_to_mark): Change this
7146         function to take within_margin as a fraction instead of a pixel
7147         value, and to take alignment arguments (indicating where to align 
7148         the mark inside the visible area)
7149         
7150         * gtk/testtextbuffer.c (fill_buffer): fix bad cast of GtkTextTag
7151         to GtkObject
7152
7153         * gtk/gtktextiter.c (gtk_text_iter_set_line_offset): change
7154         behavior so that offsets past the end of the line are not 
7155         allowed, and an offset equal to the line length moves the iterator
7156         to the next line
7157         (gtk_text_iter_set_line_index): make parallel change
7158         (gtk_text_iter_get_bytes_in_line): add this function
7159         
7160         * gtk/gtktextbtree.c (_gtk_text_line_byte_locate): change handling
7161         of byte indexes off the end of the line; byte index at the end of
7162         the line now returns FALSE and doesn't fill in the requested
7163         values, byte index past the end of the line is an error.  Also,
7164         don't allow -1 offset anymore, since its meaning is unclear.
7165
7166         This change exposes some bug in visual cursor motion, where we
7167         end up with a huge invalid byte index; needs fixing. Symptom of 
7168         bug is a crash when you hit up arrow.
7169         
7170         (_gtk_text_line_char_locate): match the change to byte_locate
7171
7172         * gtk/gtktextiter.c (find_by_log_attrs): Handle iteration backward
7173         from start of line properly. fixes bug reported by Mikael
7174         Hermansson where backspace would delete all text before the
7175         cursor.
7176
7177 2000-12-30  Tor Lillqvist  <tml@iki.fi>
7178
7179         * gdk/win32/gdkwindow-win32.c
7180         (gdk_window_impl_win32_get_visible_region): New function, as in
7181         the X11 backend.
7182         (gdk_window_new, gdk_window_set_title): Use g_locale_from_utf8()
7183         instead of duplicating the same code here.
7184
7185         * gdk/win32/gdkwin32.h (GDK_COLORMAP_PRIVATE_DATA): Use
7186         GDK_COLORMAP macro.
7187
7188         * gdk/win32/gdkevents-win32.c (gdk_event_funcs): Use NULL as
7189         destroy function.
7190         (gdk_event_translate): Use GDK_COLORMAP_PRIVATE_DATA to correctly
7191         access that.
7192
7193         * gtk/gtk.def: Update.
7194
7195         * gtk/makefile.mingw.in: Use glib-genmarshal from $(GLIB)/gobject.
7196
7197 2000-12-30  Havoc Pennington  <hp@pobox.com>
7198
7199         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Set the system
7200         colormap on input only windows, to avoid special cases all over
7201         the code for these windows.
7202
7203 2000-12-26  Tor Lillqvist  <tml@iki.fi>
7204
7205         * gdk/win32/gdkvisual-win32.c (gdk_visual_init): Call g_error if
7206         we are on a palettized display ("PseudoColor" in X11), as the code
7207         for that doesn't work anyway, and never has.
7208
7209 2000-12-22  Alexander Larsson  <alexl@redhat.com>
7210
7211         * gdk/linux-fb/gdkkeyboard-fb.c (xlate_io):
7212         Don't use isprint() for chars > 255.
7213
7214 2000-12-21  Havoc Pennington  <hp@redhat.com>
7215
7216         * tests/testtreeview.c: more work
7217
7218 2000-12-21  Alexander Larsson  <alexl@redhat.com>
7219
7220         * docs/README.linux-fb:
7221         Update the docs to the new pangoft2 way.
7222
7223 2000-12-21  Alexander Larsson  <alexl@redhat.com>
7224
7225         * configure.in:
7226         For linux-fb get the pangoft2 cflags and libs. This needs a recent
7227         pango version.
7228         Remove modules/linux-fb/Makefile.
7229
7230         * gdk/linux-fb/gdkdrawable-fb2.c:
7231         Render glyphs using freetype.
7232
7233         * gdk/linux-fb/gdkfb.h:
7234         Add new fb-specific functions needed for managing windows.
7235
7236         * gdk/linux-fb/gdkmain-fb.c:
7237         Remove gdk_font_init/fini() calls.
7238
7239         * gdk/linux-fb/gdkpango-fb.c:
7240         Remove old implementation. Use pangoft2 instead.
7241
7242         * gdk/linux-fb/gdkprivate-fb.h:
7243         Remove PangoFBFont and related stuff.
7244
7245         * gdk/linux-fb/gdkwindow-fb.c:
7246         Implement drawable->get_visible_region.
7247         Implement support for _gdk_window_set_child_handler () and
7248         _gdk_window_get_decorations().
7249
7250         * modules/Makefile.am:
7251         Remove linux-fb subdir.
7252
7253         * modules/linux-fb/*:
7254         Removed all.
7255         
7256 2000-12-20  Jonathan Blandford  <jrb@redhat.com>
7257
7258         * gtk/gtkcellrenderer*.c (::get_property): remove g_value_init
7259         calls, as they are no longer needed.
7260
7261         * gtk/gtktreemodelsort.c: Fix up the comparison code.
7262         
7263         * gtk/gtktreemodel.h: Start work on ::reordered signal.  Need to
7264         figure out how to emit a signal on an interface.
7265
7266 2000-12-20  Havoc Pennington  <hp@redhat.com>
7267
7268         * tests: new directory to contain tests, gtk/test* should move
7269         here sometime (with appropriate on-cvs-server hackery)
7270
7271         * tests/testtreeview.c, tests/Makefile.am: a test
7272         
7273         * configure.in (AC_OUTPUT): add tests/Makefile
7274
7275         * gtk/gtktexttag.c (gtk_text_tag_get_property): Add "invisible"
7276         and "invisible_set" which were missing
7277
7278         * gtk/gtkrbtree.h: some cheesy indentation fix
7279         
7280 2000-12-20  Alexander Larsson  <alexl@redhat.com>
7281
7282         * gtk/gtkinvisible.c (gtk_invisible_realize):
7283         Attach the style to the window so that the style it is not
7284         leaked when unrealizing the window.
7285
7286 2000-12-18  Havoc Pennington  <hp@redhat.com>
7287
7288         * gtk/gtktextview.c (gtk_text_view_delete_from_cursor): do
7289         begin/end user action where appropriate
7290         (gtk_text_view_commit_handler): add begin/end user action
7291
7292         * gtk/gtktextbuffer.c: add begin/end user action signals, and
7293         bracket interactive operations with begin/end user action pair.
7294         
7295         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): remove
7296         "interactive" arg from insert_text and delete_text signals.
7297         Add begin_user_action, end_user_action signals
7298         (gtk_text_buffer_begin_user_action): 
7299         (gtk_text_buffer_end_user_action): New functions to delimit 
7300         a user-visible action
7301
7302         * gtk/gtkmarshal.list: update to reflect changes to gtktextbuffer
7303         signals.
7304         
7305 2000-12-18  Havoc Pennington  <hp@redhat.com>
7306
7307         * gdk/gdkevents.c (gdk_event_get_state): wow, that implementation
7308         was pretty non-working.
7309
7310         * gtk/testtext.c (fill_file_buffer): make this a bit more robust
7311         by passing the length to g_utf8_validate().
7312
7313 2000-12-16  Havoc Pennington  <hp@pobox.com>
7314
7315         * gtk/gdk-pixbuf-loader.h, gtk/gdk-pixbuf-loader.c: 
7316         Port to GObject, can go back in gdk-pixbuf after setting up 
7317         a gdk-pixbuf-marshal.h header over there.
7318
7319         * gtk/gtktreeview.c: s/SEPERATOR/SEPARATOR/g;
7320         (gtk_tree_view_class_init): specify GTK_TYPE_ADJUSTMENT for signal
7321         args
7322         (gtk_tree_view_init): don't unset GTK_NO_WINDOW, it shouldn't be
7323         set
7324         (gtk_tree_view_realize_buttons): don't gtk_widget_show() buttons
7325         here, do it when we create the buttons later
7326         (gtk_tree_view_realize_buttons): add some g_return_if_fail 
7327         (gtk_tree_view_map): paranoia checks that column->button is shown 
7328         and unmapped
7329         (gtk_tree_view_size_request): only request visible children.
7330         Move header size calculation in here, for cleanliness, and 
7331         to maintain invariants for child widgets if we eventually 
7332         let users set different children inside the buttons
7333         (gtk_tree_view_map_buttons): factor out code to map buttons,
7334         since it was being called several times
7335         (gtk_tree_view_size_allocate_buttons): move_resize the drag
7336         windows instead of just moving them; their height may change 
7337         if we allow random widgets in there, or the theme changes.
7338         (gtk_tree_view_size_allocate): move button size allocation 
7339         above emitting the scroll signals, to ensure a sane state when we
7340         hit user code
7341         (gtk_tree_view_button_release): remove queue_resize after
7342         tree_view_set_size(), set_size() will handle any resize queuing
7343         that's needed
7344         (gtk_tree_view_focus_in): just queue a draw, don't fool with
7345         draw_focus goo
7346         (gtk_tree_view_focus): use gtk_get_current_event() and
7347         gdk_event_get_state()
7348         (gtk_tree_view_deleted): don't queue_resize() after calling set_size()
7349         (gtk_tree_view_build_tree): fix a "if (foo); {}" bug - i.e. remove
7350         semicolon
7351         (gtk_tree_view_create_button): show the button here
7352         (gtk_tree_view_button_clicked): actually emit the clicked signal
7353         on the column
7354         (_gtk_tree_view_set_size): return right away if the size is
7355         unchanged, as a cheesy optimization
7356         (gtk_tree_view_setup_model): rename set_model_realized to 
7357         setup_model to match the flag that indicates whether we've 
7358         called it
7359         (gtk_tree_view_get_hadjustment): create adjustment if it doesn't
7360         exist, because set_scroll_adjustment does that and it shouldn't
7361         matter what order you call these in
7362         (gtk_tree_view_get_vadjustment): ditto
7363         (gtk_tree_view_set_headers_visible): canonicalize the bool, 
7364         for paranoia
7365         (gtk_tree_view_set_headers_visible): call
7366         gtk_tree_view_map_buttons() instead of using cut-and-paste code
7367         (gtk_tree_view_append_column): clarify whether the return value
7368         is the count of columns before or after, and do the increment 
7369         separately from the return statement so you can tell from the code.
7370         (gtk_tree_view_remove_column): ditto
7371         (gtk_tree_view_insert_column): ditto
7372         (gtk_tree_view_get_column): remove g_return_if_fail for columns
7373         outside the existing range, the docs say that outside-range
7374         columns are allowed, so we handle them as documented. (Presumably
7375         this allows a nice loop with column != NULL as test.)
7376         (gtk_tree_view_move_to): document what 0.0, 0.5, 1.0 alignments 
7377         mean (left/right/center etc.).
7378         (gtk_tree_view_collapse_all): only queue a draw if we're mapped
7379         (gtk_tree_view_expand_row): add docs
7380         (gtk_tree_view_collapse_row): add docs
7381
7382         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clicked): new
7383         function to emit the clicked signal on a column
7384         
7385         * gdk/gdkevents.c (gdk_event_get_state): new function, to get the
7386         state of an event
7387         (gdk_event_get_time): don't treat GDK_SCROLL 
7388         as a button event, remove default case from switch so gcc 
7389         will whine if we don't explicitly handle all event types
7390
7391         * gtk/gtktreeselection.h: added some FIXME 
7392         
7393         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): rename
7394         "columns" to "n_columns" and "column" to "columns" for clarity
7395
7396 2000-12-16  Havoc Pennington  <hp@pobox.com>
7397         
7398         * gtk/gtktextiter.c: General cleanup of the log attr iteration
7399         stuff. This should make e.g. the delete key work again in the
7400         text widget...
7401         (gtk_text_iter_forward_cursor_positions): handle negative count
7402         (gtk_text_iter_backward_cursor_positions): handle negative count
7403         (gtk_text_iter_forward_word_ends): handle negative count
7404         (gtk_text_iter_backward_word_starts): handle negative count
7405
7406         * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktexttag.h,
7407         gtk/gtktexttag.c, gtk/gtktexttagtable.h, gtk/gtktexttagtable.c, 
7408         gtk/gtktextbuffer.h, gtk/gtktextbuffer.c: Convert everything to 
7409         GObject. No doubt will cause breakage.
7410
7411         * demos/gtk-demo/textview.c: remove hacks around
7412         non-GObject-ification of the text objects
7413
7414         * demos/gtk-demo/main.c (main): use g_object_set() to manipulate 
7415         the text tag
7416         
7417 2000-12-14  Havoc Pennington  <hp@pobox.com>
7418
7419         * configure.in: only AC_DEFINE(HAVE_XFT) if we actually determined
7420         that we have Xrender
7421
7422 Thu Dec 14 20:22:31 2000  Owen Taylor  <otaylor@redhat.com>
7423
7424         * gdk/{gdkdrawable.[ch],gdkpixmap.c,gdkwindow.c,x11/gdkwindow.c}:
7425         Add two virtualized functions gdk_drawable_get_clip_region - to
7426         get the clip region when drawing.
7427         
7428         * gdk/gdkwindow.c (gdk_window_invalidate_rect): Rewrite to simple
7429         use invalidate_region.
7430
7431         * gdk/gdkwindow.c (gdk_window_invalidate_region): Clip to visible
7432         region.
7433
7434         * acconfig.h configure.in: Check for Xft. For now, assume
7435         that if Xft is found, Pango was compiled with Xft support
7436         as well.
7437
7438         * gdk/gdkcolor.h gdk/x11/gdkcolor-x11.c: Add 
7439         gdk_colormap_query_color().
7440         
7441         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_glyphs): Draw
7442         with Xft if appropriate.
7443
7444         * gdk/x11/gdkpango-x11.c (gdk_pango_context_get): Create
7445         a pangoxft context if we have XFT and the environment
7446         variable GD_USE_XFT is set.
7447         
7448         * gdk/x11/gdkx.h (struct _GdkGCX11): Cache the fg_pixel
7449         and also possibly an XftDraw structure.
7450
7451         * gtk/gtkfontsel.c: Handle the case where the font from the
7452         style doesn't match any of the fonts a bit better.
7453         
7454         * gtk/testgtk.c: Add tabs between directional segments for
7455         hebrew/arabic test. (Not really necessary, just a little
7456         prettier.)
7457
7458 2000-12-14  Havoc Pennington  <hp@redhat.com>
7459
7460         * gtk/testtext.c (fill_file_buffer): fix unicode validation when
7461         reading a file
7462
7463 2000-12-14  Havoc Pennington  <hp@redhat.com>
7464
7465         * gtk/gtktextbtree.c (_gtk_text_btree_validate_line): remove
7466         unused call to get_last_line()
7467
7468         * gtk/gtkobject.c (gtk_object_add_arg_type): add G_TYPE_POINTER
7469         here until boxed is working (and maybe after that - we should
7470         really not gratuitously break old code)
7471
7472         * gtk/gtktexttag.c (gtk_text_tag_class_init): add commented-out
7473         specific types for font_desc and tabs args, move them to
7474         GTK_TYPE_POINTER for now, waiting on g_param_spec_boxed() to get 
7475         fixed. Move GdkColor args to GTK_TYPE_POINTER also.
7476
7477         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): temporarily
7478         use GTK_TYPE_POINTER for signal signatures as a hack-around
7479
7480         * gtk/gtk-boxed.defs: Add boxed types for PangoFontDescription and
7481         PangoTabArray
7482
7483         * gtk/gtktextlayout.c (line_display_iter_to_index): 
7484         make static
7485         (line_display_index_to_iter): make static
7486
7487         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
7488         to marshal a string not a boxed
7489
7490         * gtk/gtkmarshal.list: add marshaller for GtkTextBuffer:insert_text
7491
7492         * gtk/testtext.c (fill_file_buffer): don't use g_utf8_next_char
7493         since the UTF-8 isn't validated yet
7494
7495         * gtk/gtktextsegment.c (char_segment_check_func): don't require
7496         lines to end in '\n'
7497         
7498         * gtk/gtktextview.c (gtk_text_view_move_cursor): update to use
7499         forward_to_delimiters, and grapheme boundaries
7500         (gtk_text_view_delete_from_cursor): properly handle non-newline
7501         delimiters, and grapheme boundaries
7502
7503         * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): rename
7504         to gtk_text_iter_forward_to_delimiters, and make it work properly
7505         if empty lines end with a character other than '\n'
7506
7507         * gtk/gtktextiter.h, gtk/gtktextiter.c: Add movement by cursor
7508         position
7509
7510 2000-12-15  Tor Lillqvist  <tml@iki.fi>
7511
7512         * gdk/makefile.{mingw.in,msc} (gdk_OBJECTS): Add gdkkeys.
7513
7514         * gtk/gtk.def
7515         * gdk/gdk.def: Update.
7516
7517         * gdk/win32/gdkmain-win32.c
7518         * gdk/win32/gdkkeys-win32.c: New file. Move some functions from
7519         gdkmain-win32.c here.
7520
7521         * gdk/win32/makefile.mingw.in (all): No need to make
7522         gdk-win32res.o here, the makefile one step up will call us to make
7523         it.
7524
7525         * gdk/win32/makefile.{mingw.in,msc} (gdk_win32_OBJECTS): Add
7526         gdkkeys-win32.
7527
7528         * gdk/win32/gdkcolor-win32.c: Silence gcc -Wall.
7529
7530         * gdk/win32/gdkevents-win32.c (gdk_events_init): Remove leftover
7531         call to g_source_add().
7532
7533         * gdk/win32/gdkgc-win32.c (BitmapToRegion): Plug memory
7534         leak. Thanks to Andreas Kemnade.
7535
7536 2000-12-13  Havoc Pennington  <hp@pobox.com>
7537
7538         * gtk/gtktextbtree.h: Remove double _ in front of some functions
7539
7540         * gtk/gtktext*.[hc]: update accordingly
7541         
7542 2000-12-13  Havoc Pennington  <hp@pobox.com>
7543
7544         * gtk/gtktextbtree.h: Put _ in front of every function in this 
7545         header file
7546
7547         * gtk/gtktext*.[hc]: update to reflect renamed btree functions
7548
7549 2000-12-13  Alex Larsson  <alexl@redhat.com>
7550
7551         * gdk/linux-fb/gdkmouse-fb.c (mouse_devs):
7552         Add support for ps2 intellimouse.
7553
7554         * gdkkeyboard-fb.c:
7555         Move shift-F1 repaint handling to xlate handler only.
7556         
7557         * docs/README.linux-fb:
7558         Add imps2 to docs.
7559         Document the new refresh keys.
7560         
7561 Tue Dec 12 23:46:44 2000  Tim Janik  <timj@gtk.org>
7562
7563         * gtk/stock-icons/Makefile.am: doh, this was broken beyond believe.
7564
7565         * gtk/gtkbox.c: change property types from (u)long to (u)int for
7566         ::position and ::padding.
7567
7568         * gtk/gtkcontainer.c: make ::border_width an INT property.
7569
7570         * gtk/gtkpacker.c: make ::position an INT property.
7571
7572         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed):
7573         guard against NULL h/v scrollbars, since this is used at construction
7574         time.
7575
7576         * gtk/gtkclist.[hc]: nuked gtk_clist_construct(), implemented
7577         internal gtk_clist_constructor().
7578
7579         * gtk/gtkctree.[hc]: nuked gtk_ctree_construct(), implemented
7580         gtk_ctree_constructor().
7581
7582         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): property
7583         ::pulse_step should use ARG_PULSE_STEP, not ARG_FRACTION.
7584
7585         * docs/reference/Makefile.am: fun stuff, disabled docs generation
7586         again, gtk-scan.c needs to introspec paramspecs, not GtkAgs.
7587
7588         * gtk/gtkwidget.[hc]:
7589         removed gtk_widget_setv(), gtk_widget_getv(), gtk_widget_newv()
7590         and gtk_widget_get().
7591         (gtk_widget_new): use g_object_new_valist().
7592         (gtk_widget_set): use g_object_set_valist().
7593
7594         * gtk/gtkobject.[hc]:
7595         removed gtk_object_arg_get_info(), gtk_object_getv(),
7596         gtk_object_query_args(), gtk_object_newv(),
7597         gtk_object_class_add_signals(),
7598         gtk_object_class_user_signal_new(),
7599         gtk_object_class_user_signal_newv(),
7600         gtk_object_arg_set(), gtk_object_arg_get(),
7601         gtk_object_args_collect(),
7602         gtk_object_default_construct(),
7603         gtk_object_constructed(),
7604         GTK_CONSTRUCTED and GTK_OBJECT_CONSTRUCTED().
7605         removed nsignals, signals and n_args members from GtkObjectClass.
7606         (gtk_object_new): use g_object_new_valist().
7607         (gtk_object_set): use g_object_set_valist().
7608         (gtk_object_get): use g_object_get_valist().
7609         
7610         * gtk/gtkcompat.h: define gtk_object_default_construct().
7611         
7612         * gtk/gtktypeutils.c (gtk_type_new): create constructed objects via
7613         g_object_new().
7614
7615         * gtk/*.c: removed gtk_object_class_add_signals() from class_init()
7616         fucntions, cleaned up method assignments (make sure your structures
7617         are setup properly before calling out). removed all GTK_CONSTRUCTED
7618         hacks ;)
7619
7620 Tue Dec 12 11:52:16 2000  Owen Taylor  <otaylor@redhat.com>
7621
7622         * gtk/gtkclist.c (gtk_clist_optimal_column_width): Fix 
7623         off-by-one error in checks. (Dave Lambert)
7624
7625 2000-12-12  Alexander Larsson  <alexl@redhat.com>
7626
7627         * gdk/linux-fb/gdkkeyboard-fb.c (xlate_close, raw_close):
7628         Don't free gdk_fb_keyboard twice.
7629
7630 Tue Dec 12 08:24:42 2000  Tim Janik  <timj@gtk.org>
7631
7632         * gtk/testgtk.c:
7633         (create_tooltips): 
7634         (create_statusbar): get rid of object_signal:: GtkObject argument uses,
7635         use GObject swapped_signal:: properties instead.
7636
7637         * gtk/gtkcellrenderertoggle.c: 
7638         * gtk/gtkcellrenderertextpixbuf.c: 
7639         * gtk/gtkcellrenderertext.c: 
7640         * gtk/gtkcellrendererpixbuf.c: 
7641         * gtk/gtkcellrenderer.c:
7642         * gtk/gtktreeviewcolumn.c: s/[sg]et_param/[sg]et_property/, fixed
7643         missing warnings for invalid property ids, install properties
7644         with g_object_class_install_property() now.
7645         
7646         * gtk/gtksignal.c:
7647         (gtk_signal_emit): let g_signal_emit_valist() collect the values for us.
7648         
7649 Wed Oct 25 14:17:43 2000  Owen Taylor  <otaylor@redhat.com>
7650         
7651         * gtk/gtkwidget.[ch] (gtk_widget_is_focus): Add a function
7652         to determine if a window is the focus widget within
7653         its toplevel.
7654
7655         * gtk/gtkcontainer.[ch]: Fix the return type of ::focus
7656         to be boolean.
7657
7658         * gtk/gtkcontainer.c (gtk_container_real_focus): Move handling 
7659         of the case where the container CAN_FOCUS to here instead
7660         of having it in each individual move-the-focus place.
7661
7662         * gtk/gtkcontainer.c: Rewrite handling of left-right and up-down
7663         focusing to be geometric in a much more obvious sense. Arrowing
7664         around is still non-intuitive because it isn't perfect and
7665         because entries, etc, grab the arrow keys, but it at least
7666         usually will do what you expect now.
7667         
7668         * gtk/gtknotebook.[ch]: Many cleanups. Moved docs inline in this
7669         file.
7670
7671         * gtk/gtknotebook.c: Change tabs to be a single item in
7672         the focus chain. Make movement of focus on tabs with arrow
7673         keys wrap around.
7674         
7675         * gtk/gtknotebook.c (gtk_notebook_find_child): Add
7676         CHECK_FIND_CHILD macro to give informative error messages
7677         instead of silent returns.
7678
7679         * gtk/gtknotebook.c (gtk_notebook_init): Set the RECEIVES_DEFAULT 
7680         flag since we handle GdkReturn on the tabs.
7681
7682         * gtk/gtknotebook.c (gtk_notebook_expose_tabs): Invalidate
7683         windows rather than sending expose events directly.
7684
7685         * gtk/gtknotebook.[ch] docs/Changes-2.0.txt: Move structure 
7686         definition for GtkNotebookPage into .c file, since it is private.
7687
7688         * gtk/testgtk.c (create_notebook): Add option for 
7689         testing borderless notebook.
7690
7691         * gtk/testgtk.c (page_switch): Removed egregious poking
7692         around in GTK+ internals.
7693
7694         * docs/widget-system.txt: Remove references to GTK_REDRAW_PENDING.
7695
7696         * gtk/gtkclist.[ch]: Remove key press handler, handle focusing
7697         properly through gtk_clist_focus. Make the title headers a
7698         single item in the tab-focus chain, and make left-right wrap
7699         around.
7700
7701         * gtk/gtkwindow.c (gtk_window_focus): Add a custom
7702         focus method so that wrapping around works properly.
7703
7704         * gtk/gtktreeview.c: Remove calls to gtk_container_set_focus_child() - 
7705         that is handled for the widget now. 
7706
7707 Mon Dec 11 11:41:12 2000  Owen Taylor  <otaylor@redhat.com>
7708
7709         * gtk/gtkinvisible.c (gtk_invisible_init): Flag invisible
7710         widgets as TOPLEVEL.
7711
7712         * gtk/gtkwidget.c (gtk_widget_queue_resize): Don't assume
7713         TOPLEVEL widgets are containers.
7714
7715         * gtk/gtkinvisible.h: Remove useless include.
7716
7717 2000-12-11  Havoc Pennington  <hp@redhat.com>
7718
7719         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): 
7720         Handle chopping off \r\n and 0x2029 in addition to \n before
7721         passing to PangoLayout
7722
7723         * gtk/gtkimcontextsimple.c
7724         (gtk_im_context_simple_get_preedit_string): 
7725         return an empty string if no match is pending
7726
7727         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): add
7728         assertion that the returned preedit string was sane
7729
7730         * gtk/gtktext*.[hc], gtk/testtext.c, gtk/testtextbuffer.c:
7731         s/gtk_text_iter_next_char/gtk_text_iter_forward_char/g;
7732         s/gtk_text_iter_prev_char/gtk_text_iter_backward_char/g;
7733
7734 Mon Dec 11 10:02:26 2000  Owen Taylor  <otaylor@redhat.com>
7735
7736         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_finalize): 
7737         Fix up finalizer to chain to its parent.
7738
7739 2000-12-11  Alexander Larsson  <alexl@redhat.com>
7740
7741         * docs/README.linux-fb (GDK_KEYBOARD_TYPE):
7742         Clearified the difference between the keyboard types. Wrote a note
7743         about the magic sysrq key to get out of raw mode.
7744
7745 2000-12-09  James Henstridge  <james@daa.com.au>
7746
7747         * gdk/linux-fb/gdkmouse-fb.c (GdkFBMouseDevice): add prot struct
7748         member to hold masks for detecting the start of a protocol packet.
7749         (mouse_devs): add packet start masks for ps2 and ms device types.
7750         Left the mask for fidmour blank, as I have no idea what it should
7751         be.
7752         (handle_mouse_io): skip bytes until we get to the start of a
7753         packet.  My Logitech mouse seems to be passing an extra NULL pad
7754         byte, and GPM does a similar thing here.
7755         (gdk_fb_mouse_ms_open): changed error message to not say psaux, as
7756         this is the ms mouse driver.
7757         (gdk_fb_mouse_ms_packet): fix up button handling, which was
7758         completely broken except for button1.  It was checking the wrong
7759         bit in the packet for the status of the right mouse button, and
7760         wrongly assuming right == button2 rather than 3.  I fixed that and
7761         also added support for middle button (button2).
7762
7763 2000-12-08  Havoc Pennington  <hp@redhat.com>
7764
7765         * gtk/gtktextbtree.c (gtk_text_btree_insert): fix breakage here
7766         that cause a segfault on text insertion
7767
7768         * gtk/gtktextchild.c (gtk_text_child_anchor_queue_resize): fix 
7769         warning
7770
7771         * gtk/gtktextiter.c (test_log_attrs): use
7772         _gtk_text_buffer_get_line_log_attrs to speed things up a bit
7773
7774         * gtk/gtktextbuffer.c (_gtk_text_buffer_get_line_log_attrs): 
7775         Get log attrs for a line, using a cache stored on the buffer
7776         
7777         * gtk/gtkcolorsel.h (GTK_COLOR_SELECTION_GET_CLASS): fix typo,
7778         reported by Jeff Franks
7779
7780 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
7781
7782         * gdk/linux-fb/gdkmouse-fb.c (gdk_fb_mouse_ms_open):
7783         /dev/ttyS0 -> /dev/mouse
7784
7785 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
7786
7787         * gdk/linux-fb/gdkfont-fb.c (gdk_fontset_load):
7788         Added dummy gdk_fontset_load.
7789
7790 2000-12-08  Alexander Larsson  <alexl@redhat.com>
7791
7792         * docs/README.linux-fb:
7793         * docs/Makefile.am:
7794         Initial GtkFB docs.
7795         
7796         * gdk/linux-fb/Makefile.am:
7797         Define GDK_DATA_PREFIX.
7798
7799         * gdk/linux-fb/gdkmain-fb.c:
7800         Fix typo.
7801         Change default display to /dev/fb0.
7802
7803         * gdk/linux-fb/gdkpango-fb.c:
7804         Add $(prefix)/share/fonts/ to font path.
7805         
7806 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
7807
7808         * gdk/linux-fb/gdkkeyboard-fb.c:
7809         New file containing the abstracted keyboard driver. Most code
7810         taken from gdkinput-ps2.c
7811
7812         * gdk/linux-fb/gdkinput-ps2.c:
7813         Removed file.
7814         
7815         * gdk/linux-fb/Makefile.am:
7816         Added gdkkeyboard-fb.c, removed gdkinput-ps2.c.
7817
7818         * gdk/linux-fb/gdkcolor-fb.c:
7819         display->fb was renamed to display->fb_fd.
7820
7821         * gdk/linux-fb/gdkcursor-fb.c:
7822         gdk_mouse_get_info -> gdk_fb_mouse_get_info
7823
7824         * gdk/linux-fb/gdkinput.c:
7825         Moved gdk_input_init here from gdkinput-ps2.c
7826
7827         * gdk/linux-fb/gdkmain-fb.c:
7828         display->fb was renamed to display->fb_fd.
7829         Now the tty and the console is opened here instead
7830         of in the keyboard driver. Also check GDK_VT to see what
7831         tty to open.
7832         Move gdk_beep () here from gdkinput-ps2.c
7833         gdk_mouse_get_info -> gdk_fb_mouse_get_info
7834
7835         * gdk/linux-fb/gdkmouse-fb.c:
7836         Add header.
7837         gdk_mouse_get_info -> gdk_fb_mouse_get_info
7838         Return correct keyboard modifiers.
7839         GDK_MOUSETYPE -> GDK_MOUSE_TYPE for consistancy
7840
7841         * gdk/linux-fb/gdkprivate-fb.h:
7842         Add tty and vt info to display.
7843         Add orignal modeinfo storage to display
7844         Update global functions
7845
7846         * gdk/linux-fb/gdkwindow-fb.c:
7847         Added gdk_fb_window_find_focus().
7848         gdk_mouse_get_info -> gdk_fb_mouse_get_info
7849
7850 2000-12-07  Havoc Pennington  <hp@pobox.com>
7851
7852         * gdk/x11/gdkkeys-x11.c (gdk_keymap_lookup_key): fix name of 
7853         function, noticed by Alex
7854
7855 2000-12-06  Elliot Lee  <sopwith@redhat.com>
7856
7857         * configure.in: Detect freetype properly
7858
7859         * modules/basic/Makefile.am, gdk/linux-fb/Makefile.am: Make use of
7860         above.
7861
7862 2000-12-06  Alexander Larsson  <alexl@redhat.com>
7863
7864         * gdk/linux-fb/Makefile.am:
7865         Add gdkmouse-fb.c
7866         
7867         * gdk/linux-fb/gdkmouse-fb.c:
7868         New file. Abstracted the mouse drivers a bit.
7869
7870         * gdk/linux-fb/gdkcursor-fb.c:
7871         The cursor hide/show functions was moved here from gdkinput-ps2.c.
7872
7873         * gdk/linux-fb/gdkinput-ps2.c:
7874         Removed old mouse handling code. Moved cursor handling code
7875         to gdkcursor-fb.c, moved gdk_fb_window_send_crossing_events() to
7876         gdkwindow-fb.c. gdk_input_get_mouseinfo was renamed to
7877         gdk_mouse_get_info.
7878
7879         * gdk/linux-fb/gdkmain-fb.c:
7880         Pass NULL pointers for x,y in gdk_mouse_get_info call.
7881
7882         * gdk/linux-fb/gdkprivate-fb.h:
7883         Removed public gdk_fb_find_common_ancestor, added and renamed
7884         functions for the new mouse handling code.
7885
7886         * gdk/linux-fb/gdkwindow-fb.c:
7887         Moved gdk_fb_window_send_crossing_events here. added global
7888         variable gdk_fb_window_containing_pointer. made
7889         gdk_fb_find_common_ancestor static. gdk_input_get_mouseinfo was
7890         renamed to gdk_mouse_get_info.
7891
7892 2000-12-06  Alexander Larsson  <alexl@redhat.com>
7893
7894         * gdk/linux-fb/gdkevents-fb.c:
7895         Update to match latest gmain/gsource changes.
7896
7897         * gdk/linux-fb/gdkinput-ps2.c:
7898         Bogus gdk_keymap_get_entries_for_keycode implementation so that
7899         it links. Will be implemented later.
7900
7901 2000-12-03  Havoc Pennington  <hp@pobox.com>
7902
7903         * gdk/Makefile.am: add gdkkeys.[hc]
7904
7905         * gdk/gdkkeys.h, gdk/gdkkeys.c: Move all the keyval stuff to these
7906         files from gdk.h, gdk.c; add GdkKeymap type and operations on it.
7907
7908         * acconfig.h, configure.in: add checks and command line options
7909         for XKB
7910
7911         * gdk/x11/gdkkeys-x11.c: Implement the above functions
7912         
7913         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Put the keycode
7914         and group in the key event
7915
7916         * gdk/gdkevents.h (struct _GdkEventKey): Add a hardware_keycode
7917         field with the low-level hardware key code, and a group
7918         field with the keyboard group
7919
7920         * gdk/x11/gdkprivate-x11.h: include config.h for HAVE_XKB,
7921         and declare a couple globals used for keymap handling
7922         
7923         * gtk/gtkimcontextsimple.c: Implement ISO 14755 input method,
7924         hold down Shift-Control and type a hex number to get a Unicode 
7925         character corresponding to the hex number
7926         (gtk_im_context_simple_get_preedit_string): Fix cursor position
7927         (return bytes not chars)
7928
7929 2000-12-05  Elliot Lee  <sopwith@redhat.com>
7930
7931         * gdk/gdkcolor.h: Make GdkColor specify element sizes
7932         to avoid waste on 64-bit platforms.
7933
7934 Tue Dec  5 15:49:31 2000  Owen Taylor  <otaylor@redhat.com>
7935
7936         * INSTALL: Fix link to PNG home, remove reference
7937         to fribidi.
7938
7939         * gdk/x11/gdkevents-x11.c: Fix up for new GMain API.
7940         
7941         * gdk/win32/gdkevents-win32.c: Fix up for new GMain API. (Not
7942         tested.)
7943
7944         * gtk/gtkcheckmenuitem.c: Permanently turn on
7945         always_show_toggle.
7946
7947         * gtk/gtkclist.c (gtk_clist_get_pixtext): Allow mask to 
7948         be NULL. (Vladimir Klebanov, #26545)
7949
7950         * gtk/gtkspinbutton.c (gtk_spin_button_insert_text): Fix 
7951         some signed/unsigned comparison problems. (#6510,
7952         David Kaelbling)
7953
7954         * gtk/gtkwidget.[ch] (gtk_widget_is_ancestor): Change
7955         return type to boolean (Oskar Liljeblad, #18648)
7956
7957 2000-12-05  Alexander Larsson  <alexl@redhat.com>
7958
7959         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_display_new):
7960         Remove bogus colormap setting.
7961
7962 2000-12-05  Alexander Larsson  <alexl@redhat.com>
7963
7964         * gdk/linux-fb/gdkcolor-fb.c:
7965         More complete colormap handling. Now GdkRGB work in 8 bpp modes.
7966
7967         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_image):
7968         Must set colormap.
7969         
7970 Tue Dec  5 13:17:53 GMT 2000  Tony Gale <gale@gtk.org>
7971
7972         * docs/tutorial/gtk-tut.sgml: DND updates
7973
7974 2000-12-05  Alexander Larsson  <alla@lysator.liu.se>
7975
7976         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
7977         Remove old debug g_warning().
7978         (gdk_fb_draw_drawable): The src argument can be either a wrapper
7979         or an implementation, just pass the implementation to draw_drawable_2.
7980         
7981         * gdk/linux-fb/gdkprivate-fb.h:
7982         Added GDK_IS_DRAWABLE_IMPL_FBDATA()
7983
7984         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
7985         clear and invalidate area when window is destroyed.
7986         (send_map_events): Remove old commented out code.
7987
7988 2000-12-05  Alexander Larsson  <alexl@redhat.com>
7989
7990         * gdk/linux-fb/gdkpango-fb.c:
7991         Use italic instead of oblique in font aliases.
7992         
7993         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic,
7994         _gdk_fb_gc_calc_state): Support GDK_XOR, add g_warning for
7995         other unsupported functions.
7996
7997 2000-12-04  Havoc Pennington  <hp@redhat.com>
7998
7999         * gtk/gtkpaned.c (gtk_paned_expose): fix this to be sane
8000
8001         * gtk/gtkvpaned.c (gtk_vpaned_expose): Add an expose handler
8002
8003         * gtk/gtkhpaned.c (gtk_hpaned_expose): Add an expose handler
8004
8005         * gtk/gtknotebook.c (gtk_notebook_draw_tab): put in a temporary 
8006         hack to avoid infinite loops (synthetic expose event) - 
8007         Owen has more appropriate fixes in a branch he'll check in later.
8008
8009         * gtk/gtktextiter.c (gtk_text_iter_ends_line): handle paragraph
8010         separator, CR, and CRLF as line ends
8011
8012         * gtk/gtktextbtree.c (gtk_text_btree_insert): on insertion, break
8013         into lines using pango_find_paragraph_boundary(); other bits of
8014         the widget are still going to be broken if the boundary isn't '\n'
8015         though
8016
8017 2000-12-04  Alexander Larsson  <alexl@redhat.com>
8018
8019         * gdk/linux-fb/gdkfont-fb.c (gdk_text_width): Divide size by 2, not
8020         multiply.
8021
8022         * gdk/linux-fb/gdkpango-fb.c:
8023         Copied some 26.6 scaling macros from pango to clean up the rounding.
8024         (pango_fb_font_get_glyph_info): Correct sign on x value.
8025
8026         * gdk/linux-fb/gdkprivate-fb.h:
8027         Removed unreferenced external functions.
8028
8029         * modules/linux-fb/Makefile.am: Use ` instead of '.
8030
8031         * modules/linux-fb/basic.c:
8032         Remove dead code. In particular the dummy lang engine which broke all
8033         pango layouts in GtkFB. Don't include tables-big.i anymore.
8034
8035         * modules/linux-fb/tables-big.i:
8036         Upgrade to latest version from pango. Left for reference, basic_ranges
8037         moved to basic.c.
8038         
8039 2000-12-04  Havoc Pennington  <hp@redhat.com>
8040
8041         Fix bugs Alex found:
8042         
8043         * gtk/gtktooltips.c (gtk_tooltips_force_window): nuke connection
8044         to "draw"
8045
8046         * gtk/gtkdnd.c (gtk_drag_highlight): nuke connection to "draw"
8047
8048         * gtk/gtkcolorsel.c (palette_new): nuke connection to "draw"
8049
8050         * gtk/gtklistitem.c (gtk_list_item_expose): Put the old _draw() 
8051         implementation in here, apparently the expose() implementation was
8052         dead code.
8053
8054 2000-12-04  Alexander Larsson  <alexl@redhat.com>
8055
8056         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
8057         Return positive descent.
8058
8059 2000-12-02  Havoc Pennington  <hp@pobox.com>
8060
8061         * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove "draw" virtual
8062         method and signal
8063         
8064         * gtk/gtkwidget.c (gtk_widget_draw): Now just queues a draw then
8065         calls gdk_window_process_updates() to push the exposes through
8066         (gtk_widget_class_init): No more draw signal, no
8067         gtk_widget_real_draw()  
8068         
8069         * gtk/gtkbin.c (gtk_bin_draw): remove
8070
8071         * gtk/gtkbox.c (gtk_box_draw): remove
8072
8073         * gtk/gtkbutton.c (gtk_button_draw): remove
8074
8075         * gtk/gtkcalendar.c (gtk_calendar_draw): remove
8076
8077         * gtk/gtkcheckbutton.c (gtk_check_button_draw): remove
8078
8079         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_draw): remove
8080
8081         * gtk/gtkclist.c (gtk_clist_draw): remove
8082
8083         * gtk/gtkentry.c (gtk_entry_draw): remove
8084
8085         * gtk/gtkeventbox.c (gtk_event_box_draw): remove
8086
8087         * gtk/gtkfixed.c (gtk_fixed_draw): remove
8088
8089         * gtk/gtkframe.c (gtk_frame_draw): remove
8090
8091         * gtk/gtkhandlebox.c (gtk_handle_box_draw): remove
8092
8093         * gtk/gtkhpaned.c (gtk_hpaned_draw): remove
8094
8095         * gtk/gtklayout.c (gtk_layout_draw): remove
8096
8097         * gtk/gtklist.c (gtk_list_draw): remove
8098
8099         * gtk/gtklistitem.c (gtk_list_item_draw): remove
8100
8101         * gtk/gtkmenu.c (gtk_menu_draw): remove
8102
8103         * gtk/gtkmenubar.c (gtk_menu_bar_draw): remove
8104
8105         * gtk/gtkmenuitem.c (gtk_menu_item_draw): remove
8106
8107         * gtk/gtknotebook.c (gtk_notebook_draw): remove
8108
8109         * gtk/gtkoptionmenu.c (gtk_option_menu_draw): remove
8110
8111         * gtk/gtkpacker.c (gtk_packer_draw): remove
8112
8113         * gtk/gtkrange.c (gtk_range_draw): remove
8114
8115         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_draw): remove
8116
8117         * gtk/gtkspinbutton.c (gtk_spin_button_draw): remove
8118
8119         * gtk/gtktable.c (gtk_table_draw): remove
8120
8121         * gtk/gtktearoffmenuitem.c (gtk_tearoff_menu_item_draw): remove
8122
8123         * gtk/gtktext.c (gtk_text_draw): remove
8124
8125         * gtk/gtktextview.c (gtk_text_view_draw): remove
8126
8127         * gtk/gtktogglebutton.c (gtk_toggle_button_draw): remove
8128
8129         * gtk/gtktoolbar.c (gtk_toolbar_draw): remove
8130
8131         * gtk/gtktree.c (gtk_tree_draw): remove
8132
8133         * gtk/gtktreeitem.c (gtk_tree_item_draw): remove
8134
8135         * gtk/gtktreeview.c (gtk_tree_view_draw): remove
8136
8137         * gtk/gtkviewport.c (gtk_viewport_draw): remove
8138
8139         * gtk/gtkvpaned.c (gtk_vpaned_draw): remove
8140
8141         * gtk/gtkvscale.c (gtk_vscale_draw): remove
8142
8143         * gtk/gtkwindow.c (gtk_window_draw): remove
8144
8145 2000-20-01  Anders Carlsson  <andersca@gnu.org>
8146
8147         * gtk/gtktogglebutton.c (gtk_toggle_button_draw): Fix bug when
8148         a GtkToggleButton is both insensitive and active, it was being
8149         drawn by the GtkButton draw handler which doesn't check the
8150         state. Now it's calling gtk_toggle_button_paint instead.
8151         
8152 2000-12-01  Havoc Pennington  <hp@redhat.com>
8153
8154         * gtk/gtktextdisplay.c (gtk_text_layout_draw): don't create
8155         dangling pointers to the appearance attributes from the 
8156         line display
8157
8158         * gdk/gdkdraw.c (gdk_drawable_get_image): allow negative
8159         width/height to mean "full width/height of drawable"
8160
8161         * gtk/gtktextview.h, gtk/gtktextview.c: Implement double/triple
8162         click to select word/line
8163         
8164         * gtk/gtktextiter.c (test_log_attrs): include paragraph delimiters 
8165         when getting log attrs. Get a slice, so that pixmaps and stuff
8166         are properly handled.
8167
8168         * gtk/gtktextbuffer.c (paste): Fix pasting to work properly if you
8169         paste into the selection (replaces selection now, previously
8170         crashed or added to selection). Reveals longstanding btree bug -
8171         select multiple lines, middle-click on the selection, boom. This
8172         isn't related to my changes though.
8173
8174         * gtk/gtkentry.c (gtk_entry_move_forward_word): Update to reflect
8175         PangoLogAttrs changes
8176         (gtk_entry_move_backward_word): ditto
8177
8178         * gtk/gtktextlayout.h, gtk/gtktextlayout.c: Make the iter motion
8179         functions return bool whether the iter moved onto a
8180         dereferenceable position.
8181  
8182         * gtk/gtktextview.h, gtk/gtktextview.c: Add a bunch of public
8183         functions for motion in terms of display lines.
8184
8185         * gtk/gtktextmark.c (gtk_text_mark_get_buffer): Add function to
8186         get the buffer a mark is inside
8187         
8188 2000-12-01  Alexander Larsson  <alexl@redhat.com>
8189
8190         * gdk/linux-fb/Makefile.am:
8191         * modules/linux-fb/Makefile.am:
8192         Freetype 2 final uses freetype-config
8193
8194         * gdk/linux-fb/gdkpango-fb.c:
8195         Upgrade to use Freetype 2 final.
8196         More flexible support for font aliases, this also fixes a bug with
8197         GtkFontSelector, as the aliases must be visible in the font/family list,
8198         or GtkFontSelector reads uninitialized memory.
8199
8200 2000-11-30 Hidetoshi Tajima  <tajima@eng.sun.com>
8201
8202         * modules/input/gtkimcontextxim.c (setup_im): Add NULL argument to
8203         XGetIMValues to properly terminate variable argument list, and do
8204         NULL return check for ic_values and xim_styles.
8205
8206         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset):
8207         Restore preedit state after XmbResetIC().
8208         
8209         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_get_ic):
8210         XvaCreateNestedList() should take XvaNestedList, but not
8211         XvaNestedList*.
8212
8213         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset,
8214         preedit_draw_callback, preedit_caret_callback): Match
8215         "preedit-changed" signal name to "preedit_changed" to be
8216         consistent to the spec.
8217
8218         * gtk/gtkimcontextsimple.c (check_table):
8219         Match "preedit-changed" to "preedit_changed" to be consistent
8220         to the spec.
8221
8222 Thu Nov 30 23:03:04 2000  Owen Taylor  <otaylor@redhat.com>
8223
8224         * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Properly handle
8225         gc->clip_region == NULL>
8226
8227 2000-11-30  Tor Lillqvist  <tml@iki.fi>
8228
8229         Changes by Hans Breuer:
8230         
8231         * gdk/win32/gdkwindow-win32.c (gdk_window_set_geometry_hints):
8232         Dont't use negative width and height as max_hints. This fixes
8233         Owen's recent testgtk changes for win32.
8234
8235         * gdk/win32/gdkgc-win32.c (gdk_win32_hdc_get,
8236         gdk_win32_hdc_release): These are exported and may be called with
8237         other drawable types than our GdkDrawableImplWin32 (?).
8238
8239         * gdk/gdkwindow.c: Backing store appears to work on Windows now,
8240         so always #define USE_BACKING_STORE.
8241
8242         * gtk/gtktextdisplay.c (render_layout_line): Use g_print instead
8243         of printf for debugging output.
8244
8245         * gtk/gtktextlayout.c (allocate_child_widgets): Ditto.
8246         
8247         * gtk/gtktextview.c (gtk_text_view_child_allocated): Ditto.
8248
8249         * gtk/gtkmain.h (GTKMAIN_C_VAR): Win32 fix for dllimport
8250         declaration.
8251
8252         * gtk/gtktexttypes.h: Ditto.
8253
8254         * gtk/gtklabel.c (gtk_label_set_markup_with_accel): Return a value
8255         (GDK_VoidSymbol) also if in case of arg check failure.
8256
8257         * gtk/gtkimcontextsimple.c
8258         (gtk_im_context_simple_get_preedit_string): Don't assign cursor
8259         position to the pointer, but to the variable it points to.
8260
8261         * gtk/makefile.msc.in (DEFINES): Define GTK_VERSION.
8262
8263         * gtk/gtk.def: Updates.
8264
8265 2000-11-29  Elliot Lee  <sopwith@redhat.com>
8266
8267         * gtk/gtkmodelsimple.c: Inherits from GTK_TYPE_OBJECT, not
8268         GTK_TYPE_TREE_MODEL.
8269
8270 2000-11-29  Alexander Larsson  <alexl@redhat.com>
8271
8272         * gdk/linux-fb/gdkfont-fb.c (gdk_font_from_description):
8273         Set the size of the font from the description.
8274         (gdk_text_width): Gross hack that calculates the width
8275         of text by text_length * size/2. This is necessary because
8276         GtkLabel does some ugly gtk_string_width call to calculate
8277         an good size.
8278         (linux-fb/gdkprivate-fb.h): Removed unused field FT_Face.
8279
8280 Wed Nov 29 13:39:19 GMT 2000  Tony Gale <gale@gtk.org>
8281
8282         * docs/tutorial/gtk-tut.sgml: DND updates
8283
8284 2000-11-29  Alexander Larsson  <alexl@redhat.com>
8285
8286         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_clear_area):
8287         If you pass width or height == 0 to gdk_window_clear_area they
8288         should be calculated from the window size.
8289
8290 2000-11-29  Alexander Larsson  <alexl@redhat.com>
8291
8292         * gdk/linux-fb/gdkinput-ps2.c (move_pointer): If there is
8293         a grab, but no grab-cursor, use the cursor from the grabbed
8294         window. (gdk_fb_window_send_crossing_events): Send normal
8295         enter/leave notifications if grab and owner_events == TRUE.
8296
8297 2000-11-29  Alexander Larsson  <alexl@redhat.com>
8298
8299         * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
8300         Do implicit button grabs, even if the window doesn't
8301         want the event.
8302         (gdk_fb_window_send_crossing_events): If there is a
8303         grab, only the grabbed window gets normal enter/leave
8304         notifications. On ungrab go from grabbed window to current.
8305         Don't send any notification to b when propagating from c -> b.
8306         If setting a grab on window, don't set prev_window.
8307         (handle_mouse_input): Send enter/leave events to the window the
8308         mouse is over, not the grabbed one.
8309         
8310 2000-11-28  Elliot Lee  <sopwith@redhat.com>
8311
8312         * gdk/gdkregion-generic.c: Zap warning.
8313         * modules/input/Makefile.am: Only build im-xim if USE_X11 is enabled
8314         * gtk/gtkrc.c: s/strcpy/memcpy/ to save a few nanoseconds.
8315
8316 2000-11-28  Alexander Larsson  <alla@lysator.liu.se>
8317
8318         * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
8319         The cursor should be hidden if it is part of either the
8320         source or destination region. Not only if it is in both.
8321         (gdk_window_set_transient_for): Silence warnings.
8322
8323 2000-11-28  Alexander Larsson  <alexl@redhat.com>
8324
8325         * gdk/linux-fb/mifillarc.c (miFillArcSliceSetup):
8326         The default mode in X is Pie Arcs, therefore that is
8327         what Gtk+ uses.
8328
8329 2000-11-28  Alexander Larsson  <alexl@redhat.com>
8330
8331         * gdk/linux-fb/gdkinput-ps2.c:
8332         Implement correct EnterNotify/LeaveNotify:
8333         (gdk_fb_window_send_crossing_events): New function that sends
8334         all GdkCrossingEvents from the last mouse-window to the specified
8335         destination.
8336         (gdk_fb_window_visibility_crossing): Removed function.
8337         (handle_mouse_input): Use gdk_fb_window_send_crossing_events()
8338         (send_button_event, gdk_fb_cursor_reset): Use gdk_window_at_pointer
8339         instead of gdk_window_get_pointer() for better readability.
8340
8341         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab,
8342         gdk_fb_pointer_ungrab): Use gdk_fb_window_send_crossing_events.
8343
8344         * gdk/linux-fb/gdkprivate-fb.h:
8345         removed gdk_fb_window_visibility_crossing, added
8346         gdk_fb_window_send_crossing_events and gdk_fb_find_common_ancestor.
8347
8348         gdk/linux-fb/gdkwindow-fb.c (gdk_fb_find_common_ancestor):
8349         New function that finds the least common ancestor of two windows.
8350         (gdk_window_show, gdk_window_hide):
8351         Use gdk_fb_window_send_crossing_events.
8352         (gdk_fb_window_move_resize): Send configure events to toplevel
8353         windows. Use gdk_fb_window_send_crossing_events.
8354
8355 2000-11-27  Havoc Pennington  <hp@redhat.com>
8356
8357         * gtk/gtkprivate.h (enum): Remove a trailing comma
8358
8359 2000-11-27  Federico Mena Quintero  <federico@helixcode.com>
8360
8361         * gtk/gtkspinbutton.c (gtk_spin_button_set_adjustment): Connect to
8362         the "changed" callback of the adjustment.  We need to redraw the
8363         spin button's arrows when the adjustment's range changes.
8364         (adjustment_changed_cb): Draw the arrows.
8365         (gtk_spin_button_value_changed): Draw the arrows.
8366
8367 2000-11-23  Alexander Larsson  <alexl@redhat.com>
8368
8369         * gdk/linux-fb/gdkselection-fb.c:
8370         Initial selection implementation.
8371
8372         * gtk/gtkselection.c:
8373         if GDK_WINDOWING_FB defined, include linux-fb/gdkfb.h and look up
8374         requestor in gtk_selection_request.
8375         
8376         * gdk/linux-fb/gdkfb.h, gdk/linux-fb/gdkglobals-fb.c:
8377         Added gdk_selection_property atom.
8378
8379         * gdk/linux-fb/gdkprivate-fb.h:
8380         Export _gdk_selection_window_destroyed.
8381         Removed mask_off_x/y from GdkCursorPrivateFB.
8382         Removed hbearing, added top, left to PangoFBGlyphInfo.
8383
8384         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
8385         Call _gdk_selection_window_destroyed
8386         (_gdk_windowing_window_init): Don't call gdk_cursor_new() before
8387         the root window has been created.
8388         (static_dx_hack, static_dy_hack, compare_draw_rects,
8389         gdk_fb_window_move_resize): Remove unnecessary sort of rectangles
8390         in region. They are already sorted. Instead just traverse them in
8391         reverse if draw_direction < 0.
8392         
8393         * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
8394         Double-clicks must be sent after the normal button_press.
8395         (gdk_fb_cursor_unhide): Remove usage of mask_off_x/y. Clean up.
8396         
8397         * gdk/linux-fb/gdkgeometry-fb.c (gdk_window_scroll):
8398         Pass _gdk_fb_screen_gc instead of NULL.
8399
8400         * gdk/linux-fb/gdkmain-fb.c (_gdk_windowing_init_check):
8401         Initialize gdk_selection_property.
8402         (gdk_event_make): Remove unused code.
8403
8404         * gdk/linux-fb/gdkcursor-fb.c:
8405         Make the pixmap for the cursor the same size as the mask. Also remove
8406         the mask_off_x/y fields in GdkCursorPrivateFB and combine
8407         _gdk_cursor_new_from_pixmap() and gdk_cursor_new_from_pixmap()
8408         Now the whole cursor is visible.
8409
8410         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
8411         Fix bug where xdest+height instead of ydest+height was used
8412         to calculate if the source and dest overlapped. This fixes the
8413         redraw bug when the main window in testgtk was scrolled when
8414         partially covered by a tall window.
8415         Copy rectangles in region in order depending on draw_direction.
8416         Also moved the draw_direction flipping of start_y and end_y into
8417         the gc functions, as this might not be what all of them want.
8418         (gdk_fb_draw_lines): Support dashed lines.
8419         (gdk_fb_draw_glyphs): Clean up glyph placement. Also fix positioning
8420         so that the text is positioned correctly (was 1 pixel high).
8421
8422         gdk/linux-fb/gdkgc-fb.c:
8423         Initialize cap_style to GTK_CAP_BUTT. This fixes a problem where
8424         all lines were drawn a pixel to short. Also checked the default of
8425         the rest of the values, and they're the same as X now.
8426
8427         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_glyph_info):
8428         Clean up pixel positioning of the glyphs. Just use bgy->top and
8429         bgy->left. Also used PANGO_PIXEL where appropriate and added 0.5
8430         to all divisions to get correct rounding behaviour.
8431
8432         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_draw_drawable_generic,
8433         gdk_fb_draw_drawable_memmove, gdk_fb_draw_drawable_aa_24):
8434         Moved start_y/end_y flip into draw_drawable implementations.
8435         Flip also x rendering when draw_direction < 0.
8436         Remove unneccesary multiply with draw_direction.
8437
8438 Wed Nov 22 14:11:19 GMT 2000  Tony Gale <gale@gtk.org>
8439
8440         * docs/tutorial/gtk-tut.sgml:
8441           - get rid of gtk_toggle_button_toggled FUD
8442           - start DND section - needs work - based on:
8443                 http://wolfpack.twu.net/docs/gtkdnd/
8444
8445 2000-11-22  Alexander Larsson  <alexl@redhat.com>
8446
8447         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
8448         Correct calculation of font metrics. Now GtkEntrys have sane
8449         size.
8450
8451 2000-11-22  Alexander Larsson  <alexl@redhat.com>
8452
8453         * gdk/gdktypes.h:
8454         Add new type GdkSpan
8455         
8456         * docs/reference/gdk/gdk-sections.txt,
8457         docs/reference/gdk/tmpl/regions.sgml, gdk/gdkregion-generic.c,
8458         gdk/gdkregion.h:
8459         Implement and document gdk_region_spans_intersect_foreach.
8460
8461         * gdk/linux-fb/Makefile.am, gdk/linux-fb/gdkrender-fb.c:
8462         Add new file gdkrender-fb.c which contains all core
8463         rendering code.
8464         Add gdk_fb_fill_rectangle_generic (old rectangle code) and
8465         gdk_fb_fill_rectangle_simple_16, gdk_fb_fill_rectangle_simple_32
8466         (optimized rectangle fillers).
8467
8468         * gdk/linux-fb/gdkdrawable-fb2.c:
8469         Move all rendering code to gdkrender-fb.c.
8470         Change from using GdkRectangles and GdkSegments for spans to GdkSpan.
8471         Use the new span intersection functions in gdk_fb_fill_spans.
8472         gdk_fb_draw_rectangle() clips filled rectangles and calls
8473         gc->fill_rectangle with the result.
8474         gdk_fb_fill_spans() gets extra argument "sorted".
8475
8476         * gdk/linux-fb/gdkevents-fb.c:
8477         Remove unused includes and defines.
8478         New function gdk_fb_get_time() to get correct time for events.
8479
8480         * gdk/linux-fb/gdkinput-ps2.c:
8481         Use gdk method of generating multiple-clicks (gdk_event_button_generate)
8482         Make sure to set the time of all events.
8483
8484         * gdk/linux-fb/gdkmain-fb.c:
8485         Use gdk_fb_get_time ().
8486
8487         * gdk/linux-fb/gdkprivate-fb.h:
8488         New virtual GC calls: fill_span & fill_rectangle.
8489         Export gdk_fb_get_time().
8490         gdk_fb_fill_spans() gets extra argument "sorted".
8491
8492         * gdk/linux-fb/mi*.c:
8493         Use GdkSpan instead of GdkRectangle.
8494         Pass correct sorted to gdk_fb_fill_spans. (sorted value taken
8495         from XFree 4 source)
8496         
8497 2000-11-22    <jrb@redhat.com>
8498
8499         * gtk/gtktreeview.c (gtk_tree_view_calc_size): It's amazing what
8500         reversing the order in an if statement will do.  Doing so managed
8501         to make the treemodelsort half work.  Other half will follow after
8502         I get the insert function fully fixed.
8503
8504 2000-11-21  Elliot Lee  <sopwith@redhat.com>
8505         * gtk/gtkmenushell.h: GdkEventButton->button can occupy significantly
8506         more than 2 bits. Besides, I need to implement an evil hack. :)
8507
8508 Tue Nov 21 14:17:51 GMT 2000  Tony Gale <gale@gtk.org>
8509
8510         * docs/tutorial/gtk-tut.sgml: minor corrections
8511
8512 2000-11-20  Jonathan Blandford <jrb@redhat.com>
8513         * gtk/gtktreemodelsort.h: Add convertion functions to let you
8514           convert to and from relative path's and iters.
8515
8516         * gtk/treestoretest.c: move to having a sorted/unsorted view.  Start
8517           testing sorting functions a bit better.  Currently broken -- will
8518           fix in morning.
8519
8520 2000-11-20  Havoc Pennington  <hp@redhat.com>
8521
8522         * gtk/gtkwidget.c: Documented a bunch of functions in here
8523         (gtk_widget_realize): Warn if you try to realize
8524         a widget with no parent that isn't a toplevel
8525         (gtk_widget_intersect): return a gboolean
8526
8527 2000-11-20  Havoc Pennington  <hp@redhat.com>
8528
8529         * gtk/gtktextview.c, gtk/gtktextlayout.c, gtk/gtktextchild.c,
8530         gtk/testtext.c: Semi-finish widget embedding. Need guffaw
8531         scrolling to be implemented in GDK to finish. Also, right now
8532         we just size_allocate all children on every layout change,
8533         which is pretty lame. Test commented out of testtext.c, 
8534         until it works better.
8535
8536 2000-11-20  Alexander Larsson  <alla@lysator.liu.se>
8537
8538         * gdk/linux-fb/gdkdrawable-fb2.c:
8539         Removed unused arguments from gdk_fb_drawable_get_pixel().
8540
8541         * gdk/linux-fb/gdkinput-ps2.c (handle_input_ps2):
8542         Renamed fidur specific mouse packet data in MouseDevice to
8543         generic. Used it in ps2 mouse handling code to avoid blocking
8544         reads.
8545
8546 Sat Nov 18 18:00:17 2000  Jonathan Blandford  <jrb@redhat.com>
8547
8548         * demos/gtk-demo/main.c: Changed to have the list become
8549         non-italic when the demo window is destroyed through an external
8550         event (like a close button).  Doing so found three bugs in the
8551         widget.
8552
8553         * demos/gtk-demo/*.c (do_*): Changed to return the toplevel window.
8554
8555         * gtk/gtkliststore.c (gtk_list_store_set_cell): emit "change" when
8556         we actually set the cell.
8557
8558         * gtk/gtktreestore.c (gtk_tree_store_set_cell): ditto
8559
8560         * gtk/gtktreeselection.c (gtk_tree_selection_real_select_node):
8561         free a leaked path.  Thanks memprof.
8562
8563 Sat Nov 18 11:58:17 2000  Owen Taylor  <otaylor@redhat.com>
8564
8565         * gdk/gdkrgb.c (gdk_rgb_allocate_images): Fix 
8566         off-by-one error when destroying allocated segments
8567         on failure. (Elliot)
8568
8569 Sat Nov 18 11:45:09 2000  Owen Taylor  <otaylor@redhat.com>
8570
8571         * gtk/gtkcalendar.c: Patch from ChiDeok Hwang to fix
8572         memleaks found by Evan Martin.
8573
8574 Fri Nov 17 20:14:20 2000  Owen Taylor  <otaylor@redhat.com>
8575
8576         * Released 1.3.2
8577         
8578         * NEWS: Updates for 1.3.2
8579
8580 2000-11-17  Tor Lillqvist  <tml@iki.fi>
8581
8582         * gdk/gdkevents.h: Add comment that GdkXEvent isn't only for XEvent,
8583         but in general for window system specific events.
8584
8585         * gtk/gtk.def
8586         * gtk/makefile.mingw.in
8587         * gtk/makefile.msc.in: Update.
8588         
8589         * gtk/gtktexttypes.h: Mark variables for export/import from DLL.
8590
8591 Thu Nov 16 16:11:39 2000  Owen Taylor  <otaylor@redhat.com>
8592
8593         * gtk/Makefile.am (EXTRA_DIST): Do not, in any circumstances,
8594         distribute gtk.immodules.
8595
8596         * gtk/Makefile.am (install-data-local): Don't install the
8597         gtk.immodules file created for the uninstalled modules;
8598         instead run gtk-query-immodules after install
8599
8600 Wed Nov 15 21:51:31 2000  Owen Taylor  <otaylor@redhat.com>
8601
8602         * modules/input/Makefile.am (im_xim_la_LDFLAGS): Point
8603         -rpath to the right install location.
8604
8605         * modules/input/Makefile.am (im_inuktitut_la_LDFLAGS): Remove
8606         -export-dynamic.
8607
8608         * gtk/gtkthemes.c (gtk_theme_engine_get): Set engine->name
8609         properly.
8610
8611 2000-11-15  Havoc Pennington  <hp@pobox.com>
8612
8613         * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): Apply
8614         patch from Mikael Hermansson to temporarily stop blinking while
8615         the user is using the keyboard to type or navigate. 
8616
8617         Also, when blinking, stay on for longer than we stay off. Also,
8618         return from start_cursor_blink if !cursor_visible, to save
8619         checking that flag all over the place before we call
8620         start_cursor_blink.
8621
8622 Thu Nov 16 01:25:51 2000  Robert Brady  <robert@suse.co.uk>
8623
8624         * gtk/gtkrc.*: Remove the locale-specific gtkrc's, as they
8625         only contain a "fontset" line, which is now ignored.
8626
8627         * gtk/gtkentry.c (gtk_entry_button_release): Make 
8628         double-click-to-select-word work.
8629         
8630 Wed Nov 15 20:16:54 2000  Owen Taylor  <otaylor@redhat.com>
8631
8632         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): 
8633         Don't move back one char when we are actually at the end of the 
8634         paragraph.
8635
8636 2000-11-15  Robert Brady  <robert@suse.co.uk>
8637
8638         * modules/input/iminuktitut.c (inuktitut_compose_seqs): 
8639         'o' < 'p'.
8640         
8641         * gtk/gtkmain.c: s/CODSET/CODESET/, include <libintl.h> for
8642         bind_textdomain_codeset.
8643
8644         (gtk_init_check): Make the warning about translating default:LTR
8645         sterner.
8646         
8647 Wed Nov 15 18:39:40 2000  Owen Taylor  <otaylor@redhat.com>
8648
8649         * **/Makefile.am : remove unecessary rules for win32-specific
8650         config-substituted targets. If you want these rules, use
8651         --enable-maintainer-mode (called automatically by autogen.sh).
8652         Stops a lot of unneccessary make-time warnings.
8653
8654         * gtk/gtktext{layout,display}.c: Factor in total width as
8655         well as screen when figuring alignment for word-wrap as well as
8656         no wrap; this is necessary to handle lines that cannot be wrapped
8657         at all.
8658
8659 2000-11-15  Havoc Pennington  <hp@redhat.com>
8660
8661         * gtk/testtext.c: Implement essential color cycling feature
8662
8663 2000-11-15  Havoc Pennington  <hp@redhat.com>
8664
8665         * gtk/gtktextview.c (changed_handler): Invalidate the side windows
8666         when we invalidate the main window.
8667
8668         * gtk/testtext.c (create_view): Get rid of text_changed_callback,
8669         GtkTextView will now invalidate the side windows for us when text
8670         changes.
8671
8672 Wed Nov 15 16:02:20 2000  Owen Taylor  <otaylor@redhat.com>
8673
8674         * gtk/gtktextview.c (changed_handler): Call scroll_calc_now()
8675         unconditionally, since we may need to update the horizontal
8676         scrollbars even if the height didn't change.
8677
8678         * gtk/gtktextlayout.c (add_preedit_attrs): Always get
8679         the extra attrs, since some of them affect size.
8680
8681         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Factor in
8682         x_offset correctly.
8683
8684 2000-11-15  Havoc Pennington  <hp@redhat.com>
8685
8686         * gtk/gtktextlayout.c (set_para_values): If indent is negative,
8687         don't move the first line out into the margin, instead move the
8688         whole paragraph in order to make space for the first line within 
8689         the margin
8690
8691 2000-11-15  Havoc Pennington  <hp@redhat.com>
8692
8693         * gtk/gtktextview.c (changed_handler): offset redraw rect by
8694         xoffset in addition to yoffset, so horizontal scrolling doesn't
8695         break redraws
8696
8697 2000-11-15  Havoc Pennington  <hp@redhat.com>
8698
8699         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Remove extra pixel
8700         from the cursor
8701         (render_layout_line): fix reversed test that caused weird
8702         underlines to get drawn
8703
8704 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
8705
8706         * gdk/linux-fb/gdkprivate-fb.h:
8707         Fix debug macros.
8708         
8709 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
8710
8711         * gdk/linux-fb/gdkprivate-fb.h:
8712         Added virtual functions set_pixel, get_color,
8713         fill_span and draw_drawable to the GC.
8714         Added global _gdk_fb_screen_gc to use instead of
8715         NULL when drawing to the screen.
8716         Added _gdk_fb_gc_calc_state() prototype.
8717
8718         * gdk/linux-fb/gdkgc-fb.c:
8719         Call _gdk_fb_gc_calc_state() on any gc state change.
8720
8721         * gdk/linux-fb/gdkglobals-fb.c:
8722         Add _gdk_fb_screen_gc
8723                 
8724         * gdk/linux-fb/gdkdrawable-fb2.c:
8725         _gdk_fb_gc_calc_state() calculates best functions
8726         for the GC state and depth.
8727         Moved bpp specialized code to separate functions.
8728         Added optimized 24 bpp AA draw_drawable.
8729
8730         * gdk/linux-fb/gdkevents-fb.c:
8731         Silence gcc warning.
8732
8733         * gdk/linux-fb/gdkimage-fb.c:
8734         Use _gdk_fb_screen_gc
8735
8736         * gdk/linux-fb/gdkwindow-fb.c:
8737         Init and use _gdk_fb_screen_gc
8738
8739         * gdk/linux-fb/mitypes.h:
8740         Remove unused types.
8741
8742 2000-11-14  Havoc Pennington  <hp@pobox.com>
8743
8744         * gtk/gtktextlayout.c (add_cursor): use PANGO_PIXELS() to convert
8745         to pixels
8746
8747 2000-11-14  Havoc Pennington  <hp@pobox.com>
8748
8749         * gtk/testtextbuffer.c (fill_buffer): change "offset" to "rise"
8750
8751         * gtk/gtktexttypes.h (GTK_TEXT_UNKNOWN_CHAR): Add macro for
8752         unknown char, no real reason we were using a variable. 
8753         Remove gtk_text_unknown_char variable. Fix all the text widget
8754         files accordingly.
8755
8756         * gtk/gtktexttypes.c: Change "unknown character" to 0xFFFC, 
8757         since the Unicode spec seems to prefer that character for our
8758         purposes.
8759
8760 Wed Nov 15 02:18:01 2000  Robert Brady  <robert@suse.co.uk>
8761
8762         * gtk/gtkrc.c (gtk_rc_get_im_module_file): The return 
8763         value of g_getenv() isn't freeable, so g_strdup it.
8764
8765         * modules/input/inuktitut.c: Inuktitut input method.
8766
8767         * modules/input/Makefile.am: Build this.
8768         
8769 2000-11-14  Elliot Lee  <sopwith@redhat.com>
8770
8771         * gtk/Makefile.am: Install gtk.immodules, needed for operation
8772         of gtk programs.
8773
8774 Tue Nov 14 20:13:06 2000  Owen Taylor  <otaylor@redhat.com>
8775
8776         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): Fix
8777         reversed > that was causing Home to go to end of previous line.
8778
8779         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_filter_keypress): Ignore
8780         modified-keypresses (leave for bindings.)
8781
8782         * modules/input/Makefile.am: Remove useless -export-dynamic
8783         from module LDFLAGS.
8784
8785 2000-11-14  Havoc Pennington  <hp@redhat.com>
8786
8787         * gdk/gdkpango.c (gdk_draw_layout_line): Draw underlines one pixel
8788         higher.
8789
8790         * gtk/gtktextdisplay.c (render_layout_line): Take rise into
8791         account. Also, render rise, underline, background, etc. for
8792         pixbufs as well as text. Also, draw underlines one pixel higher.
8793
8794         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): Add a
8795         PangoAttribute for the rise, so it gets drawn properly. Also,
8796         add the GtkTextAppearance attribute for pixbuf/widget segments
8797         as well; we should go ahead and have rise, underline, background,
8798         stipple work for those
8799
8800         * gtk/gtktexttag.c: Rename "offset" property to "rise" to match
8801         Pango
8802
8803 2000-11-15  Tor Lillqvist  <tml@iki.fi>
8804
8805         * gtk/makefile.{mingw,msc}.in (gtk_OBJECTS): Add new objects.
8806
8807         * gtk/gtk.def: Update.
8808
8809         * gtk/gtkrc.c: Can't check for G_OS_WIN32 until glib.h has been
8810         included.
8811         (gtk_rc_get_im_module_file): Use run-time installation directory
8812         on Win32.
8813
8814         * gdk/win32/rc/gdk.rc: Remove.
8815         * gdk/win32/rc/gdk.rc.in: New file.
8816         * gdk/win32/rc/Makefile.am: New file
8817         * gdk/win32/Makefile.am: Corresponding changes.
8818
8819         * gtk/gtk.rc: Remove.
8820         * gtk/gtk-win32.rc.in: New file.
8821         * gtk/Makefile.am: Corresponding changes.
8822
8823         * configure.in: Corresponding changes.
8824
8825         * gtk/gtkcompat.h.win32: Remove, useless. A distribution already
8826         has a built gtkcompat.h. Developers using CVS code on Win32 can
8827         hand-edit it from gtkcompat.h.in.
8828
8829         * gtk/makefile.{mingw,msc}.in: Correspondingly don't try to make
8830         gtkcompat.h from gtkcompat.h.win32.
8831
8832 2000-11-14  Havoc Pennington  <hp@redhat.com>
8833
8834         * gtk/gtktextview.c (gtk_text_view_drag_motion): Fix drag-and-drop
8835         to default to GDK_ACTION_MOVE if the drag is within a single
8836         widget. Defaults to GDK_ACTION_COPY between widgets.
8837
8838 Mon Nov 13 14:43:48 2000  Owen Taylor  <otaylor@redhat.com>
8839
8840         * demos/Makefile.am (test-inline-pixbufs.h): Fix srcdir != builddir
8841
8842         * gtk/Makefile.am (INCLUDES): Add -I$(builddir)/gtk
8843
8844         * gtk/stock-icons/Makefile.am (gtkstockpixbufs.h): Handles
8845         srcdir != builddir
8846
8847         * modules/input/Makefile.am (INCLUDES): add $(top_srcdir)/gdk
8848
8849         * configure.in (GTK_VERSION): Up to 1.3.2
8850
8851         * modules/input/Makefile.am (im_xim_la_SOURCES): Add 
8852         gtkimcontextxim.h
8853
8854         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): Add
8855         missing doc comment.
8856
8857 2000-11-14  Alexander Larsson  <alexl@redhat.com>
8858
8859         * modules/linux-fb/basic.c:
8860         Use the glib iconv wrappers.
8861
8862 2000-11-13  Havoc Pennington  <hp@pobox.com>
8863
8864         * demos/gtk-demo/textview.c: spiff up the demo a bit; reveals
8865         still more bugs.
8866
8867         * gtk/gtktextview.c (gtk_text_view_value_changed): don't try to
8868         scroll the GdkWindows before realization.
8869
8870 2000-11-13  Havoc Pennington  <hp@redhat.com>
8871
8872         * gtk/gtktextdisplay.c (gtk_text_render_state_update): fix bug 
8873         where GC didn't always get updated properly
8874
8875         * demos/gtk-demo/textview.c (create_tags): Use subattributes
8876         of fonts instead of setting the entire font
8877
8878         * gtk/testtext.c (fill_example_buffer): Use "size" instead of
8879         setting entire font
8880
8881         * gtk/gtkdialog.c (gtk_dialog_add_button): Fix some warnings
8882
8883         * gtk/gtktexttag.h, gtk/gtktexttag.c: Explode font_desc into 
8884         a bunch of individually-settable font attributes. You can still 
8885         use the "font" and "font_desc" args, they just set all the font
8886         attributes at once.
8887
8888 2000-11-13 Elliot Lee <sopwith@redhat.com>
8889
8890         * gdk/gdk.h: Add a couple of missing G_GNUC_CONST's.
8891
8892 Mon Nov 13 14:29:32 2000  Jonathan Blandford  <jrb@redhat.com>
8893
8894         * gtk/gtktreemodel.c (gtk_tree_path_copy): confirm path != NULL
8895         * gtk/gtktreemodel.c (gtk_tree_path_free): ditto
8896
8897         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): make
8898         work better.
8899
8900 2000-11-13  Havoc Pennington  <hp@redhat.com>
8901
8902         * gtk/gtkimmodule.c (gtk_im_module_init): Free the filename of 
8903         the module file.
8904
8905         * gtk/gtktexttag.c (gtk_text_attributes_copy): fix memory leak of
8906         dest->language
8907
8908         * gtk/testtext.c: Test pixels above/below/inside paragraphs
8909         settings
8910
8911         * gtk/gtktextview.c: Implement object args and setters/getters for
8912         all the aspects of the GtkTextAttributes that are not set from
8913         GtkWidget attributes. This is spacing, justification, margins,
8914         etc.
8915
8916         (gtk_text_view_set_arg)
8917         (gtk_text_view_get_arg): implement get/set for editable, wrap mode
8918         args
8919         (gtk_text_view_class_init): Add args for justify, left_margin,
8920         right_margin, indent, and tabs
8921         
8922
8923         * gtk/gtktextlayout.c (set_para_values): fix to display indent
8924         attribute properly
8925
8926         * gtk/gtktexttag.c: Remove left_wrapped_line_margin attribute, 
8927         replace with indent attribute
8928
8929         * gtk/gtktextlayout.c (set_para_values): multiply indent by
8930         PANGO_SCALE
8931
8932         * gtk/gtktextdisplay.c (render_para): Use PangoLayoutIter,
8933         rearranging code to do that
8934         (gtk_text_layout_draw): Pass in the y for the whole LineDisplay,
8935         i.e. don't subtract the top_margin first, just to keep
8936         all margin-futzing in one place.
8937
8938         * gdk/gdkpango.c (gdk_draw_layout): Use PangoLayoutIter
8939
8940         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Remove
8941         special case of last line, Pango now handles this itself.
8942         (gtk_text_layout_get_iter_at_pixel): Fix incorrect clamp of the 
8943         Y coordinate
8944         (gtk_text_layout_move_iter_to_x): port to use PangoLayoutIter
8945         (find_display_line_above): wasn't moving the byte index as it
8946         iterated over lines, so always returned byte 0. Also, port to use
8947         PangoLayoutIter.
8948         (find_display_line_below): same problem as
8949         find_display_line_above. Also, port to use PangoLayoutIter.
8950
8951 2000-11-13  Alexander Larsson  <alexl@redhat.com>
8952
8953         * gdk/linux-fb/*.[ch]:
8954         Massive reindent to gtk+ standard. My hands hurt.
8955
8956         * gdk/linux-fb/gdkcolor-fb.c:
8957         Move GdkColorPrivateFB from inherited to windowing_data
8958
8959         * gdk/linux-fb/gdkcursor-fb.c:
8960         _gdk_cursor_new_from_pixmap made static
8961
8962         * gdk/linux-fb/gdkdnd-fb.c:
8963         GdkDragContextPrivate moved to windowing_data
8964
8965         * gdk/linux-fb/gdkdrawable-fb2.c:
8966         Removed endian.h, use glib endianness macros instead
8967         Some cleanups in the usage of GDK_DRAWABLE_FBDATA
8968         and GDK_DRAWABLE_IMPL_FBDATA
8969
8970         * gdk/linux-fb/gdkfont-fb.c:
8971         Add empty gdk_font_load(). Needed for linking of Gtk+.
8972
8973         * gdk/linux-fb/gdkimage-fb.c:
8974         Removed endian.h, use glib endianness macros instead
8975         Moved GdkImagePrivateFB to windowing_data
8976         gdk_image_new_bitmap didn't always allocate enough
8977         memory.
8978
8979         * gdk/linux-fb/gdkinput-ps2.c:
8980         Added semi-working support for MS serial mice.
8981
8982         * gdk/linux-fb/gdkprivate-fb.h:
8983         s/GdkWindowPrivate/GdkWindowObject/
8984         Removed GdkWindowPrivate typedef
8985         s/GDK_DRAWABLE_P/GDK_DRAWABLE_FBDATA/
8986         Removed GDK_DRAWABLE_P
8987         Move GdkColorPrivateFB from inherited to windowing_data
8988         Moved GdkImagePrivateFB to windowing_data
8989
8990         * gdk/linux-fb/gdkvisual-fb.c:
8991         Removed some unused debug code.
8992
8993         * gdk/linux-fb/gdkwindow-fb.c:
8994         Use stock cursors instead of including X headers.
8995         s/GdkWindowPrivate/GdkWindowObject/
8996
8997         * gdk/linux-fb/mitypes.h:
8998         Removed unused types.
8999
9000         * modules/linux-fb/basic.c:
9001         Use the pango fribidi wrappers.
9002
9003 2000-11-13  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
9004
9005         * gdk/linux-fb/gdkcolor-fb.c, gdk/nanox/gdkmain-nanox.c,
9006         gdk/win32/gdkcolor-win32.c, gdk/win32/gdkwin32id.c,
9007         gdk/x11/gdkcolor-x11.c, gdk/x11/gdkvisual-x11.c, gdk/x11/gdkxid.c,
9008         gtk/gtkgc.c, gtk/gtkrc.c, gtk/gtktext.c: GCompareFunc ->
9009         GEqualFunc where applicable.
9010         
9011         * gdk/linux-fb/gdkpango-fb.c: pango_font_description_compare ->
9012         pango_font_description_equal as changed in pango.
9013         
9014         * gdk/nanox/gdkmain-nanox.c: gdk_xid_compare -> gdk_xid_equal.
9015
9016         * gdk/win32/gdkcolor-win32.c: gdk_colormap_cmp -> gdk_colormap_equal.
9017
9018         * gdk/win32/gdkwin32id.c: gdk_handle_compare -> gdk_handle_equal.
9019
9020         * gdk/x11/gdkcolor-x11.c: gdk_colormap_cmp -> gdk_colormap_equal.
9021
9022         * gdk/x11/gdkvisual-x11.c: gdk_visual_compare -> gdk_visual_equal.
9023
9024         * gdk/x11/gdkxid.c: gdk_xid_compare -> gdk_xid_equal.
9025
9026         * gtk/gtkgc.c: gtk_gc_key_compare -> gtk_gc_key_equal and
9027         gtk_gc_drawable_compare -> gtk_gc_drawable_equal.
9028
9029         * gtk/gtkrc.c: gtk_rc_style_compare -> gtk_rc_style_equal and
9030         gtk_rc_styles_compare -> gtk_rc_styles_equal.
9031
9032 2000-11-12  Havoc Pennington  <hp@pobox.com>
9033
9034         * demos/gtk-demo/Makefile.am (democodedir): change demo install
9035         dir to datadir/gtk+-2.0/demo
9036
9037         * demos/gtk-demo/textview.c: Text widget demo; reveals all 
9038         sorts of text widget and Pango font bugs. Urgh.
9039
9040         * demos/gtk-demo/Makefile.am (demos): Add textview.c
9041
9042         * demos/gtk-demo/main.c (create_tree): Add instructions at top of
9043         tree that you should double click to see the demo. Fix 
9044         types of variables to reflect changed return values from 
9045         GtkTreeStore and GtkTreeViewColumn constructors.
9046
9047         * gtk/gtktextbuffer.c (gtk_text_buffer_new): ref/sink the
9048         newly-created buffer to prepare for GObject semantics
9049
9050         * gtk/testtext.c: don't leak the buffer with GObject semantics
9051
9052         * gtk/testtextbuffer.c: ditto
9053         
9054 2000-11-12  Havoc Pennington  <hp@pobox.com>
9055
9056         Rename this testgtk to gtk-demo to avoid confusion, and 
9057         install it so people can use it as a supplement to 
9058         the documentation.
9059         
9060         * demos/gtk-demo: Moved from demos/testgtk
9061
9062         * demos/testgtk: Removed
9063
9064         * configure.in: make Makefile in gtk-demo
9065         
9066         * demos/gtk-demo/Makefile.am: Install sample source to 
9067         datadir/gtk-demo (maybe there's a better place?), and 
9068         rename the binary to gtk-demo
9069         
9070         * demos/gtk-demo/main.c (load_file): Load installed sample
9071         source if source isn't found in pwd.
9072
9073 2000-11-09  Havoc Pennington  <hp@pobox.com>
9074
9075         * gtk/gtkentry.c (gtk_entry_class_init): Add an "invisible_char" 
9076         argument to set the char displayed when visibility == FALSE
9077         (gtk_entry_create_layout): If !entry->visible, replace 
9078         all chars with the "invisible char"
9079
9080         * gtk/testgtk.c: Test the invisible_char deal
9081         
9082 Mon Nov 13 02:16:33 2000  Robert Brady  <robert@suse.co.uk>
9083
9084         * gtk/gtkstyle.c (gtk_style_init): Fall back to "fixed" if we
9085         can't get a native font in the right encoding.
9086
9087 Mon Nov 13 00:09:29 2000  Robert Brady  <robert@suse.co.uk>
9088
9089         * configure.in: Chinese .pos have been renamed to zh_CN and zh_TW
9090         respectively.
9091
9092 Sun Nov 12 19:11:42 2000  Owen Taylor  <otaylor@redhat.com>
9093
9094         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_next_line):
9095         Fix warning when moving between paragraphs.
9096
9097         * gtk/gtkentry.[ch]: Change move => move_cursor, 
9098         delete => delete_from_cursor, insert => insert_at_cursor
9099
9100 Sun Nov 12 22:52:51 2000  Robert Brady  <robert@suse.co.uk>
9101
9102         * modules/input/imviqr.c: A vietnamese VIQR-based input method.
9103
9104         * modules/input/imthai-broken.c: A Thai input method for use if
9105         Thai keys are really generating Latin1 keysyms.
9106
9107         * modules/input/Makefile.am: Build these.
9108
9109 Sun Nov 12 22:15:35 2000  Robert Brady  <robert@suse.co.uk>
9110
9111         * gtk/gtkfileselection.c, gdk/win32/gdkfont-win32.c: 
9112         g_filename_{to,from}_utf8 now takes an extra parameter.
9113
9114         * gtk/gtkcalendar.c (gtk_calendar_init): Convert output of
9115         strftime into UTF-8.
9116
9117         (column_from_x, gtk_calendar_paint_day_names): Support RTL
9118         calendars.
9119
9120         (gtk_calendar_paint_day_names): Draw day names in the right 
9121         place.
9122         
9123 Sun Nov 12 14:10:09 2000  Owen Taylor  <otaylor@redhat.com>
9124
9125         * gdk/x11/gdkselection-x11.c (gdk_utf8_to_compound_text): Fix
9126         problem with using result of g_get_charset() backwards -
9127         pointed out by Mikael Hermansson <mikeh@bahnhof.se>.
9128
9129         * gtk/gtkwindow.c (gtk_window_compute_hints): Support
9130         negative min_width/height and max_width/height to
9131         mean "requisition"; this allows setting a window
9132         to be user-resizable in only one direction easily.
9133
9134         * gtk/testgtk.c (create_main_window): Remove hard-coded
9135         usize - set a default size in the vertical direction.
9136
9137 Sun Nov 12 13:33:01 2000  Owen Taylor  <otaylor@redhat.com>
9138
9139         * gtk/gtkrange.c: Add some missing casts. Support 
9140         2 and 3 button clicks on the arrows to mean 
9141         "move by pages" and "jump to end". (Like gtkspinbutton)
9142
9143 2000-11-12 Hans Breuer <Hans@Breuer.Org>
9144
9145         * gdk/win32/makefile.msc : reflect build module changes
9146
9147         * gdk/win32/gdkcursor-win32.c : can't cast to impl type directly
9148         from GdkPixmap*, cast implementation member instead.
9149
9150         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_drawable) : The
9151         passed in drawable is of type GdkDrawableImplWin32, the GdkPixmap *src 
9152         maybe either GdkDrawable or GdkDrawableImpl. Corrected all casts, add
9153         more Gdi functions return value checking. 
9154         (gdk_win32_draw_image) : use IMAGE_PRIVATE_DATA to get on the
9155         GdkImagePrivateWin32 *.
9156
9157         * gdk/win32/gdkevents-win32.c : Disable the SetCapture call to make
9158         menus useable again. Add #pragma message to keep reminded on this issue.
9159         (gdk_event_translate) : don't generate GDK_EXPOSE events for InputOnly
9160         windows. This allows to enable backing store on Win32!
9161
9162         * gdk/win32/gdkimage-win32.c (_gdk_win32_get_image) : the passed
9163         in drawable is of impl type. Correct specific type checks appropriate.
9164  
9165         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_create_from_data) : check 
9166         GDK_WINDOW_DESTROYED before allocating new resources.
9167
9168         * gdk/win32/gdkselection-win32.c : Handle GDK_WINDOW_DESTROYED case
9169
9170         * gdk/win32/gdkwindow-win32.c : more Gdi return value checking,
9171         (gdk_window_foreign_new) initialize parent handle.
9172         (gdk_window_destroy_notify) add GDK_IS_WINDOW check
9173
9174         * gdk/win32/gdkgeometry-win32.c (_gdk_window_move_resize_child) :
9175         Let the GDI invalidate the window on MoveWindow call to fix scrolling
9176         problems (e.g. main buttons in testgtk). 
9177
9178 Sat Nov 11 23:07:30 2000  Owen Taylor  <otaylor@redhat.com>
9179
9180         * gtk/gtkentry.c (gtk_entry_key_press): Call 
9181         gtk_widget_activate for GDK_Return.
9182
9183         * gtk/gtkentry.c (gtk_entry_preedit_changed_cb): Fix handling
9184         of preedit cursor position.
9185
9186 Sun Nov  5 04:24:53 2000  Owen Taylor  <otaylor@redhat.com>
9187
9188         * gtk/gtkcellrenderertextpixbuf.c: Make parent_class
9189         static.
9190
9191 Tue Sep 19 10:54:22 2000  Owen Taylor  <otaylor@redhat.com>
9192
9193         * modules/input/{gtkimcontextxim.[ch],imxim.c}: Rip
9194         out support for multiple locales; that simple doesn't
9195         work reliably with current Xlib
9196
9197         * gtk/gtkimcontext*.[ch] gtk/gtkimmulticontext.[ch]
9198         gtk/gtktextlayout.[ch] gtk/gtktextview.c gtk/gtkentry.c: 
9199         Add support for positioning the cursor within the preedit string.
9200
9201 Mon Sep 18 23:56:32 2000  Owen Taylor  <otaylor@redhat.com>
9202
9203         * modules/input/{imxim.c,gtkimcontextxim.[ch]}: Start
9204         at XIM input method module.
9205
9206         * gtk/gtktextview.c: Check for bindings after passing
9207         events to im context filter.
9208
9209 Mon Sep 18 11:50:51 2000  Owen Taylor  <otaylor@redhat.com>
9210
9211         * gtk/gtktextlayout.c (add_preedit_attrs): Handle
9212         empty attribute lists properly.
9213
9214 Sun Sep 17 10:08:16 2000  Owen Taylor  <otaylor@redhat.com>
9215
9216         * gtk/queryimmodules.c (main): Return non-zero exit
9217         status if errors were encountered querying any
9218         modules.
9219
9220         * modules/input/Makefile.am (moduledir): remove
9221         leftover bin program target.
9222
9223         * docs/make-todo: Fix typo in error message.
9224
9225 Sat Sep 16 14:04:30 2000  Owen Taylor  <otaylor@redhat.com>
9226
9227         * configure.in: Add modules/input/Makefile
9228
9229 Sat Sep 16 14:01:52 2000  Owen Taylor  <otaylor@redhat.com>
9230
9231         * gtk/gtk.h: include gtkmodule.h gtkoldeditable.h,
9232         don't include gtkthemes.h.
9233
9234         * gtk/testgtk.c gtk/testtext.c: Set environment variables
9235         to point
9236
9237         * gtk/Makefile.am: Add new .c and .h files, build 
9238         gtk-query-immodules and use it to create a gtk.immodules
9239         file for use of test programs.
9240
9241         * gtk/gtkpreview.c: remove extra blank line.
9242
9243 Sat Sep 16 13:21:04 2000  Owen Taylor  <otaylor@redhat.com>
9244
9245         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_add_table): 
9246         Add the ability to add extra tables beyond the default
9247         one, and also the ability to have compose sequences 
9248         that are prefixes of other compose sequences. 
9249
9250         * gtk/gtkimcontextsimple.c: Export a preedit string which
9251         consists of possible candidates for keystrokes that have
9252         been entered but not yet committed.
9253
9254         * gtk/gtkimcontext.[ch] gtk/immulticontext.[ch]
9255         gtk/gtkimcontextsimple.[ch]: add gtk_im_context_reset()
9256
9257         * gtk/gtkmulticontext.[ch] (gtk_im_multicontext_append_menuitems): 
9258         Add a function to add input-method switching menu items
9259         to a menu.
9260
9261         * gtk/gtkimmulticontext.[ch]: Properly handly set_client_window
9262         when switching input methods.
9263
9264         * gtk/gtkimcontextsimple.[ch]: Change the format of
9265         the compose table to allow compose tables of different
9266         lengths / sequence.
9267
9268 Sat Sep 16 13:05:48 2000  Owen Taylor  <otaylor@redhat.com>
9269
9270         * gtk/gtkimmodule.[ch]: Support routines for loading
9271         GtkIMContext implementations dynamically at runtime.
9272
9273         * modules/input/imcyrillic-translit.c: A sample input
9274         method (based on GtkIMContextSimple with an extra table),
9275         which demonstrates preedit strings and the module
9276         system for input modules
9277
9278         * gtk/queryimmodules.c: Program to query the available
9279         input modules and write the results into a file.
9280          
9281         * gtk/gtkrc.[ch] (gtk_rc_get_im_module_file): Add
9282         extra config options "im_module_file" (cache file for
9283         input method modules), and "im_module_path" - path
9284         to look for modules when generating cache file.
9285
9286         This doesn't scale.
9287
9288 Sat Sep 16 13:09:06 2000  Owen Taylor  <otaylor@redhat.com>
9289
9290         * gtk/gtkthemes.[ch] gtk/gtkmodule.[ch]: Move most of the 
9291         generic code from gtkthemes into a new abstraction
9292         GtkModule which has the logic for implementing
9293         a loadable module which implements a number of 
9294         GObject types.
9295
9296 Sat Sep 16 13:07:13 2000  Owen Taylor  <otaylor@redhat.com>
9297
9298         * gtk/gtkeditable.[ch]: Convert GtkEditable from
9299         a class into an interface  
9300         
9301         * gtk/gtkoldeditable.[ch]: Move the old editable
9302         implementation into here, so legacy widgets can
9303         still rely on the implemenation. GtkOldEditable
9304         exports GtkEditable. Make selection handling
9305         code use new text conversion functions (and
9306         handle UTF-8 as a side-effect). Use GtkClipboard
9307         for CLIPBOARD.
9308
9309         * gtk/gtktext.[ch] gtk/gtkcombo.c gtk/gtkspinbutton.c:
9310         Adopt to match above changes.
9311
9312         * gtk/gtkentry.[ch]: Implement GtkEditable directly,
9313         avoid GtkOldEditable implementation. Restructure
9314         to reduce number of places that modify state directly.
9315         Move to GtkBindingSet. Display the preedit string.
9316         Queue recomputation of PangoLayout and scroll position
9317         to improve effiency of doing complex changes naively.
9318         Add a menu with cut/copy/paste and input method selection.
9319
9320 Thu Sep 14 22:11:05 2000  Owen Taylor  <otaylor@redhat.com>
9321
9322         * gtk/gtktextlayout.[ch]: Add gtk_text_layout_set_preedit_string()
9323         to set preedit string and attributes; display preedit string by
9324         inserting string and attributes at cursor when creating the
9325         GtkTextLineDisplay.
9326
9327         * gtk/gtktextlayout.c: Move all conversions between byte
9328         positions in PangoLayout and GtkTextIter into new functions
9329         line_display_iter_to_index/index_to_iter that properly
9330         handle the preedit string.
9331
9332         * gtk/gtktextmark.[ch]: Restore gtk_text_mark_get_name, modify
9333         it to return const char * (eventually will end up
9334         as GCONST char *, most likely.)
9335
9336         * gtk/gtktextview.[ch]: Handle the preedit string, call
9337         gtk_im_context_reset() as necessary, add a menu to switch
9338         input methods.
9339         
9340         * gtk/gtktextlayout.[ch]: Remove useless
9341         gtk_text_layout_get_log_attrs() function.
9342
9343 2000-11-11  Tor Lillqvist  <tml@iki.fi>
9344
9345         * gdk/gdk.def
9346         * gtk/gtk.def: Update.
9347
9348         * gdk/win32/*.c: Add last argument to g_type_register_static()
9349         calls.
9350
9351         * gdk/win32/gdkwindow-win32.c: Silence gcc -Wall.
9352
9353         * gdk/win32/gdkevents-win32.c: Handle MSH_MOUSEWHEEL messages
9354         generated by older wheel mouse drivers. Get the correct y
9355         coordinate from WM_MOUSEWHEEL messages.
9356
9357         * gdk/win32/gdkgc-win32.c (gdk_win32_cap_style_to_string,
9358         gdk_win32_fill_style_to_string, gdk_win32_function_to_string,
9359         gdk_win32_join_style_to_string, gdk_win32_line_style_to_string):
9360         Debugging functions.
9361
9362         * gdk/win32/gdkprivate-win32.h: Declare them.
9363
9364         * gdk/win32/gdkinput-win32.h: Add declaration for
9365         gdk_input_window_destroy().
9366
9367         * gtk/makefile.mingw.in: Pass -DGTK_VERSION. Add gtktreemodel.o.
9368
9369 Fri Nov 10 19:06:41 2000  Jonathan Blandford  <jrb@redhat.com>
9370
9371         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): New
9372         function to help handle keeping things in sync.
9373
9374 Fri Nov 10 12:10:34 2000  Jonathan Blandford  <jrb@redhat.com>
9375
9376         * gtk/gtkliststore.c (gtk_model_simple_class_init): use the new
9377         BOXED marshallers.
9378
9379         * gtk/gtkliststore.c (gtk_list_store_get_column_type): Add this.
9380         (gtk_list_store_class_init): use the new BOXED marshallers.
9381
9382         * gtk/gtktreestore.c (gtk_tree_store_new_with_types): change
9383         new_with_values to new_with_types.
9384         (gtk_tree_store_get_column_type): add this.
9385         (gtk_tree_store_class_init): use the new BOXED marshallers.
9386
9387         * gtk/gtkmarshal.list: Added a number of BOXED marshallers to
9388         mirror some POINTER marshallers.
9389
9390 Thu Nov  9 11:23:22 2000  Jonathan Blandford  <jrb@redhat.com>
9391
9392         * gtk/gtktreemodel.h (struct _GtkTreeIter): added more fields to
9393         allow more interesting iterators.  Also, made the lifecycle of
9394         iterators more explicit.
9395
9396         * gtk/gtktreemodelsort.[ch]: New model for sorting.
9397
9398         * gtk/gtk-boxed.defs (GtkTreeIter, GtkTreePath): Added two boxed
9399         types.
9400
9401 2000-11-09  Alexander Larsson  <alexl@redhat.com>
9402
9403         * demos/testgtk/menus.c:
9404         Changes to make the new testgtk compile after
9405         gtk_menu_append was removed.
9406
9407         * gdk/linux-fb/gdkdrawable-fb2.c
9408         (gdk_fb_get_depth, gdk_fb_get_visual,
9409         gdk_drawable_impl_fb_class_init): Implement
9410         these drawable functions. Now GtkImages work again.
9411
9412         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Change prototype.
9413
9414         * gdk/linux-fb/gdkprivate-fb.h (_gdk_fb_get_image): Change prototype.
9415         
9416         * gdk/linux-fb/gdkmain-fb.c (fb_modes_parse_mode,
9417         gdk_fb_setup_mode_from_name, gdk_fb_set_mode, gdk_fb_display_new);
9418         Parse /etc/fb.modes, use the environment variables GDK_DISPLAY_MODE,
9419         GDK_DISPLAY_DEPTH, GDK_DISPLAY_WIDTH, GDK_DISPLAY_HEIGHT.
9420
9421 2000-11-08  Havoc Pennington  <hp@pobox.com>
9422
9423         * gtk/gtktexttag.c (gtk_text_tag_class_init): Add visible and
9424         visible_set args, don't know where these had gone, I thought they
9425         used to be there
9426
9427         * gtk/testtext.c: Add a menu item to apply invisibility tag;
9428         now we can test the feature and see that it's totally broken.
9429
9430 2000-11-08  Havoc Pennington  <hp@pobox.com>
9431
9432         Make DND copy pixbufs and tags when source and target share a 
9433         tag table.
9434         
9435         * gtk/gtktextview.c (gtk_text_view_drag_data_get): provide the
9436         in-process GTK_TEXT_BUFFER_CONTENTS target
9437         (gtk_text_view_drag_data_received): Paste from
9438         GTK_TEXT_BUFFER_CONTENTS if we receive it.
9439
9440 2000-11-08  Alexander Larsson  <alexl@redhat.com>
9441
9442         * docs/Changes-2.0.txt: Add note about GtkMenuPositionFunc
9443         API changes.
9444
9445         * gtk/gtkmenu.c: Add support for scrolling menus.
9446         Remove gtk_menu_append/prepend/insert, these have been moved to
9447         gtkcompat.h as #defines.
9448
9449         * gtk/gtkcompat.h.in:
9450         Add compatibility #defines for gtk_menu_append/prepend/insert
9451
9452         * gtk/gtkmenu.h: Add data needed for scrolling menus.
9453         GtkMenuPositionFunc gets an extra argument push_in.
9454         gtk_menu_append/prepend/insert removed.
9455         
9456         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu): Change menu
9457         positioning behaviour to fit to scrolling menus.
9458
9459         * gtk/gtkmenuitem.c (gtk_menu_item_forall): Don't recurse
9460         into menuitem->submeny. That is wrong, and broke torn
9461         off submenus of torn off menus, since they were unrealized
9462         when the first menu was unrealized.
9463
9464         * gtk/gtkmenushell.[ch]: Virtualize gtk_menu_shell_insert() and
9465         gtk_menu_shell_select_item() since these need to be overridden in
9466         GtkMenu.
9467
9468         * gtk/gtkoptionmenu.c (gtk_opttion_menu_position): Change menu
9469         positioning behaviour to fit to scrolling menus.
9470         (gtk_option_menu_key_press, gtk_option_menu_button_press): Select
9471         the current item so that it is prelighted when the menu pops up.
9472         This is a workaround to the fact that the menu doesn't get the
9473         initial enter event (due to grabs).
9474
9475         * gtk/gtkfilesel.c, gtk/gtkinputdialog.c, gtk/testgtk.c:
9476         s/gtk_menu_append/gtk_menu_shell_append/
9477
9478         * gtk/gtknotebook.c:
9479         s/gtk_menu_insert/gtk_menu_shell_insert/
9480
9481         * gtk/testgtk.c (create_menu, create_menus):
9482         Create the first menu with 50 items so that menu scrolling
9483         can be tested.
9484         
9485         
9486         Patch from Jonathan Blandford  <jrb@redhat.com>
9487
9488         * gtk/gtkmenuitem.[ch] (gtk_menu_item_toggle_size_request): new
9489         system to handle size requests.  First, we ask what the size of
9490         the toggle is.  Then, when allocating the size, we allocate the
9491         toggle_size first.  This way we can have multiple menu-item
9492         classes w/o needing a seperate class for each.
9493
9494         * gtk/gtkmenu.c (gtk_menu_size_request): Actually use the new system.
9495         * gtk/gtkmenu.c (gtk_menu_size_allocate): Use the new system.
9496
9497         * gtk/gtkcheckmenuitem.c
9498         (gtk_check_menu_item_toggle_size_request): New function to handle
9499         the toggle size-request.
9500
9501 2000-11-07  Havoc Pennington  <hp@redhat.com>
9502
9503         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location):
9504         Half-ass somewhat fix this function, so that scrolling to the
9505         insertion point works. Pango hacking is in the future to really
9506         fix it.
9507
9508         * gtk/gtktextview.c (gtk_text_view_drag_data_get): Don't calculate
9509         length of data, no longer used.
9510
9511         * gtk/gtktextbuffer.c (gtk_text_buffer_finalize): move destroy
9512         method contents in here, get rid of destroy method
9513         (gtk_text_buffer_insert_range): Fix some g_return_if_fail checks
9514         that were backward. Remove debug spew.
9515         (cut_or_copy): Make the clipboard work with insert_range to
9516         preserve tags and pixbufs, not just the primary selection.
9517
9518 2000-11-07  Havoc Pennington  <hp@redhat.com>
9519
9520         * gtk/gtktextmark.c (gtk_text_mark_is_visible): rename 
9521         to gtk_text_mark_get_visible
9522
9523         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): fix
9524         bug that was generating an invalid iterator
9525
9526         * gtk/gtktextiter.c (gtk_text_iter_get_offset): move call to
9527         ensure_char_offsets() in front of code placing the iter in an
9528         invalid state.
9529
9530         * gtk/gtktextbuffer.c (gtk_text_buffer_paste_primary):
9531         make override_location arg const
9532         (paste): Replace the selection if we paste into the 
9533         current selection
9534
9535         * gtk/gtkselection.h: Remove "GtkSelectioData"
9536         (struct _GtkSelectionData): move the definition here.
9537
9538         * gtk/gtktextbuffer.c (gtk_text_buffer_update_primary_selection):
9539         Export the GTK_TEXT_BUFFER_CONTENTS target for in-process copies
9540
9541         * gtk/gtktextiter.c (gtk_text_iter_get_tags): New function
9542
9543         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_range): implement
9544         (gtk_text_buffer_insert_range_interactive): implement
9545         (gtk_text_buffer_get_tags): Remove, replaced by
9546         gtk_text_iter_get_tags()
9547
9548         * gtk/gtktextiter.c (gtk_text_iter_forward_search): Add a search
9549         limit parameter, to avoid infinite linear scan.
9550         (gtk_text_iter_backward_search): Add search limit
9551         (gtk_text_iter_forward_find_char): Add search limit
9552         (gtk_text_iter_backward_find_char): Add search limit
9553
9554 2000-11-07  Alexander Larsson  <alla@lysator.liu.se>
9555
9556         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
9557         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkimage-fb.c,
9558         gdk/linux-fb/gdkpango-fb.c, gdk/linux-fb/gdkpixmap-fb.c,
9559         gdk/linux-fb/gdkwindow-fb.c:
9560         use g_object_new() instead of g_type_create_instance() which
9561         is a private function for fundamental type implementations.
9562
9563         * gdk/linux-fb/gdkinput-ps2.c:
9564         Use MEDIUMRAW instead of RAW keycodes. Remove keyboard state-table
9565         instead just store the current modifier state. Add a (somewhat broken)
9566         keyboard input parser for XLATE mode too, if we couldn't use MEDIUMRAW.
9567         Rename exported function gdk_input_ps2_get_mouseinfo to
9568         gdk_input_get_mouseinfo.
9569
9570         * gdk/linux-fb/gdkmain-fb.c, gdk/linux-fb/gdkprivate-fb.h,
9571         gdk/linux-fb/gdkwindow-fb.c:
9572         gdk_input_ps2_get_mouseinfo was renamed to gdk_input_get_mouseinfo.
9573         
9574
9575 2000-11-02  Havoc Pennington  <hp@redhat.com>
9576
9577         * gtk/gtkfilesel.h, gtk/gtkfilesel.c: Derive from GtkDialog, and
9578         use stock buttons. Should be 100% source compatible, appropriate
9579         filesel fields now point to dialog->vbox and dialog->action_area.
9580         On the bizarre side, dialog->action_area and filesel->action_area
9581         are not the same widget.
9582         (gtk_file_selection_init): Put some padding around the selection
9583         entry, so it isn't touching the GtkDialog separator.    
9584
9585         * gtk/gtkfontsel.h, gtk/gtkfontsel.c: Derive from GtkDialog, 
9586         use stock buttons, etc. Should also be source compatible.
9587         Set the dialog default title in _init not _new().
9588         
9589         * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): 
9590         Use stock buttons; don't put a button box inside the existing
9591         dialog button box. Don't bother with push/pop colormap anymore.
9592
9593         * gtk/gtkdialog.h (GtkResponseType): Add a bunch of more 
9594         specific GTK_RESPONSE_* values. This is clearer than ACCEPT/REJECT
9595         for message dialog, and necessary for the font selection and color
9596         selection with help and apply buttons.
9597         
9598         * gtk/gtkdialog.c (gtk_dialog_add_button): Return a pointer 
9599         to the created button widget. Set GTK_CAN_DEFAULT on the button.
9600         (gtk_dialog_init): Default to GTK_BUTTONBOX_END, put less spacing
9601         between buttons, put less padding around the action area.
9602         (gtk_dialog_run): Exit on unmap rather than on destroy. 
9603         This will also exit the loop if the widget is hidden.
9604         (gtk_dialog_delete_event_handler): Use GTK_RESPONSE_DELETE_EVENT
9605         instead of GTK_RESPONSE_NONE; since we're already adding a bunch
9606         of GTK_RESPONSE_* stuff, this seems cleaner, and lets you 
9607         special-case delete event.
9608
9609         * gtk/gtktexttagtable.c, gtk/gtktextview.c: Fix doc comment
9610         formatting
9611         
9612 Sun Nov  5 05:32:39 2000  Tim Janik  <timj@gtk.org>
9613
9614         * gtk/testgtk.c (uposition_stop_configure): provide a toggle
9615         button to temporarily disable position recording in the
9616         "saved position" test.
9617
9618 Sat Nov  4 05:37:17 2000  Tim Janik  <timj@gtk.org>
9619
9620         * gtk/gtkthemes.c: added compat code that temporarily implements
9621         GtkThemeEnginePlugin as a GObject exporting GTypePlugin. this is
9622         going to be revamped by owen's upcoming GtkModule patches, but
9623         untill then people want gtk to build, right? ;)
9624
9625 2000-11-04  Havoc Pennington  <hp@pobox.com>
9626
9627         * gtk/gtkenums.h: remove trailing comma from GtkDeleteType member
9628         list
9629
9630         * docs/Changes-2.0.txt: Add note about
9631         gtk_container_get_toplevels()
9632
9633         * gtk/gtktextview.h: formatting
9634         
9635         * gtk/gtktextview.c: don't start descriptions with "Returns",
9636         confuses gtk-doc
9637
9638 Sat Nov  4 10:12:27 2000  Owen Taylor  <otaylor@redhat.com>
9639
9640         * autogen.sh: When doing sanity checking on ACLOCAL_FLAGS,
9641         look for glib-2.0.m4 not glib.m4. (Ali Abdin)
9642
9643 2000-11-03  Havoc Pennington  <hp@redhat.com>
9644
9645         * gtk/gtktexttagtable.c: Docs
9646         (gtk_text_tag_table_size): return a signed int
9647
9648         * gtk/gtktexttag.c: s/tkxt/text/g; write documentation
9649         (gtk_text_tag_event): make the event_object a GObject
9650
9651         * gtk/gtktextview.c: Write API docs for all functions.
9652
9653         * gtk/gtktextview.h: add GTK_TEXT_WINDOW_PRIVATE as return value
9654         for gtk_text_view_get_window_type() called on one of the private
9655         windows.
9656
9657         * gtk/gtktextview.c: Instead of accessing text_view->buffer
9658         directly, call get_buffer() which demand-creates a default
9659         buffer. So gtk_text_view_new() can be used to create a view with a
9660         default buffer in it, if you just want an empty text box users can
9661         put data in. Useful for GUI builders also.
9662
9663 2000-11-03  Pablo Saratxaga <pablo@mandrakesoft.com>
9664
9665         * gtk/gtkrc.zh_TW.*: moved gtkrc.zh_TW.Big5 to gtkrc.zh_TW.big5;
9666         the charset encodign portion MUST be in lowercase.
9667         * gtk/gtkrc.az: added file for Azeri language
9668
9669 2000-11-03  Havoc Pennington  <hp@redhat.com>
9670
9671         Get widgets working on the btree/buffer side. Display of them 
9672         still doesn't work.
9673         
9674         * gtk/gtktextview.c: start implementing child widget stuff
9675
9676         * gtk/gtktextiter.c (gtk_text_iter_get_child_anchor): new function
9677
9678         * gtk/gtktextlayout.c: handle embedded widgets
9679
9680         * gtk/gtktextdisplay.c: handle embedded widgets
9681
9682         * gtk/gtktextchild.c: Implement all the child anchor goo
9683
9684         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor): New
9685         function
9686
9687         * gtk/gtktextbtree.c: Add child anchor table to the btree struct
9688         (insert_pixbuf_or_widget_segment): abstract out common portions of 
9689         creating a child anchor or a pixbuf segment.
9690         (gtk_text_btree_create_child_anchor): new function
9691         (gtk_text_btree_unregister_child_anchor): new function
9692
9693         * gtk/gtkmarshal.list: added VOID:OBJECT,INT,INT for the
9694         allocate_child signal on GtkTextLayout
9695
9696         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): fix bogus return
9697         values
9698         (gtk_text_iter_get_child_anchor): new function
9699
9700         * gtk/gtktextbuffer.c (gtk_text_buffer_real_changed): Add a
9701         default handler for the changed signal, which calls
9702         gtk_text_buffer_set_modified(), instead of just always emitting
9703         changed then calling set_modified() manually. I guess this is
9704         maybe more flexible. It seems logical.
9705
9706 Fri Nov  3 08:58:38 2000  Tim Janik  <timj@gtk.org>
9707
9708         * gtk/gtkobject.c: _g_signal_handlers_destroy() is prefixed with '_'
9709         now.
9710
9711         * gtk/gtksignal.c: use g_signal_connect_closure_by_id() now.
9712
9713 Thu Nov  2 14:10:51 2000  Owen Taylor  <otaylor@redhat.com>
9714
9715         * gdk/x11/gdkdnd-x11.c: Fix a bunch of functions that should have
9716         been marked static.
9717
9718 2000-11-02  Havoc Pennington  <hp@redhat.com>
9719
9720         * gtk/testgtk.c (create_labels): had a test backward
9721
9722         * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Copy the client-side GC
9723         fields, so the dest GC ends up with the correct clip origin, 
9724         etc. Fixes a bug where colored labels didn't redraw 
9725         properly.
9726
9727 2000-11-02  Alexander Larsson  <alexl@redhat.com>
9728
9729         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
9730         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkpango-fb.c,
9731         gdk/linux-fb/gdkpixmap-fb.c, gdk/linux-fb/gdkwindow-fb.c:
9732         Add last argument to t_type_register_static call.
9733         
9734         * gdk/linux-fb/gdkdrawable-fb2.c:
9735         Add last argument to t_type_register_static call.
9736         export the get_image drawable virtual function.
9737
9738         * gdk/linux-fb/gdkimage-fb.c:
9739         Add last argument to t_type_register_static call.
9740         rename gtk_image_get to _gdk_fb_get_image and
9741         export it for use by gdkdrawable-fb2.
9742
9743         * gdk/linux-fb/gdkprivate-fb.h:
9744         export _gdk_fb_get_image.
9745
9746         * gdk/linux-fb/gdkselection-fb.c:
9747         Add new api call stubs.
9748
9749         * gtk/Makefile.am:
9750         Missing ( in linux-fb part.
9751
9752         * modules/linux-fb/Makefile.am:
9753         Must link with gdk_pixbuf or get unresolved symbol.
9754
9755 2000-11-01  Havoc Pennington  <hp@pobox.com>
9756
9757         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Use 
9758         GTK_TYPE_TEXT_ITER and BOXED marshallers
9759
9760         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): ditto
9761
9762         * gtk/gtktexttag.c (gtk_text_tag_class_init): ditto
9763         
9764         * gtk/gtk-boxed.defs: add GtkTextIter
9765
9766         * gtk/gtkmarshal.list: Add marshallers for text widget that 
9767         properly use OBJECT and BOXED
9768
9769 2000-11-01  Havoc Pennington  <hp@redhat.com>
9770
9771         * gtk/testgtk.c (create_labels): Test set_markup_with_accel()
9772
9773         * gtk/gtklabel.c (set_markup): Convert the unichar to a GDK keyval
9774         before returning it. 
9775         
9776 2000-11-01  Havoc Pennington  <hp@redhat.com>
9777
9778         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
9779         Clip the rectangle to be rendered to the drawable, since
9780         get_from_drawable() requires a region within the drawable
9781
9782 2000-11-01  Havoc Pennington  <hp@redhat.com>
9783
9784         * gtk/gtkimage.c (gtk_image_expose): Um, don't randomly subtract 4
9785         from coordinates.
9786
9787 Wed Oct 25 20:10:57 2000  Owen Taylor  <otaylor@redhat.com>
9788
9789         * gdk/gdkevents.c (gdk_event_copy): Only ref the window if
9790         it isn't NULL.
9791
9792 2000-11-01  Havoc Pennington  <hp@pobox.com>
9793
9794         * gtk/gtklabel.c (gtk_label_set_attributes): Set a PangoAttrList
9795         on a label
9796         (gtk_label_finalize): unref the attr list if any.
9797
9798         * gtk/testgtk.c (create_get_image): close test on second click
9799         (make_message_dialog): close dialog if it exists
9800
9801         * gdk/gdkpango.c (gdk_draw_layout): Handle rise attribute
9802
9803         * gdk-2.0.pc.in (Requires): Make it require gdk-pixbuf-2.0 not
9804         gdk-pixbuf
9805
9806         * gtk/gtklabel.c (gtk_label_set_markup): new function to set label
9807         from Pango markup format
9808         (gtk_label_set_markup_with_accel): ditto but with accelerator
9809         parsing
9810
9811         * gtk/gtkimage.c (gtk_image_expose): reformatting.
9812
9813         * gdk/gdkpixbuf-drawable.c (gdk_pixbuf_get_from_drawable): Hack to
9814         reflect current state of GDK - use gdk_drawable_get_colormap, etc.
9815         Check GDK_IS_WINDOW() not !GDK_IS_PIXMAP() to decide whether to 
9816         call gdk_window_get_origin().
9817
9818         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
9819         implement GDK_PIXBUF_ALPHA_FULL
9820         
9821 Wed Nov  1 03:43:42 2000  Tim Janik  <timj@gtk.org>
9822
9823         * gtk/gtksignal.c (gtk_signal_compat_matched): make use of
9824         g_signal_handlers_block_matched, g_signal_handlers_unblock_matched and
9825         g_signal_handlers_disconnect_matched to block/unblock and disconnect
9826         multiple handlers respectively, instead of only treating the
9827         first handler found (bug reported by owen).
9828
9829 Mon Oct 30 19:23:50 2000  Jonathan Blandford  <jrb@redhat.com>
9830
9831         * gtk/gtktreeview.c (gtk_tree_view_expand_row): New function.
9832
9833         * gtk/gtktreeview.c (gtk_tree_view_collapse_row): New function.
9834
9835         * gtk/gtktreeview.c, gtk/gtktreemodel.c, gtk/gtktreeselection.c
9836         gtk/gtktreestore.h, gtk/gtktreeview.h, gtk/gtktreeviewcolumn.c,
9837         gtk/gtktreeviewcolumn.h: Fixed inline docs.
9838
9839         * docs/reference/gtk/tree_widget.sgml: Proto intro to the tree
9840         widget.  Needs writing someday.
9841
9842         * docs/reference/gtk/tmpl/gtktree*sgml: Added the tree widget to
9843         the docs.
9844
9845 2000-10-30  Havoc Pennington  <hp@redhat.com>
9846
9847         * gtk/gtktextview.h, gtk/gtktextview.c:
9848         Rename delete_at_cursor delete_from_cursor, and 
9849         move to move_cursor.
9850
9851 2000-10-30  Havoc Pennington  <hp@redhat.com>
9852
9853         * gtktextbtree.c, gtktextbtree.h, gtktextbuffer.c,
9854         gtktextbuffer.h, gtktextchild.c, gtktextchild.h,
9855         gtktextchildprivate.h, gtktextdisplay.c, gtktextdisplay.h,
9856         gtktextiter.c, gtktextiter.h, gtktextiterprivate.h,
9857         gtktextlayout.c, gtktextlayout.h, gtktextmark.c, gtktextmark.h,
9858         gtktextmarkprivate.h, gtktextsegment.c, gtktextsegment.h,
9859         gtktexttag.c, gtktexttag.h, gtktexttagprivate.h,
9860         gtktexttagtable.c, gtktexttagtable.h, gtktexttypes.c,
9861         gtktexttypes.h, gtktextview.c, gtktextview.h:
9862
9863         Massive reindentation and reformatting. Arg alignment and comments
9864         still need fixing in various places.
9865
9866 2000-10-30  Havoc Pennington  <hp@redhat.com>
9867
9868         * gtk/gtktextview.h, gtk/gtktextview.c: Change run action signals
9869         to be named insert_at_cursor and delete_at_cursor so C++ can
9870         handle them.
9871
9872 2000-10-28  Tor Lillqvist  <tml@iki.fi>
9873
9874         * gtk/gtkrc.c (gtk_rc_append_default_module_path): Make sure not
9875         to get a double directory separator in case the home directory
9876         ends with one. This would cause trouble especially on Windows,
9877         where the path will be confused with the syntax for an an UNC
9878         (network share) path \\server\share\path.
9879         (gtk_rc_add_initial_default_files): Ditto.
9880
9881 Sat Oct 28 02:33:09 2000  Robert Brady  <robert@suse.co.uk>
9882
9883         * gtk/gtkmarshal.list: add new marshallers for GtkTextView.
9884
9885         * gtk/gtktextview.c: Use correct marshallers.
9886
9887 Fri Oct 27 17:56:26 2000  Jonathan Blandford  <jrb@redhat.com>
9888
9889         * gtk/gtkliststore.c: Not sure how this ever worked.  Fixed it to
9890         use new iter stuff, and added all the appropriate signals et al.
9891
9892         * gtk/gtktreedatalist.h: s/gtk/_gtk to further reinforce that this
9893         code is internal to gtk only.
9894
9895 2000-10-28  Tor Lillqvist  <tml@iki.fi>
9896
9897         * gtk/gtk.def
9898         * gtk/makefile.{mingw,msc}.in: Adjust to Tim's changes. Use
9899         glib-genmarshal etc.
9900
9901 Fri Oct 27 20:15:00 2000  Tim Janik  <timj@gtk.org>
9902
9903         * gtk/Makefile.am: added dependancies for testtextbuffer which broke
9904         parallel builds.
9905
9906 Fri Oct 27 18:51:44 2000  Tim Janik  <timj@gtk.org>
9907
9908         * gtk/gtksignal.[hc]: adapt to GSignal signature changes.
9909
9910 2000-10-27  Robert Brady  <robert@suse.co.uk>
9911
9912         * configure.in (ALL_LINGUAS): Add en@IPA (English, phonetic), 
9913         en_GB (British), ia (Interlingua).
9914
9915 2000-10-26  Havoc Pennington  <hp@redhat.com>
9916
9917         * gtk/gtktextiter.c (my_strrstr): fix constness warning
9918
9919         Fixed output of:
9920         nm -g -l .libs/libgtk-x11-1.3.so | grep ' T ' | grep -v gtk_ | grep -v GTK_
9921         
9922         * gtk/gtktextsegment.c (char_segment_new): rename
9923         (_char_segment_new_from_two_strings): rename
9924         (_toggle_segment_new): rename
9925         
9926         * gtk/gtkclipboard.c (ensure_clipboard_widget): make this static
9927         (make_clipboard_widget): make it static
9928         (text_get_func): static
9929         (text_clear_func): static
9930
9931         * gtk/gtkcolorsel.c (adjustment_changed): make this function
9932         static
9933         (hex_changed): make it static
9934         (hsv_changed): make it static
9935         (opacity_entry_changed): make it static
9936
9937         * gtk/gtktextbtree.c (change_node_toggle_count): rename with _gtk
9938         (toggle_segment_check_func): rename with _gtk
9939
9940         * gtk/gtktextchild.c (_pixbuf_segment_new): rename with _gtk
9941         (_widget_segment_new): rename
9942         (_widget_segment_add): rename
9943         (_widget_segment_remove): rename
9944         (_widget_segment_ref): rename
9945         (_widget_segment_unref): rename
9946
9947         * gtk/gtktextmark.c (_mark_segment_new): Rename
9948         _gtk_mark_segment_new   
9949
9950 2000-10-26  Havoc Pennington  <hp@redhat.com>
9951
9952         * gtk/gtkmarshal.list: add new marshallers used by the text widget
9953         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
9954         types
9955
9956         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): fix
9957         marshaller types
9958
9959         * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktextdisplay.h,
9960         gtk/gtktextdisplay.c: We need to preserve Tk copyrights and
9961         license on these files.
9962
9963         * gtk/gtktextiter.c (gtk_text_iter_backward_search): Make this
9964         work.
9965
9966         * gtk/gtktextbtree.c (gtk_text_btree_new): init stamps to 
9967         runtime random number different for each tree, instead of 
9968         a constant I made up.
9969
9970 Thu Oct 26 07:36:16 2000  Tim Janik  <timj@gtk.org>
9971
9972         * gtk/Makefile.am: buncha cleanups, kludged build sources
9973         dependencies with a Makefile: oldest-source-stamp dependancy
9974         for the moment. automake is really fighting us here, with
9975         intentionally not allowing user-defined rules or dependancies
9976         prior to it's -include $(DEP_FILES) statement. sucks rocks!
9977
9978         * gtk/Makefile.am: added gtktextlayout.h and gtktextdisplay.h
9979         to public headers. tehy have a comment stating that they are
9980         "semi-public" aren't included by gtk.h and if enums popup there,
9981         they can be /*< skip >*/-ed.
9982
9983         * gtk/gtktextlayout.h: 
9984         * gtk/gtktextdisplay.h: indentation fixes, comment fixes,
9985         added LGPL... <SIGH>
9986
9987 Wed Oct 25 20:40:25 2000  Jonathan Blandford  <jrb@redhat.com>
9988
9989         * gtk/gtktreemodel.h: Got rid of GtkTreeNode, and changed it to
9990         GtkTreeIter.  Added iterators everywhere.
9991
9992         * gtk/gtktreeviewcolumn.c: Changed to use the iterators.
9993
9994         * gtk/gtktreeviewselection.c: Changed to use the iterators.
9995
9996         * gtk/gtktreestore.c: Changed to use the iterators.
9997
9998         * gtk/gtkliststore.c: Commented out the code.  Will convert to
9999         iterators tomorrow.
10000
10001         * gtk/gtkmodelsimple.c: Commented out the code.  Will convert to
10002         iterators tomorrow.
10003
10004         * gtk/treestoretest.c: Changed to use iterators.
10005
10006         * demos/testgtk/main.c: Moved to use the new iterator system.
10007
10008 Thu Oct 26 02:10:32 2000  Tim Janik  <timj@gtk.org>
10009
10010         * gtk/Makefile.am: invoke maketypes.awk with LC_ALL=C to avoid
10011         localization misbehaviour.
10012
10013         * gtk/gtk-boxed.defs: nuked "boxed" type GtkCTreeNode, since it's
10014         a useless type without copy/free.
10015
10016         * gtk/gtkctree.c (gtk_ctree_class_init): use GTK_TYPE_POINTER instead
10017         of GTK_TYPE_CTREE_NODE.
10018
10019 Thu Oct 26 00:51:52 2000  Tim Janik  <timj@gtk.org>
10020
10021         * gtk/gtksignal.c:
10022         (gtk_signal_emitv): use g_value_set_static_{string|boxed} where
10023         applicable.
10024
10025         * gtk/gtk-boxed.defs (GtkSelectionData): specify
10026         gtk_selection_data_copy and gtk_selection_data_free
10027         do GtkSelectionData work as params in signals.
10028
10029 Wed Oct 25 20:47:41 2000  Tim Janik  <timj@gtk.org>
10030
10031         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init): urg, removed
10032         implementation of gtk_marshal_VOID__INT_INT_INT_INT. if people do that,
10033         couldn't they at least give it a non-standard name?
10034         
10035         * gtk/gtktextlayout.c: arg! yet another implementation of
10036         gtk_marshal_VOID__INT_INT_INT_INT(), is this a conspiracy?
10037
10038         * gtk/gtktextbuffer.c: gotcha! captured a vagabonding
10039         gtk_marshal_VOID__INT_POINTER_INT() implementation, braught it back
10040         home. now i know this _is_ a conspiracy.
10041
10042         * gtk/gtkwidget.c (gtk_widget_class_init): marshaller fixups for
10043         ::state-changed.
10044
10045         * gtk/gtkaccelgroup.c (gtk_accel_group_create_remove): 
10046         (gtk_accel_group_create_add): marshaller signature fixups.
10047
10048         * gtk/gtklistitem.c (gtk_list_item_class_init): signal creation fixups,
10049         pass in GTK_TYPE_SCROLL_TYPE instead of GTK_TYPE_ENUM.
10050
10051         * gtk/gtkobject.[hc]: removed GTK_CONNECTED flag, it's not valid
10052         anymore.
10053
10054 Tue Oct 24 23:59:21 2000  Tim Janik  <timj@gtk.org>
10055
10056         * docs/reference/Makefile.am: disabled SUBDIRS for the moment, since
10057         due to the signal system changes, it wouldn't build currently. to
10058         be fixed soon.
10059
10060         * docs/Changes-2.0.txt: GtkSignal/GSignal updates.
10061
10062         * gtk/gtkwidget.c: ::direction_changed takes an enum as argument,
10063         so it needs gtk_marshal_VOID__ENUM() instead of
10064         gtk_marshal_NONE__UINT().
10065
10066         * gdk/gdk*.c: adapted type registration functions.
10067
10068         * gtk/gtkbindings.c:
10069         * gtk/gtkaccelgroup.c: operate on GSignalQuery, GtkSignalQuery is
10070         gone.
10071
10072         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType.
10073
10074         * gtk/gtkobject.c:
10075         (gtk_object_destroy):
10076         (gtk_object_shutdown): fixed recursion guards. basically we have to
10077         catch the case where any of GObject.shutdown() or gtk_object_destroy()
10078         is called during ::destroy, and avoid recursion there.
10079
10080         * gtk/gtktypeutils.c:
10081         * gtk/maketypes.awk: awk-script hackup to provide gtk_type_init() with
10082         boxed_copy/boxed_free. this needs a more general solution based on a
10083         publically installed code-generator utility.
10084
10085         * gtk/gtktypeutils.[hc]: compat aliased GTK_TYPE_BOXED to G_TYPE_BOXED,
10086         glib's gobject has support for that now.
10087         define GtkSignalMarshaller in terms of GSignalCMarshaller.
10088
10089 Mon Oct 23 09:36:42 2000  Tim Janik  <timj@gtk.org>
10090
10091         * gtk/gtksignal.[hc]:
10092         * gtk/gtkmarshal.[hc]:
10093         * gtk/Makefile.am: generate marshallers with glib-genmarshal and don't
10094         compile gtkmarshal.c on its own anymore, just include it in gtksignal.c.
10095         removed #include <gtkmarshal.h>s all over the place, gtksignal.h takes
10096         care of that.
10097
10098         * *.c: marshaller name fixups.
10099
10100         * gtk/gtkmarshal.list: added a comment briefing the format.
10101
10102 Sun Oct 22 23:14:39 2000  Tim Janik  <timj@gtk.org>
10103
10104         * gtk/gtksignal.[hc]: nuked old implementation. we mostly have
10105         compatibility macros here now. more specifically, most of
10106         the API is preserved (yes, _most_, nonwithstanding the
10107         following exceptions listed, the API is stil lHUGE ;)
10108         things that got removed completely:
10109         GtkSignalQuery, gtk_signal_query(), gtk_signal_n_emissions(),
10110         gtk_signal_n_emissions_by_name(), gtk_signal_handlers_destroy(),
10111         gtk_signal_set_funcs(), gtk_signal_handler_pending_by_id(),
10112         gtk_signal_add_emission_hook(), gtk_signal_add_emission_hook_full(),
10113         gtk_signal_remove_emission_hook().
10114         non-functional functions variants:
10115         gtk_signal_add_emission_hook(), gtk_signal_remove_emission_hook().
10116         the GtkCallbackMarshal argument to gtk_signal_connect_full() is
10117         not supported anymore.
10118         (gtk_signal_compat_matched): new internal function to aid
10119         implementation of the compatibility macros, it  provides
10120         functionality to block/unblock/disconnect handlers based
10121         on func/data.
10122
10123         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType,
10124
10125         * *.c: adaptions to new type registration API signatures.
10126
10127 Fri Oct 20 15:26:33 2000  Tim Janik  <timj@gtk.org>
10128
10129         * gtk/gtktypeutils.[hc]: removed G_TYPE_GTK_POINTER cludge.
10130
10131 2000-10-25  Robert Brady  <robert@suse.co.uk>
10132
10133         * gdk/x11/gdkproperty-x11.c (gdk_property_get, gdk_property_change,
10134         gdk_property_delete): If window == NULL, assume the root window.
10135         (restoring the behaviour that was in 1.2).
10136         
10137         * gtk/testtext.c (save_buffer): Allow creation of new files when
10138         saving.
10139
10140         (fill_file_buffer): Don't die if a UTF-8 sequence is split across
10141         calls to read().
10142
10143 2000-10-25  Tor Lillqvist  <tml@iki.fi>
10144
10145         * gdk/gdkwindow.c: Include x11/gdkx.h only when building for X11.
10146
10147         * gdk/win32/gdkdrawable-win32.c
10148         * gdk/win32/gdkimage-win32.c
10149         * gdk/win32/gdkprivate-win32.h: Corresponding changes as in the
10150         X11 backend.
10151
10152         * gdk/win32/gdkcc-win32.c
10153         * gdk/win32/gdkcolor-win32.c
10154         * gdk/win32/gdkfont-win32.c
10155         * gdk/win32/gdkinput-win32.c
10156         * gdk/win32/gdkmain-win32.c
10157         * gdk/win32/gdkproperty-win32.c: Silence gcc -Wall.
10158
10159 2000-10-24  Havoc Pennington  <hp@redhat.com>
10160
10161         * gtk/gtktextview.c (gtk_text_view_scroll_to_mark_adjusted): make
10162         it a static function
10163
10164         * gtk/gtktextbtree.c (gtk_text_btree_tag): Gee, maybe we should
10165         redraw text when a tag is applied to it.
10166
10167         * gtk/gtktexttag.c (gtk_text_tag_affects_size)
10168         (gtk_text_tag_affects_nonsize_appearance): private functions to
10169         see if a tag requires various kinds of redraw/layout to be queued
10170         up.
10171
10172         * gtk/gtktexttag.h (struct _GtkTextTag): Remove relief crackrock
10173
10174         * gtk/testtext.c (fill_example_buffer): Put the cursor 
10175         at the start of the buffer, so search works by default
10176
10177         * gtk/gtktextiter.c (lines_match): init match_start always
10178
10179         * gtk/gtktextbuffer.c (gtk_text_buffer_get_iter_at_line_index): New
10180         function, get iter at a line + a byte index
10181
10182         * gtk/gtktextiter.c (gtk_text_iter_set_line_index): New function,
10183         to set byte position within a line
10184         (gtk_text_iter_check): remove leftover G_BREAKPOINT thing
10185
10186 2000-10-23  Havoc Pennington  <hp@redhat.com>
10187
10188         * gtk/testtext.c: Re-enable the "find" dialog
10189
10190         * gtk/testgtk.c: Add test for gdk_drawable_get_image
10191         
10192         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix bug where
10193         the arguments to gdk_draw_drawable were in the wrong order
10194         (gdk_window_paint_init_bg): This function was ignoring the
10195         init_region, instead of clipping to it, so the entire backing
10196         pixmap was cleared on every begin_paint()
10197         (gdk_window_begin_paint_region): Hmm, the same list-walking bug
10198         was in here again, the loop kept using the same GtkWindowPaint
10199         over and over.
10200         (gdk_window_begin_paint_region): Fix a bug where we had two
10201         x_offset instead of x_offset and y_offset
10202
10203         * gdk/gdkdraw.c (gdk_drawable_get_image): get composite drawable
10204         before we get the image.
10205         (gdk_draw_drawable): get the composite before we draw the drawable.
10206         (gdk_drawable_real_get_composite_drawable): default
10207         get_composite_drawable implementation that returns the drawable 
10208         itself
10209
10210         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Add
10211         get_composite_drawable virtual function
10212
10213         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix a cheesy
10214         list-walking bug
10215
10216         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable): Add a hack to
10217         make this work if the source drawable is a GdkDrawableImplX11
10218         instead of a public drawable type. This is really broken; the
10219         problem is that GdkDrawable needs a virtual method get_xid(), but
10220         of course that doesn't work in practice. Enter RTTI.
10221
10222         Also, improve mismatched depth message.
10223
10224         * gdk/gdkpixmap.c (gdk_pixmap_get_image): Implement get_image for
10225         GdkPixmap
10226
10227         * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_class_init):
10228         install _gdk_x11_get_image as our implementation of get_image
10229         
10230         * gdk/x11/gdkimage-x11.c (gdk_image_get): Rename to
10231         _gdk_x11_get_image and export for use in gdkdrawable-x11.c
10232
10233         * gdk/gdkimage.c (gdk_image_get): Make this just a wrapper around
10234         gdk_drawable_get_image
10235
10236         * gdk/gdkdraw.c (gdk_drawable_get_image): call virtual get_image
10237
10238         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Virtualize
10239         get_image
10240
10241         * gtk/gtktreestore.c (gtk_tree_store_get_node): remove weird
10242         trailing semicolon after for loop
10243
10244 Mon Oct 23 12:07:57 2000  Owen Taylor  <otaylor@redhat.com>
10245
10246         * gtk/gtkwidget.c (gtk_widget_set_style_internal): Fix problem
10247         where font_desc for widget's context lagged widget's font_desc by
10248         one step.
10249
10250 2000-10-22  Tor Lillqvist  <tml@iki.fi>
10251
10252         * gdk/win32/gdkgc-win32.c
10253         * gdk/win32/gdkimage-win32.c: Remove gcc -Wall warnings.
10254
10255         * gtk/makefile.mingw.in
10256         * gtk/gtk.def: Updates.
10257
10258         * gtk/testgtk.c: sleep() is called _sleep in MS's C
10259         library.
10260
10261         * gtk/gtkimcontextsimple.c: Include <stdlib.h> for bsearch().
10262
10263         * gtk/makefile.msc: Remove
10264
10265         * gtk/makefile.msc.in: New file, like makefile.mingw.in.
10266
10267         * gtk/Makefile.am: Add it.
10268
10269         * configure.in: Generate it.
10270
10271         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor)
10272         * gtk/gtktextbtree.c (gtk_text_line_char_to_byte): Return
10273         something even if not implemented, to satisfy picky MSVC.
10274
10275         Patches by Hans Breuer:
10276         
10277         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_glyphs): Call
10278         SetBkMode() and SetTextAlign() before calling
10279         pango_win32_render().
10280
10281         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_values_to_win32values):
10282         Set hcliprgn to NULL after destroying it.
10283         (gdk_gc_set_clip_rectangle): Delete hcliprgn and set to NULL.
10284
10285         * gdk/win32/gdkgeometry-win32.c
10286         (_gdk_windowing_window_queue_antiexpose): More effective
10287         implementation.
10288
10289         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_new): Use drawable's
10290         depth as default, not the visual's.
10291
10292         * gdk/win32/gdkwindow-win32.c (gdk_window_set_title): Guard
10293         against empty title.
10294
10295         * gdk/win32/gdkprivate-win32.h: Define a helper macro,
10296         IMAGE_PRIVATE_DATA.
10297
10298         * gdk/win32/gdkimage-win32.c: Use it.
10299
10300 2000-10-22  Robert Brady  <robert@suse.co.uk>
10301
10302         * configure.in: Check for bind_textdomain_codeset
10303
10304         * gtk/gtkmain.c (gtk_init_check): If bind_textdomain_codeset 
10305         present, make use of it.
10306
10307         Add a translatable string "default:LTR" which, if translated
10308         to "default:RTL", will cause the default direction to be
10309         Right-to-Left.
10310
10311         * gtk/gtkrange.h, gtk/gtkrange.c: Take into account the widget 
10312         direction if marked as flippable.
10313
10314         * gtk/gtkhscale.c: Mark widget as flippable.
10315         
10316 2000-10-04  Havoc Pennington  <hp@redhat.com>
10317
10318         * gtk/testgtk.c (create_buttons): create some stock buttons
10319         with the default accel group
10320         (create_image): test some new GtkImage features
10321         (make_message_dialog): test GtkMessageDialog
10322         (create_modal_window): fix someone's bizzarro indentation
10323
10324         * gtk/gtkwindow.h, gtk/gtkwindow.c: Implement 
10325         GTK_WIN_POS_CENTER_ON_PARENT. 
10326         Add "destroy with parent" setting, which means the window goes
10327         away with its transient parent.
10328         (gtk_window_get_default_accel_group): get the default accel group
10329         for the window.
10330         (gtk_window_set_destroy_with_parent): set/unset destroy with
10331         parent flag
10332         (gtk_window_read_rcfiles): invalidate icon set caches
10333         after reloading rcfiles 
10334
10335         * gtk/gtkenums.h (GtkWindowPosition): add
10336         GTK_WIN_POS_CENTER_ON_PARENT, which centers a dialog 
10337         on its parent window when the dialog is mapped for the first time.
10338
10339         * gtk/gtkmessagedialog.h, gtk/gtkmessagedialog.c: Add 
10340         a simple message dialog class
10341         
10342         * gtk/gtkdialog.c (gtk_dialog_init): Connect delete event 
10343         handler to emit response signal, and maybe later it would
10344         honor a hide_on_delete flag - though that isn't there yet.
10345         Set border width on the vbox to 2, so we get some padding.      
10346         Use a button box for the action area.
10347         (gtk_dialog_key_press): synthesize a delete event if Esc
10348         is pressed and the GtkWidget key press handler didn't 
10349         handle the escape key.
10350         (gtk_dialog_new_with_buttons): new function creates a dialog
10351         with some default buttons in it.
10352         (gtk_dialog_add_action_widget): add an activatable widget
10353         as a button in the dialog - you can also add a non-activatable
10354         widget by accessing the action area directly.
10355         (gtk_dialog_add_button): add a simple button - stock ID or 
10356         label - to the action area
10357         (gtk_dialog_response): emit response signal
10358         (gtk_dialog_run): block waiting for the dialog, return 
10359         the response. Override normal delete_event behavior, so that 
10360         delete_event does nothing inside gtk_dialog_run().
10361
10362         * gtk/gtkdialog.h, gtk/gtkdialog.c: Add "response" signal
10363         emitted when an action widget is clicked or the dialog gets
10364         delete_event
10365
10366         * gtk/gtk.h: add gtkmessagedialog.h
10367
10368         * gtk/Makefile.am: add gtkmessagedialog.[hc]
10369
10370 2000-10-18  Havoc Pennington  <hp@redhat.com>
10371
10372         * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): Fix a bug 
10373         where any number of empty lines would get skipped
10374
10375         * gtk/gtktextiter.h: Remove padding from GtkTextIter; live on the
10376         edge.
10377
10378         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): enhance the
10379         warning about invalid iterators (explain more thoroughly)
10380         (gtk_text_iter_in_region): rename gtk_text_iter_in_range
10381
10382         * gtk/gtktextview.c (FOCUS_EDGE_WIDTH): Make focus rectangle less
10383         big
10384
10385         * demos/*.c: Add error handling
10386
10387         * gtk/gtktextbuffer.c: don't modify const iterators
10388
10389         * gtk/gdk-pixbuf-loader.c: Add full error handling here
10390
10391         * gtk/gtkimage.c (gtk_image_set_from_file): ignore errors
10392         on file load
10393
10394         * gtk/gtkiconfactory.c: Update to reflect addition of error
10395         handling to gdk-pixbuf loaders
10396
10397 Wed Oct 18 11:14:05 2000  Owen Taylor  <otaylor@redhat.com>     
10398
10399         * configure.in demos/Makefile.am demos/testgtk/*: Start of work to
10400         move to new modularized testgtk.
10401
10402 2000-10-17  Jonathan Blandford  <jrb@redhat.com>
10403
10404         * gtk/gtktreeview.c: Draw the arrows correctly.
10405
10406         * gtk/gtktreemodel.c: Added user docs.
10407
10408         * gtk/gtk.h: remove gtktreedatalist.h.
10409
10410         * gtk/gtktreestore.c (gtk_tree_store_get_type): Get the correct
10411         parent when generating my type.
10412
10413         * gtk/gtkmarshal.list: Added four more marshallers: INT:NONE,
10414         POINTER:NONE, POINTER:POINTER, and POINTER:POINTER,INT.
10415
10416 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
10417
10418         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): Move
10419         GtkTreeModel from object to interface.
10420
10421 2000-10-16  Havoc Pennington  <hp@redhat.com>
10422
10423         * gtk/gtktreeviewcolumn.c: #include gtklabel.h, fixing 
10424         compilation
10425
10426 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
10427
10428         * gtk/gtktreeselection.c: Add API documentation to all public
10429         functions.
10430
10431         * gtk/gtktreeviewcolumn.c: Added API documentation to all public
10432         functions.
10433
10434 2000-10-15  Jonathan Blandford  <jrb@redhat.com>
10435
10436         * gtk/gtktreeview.c (gtk_tree_view_insert_column): New function
10437         proposed by Guy Harris <gharris@flashcom.net>.  Also, added API
10438         docs to all public functions.
10439
10440         * gtk/gtktreeview.c, gtk/gtktreeview.h, gtk/gtktreestore.h,
10441         gtk/gtktreestore.c, gtk/gtkliststore.h, gtk/gtkliststore.c,
10442         gtk/gtkmodelsimple.c, gtk/gtkmodelsimple.h, gtk/gtktreedatalist.c,
10443         gtk/gtktreemodel.h, gtk/gtktreeselection.c,
10444         gtk/gtktreeselection.h: Fix GtkTreeNode *node ->GtkTreeNode node
10445         issue.
10446
10447 2000-10-14  Robert Brady  <robert@suse.co.uk>
10448
10449         * configure.in: Added "fa" (Persian) to ALL_LINGUAS.
10450
10451 2000-10-12  Jonathan Blandford  <jrb@redhat.com>
10452
10453         * gtk/gtktreedatalist.[ch] (gtk_tree_data_list_value_to_node): Added
10454         values other then G_TYPE_STRING.
10455         * gtk/gtktreeselection.c: Minor commenting updates.
10456         * gtk/gtktreeview.c: Format updates.
10457
10458 2000-10-09  Tor Lillqvist  <tml@iki.fi>
10459
10460         * README.win32: Update.
10461
10462         * gdk/win32/gdkgeometry-win32.c (gdk_window_clip_changed): Add two
10463         lines that had been deleted by mistake (?).
10464
10465         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Handle
10466         also the case fg==white and bg==black (but still not randomly
10467         coloured cursors). Thanks to Wolfgang Sourdeau.
10468
10469         * gdk/win32/*.c: Silence gcc -Wall.
10470
10471         * gtk/gtk.def: Add missing entry points.
10472
10473         Fixes by Hans Breuer:
10474
10475         * gdk/makefile.msc
10476         * gdk/win32/makefile.msc: Update.
10477
10478         * gdk/testgdk.c: If compiling with debugging (with _DEBUG defined,
10479         some MSVC thing, presumably), cause breakpoint on failures. Add
10480         GDK_NOR case. Call g_log_set_always_fatal.
10481
10482         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_insert): Handle
10483         should be pased by reference.
10484         
10485         * gdk/win32/gdkprivate-win32.h: Correct declaration accordingly.
10486         
10487         * gdk/win32/*.c: Correct calls to gdk_win32_handle_table_insert.
10488
10489         * gdk/win32/gdkevents-win32.c
10490         * gdk/win32/gdkwindow-win32.c: Handle WM_CREATE.
10491
10492         * gdk/win32/gdkgc-win32.c: Fix mixups of drawable and
10493         implementation object.
10494
10495         * gdk/win32/gdkimage-win32.c (gdk_image_get): Handle drawables,
10496         not just windows.
10497         
10498         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_impl_win32_finalize):
10499         Use the wrapper object.
10500         
10501 2000-10-06  Havoc Pennington  <hp@redhat.com>
10502
10503         * Makefile.am (SRC_SUBDIRS): contrib subdir
10504
10505         * gdk/gdkpixbuf.h: Move GdkPixbufAlphaMode to gdk-pixbuf library,
10506         so it can be used in Xlib version
10507
10508         * demos/testpixbuf.c (update_timeout): error checking from 1.0
10509         tree
10510
10511         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_get_pixbuf): Sync
10512         change from 1.0 tree that returns first frame of animation
10513         if the loaded file is an animation.
10514
10515         * contrib: add new directory to hold stuff that comes with GTK+
10516         but isn't really part of GTK+ (for now, gdk-pixbuf-xlib)
10517         
10518         * configure.in: add contrib/*
10519
10520 2000-10-05  Havoc Pennington  <hp@redhat.com>
10521
10522         * demos/testpixbuf-save.c: add pixbuf save test
10523
10524         * demos/Makefile.am: add testpixbuf-save.c
10525
10526 2000-10-05  Jonathan Blandford  <jrb@redhat.com>
10527
10528         * gtk/gtktree.h (GTK_TREE_SELECTION): Replaced with
10529         GTK_TREE_SELECTION_OLD to prevent conflict with gtktreeselection.c
10530         * gtk/testgtk.c: s/GTK_TREE_SELECTION/GTK_TREE_SELECTION_OLD/
10531         * gtk/gtktreeselection.[ch]: Replaced
10532         "node_selected"/"node_unselected" signal with "selection_changed"
10533         signal.
10534
10535 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
10536
10537         * gtk/gtk{tree,cell}?*.[ch]: Checked in initial draft of the new
10538         tree widget.
10539
10540 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
10541
10542         * gdk/gdkwindow.c (gdk_window_draw_arc): Fix obvious bug in circle
10543         drawing.
10544
10545 Wed Oct  4 15:52:15 2000 Owen Taylor  <otaylor@redhat.com>
10546
10547         * gdk/x11/gdkselection-x11.c (_gdk_selection_window_destroyed):
10548         Move list pointer forwards before removing item from
10549         list. (Crash reported by Salmaso Raffaele)
10550
10551         * gdk/gdkwindow.h: Remove spurious trailing ,
10552
10553         * gdk/Makefile.am (LDFLAGS): You can't do interlibrary
10554         dependencies on uninstalled libraries, sorry folks.
10555
10556 2000-10-04  Havoc Pennington  <hp@redhat.com>
10557
10558         * gtk/gtkstock.h, gtk/gtkstock.c, gtk/gtkiconfactory.h,
10559         gtk/gtkiconfactory.c: Fix copyrights    
10560
10561         * demos/testpixbuf.c: add inline pixbuf test
10562         
10563 Mon Sep 25 15:05:17 2000  Owen Taylor  <otaylor@redhat.com>
10564
10565         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c (gdk_window_iconify):
10566         Add gdk_window_iconify.
10567
10568         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c
10569         (gdk_window_set_geometry_hints): Add win_gravity
10570         to geometry structure.
10571
10572         * gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter):
10573         Implement _NET_WM_PING.
10574
10575         * gdk/x11/gdkmain-x11.c (_gdk_windowing_init_check):
10576         Set _NET_WM_PID on the client leader.
10577
10578         * gdk/x11/gdkwindow-x11.c (gdk_window_set_icon_name):
10579         Handle UTF-8 better.
10580
10581         * gdk/x11/gdkwindow-x11.c (gdk_window_set_title): Handle
10582         UTF-8 better, set _NET_WM_NAME as well. Only set
10583         icon name if it hasn't previously been explicitely 
10584         set.
10585
10586 2000-10-03  Havoc Pennington  <hp@redhat.com>
10587
10588         * gtk/testtextbuffer.c: clean up trailing whitespace,
10589         add extensive tests for tag toggle iteration.
10590         
10591         * gtk/gtktextiter.c (MAX_LINEAR_SCAN): decrease linear scan 
10592         distance
10593
10594         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
10595         optimize case where the tag root is on level 1
10596         (gtk_text_line_previous_could_contain_tag): attempt to implement
10597         (gtk_text_line_next_could_contain_tag): Abstract out node_compare
10598         functionality
10599
10600         * gtk/gtktextiter.c (gtk_text_iter_backward_to_tag_toggle):
10601         Implement this, though not very efficiently.
10602
10603         * gtk/gtktextiterprivate.h: reformat
10604
10605         * gtk/gtktextiter.c (gtk_text_iter_get_char): return 0 on the end
10606         iterator
10607
10608         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_interactive): Fix
10609         this to properly revalidate the iterators.
10610
10611         * gtk/gtktextview.c (gtk_text_view_delete): fix control-K to work
10612         properly at the end of the line (and therefore on empty lines)
10613
10614         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Gee,
10615         maybe we should return a value...
10616
10617 2000-10-03  Tor Lillqvist  <tml@iki.fi>
10618
10619         * config.h.win32: Guard definition of alloca(). glib.h now handles
10620         that.
10621
10622         * gdk/gdk.def
10623         * gtk/gtk.def: Add new entry points.
10624
10625         Changes just to make GTK+ build without errors on Win32. No hope
10626         of it working in its current state, though...:
10627         
10628         * gdk/win32/gdkselection-win32.c: Remove gcc -Wall warnings.  Add
10629         some functions from the X11 backend, just to make GTK+ build.
10630
10631         * gdk/makefile.mingw.in
10632         * gtk/makefile.mingw.in: Use correct gdk_pixbuf version
10633         number. Add new object files.
10634
10635         * gtk/gtkclipboard.c: Include gdkwin32.h on Win32. Use
10636         GetMessageTime to get timestamp (where on X11 uses
10637         gdk_x11_get_server_time()).
10638
10639 2000-10-02  Havoc Pennington  <hp@pobox.com>
10640
10641         * gtk/gtktextview.c: text_window_* weren't static and should have
10642         been.
10643         Start work on child widgets; not yet complete, syncing to 
10644         office computer.
10645
10646         * gtk/gtktextchild.h: change this to contain a public interface,
10647         starting work on child interfaces.
10648         * gtk/gtktextchildprivate.h: move private interfaces here
10649
10650         * gtk/Makefile.am: update to reflect gtktextchildprivate.h
10651
10652         * gtk/gtktextview.h, gtk/gtktextview.c, gtk/gtktextbuffer.h,
10653         gtk/gtktextbuffer.c, gtk/gtktextiter.h, gtk/gtk/textiter.c, 
10654         gtk/gtktextmark.c: copyright notices
10655
10656         * gtk/gtktextmarkprivate.h: reformat, and put _ in front of
10657         internal functions      
10658
10659         * gtk/gtktextchild.c (_pixbuf_segment_new): put _ in front of
10660         internal function
10661
10662         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
10663         Reformatting    
10664
10665 2000-09-30  Havoc Pennington  <hp@pobox.com>
10666
10667         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Handle
10668         NULL start/end pointers
10669
10670         * gtk/gtktextbuffer.c: Write some docs
10671         (gtk_text_buffer_get_selection_bounds): Allow start/end to be
10672         NULL, so you can just check whether there's a selection.        
10673
10674         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): No need to 
10675         cleanup_line or segments_changed ourselves, it gets done 
10676         in unlink_segment
10677
10678         * gtk/gtktextmark.h:
10679         s/gtk_text_mark_deleted/gtk_text_mark_get_deleted/
10680         
10681         * gtk/gtktextsegment.h: Clean up some indentation and naming mess
10682
10683         * gtk/gtktextmark.c: delete some more old Tk cruft
10684
10685         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_mark): add ref to
10686         mark before removing it, so we can emit MARK_DELETED with a valid
10687         pointer.
10688         (gtk_text_buffer_mark_set): hold ref across signal emission
10689
10690         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): improve
10691         whining about attempts to delete special marks
10692
10693         * gtk/gtktextbuffer.c (_gtk_text_buffer_spew): Prepend with
10694         underscore, since it's internal.
10695
10696         * gtk/gtktextbuffer.h: Remove find_string prototype, this is 
10697         now implemented in terms of iterators in gtktextiter.h
10698
10699         * gtk/gtktextbuffer.c (gtk_text_buffer_set_text): 
10700         New function, destructively sets contents of buffer. Also 
10701         a convenient way to clear the buffer by setting text to ""
10702
10703         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): reformat
10704         multiline string literal
10705
10706         * gtk/testtext.c (text_changed_callback): Redraw line numbers if
10707         text changes.
10708
10709         * gtk/gtktextiter.c (forward_char): Return FALSE if new location 
10710         is not dereferenceable
10711         (gtk_text_iter_forward_lines): fix return value
10712
10713 2000-09-29  Havoc Pennington  <hp@redhat.com>
10714
10715         * gtk/gtktexttag.c (gtk_text_tag_set_priority): fix indentation
10716
10717         * gtk/gtktextview.c: Implement drag thresholding; change functions 
10718         that set border window size to have nicer name
10719         (gtk_text_view_mark_set_handler):  Fix this to have the 
10720         right signature.
10721
10722         * gtk/testtextbuffer.c (fill_buffer): Update with pixbuf changes
10723
10724         * gtk/testtext.c: Update with API changes, put line numbers on 
10725         both sides.
10726         
10727         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): Replace get_pixmap
10728         with this
10729
10730         * gtk/gtktextchild.h, gtk/gtktextchild.c: replace all pixmap with
10731         pixbuf; delete a big block of #if 0 Tk code
10732
10733         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_pixbuf): Replace 
10734         insert_pixmap with insert_pixbuf
10735
10736 2000-09-29  Martin Baulig  <baulig@suse.de>
10737
10738         * gdk-pixbuf.pc.in: Renamed to gdb-pixbuf-2.0.pc.in to avoid
10739         confusion with the GdkPixbuf of the GNOME 1.x platform.
10740
10741 2000-09-29  Havoc Pennington  <hp@pobox.com>
10742
10743         * gtk/gtktextview.c: Implement the side windows.
10744
10745         * gtk/testtext.c: Implement simple line numbering in the 
10746         left side window; seems to make scrolling sloooow. Oops.
10747         Also, cursor blink is for some reason causing redraws
10748         of the line numbers. Should investigate...
10749
10750 2000-09-28  Havoc Pennington  <hp@redhat.com>
10751
10752         * gtk/gtktextview.c: Set up infrastructure to deal with lots of 
10753         scrolling child windows, and draw focus rectangle properly.
10754         
10755         (gtk_text_view_buffer_to_window_coords):
10756         Coordinate transformation to deal with all these freaking windows
10757         and offsets
10758         (gtk_text_view_window_to_buffer_coords): transform the other way
10759
10760         * gtk/testtext.c (create_buffer): Update to match Pango API change
10761
10762         * gtk/gtktexttagtable.c (gtk_text_tag_table_foreach): Go over the
10763         anonymous tags
10764         (foreach_unref): don't emit remove signal from finalize, just
10765         set tag's parent to NULL
10766
10767 2000-09-26  Havoc Pennington  <hp@redhat.com>
10768
10769         * gtk/gtkiconfactory.c (gtk_icon_set_clear): remove
10770         Fix some warnings       
10771
10772 2000-09-26  Havoc Pennington  <hp@redhat.com>
10773
10774         * gtk/Makefile.am (gtk_private_h_sources): Move more text widget
10775         headers into the private header list
10776
10777         * Makefile.am (pkgconfig_DATA): install pkg-config files
10778
10779         * configure.in: add pkg-config files
10780
10781         * gdk-2.0.pc.in, gdk-pixbuf.pc.in, gtk+-2.0.pc.in: pkg-config files
10782
10783         * gtk/gtkwindow.c (gtk_window_read_rcfiles): Invalidate
10784         outstanding icon caches on theme change.
10785
10786         * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: New icon system. Three 
10787         important types:
10788
10789         (GtkIconSource): Specification for creating a pixbuf 
10790         appropriate for a direction/state/size triplet from 
10791         a source pixbuf or filename
10792
10793         (GtkIconSet): List of GtkIconSource objects that are used to
10794         create the "same" icon (e.g. an OK button icon), and cache for
10795         rendered icons
10796
10797         (GtkIconFactory): Hash from stock ID to GtkIconSet; used to look
10798         up the icon set for a given stock ID.  GTK maintains a stack of
10799         GtkIconFactory to search, and applications or libraries can add
10800         additional icon factories on top of the stack
10801         
10802         * gtk/gtkrc.h, gtk/gtkrc.c: When loading an RcStyle, parse 
10803         the set of GtkIconSource specified for a given stock ID into 
10804         a GtkIconSet, and put the GtkIconSet into a GtkIconFactory for the 
10805         RcStyle, under the specified stock ID.
10806
10807         * gtk/gtkstyle.h, gtk/gtkstyle.c: Add a virtual function
10808         render_icon used to derive a GdkPixbuf from a GtkIconSource.
10809         This allows people to theme how prelight, insensitive, etc. are
10810         done.
10811
10812         (gtk_style_lookup_icon_set): Look up a stock ID in the list of
10813         icon factories for a style, and return the resulting 
10814         icon set if any.
10815
10816         (gtk_style_render_icon): Render an icon using the render_icon 
10817         method in the GtkStyleClass.
10818
10819         * gtk/gtkwidget.h, gtk/gtkwidget.c (gtk_widget_render_icon): 
10820         Use the style for a given widget to look up a stock ID, get the
10821         icon set, and render an icon using the render_icon method 
10822         of the style
10823
10824         * gtk/gtkstock.h, gtk/gtkstock.c: Header with the GtkStockItem type
10825         (contains information about a stock item), the built-in stock item
10826         IDs, and functions to add/lookup stock items.
10827
10828         * gtk/stock-icons/*: Stock icons that come with GTK
10829
10830         * gtk/gtkbutton.h, gtk/gtkbutton.c (gtk_button_new_stock): Returns
10831         a button based on a GtkStockItem
10832         (gtk_button_new_accel): Takes a uline string and accel group, and
10833         installs the accelerator.
10834
10835         * gtk/gtkimage.h, gtk/gtkimage.c: Make this into a generic
10836         image-display widget.
10837
10838 2000-09-25  Havoc Pennington  <hp@redhat.com>
10839
10840         * gtk/gtktexttypes.c: Remove Latin1 conversion stuff
10841
10842         * gtk/gtktextbtree.c (gtk_text_btree_node_remove_data): 
10843         Fix a bug when removing node data, we didn't properly 
10844         re-splice the linked list after removing the data.
10845
10846         * gtk/gtktextview.c (gtk_text_view_key_press_event): Pass through 
10847         GDK_Tab as literal tab, Ctrl-Tab to tab to focus widget
10848
10849         * gtk/gtktextbuffer.c (selection_received): fix g_convert usage
10850
10851         * gtk/gtktextlayout.c (set_para_values): Set tab array 
10852         for the layout from the GtkTextTag.
10853
10854         * gtk/gtktexttypes.h: delete tab and search cruft, 
10855         remove g_convert() in favor of GLib version
10856
10857         * gtk/gtktexttypes.c: remove tab implementation from here,
10858         move to Pango
10859
10860         * gtk/gtktexttag.h, gtk/gtktexttag.c: Implement 
10861         tab stuff using new PangoTabArray from Pango
10862
10863         * gtk/gtktexttag.c (gtk_text_attributes_fill_from_tags): Remove
10864         unused border_width stuff
10865
10866 Thu Sep 14 12:21:12 2000  Owen Taylor  <otaylor@redhat.com>
10867
10868         * gtk/gtktexttypes.[ch]: Remove g_convert (moved to
10869         glib) and now useless utf_to_latin1() latin1_to_utf()
10870
10871         * gtk/gtktextview.[ch]: Change ::move_insert and
10872         ::delete_text action signals to ::move and ::delete;
10873         create the signals with the right enumeration type,
10874         not GTK_TYPE_ENUM so that bindings work. Add C-d, M-d,
10875         C-v bindings, change Home, End to move to beginning/end
10876         of line, Add C-Home C-End to move to beginning/end
10877         of buffer. Change ::cut_text to ::cut_clipboard, etc;
10878         combine ::scroll_text into ::move; use new GtkSelectionData
10879         functions to simplify DND text handling.
10880         
10881         * gtk/gtkenums.h gtk/gtktextview.h: Move movement,
10882         deletion enumerations here, rename enumeration values to 
10883         be consistently plural.
10884
10885         * gtk/gtktextbuffer.c: Use new clipboard interfaces
10886         for cut/copy/paste and primary selection.
10887
10888         * gtk/gtktextbuffer.[ch]: Remove excess time and
10889         'interactive' arguments from cut/copy/paste;
10890         rename cut to cut_clipboard, etc; remove
10891         gtk_text_buffer_get_clipboard_contents().
10892
10893         * gtk/gtktextlayout.[ch]: Add 
10894         gtk_text_layout_move_iter_to_line_end() to move the iter to 
10895         line ends.
10896
10897         * gtk/gtkselection.[ch] (gtk_selection_data_set/get_text):
10898         Functions to set or get a UTF-8 string on the selection
10899         data.
10900
10901         * gtk/gtkclipboard.[ch]: New, simplified selection handling
10902         interfaces.
10903
10904         * gtk/gtkinvisible.c (gtk_invisible_new): Realize newly
10905         created widgets - one of these is useless if we don't.
10906
10907         * gtk/gtkselection.[ch] (gtk_selection_clear_targets): Export
10908         a public function clear all targets registered for the
10909         widget.
10910
10911         * gtk/gtkselection.c (gtk_selection_owner_set) docs/Changes-2.0.txt:
10912         Never call gtk_widget_realize() - that was just asking
10913         for bizarre side-effects.
10914
10915         * gtk/gtkselection.c (gtk_selection_owner_set): Call
10916         gdk_selection_owner_set even if the widget is the
10917         same so that we reliably update the timestamp on
10918         the server.
10919
10920         * gdk/x11/gdkevents-x11.c gdk/x11/gdkx.h: Add a 
10921         gdk_x11_get_server_time() function.
10922         
10923         * gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.h
10924         gdk/x11/gdkselection-x11.c gdk/x11/gdkwindow-x11.h:
10925         Add some tricky filtering on serial numbers for
10926         selection clear events to fix up long-standard
10927         race condition FIXME's in gtkselection.c.
10928
10929         * gdk/gdkproperty.h gdk/x11/gdkselection-x11.h: Add
10930         routines to convert from utf8 to compound text or
10931         STRING and from a text property to UTF-8.
10932
10933         * gtk/gtkmain.[ch] (gtk_get_current_event_time): Add 
10934         a convenience function gdk_get_current_event_time().
10935
10936         * gtk/gtkselection.c (gtk_selection_data_copy/free): Copy
10937         and free selection_data->data properly
10938
10939 Sat Sep  9 10:23:53 2000  Owen Taylor  <otaylor@redhat.com>
10940
10941         * gtk/gtkthemes.c: Remove some unecessary includes.
10942
10943 2000-09-08  Jonathan Blandford  <jrb@redhat.com>
10944
10945         * gtk/gtktextdisplay.c
10946         * gtk/gtktextlayout.c
10947         * gtk/gtktexttag.c
10948         * gtk/gtktexttag.h
10949         * gtk/testtext.c: Change the overstrike property to strikethrough,
10950         to closer match pango.
10951
10952 Fri Sep  8 14:28:00 2000  Owen Taylor  <otaylor@redhat.com>
10953
10954         * gtk/gtktextview.c: Fix up visibility so that focus,
10955         cursor_visible and blink interact properly.  Reenable cursor blink
10956         which had been roughly disabled. Make blink and focus
10957         properly per-view.
10958
10959         * gtk/gtktextlayout.[ch] (gtk_text_layout_set_cursor_visible):
10960         Add a flag for whether to display insertion cursor and
10961         a function to set the flag.
10962
10963         * gtk/gtktextlayout.c (gtk_text_layout_get_line_yrange): Change
10964         get_line_y() to get_line_yrange(), to be a bit more generally
10965         useful.
10966
10967 Thu Sep 07 20:54:33 2000  George Lebl <jirka@5z.com>
10968
10969         * gtk/gtkmenu.c:  in gtk_menu_set_submenu_navigation_region
10970           do stop_navigating_submenu, to clear last timeout properly.
10971           Also in gtk_menu_motion_notify move ignore_enter above
10972           the conditional to make it always happen as suggested by Owen
10973
10974 2000-09-07  Tor Lillqvist  <tml@iki.fi>
10975
10976         * gdk/win32/makefile.mingw.in: Use -Wall. Add gdkpango-win32.o
10977
10978         * gdk/win32/gdkwin32.h: Add more definitions missing from the free
10979         w32api headers.
10980
10981         * gdk/win32/gdkprivate-win32.h: Add a couple of missing
10982         declarations.
10983
10984         * gdk/win32/gdkdrawable-win32.c: Remove gcc -Wall warnings.
10985         (gdk_win32_get_colormap): A line had been deleted by mistake.
10986
10987         * gdk/win32/gdkevents-win32.c: Remove lint (gcc -Wall) here, too.
10988         (gdk_event_translate): Handle more virtual keycodes to be able to
10989         generate GDK events for Control-comma, Control-period, etc.
10990
10991         * gtk/gtk.def: Add some missing entry points.
10992
10993 Thu Sep  7 11:47:02 2000  Owen Taylor  <otaylor@redhat.com>
10994
10995         * gtk/gtktextbuffer.c gtk/gtkimcontext.c gtk/gtkwidget.c:
10996         Doc comment fixing. (Mostly non-matching parameter names.)
10997
10998         * gtk/gtkcalendar.c gtk/gtklist.c gtk/gtknotebook.c: Modify
10999         comments a little to avoid looking like a doc comment.
11000
11001         * gtk/gtkspinbutton.h (GTK_INPUT_ERROR): Change INPUT_ERROR to
11002         GTK_INPUT_ERROR. (Should the mechanism for erros in spin button
11003         conversions be changed to GError?)
11004
11005         * gtk/gtkcolorsel.c (GTK_CUSTOM_PALETTE_WIDTH/HEIGHT): 
11006         Move private #defines into .c file.
11007
11008         * gtk/gtktexttag.c (gtk_text_tag_class_init): Alphabetize
11009         order of argument addition, remove duplicates.
11010
11011         * gtk/gtkaspectframe.h (struct _GtkAspectFrameClass):
11012         parent class is FrameClass, not BinClass.
11013
11014         * gtk/gtk.h: Add gtkinvisible, which was missing.
11015         (It's occasionalyl useful for client apps, if seldom.)
11016
11017         * gdk/gdktypes.h: Remove obsolete GDK_CORE_POINTER
11018         #define.
11019
11020 Wed Sep  6 09:53:15 2000  Owen Taylor  <otaylor@redhat.com>
11021
11022         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Use X-space
11023         coordinates when creating window, instead of GDK-space
11024         coordinates. (Avoid BadValue on too large windows.)
11025
11026 2000-09-05  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
11027
11028         * configure.in (use_mmx_asm): Remove conftest* after use along the
11029         lines of AC_TRY_COMPILE.        
11030         
11031         * gtk/gtkrc.c (gtk_rc_parse_file): Use g_path_get_dirname instead
11032         of g_dirname, which is deprecated.
11033         (gtk_rc_parse_any): Removed calls to
11034         g_scanner_{freeze,thaw}_symbol_table, which are deprecated.
11035
11036         * gtk/gtkbindings.c (binding_entry_new, binding_entry_destroy):
11037         Removed calls to g_hash_table_{freeze,thaw}, as they are
11038         deprecated now.
11039
11040         * gtk/testtext.c (buffer_pretty_name): Use g_path_get_basename
11041         instead of g_basename.
11042         
11043 2000-09-04 Elliot Lee <sopwith@redhat.com>
11044         
11045         * gdk/gdkpixbuf.h: Put text after #endif inside a comment to avoid
11046         ANSI warning.
11047
11048 Sun Sep 03 00:47:08 2000  George Lebl <jirka@5z.com>
11049
11050         * gtk/gtkwidget.h:  Add some documenting comments about 
11051           GTK_CAN_DEFAULT, GTK_HAS_DEFAULT and GTK_RECEIVES_DEFAULT
11052           just as owen said on irc.
11053
11054         * gtk/gtkwindow.c (gtk_window_set_default):  Don't blindly
11055           set HAS_DEFAULT.  Only set it if there isn't another window
11056           holding it (a focus window which RECEIVES_DEFAULT) and only unset
11057           it if the widget is not the focused window with RECEIVES_DEFAULT.
11058           This fixes weird double default bugs in dialogs which has things
11059           call gtk_window_set_default at times.
11060
11061 Fri Sep  1 22:39:07 2000  Owen Taylor  <otaylor@redhat.com>
11062
11063         * gtk/gtkmenu.[ch] TODO.xml: Apply patch from
11064         Nils Barth and David Santiago to improve submenu
11065         navigation. The patch does this by creating a triangular
11066         region from the point where the pointer leaves the
11067         menu to the submenu.  While the pointer is in
11068         that region and a timeout has not expired, events 
11069         that would cause the active submenu to change are
11070         ignored.
11071
11072 Fri Sep  1 15:34:46 2000  Owen Taylor  <otaylor@redhat.com>
11073
11074         * gdk/x11/gdkwindow-x11.c (gdk_window_move): Fix bug where
11075         moving a toplevel window immediately after sizing it would
11076         result in it being sized back to the old size since 
11077         impl->width, impl->height aren't updated until we hear
11078         back from the server. There is still a (longstanding) bug
11079         here that gdk_window_get_size() will give the wrong size
11080         until we do hear back.
11081
11082 2000-08-31  Havoc Pennington  <hp@redhat.com>
11083
11084         * gtk/gtktextiter.h, gtk/gtktextiter.c, gtk/gtktextlayout.h, 
11085         gtk/gtktextlayout.c, gtk/gtktexttag.h, gtk/gtktexttag.c, 
11086         gtk/gtktexttagprivate.h, gtk/gtktextview.c:
11087         Rename GtkTextStyleValues to GtkTextAttributes
11088
11089 2000-08-31  Havoc Pennington  <hp@pobox.com>
11090
11091         * gtk/gtktextbtree.c (GtkTextBTree): cache end line, 
11092         for rapid testing whether an iterator is the end iterator
11093         (gtk_text_btree_new): init end line cache
11094         (gtk_text_line_is_last): use fast cached line to 
11095         see if we're the last line.
11096         (get_last_line): use cached line here too, should 
11097         speed up some random unrelated code.
11098         
11099 2000-08-30  Havoc Pennington  <hp@pobox.com>
11100
11101         * gtk/gtkmarshal.list: Add marshallers for changed GtkTextBuffer
11102         signals.
11103
11104         * gtk/gtktextbuffer.h: Add "interactive" arg to insert_text and
11105         delete_text signals. This allows the signals to be used for
11106         implementing undo.
11107
11108         * gtk/gtktextbuffer.c: Change signal handler signatures; 
11109         provide "interactive" argument when emitting insert_text or
11110         delete_text signal.
11111         
11112 2000-08-30  Havoc Pennington  <hp@pobox.com>
11113
11114         * gtk/gtktextbuffer.c: Docs
11115
11116 Fri Aug 25 12:16:15 2000  Owen Taylor  <otaylor@redhat.com>
11117
11118         * gdk/x11/gdkimage-x11.c: remove GDK_IMAGE_SHARED_PIXMAP
11119         from switch statements, since Tor removed the enumeration
11120         value.
11121         
11122         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
11123         s/GDK_IS_WINDOW/GDK_IS_DRAWABLE/.
11124
11125 2000-08-29 Elliot Lee <sopwith@redhat.com>
11126         * */*.h: Use G_GNUC_CONST.
11127
11128 2000-08-27  Havoc Pennington  <hp@pobox.com>
11129
11130         * gtk/gtktextiter.c, gtk/gtktextiter.h: wrote lots of API docs,
11131         minor indentation fixes, inserted some FIXME about stuff I
11132         realized was broken while documenting it.
11133         (gtk_text_iter_get_pixmap): allow out params to be NULL, following
11134         GTK convention  
11135
11136 Tue Aug 22 12:33:24 2000  Owen Taylor  <otaylor@redhat.com>
11137
11138         * gtk/testgtk.c (create_styles): Fix double free of
11139         font desc.
11140
11141 Mon Aug 21 22:39:18 2000  Owen Taylor  <otaylor@redhat.com>
11142
11143         * gtk/gtkwidget.[ch]: Add gtk_widget_modify_{fg,bg,text,base,font}.
11144         
11145         * gtk/testgtk.c (create_styles): Add a test for modifying
11146         the style through gtk_widget_modify_*.
11147
11148         * gtk/gtkwidget.c (gtk_widget_get_modifier_style): Add
11149         a function to get the current modifier style.
11150
11151         * gtk/gtkwidget.c (gtk_widget_modify_style): Make a copy
11152         of the passed in GtkRcStyle instead of ref'ing it.
11153
11154         * gtk/gtkrc.[ch]: Add gtk_rc_style_copy().
11155
11156 2000-08-20  Tor Lillqvist  <tml@iki.fi>
11157
11158         * gdk/gdkimage.h
11159         * gdk/win32/gdkimage-win32.c: No need any longer on Win32 for the
11160         shared memory image+pixmap GdkImage type, or
11161         gdk_image_bitmap_new(). They were used in the gdk_imlib port, but
11162         I am dropping that.
11163
11164         * gtk/gtkmain.h: On Win32, use a #define to map gtk_init() to
11165         actually call gtk_init_abi_check(), passing also
11166         sizeof(GtkWindow). Ditto for gtk_init_check(). 
11167
11168         * gtk/gtk.def
11169         * gtk/gtkmain.c: (gtk_init_abi_check, gtk_init_check_abi_check):
11170         New functions, used to check that the GTK+-using code has been
11171         compiled using the correct compiler and switches. In particular,
11172         with gcc one has to use the -fnative-struct switch as GTK+ is
11173         compiled with that.
11174
11175 Fri Aug 18 17:27:46 2000  Owen Taylor  <otaylor@redhat.com>
11176
11177         * gtk/gtkclist.c (gtk_clist_merge): Don't leave dangling
11178         ->prev fields when merging lists. (Found simultaneously
11179         by Pawel Salek and Jakub Jelinek)
11180
11181 2000-08-12  Tor Lillqvist  <tml@iki.fi>
11182
11183         * gdk/gdk.def
11184         * gtk/gtk.def: Add missing entries.
11185
11186         * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Use
11187         OUT_TT_ONLY_PRECIS, try to get a TrueType font.
11188
11189         * gdk/win32/gdkinput-win32.c (gdk_device_get_state): New
11190         function. Dummy implementation at this point.
11191
11192         * gtk/makefile.mingw.in: Fix typo. Add testtext and testtextbuffer
11193         rules. Undefine GTK_COMPILATION when compiling the test programs.
11194         
11195         * gtk/gtkdebug.h: Mark gtk_debug_flags for export/import.
11196
11197 2000-08-11  Tor Lillqvist  <tml@iki.fi>
11198
11199         * gtk/gtkfilesel.c: Add more calls to g_filename_{to,from}_utf8()
11200         to convert back and forth from UTF-8 and the "system" (or "current
11201         locale") charset when necessary. Indentation/spacing cleanup.
11202
11203 2000-08-10  Havoc Pennington  <hp@redhat.com>
11204
11205         * Makefile.am (snapshot): Change the format of the snapshot
11206         version to match glib
11207
11208         * gdk/win32/Makefile.am (EXTRA_DIST): remove gdkinputprivate.h
11209         from EXTRA_DIST since it doesn't seem to exist
11210
11211 2000-08-10  Tor Lillqvist  <tml@iki.fi>
11212
11213         * gtk/gtkfilesel.c (open_new_dir): Use the "system codepage"
11214         version of the directory name (not the UTF-8 one) when building
11215         the path name to stat().
11216
11217 2000-08-03  Elliot Lee  <sopwith@redhat.com>
11218
11219         * gdk/gdkpango.c (gdk_draw_layout_line): Don't shape runs with a
11220         PANGO_ATTR_SHAPE set.
11221
11222 Thu Aug  3 09:17:06 2000  Owen Taylor  <otaylor@redhat.com>
11223
11224         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Applied patch from
11225         Peter Osterlund to simplify the code while keeping the
11226         functionality the same.
11227
11228 Wed Aug  2 14:57:38 2000  Owen Taylor  <otaylor@redhat.com>
11229
11230         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Move
11231         is_viewable() test further inside the function, since removing the 
11232         window from the redraw list without clearing ->update_area
11233         was also very broken.
11234
11235 2000-08-02  Tor Lillqvist  <tml@iki.fi>
11236
11237         * configure.in: Check for <unistd.h>.
11238
11239 2000-08-01  Martin Baulig  <baulig@suse.de>
11240
11241         * gtk/gtkmain.c (gtk_init_check): Use g_message() and not g_warning()
11242         to display the message that this is a development version of GTK+.
11243
11244 Mon Jul 31 18:37:36 2000  Owen Taylor  <otaylor@redhat.com>
11245
11246         * gtk/gtkentry.c (entry_adjust_scroll): Fix problem where computation
11247         was depending on widget->allocation instead of the width of text_area,
11248         which was incorrect for subclasses like GtkSpinButton.
11249
11250         * gdk/gdkpango.c (gdk_draw_layout): Fix a couple of typos
11251         with width == 1 tests that should be width == -1.
11252
11253 Mon Jul 31 16:45:48 2000  Owen Taylor  <otaylor@redhat.com>
11254
11255         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Replace broken, 
11256         (broken, Elliot, every single window blank on X) custom code with call
11257         to gdk_window_is_viewable() which a) prevents code duplicate and
11258         b) works. 
11259
11260 2000-07-31  Elliot Lee  <sopwith@redhat.com>
11261
11262         * gtk/gtkcolorsel.c: We really do need to include gdkfb.h in order
11263         to get the GDK_PARENT_ROOT() macro to work.
11264         * gtk/gtkmarshal.list: Add NONE:STRING,POINTER
11265         * gdk/gdkwindow.c: Don't send expose events, or invalidate pieces
11266         of, windows that aren't shown.
11267         * gdk/linux-fb: Redraw-when-menu-hidden solved, plus a bunch of
11268         pointer grab stuff.
11269
11270 Mon Jul 31 13:53:16 BST 2000  Tony Gale <gale@gtk.org>
11271
11272         * docs/gtkfaq.sgml docs/gtk-faq.sgml:
11273           s/gtk_main_iteration/g_main_iteration/
11274
11275           Did this already in change:
11276                 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
11277           don't know how it got reverted.
11278
11279 2000-07-31  Stanislav Brabec  <utx@penguin.cz>
11280
11281         * gdk/gdk.c: #ifdef G_ENABLE_DEBUG around gdk_arg_debug_cb and
11282         gdk_arg_no_debug_cb to fix compilation problem with --disable-debug.
11283
11284         * gdk/Makefile.am: Link gdk against actually compiled gdk_pixbuf-1.3,
11285         not gdk_pixbuf.
11286
11287 2000-07-30  Pablo Saratxaga <pablo@mandrakesoft.com>
11288
11289         * configure.in,po/{sp,sr}.po: Added Serbian files
11290
11291 2000-07-30  Tor Lillqvist  <tml@iki.fi>
11292
11293         * gdk/Makefile.am: Add makefile.mingw.in to EXTRA_DIST.
11294
11295         * gdk/win32/gdkevents-win32.c (gdk_events_init, gdk_events_queue):
11296         Remove the g_pipe_readable_msg stuff. Not needed with new GLib
11297         GIOChannel implementation.
11298
11299         * gdk/win32/gdkinput.c
11300         * gdk/win32/gdkpango-win32.c: Update license name here, too.
11301
11302         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_lookup): Fix
11303         definition to match prototype.
11304
11305         * gtk/makefile.mingw.in: Add libiconv CFLAGS and LIBS.
11306
11307 2000-07-27  Elliot Lee  <sopwith@redhat.com>
11308
11309         * gtk/gdk-pixbuf-loader.[ch]: Add gdk_pixbuf_loader_new_with_type
11310         function, to allow handling image formats that cannot be detected
11311         by looking at content alone.
11312
11313 Thu Jul 27 13:13:21 BST 2000  Tony Gale <gale@gtk.org>
11314
11315         * docs/tutorial/*.gif *.jpg *.eps
11316           Update these to the same look-n-feel.
11317           Why does including images in DocBook suck so badly?
11318
11319 Thu Jul 27 05:06:29 2000  Tim Janik  <timj@gtk.org>
11320
11321         * gtk/gtktable.c: applied patch from Phil Thompson
11322         <phil@river-bank.demon.co.uk> that enables space settings for
11323         the last row/columns as well.
11324
11325 Wed Jul 26 12:59:31 2000  Tim Janik  <timj@gtk.org>
11326
11327         * *.[hc]: applied patch from Andreas Persenius <ndap@swipnet.se> that
11328         updates the license headers to the GNU Lesser General Public License,
11329         as well as updating the copyright year to 2000.
11330
11331 2000-07-26  Robert Brady  <rwb197@zepler.org>
11332
11333         * configure.in: Cause GETTEXT_PACKAGE to be consistent in config.h
11334           and po/Makefile, was installing and looking for them under gtk20
11335           and gtk2 respectively.
11336
11337 2000-07-25  Havoc Pennington  <hp@redhat.com>
11338
11339         * gtk/testtext.c: Comment out some stuff that depends on the rest
11340         of my patches.
11341
11342 2000-07-25  Havoc Pennington  <hp@redhat.com>
11343
11344         * gtk/gtkmarshal.list: Add NONE:POINTER,POINTER,INT for the text
11345         buffer
11346
11347 2000-07-25  Havoc Pennington  <hp@redhat.com>
11348
11349         * gtk/testtext.c, gtk/testtextbuffer.c: update to reflect text
11350         widget changes.
11351
11352         * gtk/gtktextview.h: To be consistent with usage of "line"
11353         throughout the API to mean "newline-terminated thingy", change
11354         MOVEMENT_LINE to be MOVEMENT_WRAPPED_LINE, and MOVEMENT_PARAGRAPH
11355         to MOVEMENT_LINE.
11356
11357         (GtkTextView): Add flags for default editability, and whether to
11358         show the cursor. Add functions to get/set that. Add 
11359
11360         (gtk_text_view_get_iter_location): new function
11361
11362         * gtk/gtktexttypes.h: Move GtkTextLine typedef from here to
11363         gtktextlayout.h
11364         (g_convert): Add g_convert temporarily, will go in glib in a bit
11365         
11366         * gtk/gtktexttagtable.h: include gtktexttag.h, and define
11367         GtkTextTagTableForeach instead of brokenly using GHFunc.
11368         Change gtk_text_tag_table_foreach() so it doesn't use GHFunc.
11369
11370         * gtk/gtktexttagprivate.h: Remove GtkTextStyleValues from here,
11371         moved to public header.
11372
11373         * gtk/gtktexttag.h: Rename the "elide" attribute of tags to
11374         "invisible", since "elide" was a bad name.
11375         (gtk_text_tag_get_priority): Added
11376
11377         (GtkTextStyleValues): put this in public header, along with
11378         functions to use it.
11379
11380         * gtk/gtktextmarkprivate.h: Include more headers, since we no
11381         longer include gtktextbtree.h.
11382
11383         * gtk/gtktextmark.h: Add gtk_text_mark_ref, gtk_text_mark_unref,
11384         gtk_text_mark_deleted
11385
11386         * gtk/gtktextlayout.h: Don't include the "really private" headers,
11387         only buffer/iter. Forward declare GtkTextLIne and GtkTextLineData
11388         to make this possible. Now we only need to install
11389         gtktextlayout.h, not gtktextbtree.h and gtktext*private.h.
11390         (However the Makefile.am isn't changed yet because of the
11391         logistics of merging gtk-hp-patches piecemeal)
11392
11393         * gtk/gtktextiterprivate.h: include btree header, so it compiles;
11394         rename gtk_text_iter_get_line to gtk_text_iter_get_text_line since
11395         gtk_text_iter_get_line is now used in the public API for a
11396         different purpose.
11397
11398         * gtk/gtktextiter.h: Clean up function names to be more
11399         consistent. Always call char offset "offset" and byte index
11400         "index". A "line" is always a line number. 
11401
11402         (gtk_text_iter_is_last): new function, more efficient than 
11403         the existing way to check
11404         (gtk_text_iter_is_first): new function, also more efficient
11405
11406         (gtk_text_iter_up_lines, gtk_text_iter_down_lines): Remove these
11407
11408         (gtk_text_iter_next_char, gtk_text_iter_prev_char): Renamed from 
11409         gtk_text_iter_forward_char, etc.
11410
11411         (gtk_text_iter_forward_to_tag_toggle): Renamed from
11412         forward_find_tag_toggle, since this isn't a linear search
11413
11414         (GtkTextCharPredicate): rename from GtkTextViewCharPredicate
11415
11416         (gtk_text_iter_forward_search, gtk_text_iter_backward_search): 
11417         New functions, search for a buffer substring.
11418
11419         * gtk/gtktextbuffer.h: Add fields to store whether a paste is
11420         interactive and default editable (since we need to store that info
11421         until we receive the selection data).
11422
11423         Remove all the _at_char and at_line etc. versions of functions;
11424         only have iterator versions.
11425
11426         Add _interactive() versions of functions, that consider the
11427         editability of text. (FIXME add interactive flag to the 
11428         insert/delete signals per Darin's suggestion)
11429
11430         (gtk_text_buffer_get_tag_table): new function, demand-creates the
11431         tag table if necessary
11432
11433         Remove declaration of gtk_text_buffer_get_iter_from_string
11434
11435         (_gtk_text_buffer_get_btree): private/internal function, added.
11436         
11437
11438         * gtk/gtktextbtree.h: Remove forward decl of GtkTextLineData.
11439         (gtk_text_line_is_last): new function
11440
11441 2000-07-25  Havoc Pennington  <hp@redhat.com>
11442
11443         * gtk/gtkprogressbar.h: Implement new sane, 5-function API for
11444         using GtkProgressBar. See Changes-2.0.txt for details.
11445
11446         * gtk/gtkprogressbar.c: Add object arguments "fraction" and
11447         "pulse_step" which are the equivalent of
11448         gtk_progress_bar_set_pulse_step and gtk_progress_bar_set_fraction.
11449         Implement new API.
11450         
11451         * gtk/gtkprogress.h (struct _GtkProgress): Add a field
11452         (use_text_format) to mark whether text set on the progress bar is
11453         a format string. Deprecate entire GtkProgress interface.
11454
11455         * gtk/gtkprogress.c (gtk_progress_init): init use_text_format to TRUE
11456         (gtk_progress_build_string): make this a no-op if use_text_format
11457         is FALSE
11458
11459         * docs/Changes-2.0.txt: Describe progress bar changes.
11460
11461 2000-07-25  Tor Lillqvist  <tml@iki.fi>
11462
11463         * Makefile.am: Include the build directory.
11464
11465         * configure.in: Generate build/Makefile, build/win32/Makefile,
11466         gdk/, gdk/win32/, and gtk/makefile.mingw.
11467
11468         * config.h.win32: Add USE_GMODULE and USE_MMX for gdk-pixbuf.
11469         Add GETTEXT_PACKAGE.
11470         
11471         * gdk/gdk.def
11472         * gtk/gtk.def: Updates.
11473
11474         * gdk/gdkfont.h
11475         * gdk/gdkpixmap.h: Remove temporary Win32-only functions, we don't
11476         need them any longer.
11477
11478         * gdk/gdkinput.h: Mark gdk_core_pointer for export/import.
11479
11480         * gdk/makefile.mingw.in: Define GDK_COMPILATION. Link with
11481         PANGOWIN32_LIBS and gdk_pixbuf.
11482
11483         * gdk/win32: Compiles, but no doubt doesn't work at all.
11484
11485         * gdk/win32/makefile.mingw.in: Define GDK_COMPILATION. 
11486
11487         * gdk/win32/gdkinput.c: New file, temporarily.
11488         
11489         * gdk/win32/gdkinput-win32.h: New file
11490
11491         * gdk/win32/gdkinputprivate.h: Remove.
11492
11493         * gdk/win32/gdkpango-win32.c: New file.
11494
11495         * gtk/makefile.mingw.in: New file
11496
11497         * gtk/makefile.cygwin: Removed
11498         
11499         * gtk/Makefile.am: Update accordingly.
11500
11501         * gtk/gtkrc.[ch] (gtk_win32_get_installation_directory): Renamed and
11502         made externally visible.
11503
11504         * gtk/gtkmain.c: Use it.
11505         
11506         * gtk/gtktextdisplay.c: No need to include pangox.h, pango.h
11507         is enough.
11508
11509         * gtk/gtktypeutils.c: Mark glib_debug_objects for import.
11510
11511 2000-07-24 Elliot Lee <sopwith@redhat.com>
11512         * gdk/gdkprivate.h: Remove gdk_*_lookup() defines, since they are defined by the
11513         individual backends already.
11514         * gdk/gdkregion-generic.h, gdk/gdktypes.h: Put gdkregionbox & gdksegment back together
11515         again. Yes, there really is a good reason for this, if you are using the gdkregion
11516         internals, and if you're not, why do you care?
11517         * gdk/gdkwindow.c: Fix inverted condition
11518         * gdk/linux-fb: Compiles (for me - it will not work elsewhere most likely).
11519         * gtk/gtkcolorsel.c, gtk/gtkwindow.c: Add include for linux-fb
11520         * gtk/gtkrange.c: Redraw trough when moving.
11521         * gtk/gtktypeutils.c: Fix warning by adding const cast.
11522         * modules/linux-fb/basic.c: Fix unknown glyph retrieval.
11523
11524 2000-07-23  Tor Lillqvist  <tml@iki.fi>
11525
11526         * configure.in: Check for mkstemp and sigsetjmp. Output
11527         gdk-pixbuf/makefile.mingw and gdk-pixbuf/pixops/makefile.mingw.
11528
11529         More work on GDK for Win32. Still in an intermediate state.
11530
11531         * gdk/makefile.cygwin
11532         * gdk/win32/makefile.cygwin: Removed.
11533         
11534         * gdk/makefile.mingw.in
11535         * gdk/win32/makefile.mingw.in: New files.
11536
11537         * gdk/Makefile.am
11538         * gdk/win32/Makefile.am: Generate and distribute them.
11539
11540         * gdk/win32/gdkwindow-win32.h
11541         * gdk/win32/gdkdrawable-win32.h
11542         * gdk/win32/gdkpixmap-win32.h: New files.
11543
11544         * gdk/win32/gdkcolor-win32.c
11545         * gdk/win32/gdkcursor-win32.c
11546         * gdk/win32/gdkdrawable-win32.c
11547         * gdk/win32/gdkgc-win32.c
11548         * gdk/win32/gdkimage-win32.c
11549         * gdk/win32/gdkprivate-win32.h
11550         * gdk/win32/gdkwin32.h: Update data structures. Cosmetics:
11551         Rename fields and variables called xcursor, xid, etc (these names
11552         were leftovers from the X11 backend) to hcursor, hwnd, hbitmap etc.
11553
11554 Sat Jul 22 17:41:26 2000  Owen Taylor  <otaylor@redhat.com>
11555
11556         * gtk/gtkentry.[ch]: Fix some problems with vertical
11557         alignment.
11558
11559         * gtk/gtkentry.c (gtk_entry_find_position): Fix 
11560         char/byte confusion.
11561
11562 Sat Jul 22 11:16:05 2000  Owen Taylor  <otaylor@redhat.com>
11563
11564         * gtk/gtktextview.c (changed_handler): Fix bug where
11565         redraw wasn't being done properly when height of
11566         dirty region changed.
11567
11568         * demos/Makefile.am: Remove various references to
11569         -lgmodule
11570
11571 Fri Jul 21 15:28:13 2000  Owen Taylor  <otaylor@redhat.com>
11572
11573         * gtk/gtktextlayout.[ch], gtk/gtktextdisplay.c: Use new
11574         PangoAttrShape to reserve space for pixmaps, add 
11575         GSList *pixmaps to GtkTextLineDisplay, draw the pixmaps
11576         in the display functions.
11577         
11578         * gtk/testgtk.c (create_layout): Set some more exotic
11579         scrolled window options
11580
11581         * gtk/gtkscrolledwindow.[ch] (gtk_scrolled_window_set_shadow_type):
11582         Add function to set the shadow type of a window, to allow
11583         putting a shadow around widgets such as GtkLayout or GnomeCanvas
11584         which don't draw their own frame.
11585
11586 Fri Jul 21 16:34:42 BST 2000  Tony Gale <gale@gtk.org>
11587
11588         * docs/tutorial/package-db-tutorial.sh: New file for
11589           packaging DocBook format tutorial
11590
11591 Fri Jul 21 14:23:51 BST 2000  Tony Gale <gale@gtk.org>
11592
11593         * docs/tutorial/gtk-tut.sgml: Minor updates
11594
11595         * docs/tutorial/*.jpg *.eps: Screenshots for tutorial
11596
11597 2000-07-19  Tor Lillqvist  <tml@iki.fi>
11598
11599         * gtk/gtksignal.c: Fix C++ comment.
11600
11601         * gtk/gtkimmulticontext.c
11602         * gtk/gtktextbtree.c: Remove gccisms: Don't use __FUNCTION__,
11603         don't return value from void functions.
11604
11605         * gtk/gtk.def: Add gtk_rc_style_unref.
11606
11607 2000-07-19  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
11608
11609         * gdk-pixbuf/gdk-pixbuf.h, gtk/gtkhsv.h, gtk/gtktextbtree.h,
11610         gtk/gtktextbuffer.h, gtk/gtktextchild.h, gtk/gtktextdisplay.h,
11611         gtk/gtktextiter.h, gtk/gtktextiterprivate.h, gtk/gtktextlayout.h,
11612         gtk/gtktextmarkprivate.h, gtk/gtktextsegment.h, gtk/gtktexttag.h,
11613         gtk/gtktexttagtable.h, gtk/gtktexttypes.h, gtk/gtktextview.h,
11614         gtk/gtktypeutils.h: Include files outside of the extern "C"
11615         block. Makes some C++ compiler happy. Reported by Denis Vakatov
11616         <vakatov@peony.nlm.nih.gov>.
11617
11618 Wed Jul 19 14:07:57 BST 2000  Tony Gale <gale@gtk.org>
11619
11620         * docs/tutorial/gtk-tut.sgml: Yet more clean ups.
11621           Completes first pass. Hurrah!
11622
11623 Tue Jul 18 17:17:55 BST 2000  Tony Gale <gale@gtk.org>
11624
11625         * docs/tutorial/gtk-tut.sgml: More clean ups.
11626
11627 Mon Jul 17 18:52:38 2000  Owen Taylor  <otaylor@redhat.com>
11628
11629         * gtk/gtkentry.c (gtk_entry_draw_text): Restore code to
11630         paint the background of the text area which was accidentally
11631         removed at some point.
11632
11633         * gtk/gtkrc.[ch] gtk/gtkstyle.[ch] gtk/gtkthemes.[ch]: 
11634           
11635          - Move most of the functionality from the theme vtable
11636            into GtkRcStyleClass and GtkStyleClass. The moved
11637            vtable functions were changed a bit in the move to
11638            work better in their new home.
11639
11640          - Get rid of the engine and engine_data fields from
11641            GtkRcStyle and GtkStyle; instead the theme
11642            engine derives theme-specific subclasses of GtkRcStyle
11643            and GtkStyle
11644
11645          - Add extra dlsym() found entry point to themes,
11646            theme_create_rc_style().
11647
11648         * gtk/gtkstyle.c: Copy xthickness, ythickness fields
11649         in gtk_style_real_copy.
11650
11651         * gtk/themes.[ch]: add a function gtk_theme_engine_register_type()
11652         to register a type associated with an engine. (The engine
11653         won't be unloaded as there is an instance of the type.)
11654
11655
11656 Mon Jul 17 18:19:06 BST 2000  Tony Gale <gale@gtk.org>
11657
11658         * docs/tutorial/gtk-tut.sgml: Clean ups.
11659
11660 Mon Jul 17 13:59:29 BST 2000  Tony Gale <gale@gtk.org>
11661
11662         * docs/tutorial/gtk-tut.sgml: Initial DocBook version. Lots
11663           of cleaning up to do.
11664
11665 2000-07-15  Tor Lillqvist  <tml@iki.fi>
11666
11667         * gdk/testgdk.c: New file, quick hack to test backends for
11668         pixel-by-pixel correctness of the most simple graphic operations.
11669
11670 Fri Jul 14 20:30:25 2000  Owen Taylor  <otaylor@redhat.com>
11671
11672         * Really release 1.3.1
11673         
11674         * gtk-config-2.0.in gtk-2.0.m4: Fix up to correspond to new
11675         include structure.
11676
11677 Fri Jul 14 18:40:39 2000  Owen Taylor  <otaylor@redhat.com>
11678
11679         * Released 1.3.1
11680
11681 Fri Jul 14 16:21:26 2000  Owen Taylor  <otaylor@redhat.com>
11682
11683         * gtk/gtktextlayout.c: use FALSE for size_only most
11684         of the time when calling gtk_text_layout_get_line_display()
11685         to avoid causing double reshapes when a redraw follows
11686         immediately after.
11687
11688 Tue Jul 11 11:13:40 2000  Owen Taylor  <otaylor@redhat.com>
11689
11690         * gtk/gtkrange.c (gtk_range_default_[hv]slider_update): Invalidate
11691         appropriate region and gdk_window_process_updates() so trough
11692         updating doesn't lag behind the window being scrolled.
11693
11694         * gdk/gdkgc.c: Make parent_class pointer static.
11695          
11696 Sun Jul  9 21:31:23 2000  Owen Taylor  <otaylor@redhat.com>
11697
11698         * gdk/gdk-pixbuf.c gtk/gdk-pixbuf-loader.c gtk/gtktextview.c:
11699         include <string.h>.
11700          
11701         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Fix
11702         cut-and-paste error in computing memory offset for 4 channels.
11703
11704 Fri Jul 14 14:05:02 2000  Owen Taylor  <otaylor@redhat.com>
11705
11706         * gtk/gtkrc.c (gtk_rc_parse_pixmap_path_string): Remove
11707         gtk_rc_append_default_pixmap_path(), since it wasn't
11708         adding an interesting path and we don't have a meaningful
11709         default for this value.
11710
11711 Fri Jul 14 12:22:49 2000  Owen Taylor  <otaylor@redhat.com>
11712
11713         * configure.in Makefile.am gtk-config.m4 gtk.m4: Move
11714         gtk-config to gtk-config-2.0 move gtk_.m4 to
11715         gtk-2.0.m4
11716
11717         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
11718         gdk/Makefile.am demos/Makefile.am: Change 
11719         library names to libgtk-1.3.la, etc, so that we
11720         can distinguish gtk-1.2 and gtk-2.0 on the linkline.
11721
11722         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
11723         gdk/Makefile.am gdk/x11/Makfile.am
11724         Move include files into /usr/include/gtk-2.0, 
11725         /usr/lib/gtk-2.0/include/
11726          
11727         * autogen.sh acconfig.h configure.in gtk/gtkmain.c
11728         gtk/gtkintl.h: Change package for gettext from 
11729         gtk+ to gtk20. Put hack in autogen.sh to modify
11730         po/Makefile.in.in after gettextize to make this
11731         possible.
11732
11733         * gtk+.spec: Some updates, not tested.
11734
11735         * gdk-pixbuf/Makefile.am: Move loaders into
11736         $(libdir)/gtk-2.0/$(GTK_VERSION)/loaders.
11737
11738         * gtk/Makefile.am gtk/gtkrc.c: Move RC file locations
11739         $(sysconfdir)/gtk-2.0 ~/.gtkrc-2.0; theme subdir
11740         to THEMENAME/gtk-2.0/. Move engine directory  to
11741         $(libdir)/gtk-2.0/$(GTK_VERSION)/engines.
11742         
11743 2000-07-12  Tor Lillqvist  <tml@iki.fi>
11744
11745         Win32 changes, still doesn't build though.
11746
11747         * gdk/makefile.cygwin
11748         * gdk/win32/makefile.cygwin
11749         * gtk/makefile.cygwin: Updates.
11750
11751         * gdk/win32/gdkgc-win32.c (_gdk_win32_gc_new): Use the same
11752         default values for fg and bg pixel as X11 does (0 and 1), not
11753         black and white. Use PS_ENDCAP_FLAT and PS_JOIN_MITER by default.
11754         Use 0 for pen width by default (treated as 1 anyway later, but for
11755         apps that might check the value in the GdkGC).
11756         (gdk_win32_hdc_get, gdk_win32_hdc_release): New functions, public
11757         interface to gdk_gc_predraw and _postdraw.
11758
11759         * gdk/win32/gdkwin32.h
11760         * gdk/gdk.def: Add gdk_win32_hdc_{get,release}.
11761
11762         * gdk/win32/gdkcolor-win32.c (gdk_colormap_alloc1): Remove
11763         extraneous semicolon.
11764
11765         * gdk/win32/gdkdrawable-win32.c: Check also for pen_width == 0.
11766
11767         * gdk/win32/gdkimage-win32.c (gdk_image_new): Use the visual's depth,
11768         not the Win32 bitspixel value.
11769
11770         * gdk/win32/gdkcc-win32.c:
11771         * gdk/win32/gdkcolor-win32.c 
11772         * gdk/win32/gdkprivate-win32.h
11773         * gdk/win32/gdkwin32.h: Changes to make compilable, with new
11774         GDK object structure.
11775
11776 Tue Jul 11 20:59:35 2000  Tim Janik  <timj@gtk.org>
11777
11778         * docs/tutorial/gtk_tut_12.es.sgml (name): 
11779         * docs/tutorial/gtk_tut_it.sgml (name): 
11780         * docs/tutorial/gtk_tut_fr.sgml (name): 
11781         * docs/tutorial/gtk_tut.sgml (name): scratched notion of completely
11782         outdated email adress: s/timj@psynet.net/timj@gtk.org/.
11783
11784 Tue Jul 11 13:10:57 BST 2000  Tony Gale <gale@gtk.org>
11785
11786         * docs/faq/gtk-faq.sgml: Cleanup indenting and various
11787           small changes.
11788
11789 Tue Jul 11 08:04:58 2000  Tim Janik  <timj@gtk.org>
11790
11791         * gtk/gtktree.c (gtk_real_tree_select_child): eek, i've never seen
11792         a bug here, never been here and never fixed anything ;(
11793         (don't segfault if tree->root_tree is NULL, which happens prior
11794         to widget realization, but puke instead).
11795
11796 Tue Jul 11 06:38:42 2000  Tim Janik  <timj@gtk.org>
11797
11798         * gtk/gtkrc.h: add xthickness and ythickness to GtkRcStyle and
11799         add the necessary tokens.
11800
11801         * gtk/gtkrc.c (gtk_rc_style_init): properly initiality the rc style.
11802         (gtk_rc_style_to_style): copy thicknesses.
11803         (gtk_rc_init_style): apply thicknesses.
11804         (gtk_rc_parse_style): parse xthickness and ythickness.
11805
11806         * gdk/x11/gdkdnd-x11.c: silence compiler in switch() statements.
11807
11808         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): 
11809         (gdk_window_new): 
11810         (_gdk_windowing_window_init): 
11811         * gdk/x11/gdkpixmap-x11.c (gdk_pixmap_foreign_new): 
11812         (gdk_pixmap_create_from_data): 
11813         (gdk_bitmap_create_from_data): 
11814         (gdk_pixmap_new): 
11815         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
11816         (gdk_image_new): 
11817         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): 
11818         * gdk/x11/gdkdnd-x11.c (gdk_drag_context_new): 
11819         * gdk/x11/gdkcolor-x11.c (gdkx_colormap_get):
11820         (gdk_colormap_get_system): 
11821         (gdk_colormap_new): 
11822         * gdk/gdkwindow.c (gdk_window_init): 
11823         * gtk/gtkstyle.c (gtk_style_new):
11824         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done):
11825         * gdk/gdkpixmap.c (gdk_pixmap_init): 
11826         * gtk/gtkrc.c (gtk_rc_style_new):
11827         use g_object_new() instead of g_type_create_instance() which
11828         is a private function for fundamental type implementations.
11829
11830 Thu Jul  6 16:12:14 2000  Owen Taylor  <otaylor@redhat.com>
11831
11832         * configure.in: Add check for db2html
11833
11834 Thu Jul  6 14:53:05 2000  Owen Taylor  <otaylor@redhat.com>
11835
11836         * gtk/gtktypeutils.c (gtk_type_init): Add a temporary 
11837         hack to set glib_debug_objects based on gtk_debug_flags.
11838
11839 Thu Jul  6 14:12:13 2000  Owen Taylor  <otaylor@redhat.com>
11840
11841         * INSTALL.in: Update the Prerequisites section.
11842
11843         * Makefile.am demos/Makefile.am docs/Makefile.am
11844         docs/tutorial/Makefile.am gdk/x11/Makefile.am
11845         gdk/linux-fb/Makefile.am: Dist fixes
11846
11847 Thu Jul  6 12:26:03 2000  Owen Taylor  <otaylor@redhat.com>
11848
11849         * NEWS: 10,000 foot view of 1.3.1 changes.
11850
11851 Thu Jul  6 11:54:03 2000  Owen Taylor  <otaylor@redhat.com>
11852
11853         * gdk/gdk.h gdk/gdktypes.h gdk/linux-fb/gdkmain-fb.c
11854         gdk/nanox/gdkmain-nanox.c gdk/win32/gdkevents-win32.c
11855         gdk/win32/gdkinput-win32.c gdk/win32/gdkwin32.h
11856         gdk/x11/gdkmain-x11.c: 
11857
11858         Patch from George Lebl to add a GdkGrabStatus enumeration to use
11859         as a return value of gdk_*_grab(). Previously, we just
11860         returned the X11 values directly.
11861
11862 Thu Jul  6 11:27:44 2000  Owen Taylor  <otaylor@redhat.com>
11863
11864         * gdk/x11/Makefile.am: Patch from George Lebl to 
11865         install all the headers in the right place.
11866
11867 Tue Jul  4 13:13:01 BST 2000  Tony Gale <gale@gtk.org>
11868
11869         * docs/faq/gtk-faq.sgml: Add remaining sections. Completes
11870           initial conversion to DocBook.
11871
11872 2000-07-04  Tor Lillqvist  <tml@iki.fi>
11873
11874         * README.win32: Improve a bit.
11875
11876         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Handle also
11877         WM_SYSCHAR, and other changes to get handling of Alt+nnn or
11878         Alt+0nnn on the numpad (used to enter characters by numeric code
11879         from current DOS or ANSI codepage) working correctly, as in other
11880         Windows apps.
11881
11882         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Use
11883         same argument validity tests as in X11 version.
11884         (_gdk_cursor_destroy): Use DestroyCursor, not DestroyIcon.
11885
11886         * gdk/win32/gdkwin32.h: Add also WM_MOUSEWHEEL and CopyCursor
11887         definitions in case missing from headers.
11888
11889         * gdk/win32/gdkwindow-win32.c (gdk_win32_window_destroy): Also
11890         destroy the window-specific cursor.
11891         (RegisterGdkClass): Use the global gdk_ProgInstance instead of
11892         calling GetModuleHandle(NULL).
11893         (gdk_window_set_cursor): Reworked to always copy the passed cursor
11894         with CopyCursor before setting it as the window-specific
11895         cursor. It is OK for the caller to destroy the GdkCursor (and thus
11896         also its Windows cursor) after calling this function. Destroy any
11897         previous window-specific cursor.
11898
11899 Mon Jul  3 17:54:49 2000  Owen Taylor  <otaylor@redhat.com>
11900
11901         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): 
11902         font charset is iso8859-1, not iso-8859-1.
11903
11904 Mon Jul  3 17:08:14 2000  Owen Taylor  <otaylor@redhat.com>
11905
11906         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale):
11907         Use g_get_charset() instead of g_get_codeset().
11908
11909         * gtk/gtkframe.[ch] gtkframe.h gtk/gtktextmark.h: 
11910         Comment out some strdup'ing functions to keep timj
11911         happy until we finish fighting this out.
11912
11913 Mon Jul  3 14:24:16 2000  Owen Taylor  <otaylor@redhat.com>
11914
11915         * gtk/gtkwidget.c (gtk_widget_draw): Ignore calls with
11916         <= width or height.
11917
11918         * gtk/gtktable.c (gtk_table_attach): Fix missed merge
11919         from 1.2 for parent/child states.
11920
11921         * gdk/gdkgc.c (gdk_gc_set_rgb_fg/bg_color): Fix a couple
11922         of typos.
11923
11924         * gdk/gdkevents.[ch]: Remove press/xtilt/ytilt fields of
11925         event structures, replace with a generic axes field. Replace 
11926         deviceid/sourec with GdkDevice *device.
11927
11928         * gdk/gdkevents.[ch] (gdk_event_get_axis): Add function
11929         to extract particular axis use value from event. (Also
11930         can be used for normal X/Y.)
11931
11932         * gdk/gdkinput.h gdk/x11/gdkinput*: Major revision;
11933         allow for arbitrary number of axes, namespace everything
11934         as gdk_device_*. Replace guint32 deviceid with GdkDevice *
11935         everywhere.
11936
11937         * gdk/x11/{gdkmain-x11.c,gdkevent-x11.c,gdkinput*}: 
11938         Get rid of the gdk_input_vtable setup if favor of simply
11939         defining the functions in gdkinput-none/gxi/xfree.c in
11940         a similar fashion to the way that the port structure is 
11941         done.
11942
11943         * gtk/gtkdnd.c: Fix fields of synthesized button press event
11944         for new event structures. 
11945
11946         * gtk/gtkinputdialog.c gtk/testinput.c: Revise to match
11947         new device interfaces.
11948
11949 Sun Jul  2 18:19:50 2000  Owen Taylor  <otaylor@redhat.com>
11950
11951         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_layout): Add a 'text' argument to
11952         set the initial text.
11953
11954         * gtk/gtkaccellabel.c gtk/gtkcalendar.c gtk/gtkclist.c
11955         gtk/gtkentry.c gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c
11956         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvruler.c
11957         gtk/gtkvscale.c: Adapt to new argument of create_pango_layout().
11958
11959         * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
11960         pango_layout_set_font_description to simplify.
11961
11962 Sun Jul  2 17:43:41 2000  Owen Taylor  <otaylor@redhat.com>
11963
11964         * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
11965         pango_layout_set_font_description to simplify.
11966
11967 Sun Jul  2 17:06:40 2000  Owen Taylor  <otaylor@redhat.com>
11968
11969         * gtk/gtkcalendar.c gtk/gtkclist.c gtk/gtkctree.c gtk/gtkhscale.c
11970         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvscale.c gtk/gtkaccellabel.c: Use
11971         pango_layout_get_pixel_extents() to remove a large number of '/ PANGO_SCALE'.
11972
11973         * gtk/gtk[hv]ruler.c gtk/gtklabel.c: replace some / PANGO_SCALE with
11974         PANGO_PIXELS() macro.
11975
11976 Sun Jul  2 15:24:41 2000  Owen Taylor  <otaylor@redhat.com>
11977
11978         * gtk/gtkwidget.[ch] (gtk_widget_get_pango_context): Add new function
11979         that returns a PangoContext owned by the widget and updated to
11980         match future changes in the widget. Also, make 
11981         gtk_widget_create_pango_layout() use this context. If we ever
11982         add a ::changed signal to PangoContext, this will make things
11983         much more convenient. 
11984
11985         * gtk/gtkentry.c gtk/gtklabel.c: Call pango_layout_context_changed()
11986         in the appropriate places instead of destroying the layouts and
11987         creating new ones.
11988
11989         * gtk/gtkfontsel.[ch] gtk/gtkclist.c: Use gtk_widget_get_pango_context()
11990         in a few strategic places.
11991
11992 Sun Jul  2 14:37:58 2000  Owen Taylor  <otaylor@redhat.com>
11993
11994         * gtk/gtkoptionmenu.c (gtk_option_menu_size_request): Call 
11995         gtk_widget_size_request() on reparented child, if one. Otherwise,
11996         queue_resize() on the child never results in it getting size-requested
11997         at all.
11998
11999         * gtk/testgtk.c (build_option_menu): Remove silly radio-menu-items
12000         in option menus, so that (with luck) people won't copy it into
12001         their apps in the future.
12002
12003         * gtk/gtkoptionmenu.c: Connect ::size_request on the menu
12004         to gtk_option_menu_calc_size. This isn't perfect, but should fix
12005         a lot of problems with changing the size of the menu's menu
12006         items after adding it to the option menu.
12007
12008         * gtk/gtktexttag.c: Include gtkmain.h for gtk_get_default_language().
12009
12010         * gtk/gtkwidget.[ch]: Add a ::direction_changed that triggers when
12011         the text direction for a widget changes.
12012
12013         * gtk/gtk{entry.c,label.[ch],textview.[ch]} gtk/testgtk.c: Use
12014         ::direction_changed to get rid of various hacks.
12015
12016 Sun Jul  2 13:19:12 2000  Owen Taylor  <otaylor@redhat.com>
12017
12018         * docs/Changes-2.0.txt: Move Changes-1.4.txt to the appropriate
12019         name.
12020
12021 Sun Jul  2 13:06:26 2000  Owen Taylor  <otaylor@redhat.com>
12022
12023         * gdk/x11/gdkpixmap-x11.[ch] Changes-1.4.txt: Add a is_foreign
12024         flag to the structure. Do not call XFreePixmap on pixmaps created
12025         by gdk_pixmap_foreign_new().
12026
12027 Sun Jul  2 12:45:50 2000  Owen Taylor  <otaylor@redhat.com>
12028
12029         * gdk/gdkrgb.[ch]: Add gdk_rgb_find_color() to get a pixel
12030         value using GdkRGB functionality given GdkColormap and GdkColor.
12031         (name not final, waiting for inspiration.)
12032         
12033         * gdk/gdkgc.[ch] (gdk_gc_set_rgb_fg/bg_color): New functions to
12034         set the foreground/background of a GC using the GC's colormap
12035         and GdkRGB. (name not final, waiting for inspiration.)
12036
12037         * gdk/gdkcompat.h gdk/gdkrgb.c (gdk_rgb_get_colormap): Rename from 
12038         gdk_rgb_get_cmap(), put #define in gdkcompat.h.
12039
12040         * gtk/gtkwidget.[ch] gtkcompat.h: Make visuals for
12041         gtk_widget_get_visual(), gtk_widget_get_default_visual, etc,
12042         purely a function of the corresponding colormap. Make
12043         gtk_widget_set_visual(), etc, noop macros in gtkcompat.h.
12044
12045         * gdk/gdkpixmap.c gdk/x11/gdkpixmap-c11.c: Rewrite
12046         gdk_pixbuf_*create_from_xpm_* in terms of
12047         gdk_pixbuf_new_from_xpm_data(), move into platform independent
12048         code.
12049
12050         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Take
12051         advantage of the new draw_rgb_32_image_dithalign.
12052
12053         * gdk/gdkrgb.c (gdk_draw_rgb_32_image_dithalign): Added.
12054
12055         * gtk/gtkgc.c (gtk_gc_new): Set the appropriate colormap
12056         on each created GC.
12057
12058         * gdk/gdkgc.[ch]: Add gdk_gc_get/set_colormap.
12059
12060         * gdk/gdkgc.[ch]: Add a colormap field to the GdkGC structure
12061         which we initialize from the drawable when the GC is created,
12062         if the drawable has a colormap.
12063
12064         * gdk/x11/gdkgc-x11.c: include string.h for memset.
12065
12066         * gdk/x11/gdkinput-x11.c: include string.h for strlen, etc.
12067
12068         * gtk/gtklayout.[ch]: Remove unsed configure serial member.
12069
12070 Sat Jul  1 16:28:32 2000  Owen Taylor  <otaylor@redhat.com>
12071
12072         * gdk/x11/gdkevents-x11.c (gdk_event_translate): When
12073         actually returning expose events, make sure to set
12074         the count field properly.
12075
12076         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): Fix
12077         accidentally reintroced bug which always cleared
12078         the graphics_exposures value. 
12079
12080 Wed Jun 28 18:03:09 BST 2000  Tony Gale <gale@gtk.org>
12081
12082         * docs/faq/gtk-faq.sgml: Change DocBook layout slightly
12083
12084 Wed Jun 28 17:49:05 BST 2000  Tony Gale <gale@gtk.org>
12085
12086         * docs/faq/gtk-faq.sgml: Finish Section 6. Add Section 7.
12087
12088 Wed Jun 28 13:31:55 BST 2000  Tony Gale <gale@gtk.org>
12089
12090         * docs/faq/gtk-faq.sgml: Start of Section 6.
12091
12092 Mon Jun 26 19:37:04 2000  Owen Taylor  <otaylor@redhat.com>
12093
12094         * configure.in: Put 1.3.1 in warning message, not 1.3.0.
12095         
12096         (Fixes problem with drawing childless frames. Pointed out
12097         by and a first patch from Anders)
12098         
12099         * gtk/gtkframe.c (gtk_frame_compute_child_allocation): Always
12100         compute a child_allocation, even if we don't have a child.
12101
12102         * gtk/gtkaspectframe.c (gtk_aspect_frame_compute_child_allocation):
12103         Always chain to the parent's impl, even if we don't have a child.
12104
12105 Mon Jun 26 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
12106
12107         * gdk/gdkrgb.c: If possible, create only a single shm segment and
12108         use multiple parts of it instead of creating a bunch of separate
12109         segments, since the maximum number of segments per system is not
12110         large. (This might be worth backporting to GTK+-1.2.x if we make a
12111         new release )
12112
12113         * gdk/gdkrgb.c: Localize a bunch of variables into the GdkRgbInfo
12114         structure in preparation for per-colormap GdkRGB.
12115
12116         * gdk/x11/gdkimage-x11.c (gdk_image_new): Don't set gdk_use_xshm
12117         to False when we get EINVAL from shmget so that the caller of
12118         gdk_image_new can retry with a smaller segment size.
12119
12120 Mon Jun 26 13:01:16 BST 2000  Tony Gale <gale@gtk.org>
12121
12122         * docs/faq/gtk-faq.sgml: Add Sections 4 & 5.
12123
12124 Fri Jun 23 17:54:23 2000  Tim Janik  <timj@gtk.org>
12125
12126         * configure.in: make the current version number 1.3.1 (binary age 0,
12127         interface age 0).
12128         
12129         * gtkfeatures.h, gtkfeatures.h.in: dejavue, get rid of these *again*,
12130         gtkcompat.h is all we want.
12131
12132         * gtk/gtktypeutils.[hc]: define most of the primitive types in terms of
12133         GLib primitive types. fixed g_type_register_fundamental() argument
12134         ordering.
12135
12136         * gtk-config.in (lib_gtk): add -lgdk_pixbuf so third party code
12137         compiles.
12138
12139         * gdk-pixbuf-loader.[hc]: get rid of unistd.h include.
12140         object code cleanup, comment trigraph fixes, etc...
12141
12142 2000-06-23  Havoc Pennington  <hp@redhat.com>
12143
12144         * gtk/gtktextview.c (gtk_text_view_set_buffer): Use anonymous mark 
12145         instead of making up a bogus name for first_para_mark
12146
12147         * gtk/gtkstatusbar.h, gtk/gtkstatusbar.c: Allow 
12148         0 as a context ID
12149
12150 Thu Jun 22 17:43:51 BST 2000  Tony Gale <gale@gtk.org>
12151
12152         * docs/faq/gtk-faq.sgml: Change filename. Add Section 3.
12153
12154 2000-06-21  Havoc Pennington  <hp@pobox.com>
12155
12156         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Fix bug where
12157         we didn't check window->bg_pixmap != GDK_NO_BG.
12158
12159         * gtk/gdk-pixbuf-loader.c: Change to reflect GObject-ification of
12160         gdk-pixbuf
12161
12162 Thu Jun 22 14:02:19 BST 2000  Tony Gale <gale@gtk.org>
12163
12164         * docs/faq/gtk-faq.sgm: Move file to here.
12165           TODO: Update Makfile.am 
12166
12167 Thu Jun 22 13:41:09 BST 2000  Tony Gale <gale@gtk.org>
12168
12169         * docs/gtk-faq.sgm: Add Section 2
12170
12171 Thu Jun 22 08:43:45 BST 2000  Tony Gale <gale@gtk.org>
12172
12173         * docs/gtk-faq.sgm: New file. Start of DocBook
12174           version of the FAQ.
12175
12176 Wed Jun 21 23:04:17 2000  Owen Taylor  <otaylor@redhat.com>
12177
12178         * configure.in (GDK_PIXBUF_MAJOR): Define version
12179         numbers for GDK_PIXBUF_*, as they get substituted
12180         into a header file. Need to consider versioning
12181         for gdk-pixbuf more carefully later.
12182
12183 2000-06-21  Raja R Harinath  <harinath@cs.umn.edu>
12184
12185         Work with srcdir != builddir.   
12186         * demos/testanimation.c: Don't include "gdk-pixbuf.h".  Use
12187         <gtk/gdk-pixbuf-loader.h>, not "gtk-pixbuf/gdk-pixbuf-loader.h".
12188         * demos/testpixbuf.c: Likewise.
12189         * demos/testpixbuf-scale.c: Don't include "gdk-pixbuf.h".
12190         * demos/testpixbuf-drawable.c: Don't include "gdk-pixbuf.h".  Use
12191         <gdk/x11/gdkx.h>.
12192         * demos/pixbuf-demo.c: Use <gtk/gtk.h> not "gtk.h".  Don't include
12193         "gdk-pixbuf.h".
12194         * demos/Makefile.am (INCLUDES): Remove unneeded directories.
12195
12196 Wed Jun 21 19:45:02 2000  Owen Taylor  <otaylor@redhat.com>
12197
12198         * TODO.xml: Change 1.4 version numbers to 2.0.
12199
12200 Wed Jun 21 19:29:08 2000  Owen Taylor  <otaylor@redhat.com>
12201
12202         * gdk/gdkpixbuf-render.c gdk/gdkpixbuf-drawable.c: Indentation
12203         fixups to GTK+ standard.
12204
12205 Wed Jun 21 16:38:13 2000  Owen Taylor  <otaylor@redhat.com>
12206
12207         * gdk-pixbuf/* docs/reference/gdk-pixbuf/*: Welcome aboard,
12208         gdk-pixbuf.
12209
12210         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init):
12211         fixups for GObject.
12212
12213         * gdk/Makefile.am gdk/gdkpixbuf-render.[ch] gdk/gdkpixbuf.[ch]: Bits of 
12214         gdk-pixbuf with GDK dependencies moved into GDK.
12215         
12216         * gtk/Makefile.am gtk/gdk-pixbuf-loader.[ch]: Temporarily
12217         move gdk-pixbuf-loader here until GObject has signals.
12218
12219         * demos/: New directory of demos. Move demos from
12220         gdk-pixbuf here.
12221
12222         * demos/pixbuf-init.c: Small bit of code to check for
12223         loaders in ../gdk-pixbuf/.libs/gdk-pixbuf, and if found,
12224         set GDK_PIXBUF_MODULEDIR appropriately.
12225
12226         * gdk/gdkcompat.h: Remove GDK_DRAWABLE_PIXMAP compat
12227         define which no longer makes sense.
12228
12229 2000-06-21  Havoc Pennington  <hp@redhat.com>
12230
12231         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Use
12232         gtk_get_default_language
12233
12234         * gtk/gtkmain.h, gtk/gtkmain.c (gtk_get_default_language): 
12235         new function to get the default language
12236
12237         * gtk/gtktexttagprivate.h, gtk/gtktexttag.c, gtktextview.c: 
12238         s/gtk_text_view_style_values/gtk_text_style_values/
12239
12240         * gtk/gtktexttag.c, gtk/gtktexttag.h, gtk/gtktexttagprivate.h:
12241         Add a "language" field to tags.
12242
12243         (gtk_text_tag_set_arg): Fix bug in setting
12244         "bg_full_height_set" tag.
12245
12246 2000-06-21  Havoc Pennington  <hp@redhat.com>
12247
12248         * gtk/gtktextiter.h: Use gunichar instead of gint when appropriate
12249         in the interfaces
12250
12251         * gtk/gtktexttypes.c: Remove UTF functions, use glib 
12252         stuff instead when possible.
12253
12254         * gtk/gtktexttypes.h: Delete some unused constants
12255
12256         * gtktextbtree.c, gtktextiter.c, gtktextsegment.c, gtktextview.c,
12257         testtextbuffer.c: use glib instead of custom unicode routines
12258
12259 Wed Jun 21 12:50:58 2000  Owen Taylor  <otaylor@redhat.com>
12260
12261         * docs/es/: Removed mistakenly added generated sgml
12262
12263         * docs/{gdk.texi,gtk.texi,gdk.sgml} macros.texi texinfo.tex:
12264         Remove outdated info files.
12265
12266         * docs/gtk_tut* docs/package_tutorial.sh docs/tutorial:
12267         Moved tutorial files into subdir
12268
12269         * docs/gtkfaq.sgml docs/faq/gtkfaq.sgml: Move FAQ into
12270         subdir.
12271
12272         * docs/man/gtk_button.pod: Remove. (contents will be
12273         integrated into gtk-reference button page.)
12274
12275         * configure.in docs/Makefile.am docs/tutorial/Makefile.am
12276         docs/faq/Makefile.am: Adjust for new organization
12277
12278 2000-06-21 Christopher Blizzard  <blizzard@redhat.com>
12279
12280         * gdk/x11/Makefile.am (install-data-local): use $(mkinstalldirs)
12281         not $(MKINSTALLDIRS)
12282
12283 Wed Jun 21 12:24:28 2000  Owen Taylor  <otaylor@redhat.com>
12284
12285         * gtk/testgtk.c (create_text): Finish the job Elliot started
12286         of removing font setting test for text widget. (Since text widget
12287         and GdkFont are not deprecated, and cause portability problems.)
12288
12289 Wed Jun 21 11:41:43 2000  Owen Taylor  <otaylor@redhat.com>
12290
12291         * gtk/gtkentry.c gtk/gtkimcontextsimple.c gtk/gtklabel.c
12292         gtk/gtktexttypes.c gtk/testtext.c modules/linux-fb/basic.c:
12293         Remove use of libunicode in favor of new GLib functions.
12294
12295         * gtk/gtkcolorsel.c: Remove conditional includes for FB, win32,
12296         nano-x, framebuffer. The X11 include is just a hack until we get
12297         the necessary functions in gdkcolor.h, so there is no reason to
12298         add other includes of platforms.
12299
12300         * gtk/gtkwindow.c (gtk_window_compute_default_size): Revert 
12301         window bigger than the screen change.
12302
12303         * gtk/testgtk.c: Revert some random changes from Elliot
12304         that had no particular point and were causing testgtkrc
12305         not to function correctly.
12306         
12307         * gdk/gdkregion-generic.h: Revert change from Elliot. Just
12308         because GdkSegment and GdkRegionBox have the same fields,
12309         it doesn't mean that 'typedef GdkSegment GdkRegionBox'
12310         results in clearer code.
12311
12312         * gdk/x11/gdkinput-x11.c (gdk_input_common_select_events,
12313         gdk_input_translate_coordinates): Fix missed GdkObjectification
12314
12315 2000-06-18  Elliot Lee  <sopwith@redhat.com>
12316
12317         * gdk/Makefile.am, gdk/*/Makefile.am: Fix conditionality to work the "right" way.
12318         * gtk/gtk{plug,socket}.h: Missed commits from previous.
12319
12320 2000-06-20  Havoc Pennington  <hp@redhat.com>
12321
12322         * modules/linux-fb/Makefile.am: Make this compile
12323         without framebuffer enabled
12324
12325         * gdk/linux-fb/Makefile.am: Add conditional to not build
12326         framebuffer unless specified in configure
12327
12328         * gdk/gdkdraw.c (gdk_draw_drawable): Fix bug where I was getting
12329         the size of the target instead of source if -1 was passed for
12330         width/height
12331
12332         * gdk/x11/gdkgeometry-x11.c (gdk_window_compute_position): Fix 
12333         width/height confusion.
12334
12335 2000-06-19  Havoc Pennington  <hp@redhat.com>
12336
12337         * gdk/x11/gdkx.h (GDK_WINDOW_XWINDOW): change this to be
12338         GDK_DRAWABLE_XID. In the future, we probably want to make it
12339         faster with G_DISABLE_CHECKS turned on.
12340
12341 2000-06-14  Havoc Pennington  <hp@redhat.com>
12342
12343         * gdk/Makefile.am: add gdkpixmap.c
12344
12345         * gdk/gdk.c: s/gdk_window_init/_gdk_windowing_window_init/
12346         s/gdk_image_init/_gdk_windowing_image_init
12347
12348         * gdk/gdkcolor.c: make ref/unref compat wrappers for GObject
12349         ref/unref
12350
12351         * gdk/gdkcolor.h: make GdkColormap a GObject subclass
12352
12353         * gdk/gdkcompat.h: remove GdkWindowType compat, since
12354         GdkWindowType is now non-deprecated; 
12355         change gdk_window_get_type() compat to be
12356         gdk_window_get_window_type().
12357
12358         * gdk/gdkdnd.h: make GdkDragContext a GObject.
12359
12360         * gdk/gdkdraw.c, gdk/gdkdraw.h: Convert GdkDrawable to a pure
12361         virtual GObject. Make all functions call into the vtable.
12362         Move gdk_image_put() guts in here. Remove GdkDrawableType
12363         and gdk_drawable_get_type(), these are now GdkWindow-specific.
12364         draw_image, get_depth, get_size, set_colormap, get_colormap,
12365         get_visual added to the vtable.
12366         
12367         * gdk/gdkgc.h, gdk/gdkgc.c: Convert GdkGC to a pure virtual 
12368         GObject. Virtualize everything. 
12369         (gdk_gc_new_with_values): remove check for destroyed window,
12370         because now GdkWindow::create_gc will check this.
12371         (gdk_gc_set_values): New function to set GC values, this 
12372         was already implemented but wasn't in the header
12373
12374         * gdk/gdkimage.h, gdk/gdkimage.c: Convert GdkImage to a GObject.
12375
12376         * gdk/gdkinternals.h: Remove _gdk_window_alloc(), remove
12377         _gdk_window_draw_image(), remove _gdk_windowing_window_class,
12378         remove _gdk_window_class; add _gdk_window_impl_get_type() and
12379         _gdk_pixmap_impl_get_type(). Rename gdk_window_init to
12380         _gdk_windowing_window_init, rename gdk_image_init to
12381         _gdk_windowing_image_init.
12382         
12383         * gdk/gdkpango.c: Reflect GObject-ification of PangoContext.
12384         (gdk_draw_layout): Remove check for destroyed window, 
12385         because all the drawable methods already check it.
12386         
12387         * gdk/gdkpixmap.h, gdk/gdkpixmap.c: Convert GdkPixmap to GObject.
12388         Add gdkpixmap.c which contains implementation of GdkDrawable
12389         virtual table (by chaining to a platform-specific implementation
12390         object).
12391         
12392         * gdk/gdkprivate.h: Remove GDK_IS_WINDOW, GDK_IS_PIXMAP, 
12393         GDK_DRAWABLE_DESTROYED. Add GDK_WINDOW_DESTROYED. Replace
12394         GDK_DRAWABLE_TYPE with GDK_WINDOW_TYPE. Remove GdkDrawablePrivate,
12395         GdkWindowPrivate, GdkImageClass, GdkImagePrivate, GdkGCPrivate,
12396         GdkColormapPrivate. 
12397
12398         * gdk/gdktypes.h: #include <glib-object.h>
12399
12400         * gdk/gdkwindow.h, gdk/gdkwindow.c: Convert GdkWindow to GObject.
12401         Move most functionality to platform-specific implementation
12402         object. GdkWindow itself now handles the backing store, then
12403         chains to the platform-specific implementation.
12404         (gdk_window_get_window_type): return GdkWindowType of the window.
12405         (gdk_window_peek_children): New routine, returns the children of 
12406         a GdkWindow
12407         (gdk_window_get_children): Was in X11-specific code and did 
12408         XQueryTree. Changed to simply return a copy of window->children; 
12409         so it can go in cross-platform code.
12410         
12411         * gdk/x11/Makefile.am: fix broken MKINSTALLDIRS path
12412
12413         * gdk/x11/gdkcolor-x11.c: implement X-specific parts of 
12414         GdkColormap; just changed to use the new private data instead
12415         of casting to GdkColormapPrivate.
12416
12417         * gdk/x11/gdkcursor-x11.c: added a couple typechecks to 
12418         gdk_cursor_new().
12419
12420         * gdk/x11/gdkdnd-x11.c: Change the way we access private fields 
12421         (private data member in the GObject). 
12422         (xdnd_manager_source_filter): Function had broken 
12423         error handling, fix it (use gdk_error_trap_push).
12424
12425         * gdk/x11/gdkdrawable-x11.c: This file now implements
12426         a base class for GdkWindowImplX11/GdkPixmapImplX11. This 
12427         base class is purely for the convenience of the X port,
12428         and not part of the interface to cross-platform GDK.
12429
12430         * gdk/x11/gdkevents-x11.c: Reflect various renamings.
12431         
12432         * gdk/x11/gdkgc-x11.c: Implement a subclass of GdkGC that's
12433         specific to X, and returned by the create_gc virtual method
12434         of GdkDrawableImplX11. 
12435         (gdk_x11_gc_set_dashes): Change this to take an array of gint8
12436         rather than gchar, this was also changed in the GdkGC vtable.
12437         (gdk_x11_gc_values_to_xvalues): If GdkGCValues is NULL, or the
12438         mask is 0, return immediately, instead of checking every flag.
12439         This is faster, and keeps us from segfaulting if values is NULL
12440         and the mask contains some nonzero flags.
12441
12442         * gdk/x11/gdkgeometry-x11.c: deal with all the rearranging of
12443         GdkWindow.
12444
12445         * gdk/x11/gdkglobals-x11.c: change type of grab window, since 
12446         GdkWindowPrivate is gone.
12447
12448         * gdk/x11/gdkim-x11.c: rename things that got renamed.
12449
12450         * gdk/x11/gdkimage-x11.c: implement in terms of GObject, and 
12451         remove the image_put stuff that got transferred to GdkDrawable.
12452         
12453         * gdk/x11/gdkinput.c: renamings
12454
12455         * gdk/x11/gdkmain-x11.c: #include <pango/pangox.h>
12456
12457         * gdk/x11/gdkpixmap-x11.c: GObject conversion
12458
12459         * gdk/x11/gdkprivate-x11.h: indentation fixes
12460
12461         * gdk/x11/gdkproperty-x11.c: renamings
12462
12463         * gdk/x11/gdkselection-x11.c: renamings
12464
12465         * gdk/x11/gdkwindow-x11.c: Restructuring and renaming; this now 
12466         implements the platform-specific "impl" object.
12467         Moved gdk_window_get_children to gdk/gdkwindow.c
12468
12469         * gdk/x11/gdkx.h: Remove all the private structs and private datas
12470         that no longer exist. Add declaration of GdkGCX11 object here.
12471         Fix all the macros to still work. 
12472
12473         * gtk/gtk-boxed.defs: Remove GtkStyle, GdkColormap, GdkWindow,
12474         GdkDragContext from the boxed types since they are now GObjects.
12475
12476         * gtk/gtkstyle.h, gtk/gtkstyle.c: Converted GtkStyle to a GObject,
12477         moved xthickness/ythickness into the instance. GtkStyleClass
12478         functions are now in the standard vtable for GtkStyle, so you have
12479         to create a GObject subclass to write a theme engine.
12480         (gtk_style_copy): fixed a leaked PangoFontDescription
12481         (gtk_style_init): renamed gtk_style_realize, so gtk_style_init
12482         can be the standard GObject function.
12483         
12484         * Throughout GTK:
12485         s/style->klass->[xy]thickness/style->[xy]thickness
12486         s/pango_layout_unref/g_object_unref/
12487
12488         * gtk/gtkrc.h, gtk/gtkrc.c: Converted GtkRcStyle to a GObject.
12489         
12490         * gtk/gtksocket.c: Use gdk_window_get_user_data() instead of 
12491         accessing GDK internals.
12492
12493         * gtk/gtkwidget.c: Use gdk_window_peek_children() instead of 
12494         accessing GDK internals.
12495
12496 2000-06-18  Elliot Lee  <sopwith@redhat.com>
12497
12498         * gtk/gtkwindow.c: Don't allow creation of a window bigger than the screen.
12499
12500         * gtk/gtkrange.c: Fix the mega-jumpy-with-lagged-events scrollbar
12501         problem by calculating event position relative to the trough
12502         rather than the slider.
12503         * gtk/gtkdnd.c, gtk/gtkcolorsel.c: Include FB headers if appropriate.
12504
12505         * gdk/gdkgc.h: Add GDK_NOR.
12506
12507         * configure.in, Makefile.am: Add modules top level dir
12508         * configure.in: Only use pangox library if building x11 target.
12509         * gdk/gdkdnd.h: Add GDK_DRAG_PROTO_LOCAL enum for future intra-app use.
12510
12511 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
12512
12513         * gtk/gtkcolorsel.c: Change private class member to be named
12514         private_data throughout the file.
12515
12516         * gtk/gtkcolorsel.h (struct _GtkColorSelection): Change private to
12517         private_data to avoid clashing with keyword.
12518
12519 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
12520
12521         * gdk/gdkdnd.h: Add comment to remove warning.
12522
12523 Sun Jun 18 15:35:35 2000  Pablo Saratxaga <pablo@mandrakesoft.com>
12524
12525         * gtk/gtkrc.cp1251,gtk/Makefile.am: the cp1251 is also used by
12526         Byelorussian language; changed the Makefile and file names 
12527         to reflect that.
12528
12529 Mon Jun 12 16:58:40 2000  Owen Taylor  <otaylor@redhat.com>
12530
12531         * gtk/gtkwindow.c (gtk_window_unmap): Call gdk_window_withdraw
12532         rather than gdk_window_hide; this makes things work
12533         correctly if the window is programmatically hidden while
12534         iconified.
12535
12536 Sun Jun 11 12:46:19 2000  Owen Taylor  <otaylor@redhat.com>
12537
12538         * gtk/gtkdnd.c (gtk_drag_set_default_icon): Fix
12539         cut and paste typo where wrong pixmap was being
12540         unref'ed. (Pointed out by a friend of KUSANO Takayuki.)
12541
12542 Sun Jun 11 10:22:36 2000  Owen Taylor  <otaylor@redhat.com>
12543
12544         * gtk/gtkselection.c (gtk_selection_bytes_per_item):
12545         Add helper function to compute format / bytes 
12546         relationship. Use in a couple places to fix up
12547         errors which assume 8 * format.
12548
12549         * gtk/gtkselection.c (gtk_selection_request): Use 32
12550         rather than 8 * sizeof (GdkAtom), to work correctly
12551         on Alpha.
12552
12553 Thu Jun  8 21:54:51 2000 Christopher Blizzard  <blizzard@redhat.com>
12554
12555         * gtk/Makefile.am (DEPS): deps include libgtk-x11.la, not
12556         libgtk.la
12557         (LDADDS): include libgtk-x11.la and libgdk-x11.la, not the non-x11
12558         versions
12559
12560         * gtk/gtklabel.c (gtk_label_get_text): Make sure that the error
12561         checking macros return NULL since the function has a return value.
12562
12563 Wed Jun  7 15:44:42 2000  Owen Taylor  <otaylor@redhat.com>
12564
12565         * gtk/Makefile.am (LDFLAGS): Add missing backslash that was keeping
12566         GTK+ from building at all.
12567
12568         * gdk/Makefile.am (gdk_c_sources): Fix up some indentation issues.
12569
12570 Mon Jun  5 19:32:53 CEST 2000 Paolo Molaro <lupus@linuxcare.com>
12571
12572         * configure.in, gtk-config.in, gdk/Makefile.am, gdk/*/Makefile.am,
12573         gtk/Makefile.am: make it possible to configure gtk for different
12574         targets on the same platform. The library name is now 
12575         libgtk-$target-$version.so. gtk-config accepts a --target x11|nanox|linux-fb
12576         flag. Only the x11 target compiles right now.
12577         * gdk/gdkregion-generic.h, gdk/gdkregion-generic.c, gdk/gdkpoly-generic.h,
12578         gdk/gdkpolyreg-generic.c: move generic region code in the main GDK dir.
12579         * gdk/nanox/gdk*generic*: delete generic region code.
12580         * gdk/linux-fb/gdk*generic*: delete generic region code.
12581         * README.nanox: update information.
12582         
12583 Tue Jun  6 10:53:59 2000  Owen Taylor  <otaylor@redhat.com>
12584
12585         * gtk/gtktoolbar.c (gtk_toolbar_prepend_widget): Fix to
12586         prepend not append. (Pointed out by Brett Hall.)
12587
12588 Tue Jun  6 01:59:57 2000  Owen Taylor  <otaylor@redhat.com>
12589
12590         * gtk/gtkentry.c (gtk_entry_finalize): Unref the entry's layout.
12591
12592 Mon Jun  5 16:00:09 2000  Owen Taylor  <otaylor@redhat.com>
12593
12594         * gdk/gdk.c (gdk_init_check): Add call to g_type_init() - we'll
12595         need this later, and this makes sure that the atexit for
12596         glib gets called after that for GDK, so atexits are
12597         properly ordered for object leak checking.
12598
12599         * gdk/gdk.c (gdk_exit_func): Call gdk_windowing_exit().
12600
12601         * gdk/x11/gdkmain-x11.c (gdk_windowing_exit): Call 
12602         pango_x_shutdown_display()
12603
12604         * gtk/simple.c (main): Close window on destroy.
12605
12606 Mon Jun  5 11:50:02 2000  Owen Taylor  <otaylor@redhat.com>
12607
12608         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): We need
12609         to treat initial creation different from setting with 
12610         regards to the graphics-exposures parameter, so add a parameter
12611         indicating whether this is initial or not.
12612
12613 Mon Jun  5 13:29:31 2000  Owen Taylor  <otaylor@redhat.com>
12614
12615         * gdk/x11/gdkevents-x11.c: Hack gdk_event_get_graphics_expose()
12616         to sort of work by adding an extra return_exposes arg
12617         to gdk_event_translate() - it might be better to simply
12618         deprecate the function altogether and force people to rewrite
12619         without it. gdk_window_scroll() handles most of it, and where
12620         gdk_window_scroll() doesn't work, simply redrawing more does.
12621
12622         * gtk/gtkwidget.c (gtk_widget_set_default_direction): Fix up
12623         assertion.
12624
12625         * gtk-config.in: Include PANGO_CFLAGS/LIBS.
12626
12627         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Remove a 
12628         bunch of pretty much useless /* Print debugging info */ comments 
12629         which had drifted away from the code they were commenting.
12630
12631 2000-06-02  Havoc Pennington  <hp@pobox.com>
12632
12633         * gtk/testtextbuffer.c: Test program to make sure GtkTextBuffer
12634         is in working order.
12635         
12636         * gtk/testtext.c: Change to reflect anonymous mark API
12637
12638         * gtk/gtktextview.c: Convert from mark names to GtkTextMark*.
12639
12640         * gtk/gtktexttag.h (struct _GtkTextTag): remove the affects_size
12641         field, which was unused.
12642
12643         * gtk/gtktextmarkprivate.h (GTK_IS_TEXT_MARK): add this macro,
12644         saves some typing.
12645
12646         * gtk/gtktextbuffer.c: Switch from mark names to GtkTextMark*   
12647
12648         * gtk/gtktextbtree.c (gtk_text_btree_new): set the not_deleteable
12649         flag on the insertion point and selection bound
12650
12651         Throughout, use GtkTextMark instead of GtkTextLineSegment, and 
12652         make mark-manipulation functions take a GtkTextMark* instead of a
12653         mark name.
12654         
12655         * gtk/gtktextmarkprivate.h: Add a "not_deleteable" flag to 
12656         GtkTextMarkBody; will be used to detect attempts to delete
12657         the permanent marks (insert and selection bound)
12658
12659         * gtk/Makefile.am (noinst_PROGRAMS): add testtextbuffer 
12660
12661 Fri Jun  2 12:56:01 2000  Owen Taylor  <otaylor@redhat.com>
12662
12663         * gtk/gtkwidget.c (gtk_widget_init): Initialize DOUBLE_BUFFERED
12664         flag to on.
12665
12666         * gtk/gtkwidget.c (gtk_widget_draw) gtk/gtkmain.c (gtk_main_do_event): 
12667         Honor DOUBLE_BUFFRED_FLAG
12668
12669         * gtk/gtkwidget.c (gtk_widget_set_double_buffered): Add a
12670         function to set the DOUBLE_BUFFERED flag.
12671
12672         * gtk/gtkwidget.h: Add GTK_DOUBLE_BUFFERED flag to indicate whether
12673         or not exposes done on the widget should be double-buffered.
12674
12675         * gtk/gtkenums.h (GtkTextDirection): Reverse order of enumerations
12676         to be what would be expected. (Fixes problem with a
12677         g_return_if_fail() validating a TextDirection enumeration)
12678
12679 Thu Jun  1 23:05:13 2000  Owen Taylor  <otaylor@redhat.com>
12680
12681         * gtk/gtkwidget.c: Remove all references to 
12682         offscreen flag which was no longer used.
12683
12684         * gtk/gtkprivate.h (enum): Remove unused flags and compress.
12685
12686         * gtk/gtkframe.c (gtk_frame_set_label_widget): Check
12687         for non-null label_widget->parent.
12688
12689         * gtk/gtkentry.c: Get rid of code to deal with PangoAttribute 
12690         which no longer was used.
12691
12692         * gdk/gdkpango.c (gdk_pango_context_get_info): make static.
12693
12694         * gdk/gdkpango.c (gdk_draw_layout[_line]): Add checks
12695         for null arguments.
12696
12697         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): add
12698         check for destroyed windows.
12699
12700 Thu Jun  1 13:48:45 2000  Owen Taylor  <otaylor@redhat.com>
12701
12702         * gtk/gtkimmulticontext.c: Add a finalize method and unref
12703         the slave context there.
12704
12705         * gtk/gtkinvisible.[ch]: Make reference counting behavior
12706         identical to GtkWindow.
12707
12708 Thu Jun  1 01:54:11 2000  Owen Taylor  <otaylor@redhat.com>
12709
12710         * Makefile.am gdk/gdkpango.c: Copy the layout render function from
12711         pangox to here, so we can write them independent of rendering
12712         system, using GDK primitives.
12713
12714         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c
12715         gdk/x11/gdkdrawable-x11.c: Remove draw_layout() from the vtable,
12716         since we have a rendering-system independent implementation in
12717         terms of draw_glyphs().
12718         
12719         * gdk/gdkpango.c gdkdrawable.h (gdk_draw_layout_line): New
12720         function to render a single line.
12721
12722         * gdk/x11/gdkpango.c: Move the guts of this file mostly
12723         into ../gdkpango.c, which simplifies things, since we
12724         don't have to deal with raw X gc's.
12725
12726 Fri May 19 04:28:16 2000  Owen Taylor  <otaylor@redhat.com>
12727
12728         * gtk/gtktextlayout.[ch]: Add get_log_attrs() function to
12729         get the logical attributes for a given GtkTextLine.
12730
12731 Tue May 30 16:05:39 2000  Owen Taylor  <otaylor@redhat.com>
12732
12733         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Track
12734         g_locale_get_codeset() to g_get_codeset() change.
12735
12736 Tue May 30 15:03:19 2000  Owen Taylor  <otaylor@redhat.com>
12737
12738         * gtk/testcalendar.c (calendar_font_selection_ok): Use font
12739         descriptions.
12740
12741         * gtk/gtkentry.c (gtk_entry_draw_text): Center text within
12742         the entry.
12743
12744         * gtk/gtkfontsel.c (gtk_font_selection_dialog_init): Start of
12745         redoing (vastly simplifying) for Pango. Still needs quite
12746         a bit of work. (Size selection is currently poor. List of 
12747         predefined sizes is not a good idea, since all of these
12748         sizes won't necessarily be distinct.)
12749
12750 Tue May 30 13:50:19 2000  Owen Taylor  <otaylor@redhat.com>
12751
12752         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Handle
12753         CODESET results for LANG=C.
12754
12755 Mon May 29 15:49:10 2000  Owen Taylor  <otaylor@redhat.com>
12756
12757         * gtk/gtkrc.[ch]: Add a 'font_name' declaration to RC
12758         which takes a stringized pango font description;
12759         ignore the older 'font' and 'fontset' declarations.
12760
12761         * gtk/gtkstyle.c gtk/gtkrc.c: Fill in the style->font
12762         field with a GdkFont derived via gdk_font_from_description(),
12763         for compatibility. (Should we just remove it entirely?
12764         Probably too much compatibility breakage, but people
12765         should be migrating to the new Pango stuff as quickly
12766         as possible.)
12767
12768 Mon May 29 15:47:41 2000  Owen Taylor  <otaylor@redhat.com>
12769
12770         * gtk/gtkentry.c gtk/gtkclist.c: s/pango_font_unref/g_object_unref/.
12771
12772 Mon May 29 15:44:46 2000  Owen Taylor  <otaylor@redhat.com>
12773
12774         * gtk/gtkcalender.c: Roughly pango-ized. Really needs 
12775         redoing; there are some bugs in size allocation right
12776         now, the semi-existant distinction between header / day
12777         fonts was removed, but, with Pango, could actually
12778         be made functional in a nice way.
12779         
12780         * gtk/testcalender: Move calender from examples into this
12781         directory as a test program. (We really need to restrcture
12782         testgtk into a whole directory full of tests for every
12783         widget or functionality group, separated into multiple .c
12784         files.)
12785
12786 Mon May 29 15:19:56 2000  Owen Taylor  <otaylor@redhat.com>
12787
12788         * gtk/testgtk.c (file_exists): Fix stupid typo that
12789         was keeping RC file from being loaded.
12790
12791         * gtk/testgtkrc gtk/testgtkrc2: Test new pango-ized
12792         RC file font code.
12793
12794 Mon May 29 14:31:27 2000  Owen Taylor  <otaylor@redhat.com>
12795
12796         * gdk/gdkfont.h gdk/x11/gdkfont-x11.c (gdk_font_from_description):
12797         Add function to load a GdkFont from a PangoFontDescription.
12798
12799 2000-05-29  Tor Lillqvist  <tml@iki.fi>
12800
12801         * gdk/win32/gdkevents-win32.c (gdk_WindowProc): The local "event"
12802         variable should be of type GdkEventPrivate.
12803
12804 Fri May 26 17:16:40 2000  Owen Taylor  <otaylor@redhat.com>
12805
12806         * gtk/frame.[ch] gtkaspectframe.c: Make frame widgets able
12807         to have any widget for the label, use a GtkLabel widget
12808         to display the text. (Based partially on a patch from
12809         Anders Carlson.)
12810
12811         (Quite a bit of code reorganization - strip 90% of the
12812         guts out of gtkaspectframe and add a single virtual
12813         func to GtkFrameClass - compute_child_allocation.)
12814
12815 Fri May 26 12:00:02 2000  Owen Taylor  <otaylor@redhat.com>
12816
12817         * gtk/gtkctree.c gtk/gtkclist.[ch]: Pangoized.
12818         (Removed clist->row_center_offset field because caching
12819         it wasn't saving time or code, added private function
12820         _gtk_clist_create_cell_layout()).
12821
12822 Wed May 24 15:59:37 2000  Owen Taylor  <otaylor@redhat.com>
12823
12824         * gtk/gtkaccellabel.c: Pangoized.
12825
12826         * gtk/[hv]ruler.c: Pangoized
12827
12828 Mon May 22 19:23:59 2000  Owen Taylor  <otaylor@redhat.com>
12829
12830         * gtk/gtkfilesel.c (gtk_file_selection_init):
12831         Use gtk_clist_set_column_auto_resize() to remove need
12832         need for manual column width computations.
12833
12834 Mon May 22 18:50:26 2000  Owen Taylor  <otaylor@redhat.com>
12835
12836         * gtk/gtktooltips.[ch]: Replace custom drawing with a GtkLabel, 
12837         ensuring Pango correctness, and considerably simplifying the
12838         code.
12839         
12840         * gtk/gtklabel.c gtk[hv]scale.c: 1000 => PANGO_SCALE.
12841
12842         * gtk/gtklabel.c (gtk_label_size_request): Fixed incorrect
12843         getting of numbers of lines.
12844
12845         * gtk/gtklabel.c (gtk_label_size_request): Set the requisition
12846         to the actual requested width of the lable, not to the wrap
12847         width we set.
12848
12849         * gtk/gtktextchild.h: Remove extraneous include of gtk/gtk.h.
12850
12851         * gtk/gtktextbtree.c gtk/gtktextbuffer.c gtk/gtktextlayout.c
12852           gtk/gtktextview.c gtk/gtktextview.[ch]: Fix up includes.
12853
12854         * gtk/gtktextview.c: Fix structure inheritance.
12855
12856         * gtk/gtkprogressbar.c: Pangoize.
12857
12858 Mon May 22 15:47:30 2000  Owen Taylor  <otaylor@redhat.com>
12859
12860         * gtk/gtktextview.c (gtk_text_view_get_first_para_iter): Encapsulate
12861         in a function.
12862
12863         * gtk/gtktextlayout.c (find_display_line_above): Fixed
12864         bug with computing line tops.
12865
12866         * gtk/gtktextview.c (changed_handler): Fix < , <= confusion.
12867
12868 Thu May 18 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
12869
12870         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Fix up the x_offset
12871         and y_offset coordinates to do what we need now. (The offset between
12872         buffer and layout coordinates has been reintroduced, but is a 
12873         bit different than before.)
12874
12875         * gtk/gtktextview.[ch]: No longer inherit from GtkLayout; instead
12876         handle the adjustments ourselves, and scroll as necessary using
12877         the new gdk_window_scroll().
12878         
12879         The advantage of this is that when we are incrementally revalidating,
12880         we are essentially rearranging things around the visible portion
12881         of the screen. With the old setup, the visible portion of the
12882         screen was moved around in the layout, so scrolling and redrawing
12883         to track that caused jumping of the display. Since we now
12884         control the scrolling ourselves, we can suppress this and
12885         only redraw when things actually change.
12886
12887 Thu May 18 18:47:25 2000  Owen Taylor  <otaylor@redhat.com>
12888
12889         * gtk/gtktextbtree.c (redisplay_mark): We need to invalidate
12890         the region not just redisplay it after-all, since we store the
12891         cursors in the LineDisplay. (Ugly interactions here between
12892         GtkLayout and GtkTextBTree here.)
12893         
12894         * gtk/gtktextbtree.c (redisplay_region): Fixed reversed comparison.
12895
12896 Thu May 18 18:43:21 2000  Owen Taylor  <otaylor@redhat.com>
12897
12898         * gdk/gdkwindow.h gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): 
12899         Added function to scroll contents of a window while keeping the
12900         window constant. Works by XCopyArea or guffaw-scrolling depending
12901         on the details of how the window is set up. (guffaw-scrolling
12902         still needs to be filled in.)
12903
12904 Wed May 17 22:36:53 2000  Owen Taylor  <otaylor@redhat.com>
12905
12906         * gtk/gtktextiter.c gtk/gtkmain.c: Add a debug key for the text widget,
12907         move the debugging that was tied to a global variable
12908         to that.
12909
12910         * gtk/gtkmarshal.list: Add NONE:INT,INT,INT
12911
12912         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.c: Keep a separate
12913         validated flag, in line data instead of setting height/width to
12914         -1. This allows us to perform operations with partially invalid
12915         buffer (using the old size for invalid lines) and thus to do
12916         incremental vaidation. Keep height/width aggregates up to date
12917         when deleting text and rebalancing the tree.
12918
12919         * gtk/gtktextbtree.[ch]: Add functions validate a line
12920         (gtk_text_btree_validate_line), and to validate up
12921         to a number of pixels (gtk_text_btree_validate).
12922
12923         * gtk/gtktextlayout.[ch]: Add an ::invalidated signal
12924         that indicates that something is changed and a revalidation
12925         pass is needed. Change ::need_repaint to ::changed, and
12926         make it take old and new yranges instead of a rectangle.
12927
12928         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.[ch]: Move
12929         the line_data_destroy() function from 
12930         gtk_text_btree_add_view() to a virtual function in 
12931         GtkTextLayout
12932
12933         * gtk/gtktextbtree.[ch]: Remove gtk_text_btree_get_damage_range(),
12934         since we are handling partial repaints in a different fashion
12935         now.
12936
12937         * gtk/gtktextbtree.[ch]: Only repaint the changed portion
12938         of the selection instead of queueing a repaint on the
12939         entire widget.
12940
12941         * gtk/gtktextbuffer.[ch] gtk/gtktextbtree.[ch]: Move
12942         get_selection_bounds() down to btree, make the function
12943         in buffer a wrapper around the btree function.
12944
12945         * gtk/gtktextlayout.[ch]: Add functions to check if the
12946         layout is valid and to recompute either a range of pixels
12947         aroudn a line or a certain total number of pixels.
12948
12949         * gtk/gtktextlayout.[ch]: Cache a single line display;
12950         now that we only redraw the needed portions, the hit rate
12951         for this cache is quite high.
12952         
12953         * gtk/gtktextview.[ch]: Keep track of the first paragraph
12954         on the screen so that when re-laying-out the buffer, we can
12955         keep the same place. This requires connecting to ::value_changed
12956         on the adjustments
12957
12958         * gtk/gtktextview.[ch]: Add idle functions to revalidate
12959         the buffer after we receive an ::invalidated signal.
12960         
12961 Wed May 17 22:10:47 2000  Owen Taylor  <otaylor@redhat.com>
12962
12963         * gtk/gtklayout.c (gtk_layout_size_allocate): Set upper
12964         to max of allocation and layout size, not just to the
12965         layout size.
12966
12967         * gtk/gtk[hv]scrollbar.c (gtk_[hv]scrollbar_calc_slider_size): 
12968         Invalidate window so it gets redrawn properly.
12969
12970         * gdk/gdkwindow.c (gdk_window_invalidate_rect): Allow rect == NULL
12971         to mean the entire window.
12972
12973         * gdk/gdkevents.h: Move definition for GDK_PRIORITY_REDRAW
12974         into public header.
12975
12976 Mon May 15 14:51:31 2000  Owen Taylor  <otaylor@redhat.com>
12977
12978         * gtk/gtktextmark.c (gtk_text_mark_get_name): Add function
12979         to get the name of a mark.
12980
12981         * gtk/gtktextlayout.c (gtk_text_layout_get_line_at_y): Add a function
12982         to find the paragraph from a y position.
12983
12984 Thu May 11 12:57:20 2000  Owen Taylor  <otaylor@redhat.com>
12985
12986         * gtk/gtktextbtree.c (gtk_text_btree_node_invalidate_upward): Valid
12987         nodes have width/height >= 0, not > 0.
12988
12989 Tue May  9 21:29:06 2000  Owen Taylor  <otaylor@redhat.com>
12990
12991         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c (gtk_text_layout_get_line_display):
12992         Add a size_only flag, so when we only need the size, we don't create
12993         useless appearance attributes.
12994
12995         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Remove
12996         duplicate setting of font description.
12997
12998         * gtk/gtkscale.c: Use PANGO_SCALE instead of 1000 
12999
13000 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
13001
13002         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
13003         EXTRA_DIST. It does not work well when the file that
13004         everything depends on is not in the tarball.
13005
13006 Wed Apr 26 00:56:14 2000  Owen Taylor  <otaylor@redhat.com>
13007
13008         * gtk/testgtk.c: Some hacks and fixes so that it basically
13009         works when not sitting in the GTK+ build tree.
13010
13011 2000-05-03  Havoc Pennington  <hp@redhat.com>
13012
13013         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
13014         Properly determine the ordering of the tag root and the current
13015         line within the tree. Previous algorithm only worked if the tag
13016         root's immediate parent was the common root of both the current
13017         line and the tag root.
13018
13019 Wed Apr 26 00:43:00 2000  Owen Taylor  <otaylor@redhat.com>
13020
13021         * gtk/gtktextlayout.c (set_para_values): Fix some bugs in
13022         alignment.
13023
13024         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Track
13025         the widget text directional dynamically.
13026
13027         * gtk/gtktextview.[ch]: Added functions to get and set default
13028         wrap mode.
13029
13030 Tue Apr 25 23:47:38 2000  Owen Taylor  <otaylor@redhat.com>
13031
13032         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Fix bug
13033         in cursor location computation.
13034
13035 Tue Apr 25 23:22:59 2000  Owen Taylor  <otaylor@redhat.com>
13036
13037         * gtk/gtklayout.c (gtk_layout_set_size): Clamp hadjustment/
13038         vadjusment values properly when layout gets smaller.
13039
13040         * gtk/gtktextview.c (need_repaint_handler): Areas being
13041         passed in are far completely inaccurate, and sometimes
13042         too small, so, for now, just queue a redraw on the
13043         whole visible region.
13044
13045 2000-04-25  Havoc Pennington  <hp@redhat.com>
13046
13047         * gtk/gtktextbtree.c (summary_destroy): new function to 
13048         destroy tag summary nodes
13049         (gtk_text_line_next_could_contain_tag): this function was 
13050         totally broken if the line passed in wasn't below the tag
13051         root. Fix it.
13052         (gtk_text_btree_first_could_contain_tag): In the tag == NULL 
13053         "wildcard" case, we have to do a linear scan. Blah.
13054         (gtk_text_btree_last_could_contain_tag): In tag == NULL case,
13055         we have to do the linear scan
13056         (tag_removed_cb): When a tag is removed from the tag table, 
13057         remove the GtkTextTagInfo node from the btree.
13058         (gtk_text_btree_spew): Implement the spew function, for 
13059         our debugging pleasure.
13060
13061 Tue Apr 25 19:40:18 2000  Owen Taylor  <otaylor@redhat.com>
13062
13063         * gtk/gtktextlayout.c (gtk_text_layout_set_buffer): Fix
13064         a problem with referring to the wrong buffer.
13065
13066         * gtk/gtkentry.c: Fix focus-in/focus-out confusion.
13067
13068         * gtk/gtkrc.c gtk/gtkstyle.c: Moving setting default
13069         font description to gtk_style_new() - otherwise things
13070         don't work without a .gtkrc file.
13071
13072         * gtk/gtktextbuffer.c (gtk_text_buffer_new): Sink the
13073         tags table if we create it ourself, too.
13074
13075         * gdk/gdktypes.h (enum): Move GDK_RELEASE_MASK, since
13076         it was conflicting with XKB modifiers.
13077
13078         * gtk/gtktextview.[ch]: Add simple support for 
13079         GtkIMContext.
13080
13081 Mon Apr 24 19:34:18 2000  Owen Taylor  <otaylor@redhat.com>
13082
13083         * gtk/gtkentry.c (gtk_entry_move_cursor_visually): Fix problem
13084         with deletion from last commit.
13085
13086 Mon Apr 24 19:29:40 2000  Owen Taylor  <otaylor@redhat.com>
13087
13088         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Set the language
13089         in the context from the current locale.
13090         
13091         * gtk/gtkentry.c (gtk_entry_size_request): Use language from the
13092         context, not hardcoded value.
13093
13094         * gtk/gtkentry.c (gtk_entry_move_cursor): Make character movement visual,
13095         not logical.
13096
13097 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
13098
13099         * gtk/gtkentry.c gtk/gtktextdisplay.c: Don't handle selections as
13100         attributes - that doesn't handle partial-glyph selection
13101         properly. Instead use new pango_layout_line_get_x_ranges()
13102         functionality to draw the selection.
13103
13104         * gtk/gtkentry.c: Simplify code since pango_layout_line_index_to_x()
13105         now properly handles out-of-range coordinates.
13106
13107         * gtk/gtktextbuffer.c: Emit "mark_set" when the cursor is moved.
13108
13109         * gtk/gtktextiter.h gtk/gtktextiterprivate.h: Make gtk_text_iter_get_line_byte()
13110         public.
13111
13112         * gtk/gtktextlayout.[ch]: Properly set the direction in the PangoContext
13113         for paragraphs opposite to the base direction of the widget.
13114
13115         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c: Fixes for alignment.
13116
13117         * gtk/gtktextlayout.c: Don't split segments on marks, since that
13118         causes Arabic words to reshape as you cursor through.
13119
13120         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Implement virtual
13121         cursor position when moving vertically with the arrow keys and
13122         scrolling with page-up/page-down. (Arrow keys save only the X,
13123         scrolling saves both X and Y.)
13124
13125         This means you can line-up / line-down or page-up / page-down
13126         without losing your place, and also that moving vertically
13127         with the cursor keys keeps the same X position, not the same
13128         character count:
13129
13130         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Make vertical
13131         arrow keys move by display lines, not paragraphs.
13132
13133 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
13134
13135         * gtk/gtklayout.c: Make sure that the bin window is at least
13136         as big as the allocation. (Should we also make sure that the
13137         bin window is big enough to completely cover widget->window?)
13138
13139         * gtk/gtktextview.c (gtk_text_view_get_visible_rect): Add
13140         function to get the onscreen rectangle.
13141
13142         * gdk/x11/gdkwindow-x11.c (gdk_window_get_pointer): Correctly account
13143         for offsets in window coordinates.
13144
13145 Sun Apr 16 16:13:27 2000  Owen Taylor  <otaylor@redhat.com>
13146
13147         * gtk/gtkentry.c (gtk_entry_get_cursor_locations): Fix index/offset
13148         confusion.
13149
13150         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Set the default direction
13151         from the widget direction.
13152
13153         * gtk/gtktexttag.c gtk/gtktexttagprivate.h (gtk_text_tag_set_arg): 
13154         Add a "direction" attribute.
13155
13156         * gtk/gtktextview.c: global s/tkxt/text_view/.
13157
13158         * gtk/testtext.c: Added long block of text in Arabic, to test out
13159         the direction attributes. (Some problems with the shaping system
13160         for arabic become obvious - like the fact the cursor splits words
13161         into unjoined pieces.)
13162
13163 Fri Apr 14 12:54:34 2000  Owen Taylor  <otaylor@redhat.com>
13164
13165         * gtk/gtktextdisplay.c (render_layout): Add overstrike handling.
13166
13167         * gtk/gtktextlayout.c: Fix up alignment.
13168
13169         * gtk/testtext.c: Add some tests for centering, wrapping.
13170
13171 Fri Apr 14 09:26:22 2000  Owen Taylor  <otaylor@redhat.com>
13172
13173         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c gdk/x11/gdkdrawable-x11.c:
13174         Add a draw_glyphs() operation to the drawable vtable and gdk_draw_glyphs().
13175         If we wrote GTK+-specific layout-render function this could just replace
13176         the draw_layout() operation in the vtable.
13177
13178         * gtk/gtkentry.c: Move guts of gtk_entry_get_cursor_locations to 
13179         pango_layout_get_cursor_pos() and use that function.
13180
13181         * gtk/gtktextchild.[ch]: add gtk_ onto pixmap_segment_new(), since it
13182         is a non-static symbol.
13183
13184         * gtk/gtktextbtree.[ch]: Replace gtk_text_btree_find_line_data_by_y()
13185         with gtk_text_btree_find_line_by_y()
13186
13187         * gtk/gtktextdisplay.c: Rewrote for Pango - uses a custom layout
13188         renderer that handles GtkTextAppearance attributes.
13189
13190         * gtk/gtktexttag.[ch] gtk/gtktexttagprivate.h: 
13191
13192           - Move the values in the style that don't affect geometry into a
13193             GtkTextAppearance structure.
13194           - Change underline to take a PangoUnderline and "font" a string
13195             representation of a font description
13196           - Add a "font_desc" attribute which takes a FontDescription structure.
13197
13198         * gtk/gtktextlayout.[ch]:
13199
13200           - Get rid of the display-line list per each line. Instead, we
13201             generate, on demand, a GtkTextLineDisplay structure which]
13202             contains a PangoLayout * and other necesary information
13203             (offsets, cursor locations) for displaying a paragraph.
13204           - Get rid of the code to wrap lines, create display chunks,
13205             etc. Instead, we just go through a paragraph and convert
13206             it into the necessary inputs to a PangoLayout.
13207           - Implement a new attribute type, GtkTextAttrAppearance. This
13208             holds a GtkTextAppearance, and is used to pass colors, 
13209             stipple, etc, through from the layout to the display without
13210             having to use lots and lots of individual attributes.
13211           - Reimplement gtk_layout_get_iter_at_pixel() gtk_layout_get_iter_pos()
13212             in terms of PangoLayout functions.
13213         
13214         * gtk/gtktextview.c: 
13215          
13216           - Handle passing the necessary PangoContext to the layout
13217           - Some fixups in painting to deal with the automatic backing store
13218             and offsetting of GTK+-1.4
13219           - Add a style_set handler so that the default style reacts
13220             properly to theme changes.
13221         
13222         * gtk/gtktext?*.[ch]: Random code-style fixes.
13223
13224         * gtk/testtext.c: Substitute in languages that Pango handles now for Thai
13225
13226 Mon Apr 10 10:33:45 2000  Owen Taylor  <otaylor@redhat.com>
13227
13228         * gtk/gtktext?*.[ch]: Check in Havoc's port of the Tk text widget,
13229         in original form preparatory to Pango-ization and gdkimcontext-ization.
13230
13231 Thu Apr  6 19:25:39 2000  Owen Taylor  <otaylor@redhat.com>
13232
13233         * gtk/gtkimcontext.c: Move default implementations to real_* vfuncs,
13234         so that we can derive from gtkimcontext in language bindings properly.
13235
13236 Thu Apr  6 16:02:52 2000  Owen Taylor  <otaylor@redhat.com>
13237
13238         * gtk/gtkimcontextsimple.[ch]: Use gdk_keyval_to_unicode to gdk_unicode_to_keyval.
13239         Add a compose table including (almost) all the compose combinations
13240         from X. This is 6k of static, shared data as opposed to 50k or so of dynamic
13241         data in the XIM implementation.
13242
13243         * gdk/gdk.h gdk/gdkkeyuni.c gdk/win32/gdkevents-win32.c (gdk_keyval_to_unicode, gdk_unicode_to_keyval):
13244         Moved functions to convert keyvalues from and to unicode here from
13245         the win32 port and made them public.
13246
13247 Wed Apr  5 16:37:29 2000  Owen Taylor  <otaylor@redhat.com>
13248
13249         * gtk/gtkeditable.c (gtk_editable_insert_text): Allow new_text_length == -1.
13250
13251 Wed Apr  5 16:27:45 2000  Owen Taylor  <otaylor@redhat.com>
13252
13253         * gtk/gtkimcontext.[ch]: Base class for new input context system
13254
13255         * gtk/gtkimmulticontext.[ch]: Proxy input context that allows
13256         the real input context implementation to be loaded from modules
13257         and switched on the fly.
13258
13259         * gtk/gtkcontextsimple.[ch]: Simple implementation of an input
13260         context that just does direct keysymbol => unicode translation.
13261
13262         * gtk/gtkentry.[ch]: Start switching editing over to using
13263         GtkInputContext. (No handling of preedit yet.)
13264
13265 Wed Apr  5 15:48:41 2000  Owen Taylor  <otaylor@redhat.com>
13266
13267         * gtk/gtktypeutils.h (GTK_CHECK_GET_CLASS): Fix problem with one too
13268         many substitutions. (klass should not be subsituted.)
13269
13270 Wed Apr  5 00:18:14 2000  Owen Taylor  <otaylor@redhat.com>
13271
13272         * configure.in: Add checks for Pango
13273
13274         * configure.in docs/Makefile.am: Add test for sgml2html
13275         and allow 'make dist' without building html, but print out
13276         warnings in that case. (For making snapshots)
13277
13278         * gdk/Makefile.am gdk/x11/Makefile.am gtk/Makefile.am:
13279         Add Pango libraries and C flags
13280
13281         * gdk/gdkdraw.c gdk/gdkdrawable.h gdkwindow.c gdk/x11/gdkdrawable-x11.c:
13282         Add function (gdk_draw_layout) to draw a pango layout.
13283
13284         * gdk/gdkpango.h gdk/x11/gdkpango-x11.c: New file with functions
13285         for getting Pango contexts for GDK.
13286
13287         * gtk/gtkeditable.c: Get rid of dead code gtk_editable_parent_set()
13288
13289         * gtk/gtkentry.[ch]: Complete rewrite to use Pango, add bidirectional
13290         editing.
13291
13292         * gtk/gtkentry.c: Hack in simple Hebrew input with direct
13293         keysym => unicode translations. More languages can be added
13294         here, but real input-method support is needed.
13295
13296         * docs/Changes-1.4.txt: Added note about entry behavior.
13297         
13298         * gtk/gtkenums.h gtk/gtkwidget.[ch] testgtk.c gtkprivate.h: Add functions
13299         to set the reading direction for a widget and the global direction.
13300         Add test which allows toggling the global direction. Two private
13301         flags are used to store the direction. (GTK_DIRECTION_SET + GTK_DIRECTION_LTR)
13302
13303         * gtk/gtkcheckbutton.c gtk/gtkframe.c gtk/gtkhbbox.c gtk/gtkhbox.c
13304           gtk/gtkradiobutton.c gtk/gtkspinbutton.c gtk/gtktable.c 
13305
13306         * gtk/gtk[hv]scale.c gtk/gtkscale.[ch]: Draw numbers using Pango
13307
13308         * gtk/gtklabel.[ch]: Moved to Pango and considerably rewritten. Line breaking,
13309         underlining now handled by Pango.
13310
13311         * gtk/gtkstyle.[ch] gtk/gtkrc.[ch]: Add a PangoFontDescription
13312         to RCStyle and Style. (Having both this and the old font name and GdkFont 
13313         is temporary.)
13314
13315         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_{context,layout}): Added 
13316         convenience functions for creating contexts and layouts for widgets.
13317
13318         * gtk/testgtk.c: Enhance label tests with multilingual labels.
13319
13320 2000-05-29  Jonathan Blandford  <jrb@redhat.com>
13321
13322         * gtk/gtkclist.c (gtk_clist_column_titles_active): let you set the
13323         titles to be active, even if they aren't visible.
13324         (gtk_clist_column_titles_passive):  Ditto.
13325
13326 2000-05-21  Nils Barth  <nils_barth@post.harvard.edu>
13327
13328         * gtkmenu.c:
13329         * gtkmenu.h:
13330         * gtktypeutils.h: Spelling/grammar fixes in comments.
13331
13332 Tue May 23 12:25:07 CEST 2000 lupus <lupus@debian.org>
13333
13334         * gdk/nanox/*.h: add missing header files.
13335
13336 Fri May 19 11:52:59 2000  Tim Janik  <timj@gtk.org>
13337
13338         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set
13339         send_event to TRUE.
13340         (gtk_drawing_area_size): queue a resize.
13341
13342 Sun Mar 26 03:21:28 2000  Tim Janik  <timj@gtk.org>
13343
13344         * gtk/gtksignal.c (gtk_signal_handlers_destroy): when unref-ing
13345         the handlers, also invalidate them. bug nailed down by Karl Nelson
13346         <kenelson@ece.ucdavis.edu>.
13347
13348 Fri May 19 06:49:23 2000  Tim Janik  <timj@gtk.org>
13349
13350         * gtk/gtkfontsel.c (gtk_font_selection_get_font_name): handle
13351         "(nil)" foundries, patch from Grigorios Magklis.
13352
13353         * gtk/gtkfontsel.c (gtk_font_selection_load_font): don't crash
13354         on non-available fonts, based on a patch by Grigorios Magklis
13355         <maglis@cs.rochester.edu>.
13356
13357 2000-05-18  Elliot Lee  <sopwith@redhat.com>
13358
13359         * gdk/x11/gdkregion-generic.c: If a region does not have any
13360         rectangles, or if the specified rectangle is not in the region, then return GDK_OVERLAP_RECTANGLE_OUT
13361         instead of GDK_OVERLAP_RECTANGLE_IN.
13362
13363 2000-05-17  Jonathan Blandford  <jrb@redhat.com>
13364
13365         * gtk/gtklayout.c (gtk_layout_map): Remove references to
13366         OFFSCREEN, as it is no longer necessary.
13367
13368 Wed May 17 10:52:12 2000  Owen Taylor  <otaylor@redhat.com>
13369
13370         * gtk/gtkcolorsel.c: Patch from David Santiago
13371         <mrcooger@cyberverse.com> to change things so that the 
13372         indicator of the active palette entry is done independently,
13373         not via the focus, since it should always be visible.
13374
13375 2000-05-17  Tor Lillqvist  <tml@iki.fi>
13376
13377         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Plug same
13378         refcount leaks as in the X11 backend.
13379
13380         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Logging
13381         cosmetics.
13382
13383         * gdk/win32/gdkwindow-win32.c: Similar changes as in X11
13384         backend. Add _gdk_windowing_window_destroy().
13385
13386         * gtk/gtkcolorsel.c: Include correct backend-specific header.
13387         Don't use XColor unless on X11. (No GDK_VISUAL_STATIC_COLOR
13388         either, but these probably do exist on nanox?)
13389         
13390         * gtk/gtkhsv.c: Use G_PI (fresh from <glib.h>) instead of M_PI
13391         which isn't necessarily defined by <math.h>.
13392
13393         * gtk/gtkobject.c (gtk_object_init): Don't go up the class
13394         ancestry past GtkObject.
13395
13396         * gtk/gtktypeutils.h: Mark GTK_TYPE_IDENTIFIER for export/import
13397         from DLL on Win32.
13398
13399         * gtk/gtk.def: Update corresponding to recent changes.
13400
13401         * gtk/makefile.{cygwin,msc}: Updates.
13402
13403 Fri May 12 18:46:51 2000  Owen Taylor  <otaylor@redhat.com>
13404
13405         * docs/Changes-1.4.txt: A bit of editing.
13406
13407         * gdk/gdkwindow.c (_gdk_window_clear_update_area) 
13408         * gdk/x11/gdkwindow-x11.c (gdk_window_hide): Add a function
13409         to clear the update area for the window, and clear it
13410         when hiding a window.
13411
13412         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Ignore
13413         if window destroyed.
13414
13415         * gdk/gdkwindow.c (gdk_window_end_paint): Likewise.
13416
13417         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c gdk/gdkinternals.h: Move 
13418         gdk_window_destroy() to the generic code, since there was a lot of 
13419         window-system-independent logic it in. Add a function:
13420         
13421          _gdk_window_destroy() 
13422
13423         to the internal API to destroy a window without unreferencing it.
13424         Add a function:
13425
13426          _gdk_windowing_window_destroy()
13427
13428         That does the windowing-system-dependent part of destroying 
13429         the window.
13430
13431 Fri May 12 11:07:41 2000  Owen Taylor  <otaylor@redhat.com>
13432
13433         * gtk/testgtk.c: Fix various memory leaks of pixmaps.
13434
13435 Fri May 12 11:06:10 2000  Owen Taylor  <otaylor@redhat.com>
13436
13437         * gtk/gtkwidget.c docs/Changes-1.4.txt (gtk_widget_shape_combine_mask): 
13438         Make gtk_widget_shape_combine_mask() keep a reference count on
13439         the pixmap since it keeps it around.
13440
13441 Fri May 12 10:53:29 2000  Owen Taylor  <otaylor@redhat.com>
13442
13443         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix refcount
13444         leak.
13445
13446         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Fix refcount
13447         leak with event filters.
13448
13449 Thu May 11 14:29:44 2000  Owen Taylor  <otaylor@redhat.com>
13450
13451         * gtk/gtkdnd.c (gtk_drag_dest_set_internal): Remove the
13452         signal handlers with the right data arguments. (Fixes
13453         some warnings when a widget was repeatedly set as a drag
13454         destination.)
13455
13456         * gdk/x11/gdkdnd-x11.c (gdk_window_register_dnd): Set data on the
13457         window so we can avoid avoid setting the DND properties on the
13458         toplevel window repeatedly.
13459
13460 2000-05-13  Tor Lillqvist  <tml@iki.fi>
13461
13462         * gdk/win32/gdkwin32.h: Define more message types missing from
13463         mingw headers.
13464
13465         * gdk/win32/gdkevents-win32.c (gdk_event_translate): On WM_DESTROY
13466         call gdk_window_destroy_notify(). It was never called. This
13467         probably meant that the GdkWindow was never freed. Thanks Owen for
13468         noticing (!).
13469
13470         * gdk/win32/gdkwindow-win32.c (gdk_window_internal_destroy): Mark
13471         window as destroyed before calling DestroyWindow(). DestroyWindow()
13472         causes a call to the window procedure (gdk_WindowProc), which
13473         calls gdk_event_translate(), which calls
13474         gdk_window_destroy_notify(), which gets confused unless the window
13475         is set as destroyed.
13476
13477         * gdk/win32/gdkcolor-win32.c (gdk_win32_color_to_string): Rename
13478         this function to indicate it's win32 only. Put inside #ifdef
13479         G_ENABLE_DEBUG.
13480
13481         * gdk/win32/gdkevents-win32.c (gdk_win32_message_name): New
13482         debugging function. (gdk_event_translate:) Add a default branch
13483         that uses the above function to print debug messages with all
13484         Windows messages symbolically.
13485
13486         * gdk/win32/gdkprivate-win32.h: Declare it, and
13487         gdk_win32_color_to_string, but only if G_ENABLE_DEBUG.
13488
13489 Fri May 12 20:07:32 2000  Tim Janik  <timj@gtk.org>
13490
13491         * gtk/gtkcolorseldialog.c: don't include gtk/gtkintl.h in a
13492         public header file.
13493
13494 Fri May 12 17:13:32 2000  Tim Janik  <timj@gtk.org>
13495
13496         * docs/Changes-1.4.txt: documented necessary changes for 1.4 transition.
13497
13498         * gtk/gtktext.c: made the adjustments no-construct args, simply
13499         provide default adjustments.
13500         (gtk_text_destroy): release adjustments.
13501
13502         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): made the
13503         adjustment argument non-construct.
13504
13505         * gtk/gtkprogress.c (gtk_progress_destroy): release adjustment here,
13506         instead of in finalize.
13507         (gtk_progress_get_text_from_value): 
13508         (gtk_progress_get_current_text): 
13509         (gtk_progress_set_value): 
13510         (gtk_progress_get_percentage_from_value): 
13511         (gtk_progress_get_current_percentage): 
13512         (gtk_progress_set_percentage): 
13513         (gtk_progress_configure): ensure an adjustment is present.
13514
13515 Thu May 11 01:24:08 2000  Tim Janik  <timj@gtk.org>
13516
13517         * gtk/gtkcolorsel.[hc]:
13518         * gtk/gtkcolorseldialog.[hc]:
13519         * gtk/gtkhsv.[hc]: major code cleanups, destroy handlers need to chain
13520         their parent implementation, use bit fields for boolean values, don't
13521         create unused widgets, usage of glib types, braces go on their own
13522         lines, function argument alignment, #include directives etc. etc. etc..
13523
13524         * gtk/Makefile.am (gtk_public_h_sources): install gtkhsv.h.
13525
13526 Wed May 10 23:29:52 2000  Tim Janik  <timj@gtk.org>
13527
13528         * gtk/gtktoolbar.c (gtk_toolbar_destroy): don't unref a NULL tooltips.
13529
13530         * gtk/gtkfilesel.c (gtk_file_selection_destroy): don't free a cmpl_state
13531         of NULL.
13532
13533         * gtk/gtkcombo.c (gtk_combo_item_destroy): don't keep references
13534         to freed data.
13535         (gtk_combo_destroy): don't keep a pointer to a destroyed window.
13536
13537         * gtk/gtkmenu.c (gtk_menu_init): reset the menu's toplevel pointer
13538         to NULL when the toplevel is getting destroyed.
13539         (gtk_menu_set_tearoff_state): same here for the tearoff_window.
13540         (gtk_menu_destroy): 
13541         (gtk_menu_init): store the information of whether we have to
13542         readd the initial child ref_count during destruction in a new
13543         GtkMenu field needs_destruction_ref_count.
13544
13545         * gtk/gtkviewport.c: SHAME! ok this one is tricky, so i note it
13546         here, those reading: learn from my mistake! ;)
13547         in order for set_?adjustment to support a default adjustemnt if
13548         invoked with an adjustment pointer of NULL, the code read (pseudo):
13549         if (v->adjustment) unref (v->adjustment);
13550         if (!adjustment) adjustment = adjustment_new ();
13551         if (v->adjustment != adjustment) v->adjustment = ref (adjustment);
13552         now imagine the first unref to actually free the old adjustment and
13553         adjustment_new() creating a new adjustment from the very same memory
13554         portion. here, the latter comparision will unintendedly fail, and
13555         all hell breaks loose.
13556         (gtk_viewport_set_hadjustment):
13557         (gtk_viewport_set_vadjustment): reset viewport->?adjustment to NULL
13558         after unreferencing it.
13559
13560         * gtk/gtkcontainer.[hc]: removed toplevel registration
13561         functions: gtk_container_register_toplevel(),
13562         gtk_container_unregister_toplevel() and
13563         gtk_container_get_toplevels() which had wrong semantics
13564         anyways: it didn't reference and copy the list.
13565
13566         * gtk/gtkwindow.c: we take over the container toplevel registration
13567         bussiness now. windows are registered across multiple destructions,
13568         untill they are finalized. the initial implicit reference count
13569         users are holding on windows is removed with the first destruction
13570         though.
13571         (gtk_window_init): ref & sink and set has_user_ref_count, got
13572         rid of gtk_container_register_toplevel() call. add window to
13573         toplevel_list.
13574         (gtk_window_destroy): unref the window if has_user_ref_count
13575         is still set, got rid of call to
13576         gtk_container_unregister_toplevel().
13577         (gtk_window_finalize): remove window from toplevel list.
13578         (gtk_window_list_toplevels): new function to return a newly
13579         created list with referenced toplevels.
13580         (gtk_window_read_rcfiles): use gtk_window_list_toplevels().
13581
13582         * gtk/gtkhscale.c (gtk_hscale_class_init): made the GtkRange
13583         adjustment a non-construct arg.
13584         * gtk/gtkvscale.c (gtk_vscale_class_init): likewise.
13585         * gtk/gtkhscrollbar.c (gtk_vscrollbar_class_init): likewise.
13586         * gtk/gtkvscrollbar.c (gtk_vscrollbar_class_init): likewise.
13587
13588         * gtk/gtkrange.c: added some realized checks.
13589         (gtk_range_destroy): get rid of the h/v adjustments in the
13590         destroy handler instead of finalize. remove timer.
13591         (gtk_range_get_adjustment): demand create adjustment.
13592
13593         * gtk/gtkviewport.c: made h/v adjustment non-construct args.
13594         we simply create them on demand now and get rid of them in
13595         the destroy handler.
13596         (gtk_viewport_destroy): get rid of the h/v adjustments in the
13597         destroy handler instead of finalize.
13598         (gtk_viewport_get_hadjustment): 
13599         (gtk_viewport_get_vadjustment): 
13600         (gtk_viewport_size_allocate): demand create h/v adjustment
13601         if required.
13602
13603         * gtk/gtkwidget.c (gtk_widget_finalize): duplicate part of the
13604         gtk_widget_real_destroy () functionality.
13605         (gtk_widget_real_destroy): reinitialize with a new style, instead
13606         of setting widget->style to NULL.
13607
13608 Fri May  5 13:02:09 2000  Tim Janik  <timj@gtk.org>
13609
13610         * gtk/gtkcalendar.c:
13611         * gtk/gtkbutton.c: ported _get_type() implementation over to
13612         GType, either to preserve memchunks allocation facilities,
13613         or because Gtk+ 1.0 GtkTypeInfo was still being used.
13614
13615         * gtk/gtkobject.[hc]: derive from GObject. ported various functions
13616         over. prepare for ::destroy to be emitted multiple times.
13617         removed reference tracer magic. chain into GObjectClass.shutdown()
13618         to emit ::destroy signal.
13619
13620         * gtk/gtksignal.c: removed assumptions about GTK_TYPE_OBJECT being
13621         fundamental.
13622
13623         * gtk/gtkmain.c: removed gtk_object_post_arg_parsing_init()
13624         cludge.
13625
13626         * gtk/gtksocket.c:
13627         * gtk/gtkplug.c:
13628         * gtk/gtklayout.c:
13629         * gtk/gtklabel.c:
13630         * gtk/gtkargcollector.c:
13631         * gtk/gtkarg.c: various fixups to work with GTK_TYPE_OBJECT
13632         not being a fundamental anymore, and to work with the new
13633         type system (nuked fundamental type varargs clutter).
13634
13635         * gtk/*.c: install finalize handlers in the GObjectClass
13636         part of the class structure.
13637         changed direct GTK_OBJECT()->klass accesses to
13638         GTK_*_GET_CLASS().
13639         changed direct object_class->type accesses to GTK_CLASS_TYPE().
13640
13641         * gtktypeutils.[hc]: use the reserved fundamental ids provided by
13642         GType. made most of the GTK_*() type macros and Gtk* typedefs
13643         simple wrappers around macros and types provided by GType.
13644         most notably, a significant portion of the old API vanished:
13645         GTK_TYPE_MAKE(),
13646         GTK_TYPE_SEQNO(),
13647         GTK_TYPE_FLAT_FIRST, GTK_TYPE_FLAT_LAST,
13648         GTK_TYPE_STRUCTURED_FIRST, GTK_TYPE_STRUCTURED_LAST,
13649         GTK_TYPE_ARGS,
13650         GTK_TYPE_CALLBACK,
13651         GTK_TYPE_C_CALLBACK,
13652         GTK_TYPE_FOREIGN,
13653         GtkTypeQuery,
13654         gtk_type_query(),
13655         gtk_type_set_varargs_type(),
13656         gtk_type_get_varargs_type(),
13657         gtk_type_check_object_cast(),
13658         gtk_type_check_class_cast(),
13659         gtk_type_describe_tree(),
13660         gtk_type_describe_heritage(),
13661         gtk_type_free(),
13662         gtk_type_children_types(),
13663         gtk_type_set_chunk_alloc(),
13664         gtk_type_register_enum(),
13665         gtk_type_register_flags(),
13666         gtk_type_parent_class().
13667         replacements, where available are described in ../docs/Changes-1.4.txt.
13668         implemented compatibility functions for the remaining API.
13669
13670         * configure.in: depend on glib 1.3.1, use gobject module.
13671
13672 Thu May 11 12:39:50 2000  Owen Taylor  <otaylor@redhat.com>
13673
13674         * TODO.xml: Various updates to current status.
13675
13676 Wed May 10 20:25:04 2000  Owen Taylor  <otaylor@redhat.com>
13677
13678         * gtk.m4: Print out version when test succeeds.
13679
13680 Wed May 10 16:38:17 2000  Owen Taylor  <otaylor@redhat.com>
13681
13682         * gtk/Makefile.am docs/Changes-1.4.txt gtk/gtkcolorsel.[ch]
13683         gtk/gtkhsv.[ch]: Color selection dialog rewrite.
13684         
13685         (Original triangle color selector from Simon Budig
13686         <Simon.Budig@unix-ag.org>, Cleaned up and rewritten for GTK+ by
13687         from Jonathan, Havoc, and Federico. Merge into GTK+ done by David
13688         Santiago <mrcooger@cyberverse.com>)
13689
13690         * gtk/gtkcolorseldialog.[ch]: Split color selection dialog
13691         out into a separate widget.
13692
13693         * gtk/testgtk.c: Add some checkbuttons for toggling palette
13694         and opacity controls.
13695
13696 Wed May 10 16:08:09 2000  Owen Taylor  <otaylor@redhat.com>
13697
13698         * configure.in (GTK_LIBS_EXTRA): Remove references to gobject that 
13699         snuck in prematurely.
13700
13701 2000-05-07  Tor Lillqvist  <tml@iki.fi>
13702
13703         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Fix typo. I
13704         had deleted a ! operator by mistake, which caused
13705         GDK_SELECTION_CLEAR events never to be generated, which caused
13706         only the first copy to the clipboard from an gtkeditable to
13707         actually cause a copy to the Windows clipboard.
13708
13709 2000-05-06  Tor Lillqvist  <tml@iki.fi>
13710
13711         * gdk/win32/gdkdnd-win32.c: Enable shortcut resolution for gcc
13712         compilation, too. Current mingw gcc distributions include the
13713         necessary headers. Also the necessary IIDs are now in mingw
13714         headers/libraries, and own definitions unnecessary.
13715
13716         More hacking on OLE2 DND, still doesn't work though, and thus
13717         ifdeffed out.
13718
13719         * gdk/win32/gdkwindow-win32.c: Remove gdk_window_clear() from
13720         here, too.
13721
13722 Sat,  6 May 2000 13:31:34 +0200 Paolo Molaro <lupus@linuxcare.com>
13723
13724         * gdk/nanox/*: nano-X port work in progress.
13725         * gdk/simple.c: simple test for Gdk.
13726         * README.nanox: notes about the port: read this first!
13727         * gtk/gtk{dnd,plug,selection,window}.c: minimal changes to make gtk compile
13728         with nano-X.
13729
13730 Fri May  5 11:18:47 2000  Owen Taylor  <otaylor@redhat.com>
13731
13732         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c (gdk_window_clear): Move
13733         gdk_window_clear() into common code, implement in terms of
13734         gdk_window_clear_area(). (Fixes bug where gdk_window_clear() was
13735         not redirected to the backing rectangle.
13736
13737 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
13738
13739         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
13740         EXTRA_DIST. It does not work well when the file that
13741         everything depends on is not in the tarball.
13742
13743 Tue Apr 25 22:20:41 2000  Owen Taylor  <otaylor@redhat.com>
13744
13745         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix error
13746         with recursion where process_updates() is called from
13747         an expose handler. (GtkTextView is highly broken in
13748         doing this, but it should work, so it is a nice test
13749         case.)
13750
13751 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
13752
13753         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Gracefully
13754         handle the case where updates are queued during processing of
13755         updates.
13756
13757 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
13758
13759         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): We already assume
13760         window is on gdk_display - use that instead of segfaulting.
13761
13762 Thu May  4 02:04:46 2000  Tim Janik  <timj@gtk.org>
13763
13764         * configure.in (STRIP_DUMMY): some Make 3.79 $(strip ) versions are
13765         broken and require an empty arg, give it to them.
13766
13767 Fri Apr 28 19:34:32 2000  Tim Janik  <timj@gtk.org>
13768
13769         * gtk/gtklabel.h: indentation fixes.
13770
13771 2000-05-02  Tor Lillqvist  <tml@iki.fi>
13772
13773         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_arc): Don't try to
13774         draw too narrow or too low arcs, they seem to fail, at least with
13775         some display drivers.
13776
13777         * gdk/gdk.c (gdk_init_check): Use G_DIR_SEPARATOR.
13778
13779         Large changes to the Win32 backend, partially made necessary by
13780         the changes to the backend-independent internal
13781         structures. Attempts to implement similar backing store stuff as
13782         on X11. The current (CVS) version of the Win32 backend is *not* as
13783         stable as it was before the no-flicker branch was merged. A
13784         zipfile with that version is available from
13785         http://www.gimp.org/win32/. That should be use by "production"
13786         code until this CVS version is usable. (But note, the Win32
13787         backend has never been claimed to be "production quality".)
13788
13789         * README.win32: Add the above comment about versions.
13790
13791         * gdk/gdkwindow.c: Don't use backing store for now on Win32.
13792
13793         * gdk/gdk.def: Update.
13794
13795         * gdk/gdkfont.h: Declare temporary Win32-only functions. Will
13796         presumably be replaced by some more better mechanism as 1.4 gets
13797         closer to release shape.
13798
13799         * gdk/makefile.{cygwin,msc}: Update.
13800
13801         * gdk/win32/*.c: Correct inclusions of the backend-specific and
13802         internal headers. Change code according to changes in these. Use
13803         gdk_drawable_*, not gdk_window_* where necessary.
13804
13805         * gdk/win32/gdkdnd-win32.c: Use MISC selector for GDK_NOTE, not
13806         our old DND.
13807
13808         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_text): Don't try
13809         to interpret single characters as UTF-8. Thanks to Hans Breuer.
13810         Use correct function name in warning messages.
13811
13812         * gdk/win32/gdkevents-win32.c: Use correct parameter lists for the
13813         GSourceFuncs gdk_event_prepare and gdk_event_check.
13814         (gdk_event_get_graphics_expose): Do implement, use
13815         PeekMessage. Thanks to Hans Breuer.
13816         (event_mask_string): Debugging function to print an GdkEventMask.
13817         (gdk_pointer_grab): Use it.
13818
13819         * gdk/win32/gdkfont-win32.c: The Unicode subrange that the
13820         (old) book I used claimed was Hangul actually is CJK Unified
13821         Ideographs Extension A. Also, Hangul Syllables were missing.
13822         Improve logging.
13823
13824         * gdk/win32/gdkgc-win32.c: Largish changes.
13825
13826         * gdk/win32/gdkim-win32.c (gdk_set_locale): Use
13827         g_win32_getlocale() from GLib, and not setlocale() to get current
13828         locale name.
13829
13830         * gdk/win32/gdkprivate-win32.h
13831         * gdk/win32/gdkwin32.h: Move stuff from gdkprivate-win32.h to
13832         gdkwin32.h, similarily as in the X11 backend.
13833
13834         * gdk/win32/gdkwindow-win32.c (gdk_propagate_shapes): Bugfix,
13835         assignment was used instead of equals in if test. Thanks to Hans
13836         Breuer.
13837
13838         * gdk/win32/gdkgeometry-win32.c: New file, just a quick hack of
13839         the X11 version.
13840
13841         * gdk/win32/makefile.{cygwin,msc}
13842         * gtk/makefile.{cygwin,msc}: Updates. Better kludge to get the
13843         path to the Win32 headers that works also with the mingw compiler.
13844
13845         * gtk/gtkstyle.c: Include <string.h>.
13846
13847 2000-04-26  Havoc Pennington  <hp@redhat.com>
13848
13849         * gtk/gtklabel.c (gtk_label_get_text): Add this function,
13850         replacing the broken gtk_label_get ()
13851
13852 2000-04-15  Havoc Pennington  <hp@pobox.com>
13853
13854         * gdk/gdkdnd.h: clean up enum format, remove extra comma, 
13855         this keeps scanner scripts from getting confused.
13856
13857         * gdk/gdkdraw.c (gdk_drawable_get_data): This should return the
13858         data, rather than void
13859
13860 2000-04-15  Tor Lillqvist  <tml@iki.fi>
13861
13862         * gtk/gtkclist.c (gtk_clist_motion)
13863         * gtk/gtklist.c (gtk_list_motion_notify): If we get a motion event
13864         with is_hint FALSE, get x and y from the event. They used to be
13865         used uninitialised. The Win32 backend never sends motion events
13866         marked as hints. This for instance fixes the annoying file and
13867         font selector behaviour in the Win32 version.
13868
13869 2000-04-14  Tor Lillqvist  <tml@iki.fi>
13870
13871         * gtk/gtksignal.c: (Win32:) Export the gtk_private_signals and
13872         gtk_private_n_signals variables, they are used by some software,
13873         sigh.
13874
13875         * gtk/gtkrc.c (get_gtk_sysconf_directory): (Win32:) Fetch the
13876         installation directory from the Registry, where the installer
13877         should have put it.
13878
13879 Fri Apr  7 17:19:27 2000  Owen Taylor  <otaylor@redhat.com>
13880
13881         * gdk/x11/Makefile.am: Fix problem with installation directory for
13882         gdkx.h
13883
13884         * gtk/gtkmenuitem.c gtk/gtkmenushell.c: Patch from David Santiago
13885         <mrcooger@cyberverse.com> so that when selecting menus with the
13886         mouse, the first item will not be selected, but when selecting
13887         with an accelerator, or navigating left-right on a menubar with
13888         the menus popped up, the first item will be selected.
13889
13890 2000-04-05  Dan Damian  <dand@dnttm.ro>
13891
13892         * configure.in: Added "ro" to ALL_LINGUAS.
13893
13894 Wed Apr  5 00:08:36 2000  Owen Taylor  <otaylor@redhat.com>
13895
13896         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): Fix screwy
13897         indentation.
13898
13899         * Makefile.am (EXTRA_DIST): Fix typo.
13900
13901         * gdk[/x11]/Makefile.am (INCLUDES): Add $(top_builddir)/gdk
13902         to catch gdkconfig.h
13903
13904         * gtk/gtkitemfactory.c: Added FIXME.
13905
13906 2000-03-30  Jonathan Blandford  <jrb@redhat.com>
13907
13908         * gtk/gtkpaned.c (gtk_paned_get_position): oops.
13909         s/return_if_fail/return_val_if_fail/g and add a return value.
13910
13911 Mon Mar 27 20:56:14 2000  Owen Taylor  <otaylor@redhat.com>
13912
13913         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Fix up 
13914         merge slipup.
13915
13916         * gdk/gdkinput.h: Fix missing line from merge.
13917
13918 Mon Mar 27 20:39:49 2000  Owen Taylor  <otaylor@redhat.com>
13919
13920         * gdk/gdkcolor.c cursor.c gdkdraw.c gdkfont.c: Include gdkinternals.h
13921         instead of gdkprivate.h.
13922
13923 Sun Mar 12 15:19:24 2000  Owen Taylor  <otaylor@redhat.com>
13924
13925         * gtk/gtkinputdialog.h (struct _GtkInputDialogClass): Fix
13926         parent class to correctly be GtkDialogClass.
13927
13928 Thu Feb 24 23:58:21 2000  Owen Taylor  <otaylor@redhat.com>
13929
13930         * gdk/x11/gdkgeometry-x11.c: Don't worry about clipping of
13931         toplevel windows and their immediate children by their parents,
13932         since the size of toplevel windows is out of our immediate
13933         control and we don't get any real benefit from trying to track
13934         this size for clipping.
13935
13936         * gdk/gdkprivate.h (struct _GdkWindowPrivate) gdk/x11/gdkwindow-x11.c : Add a flag
13937         for input_only windows.
13938
13939         * gdk/gdkwindow.c gdk/x11/gdkgeometry-x11.c: Use the above flag
13940         to fix some hacks and make sure that we don't try to set the
13941         background of input only windows.
13942
13943 Thu Feb 24 18:11:46 2000  Owen Taylor  <otaylor@redhat.com>
13944
13945         * gdk/gdkinternals.h gdk/gdkprivate.h gdk/Makefile.am: Add a header file for
13946         the _really_ internal stuff, and leave gdkprivate.h for the fake private
13947         stuff that we've traditionally exposed.
13948
13949         * gdk/**.c: Use gdkinternals.h where appropriate.
13950
13951         * gdk/x11/gdkx.h gdk/x11/gdkprivate-x11.h gdk/x11/*.c: Make gdkx.h
13952         not include gdkprivate-x11.h, move all stuff of conceivable public
13953         interest into gdkx.h; keep all really private stuff in
13954         uninstalled header gdkprivate-x11.h.
13955
13956         * gdk/gdkdraw.c gdk/gdkwindow.c gdk/gdkinternals: Redirect all calls to
13957         image->image_put on windows through a new function _gdk_window_draw_image()
13958         to allow us to do backing store for images. (Sort of ugly)
13959
13960         * gdk/gdkgc.c gdk/gdkprivate.h: Cache the ts and clip origins for graphics
13961         contexts locally so that we can offset them properly when drawing 
13962         onto backing pixmaps.
13963
13964         * gdk/gdkinput.h: Reindented
13965
13966         * gdk/gdkprivate.h gdk/x11/gdkwindow-x11.c: Store the background
13967         pixmap or color for the window, so we can properly initialize
13968         our double-buffer pixmaps, and also so that we temporarily set
13969         a background of None while scrolling.
13970
13971         * gdk/gdkregion.h: Revise region boolean operators to have an
13972         interface that is actually convenient - switch from creating new
13973         regions on every op, to "methods" that modify existing regions
13974         (A = A OP B). 3 argument forms which allow dest == src, would also
13975         be possible, but the current interfaces seem to map nicely
13976         onto what needs to be done. (There is quite a lot of region
13977         code in GDK now.)
13978
13979         * gdk/gdkregion.h: Add constructor from rectangle and a copy
13980         operator.
13981
13982         * gdk/x11/{gdkregion-generic.[ch],gdkpolyreg-generic.c,
13983         gdkpoly-generic.h: Copy region code from Xlib, switch it over
13984         to 32 bit coordinates, modify it to be mostly GTK+ style
13985         and to have interfaces that match gdkregion.h.
13986
13987         * gdk/gdkwindow.c gdk/gdkprivate.h: Add facility for
13988         double-buffered drawing. gdk_window_begin_paint_{rect,region}()
13989         create a backing pixmap and redirect all drawing to
13990         that backing pixmap until a matching gdk_window_end_paint().
13991
13992         * gdk/gdkwindow.[ch] gdk/gdkinternals.h gdk/x11/gdkdrawable-x11.c:
13993         Create a special drawable class for GtkWindow's that 
13994         redirects the drawing to the backing pixmap as necessary
13995         and then calls the real operations in _gdk_windowing_window_class.
13996
13997         * gdk/gdkprivate.h gdk/gdkwindow.[ch] gdk/x11/gdkevents-x11.c:
13998         Store invalid region for each window. Generate expose events for invalid
13999         region in an idle. This replaces both the expose compression
14000         and the redrawing queuing in GTK+. It is both more efficient and
14001         simpler than either one individually and far more so then the
14002         combination.
14003
14004         * gdk/x11/gdkgeometry.c gdk/x11/gdkwindow.c gdk/x11/gdkprivate-x11.h:
14005         Emulate 32 bit coordinates for windows with 16 bit coordinates
14006         by offsetting drawing, guffaw scrolling techniques and
14007         mapping/unmapping child windows as necessary.
14008
14009         * gdk/gdkwindow.[ch] gdk/x11/gdkgeometry.c: Add anti-exposes,
14010         where, when invalid regions are processed, the region is stored,
14011         and if expose events come in that are detectably duplicate
14012         the processed exposes (by comparison of event serial numbers),
14013         the stored region is subtracted out of those exposes.
14014
14015         * gdk/x11/gdkgeometry.c: Temporarily unset backing pixmaps of
14016         regions newly exposed when scrolling or resizing windows.
14017         This, combined with forcing processesing of queued invalidated
14018         regions, gives nice flicker-free scrolling.
14019
14020         * gtk/gtklayout.c gtk/gtkviewport.c: Force processing of
14021         invalidated regions after every scroll.
14022
14023         * gtk/gtklayout.c: Vastly simplify using the new 32 bit coordinate
14024         emulation in GDK. Its, for all practical purposes just a
14025         GtkViewport/GtkFixed hybrid now.
14026
14027         * gdk/gdkdrawable-x11.c: Convert from GDK (32 bit) to X11
14028         (16-bit) structures as necessary instead of just casting.
14029
14030         * gdk/x11/gdkgc-x11.c gdk/x11/gdkx.h: Replace XSetRegion with code
14031         in terms of the structures from gdkregion-generic.c, using appropriate
14032         offsets from GDK to X11 coordinates. Cache clip mask and
14033         origin and ts origin locally and only flush to the server
14034         when drawing, to avoid constantly setting and resetting these
14035         values when offsetting GC's for scrolling and backing pixmaps.
14036
14037         * gdk/x11/gdkinput-x11.c: Fix leak of axes structures.
14038
14039         * gtk/gtkcontainer.c: Call process_all_updates at end
14040         of resizing to reduce flicker. (Avoids having redraw
14041         lag arbitrarily behind resize under some circumstances)
14042
14043         * gtk/gtkentry.c: Remove old backing store code, and simply take
14044         advantage of the new backing store capabilities of GDK.
14045
14046         * gtk/gtkmain.c: Simple implementation of widget backing
14047         store - simply push a paint while handling each expose.
14048         (Should really be configurable widget for widget.)
14049         
14050         * gtk/gtkwidget.c: Remove all the old complicated redraw
14051         code, and simply invalidate the GDK windows from
14052         gdk_window_queue_clear(), etc. (Sigh, so much carefully
14053         debugged complexity ... gone to the winds.)
14054
14055         Remove all the code for suppressing expose events while
14056         resizes are pending; this isn't needed since the invalid
14057         areas won't be processed until after the resizes are
14058         processed, since they are in a lower priority idle.
14059
14060 Thu Feb 24 15:37:41 2000  Owen Taylor  <otaylor@redhat.com>
14061
14062         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Set width
14063         and height of dest rectangle for non-intersecting rectangles.
14064
14065 Sun Feb 20 16:47:31 2000  Owen Taylor  <otaylor@redhat.com>
14066
14067         * gtk/gtkwidget.h: Make GtkAllocation just a typedef
14068         for GdkRectangle.
14069
14070 Sun Feb 20 11:27:00 2000  Owen Taylor  <otaylor@redhat.com>
14071
14072         * gdk/gdk{events,image,private,types,window}.h
14073          gdk/x11/gdkinputprivate.h: Change all coordinates
14074          from int16 to int. Also, Change width and height from
14075          unsigned to signed to avoid all the stupid C 
14076          signedness bugs.
14077
14078 Sat Feb 19 12:01:53 2000  Owen Taylor  <otaylor@redhat.com>
14079
14080         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable):
14081         Use gdk_drawable_get_depth instead of gdk_drawable_get_visual.
14082         Add some more detailed checking.
14083
14084         * gdk/gdkdraw.c gdk/gdkdrawable.h (gdk_drawable_get_depth):
14085         New function to retrieve the depth of a drawable.
14086
14087         * gdk/gdkprivate.h (struct _GdkDrawablePrivate): Add a depth
14088         field, reorder fields to save memory. 
14089
14090 Mon Dec 13 14:06:03 1999  Owen Taylor  <otaylor@redhat.com>
14091
14092         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): Draw a small portion
14093         of the background image instead of scaling the background down to
14094         a line.
14095
14096         * gtk/gtk[hv]scrollbar.c (gtk_hscrollbar_size_allocate): Removed mysterious
14097         which temporarily set slider to wrong size.
14098
14099         * gtk/gtkaspectframe.c gtkbin.c: Remove unecessary calls to
14100         queue_clear().
14101
14102 Wed Nov 17 18:36:05 1999  Owen Taylor  <otaylor@redhat.com>
14103
14104 2000-03-23  Jonathan Blandford  <jrb@redhat.com>
14105
14106         * gtk/gtkpaned.c (gtk_paned_get_position): add getter.
14107
14108 2000-03-17  Tor Lillqvist  <tml@iki.fi>
14109
14110         * gdk/win32/gdkevents-win32.c: Remove the #ifndef
14111         USE_DISPATCHMESSAGE sections, we do want to use DispatchMessage.
14112
14113         * gdk/win32/gdkfont-win32.c
14114         * gdk/win32/gdkproperty-win32.c
14115         * gdk/win32/gdkselection-win32.c
14116         * gdk/win32/gdkwindow-win32.c: Add const to some arguments that are
14117         now declared such.
14118
14119 Wed Mar 15 02:59:38 PST 2000 Manish Singh <yosh@gimp.org>
14120
14121         * gtk/gtkvpaned.c: removed stray gutter_size reference, a 1.2 relic
14122
14123 Mon Mar 13 18:37:55 2000  Owen Taylor  <otaylor@redhat.com>
14124
14125         * gdk/gdkdnd.c: Fix a bunch of cases where XGetWindowProperty()
14126         is called without trapping X errors.
14127
14128 Fri Feb 25 10:48:53 2000  Owen Taylor  <otaylor@redhat.com>
14129
14130         * gtk/gtkrc.*: Fix problem where stray '"' characters found their
14131         way into the fontset lists.
14132
14133 Tue Feb 22 08:52:52 2000  Tim Janik  <timj@gtk.org>
14134
14135         * gtk/gtkthemes.h: add extern "C" scope.
14136
14137 Mon Feb 21 20:16:42 2000  Lars Hamann  <lars@gtk.org>
14138
14139         * gtk/gtkclist.c: applied  patch from Guy Harris <guy@netapp.com>
14140         to make appends to the list constant. (gtk-guy-990901-0.patch)
14141
14142 Mon Feb 14 22:50:10 2000  Tim Janik  <timj@gtk.org>
14143
14144         * gtk/gtktypeutils.c (gtk_type_init): use g_str_hash() and g_str_equal()
14145         for the typename hash table.
14146
14147 Mon Feb 14 15:01:23 2000  Owen Taylor  <otaylor@redhat.com>
14148
14149         * gtk/gtkpaned.c (gtk_paned_compute_position): Add some sanity checks
14150         to make sure we never divide by zero. 
14151         (Problem pointed out by Michal Jaegermann <michal@ellpspace.math.ualberta.ca>)
14152
14153 Mon Feb 14 12:29:38 2000  Owen Taylor  <otaylor@redhat.com>
14154
14155         * gtk/gtkfontsel.c: Apply patch from
14156         SHIRASAKI Yasuhiro <yasuhiro@awa.tohoku.ac.jp> to make font selector work a little
14157         better with 2-byte fonts. (Load a fontset instead of a font for two byte fonts.)
14158
14159         Also, some cleanups in atom handling.
14160
14161 Sun Feb 13 08:02:21 2000  Tim Janik  <timj@gtk.org>
14162
14163         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
14164         not GtkWidget.
14165
14166 Fri Feb 11 02:19:32 2000  Tim Janik  <timj@gtk.org>
14167
14168         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): 
14169         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): 
14170         * gtk/gtkpaned.c (gtk_paned_compute_position): had to squeeze some
14171         more guint wrap-around bugs before going to bed.
14172
14173 Thu Feb 10 16:16:35 2000  Tim Janik  <timj@gtk.org>
14174
14175         * gtk/gtkspinbutton.c (gtk_spin_button_size_allocate): guard against
14176         guint wrap arounds in allocation.width.
14177
14178         * gtk/gtktable.c (gtk_table_size_allocate_pass1): repeat shrinking
14179         process untill we fit the allocation given.
14180
14181 Tue Feb  8 09:38:29 2000  Tim Janik  <timj@gtk.org>
14182
14183         * gtk/gtkwidget.c:
14184         (gtk_widget_unrealize): guard widget access with ref/unref
14185         around signal emission.
14186         (gtk_widget_hide): same here, but also check its destroyed
14187         state before queueing a resize.
14188
14189 Tue Feb  8 03:05:55 2000  Tim Janik  <timj@gtk.org>
14190
14191         * gtk/gtkstyle.c (gtk_style_new): use gtk_default_prelight_bg instead
14192         of gtk_default_insensitive_bg as insensitive base color.
14193
14194         * gtk/gtktext.c (gtk_text_style_set): set the background color according
14195         to the widget's state.
14196         (gtk_text_realize): same here.
14197         (gtk_text_state_changed): same here.
14198         (draw_bg_rect): compare background color against base[] from
14199         GTK_WIDGET_STATE (text) not GTK_STATE_NORMAL.
14200
14201 Mon Feb  7 04:01:55 2000  Tim Janik  <timj@gtk.org>
14202
14203         * gtk/gtkmain.c (gtk_main_do_event): ignore delete events when
14204         grabs are active, unless a delete event is send to the toplevel
14205         of the currently grab holding widget.
14206
14207 Sun Feb  6 10:13:15 2000  Owen Taylor  <otaylor@redhat.com>
14208
14209         * gtk/gtkctree.c (gtk_ctree_drag_data_received): Remove
14210         debugging g_print's.
14211
14212 Fri Feb  4 15:54:54 2000  Owen Taylor  <otaylor@redhat.com>
14213
14214         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_request): Don't
14215         ever make the scrolled-window requisition ever depend on the 
14216         visibility state of the scrollbars for the AUTOMATIC policy. 
14217         This breaks the GTK+ requisition model, and causes loops.
14218
14219 Fri Feb  4 15:09:12 2000  Owen Taylor  <otaylor@redhat.com>
14220
14221         * gtk/gtkstyle.c (gtk_style_new): Set the charset explicitely for
14222         the default font to avoid problems with XFree86-4.0 where the
14223         default charset is iso10646-1, not iso8859-1.
14224
14225 Thu Feb  3 14:58:48 PST 2000 Manish Singh <yosh@gimp.org>
14226
14227         * acinclude.m4
14228         * config.guess
14229         * config.sub
14230         * ltconfig
14231         * ltmain.sh: upgrade to libtool 1.3.4 (bugfix only release)
14232
14233         * gtk/Makefile.am: minor cosmetic consistency tweak
14234
14235 Thu Feb  3 14:46:01 2000  Owen Taylor  <otaylor@redhat.com>
14236
14237         * gtk/gtkmenushell.c (gtk_menu_shell_button_release): Set
14238         the activate_time to 0, so that we handle a quick
14239         press/release press/release properly and don't suppress
14240         the second release. (Red Hat bug #7545)
14241
14242 Wed Feb  2 22:25:17 2000  Tim Janik  <timj@gtk.org>
14243
14244         * gtk/gtkctree.c (row_delete):
14245         (gtk_ctree_node_set_row_data_full): fixed very evil reentrancy
14246         bugs with destruction notifier, *always* update internal
14247         structures *before* calling user code.
14248
14249 Sun Jan 30 20:10:52 2000  Lars Hamann  <lars@gtk.org>
14250
14251         A few more fixes for bug #5487, #2051, #2677.
14252         * gtk/gtkclist.c : 
14253         (gtk_clist_button_press):  Reset clist->anchor to -1 if event->type is
14254         not GDK_BUTTON_PRESS.
14255         (resync_selection): resync only if selection_mode is
14256         GTK_SELECTION_EXTENDED
14257         * gtk/gtkctree.c (resync_selection): same here
14258
14259 Sun Jan 30 12:29:20 2000  Owen Taylor  <otaylor@redhat.com>
14260
14261         * gdk/gdk.h gtk/gtkmenu.h: Removed duplicate prototypes for
14262         gdk_drag_get_selection() and gtk_menu_detach().
14263
14264         [ From Jeroen Ruigrok/Asmodai ]
14265
14266 Sat Jan 29 10:11:56 2000  Owen Taylor  <otaylor@redhat.com>
14267
14268         * gtk/gtknotebook.c (gtk_notebook_size_request): 
14269         page->tab_label can be NULL.
14270
14271 2000-01-25  Havoc Pennington  <hp@pobox.com>
14272         
14273         * gdk/gdkwindow.c (gdk_window_set_back_pixmap): parent_relative
14274         arg is boolean
14275
14276         * gdk/gdkselection.c (gdk_selection_owner_set): return boolean
14277
14278         * gdk/gdkrectangle.c (gdk_rectangle_intersect): return boolean
14279
14280         * gdk/gdkproperty.c (gdk_property_get): return boolean
14281
14282         * gdk/gdkinput.c (gdk_input_set_mode): return boolean
14283
14284         * gdk/gdkim.c (gdk_im_ready): return boolean
14285
14286         * gdk/gdkgc.c (gdk_gc_set_exposures): gboolean arg
14287
14288         * gdk/gdkfont.c (gdk_font_equal): return gboolean (mild
14289         glib clash, should fix glib)
14290
14291         * gdk/gdkevents.c (gdk_set_show_events): take gboolean arg
14292         (gdk_get_show_events): return gboolean, and canonicalize 
14293         to TRUE/FALSE
14294
14295         * gdk/gdkcolor.c (gdk_colormap_new): gboolean flag whether the
14296         colormap is private
14297         (gdk_colors_alloc): gboolean whether to be contiguous
14298         (gdk_color_equal): return gboolean since we are a predicate
14299         and not a qsort() (this looks semi-wrong due to glib breakage,
14300         IMO glib should be fixed)
14301         
14302         * gdk/gdk.c (gdk_set_use_xshm): take gboolean arg
14303         (gdk_get_use_xshm): return gboolean
14304         (gdk_pointer_is_grabbed): return gboolean
14305
14306         * gdk/gdk.h: Change prototypes to match all the above changes,
14307         and re-run egtk-format-protos as required.
14308
14309 Fri Jan 28 12:28:17 2000  Owen Taylor  <otaylor@redhat.com>
14310
14311         * gtk/gtkctree.c (resync_selection): 
14312         * gtk/gtkclist.c (resync_selection):
14313
14314         Return immediately if clist->drag_pos < 0. This is a workaround
14315         for the corrupt state that the clist gets into when a
14316         GDK_2BUTTON_PRESS occurs. See note in gtk_clist_button_press().
14317
14318         Bug #5487, #2051, #2677; fix suggested by David Helder and T. Alexander Popiel.
14319         
14320         * gtk/gtknotebook.c (gtk_notebook_size_request): Fix uninitialized
14321         variable from recent commit.
14322
14323 Thu Jan 27 15:22:09 2000  Owen Taylor  <otaylor@redhat.com>
14324
14325         * gtk/gtkdnd.c (gtk_drag_begin): Fix stupid typo in last commit.
14326
14327 Thu Jan 27 18:00:55 2000  Tim Janik  <timj@gtk.org>
14328
14329         * gtk/Makefile.am: prefix all autogenerated source that get build in
14330         $(srcdir) with $(srcdir)/, so make doesn't assume they got generted
14331         in builddir. since we subsequently cd into srcdir for autogeneration,
14332         the paths have to be stripped from the target file names, thusly we
14333         use $(@F) as target names now.
14334         put a comment about configure.in's --disable-rebuilds option,
14335         which can be used for non-writable source directories, for development
14336         setups though, srcdir has to be *writable*.
14337
14338 hu Jan 27 00:15:03 2000  Owen Taylor  <otaylor@redhat.com>
14339
14340         * gtk/gtkdnd.c (gtk_drag_begin gtk_drag_get_event_actions):
14341           Finish the job of allowing event to be NULL.
14342           (Fixes bug #4283, reported by Chris Blizzard)
14343
14344         * gtk/gtkentry.c (entry_adjust_scroll): When calculating
14345           things so that the cursor appears on screen, properly
14346           take into account INNER_BORDER.
14347           (Fixes bug #4754, reported by Antonio Campos)
14348
14349 Wed Jan 26 23:12:28 2000  Owen Taylor  <otaylor@redhat.com>
14350
14351         * gtk/gtknotebook.c (gtk_notebook_map): Don't
14352           show the tab_label unless it itself is visible.
14353
14354           gtk/gtknotebook.c (gtk_notebook_size_request):
14355           Do a better job of making sure that the visibility
14356           of the tab label corresponds to whether it should
14357           be mapped or not.
14358
14359 Wed Jan 26 21:17:03 2000  Owen Taylor  <otaylor@redhat.com>
14360
14361         * gtk/gtkoptionmenu.c (gtk_option_menu_position):
14362           Use the requisition, not the allocation, since the
14363           allocation has not necessarily been computed yet.
14364           (Pointed out by Eugene Osintsev)
14365
14366 Wed Jan 26 19:44:25 2000  Owen Taylor  <otaylor@redhat.com>
14367
14368         * gtk/gtkstyle.c (gtk_style_new): Dont' set
14369           style/base[GTK_STATE_INSENSITIVE] both to
14370           gtk_default_insensitive_bg!
14371           (Bug #2187, reported by Jonathan Blandford)
14372
14373         * gtk/gtkaccelgroup.c (gtk_accelerator_valid):
14374           Add Alt_L, Alt_R to list of invalid accelerators.
14375           (Bug #3736, reported by Vlad Harchev)
14376
14377 Wed Jan 26 19:01:56 2000  Owen Taylor  <otaylor@redhat.com>
14378
14379         * gtk/gtkfilesel.c (open_ref_dir): Fix several
14380         bugs which occured after an attempt to open 
14381         invalid home directory left cmpl_state->reference_dir == NULL.
14382
14383          - completion on files in home directory didn't work
14384          - completion on an empty string caused  segfault
14385
14386          (Bug #3678, reported by Steve Ratcliffe)
14387
14388         * gtk/gtkscale.c (gtk_scale_get_value_width): Fix
14389         cut and paste error that was causing scales to
14390         be incorrectly positioned.
14391         (Bug #2956,
14392          patch from Steve Ratcliffe <steve@parabola.demon.co.uk>)
14393
14394 2000-01-27  Shirasaki Yasuhiro  <yasuhiro@gnome.gr.jp>
14395
14396         * acinclude.m4 (AM_GTK_WITH_NLS): Add -lintl to libs
14397         when checking for dcgettext, if we've found we needed
14398         it for dgettext.
14399 +
14400 Wed Jan 26 18:06:07 2000  Owen Taylor  <otaylor@redhat.com>
14401
14402         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
14403         queue_clear on NO_WINDOW widgets during a reparent,
14404         since at that point the window and widget heirarchies
14405         are out of sync. This stops crashing in some cases
14406         (the scrolled window reparent test, for instance), and
14407         _probably_ won't cause drawing errors.
14408
14409         * gtk/testgtk.c: Make the reparenting-a-scrolled-window
14410         test do what it was supposed to do and be robust against
14411         window closings, etc. (Bug #2443)
14412
14413 Wed Jan 26 16:56:54 2000  Owen Taylor  <otaylor@redhat.com>
14414
14415         * gtk/gtkentry.c: Fix return values on mouse events.
14416         (Bug #2686, Sky <seb_sky@yahoo.com>)
14417
14418         * gtk/genmarshal.pl: Fix up handling of FOREIGN.
14419         (pointed out by George Lebl)
14420
14421         * gdk/gdkcolor.c (gdk_color_copy): Made const-safe.
14422         (From Ettore Perazzoli  <ettore@helixcode.com>)
14423  
14424 Mon Jan 24 10:44:48 2000  Owen Taylor  <otaylor@redhat.com>
14425
14426         * gtk/gtkcalendar.c (gtk_calendar_main_button): Handle
14427         clicks between rows or outside calender area correctly.
14428         (Patch from Damon Chaplin)
14429
14430         * gtk/gtkclist.c (gtk_clist_set_row_data_full): 
14431         * gtk/gtkctree.c (gtk_ctree_node_set_row_data_full): 
14432           Call destroy function when overwriting existing data. 
14433           (Pointed out by Damon Chaplin)
14434
14435 Tue Jan 25 09:55:41 2000  Owen Taylor  <otaylor@redhat.com>
14436
14437         * gdk/gdk.c: Remove useless #include of <X11/Xmu/WinUtil.h>,
14438           which was causing problems on various systems with Xmu.
14439           This hasn't been needed for a very long time.
14440           (Fixes #1185 3167)
14441
14442 Sun Jan 23 22:27:36 2000  Owen Taylor  <otaylor@redhat.com>
14443
14444         * gdk/gdki18n.h: Include <ctype.h> when defining
14445           gdk_isw* in terms of is* as a fallback.
14446           (Bug #4106 - Dan Winship <danw@MIT.EDU>)
14447
14448 Sun Jan 23 22:12:36 2000  Owen Taylor  <otaylor@redhat.com>
14449
14450         * gtk/gtkviewport.c (gtk_viewport_size_allocate): Don't
14451           realize the widget when it is size allocated!
14452           (old, old bug)
14453
14454         * gtk/gtkviewport.c (gtk_viewport_adjustment_value_changed):
14455           Removed unused call to gdk_window_get_size() that
14456           showed up when the above was fixed.
14457
14458 Sat Jan 22 15:44:30 2000  Owen Taylor  <otaylor@redhat.com>
14459
14460         * gtk/gtkwidget.c (gtk_widget_reparent): Correctly
14461           fix up widget->window when the widget is a
14462           NO_WINDOW container widget.
14463
14464 Sat Jan 22 12:40:48 2000  Owen Taylor  <otaylor@redhat.com>
14465
14466         * gdk/gdkpixmap.c (gdk_pixmap_seek_string): Rewrite
14467           to account for the fact that feof() does _not_ 
14468           return TRUE on errors, and thus avoid infinite loops
14469           when trying to use gdk_pixmap_create_from_xpm()
14470           on unreadable values.
14471
14472 Fri Jan 21 18:32:43 2000  Owen Taylor  <otaylor@redhat.com>
14473
14474         * gtk/gtkaspectframe.h (struct _GtkAspectFrame): s/gint/gboolean/.
14475
14476 Fri Jan 21 16:24:08 2000  Owen Taylor  <otaylor@redhat.com>
14477
14478         * gdk/gdkgc.c (gdk_gc_set_dashes): Change from
14479           gdk_gc_set_dashes to take gint8 instead of gchar to
14480           make it clearer that it is _not_ a NULL terminated string.
14481
14482         * gdk/gdk.h gdk/gdkfont.c gdk/gdkgc.c gdk/gdkselection.c
14483           gdk/gdkwindow.c gtk/gtkprogress.[ch] gtk/gtkthemes.[ch]
14484           gtk/gtktreeitem.[ch] gtk/gtkwidget.[ch]: Constify string
14485           arguments.
14486
14487 Thu Dec 30 04:51:05 1999  Tim Janik  <timj@gtk.org>
14488
14489         * gtk/gtkvscale.c (gtk_vscale_pos_background): 
14490         * gtk/gtkhscale.c (gtk_hscale_pos_background): when calculating the
14491         background size relative to our allocation, guard against small
14492         allocations, we may have not yet been size allocated.
14493
14494 Thu Dec  2 10:59:14 1999  Owen Taylor  <otaylor@redhat.com>
14495
14496         * gdk/gdkdnd.c (xdnd_check_dest): Allow version >= 3,
14497         not just version == 3. We implement all 3 + most of 4 - 
14498         (we don't support matching text/plain;charset=iso-8859-1
14499         to a dest that expects text/plain). We'll still advertise
14500         3 to be safe, but any client implementing version >= 3
14501         must interoperate with 3.
14502         
14503 Tue Mar 14 11:53:31 2000  Owen Taylor  <otaylor@redhat.com>
14504
14505         * gtk/gtktooltips.[ch] (struct _GtkTooltips): Remove foreground,
14506         background and gc members, add a warning in gtk_tooltips_set_color()
14507         indicating that this function is deprecated.
14508
14509 Thu Mar  9 22:10:56 GMT 2000  Tony Gale <gale@gtk.org>
14510
14511         * docs/gtkfaq.sgml: FAQ Update:
14512           - Minor cleanups (Emmanuel, me)
14513           - New questions:
14514                 I need to add a new signal to a GTK+ widget. Any idea? (timj)
14515                 How can I retrieve the text from a GtkMenuItem? (timj)
14516                 How do I validate/limit/filter the input to a GtkEntry? (me)
14517                 Memory does not seem to be released when I free the list
14518                         nodes I've allocated (timj)
14519
14520 2000-03-07  Tor Lillqvist  <tml@iki.fi>
14521
14522         * gdk/win32/gdkmain-win32.c: Internal GDK error reporting changes:
14523         (gdk_win32_gdi_failed) New function for reporting errors from GDI,
14524         for which it is no use to call GetLastError onWin9x.
14525         (gdk_other_api_failed) New function, for general error
14526         reporting without calling GetLastError.
14527         (gdk_win32_api_failed) OTOH, this function always calls
14528         GetLastError. (gdk_win32_last_error_string) Remove this function,
14529         GLib has the equivalent now.
14530
14531         * gdk/win32/gdkprivate-win32.h: Declare the above, and macros to
14532         call them with function name, file name and line number in the
14533         arguments.
14534
14535         * gdk/win32/*.c: Use the new macros for reporting errors from GDI
14536         functions.
14537         
14538         * gtk/gtk.def: Add some missing entry points.
14539
14540         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
14541         gtk_paned_set_gutter_size, which don't exist any longer, as void.
14542         
14543         Fixes by Hans Breuer:
14544
14545         * gdk/makefile.msc: Update for debugging.
14546
14547         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_dashes): Fake
14548         implementation, just use the PS_DASH, PS_DOT, PS_DASHDOT or
14549         PS_DASHDOTDOT or PS_DASH styles depending on the number of entries
14550         in the dash_list.
14551
14552         * gdk/win32/gdkwin32.h (GDK_FONT_XFONT): New macro, similar as in
14553         the x11 backend.
14554
14555         * gdk/win32/gdkprivate-win32.h (IS_WIN_NT): New macro.
14556
14557         * gtk/testgtk.c: Include config.h, guard inclusion of unistd.h.
14558
14559 2000-03-04  Tor Lillqvist  <tml@iki.fi>
14560
14561         * gdk/win32/gdkprivate-win32.h (struct _GdkWindowWin32Data): Store
14562         just pixel value of background colour.
14563
14564         * gdk/win32/gdkgc-win32.c (gdk_colormap_color): New function
14565         containing code snippet previously duplicated in a couple of
14566         places.
14567         
14568         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_points): Use
14569         gdk_colormap_color.
14570
14571         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Generate
14572         GDK_SCROLL events for WM_MOUSEWHEEL messages. Don't generate
14573         events for autorepeated Shift, Control and Alt keys. Use
14574         gdk_colormap_color.
14575
14576         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): If the
14577         pointer is inside the window the cursor of which we are setting,
14578         call SetCursor immediately.
14579
14580         * gdk/win32/makefile.cygwin
14581         * gtk/makefile.cygwin: If we don't have the build number stamp
14582         file, use zero.
14583
14584         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
14585         gtk_paned_set_gutter_size as empty.
14586
14587         * gtk/gtk.def: Remove gtk_paned_set_gutter_size.
14588         
14589 Tue Feb 29 13:10:00 GMT 2000  Tony Gale <gale@gtk.org>
14590
14591         * gdk/gdkwindow.h gdk/x11/gxid.c gtk/gtkclist.c gtk/gtkclist.h
14592           gtk/gtkctree.c gtk/gtkmenu.h gtk/gtkwidget.c gtk/testgtk.c
14593           docs/styles.txt docs/refcounting.txt docs/gtkfaq.sgml
14594           docs/gtk_tut.sgml docs/gtk.texi TODO:
14595
14596           Spelling/grammar fixes from Martin Buchholz <martin@xemacs.org>
14597
14598 Sat Feb 26 11:46:25 GMT 2000  Tony Gale <gale@gtk.org>
14599
14600         * gtk/gtkcalendar.c: Implement num_marked_dates,
14601           and don't emit mutiple day_selected signals on
14602           month_prev.
14603
14604 2000-02-25  Jonathan Blandford  <jrb@redhat.com>
14605
14606         * docs/make-todo (lineno): let title and logo be configurable so
14607         that GNOME can use this script too.
14608
14609         * TODO.xml: added logourl and a title
14610
14611 Fri Feb 25 11:12:00 2000  Owen Taylor  <otaylor@redhat.com>
14612
14613         * TODO.xml: Added some UI items, and an explanatory
14614         comment at the top of the file.
14615
14616 Thu Feb 24 09:07:28 2000  Tim Janik  <timj@gtk.org>
14617
14618         * TODO.xml: some updates, added abunch of new entries.
14619         a note for those fiddeling with this file, when done
14620         with it, invoke:
14621         $ ./docs/make-todo TODO.xml >/dev/null
14622         and correct output errors before comitting changes.
14623
14624 Wed Feb 23 22:59:50 2000  Owen Taylor  <otaylor@redhat.com>
14625
14626         * TODO.xml: Added XML-structured TODO file.
14627         * docs/make-todo: python script to turn TODO.xml into
14628           pretty XML output. 
14629
14630 2000-02-23  Jonathan Blandford  <jrb@redhat.com>
14631
14632         * gtk/gtkstyle.c (gtk_default_draw_handle): add a 'paned' mode to
14633         the function to let it draw the seven dots, instead of the old,
14634         much maligned, method.
14635         (draw_dot): New function to draw a dot.
14636
14637         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): changed allocation
14638         to draw the handle inside the border width as opposed to outside.
14639         Use paint function instead of gdk_draw_point.
14640
14641         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): changed allocation
14642         to draw the handle inside the border width as opposed to outside.
14643         Use paint function instead of gdk_draw_point.
14644
14645         * gtk/gtkfilesel.c (gtk_file_selection_update_history_menu):
14646         Change indenting to be more GTK like.
14647
14648 Wed Feb 23 10:54:14 GMT 2000  Tony Gale <gale@gtk.org>
14649
14650         * docs/gtk_tut.sgml: New section on GtkCalendar
14651         * examples/calendar: Update example code
14652
14653 Tue Feb 22 13:54:12 GMT 2000  Tony Gale <gale@gtk.org>
14654
14655         * docs/gtkfaq.sgml: FAQ Update
14656
14657 2000-02-19  Anders Carlsson  <andersca@gnu.org>
14658
14659         * gtk/gtkrange.c (gtk_range_scroll_event): Return TRUE
14660         to prevent the scroll event to be propagated upwards.
14661
14662 Fri Feb 18 14:37:29 2000  Owen Taylor  <otaylor@redhat.com>
14663
14664         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Remove
14665         OwnerGrabButtonMask from button entries for
14666         GDK_BUTTON_PRESS / GDK_BUTTON_RELEASE.
14667
14668         * gtk/gtklayout.c (gtk_layout_realize): Always add GDK_SCROLL
14669         to the event mask (which will result in button/press release
14670         being added to the event mask on Unix) so scrolling works
14671         for layouts in scroll windows.
14672
14673         * gdk/gdkevents.h (enum): Fix up GDK_ALL_EVENTS_MASK.
14674
14675         Patch from Anders Carlsson  <andersca@gnu.org> to add
14676         a scroll event.
14677
14678         * gtk/testgtk.c (scroll_test_scroll): Added an example of mouse wheel
14679         scrolling to the "Test Scrolling" part of testgtk.
14680  
14681         * gtk/gtkwidget.h (struct _GtkWidgetClass): Added scroll_event signal.
14682  
14683         * gtk/gtkwidget.c: Added "scroll_event" GTK+ signal and matched
14684         it against GDK_SCROLL.
14685  
14686         * gtk/gtkrange.c (gtk_range_scroll_event): Updated to use the new
14687         way of mouse wheel scrolling.
14688  
14689         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_scroll_event): Likewise.
14690  
14691         * gtk/gtkspinbutton.c (gtk_spin_button_scroll): Likewise.
14692  
14693         * gtk/gtkmain.c: Removed previous mouse wheel hack.
14694  
14695         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Added entry in
14696         gdk_event_mask_table.
14697  
14698         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Added 
14699         GdkEventScroll handler.
14700  
14701         * gdk/gdkevents.h: Added GdkEventScroll structure.
14702  
14703 Thu Feb 17 17:10:12 2000  Owen Taylor  <otaylor@redhat.com>
14704
14705         * gtk/gt{h,k,}vpaned.[ch]: Add patch from Jonathan Blandford
14706         and Anders Carlsson to change the Paned widgets so that they
14707         can be dragged from anywhere along the length. Also change
14708         the way that this is drawn to make this apparent.
14709
14710         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): Apply patch
14711         from George Lebl to check that option_menu->menu is present
14712         before getting history.
14713
14714 2000-02-14  Tor Lillqvist  <tml@iki.fi>
14715
14716         * gdk/gdkdraw.c (gdk_draw_segments): Move the test for no segments
14717         before the assertion for non-NULL segment list.
14718
14719         * gdk/win32/gdkgc-win32.c: (gdk_win32_gc_values_to_win32values):
14720         Seems that pattern brushes *must* be 8x8 pixels! At least on my
14721         machine, but it might be display driver dependent. Sigh, so make
14722         sure the stipple is that size. Does Windows suck or what?
14723
14724         * gdk/win32/gdkdrawable-win32.c: Improve error handling in a few
14725         places.
14726
14727 2000-02-13  Havoc Pennington  <hp@pobox.com>
14728
14729         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): init
14730         refcount to 1
14731         (gdk_cursor_new): init refcount to 1
14732
14733         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new): init refcount to 1
14734
14735 2000-02-13  Tor Lillqvist  <tml@iki.fi>
14736
14737         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Add an extra parameter
14738         so that we don't have to do unnecessary settings to the HDC.
14739
14740         * gdk/win32/gdkdrawable-win32.c
14741         * gdk/win32/gdkimage-win32.c: Corresponding changes to the calls of
14742         gdk_gc_predraw.
14743
14744         * gdk/win32/gdkdrawable-win32.c: Special-casing for GdkGCs where
14745         the fill style is GDK_OPAQUE_STIPPLED. In those cases we construct
14746         GDI paths, call WidenPath to get the outline of the stroken path,
14747         and then fill the outline (with the brush that was built from the
14748         stipple).
14749
14750         * gdk/win32/gdkgc-win32.c: Factor out common code from
14751         _gdk_win32_gc_new and gdk_win32_gc_set_values into
14752         gdk_win32_gc_values_to_win32values. Use correct colour for
14753         SetBkColor() (Until now the code actually used a random colour in
14754         the call to SetBkColor()... but that didn't show up as not many
14755         GDI APIs use the background colour. Pattern (opaque stippled)
14756         brushes do.)
14757
14758         * gdk/win32/gdkmain-win32.c (gdk_win32_last_error_string,
14759         gdk_win32_api_failed): New functions for error logging.
14760
14761         * gdk/win32/gdkprivate-win32.h: Declare them, and define a macro
14762         WIN32_API_FAILED to call them, passing function or file name and
14763         line number.
14764
14765         * gdk/win32/*.c: Use the WIN32_API_FAILED macro.
14766
14767         * gdk/win32/gdkprivate-win32.h: Store just the pixel values from
14768         GdkColor for foreground and background in GdkGCWin32Data.
14769
14770         * gdk/makefile.cygwin: Link in the resource object separately.
14771
14772         * gdk/win32/rc/gdk.rc
14773         * gtk/gtk.rc (New file)
14774         * gdk/win32/makefile.cygwin
14775         * gtk/makefile.cygwin: Update build number in DLLs automatically,
14776         as in GLib.
14777
14778 Sun Feb 13 08:54:45 2000  Tim Janik  <timj@gtk.org>
14779
14780         * gdk/gdkcursor.h (struct _GdkCursor): s/refcount/ref_count/.
14781         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): 
14782         * gdk/x11/gdkcursor-x11.c (_gdk_cursor_destroy): 
14783         * gdk/gdkcursor.c (gdk_cursor_ref): insert assertments for the
14784         parameters given and cursor->ref_count. coding style fixups.
14785
14786         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
14787         not GtkWidget.
14788         
14789         * gtk/*.h: applied patch from Mathieu Lacage <lacage@email.enst.fr> to
14790         fix up widget macros and add _GET_CLASS() variant.
14791         
14792         * gtk/*.c: some GtkType fixups.
14793
14794 2000-02-09  Tor Lillqvist  <tml@iki.fi>
14795
14796         * gdk/win32/gdkproperty-win32.c
14797         * gdk/x11/gdkproperty-x11.c: The assertions for GDK_IS_WINDOW
14798         were reversed.
14799
14800 2000-02-04  Tor Lillqvist  <tml@iki.fi>
14801
14802         * gdk/win32/gdkfont-win32.c (logfont_to_xlfd): Use
14803         g_filename_to_utf8 to convert the font names Windows gives us from
14804         whatever is the default codepage to UTF-8.
14805         (gdk_font_load_internal) Use g_filename_from_utf8 for conversion
14806         in the other direction.
14807
14808         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Fix cut&paste
14809         error in debugging output.
14810
14811 2000-02-02  Tor Lillqvist  <tml@iki.fi>
14812
14813         * gdk/win32/gdkwindow-win32.c (gdk_window_clear): Pass zero width
14814         and height parameters to gdk_window_clear_area(). Not minus one.
14815
14816 Wed Feb  2 11:58:05 2000  Owen Taylor  <otaylor@redhat.com>
14817
14818         * gtk/gtkdnd.c (gtk_drag_selection_received): Add some sanity
14819         checks if the widget passed to gtk_drag_get_data() was not the
14820         dest widget.
14821
14822 2000-02-01  Tor Lillqvist  <tml@iki.fi>
14823
14824         * gtk/gtkfilesel.c: Use the g_filename_to_utf8 and
14825         g_filename_from_utf8 functions (which were added a moment ago to
14826         GLib). Some cleanups: Use gbooleans. Use GStrings instead of fixed
14827         size buffers.
14828
14829         gtk_file_selection_get_filename returns the filename in the C
14830         runtime encoding. It calls g_filename_from_utf8, but copies the
14831         returned string to a static buffer, which is returned. I think
14832         this is better than returning the result from g_filename_from_utf8
14833         directly, which would mean all apps that use it would have to free
14834         the return value. Or should this function care about this issue at
14835         all? Maybe a new function with clearly defined semantics.
14836
14837         * gtk/gtkfilesel.h: Add comment about
14838         gtk_file_selection_get_filename returning the filename in the C
14839         runtime's encoding.
14840
14841         * README.win32
14842         * gdk/gdk.def
14843         * gdk/makefile.{cygwin,msc}
14844         * gtk/gtk.def: Updates.
14845
14846         * gdk/gdkcursor-win32.c: Initialise refcount.
14847
14848 2000-01-31  Yuan-Chung Cheng <platin@linux.org.tw>
14849
14850         * configure.in: Added "zh_CN.GB2312" to ALL_LINGUAS.
14851
14852 2000-01-30  Havoc Pennington  <hp@pobox.com>
14853
14854         * gtk/testgtk.c (set_cursor): use gdk_cursor_unref instead of
14855         destroy
14856
14857         * gdk/gdkimage.c (gdk_image_ref): image wasn't being returned
14858
14859         * gdk/gdkprivate.h: declare _gdk_cursor_destroy which is then 
14860         implemented in platform-specific code
14861
14862         * gdk/Makefile.am (gdk_c_sources): add gdkcursor.c
14863
14864         * gdk/x11/gdkcursor-x11.c (gdk_cursor_destroy): rename with an
14865         underscore in front
14866
14867         * gdk/win32/gdkcursor-win32.c (gdk_cursor_destroy):
14868         put an underscore in front
14869
14870         * gdk/gdkcursor.c: new file, implements
14871         gdk_cursor_ref/gdk_cursor_unref
14872
14873         * gdk/gdkcursor.h: Refcount GdkCursor
14874
14875         * gdk/gdkcompat.h (gdk_cursor_destroy): compat
14876
14877 2000-01-29  Tor Lillqvist  <tml@iki.fi>
14878
14879         * gdk/gdkwindow.h
14880         * gdk/gdkpixmap.h: Remove prototypes for renamed functions.
14881
14882 Tue Jan 25 11:43:21 2000  Owen Taylor  <otaylor@redhat.com>
14883
14884         * gtk/gtkinvisible.h (struct _GtkInvisible[Class]): Fix
14885         structures to properly inherit from GtkWidget not GtkBin.
14886
14887 Sun Jan 23 20:28:24 2000  Owen Taylor  <otaylor@redhat.com>
14888
14889         * gtk+.spec.in: Added lib/gtk+/include/* to %files
14890         (bug #5178 - Peter Wainright)
14891         
14892         * gtk/Makefile.am (gtk_public_h_sources): Add gtkcompat.h
14893         so that it will be installed.
14894         (bug #4889 - "david d `zoo' zuhn" <zoo@mnnr.org>)
14895
14896 Fri Jan 21 16:29:28 2000  Owen Taylor  <otaylor@redhat.com>
14897
14898         * gtk/gtkstyle.[ch] docs/Changes-1.4.txt: Make the @detail argument
14899         for the GtkStyleClass vtable const.
14900
14901         * gtk/gtkitemfactory.[ch] docs/Changes-1.4.txt: Make GtkPrintFunc
14902         take a const string argument like GtkTranslateFunc. This will
14903         require changes in use code.
14904
14905 2000-01-19  Tor Lillqvist  <tml@iki.fi>
14906
14907         * gdk/win32/gdkwindow-win32.c (gdk_window_clear_area): The correct
14908         semantics (to mimic the X11 backend, which just calls XClearArea)
14909         is to check for zero width (and height), and in that case use the
14910         window's width minus x (height minus y). This fixes for instance
14911         some redraw problems with gtkclist, which were easily noticeable
14912         in the gtk file selection widget.
14913
14914         (gdk_window_new): Don't set WS_EX_TOPMOST for dialog
14915         windows.
14916
14917 2000-01-13  Tor Lillqvist  <tml@iki.fi>
14918
14919         * configure.in
14920         * gdk/Makefile.am
14921         * gdk/x11/Makefile.am
14922         * gdk/win32/Makefile.am: Small fixes, thanks to Peter Wainwright
14923         (bug #5177).
14924         * gdk/win32/gdkcc-win32.c: Reintroduce, to be thrown
14925         out later.
14926
14927 2000-01-09  Tor Lillqvist  <tml@iki.fi>
14928
14929         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Ignore
14930         WM_MOVE for iconified or invisible windows. This fixes various
14931         problems when minimising windows. Thanks to Bernd Herd.
14932
14933 2000-01-05  Tor Lillqvist  <tml@iki.fi>
14934
14935         * gdk/gdkdraw.c (gdk_draw_lines): Fix copy&paste error: Call the
14936         backend's draw_lines method, not draw_points.
14937
14938 2000-01-02  Tor Lillqvist  <tml@iki.fi>
14939
14940         * gdk/win32/gdkevents-win32.c: Clean up some more leftovers from
14941         before Owen's reorganisation: Don't have queued_events and
14942         queued_tail statics in this file, but use gdk_queued_events and
14943         gdk_queued_tail. This makes exposure event compression work again.
14944
14945         (gdk_WindowProc): Comment out a posting of gdk_ping_msg, doesn't
14946         seem to be needed?
14947
14948 1999-12-30  Tor Lillqvist  <tml@iki.fi>
14949
14950         * gdk/gdk.c: If we don't HAVE_XCONVERTCASE we must #include
14951         gdkkeysyms.h to get the GDK_* keysym constants that are needed by
14952         gdk_keyval_convert_case(). Otherwise, gdk_keyval_convert_case()
14953         doesn't do anything.
14954
14955         * gdk/gdk.def: Add gdk_xid_table_insert.
14956
14957         * gdk/win32/gdkprivate-win32.h
14958         * gdk/win32/gdkevents-win32.c
14959         * gdk/win32/gdkinput-win32.c
14960         
14961         * gdk/win32/gdkwindow-win32.c: Remove the superfluous
14962         extension_events field in the GdkWindowWin32Data struct. Use only
14963         the extension_events field in GdkWindowPrivate. Previously one was
14964         set, and the other one tested, which broke tablet
14965         functionality. Thanks to Keishi Suenaga for pointing this out.
14966
14967 1999-12-18  Tor Lillqvist  <tml@iki.fi>
14968
14969         * gdk/win32/gdkfont-win32.c (gdk_text_size, gdk_text_extents):
14970         When handling a single character (text length == 1), don't handle
14971         it as if it was UTF-8.
14972
14973 1999-12-11  Tor Lillqvist  <tml@iki.fi>
14974
14975         * Makefile.am: Distribute README.win32.
14976         
14977         * gdk/Makefile.am
14978         * gdk/win32/Makefile.am: Distribute Win32 files.
14979
14980         * gdk/makefile.msc: New file.
14981
14982         * gdk/gdk.c (gdk_arg_context_parse): Fix gccism (no statement
14983         after label).
14984
14985         * gdk/gdkprivate.h: Must mark also gdk_error_warnings and
14986         gdk_error_code as GDKVAR, as they are referred outside GDK.
14987
14988         * gdk/win32/makefile.msc: Update.
14989
14990         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): More
14991         tweaks. Check only if at least one of those Unicode subrange bits
14992         we care for is set. If no code page bits are set, guess (wildly)
14993         based on the charset.
14994
14995         * gdk/win32/gdkinput-win32.c: Remove debugging leftover.
14996
14997         * gdk/win32/gdkwindow-win32.c (gdk_window_new): Assure title is
14998         non-NULL.
14999
15000         * gtk/gtkdnd.c
15001         * gtk/gtklayout.c
15002         * gtk/gtkplug.c
15003         * gtk/gtkselection.c
15004         * gtk/gtksocket.c
15005         * gtk/gtkwindow.c: Include x11/gdkx.h *or* win32/gdkwin32.c as
15006         appropriate. There must be a cleaner way to handle this?
15007
15008         * gtk/gtkrc.c: Must include windows.h on Win32.
15009
15010         * gtk/testgtk.c: No need to include gdkx.h.
15011
15012         * gtk/makefile.cygwin: Correct invokation of genmarshal.pl.
15013
15014 1999-12-07  Tor Lillqvist  <tml@iki.fi>
15015
15016         * gdk/win32/gdkfont-win32.c: Fix string measurement code. For now,
15017         the rbearing is set to the same as the width, but this should be
15018         fixed.
15019
15020 1999-12-06  Tor Lillqvist  <tml@iki.fi>
15021
15022         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): New
15023         function. If Windows doesn't tell us what Unicode subranges a font
15024         covers, guesstimate based on the codepages it covers. This will
15025         hopefully help those Windows versions or fonts that don't give us
15026         any useful Unicode subrange information with GetTextCharsetInfo.
15027         Call this function in gdk_font_load_internal.
15028
15029         * gdk/win32/{gdkdnd,gdkimage,gdkpixmap,gdkprivate}-win32.c: Misc
15030         minor changes.
15031
15032 Fri Dec  3 14:09:50 1999  Owen Taylor  <otaylor@redhat.com>
15033
15034         * gtk/gtkoptionmenu.[ch] (gtk_option_menu_get_history):
15035         New function, long needed.
15036
15037 Wed Dec  1 22:35:43 1999  Owen Taylor  <otaylor@redhat.com>
15038
15039         * gdk/gdkproperty.h x11/gdkproperty.c: Change 
15040         only_if_exists argument of gdk_atom_intern to
15041         bool.
15042
15043 1999-11-25  Tor Lillqvist  <tml@iki.fi>
15044
15045         * gdk/gdkgc.c (gdk_gc_set_ts_origin, gdk_gc_set_clip_origin): 
15046         Fix two copy&paste errors.
15047
15048         * gdk/makefile.cygwin: Also rebuild DLL when the static archive in
15049         win32 has changed.
15050
15051         * gdk/win32/gdkprivate-win32.h: Don't need CPINFO in the
15052         GdkWin32SingleFont struct.
15053
15054         * gdk/win32/gdkfont-win32.c: Some more debugging: Print Unicode
15055         subranges of loaded fonts. Clear font signature first, in case
15056         GetTextCharsetInfo fails. Pretend SYMBOL_CHARSET fonts have
15057         ASCII+Basic Latin (i.e. 0x40--0xFF) as they are single-byte.
15058
15059         * gdk/win32/gdkgc-win32.c: Improved logging. (gdk_gc_postdraw):
15060         Unoffset clip region.
15061
15062 1999-11-23  Tor Lillqvist  <tml@iki.fi>
15063
15064         * gdk/win32/gdkevents-win32.c (gdk_event_translate): set
15065         event->any.window before calling filter functions.
15066
15067 Fri Nov 19 10:34:41 1999  Owen Taylor  <otaylor@redhat.com>
15068
15069         * gtk/gtkgamma.h: Adapt cast macros to standard.
15070
15071 [ Merges from 1.2 ]
15072
15073 Tue Nov 16 10:15:54 1999  Owen Taylor  <otaylor@redhat.com>
15074
15075         * gtk/gtkitemfactory.c (gtk_item_factory_parse_path):
15076         If translation does not include a '/', use entire
15077         translation instead of crashing.
15078
15079 Sun Oct 31 22:21:11 1999  Tim Janik  <timj@gtk.org>
15080
15081         * docs/gtk_tut.sgml:
15082         s/gtk_accel_group_attach/gtk_window_add_accel_group/.
15083
15084 Sat Oct 30 09:09:09 1999  Owen Taylor  <otaylor@redhat.com>
15085
15086         * gtk/gtkselection.c (gtk_target_list_remove): Use
15087         g_list_remove_link, not g_list_remove.
15088
15089         [ From Geert Bevin <gbevin@thunderstorms.org> ]
15090         
15091 Sun Oct 24 07:41:40 1999  Tim Janik  <timj@gtk.org>
15092
15093         * gtk/gtkclist.c (real_undo_selection): commented out g_print()
15094         statement upon unselection (how the heck did that slip in?).
15095
15096 Sat Oct 23 03:03:08 1999  Tim Janik  <timj@gtk.org>
15097
15098         * gtk/gtktext.c (gtk_text_freeze): 
15099         (gtk_text_thaw): undraw/draw cursor here to avoid unnecessary scrolling
15100         in frozen state (and aparently crashes). patch provided by Anders
15101         Melchiorsen <and@kampsax.dtu.dk>.
15102
15103 Sat Oct 23 02:53:20 1999  Tim Janik  <timj@gtk.org>
15104
15105         * fix insensitive default/focus widget activation,
15106         reported by Matt Goodall <mgg@isotek.co.uk>.
15107
15108         * gtk/gtkwindow.c (gtk_window_key_press_event): 
15109         (gtk_window_activate_default):
15110         (gtk_window_activate_focus):
15111         return handled=FALSE for actiavtion of insensitive default
15112         widgets. return handled=TRUE for activation of insensitive
15113         focus widgets. don't activate in either case.
15114
15115 Tue Oct 19 09:55:08 1999  Owen Taylor  <otaylor@redhat.com>
15116
15117         * gtk-config.in (lib_gtk): Switch order of @x_cflags@
15118         and $glib_cflags to match library order and in the
15119         theory that an old version of GLib is more likely to
15120         be in the include directory for X then vice-versa.
15121         (Bug #2776)
15122
15123 Tue Oct 19 09:46:49 1999  Owen Taylor  <otaylor@redhat.com>
15124
15125         * gtk/gtkrc.c (gtk_rc_init): Always use LC_CTYPE 
15126         to determine the locale for fontsets, not LC_MESSAGES;
15127         the user may want English messages with a handling
15128         for non-English languages. (LC_CTYPE=ru_RU LC_MESSAGES=fr_FR
15129         will still be broken) (Bug #2891)
15130
15131 Tue Oct 19 20:36:42 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
15132
15133         * gtk/gtkrc.ko: Fixed the wrong number of "*"'s.
15134
15135 Tue Oct 19 12:15:13 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
15136
15137         * gtk/gtkrc.ko: Changed the Korean default fontset.
15138
15139 Fri Oct  8 02:32:47 1999  Owen Taylor  <otaylor@redhat.com>
15140
15141         * gtk/gtklayout.c (gtk_layout_adjustment_changed): Fix bug
15142         where when scrolling to the left or top double exposes
15143         were done, causing major slowdowns.
15144
15145 Thu Oct  7 18:31:55 1999  Owen Taylor  <otaylor@redhat.com>
15146
15147         * gtk/gtkrc.c (gtk_rc_init): Always normalize codeset
15148         names to lowercase and alphanumeric, before looking
15149         them up.
15150
15151         * gtk/Makefile.am: Install codeset variant gtkrc files
15152         with normalized names.
15153
15154 Thu Oct  7 22:52:42 1999  Tim Janik  <timj@gtk.org>
15155
15156         * gtk/gtkitemfactory.c (gtk_item_factory_popup_with_data): even
15157         popup menus when the menu is already visible, but its parent
15158         is still hidden, (happens after tornoff window got hidden).
15159
15160 Thu Oct  7 11:09:55 1999  Owen Taylor  <otaylor@redhat.com>
15161
15162         * gtk/Makefile.am (install-data-local): Fix
15163         a typo where gtkrc.vi_VN.tcvn5712 wasn't getting
15164         deleted, causing error messages on install.
15165
15166 Thu Oct  7 11:03:06 1999  Owen Taylor  <otaylor@redhat.com>
15167
15168         * gtk/gtk[hv]paned.c (gtk_{h,v}paned_draw): Redraw
15169         the handle as well, since we now sometimes ignore
15170         exposes on the handle while resizing.
15171
15172 Wed Oct  6 18:02:31 1999  Owen Taylor  <otaylor@redhat.com>
15173
15174         * gtk/gtkrc.c (gtk_rc_append_default_pixmap_path): Fix stupid
15175         extra g_free introduced in one of the last one or two 
15176         commits.
15177
15178 Wed Oct  6 16:38:36 1999  Owen Taylor  <otaylor@redhat.com>
15179
15180         * gtk/Makefile.am gtk/gtkrc*: Make naming of gtkrc files
15181         consistent, put each style that a gtkrc.* file creates
15182         in a unique namespace, remove old files before installing.
15183
15184 Wed Oct  6 14:31:16 1999  Owen Taylor  <otaylor@redhat.com>
15185
15186         * gtk/gtkrc.c (gtk_rc_init): Avoid leaking memory when
15187         gtk_rc_init is called multiple times. (Yes, people who
15188         do that have bugs in their code.)
15189
15190 Tue Oct  5 11:36:57 PDT 1999 Manish Singh <yosh@gimp.org>
15191
15192         * gtk/Makefile.am: listing gtkrc in gtkconf_DATA seems to barf.
15193         Remove it since it's generated by the Makefile anyway
15194
15195 Tue Oct  5 02:43:41 1999  Owen Taylor  <otaylor@redhat.com>
15196
15197         * gdk/gdkinputcommon.h (gdk_input_device_new): Free
15198         device->info.axes for core pointer.
15199
15200 Thu Sep 30 13:55:25 1999  Owen Taylor  <otaylor@redhat.com>
15201
15202         * gtk/testgtk.c (destroy_idle_test): Rename idle to 
15203         idle_id, to deal with obsolete, broken C libraries.
15204
15205 Mon Sep 27 02:50:15 1999  Owen Taylor  <otaylor@redhat.com>
15206
15207         * gtk/gtkvscale.c (gtk_vscale_draw): Don't add in
15208         allocation->x/y twice!
15209
15210         * gtk/gtkhscale.c: Make usage of gtk_hscale_pos_trough()
15211         consistent with gtk_vscale_pos_trough().
15212
15213 Sun Sep 26 19:44:34 1999  Owen Taylor  <otaylor@redhat.com>
15214
15215         * gtk/gtkcontainer.c (gtk_container_queue_resize): We may
15216         be queueing a resize on a toplevel container between
15217         the time we show it and when we map it. So, we need
15218         to test GTK_WIDGET_VISIBLE() for toplevels, and only
15219         use GTK_WIDGET_DRAWABLE() for child windows.
15220
15221 Thu Sep 23 16:41:03 1999  Owen Taylor  <otaylor@redhat.com>
15222
15223         * gtk/Makefile.am (LDADDS): Add GDK_WLIBS to LDADDS 
15224         (fixes bug #2144)
15225
15226 Fri Sep 24 00:51:45 1999  Tim Janik  <timj@gtk.org>
15227
15228         * gtk/gtkcontainer.c (gtk_container_queue_resize): check for
15229         container DRAWABLE (instead of VISIBLE), so we don't queue
15230         resizes on non-toplevel containers.
15231
15232 Sun Sep 19 18:13:31 1999  Owen Taylor  <otaylor@redhat.com>
15233
15234         * gtk/gtkselection.[ch]: Make the data argument
15235         const guchar *.
15236
15237 Sat Sep 18 21:27:40 1999  Owen Taylor  <otaylor@redhat.com>
15238
15239         * gtk/gtkwindow.c: Try to behave sensibly if 
15240         the focus widget is the window itself. (Should
15241         we allow this at all?)
15242
15243 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
15244
15245         * gtk/gtkwidget.c (gtk_widget_set_sensitive): 
15246         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): 
15247         * gtk/gtknotebook.c (gtk_notebook_set_show_border): 
15248         * gtk/gtkclist.c (gtk_notebook_set_show_border): make gboolean args
15249         in prototypes and implementations consistent (Tomas Ogren).
15250
15251         * gtk/gtklayout.c (gtk_layout_remove): unset GTK_IS_OFFSCREEN flag
15252         before the widget is unparented (reported by damon).
15253
15254         * gtk/gtkdnd.c: make the cursor and icon data _unsigned_ char,
15255         since we provide unsigned data anyways.
15256
15257 Thu Sep 16 21:32:01 1999  Owen Taylor  <otaylor@redhat.com>
15258
15259         * gtk/gtktooltips.c (gtk_tooltips_set_tip): Delay
15260         the call to gtk_tooltips_layout_text() until later.
15261
15262         * gtk/gtktooltips.c (gtk_tooltips_draw_tips):
15263         Call gtk_widget_ensure_style() before using the style.
15264
15265 Wed Sep 15 02:52:19 1999  Owen Taylor  <otaylor@redhat.com>
15266
15267         * gtk/gtkwidget.c (gtk_widget_event): Added workaround
15268         for old widgets that don't propagate draws to all
15269         children. (Namely gnome-dock for gnome-libs <= 1.0.16)
15270
15271 Tue Sep 14 19:22:19 1999  Tim Janik  <timj@gtk.org>
15272
15273         * gtk/gtkwidget.c (gtk_widget_queue_resize): don't queue the parent
15274         for a redraw but just the widget that requested the resize.
15275
15276 Tue Sep 14 18:29:47 1999  Tim Janik  <timj@gtk.org>
15277
15278         * gtk/gtkcontainer.c: added new widget level method
15279         gtk_container_set_reallocate_redraws() and a GtkContainer flag
15280         reallocate_redraws : 1 to reflect the setting, exported this through
15281         the argument system as a boolean ::reallocate_redraws.
15282
15283         * gtk/gtkwidget.c (gtk_widget_size_allocate): when queueing redraws
15284         on the widget because the allocation changes, do so as well for
15285         widget->parent if the parent has reallocate_redraws set to TRUE.
15286         with that containers requesting reallocation redraws get automatically
15287         redrawn if their children changed allocation (this unfortunately
15288         affects also other children that didn't change allocation, but we
15289         cannot work around that before 1.3).
15290
15291 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
15292
15293         * gtk/gtkwidget.c (gtk_widget_idle_draw): only emit ::draw if width
15294         _and_ height are >0 (not _or_).
15295
15296         * gtk/gtktable.c (gtk_table_remove): use gtk_widget_queue_resize()
15297         instead of gtk_container_queue_resize(), which is a core gtk internal
15298         function (must have been on crack when i queued that).
15299
15300         * gtk/gtkprivate.h: added new private flag GTK_FULLDRAW_PENDING, so
15301         we can check more reliably if we want to discard expose events.
15302         * gtk/gtkwidget.c: added setting/unsetting of the GTK_FULLDRAW_PENDING
15303         flag.
15304         
15305         * gtk/gtkwidget.c (gtk_widget_event): don't discard synthesized exposes,
15306         we simply trust these events. for deciding whether to discard exposes,
15307         check GTK_FULLDRAW_PENDING instead of RESIZE_PENDING.
15308         
15309 Mon Sep 13 15:01:21 1999  Owen Taylor  <otaylor@redhat.com>
15310
15311         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
15312         queues of areas that are completely off screen.
15313
15314         * gtk/gtkwidget.c (gtk_widget_idle_draw): Fix broken
15315         logic for handleboxes.
15316
15317         * gtk/gtkwidget.c (gtk_widget_queue_draw_data): Add santity
15318         check on width/height.
15319
15320 Mon Sep 13 02:22:47 1999  Tim Janik  <timj@gtk.org>
15321
15322         * gtk/Makefile.am: backed out Raja's recent VPATH build "improvements",
15323         we are fine with using $@ the way we do (if we actually encounter
15324         brokeness with $@ in VPATH builds because of additional path prefixes,
15325         we need to use $(@F) actually).
15326
15327 Mon Sep 13 01:34:53 1999  Tim Janik  <timj@gtk.org>
15328
15329         * gtk/gtksignal.c: renamed two variables, hopefully didn't introduce
15330         short lived bugs, that would allow language bindings to do surgeries
15331         to our guts.
15332
15333 Fri Sep 10 15:22:50 1999  Owen Taylor  <otaylor@redhat.com>
15334
15335         * gtk/gtkwindow.c (gtk_window_size_allocate): Fix typo
15336         where comparison was being done against an uninitialized
15337         value causing intermittant results depending on
15338         compiler flags. Also make it clearer that we aren't
15339         ever initializing the child as 0x0 (though this will
15340         be caught in gtk_widget_size_allocate())
15341
15342 Fri Sep 10 10:06:56 1999  Owen Taylor  <otaylor@redhat.com>
15343
15344         * gtk/gtkwindow.c (gtk_window_set_transient_for): Move
15345         gtk_window_unset_transient_for() call after we do checks
15346         involving the old transient parent.
15347         [ From Lance Capser <lmc@cyberhighway.net> ]
15348
15349 1999-09-07  Raja R Harinath  <harinath@cs.umn.edu>
15350
15351         * gtk/Makefile.am (gtk.defs): Go back to using `touch' to create
15352         an empty file.
15353
15354 Mon Sep  6 00:11:56 1999  Lars Hamann  <lars@gtk.org>
15355
15356         * gtk/gtkctree.c (gtk_ctree_is_ancestor): return FALSE if node has
15357         no children. (Reported by: Chris Rogers <gandalf@pobox.com>)
15358
15359 1999-09-03  Raja R Harinath  <harinath@cs.umn.edu>
15360
15361         * gtk/Makefile.am (gen_sources): Improve VPATH builds.
15362         `$@' is valid only in the build dir, not after we've done 
15363         `cd $srcdir'.  Also use `test -f' instead of less portable
15364         `test -e'.
15365
15366 Fri Sep  3 15:59:56 1999  Owen Taylor  <otaylor@redhat.com>
15367
15368         * gtk/gtktext.c (correct_cache_insert): Rewrite
15369          for simplicity, and hopefully correctness.
15370          (Fixes bug #1322, which was a segfault when
15371           on some insertions with the properties around
15372           the insertion set up just wrong.)
15373
15374         * gtk/gtktext.c (gtk_text_adjustment): When we receive
15375          a "changed" signal, clamp the new value to the adjustment
15376          bounds to avoid segfaulting if someone tries to change
15377          the adjustment to a bogus value. (Bug #1795)
15378
15379 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
15380
15381         * gtk/gtkmain.c: Ignore unexpected destroy notifies
15382         for children, for toplevel windows handle them
15383         like delete_event.
15384
15385         * gtk/gtkplug.c: Add an unrealize handler so that
15386         we unref plug->socket_window when we are done
15387         with it.
15388
15389 Fri Sep  3 14:52:54 1999  Owen Taylor  <otaylor@redhat.com>
15390
15391         * gtk/gtktext.c (clear_area): Fix stupid signedness
15392          problem that was causing background to sometimes
15393          be misaligned.
15394
15395 Fri Sep  3 12:26:33 1999  Owen Taylor  <otaylor@redhat.com>
15396
15397         [ Fixes pointed out by Ettore Perazzoli <ettore@comm2000.it> ]
15398         
15399         * gtk/gtkmenu.c (gtk_menu_position): Make
15400          sure we never position menus with negative x, y,
15401          since gtk_widget_set_uposition() can't handle that.
15402
15403         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu):
15404          Modify the positioning code a bit so that we always
15405          put the top-left corner onscreen. (This is for
15406          UI reasons, gtk_menu_position() now takes care of
15407          gtk_widet_set_uposition() brokeness.)
15408
15409 Fri Sep  3 03:06:30 1999  Tim Janik  <timj@gtk.org>
15410
15411         * gtk/Makefile.am: fixed up things for -jx, x > 1.
15412
15413 Sun Sep  5 08:48:51 1999  Owen Taylor  <otaylor@redhat.com>
15414
15415         * gtk/gtkwidget.c (gtk_widget_modify_style): Ref the
15416           RC style that is passed in. The lack of the ref
15417           before was a bug. If people worked around this
15418           bug, this will introduce a slight memory leak
15419           in their code. The code should typically look like:
15420
15421             rc_style = gtk_rc_style_new ();
15422             [...]
15423             gtk_widget_modify_style (widget, rc_style);
15424             gtk_rc_style_unref (rc_style);
15425
15426         * gtk/gtkwidget.c (gtk_widget_modify_style): Reset
15427           the style if it was already set.
15428
15429         * gtk/gtkwidget.c (gtk_widget_set_name): Only set the
15430           style if it was set before.
15431
15432 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
15433
15434         * gtk/testgtk.c (main): Add a check to see if we
15435           are being run from the correct directory and
15436           to quit nicely if we are not.
15437
15438         * gtk/gtkrc.c (gtk_rc_slist_remove_all): Make function
15439           static.
15440
15441 Thu Sep  2 23:00:03 1999  Tim Janik  <timj@gtk.org>
15442
15443         * gtk/gtkenums.h (GtkWindowPosition): added GTK_WIN_POS_CENTER_ALWAYS.
15444
15445         * gtk/gtkwindow.c:
15446         queue resizes unconditionally (gtk_widget_queue_resize will figure
15447         what to do if the window is not realized).
15448         (gtk_window_move_resize): only recenter the window
15449         for GTK_WIN_POS_CENTER_ALWAYS.
15450         (gtk_window_compute_reposition): handle GTK_WIN_POS_CENTER_ALWAYS in
15451         the same way as GTK_WIN_POS_CENTER.
15452
15453 Thu Sep  2 22:39:27 1999  Tim Janik  <timj@gtk.org>
15454
15455         * gtk/gtkwindow.c (gtk_window_reposition): check for the last position
15456         with (!(info->last_flags & GDK_HINT_POS)) instead of
15457         (!info->last_flags & GDK_HINT_POS).
15458
15459         * gtk/gtkwindow.c (gtk_window_move_resize): constrain new_width and
15460         new_height unconditionally, because we use these values even if
15461         !default_size_changed && !hints_changed.
15462         comented the (default_size_changed || hints_changed) case with
15463         respect to resize rejects from the window manager.
15464
15465         * gtk/gtkwindow.c (gtk_window_move_resize): save info->last values
15466         in the zvt condition hack, since this includes the window hints, set
15467         the hints after the handling_resize case.
15468
15469         * gtk/gtkwindow.c (gtk_window_show): constrain the default size that a
15470         window is initially shown with to the geometry.
15471
15472 Thu Sep  2 07:38:56 1999  Tim Janik  <timj@gtk.org>
15473
15474         * gtk/gtkwindow.c (gtk_window_move_resize):
15475         s/size_changed/default_size_changed/g so i know what's
15476         really going on (frying brain on smaller flame now).
15477
15478 Thu Sep  2 05:47:47 1999  Tim Janik  <timj@gtk.org>
15479
15480         * gtk/gtkwindow.c (gtk_window_move_resize): queue a new resize if
15481         we have size_changed upon handling_resize. this is a gross
15482         workaround for the broken zvt widget and should be removed in
15483         1.3 again (search for FIXME).
15484         Owen provided an accurate comment for this:
15485
15486         /* We could be here for two reasons
15487          *  1) We coincidentally got a resize while handling
15488          *     another resize.
15489          *  2) Our computation of size_changed was completely
15490          *     screwed up, probably because one of our children
15491          *     is broken. It's probably a zvt widget.
15492          *
15493          * For 1), we could just go ahead and ask for the
15494          * new size right now, but doing that for 2)
15495          * might well be fighting the user (and can even
15496          * trigger a loop). Since we really don't want to
15497          * do that, we requeue a resize in hopes that
15498          * by the time it gets handled, the child has seen
15499          * the light and is willing to go along with the
15500          * new size. (this happens for the zvt widget, since
15501          * the size_allocate() above will have stored the
15502          * requisition corresponding to the new size in the
15503          * zvt widget)
15504          *
15505          * This doesn't buy us anything for 1), but it shouldn't
15506          * hurt us too badly, since it is what would have
15507          * happened if we had gotten the configure event before
15508          * the new size had been set.
15509          */
15510
15511 Wed Sep  1 20:46:11 1999  Owen Taylor  <otaylor@redhat.com>
15512
15513         * gtk/gtkrc.c: deal properly with the fact that RC
15514           style lists may include rc styles more than once.
15515
15516         * gtk/gtkrc.c (gtk_rc_append_pixmap_path): Removed
15517           unused static function.
15518
15519         * gtk/gtkrc.c (gtk_rc_find_pixmap_in_path): Keep a
15520           stack of directories of RC files currently being
15521           parsed and implicitely add them to pixmap path.
15522           
15523           This fixes a bug where the directory would get
15524           appended then overwritten by pixmap_path declarations.
15525
15526           (bug #1462, from Peter Wainright <prw@wainpr.demon.co.uk>)
15527
15528         * gtk/gtkthemes.c (gtk_theme_engine_unref): Call
15529           theme's exit function. (Patch from Peter Wainwright,
15530           bug #1454)
15531
15532         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_destroy):
15533           Add a destroy() handler to take care of removing
15534           group for menu item. (Fixes bug #1197)
15535
15536         * gtk/gtkwidget.c (gtk_widget_size_request): Fixed thinko
15537           in warning message.
15538
15539 Wed Sep  1 21:27:42 1999  Tim Janik  <timj@gtk.org>
15540
15541         * gtk/gtkwindow.c (gtk_window_move_resize): don't require a server
15542         roundtrip to figure window's width and height, since we know that
15543         anyways from widget->allocation.
15544
15545 Wed Sep  1 12:37:44 1999  Owen Taylor  <otaylor@redhat.com>
15546
15547         * gtk/gtkwindow.c (gtk_window_move_resize): Compute
15548           the hints after we request the new size.
15549
15550 Wed Sep  1 10:38:37 1999  Owen Taylor  <otaylor@redhat.com>
15551
15552         * gtk/gtkwindow.c (gtk_window_compute_hints): Removed
15553           GTK_WIDGET_REALIZED() assertion - we can compute the
15554           hints before we are realized.
15555
15556         * gtk/gtkwindow.c (gtk_window_move_resize): Reorder
15557           hint changing so that we have a value of hints_changed
15558           when we decide whether to constrain the window size.
15559
15560         * gtk/gtkwindow.c (gtk_window_move_resize): Spelling fix.
15561
15562         * gtk/gtkwindow.c (gtk_window_constrain_size): cleanups,
15563         change back to G_MAXINT.
15564
15565 Wed Sep  1 06:54:59 1999  Tim Janik  <timj@gtk.org>
15566
15567         * gtk/gtkwindow.c (gtk_window_get_geometry_info): zero initialize
15568         new GtkWindowGeometryInfo, so fields like GdkGeometry geometry
15569         contain uncluttered values.
15570         (gtk_window_compute_hints): simply assert that window is realized
15571         and that geometry_info is valid, since we rely on this anyways.
15572         (gtk_window_constrain_size): major cleanups to the code.
15573         if (flags & GDK_HINT_BASE_SIZE) use geometry's base width and height
15574         for the base size, instead of the minimums. use 32767 as max width
15575         and height (like in gtkwindow.c) instead of G_MAXINT.
15576
15577 Wed Sep  1 04:41:25 1999  Tim Janik  <timj@gtk.org>
15578
15579         * cleaned up the GtkContainer.need_resize flag handling mess, we
15580         only need to force resize requests when we were prematurely
15581         realized, or our widget tree was modified when we were temporarily
15582         hidden. handling these cases directly upon showing the window (i.e.
15583         while the GdkWindow is still unmapped) avoids the need to wait for
15584         a configure event response and therefore makes the GUI more snappier
15585         and avoids blank windows during the roundtrip.
15586
15587         * gtk/gtkwidget.c:
15588         (gtk_widget_hide): 
15589         (gtk_widget_show): don't queue resizes on toplevels, they know how
15590         to deal with matters.
15591
15592         * gtk/gtkcontainer.c (gtk_container_queue_resize): set the ->need_resize
15593         flag directly for not visible resize containers and spare us unecessary
15594         signal emissions.
15595
15596         * gtk/gtkwindow.c:
15597         (gtk_window_realize): if we need to enforce premature size allocation,
15598         queue a container resize so we are correctly resized later on.
15599         (gtk_window_init):
15600         (gtk_window_size_request):
15601         don't freak around with the ->need_resize flag,
15602         gtk_container_queue_resize() will care about that.
15603         (gtk_window_show):
15604         handle initial resizing issues here, we can handle matters better in
15605         this place, especially since we know that our GdkWindow is still
15606         unmapped.
15607         (gtk_window_move_resize):
15608         don't care about ->need_resize at all.
15609         handle size changes properly that occoured while we waited for a
15610         configure event.
15611
15612 Tue Aug 31 15:58:46 1999  Owen Taylor  <otaylor@redhat.com>
15613
15614         * gtk/gtkwidget.c (gtk_widget_set_uposition):
15615         * gtk/gtkwindow.[hc] (gtk_window_reposition):
15616         Move the hint setting code from gtk_widget_set_uposition
15617         to here; set the hints so that we respect any previously
15618         set geometry hints.
15619
15620         * gtk/gtkwindow.c (gtk_window_compute_reposition): Don't
15621         change the window hints here or move the window here,
15622         let that happen in gtk_window_move_resize().
15623
15624 Tue Aug 31 06:58:52 1999  Tim Janik  <timj@gtk.org>
15625
15626         * gtk/gtkwidget.c (gtk_widget_event): when discarding exposes due
15627         to already queued resizes (and therefore redraws) on a widget, check
15628         its anchestry as well.
15629
15630         * gtk/gtkcontainer.c:
15631         (gtk_container_queue_resize): clear resize widgets for resize
15632         containers before aborting prematurely. this is especially important
15633         for toplevels which may need imemdiate processing or their resize
15634         handler to be queued.
15635         (gtk_container_dequeue_resize_handler): added new internal function for
15636         gtkwindow.c.
15637
15638         * gtk/gtkwindow.c (gtk_window_move_resize): if we are resizing due to a
15639         configure event, take possible changes in window position into account
15640         as well.
15641         if we request a new window size, queue up a resize handler that will
15642         last until the configure event response arrives.
15643         combined the ->need_resize case (initial show) with the general size
15644         (hints) changed case and added even more comments.
15645         if !auto_shrink, only revert to the old allocation if the new size
15646         is smaller than the current allocation.
15647
15648 Tue Aug 31 11:55:20 1999  Owen Taylor  <otaylor@redhat.com>
15649
15650         * gtk/gtkwindow.c (gtk_window_set_arg, gtk_window_set_policy,
15651                            gtk_window_set_geometry_hints
15652                            gtk_window_set_default_size):
15653         When hints are set, queue a resize so that the hints will
15654         be eventually reset on the toplevel.
15655
15656         * gtk/gtkwindow.c (gtk_window_show): Use
15657         gtk_window_compute_default_size(). Clear the need_resize flag
15658         on the initail map so that we don't unnecessarily trigger the
15659         resize code.
15660
15661         * gtk/gtkwindow.c (gtk_window_move_resize): Split apart
15662         into separate functions. Compare the hints we are setting
15663         with what we set last time so that we can accurately
15664         tell when we need to reset the hints.
15665
15666         * gtk/gtkwindow.c (gtk_window_compute_default_size): New
15667         function to figure out the size from requisition
15668         and default_size.
15669
15670         * gtk/gtkwindow.c (gtk_window_constrain_size): Function
15671         from fvwm to constrain a size to the geometry hints.
15672
15673         * gtk/gtkwindow.c (gtk_window_compare_hints): New function
15674         to compare two sets of geometry hints.
15675
15676         * gtk/gtkwindow.c (gtk_window_compute_hints): Renamed
15677         from gtk_window_set_hints(), just compute the hints,
15678         don't set them.
15679
15680         * gtk/gtkwindow.c (gtk_window_compute_reposition): Move
15681         code from gtk_window_move_resize() to separate function,
15682         rationalize a bit.
15683
15684 Tue Aug 31 13:05:03 1999  Owen Taylor  <otaylor@redhat.com>
15685
15686         * gtkrc.h: Move the ref_count member out of the GtkRcStyle
15687         structure into a new private structure.
15688
15689         * gtkrc.c: Split GtkRcStyle into public/private.
15690         In the private part, add a list of pointers to the
15691         RcStyle lists this RcStyle participates in.
15692
15693         * gtkrc.c: When a RcStyle is free, remove all
15694         lists referencing it from the 
15695         realized_style_ht hash, and free those lists.
15696         
15697         * gtk/gtkrc.c (gtk_rc_clear_styles): Don't call
15698         gtk_rc_init(), since that adds the default styles
15699         to the list of parsed RC files again.
15700
15701         * gtk/gtkrc.c: Use gtk_rc_style_find() consistently.
15702         
15703 Thu Aug 26 14:14:42 1999  Tim Janik  <timj@gtk.org>
15704
15705         * gtk/gtkwidget.c (gtk_widget_size_allocate): reactivated the sanity
15706         checks that ensure that a widget's allocation is at least 1 in width
15707         and height. (GNOME note: this doesn't affect old panel code anymore,
15708         because GtkSocket will request width and height of at least 1 since
15709         Fri Jul 23).
15710
15711         * gtk/gtkwindow.c (gtk_window_realize): if the widget hasn't been
15712         allocated yet (happens if the user realizes the window prematurely),
15713         size request and allocate it.
15714         (gtk_window_size_allocate): guard against guint underflows.
15715
15716 Wed Aug 25 19:01:36 1999  Lars Hamann  <lars@gtk.org>
15717
15718         * gtk/Makefile.am (gtk_built_sources): reordered stamp-gtk.defs
15719         in gtk_built_sources, so gtk.defs gets built prior to all other
15720         sources.
15721
15722 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
15723
15724         * gtk/Makefile.am:
15725         invoke indent on gtkmarshal.*. 
15726         rewrote source generation rules, use COPYING as oldest source tag for
15727         a piggyback rule to generate all sources from (don't touch it ;).
15728         major cleanups, strip spaces on build rules for GNU Make.
15729
15730         * gtk/genmarshal.pl: don't operate on hardcoded filenames but take
15731         source and target files from commandline arguments. don't invoke indent.
15732
15733 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
15734
15735         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
15736         notebook after switch to avoid drawing problems.
15737         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
15738         
15739         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
15740         show them instead. 
15741         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
15742
15743 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
15744
15745         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
15746         notebook after switch to avoid drawing problems.
15747         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
15748         
15749         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
15750         show them instead. 
15751         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
15752
15753 Wed Aug 18 09:20:10 1999  Tim Janik  <timj@gtk.org>
15754
15755         * gtk/gtkwindow.c:
15756         we use window->need_resize from configure_event now, to indicate that
15757         the gtkwindow should keep its allocation (e.g. because the user resized
15758         the window through window manager handles). resize_count is now reliably
15759         used to figure whether we got the allocation we requested from the
15760         window manager.
15761         configure events get queued as resizes now, the real stuff (size
15762         computation and allocation) now only goes on in gtk_window_move_resize().
15763         GtkWindow's requisition now contains its *real* requisition (like all
15764         other widgets), *not* taking usize into account.
15765         geometry_info->last_{width|height} is now updated from set_hints() only
15766         so it always contains the last hints we set for the window manager.
15767         made some event handlers return TRUE instead of FALSE.
15768         the overall code should be much more straight forward now, and the
15769         significant code portions are accompanied by comments now.
15770         (gtk_window_set_hints):
15771         removed requisition argument and made it
15772         fetch the requisition through gtk_widget_get_child_requisition.
15773         we also don't move the gdkwindow here anymore, gtk_window_move_resize()
15774         does that now.
15775         (gtk_window_show):
15776         ensure that the widget is realized before calling 
15777         gtk_container_check_resize() (and thus gtk_window_move_resize()), also
15778         ensure that we got properly size requested and allocated before
15779         realization.
15780         (gtk_window_configure_event):
15781         ignore plain window moves, or reallocate the widget tree through the
15782         resize queue otherwise.
15783         (gtk_window_move_resize):
15784         mostly rewrote this function to figure window manager hints more
15785         reliably, coalesce window moves and resizes to reduce configure events
15786         and do actuall size allocations.
15787
15788 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
15789
15790         * gtk/gtkwidget.c (gtk_widget_event): discard expose events for widgets
15791         that have a resize pending, because a redraw is already queued for them.
15792
15793         * gtk/gtkcontainer.c: removed ugly connect_to ::size_allocate signal
15794         hack to clear resize_widgets.
15795
15796         * gtk/gtkwidget.c (gtk_widget_size_allocate): call clear_resize_widgets
15797         for resize containers prior to size allocation. (this is also a bit
15798         ugly, but avoids side effects for stopped emissions and is thus more
15799         reliable).
15800         (gtk_widget_unparent): removed disconnect call for clear_resize_widgets.
15801
15802         * gtk/gtktooltips.c (gtk_tooltips_paint_window): renamed this
15803         function from gtk_tooltips_expose, as we connect to ::expose_event
15804         *and* ::draw now.
15805
15806 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
15807
15808         * gtk/gtkselection.c (gtk_target_list_ref): Added missing sanity
15809         checks.
15810         (gtk_target_list_unref): Likewise.
15811
15812         * gtk/gtkthemes.c (gtk_theme_engine_unref): Likewise.
15813
15814 Tue Aug 17 15:47:07 1999  Owen Taylor  <otaylor@redhat.com>
15815
15816         * gtk/gtkcolorsel.c (gtk_color_selection_draw_value_bar):
15817         guard against division by zero. (Fixes bug #1339)
15818
15819 Tue Aug 17 10:56:49 1999  Owen Taylor  <otaylor@redhat.com>
15820
15821         * gtk/gtkentry.c (gtk_move_{forward,backward}_word): 
15822         Prevent the trivial leak of information of allowing
15823         word motion when the entry is not visible.
15824
15825 Tue Aug 17 10:28:52 1999  Owen Taylor  <otaylor@redhat.com>
15826
15827         * gtk/gtkfilesel.c (gtk_file_selection_fileop_error): Propagate
15828         modality to error dialog as well as confirmation dialogs.
15829         (Bug #1803, reported by Rosanna Wing Sze Yuen)
15830
15831 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
15832
15833         * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): Honor
15834         tree->view_lines.
15835         (gtk-guy-990611-3.patch: Guy Harris <guy@netapp.com>)
15836
15837         * gtk/Makefile.am (install-data-local): Solaris apparently
15838         has various troubles with ln -f; use rm first instead.
15839         (gtk-guy-990611-2.patch: Guy Harris <guy@netapp.com>)
15840
15841 1999-07-30  Raja R Harinath  <harinath@cs.umn.edu>
15842
15843         * gtk/Makefile.am (stamp-m): Don't `mv' from builddir to srcdir,
15844         use `cp' followed by `rm' (the `rm' was already there).
15845
15846 July 30, 1999 Elliot Lee <sopwith@redhat.com>
15847         
15848         * configure.in: Fix autoconf warnings about cross compilation by
15849         trying to provide sane defaults for AC_TRY_RUN.
15850         * gtk/Makefile.am: If we refer to gtkmarshal.[ch] in $(srcdir),
15851         put them into $(srcdir) when generated. Also add a dependency of
15852         gtksignal.h on gtkmarshal.h for -j builds. 
15853         * gtk/gtk(dnd,style,gamma).c: Minor warning fixes.
15854
15855 Wed Jul 28 09:29:19 1999  Owen Taylor  <otaylor@redhat.com>
15856
15857         * gtk/gtkmain.c (gtk_main_iteration_do): Added missing
15858         GDK_THREADS_{LEAVE,ENTER} pair.
15859         (From Paul Fisher <pnfisher@redhat.com>)
15860
15861 Fri Jul 23 01:00:15 1999  Tim Janik  <timj@gtk.org>
15862
15863         * gtk/gtksocket.c (gtk_socket_size_request): asure that the requested
15864         width and height are always >0 (owen).
15865
15866 Fri Jul 23 00:00:47 1999  Tim Janik  <timj@gtk.org>
15867
15868         * gtk/gtkwidget.c (gtk_widget_size_allocate): backed out my recent
15869         change that assured that a widget's allocated with and height are
15870         always >1, since this breaks *buggy* panel code. unfortunately this
15871         back-breaks the gimp's color selector.
15872
15873         * gtk/gtkdrawingarea.c (gtk_drawing_area_size_allocate): asure that our
15874         allocation is always >0 in width and height, before sending the
15875         configure event; this is a *gross* hack to get the gimp back to work.
15876         
15877         * marked both cases with TODO-1.3
15878
15879 Wed Jul 21 15:47:39 1999  Owen Taylor  <otaylor@redhat.com>
15880
15881         * gtk/gtktext.c: Don't display wrap indicators when
15882         text is not editable and word wrap is on.
15883
15884 Wed Jul 21 08:21:40 1999  Tim Janik  <timj@gtk.org>
15885
15886         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): special case
15887         option menus here as they are not derived from menu shell, assure that
15888         the option menu has a menu we can add items to.
15889
15890 Tue Jul 20 23:29:48 1999  Tim Janik  <timj@gtk.org>
15891
15892         * gtk/gtknotebook.c (gtk_notebook_page_allocate): convert allocation->
15893         width/height to (gint) before calculations and check against < 0 to
15894         avoid guint wraparounds.
15895
15896 Sun Jul 18 00:35:49 1999  Tim Janik  <timj@gtk.org>
15897
15898         * gtk/gtkwidget.c (gtk_widget_size_allocate): ensure that the allocated
15899         width and height is never zero. sanity check both dimensions against
15900         32767 and issue a warning if the allocation is greater than that.
15901
15902 Wed Jul  7 15:03:30 1999  Owen Taylor  <otaylor@redhat.com>
15903
15904         * gtk/gtkmain.c (gtk_events_pending): Unlock around call
15905         to g_main_pending() as well.
15906
15907 Wed Jul  7 14:59:01 1999  Owen Taylor  <otaylor@redhat.com>
15908
15909         * gtk/gtkmain.c (gtk_main_iteration): Unlock around
15910         call to g_main_iteration() - since that will regrab
15911         GTK+ lock to process events.
15912
15913 Thu Jul  1 15:01:55 1999  Owen Taylor  <otaylor@redhat.com>
15914
15915         * gtk/gtkwindow.c
15916         - Regularize with the rest of GTK+ by making widget->requisition
15917           not reflect the set_usize()
15918         - Always recompute geometry hints, then check if they
15919           changed before sending them to the X server. The
15920           previous checks for changes would fail in a number
15921           of circumstances. 
15922
15923 Thu Jul  1 11:55:59 1999  Owen Taylor  <otaylor@redhat.com>
15924
15925         * gtk/gtkstyle.c: Include <stdlib.h> for strcmp().
15926
15927 Wed Jun 30 19:26:36 1999  Owen Taylor  <otaylor@redhat.com>
15928
15929         * gtk/gtkdnd.c:
15930         - Code cleanups
15931         - Instantaneously update on modifier key presses
15932         - Allow cancellation of the drag with Escape.
15933
15934 Tue Jun 29 17:04:09 1999  Owen Taylor  <otaylor@redhat.com>
15935
15936         * gtk/testgtk.c (create_handle_box): Set the policy
15937         to auto_shrink - otherwise the appearance is rather
15938         strange when flipping between horizontal and vertical.
15939
15940 Mon Jun 28 09:29:52 1999  Tim Janik  <timj@gtk.org>
15941
15942         * gtk/gtkwindow.c: add ::default_width and ::default_height arguments.
15943         (gtk_window_set_default_size): don't change a value if it's < 0.
15944         queue a resize.
15945
15946 Sun Jun 27 11:00:33 1999  Tim Janik  <timj@gtk.org>
15947
15948         * gtk/gtktext.c (gtk_text_insert): don't segfault on NULL inserts.
15949
15950 Mon Jun 28 12:08:25 1999  Owen Taylor  <otaylor@redhat.com>
15951
15952         * gtk/gtkfilesel.c (cmpl_completion_fullname): Don't
15953         add an extra "/" when concating "/" + filename.
15954         (From Matt Grossman <mattg@oz.net>)
15955
15956 Mon Jun 28 10:57:12 1999  Owen Taylor  <otaylor@redhat.com>
15957
15958         * gtk/gtkctree.c (draw_cell_pixmap): Reset clip mask
15959         for fg_gc if we set it for drawing pixmap.
15960
15961 Tue Jun 15 12:45:12 1999  Owen Taylor  <otaylor@redhat.com>
15962
15963         Fixes from Peter Wainwright <prw@wainpr.demon.co.uk>
15964         
15965         * gtk/gtkrc.c (gtk_rc_parse_engine): If rc_style->engine is
15966         already set, call old engine's destroy function and
15967         unref the old engine.
15968
15969 Thu Jun 10 17:59:38 1999  Tim Janik  <timj@gtk.org>
15970
15971         * gtk/gtkdrawingarea.c (gtk_drawing_area_size): queue a resize.
15972
15973 Wed Jun  9 15:13:16 1999  Tim Janik  <timj@gtk.org>
15974
15975         * gtk/gtkaccelgroup.h: mark certain functions as internal.
15976
15977 Wed Jun  9 13:48:28 1999  Tim Janik  <timj@gtk.org>
15978
15979         * gtk/gtkpreview.c (gtk_preview_set_expand): queue a resize if the
15980         expand behaviour changed.
15981
15982         * gtk/gtklabel.c (gtk_label_set_pattern):
15983         (gtk_label_set_justify):
15984         (gtk_label_set_line_wrap):
15985         don't bother invoking queue_clear, the reallocation does
15986         that for us, always free_words so the upcoming resize will
15987         relayout the label's contents.
15988
15989 Wed Jun  9 12:50:48 1999  Tim Janik  <timj@gtk.org>
15990
15991         * applied argument implementation patches from Elena Devdariani
15992         <elena@cogent.ca>.
15993
15994         * gtk/gtktoolbar.c: ::orientation, ::toolbar_style, ::space_size,
15995         ::space_style, ::relief
15996         * gtk/gtkruler.c: ::lower, ::upper, ::position, ::max_size
15997         * gtk/gtkpreview.c: ::expand
15998         * gtk/gtkpaned.c: ::handle_size, ::gutter_size
15999         * gtk/gtknotebook.c: ::homogeneous
16000         * gtk/gtklabel.c: ::wrap
16001         * gtk/gtklist.c: ::selection_mode
16002         * gtk/gtkhandlebox.c: ::handle_position, ::snap_edge
16003         * gtk/gtkcurve.c: ::curve_type, ::min_x, ::max_x, ::min_y, ::max_y
16004         * gtk/gtkcolorsel.c: ::update_policy, ::use_opacity
16005         * gtk/gtkclist.c: ::sort_type
16006         * gtk/gtkcheckmenuitem.c: ::active, ::show_toggle
16007         * gtk/gtkaspectframe.c: ::xalign, ::yalign, ::ratio, ::obey_child
16008
16009 Tue Jun  1 23:38:38 1999  Owen Taylor  <otaylor@redhat.com>
16010
16011         * gtk/gtkstyle.c: Removed ill-thought-out part of last
16012         comment.
16013
16014 Tue Jun  1 23:30:09 1999  Owen Taylor  <otaylor@redhat.com>
16015
16016         * gtk/gtkstyle.c (gtk_style_attach): Get the reference
16017         counting right when we have to attach a new style
16018         for a different visual. (Chi-Deok Hwang <cdhwang@sr.hei.co.kr>)
16019
16020         * gtk/gtkstyle.c: Documented the refcounting
16021         peculularities of gtk_style_attach.
16022
16023 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
16024
16025         * gtk/gtkwindow.c (gtk_window_new): added return if fail for invalid
16026         window types.
16027
16028         * examples/packer/pack.c (main): use GTK_WINDOW_TOPLEVEL instead
16029         of GTK_TOPLEVEL for creating the window.
16030
16031 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
16032
16033         * gtk/gtkmain.c (gtk_init_check): don't segfault when --gtk-module is
16034         the last argument (reported by Per Winkvist).
16035         
16036 Tue May 25 13:13:12 1999  Owen Taylor  <otaylor@redhat.com>
16037
16038         Fixes for invisible XOR lines (Frank Loemker
16039         <floemker@TechFak.Uni-Bielefeld.DE>)
16040         
16041         * gtk/gtkclist.c (gtk_clist_realize): Always use
16042         a non-zero pixel for GDK_XOR.
16043
16044         * gtk/gtkvpaned.c gtk/gtkhpaned.c: 
16045         Use GDK_INVERT instead of GDK_XOR.
16046
16047 Wed May 12 21:56:40 1999  Lars Hamann  <lars@gtk.org>
16048
16049         * gtk/gtkclist.c (adjust_adjustments): signal emit value_changed
16050         signals if h/voffsets differ from adjustment values.
16051         Reportet by Jerome Bolliet <bolliet@in2p3.fr>
16052
16053 Mon May 10 04:20:41 1999  Tim Janik  <timj@gtk.org>
16054
16055         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): propagate
16056         ::selection-done emissions up to the topmost menu shell.
16057
16058 Fri May  7 10:15:14 1999  Owen Taylor  <otaylor@redhat.com>
16059
16060         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): Unset
16061         the user data on the window before destroying it.
16062
16063         * gtk/gtknotebook.c (gtk_notebook_unrealize): Add an
16064         unrealize handler to take care of destroying 
16065         notebook->panel properly. 
16066         (Bug #1198 - Morten Welinder <terra@diku.dk>)
16067
16068         * gtk/gtktext.c (expand_scratch_buffer): Fix reversal
16069         of g_new and g_realloc to stop memory leak. (Actually,
16070         we could just use g_realloc(), but I'm not 100% sure
16071         that is portable).
16072         (Bug #1196 - Morten Welinder <terra@diku.dk>)
16073
16074 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
16075
16076         * gtk/gtkplug.h: Removed stray GtkPlugButton declaration.
16077
16078         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
16079         for fontsets.
16080
16081         * gtk/gtkbutton.c (gtkbutton_expose): Fix warning
16082         with bin/button confusion.
16083
16084 Thu May  6 04:53:26 1999  Tim Janik  <timj@gtk.org>
16085
16086         * gtk/testgtk.c: in the ItemFactory test, link radio items together,
16087         and show how preselection of radio items is done.
16088
16089 Sun May  2 13:31:14 1999  Tim Janik  <timj@gtk.org>
16090
16091         * gtk/gtktreeitem.c (gtk_tree_item_set_subtree): 
16092         * gtk/gtktree.c (gtk_tree_add) (gtk_tree_insert):
16093         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): 
16094         * gtk/gtkpaned.c (gtk_paned_pack2) (gtk_paned_pack1):
16095         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_add): 
16096         * gtk/gtktable.c (gtk_table_attach): 
16097         * gtk/gtklist.c (gtk_list_insert_items): 
16098         * gtk/gtkmenushell.c (gtk_menu_shell_insert): 
16099         * gtk/gtknotebook.c (gtk_notebook_insert_page_menu): 
16100         * gtk/gtkpacker.c (gtk_packer_add_defaults) (gtk_packer_add): 
16101         * gtk/gtkbin.c (gtk_bin_add): 
16102         * gtk/gtkbox.c (gtk_box_pack_start) (gtk_box_pack_end): 
16103         * gtk/gtkfixed.c (gtk_fixed_put): 
16104         * gtk/gtklayout.c (gtk_layout_put):
16105         general fixups to container_add logic. always realize child if
16106         child->parent is realized, only map the child and queue a resize
16107         if child and child->parent are both visible.
16108
16109 Fri Apr 30 09:02:28 1999  Tim Janik  <timj@gtk.org>
16110
16111         * gtk/gtkwidget.c (gtk_widget_real_unrealize): use gtk_container_forall
16112         instead of gtk_container_foreach to walk and unrealize children, so
16113         composite children get also unrealized.
16114         (gtk_widget_real_show): don't call gtk_widget_map() if we don't need to.
16115         (gtk_widget_map): assert that the widget is visible (basic constrain).
16116         (gtk_widget_real_map): assert that the widget is realized (basic
16117         constrain).
16118
16119 Fri Apr 29 00:53:20 1999  Tim Janik  <timj@gtk.org>
16120
16121         * gtk/gtkbindings.c (gtk_pattern_spec_init): plugged a memory leak.
16122
16123 Tue May  4 09:32:08 1999  Owen Taylor  <otaylor@redhat.com>
16124
16125         * gtk/Makefile.am gtk/gtkrc.iso-8859-2: Add a gtkrc
16126         file for iso-8859-2 locales.
16127
16128         * configure.in (ALL_LINGUAS): ALL_LINGUAS update.
16129
16130 Tue Apr 27 16:38:32 1999  Owen Taylor  <otaylor@redhat.com>
16131
16132         * gtk/Makefile.am: Fix typo of static_sources for static_SOURCES.
16133          (Pointed out by andy@rz.uni-karlsruhe.de and others).
16134          Remove some suspicious and useless lines. 
16135
16136 Tue May  4 08:44:08 1999  Owen Taylor  <otaylor@redhat.com>
16137
16138         * gtk/gtkclist.c (gtk_clist_draw, draw_rows): Use 
16139         width,height = 0, 0 to mean - here to edge of window,
16140         instead of -1, -1, since the former is all we support.
16141
16142 Tue May  4 08:34:43 1999  Owen Taylor  <otaylor@redhat.com>
16143
16144         * gtk/gtkmain.c (gtk_main): Correctly free list nodes
16145         when removing from quit_functions list.
16146
16147 Tue Apr 27 14:17:16 1999  Tim Janik  <timj@gtk.org>
16148
16149         * gtk/gtkpacker.c (gtk_packer_size_request): remove unused variable.
16150
16151 Tue Apr 27 18:23:35 1999  Owen Taylor  <otaylor@redhat.com>
16152
16153         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): 
16154          When redrawing characters on non-visible entry, use appropriate
16155          '*' character. (Bug #1130 - Jean-Marc Jacquet <jm@littleigloo.org>)
16156
16157 Tue Apr 27 01:31:40 1999  Lars Hamann  <lars@gtk.org>
16158
16159         * gtk/gtkclist.c (drag_dest_cell): compute destination cell
16160         from drag coordinates.
16161         (gtk_clist_drag_data_received) (gtk_clist_drag_motion):
16162         use drag_dest_cell.
16163
16164         * gtk/gtktree (drag_dest_cell)
16165         (gtk_ctree_drag_data_received) (gtk_ctree_drag_motion): likewise.
16166         (Bug #1129)
16167
16168 Wed Apr 21 21:26:11 1999  Tim Janik  <timj@gtk.org>
16169
16170         * gtk/gtkitemfactory.c (gtk_item_factory_init): properly initialize
16171         translate_* fields.
16172         (gtk_item_factory_finalize): invoke translate_notify independant from
16173         translate_data.
16174         (gtk_item_factory_set_translate_func): likewise.
16175         (gtk_item_factory_destroy): only remove ifactory pointer from those
16176         widgets that belong to us (stupid me).
16177
16178 Mon Apr 19 12:05:31 1999  Owen Taylor  <otaylor@redhat.com>
16179
16180         * gtk/gtkrc.c (gtk_rc_style_init): Fixed leak of
16181         rc_style list when lookup succeeeds.
16182
16183 Thu Apr 15 01:11:24 1999  Lars Hamann  <lars@gtk.org>
16184
16185         * gtk/gtkctree.c (resync_selection): 
16186         * gtk/gtkclist.c (resync_selection): fixed undo_selection bug.
16187         * gtk/gtkclist.c (gtk_clist_button_release): fixed resync_selection
16188         bug.
16189
16190 Fri Apr  9 19:22:19 1999  Owen Taylor  <otaylor@redhat.com>
16191
16192         * gtk/gtkcolorsel.c gtk/gtkdnd.c gtk/gtkmenuitem.c:
16193         Add some missing GDK_THREADS_ENTER()/LEAVE around
16194         timeouts. (Patches from Sebastian Wilhelmi <wilhelmi@ira.uka.de>)
16195
16196 Thu Apr  8 20:10:33 1999  Tim Janik  <timj@gtk.org>
16197
16198         * gtk/gtkentry.c (gtk_entry_key_press): use gtk_widget_activate()
16199         rather than emit_by_name.
16200
16201         * gtk/gtkeditable.c (gtk_editable_insert_text): keep a reference
16202         on the widget across multiple signal emissions.
16203         (gtk_editable_delete_text): same here.
16204         (gtk_editable_class_init): set widget_class->activate_signal after
16205         editable_signals[ACTIVATE] has been created.
16206
16207 Wed Apr  7 22:59:47 1999  Owen Taylor  <otaylor@redhat.com>
16208
16209         * gtk/gtkpaned.c (gtk_paned_set_position): Don't clamp
16210         position here prematurely -- we might not have the
16211         right ->min_position and ->max_position yet.
16212
16213 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
16214
16215         * gtk/gtkselection.c gdk/gdkselection.c: (gtk_selection_request):
16216         Add error traps so if the other end of the connection
16217         dies, we survive.
16218
16219         * gtk/gtkselection.c (gtk_selection_notify): Clean
16220         up properly when selection property retrieval fails.
16221         
16222         * gtk/gtkselection.c (gtk_selection_request): Correctly
16223         reject SelectionRequest notifies where the handler
16224         returns no data.
16225
16226 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
16227
16228         * gtk/gtkdnd.c (gtk_drag_dest_leave): Only unhighlight
16229         when we've previously highlighted.
16230
16231         * gtk/gtkdnd.c (gtk_drag_dest_handle_event): Don't
16232         emit two "drag_leave" signals for Motif drops.
16233
16234         * gtk/gtkdnd.c (gtk_drag_source_handle_event): Send
16235         back the correct status messages when dropping from
16236         Motif onto a proxy window that is rejecting the
16237         drop.
16238
16239 Sat Mar 27 23:32:13 1999  Tim Janik  <timj@gtk.org>
16240
16241         * gtk/gtkarg.[hc]: added functions from GLE, gtk_arg_reset() to free
16242         the value and reset type to GTK_TYPE_INVALID, and gtk_arg_values_equal()
16243         to compare two argument values. added gtk_arg_to_valueloc() to set a
16244         variable from an arg through its location (pointer).
16245
16246         * gtk/gtkobject.[hc]: implemented gtk_object_get() in terms of
16247         gtk_object_arg_get() and gtk_arg_to_valueloc(), floats are collected
16248         as gfloat*, uchars are collected as guchar*, ints are collected as
16249         gint*, etc...
16250
16251 Mon Mar 29 17:45:47 1999  Owen Taylor  <otaylor@redhat.com>
16252
16253         * gtk/gtkaccelgroup.c gtk/gtkgtkbindings.c:
16254         Include <string.h> instead of <strings.h>.
16255
16256         * gtk/gtkstyle.c: Fix double include of gtkthemes.h
16257         (actually, a lot more duplicate includes occur if
16258          you trace through the sequence of #include's)
16259         gtk-jbb-990320-0: John Bley, jbb6@acpub.duke.edu
16260         
16261 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
16262
16263         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
16264         gtk-a-higuti-990322-[0-3]
16265
16266         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
16267         that was causing -DX_LOCALE not to work.
16268
16269         * gtk/gtkrc.c (gtk_rc_init):
16270         X_LOCALE will never have LC_MESSAGES defined
16271
16272 Thu Mar 25 12:38:31 1999  Tim Janik  <timj@gtk.org>
16273
16274         * gtk/gtkrc.c (gtk_rc_append_default_module_path): get $HOME from
16275         g_get_home_dir() (gtk-pmc-990123-0.patch.gz).
16276
16277         * gtk/gtkwindow.c (gtk_window_key_press_event): feature keypad up/down/
16278         left/right as well (gtk-michael-980726-0.patch.gz).
16279
16280         * gtk/gtklabel.[hc]: bunch of miscellaneous cleanups, such as s/0/NULL/
16281         for pointer values, use gchar instead of char. fixed uline allocation
16282         leaks, changed the allocation pattern so we use G_ALLOC_AND_FREE mem
16283         chunks instead of G_ALLOC_ONLY.
16284         (gtk_label_size_request): always alter requisition as passed and leave
16285         widget->requisition alone.
16286         (gtk_label_set_text): allow NULL strings.
16287         (gtk_label_new): likewise.
16288
16289 Wed Mar 24 09:24:03 1999  Tim Janik  <timj@gtk.org>
16290
16291         * gtk/gtkdrawingarea.[hc]: type/macro fixups.
16292
16293 Mon Mar 22 05:51:34 1999  Tim Janik  <timj@gtk.org>
16294
16295         * gtk/gtkbin.c (gtk_bin_draw): only redraw children that are visible
16296         *and* mapped (i.e. drawable).
16297         (gtk_bin_expose): only send exposes to drawable children.
16298
16299         * gtk/gtkbox.c (gtk_box_draw): only redraw children that are drawable.
16300         (gtk_box_expose): only send exposes to drawable children.
16301
16302         * gtk/gtkhscale.c (gtk_hscale_draw): 
16303         * gtk/gtkvscale.c (gtk_vscale_draw):
16304         hm, this is an ugly one. we first compute the size of our trough area
16305         here (window relative) and then check intersection with the draw_area
16306         which is parent relative because we're a NO_WINDOW widget, so we need
16307         to offset the trough area by allocation.x and allocation.y before the
16308         check. (this must not be done for the background area though, since
16309         that's already computed parent relative).
16310
16311 Mon Mar 22 00:41:39 1999  Lars Hamann  <lars@gtk.org>
16312
16313         * gtk/gtkclist.c (gtk_clist_unrealize): unmap clist if neccessary,
16314         unrealize title buttons.
16315
16316 Fri Mar 19 00:00:22 1999  Lars Hamann  <lars@gtk.org>
16317
16318         * gtk/gtkclist.c (gtk_clist_column_title_passive)
16319         (gtk_clist_column_title_active): 
16320         only connect/disconnect to GtkWidgetClass::event to block mouse events.
16321
16322         * gtk/gtkclist.c (vertical_timeout) (horizontal_timeout): 
16323         zero initialize event, removed superfluous gdk_window_get_pointer call
16324
16325         * gtk/gtklist.c (gtk_list_vertical_timeout)
16326         (gtk_list_horizontal_timeout): removed superfluous
16327         gdk_window_get_pointer call
16328
16329 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
16330
16331         * plugging problems reported by "Bruce Mitchener, Jr."
16332         <bruce@puremagic.com> due to a purify session.
16333
16334         * gtk/gtkstyle.c:
16335         (gtk_style_ref): 
16336         (gtk_style_unref): assert ref_count to be > 0.
16337
16338         * gtk/gtkclist.c (gtk_clist_set_cell_style): { 0 } initilaize
16339         the requisition.
16340         (gtk_clist_set_shift): likewise.
16341
16342         * gtk/gtklayout.c: introduce gtk_layout_finalize() to unref the
16343         adjustments.
16344
16345         * gtk/gtklist.c (gtk_list_horizontal_timeout): zero initialize the
16346         event before sending it and set send_event to TRUE (which needs to
16347         be done for *all* synthesized events).
16348         (gtk_list_vertical_timeout): likewise.
16349
16350         * gtk/gtktipsquery.c (gtk_tips_query_destroy): plug small memory
16351         leaks.
16352
16353         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set send_event
16354         to TRUE when synthesizing events.
16355
16356 [ *** end of merges from 1.2 *** ]      
16357         
16358 1999-11-21  Tor Lillqvist  <tml@iki.fi>
16359
16360         * gdk/gdkconfig.h: Remove, as this is a file generated by configure
16361         (or copied from gdkconfig.h.win32 on Win32, sigh).
16362
16363         * gdk/gdkprivate.h: Mark gdk_parent_root for export from DLL.
16364
16365         * gdk/gdk.c (gdk_keyval_convert_case): Fix typo.
16366
16367         * gdk/gdkgc.c (gdk_gc_alloc): Remove duplicated line.
16368
16369         * gdk/gdkconfig.h.win32: New file.
16370
16371         * gdk/win32/makefile.cygwin: Build just a static archive here.
16372
16373         * gdk/makefile.cygwin: New file. Get the win32-specific stuff
16374         for the DLL from the static archive built above.
16375
16376         * gdk/gdk.def: Moved here from the win32 subdirectory.
16377
16378         * gdk/win32/*: Adapt for the changed private struct organisation.
16379
16380         * gtk/makefile.{cygwin,msc}: Get gdk library from ../gdk now.
16381
16382 Sun Nov 21 16:44:35 1999  Stefan Jeske  <stefan@gtk.org>
16383
16384         * gtk/gtkspinbutton.c (gtk_spin_button_button_press): Added support 
16385         for wheel mice (buttons 4 and 5).
16386
16387 1999-11-18  Tor Lillqvist  <tml@iki.fi>
16388
16389         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Also for truecolor
16390         drawables use just the pixel field in the foreground and
16391         background GdkColor of the GdkGC.
16392
16393         gdk_gc_set_{fore,back}ground() are called in the GIMP with
16394         GdkColors containing uninitialized (red,green,blue) fields, and
16395         just the pixel field filled in, and furthermore in the
16396         visual-dependent format as returned by gdk_rgb_xpixel_from_rgb().
16397         It thus turns out that we really don't need to have the full
16398         GdkColor for fg and bg in GdkGCWin32Data after all. Will change
16399         it later to have just the pixel values.
16400
16401 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
16402
16403         * docs/gtkfaq.sgml: s/gtk_main_iteration/g_main_iteration/
16404
16405 Sat Nov 13 22:30:29 GMT 1999 Tony Gale  <gale@gtk.org>
16406
16407         * docs/gtkfaq.sgml: threads example from Erik Mouw.
16408         New question on GtkLabel background colors.
16409
16410         * docs/gtk_tut.sgml:
16411           - Correct the example code callback
16412             function definitions.
16413           - Update the gtkdial example code, from Frans van Schaik.
16414           - Update setselection.c to current API.
16415
16416         * examples/Makefile examples/*/*.c: Update to code
16417         listed in tutorial.
16418
16419 1999-11-10  Tor Lillqvist  <tml@iki.fi>
16420
16421         * gdk/win32/gdkfont-win32.c: Fix a couple of bugs. The Unicode
16422         subrange table (from the "Developing International Software for
16423         WIndows 95 and Windows NT" book) was missing the Hangul syllable
16424         block... Get the loaded font's charset correctly.
16425
16426         (Note that this, and the other *-win32.c files, still really are
16427         the old ones, the win32 subdirectory is not ready for compilation
16428         yet after the reorg.)
16429
16430 Wed Nov 10 17:26:49 GMT 1999 Tony Gale  <gale@gtk.org>
16431
16432         * gtk/gtkclist.c: Fix off-by-one bug in parameter
16433         check.
16434
16435 Wed Nov 10 12:12:03 1999  Owen Taylor  <otaylor@redhat.com>
16436
16437         * gdk/x11/gdkinput-{x11,xfree}.c: Call XFreeDeviceState()
16438         on results of XQueryDeviceState().
16439
16440 Mon Nov  8 16:40:43 1999  Owen Taylor  <otaylor@redhat.com>
16441
16442         * gtk/gtkwidget.c: Substitute gdkx.h => gdkprivate.h since
16443         we need to accesss only ->children. We need an accessor
16444         for the children.
16445
16446         * gtk/gtkhandlebox.c gtk/testgtk.c: Substitute G
16447         DK_ROOT_PARENT() => NULL, in call to gtk_window_get_pointer()
16448         to get rid of gdkx.h include.
16449         
16450         * gtk/gtkctree.c: Get rid of #include <gdk/gdkx.h>
16451         and random references to 'None'.
16452
16453         * gtk/gtkclist.c gtk/gtkeditable.c gtk/gtkpreview.c
16454         Get rid of unused #include <gdk/gdkx.h>
16455
16456         * gtk/gtkrc.c gtk/gtkmain.c: Get rid of #include <gdk/gdkx.h>
16457         gdkx.h is _X_ specific stuff. GDK_WINDOWING comes from
16458         gdkconfig.h.
16459
16460 1999-11-08  Tor Lillqvist  <tml@iki.fi>
16461
16462         * gdk/win32/gdkdraw.c
16463         * gdk/win32/gdkfont.c
16464         * gdk/win32/gdkgc.c: Various minor cleanups and bugfixes
16465         following yesterday's changes. (Unrelated to Owen's reorg.)
16466
16467 Mon Nov  8 16:18:25 1999  Owen Taylor  <otaylor@redhat.com>
16468
16469         * gdk/x11/gdkinput-gxi.c: Add missing include,
16470           fix GdkWindowPrivate => GdkDrawablePrivate.
16471
16472         * gdk/x11/gdkinputprivate.h: include <X11/Xlib.h>.
16473
16474         * gdk/x11/Makefile.am (xinput_sources): Add missing
16475         backslash to fix building with --with-xinput=none
16476
16477 Mon Nov  8 14:47:04 1999  Owen Taylor  <otaylor@redhat.com>
16478
16479         Move all X specific code into the x11/ directory.
16480         Aside from shuffling things around, did the following:
16481
16482        * gdk/gdkprivate.h gdk/gdk.h gdk/x11/gdkmain-x11.h: Add
16483          gdk_arg_context_* - a simple argument parsing system
16484          in the style of popt.
16485
16486        * gdk/gdkdrawable.[ch] gdk/gdkprivate.h gdk/gdkwindow.[ch]
16487          gdk/x11/gdkprivate-x11.h:
16488          Remove X specific stuff from GdkDrawable and GdkWindowPrivate - 
16489          add ->klass and ->klass_data fields. The klass_data
16490          field points to an auxilliary structure that is
16491          windowing system dependent.
16492
16493        * gdk/gdkfont.c: Make most of the measurement functions
16494          simply wrappers around gdk_text_extents().
16495
16496        * gdk/gdkfont.c gdk/gdkprivate.h gdk/x11/gdkfont-x11.c: Add a 
16497          _gdk_font_strlen() function that hides the weird
16498          behavior in gtk+-1.[02] where a string is interpreted
16499          differently for 8-bit and 16-bit fonts.
16500
16501        * gdk/gdkevents.c: Add a new function gdk_event_button_generate()
16502          to store common code for synthesizing double/triple
16503          press events.
16504         
16505        * gdk/gdkgc.[ch]: Virtualize in the same way as gdkdrawable.h.
16506          Make all the function that modify an existing GC
16507          simply wrappers around gdk_gc_set_values().
16508          
16509        * gdk/gdkcc.[ch]: Moved into x11/ directory in preparation
16510          for throwing out later.
16511
16512        * gdk/gdkfont.c gdk/gdkimage.c gdk/gdkcolor.c: Change GdkFontPrivate,
16513          GdkImagePrivate and GdkColormapPrivate to have a
16514          windowing system dependent part (GdkFontPrivateX etc.)
16515          that "derives" from the system-independent part.
16516
16517        * configure.in gdk/x11/Makefile.in gdk/x11/gdkinput*.c:
16518          Got rid of the included-source-files for XInput in
16519          favor of automake conditionals. (Which didn't exist
16520          when XInput support was originally added.)
16521
16522        * gdk/gdkrgb.c: Remove the visual id from the debugging
16523          statements since that is X11 specific; print out
16524          type/depth info instead.
16525          
16526
16527 Wed Nov  3 18:14:49 1999  Owen Taylor  <otaylor@redhat.com>
16528
16529         * gdk/x11/gdkfont-x11.c (gdk_font_load): Ref fonts when
16530         loading duplicates of hashed fonts.
16531
16532         * gdk/gdk.c (gdk_keysym_convert_case): rename
16533         gdk_XConvertCase to gdk_keysym_convert_case, allow
16534         results to be NULL in the GTK+ style.
16535
16536         * gdk/gdkcompat.h: Started compatibility header
16537         for renames.
16538
16539 1999-11-07  Tor Lillqvist  <tml@iki.fi>
16540
16541         * gdk/win32/gdkprivate.h: New font private structures, related to
16542         fontsets.
16543
16544         * gdk/win32/gdkfont.c: New functions gdk_font_list_new() and
16545         gdk_font_list_free(). On X11, will just be wrappers to
16546         XListFonts() and XFreeFontNames(). On Win32, the code previously
16547         in gtkfontsel.c is now here.
16548
16549         New function gdk_font_xlfd_create(). On X11 will get the FONT
16550         property of the font (for GDK_FONT_FONTs), or call
16551         XBaseFontNameListOfFontSet (for GDK_FONT_FONTSETs), on Win32
16552         builds a XLFD style name from the font information in the LOGFONT
16553         struct(s).
16554
16555         New function gdk_font_xlfd_free(), which correspondingly frees the
16556         string returned by gdk_font_xlfd_create().
16557
16558         Implement fontsets on Win32. Add a function that iterates over a
16559         wide char string and calls a callback function for each substring
16560         of wide chars from the same Unicode subrange (and thus probably
16561         available in the same real font).
16562
16563         Improve the XLFD emulation a bit.
16564
16565         * gdk/win32/gdkim.c (gdk_nmbstowchar_ts): Small bugfix.
16566
16567         * gdk/win32/gdkevents.c: Workaround for suspected bug on Win2k
16568         Beta3, WM_IME_CHAR messages don't seem to contain the composed
16569         multi-byte char as with the Active IMM on Win9x. Oh well, handle
16570         WM_IME_COMPOSITION with GCS_RESULTSTR instead, use
16571         ImmGetCompositionStringW() to get the composed Unicode chars.
16572
16573         * gdk/win32/gdkgc.c
16574         * gdk/win32/gdkdraw.c: Changes needed because of the font private
16575         struct changes.
16576
16577         * gdk/win32/gdk.def: Add the new functions.
16578
16579 1999-11-04  Tor Lillqvist  <tml@iki.fi>
16580
16581         * config.h.win32: Don't define HAVE_DIMM_H if MSC, as you have to
16582         get the Platform SDK to get <dimm.h>.
16583
16584         * gdk/win32/gdkevents.c: More event handling fixes and
16585         simplification. Never generate motion events with is_hint true. We
16586         used to do that on bogus grounds earlier. Windows sends
16587         WM_MOUSEMOVE messages on button events even if the mouse hasn't
16588         moved, ignore these.
16589
16590         * gdk/win32/gdkfont.c: Load all fonts as (pretended) fontsets.
16591
16592         * gdk/win32/gdkglobals.c
16593         * gdk/win32/gdkprivate.h: Define a typedef for the pointer to
16594         the TrackMouseEvent function, and use it.
16595
16596         * gdk/win32/gdkwindow.c: Terminate widechar string with a zero
16597         char before calling WideCharToMultiByte in order to get a string
16598         for the window title.
16599
16600         * gdk/win32/gdkdnd.c: Some more random hacking, ifdeffed out.
16601
16602         * gdk/win32/gdk.def: Remove obsolete functions.
16603
16604         * gdk/win32/makefile.{cygwin,msc}: Remove gdkcompat.{o,obj}. Add
16605         /nodefaultlib and /defaultlib switches.
16606
16607         * gtk/gtkrc.c: s/gwin_getlocale/g_win32_getlocale/.
16608
16609 1999-10-31  Tor Lillqvist  <tml@iki.fi>
16610
16611         * gdk/gdkkeysyms.h: Add new keysyms from X11R6.4 (including
16612         EuroSign).
16613
16614         * gdk/gdktypes.h: Add note about wchar_t not necessarily being the
16615         same type as GdkWChar, especially on Win32.
16616
16617         * gdk/win32/*.c: Change gdk_root_parent to be a pointer.
16618
16619         * gdk/win32/*.c: Assume all strings are UTF-8. Convert to Unicode
16620         before passing to Windows GDI for drawing etc. Convert to the
16621         system default codepage before passing to Windows as window
16622         titles.
16623
16624         * gdk/win32/gdkprivate.h: Add more fields to GdkWindowPrivate to
16625         support changing input locale on the fly.
16626
16627         * gdk/win32/gdkevent.c: Support input language (keyboard locale)
16628         on-the-fly changes. Convert incoming characters from the current
16629         codepage to Unicode (and then to a UTF-8 multi-byte string) based
16630         on the current input language. Use keysym<->Unicode mapping tables
16631         and functions borrowed from xterm sources.
16632
16633         Support IMEs (Input Method Editors) for CJK languages. On non-CJK
16634         editions of Win9x, use the ActiveX-based Active IMM (Input Method
16635         Manager) if available. IMEs and the Active IMM are available under
16636         the disguise of Chinese, Korean and Japanese support for IE and
16637         Outlook Express from "Windows Update" for Win98. On Win2k, the CJK
16638         support is present in all editions (as long as you install it).
16639
16640         Call DispatchMessage from gdk_events_queue() (and thus
16641         gdk_WindowProc()), instead of duplicating the code in
16642         gdk_WindowProc().
16643
16644         Reworked the grab handling and propagation code, factored out
16645         duplicated code snippets into separate functions. Other cleanups,
16646         too.
16647
16648         * gdk/win32/surrogate-dimm.h: Provide just the bits we need from
16649         the <dimm.h> header describing the Active IMM.
16650
16651         * gdk/win32/gdkfont.c: Pretend to support fontsets, but so far
16652         just do the same as for "single" fonts.
16653
16654         * gdk/win32/gdk.c: Call CoInitialize() (COM initialisation) from
16655         gdk_init_check, and CoUninitialize() from gdk_exit_func. Handle
16656         the new keysyms from gdkkeysyms.h.
16657
16658         * gtk/gtkfontsel.c (Win32): Load the font for the preview as a
16659         fontset, so that gtkentry uses wide characters.
16660
16661         * gtk/gtkrc.c (Win32): Get the locale with gwin_getlocale(). Call
16662         GTk+'s system directory "gtk+", not "gtk".
16663
16664 Sat Oct 30 13:17:18 BST 1999 Tony Gale <gale@gtk.org>
16665
16666         * docs/gtkfaq.sgml: FAQ update
16667
16668 1999-10-21  Tor Lillqvist  <tml@iki.fi>
16669
16670         * gdk/win32/gdkprivate.h: Add more font private data.
16671
16672         * gdk/win32/gdkfont.c
16673         * gdk/win32/gdkdraw.c: Revamped handling of multi-byte charset
16674         fonts and strings. Now works much better. You still have to
16675         have a correct font selected, though. No fontset emulation yet.
16676
16677 1999-10-19  Tor Lillqvist  <tml@iki.fi>
16678
16679         * gtk/maketypes.awk: Use G_OS_WIN32.
16680
16681         * gtk/gtk.def: Add some missing entry points. Also some non-public
16682         ones, but PyGTK porter claims to need them.
16683
16684         * gtk/makefile.{cygwin,msc}: Drop some unneeded headers from the
16685         built-in type generation.
16686
16687 1999-10-14  Tor Lillqvist  <tml@iki.fi>
16688
16689         * gdk/win32/gdkdraw.c (gdk_draw_text_wc): Don't use TextOutW for
16690         GDK_FONT_FONT fonts (which is all we have for now, we don't
16691         emulate fontsets). The X11 version uses plain XDrawString in that
16692         case, too. The string passed to gdk_draw_text_wc seems to be in
16693         fact (at least, when used by gtkentry and gtktext) either in a
16694         single-byte charset, or a DBCS. Not Unicode.
16695
16696         This fixes the problem in gtkfontsel, where even if you had
16697         selected a font with a non-Latin1 charset (windows-greek, for
16698         instance), the preview still used Latin-1 glyphs.
16699
16700         * gdk/win32/gdkfont.c (gdk_text_width_wc): Similar change. Don't
16701         use GetTextExtentPoint32W, use GetTextExtentPoint32A.
16702         (gdk_font_load): Recognize the demibold etc weights, even if we
16703         don't have the corresponding constants in the headers.
16704         (gdk_font_hash_insert): Use same hash mechanism as in the X11
16705         version. Should save font resources a bit, when we don't have
16706         multiple HFONTs for the same font.
16707
16708         * gdk/win32/gdkprivate.h: Add the names field as in the X11
16709         version.
16710
16711 1999-10-11  ERDI Gergo  <cactus@cactus.rulez.org>
16712
16713         * gdk/gdk.c (gdk_beep): Modified the XBell call to use the default
16714         X values
16715
16716 1999-10-09  ERDI Gergo  <cactus@cactus.rulez.org>
16717
16718         * gtk/gtktoolbar.h, gtk/gtktoolbar.c: Added horizontal icon/text
16719         layout support (as mentioned on
16720         http://www.jcinteractive.com/gnome-ui/software/widgets/)
16721
16722 Wed Oct  6 12:46:17 PDT 1999 Manish Singh <yosh@gimp.org>
16723
16724         * gtk/fnmatch.c
16725         * gtk/gtkfilesel.c: s/G_HAVE_CYGWIN/G_WITH_CYGWIN/
16726
16727 1999-10-05  Jesus Bravo Alvarez  <jba@pobox.com>
16728
16729         * configure.in (ALL_LINGUAS): Added Galician (gl)
16730
16731 1999-10-05  Tor Lillqvist  <tml@iki.fi>
16732
16733         * gdk/win32/*.[ch]: Corresponding changes as in X11 backend.
16734
16735         * gdk/win32/gdkcompat.c: New file, actually provide an
16736         implementation for the deprecated functions. (Just temporarily.)
16737
16738         * gtk/gtkfilesel.c: Fix an #ifdef syntax botch.
16739
16740         * gtk/makefile.{cygwin,msc}: Update gdk_headers.
16741
16742         * gdk/win32/gdk.def gtk/gtk.def: Updates.
16743
16744 1999-10-05  Kjartan Maraas  <kmaraas@online.no>
16745
16746         * configure.in: Added "uk" to ALL_LINGUAS.
16747         
16748 Mon Oct  4 11:57:11 PDT 1999 Manish Singh <yosh@gimp.org>
16749
16750         * configure.in: correct checking for BeOS check
16751
16752         * gdk/gdktypes.h
16753         * gtk/fnmatch.c
16754         * gtk/gtkfilesel.c
16755         * gtk/gtkitemfactory.c
16756         * gtk/gtkmain.[ch]
16757         * gtk/gtkrc.c: use G_OS_WIN32 and G_HAVE_CYGWIN #defines
16758
16759 Mon Oct  4 16:16:53 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
16760
16761         * gtk/gtkrc.{bg,iso88591[345]}: add gtkrc files for some new charset
16762         encodings: iso-8859-13 (for Lithuanian), iso-8859-14 (used by celtic
16763         languages), iso-8859-15 (used in Estonia) and microsoft-cp1251 (used
16764         by Bulgarian). 
16765
16766 Sun Oct  3 18:13:44 1999  Owen Taylor  <otaylor@redhat.com>
16767
16768         * gtk/gtkwidget.c (gtk_reset_shapes_recurse): 
16769         Fix a reference to window_private->destroyed.   
16770
16771         * gtk/gtkplug.c (gtk_plug_realize): Fix up a direct
16772         (ugly) setting of an internal GdkWindow member to use
16773         a _slightly_ cleaner macro.
16774
16775         * gdk/gdkprivate.h: Split GdkWindowPrivate into
16776         GdkDrawablePrivate and GdkWindowPrivate.
16777         Add extra macros for accessing GDK_DRAWABLE_ components.
16778
16779         * *.[ch]: Massive adjustments for the above, use the
16780         new macros in a lot of places.
16781
16782 Sun Oct  3 15:16:24 1999  Owen Taylor  <otaylor@redhat.com>
16783
16784         * gdk/gdktypes.h: Make GdkDrawable the base type,
16785         not GdkWindow.
16786
16787 Sun Oct  3 15:08:44 1999  Owen Taylor  <otaylor@redhat.com>
16788
16789         * gdk/gdkdraw.c (gdk_drawable_get_data): Added new function.
16790
16791 Sun Oct  3 14:26:15 1999  Owen Taylor  <otaylor@redhat.com>
16792
16793         * gdk/gxid* gdk/x11/gxid*: Move files into x11 subdirectory.
16794
16795 Sun Oct  3 14:16:23 1999  Owen Taylor  <otaylor@redhat.com>
16796
16797         * gdk/gdkdrawable.h: Include gdk/gdkdrawable.h with
16798         gdk/ prefix. (Pointed out by chak@is.tsukuba.ac.jp)
16799
16800         * configure.in gdk/Makefile.am x11/: create x-specific subdirectory.
16801
16802         * docs/gtk-config.1: Now autogenerated.
16803         * docs/Changes-1.4.txt: started
16804         
16805 1999-10-03  Tor Lillqvist  <tml@iki.fi>
16806
16807         * gdk/gdkimage.h gdk/gdkpixmap.h: Change GDK_WINDOWING_WIN32 usage
16808         to #ifdef also here.
16809
16810         * gdk/win32/*.h gdk/win32/*.c: Make corresponding changes as those
16811         Owen did to the X11 backend.
16812
16813         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Fix it again, don't use
16814         ScrollWindowEx when blitting inside a window, it can't be correct
16815         in the general case.
16816
16817         * gdk/win32/gdkevents.c: Don't handle WM_SIZING, handling
16818         WM_GETMINMAXINFO is easier.
16819
16820         * gdk/win32/gdkimage.c (gdk_image_new): Create new image with
16821         depth equal to the bitspixel value, not the visual's depth.
16822
16823         * gdk/win32/gdkvisual.c (gdk_visual_init): Set the visual's depth
16824         to 24 even if the bitspixel value is 32.
16825
16826         * gdk/gdkrgb.c (gdk_rgb_select_conv): After the above change, no
16827         need to check for depth==32 when bpp==32, depth will always be 24.
16828
16829 Fri Oct  1 18:03:36 1999  Owen Taylor  <otaylor@redhat.com>
16830
16831         * docs/Changes-1.4.txt: Started
16832         
16833         * gtk/Makefile.am (gdk_headers): Include all the new headers.
16834
16835         * gdk/*.h gdk/*.c: Split gdk.h into lots of itty-bitty little pieces.
16836         
16837         * gdk/gdkprivate.h gdk/gdkcc.c: Moved GdkColorContext private
16838         into C file.
16839         
16840         * gdkinput.h gdkinputprivate.h - renamed the internal gdkinput
16841         header to gdkinputprivate.h.
16842
16843         * gdk/gdk.h gdk/gdk.c: Removed gdk_time* functions which have been
16844         unused since before 1.2.
16845
16846 1999-09-30  Tor Lillqvist  <tml@iki.fi>
16847
16848         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): On Win32,
16849         expand possible hex escapes in the font family (put there by
16850         logfont_to_xlfd if the font name isn't a legal XLFD font family,
16851         mainly if it contains slashes). (gtk_font_selection_create_xlfd):
16852         On Win32, add hex escapes here, too.
16853
16854 Wed Sep 29 19:55:35 1999  Owen Taylor  <otaylor@redhat.com>
16855
16856         * */*.[ch]: Changed from #if GDK_WINDOWING == GDK_WINDOWING_X11
16857         to #ifdef GDK_WINDOWING_X11.
16858
16859 [ Merges from gtk-1-2 ]
16860
16861 Wed Sep  8 07:13:29 1999  Tim Janik  <timj@gtk.org>
16862
16863         * configure.in: fixed "GNU Make" check to pass with new make version
16864         3.77.95.
16865
16866 Fri Sep  3 16:04:41 1999  Tim Janik  <timj@gtk.org>
16867
16868         * gtk-config.in (--version): don't echo @GTK_VERSION@, but
16869         @GTK_MAJOR_VERSION@.@GTK_MINOR_VERSION@.@GTK_MICRO_VERSION@, so the
16870         AM_PATH_GTK() macros don't get confused by the -pre1.
16871
16872 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
16873
16874         * configure.in (REBUILD): Change check for perl5
16875           to check explicitely for v >= 5.002. (5.001
16876           does not work with our scripts.)
16877
16878 Wed Aug 25 15:45:46 1999  Tim Janik  <timj@gtk.org>
16879
16880         * configure.in: evaluate $PERL for the perl version check. added
16881         --disable-rebuilds to give the user an option to completely disable
16882         any source autogeneration rules.
16883
16884 Mon Aug 23 23:16:14 1999  Tim Janik  <timj@gtk.org>
16885
16886         * configure.in: evaluate $ac_make when checking for GNU Make.
16887
16888 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
16889
16890         * docs/Makefile.am: added generation.txt.
16891
16892         * Makefile.am: require automake 1.4, build README from README.in and
16893         INSTALL from INSTALL.in in dist-hook.
16894         
16895         * README.in:
16896         * INSTALL.in: new files to autogenerate README and INSTALL from.
16897
16898         * configure.in: figure whether we have GNU Make
16899
16900         * docs/generation.txt: minor additions/corrections.
16901
16902 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
16903
16904         * docs/gtkfaq.sgml: FAQ Update
16905
16906 July 30, 1999 Elliot Lee <sopwith@redhat.com>
16907         
16908         * configure.in: Fix autoconf warnings about cross compilation by
16909         trying to provide sane defaults for AC_TRY_RUN.
16910
16911 Fri Jul 16 22:20:21 PDT 1999 Manish Singh <yosh@gimp.org>
16912
16913         * ltconfig
16914         * ltmain.sh: upgrade to libtool 1.3.3
16915
16916 Thu Jul  8 11:30:18 1999  Owen Taylor  <otaylor@redhat.com>
16917
16918         * INSTALL: Indicate that the --with-glib= configure
16919         time flag is unsupported.
16920
16921 Mon Jul  5 20:36:03 1999  Owen Taylor  <otaylor@redhat.com>
16922
16923         * docs/generation.txt: Added a file that gives
16924         documenation about the autogeneration process for
16925         various autogenerated files.
16926         
16927 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
16928
16929         * configure.in (LIBS): Look for libgmodule in the
16930         right location.
16931
16932 Thu Jun 17 13:57:31 1999  Owen Taylor  <otaylor@redhat.com>
16933
16934         * docs/gtk_tut.sgml: Removed references to
16935         code examples in my directory on gtk.org as
16936         they should all be in the tutorial now.
16937
16938         * docs/gtk_tut.sgml: Added sources for dial-test
16939         and scribble-xinput programs that were previously
16940         missing.
16941
16942 Fri Jun  4 00:08:59 1999  Owen Taylor  <otaylor@redhat.com>
16943
16944         * TODO: Added entry about menu keyboard navigation, removed
16945         some finished items.
16946
16947 Mon May 31 00:11:24 1999  Owen Taylor  <otaylor@redhat.com>
16948
16949         * acinclude.m4: Standardize on func_dgettext
16950         not func_gettext, so that the checks for dgettext
16951         actually are paid attention to.
16952
16953 Wed May  5 10:47:54 1999  Owen Taylor  <otaylor@redhat.com>
16954
16955         * configure.in (LIBS): Add $INTLLIBS into $LIBS
16956         directly, rather than repeating the checks for
16957         gettext.
16958
16959         * INSTALL: Added information about gettext and
16960         NLS support.
16961
16962         * acinclude.m4 (LIBM): Check for dgettext, not
16963         just gettext. This should hopefully fix things wrt
16964         systems with old versions of GNU gettext installed.
16965
16966 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
16967
16968         * configure.in (LIBS): Look for libgmodule in the
16969         right location.
16970
16971 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
16972
16973         * autogen.sh: add --enable-maintainer-mode
16974
16975         * configure.in: set ACLOCAL="$ACLOCAL $ACLOCAL_FLAGS"
16976
16977 Wed Mar 24 23:03:49 CST 1999 Shawn T. Amundson <amundson@gtk.org>
16978
16979         * docs/gtk-config.1.in:
16980           docs/Makefile.am:
16981           configure.in: gtk-config is now generated.
16982
16983         * docs/gtk-config.1: Removed, now generated.
16984
16985 Thu Sep 23 17:59:59 1999  Tim Janik  <timj@gtk.org>
16986
16987         * gdk/gdkevents.c (gdk_event_translate): grr, even if Gdk doesn't
16988         handle CreateNotify itself, still put out a debuging message for
16989         --gdk-debug=events. made the ReparentNotify debugging message more
16990         verbose.
16991         wrap xcoords translation for ConfigureEvents into an error trap,
16992         a destroy event may already be pending, and in that case, the
16993         actuall coordinate values are not at all critical.
16994
16995 Sat Sep 18 22:24:15 1999  Owen Taylor  <otaylor@redhat.com>
16996
16997         * gdk/gdkcc.c: Stop leaking the color_hash all over
16998         the place. Simplify and improve the logic.
16999
17000 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
17001
17002         * gdk/gdk.h, gdk/gdkcolor.c: make return types (gint or gboolean)
17003         for prototypes and function implementations consistent (reported
17004         by Tomas Ogren).
17005
17006 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
17007
17008         * gdk/gdkevents.c (gdk_event_translate): tell if expose events have
17009         send_event set in debugging output.
17010         (gdk_compress_exposures): default initialize the event so we don't
17011         operate on bogus values (namely send_event).
17012
17013 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
17014
17015         * gdk/gdkwindow.c: When we receive an unexpected
17016         destroy notify on one of our windows, don't just
17017         warn about it, also mark our windows as destroyed.
17018
17019 Sun Sep  5 08:10:53 1999  Owen Taylor  <otaylor@redhat.com>
17020
17021         * gdk/gdkfont.c (gdk_font_hash_insert): Add
17022           name => font and name => fontset hashes. The 
17023           name => fontset hash is a _big_ win since we
17024           weren't previously caching fontsets at all and loading
17025           fontsets is expensive. The name => font hash
17026           is less of a win, but it does save us from doing
17027           repeated XQueryFont calls on the same font.
17028
17029         * gdk/gdkprivate.h (struct _GdkFontPrivate): Add a names
17030           list so we can remove font/fontset from hash.
17031
17032 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
17033
17034         * gdk/gdkproperty.c (gdk_atom_intern): Remove useless
17035           and slightly confusing test. [ XInternAtom (,,TRUE)
17036           will never return None ].
17037
17038 Sat Sep  4 08:39:26 1999  Owen Taylor  <otaylor@redhat.com>
17039
17040         * gdk/gdkwindow.c (gdk_window_set_geometry_hints)
17041           gdk/gdkwindow.c (gdk_window_set_hints):
17042
17043         Don't omit setting the properties if flags == 0 -
17044         there may be an existing set of properties there
17045         already. (Very old bug. Would it be better to
17046         delete the property instead?)
17047
17048         * gdk/gdkselection.c (gdk_selection_property_get): Fix 
17049           spelling error in comment.
17050
17051 Wed Sep  1 14:05:30 1999  Owen Taylor  <otaylor@redhat.com>
17052
17053         * gdk/gdkimage.c (gdk_image_new): Use gdk_error_trap_push()
17054           to avoid stomping over gdk_error_warnings.
17055
17056         * gdk/gdkimage.c (gdk_image_new): compute image->bpp
17057           as (bits_per_pixel + 7) / 8. This gives the same
17058           result as before for multiples of 8, but actually
17059           a "reasonable" value for 1bit or 4bit displays.
17060
17061 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
17062
17063         * gdk/Makefile.am: minor cleanups, strip spaces on build rules for
17064         GNU Make.
17065
17066 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
17067
17068         * gdk/gdkevents.c (gdk_event_translate): give a debugging note when
17069         discarding configure events.
17070
17071 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
17072
17073         * gdk/gdkpixmap.c (gdk_pixmap_unref): g_return_if_fail() the
17074         refcount is greater than zero.
17075
17076         * gdk/gdkwindow.c (gdk_window_unref): Likewise.
17077
17078         * gdk/gdkfont.c (gdk_font_unref): Likewise.
17079
17080         * gdk/gdkgc.c (gdk_gc_unref): Likewise.
17081
17082         * gdk/gdkdnd.c (gdk_drag_context_unref): Likewise.
17083
17084 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
17085
17086         * gdk/gdkproperty.c (gdk_property_get): Fix assumption
17087         that format 32 => sizeof(item) == 4. It really is
17088         sizeof(long).
17089
17090 Tue Jun 29 23:02:42 1999  Owen Taylor  <otaylor@redhat.com>
17091
17092         * gdk/gdk.c (gdk_x_error / gdk_x_io_error): Don't
17093         core dump at all on X IO errors, only core dump
17094         if --enable-debug for X errors.
17095
17096 Thu Jun 24 17:06:23 1999  Tim Janik  <timj@gtk.org>
17097
17098         * gdk/gdkevents.c (gdk_event_translate): removed old ""Got event for
17099         unknown window:" message. disabled ConfigureNotify discarding code,
17100         because it led to events being processed out of order.
17101
17102 Thu Jun 24 12:22:02 1999  Tim Janik  <timj@gtk.org>
17103
17104         * gdk/gdkglobals.c: preinitialize gdk_error_code to 0.
17105
17106         * gdk/gdkevents.c (gdk_event_send_client_message_to_all_recurse): since
17107         we export this function, supress error warnings and don't reset the
17108         error code in the first half of this function.
17109
17110         * gdk/gdk.c (gdk_x_error): set gdk_error_code to the actuall X error
17111         code (instead of just -1) so gdk_error_trap_pop() reveals something
17112         actually informative about the error that happened.
17113
17114         * gdk/*.c:
17115         don't rely on gdk_error_code being -1 if an error occoured, but just
17116         gdk_error_code != 0.
17117
17118 Thu Jun 24 11:50:07 1999  Tim Janik  <timj@gtk.org>
17119
17120         * gdk/gdkevents.c (gdk_event_apply_filters): advance the filter list
17121         pointer *before* invoking the filter function, so we at least don't
17122         crash if a filter is removed that is currently executed. window filters
17123         *really* need to be made truely reentrant at some point.
17124
17125 Mon Jun 14 11:10:15 1999  Tim Janik  <timj@gtk.org>
17126
17127         * gdk/gdkevents.c (gdk_event_translate): print the atom name in the
17128         PropertyNotify debug messages.
17129
17130 Wed May  5 22:51:06 1999  Owen Taylor  <otaylor@redhat.com>
17131         
17132         Patch from Sung-Hyun Nam <namsh@lgic.co.kr>
17133         
17134         * gdk/gdkim.c: Fix cut-and-paste errors for 
17135         x/y and PreeditAttributes/StatusAttributes.
17136
17137 Wed May  5 22:24:21 1999  Owen Taylor  <otaylor@redhat.com>
17138
17139         * gdk/gdkwindow.c (gdk_window_set_geometry_hints): Change
17140         G_MAXINT to 2^16 to alleviate overflow problems in
17141         various window managers.
17142
17143 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
17144
17145         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
17146         for fontsets.
17147
17148 Wed May  5 12:42:01 1999  Owen Taylor  <otaylor@redhat.com>
17149
17150         * gdk/gdkwindow.c (gdk_window_set_geometry_hints):
17151         Initialize size_hints.x and size_hints.y because kwm
17152         brokenly pays attention to them.
17153         (Bug #1181 -  Lars Heete <hel@admin.de>)
17154
17155 Wed May  5 11:38:56 1999  Owen Taylor  <otaylor@redhat.com>
17156
17157         * gdk/gdkrgb.c (gdk_rgb_choose_visual): Free the 
17158         return value of gdk_list_visuals(). 
17159         (Bug #1193 - Morten Welinder <terra@diku.dk>)
17160
17161 Tue May  4 11:12:56 PDT 1999 Manish Singh <yosh@gimp.org>
17162
17163         * gdk/gdkim.c (gdk_im_real_open): cast the return value of
17164         XSetIMValues to (void *) when comparing to NULL, to workaround
17165         the problem of some compilers barfing since older X headers don't
17166         have the prototype for it.
17167
17168 Mon Apr 19 10:11:12 1999  Owen Taylor  <otaylor@redhat.com>
17169
17170         * gdk/gdkcolor.c (gdk_colormap_new): Fix memory leak
17171         for pseudocolor where colormap->colors was double
17172         allocated.
17173
17174         * gdk/gdkcolor.c (gdk_colormap_alloc1): Store the
17175         color value in the hash table with the pixel filled
17176         in so when we do later hash table lookups, the color
17177         value is correct.
17178         
17179 Sun May  2 15:29:45 PDT 1999 Manish Singh <yosh@gimp.org>
17180
17181         * gdk/gdkdraw.c (gdk_draw_lines): check private->destroyed before
17182         making the call
17183
17184 Tue Apr 27 11:17:35 1999  Owen Taylor  <otaylor@redhat.com>
17185
17186         * gdk/gdkdnd.c (xdnd_set_{targets,actions}): Fix leak
17187         pointed out by Morten Welinder <terra@diku.dk>.
17188
17189 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
17190
17191         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
17192           default filter from the list
17193
17194 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
17195
17196         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
17197           default filter from the list
17198
17199 Fri Apr 16 20:41:43 PDT 1999 Manish Singh <yosh@gimp.org>
17200
17201         * gdk/gdk.c: #include "gdkkeysyms.h" for gdk_XConvertCase #defines
17202
17203         * gtk/gtkfontsel.c (gtk_font_selection_create_xlfd): use
17204         g_strdup_printf instead of calcing the length separately
17205
17206 Tue Apr 13 02:49:33 1999  Owen Taylor  <otaylor@redhat.com>
17207
17208         * gdk/gdkwindow.c: removed some silly #ifdef HAVE_CONFIG
17209         that we don't do in many other places. (Fixing duplicate 
17210         #include of config.h)
17211
17212         * gdk/gdkevents.c: include gdkinput.h _after_ config.h.
17213         Otherwise, #ifndef XINPUT_NONE check in the latter
17214         doesn't work. (Bug #546)
17215
17216 Sun Apr 11 14:38:03 1999  Tim Janik  <timj@gtk.org>
17217
17218         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): check for color
17219         "None" case insensitive.
17220
17221 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
17222
17223         * gdk/gdkselection.c: 
17224         Add error traps so if the other end of the connection
17225         dies, we survive.
17226
17227 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
17228
17229         * gdk/gdkdnd.c (gdk_drag_motion): Separate out the
17230         dest_xid field into two fields - one for the window
17231         to send in messages, one to indicate the last looked
17232         up window for caching purposes. This is needed, so
17233         that Leave messages get the correct window.
17234
17235 Mon Apr  5 13:21:30 1999  Owen Taylor  <otaylor@redhat.com>
17236
17237         * gdk/gdkevents.c (gdk_event_check, gdk_event_prepare):
17238         Fix warning created by people mucking around
17239         with the gsource API.
17240
17241         * gdk/gdkevents.c (gdk_io_invoke, gdk_input_add_full):
17242         Change mapping between GIOCondition and GdkInputCondition
17243         to match the way the Linux kernel does it. This should
17244         fix problems where closed pipes were no longer signalling
17245         GDK_INPUT_READ on systems with a native poll().
17246
17247 Mon Apr  5 17:11:57 1999  Owen Taylor  <otaylor@redhat.com>
17248
17249         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): Check 
17250         explicitly for the string "None" - it is in the XPM
17251         spec and some servers treat unknown colors in odd ways
17252         (like asking the user!)
17253
17254 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
17255
17256         * gdk/gdkevents.c: made "->" into a "." of previous change so
17257         it compiles
17258
17259 Thu Apr  1 18:41:25 1999  Owen Taylor  <otaylor@redhat.com>
17260
17261         * gdk/gdkevents.c (gdk_compress_exposures): Set the
17262         window field of the event structure before calling
17263         user filters.
17264
17265 1999-03-31  Federico Mena Quintero  <federico@nuclecu.unam.mx>
17266
17267         * gdk/gdk.c (gdk_init_check): Use False as the last argument to
17268         XInternAtom() here.  This is a particularly Old And Nasty(tm) bug.
17269
17270 Mon Mar 29 17:31:52 1999  Owen Taylor  <otaylor@redhat.com>
17271
17272         * gdk/gdkim.c (gdk_mbstowcs): Free the value of the
17273         intermediate text property - prevents major memory
17274         leak when gdk_use_mb.
17275         gtk-d3august-990311-0: Bj|rn Augustsson <d3august@dtek.chalmers.se>
17276
17277 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
17278
17279         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
17280         gtk-a-higuti-990322-[0-3]
17281
17282         * gdk/gdkfont.c (gdk_text_extents_wc): Make  work when
17283         sizeof(wchar_t) != sizeof (GdkWChar)
17284
17285         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
17286         that was causing -DX_LOCALE not to work.
17287
17288         * gtk/gtkrc.c (gtk_rc_init):
17289         X_LOCALE will never have LC_MESSAGES defined
17290
17291         * gdk/gdk.c (gdk_init_check):
17292         Remove --xim-preedit and --xim-status from argv properly.
17293
17294         * gdk/gdkim.c (gdk_ic_real_new): Add a gdk_flush() so
17295         that the client window is present on the X server
17296         before we pass it to the input method.
17297
17298 Tue Mar  9 10:46:49 1999  Owen Taylor  <otaylor@redhat.com>
17299
17300         * gdk/gdkdnd.c (motif_find_drag_window): Fix bug where
17301         if --display is specified on the command line, than
17302         the drag window will not be created on that display.
17303         
17304 Tue Mar  9 10:38:24 1999  Owen Taylor  <otaylor@redhat.com>
17305
17306         * gdk/gdkproperty.c (gdk_atom_intern): Fixed bug where
17307         lookups with only_if_exists == TRUE were inserting
17308         bogus values into the atom cache.
17309
17310 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
17311
17312         * gdk/gdkselection.c (gdk_selection_property_get): first XFree(t),
17313         then reset it to NULL.
17314
17315         * gdk/gdkcolor.c:
17316         (gdk_colors_free): 
17317         (gdk_colormap_free_colors): use colormap->colors[in_pixels[i]] as the
17318         key for g_hash_table_remove() in both functions, this prevents us
17319         from accessing possibly uninitialized portions of a GdkColor structure
17320         where we are only interested in its pixel value.
17321
17322 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
17323
17324         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
17325         font hash table, if we have a GdkFontPrivate entry for this font
17326         already, simply increment its reference count, provided by Olaf Dietsche
17327         <olaf.dietsche+list.gtk@netcologne.de>.
17328
17329 1999-09-21  Tor Lillqvist  <tml@iki.fi>
17330
17331         * gdk/win32/gdk.c (gdk_exit_func): Delete the gdk_DC when exiting,
17332         just to be sure.
17333
17334         * gdk/win32/gdkvisual.c (gdk_visual_init): Remove a couple of
17335         unused variables, leftovers from the X11 version.
17336
17337         * gdk/win32/rc/*.cur: Better cursors provided by Bernd Herd.
17338
17339         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): Only
17340         downcase fields on X11.
17341
17342 Mon Sep 20 13:17:39 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
17343         
17344         * configure.in,po/pt_BR.po: added Portuguese Brazilian file from
17345         Alex Sandro Queiroz e Silva <asandro@lcg.dc.ufc.br>
17346
17347 1999-09-17  Tor Lillqvist  <tml@iki.fi>
17348
17349         * gdk/win32/gdk.def: Add gdk_threads_mutex.
17350
17351         * gtk/makefile.msc: Correct path to libintl.
17352
17353         Thanks to Tomi Ollila and Bernd Herd: Fix some inconsistencies in
17354         use of gint vs. int, and gint vs. gboolean in headers and
17355         definitions. Use GtkType for the *_get_type functions. Note that
17356         these changes preserve binary compatibility.
17357
17358         * gdk/gdk.c
17359         * gdk/win32/gdk.c
17360         * gdk/gdk.h: Fix inconsistencies: gint vs int.
17361
17362         * gtk/gtkmain.c
17363         * gtk/gtkclist.c
17364         * gtk/gtkmenufactory.c
17365         * gtk/gtknotebook.c
17366         * gtk/gtkwidget.c: Fix inconsistencies, also gint
17367         vs. gboolean.
17368
17369         * gtk/gtkcolorsel.[ch]
17370         * gtk/gtkcombo.[ch]
17371         * gtk/gtkdrawingarea.[ch]
17372         * gtk/gtkgamma.[ch]
17373         * gtk/gtkhandlebox.[ch]
17374         * gtk/gtkhpaned.[ch]
17375         * gtk/gtkhruler.[ch]
17376         * gtk/gtkplug.[ch]
17377         * gtk/gtkpreview.[ch]
17378         * gtk/gtkruler.[ch]
17379         * gtk/gtksocket.[ch]
17380         * gtk/gtkstatusbar.[ch]
17381         * gtk/gtktoolbar.[ch]
17382         * gtk/gtkvbbox.[ch]
17383         * gtk/gtkvpaned.[ch]
17384         * gtk/gtkvruler.[ch]: Always use type GtkType for the *_get_type
17385         functions.
17386
17387         * gtk/gtkgamma.h: Fix bug, missing () in call of
17388         gtk_gamma_curve_get_type() in GTK_GAMMA_CURVE_CLASS. 
17389
17390 1999-09-14  Tor Lillqvist  <tml@iki.fi>
17391
17392         * gdk/gdkcolor.c (gdk_colormap_new)
17393         * gdk/win32/gdkcolor.c (gdk_colormap_new): Fix memory leak:
17394         colormap->colors was allocated twice.
17395
17396         * gdk/win32/gdk.c: Remove some unused stuff.
17397
17398         * gdk/win32/gdkcolor.c (gdk_colormap_sync): Initialize all of the
17399         colormap.
17400
17401         * gtk/gtkfontsel.c (gtk_font_selection_dialog_get_type)
17402         * gtk/gtklabel.h (gtk_label_get_type)
17403         * gtk/gtktipsquery.c (gtk_tips_query_get_type)
17404         * gtk/gtktypeutils.h (gtk_type_name): : Use GtkType
17405         in a couple of places, not guint.
17406
17407 Fri Sep 10 21:31:00 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
17408
17409         * configure.in,po/et.po: added Estonian language file
17410
17411 Wed Sep  1 14:36:12 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
17412
17413         * configure.in,po/da.po: added Danish file
17414
17415 Sun Aug 29 13:38:59 BST 1999 Tony Gale <gale@gtk.org>
17416
17417         * docs/gtkfaq.sgml: Minor FAQ Update
17418
17419 Sat Aug 28 14:34:37 BST 1999 Tony Gale <gale@gtk.org>
17420
17421         * docs/gtkfaq.sgml: FAQ update
17422
17423 1999-08-27  Tor Lillqvist  <tml@iki.fi>
17424
17425         Win32: Philippe Colantoni <colanton@aris.ss.uci.edu> suggests a
17426         way to get window contents continually refreshed while resizing. I
17427         didn't like the effects myself, so it's not on by default.
17428
17429         * gdk/win32/gdkprivate.h: New flag variable
17430         gdk_event_func_from_window_proc, FALSE by default.
17431
17432         * gdk/win32/gdk.c (gdk_init_check): Set above flag if the
17433         environment variable GDK_EVENT_FUNC_FROM_WINDOW_PROC is set, or we
17434         are passed --gdk-event-func-from-window-proc.
17435
17436         * gdk/win32/gdkevents.c (gdk_WindowProc): If above flag is set,
17437         and we have am event_func, call it instead of enqueing the event.
17438
17439 1999-08-23  Tor Lillqvist  <tml@iki.fi>
17440
17441         * gdk/win32/gdkevents.c (gdk_event_translate): Fix from Simon
17442         Kelley: Set expose_count in GdkEventExposes correctly.
17443
17444         * gdk/win32/gdkwindow.c: Remove dead code (#ifdef
17445         MULTIPLE_WINDOW_CLASSES).
17446
17447         * gdk/win32/gdkdraw.c (gdk_draw_line): Workaround from Hans Breuer
17448         for bug in NT, apparently NT *does* draw the end pixel, too, in
17449         LineTo with a one-pixel pen, so we don't have to do it ourselves.
17450
17451 1999-08-21  Tor Lillqvist  <tml@iki.fi>
17452
17453         Improvements by Hans Breuer: 
17454
17455         * gdk/win32/gdkwindow.c (RegisterGdkClass): New function
17456
17457         * gdk/win32/gdkwindow.c (gdk_window_new): Use it. Don't set the
17458         CS_?REDRAW flags as they cause lots of (late) redraws when "show
17459         window contents while dragging" is turned on. Allocate at least
17460         one unique class for every GdkWindowType. If support for single
17461         window-specific icons is ever needed (eg. Dialog specific), every
17462         such window should get its own class.
17463
17464 1999-08-19  Tor Lillqvist  <tml@iki.fi>
17465
17466         * gdk/win32/gdkgc.c (gdk_gc_new_with_values): Fix a cut&paste
17467         error that caused crashes.
17468
17469 1999-08-17  Tor Lillqvist  <tml@iki.fi>
17470
17471         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): When blitting inside one
17472         window, use ScrollWindowEx, and call UpdateWindow. This prevents
17473         bugs when for instance part of the window was outside the
17474         display. Thanks to Philippe Colantoni for finding and fixing this.
17475
17476 1999-08-16  Tor Lillqvist  <tml@iki.fi>
17477
17478         * gdk/win32/gdkdraw.c (gdk_draw_arc): Fix start and end radial
17479         endpoint calculations which were totally wrong. (A little RTFMing
17480         helps a lot ;-)
17481
17482         * gtk/makefile.{cygwin,msc}: Use libintl extracted from glibc
17483         from a separate directory, not from gettext, because of licensing
17484         issues (we want to use the LGPL version).
17485
17486         * README.win32: Mention the intl from glibc vs from gettext issue.
17487
17488 1999-08-13  Tor Lillqvist  <tml@iki.fi>
17489
17490         * gdk/win32/gdkevents.c (gdk_event_translate): Fix a couple of bugs
17491         in the key event handling: Now AltGr chars work again. Also,
17492         now Alt-digits are passed up as well as Control-digits.
17493         Pass keypad plus and minus as normal plus and minus.
17494
17495 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
17496
17497         * docs/gtkfaq.sgml: FAQ Update
17498
17499 1999-07-25  Tor Lillqvist  <tml@iki.fi>
17500
17501         * README.win32
17502         * config.h.win32: Add HAVE_WINTAB. Undefine it if bulding without
17503         the Wintab SDK.
17504
17505         * gdk/win32/gdkinput.c: Hack some more. Still doesn't quite work
17506         OK, but getting closer. Guard against bogus tilt data from Wacom
17507         ArtPad II with the 3.40 driver. Add ifdefs for HAVE_WINTAB to
17508         enable easier building without Wintab.
17509
17510         * gdk/win32/gdkinput.h
17511         * gdk/win32/gdkevents.c 
17512         * gdk/win32/gdkwindow.c: Minor changes related related to above.
17513         
17514         * gdk/win32/gdkvisual.c: Simplify a lot, remove leftovers from X11
17515         code. As we have just one visual on Win32, no sense to have it in a
17516         table, and no need for the hash table.
17517
17518         * gdk/win32/rc/cursor*.cur: Edit some of the cursors a bit to look
17519         better on white background.
17520
17521 1999-07-21  Tor Lillqvist  <tml@iki.fi>
17522
17523         * README.win32: Update gcc build instructions. Mention gettext is
17524         GPL.
17525
17526         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Get correct
17527         supported cursor size with GetSystemMetrics.
17528
17529         * gdk/win32/gdkfont.c
17530         * gtk/gtkfontsel.c: Guard against some font weight and charset
17531         symbols being undefined (in mingw32 headers).
17532
17533         * gdk/win32/makefile.cygwin
17534         * gtk/makefile.cygwin
17535         * gtk/gtkthemes.c: No longer need to have differently named
17536         gcc-built DLLs when using gcc-2.95 and -fnative-struct.
17537
17538 hu Jul 15 13:33:15 BST 1999 Tony Gale <gale@gtk.org>
17539
17540         * docs/gtkfaq.sgml: Long awaited FAQ update.
17541
17542 1999-07-15  Tor Lillqvist  <tml@iki.fi>
17543
17544         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Implement
17545         it. Obscure bit manipulation needed.
17546
17547         * gdk/win32/gdkevents.c: Logging.
17548         
17549         * gtk/gtkthemes.c (gtk_theme_engine_get): (Win32) Use new DLL naming
17550         style (file name include compiler name) for theme engines.
17551
17552 1999-07-13  Tor Lillqvist  <tml@iki.fi>
17553
17554         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Less logging verbiage.
17555
17556         * gdk/win32/gdkevents.c: Fix long-standing bug in key
17557         events. The key.string wasn't zero-terminated, still we strdup'ed
17558         it in gdk_event_copy(). Synthesize crossing events for button
17559         events before possible propagation.
17560
17561         * gdk/win32/gdkwindow.c: Log gdk_window_set_title.
17562
17563         * gdk/win32/makefile.cygwin
17564         * gtk/makefile.cygwin: Use new DLL naming style for the
17565         GCC-compiled ones.
17566
17567         * gdk/win32/makefile.msc
17568         * gtk/makefile.msc: Cosmetics mostly.
17569
17570         * gtk/gtk.def: Add missing entry points.
17571
17572         * gtk/gtksocket.c: Add dummy gtk_socket_get_type() for Win32.
17573
17574 1999-07-09  Tor Lillqvist  <tml@iki.fi>
17575
17576         * gdk/win32/gdkdraw.c (gdk_draw_arc): Don't draw anything if width
17577         or height is zero. Don't print a warning if Pie or Arc fails, they
17578         always fail (?) for very narrow ellipses.
17579
17580         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Call InvalidateRgn for
17581         the part or the destination window corresponding to source area
17582         outside of the source drawable's boundary.
17583
17584         * gdk/win32/gdkdraw.c (gdk_draw_lines, gdk_draw_polygon): Don't do
17585         anything if less than two points.
17586
17587         * gdk/win32/gdkselection.c (gdk_selection_owner_get): Always
17588         return NULL. Gtk cut-and-paste inside a single program works
17589         better this way. (It always gets the clipboard contents from
17590         Windows, not from its own copy, which is cleared anyway. I can't
17591         say I fully understand what happens... Emulating the X selection
17592         and property stuff is a bit of a mess.)
17593
17594         * gdk/win32/gdkevents.c
17595         * gdk/win32/gdkproperty.c: A bit more verbose logging.
17596
17597         * gdk/win32/gdkregion.c: Fix some memory leaks (temporary regions
17598         that never got deleted). Revamp gdk_region_shrink.
17599
17600         * gdk/win32/gdkregion.c: Fix memory leak, delete temporary regions
17601         after use.
17602
17603         * gtk/gtk.def: Add some missing entry points.
17604
17605         * gtk/gtkrc.c: Strip trailing directory separator from pixmap path
17606         component.
17607
17608 1999-07-04  Tor Lillqvist  <tml@iki.fi>
17609
17610         * gdk/win32/gdkevents.c (gdk_event_translate): Handle
17611         Control-digits specially.
17612
17613 1999-07-03  Tor Lillqvist  <tml@iki.fi>
17614
17615         * gtk/makefile.{cygwin,msc}: New pthreads version. Use gettext.
17616
17617 1999-06-28  Tor Lillqvist  <tml@iki.fi>
17618
17619         * gdk/win32/gdkimage.c (gdk_image_get): bpl was set wrong for
17620         bitmaps, should be multiple of 4. (Thanks to Hans Breuer for
17621         finding this.)
17622
17623 1999-06-01  Jose H Mercado  <jmercado@mit.edu>
17624
17625         * gtk+.spec.in: Corrected some typos in files section.
17626         
17627 1999-06-15  Tor Lillqvist  <tml@iki.fi>
17628
17629         * README.win32: Mention using GNU gettext.
17630         * config.h.win32: Enable NLS stuff.
17631         * gtk/makefile.msc: Use GNU gettext.
17632         * gdk/win32/gdkdnd.c: Minor header reorg.
17633         * gdk/win32/{gdkevents,gdkwindow}.c: No semantic changes, mainly
17634         cosmetics.
17635         * gtk/gtkrc.c (Win32): Make get_gtk_sysconf_directory() public.
17636         * gtk/gtkmain.c (Win32): Use it in bindtextdomain() call.
17637
17638 Wed Jun  2 11:44:25 PDT 1999 Manish Singh <yosh@gimp.org>
17639
17640         * acinclude.m4
17641         * config.guess
17642         * config.status
17643         * ltconfig
17644         * ltmain.sh: upgrade to libtool 1.3.2 (BeOS changes merged)
17645
17646 1999-05-30  Tor Lillqvist  <tml@iki.fi>
17647
17648         * gdk/win32/gdkwindow.c: AdjustWindowRectEx2 renamed to
17649         SafeAdjustWindowRectEx. Don't override all calls to
17650         AdjustWindowRectEx by it, but use it only in two places: When
17651         creating a new top-level window and when moving a top-level
17652         window.
17653
17654         Use screen coordinate rectangle, not client rectangle, in
17655         gdk_window_move. Thus SafeAdjustWindowRectEx will do its job only
17656         when we try to place a window so that the decoration (mainly,
17657         title bar) isn't visible.
17658
17659         These changes fix the bug that showed up for instance as the
17660         GIMP's saved top-level windows moving right and down (by an amount
17661         equal to the window decoration) for each session. This bug showed
17662         up also in testgtk's "Saved Position".
17663
17664         gdk_window_resize also redone a bit.
17665
17666 1999-05-25  Tor Lillqvist  <tml@iki.fi>
17667
17668         * gtk/testgtkrc: Add (commented out) Windows-style theme
17669         include line.
17670
17671         * gdk/win32/gdk.def,gtk/gtk.def: Add some missing entry points.
17672
17673 1999-05-18  Tor Lillqvist  <tml@iki.fi>
17674
17675         * gdk/win32/makefile.{cygwin,msc}: Copy our gdkprivate.h and
17676         gdkx.h to a gdk subdirectory, so that applications can include
17677         these with <gdk/*.h> without trouble.
17678
17679         * gdk/win32/gdkimage.c (gdk_image_new_with_depth): Code simplified.
17680         (gdk_image_destroy): Plug resource leak, some GdkImages didn't
17681         have their bitmap destroyed.
17682
17683         * gdk/win32/gdk.def: Add gdk_root_parent.
17684
17685 Wed May 12 03:00:56 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
17686
17687         * configure.in
17688           gtk-config.in
17689           ltconfig
17690           ltmain.sh     
17691           gtk/Makefile.am: changes to compile nicely (with xlib) 
17692           on BeOS
17693
17694 Sat May  1 15:04:42 PDT 1999 Manish Singh <yosh@gimp.org>
17695
17696         * acinclude.m4
17697         * config.guess
17698         * config.sub
17699         * ltconfig
17700         * ltmain.sh: upgrade to libtool 1.3
17701
17702 Fri Apr 30 13:38:16 1999  Lars Hamann  <lars@gtk.org>
17703
17704         * gtk/gtkclist.c:
17705         * gtk/gtkctree.c: merges from gtk-1-2
17706
17707 1999-04-25  Tor Lillqvist  <tml@iki.fi>
17708
17709         Support added for building using a GNU toolchain on Win32,
17710         gcc -mno-cygwin (egcs-1.1.2) on cygwin-b20.1.
17711
17712         * gdk/win32/makefile.cygwin gtk/makefile.cygwin: New files.
17713         * config.h.win32: Changes for gcc.
17714         * gdk/gdkrectangle.c: Include gdk.h as <gdk/gdk.h>.
17715         * gdk/gdkcolor.c: config.h.win32 already defines strcasecmp.
17716         * gdk/win32/gdkconfig.h: Only the MS compiler has wctype.h.
17717         * gdk/win32/gdkdnd.c: Protect (unused) OLE2 stuff better.
17718         Protect shl stuff unavaiilable with mingw32 headers.
17719         * gdk/win32/gdkevents.c: Fix typo.
17720         * gdk/win32/gdkglobals.c: Use GDKVAR here also for gcc.
17721         * gdk/win32/gdkim.c: Use OEM code page for multibyte chars. (?)
17722         * gdk/win32/gdkinput.c: Use __try __except only with the MS compiler.
17723         * gdk/win32/gdkprivate.h: Make up for some stuff missing from
17724         the mingw32 headers.
17725         * gdk/win32/makefile.msc: Use latest Wintab kit and glib.
17726         * gtk/gtkfilesel.c: Include <glib.h> early, to get stat->_stat
17727         definition on Win32. Test for NATIVE_WIN32, not _MSC_VER.
17728         * gtk/gtkfontsel.c: Protect CHARSET redefinition on Win32.
17729         Test for NATIVE_WIN32, not _MSC_VER.
17730         * gtk/gtkmain.c: No use warning about developer version on Win32,
17731         there aren't any non-developer versions anyhow.
17732         * gtk/gtkrc.c: Test for NATIVE_WIN32, not _MSC_VER.
17733         * gtk/makefile.msc: Use pthread from another directory. Minor other
17734         changes. 
17735
17736 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
17737
17738         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
17739           default filter from the list
17740
17741 Mon Mar  8 12:52:53 1999  Owen Taylor  <otaylor@redhat.com>
17742
17743         * gtk/gtkwidget.c (gtk_widget_grab_default): Add a warning
17744          when gtk_widget_grab_default() is called for a widget that
17745          is not within a GtkWindow.
17746
17747 Sat Apr 10 13:52:54 BST 1999  Tony Gale <gale@gtk.org>
17748
17749         * docs/gtk_tut.sgml, examples/clist.c: use a
17750           scrolled window in the clist example. Minor
17751           tutorial fixes.
17752
17753 Fri Apr  2 09:19:20 BST 1999  Tony Gale <gale@gtk.org>
17754
17755         * docs/gtk_tut.sgml: Style check from David King
17756           <dking@youvegotmail.net>
17757
17758 1999-03-30  Pavel Machek  <pavel@artax.karlin.mff.cuni.cz>
17759
17760         * gtk/gtkfontsel.c (gtk_font_selection_get_fonts): Make code
17761         compile with unknown value of GDK_WINDOWING
17762
17763 1999-03-28  Raja R Harinath  <harinath@cs.umn.edu>
17764
17765         * gdk/Makefile.am (gdkconfig.h): Make sure `gdkconfig.h' exists
17766         after the rule is fired.
17767         (install-exec-local): Install gdkconfig.h only if the contents are
17768         different from the currently installed gdkconfig.h.
17769
17770 1999-03-26  Raja R Harinath  <harinath@cs.umn.edu>
17771
17772         * gdk/Makefile.am (configexecincludedir): Rename from 
17773         configincludedir so that gdkconfig.h will be installed 
17774         as part of `make install-exec'. 
17775
17776 Fri Mar 19 16:50:33 PST 1999 Manish Singh <yosh@gimp.org>
17777
17778         * acinclude.m4
17779         * config.guess
17780         * config.sub
17781         * ltconfig
17782         * ltmain.sh: upgrade to libtool 1.2f
17783
17784         * autogen.sh: libtool is not required to autogen gtk+
17785
17786         * acconfig.h: remove WITH_SYMBOL_UNDERSCORE (not explictly
17787         needed)
17788
17789 1999-03-18  Tor Lillqvist  <tml@iki.fi>
17790
17791         * gdk/gdktypes.h: Merge in Win32 version: Define macro GDKVAR for
17792         declaring gdk variables exported/imported from the DLL. New image
17793         type enum, GDK_IMAGE_SHARED_PIXMAP, for gdk_imlib. New drag and
17794         drop protocol enums, GDK_DRAG_PROTO_WIN32_DROPFILES and
17795         GDK_DRAG_PROTO_OLE2.
17796
17797         * gdk/gdk.h: Merge in Win32 version: Two new functions,
17798         gdk_pixmap_create_on_shared_image and gdk_image_bitmap_new. So far
17799         declared only for the Win32 version, but could be in the X11
17800         version as well. (Needed for a Xlib-less gdk_imlib.)
17801         gdk_color_hash should have only one parameter. Declare
17802         gdk_threads_mutex with GDKVAR.
17803         
17804         * gdk/gdkcolor.c (gdk_color_hash): A hash function should have
17805         just one parameter.
17806
17807         * gdk/gdkimage.c (gdk_image_get): Initialize bpp correctly. Bytes
17808         per pixel, not bits.
17809
17810         * gdk/gdkrgb.c: Mingle includes somewhat. (gdk_rgb_select_conv):
17811         Fetch bpp (which means bits-per-pixel here) from another place on
17812         Win32. Accept also depth==32 (which we might get on Win32) with
17813         bpp==32.
17814
17815         * gtk/{gtkclist,gtkctree,gtkdnd,gtkditable,gtkfontsel,
17816         gtkhandlebox,gtklayout,gtkmain,gtkplug,gtkpreview,gtkrc,
17817         gtkselection,gtksocket,gtkstyle,gtkwidget,gtkwindow}.c:
17818         Include gdx.h from "gdkx.h", not "gdk/gdkx.h", as gdkx.h will be
17819         in the backend-dependent directory, not in the common gdk
17820         directory.
17821
17822         * gtk/testgtk.c: Ditto. Also, don't use ../gdk path to gdk
17823         headers.
17824
17825 Wed Mar 17 05:06:49 1999  Tim Janik  <timj@gtk.org>
17826
17827         * gtk/gtkmain.c (gtk_init_check): tell people that they don't really
17828         want to use the Gtk+ devel version (which is true, and yes - even i am
17829         currently working with the 1.2.x branch). so everyone reading this, you
17830         probably want to issue
17831         cvs checkout -r glib-1-2 glib
17832         and
17833         cvs checkout -r gtk-1-2 gtk+
17834         as your next two comands.
17835
17836 Wed Mar 17 02:49:32 1999  Tim Janik  <timj@gtk.org>
17837
17838         * configure.in: build gtkcompat.h from gtkcompat.h.in instead of
17839         gtkfeatures.h from gtkfeatures.h.in, require GLib 1.3.0.
17840
17841         * gtk/gtkcompat.h.in: combined gtkcompat.h and gtkfeatures.in in this
17842         file. strongly deprecated the GTK_HAVE_* macros, we provide
17843         GTK_CHECK_VERSION() for people that need to check for certain
17844         Gtk+ versions.
17845
17846         * gtk/gtkcompat.h: removed this from CVS.
17847         * gtk/gtkfeatures.h.in: removed this from CVS, gtkfeatures.h was a bad
17848         idea right from the start, it just didn't seem like that back then.
17849
17850 Wed Mar 17 01:46:28 1999  Tim Janik  <timj@gtk.org>
17851
17852         * merges from gtk-1-2:
17853
17854 Tue Mar 16 17:43:33 1999  Tim Janik  <timj@gtk.org>
17855
17856         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc_string): ensure the
17857         item factory class has been created.
17858         (gtk_item_factory_parse_rc): likewise.
17859
17860         * gtk/gtkmenu.c:
17861         keep proper references for old_active_menu_item.
17862         (gtk_menu_reparent): unset the usize of the new parent,
17863         so the menu can sanely be size requested and we don't get nasty screen
17864         artefacts upon next reparentation.
17865         (gtk_menu_motion_notify): set send_event to TRUE if we synthesize an
17866         enter notify. only synthesize enter notifies if the pointer really is
17867         inside the event window.
17868         (gtk_menu_popdown): use gtk_menu_shell_deselect().
17869         (gtk_menu_popup): move the background setting stuff into
17870         gtk_menu_tearoff_bg_copy() so it can be called from other places as well.
17871
17872         * gtk/gtkmenushell.c (gtk_menu_shell_button_press): use
17873         gtk_menu_shell_select_item() to select the new item.
17874         (gtk_menu_shell_deselect): export this function, so gtkmenu.c can
17875         do the right thing for deselection as well.
17876
17877 Sat Mar 15 20:10:33 1999  Tim Janik  <timj@gtk.org>
17878
17879         * gtk/gtkwidget.[hc]:
17880         (gtk_widget_accelerators_locked): return whether a widget's accelerators
17881         are locked.
17882
17883         * gtk/gtkmenu.c (gtk_menu_key_press): don't remove or install new or
17884         existing accelerators if the widget's accelerators are locked.
17885
17886 Sat Mar 14 19:44:05 1999  Tim Janik  <timj@gtk.org>
17887
17888         * gtk/gtkitemfactory.[hc]: allow managing of foreign menu items.
17889
17890         * gtk/gtkmenu.c: truely forward key press and key release events to
17891         the menu widget from the toplevel or tearoff window. we can't simply
17892         connect to that, we need to stop further processing of the events as
17893         well.
17894
17895 Sat Mar 13 13:14:17 1999  Tim Janik  <timj@gtk.org>
17896
17897         * gtk/gtkmenu.c:
17898         (gtk_menu_key_press): pass event->keyval, event->state to
17899         gtk_accelerator_valid, instead of event->keyval twice.
17900         refuse to install single letter accelerators for menus that use
17901         single letter shortcuts.
17902
17903         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): use
17904         gtk_menu_ensure_uline_accel_group().
17905
17906         * gtk/gtkmenu.[hc]: added gtk_menu_ensure_uline_accel_group()
17907         which will always return an uline accel group, made
17908         gtk_menu_get_uline_accel_group() return NULL if the group isn't
17909         yet created.
17910
17911 Mon Mar 15 01:03:27 1999  Lars Hamann  <lars@gtk.org>
17912
17913         * gtk/gtkclist.h (struct _GtkCListColumn): added button_passive flag.
17914
17915         * gtk/gtkclist.c (gtk_clist_column_title_passive):
17916         Leave button sensitive, trap  button_press, button_release,
17917         motion_notify, enter_notify and leave_notify events instead.
17918         (gtk_clist_column_title_active): disconnect event handler.
17919         (gtk_clist_drag_data_get): fixed memory leak. Reported by
17920         Guillaume Laurent <glaurent@worldnet.fr>
17921
17922 Wed Mar 10 23:49:55 1999  Lars Hamann  <lars@gtk.org>
17923
17924         * gtk/gtklayout.c (gtk_layout_adjustment_changed): fixed a few
17925         width/height mixups.
17926
17927         * gtk/gtkctree.c (tree_delete): emit an tree_unselect_row signal
17928         if needed.
17929
17930 Wed Mar 10 00:11:32 1999  Tim Janik  <timj@gtk.org>
17931
17932         * gtk/testgtk.c (create_item_factory): unref the item factory after
17933         window's destruction.
17934
17935         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): keep a reference
17936         count on the menu shell around the menu item's activation, since the
17937         signal emission may cause menu shell destruction.
17938
17939         * gtk/gtkitemfactory.c:
17940         the previous code leaked one accel group per menu. we use
17941         gtk_menu_get_uline_accel_group() now to fix that, and with that
17942         also create the underline accelerator group of the menus only if
17943         required (i.e. an underline accelerator has been specified).
17944         (gtk_item_factory_construct):
17945         (gtk_item_factory_create_item): removed code that would create an
17946         extra accel group for the menu (and leak references).
17947         (gtk_item_factory_create_item): adapted the underline accelerator
17948         installation code to properly feature gtk_menu_get_uline_accel_group().
17949
17950         * gtk/gtkmenu.[hc]: added gtk_menu_get_accel_group() to retrive
17951         menu->accel_group, this may return NULL if the accelerator group
17952         hasn't been set yet.
17953         added gtk_menu_get_uline_accel_group() to retrive the underline
17954         accelerator group of the menu, this will be created on demand
17955         and proper care is taken about its reference count.
17956
17957         * gtk/gtkitemfactory.h:
17958         * gtk/gtkitemfactory.c:
17959         dumped the approach of keeping a widgets by action list on the
17960         factory since the factory<->widget destroy negotiation didn't work
17961         and would be hard to get going at all. instead we keep a list of
17962         GtkItemFactoryItem items on the factory (GtkItemFactoryItems are
17963         persistant throughout a program's life time).
17964         also, i removed the static const gchar *key_* variables, and made
17965         them inline strings (they weren't actually used anyways).
17966         (gtk_item_factory_add_item): update ifactory->items.
17967         (gtk_item_factory_destroy): destroy ifactory->items (and remove
17968         the item factory pointer from the remaining ifactory widgets).
17969         (gtk_item_factory_get_widget_by_action): walk the GtkItemFactoryItem
17970         list to find the widget.
17971         (gtk_item_factory_get_item): new function that works around
17972         gtk_item_factory_get_widget() limitations, this function will only
17973         return menu items, even for <Branch> entries.
17974
17975 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
17976
17977         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
17978         font hash table, if we have a GdkFontPrivate entry for this font
17979         already, simply increment its reference count, provided by Olaf Dietsche
17980         <olaf.dietsche+list.gtk@netcologne.de>.
17981
17982         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
17983         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
17984
17985 Sun Mar  7 06:13:29 1999  Tim Janik  <timj@gtk.org>
17986
17987         * gtk/gtkcontainer.c:
17988         (gtk_container_add_with_args):
17989         (gtk_container_addv):
17990         (gtk_container_add): before adding a child to a conatiner, make sure
17991         it is (default) constructed, this is neccessary because under certain
17992         circumstances the child will get relized and mapped immediatedly, in
17993         which case it has to be constructed already.
17994
17995 Mon Mar  1 17:58:21 1999  Tim Janik  <timj@gtk.org>
17996
17997         * gtk/gtksignal.c (gtk_signal_connect_by_type): count object_signal
17998         values > 1 as TRUE also.
17999
18000 1999-03-16  Tor Lillqvist  <tml@iki.fi>
18001
18002         * README.win32: New file.
18003                 
18004         * configure.in: Check for lstat.
18005
18006         * config.h.win32: Add non-definition of HAVE_LSTAT, just for
18007         completeness.
18008
18009         * gtk/gtkrc.c: If don't HAVE_LSTAT, use stat.
18010
18011         * gtk/gtk.def: Removed CRs.
18012
18013         * gtk/makefile.msc: Correct include path to Win32 GDK version (in
18014         ..\gdk\win32).
18015
18016         * gdk/win32/makefile.msc: Correct upwards relative paths.
18017         
18018 Mon Mar 15 03:38:34 1999  George Lebl  <jirka@5z.com>
18019
18020         * gtk/gtkdnd.c: (gtk_drag_highlight) swap the
18021           gtk_drag_highlight_expose and gtk_drag_highlight_paint since
18022           it was connecting a void function to expose_event and the int
18023           returning function to the draw signal
18024
18025 1999-03-14  Jeff Garzik  <jgarzik@pobox.com>
18026
18027         * configure.in:
18028         Use correct path to libgmodule.la when ref'ing uninstalled copy
18029         of glib.  (Already in stable branch, Bug #417)
18030
18031 1999-03-15  Tor Lillqvist  <tml@iki.fi>
18032
18033         Win32 merge and general portability stuff:
18034                 
18035         * acconfig.h,configure.in: Check for <sys/time.h>.
18036
18037         * gdk/win32: New directory (actually, been there for a while).
18038         
18039         * gtk/fnmatch.c: Include <glib.h> for G_DIR_SEPARATOR, WIN32 and
18040         NATIVE_WIN32, and use these. Always case fold on Win32. No
18041         backslashed escapes on native Win32.
18042
18043         * gtk/{gtk.def,makefile.msc}: New files.
18044
18045         * gtk/Makefile.am: Add above new files.
18046         
18047         * gtk/{gtkaccelgroup,gtkbindings}.c: Include <string.h>
18048         instead of <strings.h>.
18049
18050         * gtk/{gtkcalendar,gtkitemfactory,gtkpreview,gtkrc}.c: Include
18051         config.h. Protect inclusion of <sys/param.h>, <sys/time.h>, and
18052         <unistd.h> appropriately.
18053
18054         * gtk/gtkdnd.c: Merge in Win32 version (which doesn't do much).
18055         Use ABS() (from <glib.h>) instead of abs().
18056         
18057         * gtk/gtkfilesel.c: Moved Win32-specific includes after inclusion
18058         of gtk (and thus glib) headers, so that WIN32 will be
18059         defined. With MS C, include <direct.h> for mkdir prototype.
18060
18061         * gtk/gtkitemfactory.c (gtk_item_factory_callback_marshal): Add
18062         some casts, needed by MS C.
18063
18064         * gtk/{gtklayout,gtkplug}.c: Merge in Win32 version (which isn't
18065         implemented).
18066
18067         * gtk/gtkmain.c: Include gdk/gdkx.h for GDK_WINDOWING. Include
18068         <X11/Xlocale.h> only on X11 platform, otherwise <locale.h>.  Use
18069         G_SEARCHPATH_SEPARATOR_S and g_module_build_path.
18070
18071         * gtk/gtkmain.h: Mark variables for export/import on Win32.
18072                 
18073         * gtk/gtkrange.c (gtk_range_motion_notify): Set mods also in case
18074         the event is not a hint, or its window is not the slider. Needed
18075         on Win32, at least.
18076
18077         * gtk/gtkrc.c: Include config.h and gdk/gdkx.h. Use <locale.h>
18078         unless on X11. Skip \r chars, too. Use G_DIR_SEPARATOR and
18079         G_SEARCHPATH_SEPARATOR(_S). Use g_path_is_absolute. On Win32, use
18080         a subdirectory of the Windows directory as gtk system
18081         configuration directory.
18082
18083         * gtk/gtkselection.c: No chunks on Win32.
18084
18085         * gtk/gtksocket.c: Not implemented on Win32.
18086
18087         * gtk/gtkthemes.c (gtk_theme_engine_get): Use g_module_build_path.
18088
18089         * gtk/makeenums.h: Include gdkprivate.h after gdk.h.
18090
18091         * gtk/maketypes.awk: Declare variables with a macro that expands to
18092         necessary export/import magic in the case of Win32.
18093                 
18094         * gtk/testrgb.c: Use dynamically allocated buffer. Use GTimers.
18095
18096 1999-03-13  Raja R Harinath  <harinath@cs.umn.edu>
18097
18098         * configure.in (gdk_wc): Move widechar tests from `glib' to here,
18099         since those were meant only for gdki18n.h.  
18100         * gdk/gdki18n.h: Include gdkconfig.h and use GDK_* instead of G_*
18101         for widechar tests.
18102         * gtk/Makefile.am (INCLUDES): Add -I../gdk for gdkconfig.h.
18103
18104 1999-03-13  Tor Lillqvist  <tml@iki.fi>
18105
18106         * configure.in acconfig.h: Check for dirent.h and pwd.h. Generate
18107         gdk/gdkconfig.h using similar mechanism as GLib's glibconfig.h.
18108
18109         * gtk-config.in: Add @libdir/gtk+/include (where gdkconfig.h is
18110         installed) to CFLAGS.
18111
18112         * gdk/Makefile.am: Add rules for gdkconfig.h.
18113
18114         * gdk/gdktypes.h: Include gdkconfig.h. Define macros for windowing
18115         APIs.
18116
18117         * gdk/gdkfontsel.c: Don't include Xlib.h, it gets included via
18118         gdkx.h anyway when compiling for X11.
18119         (gtk_font_selection_create_xlfd): Use g_strdup_printf. (In
18120         general): Merge in Win32 version.
18121         
18122         * gtk/gtkfilesel.c: Use g_get_current_dir(). Merge in Win32
18123         version: Use G_DIR_SEPARATOR, g_path_is_absolute, no tilde
18124         expansion (if we don't have HAVE_PWD_H), allow for drive
18125         letters. UNC paths (\\server\share\...) are not handled yet.  Also,
18126         included code from Craig Setera's port to Win32 (the one that uses
18127         X11, and the cygwin dll), even if it probably will be abandoned.
18128
18129         * gtk/gtkfilesel.c: Don't append a * to the pattern to complete if
18130         the user entered one herself.  This way one can complete *.h and
18131         don't get matches on any .help files, for instance.
18132         
18133 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
18134
18135         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
18136         font hash table, if we have a GdkFontPrivate entry for this font
18137         already, simply increment its reference count, provided by Olaf Dietsche
18138         <olaf.dietsche+list.gtk@netcologne.de>.
18139
18140         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
18141         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
18142
18143 1999-03-09  Federico Mena Quintero  <federico@nuclecu.unam.mx>
18144
18145         * gtk/gtkstyle.c (gtk_default_draw_handle): Significantly reduced
18146         the number of calls to gdk_draw_point() (and thus to X) by
18147         clipping the points by hand.
18148
18149         * gtk/gtkhandlebox.c (draw_textured_frame): Actually make use of
18150         the clip parameter.
18151         (gtk_handle_box_paint): Only paint the handle if the expose area
18152         intersects it.
18153
18154 Sun Mar  7 18:46:37 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
18155
18156         * gtk/gtkmain.c (add_dll_suffix): Add this function (OS/2 ver.)
18157
18158 Sun Mar  7 11:43:34 1999  ape@spacetec.no  (Asbjorn Pettersen)
18159
18160         * gtk/gtkthemes.c (gtk_theme_engine_get): Add OS/2 changes.
18161         Added function gen_8_3_dll_name(gchar *name, gchar *fullname).
18162
18163 Fri Mar  5 09:12:24 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
18164
18165         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc): Open file in
18166          textmode (O_TEXT) for OS/2 version.
18167
18168 Sun Feb 28 16:46:02 1999  Stefan Jeske  <stefan@gtk.org>
18169
18170         * gtk/gtkspinbutton.[c,h] gtk/testgtk.c: Added two new signals to 
18171         GtkSpinButton, "input" and "output", to make the output more flexible.
18172         The user has to provide a mapping between adjustment->value and the
18173         output string (and vice versa, if the spin button is editable). 
18174         See testgtk for examples.
18175
18176 Sat Feb 27 01:18:47 1999  Tim Janik  <timj@gtk.org>
18177
18178         * ChangeLog: moved old ChangeLog to ChangeLog.pre-1-2, and started
18179         new one.
18180         
18181         * configure.in: set gtk+ version to 1.3.0.