]> Pileus Git - ~andy/gtk/blob - ChangeLog.pre-2-2
Jul 6 15:38:33 2001 Owen Taylor <otaylor@redhat.com>
[~andy/gtk] / ChangeLog.pre-2-2
1 Fri Jul  6 15:38:33 2001  Owen Taylor  <otaylor@redhat.com>
2
3         * gtk/gtkwidget.c (gtk_widget_class_init):
4         G_SIGNAL_TYPE_STATIC_SCOPE GtkSelectionData to
5         restore some workingness.
6
7         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Fix 
8         handle of window type for input-only windows.
9
10 Thu Jul  5 21:53:46 2001  Owen Taylor  <otaylor@redhat.com>
11
12         * gtk/gtkbbox.[ch] gtk/gtkbox.[ch] gtk/gtk[hv]bbox.c:
13         Patch from Gregory Merchan to add 
14         gtk_button_box_set_secondary(), which separates
15         the child into a separate group from the normal
16         buttons. (#56331)
17
18         * gtk/gtkdialog.c: Make help buttons secondary by
19         default.
20
21         * gtk/gtkbbox.c: Added a child property "secondary".
22
23         * gtk/testgtk.c: Turn on the help button for the 
24         color selector to check that it properly appears
25         as secondary.
26
27 Mon Jul  2 01:09:37 2001  Owen Taylor  <otaylor@redhat.com>
28  
29         * gdk/gdkwindow.[ch] gdk/gdkinternals.h gdk/x11/gdkwindow-x11.c
30         gdk/linux-fb/gdkwindow-fb.c gdk/x11/gdkwindow-x11.c gdk/gdk:
31         Add gdk_set_pointer_hooks() to allow pointer-querying to
32         be hooked by an event record/playback system like GERD.
33         (#56914)
34         
35 Thu Jul  5 08:57:07 2001  Owen Taylor  <otaylor@redhat.com>
36
37         * gtk/gtkwidget.c (gtk_widget_reset_rc_style): Pass
38         in the right value of initial_emission to
39         gtk_widget_set_style_internal (#57091)
40
41 Wed Jul  4 23:17:04 2001  Owen Taylor  <otaylor@redhat.com>
42
43         * gtk/gtkdnd.c (gtk_drag_dest_hierarchy_changed):
44         Make compile.
45
46         * gtk/gtkwidget.c (gtk_widget_reset_rc_style): Fix problem
47         with calling gtk_widget_set_style_internal() with
48         the old style, not the new style. (#56989)
49
50 Wed Jul  4 22:35:40 2001  Owen Taylor  <otaylor@redhat.com>
51
52         * gtk/gtklabel.c gtk/gtkmenubar.c gtk/gtktreeviewcolumn.c
53           gtk/gtkwidget.c:
54         Check GTK_WIDGET_TOPLEVEL(gtk_widget_get_toplevel (widget)),
55         not GTK_WIDGET_GET_ANCESTOR ... see 
56         http://mail.gnome.org/archives/gtk-devel-list/2001-July/msg00072.html.
57         Indicate the best practice in the docs for gtk_widget_get_toplevel().
58
59         * gtk/gtkwidget.[ch]: Expose a private _gtk_widget_hierarchy_changed(),
60         so GtkPlug can give the correct signals when transforming
61         from a child to a toplevel.
62         
63         * gtk/gtkdnd.c (gtk_drag_dest_hierarchy_changed): Handle
64         reparentation correctly.
65
66         * gtk/gtkwidget.c (gtk_widget_propagate_hierarchy_changed):
67         Propagate the previous_toplevel argument down properly.
68
69         * gtk/gtklabel.c (gtk_label_finalize): Fix unrefing
70         of wrong atr list.
71
72         * gtk/gtkplug.[ch]: Add an "embedded" signal.
73
74         * gtk/gtksocket.[ch]: Add "child_added", "child_removed"
75         signals.
76
77         * gtk/gtkplug.[ch] gtk/gtksocket.[ch]: Add 
78         functions gtk_plug_get_id(), gtk_socket_get_id(),
79         to avoid the user having to worry about realization,
80         and gdkx.h.
81
82         * tests/testsocket.c: Extend to try out the new signals
83         and gtk_plug/socket_get_id().
84
85         * gtk/gtklabel.c (gtk_label_set_pattern_internal): Fix
86         setting of underline attributes.
87
88         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Ignore
89         DestroyNotify events from SubstructureNotifyMask
90
91         * gdk/x11/gdkwindow-x11.c (gdk_window_reparent):
92         Switch GDK_WINDOW_TYPE (window) as needed.
93
94         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Clean up,
95         allow creation of toplevel windows as children of
96         foreign windows.
97
98         * gtk/gtkplug.c: Remove hacks involving changing private
99         fields of GdkWindow.
100
101         * gtk/gtkplug.[ch] gtk/gtksocket.c: Work to make 
102         exactly the same signals and notification
103         be emitted for local embedding as for inter-process
104         embedding.
105
106 2001-07-04  James Henstridge  <james@daa.com.au>
107
108         * gtk/gtkliststore.h: add missing gtk_list_store_newv prototype.
109
110 Mon Jul  2 16:53:25 2001  Owen Taylor  <otaylor@redhat.com>
111
112         * gtk/xembed.h gtk/gtkplug.c gtk/gtksocket.c: For
113         XEMBED embedding add a _XEMBED_INFO property to the
114         client with version number and a "mapped" flags.
115         Use the mapped flag instead of the racy MapRequestEvent
116
117         * gtk/gtksocket.c: Clean up the gtk_socket_steal()
118         code to reliably set things (when the child is a passive
119         embedder participating in the XEMBED protocol) intead
120         of just being a hack for embedding non-participating
121         programs. Fix various bugs and race conditions.
122         
123         * gtk/gtksocket.[ch] gtk/gtkplug.[ch]: Make local embedding
124         work by simply making the GtkSocket the gtk parent
125         of the GtkPlug. Set a flag in this case and make
126         the GtkPlug work like a normal container by overriding
127         methods such as check_resize and "chaining past" GtkWindow
128         to GtkBin.
129
130         * gtk/gtkentry.c (gtk_entry_real_activate)
131           gtk/gtkmain.c (gtk_propagate_event): 
132         Eliminate use of gtk_widget_get_ancestor (widget, GTK_TYPE_WINDOW).
133         
134         * gtk/gtkwidget.c (gtk_widget_get_toplevel,
135         gtk_widget_get_ancestor):
136         Explain why gtk_widget_get_ancestor (widget, GTK_TYPE_WINDOW)
137         might not give the expected result and recommend
138         an alternative.
139
140         * tests/testsocket.c tests/testsocket_child.c
141         tests/testsocket_common.c tests/Makefile.am: Extended
142         to test different type of adding plugs to sockets
143         (local,active,passive), and to test mapping/unmapping
144         the plug.
145
146         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Don't
147         mark the window as destroyed until after we
148         called _gdk_windowing_window_destroy().
149         (_gdk_windowing_window_destroy() may use GDK functions
150         on the window.)
151
152         * gdk/x11/gdkinput.c: Remove the check for finalization - 
153         devices can be finalized under some circumnstances.
154  
155         * gdk/x11/gdkinput-x11.c (gdk_input_device_new): Fix 
156         small problem with GDK_TYPE_DEVICE.
157  
158 2001-07-02  Havoc Pennington  <hp@pobox.com>
159
160         * gdk/x11/gdkwindow-x11.c (gdk_wmspec_change_state): fix to 
161         use constants not atoms.
162
163 2001-07-02  James Henstridge  <james@daa.com.au>
164
165         * gtk/gtktextview.c (gtk_text_view_class_init): same here for
166         PANGO_TYPE_TAB_ARRAY.
167
168         * gtk/gtktexttag.c (gtk_text_tag_class_init): same here, but also
169         for PANGO_TYPE_TAB_ARRAY.
170
171         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_class_init):
172         s/GTK_TYPE_PANGO_FONT_DESCRIPTION/PANGO_TYPE_FONT_DESCRIPTION/
173
174         * gtk/gtk-boxed.defs: move all the boxed definitions to the top of
175         the file.  Remove Pango types from defs -- they are now defined in
176         libpango.
177
178 Mon Jul  2 06:35:10 2001  Tim Janik  <timj@gtk.org>
179
180         * gdk/gdkkeys.c (gdk_keymap_class_init): s/signal_newc/signal_new/
181
182         * gtk/gtkobject.c (gtk_object_destroy): invoke
183         g_object_run_dispose().
184
185         * gtk/gtkwindow.c: 
186         * gtk/gtkwidget.c: 
187         * gtk/gtkobject.c:
188         * gtk/gtklist.c: s/shutdown/dispose/ for the GObject
189         method.
190
191 Sat Jun 30 20:44:48 2001  Owen Taylor  <otaylor@redhat.com>
192
193         * gtk/gtktypeutils.c (gtk_type_class): Remove
194         change check for GTK_TYPE_OBJECT derivation to
195         G_TYPE_OBJECTS - it's Tim-approved to use this 
196         for arbitary objects.
197
198         * gtk/gtkwindow.c gtk/gtkcontainer.[ch]: underscore
199         prefix gtk_container_dequeue_resize_handler().
200
201         * gtk/gtkwidget.[ch]: Add a previous_toplevel argument
202         to the hierarachy_changed signal, since you otherwise
203         have to always keep that around.
204
205         * gtk/gtkmenubar.c gtk/gtklabel.c gtk/gtksocket.c: Adapt
206         for extra argument to hierarchy_changed.
207
208 Tue Jun 26 19:39:03 2001  Owen Taylor  <otaylor@redhat.com>
209
210         * gtk/gtkwidget.c (gtk_widget_set_style): Allow %NULL
211         for style to mean "revert to default style"
212
213         * gtk/gtkwidget.[ch] (gtk_widget_set_rc_style,
214           gtk_widget_restore_default_style): Make this functions
215         deprecated aliases for gtk_widget_set_style (widget, NULL).
216
217         * gtk/gtkwidget.[ch]: Remove:
218            gtk_widget_set_default_style ()
219            gtk_widget_push_style ()
220            gtk_widget_pop_style ()
221         These functions interact are overriden by RC files, and
222         thus virtually useless, and complicated.
223
224 Fri Jun 22 18:49:48 2001  Owen Taylor  <otaylor@redhat.com>
225
226         * gtk/gtkrc.c: Add a GtkRcContext structure to hold 
227         most of the previous global variables in gtkrc.c. This is
228         in preparation for multi-head, since each screen can
229         have different GtkSettings and RC information.
230
231         * gtk/gtkrc.[ch]: 
232
233         * gtk/gtkrc.h (struct _GtkRcStyleClass): Add a
234         GtkSettings parameter to GtkRcStyle::parse.
235
236         * gdk/x11/gdkevents-x11.c gtk/gtksettings.c gtk/gtkrc.c: 
237         Add two new settings gtk-theme-name, gtk-key-theme-name,
238         for RC files that are loaded by name after reading
239         the default RC files.
240         
241         * gtk/gtkrc.c: Allow priorities for styles, as wll as
242         bindings.
243
244         * gtk/gtkenums.h gtk/gtkrc.c: Add GTK_PATH_PRIO_THEME,
245         and use it by default for RC files loaded via 
246         gtk-theme-name, gtk-key-theme-name.
247
248         * gtk/gtkiconfactory.c (gtk_icon_source_set_filename)
249         gtk/gtkrc.c (gtk_rc_parse_pixmap_path_string) 
250         tests/testgtkrc: Require pathnames to be absolute.
251
252         * gtk/gtkrc.c gtk/gtkiconfactory.c: Look up the full filename for
253         the source when parsing, since the operation of looking up a
254         pixmap from an RC file depends on the parsing context.
255
256         * gtk/gtkrc.c (gtk_rc_context_reparse_all): Automatically
257         reset RC styles on all widgets when files are reparsed.
258
259         * tests/testgtk.c (create_rc_file) 
260           gtk/gtkwindow.c (gtk_window_read_rcfiles): 
261         Simplify, now that gtk_rc_reparse_all() resets styles on
262         all widgets itself.
263
264         * gtk/gtkmain.c (gtk_get_default_language): Fix broken
265         return value.
266
267         * gtk/gtksettings.[ch] (gtk_settings_install_property[_ch]): Remove
268         GtkSettings argument.
269
270         * gtk/gtksettings.[ch] (gtk_settings_get_default): Rename from
271         gtk_settings_get_global().
272
273         * gtk/gtkwidget.[ch]: Add a function gtk_widget_Get_settings()
274         to get the appropriate GtkSettings for a widget. (For now,
275         just gets the default GtkSetttings.) 
276
277         * gtk/gtkcolorsel.c gtk/gtkentry.c gtk/gtkmenu.c gtk/gtkmenubar.c
278           gtk/gtktextview.c gtk/gtktoolbar.c: Fixes for GtkSettings
279         changes.
280
281         * gtk/gtkrc.[ch]: Add gtk_rc_get_style_by_paths() to allow
282         getting a style for a path without actually having a widget.
283         (Allows using a style for a subpart of a widget, for
284         example.)
285
286         * gtk/gtkrc.[ch]: Add gtk_rc_reparse_all_for_setting() to allow forcing
287         the RC files to be reloaded for just one GtkSettings
288         (not sure how useful this really is.)
289
290         * gtk/gtkrc.h: Deprecate
291         gtk_rc_add_widget_name/widget_class/class_style
292
293 2001-06-30  Alex Larsson  <alexl@redhat.com>
294
295         * gdk/linux-fb/gdkinput-none.c:
296         * gdk/linux-fb/gdkinput.c:
297         * gdk/linux-fb/gdkinputprivate.h:
298         Convert GdkDevice to a GObject.
299
300         * linux-fb/gdkprivate-fb.h:
301         * linux-fb/gdkvisual-fb.c:
302         Convert GdkVisual to a GObject.
303
304 2001-06-29  Alex Larsson  <alexl@redhat.com>
305
306         * gdk/gdkvisual.h:
307         * gdk/gdkcolor.c:
308         * gdk/x11/gdkx.h:
309         * gdk/x11/gdkvisual-x11.c:
310         Convert GdkVisual to a GObject.
311
312         * gdk/gdkinput.h:
313         * gdk/gdkevents.c:
314         * gdk/x11/gdkinputprivate.h:
315         * gdk/x11/gdkinput-gxi.c:
316         * gdk/x11/gdkinput-none.c:
317         * gdk/x11/gdkinput-x11.c:
318         * gdk/x11/gdkinput-xfree.c:
319         * gdk/x11/gdkinput.c:
320         Convert GdkDevice to a GObject.
321
322 Fri Jun 29 22:13:28 2001  Jonathan Blandford  <jrb@redhat.com>
323
324         * gtk/gtktreestore.c (gtk_tree_store_new): changed new_with_types
325         to just plain new, fixing the number of columns, and column types
326         at creation time.
327
328         * gtk/gtkliststore.c (gtk_list_store_new): ditto.
329
330         * gtk/gtkcellrenderertext.c
331         (gtk_cell_renderer_text_set_fixed_height_from_font): FIX the
332         height to a specific font.
333
334         * gtk/gtktreeview.c (gtk_tree_view_is_expander_column): fix brokenness.
335
336         * tests/*c: change to work with new store models.
337
338 2001-06-29  Havoc Pennington  <hp@redhat.com>
339
340        * Throughout: fixes to compile with G_DISABLE_COMPAT
341         (s/g_signal_connectc/g_signal_connect/,
342         s/g_signal_newc/g_signal_new/,
343         s/g_signal_disconnect_by_func/g_signal_handlers_disconnect_by_func/)
344
345 Fri Jun 29 03:14:16 2001  Jonathan Blandford  <jrb@webwynk.net>
346
347         * gtk/gtktreeselection.c (gtk_tree_selection_selected_foreach):
348         add path argument to selection callbacks.
349
350 Fri Jun 29 00:13:34 2001  Jonathan Blandford  <jrb@redhat.com>
351
352         * gtk/gtktreemodel.c (gtk_tree_model_foreach): New function to
353         walk through a model in a depth first manner, with the option to
354         break out.
355
356 Fri Jun  8 18:52:10 2001  Jonathan Blandford  <jrb@redhat.com>
357
358         * gtk/gtktreeview.[hc]: Patch Thomas Broyer from
359         <tbroyer@ltgt.net>. Expander arrows are now attached to a specific
360         column and follow it when draged, rather than a location in the
361         view. "expander_column" property and drawing functions changed
362         accordingly.  Fixes bug #55942.
363
364         (gtk_tree_view_{set,get}_expander_column): Now works with a
365         GtkTreeViewColumn* instead of int.
366
367 Thu Jun 28 22:53:18 2001  Owen Taylor  <otaylor@redhat.com>
368
369         *  gdk/gdk.c gtk/gtktypeutils.c: Fix args to g_type_init(). 
370
371 2001-06-28  Havoc Pennington  <hp@pobox.com>
372
373         * gdk/x11/gdkimage-x11.c (_gdk_x11_get_image): Clip the retrieved
374         image data to the screen, using a server grab to avoid race
375         conditions.
376
377         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): remove 
378         check for NULL return from gtk_image_new_from_stock(), it never
379         returns NULL.
380         (gtk_item_factory_create_item): fix bug where we parsed the stock
381         ID as an inline pixbuf
382
383         * gtk/gtktext.c (gtk_text_key_press): numeric keypad support
384
385         * gtk/gtkspinbutton.c (gtk_spin_button_key_press): numeric keypad
386         support (should be using binding set here)
387
388         * gtk/gtkoptionmenu.c (gtk_option_menu_key_press): numeric keypad
389         support (should be using binding set here)
390
391         * gtk/gtkmenushell.c (gtk_menu_shell_class_init): numeric keypad 
392         support
393
394         * gtk/gtkmenu.c (gtk_menu_class_init): numeric keypad support
395
396         * gtk/gtkmenubar.c (gtk_menu_bar_class_init): numeric keypad
397
398         * gtk/gtklistitem.c (gtk_list_item_class_init): numeric keypad
399
400         * gtk/gtkimcontextsimple.c
401         (gtk_im_context_simple_filter_keypress): keypad
402
403         * gtk/gtkfilesel.c (gtk_file_selection_key_press): keypad 
404
405         * gtk/gtkentry.c (gtk_entry_class_init): numeric keypad fixes
406
407         * gtk/gtkctree.c (gtk_ctree_class_init): numeric keypad support
408
409         * gtk/gtkcolorsel.c (palette_activate): keypad support (of course,
410         should be binding-setted)
411
412         * gtk/gtkwindow.c (gtk_window_class_init): numeric keypad fixes
413
414         * gtk/gtkclist.c (gtk_clist_class_init): numeric keypad fixes
415
416         * gtk/gtkcalendar.c: numeric keypad fixes
417
418         * gtk/gtktextview.c (gtk_text_view_class_init): numeric keypad
419         support
420
421         * gdk/gdkwindow.c (gdk_window_get_clip_region): fix infinite loop
422         screwup
423
424         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha): 
425         clip the render area to the drawable's clip region in advance,
426         so we don't get data from the server that we don't need.
427
428         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
429         check return value of gdk_pixbuf_get_from_drawable(), fall back 
430         to bilevel alpha if we can't get the pixbuf to composite against.
431
432         * gdk/gdkdraw.c (gdk_drawable_get_image): set the image colormap
433
434         * gdk/gdkimage.c (gdk_image_get_colormap): add
435         gdk_image_set_colormap, gdk_image_get_colormap
436
437         * gdk/gdkpixbuf-drawable.c (rgbconvert): Change all converters to
438         take a region of the image, instead of converting the entire
439         image.
440
441         * gtk/gtkwidget.h (struct _GtkWidgetClass): add show_help
442         keybinding signal. Add default bindings for it. Add default
443         handler for show_help that shows the tooltip for the widget.
444
445         * gtk/gtkdialog.c (gtk_dialog_class_init): add binding set and
446         "close" keybinding signal, remove key press handler.
447
448         * gtk/gtktooltips.c (gtk_tooltips_set_colors): Just remove this,
449         it's not our usual practice to leave a deprecated function around
450         with a runtime warning, plus we don't want it to appear in docs,
451         plus if we make them yellow no one will want to change them
452         anyhow.
453
454 Thu Jun 28 23:53:31 2001  Tim Janik  <timj@gtk.org>
455
456         * gtk/gtkwidget.c (gtk_widget_hide): !GTK_OBJECT_DESTROYED() ->
457         GTK_WIDGET_REALIZE() for resize queueing.
458
459         * gtk/gtkmain.c (gtk_main_do_event): !GTK_OBJECT_DESTROYED() ->
460         GTK_WIDGET_REALIZE() for post event delivery destruction upon
461         GDK_DESTROY.
462         
463         * gtk/gtkwidget.c: added GtkWidget::event-after notification signal, to
464         sompensate for former (pre-2.0) connect_after() facility.
465         (gtk_widget_send_expose): 
466         (gtk_widget_event): assert the widget is realized, since event delivery
467         to non-realized widgets is essentially a bug. event handlers should
468         be able to unconditionally rely on widget->window (unless they
469         emit events on their own which can trigger widget destruction).
470         (gtk_widget_event_internal): removed old outdated GTK_OBJECT_DESTROYED()
471         logic. event delivery happens as follows:
472         a) emission of GtkWidget::event (RUN_LAST handler). returns was_handled.
473         b) if !was_handled in (a) and the widget is still realized, emit event-
474            specific signal (RUN_LAST handler). returns was_handled.
475         c) emission of GtkWidget::event-after for notification if the widget is
476            still realized (regardless of was_handled from previous stages, no
477            class handler). no return value.
478         d) was_handled gets passed on to caller, to determine further
479            propagation. if the widget got unrealized meanwhile, was_handled
480            is returned as TRUE.
481
482         * gdk/gdkevents.[hc]: added gdk_event_get_root_coords() and
483         gdk_event_get_coords().
484
485 Thu Jun 28 17:18:41 2001  Tim Janik  <timj@gtk.org>
486
487         * configure.in (GTK_MICRO_VERSION): up version to 1.3.7, interface
488         age 0, binary age 0. depend on glib 1.3.7.
489
490         * gtk/gtkcontainer.c: remove g_signal_handlers_disconnect_by_func() hack.
491
492         * gtk/gtkmenubar.c: same here.
493         
494         * gtk/gtkcontainer.c (gtk_container_focus_tab): fix param-spec retrival.
495
496         * gtk/gtkcolorsel.c (gtk_color_selection_init): fix connect_data() usage.
497
498         * gtk/gtkentry.c (gtk_entry_focus_in): same here.
499         
500         * gtk/gtkmenubar.c (add_to_window): likewise.
501         
502         * gtk/gtktextbtree.c: and here...
503         
504         * gtk/gtktextview.c (gtk_text_view_ensure_layout): same thing.
505         
506         * gtk/gtktoolbar.c (gtk_toolbar_init): once more.
507         
508         * gtk/gtktreemodel.c (connect_ref_callbacks): and another time.
509         
510         * gtk/gtktreeviewcolumn.c:
511         (_gtk_tree_view_column_set_tree_view): yet again.
512
513         * demos/gtk-demo/images.c (progressive_timeout): demonstrate
514         signal connections without g_signal_connect_data().
515         
516         * demos/gtk-demo/stock_browser.c (do_stock_browser): second
517         demo of the matter.
518         
519         * demos/testpixbuf.c (main): running out of equality phrases for the
520         ChangeLog, but had to adapt connections here as well.
521         
522         * demos/testanimation.c (progressive_timeout): and for the fun of it,
523         tackled this the same way.
524         
525         * tests/testtext.c (create_view): ok, it's becoming a pain at this
526         point, but had enough enery for one more fix.
527
528         * tests/testtreecolumns.c (main): stand up man, do your work!
529
530         * tests/testtreeview.c (set_columns_type): ok, this is the last file i
531         fix, either that's been all of it or CVS gtk is broken yet again.
532         
533 2001-06-29  James Henstridge  <james@daa.com.au>
534
535         The following changes correspond to bug #56812
536
537         * gdk/gdkinput.h, gdk/gdkevents.c (GDK_TYPE_DEVICE): register type
538         code for GdkDevice.
539
540         * gdk/gdkcursor.[ch] (GDK_TYPE_CURSOR): register type code for
541         GdkCursor.
542
543 2001-06-19  Havoc Pennington  <hp@pobox.com>
544
545         * gdk/x11/gdkwindow-x11.c (gdk_window_show_unraised): new function
546         for mapping a window without fooling with stacking order, but
547         updating the "withdrawn" flag
548
549         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Do event
550         filtering as soon as possible, moving move resize and wmspec_check
551         handling after the event filter.  Make default filter apply to all
552         events, not just those with no GdkWindow wrapped around the X
553         window. Fix a FIXME about how the window could be a pixmap using 
554         RTTI; this of course assumes GDK_IS_WINDOW() is optimized. 
555
556         Also, be robust against events not on a known GdkWindow.
557
558         * gdk/x11/gdkmain-x11.c (gdk_x11_grab_server,
559         gdk_x11_ungrab_server): export reference-counted server grabs, so
560         other people can grab server over a GDK function that also does
561         so.
562
563 Wed Jun 27 19:40:31 2001  Jonathan Blandford  <jrb@redhat.com>
564
565         * gtk/gtktreeviewcolumn.c
566         (gtk_tree_view_column_pack_start_cell_renderer): New function to
567         reflect that you can (hypothetically) pack cell renderers into a
568         column.
569         (gtk_tree_view_column_pack_end_cell_renderer): ditto.
570         (gtk_tree_view_column_cell_is_visible): Move more functionality to
571         the column.
572         (gtk_tree_view_column_cell_can_focus): Move more functionality to
573         the column.
574
575         * gtk/gtktreeview.c: Move to use new column-packing code.
576         (gtk_tree_view_real_expand_row): remove totally braindead code.
577         (gtk_tree_view_real_collapse_row): ditto.
578
579 2001-06-27  Kjartan Maraas  <kmaraas@gnome.org>
580
581         * gtk/gtktreeviewcolumn.c: Fix a typo.
582         
583 2001-06-26  Joel Becker  <jlbec@evilplan.org>
584
585         * gdk-pixbuf/gdk-pixbuf-csource.c: remove '#include "x"' line
586           at the end of the file
587
588 2001-06-26  Havoc Pennington  <hp@redhat.com>
589
590         * gtk/gtkwindow.c (gtk_window_set_policy): forgot a notification
591
592 2001-06-26  Havoc Pennington  <hp@redhat.com>
593
594         * gtk/gtkwindow.c (gtk_window_class_init): add "resizable"
595         property
596
597 Tue Jun 26 12:59:28 2001  Jonathan Blandford  <jrb@redhat.com>
598
599         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_set_model): fix
600         stupid missing statement
601
602         * gtk/gtktreeview.c (gtk_tree_view_set_destroy_count_func): New
603         private function for ATK.  It notifies you of how many _visible_
604         children are deleted when a node is deleted.  Should be used by
605         atk only.
606
607 Tue Jun 26 11:06:34 2001  Owen Taylor  <otaylor@redhat.com>
608
609         * gtk/gtkclist.c gtk/gtkentry.c gtk/gtkspinbutton.c:
610         Use new pango_context_get_metrics() to fix problems
611         with font lists in descriptions. (#56184, reported by
612         Jonas Borgström)
613
614 Tue Jun 26 10:04:30 2001  Tim Janik  <timj@gtk.org>
615
616         * gtk/gtkiconfactory.c:
617         * gtk/gtkitemfactory.c: use gdk_pixbuf_new_from_stream(). fixed up
618         item factory so inlined pixbufs actually work.
619
620 2001-06-25  Havoc Pennington  <hp@redhat.com>
621
622         * gtk/gtktreeviewcolumn.h, gtk/gtktreeviewcolumn.c:
623         s/RESIZEABLE/RESIZABLE/
624
625         * gtk/gtkwindow.c, gtk/gtkwindow.h: s/resizeable/resizable/
626
627 2001-06-25  Alexander Larsson  <alexl@redhat.com>
628
629         * configure.in:
630         Added --enable-fbmanager. This is some experimental code
631         that lets several GtkFB apps coordinate their access to the
632         framebuffer.
633         
634         * acconfig.h:
635         Added ENABLE_FB_MANAGER.
636
637         * gdk/linux-fb/Makefile.am:
638         Added gdkfbmanager and gdkfbswitch.
639
640         * gdk/linux-fb/gdkkeyboard-fb.c:
641         * gdk/linux-fb/gdkmouse-fb.c:
642         * gdk/linux-fb/gdkprivate-fb.h:
643         Split device init and open so that
644         they can be opened and closed while switched
645         away.
646
647         * gdk/linux-fb/gdkmain-fb.c:
648         Add the basic manager communication.
649
650         * gdk/linux-fb/gdkrender-fb.c:
651         Don't update to the shadow fb if we're
652         blocked by the fb manager.
653
654 Sun Jun 24 22:15:16 2001  Owen Taylor  <otaylor@redhat.com>
655
656         * docs/Changes-2.0.txt: Add note about child property
657         changes.
658
659 Sun Jun 24 21:34:32 2001  Owen Taylor  <otaylor@redhat.com>
660
661         * gtk/gtkenums.h gtk/gtkiconfactory.c: Add a special size for
662         drag-and-drop GTK_ICON_SIZE_DND (Default to 32x32)
663
664         * gtk/gtkdnd.c (gtk_drag_dest_set_target_list): Fix problem
665         with un'reffing wrong list reported by Jeff Franks.
666
667         * gtk/gtkdnd.[ch] (_gtk_drag_{source,}dest_handle_event): _prefix.
668
669         * gtk/gtkdnd.c (gtk_drag_set_icon_default): Use GTK_STOCK_DND
670         for the default icon. Remove inline XPM.
671
672         * gtk/gtkstock.h gtk/gtkiconfactory.c:
673         Add GTK_STOCK_DND GTK_STOCK_DND_MULTIPLE (Currently, stock_new
674         is used for GTK_STOCK_DND, but it is a bit too small.)
675
676         * gtk/stock-icons/stock_dnd_multiple.png
677         gtk/stock-icons/Makefile.am: New stock icon moved from gnome-libs.
678
679         * gtk/gtkdnd.c (gtk_drag_source_event_cb): Only return
680         TRUE when starting a drag. In other cases, we are
681         just observing. (#52995)
682
683         * gtk/gtkdnd.[ch] (gtk_drag_set_icon_{stock,pixbuf}): Add 
684         function to set the icon for a drag from a GdkPixbuf
685         or stock ID.
686
687         * gtk/gtkdnd.[ch] (gtk_drag_source_set_icon_{stock,pixbuf}): 
688         Likewise, for drag sources.
689
690         * gtk/gtkdnd.h: Deprecate gtk_drag_set_default_icon.
691         (Now should be done using the stock system.)
692
693 Sun Jun 24 12:06:47 2001  Owen Taylor  <otaylor@redhat.com>
694
695         * gtk/gtktextview.[ch] (gtk_text_view_set_text_window_size): 
696         Removed - didn't work and not particularly useful anyways
697         if it did. 
698
699 Sun Jun 24 11:29:35 2001  Owen Taylor  <otaylor@redhat.com>
700
701         * gdk/x11/gdkimage-x11.c (gdk_image_new): Fix stupid error
702         introduced last night that was making things decidedly not work.
703
704         * gtk/*.[ch]: Patch from Kristian Rietveld adding 80 getters
705         so that we have getter/setter pairing everywhere it makes
706         sense. (#55767)
707
708         * gtk/gtkradiobutton.[ch] gtk/gtktoolbar.c tests/testgtk.:
709         Rename gtk_radio_button_group to gtk_radio_button_get_group, add a
710         deprecated compat macro. (#55516)
711
712         * gtk/gtklabel.[ch]: Add functions
713         gtk_label_set/get_use_underline(), gtk_label_set/get_use_markup(),
714         gtk_label_set_label(), which mirror the property API for GtkLabel.
715         Make gtk_label_get_attributes() only reflect the attributes
716         set by gtk_label_set_attributes.
717
718         * gtk/gtknotebook.c (gtk_notebook_set_current_page) gtk/gtkcompat.h: Rename
719         from gtk_notebook_set_page().
720
721 Sat Jun 23 18:02:46 2001  Owen Taylor  <otaylor@redhat.com>
722
723         * configure.in: Fix tests for XShm.h.
724
725         * gdk/x11/gdkimage-x11.c: Cleanup error handling in
726         gdk_image_new() by use of goto, properly use g_object_unref().
727
728 Sat Jun 23 22:03:20 2001  Tim Janik  <timj@gtk.org>
729
730         * gdk/x11/gdkimage-x11.c (gdk_image_init): disabled g_free (image)
731         calls, as GdkImage is an object. these should be g_obejct_unref()
732         instead but that won't work because of the g_error() statement
733         in gdk_x11_image_destroy(). so for now, i did s/g_free/LEAK_IMAGE/
734         to spot these places.
735
736 Sat Jun 23 10:27:53 2001  Owen Taylor  <otaylor@redhat.com>
737
738         * modules/input/gtkimcontextxim.c: Fixup some problems with 
739         text length handling in error cases.
740
741         * gtk/gtkwidget.c (gtk_widget_size_allocate): Reorder
742         a bit to make test actually warn on attempt to allocation
743         a negative size. (#56101, Matthias Clasen)
744
745 Fri Jun 22 14:06:08 2001  Jonathan Blandford  <jrb@redhat.com>
746
747         * gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): Fix bug
748         noticed by Brian Cameron.
749         (gtk_tree_view_real_expand_row): Fix bug noticed by Brian
750         Cameron.
751
752 2001-06-22  Hans Breuer  <hans@breuer.org>
753
754         * gdk/gdk.def : updated externals
755
756         * gdk/win32/gdkdrawable-win32.c : corrected some casts
757         in GDK_NOTEs
758
759         * gdk/win32/gdkevents-win32.c : use _gdk_windowing_window_get_offsets
760         to translate coordinates to the internal > 16 bit system
761         Try to handle WM_WINDOWPOSCHANGED to get better performance for
762         when moving/resizing
763
764         * gdk/win32/gdkkeys-win32.c : implement gdk_keymap_get_default ()
765         and gdk_keymap_get_direction (). The latter is untested for
766         the RTL case
767
768         * gtk/gtk.def : updated externals
769
770         * gtk/gtkmain.c : gtk_get_default_language () should reurn the result
771         from pango_language_from_string (), not an already freed pointer
772
773         * gtk/stock-icons/stock_menu_sort_ascending.png : PNGs need to be 
774         binary (-kb) to be useable on windoze
775  
776 2001-06-21  Alexander Larsson  <alexl@redhat.com>
777
778         * gdk/linux-fb/gdkfont-fb.c (gdk_font_from_description): 
779         Update to new PangoLanguage changes.
780         
781         * gtk/gtkwindow-decorate.c:
782         * gtk/gtkwindow.[ch]:
783         Added setting argument to gtk_window_set_has_frame ()
784         
785 Thu Jun 21 13:42:01 2001  Owen Taylor  <otaylor@redhat.com>
786
787         * gdk/x11/gdkkeys-x11.c (gdk_keymap_get_direction): Handle
788         the case without XKB properly.
789
790         * gtk/gtkrc.c (gtk_rc_set_default_files): Remove
791         unused gtk_rc_auto_parse variable.
792
793         * gtk/gtkrc.[ch] gtk/gtkstyle.c docs/Changes-2.0.txt:
794         Remove gtk_rc_set_image_loader(), gtk_rc_load_image(), no
795         longer needed with GdkPixbuf.
796
797         * gtk/gtkrc.c (_gtk_rc_init): Make private.
798
799 Fri Jun 15 16:26:12 2001  Owen Taylor  <otaylor@redhat.com>
800
801         * gtk/gtkentry.h: Mark deprecated functions with
802         GTK_DISABLE_DEPRECATED.
803
804 Mon Jun 11 18:15:16 2001  Owen Taylor  <otaylor@redhat.com>
805
806         * gdk/gdk.h: Add missing gdk_rectangle_get_type() prototype.
807
808         * gtk/gtk[hv]scale.c: Include math.h, stdlib.h
809
810         * gdk/gdkpango.h gtk/gtkclist.c gtk/gtkentry.c gtk/gtkmain.[ch]
811           gtk/gtkspinbutton.c gtk/gtkstyle.c gtk/gtktextbuffer.c
812           gtk/gtktextdisplay.c gtk/gtktextiter.[ch]
813           gtk/gtktextlayout.c gtk/gtktexttag.[ch] gtk/gtkwidget.c: Adapt
814           to recent changes in Pango.
815
816         * tests/testgtk.c: Set language tags with gtk_label_set_markup()
817           to test whether the basic engine honors them.
818
819 Thu Jun 21 02:13:40 2001  Tim Janik  <timj@gtk.org>
820
821         * gtk/gtkcontainer.[hc]: added gtk_container_child_set_property() and
822         gtk_container_child_get_property().
823
824 Wed Jun 20 19:19:15 2001  Jonathan Blandford  <jrb@redhat.com>
825
826         * gtk/gtktreeview.c (gtk_tree_view_move_cursor_up_down): clean up
827         (gtk_tree_view_move_cursor_page_up_down): implement.
828
829 Wed Jun 20 05:32:05 2001  Tim Janik  <timj@gtk.org>
830
831         * gtk/gtkspinbutton.c: make maximum digits compile time configurable
832         via MAX_DIGITS and up to 20. 5 was just ridiculously small.
833         don't use automatic fixed size buffer for printf-ing floats, doubles
834         can expand to really _huge_ strings, use g_strdup_printf() instead.
835
836 Wed Jun 20 04:28:24 2001  Tim Janik  <timj@gtk.org>
837
838         * gtk/gtkrange.c (gtk_range_class_init): hum, "adjustment" was a
839         construct property in 1.2 and still needs to be.
840
841         * gtk/gtkwidget.c: "composite_child" is not a settable property.
842
843 Tue Jun 19 19:13:19 2001  Jonathan Blandford  <jrb@redhat.com>
844
845         * gtk/gtkliststore.c (gtk_list_store_clear): 
846         * gtk/gtktreestore.c (gtk_tree_store_clear): New functions to
847         clear a model.
848
849 Mon Jun 18 02:00:49 2001  Tim Janik  <timj@gtk.org>
850
851         * gtk/gtkwidget.c (gtk_widget_get_property): fix PROP_EVENTS.
852
853         * gtk/Makefile.am:
854         * gtk/gtk.h: disabled GtkPacker compilation.
855
856         * gtk/gtkarg.[hc], gtk/gtkargcollector.c: got rid of these.
857
858         * gtk/gtknotebook.c:
859         * gtk/gtktable.c:
860         * gtk/gtkbox.c: ported this over to child properties.
861
862         * gtk/gtksettings.c: fetch class properties via
863         g_object_class_list_properties().
864
865         * gtk/gtkcontainer.[hc]: implemented child properties, got rid of the
866         child arg interface. use gobjectnotifyqueue.c for child property
867         notification.
868
869         * gtk/gtkwidget.[hc]: provide necessary means for container child
870         properties, i.e. ::child_notify signal,
871         gtk_widget_freeze_child_notify(),
872         gtk_widget_child_notify(),
873         gtk_widget_thaw_child_notify().
874
875         * tests/testgtk.c: removed inferior property handling code, for
876         property editing, a generic module should be used, and GLE
877         coincidentally fullfills that purpose.
878
879         * docs/reference/Makefile.am: disabled gtk docs building, gtk-doc
880         needs to be adapted to g_object_class_list_properties() before this
881         builds again.
882
883 Mon Jun 18 20:06:10 2001  Jonathan Blandford  <jrb@redhat.com>
884
885         * gtk/gtktreeview.c (gtk_tree_view_row_expanded): New function to
886         test if a node is expanded.
887
888 Mon Jun 18 19:41:38 2001  Jonathan Blandford  <jrb@redhat.com>
889
890         * gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): Fix bug
891         where collapsing a selected row would result in the cursor/anchor
892         getting screwed up.
893
894 Fri Jun 15 18:53:48 2001  Jonathan Blandford  <jrb@redhat.com>
895
896         * gtk/gtktreesortable.c (gtk_tree_sortable_set_sort_func): Rename
897         gtk_tree_sortable_sort_column_id_set_func.  It's much shorter now.
898         * gtk/gtktreeview.c (gtk_tree_view_sort_iter_changed): WOOO!!!
899         Now I can really reorder/sort all Store widgets.  treesorttest
900         seems to just work now.
901         * gtk/gtklistview.c (gtk_list_store_iter_changed): Whoops.
902         testtreesort worked through a big coincidence all this time.
903         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): Nasty bug fix in nasty
904         code.
905         * tests/testtreecolumns.c: Big 'ol warning at the top letting
906         people know that this code should never ever ever be copied.
907
908 2001-06-15  Jonas Borgström  <jonas@codefactory.se>
909
910         * gtk/gtkwindow.h: Fixed a small typo, it should be
911         GTK_WINDOW_GROUP_GET_CLASS and not GTK_WINDOW_GET_CLASS
912         on line 134.
913
914 2001-06-14  Havoc Pennington  <hp@redhat.com>
915
916         Docs fixups, and:
917         
918         * gtk/gtkcompat.h: remove GTK_DISABLE_COMPAT_H, replace with
919         GTK_DISABLE_DEPRECATED
920
921 Thu Jun 14 19:21:27 2001  Jonathan Blandford  <jrb@redhat.com>
922
923         * gtk/gtktreestore.c (gtk_tree_store_sort_helper): Whoops.  Forgot
924         this a couple months ago.  Now GtkTreeStore sort of sorts.  I'll
925         finish it off tonight, though it basically works now when it's a
926         list.  Also, I have a sinking feeling neither GtkTreeStore or
927         GtkListStore actually resort when adding a new item.  I'll look
928         into it.
929
930 2001-06-14  Havoc Pennington  <hp@redhat.com>
931
932         * demos/gtk-demo/main.c (load_file): fix bug identified by
933         warnings I just added to gtktextbuffer
934
935 2001-06-14  Havoc Pennington  <hp@redhat.com>
936
937         * gtk/gtkwindow.c (window_group_cleanup_grabs): fix other typo
938
939         * gtk/gtkwidget.c (gtk_widget_propagate_state): fix typo
940
941         * gtk/gtktextbtree.c: don't leak node data all over the place.
942
943         * demos/gtk-demo/main.c (main): create fontify tags for the right
944         buffer
945
946         * gtk/gtktextbuffer.c, gtk/gtktexttagtable.c: enhance docs
947         to mention tags in the same table can't have the same name,
948         suggested by Skip Montanaro
949
950 2001-06-11  Havoc Pennington  <hp@redhat.com>
951
952         * gtk/gtktexttagtable.c (gtk_text_tag_table_add): improve warning 
953         for trying to add two tags with same name to the tag table
954
955         * demos/gtk-demo/main.c (main): fix colors ;-)
956
957 `Fri Jun  8 17:56:52 2001  Owen Taylor  <otaylor@redhat.com>
958
959         * gtk/gtkwindow.[ch] gtk/gtkmain.c: Add a GtkWindowGroup struct
960         that allows grouping together multiple windows so that grabs
961         within that set of windows only affect those windows.
962
963         * gtk/gtkmain.c gtk/gtkwidget.[ch]: Add a "grab_notify"
964         signal for notification when a widget becomes shadowed
965         by a grab or is no longer shadowed by a grab.
966
967         * gtk/gtkwidget.c (gtk_widget_propagate_state)
968           gtk/gtkmain.c: (gtk_widget_grab_add): Don't allow
969         insenstive widgets to maintain a grab.
970
971 2001-06-14  Alexander Larsson  <alexl@redhat.com>
972
973         * docs/README.linux-fb:
974         Add some example config files that can be used with the URW fonts.
975         
976         * gdk/linux-fb/gdkvisual-fb.c (gdk_visual_init): 
977         Set up the color ramps for DirectColor mode.
978
979 2001-06-11  Havoc Pennington  <hp@redhat.com>
980
981         * Release 1.3.6
982          
983 2001-06-13  Alexander Larsson  <alla@lysator.liu.se>
984
985         * gdk/linux-fb/gdkwindow-fb.c:
986         Unify shaped window code and make it repaint the area that used
987         to be part of the shape, but isn't anymore.
988
989 2001-06-11  Havoc Pennington  <hp@redhat.com>
990
991         * NEWS: Updates
992
993         * configure.in (GTK_MINOR_VERSION): bump version to 1.3.6
994
995         * gtk/Makefile.am: glib_genmarshal already contains top_builddir
996         
997 2001-06-13  Alexander Larsson  <alla@lysator.liu.se>
998
999         * gdk/linux-fb/gdkdnd-fb.c (gdk_drag_status):
1000         Don't pass on GDK_ACTION_DEFAULT. The Xdnd code
1001         passes zero instead, so do we.
1002         
1003 2001-06-13  Alexander Larsson  <alla@lysator.liu.se>
1004
1005         * gdk/linux-fb/gdkgc-fb.c (gdk_gc_copy):
1006         Deep copy dash_list too.
1007         (_gdk_fb_gc_new): Set default cap_style before
1008         setting values.
1009
1010 2001-06-12  Alexander Larsson  <alla@lysator.liu.se>
1011
1012         * gdk/linux-fb/gdkkeyboard-fb.c (gdk_keymap_get_default,
1013         gdk_keymap_get_direction): New functions.
1014
1015 Tue Jun 12 12:41:27 2001  Jonathan Blandford  <jrb@redhat.com>
1016
1017         * gtk/gtktreemodel.h (GTK_TREE_MODEL_LIST_ONLY): further justify
1018         gtk_tree_model_get_flags by adding a second flag for atk.
1019
1020         * gtk/gtktreemodel.c: make cursor behavior interact better with
1021         mouse presses.
1022
1023 Mon Jun 11 12:43:08 2001  Jonathan Blandford  <jrb@redhat.com>
1024
1025         * gtk/gtktreeview.c (gtk_tree_view_class_init): changed
1026         expand_row/collapse_row to be 2 signals each -- test_expand_row
1027         and row_expanded as well as test_collapse_row and row_collapsed.
1028
1029 2001-06-10  Anders Carlsson  <andersca@codefactory.se>
1030
1031         * demos/gtk-demo/stock_browser.c (do_stock_browser): Update
1032         signal name to be changed instead of selection_changed.
1033
1034 2001-06-08  Havoc Pennington  <hp@redhat.com>
1035
1036         * gtk/gtkentry.c (gtk_entry_class_init): add read-only
1037         "scroll_offset" property for notification when the layout offsets
1038         may have changed
1039         (gtk_entry_adjust_scroll): add notify for scroll_offset
1040         (gtk_entry_layout_index_to_text_index): function to compensate for
1041         preedit string when doing coordinate stuff on the entry's layout
1042         (gtk_entry_text_index_to_layout_index): inverse function
1043         (gtk_entry_get_layout_offsets): hook to get current position of
1044         the layout      
1045         (gtk_entry_get_layout): hook to get the layout itself.
1046
1047         * gtk/gtklabel.c (gtk_label_get_layout): new function
1048
1049 Fri Jun  8 19:49:29 2001  Jonathan Blandford  <jrb@redhat.com>
1050
1051         * gtk/gtktreeview.c (gtk_tree_view_real_select_cursor_row): New
1052         keybinding.
1053         (gtk_tree_view_focus): Fix merge conflict.
1054
1055 Fri Jun  8 18:41:30 2001  Jonathan Blandford  <jrb@redhat.com>
1056
1057         * gtk/gtktreeview.c (gtk_tree_view_set_cursor): new function to
1058         clean up cursor handling.
1059
1060 2001-06-08  Havoc Pennington  <hp@redhat.com>
1061
1062         * gtk/gtktextbuffer.c (gtk_text_buffer_get_start_iter): added this
1063         function
1064
1065         * gtk/gtktextview.c (gtk_text_view_get_default_attributes): added
1066         this function
1067
1068 2001-06-08  Alex Larsson  <alexl@redhat.com>
1069
1070         * gtk/gtkcompat.h.in:
1071         Added compat macros for all old GTK_TYPE_GDK_xxx types.
1072         Fixes bug #52892
1073
1074 2001-06-08  Havoc Pennington  <hp@redhat.com>
1075         
1076         * gtk/gtkhsv.h (struct _GtkHSVClass): had GtkContainerClass as
1077         parent still
1078
1079 2001-06-08  Havoc Pennington  <hp@redhat.com>
1080
1081         * gtk/gtktextbuffer.c (gtk_text_buffer_remove_all_tags): geez,
1082         don't call g_list funcs on GSList
1083
1084         * gtk/gtkwidget.c (gtk_widget_child_focus): replaces
1085         gtk_container_focus(), since some widgets have focusable locations
1086         which are not other widgets. These widgets should not have to be 
1087         containers just to manage the focus. For example, GtkHSV is
1088         currently a container for no good reason. Also, this cleans
1089         up the "if (is_container && is_sensitive && is_drawable)
1090         container_focus ()" mess in widget implementations.
1091
1092         * gtk/gtkcontainer.c (gtk_container_focus): deprecate this
1093         function, and have it just call gtk_widget_child_focus().
1094
1095         * gtk/gtkhsv.c: derive from widget not container
1096         
1097         Throughout: fix to reflect GtkContainer::focus change
1098         
1099 Fri Jun  8 12:38:49 2001  Jonathan Blandford  <jrb@redhat.com>
1100
1101         * gtk/gtktable.c (gtk_table_resize): warn if row/cols are out of
1102         range.  Fix bug #55921
1103
1104         * gtk/gtkliststore.c (gtk_list_store_new_with_types): fix doc bug
1105         (#55920).
1106
1107 Fri Jun  8 12:03:07 2001  Owen Taylor  <otaylor@redhat.com>
1108
1109         * gdk/gdkkeys.[ch]: Add a direction-changed signal,
1110         and gdk_keymap_get_current_direction().
1111
1112         * gdk/x11/gdkevents-x11.c gdk/x11/gdkkeys-x11.c
1113           gdk/x11/gdkmain-x11.c gdk/x11/gdkprivate-x11.h: Track
1114         the current locked group, use it to set the keymap
1115         direction.
1116
1117         * gtk/gtksettings.c: Add a new gtk-split-cursor setting
1118         to determine whether we draw a split cursor or use
1119         a jumping cursor based on the current direction.
1120
1121         * gtk/gtkentry.c gtk/gtktextview.c gtk/gtktextlayout.[ch]:
1122         Obey the split cursor setting. 
1123
1124 Fri Jun  8 11:57:50 2001  Owen Taylor  <otaylor@redhat.com>
1125
1126         * gtk/gtkimmulticontext.c (activate_cb): Only activate
1127         when toggling on, not when toggling off... (#55906)
1128
1129 Wed Jun  6 10:37:07 2001  Owen Taylor  <otaylor@redhat.com>
1130
1131         * gtk/gtkwidget.c (gtk_widget_set_double_buffered): 
1132         s/gdk_window_begin_paint/gdk_window_begin_paint_region/
1133         in docs. (#55812, Vitaly Tishkov)
1134
1135 2001-06-08  Anders Carlsson  <andersca@codefactory.se>
1136
1137         * demos/gtk-demo/main.c (create_tree): Changed signal name from
1138         selection_changed to changed in signal connection to GtkTreeSelection,
1139         also used g_signal_connectc since GtkTreeSelection is now a GObject.
1140
1141 Thu Jun  7 18:25:42 2001  Jonathan Blandford  <jrb@redhat.com>
1142
1143         * gtk/gtktreeselection.c: Now it's a GObject instead of a
1144         GtkObject.  The GtkTreeSelection::selection_changed signal is now
1145         the GtkTreeSelection::changed signal.
1146
1147         * gtk/gtktreeview.c: Modified to deal with new GtkTreeSelection
1148         object.
1149
1150         * tests/gtktree*.c: Modified to deal with new GtkTreeSelection
1151         object.
1152
1153 2001-06-07  Havoc Pennington  <hp@redhat.com>
1154
1155         * gtk/Makefile.am: fix glib-mkenums and glib-genmarshal again
1156
1157 2001-06-07  Havoc Pennington  <hp@redhat.com>
1158         
1159         * gtk/Makefile.am: fixups for glib-mkenums and glib-genmarshal
1160         (not tested yet because with absolute path to srcdir I can't build
1161         atk, but it was broken anyway so this may help) 
1162
1163 2001-06-07  Havoc Pennington  <hp@redhat.com>
1164
1165         * configure.in: output m4macros/Makefile
1166         
1167 Wed Jun  6 21:59:16 2001  Jonathan Blandford  <jrb@redhat.com>
1168
1169         * gtk/gtktreeview.c (gtk_tree_view_size_allocate): hook up arrow
1170         buttons.  Fixes #55460 reported by matthiasc@poet.de.
1171
1172 Wed Jun  6 21:18:54 2001  Jonathan Blandford  <jrb@redhat.com>
1173
1174         * gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): centralize
1175         expansion/collapsing so it only happens in one place.
1176         (gtk_tree_view_real_expand_row): ditto.
1177
1178 2001-06-07  Havoc Pennington  <hp@redhat.com>
1179
1180         * tests/Makefile.am: add missing -I flag
1181
1182         * gtk/Makefile.am: use @GLIB_MKENUMS@, @GLIB_GENMARSHAL@, etc.
1183
1184         * configure.in: use pkg-config to see if GModule is
1185         supported; fix to properly turn on included loaders 
1186         when GModule isn't supported; don't use AC_CHECK_LIB 
1187         when libs are not installed yet
1188
1189         * autogen.sh: add support for AUTOGEN_SUBDIR_MODE
1190
1191         * Makefile.am (SUBDIRS): add m4macros subdir
1192
1193         * gtk/Makefile.am: $(srcdir)/foo targets must be $(srcdir)/foo in
1194         dependencies also.
1195
1196 Wed Jun  6 19:31:11 2001  Jonathan Blandford  <jrb@redhat.com>
1197
1198         * gtk/gtktreeview.c (gtk_tree_view_set_model): fix silly bug
1199         reported by "Padraig O'Briain" <Padraig.Obriain@Sun.COM>.
1200
1201 Wed Jun  6 20:01:38 2001  Jonathan Blandford  <jrb@redhat.com>
1202
1203         * gtk/gtktreeview.c
1204         (gtk_tree_view_real_expand_collapse_cursor_row): Handle key
1205         bindings to expand and collapse rows.
1206         (gtk_tree_view_real_select_cursor_parent): New key binding.
1207         (gtk_tree_view_real_toggle_cursor_row): New key binding.
1208
1209         * gtk/gtkmarshal.list: new
1210         marshaller. (VOID__BOOLEAN_BOOLEAN_BOOLEAN)
1211
1212 2001-06-06  Havoc Pennington  <hp@redhat.com>
1213
1214         * gtk/gtkrange.c (gtk_range_class_init): add "inverted" property
1215
1216         * gtk/gtkscale.c (gtk_scale_class_init): Change Page Up and Page
1217         Down to move visually rather than logically, since it confuses 
1218         people. Add -/+ and Ctrl--/+ bindings for logical movement.
1219
1220 2001-06-06  Alex Larsson  <alexl@redhat.com>
1221
1222         * gdk/linux-fb/gdkmain-fb.c (_gdk_windowing_init_check):
1223         Fix up error messages.
1224
1225 Wed Jun  6 10:34:42 2001  Owen Taylor  <otaylor@redhat.com>
1226
1227         * gtk/gtktooltips.h: Include gtkwidget.h 
1228         (#55798, Karl Nelson)
1229
1230         * gdk/x11/gdkwindow-x11.c (utf8_is_latin1): 0xff is
1231         a valid latin-1 character. (Marc Lehmann, #35467)
1232
1233         * gdk/x11/gdkwindow-x11.c: Fix minor typo in comment. 
1234         (Marc Lehmann, #35467)
1235         
1236 2001-06-05  Alex Larsson  <alexl@redhat.com>
1237
1238         * demos/gtk-demo/appwindow.c (do_appwindow):
1239         Don't swap the order of the args to gtk_widget_destroyed.
1240
1241         * tests/testgtk.c (destroy_properties):
1242         Don't crash when the properties window is destroyed.
1243
1244         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_new_from_stock):
1245         Use with_mnemonics to handle the case of stock items with
1246         underscores in them.
1247
1248 2001-06-05  Havoc Pennington  <hp@redhat.com>
1249
1250         * gtk/gtktextiter.c (gtk_text_iter_order): rename from 
1251         gtk_text_iter_reorder
1252
1253 2001-06-05  Havoc Pennington  <hp@redhat.com>
1254
1255         * gtk/gtktoolbar.c (gtk_toolbar_remove_space): new function
1256
1257 2001-06-05  Havoc Pennington  <hp@redhat.com>
1258
1259         * gtk/gtkspinbutton.c (gtk_spin_button_set_range): clamp the value 
1260         to the range that was set
1261
1262         * gtk/gtkrange.c: add value_changed signal, primarily 
1263         intended for use with GtkScale
1264         (gtk_range_set_increments): new function
1265         (gtk_range_set_range): new function with weird name
1266         (gtk_range_set_value): new function
1267         (gtk_range_get_value): new function
1268
1269         * gtk/gtkspinbutton.c (gtk_spin_button_get_value): rename 
1270         from gtk_spin_button_get_value_as_float(). Compat #define
1271         added for get_value_as_float.
1272
1273         * gtk/gtkhscale.c (gtk_hscale_new_with_range): new function
1274
1275         * gtk/gtkvscale.c (gtk_vscale_new_with_range): new function
1276
1277 Tue Jun  5 14:57:18 2001  Jonathan Blandford  <jrb@redhat.com>
1278
1279         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_get_size): Fix bug #55573
1280
1281 Mon Jun  4 12:41:25 2001  Owen Taylor  <otaylor@redhat.com>
1282
1283         * gtk/gtkwidget.h: Deprecate gtk_widget_set().
1284
1285         * tests/testgtk.c (create_tooltips): Remove usage of
1286         gtk_widget_set().
1287
1288 2001-06-05  Havoc Pennington  <hp@redhat.com>
1289
1290         * gtk/gtkcolorsel.c: Use new mnemonic convenience functions
1291
1292         Applying patch from Jeff Franks, with function docs added.
1293         
1294         * gtk/gtkcheckbutton.c (gtk_check_button_new_with_mnemonic):
1295         remove call to set_mnemonic_widget, change docs a bit.  
1296
1297         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_new_with_mnemonic):
1298         new function
1299
1300         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_new_with_mnemonic):
1301         new function
1302
1303         * gtk/gtkmenuitem.c (gtk_menu_item_new_with_mnemonic): new function
1304
1305         * gtk/gtkradiobutton.c (gtk_radio_button_new_with_mnemonic): new
1306         function
1307         (gtk_radio_button_new_with_mnemonic_from_widget): new function
1308
1309         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_new_with_mnemonic):
1310         new function
1311
1312         * gtk/gtktogglebutton.c (gtk_toggle_button_new_with_mnemonic): new
1313         function        
1314
1315         * gtk/gtklabel.c (gtk_label_new_with_mnemonic): Improve docs on 
1316         auto-selection of mnemonic widget.
1317
1318 Mon Jun  4 15:05:24 2001  Jonathan Blandford  <jrb@redhat.com>
1319
1320         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_max_width):
1321         Fix segfault found by Vitaly Tishkov <tvv@sparc.spb.su>.
1322         (gtk_tree_view_column_set_min_width): ditto.
1323
1324 Tue Jun  5 11:04:06 2001  Owen Taylor  <otaylor@redhat.com>
1325
1326         * gdk/gdkpixmap.h (GDK_PIXMAP_GET_CLASS): 
1327         s/GdkPixmapClass/GdkPixmapObjectClass/. (#51890, Jeff Franks)
1328
1329 Mon Jun  4 12:50:11 2001  Owen Taylor  <otaylor@redhat.com>
1330
1331         * gtk/gtkctree.c (gtk_ctree_insert_gnode): Add a missing
1332         gtk_clist_thaw().
1333
1334 2001-06-04  Havoc Pennington  <hp@pobox.com>
1335
1336         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Ignore 
1337         releases for buttons 6, 7
1338
1339 2001-06-04  Havoc Pennington  <hp@redhat.com>
1340
1341         * gtk/gtkseparatormenuitem.h: Fix a search-and-replace screwup
1342         (s/CHECK/SEPARATOR/ gone awry). Patch from Jeff Franks, bug
1343         #55562
1344
1345 2001-06-04  Havoc Pennington  <hp@redhat.com>
1346
1347         * gtk/gtktextview.c (gtk_text_view_size_request): handle case
1348         where text_view->layout == NULL by assuming its size is 0, 
1349         i.e. same as if we haven't done any reflow. Reported by 
1350         Hidetoshi Tajima #55448 
1351
1352 2001-06-04  Havoc Pennington  <hp@redhat.com>
1353
1354         * gdk/x11/gdkevents-x11.c (gdk_event_translate): support button 6
1355         and 7 for scroll left/right, from Thomas Broyer
1356
1357 2001-05-10  Havoc Pennington  <hp@redhat.com>
1358
1359         * gtk/gtksettings.c (gtk_settings_get_property): Handle case where
1360         we need to parse the xsetting as if it were an RC file string.
1361
1362         * gtk/gtkcolorsel.c (gtk_color_selection_class_init): load initial
1363         value of palette from settings, not from static variable
1364
1365         * gdk/x11/gdkevents-x11.c: add color palette, toolbar mode to
1366         xsettings translation table
1367
1368         * gtk/gtktoolbar.c (gtk_toolbar_new): Remove arguments, because 
1369         hardcoding the toolbar style conflicts with new customizable 
1370         toolbar style philosophy
1371         (gtk_toolbar_class_init): add settings for default toolbar style;
1372         these are used unless the app specifically forces a toolbar style
1373
1374         * gtk/gtksettings.c (settings_install_property_parser): only
1375         return at the start if we warn and parser == NULL
1376
1377         * gtk/gtkcolorsel.c (gtk_color_selection_finalize): disconnect the
1378         palette changed handler so we don't notify dead color selections
1379
1380         * gtk/gtkstyle.c (gtk_default_draw_shadow): handle
1381         xthickness/ythickness of 0 or 1 properly 
1382         (gtk_default_draw_resize_grip): clear the background behind the
1383         resize grips, and align to bottom right if we square the 
1384         area to be drawn.
1385
1386         * gtk/gtkstatusbar.c (gtk_statusbar_init): set horizontal usize on 
1387         statusbar label to 1, so it doesn't make toplevels resize oddly
1388         (gtk_statusbar_size_request): add grip size to request
1389         (gtk_statusbar_size_allocate): hack so the hbox still works with 
1390         the grip size in the request
1391
1392         * gtk/gtktoolbar.c (gtk_toolbar_show_all): override to fix 
1393         bug where showing all on a toplevel makes the toolbar 
1394         button text appear despite the toolbar mode
1395
1396         * gtk/gtkmenubar.c: add internal padding style property
1397
1398         * gtk/gtktoolbar.c: Add internal padding style property; add
1399         shadow type style property
1400
1401         * gtk/gtkmenubar.c (gtk_menu_bar_paint): paint box with widget
1402         state; and put Container::border_width outside the frame
1403
1404         * gtk/gtktextview.c: don't draw focus rectangle if we're in
1405         interior focus mode, we just use blinking cursor
1406
1407 2001-06-04  Havoc Pennington  <hp@redhat.com>
1408
1409         * configure.in: Make gdk-pixbuf have same version number as GTK
1410
1411 2001-06-04  Havoc Pennington  <hp@redhat.com>
1412
1413         * gtk/gtkspinbutton.c: Get rid of stupid g_return_if_fail on 
1414         digits greater than 6. If there actually are limits (which there
1415         likely aren't), should clamp to them not warn.
1416         (gtk_spin_button_new_with_range): don't take log of 0
1417         (gtk_spin_button_size_request): use digits to compute size
1418         request, rather than step increment.
1419
1420         * tests/testgtk.c (create_spins): test larger values of digits
1421         
1422         * gtk/gtkfontsel.c (gtk_font_selection_init): scroll to selected
1423         font on map not expose, so we don't get weirdness during scrolling
1424
1425 2001-06-04  Havoc Pennington  <hp@redhat.com>
1426
1427         * gtk/gtkclist.c (vadjustment_value_changed): Apply fix from
1428         Sam Solon, bug #54577, update value even if not drawable.
1429
1430 2001-06-04  Havoc Pennington  <hp@redhat.com>
1431
1432         * gtk/gtkrange.c (gtk_range_scroll_event): change SCROLL_RIGHT to
1433         SCROLL_LEFT, reported by Thomas Broyer.
1434
1435 2001-06-04  Havoc Pennington  <hp@redhat.com>
1436
1437         * gtk/gtkrange.c (gtk_range_adjustment_value_changed): 
1438         Process updates immediately, to prevent funny lag effect
1439         when scrolling, at some mild potential efficiency cost.
1440
1441 2001-06-04  Havoc Pennington  <hp@redhat.com>
1442
1443         * gtk/gtkrange.c (gtk_range_button_press): on middle click, center
1444         slider on the click.
1445
1446 2001-06-03  Havoc Pennington  <hp@pobox.com>
1447
1448         * gtk/gtkstyle.c (gtk_default_draw_slider): make this special-case
1449         hscale/vscale details, so we can use it for scrollbar as well.
1450
1451         * tests/testgtk.c (reformat_value): honor digits from GtkScale
1452
1453         * gtk/gtkenums.h (GtkTroughType): Remove this enum
1454         (GtkScrollType): add START and END from GtkTroughType
1455
1456         * gtk/gtkstyle.c (gtk_default_draw_slider): was not properly using
1457         its x/y arguments
1458
1459         * gtk/gtkrange.h, gtk/gtkrange.c, gtk/gtkscrollbar.h,
1460         gtk/gtkscrollbar.c, gtk/gtkscale.h, gtk/gtkscale.c,
1461         gtk/gtkhscrollbar.h, gtk/gtkhscrollbar.c, gtk/gtkvscrollbar.h,
1462         gtk/gtkvscrollbar.c, gtk/gtkhscale.h, gtk/gtkhscale.c,
1463         gtk/gtkvscale.h, gtk/gtkvscale.c: Rewrite GtkRange and subclasses.
1464
1465         Notable changes in the process:
1466          
1467         - stepper_size style property is the height for vertical 
1468           ranges, width for horizontal; the other dimension matches
1469           the trough size
1470         - add ability to do NeXT-style steppers (and several other styles
1471           that don't make any sense)
1472         - added min_slider_length, fixed_slider_length properties to
1473           GtkScrollbar
1474         - cleaned some private (or at least useless) functions out of
1475           gtkscale.h    
1476         - moved bindings to GtkScale from subclasses, even arrow keys,
1477           since blind users don't know scale orientation.
1478         - change move_slider action signal to use new GtkScrollType,
1479           remove GtkTroughType argument
1480         - digits rounds the values a range will input to the given 
1481           number of decimals, but will not try to force adjustment 
1482           values set by other controllers. That is, we no longer
1483           modify adjustment->value inside a value_changed handler.
1484         - added getters for GtkScale setters
1485         - middle-click begins a slider drag
1486         
1487 Fri Jun  1 18:54:47 2001  Jonathan Blandford  <jrb@redhat.com>
1488
1489         * gtk/gtktreeview.c: (gtk_tree_view_focus): Initial stab at
1490         getting the focus code to work.
1491         (gtk_tree_view_class_init): Add a bunch of keybindings.
1492
1493         * gtk/gtktreeviewcolumn.c
1494         (gtk_tree_view_column_set_cell_data_func):
1495         s/GtkCellDataFunc/GtkTreeCellDataFunc.
1496         (_gtk_tree_view_column_set_tree_view): Use "notify::model" instead
1497         of "properties_changed" to help justify the death of the latter
1498         signal. (-:
1499
1500         * tests/testtreefocus.c (main): Let some columns be focussable to
1501         test focus better.
1502
1503 2001-06-01  Havoc Pennington  <hp@redhat.com>
1504
1505         * gtk/gtkentry.c (gtk_entry_commit_cb): implement overwrite mode
1506         
1507         * gtk/gtktextview.c (gtk_text_view_commit_handler): don't
1508         overwrite in overwrite mode if we already deleted the selection
1509         and replaced it with new text.  
1510
1511         * gtk/gtklabel.c (gtk_label_select_region_index): if you set the
1512         selection to an empty range, clear the clipboard if we owned it.
1513         (gtk_label_set_selectable): give up selection if we become
1514         unselectable.
1515         (gtk_label_state_changed): override state changed to unselect text
1516         when insensitive
1517         (get_text_callback): add paranoia check that indexes aren't
1518         outside of label->text
1519         (gtk_label_select_region): make -1 for start_offset mean "end of
1520         label," for consistency with GtkEditable
1521
1522         * gtk/gtkmessagedialog.c (gtk_message_dialog_new): honor
1523         GTK_DIALOG_NO_SEPARATOR flag
1524
1525 Fri Jun  1 11:47:11 2001  Owen Taylor  <otaylor@redhat.com>
1526
1527         * gtk/gtkcombo.c (gtk_combo_set_use_arrows_always): Fix 
1528         notifications on non-existant "enable_arrow_keys".
1529         (#53753, Skip Montanaro)
1530
1531 Fri Jun  1 11:31:55 2001  Owen Taylor  <otaylor@redhat.com>
1532
1533         * gdk/gdkrectangle.c (gdk_rectangle_get_type): Add 
1534         GDK_TYPE_RECTANGLE.
1535
1536         * gtk/gtkwidget.c (gtk_widget_class_init): Fix type
1537         of allocation argument be GDK_TYPE_RECTANGLE.
1538
1539 Thu May 31 12:43:57 2001  Owen Taylor  <otaylor@redhat.com>
1540
1541         * gtk/gtkoptionmenu.c: Account for the fact that the border
1542         width is _outside_ the window. (Fixes #54585, bug found
1543         by Bastien Nocera.)
1544
1545 Wed May 30 15:56:30 2001  Owen Taylor  <otaylor@redhat.com>
1546
1547         * gtk/gtksettings.c (gtk_settings_get_property): Validate
1548         value from GDK settings against parameter spec.
1549
1550         * gdk/x11/gdkevents-x11.c (gdk_setting_get): Add assignments
1551         to temporary values and use g_value_transform(), since
1552         thinking that GValue was going to be easy or efficient
1553         to use was, of course, a mistake.
1554
1555         * gtk/gtksettings.c: Add cursor blink setting.
1556         
1557         * gdk/x11/gdkevents-x11.c: Add cursor blink X settings.
1558
1559         * gtk/gtkentry.c: Add cursor blinking.
1560
1561         * gtk/gtktextview.c (gtk_text_view_check_cursor_blink): Use
1562         cursor blink global settings.
1563
1564         * gtk/gtkentry.c (gtk_entry_button_press): Add notification
1565         for :text_position in places where it is missing.
1566
1567 Tue May 29 18:17:11 2001  Owen Taylor  <otaylor@redhat.com>
1568
1569         * autogen.sh (have_libtool): Fix GNU sedism (#55430)
1570
1571 Tue May 29 17:40:29 2001  Owen Taylor  <otaylor@redhat.com>
1572
1573         * configure.in (GTK_DEP_CFLAGS): Use $PKG_CONFIG,
1574         not pkg-config. (#51032)
1575
1576         * gdk/gdkproperty.h: Remove inappropriate G_GNUC_CONST
1577         (fixes #51952, James Henstridge)
1578         
1579 2001-05-27  Alexander Larsson  <alla@lysator.liu.se>
1580
1581         * gtk/gtkstock.h (GTK_STOCK_GO_UP):
1582         Rename to the more correct gtk-go-up.
1583
1584         * gtk/stock-icons/stock_menu_sort_ascending.png:
1585         Added new file.
1586         
1587         * gtk/stock-icons/stock_menu_sort_descending.png:
1588         Changed to show descending instead of ascending.
1589
1590         * gtk/gtkiconfactory.c:
1591         Added menu size icon to sort ascending.
1592
1593         * gtk/stock-icons/Makefile.am:
1594         Added stock_menu_sort_ascending.png.
1595         
1596         * gtk/gtkseparatormenuitem.c:
1597         Use correct typenames.
1598
1599 Sun May 20 20:07:35 2001  Tim Janik  <timj@gtk.org>
1600
1601         * gtk/gtksignal.[hc] (gtk_signal_connect_full): make hanlder id a
1602         gulong as in GSignal.
1603
1604 Fri May 25 19:04:17 2001  Jonathan Blandford  <jrb@redhat.com>
1605
1606         * gtk/gtktreeview.c (gtk_tree_view_calc_size): Remove almost all
1607         instances of GtkCellRenderer in code (all but dnd icon code).
1608         Virtualized in GtkTreeViewColumn.  Now I need to move focus in
1609         there, and I can do multiple Cells per column.
1610
1611         * gtk/gtktreeviewcolumn.c: Proxy all cell calls correctly
1612
1613         * gtk/gtktreemodel.c (gtk_tree_row_reference_new_proxy): fix bug
1614         when model was unreffed prior to removing the row reference.
1615
1616 2001-05-25  Havoc Pennington  <hp@redhat.com>
1617
1618         * gtk/gtkiconfactory.c: fix so that default icons are created if 
1619         you call gtk_stock_list_ids()
1620
1621         * demos/gtk-demo/stock_browser.c (create_model): sort stock items
1622         in list
1623
1624 2001-05-25  Havoc Pennington  <hp@redhat.com>
1625
1626         * gtk/gtkiconfactory.c (gtk_icon_set_get_sizes): get sizes an icon
1627         set can render without falling back to missing image icon
1628
1629         * gtk/gtktextview.c (gtk_text_view_size_request): request full
1630         size of text, instead of random values
1631
1632         * gtk/gtktreeview.c (gtk_tree_view_size_request): request full
1633         size of tree view, instead of random values
1634
1635         * gtk/gtkiconfactory.c (gtk_icon_set_render_icon): render fallback
1636         image in an appropriate size
1637
1638         * gtk/gtkstock.h: Rename the stock items including _BUTTON_,
1639         etc. not to include that. i.e. s/GTK_STOCK_BUTTON_OK/GTK_STOCK_OK/
1640
1641         Throughout: fix GTK_STOCK_BUTTON_ instances
1642         
1643         * gtk/gtkstock.h, gtk/gtkstock.c, gtk/gtkiconfactory.h,
1644         gtk/gtkiconfactory.c, gtk/stock-icons/Makefile.am:
1645         Add a bunch of new stock items/icons
1646
1647         * gtk/gtktreeview.c (gtk_tree_view_insert_column_with_data_func):
1648         new function, convenience for inserting columns with a data func
1649
1650         * gtk/gtkiconfactory.c: keep a list of all existing icon factories
1651         (_gtk_icon_factory_list_ids): use list of all factories to
1652         generate a list of all known IDs
1653
1654         * gtk/gtkstock.c (gtk_stock_list_ids): replace
1655         gtk_stock_list_items() with a function that returns all IDs known
1656         including those for GtkIconFactory.
1657
1658 2001-05-25  Hans Breuer  <hans@breuer.org>
1659
1660         * gdk/win32/gdkgc-win32.c : made fil mode GDK_STIPPLED actually
1661         work -> check boxes and radio buttons are drawn now, even on win9x.
1662         Improved line settings a bit, still no clue how to get really dotted
1663         lines on win9x, on NT it's PS_ALTERNATE.
1664
1665         * gdk/win32/gdkwindow-win32.c : use SafeAdjustWindowRect for 
1666         GDK_HINT_MIN_SIZE as well
1667
1668         * gdk/win32/makefile.am : added gdkkeys-win32.c to EXTRA_DIST
1669
1670         * gtk/gtk.def : updated
1671
1672         * gtk/gtktreeprivate.h : change column_drop_func to be a function
1673         pointer not a function pointer pointer
1674
1675         * tests/testdnd.c : include <stdlib.h> for putenv prototype
1676
1677         * tests/testsocket.c : made it compile on win32 again
1678
1679         * tests/makefile.msc : one more test-app uses prop-editor.obj
1680
1681 2001-05-22  Havoc Pennington  <hp@pobox.com>
1682
1683         * gtk/gtkbin.c (gtk_bin_get_child): New function
1684
1685 Wed May 23 20:07:53 2001  Owen Taylor  <otaylor@redhat.com>
1686
1687         * gtk/gtkimcontextsimple.c: Add Mode_Switch to list of keys
1688         to ignore when doing compose processing.
1689
1690 2001-05-22  Joe Shaw  <joe@ximian.com>
1691
1692         * gtk/gtktextiter.c (_gtk_text_btree_get_iter_at_last_toggle): 
1693         Simplify as suggested by Havoc. Just get the last iter and work
1694         backward to the tag instead of getting a line and working back from
1695         there. Fixes passing in an invalid offset to
1696         iter_init_from_byte_offset().
1697
1698 Tue May 22 16:25:27 2001  Jonathan Blandford  <jrb@redhat.com>
1699
1700         * gtk/gtktreeview*.h: 
1701         * gtk/gtkcell*.h:
1702         * gtk/gtk*store.h:
1703         Added patch from Jeff Franks <jcf@tpg.com.au> to add GET_CLASS
1704         macros to all objects.
1705
1706 Tue May 22 15:13:52 2001  Jonathan Blandford  <jrb@redhat.com>
1707
1708         * gtk/gtkcellrenderertext.c
1709         (gtk_cell_renderer_text_set_fixed_size): Evil function to deal
1710         with very large (TM) amounts of text.  May be moved to
1711         GtkCellRenderer in the future, though I'm not sure it wants to be
1712         this accessible.
1713
1714         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_update_button):
1715         More sanity brought to this class.  I like it.
1716
1717         * tests/testtreecolumns.c (ViewColumnModel): Amazingly scary test
1718         case.  Kids, don't try this at home.
1719
1720         * gtk/gtktreemodel.c (gtk_tree_model_get_iter_root): new
1721         convenience function.
1722
1723         * gtk/gtkwindow.c (gtk_window_set_geometry_hints): Fix typo in docs.
1724
1725 2001-05-21  Alexander Larsson  <alexl@redhat.com>
1726
1727         * gtk/gtkfontsel.c:
1728         Added properties. Based on patch by Lee Mallabone.
1729
1730         * gtk/gtkruler.c:
1731         * gtk/gtkhruler.c:
1732         * gtk/gtkvruler.c:
1733         * gtk/gtktext.c:
1734         * gtk/gtktextview.c:
1735         Converted GtkArg to GParam. Based on patches by John Margaglione.
1736
1737         * tests/Makefile.am:
1738         * tests/testtext.c:
1739         Add a property editor to testtext.
1740         
1741 Mon May 21 11:29:21 2001  Owen Taylor  <otaylor@redhat.com>
1742
1743         * gtk/gtk{h,v,}paned.c: Only show the separator if 
1744
1745         * configure.in: Fixed reversed conditional causing all image
1746         libraries to be linked in.
1747
1748 2001-05-21  Joe Shaw  <joe@ximian.com>
1749
1750         * gtk/gtklayout.c (gtk_text_layout_get_lines): Remove the assertion
1751         that top_y needs to be >= 0.
1752
1753 2001-05-11  Havoc Pennington  <hp@pobox.com>
1754         
1755         * gdk/x11/gdkmain-x11.c: Improve error messages for X errors and
1756         losing connection to the X server.
1757
1758 Sun May 20 13:59:20 2001  Owen Taylor  <otaylor@redhat.com>
1759
1760         * configure.in: Start checks for X from pangox/pangoxft
1761         CFLAGS to avoid duplicate libraries.
1762
1763         * gdk/Makefile.am (LDFLAGS): Remove extra -lm.
1764
1765         * configure.in (GDK_PIXBUF_PACKAGES): Fix GDK_PIXBUF_PACKAGES
1766         to include gobject.
1767         
1768 2001-05-18  Alexander Larsson  <alexl@redhat.com>
1769
1770         * gtk/gtkspinbutton.c:
1771         Convert GtkArgs to GParams. Based on patch by John Margaglione.
1772         Also do size request reasonable for MAXDOUBLE. Previously it printed
1773         the limits to a buffer and overran it. Instead do it using log10() and
1774         limit the width to 10 digits.
1775         
1776         * gtk/gtkwidget.c (gtk_widget_get_property):
1777         Correctly handle setting the parent property to NULL.
1778
1779 Fri May 18 15:26:26 2001  Owen Taylor  <otaylor@redhat.com>
1780
1781         * gtk/gtktextview.c (gtk_text_view_style_set): Reset 
1782         style attributes even if the widget isn't realized.
1783
1784         * demos/gtk-demo/main.c: Use a slightly smaller font.
1785
1786 Fri May 18 14:25:20 2001  Owen Taylor  <otaylor@redhat.com>
1787
1788         * gtk/gtkcontainer.c: Remove reallocate-redraws property.
1789         This is something that only a widget writer would ever want
1790         to change.
1791
1792         * gtk/gtksignal.c: Handle G_SIGNAL_TYPE_STATIC_SCOPE for
1793         gtk_signal_emit_by_name().
1794
1795         * gtk/gtkviewport.c: Fix some warnings.
1796
1797         * gtk/gtkwidget.c gtk/gtksizegroup.c: Add "size group" facility
1798         allowing the requisitions of multiple widgets to be grouped
1799         together.
1800
1801         * tests/testgtk.c: Add GtkSizeGroup test
1802
1803         * demos/gtk-demo/sizegroup.c: Add GtkSizeGroup demo.
1804
1805         * demos/gtk-demo/main.c demos/gtk-demo/pixbufs.c: Fix some
1806         warnings.
1807
1808         * configure.in: Switch to using AM_GLIB_GNU_GETTEXT.
1809
1810 2001-04-28  Martin Baulig  <baulig@suse.de>
1811
1812         * gtk/gtkimagemenuitem.[ch]: Renamed gtk_image_menu_item_add_icon()
1813         to gtk_image_menu_item_set_icon() and made it work if there's already
1814         an image.
1815         (gtk_image_menu_item_new): This function doesn't take any arguments anymore.
1816         (gtk_image_menu_item_new_with_label): New function.
1817
1818 Thu May 17 16:20:04 2001  Jonathan Blandford  <jrb@redhat.com>
1819
1820         * demos/gtk-demo/main.c (fontify): It's the worlds ugliest
1821         highlighting code!!!!  The result is okay so long as you don't try
1822         to stress it.  It also highlights a bug in the TextView so it's in
1823         an unproportional font right now until it's fixed.
1824
1825         *demos/gtk-demo/*.c: Clean up code a bit to make it
1826         ugly-parser(TM) friendly. (-:
1827
1828 2001-05-17  Joe Shaw  <joe@ximian.com>
1829
1830         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Remove the assertions
1831         that x_offset and y_offset must be >= 0. Clip the cursor being drawn
1832         if it is only partially onscreen.
1833
1834 Thu May 17 17:10:13 2001  Owen Taylor  <otaylor@redhat.com>
1835
1836         * gtk/gtkentry.c: Make logical motion and deletion by graphemes, 
1837         not by characters.
1838
1839         * gtk/gtkentry.c: Handle "trailing" returns from Pango when they
1840         are not zero or one; that is, when graphemes of multiple characters
1841         are involved.
1842
1843         * gtk/gtktextlayout.c (line_display_index_to_iter): Remove unnecessary
1844         FIXME.
1845
1846 2001-05-17  Alexander Larsson  <alla@lysator.liu.se>
1847         
1848         * gtk/gtkbbox.c:
1849         Add properties, based on patch by Lee Mallabone.
1850
1851         * gtk/gtknotebook.c:
1852         * gtk/gtktoolbar.c:
1853         Convert from GtkArg to GParam, based on patch by John Margaglione.
1854         
1855         * gtk/gtkhscale.c:
1856         * gtk/gtkvscale.c:
1857         * gtk/gtkhscrollbar.c:
1858         * gtk/gtkvscrollbar.c:
1859         * gtk/gtkrange.c:
1860         Move adjustment property to GtkRange.
1861
1862         * gtk/gtklabel.c:
1863         Setup mnemonics on property changes
1864
1865         * gtk/gtkwidget.c (gtk_widget_get_property):
1866         GdkExtensionMode is an enum, not a flag. Set it with
1867         g_value_set_enum ().
1868
1869         * tests/prop-editor.c:
1870         Better propery editor.
1871
1872         * tests/testgtk.c:
1873         Add new property test. Pass zero to the property editor to
1874         get properties from all derived types.
1875         
1876 Sun May 13 12:01:12 2001  Owen Taylor  <otaylor@redhat.com>
1877
1878         * autogen.sh (have_automake): Require libtool-1.4,
1879         automake-1.4p1.
1880
1881         * acinclude.m4: Remove libtool macros.
1882
1883         * gdk-pixbuf/Makefile.am: Add dependencies to loade
1884         modules.
1885
1886         * gdk/Makefile.am: Add dependency on libgdk_pixbuf.la
1887         for libgdk.
1888
1889         * gtk/Makefile.am: Add dependency on libgdk_pixbuf.la
1890         libgdk.la for libgtk.
1891
1892         * modules/input/Makefile.am: Make modules have full
1893         dependencies.
1894
1895 Wed May 16 14:06:01 2001  Jonathan Blandford  <jrb@redhat.com>
1896
1897         * gtk/gtktreemodel.c (gtk_tree_path_new_from_string): fix bug
1898         #54699 where paths weren't being checked for correctness.
1899
1900 Tue May 15 20:13:24 2001  Jonathan Blandford  <jrb@redhat.com>
1901
1902         * gtk/gtktreeviewcolumn.c: You can now set all sorts of properties
1903         in any order you wan, whether or not the column is added to the
1904         tree, or the tree is realized.  Yay!
1905
1906         * gtk/gtktreeviewcolumn.c
1907         (gtk_tree_view_column_setup_sort_column_id_callback): handle
1908         sorting columns a lot saner
1909
1910         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_reorderable):
1911         new function to actually set wether or not a column is
1912         reorderable.
1913
1914         * gtk/gtktreeview.c (gtk_tree_view_unrealize): Only destroy things
1915         if we have 'em.
1916
1917         * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_set_tree_view):
1918         Fix nasty bug where we were showing the button just before
1919         realizing it.  As a result, the parent window was
1920         tree_view->window instead of tree_view->priv->header_window.
1921
1922         * gtk/gtktreeview.c (gtk_tree_view_set_reorderable): new property
1923         to let you easily reorder a list or tree.
1924
1925 2001-05-15  Alexander Larsson  <alla@lysator.liu.se>
1926
1927         * gtk/gtkpacker.c: Apply patch from John Margaglione that converts
1928         from args to properties.
1929
1930 Tue May 15 10:11:59 2001  Owen Taylor  <otaylor@redhat.com>
1931
1932         * gtk/gtkpreview.c: Apply patch from John Margaglione converting
1933         from args to properties. (#51957)
1934
1935         * gtk/gtkscale.c (gtk_scale_class_init): Move install property
1936         calls to after ->set_property call.
1937
1938 Mon May 14 14:56:21 2001  Owen Taylor  <otaylor@redhat.com>
1939
1940         * tests/prop-editor.c: Block against redundant changes.
1941
1942         * gtk/gtkpaned.c gtk/gtk[hv]paned.c: Add position, position_set
1943         properties.
1944
1945 Sun May 13 18:40:04 2001  Owen Taylor  <otaylor@redhat.com>
1946
1947         * gdk/gdkpixmap.h: Remove creative formatting.
1948
1949 Thu May 10 19:22:28 2001  Owen Taylor  <otaylor@redhat.com>
1950
1951         * gtk/gtktogglebutton.c:  Patch from John Margaglione converting to
1952         property API. (#51669)
1953
1954         * gtk/gtkscale.c: Patch from John Margaglione converting to
1955         property API. (#51891)
1956
1957         * gtk/gtkaccellabel.c: Applied patch from Lee Mallabone, converting
1958         to property API. (#50985)
1959
1960 Fri May 11 20:13:44 2001  Tim Janik  <timj@gtk.org>
1961
1962         * gtk/gtkmain.c (gtk_main_do_event): remember widget's double
1963         buffering state across expose event, so we still call end_paint().
1964
1965 2001-05-11  Alexander Larsson  <alexl@redhat.com>
1966
1967         * gtk/gtkhsv.c (paint_triangle):
1968         Expose the ring in the triangle at the correct place when
1969         exposing just a part of the triangle.
1970
1971         * gtk/gtkwindow-decorate.c (gtk_decorated_window_focus_change):
1972         Return FALSE, or window focusing will not work.
1973
1974 2001-05-11  Havoc Pennington  <hp@pobox.com>
1975
1976         * gtk/gtkimage.c (gtk_image_new_from_stock): docs, fixes bug
1977         #54144
1978
1979         * gtk/gtkcolorsel.c (gtk_color_selection_new): docs, fixes
1980         bug #54330
1981
1982 Fri May 11 02:53:57 2001  Tim Janik  <timj@gtk.org>
1983
1984         * gtk/gtktogglebutton.c (gtk_toggle_button_expose): don't
1985         propagate exposes to NULL child.
1986
1987         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed): guard
1988         against not having one of the scrollbars.
1989
1990         * gtk/gtklabel.c (gtk_label_setup_mnemonic): clean up after us,
1991         we don't keep a mnemonic window if we have no mnemonic installed.
1992
1993 Fri May 11 01:05:00 2001  Tim Janik  <timj@gtk.org>
1994
1995         * gtk/gtktypeutils.h: grum, gtk_type_class() is not GNUC_CONST
1996         it has the _important_ side effect of initializing a class.
1997
1998 2001-05-10  Alexander Larsson  <alexl@redhat.com>
1999
2000         * gdk/linux-fb/gdkprivate-fb.h:
2001         Make sure you can compile out the implementation/wrapper assert
2002         macros.
2003
2004         * gdk/linux-fb/gdkdrawable-fb2.c:
2005         Check implementation/wrappers, initialize type for pixmap dummys.
2006
2007         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image):
2008         Hide the cursor if reading from the screen.
2009
2010         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic):
2011         Fix sign bug in tiling code.
2012
2013         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_clear_area):
2014         Handle background pixmaps.
2015
2016 Wed May  9 15:27:22 2001  Jonathan Blandford  <jrb@redhat.com>
2017
2018         * gtk/gtktreeview.c (gtk_tree_view_set_column_drag_function): New
2019         function to let user control where columns are dragged.
2020
2021         * gtk/gtktreeview.c (gtk_tree_view_key_press): Cancel drags if
2022         Escape is pressed.
2023
2024 Wed May  9 09:08:44 2001  Jonathan Blandford  <jrb@redhat.com>
2025
2026         * gtk/gtktreeview.c (gtk_tree_view_class_init): New
2027         "columns_changed" signal.
2028         (gtk_tree_view_motion_draw_column_motion_arrow): Change column
2029         motion code to draw arrows to the side if indicator is outside the
2030         widget.
2031         (gtk_tree_view_map_expanded_rows): Implement.
2032
2033 2001-05-07  Alexander Larsson  <alexl@redhat.com>
2034
2035         * demos/testpixbuf-save.c: 
2036         * demos/testpixbuf-drawable.c:
2037         Include gdkfb.h on linux-fb.
2038
2039 2001-05-07  Alexander Larsson  <alexl@redhat.com>
2040
2041         * gdk/linux-fb/gdkdnd-fb.c (get_toplevel_window_at):
2042         New function for getting toplevel window at position.
2043         (gdk_drag_find_window): Use get_toplevel_window () instead
2044         of gdk_window_get_pointer(). (gdk_drag_status): Use
2045         correct context for getting window.
2046
2047         * gdk/linux-fb/gdkproperty-fb.c (gdk_atom_name):
2048         g_strdup the atom name.
2049
2050         * gdk/linux-fb/gdkwindow-fb.c:
2051         Costmetic fix.
2052
2053         * gtk/gtkdnd.c (gtk_drag_source_handle_event):
2054         Add code for changing cursor on linux-fb backend (same as
2055         win32).
2056
2057 2001-05-07  Federico Mena Quintero  <federico@ximian.com>
2058
2059         * gtk/gtkwindow.c (gtk_window_focus): Test for bin->child being
2060         present before doing anything with it.  Patch from HÃ¥vard KvÃ¥len
2061         <havardk@netcom.no>.  Fixes Ximian bugzilla #2492 (OK, the bug
2062         report was not for the development branch of GTK+, but it applies
2063         anyways).
2064
2065 2001-05-04  Havoc Pennington  <hp@redhat.com>
2066
2067         * configure.in: fix some shell typos
2068
2069         * gtk/gtkcolorsel.c (gtk_color_selection_destroy): warning fix
2070
2071         * gtk/gtkimage.c: handle animations
2072
2073         * gtk/gtkcheckbutton.c (gtk_check_button_size_request): request
2074         border_width * 2, not just border_width
2075
2076         * gtk/gtkscale.c: add "format_value" signal to allow people
2077         to override the way values are drawn.
2078         (gtk_scale_get_value_size): fix width/height mistake,
2079         and compute size from actual displayed text, not 
2080         from made-up text.
2081
2082         * gtk/gtktexttag.c (gtk_text_tag_class_init): fix return type in 
2083         signal registration
2084
2085         * tests/testtext.c: Add "Remove all tags" menu item for testing
2086
2087         * gtk/gtktextbuffer.c (gtk_text_buffer_remove_all_tags): implement
2088
2089         * demos/gtk-demo/main.c (main): add hack so we can find modules
2090         without installing gtk
2091
2092         * demos/gtk-demo/textview.c (insert_text): demo font scaling
2093
2094         * gtk/gtkcellrenderertext.c: Add "scale" property (font scaling
2095         factor)
2096         (gtk_cell_renderer_text_set_property): remove some bogus
2097         g_object_notify
2098
2099         * gtk/gtktexttag.c: add "scale" property which is a font scaling
2100         factor
2101
2102         * gtk/gtktextlayout.c (add_text_attrs): add font scale attribute 
2103         to layout
2104
2105         * gtk/gtktextiter.c (gtk_text_iter_is_start): rename from
2106         gtk_text_iter_is_first
2107
2108 2001-01-06  Hans Breuer  <hans@breuer.org>
2109
2110         * gdk/gdk.def : updated exports
2111
2112         * gdk/win32/makefile.msc : -DGDK_ENABLE_BROKEN otherwise
2113         gdk won't compile anymore
2114  
2115         * gdk/win32/gdkevents-win32.c : initialize ret_val when
2116         processing GDK_FILTER functions, initialize event.key->hardware_keycode.
2117         Improved gdk_flush () to not only do pending drawing operations
2118         but also process all currently pending events. This should make
2119         the behaviour more similar to the X11 version.  
2120
2121         * gdk/win32/gdkgc-win32.c (predraw_set_background) : a background
2122         option needs to be set even if there is no GDK_GC_BACKGROUND.
2123         (gdk_win32_hdc_get) : use predraw_set_background () independent
2124         of value_mask. This allows to draw dashed lines leaving the original
2125         background intact.
2126
2127         * gdk/win32/gdkimage-win32.c (gdk_image_new_bitamp) : free data
2128         after processing, because we can't reuse it as the X11 version does.
2129
2130         * gtk/gtk.def : updated exports
2131
2132         * gtk/makefile.msc.in : added ATK, removed all test apps. (I
2133         would like to get rid of this file again, and use straight
2134         makefile.msc again, as the other Gtk+ subdirs do)
2135
2136         * test/makefile.msc (new file) : build the test apps here
2137
2138 2001-05-05  ERDI Gergo  <cactus@cactus.rulez.org>
2139
2140         * gdk/gdkpango.c (gdk_pango_get_item_properties): Peek
2141         strike-through setting
2142         (gdk_draw_layout_line_with_colors): Render strike-through
2143
2144 Sat May  5 10:06:24 2001  Owen Taylor  <otaylor@redhat.com>
2145
2146         * Release 1.3.5
2147
2148         * configure.in (GTK_MICRO_VERSION): Up to 1.3.5
2149
2150         * NEWS: Updated
2151
2152         * demos/gtk-demo/Makefile.am (EXTRA_DIST): Fix minor
2153         Makefile breakage.
2154
2155 Sat May  5 09:18:30 2001  Owen Taylor  <otaylor@redhat.com>
2156
2157         * demos/gtk-demo/images.c (progressive_timeout): Fix
2158         typo in filename.
2159
2160         * gtk/gtktreeview.c (gtk_tree_view_row_activated): Comment
2161         out FIXME warning; just too annoying.
2162
2163 2001-05-04  Alex Larsson  <alla@lysator.liu.se>
2164
2165         * gdk/linux-fb/gdkcolor-fb.c:
2166         Better error messages.
2167
2168         * gdk/linux-fb/gdkpixmap-fb.c (gdk_pixmap_new):
2169         Initialize abs_x and abs_y.
2170         
2171         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic):
2172         Correct handling of stipple offset.
2173
2174         * gdk/linux-fb/gdkvisual-fb.c (gdk_visual_init):
2175         Treat directcolor framebuffers as truecolor.
2176         
2177 Thu May  3 14:13:49 2001  Owen Taylor  <otaylor@redhat.com>
2178
2179         * INSTALL.in HACKING gtk/gtkaccessible.[ch] gtk/gtk.c: Add
2180         dependency on Atk for accessibility support.
2181
2182         * configure.in **/Makefile.am: Major reworking of substituted
2183         variables for CFLAGS/LIBS to make a lot more sane and 
2184         keep the the compile/link lines a bit shorter.
2185
2186         * gdk/x11/gdkkeys-x11.c: Fix #endif with trailing stuff.
2187
2188 Thu May  3 08:10:54 2001  Owen Taylor  <otaylor@redhat.com>
2189
2190         * gtk/gtktexttag.c (gtk_text_tag_class_init): Fix return
2191         value to be G_TYPE_BOOLEAN, not G_TYPE_INT, also,
2192         use _gtk_boolean_handled_accumulator.
2193
2194 Thu May  3 07:00:09 2001  Owen Taylor  <otaylor@redhat.com>
2195
2196         * gtk/gtktextview.c: Patch from Juan Pablo Mendoza Mendoza
2197         to fix things so clicking inside selection leaves cursor
2198         at point where clicked. (#50324)
2199
2200         * gtk/gtksettings.c (gtk_settings_class_init): Restore
2201         sane value for default double click time.
2202
2203         * tests/testtext.c (test_init): Really path to input modules.
2204
2205 2001-05-03  Sven Neumann  <sven@convergence.de>
2206
2207         * demos/testpixbuf-save.c: include target-specific headers as
2208         done in testpixbuf-drawable.c
2209
2210 Wed May  2 20:36:38 2001  Owen Taylor  <otaylor@redhat.com>
2211
2212         * gtk/gtkentry.c (gtk_entry_real_insert_text): Reduce
2213         new_text_length appropriately when we run into the 
2214         size limit for the entry. (#53445, reported by Jeff Franks)
2215
2216         * tests/testgtk.c (create_entry): Remove most of the
2217         property toggle buttons. Replace with a "Props" button
2218         that brings up a property editor.
2219
2220         * tests/prop-editor.[ch] test/testtreeview.c tests/Makefile.am:
2221         Split the property editor code out for reuse, improve.
2222
2223 Wed May  2 17:26:22 2001  Owen Taylor  <otaylor@redhat.com>
2224
2225         * gdk/x11/gdkevents-x11.c gdk/x11/gdkwindow-x11.c: Always
2226         trap errors around calls to XSetInputFocus since we have
2227         no way of knowing reliably whether we are viewable or
2228         not. (#53947)
2229
2230 Tue May  1 09:21:23 2001  Jonathan Blandford  <jrb@redhat.com>
2231
2232         * gtk/gtktreeview.c (gtk_tree_view_button_release_drag_column):
2233         fix bug in dropping columns.  Moving columns now basically works
2234         modula some fine tuning.
2235
2236 Tue May  1 19:09:21 2001  Jonathan Blandford  <jrb@redhat.com>
2237
2238         * gtk/gtktreeview.c (gtk_tree_view_horizontal_autoscroll): Add
2239         autoscroll support.  It mostly works, but could use some fine
2240         tuning.
2241         * gtk/gtktreeview.c (gtk_tree_view_button_release_drag_column):
2242         Actually move the column.
2243
2244 Mon Apr 30 20:29:27 2001  Owen Taylor  <otaylor@redhat.com>
2245
2246         * gtk/gtkbutton.c gtk/gtkcheckbutton.c gtk/gtkoptionmenu.c 
2247           gtk/gtkspinbutton.c gtk/gtkstyle.c gtk/gtkwidget.c:
2248           New default theme! A slighly improved version of the 2.0 Raleigh
2249           theme, with Windows-esque focus/drawing default. 
2250           (GtkWidget::interior_focus defaults to TRUE.)
2251
2252         * gtk/gtkstyle.[ch]: Add a text_aa color halfway between text and base.
2253
2254 2001-04-30  Havoc Pennington  <hp@pobox.com>
2255
2256         * tests/testtext.c (line_numbers_expose): fix to work with
2257         gtk_paint_layout change
2258
2259 Mon Apr 30 19:18:07 2001  Owen Taylor  <otaylor@redhat.com>
2260
2261         * gtk/gtkstyle.[ch] gtk/gtkaccellabel.c gtk/gtkcellrenderertext.c
2262           gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c gtk/gtkprogressbar.c
2263           gtk/gtkvruler.c gtk/gtkvscale.c: Add an extra parameter
2264           use_text to gtk_paint_label() to deal with style->bg[] vs style->text[].
2265
2266         * gtk/gtkbbox.c gtk/gtkdialog.c: Tweak padding some to deal
2267           with GtkWidget::interior_focus = TRUE better.
2268
2269         * gtk/gtkbutton.c: Switch ::default_spacing to ::default_border,
2270         ::default_outside_border for more flexibility.
2271
2272         * gtk/gtkwidget.c (gtk_widget_style_get_valist): Remove 
2273         G_VALUE_NO_COPY_CONTENTS, to correspond with the recent
2274         change that had to be made with g_object_get.
2275
2276 Sun Apr 29 20:13:40 2001  Jonathan Blandford  <jrb@redhat.com>
2277
2278         * gtk/gtktreeview.c (gtk_tree_view_get_columns): new function.
2279         (gtk_tree_view_move_column_after): Clean up interface. 
2280
2281 Sun Apr 29 03:02:02 2001  Tim Janik  <timj@gtk.org>
2282
2283         * gtk/gtkpacker.h:
2284         * gtk/gtkenums.h: moved GtkAnchorType and GtkSideType from gtkpacker.h
2285          to gtkenum.h.
2286
2287         * gtk/gtkmain.c (gtk_main_do_event): silence compiler (GDK_SETTING not
2288         handled in switch).
2289
2290         * gtk/Makefile.am:
2291         (gtk.defs): generate enum portions with  glib-mkenums.
2292         (gtktypebuiltins_evals.c): generate this with glib-mkenums.
2293         got rid of makeenums.pl and makeenums.awk in distributed tarballs.
2294         
2295         * gtk/gtkaccelgroup.c (gtk_accel_group_add): refined havocs warning
2296         addition.
2297
2298         * docs/Changes-2.0.txt: keep a note on signal handlers now
2299         not getting emitted during the emission they were connected within.
2300
2301 2001-04-28  Havoc Pennington  <hp@pobox.com>
2302
2303         * gtk/gtkcolorsel.c (palette_new): fix bug in tooltip
2304
2305 2001-04-24  Havoc Pennington  <hp@redhat.com>
2306
2307         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_previous_line): 
2308         (gtk_text_layout_move_iter_to_next_line): fix these two for
2309         invisible text, lots of other stuff still hosed.
2310
2311         * gtk/gtkcolorsel.c (gtk_color_selection_set_change_palette_hook):
2312         new function, replaces the get/set palette stuff. This function 
2313         is intended for use by libgnomeui which should set the hook to a
2314         thing which sets the palette in GConf, and we need the
2315         GConf-to-xsettings proxy which will result in the change being
2316         propagated back to the GTK app.
2317
2318         * gtk/gtkaccelgroup.c (gtk_accel_group_add): add note to warning 
2319         about unusable signals that it may be because the signal has 
2320         parameters.
2321
2322         * gtk/gtkwidget.c (gtk_widget_modify_style): always copy the
2323         style, otherwise gtkrc.c won't know to create a new GtkStyle for
2324         it.
2325         (gtk_widget_modify_color_component): call
2326         gtk_widget_modify_style() so the rc style will get copied.
2327         (gtk_widget_modify_font): ditto
2328
2329         * gtk/gtkrc.c: make a couple variables static
2330
2331         * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): hide
2332         help button by default, since it does nothing
2333
2334         * gtk/gtkcolorsel.c: add tooltips, work on key navigation, fool
2335         around with UI
2336
2337         * gtk/gtkentry.c (gtk_entry_realize): request enter/leave notify
2338         so we can have tooltips
2339
2340         * gtk/gtkhsv.c (gtk_hsv_realize): request enter/leave notify so we
2341         can have tooltips
2342
2343         * gdk/gdkimage.h: mark gdk_image_new_bitmap with
2344         GDK_ENABLE_BROKEN, because its memory behavior is completely
2345         hosed.
2346
2347         * gtk/gtknotebook.c: remove key press handler, replace with
2348         binding set, add numeric keypad support
2349
2350         * gtk/gtktextview.c (gtk_text_view_class_init): accept KP_Delete
2351
2352         * gtk/gtktext.c (gtk_text_key_press): add a bunch of KP keysyms
2353
2354         * gtk/gtkentry.c (gtk_entry_class_init): accept GDK_KP_Delete in
2355         addition to plain Delete
2356
2357         * gtk/gtktextview.c (gtk_text_view_key_press_event): accept
2358         GDK_KP_Enter in addition to GDK_Return
2359
2360         * gtk/gtkfontsel.c (gtk_font_selection_size_key_press): connect to
2361         activate on entry instead of key press
2362         (gtk_font_selection_on_clist_key_press): get
2363         rid of this signal handler, not needed with new font sel.
2364
2365         * gtk/gtkfilesel.c (gtk_file_selection_key_press): remove a
2366         no-longer-needed emit_stop_by_name(), just return TRUE
2367
2368         * gtk/gtkhscrollbar.c, gtk/gtkvscrollbar.c: remove keybindings
2369         cruft, this widget is no longer focusable.
2370
2371         * gtk/gtkrange.h, gtk/gtkrange.c, gtk/gtkvscale.c,
2372         gtk/gtkhscale.c: Get rid of trough_keys virtual function, add
2373         move_slider action signal, add binding set for vscale/hscale, in
2374         the process support numeric keypad
2375
2376         * gtk/gtkentry.c (gtk_entry_class_init): Add keypad bindings; 
2377         make GDK_Return and GDK_KP_Enter activate the entry via 
2378         binding set, instead of hardcoded.
2379
2380 Fri Apr 27 20:27:21 2001  Jonathan Blandford  <jrb@redhat.com>
2381
2382         * gtk/gtktreeview.[hc]: Massive reorder/cleanup of a lot of the
2383         code.  Some documentation added.
2384
2385 2001-04-27  Havoc Pennington  <hp@redhat.com>
2386
2387         * gtk/gtkcombo.c (gtk_combo_popup_button_press): fix warning
2388
2389         * gtk/gtkmessagedialog.c (gtk_message_dialog_init): make messages selectable
2390
2391         * gtk/gtkentry.c (gtk_entry_real_insert_text): don't strip
2392         line/para separators
2393         (gtk_entry_create_layout): set single paragraph mode on the layout
2394
2395         * gtk/gtkbutton.c (gtk_button_new_from_stock): don't put much
2396         spacing between the image and label; instead, inside a button box 
2397         the button will get extra space that will go there, but if people 
2398         configure button box for 0 chubbiness, then there's no spacing.
2399
2400         * gtk/gtkbbox.c (gtk_button_box_class_init): Make child ipadding
2401         and min/max size style properties, so people can tune their
2402         chubbiness.
2403
2404         * tests/testgtk.c (make_toolbar): remove calls to removed toolbar
2405         functions
2406
2407         * gtk/gtktoolbar.c (gtk_toolbar_class_init): Make space_size,
2408         space_style, and button_relief into style properties, remove
2409         functions for setting them
2410         
2411         * gtk/gtkmenu.c (gtk_menu_key_press): handle menu bar accel to pop 
2412         it back down
2413
2414         * gtk/gtkoptionmenu.c (gtk_option_menu_get_props): free boxed
2415         types from gtk_widget_style_get
2416
2417         * gtk/gtkmenubar.c (gtk_menu_bar_set_shadow_type): Remove, replace
2418         with a style property.
2419
2420         * gdk/x11/gdkevents-x11.c: namespace the settings
2421
2422         * gtk/gtkmenubar.c: Add F10 accelerator to move between menubars.
2423
2424         * gtk/gtksettings.c (gtk_settings_class_init): remove code with
2425         side effects from inside g_assert(), so that G_DISABLE_ASSERT can
2426         be used. Also, translate doc strings for settings. Also, namespace
2427         the double-click-time property. Also, remove bell properties crap.
2428
2429 2001-04-27  Sven Neumann  <sven@gimp.org>
2430
2431         * Makefile.am: before creating links, check if pkg-config files
2432         exist for the default target. Otherwise link to the pkg-config files
2433         that got installed with this build.
2434
2435 Thu Apr 26 19:11:46 2001  Jonathan Blandford  <jrb@redhat.com>
2436
2437         * gtk/gtktreeview.c (gtk_tree_view_motion): clean up column
2438         dragging code.  Revealed some (potential) GdkWindow bugs.
2439
2440         * gdk/x11/gdkwindow-x11.c (gdk_window_reparent): add
2441         _gdk_window_init_position to the end of reparent to fix the case
2442         of reparenting when new_x != old_x and new_y != old_y.
2443
2444 Thu Apr 26 10:54:50 2001  Owen Taylor  <otaylor@redhat.com>
2445
2446         * gtk/gtkentry.c (strstr_len): Fix optimization that
2447         was correct for the use here, but completely incorrect
2448         in general.
2449
2450 Thu Apr 26 10:40:41 2001  Owen Taylor  <otaylor@redhat.com>
2451
2452         * gtk/gtkwindow.h: Remove deprecation of gtk_window_set_default_size()
2453         until patch adding gtk_window_set_size() is recommitted. 
2454
2455         * **Makefile.am configure.in gdk/x11/gdkim-11.c
2456           gtk/gtkmain.c gtk/gtkimmulticontext.c gtk/gtkmain.c
2457           gtk/gtkrc.c: Remove all traces of -DX_LOCALE support.
2458           (#10784)
2459
2460 Wed Apr 25 12:16:36 2001  Owen Taylor  <otaylor@redhat.com>
2461
2462         * gdk/X11/gdkevents-x11.c (gdk_event_translate): Test for 
2463         window == NULL in a number of cases.
2464
2465         * tests/testdnd.c: Set module path for gdk-pixbuf.
2466
2467 Thu Apr 19 16:11:07 2001  Owen Taylor  <otaylor@redhat.com>
2468
2469         * gtk/Makefile.am xembed.h: File containing #defines
2470         for XEMBED protocol.
2471
2472         * gtk/gtkplug.[ch] gtk/gtksocket.[ch]: 
2473
2474         - Change protocol from old plug/socket specific protocol
2475           to XEMBED draft
2476         - Various fixes to work with GTK+-2.0
2477
2478         Still quite a bit of work to do here to handle initiation
2479         from the socket side (as specified by XEMBED), to handle
2480         the more advanced features of XEMBED, and to figure out
2481         a good way to handle same-app embedding with less overhead
2482         than using full XEMBED.
2483
2484 Wed Apr 18 16:04:28 2001  Owen Taylor  <otaylor@redhat.com>
2485
2486         * gtk/gtkwindow.[ch] (gtk_window_real_set_focus): Keep
2487         track of whether the toplevel has the focus; only send
2488         focus-in events to the focus widget when the window
2489         actually has the focus.
2490
2491 2001-04-25  Havoc Pennington  <hp@pobox.com>
2492
2493         * gtk/gtkwindow.h: set_decorations_hint and set_functions_hint
2494         were still in the header
2495
2496 2001-04-24  Alexander Larsson  <alexl@redhat.com>
2497
2498         * gtk/gtkclist.[ch]:
2499         * gtk/gtkctree.c:
2500         When there is a row highlighted for D'n'D it must alse
2501         be painted hightlighted on exposes. Otherwise exposes from
2502         the icon being dragged will mess up the hightlight.
2503
2504         * gtk/gtkfontsel.c:
2505         Don't recenter selected font when exposing the font family
2506         clist. This means you can now actually scroll the font family
2507         list.
2508
2509         * gtk/gtknotebook.c:
2510         Fix focus movement on scrolling tabs that are placed on the left
2511         and right.
2512
2513 2001-04-21  Havoc Pennington  <hp@pobox.com>
2514
2515         * gtk/gtktextdisplay.c (gtk_text_layout_draw): handle 0-height
2516         empty/invisible lines.
2517
2518         * gtk/gtktextiter.c (gtk_text_iter_set_visible_line_offset)
2519         (gtk_text_iter_set_visible_line_index): new functions to set
2520         indexes excluding invisible text
2521
2522         * gtk/gtktextlayout.c (line_display_iter_to_index): get visible 
2523         index
2524
2525         * gtk/gtktextiter.c (gtk_text_iter_get_visible_line_index)
2526         (gtk_text_iter_get_visible_line_offset): new functions to 
2527         get indexes excluding invisible text
2528
2529         * gtk/gtkmessagedialog.c (gtk_message_dialog_init): strip out a
2530         bunch of extra padding that served no purpose
2531
2532         * gtk/gtkdialog.c: Make all the spacings configurable via style
2533         properties, for chubbiness configuration in themes
2534
2535         * tests/testtext.c: fix path to the immodules.
2536         
2537 Mon Apr 23 18:57:03 2001  Jonathan Blandford  <jrb@redhat.com>
2538
2539         * gtk/gtksocket.c (gtk_socket_filter_func): add missing '}' that
2540         got munched by #endif.
2541
2542         * gtk/Makefile.am (gtk_plug_c_sources): add missing '\'
2543
2544         * gtk/gtktreeview.c: Refactored code to clean up a number of
2545         events.
2546
2547         * gtk/gtktreemodel.c (gtk_tree_path_compare): Switched return
2548         values to make consistent with other functions.  Spotted by Jeff
2549         Franks <jcf@tpg.com.au>.
2550
2551         * gtk/gtktreeview.h (struct _GtkTreeViewClass): Fixes to signal
2552         declaration spotted by Jeff Franks <jcf@tpg.com.au>.
2553
2554 2001-04-23  Sven Neumann  <sven@gimp.org>
2555
2556         * gtk/Makefile.am
2557         * gtk/gtkplug.c
2558         * gtk/gtksocket.c: on request of Owen, reverted my last change 
2559         and exclude gtkplug.c/gtksocket.c from the build for non-X11 targets
2560
2561 2001-04-23  Sven Neumann  <sven@gimp.org>
2562
2563         * gtk/gtkplug.c: put into #ifdef GDK_WINDOWING_X11 to make GTK+
2564         compile for non-X11 targets again
2565
2566 2001-04-20  Alexander Larsson  <alexl@redhat.com>
2567
2568         * gtk/gtkcolorsel.[ch]:
2569         API Change. Take GdkColor arguments instead of gdouble *.
2570         Leave the old gtk_color_selection_set_color for compatibility,
2571         but marked deprecated.
2572         Do correct rounding when converting RGB <-> HSV.
2573         
2574         * gtk/gtkcolorseldialog.c:
2575         * tests/testgtk.c:
2576         Use new GtkColorSelection API.
2577
2578         * gtk/gtkhsv.c:
2579         Fix problem selecting colors in triangle when Hue is 330.
2580         Fix some black dots around the HSB triangle.
2581         
2582         * gtk/gtkfilesel.c:
2583         return FALSE from the focus_in_event handler to fix focus problems.
2584
2585 2001-04-18  Havoc Pennington  <hp@redhat.com>
2586
2587         * gtk/gtkwindow.c (gtk_window_class_init): add signals and binding
2588         set, so keybindings are configurable    
2589         (gtk_window_activate_default): Change to activate the focus widget
2590         instead if there's a focus widget, to be consistent with the
2591         behavior that previously existed in key_press_event
2592
2593 2001-04-18  Havoc Pennington  <hp@redhat.com>
2594
2595         * gdk/gdkkeyuni.c: Handle numeric keypad keysyms; bug #50201
2596
2597 2001-04-18  Havoc Pennington  <hp@redhat.com>
2598
2599         Close bug #50615:
2600         
2601         * gtk/gtkstyle.c (gtk_default_draw_layout): Use text_gc to draw
2602         the layout
2603
2604         * gtk/gtktext.c: Use base/text instead of bg/fg throughout
2605
2606         * gtk/gtkentry.c: Use base/text instead of bg/fg throughout
2607
2608         * gtk/gtktextdisplay.c: Use base/text instead of bg/fg throughout
2609         
2610         * gtk/gtkstyle.c (gtk_style_init): make GTK_STATE_SELECTED default
2611         to blue for base, in addition to bg
2612         
2613 2001-04-18  Havoc Pennington  <hp@redhat.com>
2614
2615         * tests/testgtk.c (create_image): allow shrinking the image window
2616         to test that we clip to allocation.
2617
2618         * gtk/gtkimage.c (gtk_image_expose): clip to allocation,
2619         #9845
2620
2621         * gtk/gtkenums.h: move GtkWrapMode in here, #50472
2622
2623 Wed Apr 18 14:23:14 2001  Owen Taylor  <otaylor@redhat.com>
2624
2625         * gdk/x11/gdkimage-x11.c (gdk_image_new): Try changing
2626         mode on shm segments to 0600. We'll see who complains.
2627
2628         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Call
2629         _gdk_windowing_window_destroy() AFTER recursing through
2630         children.
2631
2632         * tests/Makefile.am (noinst_PROGRAMS): Build testsocket,
2633         testsocket_child on X.
2634
2635         * tests/testsocket[_child].c: Fix uses of
2636         gtk_window_get_default_accel_group().
2637
2638         [ Merge patch from Ramiro Estrugo  <ramiro@eazel.com> from gtk-1-2 ]
2639
2640         * gdk/gdkimage.c: (gdk_image_get):
2641         Deal with the possibility that XGetImage() might return NULL.
2642         Allocate the GdkImagePrivate structure only after XGetImage()
2643         succeeds in order not to dereference a NULL ximage pointer.  This
2644         prevents a core dump when XGetImage() fails - which is unlikely,
2645         but can happen due to race conditions accessing the geometries of
2646         drawables.  An x error will still be triggered, but the gdk image
2647         wrapper at least wont seg fault.
2648         
2649 2001-04-18  Havoc Pennington  <hp@redhat.com>
2650
2651         * gtk/gtkimage.c: fix to properly queue resizes when the image is
2652         set
2653
2654         * gtk/gtktextview.c (gtk_text_view_do_popup): desensitize Paste
2655         if the insertion point isn't editable
2656
2657         * demos/gtk-demo/images.c: Added a GtkImage demo
2658
2659         * demos/gtk-demo/drawingarea.c: drawing area demo
2660         
2661         * demos/gtk-demo/menus.c (create_menu): cleanups
2662
2663 Wed Apr 18 12:15:52 2001  Owen Taylor  <otaylor@redhat.com>
2664
2665         * gdk/x11/gdkwindow-x11.c gdk/x11/gdkwindow-x11.h 
2666           gdk/x11/gdkevents-x11.c: Introduce an extra child
2667         of toplevel windows that serves to hold the focus to
2668         avoid events being delivered to embedded windows.
2669
2670         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Introduce
2671         some extra variables to clean up code and reduce the
2672         number of casts.
2673
2674         * gdk/x11/gdkwindow-x11.h (struct _GdkXPositionInfo): Use
2675         guint for 1 bit bit fields, not gboolean.
2676
2677 Wed Apr 18 10:04:23 2001  Owen Taylor  <otaylor@redhat.com>
2678
2679         * gtk/gtktooltips.c (gtk_tooltips_paint_window): Return FALSE,
2680         not TRUE. (Fixes #52925)
2681
2682 Tue Apr 17 18:05:34 2001  Owen Taylor  <otaylor@redhat.com>
2683
2684         * Released 1.3.4
2685
2686         * NEWS: Updated
2687
2688         * gtk/gtktextview.c (gtk_text_view_class_init): Fix to not
2689         use GTK_TYPE_ENUM.
2690
2691 Tue Apr 17 13:47:12 2001  Owen Taylor  <otaylor@redhat.com>
2692
2693         * configure.in: Don't put -lgthread in GLIB_LIBS, GLIB_DEPLIBS
2694
2695         * gtk/gtktypeutils.h gtk/gtksignals.h: Restore proper parameter
2696         names to compatibility #defines so docs work.
2697
2698         * gtk/gtkenums.h: Remove GtkMenuFactoryType
2699
2700         * gtk/gtkwindow.c gtk/gtkdnd.c: Docs cleanups.
2701
2702         * configure.in: Don't include -lgthread in GLIB_LIBS, GLIB_DEPLIBS
2703
2704         * tests/testgtkrc: No magenta cursors, please.
2705
2706         * README.in INSTALL.in HACKING README.cvs-commits: Updated.
2707
2708         * gtk/gtkenums.h (enum): Remove left over GtkMenuFactoryType.
2709         
2710 Mon Apr 16 14:38:41 2001  Owen Taylor  <otaylor@redhat.com>
2711
2712         * gtk/gtklist.c gtk/gtklistitem.c: Remove explicit pointer
2713         grabs, since they are no longer necessary.
2714
2715         * gtk/gtkcombo.c (gtk_combo_popup_button_press): Fix #52926
2716         by signal_connect() and call gtk_button_pressed() rather
2717         than signal_connect_after().
2718
2719         * tests/testgtk.c: Restore radio menu items to combos 
2720         since they'll look OK with Raleigh, and it is easier
2721         than finishing the process of removing them that was
2722         started earlier.
2723
2724 2001-04-16  Hans Breuer  <hans@breuer.org>
2725
2726         * gdk/gdk.def :
2727         * gtk/gtk.def : added all exports required to link PyGtk 0.7.1
2728
2729         * gdk/gdkfont.h : #define GDK_TYPE gdk_font_get_type ()
2730         we are interested in the functions return value not the function address
2731         * gdk/gdkvisual.h : same for GDK_TYPE_VISUAL
2732
2733         * gtk/makefile.msc.in : reflect movement of GDK_TYPEs from gtk to gdk
2734
2735 2001-04-14  Hans Breuer  <hans@breuer.org>
2736
2737         * gdk/gdk.def :
2738         * gdk/makefile.msc : updated
2739
2740         * gdk/win32/gdkdrawable.win32 (gdk_win32_draw_rectangle) : if modus is 
2741         "fill with tile" do so with new helper function gdk_win32_draw_tiles 
2742         (the testgtk::text backgound pixmap is drawn again)
2743         Changed SetTextAlign before pango_win32_render to TA_BASELINE to reflect 
2744         Win32 Pango change
2745         * gdk/win32/gdkprivate-win32.h : prototype for gdk_win32_draw_tiles
2746
2747         * gdk/win32/gdkproperty-win32.c : first implementation of gdk_setting_get
2748         Not sure if the returned settings have the right unit, because I couldn't
2749         find any docs for the X version ...
2750
2751         * gtk/gtk.def :
2752         * gtk/makefile.msc.in : updated
2753
2754 Thu Apr 12 17:41:17 2001  Owen Taylor  <otaylor@redhat.com>
2755
2756         * gtk-2.0.m4: Fix up to refer to GTK+, not to GLib; fix some
2757         wording problems. (Compared to version from Johannes Stezenbach to
2758         check correctness.)
2759
2760 Thu Apr 12 21:04:26 2001  Tim Janik  <timj@gtk.org>
2761
2762         * gtk/gtktreeview.c (_gtk_tree_view_column_start_drag): get
2763         this to compile.
2764
2765 2001-04-12  Anders Carlsson  <andersca@codefactory.se>
2766
2767         * gtk/gtkcellrenderertextpixbuf.c (gtk_cell_renderer_text_pixbuf_class_init): It's pixbuf_pos,
2768         not pixbufpos.
2769
2770         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render): Fix small typo.
2771
2772         * gtk/gtkcellrenderer.c (gtk_cell_renderer_get_property): xpad and ypad
2773         are unsigned insts, therefore use g_value_set_uint.
2774         (gtk_cell_renderer_set_property): Likewise, use g_value_get_uint.
2775
2776 Sun Apr  8 05:36:06 2001  Jonathan Blandford  <jrb@redhat.com>
2777
2778         * gtk/gtktextview.c (gtk_text_view_class_init): fix a fixme.
2779
2780         * gtk/gtkcellrendertoggle.c: change GTK_TYPE_POINTER to
2781         GTK_TYPE_STRING.
2782
2783         * gtk/gtktreeview.c: New functions to allow initial column
2784         dragging work.
2785
2786         * gtk/gtktreeviewcolumn.c: Initial column dragging support.
2787
2788         * tests/testtreefocus.c: give dave some love.
2789
2790         * tests/testtreesort.c: Modify test to check really long samples.
2791
2792 2001-04-11  Alexander Larsson  <alexl@redhat.com>
2793
2794         * gtk-2.0.m4: Pass pkg-config options
2795         before the other args so it works even if
2796         POSIXLY_CORRECT is set.
2797
2798 Mon Apr  9 19:02:07 2001  Tim Janik  <timj@gtk.org>
2799
2800         * configure.in (GTK_MICRO_VERSION): increment version to 1.3.4 (binary
2801         0, interface 0).
2802
2803 2001-04-04  Denis Oliver Kropp  <dok@convergence.de>
2804
2805         * gtk/gtkcalendar.c (gtk_calendar_button_press):
2806         check for action_func != NULL
2807
2808 2001-04-04  Sven Neumann  <sven@gimp.org>
2809
2810         * tests/testgtk.c (test_init): corrected path to gtk.immodules
2811
2812 Wed Apr  4 09:18:18 2001  Tim Janik  <timj@gtk.org>
2813
2814         * Released Gtk+-1.3.3.
2815
2816 Wed Apr  4 07:42:23 2001  Tim Janik  <timj@gtk.org>
2817
2818         * gdk/Makefile.am (EXTRA_DIST): add makeenums.pl to EXTRA_DIST.
2819
2820 Wed Apr  4 04:13:18 2001  Tim Janik  <timj@gtk.org>
2821
2822         * gtk/stock-icons/Makefile.am: stay in builddir and read/write
2823         files to/from source dir. (if we don't stay in builddir, we
2824         can't reach make-inline-pixbuf.
2825
2826         * gdk/Makefile.am (gdkenumtypes.c): add $(srcdir) to mekeenums.pl
2827         deps.
2828
2829         * configure.in (GTK_MICRO_VERSION): up and away (1.3.3 bin/interface
2830         ages 0).
2831
2832 Tue Apr  3 15:04:45 2001  Jonathan Blandford  <jrb@redhat.com>
2833
2834         * gtk/gtktreemodelsort.h:  removed set_sort_column, as it was
2835         moved to the GtkTreeSortable interface.
2836
2837         * gtk/gtktreeselection.c (gtk_tree_selection_selected_foreach):
2838         Make more efficient (fixes #50262).
2839
2840 Tue Apr  3 13:55:37 2001  Owen Taylor  <otaylor@redhat.com>
2841
2842         * NEWS: Updated.
2843
2844         * configure.in: Remove support for uninstalled glib.
2845
2846         * gtk/gtkdnd.c (gtk_drag_highlight_expose): Return FALSE as
2847         so as not to stop emission.
2848
2849         * gtk-config-2.0.in: Exit with an error message that gtk-config-2.0
2850         is no longer supported.
2851
2852         * Makefile.am gtk/Makefile.am tests/*: Moved all tests
2853         into tests, change build order to build modules before
2854         gtk/.
2855
2856         * modules/input/Makefile.am: Move gtk-query-immodules-2.0 invocation
2857         to here.
2858
2859 Tue Apr  3 13:52:57 2001  Tim Janik  <timj@gtk.org>
2860
2861         * gtk/gtkitemfactory.[hc]: changed gtk_item_factory_dump_items()
2862         and gtk_item_factory_dump_rc() GtkPatternSpec argument to
2863         GPatternSpec. this is actually unlikely to cause breakage in
2864         third-party apps since except for gle, pretty much ever caller
2865         passes NULL here.
2866
2867         * gtk/gtkbindings.[hc]: removed gtk_pattern_*() API.
2868
2869         * *.c: use g_pattern_*() API.
2870
2871         * docs/Changes-2.0.txt: GtkPatternSpec->GPatternSpec updates.
2872
2873         * gtk/gtkstyle.c (gtk_default_draw_resize_grip): assert unhandled
2874         directions aren't passed in.
2875
2876         * gtk/gtksettings.[hc] (_gtk_settings_parse_convert): export conversion
2877         functionality to be usable from gtkstyle.c as well, give precedence
2878         for conversion to user-supplied parsers.
2879         s/_gtk_rc_property_parser_for_type/_gtk_rc_property_parser_from_type/;
2880
2881         * gtk/gtkstyle.c (_gtk_style_peek_property_value): use
2882         _gtk_settings_parse_convert() for rcporperty value conversion.
2883
2884 2001-04-03  Alexander Larsson  <alexl@redhat.com>
2885
2886         * gdk/linux-fb/gdkevents-fb.c:
2887         Add empty gdk_setting_get().
2888
2889 Tue Apr  3 05:09:07 2001  Tim Janik  <timj@gtk.org>
2890
2891         * gtk/gtkmain.c (_gtk_boolean_handled_accumulator): use more elaborate
2892         variable names.
2893         
2894         * gtk/makeenums.pl: touch this so enum files get remade.
2895
2896 Mon Apr  2 19:36:57 2001  Jonathan Blandford  <jrb@redhat.com>
2897
2898         * gtk/gtktreestore.c (gtk_tree_store_init):  Bug fix to make trees
2899         work again when not sorted.
2900
2901         * gtk/gtktreeview.c (gtk_tree_view_class_init): Add "collapse_row"
2902         and "expand_row" signal, closing bug 52578.
2903
2904         * gtk/gtktreeview.c (gtk_tree_view_expand_row): Add signal
2905         support.
2906
2907         * gtk/gtktreeview.c (gtk_tree_view_collapse_row): Add signal
2908         support.
2909
2910 Mon Apr  2 18:18:07 2001  Owen Taylor  <otaylor@redhat.com>
2911
2912         * gdk/gdkevents.h: Add GdkEventSetting event for notification
2913         of changes to system settings, gdk_setting_get() to retrieve
2914         a single system setting.
2915
2916         * gdk/x11/gdkevents-x11.c: Bridge gdk_setting_get() and GdkEventSetting
2917         to the draft XSETTINGS mechanism.
2918
2919         * gdk/x11/xsettings-{common,client}.[ch]: Sample-implementation of
2920         XSETTINGS.
2921
2922         * gtk/gtkmain.c gtk/gtksettings.[ch]: Propagate notification
2923         of GDK settings changes to the GtkSettings object.
2924
2925         * gdk/gdkevents.[ch] gdk/gtk/gtksettings.c: Hook up the
2926         double-click-timeout property to GDK.
2927
2928         * gdk/gdkcolor.[ch] gdk/gdkvisual.h gdk/gdkevent.[ch] gdk/gdkfont.[ch]:
2929         Define GDK boxed types here.
2930
2931         * gdk/Makefile.am gdk/makeenums.pl: Generate source files
2932         gdk/gdkenumtypes.[ch] for enum definitions.
2933
2934         * gtk/gtkcompat.h: Add defines for GTK_TYPE_GDK_*
2935         * gtk/gtk-boxed.defs: Comment out GDK types
2936         * gtk/gtktypeutils.h: Remove GDK types
2937         * gtk/Makefile.am: No longer scan GDK headers for enumerataions
2938
2939 Mon Apr  2 16:41:08 2001  Owen Taylor  <otaylor@redhat.com>
2940
2941         * Applied patch from Ron Steinke to add signal accumulators
2942         so that signals with the convention 'TRUE return means
2943         handled' stop emission on a TRUE return.
2944
2945         * gtk/gtkmain.[ch]: Add private accumulator 
2946         _gtk_boolean_handled_accumulator, used throughout GTK+.
2947         
2948         * gtk/gtkspinbutton.c: Add accumulator for ::output.
2949
2950         * gtk/gtktipsquery.c: Add accumulator for ::widget_selected
2951         
2952         * gtk/gtkwidget.c: Add accumulators for event signals,
2953         ::drag_motion, ::drag_drop. Use _gtk_boolean_handled_accumator
2954         for ::mnemonic-activate.
2955
2956         * gtk/gtkwindow.c: Add accumulator for ::frame_event
2957
2958 Mon Apr  2 16:24:21 2001  Owen Taylor  <otaylor@redhat.com>
2959
2960         * gtk/gtkwidget.c: Add missing include.
2961
2962 Mon Apr  2 16:56:15 2001  Jonathan Blandford  <jrb@redhat.com>
2963
2964         * gtk/gtkmarshal.list (VOID:BOXED,BOXED,BOXED,BOXED): new
2965         marshaller.
2966
2967         * gtk/gtktreemodel.c (gtk_tree_model_range_changed): change
2968         "changed" signal to "range_changed".
2969
2970         * gtk/gtktreeview.c (gtk_tree_view_set_model): fix small bug where
2971         removing a tree from one model would remove all trees from that
2972         model.
2973         * gtk/gtktreeview.c (gtk_tree_view_range_changed): use range
2974         changed signal instead.
2975
2976 Mon Apr  2 16:13:58 2001  Owen Taylor  <otaylor@redhat.com>
2977
2978         * gtk/gtkinvisible.c (gtk_invisible_style_set): Avoid
2979         chaining up to parent impl, since we have a INPUT_ONLY
2980         window.
2981
2982         * gtk/gtkentry.[ch]: Add a cursor_color property to set the
2983         foreground color for the cursor.
2984
2985 Mon Apr  2 15:06:13 2001  Owen Taylor  <otaylor@redhat.com>
2986
2987         * gtk/gtkstyle.c (_gtk_style_peek_property_value): Reference 
2988         param spec when caching property values, since we unref it
2989         later when we free the style.
2990
2991         * gtk/gtkoptionmenu.c (gtk_option_menu_get_props): Dont' free
2992         values since they are retrieved with G_VALUE_NO_COPY_CONTENTS.
2993
2994 Mon Apr  2 10:47:57 2001  Owen Taylor  <otaylor@redhat.com>
2995
2996         * gtk/gtkwidget.c (gtk_widget_class_init): Fix 
2997         G_VALUE_NO_COPY_CONTENTS instead of G_SIGNAL_TYPE_STATIC_SCOPE
2998         stupidity.
2999
3000 Mon Apr  2 00:51:11 2001  Owen Taylor  <otaylor@redhat.com>
3001
3002         [ First pass at adding style properties. Still needs some definite
3003         fine-tuning. ]
3004
3005         * gtk/gtkbutton.c: Add ::default_spacing style property.
3006          
3007         * gtk/gtkcheckbutton.[ch] gtkradiobutton.c: Add ::indicator_size,
3008         ::indicator_spacing style properties.
3009
3010         * gtk/gtkoptionmenu.c: Add ::indicator_size, ::indicator_spacing
3011         style properties.
3012
3013         * gtk/gtk{,h,v}paned.[ch]: Make handle_size a style property
3014         rather than a normal property.
3015
3016         * gtk/gtkwidget.c: Add an ::interior_focus style property to
3017         draw focus inside buttons, in the Windows/Java Metal/etc. style.
3018
3019         * gtk/gtkbutton.c gtk/gtkcheckbutton.c gtk/gtktogglenbutton.c:
3020         Honor ::interior_focus.
3021         
3022         * gtk/gtkentry.c: Don't draw focus at all when ::interior_focus is 
3023         TRUE.
3024
3025         * gtk/gtkrange.[ch] gtk/gtk{h,v}scrollbar.c gtk/gtk{h,v}scale.c:
3026         Add ::slider_width, ::trough_border, ::stepper_size,
3027         ::stepper_spacing style properties.
3028
3029         * gtk/gtkscale.[ch] Add ::slider-length style property.
3030
3031 2001-04-02 Alexander Larsson   <alexl@redhat.com>
3032
3033         * gdk/linux-fb/gdkwindow-fb.c:
3034         Add gdk_window_begin_resize_drag and gdk_window_begin_move_drag. Remove some
3035         warnings that were spewed on startup.
3036
3037         * gtk/gtkwindow-decorate.c:
3038         gtk_window_reposition -> _gtk_window_reposition
3039
3040 Sun Apr  1 21:37:22 2001  Owen Taylor  <otaylor@redhat.com>
3041
3042         * gtk/gtkwidget.[ch] gtk/gtktypeutils.c gtk/gtk-boxed.defs:
3043         Add boxed type for GtkRequistion. Use it for ::size-request.
3044
3045         * gtk/gtkstyle.[ch] gtk/gtktypeutils.c gtk/gtk-boxed.defs:
3046         Add a new GtkBorder structure useful for geometry properties
3047         for widgets. Add corresponding GTK_TYPE_BORDER.
3048         
3049         * gtk/gtkwidget.c (gtk_widget_class_install_style_property):
3050         Support automatic parser selection like
3051         gtk_settings_install_property_parser().
3052
3053         * gtk/gtksettings.c (_gtk_rc_property_select_parser): Export
3054         functionality for use by gtk_widget_class_install_style_property.
3055         Support GTK_TYPE_BORDER, GTK_TYPE_REQUISITION.
3056
3057 Sun Apr  1 20:48:59 2001  Owen Taylor  <otaylor@redhat.com>
3058
3059         * gtk/gtkentry.c (gtk_entry_class_init): Make invisible-char
3060         g_param_spec_unichar(). 
3061
3062 Sun Apr  1 23:41:37 2001  Tim Janik  <timj@gtk.org>
3063
3064         * gdk/x11/gdkwindow-x11.c (gdk_window_focus): raise window for non
3065         _NET window managers.
3066
3067         * gtk/gtkmenufactory.[hc]: cvs removed those files now.
3068
3069 Sun Apr  1 08:00:13 2001  Tim Janik  <timj@gtk.org>
3070
3071         * gtk/gtkwidget.[hc]: got rid of gtk_widget_popup(), a function that
3072         bad needs to be nuked, not just deprecated.
3073
3074         * gtk/gtktooltips.c (gtk_tooltips_draw_tips): don't use 
3075         gtk_widget_popup().
3076
3077         * gtk/*.[hc]: s/activate_mnemonic/mnemonic_activate/g;
3078         
3079         * gtk/gtkmenufactory.[hc]: removed this long-standingly deprecated
3080         widget.
3081         
3082         * docs/Changes-2.0.txt: updates.
3083         
3084 Sun Apr  1 01:02:54 2001  Jonathan Blandford  <jrb@redhat.com>
3085
3086         * gtk/gtktreestore.c (gtk_tree_store_sort_iter_changed):
3087         for (i = 0; i < 100; i ++)
3088           g_print ("I will confirm it compile before committing\n");
3089
3090 Sun Apr  1 00:52:06 2001  Jonathan Blandford  <jrb@redhat.com>
3091
3092         * gtk/gtktreestore.c: Initial work on implementing the
3093         GtkTreeSortable interface.  Basicaly a big cut'n'paste job.
3094
3095 Sun Apr  1 03:28:14 2001  Tim Janik  <timj@gtk.org>
3096
3097         * gtk/gtkwidget.c: fixed a bunch of notifications, added
3098         reference counts around emissions where the widget is used afterwards.
3099         added freeze/thaws around multiple properties being notified.
3100         (_gtk_widget_get_aux_info): cleanups.
3101         
3102         * gtk/gtksettings.c (gtk_settings_install_property): provide
3103         default parsing functions for gdkcolor, enums and flags.
3104
3105         * gtk/gtkwindow.[hc]: partially reverted patch from havoc,
3106         applied by owen.
3107         backed out gtk_window_get_location(), gtk_window_set_location(),
3108         gtk_window_get_size() and gtk_window_set_size(), these
3109         have to be sorted out wrg x/y/width/height/default_with/default_height
3110         properties.
3111         kept a flag in GtkWindowGeometryInfo to handle user
3112         resetting default sizes.
3113         cleaned up ZVT comments.
3114         bunch of assorted bug fixes, notification fixes.
3115         (_gtk_window_reposition): make this a really internal function.
3116         
3117         * gtk/testgtk.c: fixups.
3118         
3119 2001-03-31  Hans Breuer  <hans@breuer.org>
3120
3121         * config.h.win32.in : disable USE_MMX for msvc build cause
3122         the assembler doesn't fit and is out of my scope. Disable
3123         USE_GMODULE for msvc build as wel. The right way to share
3124         binaries on win32 would be to use libtiff.dll etc. To reduce
3125         installation hassles IMO it's better to include all fileformats
3126         builtin to gdk-pixbuf
3127
3128         * gdk-pixbuf/makefile.msc : new file
3129
3130         * gdk/gdk.def : updated
3131
3132         * gdk/win32/gdkevents-win32.c : don't erase the background if
3133         .no_bg is set. It improves the scrolling (e.g. of testgtk main
3134         buttons
3135         * gdk/win32/gdkgeometry-win32.c : added comment about the above
3136
3137         * gdk/win32/gdkwindow-win32.c : added three new functions like
3138         the X version. Only one is implemented, because the other two
3139         "gdk_window_begin_(resize|move)_drag" got no docs and appear to
3140         be default behaviour on win32 anyway ...
3141
3142         * gtk/gtk.def : updated
3143
3144         * gtk/makefile.msc.in : update for new files, use glib-genmarshal
3145         from where it was built and add an additional rule to automagically
3146         build gtkmarshal.[hc]
3147
3148         * gtk/gtkfilesel.c (open_new_dir) : don't increase n_entries
3149         before array access for the current entry isn't finished
3150
3151         * gtk/gtktreeitem.c (gtk_tree_item_subtree_button_click) :
3152         use g_return_val_if_fail
3153
3154         * gtk/testgtk.c (window_controls) : don't use the *wrong* size
3155         for the static array, but let the compiler calculate it. It
3156         makes me wonder if gcc isn't capable to catch bugs like this ...
3157
3158 2001-03-31  James Henstridge  <james@daa.com.au>
3159
3160         * gtk/gtkwidget.c (gtk_widget_size_adjust): fix use of magic
3161         constant "-1" in the aux info structure.
3162
3163 2001-03-30  Alexander Larsson  <alexl@redhat.com>
3164
3165         * gtk/gtkbutton.c (gtk_button_get_property):
3166         * gtk/gtklabel.c:
3167         Remove leaks.
3168         
3169         * gtk/gtkcontainer.c:
3170         * gtk/gtkhscale.c:
3171         * gtk/gtkhscrollbar.c:
3172         * gtk/gtklayout.c:
3173         * gtk/gtkmisc.c:
3174         * gtk/gtkprogress.c:
3175         * gtk/gtkprogressbar.c:
3176         * gtk/gtkrange.c:
3177         * gtk/gtktable.c:
3178         * gtk/gtkviewport.c:
3179         * gtk/gtkvscale.c:
3180         * gtk/gtkvscrollbar.c:
3181         * gtk/gtkwidget.c:
3182         Property patches, based on patches from John Margaglione and Lee Mallabone.
3183
3184 Thu Mar 29 21:20:38 2001  Mike Kestner  <mkestner@ameritech.net>
3185
3186         * gtk/gtkspinbutton.c : added value_changed signal which proxies for the
3187         adjustment. Cleaned redundant preconditions (spin != NULL). Added
3188         inline API function docs.
3189         (gtk_spin_button_new_with_range): New convenience constructor.
3190         (gtk_spin_button_set_increments): New adjustment helper.
3191         (gtk_spin_button_set_range): New adjustment helper.
3192
3193         * gtk/testgtk.c : added test of the new convenince constructor and
3194         value_changed signals.
3195
3196 Thu Mar 29 20:20:38 2001  Jonathan Blandford  <jrb@redhat.com>
3197
3198         * gtk/gtktreemodel.c (gtk_tree_row_ref_reordered_callback): Now we
3199         listen to the reorder signal.
3200
3201 Wed Mar 28 20:30:26 2001  Owen Taylor  <otaylor@redhat.com>
3202
3203         * gtk/gtkwidget.[ch] (_gtk_widget_get_aux_info): Add private function
3204         to get the aux info structure fo the widget.
3205
3206         * gtk/gtklabel.c gtk/gtkscrolledwindow.c gtk/gtkwindow.c: Use
3207         above function.
3208
3209         [ Patch from  Havoc Pennington  <hp@redhat.com> ]
3210
3211         * gdk/x11/gdkwindow-x11.c (gdk_window_get_frame_extents): function
3212         to get the size of the window manager frame, basically the same
3213         code that gdk_window_get_root_origin() had
3214         (gdk_window_get_root_origin): use gdk_window_get_frame_extents()
3215
3216         * gtk/gtkwindow.c (gtk_window_set_default_size): use
3217         gdk_window_resize() if the window is realized and resizeable
3218
3219         * gdk/x11/gdkwindow-x11.c (gdk_window_set_geometry_hints): fix
3220         typo so that setting gravity works
3221
3222         * gtk/gtkwindow.c (gtk_window_move_resize): don't ever use
3223         allocation if auto_shrink is on, even if the default size
3224         has not changed.
3225
3226         * gtk/gtkwidget.c (gtk_widget_render_icon): remove bogus
3227         g_return_if_fail
3228
3229 Thu Mar 29 16:29:12 2001  Jonathan Blandford  <jrb@redhat.com>
3230
3231         * gtk/gtkliststore.c (gtk_list_store_iter_changed): Massive
3232         reordering/sorting work.  Now pretty much works.
3233
3234         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): Lots of work to make
3235         reorder mostly work.  Still need to get the parity correct.
3236
3237         * gtk/gtktreeviewcolumn.c: Listen for "model" property changed
3238         signal, so I can listen for the sort_column_changed signal so I
3239         can change my "sort_indicator" property.  Cool.
3240
3241 Wed Mar 28 00:03:10 2001  Owen Taylor  <otaylor@redhat.com>
3242
3243         [ Patch from Havoc Pennington, hp@redhat.com ]
3244
3245         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c:
3246         Add functions gdk_window_begin_resize_drag/begin_move_drag
3247         to start resizing or moving a toplevel window. This
3248         is done either using the _NET_WM_MOVERESIZE protocol,
3249         or, if that isn't present, by emulation.
3250
3251         * gtk/gtkwindow.[ch]: Add functions gtk_begin_move/resize_drag
3252         to export the above to GTK+-land.
3253
3254         * gtk/gtkstyle.[ch]: Add ->draw_resize_grip() paint func.
3255         
3256         * gtk/gtkwindow.c gdk/gdkwindow.[ch] (gdk_window_constrain_size):
3257         Move this function into gdkwindow, since we need it
3258         when implementing fallback resizing.
3259
3260         * gdk/x11/gdkwindow-x11.c: gdk_window_set_geometry_hints.
3261         Fix typo when setting gravity.
3262
3263         * gtk/gtkstatusbar.[ch] (gtk_statusbar_set_has_resize_grip):
3264         Add an optional (but on by default) resize grip for resizing 
3265         the parent window.
3266
3267 01-03-29  Alexander Larsson  <alexl@redhat.com>
3268
3269         * gtk/gtktooltips.c (gtk_tooltips_event_handler):
3270         Don't return TRUE from the event handler, that blocks all
3271         event signals on the tooltip widget. Now you can press buttons
3272         in toolbars again.
3273
3274 Wed Mar 28 19:20:43 2001  Owen Taylor  <otaylor@redhat.com>
3275
3276         * gtk/testtext.c (create_buffer): Add missing NULL on
3277         valist.
3278
3279         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_class_init): Fix
3280         c-n-p problem with INCONSISTENT property.
3281
3282         [ Patch from Havoc Pennington  <hp@redhat.com> ]
3283
3284         * gtk/gtkentry.h (struct _GtkEntryClass): add same populate_popup
3285         hook.
3286
3287         * gtk/gtktextview.h (struct _GtkTextViewClass): add populate_popup
3288         signal as a hook for extending the default popup menu
3289
3290         * gtk/gtkimmulticontext.c (gtk_im_multicontext_append_menuitems):
3291         use radio menu items for the input method menuitems
3292
3293         * gtk/gtkimcontextsimple.c (check_hex): do better validation of 
3294         inserted unicode from Ctrl-Shift-hex input method
3295
3296         * gtk/gtktextbtree.c (_gtk_text_btree_insert): remove utf8
3297         validatation here, already done at GtkTextBuffer level.
3298
3299         * gtk/gtkwidget.c (gtk_widget_class_init): add binding set, add
3300         popup_menu run action signal and Shift+F10 and Menu keybindings.
3301
3302         * gtk/gtkentry.c: implement a default handler for popup_menu
3303
3304         * gtk/gtktextview.c: implement a default handler for popup_menu
3305
3306         * gtk/gtkmenu.c (gtk_menu_popup): select first item if popup is
3307         from a key event
3308         
3309         * gtk/gtklabel.c: remove "trailer" cruft
3310
3311 Wed Mar 28 17:27:12 2001  Jonathan Blandford  <jrb@redhat.com>
3312
3313         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): new function to
3314         handle reordering of trees.  Seems to mostly work w/ the exception
3315         of the parity flag.
3316
3317         * gtk/gtktreeview.c (gtk_tree_view_reordered): handle "reordered"
3318         signal.
3319
3320 Wed Mar 28 21:12:37 2001  Tim Janik  <timj@gtk.org>
3321
3322         * gtk/gtkwidget.h: c++ fixes.
3323
3324 Sun Mar 25 15:51:28 2001  Owen Taylor  <otaylor@redhat.com>
3325
3326         * gtk/gtksettings.c (gtk_settings_init): Fix use of uninitialized
3327         memory.
3328
3329 Tue Mar 27 22:36:07 2001  Owen Taylor  <otaylor@redhat.com>
3330
3331         * gtk/gtkwidget.h gtk/gtkrange.h: Apply patch from 
3332         Nils Barth fixing event return values. (#51041)
3333
3334         * gtk/gtkwidget.c: Fix some return values for default
3335         functions.
3336
3337         * gtk/gtk[vh]scrollbar.c gtk/gtk[vh]range.c: Fix
3338         return values for trough_keys functions.
3339
3340         * gtk/gtkwidget.h (struct _GtkWidgetClass): Fix return
3341         value for add_accelerator (shoudl have been a void
3342         return.)
3343
3344         * gtk/gtkcellrenderer.[ch]: gtkcellrenderertoggle.h:
3345         Fix return type of EVENT.
3346
3347         * gtk/gtkmarshal.list gtk/gtktexttag.c: Make EVENT
3348         signal return a boolean.
3349
3350 Tue Mar 27 22:07:44 2001  Jonathan Blandford  <jrb@redhat.com>
3351
3352         * gtk/gtkliststore.c (gtk_list_store_sort): Fix arguments to
3353         reordered signal.
3354
3355         * tests/testtreesort.c (main): fix spelling.
3356
3357 Tue Mar 27 20:55:29 2001  Jonathan Blandford  <jrb@redhat.com>
3358
3359         * gtk/gtkliststore.c: More work on implementing sortable
3360         interface.
3361
3362 Mon Mar 26 15:48:45 2001  Owen Taylor  <otaylor@redhat.com>
3363
3364         * gtk/gtkwindow.c (gtk_window_list_toplevels): Don't
3365         reference the widgets in the resulting list. (#11821)
3366         This makes this consistent with gtk_container_children.
3367
3368         * gtk/gtkwindow.c gtk/gtkwidget.c: Fix up the two
3369         uses of gtk_window_list_toplevels.
3370
3371 Mon Mar 26 15:26:17 2001  Owen Taylor  <otaylor@redhat.com>
3372
3373         * gtk/gtkimcontext.c (gtk_im_context_set_use_preedit): Add
3374         a virtual function to set whether the IM context should use 
3375         the preedit string. (#51922)
3376         
3377 Mon Mar 26 14:42:59 2001  Owen Taylor  <otaylor@redhat.com>
3378
3379         * gdk/gdkpango.h: Remove stale FIXME comment.
3380
3381 2001-03-26  Alexander Larsson  <alla@lysator.liu.se>
3382
3383         * gtk/gtkfilesel.c (gtk_file_selection_get_filename):
3384         Fixed bug that returned NULL if a filename was selected.
3385
3386 2001-03-24  Havoc Pennington  <hp@pobox.com>
3387
3388         * gtk/gtkthemes.c (gtk_theme_engine_load): improve error message
3389         to contain the word "theme"
3390
3391 2001-03-24  Havoc Pennington  <hp@pobox.com>
3392
3393         * gtk/gtkhsv.c (gtk_hsv_move): make motion around the ring much
3394         slower but finer-grained
3395         (gtk_hsv_focus): get initial focus on the ring or triangle 
3396         according to tab direction
3397
3398         * gtk/testgtk.c (main): get rid of weird sleep(1) on exit
3399
3400 2001-03-23  Havoc Pennington  <hp@pobox.com>
3401
3402         * gtk/gtkhsv.c: make this somewhat key-navigable
3403
3404         * gtk/gtkfontsel.c: mnemonics
3405
3406         * gtk/gtkgamma.c: mnemonics
3407
3408         * gtk/gtkcolorsel.c: add mnemonics to labels
3409
3410 2001-03-22  Havoc Pennington  <hp@pobox.com>
3411
3412         Applied big patch from Seth Lytle to fix event handler return
3413         values, slightly modified.
3414
3415         * gtk/gtkcalendar.c (gtk_calendar_button_press): return TRUE if
3416         handled.
3417         (gtk_calendar_key_press): return TRUE for GDK_space triggers
3418         select_day
3419
3420         * gtk/gtkclist.c (gtk_clist_button_press): return TRUE if handled
3421         (gtk_clist_button_release): return TRUE if handled
3422
3423         * gtk/gtkcolorsel.c (mouse_release):
3424         (palette_activate): 
3425         (palette_press): 
3426         (palette_new): 
3427         (mouse_press): 
3428         (get_screen_color): 
3429         fixed return type (void to gboolean), return TRUE,
3430         added GTK_SIGNAL_FUNC cast
3431
3432         * gtk/gtkcombo.c (gtk_combo_popup_button_press): fixed return type
3433         (void to gboolean), and return TRUE
3434         (gtk_combo_button_release): changed return value to TRUE after
3435         gtk_grab_add on combo->popwin
3436
3437         * gtk/gtkctree.c (gtk_ctree_button_press): return TRUE if triggers a
3438         collapse or expand
3439
3440         * gtk/gtkcurve.c (gtk_curve_graph_events): return TRUE for
3441         button/motion
3442
3443         * gtk/gtkdnd.c (gtk_drag_source_event_cb): return TRUE for button
3444         press/release and motion that trigger act
3445
3446         * gtk/gtkentry.c (gtk_entry_button_release): return TRUE
3447
3448         * gtk/gtkfontsel.c (gtk_font_selection_size_key_press): return TRUE
3449         for GDK_Return
3450         
3451         * gtk/gtklist.c (gtk_list_button_press): return TRUE mostly
3452         (gtk_list_button_release): return TRUE if selection
3453
3454         * gtk/gtklistitem.c (gtk_list_item_button_press): return TRUE on
3455         press
3456
3457         * gtk/gtkmenushell.c (gtk_menu_shell_button_press):
3458         (gtk_menu_shell_button_release): chain parent_menu_shell retval
3459
3460         * gtk/gtknotebook.c (gtk_notebook_button_press): return FALSE if
3461         nothing triggered
3462         (gtk_notebook_button_release): return TRUE if we do anything
3463
3464         * gtk/gtkspinbutton.c (gtk_spin_button_button_press): 
3465         (gtk_spin_button_button_release): return TRUE or chained retval
3466
3467         * gtk/gtktext.c (gtk_text_button_press): 
3468         (gtk_text_button_release): return TRUE
3469         (gtk_text_key_press): remove redundant retval code
3470         
3471         * gtk/gtktreeitem.c (gtk_tree_item_button_press): return TRUE if button
3472         and sensitive
3473         (gtk_tree_item_subtree_button_click): changed type to gint, and return
3474         TRUE if sensitive
3475
3476         * gtk/gtktooltips.c (gtk_tooltips_event_handler): deactivate implies 
3477         return TRUE
3478
3479 2001-03-23  Havoc Pennington  <hp@redhat.com>
3480
3481         * gtk/testgtk.c: fix warnings
3482
3483         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): fix return value
3484
3485         * gtk/gtktextview.c: fix warnings
3486
3487         * gtk/gtktext.c (find_cursor_at_line): fix warning
3488
3489         * gtk/gtkselection.c (gtk_selection_notify): fix warning 
3490
3491         * gtk/gtkitemfactory.c (gtk_item_factory_menu_pos): fix signature
3492         of this function
3493
3494         * gtk/gtkimmulticontext.c (gtk_im_multicontext_append_menuitems):
3495         fix warning
3496
3497         * gtk/gtkhandlebox.c (gtk_handle_box_style_set): fix warning
3498
3499         * gtk/gtkfontsel.c: fix warning
3500
3501         * gtk/gtkcolorsel.c: fix warnings
3502
3503 2001-03-23  Havoc Pennington  <hp@redhat.com>
3504
3505         * gtk/gtkhandlebox.c: Apply property patch from Lee Mallabone
3506
3507         * gtk/gtkbox.c: Apply property patch from Lee Mallabone
3508
3509         * gtk/gtkcheckmenuitem.c: Apply property patch from Lee Mallabone,
3510         and deprecated gtk_check_menu_item_set_show_toggle().
3511         
3512         * gtk/gtkbutton.c: Apply property patch from Lee Mallabone
3513
3514         * gtk/gtkfilesel.c: Apply property patch from Lee Mallabone
3515
3516         * gtk/gtkframe.c: Apply property patch from Lee Mallabone
3517
3518 2001-03-23  Havoc Pennington  <hp@redhat.com>
3519
3520         * gtk/gtktoolbar.c, gtk/gtkimcontext.c, gtk/gtklabel.c: fix up
3521         some docs
3522
3523 Fri Mar 23 16:13:43 2001  Jonathan Blandford  <jrb@redhat.com>
3524
3525         * gtk/gtktreeviewcolumn.h (GtkCellDataFunc): Forgot to namespace
3526         this.
3527
3528         * gtk/gtktreestore.c (gtk_tree_store_set_value): change from
3529         set_cell to set_value
3530
3531         * gtk/gtkliststore.c (gtk_list_store_set_value): change from
3532         set_cell to set_value
3533
3534 Thu Mar 22 19:27:34 2001  Jonathan Blandford  <jrb@redhat.com>
3535
3536         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
3537         fix braino.
3538         * gtk/gtktreesortable.[ch]: New interface to add cleanup sortable
3539         support.
3540
3541         * gtk/gtktreeview.c: Addition of initial sortable support.
3542
3543         * gtk/gtktreestore.c: Addition of initial sortable support.
3544
3545         * gtk/gtkliststore.c: Addition of initial sortable support.
3546
3547         * gtk/gtkmarshal.list: yet another marshaller.
3548
3549         * gtk/gtktreedatallist.[ch]: shared code between the store models
3550         for handling sorting headers.
3551
3552 2001-03-22  Havoc Pennington  <hp@redhat.com>
3553
3554         * gtk/gtkcontainer.c (gtk_container_set_focus_chain): 
3555         (gtk_container_unset_focus_chain): Add ability to override the 
3556         focus chain for a container explicitly
3557
3558 Thu Mar 22 13:01:44 2001  Tim Janik  <timj@gtk.org>
3559
3560         * gtk/gtklabel.[hc]: some cleanups, fixed mnemonic_widget handling,
3561         added PROP_MNEMONIC_WIDGET.
3562
3563         * gtk/gtkwindow.c (gtk_window_activate_mnemonic): 
3564         (gtk_window_remove_mnemonic): 
3565         (gtk_window_add_mnemonic): fixed assertions.
3566         (gtk_window_activate_mnemonic): constrain modifier checks to those
3567         permitted by gtk_accelerator_get_default_mod_mask().
3568         got rid of gtk_window_get_default_accel_group().
3569
3570         * gtk/gtkwidget.c (gtk_widget_real_activate_mnemonic): handle non
3571         activatable widgets either by focussing or a warning.
3572         added a signal accumulator to ::activate_mnemonic which stops the
3573         emission once a handler returned TRUE.
3574
3575 2001-03-22  Havoc Pennington  <hp@pobox.com>
3576
3577         * gtk/gtktoolbar.c (gtk_toolbar_insert_stock): handle mnemonics in
3578         the stock item label
3579
3580         * gtk/gtklabel.c: s/@gtk_func/gtk_func()/ in docs
3581
3582         * gtk/gtkstock.c (builtin_items): add mnemonics where missing
3583
3584         * demos/gtk-demo/*.c: Add mnemonics all over the place
3585
3586         * gtk/gtklabel.h: mark parse_uline deprecated
3587
3588 2001-03-21  Alexander Larsson  <alexl@redhat.com>
3589
3590         * gtk/gtkitemfactory.[ch]:
3591         Add support for stock and normal imagemenuitems.
3592         
3593         * gtk/testgtk.c:
3594         Add some tests for mnemonics, stock toolbars, stock
3595         and image menuitems in itemfactory and gdk_window_scroll.
3596
3597 2001-03-21  Alexander Larsson  <alexl@redhat.com>
3598
3599         * gtk/gtkbutton.[ch]:
3600         * gtk/gtkdialog.c:
3601         Renamed gtk_button_new_stock() to gtk_button_new_from_stock() and
3602         removed accel_group argument. Renamed gtk_button_new_accel() to
3603         gtk_button_new_with_mnemonic() and removed accel_group argument.
3604
3605         * gtk/gtkcheckbutton.[ch]:
3606         New function gtk_check_button_new_with_mnemonic().
3607
3608         * gtk/gtkentry.c:
3609         Override activate_mnemonic and just grab focus.
3610
3611         * gtk/gtkitemfactory.c:
3612         Don't add menu uline accel group, instead use mnemonics support.
3613
3614         * gtk/gtklabel.[ch]:
3615         New support for mnemonics.
3616
3617         * gtk/gtkmarshal.list:
3618         Needed BOOLEAN:BOOLEAN for activate_mnemonic.
3619
3620         * gtk/gtkmenu.[c]:
3621         * gtkmenushell.c:
3622         Use mnemonics instead of accel groups for uline
3623         support in menu items.
3624         Removed gtk_menu_get_uline_accel_group() and
3625         gtk_menu_ensure_uline_accel_group().
3626
3627         * gtk/gtkmenuitem.c:
3628         Override activate_mnemonic to handle switching between
3629         menu items if there are collisions.
3630         
3631         * gtk/gtknotebook.c:
3632         Connect to activate_mnemonic on the tab_label, so that
3633         activating it switches to that notebook page.
3634
3635         * gtk/gtkwidget.[ch]:
3636         Add activate_mnemonic signal. New function
3637         gtk_widget_activate_mnemonic() to emit it.
3638         Default implementation does activate/grab_focus.
3639
3640         * gtk/gtkwindow.[ch]:
3641         Add support for mnemonics in windows.
3642         New functions:
3643         gtk_window_add_mnemonic, gtk_window_remove_mnemonic,
3644         gtk_window_activate_mnemonic, gtk_window_set_mnemonic_modifier
3645
3646         * gtk/testgtk.c:
3647         Update to function name changes.
3648         
3649 2001-03-21  Alexander Larsson  <alexl@redhat.com>
3650
3651         * gtk/gtkimagemenuitem.[c]:
3652         Add gtk_image_menu_item_new_from_stock()
3653
3654 Tue Mar 20 15:00:43 2001  Jonathan Blandford  <jrb@redhat.com>
3655
3656         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
3657         Fix buglet in meeting.
3658
3659 2001-03-19  Havoc Pennington  <hp@redhat.com>
3660
3661         * gtk/gtkiconfactory.c: Make GtkIconSource an opaque datatype, and
3662         add a bunch of accessor functions. This is because we have
3663         reasonable expectations of extending what fields it contains in
3664         the future.
3665
3666         * gtk/gtkstyle.c (gtk_default_render_icon): adapt to icon source
3667         changes
3668
3669         * gtk/gtkrc.c (gtk_rc_parse_icon_source): fix to use new
3670         GtkIconSource   
3671
3672 Mon Mar 19 15:53:36 2001  Owen Taylor  <otaylor@redhat.com>
3673
3674         * gtk/gtkitemfactory.c gtk/testgtk.c: Handle quoting of / with \; properly
3675         handle __ in paths, quote " and \n in gtk_item_factory_dump_items().
3676
3677         * gtk/gtkadjustment.[ch] gtk/gtkclist.c gtk/gtkhruler.c gtk/gtklayout.c 
3678           gtk/gtklist.c gtk/gtkprogress.[ch] gtk/gtkprogressbar.[ch] gtk/gtkrange.[ch]
3679           gtk/gtkruler.[ch] gtk/gtkscale.c gtk/gtkscrolledwindow.c gtk/gtkspinbutton.[ch]
3680           gtk/gtktext.c gtk/gtktextview.c gtk/gtkvruler.c gtk/testgtk.c:
3681         Change float to double everywhere with the exception of 0<->1.0 alignment
3682         and GtkCurve.
3683
3684 2001-03-19  Tor Lillqvist  <tml@iki.fi>
3685
3686         * gdk/win32/gdkdrawable-win32.c
3687         * gdk/win32/gdkimage-win32.c: Use correct casts in debugging
3688         output.
3689
3690         * demos/testpixbuf-drawable.c: If GDK_WINDOWING_WIN32, include
3691         gdkwin32.h.
3692
3693 2001-03-18  Tor Lillqvist  <tml@iki.fi>
3694
3695         * gdk/win32/gdkevents-win32.c (print_window_state): New function.
3696         print_event_state, print_event): Use preprocessor macro to make
3697         code more compact. Print also GDK_WINDOW_STATE events.
3698         (synthesize_crossing_events): Remove the old #ifdeffed-out code.
3699         
3700         * gtk/gtk.def
3701         * gtk/makefile.mingw.in: Update.
3702
3703         * gtk/gtkmain.h: Check for G_PLATFORM_WIN32, not only G_OS_WIN32,
3704         to catch also Cygwin.
3705
3706 Sun Mar 18 01:15:30 2001  Tim Janik  <timj@gtk.org>
3707
3708         * gtk/gtkspinbutton.[hc]: added rc-style argument
3709         GtkSpinButton::shadow_type.
3710         removed spin_button->shadow_type, gtk_spin_button_set_shadow_type()
3711         and ARG_SHADOW_TYPE as it doesn' make much sense to try to override
3712         rc-style settings.
3713
3714         * gtk/gtkfixed.c: removed gtk_fixed_paint() (was unused).
3715
3716         * gtk/gtkwidget.c: quark cleanups.
3717
3718         * gtk/gtkrc.[hc]: added gtk_rc_scanner_new() to create an rc-file
3719         scanner with appropriate configuration, renamed GtkRcStyleClass.clone
3720         to create_rc_style() (we don't do cloning in standard OO sense).
3721         added per rc style properties.
3722         
3723         * gtk/gtkstyle.[hc]: added code to retrive pspec conformant rc-style
3724         property values and for caching those. some cleanups.
3725         
3726         * gtk/Makefile.am: -DG_DISABLE_CONST_RETURNS.
3727         
3728         * gtk/gtksettings.[hc]: new file for global rc-file properties
3729         (at least currently, should get extended to support X properties
3730         and other communication mechanisms).
3731         
3732         * gtk/gtkwidget.[hc]: added style property support:
3733         (gtk_widget_class_install_style_property_parser): install style
3734         property pspec with parser function for rc-file values other
3735         than LONG, DOUBLE or STRING.
3736         (gtk_widget_class_install_style_property): same as above without
3737         parser (parsers are going to be needed quite infrequently).
3738         (gtk_widget_style_get_property): retrive style property value.
3739         (gtk_widget_style_get_valist): same as above with varargs support,
3740         has NOCOPY semantics.
3741         (gtk_widget_style_get): wrapper around gtk_widget_style_get_valist().
3742
3743 Fri Mar 16 18:24:53 2001  Jonathan Blandford  <jrb@redhat.com>
3744
3745         * demos/gtk-demo/main.c (row_activated_cb): modified to use
3746         "row_activated" signal.
3747
3748         * gtk/gtktreeview.c (gtk_tree_view_row_activated): oh, the
3749         stupidity.  Lets actually pass in the row with this signal...
3750
3751 Fri Mar 16 18:01:17 2001  Jonathan Blandford  <jrb@redhat.com>
3752
3753         * gtk/gtktreeviewcolumn.[ch]: s/GTK_TREE_COLUMN/GTK_TREE_VIEW_COLUMN
3754
3755         * gtk/gtktreeview.c (gtk_tree_view_row_activated): New signal.
3756
3757         * gtk/gtktreeview.c (gtk_tree_view_destroy): moved pretty much
3758         everything into the ::destroy function, and freed a lot more.
3759
3760 2001-03-16  Havoc Pennington  <hp@redhat.com>
3761
3762         * gtk/gtkwidget.h (struct _GtkWidgetAuxInfo): change to use gint
3763         instead of gint16, to avoid overflow issues, since sizes > 16-bit
3764         are now allowed.
3765
3766 2001-03-16  Havoc Pennington  <hp@redhat.com>
3767
3768         * Applied patch from Nils Barth (bug # 51041) to 
3769         replace "gint" with "gboolean" and 0/1 with TRUE/FALSE
3770         in various places.
3771
3772 2001-03-15  Havoc Pennington  <hp@redhat.com>
3773         
3774         * gtk/gtktextbuffer.c (gtk_text_buffer_create_tag): add varargs 
3775         for properties to set on the tag.
3776
3777         * gtk/testtext.c: fixups to reflect create_tag change
3778         
3779         * gtk/gtktexttag.c (gtk_text_tag_set_property):
3780         background/foreground stipple are objects, not boxed.
3781
3782         * demos/gtk-demo/textview.c: intellihancing
3783
3784 Fri Mar 16 11:38:42 2001  Jonathan Blandford  <jrb@redhat.com>
3785
3786         * gtk/gtktreeview.c (gtk_tree_view_set_model): Fixed some
3787         braindeadness spotted by Jamie Strachan <frostfreek@yahoo.com>.
3788
3789 2001-03-16  Alexander Larsson  <alexl@redhat.com>
3790
3791         * gdk/x11/gdkgeometry-x11.c (_gdk_window_process_expose):
3792         Fix sign error with queued region translations.
3793
3794 2001-03-15  HideToshi Tajima  <tajima@happy>
3795
3796         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_set_cursor_location): 
3797         * gtk/gtkimmulticontext.c (gtk_im_multicontext_set_cursor_location):
3798         * gtk/gtkentry.c (update_im_cursor_location): 
3799         * gtk/gtkimcontext.c (gtk_im_context_set_cursor_location):
3800         * gtk/gtkimcontext.h (struct _GtkIMContextClass): rename
3801         set_cursor_pos to set_cursor_location in GtkInputContext class
3802
3803 Thu Mar 15 18:22:44 2001  Jonathan Blandford  <jrb@redhat.com>
3804
3805         * gtk/gtkcellrenderer.h: Changed prototype to allow for getting
3806         the location of the cell relative to its area.
3807         * gtk/gtkcell*: modified for above change
3808         * gtk/gtktreeview.c: modified for above change.
3809
3810 Wed Mar 14 13:58:32 2001  Jonathan Blandford  <jrb@redhat.com>
3811
3812         * gtk/gtktreeview.c (gtk_tree_view_set_model): Ref the model.
3813          (gtk_tree_view_finalize): actually unref the model.  Thanks to
3814         Jamie Strachan <frostfreek@yahoo.com> for noticing this error.
3815
3816 2001-03-14  Havoc Pennington  <hp@redhat.com>
3817
3818         * gtk/gtkdata.h, gtk/gtkdata.c: Delete.
3819         
3820         * gtk/gtk.h: remove gtkdata.h
3821
3822         * gtk/Makefile.am: remove gtkdata
3823         
3824         * gtk/gtktext.c (gtk_text_set_adjustments): connect to "destroy"
3825         not "disconnect" on the adjustments.
3826         
3827         * gtk/gtktooltips.h, gtk/gtktooltips.c: derive from GtkObject not
3828         GtkData
3829
3830         * gtk/gtkadjustment.h, gtk/gtkadjustment.c: derive from GtkObject
3831         not GtkData
3832
3833         * configure.in: handle case where X render exists, but Pango lacks
3834         Xft support.
3835
3836 2001-03-15 Alexander Larsson  <alexl@redhat.com>
3837
3838         * gtk/gtktoolbar.[ch]:
3839         New functions gtk_toolbar_set_icon_size and gtk_toolbar_insert_stock
3840         to add stock items to toolbars.
3841
3842         * gtk/Makefile.am:
3843         Remove ../gdk/gdkim.h from gdk_headers.
3844
3845 2001-03-15  Sven Neumann  <sven@gimp.org>
3846
3847         * gdk/gdkim.h: removed
3848         
3849         * gdk/gdkprivate.h
3850         * gdk/x11/gdkim-x11.c: do not include gdkim.h 
3851
3852 2001-03-14  HideToshi Tajima  <tajima@happy.sunsoft.eng.sun.com>
3853
3854         * gtk/gtkimmulticontext.c (gtk_im_multicontext_set_cursor_pos):
3855         * gtk/gtkimcontext.c (gtk_im_context_set_cursor_pos):
3856         * gtk/gtkimcontext.h (struct _GtkIMContextClass): add
3857         set_cursor_pos() virtual method
3858
3859         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_class_init):
3860         (gtk_im_context_xim_set_cursor_pos): add implementation for
3861         set_cursor_pos() method
3862
3863         * gtk/gtkentry.c (recompute_idle_func): set current cursor
3864         position to input methods
3865
3866 Mon Mar 12 21:02:08 2001  Jonathan Blandford  <jrb@redhat.com>
3867
3868         * gtk/gtktreeview.c (gtk_tree_view_header_focus): Fix up focus
3869         code a lot.
3870
3871         * gtk/gtktreedatalist.c (_gtk_tree_data_list_free): use
3872         g_mem_chunk.
3873         (_gtk_tree_data_list_alloc): use g_mem_chunk.
3874         (_gtk_tree_data_list_node_to_value): Fix to switch on
3875         G_TYPE_FUNDAMENTAL.
3876         (_gtk_tree_data_list_value_to_node): Fix to switch on
3877         G_TYPE_FUNDAMENTAL.
3878         (_gtk_tree_data_list_node_copy): Fix to switch on
3879         G_TYPE_FUNDAMENTAL.
3880
3881 2001-03-12  Havoc Pennington  <hp@redhat.com>
3882
3883         * gtk/gtkwindow.c (gtk_window_class_init): Patch from John Margaglione 
3884         to convert to new property API. Also, change default_width and
3885         default_height get_property to return 0 as the flag value for
3886         "unset"; -1 is not a valid value for these fields.
3887
3888 2001-03-12  Havoc Pennington  <hp@redhat.com>
3889
3890         * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: Switch to using an
3891         enum with registration for icon sizes, instead of strings.
3892
3893         * gtkimage.h, gtkimage.c, gtkstyle.h, gtkstyle.c, gtkwidget.h, 
3894         gtkwidget.c: Fix to reflect GtkIconSize
3895         
3896 2001-03-12  Alexander Larsson  <alexl@redhat.com>
3897
3898         Make GtkFB compile and link.
3899         
3900         * gdk/linux-fb/gdkdrawable-fb2.c:
3901         window->mapped to GDK_WINDOW_IS_MAPPED(). 
3902         
3903         * gdk/linux-fb/gdkwindow-fb.c:
3904         window->mapped to GDK_WINDOW_IS_MAPPED(). 
3905         Added gdk_window_shape_combine_region.
3906         Added assorted placeholders for unimplemented new GdkWindow API calls.
3907
3908 2001-03-12  Alexander Larsson  <alexl@redhat.com>
3909
3910         * gtk/gtkfilesel.c:
3911         Add more test when converting filenames from/to utf-8.
3912         Don't allow entering text in the filename entry which isn't allowed in
3913         a filename. Just beep instead.
3914
3915 2001-03-12  Alexander Larsson  <alexl@redhat.com>
3916
3917         * gtk/gtkclist.c:
3918         Scroll using gdk_window_scroll(). Don't wait for exposes.
3919         Move the column headers in an order that makes them flash less.
3920
3921 2001-03-10  Hans Breuer  <hans@breuer.org>
3922
3923         * gdk/gdk.def : updated
3924
3925         * gdk/win32/gdkgc-win32.c : pixmaps are visible again, due
3926         to offseting the clip_mask at the right place
3927
3928         * gdk/win32/gdkwindow-win32.c : don't create background brushes
3929         for all the gdkClasses, especially not for the input_only case.
3930         Otherwise flickering wont be avoidable, because we don't get
3931         WM_ERASEBKGND message for these windows.
3932
3933         * gdk/win32/gdkevents-win32.c : initialize event->expose.region
3934         and fixed massive redraw problems apparently triggered by Alexanders 
3935         recent change. Not fully understood the GDK_EXPOSE / WM_PAINT handling
3936         but it seems to work quite well :-)
3937
3938         * gdk/win32/gdkprivate-win32.h : added _gdk_window_process_expose
3939         prototype
3940
3941 Sat Mar 10 12:15:31 2001  Jonathan Blandford  <jrb@redhat.com>
3942
3943         * gtk/gtktreestore.c (gtk_tree_store_set_cell): Fix a stupid typo.
3944         (gtk_list_store_set_cell): Fix a stupid typo.
3945
3946 Fri Mar  9 20:36:21 2001  Jonathan Blandford  <jrb@redhat.com>
3947
3948         * gtk/gtktreeselection.c (gtk_tree_selection_select_all): Make
3949         select_all not work if you're in SINGLE mode (it doesn't make that
3950         much sense, anyway.)
3951
3952         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_to_value):
3953         handle types more sanely.
3954         (_gtk_tree_data_list_value_to_node): handle types more sanely.
3955         (_gtk_tree_data_list_node_copy): handle types more sanely.
3956
3957         * gtk/gtkliststore.c (gtk_list_store_set_cell): fix to work with
3958         GValue better. Converts the type as well.
3959
3960         * gtk/gtktreestore.c (gtk_tree_store_set_cell): fix to work with
3961         GValue better. Converts the type as well.
3962
3963 Wed Mar  7 20:47:41 2001  Owen Taylor  <otaylor@redhat.com>
3964
3965         * gtk/gtktext.c gtk/gtkoldeditable.[ch] gdk/gdk.[ch]
3966         gdk/Makefile.am gdk/x11/Makefile.am gdk/x11/gdkevents-x11.c 
3967         gdk/x11/gdkglobals-x11.c gdk/x11/gdkprivate-x11.c
3968         gdk/x11/gdkx.h gdk/x11/gdkim-x11.c: Remove old XIM code.
3969
3970         * gdk/win32/gdkim-win32.c gdk/linux-fb/gdkim-fb.c: Remove
3971         gdk_im/gdk_ic.
3972
3973 2001-03-09  Hans Breuer  <hans@breuer.org>
3974
3975         * gdk/gdk.def : updated
3976
3977         * gdk/win32/gdkevents-win32.c : don't ask input_only windows
3978         for their palette
3979
3980         * gdk/win32/gdkgeometry-win32.c : reflect GdkWindowObject::mapped
3981         removing
3982
3983         * gdk/win32/gdkwindow-win32.c : reflect GdkWindowObject::mapped
3984         removing and implemented Havoc's GdkWindow state functions; 
3985         stick/unstick only as no-op, cause I don't know how to emulate 
3986         on win32 ...
3987
3988         * gtk/gtk.def : updated
3989
3990         * gtk/gtkbox.c (gtk_box_get_spacing) : use g_return_val_if_fail ()
3991
3992         * gtk/gtktypeutils.c : #include <string.h>
3993
3994         * gtk/gtkwindow.h : declare gtk_window_set_decorated ()
3995
3996 Fri Mar  9 09:31:55 2001  Tim Janik  <timj@gtk.org>
3997
3998         * gtk/gtkwidget.c (gtk_widget_class_init): fixed signals with
3999         GDK_TYPE_DRAG_CONTEXT, it needs to be marshaled as an object,
4000         not a boxed.
4001
4002 2001-03-09  Alexander Larsson  <alexl@redhat.com>
4003
4004         * docs/Changes-2.0.txt:
4005         Document expose event->region change and that gtk_widget_event
4006         doesn't allow passing expose events.
4007
4008         * gdk/gdkevents.h:
4009         Add region to expose event.
4010         
4011         * gdk/gdkevents.c:
4012         Handle event->region in gdk_event_copy() and gdk_event_free().
4013
4014         * gdk/gdkwindow.c (gdk_window_process_updates_internal):
4015         Generate expose_event->region when creating expose events.
4016
4017         * gdk/x11/gdkevents-x11.c:
4018         Generate expose events with regions when translating X events.
4019
4020         * gtk/gtkcontainer.[ch]:
4021         Default expose handler that propagates expose events to NO_WINDOW
4022         children. New function gtk_container_propagate_expose()
4023
4024         * gtk/gtkwidget.[ch]:
4025         Moved gtk_widget_event implementation to gtk_widget_event_internal.
4026         gtk_widget_event calls gtk_widget_event_internal but doesn't allow
4027         expose events. New function gtk_widget_send_expose() to send expose
4028         events. New function gtk_widget_region_intersect() to calculate
4029         window/region intersections.
4030         
4031         * gtk/gtkmain.c (gtk_main_do_event):
4032         Use gdk_window_begin_paint_region() instead of gdk_window_begin_paint_rect().
4033         Use gtk_widget_send_expose() to send expose events.
4034         
4035         * gtk/gtkbin.c:
4036         * gtk/gtkbox.c:
4037         * gtk/gtkfixed.c:
4038         * gtk/gtkimagemenuitem.c:
4039         * gtk/gtklist.c:
4040         * gtk/gtkpacker.c:
4041         * gtk/gtktable.c:
4042         * gtk/gtktree.c:
4043         Remove expose handler, using the default container implementation
4044         instead.
4045         
4046         * gtk/gtkbutton.c:
4047         * gtk/gtkcheckbutton.c:
4048         * gtk/gtkeventbox.c:
4049         * gtk/gtkfixed.c:
4050         * gtk/gtkhandlebox.c:
4051         * gtk/gtklayout.c:
4052         * gtk/gtklistitem.c:
4053         * gtk/gtkmenu.c:
4054         * gtk/gtkmenubar.c:
4055         * gtk/gtkmenuitem.c:
4056         * gtk/gtknotebook.c:
4057         * gtk/gtkoptionmenu.c:
4058         * gtk/gtkpaned.c:
4059         * gtk/gtkscrolledwindow.c:
4060         * gtk/gtktogglebutton.c:
4061         * gtk/gtktoolbar.c:
4062         * gtk/gtktreeitem.c:
4063         * gtk/gtkviewport.c:
4064         Chain expose handler to parent class handler. Use
4065         gtk_container_propagate_expose() to propagate exposes.
4066
4067         * gtk/gtkclist.c (check_exposures):
4068         * gtk/gtktext.c (process_exposes):
4069         Use gtk_widget_send_expose instead of gtk_widget_event.
4070
4071 Thu Mar  8 19:40:28 2001  Jonathan Blandford  <jrb@redhat.com>
4072
4073         * gtk/gtktreeview.c (gtk_tree_view_destroy): Add destroy function.
4074
4075 Thu Mar  8 19:18:27 2001  Jonathan Blandford  <jrb@redhat.com>
4076
4077         * gtk/gtktreeview.c (gtk_tree_view_unref_tree_helper): Actually
4078         unref the nodes.   Fixes bug #50058.
4079
4080         * gtk/gtktreemodel.c (gtk_tree_model_ref_node): change
4081         "::ref_iter" to "::ref_node".
4082         (gtk_tree_model_unref_node): change "::unref_iter" to
4083         "::unref_node". Fixes bug #50064.
4084
4085 Thu Mar  8 17:40:09 2001  Jonathan Blandford  <jrb@redhat.com>
4086
4087         * gtk/gtktreeview.c (gtk_tree_view_create_row_drag_icon): add
4088         support for invisible cells.
4089          (gtk_tree_view_bin_expose): ditto
4090
4091 Thu Mar  8 16:36:00 2001  Jonathan Blandford  <jrb@redhat.com>
4092
4093         * gtk/gtktreemodel.c (gtk_tree_model_get_type): add prerequesite
4094         on gobjects.
4095
4096         * tests/testtreefocus.c (main): New test file.
4097
4098         * tests/testtreeview.c: update to latest glib changes.
4099
4100         * tests/testtreecolumns.c: update to latest glib changes.
4101
4102 Thu Mar  8 18:13:20 2001  Tim Janik  <timj@gtk.org>
4103
4104         * gtk/testgtk.c: re-enabled event watcher emission hooks.
4105
4106 Thu Mar  8 16:51:21 2001  Tim Janik  <timj@gtk.org>
4107
4108         * *.c: added accumulator data argument to g_signal_newc()
4109         functions.
4110
4111         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_set_model): 
4112         * gtk/gtktreeview.c (gtk_tree_view_setup_model): 
4113         * gtk/treestoretest.c (make_window):
4114         s/g_signal_connect/g_signal_connectc/.
4115
4116         * gtk/gtktextbuffer.c: completed signal arg fixups,
4117         they also needed G_SIGNAL_TYPE_STATIC_SCOPE flag.
4118
4119 Thu Mar  8 00:02:30 2001  Owen Taylor  <otaylor@redhat.com>
4120
4121         * gtk/gtkwidget.[ch] (gtk_widget_get_name): Make
4122         G_CONST_RETURN.
4123
4124         * gtk/gtkwidget.[ch] gtk/gtkprivate.h: Add a 
4125         ::hierarchy-changed signal when a widget changes
4126         from anchored to unanchored or vice versa.
4127         (anchored means 
4128          gtk_widget_get_ancestor (widget, GTK_TYPE_WINDOW) != NULL.)
4129         Use a private flag to keep track of this efficiently.
4130
4131 2001-03-07  Havoc Pennington  <hp@redhat.com>
4132
4133         * gtk/testgtk.c (create_spins): uglify so that size request gets
4134         tested.
4135
4136         * gtk/gtkspinbutton.c (gtk_spin_button_size_request): Base size
4137         request on values for upper/lower, completes #6152
4138
4139 Wed Mar  7 20:07:22 2001  Owen Taylor  <otaylor@redhat.com>
4140
4141         * Makefile.am: Remove gtk-config-2.0 again.
4142         (Grrrr, pkg-config. And stops make loops.)
4143
4144 Thu Mar  8 00:18:29 2001  Tim Janik  <timj@gtk.org>
4145
4146         * gtk/gtksignal.[hc]: removed old emission hook API.
4147         
4148         * docs/Changes-2.0.txt: fixed sections.
4149         
4150         * gtk/gtktextbuffer.c: signal arg fixups.
4151
4152 2001-03-07  Havoc Pennington  <hp@redhat.com>
4153
4154         * gtk/gtktextview.c (invalidated_handler): use PRIORITY_VALIDATE
4155
4156         * gtk/gtktextview.h (GTK_TEXT_VIEW_PRIORITY_VALIDATE): add this
4157         here, bug #50368; changed to be GDK_PRIORITY_REDRAW + 5, instead
4158         of GDK_PRIORITY_REDRAW + 1, so you can insert stuff in between the
4159         validation and the redraw which is higher priority than the
4160         validation.
4161
4162 2001-03-07  Havoc Pennington  <hp@redhat.com>
4163
4164         * gtk/gtkentry.c (gtk_entry_get_property): remove trailer
4165         (gtk_entry_set_property): remove trailer
4166
4167         * gtk/gtkentry.c (gtk_entry_set_width_chars): 
4168         (gtk_entry_get_width_chars): new functions, to set size request to 
4169         a given number of characters
4170
4171         * gtk/testgtk.c (create_dialog): beef up the dialog test slightly
4172
4173         * gtk/gtkdialog.c (gtk_dialog_set_has_separator): new function
4174         (gtk_dialog_get_has_separator): new function
4175         (run_delete_handler): fix to not emit "response" signal
4176         because we already did in the delete event handler installed
4177         at dialog creation time.
4178         
4179         * gtk/gtkdialog.h: add a has_separator property,
4180         add GTK_DIALOG_NO_SEPARATOR flag
4181
4182 2001-03-07  Havoc Pennington  <hp@redhat.com>
4183
4184         * gtk/gtkwindow.c (gtk_window_set_decorated): new function, turns
4185         off decorations for a window.
4186
4187         * demos/gtk-demo/button_box.c (create_bbox): adapt to button box
4188         changes
4189
4190         * gtk/gtklabel.c (gtk_label_get_layout_offsets): new function 
4191         to get location of PangoLayout inside the label, closes #51198
4192
4193         * gtk/testgtk.c (create_bbox): fix up button box usage
4194
4195         * gtk/testcalendar.c (create_calendar): fix up button box usage
4196
4197         * gtk/gtkfilesel.c (gtk_file_selection_init): fixup buttonbox usage
4198
4199         * gtk/gtkdialog.c (gtk_dialog_init): fixup buttonbox usage
4200
4201         * gtk/gtkhbbox.h: deprecations
4202
4203         * gtk/gtkvbbox.h: deprecations
4204
4205         * gtk/gtkbox.c (gtk_box_get_spacing): new function, used to
4206         emulate deprecated gtk_button_box_get_spacing
4207
4208         * gtk/gtkbbox.h: deprecate some useless functions, remove entirely 
4209         the "set global default" functions
4210         (struct _GtkButtonBox): remove "spacing" field, use the one from 
4211         GtkBox base class
4212
4213         * gtk/gtkbbox.c (_gtk_button_box_child_requisition): rename with uscore
4214
4215         * gtk/gtkiconfactory.c (gtk_icon_set_render_icon): If we fail to
4216         render the icon, return the missing image icon.
4217
4218         * gtk/gtkimage.c (gtk_image_set_from_file): fall back to missing
4219         image icon if the load fails.   
4220
4221         * gtk/gtkstock.h (GTK_STOCK_MISSING_IMAGE): Add stock icon for use
4222         when no image is found; should be the Netscape "missing image"
4223         icon eventually but for now is a random image
4224
4225         * gtk/gtkwindow.c (gtk_window_set_role): new function, sets the 
4226         role for the session manager
4227
4228         * gtk/testgtk.c (dnd_drop): remove use of GTK_WINDOW_DIALOG
4229
4230         * gtk/gtkcompat.h (GTK_WINDOW_DIALOG): compat #define
4231         GTK_WINDOW_DIALOG GTK_WINDOW_TOPLEVEL
4232
4233         * gtk/gtkenums.h (enum GtkWindowType): remove GTK_WINDOW_DIALOG
4234
4235 Wed Mar  7 13:24:57 2001  Tim Janik  <timj@gtk.org>
4236
4237         * gtk/*.c: marshaller fixes.
4238         
4239         * gtk/gtkmarshal.list: extreme cleanup.
4240
4241         * gtk/gtktreeview.c (gtk_tree_view_class_init): disable interface
4242         param spec for now.
4243
4244         * gtk/gtktexttag.c (gtk_text_tag_set_property): use g_value_get_boxed()
4245         where appliable.
4246
4247         * gtk/gtktypeutils.[hc]: updates to GLib API changes.
4248         special cased autogenerated boxed types from gtktypebuiltins_ids.c
4249         which are not reference counted:
4250         GtkSelectionData, GdkEvent, GdkColor, GtkTextIter, PangoTabArray,
4251         PangoFontDescription, GtkTreeIter and GtkTreePath.
4252
4253 Thu Mar  1 03:58:56 2001  Tim Janik  <timj@gtk.org>
4254
4255         * gtk/gtktreeselection.h: 
4256         * gtk/gtktreemodel.c:
4257         * gtk/gtktreedatalist.[hc]: fixed includes. no gobject/*
4258         file should be included directly, and gobject/gmarshal.h
4259         as well as gtk/gtkmarshal.h even can't be included directly.
4260
4261         * Makefile.am: grr, install gtk-config-2.0.
4262
4263         * gtk/testgtk.c:
4264         * gtk/simple.c:
4265         * gtk/gtkmenu.c:
4266         * gtk/gtkitemfactory.c: use g_object_connect() instead of
4267         passing "*signal*::*" args to gtk_widget_set().
4268         
4269         * gtk/gtktypeutils.[hc]: got rid of GTK_TYPE_SIGNAL.
4270         
4271         * gtk/*.c: removed trailer arg from property setters and getters.
4272         macro fixups.
4273
4274 2001-03-07  Alexander Larsson  <alexl@redhat.com>
4275
4276         * gtk/gtklabel.c (set_markup): Removed warning
4277
4278 Tue Mar  6 19:59:12 2001  Jonathan Blandford  <jrb@redhat.com>
4279
4280         * gtk/gtkcellrenderer.h (struct _GtkCellRenderer): Add visible
4281         field to allow you to hide cell renderers.
4282
4283         * gtk/gtkcellrenderer.c: Add support for invisible cells.
4284
4285         * gtk/gtktreeview.c: Add support for invisible cells.
4286
4287 Tue Mar  6 17:25:07 2001  Jonathan Blandford  <jrb@redhat.com>
4288
4289         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_button_clicked):
4290         Add "clicked" signal back to columns.
4291
4292         * ChangeLog: remove conflict markers.
4293
4294 Tue Mar  6 10:45:45 2001  Owen Taylor  <otaylor@redhat.com>
4295
4296         * gtk/gtkbutton.c: Add animation of activation by, on 
4297         activate, pressing the button, and adding a timeout that 
4298         releases the button after 250ms or on key release and
4299         emits ::clicked. (#51501)
4300
4301         * gtk/gtkdialog.c: Bit of a hack - for buttons in the
4302         action area, we connect to ::clicked instead of ::activate
4303         so the dialog stays up through the animation.
4304
4305 Mon Mar  5 16:38:15 2001  Owen Taylor  <otaylor@redhat.com>
4306
4307         * gtk/gtkmenushell.c (gtk_menu_shell_enter_notify): Only
4308         check the ignore_enter flag for the menu shell that
4309         the item is actually a child of, not for attached
4310         submenus. (#51536)
4311
4312 Tue Feb 27 02:16:14 2001  Owen Taylor  <otaylor@redhat.com>
4313
4314         * gtk/gtkmain.c (gtk_propagate_event): Only do special
4315         special key-press grab handling for widgets within
4316         GtkWindows. Otherwise, fall through to normal case.
4317
4318         This prevents key events being sent twice to GtkInvisible
4319         widgets, which can cause all sorts of mischief.
4320
4321 Fri Feb  2 13:20:12 2001  Owen Taylor  <otaylor@redhat.com>
4322
4323         * gtk/gtkmain.c (gtk_propagate_event): When a grab
4324         widget is in effect, give the grab widget a first
4325         crack at KEY_PRESS/RELEASE events. (#424)
4326
4327 2001-03-06  James Henstridge  <james@daa.com.au>
4328
4329         * gtk/gtkwidget.c (gtk_widget_class_init): set the class closure
4330         offset for the window_state_event to point at window_state_event
4331         rather than no_expose_event.
4332
4333 Mon Mar  5 19:10:15 2001  Jonathan Blandford  <jrb@redhat.com>
4334
4335         * gtk/gtkimmodule.h: fix busted /* comment */
4336
4337 Mon Mar  5 15:07:05 2001  Jonathan Blandford  <jrb@redhat.com>
4338
4339         * gtk/gtktreeview.c: Apply patch from John Margaglione to add
4340         object properties.
4341
4342 Mon Mar  5 14:55:19 2001  Jonathan Blandford  <jrb@redhat.com>
4343
4344         * gtk/gtkcellrenderertoggle.c: Apply patch from Lee Mallabone to
4345         add object properties.
4346
4347         * gtk/gtkcellrenderertextpixbuf.c: Apply patch from Lee Mallabone
4348         to add object properties.
4349
4350         * gtk/gtkcellrenderertext.c: Apply patch from Lee Mallabone to add
4351         object properties.
4352
4353         * gtk/gtkcellrendererpixbuf.c: Apply patch from Lee Mallabone to
4354         add object properties.
4355
4356         * gtk/gtkcellrenderer.c: Apply patch from Lee Mallabone to add
4357         object properties.
4358
4359 Mon Mar  5 14:38:54 2001  Jonathan Blandford  <jrb@redhat.com>
4360
4361         * gtk/gtktreemodel.c: renamed "child_toggled" to
4362         "has_child_toggled".
4363
4364         * gtk/gtktreeview.c: Handle removing columns better.  Updated to
4365         handle new signal name.
4366
4367         * gtk/gtktreestore.c: Updated to handle new signal name.
4368         * gtk/gtklisttore.c: Updated to handle new signal name.
4369         * gtk/gtktreemodelsort.c: Updated to handle new signal name.
4370
4371 2001-03-05  Alexander Larsson  <alexl@redhat.com>
4372
4373         * gtk/gtkmenu.c (gtk_menu_set_tearoff_state):
4374         Set GDK_WINDOW_TYPE_HINT_MENU on tearoff window.
4375
4376 2001-03-05  Michael Natterer  <mitch@gimp.org>
4377
4378         * gtk/gtklabel.c: Made the "parent_class" pointer static. The
4379         pixbuf-engine coincidentially also failed to make one of it's
4380         parent_class pointers static, causing overwriting of GtkLabel's
4381         parent_class pointer in pixbuf_style_class_init().
4382         (Will commit the fix to the pixbuf-engine too).
4383
4384 2001-03-05  Alexander Larsson  <alexl@redhat.com>
4385
4386         * gdk/gdkwindow.h:
4387         Added GdkWindowTypeHint type. Added modal_hint field to GdkWindindow.
4388         New functions gdk_window_set_type_hint, gdk_window_set_modal_hint and
4389         gdk_window_set_icon_list for net wmspec functionality.
4390
4391         * gdk/x11/gdkwindow-x11.c:
4392         Set _NEW_WM_STATE_MODAL from window->modal_hint in set_inital_hints.
4393         Implement gdk_window_set_type_hint, gdk_window_set_modal_hint and
4394         gdk_window_set_icon_list.
4395         Added gdk_wmspec_change_state helper function and used it in the code.
4396         Set _NET_WM_ICON_NAME in gdk_window_set_title and gdk_window_set_icon_name.
4397
4398         * gtk/gtkdialog.c (gtk_dialog_init):
4399         Set GDK_WINDOW_TYPE_HINT_DIALOG.
4400
4401         * gtk/gtkhandlebox.c (gtk_handle_box_realize):
4402         Set GDK_WINDOW_TYPE_HINT_TOOLBAR.
4403
4404         * gtk/gtkwindow.c:
4405         new function gtk_window_set_type_hint.
4406         On realize, set type hint and modal hint.
4407
4408         * gtk/gtkwindow.h:
4409         Added type_hint field and gtk_window_set_type_hint.
4410
4411 2001-03-05  Alexander Larsson  <alexl@redhat.com>
4412
4413         * gtk/gtklabel.[ch]:
4414         Convert from GtkArg to GParam (originally based on patch from Lee Mallabone).
4415         New function gtk_label_get_accel_keyval () to get the underline accelerator
4416         of the label. Setting the label pattern overrides other attributes.
4417
4418 Mon Mar  5 14:51:10 MET 2001  Sven Neumann  <sven@gimp.org>
4419
4420         * gtk/gtkrc.c: fixed compiler warnings by inserting some consts.
4421         Added missing initializers to gtk_rc_style_init().
4422
4423 Sun Mar 04  07:30:03 2001 CET Mikael Hermansson <mikeh@bahnhof.se>
4424
4425         * gtk/gtktextview.c: fixed bug #51097 about setting 
4426         gtk_text_view_set_border_window_size() if the widget is 
4427         already realized.
4428
4429 Sat Mar  3 16:59:16 2001  Owen Taylor  <otaylor@redhat.com>
4430
4431         * gdk/gdkpango.h gdk/x11/gdkwindow-x11.c: Doc fixes
4432
4433         * gdk/win32/gdkinput.c (gdk_device_get_axis): Remove doc
4434         comment. Won't do to have duplicated doc comments between
4435         the platform subdirs.
4436
4437 Sat Mar  3 16:26:33 2001  Owen Taylor  <otaylor@redhat.com>
4438
4439         * gdk/x11/gdkmain-x11.c gdk/x11/gdkkeys-x11.c 
4440           gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.c:
4441
4442         Detectable auto-repeat - make a repeating key generate
4443         press/press/press/release instead of press/release pairs.
4444
4445         If we have Xkb and XkbSetDectableAutoRepeat supports
4446         that, we do it that way. Otherwise, when we get
4447         a release event, we check ahead with XPending to see
4448         if the next key is a KeyPress with the same keycode
4449         and timestamp. (Not 100% reliable, but pretty close.)
4450           
4451 Tue Feb 27 02:16:14 2001  Owen Taylor  <otaylor@redhat.com>
4452         
4453         * gtk/gtkmain.c (gtk_propagate_event): Only do special
4454         special key-press grab handling for widgets within
4455         GtkWindows. Otherwise, fall through to normal case.
4456  
4457         This prevents key events being sent twice to GtkInvisible
4458         widgets, which can cause all sorts of mischief.
4459  
4460 Fri Feb  2 13:20:12 2001  Owen Taylor  <otaylor@redhat.com>
4461  
4462         * gtk/gtkmain.c (gtk_propagate_event): When a grab
4463         widget is in effect, give the grab widget a first
4464         crack at KEY_PRESS/RELEASE events. (#424)
4465  
4466 Sat Mar  3 15:39:49 2001  Owen Taylor  <otaylor@redhat.com>
4467
4468         * gtk/gtkentry.c (gtk_entry_button_press): Add shift-clicking
4469         to extend the selection. (Roughly based on patch
4470         from Jay Cox, #50939)
4471
4472         * gtk/gtkentry.c (gtk_entry_button_press): Fix triple-clicking
4473         to properly handle previous GDK_BUTTON_PRESS. 
4474         (Patch from Jay Cox, #50938)
4475
4476         * gtk/gtkentry.c (gtk_entry_real_delete_text): Move the
4477         '\0' back along with the deleted text. (#51148)
4478
4479 Mon Jan 22 14:31:29 2001  Owen Taylor  <otaylor@redhat.com>
4480
4481         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Unshift
4482         the group when extracting it from the X keyboard event.
4483
4484         * modules/input/Makefile.am modules/input/imipa.c: 
4485         Simple module for entering IPA. (Do we need a 
4486         gtk-stupid-input-tricks CVS module?)
4487
4488 Sat Mar  3 13:32:47 2001  Owen Taylor  <otaylor@redhat.com>
4489
4490         * gtk/gtkimmodule.c (gtk_im_module_init): Remove spurious
4491         const.
4492
4493         * gdk-pixbuf-2.0.pc.in gtk+-2.0.pc.in: Fix include path.
4494
4495         * gtk/gtkdialog.c (gtk_dialog_set_default_response): If there
4496         is no focus widget for the dialog currently, grab the focus as well
4497         as the default.
4498
4499         * gtk/gtkdialog.c (gtk_dialog_set_default_response): Get
4500         the action area's children to iterate through, not the
4501         dialog's children.
4502
4503 Sat Mar  3 13:21:27 2001  Owen Taylor  <otaylor@redhat.com>
4504
4505         * tests/Makefile.am tests/testsocket.c tests/testsocket_child.c:
4506         Add plug-socket tests. (Won't work worth a darn until I commit
4507         the rest of the plug-socket changes, but no reason these
4508         can't go into CVS now.)
4509
4510 2001-03-02  Havoc Pennington  <hp@redhat.com>
4511
4512         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_flush): use
4513         _gdk_region_get_xrectangles()
4514
4515         * gdk/x11/gdkmain-x11.c (_gdk_region_get_xrectangles): new function
4516
4517         * gtk/testgtk.c (create_shapes): add test for shape_combine_region
4518
4519         * gdk/x11/gdkwindow-x11.c (gdk_window_shape_combine_region): new
4520         function, contributed by Ron Steinke    
4521
4522         * gdk/x11/gdkevents-x11.c (gdk_wmspec_supported): rename
4523         gdk_net_wm_supports
4524
4525         * gdk/gdkregion-generic.c (gdk_region_get_rectangles): 
4526         New function, contributed by Ron Steinke
4527
4528         * gtk/gtkentry.c (gtk_entry_get_layout_offsets): New function, 
4529         used to line up the text in the entry when using the entry for
4530         editable sheet cell hacks
4531
4532         * gtk/testgtk.c (create_entry): test the activate_default setting
4533         on GtkEntry
4534
4535         * gtk/gtkentry.c (gtk_entry_set_activates_default): New function to 
4536         cause the entry to activate the default button for a dialog when 
4537         activated
4538         (gtk_entry_get_activates_default): new function
4539
4540 Wed Feb 28 19:10:43 2001  Owen Taylor  <otaylor@redhat.com>
4541
4542         * gtk/gtkclist.c (real_remove_row): Patch from ChiDeok
4543         Hwang to move call to sync_selection() up a few lines
4544         to before the row list is modified, to fix crash when
4545         removing rows in the undo_selection list.
4546
4547         (Test case provided by Daniel Elstner:
4548
4549         http://mail.gnome.org/archives/gtk-list/2001-February/msg00359.html)
4550
4551 Fri Feb 23 15:06:48 2001  Owen Taylor  <otaylor@redhat.com>
4552
4553         * gtk/gtktree.c (gtk_tree_class_init): Do the setting
4554         of tree->root_tree in parent_set rather than _map(), 
4555         fixing #50892 in a bit better manner.
4556
4557 Thu Feb 22 17:07:58 2001  Owen Taylor  <otaylor@redhat.com>
4558
4559         * gtk/gtkmenu.c (gtk_menu_popup): Don't flip cursor. (#50934)
4560
4561 Tue Feb  2 11:22:33 2001  Jody Goldberg <jgoldberg@home.com>
4562
4563         * gtk/gtkstyle.c : Remove duplicate fwd decl for
4564         gtk_default_draw_shadow.
4565
4566 ue Feb 20 11:40:58 2001  Owen Taylor  <otaylor@redhat.com>
4567
4568         * gdk/gdkimage.c (gdk_image_new): Remove excess 
4569         warning, make warnings more verbose, treat a error
4570         in shmat as permanent, and don't try again.
4571         (#51163, Ed Randall.)
4572
4573 Mon Feb 19 20:15:28 2001  Owen Taylor  <otaylor@redhat.com>
4574
4575         * gtk/gtkrange.c (gtk_range_timer_1st_time): Add an initial
4576         delay for the first click before starting to scroll.
4577         (based on #51026, gtk-enf-990512-0.patch, Eric Fisher)
4578
4579         * gtk/gtktext.c: GtkText should have I-beam cursor. 
4580         (based on gtk-enf-990513-1.patch, Eric Fisher.)
4581
4582 Mon Feb 19 16:42:19 2001  Owen Taylor  <otaylor@redhat.com>
4583
4584         * gtk/gtklayout.c (gtk_layout_allocate_child): Tiny
4585         cleanup to remove some references to unused
4586         ->xoffset, ->yoffset.
4587
4588 Mon Feb 19 14:20:36 2001  Owen Taylor  <otaylor@redhat.com>
4589
4590         * gdk/gdkrgb.c (gdk_rgb_convert_555_br): Fix incorrect
4591         mask. (#51039, fix from Martin Maierhofer)
4592
4593 Fri Feb 16 20:09:42 2001  Owen Taylor  <otaylor@redhat.com>
4594
4595         * gtk/gtkctree.c (gtk_ctree_class_init): Add bindings
4596         for unshifted + and shifted = for non-us keyboards.
4597         Make <Control>+ and <Control>- work as well as 
4598         <Control>KP_Plus, <Control>KP_Minus for recursive
4599         open/close.  (#2682, René Seindal)
4600
4601 Fri Feb 16 18:50:59 2001  Owen Taylor  <otaylor@redhat.com>
4602
4603         * gtk/gtkmenushell.c (gtk_real_menu_shell_cancel): Unset
4604         the active menu item before deactivating the menu,
4605         so gtk_menu_popdown doesn't change the history. (#50964)
4606         
4607 Fri Feb 16 15:55:22 2001  Owen Taylor  <otaylor@redhat.com>
4608
4609         * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): 
4610         draw lines with text_gc rather than black_gc.
4611         (Patch from Vlad Harchev <hvv hippo ru>, #50926)
4612
4613 Thu Mar  1 19:50:56 2001  Jonathan Blandford  <jrb@redhat.com>
4614
4615         * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_realize_button):
4616         Move handling of buttons fully in gtktreeviewcolumn.  This code is
4617         less interrelated then it was, but it still requires the
4618         GtkTreeView to map it.
4619
4620         * test/testtreecolumn.c: Now I can add a column to one view,
4621         remove it, add it to the another view, remove it, then re-add it
4622         to the first.  Nifty.
4623
4624 Thu Mar  1 13:14:27 GMT 2001  Tony Gale <gale@gtk.org>
4625
4626         * docs/tutorial/gtk-tut.sgml: Minor corrections
4627
4628 Wed Feb 28 16:36:46 2001  Jonathan Blandford  <jrb@redhat.com>
4629
4630         * gtk/gtktreemodel.c (gtk_tree_row_reference_*): Sanitize
4631         GtkRowReference.
4632
4633 2001-02-28  Havoc Pennington  <hp@redhat.com>
4634
4635         * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove draw_focus and
4636         draw_default
4637         (gtk_widget_draw_focus): remove this function; we could instead
4638         make it just gtk_widget_draw(), but in most cases I think the
4639         result would be broken user code, so think it's better to have
4640         that code not compile and get fixed
4641         (gtk_widget_draw_default): ditto
4642
4643         * gtk/gtkwidget.c: Add default handlers for focus_in_event and
4644         focus_out_event that set/unset GTK_HAS_FOCUS and call queue_draw
4645         
4646         * gtk/gtkwindow.c (gtk_window_set_default): just queue a draw when
4647         widgets lose/get the default, instead of calling draw_default
4648         
4649         * docs/Changes-2.0.txt: note about all this
4650
4651         Then fixed every widget in GTK, I won't list all the filenames.
4652
4653 Tue Feb 27 19:32:53 2001  Jonathan Blandford  <jrb@redhat.com>
4654
4655         * gtk/gtktreemodel.c (deleted_callback): Proxy out to
4656         _gtk_tree_row_reference_deleted.
4657         (inserted_callback): Proxy out to
4658         _gtk_tree_row_reference_inserted.
4659         (_gtk_tree_row_reference_new_from_view): Somewhat yukky hack to
4660         get around signal emission ordering problem.
4661
4662         * gtk/gtktreeselection.c (gtk_tree_selection_real_unselect_all):
4663         fix to work with SINGLE 
4664         (_gtk_tree_selection_internal_select_node): Major sanitization on
4665         selections.  SINGLE now seems to work.
4666
4667         * tests/Makefile.am: add testtreecolumn.c:
4668
4669         * tests/testtreecolumn.c: New test.  Mostly points out selection
4670         bugs currently, but will test columns later.
4671
4672         * gtk/gtkrbtree.c (_gtk_rbtree_remove_node): Fix really nasty
4673         selection bug.  I hate touching this code -- it's scary.
4674
4675 2001-02-26  Havoc Pennington  <hp@redhat.com>
4676
4677         * gtk/testgtk.c: test the window state stuff
4678
4679         * gtk/gtkwindow.c (gtk_window_present): new function, makes a
4680         window come to the user's attention as if it were just created
4681         (gtk_window_iconify): new function
4682         (gtk_window_deiconify): new function
4683         (gtk_window_stick): new function
4684         (gtk_window_unstick): new function
4685         (gtk_window_maximize): new function
4686         (gtk_window_unmaximize): new function
4687
4688         * gtk/gtkwidget.h, gtk/gtkwidget.c: add window_state_event signal
4689
4690         * gtk/gtkmain.c (gtk_main_do_event): handle GDK_WINDOW_STATE
4691
4692         * gdk/x11/gdkevents-x11.c: create window state events when
4693         appropriate
4694         (gdk_wmspec_supported): new function
4695
4696         * gdk/x11/gdkwindow-x11.c (gdk_window_iconify): handle
4697         iconification before showing the window
4698         (gdk_window_deiconify): new function
4699         (gdk_window_stick): new function
4700         (gdk_window_unstick): new function
4701         (gdk_window_maximize): new function
4702         (gdk_window_unmaximize): new function
4703
4704         * gdk/gdkwindow.c: store the window state in the window; 
4705         change to using the GDK_WINDOW_STATE_WITHDRAWN flag instead of
4706         window->mapped.
4707         (gdk_window_get_state): return the current window state
4708
4709         * gdk/gdkevents.c (gdk_event_get_time): handle GDK_WINDOW_STATE
4710         (gdk_event_get_state): handle GDK_WINDOW_STATE
4711         (gdk_synthesize_window_state): function to create the window state
4712         events
4713
4714         * gdk/gdkevents.h (struct _GdkEventWindowState): new type of
4715         event, for changes to "window state" such as maximized, sticky, 
4716         etc.
4717         
4718         * gdk/x11/gdkwindow-x11.c (gdk_window_focus): new function,
4719         focuses a window
4720
4721         * gdk/x11/gdkmain-x11.c (_gdk_wmspec_supported): new function, 
4722         finds out if we support a given WM spec hint
4723
4724 Tue Feb 27 13:37:38 GMT 2001  Tony Gale <gale@gtk.org>
4725
4726         * docs/faq/gtk-faq.sgml: New question re memory leaks.
4727
4728 2001-02-25  Hans Breuer  <hans@breuer.org>
4729
4730         * gdk/gdk.h : changed #ifdef GDK_DISBALE_DEPRECARED to #ifndef
4731         cause we want to loose those prototypes only in the latter case
4732
4733         * gdk/win32/gdkevents-win32.c : can't cast from GdkPixmap to
4734         GdkPixmapImplWin32 because it itsn't derived from it. Use the
4735         impl member variable instead
4736
4737         * gtk/gtk.def : updated
4738
4739         * gtk/gtklist.c : 
4740         * gtk/gtkmenus.c : include <string.h> for memset ()
4741
4742         * gtk/makefile.msc.in : updated and don't define GTK_COMPILATION
4743         for everthing built here, but for gtk-x.x.dll only. This solves
4744         problem of indifferent gtk type definitions
4745
4746 Sat Feb 24 20:11:39 2001  Jonathan Blandford  <jrb@redhat.com>
4747
4748         * gtk/gtkclipboard.h: actually put /* */ around #endif comment.
4749
4750 Fri Feb 23 17:50:13 2001  Jonathan Blandford  <jrb@redhat.com>
4751
4752         * gtk/gtktreeview.c (gtk_tree_view_bin_expose): Only draw the
4753         column that is exposed.
4754
4755         (_gtk_tree_view_update_size): Changed name from set_size, and
4756         changed function to do more work, and not force people calling it
4757         to figure out the size.  Simplifies a lot of code elsewhere.
4758
4759 2001-02-23  Alexander Larsson  <alexl@redhat.com>
4760
4761         * gdk/gdkpixmap.c (gdk_pixmap_colormap_new_from_pixbuf):
4762         return solid masks for xpms that have no transparent color.
4763         This makes the ..._create_from_xpm... API backwards
4764         compatible.
4765
4766 2001-02-23  Tor Lillqvist  <tml@iki.fi>
4767
4768         * README.win32: Update. Mention the gtk-1-3-win32-production
4769         branch.
4770
4771         * gdk/win32/bdfcursor.c: New file. A program that generates
4772         xcursors.h. Thanks to Stefan Ondrejicka.
4773
4774         * gdk/win32/xcursors.h: New file, contains the X cursor font in a
4775         compact format.
4776
4777         * gdk/win32/Makefile.am (EXTRA_DIST): Add new files.
4778
4779         * gdk/win32/gdkcursor-win32.c (_gdk_win32_data_to_wcursor): New
4780         function, uses xcursors.h.
4781         (gdk_cursor_new): Use _gdk_win32_data_to_wcursor to generate
4782         cursor from inline data instead of using LoadCursor() to generate
4783         it from a resource.
4784
4785         * gdk/win32/gdkevents-win32.c (gdk_event_translate): At button up
4786         event, must check the Windows message for mouse button state, as
4787         the GDK event state might not have been built if it is
4788         undelivered. Remove one goto.
4789
4790         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Call
4791         SetCursor() if the current cursor as returned by GetCursor() is
4792         the window's previous cursor. The ChildWindowFromPoint() test
4793         apparently didn't work correctly.
4794
4795         * gdk/win32/rc/*.cur: Remove.
4796
4797         * gdk/win32/rc/gdk.rc.in: Remove cursors.
4798
4799         * gdk/win32/rc/Makefile.am (EXTRA_DIST): Remove from here, too.
4800
4801         * gtk/makefile.{mingw,msc}.in: Updates.
4802
4803 Wed Feb 21 20:56:50 2001  Jonathan Blandford  <jrb@redhat.com>
4804
4805         * gtk/gtktreemodel.h: add functions for signal emission.
4806
4807         * gtk/gtktreestore.c: move to use above functions instead of
4808         g_signal_emit.
4809
4810         * gtk/gtkliststore.c: ditto
4811
4812 Wed Feb 21 15:41:34 2001  Jonathan Blandford  <jrb@redhat.com>
4813
4814         * gtk/gtktreestore.c: removed signals.  Moved to inherit from
4815         GObject instead of GtkObject.
4816
4817         * gtk/gtkliststore.c: ditto.
4818
4819         * gtk/gtktreemodelsort.c: ditto.
4820
4821         * gtk/gtktreemodel.c (gtk_tree_model_base_init): moved signals to
4822         GtkTreeModelIface, instead of in each model.
4823
4824 2001-02-21  Havoc Pennington  <hp@redhat.com>
4825
4826         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_child_anchor):
4827         unbreak this function
4828
4829         * gtk/gtkentry.c: apply patch from Lee Mallabone to add object 
4830         properties
4831
4832         * gtk/gtkcurve.c: apply patch from Lee Mallabone to add object
4833         properties
4834
4835         * gtk/gtkcombo.c: apply patch from Lee Mallabone to add object 
4836         properties
4837
4838         * gtk/gtkentry.c (gtk_entry_set_max_length): have this take -1 to
4839         mean unset the max length
4840
4841 Wed Feb 21 14:23:05 2001  Jonathan Blandford  <jrb@redhat.com>
4842
4843         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data_func):
4844         Changed name to be set_cell_data_func to make it clear what
4845         the functino does.  Close bug #51069.
4846
4847 Tue Feb 20 16:49:00 2001  Jonathan Blandford  <jrb@redhat.com>
4848
4849         * gtk/testgtk.c (main): Remove turning on of profiling malloc,
4850         have memory actually freed.  Keeps box running longer.
4851
4852 2001-02-21  Alexander Larsson  <alexl@redhat.com>
4853         
4854         * gtk/gtkseparatormenuitem.[ch]:
4855         Added new menu separator item. The drawing and size handling
4856         is still done in GtkMenuItem, but the API is a bit more sane.
4857         
4858         * gtk/Makefile.am:
4859         Add gtkseparatormenuitem.[ch].
4860
4861         * gtk/gtk.h:
4862         Add gtkseparatormenuitem.h.
4863         
4864         * gtk/gtkentry.c:
4865         * gtk/gtkmenufactory.c:
4866         * gtk/gtktextview.c:
4867         Use the new API for menu separators.
4868         
4869         * demos/gtk-demo/menus.c (create_menu):
4870         Add some GtkSeparatorMenuItem demo code.
4871
4872 2001-02-20  Havoc Pennington  <hp@redhat.com>
4873
4874         * gtk/gtkaspectframe.c: Convert to new property API, patch from 
4875         Lee Mallabone
4876
4877         * gtk/gtkarrow.c: Convert to new property API, patch from 
4878         Lee Mallabone
4879
4880 Tue Feb 20 14:26:41 2001  Jonathan Blandford  <jrb@redhat.com>
4881
4882         * tests/testtreeview.c (toggled_callback): fix to reflect change
4883         in GtkTreeModelStore.
4884
4885 Tue Feb 20 12:16:12 2001  Jonathan Blandford  <jrb@redhat.com>
4886
4887         * gtk/gtkiconfactory.c (gtk_icon_set_new_from_pixbuf): New
4888         function to create an icon set from a pixbuf.
4889
4890 2001-02-20  Alexander Larsson  <alexl@redhat.com>
4891
4892         * gtk/gtkcellrenderertext.[ch]:
4893         Add a "markup" property.
4894
4895         * gtk/treestoretest.c:
4896         Use the markup property, remove some leftover stuff from
4897         GtkTreeModelMapping.
4898
4899 2001-02-20  Alexander Larsson  <alexl@redhat.com>
4900
4901         * gtk/gtklabel.c (gtk_label_set_selectable):
4902         Queue a redraw if the selectable setting was changed.
4903
4904 2001-02-20  Alexander Larsson  <alexl@redhat.com>
4905
4906         * gdk/linux-fb/gdkgc-fb.c (gdk_gc_copy):
4907         Actually copy the whole gc, not just the public parts.
4908         
4909         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
4910         GDK_WINDOW_TEMP are not toplevel. Fixes selectable
4911         labels.
4912
4913 2001-02-19  Havoc Pennington  <hp@pobox.com>
4914
4915         * gdk/gdkwindow.c: docs
4916
4917         * gdk/gdkrgb.c: docs
4918
4919         * gdk/gdkregion-generic.c: docs
4920
4921         * gdk/gdkgc.c (gdk_gc_set_values): docs
4922
4923         * gdk/gdkdraw.c: docs
4924
4925         * gdk/gdkdrawable.h: deprecate drawable get/set data
4926
4927 Mon Feb 19 20:37:35 2001  Jonathan Blandford  <jrb@redhat.com>
4928
4929         * demos/gtk-demo/dialog.c: Add simple new demo.
4930
4931 2001-02-19  Havoc Pennington  <hp@redhat.com>
4932
4933         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): add
4934         insert_child_anchor signal, bug #50245
4935
4936         * gtk/gtktextbtree.c (_gtk_text_btree_insert_child_anchor): change
4937         from create_child_anchor, so the anchor is passed in
4938
4939         * gtk/gtktextchild.c (gtk_text_child_anchor_new): new function
4940         (_gtk_widget_segment_new): have the child anchor object passed in, 
4941         instead of creating it.
4942
4943         * gtk/gtktextbuffer.c (gtk_text_buffer_modified): rename
4944         to gtk_text_buffer_get_modified
4945
4946 2001-02-19  Havoc Pennington  <hp@redhat.com>
4947
4948         * gtk/gtktreemodel.c (gtk_tree_model_get_valist): hmm, someone
4949         changed GLib without fixing GTK
4950
4951         * gtk/gtkrange.h: Rename all the stupid implementation detail 
4952         functions to have an underscore in front. Most of them should 
4953         probably just go away, but for starters don't export them.
4954         Bug #50482
4955
4956 2001-02-19  Havoc Pennington  <hp@redhat.com>
4957
4958         * gdk/gdkcolor.h: test was backward, so deprecated functions were
4959         excluded by default
4960
4961         * gtk/gtkstyle.c (gtk_default_draw_diamond): draw etched in/out,
4962         clean up the old code a bit
4963
4964         * gtk/gtkradiobutton.c (gtk_radio_button_draw_indicator): draw
4965         inconsistent state
4966
4967         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_draw_indicator):
4968         draw inconsistent state
4969
4970         * gtk/testgtk.c (create_toggle_buttons): add test for inconsistent
4971         (create_menu): add inconsistent test
4972
4973         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_set_inconsistent):
4974         new function
4975         (gtk_check_menu_item_get_inconsistent): new function
4976         (gtk_real_check_menu_item_draw_indicator): draw the inconsistent
4977         state (using etched in for now)
4978
4979         * gtk/gtkcheckbutton.c (gtk_real_check_button_draw_indicator):
4980         draw inconsistent state
4981
4982         * gtk/gtktogglebutton.c (gtk_toggle_button_set_inconsistent): new
4983         function, used when the user has selected a range of stuff in
4984         different states
4985         (gtk_toggle_button_get_inconsistent): accessor for that
4986         (gtk_toggle_button_paint): draw inconsistent state (etched in?
4987         don't know what else to do)
4988
4989 2001-02-19  Hans Breuer <hans@breuer.org>
4990
4991         * gtk/gtk.def : updated exported symbols
4992
4993         * gtk/makefile.msc.in : updated
4994
4995         * gtk/gtkstyle.c (gtk_style_realize) : gets called without
4996         a colormap, when invoked from testgtk::entry. I'm not sure where
4997         the bug is, but g_return_if_fail (GDK_IS_COLORMAP (colormap));
4998         avoids immediate crashing ...
4999
5000         * gtk/gtkmain.c (check_setugid) : totally disabled on win32;
5001         any objections ?
5002
5003         * gtk/gtktreemodel.c : called G_VALUE_LCOPY with an extra
5004         0 parameter. At least msvc doesn't like macros with var args. 
5005         I simply removed the extra 0, was it a feature or a typo ?
5006
5007         * gtk/gtktreeviewcolumn.[hc] (gtk_tree_view_column_set_func) :
5008         removed the extra indirection from the GtkTreeViewColumnFunc parameter,
5009         because the value assignment to the internal struct wasn't working.
5010         I'm not absolutely sure. The problem could have been resolved by
5011         changing the "func" declartion in the struct, but was the pointer
5012         to the function pointer intended ?
5013
5014         * gtk+/gtk/gtktreedatalist.c : include gboxed.h
5015
5016         * gdk/gdk.def : updated exported symbols
5017
5018         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_image) :
5019         only use SetDIBitsToDevice if there is a palette at the drawable
5020         and the image is GDK_VISUAL_PSEUDO_COLOR
5021
5022         * gdk/win32/gdkkeys-win32.c : msvc still has no <unistd.h> ...
5023
5024         * gdk/win32/gdkwindow-win32.c : #include "gdk.h" /* gdk_rectangle_intersect */
5025
5026         * gdk/*/makefile.msc : updated
5027
5028 2001-02-19  Havoc Pennington  <hp@redhat.com>
5029
5030         * demos/gtk-demo/Makefile.am (INCLUDES): GDK_DISABLE_COMPAT_H,
5031         GDK_DISABLE_DEPRECATED (we need to merge those two #defines)
5032
5033         * gdk/x11/gdkmain-x11.c (gdk_key_repeat_disable): nuke
5034         (gdk_key_repeat_restore): nuke
5035
5036         * gdk/gdk.c (gdk_exit_func): #if 0 this for now, don't install it
5037         (gdk_init_check): no atexit func
5038
5039         * gdk/gdkrgb.h: mark some stuff deprecated
5040
5041         * gdk/gdkcolor.h: mark some stuff deprecated
5042         
5043         * gdk/gdk.h: deprecated gdk_exit, gdk_input_*
5044
5045         * gdk/gdkfont.h: bracket in GDK_DISABLE_DEPRECATED
5046
5047 2001-02-16  Havoc Pennington  <hp@redhat.com>
5048
5049         * gtk/gtkvscrollbar.c (gtk_vscrollbar_trough_keys): use the visual
5050         scroll steps.
5051
5052         * gtk/gtkvscale.c (gtk_vscale_trough_keys): use the visual scroll
5053         steps, and add Ctrl-arrow shortcuts for paging visually as with
5054         HScale, since Page Up and Page Down move logically.
5055
5056         * gtk/gtkenums.h (GtkScrollType): add GTK_SCROLL_STEP_UP,
5057         GTK_SCROLL_STEP_DOWN, etc. for visual scroll directions
5058         
5059         * gtk/gtkrange.c (gtk_range_key_press): handle the visual scroll
5060         steps
5061         (gtk_range_scroll): handle the visual steps
5062
5063         * gtk/gtklist.c (gtk_list_scroll_horizontal): handle the up/down
5064         scroll steps
5065
5066         * gtk/gtkhscale.c (gtk_hscale_trough_keys): use the visual scroll
5067         steps, not the logical ones.
5068
5069         * gtk/gtkclist.c (move_focus_row): handle the up/down scroll steps
5070         (scroll_vertical): handle up/down steps
5071
5072 2001-02-19 Alexander Larsson  <alexl@redhat.com>
5073
5074         * gdk/linux-fb/gdkimage-fb.c (gdk_image_new_bitmap):
5075         Copy data and free data with free().
5076
5077         * gdk-pixbuf/gdk-pixbuf.c:
5078         * gdk-pixbuf/io-jpeg.c:
5079         * gdk-pixbuf/io-png.c:
5080         Use g_try_malloc/g_free instead malloc/free.
5081         
5082         * gdk-pixbuf/test-gdk-pixbuf.c:
5083         Must... initialize... gobject...
5084         
5085         * gdk-pixbuf/pixops/timescale.c:
5086         * gtk/gtkcalendar.c:
5087         Use g_malloc instead of malloc.
5088         
5089 2001-02-19 Alexander Larsson  <alla@lysator.liu.se>
5090
5091         * gtk/testgtkrc:
5092         Comment out property assignments, these don't work yet.
5093
5094 2001-02-17  Havoc Pennington  <hp@pobox.com>
5095
5096         * gtk/gtkalignment.c (gtk_alignment_class_init): clean this up a
5097         bit.
5098
5099 2001-02-17  Havoc Pennington  <hp@pobox.com>
5100
5101         * gtk/gtklabel.c (gtk_label_ensure_layout): fix screwup with
5102         shadowed variables that had broken size request in some cases,
5103         leading to bogus tooltips (#50996)
5104
5105 2001-02-06  Jon K Hellan  <hellan@acm.org>
5106
5107         Implement fast browsing of tooltips, bug #50619
5108         
5109         * gtk/gtktooltips.h (struct _GtkTooltips): Add use_sticky_delay
5110         and last_popdown
5111         
5112         * gtk/gtktooltips.c (gtk_tooltips_init): Initialize sticky_delay,
5113         use_sticky_delay and last_popdown.
5114         (gtk_tooltips_draw_tips, gtk_tooltips_set_active_widget): Record
5115         time of popdown.
5116         (gtk_tooltips_set_active_widget): Unset sticky behaviour if widget
5117         is NULL.
5118         (gtk_tooltips_recently_shown): New static function.  Return true
5119         if < sticky_delay has elapsed since last popdown.
5120         (gtk_tooltips_event_handler): Display window after sticky_delay
5121         (presumably < normal delay) if < STICKY_REVERT_DELAY has elapsed
5122         since last popdown.
5123         
5124 2001-02-17  Havoc Pennington  <hp@pobox.com>
5125
5126         * gtk/gtktypeutils.h (GtkSignalFunc): change it to take (void)
5127         instead of (). #6394
5128
5129         * gtk/gtkprogressbar.c (gtk_progress_bar_get_text): Add
5130         G_CONST_RETURN, make it return by reference, #50473
5131         
5132 Sat Feb 17 06:47:27 2001  Tim Janik  <timj@gtk.org>
5133
5134         * gtk/gtkmenu.c (gtk_menu_motion_notify): default initialize the
5135         generated ENTER_NOTIFY event with 0, otherwise not explicitely
5136         setup fields contain garbage (e.g. subwindow, breaking
5137         gdk_drawable_ref() upon event copy).
5138         (gtk_menu_stop_navigating_submenu_cb): same here.
5139
5140         * gtk/gtklist.c (gtk_list_vertical_timeout): 
5141         * gtk/gtklist.c (gtk_list_horizontal_timeout): 
5142         * gtk/gtkclist.c (vertical_timeout): 
5143         * gtk/gtkclist.c (horizontal_timeout): change direct assignment
5144         default-zero-intialization for unions to memset(,0,), as unions are
5145         not fully default-zero-initialized by compilers (GdkEvent x = { 0, };
5146         has to become GdkEvent x; memset (&x, 0, sizeof (x)); )
5147
5148         * gtk/gtktreeview.c (gtk_tree_view_set_rows_drag_source): scratch
5149         g_closure_sink() warning.
5150
5151         * gtk/gtktreemodel.c (gtk_tree_model_get_valist): 
5152         * gtk/gtktreestore.c (gtk_tree_store_set_valist): 
5153         * gtk/gtkliststore.c (gtk_list_store_set_valist): 
5154         fix G_VALUE_COLLECT() and G_VALUE_LCOPY() calls.
5155         
5156 Fri Feb 16 17:49:59 2001  Jonathan Blandford  <jrb@redhat.com>
5157
5158         * gtk/gtktreestore.[hc], gtk/gtkliststore.[ch]: removed
5159         gtk_*_store_get, and moved to GtkTreeModel.
5160
5161         * gtk/gtktreemodel.h (gtk_tree_model_set{v,}): Added
5162
5163         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_finalize): added.
5164
5165         * gtk/Makefile.am: remove gtktreemodelmapping.[ch]
5166
5167         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_func): let you
5168         set the func.
5169
5170         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
5171         freeze/thaw notify between setting all the properties for a cell.
5172
5173         * gtk/gtk.h: remove gtktreemodelsimple.h, and gtktreemodelmapping.h
5174
5175 2001-02-15  Havoc Pennington  <hp@redhat.com>
5176
5177         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): convert
5178         the X coordinates so they're with respect to the line, rather than 
5179         with respect to the layout.
5180
5181         * gtk/gtkalignment.c: Convert to new property API, patch from Lee
5182         Mallabone
5183
5184         * gtk/testgtk.c (create_range_controls): add vscale tests, 
5185         and inverted test
5186
5187         * gtk/gtkrange.c (gtk_range_set_inverted): new function to fix 
5188         #50806
5189
5190         * gtk/gtkentry.c (gtk_entry_get_text): add G_CONST_RETURN
5191
5192         * gtk/gtktextiter.h (gtk_text_iter_is_last): rename 
5193         gtk_text_iter_is_end
5194
5195         * gtk/gtktextbuffer.h (gtk_text_buffer_get_last_iter):
5196         rename gtk_text_buffer_get_end_iter
5197
5198         * gtk/testgtk.c (create_labels): Add test for selectable
5199
5200         * gtk/gtkentry.c (gtk_entry_draw_text): Use new GDK API to draw
5201         the selection stuff. This code is kind of broken since it doesn't 
5202         use the theme engine.
5203
5204         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): 
5205         fix infinite loop and y offset problem
5206         (gdk_draw_layout_line_with_colors): fix foreground color handling
5207
5208         * gtk/gtklabel.h, gtk/gtklabel.c: Implement a "selectable" flag 
5209         that makes the label selectable.
5210         
5211         * gtk/gtklabel.c (gtk_label_style_set): recreate the label's
5212         layout when the style is set, since fonts etc. could have changed.      
5213
5214 Fri Feb 16 14:22:05 2001  Jonathan Blandford  <jrb@redhat.com>
5215
5216         * gtk/Makefile.am: Removed gtktreemodelsimple.[ch]
5217
5218         * gtk/gtktreemodelsimple.[ch]: removed.
5219
5220 2001-02-16  Alexander Larsson  <alexl@redhat.com>
5221
5222         * gtk/gtktreemodelmapping.[ch]:
5223         New files. Implement GtkTreeModelMapping.
5224         
5225         * gtk/Makefile.am:
5226         Add gtktreemodelmapping.[ch].
5227         
5228         * gtk/gtk.h:
5229         Add gtktreemodelmapping.h
5230
5231         * gtk/treestoretest.c:
5232         Test the GtkTreeModelMapping
5233
5234 Tue Feb 13 13:16:09 2001  Jonathan Blandford  <jrb@redhat.com>
5235
5236         * demos/gtk-demo/panes.c (create_pane_options): If we're going to
5237         have a demo, we might as well pass in real values.  Thanks to
5238         clahey for pointing this out.
5239
5240 2001-02-14  Havoc Pennington  <hp@pobox.com>
5241
5242         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_remove): add
5243         "static" to a private function
5244         (gtk_image_menu_item_class_init): remove destroy handler,
5245         add "image" object property
5246
5247 2001-02-13  Alexander Larsson  <alla@lysator.liu.se>
5248
5249         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_clip_region):
5250         Add a shortcut if the window and the current clip_region doesn't
5251         overlap. This is needed when there are a lot of windows in a
5252         window. The layout test in testgtk is a good test.
5253
5254         * gdk/linux-fb/gdkwindow-fb.c:
5255         Whitespace fix.
5256
5257 2001-02-13  Sven Neumann  <sven@convergence.de>
5258
5259         * demos/testanimation.c: replaced deprecated gtk_drawing_area_size
5260
5261 2001-02-13  Alexander Larsson  <alexl@redhat.com>
5262
5263         * gdk/linux-fb/gdkcursor-fb.c (gdk_fb_cursor_unhide):
5264         Don't reference last_cursor if it is null. Fixes crash when rotating
5265         the screen before having moved the mouse.
5266
5267         * gdk/linux-fb/gdkcc-fb.c: Zapp!
5268
5269         * gdk/linux-fb/Makefile.am: Don't compile gdkcc-fb.c
5270
5271         * gdk/linux-fb/gdkwindow-fb.c: Fix typo. width->height. Fixes redraw 
5272         when using 90 or 270 degrees rotation.
5273
5274 2001-02-12  Havoc Pennington  <hp@pobox.com>
5275
5276         * gdk/gdkpango.c (gdk_pango_get_gc): fix bug where 
5277         it always set the foreground, even if we were only using
5278         a stipple.
5279         (gdk_draw_layout_line_with_colors): new function, allow
5280         override colors
5281         (gdk_draw_layout_with_colors): new function, allow override
5282         colors
5283         (gdk_pango_layout_line_get_clip_region): function to get the clip
5284         region for a logical text range
5285         (gdk_pango_layout_get_clip_region): get the clip region for a
5286         logical text range
5287
5288         * gdk/x11/gdkcolor-x11.c: forward declare gdk_colormap_sync(),
5289         (gdk_colormap_new): fix call to gdk_colormap_sync() so it has 
5290         the right number of arguments.
5291
5292         * gtk/gtktextbtree.c (gtk_text_btree_node_check_consistency):
5293         enhance the function to check that node data corresponds to a 
5294         view still belonging to the tree.
5295
5296         * gtk/gtktreeview.c (gtk_tree_view_changed): we were leaking the 
5297         GtkTreePath
5298         (gtk_tree_view_inserted): ditto
5299         (gtk_tree_view_child_toggled): ditto
5300
5301         * gtk/gtktreemodel.c (gtk_tree_path_append_index): use realloc to
5302         simplify this code.
5303
5304         * gtk/gtkcellrenderertext.c (get_layout): fix leak of 
5305         a PangoAttrList
5306
5307         * demos/gtk-demo/main.c (load_file): Fix leak of a GString
5308
5309         * gtk/gtkentry.c (gtk_entry_realize): Fix leak of a GdkCursor
5310
5311         * gtk/gtkmenubar.c (gtk_menu_bar_size_request): consider toggle
5312         size in the size request 
5313         (gtk_menu_bar_size_allocate): consider toggle size here
5314
5315         * gtk/gtkimagemenuitem.h, gtkimagemenuitem.c: Menu item
5316         that displays a widget in the toggle slot
5317
5318         * gtk/testgtk.c: test GtkImageMenuItem
5319
5320         * gtk/Makefile.am, gtk/gtk.h: Add GtkImageMenuItem
5321         
5322         * gtk/gtkmenuitem.h: Use "gint" not "guint16" for toggle size
5323         request and allocation
5324
5325         * gtk/gtkmenu.c (gtk_menu_size_request): use gint not guint16
5326
5327         * gtk/gtkcheckmenuitem.c
5328         (gtk_check_menu_item_toggle_size_request): ditto
5329         
5330 Mon Feb 12 23:43:30 2001  Owen Taylor  <otaylor@redhat.com>
5331
5332         * gtk/Makefile.am (gdk_headers): Remove gdkcc.h 
5333         reference.
5334
5335         * configure.in gtk/gtkmain.c: Add checks for setuid/setgid,
5336         and refuse to initialize GTK+ if they fail.
5337
5338 Mon Feb 12 15:02:07 2001  Owen Taylor  <otaylor@redhat.com>
5339
5340         * configure.in: Add check for gtk-doc version.
5341
5342 Thu Feb  8 17:18:26 2001  Owen Taylor  <otaylor@redhat.com>
5343
5344         * gtk/gtklabel.c (gtk_label_size_request): Fix bug
5345         where the xpad/ypad was only being used on one side!
5346
5347 2001-02-11  Tor Lillqvist  <tml@iki.fi>
5348
5349         * gdk/win32/gdkcolor-win32.c (gdk_colormap_query_color): New
5350         function, copied from X11 version.
5351
5352         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Eliminate
5353         DestroyCursor failures. The reason for the problem (despite the
5354         inconsistent messages from GetLastError()) was that
5355         DestroyCursor() cannot be called while a cursor is set in a
5356         window. Set the new cursor first and then destroy the old one.
5357         Thanks to jpe@archaeopteryx.com.
5358
5359         * gdk/win32/gdkcc-win32.c: Remove.
5360
5361         * gdk/win32/Makefile.am: Remove from here, too.
5362         
5363         * gdk/gdk.def
5364         * gdk/makefile.mingw.in: Update. Godbye GdkColorContext.
5365
5366         * gtk/gtk.def
5367         * gtk/makefile.mingw.in: Updates.
5368
5369 2001-02-08  Havoc Pennington  <hp@redhat.com>
5370
5371         * gtk/gtkbin.c (gtk_bin_add): better error message if you try to
5372         add a widget to a bin that already has a child.
5373
5374         * gdk/gdkcc.h, gdk/gdkcc-x11.c: Remove GdkColorContext, #50512
5375
5376         * docs/Changes-2.0.txt: note that GdkColorContext is gone.
5377         
5378         * gdk/x11/Makefile.am (libgdk_x11_la_SOURCES): remove gdkcc-x11.c
5379
5380         * gdk/gdk.h: remove gdkcc.h
5381
5382         * gdk/Makefile.am (gdk_public_h_sources): remove gdkcc.h
5383
5384         * gtk/gtkpixmap.c (build_insensitive_pixmap): rewrite using
5385         GdkPixbuf, since the previous implementation was GdkColorContext
5386         dependent.
5387
5388         * gtk/testgtk.c (create_pixmap): add test for insensitive GtkPixmap
5389         
5390 Thu Feb  8 19:00:00 2001  Jonathan Blandford  <jrb@redhat.com>
5391
5392         * gtk/gtktreeview.c (TREE_VIEW_VERTICAL_SEPARATOR): moved back to
5393         a sane value!
5394
5395 2001-02-08  Havoc Pennington  <hp@redhat.com>
5396
5397         * gtk/gtkstyle.c (get_darkened_gc): let's darken colors, not
5398         lighten them.
5399
5400 2001-02-08  Havoc Pennington  <hp@redhat.com>
5401
5402         * gtk/gtktextview.c (gtk_text_view_destroy_layout): remove
5403         validation idle
5404
5405         * demos/gtk-demo/main.c (create_tree): adjust to changes in text
5406         cell renderer
5407
5408         * demos/pixbuf-demo.c (timeout): remove deprecated
5409         gtk_widget_draw
5410
5411         * demos/testpixbuf-save.c (main): remove deprecated
5412         gtk_drawing_area_size
5413
5414         * gtk/gtktreeview.c (gtk_tree_view_size_allocate): allocate
5415         buttons even if the model isn't setup. gtk_tree_view_check_dirty()
5416         at the start of the allocation.
5417         (gtk_tree_view_check_dirty): handle column->button == NULL, handle
5418         unsetup or NULL model.
5419
5420         * gtk/gtkstyle.c (gtk_default_draw_flat_box): drawing for the 
5421         even/odd/sorted cells in the tree view.
5422
5423         * gtk/gtktreeselection.c (gtk_tree_selection_real_unselect_all):
5424         bugfixes
5425
5426         * gtk/gtktreeview.c: assorted bugfixy stuff. Draw the row
5427         backgrounds with draw_flat_box using different detail for even/odd
5428         rows.
5429
5430         * gtk/gtkrbtree.c, gtkrbtree.h: Keep track of the parity of each
5431         row, so we can draw the alternating colors thing
5432
5433         * gtk/gtktexttag.c (gtk_text_tag_set_property): if we change a
5434         property from a synonym property, notify for the synonym.
5435         Also, nuke the background_gdk_set and foreground_gdk_set synonyms
5436         (gtk_text_tag_get_property): Always return the font, even if
5437         all its fields aren't set
5438
5439         * gtk/gtkcellrenderertext.h (struct _GtkCellRendererText): don't
5440         store the attr list; it leaves us with no way to change attributes
5441         in _render according to the render flags, and no way to implement
5442         get_property. Instead store all the specific text attributes. 
5443         Separate whether an attribute is enabled from its value. Sync all
5444         properties with GtkTextTag, make them all consistent, etc.
5445
5446         * gtk/gtkcellrenderer.h: Add a flag GTK_CELL_RENDERER_SORTED so
5447         renderers can highlight the sort row/column     
5448
5449         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_get_property): use
5450         accessor functions to get values; this has the side effect of
5451         showing up which accessor functions were missing. Added those.
5452
5453         * gtk/gtktreeviewcolumn.h: Replace set_justification with
5454         set_alignment, to be consistent with GtkLabel, GtkMisc
5455
5456         * gtk/gtktreeviewcolumn.c: Added code to display sort indicator
5457         arrow.
5458
5459         * gtk/Makefile.am (gtk_public_h_sources): add gtktreesortable.h
5460
5461         * gtk/gtktreesortable.h: updates in here
5462
5463 2001-02-07  Sven Neumann  <sven@convergence.de>
5464
5465         * gtk/gtkentry.c (gtk_entry_draw_text): convert area_height to 
5466         pango dimensions after painting the background. We used to draw
5467         gigantic flat boxes here.
5468
5469 Mon Feb  5 22:05:57 2001  Owen Taylor  <otaylor@redhat.com>
5470
5471         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Fix syntax
5472         error introduced with earlier commit) (pointed out by
5473         Ollie Lho)
5474
5475 Mon Feb  5 12:25:06 2001  Owen Taylor  <otaylor@redhat.com>
5476
5477         * gtk/gtkbutton.c: Remove calls to gtk_grab_add/gtk_grab_remove,
5478         which are no longer necessary.
5479
5480 Mon Feb  5 13:22:54 GMT 2001  Tony Gale <gale@gtk.org>
5481
5482         * docs/faq/gtk-faq.sgml: s/MISK/MISC/
5483
5484 2001-02-04  Tor Lillqvist  <tml@iki.fi>
5485
5486         * gdk/gdk.def
5487         * gdk/win32/gdkim-win32.c (gdk_ic_attr_new, gdk_ic_attr_destroy):
5488         Provide dummy implementations.
5489
5490 Sun Feb  4 07:55:17 2001  Tim Janik  <timj@gtk.org>
5491
5492         * gtk/gtksignal.h: removed gtk_signal_init() compat define.
5493
5494         * gtk/gtktypeutils.[hc]: gtk_tpye_init() take an additional argument
5495         GTypeDebugFlags debug_flags and pass it on to g_type_init ();
5496         deprecated this function.
5497
5498         * gdk/gdk.c (gdk_init_check): call g_type_init () with 0 as
5499         argument.
5500
5501 Sun Feb  4 07:45:45 2001  Tim Janik  <timj@gtk.org>
5502
5503         * gtk/gtkdebug.h: nuke GTK_DEBUG_OBJECTS and GTK_DEBUG_SIGNALS.
5504
5505 2001-02-03  Havoc Pennington  <hp@pobox.com>
5506
5507         * gtk/gtktextbtree.c (_gtk_text_btree_tag): Fix bug reported by
5508         Mikael Hermansson with patch from Mikael (if there was a toggle
5509         start one after the first character in the range, this function
5510         was broken). Bug #50380
5511
5512 Sat Feb  3 11:28:03 2001  Owen Taylor  <otaylor@redhat.com>
5513
5514         * configure.in: Remove confusing comment about X11.
5515
5516 Fri Feb  2 19:21:23 2001  Owen Taylor  <otaylor@redhat.com>
5517
5518         * gdk/gdkwindow.c (gdk_propagate_shapes): Surround additional
5519         regions with HAVE_SHAPE_EXT. (#50511, Eric Ding)
5520         
5521 Fri Feb  2 18:31:54 2001  Owen Taylor  <otaylor@redhat.com>
5522
5523         * gdk/x11/gdkimage-x11.c: Remove definition of _XOPEN_SOURCE, since
5524         it breaks things on BSD. If you want to compile GTK+ with
5525         -ansi -pedantic, you should supply CPP_FLAGS=_XOPEN_SOURCE 
5526         when configuring, since GTK+ simply can't be "pure ANSI" 
5527         in the header files it uses. (#8170, Greg Hudson)
5528
5529 2001-02-02  Havoc Pennington  <hp@redhat.com>
5530
5531         * gtk/gtkwindow.c: docs
5532
5533         * gtk/gtkwidget.c: docs
5534         (gtk_widget_set_colormap): add a reference to the colormap
5535         (gtk_widget_get_default_colormap): add a reference to the colormap
5536
5537         * gtk/gtktextbtree.c (gtk_text_mark_set_visible): docs
5538
5539         * gtk/gtktextiter.c: docs
5540
5541         * gtk/gtkmain.c (gtk_propagate_event): docs
5542
5543         * gtk/gtkpaned.c (gtk_paned_get_position): docs
5544         (gtk_paned_set_position): docs
5545
5546         * gtk/gtktreesortable.h (struct _GtkTreeSortableIface): Initial
5547         sort interface, no implementation yet.
5548
5549         * demos/testpixbuf.c (new_testrgb_window): replace
5550         gtk_drawing_area_size() with gtk_widget_set_usize()
5551
5552         * demos/testpixbuf-drawable.c (main): ditto
5553         
5554         * gtk/testgtk.c: remove use of GtkStatusbarMsg
5555
5556         * gtk/gtktextbuffer.c: docs
5557
5558         * gtk/gtkstock.c: docs
5559
5560         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_set_shadow_type): docs
5561
5562         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): docs
5563
5564         * gtk/gtklabel.c (gtk_label_set_markup_with_accel): fix docs
5565         
5566         * gtk/gtkimage.c: add some docs in here
5567         (gtk_image_size_request): change name of
5568         gtk_widget_render_stock_icon
5569         (gtk_image_get_icon_set): don't dup returned string
5570         (gtk_image_get_icon_set): don't dup returned string
5571
5572         * gtk/gtkwidget.c (gtk_widget_render_icon): rename from 
5573         gtk_widget_render_stock_icon(), more consistent with gtkstyle.h
5574         and gtkiconfactory.h functions
5575
5576         * gtk/gtkiconfactory.c: add some docs in here
5577
5578         * gtk/gtkmain.c (gtk_get_default_language): document
5579         (gtk_get_current_event): document
5580         (gtk_get_current_event_state): document
5581         (gtk_get_event_widget): document
5582
5583         * gtk/gtkentry.c (gtk_entry_set_invisible_char): document
5584
5585         * gtk/gtkcontainer.c: Add some documentation
5586         (gtk_container_add): give a more explanatory warning on adding an
5587         already-parented widget, this is kind of a FAQ and also a common
5588         typo that's easier to debug with a nice warning 
5589
5590         * gtk/gtkcellrenderertoggle.c
5591         (gtk_cell_renderer_toggle_get_active): remove, I was on crack
5592         adding this, it's useless
5593         (gtk_cell_renderer_toggle_set_active): remove
5594         (gtk_cell_renderer_toggle_get_radio): add
5595
5596         * gtk/gtkcellrenderer.c (gtk_cell_renderer_get_size): don't allow
5597         the NULL cell renderer, that doesn't make any sense to me. 
5598
5599         * demos/gtk-demo/Makefile.am (INCLUDES): -DGTK_DISABLE_DEPRECATED,
5600         demo code should never use deprecated features.
5601
5602         * demos/Makefile.am (INCLUDES): -DGTK_DISABLE_DEPRECATED, demo
5603         code should never use deprecated features.
5604
5605         * gtk/gtkwidget.h: Mark gtk_widget_draw, gtk_widget_queue_clear,
5606         gtk_widget_queue_clear_area deprecated
5607
5608         * gtk/gtklayout.h: mark gtk_layout_freeze/gtk_layout_thaw
5609         deprecated
5610
5611         * gtk/gtklabel.h: mark gtk_label_get() deprecated
5612
5613         * gtk/gtkimage.h: mark the legacy GtkImage functions that took 
5614         a GdkImage deprecated, replaced by new consistently-named
5615         functions       
5616
5617         * gtk/gtkmain.h: Mark gtk_exit() deprecated
5618
5619         * gtk/gtkdrawingarea.h: mark gtk_drawing_area_size deprecated
5620
5621         * gtk/gtkstyle.h: mark gtk_draw_string, gtk_paint_string 
5622         deprecated
5623
5624         * gtk/gtkstatusbar.h: Move GtkStatusbarMsg to the .c file, 
5625         so it won't appear in docs and confuse people.
5626
5627         * gtk/gtkprogressbar.h: Mark all the old methods deprecated
5628
5629         * gtk/gtkprogress.h: Mark all methods deprecated, mark the cast
5630         macros deprecated. (can't mark the type itself deprecated, since
5631         GtkProgressBar is not deprecated and we need the type decl to use
5632         GtkProgressBar)
5633
5634         * gtk/gtkpixmap.h: Mark deprecated
5635
5636         * gtk/gtkoldeditable.h: Mark deprecated
5637
5638         * gtk/gtklist.h: Mark deprecated
5639
5640         * gtk/gtklabel.h: delete "GtkLabelWord" typedef, not used 
5641         for anything anymore.
5642
5643         * gtk/gtkctree.h: Mark deprecated
5644
5645         * gtk/gtkclist.h: Mark deprecated
5646
5647         * gtk/gtkpreview.h: Mark deprecated
5648
5649         * gtk/gtkpacker.h: Mark deprecated
5650
5651         * gtk/gtktipsquery.h: Mark deprecated
5652
5653         * gtk/gtkinputdialog.h: Add comment that it will move out of GTK
5654
5655         * gtk/gtkvruler.h: Add comment that it will move out of GTK
5656
5657         * gtk/gtkhruler.h: Add comment that it will move out of GTK
5658
5659         * gtk/gtkruler.h: Add comment that it will move out of GTK
5660
5661         * gtk/gtkgamma.h: Add comment that it will move out of GTK
5662
5663         * gtk/gtkcurve.h: Add comment that it will move out of GTK
5664
5665 Fri Feb  2 17:16:09 2001  Owen Taylor  <otaylor@redhat.com>
5666
5667         * gdk/x11/gdkcolor-x11.c (gdk_colormap_sync): Make
5668         gdk_colormap_sync private since it was never exported
5669         in a header file.
5670
5671         * gdk/x11/gdkcolor-x11.c (gdk_colormap_new): Fill in
5672         colormap->colors[] for StaticGray, StaticColor colormaps.
5673
5674         * gdk/gdkpixbuf-drawable.c: Fix problems where image->bpp
5675         was being used as if it was image->bits_per_pixel.
5676
5677         * gdk/gdkimage.h, gdk/x11/gdkimage-x11.c: Save the bits-per-pixel
5678         for the image in the GdkImage structure since it isn't
5679         reconstructable, and we need it to handle packed types
5680
5681         * gdk/win32/gdkimage-win32.c: Set image->bits_per_pixel. (I'm making
5682         the assumption that on Win32 image->bits_per_pixel == image->depth,
5683         always.
5684
5685         * gdk/linux-fb/gdkimage-fb.c: Set image->bits_per_pixel.
5686
5687         * gdk/gdkrgb.c (gdk_rgb_select_conv): Exit with an informative
5688         warning message if no converter can be found. 
5689
5690 Fri Feb  2 15:09:51 2001  Owen Taylor  <otaylor@redhat.com>
5691
5692         * gtk/fnmatch.c (FOLD): Fix problem with passing signed
5693         chars to isupper() / tolower(). (#567)
5694
5695         * examples/packer/pack.c: Add GINT_TO_POINTER, GPOINTER_TO_INT
5696         to clear up 64-bit warnings. (#567)
5697
5698 Fri Feb  2 12:26:50 2001  Owen Taylor  <otaylor@redhat.com>
5699
5700         * gtk/gtkrc.c (gtk_rc_add_initial_default_files): Get rid of
5701         a bunch of g_strdup_printf("%s%s") in favor of g_strconcat().
5702
5703         * gtk/gtkrc.c Makefile.am: Use $(libdir), not $(exe_prefix),
5704         since some people set $(libdir) separately. (#1290, David Kaelbling)
5705
5706 Thu Feb  1 18:25:46 2001  Owen Taylor  <otaylor@redhat.com>
5707
5708         * gtk/gtkfilesel.c: If PATH_MAX and MAXPATHLEN are not
5709         defined, define MAXPATHLEN to 2048. (The Hurd doesn't have
5710         MAXPATHLEN, but the code here depends on a fixed value.)
5711         (#4524)
5712
5713 Wed Jan 31 22:01:04 2001  Owen Taylor  <otaylor@redhat.com>
5714
5715         * gtk/gtkhandlebox.c (gtk_handle_box_button_changed): Handle the case
5716         where child == NULL and handle_position == RIGHT or BOTTOM. (#8041g)
5717
5718 Wed Jan 31 21:20:39 2001  Owen Taylor  <otaylor@redhat.com>
5719
5720         * gtk/gtkctree.c (real_tree_move): If the node being moved isn't
5721         viewable there is no way that moving the node will cause the 
5722         focus row to become not viewable, so omit check on the visibility
5723         of new_sibling, which is irrelevant. (Fixes #8002, David Helder)
5724
5725 Wed Jan 31 20:38:17 2001  Owen Taylor  <otaylor@redhat.com>
5726
5727         * gtk/gtkentry.c (gtk_entry_commit_cb): Delete the current
5728         selection before inserting new text.
5729
5730 Wed Jan 31 18:49:33 2001  Owen Taylor  <otaylor@redhat.com>
5731
5732         * gtk/gtkoptionmenu.c (gtk_option_menu_item_state_changed_cb):
5733         Make the sensitivity of the reparented child track that of
5734         the original parent menu item. (#34218, David Hodson)
5735
5736         * gtk/gtkoptionmenu.c (gtk_option_menu_item_destroy_cb): Handle
5737         the case where the current item is destroyed properly.
5738
5739         * gtk/gtkoptionmenu.c: Some additional code cleanups and fix
5740         some edge cases with child-less menuitems.
5741         
5742 Wed Jan 31 17:16:13 2001  Owen Taylor  <otaylor@redhat.com>
5743
5744         * gtk/gtkcombo.c (gtk_combo_window_key_press): Make Return
5745         key pop down window. (#12074, Jon K Hellan)
5746
5747 Wed Jan 31 16:21:42 2001  Owen Taylor  <otaylor@redhat.com>
5748
5749         * gtk/gtklist.c (gtk_list_signal_item_toggle): Don't allow
5750         toggling of rows off in BROWSE or EXTENDED mode. (#12072, Jon K Hellan) 
5751         The solution here isn't perfect - you get an extraneous
5752         emission of "toggle", which could conceivably confuse an app,
5753         but better than the current situation. LXR search seems to
5754         indicate that no apps in GNOME CVS connect to "toggle".
5755
5756 Wed Jan 31 15:46:13 2001  Owen Taylor  <otaylor@redhat.com>
5757
5758         * gtk/Makefile.am (libgtkinclude_HEADERS): Move gtkcompat.h from
5759         gtk_public_h_sources to directly here to avoid warning when
5760         building srcdir != builddir. (#9656)
5761
5762 Tue Jan 30 19:49:02 2001  Owen Taylor  <otaylor@redhat.com>
5763
5764         * gtk/gtkrange.c: Patch from Kipp Hickman to make the event
5765         handlers in gtkrange.c return the proper values (TRUE == handled)
5766         (#10316).
5767
5768         This is just the tip of the iceberg, but gtkrange.c is the
5769         most common place where the propagation is problematical,
5770         and also a place where it is almost certainly safe to change
5771         this in the stable branch.
5772
5773         (You don't want right click popups on a range control or anything...)
5774
5775 Tue Jan 30 18:57:59 2001  Owen Taylor  <otaylor@redhat.com>
5776
5777         * gtk/gtktext.c (clear_focus_area): We need to clear the focus
5778         area on focus out, even if a background pixmap isn't set.
5779         (#13941)
5780         
5781 Tue Jan 30 18:24:10 2001  Owen Taylor  <otaylor@redhat.com>
5782
5783         * gtk/gtknotebook.c (gtk_notebook_set_shape): Fix from Sean Cunningham
5784         to deal with setting the shape properly when scrolling arrows are
5785         turned on, but not visible because there is sufficient space.
5786         (#13432)
5787
5788 Tue Jan 30 16:39:25 2001  Owen Taylor  <otaylor@redhat.com>
5789
5790         * gtk/gtkitemfactory.c (gtk_item_factory_delete_item): For menu
5791         items with submenus, destroy the item along with the submenu.
5792         (#7841, Brian Masney(?)) Also, handle paths of the form '<foo>/abcd...' 
5793         properly.
5794
5795         * gtk/testgtk.c (menu_items): Add a dummy branch that we delete
5796         later.
5797
5798 Tue Jan 30 15:51:25 2001  Owen Taylor  <otaylor@redhat.com>
5799
5800         * gtk/gtkwindow.c (gtk_window_real_set_focus): Fix a problem where
5801         the focus widget sometimes wasn't drawn with the default if there
5802         was no default widget.
5803
5804         * gtk/gtkstyle.c (gtk_style_real_unrealize): free colors,
5805         unreference pixmaps. 
5806
5807         * gtk/gtkstyle.c (gtk_style_realize): Reference colormap
5808         for some extra safety.
5809
5810 Mon Jan 29 19:00:01 2001  Owen Taylor  <otaylor@redhat.com>
5811
5812         * gtk/gtk{ctree.c,clist.c} (set_cell_contents): Handle setting
5813         the text of a cell to the old pointer value better, by
5814         copying the new text before freeing the old text. Some code
5815         cleanup. (#8079, Karl Nelson)
5816
5817 Mon Jan 29 16:50:19 2001  Owen Taylor  <otaylor@redhat.com>
5818
5819         * gtk/gtklabel.[ch] gtk/gtkframe.[ch]: Make gtk_label_get_text()
5820         gtk_frame_get_label() non strdup'ing, and G_CONST_RETURN.
5821
5822 Mon Jan 29 15:22:51 2001  Owen Taylor  <otaylor@redhat.com>
5823
5824         * gtk/gtkmenu.c (gtk_menu_remove): When removing an
5825         item from a menu, check to see if it matches 
5826         menu->old_active_menu_item, and if so, unref and clear
5827         old_active_menu_item (Patch from Pavel Cisler)
5828
5829         * gtk/gtkmenushell.c (gtk_menu_shell_remove): Unset 
5830         menu_shell->active_menu_item, if it is the child being
5831         removed. (Patch based on that of Gene Ragan, #50337)
5832
5833 2001-01-31  Alexander Larsson  <alla@lysator.liu.se>
5834
5835         * gdk/linux-fb/gdkselection-fb.c: 
5836         * gdk/linux-fb/gdkcolor-fb.c: 
5837         * gdk/linux-fb/gdkdrawable-fb2.c: 
5838         * gdk/linux-fb/gdkfont-fb.c: 
5839         * gdk/linux-fb/gdkim-fb.c: 
5840         * gdk/linux-fb/gdkinput.c: 
5841         * gdk/linux-fb/gdkkeyboard-fb.c: 
5842         * gdk/linux-fb/gdkmain-fb.c: 
5843         * gdk/linux-fb/gdkrender-fb.c: 
5844         A bunch of whitespace cleanup.
5845         
5846 2001-01-30  Havoc Pennington  <hp@pobox.com>
5847
5848         * gtk/gtktreeitem.h, gtk/gtktree.h, gtk/gtktext.h: bracket in 
5849         #ifdef GTK_ENABLE_BROKEN.
5850
5851         * gtk/gtktreeitem.c, gtk/gtktree.c, gtk/gtktext.c: #define
5852         GTK_ENABLE_BROKEN just before including the broken headers.
5853         
5854         * gtk/gtktypeutils.c: #define GTK_ENABLE_BROKEN, so we can get the
5855         deprecated types registered.
5856
5857         * gtk/testgtk.c, gtk/testselection.c: #define GTK_ENABLE_BROKEN,
5858         we have to test the broken stuff.
5859
5860         * docs/Changes-2.0.txt: explain GTK_ENABLE_BROKEN
5861         
5862 2001-01-30  Havoc Pennington  <hp@redhat.com>
5863
5864         * gtk/gtkliststore.c (gtk_list_store_insert_before): fix bug in
5865         here where prev pointer was set to the wrong thing
5866
5867         * gtk/gtktreemodel.c (gtk_tree_path_is_ancestor): new function
5868         (gtk_tree_path_is_descendant): new function
5869
5870         * gtk/gtkliststore.c (gtk_list_store_iter_n_children): return
5871         cached length
5872         (gtk_list_store_get_iter): don't modify iter if we can't get the
5873         path.
5874
5875         * gtk/gtkliststore.h (struct _GtkListStore): cache the length
5876         
5877         * gtk/gtktreednd.h: add virtual function row_drop_possible() to
5878         GtkTreeDragDest
5879
5880         * gtk/gtktreestore.c (copy_node_data): fix varargs type error that
5881         was causing segfault
5882
5883         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_copy): set next
5884         pointer to NULL
5885
5886         * gtk/gtktreestore.c (gtk_tree_store_append): fix memleak
5887
5888         * gtk/gtkliststore.c (gtk_list_store_iter_next): don't modify iter
5889         on returning FALSE
5890         (gtk_list_store_iter_children): ditto
5891         (gtk_list_store_iter_nth_child): ditto
5892         (gtk_list_store_iter_nth_child): ditto
5893         (gtk_list_store_iter_parent): ditto
5894
5895         * gtk/gtktreestore.c (gtk_tree_store_get_path): g_return_if_fail
5896         on iter->user_data != NULL instead of silently accepting it.
5897         (gtk_tree_store_iter_next): ditto. Also, don't modify iter unless
5898         we are returning TRUE.
5899         (gtk_tree_store_iter_children): ditto
5900         (gtk_tree_store_iter_nth_child): ditto
5901         (gtk_tree_store_iter_parent): ditto
5902         (gtk_tree_store_insert): remove handling of parent->user_data ==
5903         NULL, replace with parent == NULL       
5904
5905         * gtk/gtktreemodel.c (inserted_callback): put some fixes in here,
5906         and a comment explaining things
5907
5908         * gtk/gtktreestore.c: add GtkTreeDragSource/GtkTreeDragDest
5909         interface support to GtkTreeStore.
5910
5911         * gtk/gtktreemodel.c (gtk_tree_path_prev): didn't properly return
5912         FALSE if no prev, fix
5913
5914         * gtk/gtktreeview.c (set_source_row): use a row reference
5915         (set_dest_row): use a row reference
5916
5917 Sat Jan 27 15:52:02 2001  Jonathan Blandford  <jrb@redhat.com>
5918
5919         * gtk/gtktreeselection.c (gtk_tree_selection_unselect_iter): Fix
5920         stupid typo pointed out by Kristian Rietveld <kristian@planet.nl>.
5921         (gtk_tree_selection_select_iter): The same as above.
5922
5923 2001-01-26  Havoc Pennington  <hp@redhat.com>
5924
5925         * gtk/gtktreemodel.c, gtk/gtktreemodel.h: add GtkTreeRowReference
5926         which holds a handle to a specific row (particular set of values
5927         in the model, i.e. pointer-identity row).
5928
5929         * gtk/gtktreeview.c, gtk/gtktreeprivate.h, gtk/gtktreeselection.c:
5930         use GtkTreeRowReference for anchor, cursor, and drag_dest_row.
5931         Still need to use it for the src/dest row saved on the drag context.
5932
5933 2001-01-26  Havoc Pennington  <hp@redhat.com>
5934
5935         * gtk/gtktextlayout.c (convert_color): adapt to handle PangoColor
5936
5937         * gtk/gtktreeview.c (gtk_tree_view_widget_to_tree_coords): fix to
5938         not offset by TREE_VIEW_HEADER_HEIGHT
5939         (gtk_tree_view_tree_to_widget_coords): fix to not offset by
5940         TREE_VIEW_HEADER_HEIGHT
5941
5942         * configure.in (included_loaders): for me, --with-included-loaders
5943         generates the error "the specified loader yes does not exist",
5944         i.e. the arg defaults to "yes", so change test for value ""
5945         to test for value "yes", and include all loaders in that case.
5946
5947         * gtk/gtkrbtree.c (_gtk_rbtree_get_depth): new function
5948
5949         * gtk/gtktreeview.c (gtk_tree_view_get_cell_rect): fix to properly
5950         handle TREE_VIEW_VERTICAL_SEPARATOR
5951         (gtk_tree_view_bin_expose): fix to consider the row offset as
5952         pointing halfway into vertical separator.       
5953         (gtk_tree_view_draw_node_focus_rect): ditto
5954
5955         * gtk/gtkdebug.h, gtk/gtkmain.c (gtk_init_check): Add
5956         --gtk-debug=updates, which causes gdk_window_set_debug_updates
5957         (TRUE) to be called.
5958
5959         * gdk/gdkwindow.c (gdk_window_set_debug_updates): Allow enabling a
5960         debug mode where the invalid region is colored in on invalidate,
5961         so you can see the flicker and know whether your redraw code is 
5962         doing a good job.
5963
5964         * gtk/gtktreeview.c (gtk_tree_view_queue_draw_node): Work in 
5965         tree window coordinates (clip rect is in tree window coords)
5966
5967         * gtk/Makefile.am: add gtktreednd.[hc]
5968
5969         * gtk/gtkliststore.c: implement gtktreednd interfaces.
5970
5971         * gtk/gtktreednd.c, gtk/gtktreednd.h: New interface to support
5972         drag-and-drop data operations on a model (so we can set up tree
5973         drag-and-drop automatically)
5974
5975         * gtk/testgtk.c: Add a window to change sensitivity in the
5976         GtkLabel test; add a way to change the entry frame in GtkEntry
5977         test
5978
5979         * gtk/gtkentry.c (gtk_entry_set_has_frame): 
5980         (gtk_entry_get_has_frame): new functions to remove the frame
5981         around an entry
5982         (gtk_entry_size_request): shrink requisition if no frame
5983         (gtk_entry_draw_focus): don't draw frame if no frame
5984
5985         * gtk/gtkstyle.c (gtk_default_draw_check): draw custom look for
5986         checks inside a cell renderer
5987         (gtk_default_draw_option): ditto for options
5988
5989         * gtk/gtktreeviewcolumn.c (update_button_contents): add/remove
5990         children from the alignment, not the button
5991         (gtk_tree_view_column_init): ref/sink the column, to emulate
5992         GObject refcounting.
5993
5994         * gtk/gtkcellrenderer.c (gtk_cell_renderer_init): ref/sink
5995         
5996         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
5997         Use theme functions to draw the toggles 
5998
5999         * gdk/gdkpango.c (gdk_pango_get_gc): use GdkRGB to alloc colors
6000
6001         * gdk/gdkpango.h, gdk/gdkpango.c: Add GdkPangoAttrStipple and
6002         GdkPangoAttrEmbossed to use in rendering insensitive text
6003
6004         * gdk/gdkpango.c (gdk_draw_layout_line): render new properties
6005
6006         * gtk/gtkstyle.c (gtk_default_draw_layout): handle sensitivity
6007         using new GDK features
6008         
6009 2001-01-24  Alexander Larsson  <alexl@redhat.com>
6010
6011         * gtk/gtkimage.c:
6012         Splitted gtk_image_clear into gtk_image_clear() and
6013         gtk_image_reset(). Call gtk_image_clear() in ::destroy
6014         to avoid leaks.
6015
6016         * gtk/gtklabel.c (set_markup):
6017         Don't leak text.
6018
6019         * gtk/gtktextlayout.c:
6020         Always free display->shaped_objects.
6021
6022         * gtk/testgtk.c (create_clist):
6023         Don't leak custom style.
6024
6025 2001-01-23  Alexander Larsson  <alexl@redhat.com>
6026
6027         * gtk/gtkcolorsel.c (grab_color_at_mouse):
6028         Don't leak image. Simplify using gdk_colormap_query_color().
6029         (gtk_color_selection_init): Don't leak dropper_pixmap and mask.
6030
6031         * linux-fb/gdkcolor-fb.c:
6032         Implemented gdk_colormap_query_color.
6033
6034 2001-01-23  Alexander Larsson  <alexl@redhat.com>
6035
6036         * linux-fb/gdkcursor-fb.c:
6037         Don't leak built-in cursors.
6038
6039         * linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_polygon):
6040         Don't leak tmp_points.
6041
6042         * linux-fb/gdkfont-fb.c (gdk_font_from_description):
6043         Don't modify desc. Don't leak font if the PangoFont
6044         isn't found.
6045         
6046         * linux-fb/gdkgc-fb.c (gdk_fb_gc_finalize):
6047         Free dash_list.
6048
6049         * linux-fb/gdkkeyboard-fb.c (gdk_fb_handle_key):
6050         Don't leak string.
6051         
6052 2001-01-20  Havoc Pennington  <hp@pobox.com>
6053
6054         * gtk/gtktexttag.h (enum GtkWrapMode): rename member fields
6055         from GTK_WRAPMODE_WORD to GTK_WRAP_WORD, etc., seems nicer to 
6056         me, matches Pango
6057
6058 2001-01-22  Havoc Pennington  <hp@redhat.com>
6059
6060         * demos/testanimation.c: fix to reflect gdk-pixbuf changes
6061
6062         * demos/testpixbuf.c: fix to reflect gdk-pixbuf changes
6063
6064         * gtk/gdk-pixbuf-loader.c, gtk/gdk-pixbuf-loader.h: 
6065         Remove, move back to gdk-pixbuf
6066
6067         * gtk/gtktextiter.c, gtk/gtktextiter.h: add sentence equivalents
6068         to all the word functions
6069
6070         * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): return
6071         before doing anything on NULL layout or if we don't have the focus
6072
6073         * gtk/testtext.c (fill_example_buffer): "justification"
6074
6075         * gtk/gtktexttag.h, gtk/gtktexttag.c: change the tag attribute
6076         to be called "justification" not "justify"
6077
6078         * demos/gtk-demo/textview.c (create_tags): "justification"
6079         
6080         * gtk/gtktextlayout.c (set_para_values): Handle char-wise wrapping
6081
6082 2001-01-22  Alexander Larsson  <alexl@redhat.com>
6083
6084         * gdk/gdkwindow.c (gdk_window_invalidate_region):
6085         Don't leak visible_region. Use visible_region instead of region.
6086         
6087         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
6088         Don't do extra gdk_drawable_ref(). This is not X.
6089         (gdk_fb_window_find_focus, gdk_fb_change_focus): make sure
6090         gdk_fb_focused_window is ref:ed.
6091         (gdk_fb_window_send_crossing_events): Watch out for destroyed
6092         windows.
6093
6094 2001-01-22  Alexander Larsson  <alexl@redhat.com>
6095
6096         * gtk/gtkwindow-decorate.c (gtk_decorated_window_realize):
6097         Don't leak the PangoFontDescriptor.
6098
6099 Sun Jan 21 09:58:00 2001  Jonathan Blandford  <jrb@redhat.com>
6100
6101         * gtk/gtktreeview.c (gtk_tree_view_scroll_to_point): Make fail
6102         when not realized.
6103         (gtk_tree_view_scroll_to_cell): Make work when not realized.
6104         (gtk_tree_view_realize): add scroll_to support
6105         (gtk_tree_view_finalize): add a finalize method.  Populate.
6106         (gtk_tree_view_insert_column): ref and sink the column.
6107         (gtk_tree_view_append_column): ref and sink the column.
6108         (gtk_tree_view_queue_draw_node): New function to handle redrawing
6109         individual nodes.  Should make the code much more efficient, if
6110         actually used.
6111
6112 2001-01-19  Havoc Pennington  <hp@redhat.com>
6113
6114         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
6115         byte_offset variable was being used to mean both "offset into
6116         layout" and "offset into buffer line" which was no longer true
6117         with addition of preedit string; fix
6118
6119 2001-01-19  Havoc Pennington  <hp@redhat.com>
6120
6121         * demos/gtk-demo/main.c (button_press_event_cb): sync to tree changes
6122
6123         * gtk/gtkrbtree.c (_gtk_rbtree_node_find_offset): fix this
6124         function
6125
6126         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_widget):
6127         implement
6128
6129         * gtk/gtktreeview.c (gtk_tree_view_move_to): rename
6130         scroll_to_cell, matches TextView scroll functions better
6131         (gtk_tree_view_tree_to_widget_coords): new function
6132         (gtk_tree_view_widget_to_tree_coords): new function
6133         (gtk_tree_view_get_visible_rect): new function
6134         (gtk_tree_view_get_path_at_pos): accept negative coordinates
6135         (gtk_tree_view_draw_node_focus_rect): new function moved from
6136         draw_focus, also, use width of bin_window as width of the focus
6137         rect
6138         (gtk_tree_view_expand_row): fix bug where it didn't recognize
6139         already-expanded rows
6140         (gtk_tree_view_get_cell_rect): new function
6141         (gtk_tree_view_get_path_at_pos): return the click position
6142         relative to the passed-in cell
6143         (gtk_tree_view_set_expander_column): new function
6144
6145         * configure.in: remove gtk-config-2.0 chmod
6146
6147         * gtk/gtktextview.c (gtk_text_view_drag_motion): small cleanups,
6148         and properly handle drags with targets we don't understand
6149         (gtk_text_view_drag_end): don't stop scrolling, the source isn't
6150         scrolling anyway
6151         (gtk_text_view_drag_drop): stop scrolling here though, and set the
6152         mark invisible
6153
6154         * gtk/gtkdnd.c (gtk_drag_dest_find_target): export as a public
6155         function
6156         (gtk_drag_dest_get_target_list): new function
6157         (gtk_drag_dest_set_target_list): new function
6158         
6159         * gtk/gtktreeview.c: Add a bunch of drag-and-drop implementation
6160
6161         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): add fields
6162         related to drag-and-drop
6163
6164 2001-01-19  Alexander Larsson  <alexl@redhat.com>
6165
6166         * gdk/linux-fb/gdkprivate-fb.h:
6167         Define EMULATE_GDKFONT.
6168         Add extra pango_font stuff to GfkFontPrivate.
6169         
6170         * gdk/linux-fb/gdkdrawable-fb2.c:
6171         * gdk/linux-fb/gdkfont-fb.c:
6172         If EMULATE_GDKFONT defined, implement a slow lame GdkFont
6173         emulation using PangoFont.
6174
6175 2001-01-17  Havoc Pennington  <hp@pobox.com>
6176
6177         * gtk/gtkprogressbar.c, gtk/gtkprogressbar.h: Add "getters" for
6178         all the non-deprecated set_foo functions. Added missing object
6179         properties, and added g_object_notify() to setters. 
6180         Wrote docs.
6181         
6182 2001-01-18  Tor Lillqvist  <tml@iki.fi>
6183
6184         * gtk/gtkmain.c
6185         * gtk/gtkrc.c: (Win32) Use the new
6186         g_win32_get_package_installation_(sub)directory() functions.
6187
6188         * config.h.win32.in: New file.
6189         
6190         * config.h.win32: Removed.
6191
6192         * configure.in: Output config.h.win32.
6193
6194         * Makefile.am: Add it to EXTRA_DIST.
6195
6196         * gtk/gtk.def: Update.
6197
6198 Wed Jan 17 16:22:54 2001  Owen Taylor  <otaylor@redhat.com>
6199
6200         * gtk/gtklabel.c (gtk_label_size_request): Set the
6201         attributes onto the PangoLayout even if they are newly
6202         created from label->pattern.
6203
6204 Tue Jan  9 11:20:48 2001  Owen Taylor  <otaylor@redhat.com>
6205
6206         * gdk/x11/gdkdnd-x11.c: Remove unused variable.
6207
6208         * gtk/gtkdnd.c: Encapsulate storing and retrieving info
6209         structures in functions. Fixes bug where gtk_dataset_*
6210         was accidentally still being used in one place, causing
6211         every dest side event to be treated independently.
6212
6213         * gtk/gtkdnd.c: Remove last vestages of handling
6214         ::draw (fixes warning)
6215         
6216         * gtk/gtkentry.[ch]: Add drag and drop support.
6217
6218         * gtk/gtkdnd.[ch] gtk/gtktextview.c gtk/gtkentry.c: Add
6219         new function gtk_check_drag_threshhold() for checking
6220         to check if (dx,dy) has exceeded the threshhold for starting
6221         a drag and use it everywhere.
6222
6223 Mon Jan  8 11:58:05 2001  Owen Taylor  <otaylor@redhat.com>
6224
6225         * gtk+-2.0.pc.in gdk-pixbuf-2.0.pc.in (Cflags): Remove -I${includedir},
6226         add -I{includedir}/gtk-2.0.
6227
6228         * gtk/gtktreeview.[ch] gtktreemodelsort.[ch] gtknotebook.c
6229         gdk/gdk-pixbuf.h: Doc fixups.
6230         
6231         * gtk/gtkobject.h: Remove trailing , from enum
6232
6233 2001-01-17 Alexander Larsson <alexl@redhat.com> 
6234
6235         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_shadow_fb_draw_arc):
6236         Doh! Mixed up x and y.
6237
6238         * gdk/linux-fb/gdkglobals-fb.c:
6239         Removed gdk_fb_pointer_grab_window_events,
6240         added _gdk_fb_pointer_grab_owner_events and
6241         _gdk_fb_keyboard_grab_owner_events.
6242
6243         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab):
6244         Set all button mask if GDK_BUTTON_MOTION_MASK set. Send
6245         crossing events before grabbing. Set _gdk_fb_pointer_grab_owner_events.
6246         (gdk_fb_pointer_ungrab): Unset _gdk_fb_pointer_grab_owner_events
6247         Send crossing events after ungrab finished.
6248         (gdk_keyboard_grab): Set ..._owner_events
6249         (type_masks): Move out of function.
6250         (gdk_fb_other_event_window, gdk_fb_pointer_event_window,
6251         gdk_fb_keyboard_event_window): New functions, return the
6252         window an event should be targeted at. Handles grabs and
6253         event propagation. Can return NULL.
6254         (gdk_event_make): Remove event_mask checking. Now always
6255         returns an event.
6256                 
6257         * gdk/linux-fb/gdkkeyboard-fb.c:
6258         * gdk/linux-fb/gdkproperty-fb.c:
6259         * gdk/linux-fb/gdkselection-fb.c:
6260         Use new event_window/gdk_event_make() behaviour.
6261         
6262         * gdk/linux-fb/gdkmouse-fb.c:
6263         Use new event_window/gdk_event_make() behaviour.
6264         Only send motion events if in the same window.
6265         If grabbed, use cursor from window if sibling of grabbed
6266         window, and cursor from grabbed window otherwise.
6267
6268         * gdk/linux-fb/gdkprivate-fb.h:
6269         Update gdk_fb_window_send_crossing_events, gdk_event_make
6270         and grab varaible declarations. Add gdk_fb_*_event_window().
6271
6272         * gdk/linux-fb/gdkwindow-fb.c:
6273         Use new event_window/gdk_event_make() behaviour.
6274         Keep correct track of focus window.
6275         (gdk_window_set_events): Set all specific button motion masks
6276         if GDK_BUTTON_MOTION_MASK set.
6277
6278         * gtk/gtkdnd.c (gtk_drag_update):
6279         Free info->last_event if gdk_drag_motion returned FALSE.
6280
6281 2001-01-16  Tor Lillqvist  <tml@iki.fi>
6282
6283         * gdk/win32/gdkwindow-win32.c (gdk_window_show, gdk_window_hide):
6284         Eliminate redraws when input-only windows are shown or
6285         hidden. Thanks to jpe@archaeopteryx.com.
6286
6287 Tue Jan 16 13:13:13 GMT 2001  Tony Gale <gale@gtk.org>
6288
6289         * docs/faq/gtk-faq.sgml: FAQ update:
6290           - Update to bugzilla
6291           - Add GTK+ and security/SUID/SGID
6292           - Add DnD question
6293
6294 2001-01-16  Alexander Larsson  <alla@lysator.liu.se>
6295
6296         * gdk/linux-fb/gdkdnd-fb.c:
6297         Some cleanups.
6298         
6299 2001-01-15  Havoc Pennington  <hp@pobox.com>
6300
6301         * tests/testtreeview.c: add test stuff for CellRendererToggle
6302
6303         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_get_model): add this
6304         accessor
6305
6306         * gtk/gtkcellrenderertoggle.c: distinguish different event types,
6307         only toggle on button press (would do release like GtkButton, but
6308         we'd need implicit grab code for treeview cells)
6309
6310 2001-01-16  Tor Lillqvist  <tml@iki.fi>
6311
6312         * gdk/win32/gdkvisual-win32.c: Include <stdlib.h> for getenv().
6313
6314         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Don't use
6315         GDK_COLORMAP_PRIVATE_DATA on a potentially NULL GdkColormap.
6316
6317         * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Adapt calls
6318         to g_{locale,filename}_{to,from}_utf8 to match current API.
6319
6320         * gtk/makefile.msc.in (gtk_OBJECTS)
6321         * gtk/makefile.mingw.in (gtk_OBJECTS): Add gtkwindow-decorate.
6322
6323         * gtk/gtk.def: Update.
6324
6325 2001-01-15  Tor Lillqvist  <tml@iki.fi>
6326
6327         * gdk/win32/gdkevents-win32.c (synthesize_crossing_events): New
6328         implementaion that more closely mimics the events that an X server
6329         would generate. Especially, properly generate GDK_NOTIFY_VIRTUAL and
6330         GDK_NOTIFY_NONLINEAR_VIRTUAL crossing events. This makes buttons
6331         with nested preview widgets, for instance, more responsive when
6332         you move the mouse quickly into them.
6333         (find_window_for_pointer_event): Make it actually compile.
6334         (gdk_event_translate): Set send_event to the value of
6335         InSendMessage (). This doesn't really mean the same as X11's
6336         send_event flag, but is close enough, says jpe@archaeopteryx.com
6337
6338 2001-01-15  Alexander Larsson  <alexl@redhat.com>
6339
6340         * gdk/linux-fb/gdkdnd-fb.c:
6341         Implemented drag and drop.
6342         Seems to be mostly working. I sometimes get an assert from gtkdnd.c:2664
6343         when it tries to free and then copy the same event (info->last_event).
6344         I am not sure about why this happens, but will continue looking.
6345
6346 2001-01-15  Alexander Larsson  <alexl@redhat.com>
6347
6348         * gdk/linux-fb/gdkwindow-fb.c:
6349         Use gdk_window_invalidate_rect instead of
6350         gdk_window_invalidate_rect_clear to minimise flashing.
6351         When hiding windows you need to clear the root window though.
6352
6353 2001-01-15  Alexander Larsson  <alexl@redhat.com>
6354
6355         * gdk/linux-fb/gdkdrawable-fb2.c:
6356         For optization, add an full_shapes argument to gdk_fb_clip_region.
6357         If this is false, only the cliprects of the shapes are used.
6358
6359         * gdk/linux-fb/gdkprivate-fb.h:
6360         Export gdk_fb_window_peek_shape.
6361         Add full_shapes to gdk_fb_clip_region.
6362
6363         * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
6364         When moving a window, don't clear everything under the it, just the
6365         root window. Makes stuff faster and flash less.
6366         (gdk_window_get_pointer): Correctly handle offseted shapes, due to
6367         USE_CHILD_SHAPE. (gdk_fb_window_peek_shape): Return the correct
6368         offset of the shape.
6369         
6370
6371 2001-01-12  Havoc Pennington  <hp@redhat.com>
6372
6373         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): offset the 
6374         current invalid region, fixes redraw bug while scrolling the 
6375         text widget
6376
6377         * gtk/gtktextview.c, gtk/gtktextview.h:
6378         Rearrange the scrolling/validation/etc. code in a major way, 
6379         so it seems to make sense to me. Probably isn't genuinely that
6380         much better, but...
6381
6382         * gtk/gtktexttag.c (set_fg_color): fix name of property used for
6383         notifies
6384
6385         * gtk/gtktextmark.c (gtk_text_mark_get_left_gravity): new function
6386
6387 2001-01-12  Alexander Larsson  <alla@lysator.liu.se>
6388
6389         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_set_rotation):
6390         Hide mouse pointer while rotation. Show it afterwards.
6391
6392 2001-01-12  Alexander Larsson  <alexl@redhat.com>
6393
6394         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_clip_region): Take shaped
6395         windows in consideration when generating clip region.
6396
6397         * gdk/linux-fb/gdkfb.h:
6398         Huge HACK. Added GDK_FB_USE_CHILD_SHAPE.
6399
6400         * gdk/linux-fb/gdkprivate-fb.h:
6401         Add shape to GdkWindowFBDatat.
6402         exported gdk_fb_window_get_abs_shape().
6403         removed gdk_fb_draw_lines declaration.
6404
6405         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_impl_fb_init):
6406         Init shape to NULL. (gdk_fb_window_send_crossing_events): Don't
6407         send focus changes when there is a grabbed window.
6408         (gdk_window_get_pointer): Handle shaped windows.
6409         (gdk_fb_region_create_from_bitmap): Convert bitmap to region.
6410         (gdk_fb_window_peek_shape): Returns the shape for a window,
6411         handles GDK_FB_USE_CHILD_SHAPE.
6412         (gdk_fb_window_get_abs_shape): Returns the shape of the window,
6413         offseted to absolute positions. Handles GDK_FB_USE_CHILD_SHAPE.
6414         (gdk_window_shape_combine_mask): Implement.
6415
6416         * gtk/gtkwindow-decorate.c:
6417         HACK! Set GDK_FB_USE_CHILD_SHAPE on window->frame to make sure
6418         setting the shape of a window makes the window transparent.
6419
6420 2001-01-11  Havoc Pennington  <hp@redhat.com>
6421
6422         * gtk/gtktreemodelsimple.h: Oops, broke some macros
6423
6424 2001-01-10  Havoc Pennington  <hp@redhat.com>
6425
6426         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clear_attributes):
6427         add this function, bug 40251
6428
6429         * gtk/gtktreemodelsimple.h (GTK_TYPE_TREE_MODEL_SIMPLE): fix name
6430         of type macro   
6431
6432 2001-01-11  Alexander Larsson  <alexl@redhat.com>
6433
6434         * acconfig.h:
6435         Added ENABLE_SHADOW_FB
6436
6437         * configure.in:
6438         Added --disable-shadowfb
6439
6440         * gdk/linux-fb/gdkcursor-fb.c:
6441         Update shadowfb when updating cursor
6442
6443         * gdk/linux-fb/gdkdrawable-fb2.c:
6444         Added wrappers for shadowfb that calls  the normal drawable
6445         methods, but calls gdk_shadow_fb_update(bounding box) when
6446         GdkWindows are drawed to.
6447         Moved gdk_draw_glyphs implementation to _gdk_draw_glyphs
6448         which also returns the bounding box.
6449
6450         * gdk/linux-fb/gdkfb.h:
6451         Added GdkFBAngle type and gdk_fb_set_rotation declaration.
6452
6453         * gdk/linux-fb/gdkgeometry-fb.c:
6454         Update shadowfb when scrolling window.
6455
6456         * gdk/linux-fb/gdkglobals-fb.c:
6457         Add _gdk_fb_screen_angle.
6458         
6459         * gdk/linux-fb/gdkkeyboard-fb.c:
6460         Test code for screen rotation. Shift-F2 in the xlate driver
6461         rotates the screen.
6462
6463         * gdk/linux-fb/gdkmain-fb.c:
6464         Handle shadowfb. Add gdk_fb_set_rotation(). Remove CM and RP.
6465
6466         * gdk/linux-fb/gdkmouse-fb.c:
6467         Use fb_width/height instead of modeinfo.xres/yres.
6468
6469         * gdk/linux-fb/gdkprivate-fb.h:
6470         Added fb_men, fb_width, fb_height & fb_stride. When using
6471         shadow fb these can differ from the framebuffer stuff.
6472         Declarations for gdk_shadow_fb_update, gdk_shadow_fb_init,
6473         gdk_shadow_fb_stop_updates, gdk_fb_recompute_all,
6474         _gdk_fb_screen_angle. Removed CM, RP.
6475
6476         * gdk/linux-fb/gdkrender-fb.c:
6477         Added code for shadowfb handling and screen rotation using
6478         shadowfb.
6479
6480         * gdk/linux-fb/gdkwindow-fb.c:
6481         Use fb_mem, fb_stride, fb_width, fb_height.
6482         Added recompute_rowstride to reset the rowstride of all windows.
6483         Added gdk_fb_recompute_all() which recomputes rootwindow size,
6484         window abs positions and window rowstrides. Usefull when the
6485         rotation has changed.
6486
6487 Thu Jan 11 13:16:50 GMT 2001  Tony Gale <gale@gtk.org>
6488
6489         * docs/faq/gtk-faq.sgml: update to make web site updating easier
6490
6491 2001-01-10  Havoc Pennington  <hp@redhat.com>
6492
6493         * gtk/gtktreestore.c (gtk_tree_store_insert_before): handle case
6494         where sibling == iter
6495         (gtk_tree_store_insert_after): handle sibling == iter
6496         (gtk_tree_store_prepend): remove stamp checks
6497         (gtk_tree_store_insert_before): ditto
6498         (gtk_tree_store_append): ditto
6499         (gtk_tree_store_get_path): ditto
6500         (gtk_tree_store_get_value): ditto
6501         (gtk_tree_store_iter_has_child): ditto
6502         (gtk_tree_store_iter_n_children): ditto
6503         (gtk_tree_store_iter_nth_child): ditto
6504         (gtk_tree_store_insert_after): ditto
6505         (gtk_tree_store_is_ancestor): ditto
6506         (gtk_tree_store_iter_depth): ditto
6507         (gtk_tree_store_insert_before): assert that sibling's parent is
6508         the same as the passed-in parent
6509         (gtk_tree_store_insert_after): assert that sibling's parent is
6510         the same as the passed-in parent
6511
6512         
6513         * gtk/gtktreemodel.c (gtk_tree_model_get_first): new convenience 
6514         function to get the first iterator in a model
6515         
6516         * gtk/gtktreestore.c (gtk_tree_store_get_root_iter): remove,
6517         conventionally the "root" in this sense is just NULL afaict.
6518
6519         * gtk/gtkliststore.c (gtk_list_store_insert_before): handle case
6520         where sibling == iter
6521         (gtk_list_store_insert_after): handle case where sibling == iter
6522
6523         * tests/testtreeview.c (run_automated_tests): fairly lame basic
6524         automated tests for ListStore, TreeStore
6525
6526         * gtk/gtkliststore.c (gtk_list_store_remove): update tail pointer
6527         (gtk_list_store_insert): update tail pointer, and fix it to work
6528         (gtk_list_store_insert_before): update tail pointer, and fix it to work
6529         (gtk_list_store_append): use tail to be faster
6530         (gtk_list_store_prepend): fix it, update tail pointer
6531         (gtk_list_store_insert_after): fix it, update tail pointer
6532
6533         * gtk/gtkliststore.h (struct _GtkListStore): add tail pointer for 
6534         the list
6535
6536 2001-01-09  Havoc Pennington  <hp@redhat.com>
6537
6538         * gtk/gtklabel.c (gtk_label_expose): don't draw if label->layout
6539         is NULL due to a pending resize
6540
6541         * gtk/gtktreeview.c (gtk_tree_view_check_dirty): don't set the
6542         column width to values less than 1
6543
6544         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_width): clamp
6545         width to be between min/max width, and still set the width 
6546         even if autosize is turned on, so the tree view can use this 
6547         function in order to autosize.
6548         (gtk_tree_view_column_init): set initial width to 1 not 0
6549
6550         * gtk/gtktreeview.c (gtk_tree_view_size_request_buttons): use
6551         setter function to modify column width, so we get notification
6552         (gtk_tree_view_insert_iter_height): ditto
6553         (gtk_tree_view_calc_size): ditto
6554         (gtk_tree_view_check_dirty): ditto
6555
6556         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_class_init): Add
6557         properties to change all the interesting attributes of the tree
6558         view column.
6559         (gtk_tree_view_column_set_header_clickable): rename set_clickable
6560         (gtk_tree_view_column_get_clickable): add
6561         (gtk_tree_view_column_set_cell_renderer): don't unset the current
6562         attributes; assume a cell renderer with equivalent object
6563         properties has been swapped in. Do g_object_notify().
6564         (gtk_tree_view_column_set_visible): g_object_notify
6565         (gtk_tree_view_column_get_sizing): rename from get_col_type
6566         (gtk_tree_view_column_set_sizing): g_object_notify
6567         (gtk_tree_view_column_set_width): add g_object_notify
6568         (gtk_tree_view_column_set_min_width): ditto
6569         (gtk_tree_view_column_set_max_width): ditto
6570         (gtk_tree_view_column_set_title): ditto
6571         (gtk_tree_view_column_set_clickable): ditto
6572         (gtk_tree_view_column_set_widget): ditto
6573         (gtk_tree_view_column_set_justification): ditto
6574
6575 2001-01-09  Havoc Pennington  <hp@redhat.com>
6576
6577         * gtk/gtktreeview.c (gtk_tree_view_check_dirty): handle case where
6578         there are no rows in the model
6579
6580         * gtk/gtkliststore.c (gtk_list_store_iter_children): if parent is
6581         NULL, then return the start of the list
6582
6583         * gtk/gtktreeview.c (gtk_tree_view_setup_model): don't build tree
6584         if we can't get any rows from an empty model 
6585
6586         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): remove
6587         extraneous * after function pointer typedef usage
6588
6589         * Makefile.am: don't specify full path to cp and rm
6590
6591         * gtk/gtkcellrenderertextpixbuf.c
6592         (gtk_cell_renderer_text_pixbuf_get_size): check width/height !=
6593         NULL before dereferencing, fixes a segfault that happened from
6594         time to time
6595
6596         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render):
6597         use gdk_pixbuf_render_to_drawable_alpha() to get alpha channel,
6598         and reindent the function
6599         (gtk_cell_renderer_pixbuf_get_size): indentation
6600
6601         * gtk/gtkdialog.c (gtk_dialog_run): destroy main loop only after
6602         we quit it
6603         (gtk_dialog_add_buttons_valist): add g_return_if_fail
6604         (gtk_dialog_set_default_response): New function, to set default
6605         button
6606         (gtk_dialog_set_response_sensitive): New function, to set 
6607         sensitivity of buttons
6608
6609         * gtk/gtkcellrendererpixbuf.c
6610         (gtk_cell_renderer_pixbuf_get_property): allow getting a NULL pixbuf
6611         (gtk_cell_renderer_pixbuf_set_property): allow setting a NULL pixbuf
6612
6613         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_to_value):
6614         handle any G_TYPE_OBJECT subclass, not just the base class, and 
6615         also boxed types.
6616         (_gtk_tree_data_list_value_to_node): ditto
6617
6618         * gtk/gtkrbtree.c: Run _gtk_rbtree_test at strategic points if 
6619         --gtk-debug=tree
6620
6621         * gtk/gtkmain.c: add GTK_DEBUG_TREE
6622
6623         * gtk/gtkdebug.h: add GTK_DEBUG_TREE
6624
6625 2001-01-09  Tor Lillqvist  <tml@iki.fi>
6626
6627         * gdk/win32/gdkevents-win32.c: Implement better mouse
6628         capturing. Do use SetCapture(). Thanks to jpe@archaeopteryx.com.
6629         (find_window_for_pointer_event): New function.
6630         (gdk_event_translate): Use it when handling mouse events.
6631
6632 2001-01-09  Alexander Larsson  <alla@lysator.liu.se>
6633
6634         * configure.in:
6635         Added --with-included-loaders option
6636
6637         * gdk-pixbuf/Makefile.am:
6638         * gdk-pixbuf/gdk-pixbuf-io.c:
6639         Add support for including selected gdk-pixbuf loaders only.
6640
6641         * gtk/gtkwindow.c (gtk_window_set_frame_dimensions,
6642         gtk_window_set_has_frame):
6643         Added inline documentation.
6644
6645         * gdk/x11/gdkwindow-x11.c (gdk_window_get_decorations):
6646         * docs/reference/gdk/tmpl/windows.sgml:
6647         Added inline documentation.
6648
6649 Mon Jan  8 14:42:06 2001  Jonathan Blandford  <jrb@redhat.com>
6650
6651         * gtk/gtktreeview.c (gtk_tree_view_realize_buttons): Skip
6652         realizing buttons that have already been realized.
6653
6654 Mon Jan  8 14:06:29 2001  Jonathan Blandford  <jrb@redhat.com>
6655
6656         * tests/testtreeview.c (main): Show menu items before adding to
6657         option menu.
6658
6659         * gtk/gtktreeview.c (gtk_tree_view_set_model): Keep the columns
6660         around if we kill them.
6661
6662         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
6663         Return if we pass in a NULL model.
6664
6665 2001-01-08  Havoc Pennington  <hp@redhat.com>
6666
6667         * tests/testtreeview.c: hack on this some
6668
6669         * gtk/gtktreestore.c (gtk_tree_store_setv): rename
6670         gtk_tree_store_set_valist, v is for arrays, valist for varargs
6671         list
6672         (gtk_tree_store_getv): rename gtk_tree_store_get_valist
6673
6674         * gtk/gtkliststore.h: Add varargs set() and get() convenience
6675         functions
6676
6677 2001-01-08  Alexander Larsson  <alexl@redhat.com>
6678
6679         * gtk/gtkwindow-decorate.[hc]:
6680         * gtk/Makefile.am:
6681         New files. Contains an implementation of a minimal WM for
6682         linux-fb.
6683
6684         * gtk/gtkwindow.h:
6685         Add the possibility for GtkWindows to specify a frame. This
6686         is used for the window decoration code, but could concievably
6687         be used for X programs too (xmms style windows).
6688         GtkWindow->frame is the toplevel window if the window is framed.
6689         The signal frame_event gets all events that are targeted to
6690         GtkWindow->frame.
6691         (_gtk_window_constrain_size): Exported for usage by gtkwindow-decorate.c.
6692         
6693         * gtk/gtkwindow.c:
6694         Implement gtk_window_set_has_frame and gtk_window_set_frame_dimensions.
6695         Call out to gtkwindow-decorate.c for WM support in linx-fb.
6696
6697 2001-01-08  Alexander Larsson  <alexl@redhat.com>
6698
6699         * docs/README.linux-fb:
6700         Correct filename ~/.pangoft2_aliases
6701
6702         * gdk/gdkwindow.h:
6703         Added new function gdk_window_get_decorations.
6704
6705         * gdk/linux-fb/gdkfb.h:
6706         Removed _gdk_window_get_decorations declaration.
6707         Renamed _gdk_window_set_child_handler to
6708         gdk_fb_window_set_child_handler.
6709
6710         * gdk/linux-fb/gdkwindow-fb.c:
6711         Renamed _gdk_window_set_child_handler to
6712         gdk_fb_window_set_child_handler.
6713
6714         * gdk/x11/gdkwindow-x11.c:
6715         New function gdk_window_get_mwm_hints().
6716         Implemented gdk_window_get_decorations.
6717
6718         * docs/reference/gdk/tmpl/windows.sgml:
6719         * docs/reference/gdk/gdk-sections.txt:
6720         Added gdk_window_get_decorations docs.
6721         
6722 2001-01-08  Alexander Larsson  <alla@lysator.liu.se>
6723
6724         * gdk/linux-fb/gdkwindow-fb.c (_gdk_fb_window_find_focus,
6725         gdk_fb_window_find_focus, gdk_fb_send_focus_change,
6726         gdk_fb_window_send_crossing_events):
6727         Possibly send focus events when the mouse moves from one
6728         window to another.
6729
6730 2001-01-07  Tor Lillqvist  <tml@iki.fi>
6731
6732         * gdk/win32/gdkwindow-win32.c (gdk_window_set_title,
6733         gdk_window_new): Adapt calls to g_{locale,filename}_{to,from}_utf8
6734         to match current API.
6735
6736         * gdk/win32/gdkvisual-win32.c (gdk_visual_init): If a secret
6737         environment variable is set, don't call g_error when on a
6738         palettized (PseudoColor) display. Some people want to use GTK+ 
6739         in 256-colour mode even though works only partially.
6740
6741         * gdk/gdk.def
6742         * gtk/gtk.def
6743         * gtk/makefile.mingw.in: Update.
6744
6745 2001-01-05  Havoc Pennington  <hp@redhat.com>
6746
6747         * tests/testtreeview.c: hack on this a bit
6748
6749         * gtk/gtktextlayout.c (gtk_text_layout_class_init):
6750         s/GTK_RUN_LAST/G_SIGNAL_RUN_LAST
6751
6752         * gtk/gtktreemodelsimple.h (GTK_IS_TREE_MODEL_SIMPLE_CLASS): 
6753         was spelled incorrectly
6754         (GTK_IS_TREE_MODEL_SIMPLE): ditto
6755
6756         * gtk/gtktreeview.c (gtk_tree_view_set_headers_clickable): rename
6757         from gtk_tree_view_set_headers_active   
6758
6759         * gtk/gtktexttag.c:
6760         (gtk_text_tag_get_property): handle PROP_DIRECTION
6761         (gtk_text_tag_set_property): g_object_notify when we toggle the _set
6762         properties, bug 40235
6763
6764         * gtk/gtktextiter.c (gtk_text_iter_forward_to_delimiters): rename
6765         forward_to_line_end
6766
6767 Fri Jan  5 16:16:29 2001  Owen Taylor  <otaylor@redhat.com>
6768
6769         * gtk/{gtkcalender.c,gtkfilesel.c,gtkimcontext.c},
6770         modules/input/gtkimcontextxim.c: Adapt to new prototypes
6771         for unicode,locale,filename conversion functions.
6772
6773 2001-01-05  Havoc Pennington  <hp@redhat.com>
6774
6775         * gtk/gtktextiter.c (gtk_text_iter_ends_line): this function was
6776         broken if called on the first position in the buffer.
6777
6778         * gtk/gtktextlayout.c (line_display_index_to_iter): fix
6779         forward_to_delimiters to be called only if we aren't already at
6780         the delimiters.
6781
6782 2001-01-05  Havoc Pennington  <hp@redhat.com>
6783
6784         * demos/gtk-demo/main.c (create_tree): Oops, that didn't link. Fix.
6785
6786 2001-01-05  Alexander Larsson  <alexl@redhat.com>
6787
6788         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_drawable_finalize): free
6789         colormap in here. Sync from X port.
6790         (gdk_fb_set_colormap): allow the colormap to be NULL if you like.
6791         Sync from X port.
6792         (gdk_fb_clip_region): Comment out g_warning about empty clip region.
6793         This happens now and then, and i don't think it is a bug.
6794         (gdk_fb_draw_polygon): Correctly add extra point if startpoint
6795         != endpoint.
6796         (gdk_fb_draw_lines): Don't draw dashed lines if line_style is
6797         GDK_LINE_SOLID.
6798
6799         * gdk/linux-fb/gdkfont-fb.c: Return bogus GdkFont that has
6800         some of the fields filled in at least.
6801
6802         * gdk/linux-fb/miwideline.c: The widths argument to miLineArcI, and
6803         miLineArcD is no more, remove it from the function definition.
6804
6805 2001-01-04  Havoc Pennington  <hp@redhat.com>
6806
6807         * gtk/gtktreeselection.c (gtk_tree_selection_get_tree_view): add
6808         this
6809
6810         * gtk/gtktreemodel.h (struct _GtkTreeIter): rename fields to
6811         user_data instead of tree_node
6812
6813         * gtk/gtktreeprivate.h (TREE_VIEW_COLUMN_WIDTH): rename from
6814         TREE_VIEW_COLUMN_SIZE
6815
6816         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): rename
6817         "size" field to "width" finishes bug 40061
6818
6819         * gtk/gtkcellrenderer.h: Use GtkCellRendererState instead of guint
6820         for bitfields, bug 40268
6821
6822 2001-01-04  Havoc Pennington  <hp@redhat.com>
6823
6824         Rename some stuff:
6825         
6826         s/gtk_tree_view_column_set_size/gtk_tree_view_column_set_width/g;
6827
6828         s/GtkModelSimple/GtkTreeModelSimple/g;
6829         s/GTK_MODEL_SIMPLE/GTK_TREE_MODEL_SIMPLE/g;
6830         s/gtk_model_simple/gtk_tree_model_simple/g;
6831         s/gtkmodelsimple/gtktreemodelsimple/g;
6832
6833         s/gtk_tree_view_column_set_header_active/gtk_tree_view_column_set_header_clickable/g;
6834
6835         s/GtkTreeViewColumnType/GtkTreeViewColumnSizing/g;
6836         s/column_set_col_type/column_set_sizing/g;
6837
6838         s/GtkTreeSelectionType/GtkTreeSelectionMode/g;
6839         s/gtk_tree_selection_set_type/gtk_tree_selection_set_mode/g;
6840
6841         s/GtkCellRendererType/GtkCellRendererState/g;
6842         
6843         * gtk/gtkcellrenderertoggle.c: remove _ macro, include gtkintl.h
6844         (gtk_cell_renderer_toggle_class_init): change "state" property to
6845         "active", to match GtkToggleButton
6846         (gtk_cell_renderer_toggle_get_active): new function, bug
6847         40269
6848         (gtk_cell_renderer_toggle_set_active): new function
6849         (gtk_cell_renderer_toggle_set_property): route changes to toggle
6850         state through gtk_cell_renderer_set_active
6851
6852 Thu Jan  4 15:46:18 2001  Jonathan Blandford  <jrb@redhat.com>
6853
6854         * gtk/gtkmodelsimple.c: Changed a bunch of boxed types to pointers
6855         temporarily until they work again.  Brought up to date with
6856         changes in the model.
6857         * gtk/gtkmodelsimple.h: Brought up to date with changes in the
6858         model.
6859
6860 2001-01-04  Havoc Pennington  <hp@redhat.com>
6861
6862         * gtk/gtktextlayout.c (line_display_index_to_iter): if index is
6863         equal to the line length, then position iterator before paragraph 
6864         separators. Fixes crash reported by Mikael Hermansson when
6865         pressing left arrow from the start of a line.   
6866
6867         * gtk/gtktextiter.c (iter_set_from_byte_offset): Add g_error
6868         about byte indexes off the end
6869         (iter_set_from_char_offset): add g_error about char offsets
6870         off the end
6871
6872 2001-01-03  Havoc Pennington  <hp@redhat.com>
6873
6874         * gtk/gtktextbtree.c: Adapt to uscore-ification of gtktextiterprivate
6875
6876         * gtk/gtktextdisplay.c (gtk_text_layout_draw): remove use 
6877         of private functions; remove inclusion of private headers.
6878
6879         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_at_line): Add this 
6880         function, so we don't need private functions in gtktextdisplay.c
6881
6882         * gtk/gtktextiterprivate.h: underscore-ification
6883
6884         * gtk/gtkwidget.c: Clean up a bunch of docs that said "INTERNAL"
6885         to instead say "only useful to implement widgets"
6886
6887         * gtk/gtkenums.h (GtkMovementStep): Rename GTK_MOVEMENT_CHARS,
6888         GTK_MOVEMENT_POSITIONS to GTK_MOVEMENT_LOGICAL_POSITIONS,
6889         GTK_MOVEMENT_VISUAL_POSITIONS. Resolves bug 40249.
6890
6891         * gdk/x11/gdkwindow-x11.c (gdk_window_impl_x11_set_colormap):
6892         This function was completely broken
6893
6894         * gtk/testtext.c (line_numbers_expose): use gtk_paint_layout
6895
6896         * gtk/gtkvscale.c (gtk_vscale_draw_value): use gtk_paint_layout
6897
6898         * gtk/gtkvruler.c (gtk_vruler_draw_ticks): use gtk_paint_layout
6899
6900         * gtk/gtklabel.c (gtk_label_expose): use gtk_paint_layout
6901
6902         * gtk/gtkhscale.c (gtk_hscale_draw_value): use gtk_paint_layout
6903
6904         * gtk/gtkhruler.c (gtk_hruler_draw_ticks): use gtk_paint_layout
6905
6906         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_render): use
6907         gtk_paint_layout
6908
6909         * gtk/gtkaccellabel.c (gtk_accel_label_expose_event): use
6910         gtk_paint_layout
6911
6912         * gtk/gtkstyle.h: Add draw/paint expander to draw tree expanders.
6913         Progress on bug 40103. Add draw_layout to draw a PangoLayout.
6914         (struct _GtkStyleClass): Remove draw_cross, draw_oval, draw_ramp,
6915         which were not implemented.     
6916
6917         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): Add
6918         insert_pixbuf signal. Rename delete_text to delete_range since it
6919         also deletes pixbufs and child anchors. This almost closes bug
6920         40245 (still need to deal with child anchors)
6921
6922         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Add
6923         insert_pixbuf, change signal names as appropriate, change types of
6924         signals taking marks/tags to have the specific type, not just
6925         G_TYPE_OBJECT
6926         
6927         * gtk/gtkmain.c (gtk_get_current_event_state): Add this function; 
6928         closes bug 40051
6929
6930         * gtk/gtkoptionmenu.c (gtk_option_menu_set_history): clean up
6931         unnecessary remove_contents() call
6932         (gtk_option_menu_class_init): add a "changed" signal, closes
6933         bug 40039
6934         (gtk_option_menu_update_contents): emit "changed" if the 
6935         active menu item changes
6936
6937         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done): fix bad
6938         cast to GtkObject, reported by Jonas Borgstrom
6939         (gdk_pixbuf_loader_finalize): don't close the loader on finalize;
6940         we can't do stuff with side effects in finalize. Instead, spew a
6941         warning if the loader isn't closed.
6942
6943         * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_finalize): free
6944         colormap in here, non-X ports probably need to sync to this change
6945
6946         * gdk/x11/gdkdrawable-x11.c (gdk_x11_set_colormap): remove 
6947         assertion that colormap != NULL, you can set the colormap to NULL
6948         if you like.
6949         
6950         * Makefile.am: remove gtk-config-2.0
6951
6952         * configure.in: Use pkg-config to locate GLib. Remove
6953         separated-out GMODULE_LIBS, GMODULE_CFLAGS; these were not used,
6954         and the gmodule libs/cflags were in GLIB_LIBS GLIB_CFLAGS anyhow.
6955         Use pkg-config to locate Pango. Output correct Pango libs to
6956         gdk-2.0.pc.in. Fix test for FREETYPE_CONFIG (typo fix).
6957
6958         * Makefile.am (pkgconfig_DATA): install only target-specific pc
6959         files
6960         (install-data-local): symlink gtk+-2.0.pc and gdk-2.0.pc to the
6961         X11 pc files
6962
6963         * gtk+-2.0.pc.in (Requires): require the GDK for the current target
6964         unref from here
6965
6966 2001-01-03  Alexander Larsson  <alla@lysator.liu.se>
6967
6968         * configure.in:
6969         Change GTK_NO_CHECK_CASTS to G_DISABLE_CAST_CHECKS.
6970
6971 Tue Jan  2 16:23:05 2001  Owen Taylor  <otaylor@redhat.com>
6972
6973         * gtk/gtktextlayout.c
6974         (gtk_text_layout_move_iter_to_previous_line): Fix unitialized
6975         variable when moving back onto a single line.
6976
6977 2001-01-01  Havoc Pennington  <hp@redhat.com>
6978
6979         * gtk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
6980
6981         * gdk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
6982
6983         * configure.in (LIBTOOL_EXPORT_OPTIONS): define
6984         LIBTOOL_EXPORT_OPTIONS with options to control symbol export
6985
6986 2001-01-01  Havoc Pennington  <hp@redhat.com>
6987
6988         * gtk/gtktexttagprivate.h: uscore-prepend all the stuff in here.
6989
6990         * gtk/gtk-boxed.defs (GtkTextAttributes): Add boxed type for 
6991         GtkTextAttributes
6992
6993         * gtk/gtktexttag.c: Fix up GtkTextAttributes copying to close bug 
6994         #40246
6995         (gtk_text_attributes_copy_values): rename from 
6996         gtk_text_attributes_copy
6997         (gtk_text_attributes_copy): a more standard GTK copy function, 
6998         which returns a new object
6999
7000 2001-01-01  Havoc Pennington  <hp@redhat.com>
7001
7002         * gtk/gtktreeview.c: Adapt to GtkTreeSelection changes
7003         
7004         * gtk/gtktreeselection.c (_gtk_tree_selection_set_tree_view):
7005         don't fill in tree_view->priv->selection, kind of an unexpected
7006         side effect
7007
7008         * gtk/gtkcellrenderertext.c: Remove definition of _ and include
7009         gtkintl.h
7010         
7011         * gtk/gtkcellrenderer.c: Remove definition of _ and include
7012         gtkintl.h
7013         (gtk_cell_renderer_get_property): remove calls to g_value_init
7014
7015         * gtk/gtkcellrendererpixbuf.c: Remove definition of _ and include
7016         gtkintl.h
7017
7018         * gtk/gtkcellrenderertextpixbuf.c: Remove definition of _ macro
7019         and include gtkintl.h
7020         (gtk_cell_renderer_text_pixbuf_class_init): remove spaces from
7021         property names
7022
7023         * gtk/gtktreeselection.c (_gtk_tree_selection_new): rename, return
7024         GtkTreeSelection
7025         (_gtk_tree_selection_new_from_with_view): rename, return
7026         GtkTreeSelection
7027         (_gtk_tree_selection_set_tree_view): rename with uscore
7028         (gtk_tree_selection_get_selected): fill in the "model" out param
7029         first, so it gets filled in even if we return at the top of the 
7030         function
7031         (gtk_tree_selection_real_select_all): add a comment and an else{}
7032         to clarify this a bit
7033         (gtk_tree_selection_real_unselect_all): add the same else{}
7034
7035         * gtk/gtktreeselection.h: Rename new, new_with_tree_view, and
7036         set_tree_view to have underscore prefixes, move them to the
7037         private header, fix return type of new_with_tree_view
7038         (struct _GtkTreeSelection): mark struct
7039         fields private  
7040
7041         * gtk/gtktreemodel.c (gtk_tree_model_get_flags): return
7042         GtkTreeModelFlags, not a guint
7043         (gtk_tree_path_prev): return gboolean not gint
7044         (gtk_tree_path_up): return gboolean not gint
7045
7046         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): make get_flags
7047         return GtkTreeModelFlags, not a guint
7048
7049         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_finalize): check
7050         that child model is non-null before unrefing it
7051         (g_value_int_compare_func): make this a qsort compare func, not 
7052         a boolean predicate
7053
7054         * gtk/gtktreemodelsort.h: rename gtk_tree_model_set_sort_column,
7055         (add -umn to the end), and mark it unimplemented
7056         (gtk_tree_model_sort_resort): remove, this wasn't implemented, and 
7057         I don't see what it's for - doesn't the model always sort itself?
7058         (gtk_tree_model_sort_set_compare): this had the wrong signature
7059
7060         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_attributes):
7061         Fix the docs to say that it destructively replaces existing
7062         attributes (previously said that it added attributes).
7063         (gtk_tree_view_column_set_visible): canonicalize bool before
7064         equality testing. Also, check for realization before
7065         hiding/showing the tree_column->window; if this window could exist
7066         before realization, then it's busted and needs fixing, we can't 
7067         create GDK resources pre-realization. Also, remove
7068         superfluous queue_resize(), since set_size() does that for us.
7069         (gtk_tree_view_column_set_col_type): check realization before 
7070         using tree_column->window
7071
7072         * gtk/gtktreedatalist.c: fix filename in copyright notice
7073
7074 2000-12-31  Havoc Pennington  <hp@pobox.com>
7075
7076         * gtk/gtktextview.c: Rearrange all the
7077         scroll-while-dragging-or-selecting code to be different, not
7078         necessarily better. ;-)
7079         (gtk_text_view_scroll_to_mark): Change this
7080         function to take within_margin as a fraction instead of a pixel
7081         value, and to take alignment arguments (indicating where to align 
7082         the mark inside the visible area)
7083         
7084         * gtk/testtextbuffer.c (fill_buffer): fix bad cast of GtkTextTag
7085         to GtkObject
7086
7087         * gtk/gtktextiter.c (gtk_text_iter_set_line_offset): change
7088         behavior so that offsets past the end of the line are not 
7089         allowed, and an offset equal to the line length moves the iterator
7090         to the next line
7091         (gtk_text_iter_set_line_index): make parallel change
7092         (gtk_text_iter_get_bytes_in_line): add this function
7093         
7094         * gtk/gtktextbtree.c (_gtk_text_line_byte_locate): change handling
7095         of byte indexes off the end of the line; byte index at the end of
7096         the line now returns FALSE and doesn't fill in the requested
7097         values, byte index past the end of the line is an error.  Also,
7098         don't allow -1 offset anymore, since its meaning is unclear.
7099
7100         This change exposes some bug in visual cursor motion, where we
7101         end up with a huge invalid byte index; needs fixing. Symptom of 
7102         bug is a crash when you hit up arrow.
7103         
7104         (_gtk_text_line_char_locate): match the change to byte_locate
7105
7106         * gtk/gtktextiter.c (find_by_log_attrs): Handle iteration backward
7107         from start of line properly. fixes bug reported by Mikael
7108         Hermansson where backspace would delete all text before the
7109         cursor.
7110
7111 2000-12-30  Tor Lillqvist  <tml@iki.fi>
7112
7113         * gdk/win32/gdkwindow-win32.c
7114         (gdk_window_impl_win32_get_visible_region): New function, as in
7115         the X11 backend.
7116         (gdk_window_new, gdk_window_set_title): Use g_locale_from_utf8()
7117         instead of duplicating the same code here.
7118
7119         * gdk/win32/gdkwin32.h (GDK_COLORMAP_PRIVATE_DATA): Use
7120         GDK_COLORMAP macro.
7121
7122         * gdk/win32/gdkevents-win32.c (gdk_event_funcs): Use NULL as
7123         destroy function.
7124         (gdk_event_translate): Use GDK_COLORMAP_PRIVATE_DATA to correctly
7125         access that.
7126
7127         * gtk/gtk.def: Update.
7128
7129         * gtk/makefile.mingw.in: Use glib-genmarshal from $(GLIB)/gobject.
7130
7131 2000-12-30  Havoc Pennington  <hp@pobox.com>
7132
7133         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Set the system
7134         colormap on input only windows, to avoid special cases all over
7135         the code for these windows.
7136
7137 2000-12-26  Tor Lillqvist  <tml@iki.fi>
7138
7139         * gdk/win32/gdkvisual-win32.c (gdk_visual_init): Call g_error if
7140         we are on a palettized display ("PseudoColor" in X11), as the code
7141         for that doesn't work anyway, and never has.
7142
7143 2000-12-22  Alexander Larsson  <alexl@redhat.com>
7144
7145         * gdk/linux-fb/gdkkeyboard-fb.c (xlate_io):
7146         Don't use isprint() for chars > 255.
7147
7148 2000-12-21  Havoc Pennington  <hp@redhat.com>
7149
7150         * tests/testtreeview.c: more work
7151
7152 2000-12-21  Alexander Larsson  <alexl@redhat.com>
7153
7154         * docs/README.linux-fb:
7155         Update the docs to the new pangoft2 way.
7156
7157 2000-12-21  Alexander Larsson  <alexl@redhat.com>
7158
7159         * configure.in:
7160         For linux-fb get the pangoft2 cflags and libs. This needs a recent
7161         pango version.
7162         Remove modules/linux-fb/Makefile.
7163
7164         * gdk/linux-fb/gdkdrawable-fb2.c:
7165         Render glyphs using freetype.
7166
7167         * gdk/linux-fb/gdkfb.h:
7168         Add new fb-specific functions needed for managing windows.
7169
7170         * gdk/linux-fb/gdkmain-fb.c:
7171         Remove gdk_font_init/fini() calls.
7172
7173         * gdk/linux-fb/gdkpango-fb.c:
7174         Remove old implementation. Use pangoft2 instead.
7175
7176         * gdk/linux-fb/gdkprivate-fb.h:
7177         Remove PangoFBFont and related stuff.
7178
7179         * gdk/linux-fb/gdkwindow-fb.c:
7180         Implement drawable->get_visible_region.
7181         Implement support for _gdk_window_set_child_handler () and
7182         _gdk_window_get_decorations().
7183
7184         * modules/Makefile.am:
7185         Remove linux-fb subdir.
7186
7187         * modules/linux-fb/*:
7188         Removed all.
7189         
7190 2000-12-20  Jonathan Blandford  <jrb@redhat.com>
7191
7192         * gtk/gtkcellrenderer*.c (::get_property): remove g_value_init
7193         calls, as they are no longer needed.
7194
7195         * gtk/gtktreemodelsort.c: Fix up the comparison code.
7196         
7197         * gtk/gtktreemodel.h: Start work on ::reordered signal.  Need to
7198         figure out how to emit a signal on an interface.
7199
7200 2000-12-20  Havoc Pennington  <hp@redhat.com>
7201
7202         * tests: new directory to contain tests, gtk/test* should move
7203         here sometime (with appropriate on-cvs-server hackery)
7204
7205         * tests/testtreeview.c, tests/Makefile.am: a test
7206         
7207         * configure.in (AC_OUTPUT): add tests/Makefile
7208
7209         * gtk/gtktexttag.c (gtk_text_tag_get_property): Add "invisible"
7210         and "invisible_set" which were missing
7211
7212         * gtk/gtkrbtree.h: some cheesy indentation fix
7213         
7214 2000-12-20  Alexander Larsson  <alexl@redhat.com>
7215
7216         * gtk/gtkinvisible.c (gtk_invisible_realize):
7217         Attach the style to the window so that the style it is not
7218         leaked when unrealizing the window.
7219
7220 2000-12-18  Havoc Pennington  <hp@redhat.com>
7221
7222         * gtk/gtktextview.c (gtk_text_view_delete_from_cursor): do
7223         begin/end user action where appropriate
7224         (gtk_text_view_commit_handler): add begin/end user action
7225
7226         * gtk/gtktextbuffer.c: add begin/end user action signals, and
7227         bracket interactive operations with begin/end user action pair.
7228         
7229         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): remove
7230         "interactive" arg from insert_text and delete_text signals.
7231         Add begin_user_action, end_user_action signals
7232         (gtk_text_buffer_begin_user_action): 
7233         (gtk_text_buffer_end_user_action): New functions to delimit 
7234         a user-visible action
7235
7236         * gtk/gtkmarshal.list: update to reflect changes to gtktextbuffer
7237         signals.
7238         
7239 2000-12-18  Havoc Pennington  <hp@redhat.com>
7240
7241         * gdk/gdkevents.c (gdk_event_get_state): wow, that implementation
7242         was pretty non-working.
7243
7244         * gtk/testtext.c (fill_file_buffer): make this a bit more robust
7245         by passing the length to g_utf8_validate().
7246
7247 2000-12-16  Havoc Pennington  <hp@pobox.com>
7248
7249         * gtk/gdk-pixbuf-loader.h, gtk/gdk-pixbuf-loader.c: 
7250         Port to GObject, can go back in gdk-pixbuf after setting up 
7251         a gdk-pixbuf-marshal.h header over there.
7252
7253         * gtk/gtktreeview.c: s/SEPERATOR/SEPARATOR/g;
7254         (gtk_tree_view_class_init): specify GTK_TYPE_ADJUSTMENT for signal
7255         args
7256         (gtk_tree_view_init): don't unset GTK_NO_WINDOW, it shouldn't be
7257         set
7258         (gtk_tree_view_realize_buttons): don't gtk_widget_show() buttons
7259         here, do it when we create the buttons later
7260         (gtk_tree_view_realize_buttons): add some g_return_if_fail 
7261         (gtk_tree_view_map): paranoia checks that column->button is shown 
7262         and unmapped
7263         (gtk_tree_view_size_request): only request visible children.
7264         Move header size calculation in here, for cleanliness, and 
7265         to maintain invariants for child widgets if we eventually 
7266         let users set different children inside the buttons
7267         (gtk_tree_view_map_buttons): factor out code to map buttons,
7268         since it was being called several times
7269         (gtk_tree_view_size_allocate_buttons): move_resize the drag
7270         windows instead of just moving them; their height may change 
7271         if we allow random widgets in there, or the theme changes.
7272         (gtk_tree_view_size_allocate): move button size allocation 
7273         above emitting the scroll signals, to ensure a sane state when we
7274         hit user code
7275         (gtk_tree_view_button_release): remove queue_resize after
7276         tree_view_set_size(), set_size() will handle any resize queuing
7277         that's needed
7278         (gtk_tree_view_focus_in): just queue a draw, don't fool with
7279         draw_focus goo
7280         (gtk_tree_view_focus): use gtk_get_current_event() and
7281         gdk_event_get_state()
7282         (gtk_tree_view_deleted): don't queue_resize() after calling set_size()
7283         (gtk_tree_view_build_tree): fix a "if (foo); {}" bug - i.e. remove
7284         semicolon
7285         (gtk_tree_view_create_button): show the button here
7286         (gtk_tree_view_button_clicked): actually emit the clicked signal
7287         on the column
7288         (_gtk_tree_view_set_size): return right away if the size is
7289         unchanged, as a cheesy optimization
7290         (gtk_tree_view_setup_model): rename set_model_realized to 
7291         setup_model to match the flag that indicates whether we've 
7292         called it
7293         (gtk_tree_view_get_hadjustment): create adjustment if it doesn't
7294         exist, because set_scroll_adjustment does that and it shouldn't
7295         matter what order you call these in
7296         (gtk_tree_view_get_vadjustment): ditto
7297         (gtk_tree_view_set_headers_visible): canonicalize the bool, 
7298         for paranoia
7299         (gtk_tree_view_set_headers_visible): call
7300         gtk_tree_view_map_buttons() instead of using cut-and-paste code
7301         (gtk_tree_view_append_column): clarify whether the return value
7302         is the count of columns before or after, and do the increment 
7303         separately from the return statement so you can tell from the code.
7304         (gtk_tree_view_remove_column): ditto
7305         (gtk_tree_view_insert_column): ditto
7306         (gtk_tree_view_get_column): remove g_return_if_fail for columns
7307         outside the existing range, the docs say that outside-range
7308         columns are allowed, so we handle them as documented. (Presumably
7309         this allows a nice loop with column != NULL as test.)
7310         (gtk_tree_view_move_to): document what 0.0, 0.5, 1.0 alignments 
7311         mean (left/right/center etc.).
7312         (gtk_tree_view_collapse_all): only queue a draw if we're mapped
7313         (gtk_tree_view_expand_row): add docs
7314         (gtk_tree_view_collapse_row): add docs
7315
7316         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clicked): new
7317         function to emit the clicked signal on a column
7318         
7319         * gdk/gdkevents.c (gdk_event_get_state): new function, to get the
7320         state of an event
7321         (gdk_event_get_time): don't treat GDK_SCROLL 
7322         as a button event, remove default case from switch so gcc 
7323         will whine if we don't explicitly handle all event types
7324
7325         * gtk/gtktreeselection.h: added some FIXME 
7326         
7327         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): rename
7328         "columns" to "n_columns" and "column" to "columns" for clarity
7329
7330 2000-12-16  Havoc Pennington  <hp@pobox.com>
7331         
7332         * gtk/gtktextiter.c: General cleanup of the log attr iteration
7333         stuff. This should make e.g. the delete key work again in the
7334         text widget...
7335         (gtk_text_iter_forward_cursor_positions): handle negative count
7336         (gtk_text_iter_backward_cursor_positions): handle negative count
7337         (gtk_text_iter_forward_word_ends): handle negative count
7338         (gtk_text_iter_backward_word_starts): handle negative count
7339
7340         * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktexttag.h,
7341         gtk/gtktexttag.c, gtk/gtktexttagtable.h, gtk/gtktexttagtable.c, 
7342         gtk/gtktextbuffer.h, gtk/gtktextbuffer.c: Convert everything to 
7343         GObject. No doubt will cause breakage.
7344
7345         * demos/gtk-demo/textview.c: remove hacks around
7346         non-GObject-ification of the text objects
7347
7348         * demos/gtk-demo/main.c (main): use g_object_set() to manipulate 
7349         the text tag
7350         
7351 2000-12-14  Havoc Pennington  <hp@pobox.com>
7352
7353         * configure.in: only AC_DEFINE(HAVE_XFT) if we actually determined
7354         that we have Xrender
7355
7356 Thu Dec 14 20:22:31 2000  Owen Taylor  <otaylor@redhat.com>
7357
7358         * gdk/{gdkdrawable.[ch],gdkpixmap.c,gdkwindow.c,x11/gdkwindow.c}:
7359         Add two virtualized functions gdk_drawable_get_clip_region - to
7360         get the clip region when drawing.
7361         
7362         * gdk/gdkwindow.c (gdk_window_invalidate_rect): Rewrite to simple
7363         use invalidate_region.
7364
7365         * gdk/gdkwindow.c (gdk_window_invalidate_region): Clip to visible
7366         region.
7367
7368         * acconfig.h configure.in: Check for Xft. For now, assume
7369         that if Xft is found, Pango was compiled with Xft support
7370         as well.
7371
7372         * gdk/gdkcolor.h gdk/x11/gdkcolor-x11.c: Add 
7373         gdk_colormap_query_color().
7374         
7375         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_glyphs): Draw
7376         with Xft if appropriate.
7377
7378         * gdk/x11/gdkpango-x11.c (gdk_pango_context_get): Create
7379         a pangoxft context if we have XFT and the environment
7380         variable GD_USE_XFT is set.
7381         
7382         * gdk/x11/gdkx.h (struct _GdkGCX11): Cache the fg_pixel
7383         and also possibly an XftDraw structure.
7384
7385         * gtk/gtkfontsel.c: Handle the case where the font from the
7386         style doesn't match any of the fonts a bit better.
7387         
7388         * gtk/testgtk.c: Add tabs between directional segments for
7389         hebrew/arabic test. (Not really necessary, just a little
7390         prettier.)
7391
7392 2000-12-14  Havoc Pennington  <hp@redhat.com>
7393
7394         * gtk/testtext.c (fill_file_buffer): fix unicode validation when
7395         reading a file
7396
7397 2000-12-14  Havoc Pennington  <hp@redhat.com>
7398
7399         * gtk/gtktextbtree.c (_gtk_text_btree_validate_line): remove
7400         unused call to get_last_line()
7401
7402         * gtk/gtkobject.c (gtk_object_add_arg_type): add G_TYPE_POINTER
7403         here until boxed is working (and maybe after that - we should
7404         really not gratuitously break old code)
7405
7406         * gtk/gtktexttag.c (gtk_text_tag_class_init): add commented-out
7407         specific types for font_desc and tabs args, move them to
7408         GTK_TYPE_POINTER for now, waiting on g_param_spec_boxed() to get 
7409         fixed. Move GdkColor args to GTK_TYPE_POINTER also.
7410
7411         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): temporarily
7412         use GTK_TYPE_POINTER for signal signatures as a hack-around
7413
7414         * gtk/gtk-boxed.defs: Add boxed types for PangoFontDescription and
7415         PangoTabArray
7416
7417         * gtk/gtktextlayout.c (line_display_iter_to_index): 
7418         make static
7419         (line_display_index_to_iter): make static
7420
7421         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
7422         to marshal a string not a boxed
7423
7424         * gtk/gtkmarshal.list: add marshaller for GtkTextBuffer:insert_text
7425
7426         * gtk/testtext.c (fill_file_buffer): don't use g_utf8_next_char
7427         since the UTF-8 isn't validated yet
7428
7429         * gtk/gtktextsegment.c (char_segment_check_func): don't require
7430         lines to end in '\n'
7431         
7432         * gtk/gtktextview.c (gtk_text_view_move_cursor): update to use
7433         forward_to_delimiters, and grapheme boundaries
7434         (gtk_text_view_delete_from_cursor): properly handle non-newline
7435         delimiters, and grapheme boundaries
7436
7437         * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): rename
7438         to gtk_text_iter_forward_to_delimiters, and make it work properly
7439         if empty lines end with a character other than '\n'
7440
7441         * gtk/gtktextiter.h, gtk/gtktextiter.c: Add movement by cursor
7442         position
7443
7444 2000-12-15  Tor Lillqvist  <tml@iki.fi>
7445
7446         * gdk/makefile.{mingw.in,msc} (gdk_OBJECTS): Add gdkkeys.
7447
7448         * gtk/gtk.def
7449         * gdk/gdk.def: Update.
7450
7451         * gdk/win32/gdkmain-win32.c
7452         * gdk/win32/gdkkeys-win32.c: New file. Move some functions from
7453         gdkmain-win32.c here.
7454
7455         * gdk/win32/makefile.mingw.in (all): No need to make
7456         gdk-win32res.o here, the makefile one step up will call us to make
7457         it.
7458
7459         * gdk/win32/makefile.{mingw.in,msc} (gdk_win32_OBJECTS): Add
7460         gdkkeys-win32.
7461
7462         * gdk/win32/gdkcolor-win32.c: Silence gcc -Wall.
7463
7464         * gdk/win32/gdkevents-win32.c (gdk_events_init): Remove leftover
7465         call to g_source_add().
7466
7467         * gdk/win32/gdkgc-win32.c (BitmapToRegion): Plug memory
7468         leak. Thanks to Andreas Kemnade.
7469
7470 2000-12-13  Havoc Pennington  <hp@pobox.com>
7471
7472         * gtk/gtktextbtree.h: Remove double _ in front of some functions
7473
7474         * gtk/gtktext*.[hc]: update accordingly
7475         
7476 2000-12-13  Havoc Pennington  <hp@pobox.com>
7477
7478         * gtk/gtktextbtree.h: Put _ in front of every function in this 
7479         header file
7480
7481         * gtk/gtktext*.[hc]: update to reflect renamed btree functions
7482
7483 2000-12-13  Alex Larsson  <alexl@redhat.com>
7484
7485         * gdk/linux-fb/gdkmouse-fb.c (mouse_devs):
7486         Add support for ps2 intellimouse.
7487
7488         * gdkkeyboard-fb.c:
7489         Move shift-F1 repaint handling to xlate handler only.
7490         
7491         * docs/README.linux-fb:
7492         Add imps2 to docs.
7493         Document the new refresh keys.
7494         
7495 Tue Dec 12 23:46:44 2000  Tim Janik  <timj@gtk.org>
7496
7497         * gtk/stock-icons/Makefile.am: doh, this was broken beyond believe.
7498
7499         * gtk/gtkbox.c: change property types from (u)long to (u)int for
7500         ::position and ::padding.
7501
7502         * gtk/gtkcontainer.c: make ::border_width an INT property.
7503
7504         * gtk/gtkpacker.c: make ::position an INT property.
7505
7506         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed):
7507         guard against NULL h/v scrollbars, since this is used at construction
7508         time.
7509
7510         * gtk/gtkclist.[hc]: nuked gtk_clist_construct(), implemented
7511         internal gtk_clist_constructor().
7512
7513         * gtk/gtkctree.[hc]: nuked gtk_ctree_construct(), implemented
7514         gtk_ctree_constructor().
7515
7516         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): property
7517         ::pulse_step should use ARG_PULSE_STEP, not ARG_FRACTION.
7518
7519         * docs/reference/Makefile.am: fun stuff, disabled docs generation
7520         again, gtk-scan.c needs to introspec paramspecs, not GtkAgs.
7521
7522         * gtk/gtkwidget.[hc]:
7523         removed gtk_widget_setv(), gtk_widget_getv(), gtk_widget_newv()
7524         and gtk_widget_get().
7525         (gtk_widget_new): use g_object_new_valist().
7526         (gtk_widget_set): use g_object_set_valist().
7527
7528         * gtk/gtkobject.[hc]:
7529         removed gtk_object_arg_get_info(), gtk_object_getv(),
7530         gtk_object_query_args(), gtk_object_newv(),
7531         gtk_object_class_add_signals(),
7532         gtk_object_class_user_signal_new(),
7533         gtk_object_class_user_signal_newv(),
7534         gtk_object_arg_set(), gtk_object_arg_get(),
7535         gtk_object_args_collect(),
7536         gtk_object_default_construct(),
7537         gtk_object_constructed(),
7538         GTK_CONSTRUCTED and GTK_OBJECT_CONSTRUCTED().
7539         removed nsignals, signals and n_args members from GtkObjectClass.
7540         (gtk_object_new): use g_object_new_valist().
7541         (gtk_object_set): use g_object_set_valist().
7542         (gtk_object_get): use g_object_get_valist().
7543         
7544         * gtk/gtkcompat.h: define gtk_object_default_construct().
7545         
7546         * gtk/gtktypeutils.c (gtk_type_new): create constructed objects via
7547         g_object_new().
7548
7549         * gtk/*.c: removed gtk_object_class_add_signals() from class_init()
7550         fucntions, cleaned up method assignments (make sure your structures
7551         are setup properly before calling out). removed all GTK_CONSTRUCTED
7552         hacks ;)
7553
7554 Tue Dec 12 11:52:16 2000  Owen Taylor  <otaylor@redhat.com>
7555
7556         * gtk/gtkclist.c (gtk_clist_optimal_column_width): Fix 
7557         off-by-one error in checks. (Dave Lambert)
7558
7559 2000-12-12  Alexander Larsson  <alexl@redhat.com>
7560
7561         * gdk/linux-fb/gdkkeyboard-fb.c (xlate_close, raw_close):
7562         Don't free gdk_fb_keyboard twice.
7563
7564 Tue Dec 12 08:24:42 2000  Tim Janik  <timj@gtk.org>
7565
7566         * gtk/testgtk.c:
7567         (create_tooltips): 
7568         (create_statusbar): get rid of object_signal:: GtkObject argument uses,
7569         use GObject swapped_signal:: properties instead.
7570
7571         * gtk/gtkcellrenderertoggle.c: 
7572         * gtk/gtkcellrenderertextpixbuf.c: 
7573         * gtk/gtkcellrenderertext.c: 
7574         * gtk/gtkcellrendererpixbuf.c: 
7575         * gtk/gtkcellrenderer.c:
7576         * gtk/gtktreeviewcolumn.c: s/[sg]et_param/[sg]et_property/, fixed
7577         missing warnings for invalid property ids, install properties
7578         with g_object_class_install_property() now.
7579         
7580         * gtk/gtksignal.c:
7581         (gtk_signal_emit): let g_signal_emit_valist() collect the values for us.
7582         
7583 Wed Oct 25 14:17:43 2000  Owen Taylor  <otaylor@redhat.com>
7584         
7585         * gtk/gtkwidget.[ch] (gtk_widget_is_focus): Add a function
7586         to determine if a window is the focus widget within
7587         its toplevel.
7588
7589         * gtk/gtkcontainer.[ch]: Fix the return type of ::focus
7590         to be boolean.
7591
7592         * gtk/gtkcontainer.c (gtk_container_real_focus): Move handling 
7593         of the case where the container CAN_FOCUS to here instead
7594         of having it in each individual move-the-focus place.
7595
7596         * gtk/gtkcontainer.c: Rewrite handling of left-right and up-down
7597         focusing to be geometric in a much more obvious sense. Arrowing
7598         around is still non-intuitive because it isn't perfect and
7599         because entries, etc, grab the arrow keys, but it at least
7600         usually will do what you expect now.
7601         
7602         * gtk/gtknotebook.[ch]: Many cleanups. Moved docs inline in this
7603         file.
7604
7605         * gtk/gtknotebook.c: Change tabs to be a single item in
7606         the focus chain. Make movement of focus on tabs with arrow
7607         keys wrap around.
7608         
7609         * gtk/gtknotebook.c (gtk_notebook_find_child): Add
7610         CHECK_FIND_CHILD macro to give informative error messages
7611         instead of silent returns.
7612
7613         * gtk/gtknotebook.c (gtk_notebook_init): Set the RECEIVES_DEFAULT 
7614         flag since we handle GdkReturn on the tabs.
7615
7616         * gtk/gtknotebook.c (gtk_notebook_expose_tabs): Invalidate
7617         windows rather than sending expose events directly.
7618
7619         * gtk/gtknotebook.[ch] docs/Changes-2.0.txt: Move structure 
7620         definition for GtkNotebookPage into .c file, since it is private.
7621
7622         * gtk/testgtk.c (create_notebook): Add option for 
7623         testing borderless notebook.
7624
7625         * gtk/testgtk.c (page_switch): Removed egregious poking
7626         around in GTK+ internals.
7627
7628         * docs/widget-system.txt: Remove references to GTK_REDRAW_PENDING.
7629
7630         * gtk/gtkclist.[ch]: Remove key press handler, handle focusing
7631         properly through gtk_clist_focus. Make the title headers a
7632         single item in the tab-focus chain, and make left-right wrap
7633         around.
7634
7635         * gtk/gtkwindow.c (gtk_window_focus): Add a custom
7636         focus method so that wrapping around works properly.
7637
7638         * gtk/gtktreeview.c: Remove calls to gtk_container_set_focus_child() - 
7639         that is handled for the widget now. 
7640
7641 Mon Dec 11 11:41:12 2000  Owen Taylor  <otaylor@redhat.com>
7642
7643         * gtk/gtkinvisible.c (gtk_invisible_init): Flag invisible
7644         widgets as TOPLEVEL.
7645
7646         * gtk/gtkwidget.c (gtk_widget_queue_resize): Don't assume
7647         TOPLEVEL widgets are containers.
7648
7649         * gtk/gtkinvisible.h: Remove useless include.
7650
7651 2000-12-11  Havoc Pennington  <hp@redhat.com>
7652
7653         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): 
7654         Handle chopping off \r\n and 0x2029 in addition to \n before
7655         passing to PangoLayout
7656
7657         * gtk/gtkimcontextsimple.c
7658         (gtk_im_context_simple_get_preedit_string): 
7659         return an empty string if no match is pending
7660
7661         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): add
7662         assertion that the returned preedit string was sane
7663
7664         * gtk/gtktext*.[hc], gtk/testtext.c, gtk/testtextbuffer.c:
7665         s/gtk_text_iter_next_char/gtk_text_iter_forward_char/g;
7666         s/gtk_text_iter_prev_char/gtk_text_iter_backward_char/g;
7667
7668 Mon Dec 11 10:02:26 2000  Owen Taylor  <otaylor@redhat.com>
7669
7670         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_finalize): 
7671         Fix up finalizer to chain to its parent.
7672
7673 2000-12-11  Alexander Larsson  <alexl@redhat.com>
7674
7675         * docs/README.linux-fb (GDK_KEYBOARD_TYPE):
7676         Clearified the difference between the keyboard types. Wrote a note
7677         about the magic sysrq key to get out of raw mode.
7678
7679 2000-12-09  James Henstridge  <james@daa.com.au>
7680
7681         * gdk/linux-fb/gdkmouse-fb.c (GdkFBMouseDevice): add prot struct
7682         member to hold masks for detecting the start of a protocol packet.
7683         (mouse_devs): add packet start masks for ps2 and ms device types.
7684         Left the mask for fidmour blank, as I have no idea what it should
7685         be.
7686         (handle_mouse_io): skip bytes until we get to the start of a
7687         packet.  My Logitech mouse seems to be passing an extra NULL pad
7688         byte, and GPM does a similar thing here.
7689         (gdk_fb_mouse_ms_open): changed error message to not say psaux, as
7690         this is the ms mouse driver.
7691         (gdk_fb_mouse_ms_packet): fix up button handling, which was
7692         completely broken except for button1.  It was checking the wrong
7693         bit in the packet for the status of the right mouse button, and
7694         wrongly assuming right == button2 rather than 3.  I fixed that and
7695         also added support for middle button (button2).
7696
7697 2000-12-08  Havoc Pennington  <hp@redhat.com>
7698
7699         * gtk/gtktextbtree.c (gtk_text_btree_insert): fix breakage here
7700         that cause a segfault on text insertion
7701
7702         * gtk/gtktextchild.c (gtk_text_child_anchor_queue_resize): fix 
7703         warning
7704
7705         * gtk/gtktextiter.c (test_log_attrs): use
7706         _gtk_text_buffer_get_line_log_attrs to speed things up a bit
7707
7708         * gtk/gtktextbuffer.c (_gtk_text_buffer_get_line_log_attrs): 
7709         Get log attrs for a line, using a cache stored on the buffer
7710         
7711         * gtk/gtkcolorsel.h (GTK_COLOR_SELECTION_GET_CLASS): fix typo,
7712         reported by Jeff Franks
7713
7714 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
7715
7716         * gdk/linux-fb/gdkmouse-fb.c (gdk_fb_mouse_ms_open):
7717         /dev/ttyS0 -> /dev/mouse
7718
7719 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
7720
7721         * gdk/linux-fb/gdkfont-fb.c (gdk_fontset_load):
7722         Added dummy gdk_fontset_load.
7723
7724 2000-12-08  Alexander Larsson  <alexl@redhat.com>
7725
7726         * docs/README.linux-fb:
7727         * docs/Makefile.am:
7728         Initial GtkFB docs.
7729         
7730         * gdk/linux-fb/Makefile.am:
7731         Define GDK_DATA_PREFIX.
7732
7733         * gdk/linux-fb/gdkmain-fb.c:
7734         Fix typo.
7735         Change default display to /dev/fb0.
7736
7737         * gdk/linux-fb/gdkpango-fb.c:
7738         Add $(prefix)/share/fonts/ to font path.
7739         
7740 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
7741
7742         * gdk/linux-fb/gdkkeyboard-fb.c:
7743         New file containing the abstracted keyboard driver. Most code
7744         taken from gdkinput-ps2.c
7745
7746         * gdk/linux-fb/gdkinput-ps2.c:
7747         Removed file.
7748         
7749         * gdk/linux-fb/Makefile.am:
7750         Added gdkkeyboard-fb.c, removed gdkinput-ps2.c.
7751
7752         * gdk/linux-fb/gdkcolor-fb.c:
7753         display->fb was renamed to display->fb_fd.
7754
7755         * gdk/linux-fb/gdkcursor-fb.c:
7756         gdk_mouse_get_info -> gdk_fb_mouse_get_info
7757
7758         * gdk/linux-fb/gdkinput.c:
7759         Moved gdk_input_init here from gdkinput-ps2.c
7760
7761         * gdk/linux-fb/gdkmain-fb.c:
7762         display->fb was renamed to display->fb_fd.
7763         Now the tty and the console is opened here instead
7764         of in the keyboard driver. Also check GDK_VT to see what
7765         tty to open.
7766         Move gdk_beep () here from gdkinput-ps2.c
7767         gdk_mouse_get_info -> gdk_fb_mouse_get_info
7768
7769         * gdk/linux-fb/gdkmouse-fb.c:
7770         Add header.
7771         gdk_mouse_get_info -> gdk_fb_mouse_get_info
7772         Return correct keyboard modifiers.
7773         GDK_MOUSETYPE -> GDK_MOUSE_TYPE for consistancy
7774
7775         * gdk/linux-fb/gdkprivate-fb.h:
7776         Add tty and vt info to display.
7777         Add orignal modeinfo storage to display
7778         Update global functions
7779
7780         * gdk/linux-fb/gdkwindow-fb.c:
7781         Added gdk_fb_window_find_focus().
7782         gdk_mouse_get_info -> gdk_fb_mouse_get_info
7783
7784 2000-12-07  Havoc Pennington  <hp@pobox.com>
7785
7786         * gdk/x11/gdkkeys-x11.c (gdk_keymap_lookup_key): fix name of 
7787         function, noticed by Alex
7788
7789 2000-12-06  Elliot Lee  <sopwith@redhat.com>
7790
7791         * configure.in: Detect freetype properly
7792
7793         * modules/basic/Makefile.am, gdk/linux-fb/Makefile.am: Make use of
7794         above.
7795
7796 2000-12-06  Alexander Larsson  <alexl@redhat.com>
7797
7798         * gdk/linux-fb/Makefile.am:
7799         Add gdkmouse-fb.c
7800         
7801         * gdk/linux-fb/gdkmouse-fb.c:
7802         New file. Abstracted the mouse drivers a bit.
7803
7804         * gdk/linux-fb/gdkcursor-fb.c:
7805         The cursor hide/show functions was moved here from gdkinput-ps2.c.
7806
7807         * gdk/linux-fb/gdkinput-ps2.c:
7808         Removed old mouse handling code. Moved cursor handling code
7809         to gdkcursor-fb.c, moved gdk_fb_window_send_crossing_events() to
7810         gdkwindow-fb.c. gdk_input_get_mouseinfo was renamed to
7811         gdk_mouse_get_info.
7812
7813         * gdk/linux-fb/gdkmain-fb.c:
7814         Pass NULL pointers for x,y in gdk_mouse_get_info call.
7815
7816         * gdk/linux-fb/gdkprivate-fb.h:
7817         Removed public gdk_fb_find_common_ancestor, added and renamed
7818         functions for the new mouse handling code.
7819
7820         * gdk/linux-fb/gdkwindow-fb.c:
7821         Moved gdk_fb_window_send_crossing_events here. added global
7822         variable gdk_fb_window_containing_pointer. made
7823         gdk_fb_find_common_ancestor static. gdk_input_get_mouseinfo was
7824         renamed to gdk_mouse_get_info.
7825
7826 2000-12-06  Alexander Larsson  <alexl@redhat.com>
7827
7828         * gdk/linux-fb/gdkevents-fb.c:
7829         Update to match latest gmain/gsource changes.
7830
7831         * gdk/linux-fb/gdkinput-ps2.c:
7832         Bogus gdk_keymap_get_entries_for_keycode implementation so that
7833         it links. Will be implemented later.
7834
7835 2000-12-03  Havoc Pennington  <hp@pobox.com>
7836
7837         * gdk/Makefile.am: add gdkkeys.[hc]
7838
7839         * gdk/gdkkeys.h, gdk/gdkkeys.c: Move all the keyval stuff to these
7840         files from gdk.h, gdk.c; add GdkKeymap type and operations on it.
7841
7842         * acconfig.h, configure.in: add checks and command line options
7843         for XKB
7844
7845         * gdk/x11/gdkkeys-x11.c: Implement the above functions
7846         
7847         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Put the keycode
7848         and group in the key event
7849
7850         * gdk/gdkevents.h (struct _GdkEventKey): Add a hardware_keycode
7851         field with the low-level hardware key code, and a group
7852         field with the keyboard group
7853
7854         * gdk/x11/gdkprivate-x11.h: include config.h for HAVE_XKB,
7855         and declare a couple globals used for keymap handling
7856         
7857         * gtk/gtkimcontextsimple.c: Implement ISO 14755 input method,
7858         hold down Shift-Control and type a hex number to get a Unicode 
7859         character corresponding to the hex number
7860         (gtk_im_context_simple_get_preedit_string): Fix cursor position
7861         (return bytes not chars)
7862
7863 2000-12-05  Elliot Lee  <sopwith@redhat.com>
7864
7865         * gdk/gdkcolor.h: Make GdkColor specify element sizes
7866         to avoid waste on 64-bit platforms.
7867
7868 Tue Dec  5 15:49:31 2000  Owen Taylor  <otaylor@redhat.com>
7869
7870         * INSTALL: Fix link to PNG home, remove reference
7871         to fribidi.
7872
7873         * gdk/x11/gdkevents-x11.c: Fix up for new GMain API.
7874         
7875         * gdk/win32/gdkevents-win32.c: Fix up for new GMain API. (Not
7876         tested.)
7877
7878         * gtk/gtkcheckmenuitem.c: Permanently turn on
7879         always_show_toggle.
7880
7881         * gtk/gtkclist.c (gtk_clist_get_pixtext): Allow mask to 
7882         be NULL. (Vladimir Klebanov, #26545)
7883
7884         * gtk/gtkspinbutton.c (gtk_spin_button_insert_text): Fix 
7885         some signed/unsigned comparison problems. (#6510,
7886         David Kaelbling)
7887
7888         * gtk/gtkwidget.[ch] (gtk_widget_is_ancestor): Change
7889         return type to boolean (Oskar Liljeblad, #18648)
7890
7891 2000-12-05  Alexander Larsson  <alexl@redhat.com>
7892
7893         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_display_new):
7894         Remove bogus colormap setting.
7895
7896 2000-12-05  Alexander Larsson  <alexl@redhat.com>
7897
7898         * gdk/linux-fb/gdkcolor-fb.c:
7899         More complete colormap handling. Now GdkRGB work in 8 bpp modes.
7900
7901         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_image):
7902         Must set colormap.
7903         
7904 Tue Dec  5 13:17:53 GMT 2000  Tony Gale <gale@gtk.org>
7905
7906         * docs/tutorial/gtk-tut.sgml: DND updates
7907
7908 2000-12-05  Alexander Larsson  <alla@lysator.liu.se>
7909
7910         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
7911         Remove old debug g_warning().
7912         (gdk_fb_draw_drawable): The src argument can be either a wrapper
7913         or an implementation, just pass the implementation to draw_drawable_2.
7914         
7915         * gdk/linux-fb/gdkprivate-fb.h:
7916         Added GDK_IS_DRAWABLE_IMPL_FBDATA()
7917
7918         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
7919         clear and invalidate area when window is destroyed.
7920         (send_map_events): Remove old commented out code.
7921
7922 2000-12-05  Alexander Larsson  <alexl@redhat.com>
7923
7924         * gdk/linux-fb/gdkpango-fb.c:
7925         Use italic instead of oblique in font aliases.
7926         
7927         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic,
7928         _gdk_fb_gc_calc_state): Support GDK_XOR, add g_warning for
7929         other unsupported functions.
7930
7931 2000-12-04  Havoc Pennington  <hp@redhat.com>
7932
7933         * gtk/gtkpaned.c (gtk_paned_expose): fix this to be sane
7934
7935         * gtk/gtkvpaned.c (gtk_vpaned_expose): Add an expose handler
7936
7937         * gtk/gtkhpaned.c (gtk_hpaned_expose): Add an expose handler
7938
7939         * gtk/gtknotebook.c (gtk_notebook_draw_tab): put in a temporary 
7940         hack to avoid infinite loops (synthetic expose event) - 
7941         Owen has more appropriate fixes in a branch he'll check in later.
7942
7943         * gtk/gtktextiter.c (gtk_text_iter_ends_line): handle paragraph
7944         separator, CR, and CRLF as line ends
7945
7946         * gtk/gtktextbtree.c (gtk_text_btree_insert): on insertion, break
7947         into lines using pango_find_paragraph_boundary(); other bits of
7948         the widget are still going to be broken if the boundary isn't '\n'
7949         though
7950
7951 2000-12-04  Alexander Larsson  <alexl@redhat.com>
7952
7953         * gdk/linux-fb/gdkfont-fb.c (gdk_text_width): Divide size by 2, not
7954         multiply.
7955
7956         * gdk/linux-fb/gdkpango-fb.c:
7957         Copied some 26.6 scaling macros from pango to clean up the rounding.
7958         (pango_fb_font_get_glyph_info): Correct sign on x value.
7959
7960         * gdk/linux-fb/gdkprivate-fb.h:
7961         Removed unreferenced external functions.
7962
7963         * modules/linux-fb/Makefile.am: Use ` instead of '.
7964
7965         * modules/linux-fb/basic.c:
7966         Remove dead code. In particular the dummy lang engine which broke all
7967         pango layouts in GtkFB. Don't include tables-big.i anymore.
7968
7969         * modules/linux-fb/tables-big.i:
7970         Upgrade to latest version from pango. Left for reference, basic_ranges
7971         moved to basic.c.
7972         
7973 2000-12-04  Havoc Pennington  <hp@redhat.com>
7974
7975         Fix bugs Alex found:
7976         
7977         * gtk/gtktooltips.c (gtk_tooltips_force_window): nuke connection
7978         to "draw"
7979
7980         * gtk/gtkdnd.c (gtk_drag_highlight): nuke connection to "draw"
7981
7982         * gtk/gtkcolorsel.c (palette_new): nuke connection to "draw"
7983
7984         * gtk/gtklistitem.c (gtk_list_item_expose): Put the old _draw() 
7985         implementation in here, apparently the expose() implementation was
7986         dead code.
7987
7988 2000-12-04  Alexander Larsson  <alexl@redhat.com>
7989
7990         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
7991         Return positive descent.
7992
7993 2000-12-02  Havoc Pennington  <hp@pobox.com>
7994
7995         * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove "draw" virtual
7996         method and signal
7997         
7998         * gtk/gtkwidget.c (gtk_widget_draw): Now just queues a draw then
7999         calls gdk_window_process_updates() to push the exposes through
8000         (gtk_widget_class_init): No more draw signal, no
8001         gtk_widget_real_draw()  
8002         
8003         * gtk/gtkbin.c (gtk_bin_draw): remove
8004
8005         * gtk/gtkbox.c (gtk_box_draw): remove
8006
8007         * gtk/gtkbutton.c (gtk_button_draw): remove
8008
8009         * gtk/gtkcalendar.c (gtk_calendar_draw): remove
8010
8011         * gtk/gtkcheckbutton.c (gtk_check_button_draw): remove
8012
8013         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_draw): remove
8014
8015         * gtk/gtkclist.c (gtk_clist_draw): remove
8016
8017         * gtk/gtkentry.c (gtk_entry_draw): remove
8018
8019         * gtk/gtkeventbox.c (gtk_event_box_draw): remove
8020
8021         * gtk/gtkfixed.c (gtk_fixed_draw): remove
8022
8023         * gtk/gtkframe.c (gtk_frame_draw): remove
8024
8025         * gtk/gtkhandlebox.c (gtk_handle_box_draw): remove
8026
8027         * gtk/gtkhpaned.c (gtk_hpaned_draw): remove
8028
8029         * gtk/gtklayout.c (gtk_layout_draw): remove
8030
8031         * gtk/gtklist.c (gtk_list_draw): remove
8032
8033         * gtk/gtklistitem.c (gtk_list_item_draw): remove
8034
8035         * gtk/gtkmenu.c (gtk_menu_draw): remove
8036
8037         * gtk/gtkmenubar.c (gtk_menu_bar_draw): remove
8038
8039         * gtk/gtkmenuitem.c (gtk_menu_item_draw): remove
8040
8041         * gtk/gtknotebook.c (gtk_notebook_draw): remove
8042
8043         * gtk/gtkoptionmenu.c (gtk_option_menu_draw): remove
8044
8045         * gtk/gtkpacker.c (gtk_packer_draw): remove
8046
8047         * gtk/gtkrange.c (gtk_range_draw): remove
8048
8049         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_draw): remove
8050
8051         * gtk/gtkspinbutton.c (gtk_spin_button_draw): remove
8052
8053         * gtk/gtktable.c (gtk_table_draw): remove
8054
8055         * gtk/gtktearoffmenuitem.c (gtk_tearoff_menu_item_draw): remove
8056
8057         * gtk/gtktext.c (gtk_text_draw): remove
8058
8059         * gtk/gtktextview.c (gtk_text_view_draw): remove
8060
8061         * gtk/gtktogglebutton.c (gtk_toggle_button_draw): remove
8062
8063         * gtk/gtktoolbar.c (gtk_toolbar_draw): remove
8064
8065         * gtk/gtktree.c (gtk_tree_draw): remove
8066
8067         * gtk/gtktreeitem.c (gtk_tree_item_draw): remove
8068
8069         * gtk/gtktreeview.c (gtk_tree_view_draw): remove
8070
8071         * gtk/gtkviewport.c (gtk_viewport_draw): remove
8072
8073         * gtk/gtkvpaned.c (gtk_vpaned_draw): remove
8074
8075         * gtk/gtkvscale.c (gtk_vscale_draw): remove
8076
8077         * gtk/gtkwindow.c (gtk_window_draw): remove
8078
8079 2000-20-01  Anders Carlsson  <andersca@gnu.org>
8080
8081         * gtk/gtktogglebutton.c (gtk_toggle_button_draw): Fix bug when
8082         a GtkToggleButton is both insensitive and active, it was being
8083         drawn by the GtkButton draw handler which doesn't check the
8084         state. Now it's calling gtk_toggle_button_paint instead.
8085         
8086 2000-12-01  Havoc Pennington  <hp@redhat.com>
8087
8088         * gtk/gtktextdisplay.c (gtk_text_layout_draw): don't create
8089         dangling pointers to the appearance attributes from the 
8090         line display
8091
8092         * gdk/gdkdraw.c (gdk_drawable_get_image): allow negative
8093         width/height to mean "full width/height of drawable"
8094
8095         * gtk/gtktextview.h, gtk/gtktextview.c: Implement double/triple
8096         click to select word/line
8097         
8098         * gtk/gtktextiter.c (test_log_attrs): include paragraph delimiters 
8099         when getting log attrs. Get a slice, so that pixmaps and stuff
8100         are properly handled.
8101
8102         * gtk/gtktextbuffer.c (paste): Fix pasting to work properly if you
8103         paste into the selection (replaces selection now, previously
8104         crashed or added to selection). Reveals longstanding btree bug -
8105         select multiple lines, middle-click on the selection, boom. This
8106         isn't related to my changes though.
8107
8108         * gtk/gtkentry.c (gtk_entry_move_forward_word): Update to reflect
8109         PangoLogAttrs changes
8110         (gtk_entry_move_backward_word): ditto
8111
8112         * gtk/gtktextlayout.h, gtk/gtktextlayout.c: Make the iter motion
8113         functions return bool whether the iter moved onto a
8114         dereferenceable position.
8115  
8116         * gtk/gtktextview.h, gtk/gtktextview.c: Add a bunch of public
8117         functions for motion in terms of display lines.
8118
8119         * gtk/gtktextmark.c (gtk_text_mark_get_buffer): Add function to
8120         get the buffer a mark is inside
8121         
8122 2000-12-01  Alexander Larsson  <alexl@redhat.com>
8123
8124         * gdk/linux-fb/Makefile.am:
8125         * modules/linux-fb/Makefile.am:
8126         Freetype 2 final uses freetype-config
8127
8128         * gdk/linux-fb/gdkpango-fb.c:
8129         Upgrade to use Freetype 2 final.
8130         More flexible support for font aliases, this also fixes a bug with
8131         GtkFontSelector, as the aliases must be visible in the font/family list,
8132         or GtkFontSelector reads uninitialized memory.
8133
8134 2000-11-30 Hidetoshi Tajima  <tajima@eng.sun.com>
8135
8136         * modules/input/gtkimcontextxim.c (setup_im): Add NULL argument to
8137         XGetIMValues to properly terminate variable argument list, and do
8138         NULL return check for ic_values and xim_styles.
8139
8140         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset):
8141         Restore preedit state after XmbResetIC().
8142         
8143         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_get_ic):
8144         XvaCreateNestedList() should take XvaNestedList, but not
8145         XvaNestedList*.
8146
8147         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset,
8148         preedit_draw_callback, preedit_caret_callback): Match
8149         "preedit-changed" signal name to "preedit_changed" to be
8150         consistent to the spec.
8151
8152         * gtk/gtkimcontextsimple.c (check_table):
8153         Match "preedit-changed" to "preedit_changed" to be consistent
8154         to the spec.
8155
8156 Thu Nov 30 23:03:04 2000  Owen Taylor  <otaylor@redhat.com>
8157
8158         * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Properly handle
8159         gc->clip_region == NULL>
8160
8161 2000-11-30  Tor Lillqvist  <tml@iki.fi>
8162
8163         Changes by Hans Breuer:
8164         
8165         * gdk/win32/gdkwindow-win32.c (gdk_window_set_geometry_hints):
8166         Dont't use negative width and height as max_hints. This fixes
8167         Owen's recent testgtk changes for win32.
8168
8169         * gdk/win32/gdkgc-win32.c (gdk_win32_hdc_get,
8170         gdk_win32_hdc_release): These are exported and may be called with
8171         other drawable types than our GdkDrawableImplWin32 (?).
8172
8173         * gdk/gdkwindow.c: Backing store appears to work on Windows now,
8174         so always #define USE_BACKING_STORE.
8175
8176         * gtk/gtktextdisplay.c (render_layout_line): Use g_print instead
8177         of printf for debugging output.
8178
8179         * gtk/gtktextlayout.c (allocate_child_widgets): Ditto.
8180         
8181         * gtk/gtktextview.c (gtk_text_view_child_allocated): Ditto.
8182
8183         * gtk/gtkmain.h (GTKMAIN_C_VAR): Win32 fix for dllimport
8184         declaration.
8185
8186         * gtk/gtktexttypes.h: Ditto.
8187
8188         * gtk/gtklabel.c (gtk_label_set_markup_with_accel): Return a value
8189         (GDK_VoidSymbol) also if in case of arg check failure.
8190
8191         * gtk/gtkimcontextsimple.c
8192         (gtk_im_context_simple_get_preedit_string): Don't assign cursor
8193         position to the pointer, but to the variable it points to.
8194
8195         * gtk/makefile.msc.in (DEFINES): Define GTK_VERSION.
8196
8197         * gtk/gtk.def: Updates.
8198
8199 2000-11-29  Elliot Lee  <sopwith@redhat.com>
8200
8201         * gtk/gtkmodelsimple.c: Inherits from GTK_TYPE_OBJECT, not
8202         GTK_TYPE_TREE_MODEL.
8203
8204 2000-11-29  Alexander Larsson  <alexl@redhat.com>
8205
8206         * gdk/linux-fb/gdkfont-fb.c (gdk_font_from_description):
8207         Set the size of the font from the description.
8208         (gdk_text_width): Gross hack that calculates the width
8209         of text by text_length * size/2. This is necessary because
8210         GtkLabel does some ugly gtk_string_width call to calculate
8211         an good size.
8212         (linux-fb/gdkprivate-fb.h): Removed unused field FT_Face.
8213
8214 Wed Nov 29 13:39:19 GMT 2000  Tony Gale <gale@gtk.org>
8215
8216         * docs/tutorial/gtk-tut.sgml: DND updates
8217
8218 2000-11-29  Alexander Larsson  <alexl@redhat.com>
8219
8220         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_clear_area):
8221         If you pass width or height == 0 to gdk_window_clear_area they
8222         should be calculated from the window size.
8223
8224 2000-11-29  Alexander Larsson  <alexl@redhat.com>
8225
8226         * gdk/linux-fb/gdkinput-ps2.c (move_pointer): If there is
8227         a grab, but no grab-cursor, use the cursor from the grabbed
8228         window. (gdk_fb_window_send_crossing_events): Send normal
8229         enter/leave notifications if grab and owner_events == TRUE.
8230
8231 2000-11-29  Alexander Larsson  <alexl@redhat.com>
8232
8233         * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
8234         Do implicit button grabs, even if the window doesn't
8235         want the event.
8236         (gdk_fb_window_send_crossing_events): If there is a
8237         grab, only the grabbed window gets normal enter/leave
8238         notifications. On ungrab go from grabbed window to current.
8239         Don't send any notification to b when propagating from c -> b.
8240         If setting a grab on window, don't set prev_window.
8241         (handle_mouse_input): Send enter/leave events to the window the
8242         mouse is over, not the grabbed one.
8243         
8244 2000-11-28  Elliot Lee  <sopwith@redhat.com>
8245
8246         * gdk/gdkregion-generic.c: Zap warning.
8247         * modules/input/Makefile.am: Only build im-xim if USE_X11 is enabled
8248         * gtk/gtkrc.c: s/strcpy/memcpy/ to save a few nanoseconds.
8249
8250 2000-11-28  Alexander Larsson  <alla@lysator.liu.se>
8251
8252         * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
8253         The cursor should be hidden if it is part of either the
8254         source or destination region. Not only if it is in both.
8255         (gdk_window_set_transient_for): Silence warnings.
8256
8257 2000-11-28  Alexander Larsson  <alexl@redhat.com>
8258
8259         * gdk/linux-fb/mifillarc.c (miFillArcSliceSetup):
8260         The default mode in X is Pie Arcs, therefore that is
8261         what Gtk+ uses.
8262
8263 2000-11-28  Alexander Larsson  <alexl@redhat.com>
8264
8265         * gdk/linux-fb/gdkinput-ps2.c:
8266         Implement correct EnterNotify/LeaveNotify:
8267         (gdk_fb_window_send_crossing_events): New function that sends
8268         all GdkCrossingEvents from the last mouse-window to the specified
8269         destination.
8270         (gdk_fb_window_visibility_crossing): Removed function.
8271         (handle_mouse_input): Use gdk_fb_window_send_crossing_events()
8272         (send_button_event, gdk_fb_cursor_reset): Use gdk_window_at_pointer
8273         instead of gdk_window_get_pointer() for better readability.
8274
8275         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab,
8276         gdk_fb_pointer_ungrab): Use gdk_fb_window_send_crossing_events.
8277
8278         * gdk/linux-fb/gdkprivate-fb.h:
8279         removed gdk_fb_window_visibility_crossing, added
8280         gdk_fb_window_send_crossing_events and gdk_fb_find_common_ancestor.
8281
8282         gdk/linux-fb/gdkwindow-fb.c (gdk_fb_find_common_ancestor):
8283         New function that finds the least common ancestor of two windows.
8284         (gdk_window_show, gdk_window_hide):
8285         Use gdk_fb_window_send_crossing_events.
8286         (gdk_fb_window_move_resize): Send configure events to toplevel
8287         windows. Use gdk_fb_window_send_crossing_events.
8288
8289 2000-11-27  Havoc Pennington  <hp@redhat.com>
8290
8291         * gtk/gtkprivate.h (enum): Remove a trailing comma
8292
8293 2000-11-27  Federico Mena Quintero  <federico@helixcode.com>
8294
8295         * gtk/gtkspinbutton.c (gtk_spin_button_set_adjustment): Connect to
8296         the "changed" callback of the adjustment.  We need to redraw the
8297         spin button's arrows when the adjustment's range changes.
8298         (adjustment_changed_cb): Draw the arrows.
8299         (gtk_spin_button_value_changed): Draw the arrows.
8300
8301 2000-11-23  Alexander Larsson  <alexl@redhat.com>
8302
8303         * gdk/linux-fb/gdkselection-fb.c:
8304         Initial selection implementation.
8305
8306         * gtk/gtkselection.c:
8307         if GDK_WINDOWING_FB defined, include linux-fb/gdkfb.h and look up
8308         requestor in gtk_selection_request.
8309         
8310         * gdk/linux-fb/gdkfb.h, gdk/linux-fb/gdkglobals-fb.c:
8311         Added gdk_selection_property atom.
8312
8313         * gdk/linux-fb/gdkprivate-fb.h:
8314         Export _gdk_selection_window_destroyed.
8315         Removed mask_off_x/y from GdkCursorPrivateFB.
8316         Removed hbearing, added top, left to PangoFBGlyphInfo.
8317
8318         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
8319         Call _gdk_selection_window_destroyed
8320         (_gdk_windowing_window_init): Don't call gdk_cursor_new() before
8321         the root window has been created.
8322         (static_dx_hack, static_dy_hack, compare_draw_rects,
8323         gdk_fb_window_move_resize): Remove unnecessary sort of rectangles
8324         in region. They are already sorted. Instead just traverse them in
8325         reverse if draw_direction < 0.
8326         
8327         * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
8328         Double-clicks must be sent after the normal button_press.
8329         (gdk_fb_cursor_unhide): Remove usage of mask_off_x/y. Clean up.
8330         
8331         * gdk/linux-fb/gdkgeometry-fb.c (gdk_window_scroll):
8332         Pass _gdk_fb_screen_gc instead of NULL.
8333
8334         * gdk/linux-fb/gdkmain-fb.c (_gdk_windowing_init_check):
8335         Initialize gdk_selection_property.
8336         (gdk_event_make): Remove unused code.
8337
8338         * gdk/linux-fb/gdkcursor-fb.c:
8339         Make the pixmap for the cursor the same size as the mask. Also remove
8340         the mask_off_x/y fields in GdkCursorPrivateFB and combine
8341         _gdk_cursor_new_from_pixmap() and gdk_cursor_new_from_pixmap()
8342         Now the whole cursor is visible.
8343
8344         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
8345         Fix bug where xdest+height instead of ydest+height was used
8346         to calculate if the source and dest overlapped. This fixes the
8347         redraw bug when the main window in testgtk was scrolled when
8348         partially covered by a tall window.
8349         Copy rectangles in region in order depending on draw_direction.
8350         Also moved the draw_direction flipping of start_y and end_y into
8351         the gc functions, as this might not be what all of them want.
8352         (gdk_fb_draw_lines): Support dashed lines.
8353         (gdk_fb_draw_glyphs): Clean up glyph placement. Also fix positioning
8354         so that the text is positioned correctly (was 1 pixel high).
8355
8356         gdk/linux-fb/gdkgc-fb.c:
8357         Initialize cap_style to GTK_CAP_BUTT. This fixes a problem where
8358         all lines were drawn a pixel to short. Also checked the default of
8359         the rest of the values, and they're the same as X now.
8360
8361         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_glyph_info):
8362         Clean up pixel positioning of the glyphs. Just use bgy->top and
8363         bgy->left. Also used PANGO_PIXEL where appropriate and added 0.5
8364         to all divisions to get correct rounding behaviour.
8365
8366         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_draw_drawable_generic,
8367         gdk_fb_draw_drawable_memmove, gdk_fb_draw_drawable_aa_24):
8368         Moved start_y/end_y flip into draw_drawable implementations.
8369         Flip also x rendering when draw_direction < 0.
8370         Remove unneccesary multiply with draw_direction.
8371
8372 Wed Nov 22 14:11:19 GMT 2000  Tony Gale <gale@gtk.org>
8373
8374         * docs/tutorial/gtk-tut.sgml:
8375           - get rid of gtk_toggle_button_toggled FUD
8376           - start DND section - needs work - based on:
8377                 http://wolfpack.twu.net/docs/gtkdnd/
8378
8379 2000-11-22  Alexander Larsson  <alexl@redhat.com>
8380
8381         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
8382         Correct calculation of font metrics. Now GtkEntrys have sane
8383         size.
8384
8385 2000-11-22  Alexander Larsson  <alexl@redhat.com>
8386
8387         * gdk/gdktypes.h:
8388         Add new type GdkSpan
8389         
8390         * docs/reference/gdk/gdk-sections.txt,
8391         docs/reference/gdk/tmpl/regions.sgml, gdk/gdkregion-generic.c,
8392         gdk/gdkregion.h:
8393         Implement and document gdk_region_spans_intersect_foreach.
8394
8395         * gdk/linux-fb/Makefile.am, gdk/linux-fb/gdkrender-fb.c:
8396         Add new file gdkrender-fb.c which contains all core
8397         rendering code.
8398         Add gdk_fb_fill_rectangle_generic (old rectangle code) and
8399         gdk_fb_fill_rectangle_simple_16, gdk_fb_fill_rectangle_simple_32
8400         (optimized rectangle fillers).
8401
8402         * gdk/linux-fb/gdkdrawable-fb2.c:
8403         Move all rendering code to gdkrender-fb.c.
8404         Change from using GdkRectangles and GdkSegments for spans to GdkSpan.
8405         Use the new span intersection functions in gdk_fb_fill_spans.
8406         gdk_fb_draw_rectangle() clips filled rectangles and calls
8407         gc->fill_rectangle with the result.
8408         gdk_fb_fill_spans() gets extra argument "sorted".
8409
8410         * gdk/linux-fb/gdkevents-fb.c:
8411         Remove unused includes and defines.
8412         New function gdk_fb_get_time() to get correct time for events.
8413
8414         * gdk/linux-fb/gdkinput-ps2.c:
8415         Use gdk method of generating multiple-clicks (gdk_event_button_generate)
8416         Make sure to set the time of all events.
8417
8418         * gdk/linux-fb/gdkmain-fb.c:
8419         Use gdk_fb_get_time ().
8420
8421         * gdk/linux-fb/gdkprivate-fb.h:
8422         New virtual GC calls: fill_span & fill_rectangle.
8423         Export gdk_fb_get_time().
8424         gdk_fb_fill_spans() gets extra argument "sorted".
8425
8426         * gdk/linux-fb/mi*.c:
8427         Use GdkSpan instead of GdkRectangle.
8428         Pass correct sorted to gdk_fb_fill_spans. (sorted value taken
8429         from XFree 4 source)
8430         
8431 2000-11-22    <jrb@redhat.com>
8432
8433         * gtk/gtktreeview.c (gtk_tree_view_calc_size): It's amazing what
8434         reversing the order in an if statement will do.  Doing so managed
8435         to make the treemodelsort half work.  Other half will follow after
8436         I get the insert function fully fixed.
8437
8438 2000-11-21  Elliot Lee  <sopwith@redhat.com>
8439         * gtk/gtkmenushell.h: GdkEventButton->button can occupy significantly
8440         more than 2 bits. Besides, I need to implement an evil hack. :)
8441
8442 Tue Nov 21 14:17:51 GMT 2000  Tony Gale <gale@gtk.org>
8443
8444         * docs/tutorial/gtk-tut.sgml: minor corrections
8445
8446 2000-11-20  Jonathan Blandford <jrb@redhat.com>
8447         * gtk/gtktreemodelsort.h: Add convertion functions to let you
8448           convert to and from relative path's and iters.
8449
8450         * gtk/treestoretest.c: move to having a sorted/unsorted view.  Start
8451           testing sorting functions a bit better.  Currently broken -- will
8452           fix in morning.
8453
8454 2000-11-20  Havoc Pennington  <hp@redhat.com>
8455
8456         * gtk/gtkwidget.c: Documented a bunch of functions in here
8457         (gtk_widget_realize): Warn if you try to realize
8458         a widget with no parent that isn't a toplevel
8459         (gtk_widget_intersect): return a gboolean
8460
8461 2000-11-20  Havoc Pennington  <hp@redhat.com>
8462
8463         * gtk/gtktextview.c, gtk/gtktextlayout.c, gtk/gtktextchild.c,
8464         gtk/testtext.c: Semi-finish widget embedding. Need guffaw
8465         scrolling to be implemented in GDK to finish. Also, right now
8466         we just size_allocate all children on every layout change,
8467         which is pretty lame. Test commented out of testtext.c, 
8468         until it works better.
8469
8470 2000-11-20  Alexander Larsson  <alla@lysator.liu.se>
8471
8472         * gdk/linux-fb/gdkdrawable-fb2.c:
8473         Removed unused arguments from gdk_fb_drawable_get_pixel().
8474
8475         * gdk/linux-fb/gdkinput-ps2.c (handle_input_ps2):
8476         Renamed fidur specific mouse packet data in MouseDevice to
8477         generic. Used it in ps2 mouse handling code to avoid blocking
8478         reads.
8479
8480 Sat Nov 18 18:00:17 2000  Jonathan Blandford  <jrb@redhat.com>
8481
8482         * demos/gtk-demo/main.c: Changed to have the list become
8483         non-italic when the demo window is destroyed through an external
8484         event (like a close button).  Doing so found three bugs in the
8485         widget.
8486
8487         * demos/gtk-demo/*.c (do_*): Changed to return the toplevel window.
8488
8489         * gtk/gtkliststore.c (gtk_list_store_set_cell): emit "change" when
8490         we actually set the cell.
8491
8492         * gtk/gtktreestore.c (gtk_tree_store_set_cell): ditto
8493
8494         * gtk/gtktreeselection.c (gtk_tree_selection_real_select_node):
8495         free a leaked path.  Thanks memprof.
8496
8497 Sat Nov 18 11:58:17 2000  Owen Taylor  <otaylor@redhat.com>
8498
8499         * gdk/gdkrgb.c (gdk_rgb_allocate_images): Fix 
8500         off-by-one error when destroying allocated segments
8501         on failure. (Elliot)
8502
8503 Sat Nov 18 11:45:09 2000  Owen Taylor  <otaylor@redhat.com>
8504
8505         * gtk/gtkcalendar.c: Patch from ChiDeok Hwang to fix
8506         memleaks found by Evan Martin.
8507
8508 Fri Nov 17 20:14:20 2000  Owen Taylor  <otaylor@redhat.com>
8509
8510         * Released 1.3.2
8511         
8512         * NEWS: Updates for 1.3.2
8513
8514 2000-11-17  Tor Lillqvist  <tml@iki.fi>
8515
8516         * gdk/gdkevents.h: Add comment that GdkXEvent isn't only for XEvent,
8517         but in general for window system specific events.
8518
8519         * gtk/gtk.def
8520         * gtk/makefile.mingw.in
8521         * gtk/makefile.msc.in: Update.
8522         
8523         * gtk/gtktexttypes.h: Mark variables for export/import from DLL.
8524
8525 Thu Nov 16 16:11:39 2000  Owen Taylor  <otaylor@redhat.com>
8526
8527         * gtk/Makefile.am (EXTRA_DIST): Do not, in any circumstances,
8528         distribute gtk.immodules.
8529
8530         * gtk/Makefile.am (install-data-local): Don't install the
8531         gtk.immodules file created for the uninstalled modules;
8532         instead run gtk-query-immodules after install
8533
8534 Wed Nov 15 21:51:31 2000  Owen Taylor  <otaylor@redhat.com>
8535
8536         * modules/input/Makefile.am (im_xim_la_LDFLAGS): Point
8537         -rpath to the right install location.
8538
8539         * modules/input/Makefile.am (im_inuktitut_la_LDFLAGS): Remove
8540         -export-dynamic.
8541
8542         * gtk/gtkthemes.c (gtk_theme_engine_get): Set engine->name
8543         properly.
8544
8545 2000-11-15  Havoc Pennington  <hp@pobox.com>
8546
8547         * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): Apply
8548         patch from Mikael Hermansson to temporarily stop blinking while
8549         the user is using the keyboard to type or navigate. 
8550
8551         Also, when blinking, stay on for longer than we stay off. Also,
8552         return from start_cursor_blink if !cursor_visible, to save
8553         checking that flag all over the place before we call
8554         start_cursor_blink.
8555
8556 Thu Nov 16 01:25:51 2000  Robert Brady  <robert@suse.co.uk>
8557
8558         * gtk/gtkrc.*: Remove the locale-specific gtkrc's, as they
8559         only contain a "fontset" line, which is now ignored.
8560
8561         * gtk/gtkentry.c (gtk_entry_button_release): Make 
8562         double-click-to-select-word work.
8563         
8564 Wed Nov 15 20:16:54 2000  Owen Taylor  <otaylor@redhat.com>
8565
8566         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): 
8567         Don't move back one char when we are actually at the end of the 
8568         paragraph.
8569
8570 2000-11-15  Robert Brady  <robert@suse.co.uk>
8571
8572         * modules/input/iminuktitut.c (inuktitut_compose_seqs): 
8573         'o' < 'p'.
8574         
8575         * gtk/gtkmain.c: s/CODSET/CODESET/, include <libintl.h> for
8576         bind_textdomain_codeset.
8577
8578         (gtk_init_check): Make the warning about translating default:LTR
8579         sterner.
8580         
8581 Wed Nov 15 18:39:40 2000  Owen Taylor  <otaylor@redhat.com>
8582
8583         * **/Makefile.am : remove unecessary rules for win32-specific
8584         config-substituted targets. If you want these rules, use
8585         --enable-maintainer-mode (called automatically by autogen.sh).
8586         Stops a lot of unneccessary make-time warnings.
8587
8588         * gtk/gtktext{layout,display}.c: Factor in total width as
8589         well as screen when figuring alignment for word-wrap as well as
8590         no wrap; this is necessary to handle lines that cannot be wrapped
8591         at all.
8592
8593 2000-11-15  Havoc Pennington  <hp@redhat.com>
8594
8595         * gtk/testtext.c: Implement essential color cycling feature
8596
8597 2000-11-15  Havoc Pennington  <hp@redhat.com>
8598
8599         * gtk/gtktextview.c (changed_handler): Invalidate the side windows
8600         when we invalidate the main window.
8601
8602         * gtk/testtext.c (create_view): Get rid of text_changed_callback,
8603         GtkTextView will now invalidate the side windows for us when text
8604         changes.
8605
8606 Wed Nov 15 16:02:20 2000  Owen Taylor  <otaylor@redhat.com>
8607
8608         * gtk/gtktextview.c (changed_handler): Call scroll_calc_now()
8609         unconditionally, since we may need to update the horizontal
8610         scrollbars even if the height didn't change.
8611
8612         * gtk/gtktextlayout.c (add_preedit_attrs): Always get
8613         the extra attrs, since some of them affect size.
8614
8615         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Factor in
8616         x_offset correctly.
8617
8618 2000-11-15  Havoc Pennington  <hp@redhat.com>
8619
8620         * gtk/gtktextlayout.c (set_para_values): If indent is negative,
8621         don't move the first line out into the margin, instead move the
8622         whole paragraph in order to make space for the first line within 
8623         the margin
8624
8625 2000-11-15  Havoc Pennington  <hp@redhat.com>
8626
8627         * gtk/gtktextview.c (changed_handler): offset redraw rect by
8628         xoffset in addition to yoffset, so horizontal scrolling doesn't
8629         break redraws
8630
8631 2000-11-15  Havoc Pennington  <hp@redhat.com>
8632
8633         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Remove extra pixel
8634         from the cursor
8635         (render_layout_line): fix reversed test that caused weird
8636         underlines to get drawn
8637
8638 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
8639
8640         * gdk/linux-fb/gdkprivate-fb.h:
8641         Fix debug macros.
8642         
8643 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
8644
8645         * gdk/linux-fb/gdkprivate-fb.h:
8646         Added virtual functions set_pixel, get_color,
8647         fill_span and draw_drawable to the GC.
8648         Added global _gdk_fb_screen_gc to use instead of
8649         NULL when drawing to the screen.
8650         Added _gdk_fb_gc_calc_state() prototype.
8651
8652         * gdk/linux-fb/gdkgc-fb.c:
8653         Call _gdk_fb_gc_calc_state() on any gc state change.
8654
8655         * gdk/linux-fb/gdkglobals-fb.c:
8656         Add _gdk_fb_screen_gc
8657                 
8658         * gdk/linux-fb/gdkdrawable-fb2.c:
8659         _gdk_fb_gc_calc_state() calculates best functions
8660         for the GC state and depth.
8661         Moved bpp specialized code to separate functions.
8662         Added optimized 24 bpp AA draw_drawable.
8663
8664         * gdk/linux-fb/gdkevents-fb.c:
8665         Silence gcc warning.
8666
8667         * gdk/linux-fb/gdkimage-fb.c:
8668         Use _gdk_fb_screen_gc
8669
8670         * gdk/linux-fb/gdkwindow-fb.c:
8671         Init and use _gdk_fb_screen_gc
8672
8673         * gdk/linux-fb/mitypes.h:
8674         Remove unused types.
8675
8676 2000-11-14  Havoc Pennington  <hp@pobox.com>
8677
8678         * gtk/gtktextlayout.c (add_cursor): use PANGO_PIXELS() to convert
8679         to pixels
8680
8681 2000-11-14  Havoc Pennington  <hp@pobox.com>
8682
8683         * gtk/testtextbuffer.c (fill_buffer): change "offset" to "rise"
8684
8685         * gtk/gtktexttypes.h (GTK_TEXT_UNKNOWN_CHAR): Add macro for
8686         unknown char, no real reason we were using a variable. 
8687         Remove gtk_text_unknown_char variable. Fix all the text widget
8688         files accordingly.
8689
8690         * gtk/gtktexttypes.c: Change "unknown character" to 0xFFFC, 
8691         since the Unicode spec seems to prefer that character for our
8692         purposes.
8693
8694 Wed Nov 15 02:18:01 2000  Robert Brady  <robert@suse.co.uk>
8695
8696         * gtk/gtkrc.c (gtk_rc_get_im_module_file): The return 
8697         value of g_getenv() isn't freeable, so g_strdup it.
8698
8699         * modules/input/inuktitut.c: Inuktitut input method.
8700
8701         * modules/input/Makefile.am: Build this.
8702         
8703 2000-11-14  Elliot Lee  <sopwith@redhat.com>
8704
8705         * gtk/Makefile.am: Install gtk.immodules, needed for operation
8706         of gtk programs.
8707
8708 Tue Nov 14 20:13:06 2000  Owen Taylor  <otaylor@redhat.com>
8709
8710         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): Fix
8711         reversed > that was causing Home to go to end of previous line.
8712
8713         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_filter_keypress): Ignore
8714         modified-keypresses (leave for bindings.)
8715
8716         * modules/input/Makefile.am: Remove useless -export-dynamic
8717         from module LDFLAGS.
8718
8719 2000-11-14  Havoc Pennington  <hp@redhat.com>
8720
8721         * gdk/gdkpango.c (gdk_draw_layout_line): Draw underlines one pixel
8722         higher.
8723
8724         * gtk/gtktextdisplay.c (render_layout_line): Take rise into
8725         account. Also, render rise, underline, background, etc. for
8726         pixbufs as well as text. Also, draw underlines one pixel higher.
8727
8728         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): Add a
8729         PangoAttribute for the rise, so it gets drawn properly. Also,
8730         add the GtkTextAppearance attribute for pixbuf/widget segments
8731         as well; we should go ahead and have rise, underline, background,
8732         stipple work for those
8733
8734         * gtk/gtktexttag.c: Rename "offset" property to "rise" to match
8735         Pango
8736
8737 2000-11-15  Tor Lillqvist  <tml@iki.fi>
8738
8739         * gtk/makefile.{mingw,msc}.in (gtk_OBJECTS): Add new objects.
8740
8741         * gtk/gtk.def: Update.
8742
8743         * gtk/gtkrc.c: Can't check for G_OS_WIN32 until glib.h has been
8744         included.
8745         (gtk_rc_get_im_module_file): Use run-time installation directory
8746         on Win32.
8747
8748         * gdk/win32/rc/gdk.rc: Remove.
8749         * gdk/win32/rc/gdk.rc.in: New file.
8750         * gdk/win32/rc/Makefile.am: New file
8751         * gdk/win32/Makefile.am: Corresponding changes.
8752
8753         * gtk/gtk.rc: Remove.
8754         * gtk/gtk-win32.rc.in: New file.
8755         * gtk/Makefile.am: Corresponding changes.
8756
8757         * configure.in: Corresponding changes.
8758
8759         * gtk/gtkcompat.h.win32: Remove, useless. A distribution already
8760         has a built gtkcompat.h. Developers using CVS code on Win32 can
8761         hand-edit it from gtkcompat.h.in.
8762
8763         * gtk/makefile.{mingw,msc}.in: Correspondingly don't try to make
8764         gtkcompat.h from gtkcompat.h.win32.
8765
8766 2000-11-14  Havoc Pennington  <hp@redhat.com>
8767
8768         * gtk/gtktextview.c (gtk_text_view_drag_motion): Fix drag-and-drop
8769         to default to GDK_ACTION_MOVE if the drag is within a single
8770         widget. Defaults to GDK_ACTION_COPY between widgets.
8771
8772 Mon Nov 13 14:43:48 2000  Owen Taylor  <otaylor@redhat.com>
8773
8774         * demos/Makefile.am (test-inline-pixbufs.h): Fix srcdir != builddir
8775
8776         * gtk/Makefile.am (INCLUDES): Add -I$(builddir)/gtk
8777
8778         * gtk/stock-icons/Makefile.am (gtkstockpixbufs.h): Handles
8779         srcdir != builddir
8780
8781         * modules/input/Makefile.am (INCLUDES): add $(top_srcdir)/gdk
8782
8783         * configure.in (GTK_VERSION): Up to 1.3.2
8784
8785         * modules/input/Makefile.am (im_xim_la_SOURCES): Add 
8786         gtkimcontextxim.h
8787
8788         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): Add
8789         missing doc comment.
8790
8791 2000-11-14  Alexander Larsson  <alexl@redhat.com>
8792
8793         * modules/linux-fb/basic.c:
8794         Use the glib iconv wrappers.
8795
8796 2000-11-13  Havoc Pennington  <hp@pobox.com>
8797
8798         * demos/gtk-demo/textview.c: spiff up the demo a bit; reveals
8799         still more bugs.
8800
8801         * gtk/gtktextview.c (gtk_text_view_value_changed): don't try to
8802         scroll the GdkWindows before realization.
8803
8804 2000-11-13  Havoc Pennington  <hp@redhat.com>
8805
8806         * gtk/gtktextdisplay.c (gtk_text_render_state_update): fix bug 
8807         where GC didn't always get updated properly
8808
8809         * demos/gtk-demo/textview.c (create_tags): Use subattributes
8810         of fonts instead of setting the entire font
8811
8812         * gtk/testtext.c (fill_example_buffer): Use "size" instead of
8813         setting entire font
8814
8815         * gtk/gtkdialog.c (gtk_dialog_add_button): Fix some warnings
8816
8817         * gtk/gtktexttag.h, gtk/gtktexttag.c: Explode font_desc into 
8818         a bunch of individually-settable font attributes. You can still 
8819         use the "font" and "font_desc" args, they just set all the font
8820         attributes at once.
8821
8822 2000-11-13 Elliot Lee <sopwith@redhat.com>
8823
8824         * gdk/gdk.h: Add a couple of missing G_GNUC_CONST's.
8825
8826 Mon Nov 13 14:29:32 2000  Jonathan Blandford  <jrb@redhat.com>
8827
8828         * gtk/gtktreemodel.c (gtk_tree_path_copy): confirm path != NULL
8829         * gtk/gtktreemodel.c (gtk_tree_path_free): ditto
8830
8831         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): make
8832         work better.
8833
8834 2000-11-13  Havoc Pennington  <hp@redhat.com>
8835
8836         * gtk/gtkimmodule.c (gtk_im_module_init): Free the filename of 
8837         the module file.
8838
8839         * gtk/gtktexttag.c (gtk_text_attributes_copy): fix memory leak of
8840         dest->language
8841
8842         * gtk/testtext.c: Test pixels above/below/inside paragraphs
8843         settings
8844
8845         * gtk/gtktextview.c: Implement object args and setters/getters for
8846         all the aspects of the GtkTextAttributes that are not set from
8847         GtkWidget attributes. This is spacing, justification, margins,
8848         etc.
8849
8850         (gtk_text_view_set_arg)
8851         (gtk_text_view_get_arg): implement get/set for editable, wrap mode
8852         args
8853         (gtk_text_view_class_init): Add args for justify, left_margin,
8854         right_margin, indent, and tabs
8855         
8856
8857         * gtk/gtktextlayout.c (set_para_values): fix to display indent
8858         attribute properly
8859
8860         * gtk/gtktexttag.c: Remove left_wrapped_line_margin attribute, 
8861         replace with indent attribute
8862
8863         * gtk/gtktextlayout.c (set_para_values): multiply indent by
8864         PANGO_SCALE
8865
8866         * gtk/gtktextdisplay.c (render_para): Use PangoLayoutIter,
8867         rearranging code to do that
8868         (gtk_text_layout_draw): Pass in the y for the whole LineDisplay,
8869         i.e. don't subtract the top_margin first, just to keep
8870         all margin-futzing in one place.
8871
8872         * gdk/gdkpango.c (gdk_draw_layout): Use PangoLayoutIter
8873
8874         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Remove
8875         special case of last line, Pango now handles this itself.
8876         (gtk_text_layout_get_iter_at_pixel): Fix incorrect clamp of the 
8877         Y coordinate
8878         (gtk_text_layout_move_iter_to_x): port to use PangoLayoutIter
8879         (find_display_line_above): wasn't moving the byte index as it
8880         iterated over lines, so always returned byte 0. Also, port to use
8881         PangoLayoutIter.
8882         (find_display_line_below): same problem as
8883         find_display_line_above. Also, port to use PangoLayoutIter.
8884
8885 2000-11-13  Alexander Larsson  <alexl@redhat.com>
8886
8887         * gdk/linux-fb/*.[ch]:
8888         Massive reindent to gtk+ standard. My hands hurt.
8889
8890         * gdk/linux-fb/gdkcolor-fb.c:
8891         Move GdkColorPrivateFB from inherited to windowing_data
8892
8893         * gdk/linux-fb/gdkcursor-fb.c:
8894         _gdk_cursor_new_from_pixmap made static
8895
8896         * gdk/linux-fb/gdkdnd-fb.c:
8897         GdkDragContextPrivate moved to windowing_data
8898
8899         * gdk/linux-fb/gdkdrawable-fb2.c:
8900         Removed endian.h, use glib endianness macros instead
8901         Some cleanups in the usage of GDK_DRAWABLE_FBDATA
8902         and GDK_DRAWABLE_IMPL_FBDATA
8903
8904         * gdk/linux-fb/gdkfont-fb.c:
8905         Add empty gdk_font_load(). Needed for linking of Gtk+.
8906
8907         * gdk/linux-fb/gdkimage-fb.c:
8908         Removed endian.h, use glib endianness macros instead
8909         Moved GdkImagePrivateFB to windowing_data
8910         gdk_image_new_bitmap didn't always allocate enough
8911         memory.
8912
8913         * gdk/linux-fb/gdkinput-ps2.c:
8914         Added semi-working support for MS serial mice.
8915
8916         * gdk/linux-fb/gdkprivate-fb.h:
8917         s/GdkWindowPrivate/GdkWindowObject/
8918         Removed GdkWindowPrivate typedef
8919         s/GDK_DRAWABLE_P/GDK_DRAWABLE_FBDATA/
8920         Removed GDK_DRAWABLE_P
8921         Move GdkColorPrivateFB from inherited to windowing_data
8922         Moved GdkImagePrivateFB to windowing_data
8923
8924         * gdk/linux-fb/gdkvisual-fb.c:
8925         Removed some unused debug code.
8926
8927         * gdk/linux-fb/gdkwindow-fb.c:
8928         Use stock cursors instead of including X headers.
8929         s/GdkWindowPrivate/GdkWindowObject/
8930
8931         * gdk/linux-fb/mitypes.h:
8932         Removed unused types.
8933
8934         * modules/linux-fb/basic.c:
8935         Use the pango fribidi wrappers.
8936
8937 2000-11-13  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
8938
8939         * gdk/linux-fb/gdkcolor-fb.c, gdk/nanox/gdkmain-nanox.c,
8940         gdk/win32/gdkcolor-win32.c, gdk/win32/gdkwin32id.c,
8941         gdk/x11/gdkcolor-x11.c, gdk/x11/gdkvisual-x11.c, gdk/x11/gdkxid.c,
8942         gtk/gtkgc.c, gtk/gtkrc.c, gtk/gtktext.c: GCompareFunc ->
8943         GEqualFunc where applicable.
8944         
8945         * gdk/linux-fb/gdkpango-fb.c: pango_font_description_compare ->
8946         pango_font_description_equal as changed in pango.
8947         
8948         * gdk/nanox/gdkmain-nanox.c: gdk_xid_compare -> gdk_xid_equal.
8949
8950         * gdk/win32/gdkcolor-win32.c: gdk_colormap_cmp -> gdk_colormap_equal.
8951
8952         * gdk/win32/gdkwin32id.c: gdk_handle_compare -> gdk_handle_equal.
8953
8954         * gdk/x11/gdkcolor-x11.c: gdk_colormap_cmp -> gdk_colormap_equal.
8955
8956         * gdk/x11/gdkvisual-x11.c: gdk_visual_compare -> gdk_visual_equal.
8957
8958         * gdk/x11/gdkxid.c: gdk_xid_compare -> gdk_xid_equal.
8959
8960         * gtk/gtkgc.c: gtk_gc_key_compare -> gtk_gc_key_equal and
8961         gtk_gc_drawable_compare -> gtk_gc_drawable_equal.
8962
8963         * gtk/gtkrc.c: gtk_rc_style_compare -> gtk_rc_style_equal and
8964         gtk_rc_styles_compare -> gtk_rc_styles_equal.
8965
8966 2000-11-12  Havoc Pennington  <hp@pobox.com>
8967
8968         * demos/gtk-demo/Makefile.am (democodedir): change demo install
8969         dir to datadir/gtk+-2.0/demo
8970
8971         * demos/gtk-demo/textview.c: Text widget demo; reveals all 
8972         sorts of text widget and Pango font bugs. Urgh.
8973
8974         * demos/gtk-demo/Makefile.am (demos): Add textview.c
8975
8976         * demos/gtk-demo/main.c (create_tree): Add instructions at top of
8977         tree that you should double click to see the demo. Fix 
8978         types of variables to reflect changed return values from 
8979         GtkTreeStore and GtkTreeViewColumn constructors.
8980
8981         * gtk/gtktextbuffer.c (gtk_text_buffer_new): ref/sink the
8982         newly-created buffer to prepare for GObject semantics
8983
8984         * gtk/testtext.c: don't leak the buffer with GObject semantics
8985
8986         * gtk/testtextbuffer.c: ditto
8987         
8988 2000-11-12  Havoc Pennington  <hp@pobox.com>
8989
8990         Rename this testgtk to gtk-demo to avoid confusion, and 
8991         install it so people can use it as a supplement to 
8992         the documentation.
8993         
8994         * demos/gtk-demo: Moved from demos/testgtk
8995
8996         * demos/testgtk: Removed
8997
8998         * configure.in: make Makefile in gtk-demo
8999         
9000         * demos/gtk-demo/Makefile.am: Install sample source to 
9001         datadir/gtk-demo (maybe there's a better place?), and 
9002         rename the binary to gtk-demo
9003         
9004         * demos/gtk-demo/main.c (load_file): Load installed sample
9005         source if source isn't found in pwd.
9006
9007 2000-11-09  Havoc Pennington  <hp@pobox.com>
9008
9009         * gtk/gtkentry.c (gtk_entry_class_init): Add an "invisible_char" 
9010         argument to set the char displayed when visibility == FALSE
9011         (gtk_entry_create_layout): If !entry->visible, replace 
9012         all chars with the "invisible char"
9013
9014         * gtk/testgtk.c: Test the invisible_char deal
9015         
9016 Mon Nov 13 02:16:33 2000  Robert Brady  <robert@suse.co.uk>
9017
9018         * gtk/gtkstyle.c (gtk_style_init): Fall back to "fixed" if we
9019         can't get a native font in the right encoding.
9020
9021 Mon Nov 13 00:09:29 2000  Robert Brady  <robert@suse.co.uk>
9022
9023         * configure.in: Chinese .pos have been renamed to zh_CN and zh_TW
9024         respectively.
9025
9026 Sun Nov 12 19:11:42 2000  Owen Taylor  <otaylor@redhat.com>
9027
9028         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_next_line):
9029         Fix warning when moving between paragraphs.
9030
9031         * gtk/gtkentry.[ch]: Change move => move_cursor, 
9032         delete => delete_from_cursor, insert => insert_at_cursor
9033
9034 Sun Nov 12 22:52:51 2000  Robert Brady  <robert@suse.co.uk>
9035
9036         * modules/input/imviqr.c: A vietnamese VIQR-based input method.
9037
9038         * modules/input/imthai-broken.c: A Thai input method for use if
9039         Thai keys are really generating Latin1 keysyms.
9040
9041         * modules/input/Makefile.am: Build these.
9042
9043 Sun Nov 12 22:15:35 2000  Robert Brady  <robert@suse.co.uk>
9044
9045         * gtk/gtkfileselection.c, gdk/win32/gdkfont-win32.c: 
9046         g_filename_{to,from}_utf8 now takes an extra parameter.
9047
9048         * gtk/gtkcalendar.c (gtk_calendar_init): Convert output of
9049         strftime into UTF-8.
9050
9051         (column_from_x, gtk_calendar_paint_day_names): Support RTL
9052         calendars.
9053
9054         (gtk_calendar_paint_day_names): Draw day names in the right 
9055         place.
9056         
9057 Sun Nov 12 14:10:09 2000  Owen Taylor  <otaylor@redhat.com>
9058
9059         * gdk/x11/gdkselection-x11.c (gdk_utf8_to_compound_text): Fix
9060         problem with using result of g_get_charset() backwards -
9061         pointed out by Mikael Hermansson <mikeh@bahnhof.se>.
9062
9063         * gtk/gtkwindow.c (gtk_window_compute_hints): Support
9064         negative min_width/height and max_width/height to
9065         mean "requisition"; this allows setting a window
9066         to be user-resizable in only one direction easily.
9067
9068         * gtk/testgtk.c (create_main_window): Remove hard-coded
9069         usize - set a default size in the vertical direction.
9070
9071 Sun Nov 12 13:33:01 2000  Owen Taylor  <otaylor@redhat.com>
9072
9073         * gtk/gtkrange.c: Add some missing casts. Support 
9074         2 and 3 button clicks on the arrows to mean 
9075         "move by pages" and "jump to end". (Like gtkspinbutton)
9076
9077 2000-11-12 Hans Breuer <Hans@Breuer.Org>
9078
9079         * gdk/win32/makefile.msc : reflect build module changes
9080
9081         * gdk/win32/gdkcursor-win32.c : can't cast to impl type directly
9082         from GdkPixmap*, cast implementation member instead.
9083
9084         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_drawable) : The
9085         passed in drawable is of type GdkDrawableImplWin32, the GdkPixmap *src 
9086         maybe either GdkDrawable or GdkDrawableImpl. Corrected all casts, add
9087         more Gdi functions return value checking. 
9088         (gdk_win32_draw_image) : use IMAGE_PRIVATE_DATA to get on the
9089         GdkImagePrivateWin32 *.
9090
9091         * gdk/win32/gdkevents-win32.c : Disable the SetCapture call to make
9092         menus useable again. Add #pragma message to keep reminded on this issue.
9093         (gdk_event_translate) : don't generate GDK_EXPOSE events for InputOnly
9094         windows. This allows to enable backing store on Win32!
9095
9096         * gdk/win32/gdkimage-win32.c (_gdk_win32_get_image) : the passed
9097         in drawable is of impl type. Correct specific type checks appropriate.
9098  
9099         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_create_from_data) : check 
9100         GDK_WINDOW_DESTROYED before allocating new resources.
9101
9102         * gdk/win32/gdkselection-win32.c : Handle GDK_WINDOW_DESTROYED case
9103
9104         * gdk/win32/gdkwindow-win32.c : more Gdi return value checking,
9105         (gdk_window_foreign_new) initialize parent handle.
9106         (gdk_window_destroy_notify) add GDK_IS_WINDOW check
9107
9108         * gdk/win32/gdkgeometry-win32.c (_gdk_window_move_resize_child) :
9109         Let the GDI invalidate the window on MoveWindow call to fix scrolling
9110         problems (e.g. main buttons in testgtk). 
9111
9112 Sat Nov 11 23:07:30 2000  Owen Taylor  <otaylor@redhat.com>
9113
9114         * gtk/gtkentry.c (gtk_entry_key_press): Call 
9115         gtk_widget_activate for GDK_Return.
9116
9117         * gtk/gtkentry.c (gtk_entry_preedit_changed_cb): Fix handling
9118         of preedit cursor position.
9119
9120 Sun Nov  5 04:24:53 2000  Owen Taylor  <otaylor@redhat.com>
9121
9122         * gtk/gtkcellrenderertextpixbuf.c: Make parent_class
9123         static.
9124
9125 Tue Sep 19 10:54:22 2000  Owen Taylor  <otaylor@redhat.com>
9126
9127         * modules/input/{gtkimcontextxim.[ch],imxim.c}: Rip
9128         out support for multiple locales; that simple doesn't
9129         work reliably with current Xlib
9130
9131         * gtk/gtkimcontext*.[ch] gtk/gtkimmulticontext.[ch]
9132         gtk/gtktextlayout.[ch] gtk/gtktextview.c gtk/gtkentry.c: 
9133         Add support for positioning the cursor within the preedit string.
9134
9135 Mon Sep 18 23:56:32 2000  Owen Taylor  <otaylor@redhat.com>
9136
9137         * modules/input/{imxim.c,gtkimcontextxim.[ch]}: Start
9138         at XIM input method module.
9139
9140         * gtk/gtktextview.c: Check for bindings after passing
9141         events to im context filter.
9142
9143 Mon Sep 18 11:50:51 2000  Owen Taylor  <otaylor@redhat.com>
9144
9145         * gtk/gtktextlayout.c (add_preedit_attrs): Handle
9146         empty attribute lists properly.
9147
9148 Sun Sep 17 10:08:16 2000  Owen Taylor  <otaylor@redhat.com>
9149
9150         * gtk/queryimmodules.c (main): Return non-zero exit
9151         status if errors were encountered querying any
9152         modules.
9153
9154         * modules/input/Makefile.am (moduledir): remove
9155         leftover bin program target.
9156
9157         * docs/make-todo: Fix typo in error message.
9158
9159 Sat Sep 16 14:04:30 2000  Owen Taylor  <otaylor@redhat.com>
9160
9161         * configure.in: Add modules/input/Makefile
9162
9163 Sat Sep 16 14:01:52 2000  Owen Taylor  <otaylor@redhat.com>
9164
9165         * gtk/gtk.h: include gtkmodule.h gtkoldeditable.h,
9166         don't include gtkthemes.h.
9167
9168         * gtk/testgtk.c gtk/testtext.c: Set environment variables
9169         to point
9170
9171         * gtk/Makefile.am: Add new .c and .h files, build 
9172         gtk-query-immodules and use it to create a gtk.immodules
9173         file for use of test programs.
9174
9175         * gtk/gtkpreview.c: remove extra blank line.
9176
9177 Sat Sep 16 13:21:04 2000  Owen Taylor  <otaylor@redhat.com>
9178
9179         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_add_table): 
9180         Add the ability to add extra tables beyond the default
9181         one, and also the ability to have compose sequences 
9182         that are prefixes of other compose sequences. 
9183
9184         * gtk/gtkimcontextsimple.c: Export a preedit string which
9185         consists of possible candidates for keystrokes that have
9186         been entered but not yet committed.
9187
9188         * gtk/gtkimcontext.[ch] gtk/immulticontext.[ch]
9189         gtk/gtkimcontextsimple.[ch]: add gtk_im_context_reset()
9190
9191         * gtk/gtkmulticontext.[ch] (gtk_im_multicontext_append_menuitems): 
9192         Add a function to add input-method switching menu items
9193         to a menu.
9194
9195         * gtk/gtkimmulticontext.[ch]: Properly handly set_client_window
9196         when switching input methods.
9197
9198         * gtk/gtkimcontextsimple.[ch]: Change the format of
9199         the compose table to allow compose tables of different
9200         lengths / sequence.
9201
9202 Sat Sep 16 13:05:48 2000  Owen Taylor  <otaylor@redhat.com>
9203
9204         * gtk/gtkimmodule.[ch]: Support routines for loading
9205         GtkIMContext implementations dynamically at runtime.
9206
9207         * modules/input/imcyrillic-translit.c: A sample input
9208         method (based on GtkIMContextSimple with an extra table),
9209         which demonstrates preedit strings and the module
9210         system for input modules
9211
9212         * gtk/queryimmodules.c: Program to query the available
9213         input modules and write the results into a file.
9214          
9215         * gtk/gtkrc.[ch] (gtk_rc_get_im_module_file): Add
9216         extra config options "im_module_file" (cache file for
9217         input method modules), and "im_module_path" - path
9218         to look for modules when generating cache file.
9219
9220         This doesn't scale.
9221
9222 Sat Sep 16 13:09:06 2000  Owen Taylor  <otaylor@redhat.com>
9223
9224         * gtk/gtkthemes.[ch] gtk/gtkmodule.[ch]: Move most of the 
9225         generic code from gtkthemes into a new abstraction
9226         GtkModule which has the logic for implementing
9227         a loadable module which implements a number of 
9228         GObject types.
9229
9230 Sat Sep 16 13:07:13 2000  Owen Taylor  <otaylor@redhat.com>
9231
9232         * gtk/gtkeditable.[ch]: Convert GtkEditable from
9233         a class into an interface  
9234         
9235         * gtk/gtkoldeditable.[ch]: Move the old editable
9236         implementation into here, so legacy widgets can
9237         still rely on the implemenation. GtkOldEditable
9238         exports GtkEditable. Make selection handling
9239         code use new text conversion functions (and
9240         handle UTF-8 as a side-effect). Use GtkClipboard
9241         for CLIPBOARD.
9242
9243         * gtk/gtktext.[ch] gtk/gtkcombo.c gtk/gtkspinbutton.c:
9244         Adopt to match above changes.
9245
9246         * gtk/gtkentry.[ch]: Implement GtkEditable directly,
9247         avoid GtkOldEditable implementation. Restructure
9248         to reduce number of places that modify state directly.
9249         Move to GtkBindingSet. Display the preedit string.
9250         Queue recomputation of PangoLayout and scroll position
9251         to improve effiency of doing complex changes naively.
9252         Add a menu with cut/copy/paste and input method selection.
9253
9254 Thu Sep 14 22:11:05 2000  Owen Taylor  <otaylor@redhat.com>
9255
9256         * gtk/gtktextlayout.[ch]: Add gtk_text_layout_set_preedit_string()
9257         to set preedit string and attributes; display preedit string by
9258         inserting string and attributes at cursor when creating the
9259         GtkTextLineDisplay.
9260
9261         * gtk/gtktextlayout.c: Move all conversions between byte
9262         positions in PangoLayout and GtkTextIter into new functions
9263         line_display_iter_to_index/index_to_iter that properly
9264         handle the preedit string.
9265
9266         * gtk/gtktextmark.[ch]: Restore gtk_text_mark_get_name, modify
9267         it to return const char * (eventually will end up
9268         as GCONST char *, most likely.)
9269
9270         * gtk/gtktextview.[ch]: Handle the preedit string, call
9271         gtk_im_context_reset() as necessary, add a menu to switch
9272         input methods.
9273         
9274         * gtk/gtktextlayout.[ch]: Remove useless
9275         gtk_text_layout_get_log_attrs() function.
9276
9277 2000-11-11  Tor Lillqvist  <tml@iki.fi>
9278
9279         * gdk/gdk.def
9280         * gtk/gtk.def: Update.
9281
9282         * gdk/win32/*.c: Add last argument to g_type_register_static()
9283         calls.
9284
9285         * gdk/win32/gdkwindow-win32.c: Silence gcc -Wall.
9286
9287         * gdk/win32/gdkevents-win32.c: Handle MSH_MOUSEWHEEL messages
9288         generated by older wheel mouse drivers. Get the correct y
9289         coordinate from WM_MOUSEWHEEL messages.
9290
9291         * gdk/win32/gdkgc-win32.c (gdk_win32_cap_style_to_string,
9292         gdk_win32_fill_style_to_string, gdk_win32_function_to_string,
9293         gdk_win32_join_style_to_string, gdk_win32_line_style_to_string):
9294         Debugging functions.
9295
9296         * gdk/win32/gdkprivate-win32.h: Declare them.
9297
9298         * gdk/win32/gdkinput-win32.h: Add declaration for
9299         gdk_input_window_destroy().
9300
9301         * gtk/makefile.mingw.in: Pass -DGTK_VERSION. Add gtktreemodel.o.
9302
9303 Fri Nov 10 19:06:41 2000  Jonathan Blandford  <jrb@redhat.com>
9304
9305         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): New
9306         function to help handle keeping things in sync.
9307
9308 Fri Nov 10 12:10:34 2000  Jonathan Blandford  <jrb@redhat.com>
9309
9310         * gtk/gtkliststore.c (gtk_model_simple_class_init): use the new
9311         BOXED marshallers.
9312
9313         * gtk/gtkliststore.c (gtk_list_store_get_column_type): Add this.
9314         (gtk_list_store_class_init): use the new BOXED marshallers.
9315
9316         * gtk/gtktreestore.c (gtk_tree_store_new_with_types): change
9317         new_with_values to new_with_types.
9318         (gtk_tree_store_get_column_type): add this.
9319         (gtk_tree_store_class_init): use the new BOXED marshallers.
9320
9321         * gtk/gtkmarshal.list: Added a number of BOXED marshallers to
9322         mirror some POINTER marshallers.
9323
9324 Thu Nov  9 11:23:22 2000  Jonathan Blandford  <jrb@redhat.com>
9325
9326         * gtk/gtktreemodel.h (struct _GtkTreeIter): added more fields to
9327         allow more interesting iterators.  Also, made the lifecycle of
9328         iterators more explicit.
9329
9330         * gtk/gtktreemodelsort.[ch]: New model for sorting.
9331
9332         * gtk/gtk-boxed.defs (GtkTreeIter, GtkTreePath): Added two boxed
9333         types.
9334
9335 2000-11-09  Alexander Larsson  <alexl@redhat.com>
9336
9337         * demos/testgtk/menus.c:
9338         Changes to make the new testgtk compile after
9339         gtk_menu_append was removed.
9340
9341         * gdk/linux-fb/gdkdrawable-fb2.c
9342         (gdk_fb_get_depth, gdk_fb_get_visual,
9343         gdk_drawable_impl_fb_class_init): Implement
9344         these drawable functions. Now GtkImages work again.
9345
9346         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Change prototype.
9347
9348         * gdk/linux-fb/gdkprivate-fb.h (_gdk_fb_get_image): Change prototype.
9349         
9350         * gdk/linux-fb/gdkmain-fb.c (fb_modes_parse_mode,
9351         gdk_fb_setup_mode_from_name, gdk_fb_set_mode, gdk_fb_display_new);
9352         Parse /etc/fb.modes, use the environment variables GDK_DISPLAY_MODE,
9353         GDK_DISPLAY_DEPTH, GDK_DISPLAY_WIDTH, GDK_DISPLAY_HEIGHT.
9354
9355 2000-11-08  Havoc Pennington  <hp@pobox.com>
9356
9357         * gtk/gtktexttag.c (gtk_text_tag_class_init): Add visible and
9358         visible_set args, don't know where these had gone, I thought they
9359         used to be there
9360
9361         * gtk/testtext.c: Add a menu item to apply invisibility tag;
9362         now we can test the feature and see that it's totally broken.
9363
9364 2000-11-08  Havoc Pennington  <hp@pobox.com>
9365
9366         Make DND copy pixbufs and tags when source and target share a 
9367         tag table.
9368         
9369         * gtk/gtktextview.c (gtk_text_view_drag_data_get): provide the
9370         in-process GTK_TEXT_BUFFER_CONTENTS target
9371         (gtk_text_view_drag_data_received): Paste from
9372         GTK_TEXT_BUFFER_CONTENTS if we receive it.
9373
9374 2000-11-08  Alexander Larsson  <alexl@redhat.com>
9375
9376         * docs/Changes-2.0.txt: Add note about GtkMenuPositionFunc
9377         API changes.
9378
9379         * gtk/gtkmenu.c: Add support for scrolling menus.
9380         Remove gtk_menu_append/prepend/insert, these have been moved to
9381         gtkcompat.h as #defines.
9382
9383         * gtk/gtkcompat.h.in:
9384         Add compatibility #defines for gtk_menu_append/prepend/insert
9385
9386         * gtk/gtkmenu.h: Add data needed for scrolling menus.
9387         GtkMenuPositionFunc gets an extra argument push_in.
9388         gtk_menu_append/prepend/insert removed.
9389         
9390         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu): Change menu
9391         positioning behaviour to fit to scrolling menus.
9392
9393         * gtk/gtkmenuitem.c (gtk_menu_item_forall): Don't recurse
9394         into menuitem->submeny. That is wrong, and broke torn
9395         off submenus of torn off menus, since they were unrealized
9396         when the first menu was unrealized.
9397
9398         * gtk/gtkmenushell.[ch]: Virtualize gtk_menu_shell_insert() and
9399         gtk_menu_shell_select_item() since these need to be overridden in
9400         GtkMenu.
9401
9402         * gtk/gtkoptionmenu.c (gtk_opttion_menu_position): Change menu
9403         positioning behaviour to fit to scrolling menus.
9404         (gtk_option_menu_key_press, gtk_option_menu_button_press): Select
9405         the current item so that it is prelighted when the menu pops up.
9406         This is a workaround to the fact that the menu doesn't get the
9407         initial enter event (due to grabs).
9408
9409         * gtk/gtkfilesel.c, gtk/gtkinputdialog.c, gtk/testgtk.c:
9410         s/gtk_menu_append/gtk_menu_shell_append/
9411
9412         * gtk/gtknotebook.c:
9413         s/gtk_menu_insert/gtk_menu_shell_insert/
9414
9415         * gtk/testgtk.c (create_menu, create_menus):
9416         Create the first menu with 50 items so that menu scrolling
9417         can be tested.
9418         
9419         
9420         Patch from Jonathan Blandford  <jrb@redhat.com>
9421
9422         * gtk/gtkmenuitem.[ch] (gtk_menu_item_toggle_size_request): new
9423         system to handle size requests.  First, we ask what the size of
9424         the toggle is.  Then, when allocating the size, we allocate the
9425         toggle_size first.  This way we can have multiple menu-item
9426         classes w/o needing a seperate class for each.
9427
9428         * gtk/gtkmenu.c (gtk_menu_size_request): Actually use the new system.
9429         * gtk/gtkmenu.c (gtk_menu_size_allocate): Use the new system.
9430
9431         * gtk/gtkcheckmenuitem.c
9432         (gtk_check_menu_item_toggle_size_request): New function to handle
9433         the toggle size-request.
9434
9435 2000-11-07  Havoc Pennington  <hp@redhat.com>
9436
9437         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location):
9438         Half-ass somewhat fix this function, so that scrolling to the
9439         insertion point works. Pango hacking is in the future to really
9440         fix it.
9441
9442         * gtk/gtktextview.c (gtk_text_view_drag_data_get): Don't calculate
9443         length of data, no longer used.
9444
9445         * gtk/gtktextbuffer.c (gtk_text_buffer_finalize): move destroy
9446         method contents in here, get rid of destroy method
9447         (gtk_text_buffer_insert_range): Fix some g_return_if_fail checks
9448         that were backward. Remove debug spew.
9449         (cut_or_copy): Make the clipboard work with insert_range to
9450         preserve tags and pixbufs, not just the primary selection.
9451
9452 2000-11-07  Havoc Pennington  <hp@redhat.com>
9453
9454         * gtk/gtktextmark.c (gtk_text_mark_is_visible): rename 
9455         to gtk_text_mark_get_visible
9456
9457         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): fix
9458         bug that was generating an invalid iterator
9459
9460         * gtk/gtktextiter.c (gtk_text_iter_get_offset): move call to
9461         ensure_char_offsets() in front of code placing the iter in an
9462         invalid state.
9463
9464         * gtk/gtktextbuffer.c (gtk_text_buffer_paste_primary):
9465         make override_location arg const
9466         (paste): Replace the selection if we paste into the 
9467         current selection
9468
9469         * gtk/gtkselection.h: Remove "GtkSelectioData"
9470         (struct _GtkSelectionData): move the definition here.
9471
9472         * gtk/gtktextbuffer.c (gtk_text_buffer_update_primary_selection):
9473         Export the GTK_TEXT_BUFFER_CONTENTS target for in-process copies
9474
9475         * gtk/gtktextiter.c (gtk_text_iter_get_tags): New function
9476
9477         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_range): implement
9478         (gtk_text_buffer_insert_range_interactive): implement
9479         (gtk_text_buffer_get_tags): Remove, replaced by
9480         gtk_text_iter_get_tags()
9481
9482         * gtk/gtktextiter.c (gtk_text_iter_forward_search): Add a search
9483         limit parameter, to avoid infinite linear scan.
9484         (gtk_text_iter_backward_search): Add search limit
9485         (gtk_text_iter_forward_find_char): Add search limit
9486         (gtk_text_iter_backward_find_char): Add search limit
9487
9488 2000-11-07  Alexander Larsson  <alla@lysator.liu.se>
9489
9490         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
9491         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkimage-fb.c,
9492         gdk/linux-fb/gdkpango-fb.c, gdk/linux-fb/gdkpixmap-fb.c,
9493         gdk/linux-fb/gdkwindow-fb.c:
9494         use g_object_new() instead of g_type_create_instance() which
9495         is a private function for fundamental type implementations.
9496
9497         * gdk/linux-fb/gdkinput-ps2.c:
9498         Use MEDIUMRAW instead of RAW keycodes. Remove keyboard state-table
9499         instead just store the current modifier state. Add a (somewhat broken)
9500         keyboard input parser for XLATE mode too, if we couldn't use MEDIUMRAW.
9501         Rename exported function gdk_input_ps2_get_mouseinfo to
9502         gdk_input_get_mouseinfo.
9503
9504         * gdk/linux-fb/gdkmain-fb.c, gdk/linux-fb/gdkprivate-fb.h,
9505         gdk/linux-fb/gdkwindow-fb.c:
9506         gdk_input_ps2_get_mouseinfo was renamed to gdk_input_get_mouseinfo.
9507         
9508
9509 2000-11-02  Havoc Pennington  <hp@redhat.com>
9510
9511         * gtk/gtkfilesel.h, gtk/gtkfilesel.c: Derive from GtkDialog, and
9512         use stock buttons. Should be 100% source compatible, appropriate
9513         filesel fields now point to dialog->vbox and dialog->action_area.
9514         On the bizarre side, dialog->action_area and filesel->action_area
9515         are not the same widget.
9516         (gtk_file_selection_init): Put some padding around the selection
9517         entry, so it isn't touching the GtkDialog separator.    
9518
9519         * gtk/gtkfontsel.h, gtk/gtkfontsel.c: Derive from GtkDialog, 
9520         use stock buttons, etc. Should also be source compatible.
9521         Set the dialog default title in _init not _new().
9522         
9523         * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): 
9524         Use stock buttons; don't put a button box inside the existing
9525         dialog button box. Don't bother with push/pop colormap anymore.
9526
9527         * gtk/gtkdialog.h (GtkResponseType): Add a bunch of more 
9528         specific GTK_RESPONSE_* values. This is clearer than ACCEPT/REJECT
9529         for message dialog, and necessary for the font selection and color
9530         selection with help and apply buttons.
9531         
9532         * gtk/gtkdialog.c (gtk_dialog_add_button): Return a pointer 
9533         to the created button widget. Set GTK_CAN_DEFAULT on the button.
9534         (gtk_dialog_init): Default to GTK_BUTTONBOX_END, put less spacing
9535         between buttons, put less padding around the action area.
9536         (gtk_dialog_run): Exit on unmap rather than on destroy. 
9537         This will also exit the loop if the widget is hidden.
9538         (gtk_dialog_delete_event_handler): Use GTK_RESPONSE_DELETE_EVENT
9539         instead of GTK_RESPONSE_NONE; since we're already adding a bunch
9540         of GTK_RESPONSE_* stuff, this seems cleaner, and lets you 
9541         special-case delete event.
9542
9543         * gtk/gtktexttagtable.c, gtk/gtktextview.c: Fix doc comment
9544         formatting
9545         
9546 Sun Nov  5 05:32:39 2000  Tim Janik  <timj@gtk.org>
9547
9548         * gtk/testgtk.c (uposition_stop_configure): provide a toggle
9549         button to temporarily disable position recording in the
9550         "saved position" test.
9551
9552 Sat Nov  4 05:37:17 2000  Tim Janik  <timj@gtk.org>
9553
9554         * gtk/gtkthemes.c: added compat code that temporarily implements
9555         GtkThemeEnginePlugin as a GObject exporting GTypePlugin. this is
9556         going to be revamped by owen's upcoming GtkModule patches, but
9557         untill then people want gtk to build, right? ;)
9558
9559 2000-11-04  Havoc Pennington  <hp@pobox.com>
9560
9561         * gtk/gtkenums.h: remove trailing comma from GtkDeleteType member
9562         list
9563
9564         * docs/Changes-2.0.txt: Add note about
9565         gtk_container_get_toplevels()
9566
9567         * gtk/gtktextview.h: formatting
9568         
9569         * gtk/gtktextview.c: don't start descriptions with "Returns",
9570         confuses gtk-doc
9571
9572 Sat Nov  4 10:12:27 2000  Owen Taylor  <otaylor@redhat.com>
9573
9574         * autogen.sh: When doing sanity checking on ACLOCAL_FLAGS,
9575         look for glib-2.0.m4 not glib.m4. (Ali Abdin)
9576
9577 2000-11-03  Havoc Pennington  <hp@redhat.com>
9578
9579         * gtk/gtktexttagtable.c: Docs
9580         (gtk_text_tag_table_size): return a signed int
9581
9582         * gtk/gtktexttag.c: s/tkxt/text/g; write documentation
9583         (gtk_text_tag_event): make the event_object a GObject
9584
9585         * gtk/gtktextview.c: Write API docs for all functions.
9586
9587         * gtk/gtktextview.h: add GTK_TEXT_WINDOW_PRIVATE as return value
9588         for gtk_text_view_get_window_type() called on one of the private
9589         windows.
9590
9591         * gtk/gtktextview.c: Instead of accessing text_view->buffer
9592         directly, call get_buffer() which demand-creates a default
9593         buffer. So gtk_text_view_new() can be used to create a view with a
9594         default buffer in it, if you just want an empty text box users can
9595         put data in. Useful for GUI builders also.
9596
9597 2000-11-03  Pablo Saratxaga <pablo@mandrakesoft.com>
9598
9599         * gtk/gtkrc.zh_TW.*: moved gtkrc.zh_TW.Big5 to gtkrc.zh_TW.big5;
9600         the charset encodign portion MUST be in lowercase.
9601         * gtk/gtkrc.az: added file for Azeri language
9602
9603 2000-11-03  Havoc Pennington  <hp@redhat.com>
9604
9605         Get widgets working on the btree/buffer side. Display of them 
9606         still doesn't work.
9607         
9608         * gtk/gtktextview.c: start implementing child widget stuff
9609
9610         * gtk/gtktextiter.c (gtk_text_iter_get_child_anchor): new function
9611
9612         * gtk/gtktextlayout.c: handle embedded widgets
9613
9614         * gtk/gtktextdisplay.c: handle embedded widgets
9615
9616         * gtk/gtktextchild.c: Implement all the child anchor goo
9617
9618         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor): New
9619         function
9620
9621         * gtk/gtktextbtree.c: Add child anchor table to the btree struct
9622         (insert_pixbuf_or_widget_segment): abstract out common portions of 
9623         creating a child anchor or a pixbuf segment.
9624         (gtk_text_btree_create_child_anchor): new function
9625         (gtk_text_btree_unregister_child_anchor): new function
9626
9627         * gtk/gtkmarshal.list: added VOID:OBJECT,INT,INT for the
9628         allocate_child signal on GtkTextLayout
9629
9630         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): fix bogus return
9631         values
9632         (gtk_text_iter_get_child_anchor): new function
9633
9634         * gtk/gtktextbuffer.c (gtk_text_buffer_real_changed): Add a
9635         default handler for the changed signal, which calls
9636         gtk_text_buffer_set_modified(), instead of just always emitting
9637         changed then calling set_modified() manually. I guess this is
9638         maybe more flexible. It seems logical.
9639
9640 Fri Nov  3 08:58:38 2000  Tim Janik  <timj@gtk.org>
9641
9642         * gtk/gtkobject.c: _g_signal_handlers_destroy() is prefixed with '_'
9643         now.
9644
9645         * gtk/gtksignal.c: use g_signal_connect_closure_by_id() now.
9646
9647 Thu Nov  2 14:10:51 2000  Owen Taylor  <otaylor@redhat.com>
9648
9649         * gdk/x11/gdkdnd-x11.c: Fix a bunch of functions that should have
9650         been marked static.
9651
9652 2000-11-02  Havoc Pennington  <hp@redhat.com>
9653
9654         * gtk/testgtk.c (create_labels): had a test backward
9655
9656         * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Copy the client-side GC
9657         fields, so the dest GC ends up with the correct clip origin, 
9658         etc. Fixes a bug where colored labels didn't redraw 
9659         properly.
9660
9661 2000-11-02  Alexander Larsson  <alexl@redhat.com>
9662
9663         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
9664         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkpango-fb.c,
9665         gdk/linux-fb/gdkpixmap-fb.c, gdk/linux-fb/gdkwindow-fb.c:
9666         Add last argument to t_type_register_static call.
9667         
9668         * gdk/linux-fb/gdkdrawable-fb2.c:
9669         Add last argument to t_type_register_static call.
9670         export the get_image drawable virtual function.
9671
9672         * gdk/linux-fb/gdkimage-fb.c:
9673         Add last argument to t_type_register_static call.
9674         rename gtk_image_get to _gdk_fb_get_image and
9675         export it for use by gdkdrawable-fb2.
9676
9677         * gdk/linux-fb/gdkprivate-fb.h:
9678         export _gdk_fb_get_image.
9679
9680         * gdk/linux-fb/gdkselection-fb.c:
9681         Add new api call stubs.
9682
9683         * gtk/Makefile.am:
9684         Missing ( in linux-fb part.
9685
9686         * modules/linux-fb/Makefile.am:
9687         Must link with gdk_pixbuf or get unresolved symbol.
9688
9689 2000-11-01  Havoc Pennington  <hp@pobox.com>
9690
9691         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Use 
9692         GTK_TYPE_TEXT_ITER and BOXED marshallers
9693
9694         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): ditto
9695
9696         * gtk/gtktexttag.c (gtk_text_tag_class_init): ditto
9697         
9698         * gtk/gtk-boxed.defs: add GtkTextIter
9699
9700         * gtk/gtkmarshal.list: Add marshallers for text widget that 
9701         properly use OBJECT and BOXED
9702
9703 2000-11-01  Havoc Pennington  <hp@redhat.com>
9704
9705         * gtk/testgtk.c (create_labels): Test set_markup_with_accel()
9706
9707         * gtk/gtklabel.c (set_markup): Convert the unichar to a GDK keyval
9708         before returning it. 
9709         
9710 2000-11-01  Havoc Pennington  <hp@redhat.com>
9711
9712         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
9713         Clip the rectangle to be rendered to the drawable, since
9714         get_from_drawable() requires a region within the drawable
9715
9716 2000-11-01  Havoc Pennington  <hp@redhat.com>
9717
9718         * gtk/gtkimage.c (gtk_image_expose): Um, don't randomly subtract 4
9719         from coordinates.
9720
9721 Wed Oct 25 20:10:57 2000  Owen Taylor  <otaylor@redhat.com>
9722
9723         * gdk/gdkevents.c (gdk_event_copy): Only ref the window if
9724         it isn't NULL.
9725
9726 2000-11-01  Havoc Pennington  <hp@pobox.com>
9727
9728         * gtk/gtklabel.c (gtk_label_set_attributes): Set a PangoAttrList
9729         on a label
9730         (gtk_label_finalize): unref the attr list if any.
9731
9732         * gtk/testgtk.c (create_get_image): close test on second click
9733         (make_message_dialog): close dialog if it exists
9734
9735         * gdk/gdkpango.c (gdk_draw_layout): Handle rise attribute
9736
9737         * gdk-2.0.pc.in (Requires): Make it require gdk-pixbuf-2.0 not
9738         gdk-pixbuf
9739
9740         * gtk/gtklabel.c (gtk_label_set_markup): new function to set label
9741         from Pango markup format
9742         (gtk_label_set_markup_with_accel): ditto but with accelerator
9743         parsing
9744
9745         * gtk/gtkimage.c (gtk_image_expose): reformatting.
9746
9747         * gdk/gdkpixbuf-drawable.c (gdk_pixbuf_get_from_drawable): Hack to
9748         reflect current state of GDK - use gdk_drawable_get_colormap, etc.
9749         Check GDK_IS_WINDOW() not !GDK_IS_PIXMAP() to decide whether to 
9750         call gdk_window_get_origin().
9751
9752         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
9753         implement GDK_PIXBUF_ALPHA_FULL
9754         
9755 Wed Nov  1 03:43:42 2000  Tim Janik  <timj@gtk.org>
9756
9757         * gtk/gtksignal.c (gtk_signal_compat_matched): make use of
9758         g_signal_handlers_block_matched, g_signal_handlers_unblock_matched and
9759         g_signal_handlers_disconnect_matched to block/unblock and disconnect
9760         multiple handlers respectively, instead of only treating the
9761         first handler found (bug reported by owen).
9762
9763 Mon Oct 30 19:23:50 2000  Jonathan Blandford  <jrb@redhat.com>
9764
9765         * gtk/gtktreeview.c (gtk_tree_view_expand_row): New function.
9766
9767         * gtk/gtktreeview.c (gtk_tree_view_collapse_row): New function.
9768
9769         * gtk/gtktreeview.c, gtk/gtktreemodel.c, gtk/gtktreeselection.c
9770         gtk/gtktreestore.h, gtk/gtktreeview.h, gtk/gtktreeviewcolumn.c,
9771         gtk/gtktreeviewcolumn.h: Fixed inline docs.
9772
9773         * docs/reference/gtk/tree_widget.sgml: Proto intro to the tree
9774         widget.  Needs writing someday.
9775
9776         * docs/reference/gtk/tmpl/gtktree*sgml: Added the tree widget to
9777         the docs.
9778
9779 2000-10-30  Havoc Pennington  <hp@redhat.com>
9780
9781         * gtk/gtktextview.h, gtk/gtktextview.c:
9782         Rename delete_at_cursor delete_from_cursor, and 
9783         move to move_cursor.
9784
9785 2000-10-30  Havoc Pennington  <hp@redhat.com>
9786
9787         * gtktextbtree.c, gtktextbtree.h, gtktextbuffer.c,
9788         gtktextbuffer.h, gtktextchild.c, gtktextchild.h,
9789         gtktextchildprivate.h, gtktextdisplay.c, gtktextdisplay.h,
9790         gtktextiter.c, gtktextiter.h, gtktextiterprivate.h,
9791         gtktextlayout.c, gtktextlayout.h, gtktextmark.c, gtktextmark.h,
9792         gtktextmarkprivate.h, gtktextsegment.c, gtktextsegment.h,
9793         gtktexttag.c, gtktexttag.h, gtktexttagprivate.h,
9794         gtktexttagtable.c, gtktexttagtable.h, gtktexttypes.c,
9795         gtktexttypes.h, gtktextview.c, gtktextview.h:
9796
9797         Massive reindentation and reformatting. Arg alignment and comments
9798         still need fixing in various places.
9799
9800 2000-10-30  Havoc Pennington  <hp@redhat.com>
9801
9802         * gtk/gtktextview.h, gtk/gtktextview.c: Change run action signals
9803         to be named insert_at_cursor and delete_at_cursor so C++ can
9804         handle them.
9805
9806 2000-10-28  Tor Lillqvist  <tml@iki.fi>
9807
9808         * gtk/gtkrc.c (gtk_rc_append_default_module_path): Make sure not
9809         to get a double directory separator in case the home directory
9810         ends with one. This would cause trouble especially on Windows,
9811         where the path will be confused with the syntax for an an UNC
9812         (network share) path \\server\share\path.
9813         (gtk_rc_add_initial_default_files): Ditto.
9814
9815 Sat Oct 28 02:33:09 2000  Robert Brady  <robert@suse.co.uk>
9816
9817         * gtk/gtkmarshal.list: add new marshallers for GtkTextView.
9818
9819         * gtk/gtktextview.c: Use correct marshallers.
9820
9821 Fri Oct 27 17:56:26 2000  Jonathan Blandford  <jrb@redhat.com>
9822
9823         * gtk/gtkliststore.c: Not sure how this ever worked.  Fixed it to
9824         use new iter stuff, and added all the appropriate signals et al.
9825
9826         * gtk/gtktreedatalist.h: s/gtk/_gtk to further reinforce that this
9827         code is internal to gtk only.
9828
9829 2000-10-28  Tor Lillqvist  <tml@iki.fi>
9830
9831         * gtk/gtk.def
9832         * gtk/makefile.{mingw,msc}.in: Adjust to Tim's changes. Use
9833         glib-genmarshal etc.
9834
9835 Fri Oct 27 20:15:00 2000  Tim Janik  <timj@gtk.org>
9836
9837         * gtk/Makefile.am: added dependancies for testtextbuffer which broke
9838         parallel builds.
9839
9840 Fri Oct 27 18:51:44 2000  Tim Janik  <timj@gtk.org>
9841
9842         * gtk/gtksignal.[hc]: adapt to GSignal signature changes.
9843
9844 2000-10-27  Robert Brady  <robert@suse.co.uk>
9845
9846         * configure.in (ALL_LINGUAS): Add en@IPA (English, phonetic), 
9847         en_GB (British), ia (Interlingua).
9848
9849 2000-10-26  Havoc Pennington  <hp@redhat.com>
9850
9851         * gtk/gtktextiter.c (my_strrstr): fix constness warning
9852
9853         Fixed output of:
9854         nm -g -l .libs/libgtk-x11-1.3.so | grep ' T ' | grep -v gtk_ | grep -v GTK_
9855         
9856         * gtk/gtktextsegment.c (char_segment_new): rename
9857         (_char_segment_new_from_two_strings): rename
9858         (_toggle_segment_new): rename
9859         
9860         * gtk/gtkclipboard.c (ensure_clipboard_widget): make this static
9861         (make_clipboard_widget): make it static
9862         (text_get_func): static
9863         (text_clear_func): static
9864
9865         * gtk/gtkcolorsel.c (adjustment_changed): make this function
9866         static
9867         (hex_changed): make it static
9868         (hsv_changed): make it static
9869         (opacity_entry_changed): make it static
9870
9871         * gtk/gtktextbtree.c (change_node_toggle_count): rename with _gtk
9872         (toggle_segment_check_func): rename with _gtk
9873
9874         * gtk/gtktextchild.c (_pixbuf_segment_new): rename with _gtk
9875         (_widget_segment_new): rename
9876         (_widget_segment_add): rename
9877         (_widget_segment_remove): rename
9878         (_widget_segment_ref): rename
9879         (_widget_segment_unref): rename
9880
9881         * gtk/gtktextmark.c (_mark_segment_new): Rename
9882         _gtk_mark_segment_new   
9883
9884 2000-10-26  Havoc Pennington  <hp@redhat.com>
9885
9886         * gtk/gtkmarshal.list: add new marshallers used by the text widget
9887         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
9888         types
9889
9890         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): fix
9891         marshaller types
9892
9893         * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktextdisplay.h,
9894         gtk/gtktextdisplay.c: We need to preserve Tk copyrights and
9895         license on these files.
9896
9897         * gtk/gtktextiter.c (gtk_text_iter_backward_search): Make this
9898         work.
9899
9900         * gtk/gtktextbtree.c (gtk_text_btree_new): init stamps to 
9901         runtime random number different for each tree, instead of 
9902         a constant I made up.
9903
9904 Thu Oct 26 07:36:16 2000  Tim Janik  <timj@gtk.org>
9905
9906         * gtk/Makefile.am: buncha cleanups, kludged build sources
9907         dependencies with a Makefile: oldest-source-stamp dependancy
9908         for the moment. automake is really fighting us here, with
9909         intentionally not allowing user-defined rules or dependancies
9910         prior to it's -include $(DEP_FILES) statement. sucks rocks!
9911
9912         * gtk/Makefile.am: added gtktextlayout.h and gtktextdisplay.h
9913         to public headers. tehy have a comment stating that they are
9914         "semi-public" aren't included by gtk.h and if enums popup there,
9915         they can be /*< skip >*/-ed.
9916
9917         * gtk/gtktextlayout.h: 
9918         * gtk/gtktextdisplay.h: indentation fixes, comment fixes,
9919         added LGPL... <SIGH>
9920
9921 Wed Oct 25 20:40:25 2000  Jonathan Blandford  <jrb@redhat.com>
9922
9923         * gtk/gtktreemodel.h: Got rid of GtkTreeNode, and changed it to
9924         GtkTreeIter.  Added iterators everywhere.
9925
9926         * gtk/gtktreeviewcolumn.c: Changed to use the iterators.
9927
9928         * gtk/gtktreeviewselection.c: Changed to use the iterators.
9929
9930         * gtk/gtktreestore.c: Changed to use the iterators.
9931
9932         * gtk/gtkliststore.c: Commented out the code.  Will convert to
9933         iterators tomorrow.
9934
9935         * gtk/gtkmodelsimple.c: Commented out the code.  Will convert to
9936         iterators tomorrow.
9937
9938         * gtk/treestoretest.c: Changed to use iterators.
9939
9940         * demos/testgtk/main.c: Moved to use the new iterator system.
9941
9942 Thu Oct 26 02:10:32 2000  Tim Janik  <timj@gtk.org>
9943
9944         * gtk/Makefile.am: invoke maketypes.awk with LC_ALL=C to avoid
9945         localization misbehaviour.
9946
9947         * gtk/gtk-boxed.defs: nuked "boxed" type GtkCTreeNode, since it's
9948         a useless type without copy/free.
9949
9950         * gtk/gtkctree.c (gtk_ctree_class_init): use GTK_TYPE_POINTER instead
9951         of GTK_TYPE_CTREE_NODE.
9952
9953 Thu Oct 26 00:51:52 2000  Tim Janik  <timj@gtk.org>
9954
9955         * gtk/gtksignal.c:
9956         (gtk_signal_emitv): use g_value_set_static_{string|boxed} where
9957         applicable.
9958
9959         * gtk/gtk-boxed.defs (GtkSelectionData): specify
9960         gtk_selection_data_copy and gtk_selection_data_free
9961         do GtkSelectionData work as params in signals.
9962
9963 Wed Oct 25 20:47:41 2000  Tim Janik  <timj@gtk.org>
9964
9965         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init): urg, removed
9966         implementation of gtk_marshal_VOID__INT_INT_INT_INT. if people do that,
9967         couldn't they at least give it a non-standard name?
9968         
9969         * gtk/gtktextlayout.c: arg! yet another implementation of
9970         gtk_marshal_VOID__INT_INT_INT_INT(), is this a conspiracy?
9971
9972         * gtk/gtktextbuffer.c: gotcha! captured a vagabonding
9973         gtk_marshal_VOID__INT_POINTER_INT() implementation, braught it back
9974         home. now i know this _is_ a conspiracy.
9975
9976         * gtk/gtkwidget.c (gtk_widget_class_init): marshaller fixups for
9977         ::state-changed.
9978
9979         * gtk/gtkaccelgroup.c (gtk_accel_group_create_remove): 
9980         (gtk_accel_group_create_add): marshaller signature fixups.
9981
9982         * gtk/gtklistitem.c (gtk_list_item_class_init): signal creation fixups,
9983         pass in GTK_TYPE_SCROLL_TYPE instead of GTK_TYPE_ENUM.
9984
9985         * gtk/gtkobject.[hc]: removed GTK_CONNECTED flag, it's not valid
9986         anymore.
9987
9988 Tue Oct 24 23:59:21 2000  Tim Janik  <timj@gtk.org>
9989
9990         * docs/reference/Makefile.am: disabled SUBDIRS for the moment, since
9991         due to the signal system changes, it wouldn't build currently. to
9992         be fixed soon.
9993
9994         * docs/Changes-2.0.txt: GtkSignal/GSignal updates.
9995
9996         * gtk/gtkwidget.c: ::direction_changed takes an enum as argument,
9997         so it needs gtk_marshal_VOID__ENUM() instead of
9998         gtk_marshal_NONE__UINT().
9999
10000         * gdk/gdk*.c: adapted type registration functions.
10001
10002         * gtk/gtkbindings.c:
10003         * gtk/gtkaccelgroup.c: operate on GSignalQuery, GtkSignalQuery is
10004         gone.
10005
10006         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType.
10007
10008         * gtk/gtkobject.c:
10009         (gtk_object_destroy):
10010         (gtk_object_shutdown): fixed recursion guards. basically we have to
10011         catch the case where any of GObject.shutdown() or gtk_object_destroy()
10012         is called during ::destroy, and avoid recursion there.
10013
10014         * gtk/gtktypeutils.c:
10015         * gtk/maketypes.awk: awk-script hackup to provide gtk_type_init() with
10016         boxed_copy/boxed_free. this needs a more general solution based on a
10017         publically installed code-generator utility.
10018
10019         * gtk/gtktypeutils.[hc]: compat aliased GTK_TYPE_BOXED to G_TYPE_BOXED,
10020         glib's gobject has support for that now.
10021         define GtkSignalMarshaller in terms of GSignalCMarshaller.
10022
10023 Mon Oct 23 09:36:42 2000  Tim Janik  <timj@gtk.org>
10024
10025         * gtk/gtksignal.[hc]:
10026         * gtk/gtkmarshal.[hc]:
10027         * gtk/Makefile.am: generate marshallers with glib-genmarshal and don't
10028         compile gtkmarshal.c on its own anymore, just include it in gtksignal.c.
10029         removed #include <gtkmarshal.h>s all over the place, gtksignal.h takes
10030         care of that.
10031
10032         * *.c: marshaller name fixups.
10033
10034         * gtk/gtkmarshal.list: added a comment briefing the format.
10035
10036 Sun Oct 22 23:14:39 2000  Tim Janik  <timj@gtk.org>
10037
10038         * gtk/gtksignal.[hc]: nuked old implementation. we mostly have
10039         compatibility macros here now. more specifically, most of
10040         the API is preserved (yes, _most_, nonwithstanding the
10041         following exceptions listed, the API is stil lHUGE ;)
10042         things that got removed completely:
10043         GtkSignalQuery, gtk_signal_query(), gtk_signal_n_emissions(),
10044         gtk_signal_n_emissions_by_name(), gtk_signal_handlers_destroy(),
10045         gtk_signal_set_funcs(), gtk_signal_handler_pending_by_id(),
10046         gtk_signal_add_emission_hook(), gtk_signal_add_emission_hook_full(),
10047         gtk_signal_remove_emission_hook().
10048         non-functional functions variants:
10049         gtk_signal_add_emission_hook(), gtk_signal_remove_emission_hook().
10050         the GtkCallbackMarshal argument to gtk_signal_connect_full() is
10051         not supported anymore.
10052         (gtk_signal_compat_matched): new internal function to aid
10053         implementation of the compatibility macros, it  provides
10054         functionality to block/unblock/disconnect handlers based
10055         on func/data.
10056
10057         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType,
10058
10059         * *.c: adaptions to new type registration API signatures.
10060
10061 Fri Oct 20 15:26:33 2000  Tim Janik  <timj@gtk.org>
10062
10063         * gtk/gtktypeutils.[hc]: removed G_TYPE_GTK_POINTER cludge.
10064
10065 2000-10-25  Robert Brady  <robert@suse.co.uk>
10066
10067         * gdk/x11/gdkproperty-x11.c (gdk_property_get, gdk_property_change,
10068         gdk_property_delete): If window == NULL, assume the root window.
10069         (restoring the behaviour that was in 1.2).
10070         
10071         * gtk/testtext.c (save_buffer): Allow creation of new files when
10072         saving.
10073
10074         (fill_file_buffer): Don't die if a UTF-8 sequence is split across
10075         calls to read().
10076
10077 2000-10-25  Tor Lillqvist  <tml@iki.fi>
10078
10079         * gdk/gdkwindow.c: Include x11/gdkx.h only when building for X11.
10080
10081         * gdk/win32/gdkdrawable-win32.c
10082         * gdk/win32/gdkimage-win32.c
10083         * gdk/win32/gdkprivate-win32.h: Corresponding changes as in the
10084         X11 backend.
10085
10086         * gdk/win32/gdkcc-win32.c
10087         * gdk/win32/gdkcolor-win32.c
10088         * gdk/win32/gdkfont-win32.c
10089         * gdk/win32/gdkinput-win32.c
10090         * gdk/win32/gdkmain-win32.c
10091         * gdk/win32/gdkproperty-win32.c: Silence gcc -Wall.
10092
10093 2000-10-24  Havoc Pennington  <hp@redhat.com>
10094
10095         * gtk/gtktextview.c (gtk_text_view_scroll_to_mark_adjusted): make
10096         it a static function
10097
10098         * gtk/gtktextbtree.c (gtk_text_btree_tag): Gee, maybe we should
10099         redraw text when a tag is applied to it.
10100
10101         * gtk/gtktexttag.c (gtk_text_tag_affects_size)
10102         (gtk_text_tag_affects_nonsize_appearance): private functions to
10103         see if a tag requires various kinds of redraw/layout to be queued
10104         up.
10105
10106         * gtk/gtktexttag.h (struct _GtkTextTag): Remove relief crackrock
10107
10108         * gtk/testtext.c (fill_example_buffer): Put the cursor 
10109         at the start of the buffer, so search works by default
10110
10111         * gtk/gtktextiter.c (lines_match): init match_start always
10112
10113         * gtk/gtktextbuffer.c (gtk_text_buffer_get_iter_at_line_index): New
10114         function, get iter at a line + a byte index
10115
10116         * gtk/gtktextiter.c (gtk_text_iter_set_line_index): New function,
10117         to set byte position within a line
10118         (gtk_text_iter_check): remove leftover G_BREAKPOINT thing
10119
10120 2000-10-23  Havoc Pennington  <hp@redhat.com>
10121
10122         * gtk/testtext.c: Re-enable the "find" dialog
10123
10124         * gtk/testgtk.c: Add test for gdk_drawable_get_image
10125         
10126         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix bug where
10127         the arguments to gdk_draw_drawable were in the wrong order
10128         (gdk_window_paint_init_bg): This function was ignoring the
10129         init_region, instead of clipping to it, so the entire backing
10130         pixmap was cleared on every begin_paint()
10131         (gdk_window_begin_paint_region): Hmm, the same list-walking bug
10132         was in here again, the loop kept using the same GtkWindowPaint
10133         over and over.
10134         (gdk_window_begin_paint_region): Fix a bug where we had two
10135         x_offset instead of x_offset and y_offset
10136
10137         * gdk/gdkdraw.c (gdk_drawable_get_image): get composite drawable
10138         before we get the image.
10139         (gdk_draw_drawable): get the composite before we draw the drawable.
10140         (gdk_drawable_real_get_composite_drawable): default
10141         get_composite_drawable implementation that returns the drawable 
10142         itself
10143
10144         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Add
10145         get_composite_drawable virtual function
10146
10147         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix a cheesy
10148         list-walking bug
10149
10150         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable): Add a hack to
10151         make this work if the source drawable is a GdkDrawableImplX11
10152         instead of a public drawable type. This is really broken; the
10153         problem is that GdkDrawable needs a virtual method get_xid(), but
10154         of course that doesn't work in practice. Enter RTTI.
10155
10156         Also, improve mismatched depth message.
10157
10158         * gdk/gdkpixmap.c (gdk_pixmap_get_image): Implement get_image for
10159         GdkPixmap
10160
10161         * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_class_init):
10162         install _gdk_x11_get_image as our implementation of get_image
10163         
10164         * gdk/x11/gdkimage-x11.c (gdk_image_get): Rename to
10165         _gdk_x11_get_image and export for use in gdkdrawable-x11.c
10166
10167         * gdk/gdkimage.c (gdk_image_get): Make this just a wrapper around
10168         gdk_drawable_get_image
10169
10170         * gdk/gdkdraw.c (gdk_drawable_get_image): call virtual get_image
10171
10172         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Virtualize
10173         get_image
10174
10175         * gtk/gtktreestore.c (gtk_tree_store_get_node): remove weird
10176         trailing semicolon after for loop
10177
10178 Mon Oct 23 12:07:57 2000  Owen Taylor  <otaylor@redhat.com>
10179
10180         * gtk/gtkwidget.c (gtk_widget_set_style_internal): Fix problem
10181         where font_desc for widget's context lagged widget's font_desc by
10182         one step.
10183
10184 2000-10-22  Tor Lillqvist  <tml@iki.fi>
10185
10186         * gdk/win32/gdkgc-win32.c
10187         * gdk/win32/gdkimage-win32.c: Remove gcc -Wall warnings.
10188
10189         * gtk/makefile.mingw.in
10190         * gtk/gtk.def: Updates.
10191
10192         * gtk/testgtk.c: sleep() is called _sleep in MS's C
10193         library.
10194
10195         * gtk/gtkimcontextsimple.c: Include <stdlib.h> for bsearch().
10196
10197         * gtk/makefile.msc: Remove
10198
10199         * gtk/makefile.msc.in: New file, like makefile.mingw.in.
10200
10201         * gtk/Makefile.am: Add it.
10202
10203         * configure.in: Generate it.
10204
10205         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor)
10206         * gtk/gtktextbtree.c (gtk_text_line_char_to_byte): Return
10207         something even if not implemented, to satisfy picky MSVC.
10208
10209         Patches by Hans Breuer:
10210         
10211         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_glyphs): Call
10212         SetBkMode() and SetTextAlign() before calling
10213         pango_win32_render().
10214
10215         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_values_to_win32values):
10216         Set hcliprgn to NULL after destroying it.
10217         (gdk_gc_set_clip_rectangle): Delete hcliprgn and set to NULL.
10218
10219         * gdk/win32/gdkgeometry-win32.c
10220         (_gdk_windowing_window_queue_antiexpose): More effective
10221         implementation.
10222
10223         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_new): Use drawable's
10224         depth as default, not the visual's.
10225
10226         * gdk/win32/gdkwindow-win32.c (gdk_window_set_title): Guard
10227         against empty title.
10228
10229         * gdk/win32/gdkprivate-win32.h: Define a helper macro,
10230         IMAGE_PRIVATE_DATA.
10231
10232         * gdk/win32/gdkimage-win32.c: Use it.
10233
10234 2000-10-22  Robert Brady  <robert@suse.co.uk>
10235
10236         * configure.in: Check for bind_textdomain_codeset
10237
10238         * gtk/gtkmain.c (gtk_init_check): If bind_textdomain_codeset 
10239         present, make use of it.
10240
10241         Add a translatable string "default:LTR" which, if translated
10242         to "default:RTL", will cause the default direction to be
10243         Right-to-Left.
10244
10245         * gtk/gtkrange.h, gtk/gtkrange.c: Take into account the widget 
10246         direction if marked as flippable.
10247
10248         * gtk/gtkhscale.c: Mark widget as flippable.
10249         
10250 2000-10-04  Havoc Pennington  <hp@redhat.com>
10251
10252         * gtk/testgtk.c (create_buttons): create some stock buttons
10253         with the default accel group
10254         (create_image): test some new GtkImage features
10255         (make_message_dialog): test GtkMessageDialog
10256         (create_modal_window): fix someone's bizzarro indentation
10257
10258         * gtk/gtkwindow.h, gtk/gtkwindow.c: Implement 
10259         GTK_WIN_POS_CENTER_ON_PARENT. 
10260         Add "destroy with parent" setting, which means the window goes
10261         away with its transient parent.
10262         (gtk_window_get_default_accel_group): get the default accel group
10263         for the window.
10264         (gtk_window_set_destroy_with_parent): set/unset destroy with
10265         parent flag
10266         (gtk_window_read_rcfiles): invalidate icon set caches
10267         after reloading rcfiles 
10268
10269         * gtk/gtkenums.h (GtkWindowPosition): add
10270         GTK_WIN_POS_CENTER_ON_PARENT, which centers a dialog 
10271         on its parent window when the dialog is mapped for the first time.
10272
10273         * gtk/gtkmessagedialog.h, gtk/gtkmessagedialog.c: Add 
10274         a simple message dialog class
10275         
10276         * gtk/gtkdialog.c (gtk_dialog_init): Connect delete event 
10277         handler to emit response signal, and maybe later it would
10278         honor a hide_on_delete flag - though that isn't there yet.
10279         Set border width on the vbox to 2, so we get some padding.      
10280         Use a button box for the action area.
10281         (gtk_dialog_key_press): synthesize a delete event if Esc
10282         is pressed and the GtkWidget key press handler didn't 
10283         handle the escape key.
10284         (gtk_dialog_new_with_buttons): new function creates a dialog
10285         with some default buttons in it.
10286         (gtk_dialog_add_action_widget): add an activatable widget
10287         as a button in the dialog - you can also add a non-activatable
10288         widget by accessing the action area directly.
10289         (gtk_dialog_add_button): add a simple button - stock ID or 
10290         label - to the action area
10291         (gtk_dialog_response): emit response signal
10292         (gtk_dialog_run): block waiting for the dialog, return 
10293         the response. Override normal delete_event behavior, so that 
10294         delete_event does nothing inside gtk_dialog_run().
10295
10296         * gtk/gtkdialog.h, gtk/gtkdialog.c: Add "response" signal
10297         emitted when an action widget is clicked or the dialog gets
10298         delete_event
10299
10300         * gtk/gtk.h: add gtkmessagedialog.h
10301
10302         * gtk/Makefile.am: add gtkmessagedialog.[hc]
10303
10304 2000-10-18  Havoc Pennington  <hp@redhat.com>
10305
10306         * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): Fix a bug 
10307         where any number of empty lines would get skipped
10308
10309         * gtk/gtktextiter.h: Remove padding from GtkTextIter; live on the
10310         edge.
10311
10312         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): enhance the
10313         warning about invalid iterators (explain more thoroughly)
10314         (gtk_text_iter_in_region): rename gtk_text_iter_in_range
10315
10316         * gtk/gtktextview.c (FOCUS_EDGE_WIDTH): Make focus rectangle less
10317         big
10318
10319         * demos/*.c: Add error handling
10320
10321         * gtk/gtktextbuffer.c: don't modify const iterators
10322
10323         * gtk/gdk-pixbuf-loader.c: Add full error handling here
10324
10325         * gtk/gtkimage.c (gtk_image_set_from_file): ignore errors
10326         on file load
10327
10328         * gtk/gtkiconfactory.c: Update to reflect addition of error
10329         handling to gdk-pixbuf loaders
10330
10331 Wed Oct 18 11:14:05 2000  Owen Taylor  <otaylor@redhat.com>     
10332
10333         * configure.in demos/Makefile.am demos/testgtk/*: Start of work to
10334         move to new modularized testgtk.
10335
10336 2000-10-17  Jonathan Blandford  <jrb@redhat.com>
10337
10338         * gtk/gtktreeview.c: Draw the arrows correctly.
10339
10340         * gtk/gtktreemodel.c: Added user docs.
10341
10342         * gtk/gtk.h: remove gtktreedatalist.h.
10343
10344         * gtk/gtktreestore.c (gtk_tree_store_get_type): Get the correct
10345         parent when generating my type.
10346
10347         * gtk/gtkmarshal.list: Added four more marshallers: INT:NONE,
10348         POINTER:NONE, POINTER:POINTER, and POINTER:POINTER,INT.
10349
10350 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
10351
10352         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): Move
10353         GtkTreeModel from object to interface.
10354
10355 2000-10-16  Havoc Pennington  <hp@redhat.com>
10356
10357         * gtk/gtktreeviewcolumn.c: #include gtklabel.h, fixing 
10358         compilation
10359
10360 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
10361
10362         * gtk/gtktreeselection.c: Add API documentation to all public
10363         functions.
10364
10365         * gtk/gtktreeviewcolumn.c: Added API documentation to all public
10366         functions.
10367
10368 2000-10-15  Jonathan Blandford  <jrb@redhat.com>
10369
10370         * gtk/gtktreeview.c (gtk_tree_view_insert_column): New function
10371         proposed by Guy Harris <gharris@flashcom.net>.  Also, added API
10372         docs to all public functions.
10373
10374         * gtk/gtktreeview.c, gtk/gtktreeview.h, gtk/gtktreestore.h,
10375         gtk/gtktreestore.c, gtk/gtkliststore.h, gtk/gtkliststore.c,
10376         gtk/gtkmodelsimple.c, gtk/gtkmodelsimple.h, gtk/gtktreedatalist.c,
10377         gtk/gtktreemodel.h, gtk/gtktreeselection.c,
10378         gtk/gtktreeselection.h: Fix GtkTreeNode *node ->GtkTreeNode node
10379         issue.
10380
10381 2000-10-14  Robert Brady  <robert@suse.co.uk>
10382
10383         * configure.in: Added "fa" (Persian) to ALL_LINGUAS.
10384
10385 2000-10-12  Jonathan Blandford  <jrb@redhat.com>
10386
10387         * gtk/gtktreedatalist.[ch] (gtk_tree_data_list_value_to_node): Added
10388         values other then G_TYPE_STRING.
10389         * gtk/gtktreeselection.c: Minor commenting updates.
10390         * gtk/gtktreeview.c: Format updates.
10391
10392 2000-10-09  Tor Lillqvist  <tml@iki.fi>
10393
10394         * README.win32: Update.
10395
10396         * gdk/win32/gdkgeometry-win32.c (gdk_window_clip_changed): Add two
10397         lines that had been deleted by mistake (?).
10398
10399         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Handle
10400         also the case fg==white and bg==black (but still not randomly
10401         coloured cursors). Thanks to Wolfgang Sourdeau.
10402
10403         * gdk/win32/*.c: Silence gcc -Wall.
10404
10405         * gtk/gtk.def: Add missing entry points.
10406
10407         Fixes by Hans Breuer:
10408
10409         * gdk/makefile.msc
10410         * gdk/win32/makefile.msc: Update.
10411
10412         * gdk/testgdk.c: If compiling with debugging (with _DEBUG defined,
10413         some MSVC thing, presumably), cause breakpoint on failures. Add
10414         GDK_NOR case. Call g_log_set_always_fatal.
10415
10416         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_insert): Handle
10417         should be pased by reference.
10418         
10419         * gdk/win32/gdkprivate-win32.h: Correct declaration accordingly.
10420         
10421         * gdk/win32/*.c: Correct calls to gdk_win32_handle_table_insert.
10422
10423         * gdk/win32/gdkevents-win32.c
10424         * gdk/win32/gdkwindow-win32.c: Handle WM_CREATE.
10425
10426         * gdk/win32/gdkgc-win32.c: Fix mixups of drawable and
10427         implementation object.
10428
10429         * gdk/win32/gdkimage-win32.c (gdk_image_get): Handle drawables,
10430         not just windows.
10431         
10432         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_impl_win32_finalize):
10433         Use the wrapper object.
10434         
10435 2000-10-06  Havoc Pennington  <hp@redhat.com>
10436
10437         * Makefile.am (SRC_SUBDIRS): contrib subdir
10438
10439         * gdk/gdkpixbuf.h: Move GdkPixbufAlphaMode to gdk-pixbuf library,
10440         so it can be used in Xlib version
10441
10442         * demos/testpixbuf.c (update_timeout): error checking from 1.0
10443         tree
10444
10445         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_get_pixbuf): Sync
10446         change from 1.0 tree that returns first frame of animation
10447         if the loaded file is an animation.
10448
10449         * contrib: add new directory to hold stuff that comes with GTK+
10450         but isn't really part of GTK+ (for now, gdk-pixbuf-xlib)
10451         
10452         * configure.in: add contrib/*
10453
10454 2000-10-05  Havoc Pennington  <hp@redhat.com>
10455
10456         * demos/testpixbuf-save.c: add pixbuf save test
10457
10458         * demos/Makefile.am: add testpixbuf-save.c
10459
10460 2000-10-05  Jonathan Blandford  <jrb@redhat.com>
10461
10462         * gtk/gtktree.h (GTK_TREE_SELECTION): Replaced with
10463         GTK_TREE_SELECTION_OLD to prevent conflict with gtktreeselection.c
10464         * gtk/testgtk.c: s/GTK_TREE_SELECTION/GTK_TREE_SELECTION_OLD/
10465         * gtk/gtktreeselection.[ch]: Replaced
10466         "node_selected"/"node_unselected" signal with "selection_changed"
10467         signal.
10468
10469 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
10470
10471         * gtk/gtk{tree,cell}?*.[ch]: Checked in initial draft of the new
10472         tree widget.
10473
10474 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
10475
10476         * gdk/gdkwindow.c (gdk_window_draw_arc): Fix obvious bug in circle
10477         drawing.
10478
10479 Wed Oct  4 15:52:15 2000 Owen Taylor  <otaylor@redhat.com>
10480
10481         * gdk/x11/gdkselection-x11.c (_gdk_selection_window_destroyed):
10482         Move list pointer forwards before removing item from
10483         list. (Crash reported by Salmaso Raffaele)
10484
10485         * gdk/gdkwindow.h: Remove spurious trailing ,
10486
10487         * gdk/Makefile.am (LDFLAGS): You can't do interlibrary
10488         dependencies on uninstalled libraries, sorry folks.
10489
10490 2000-10-04  Havoc Pennington  <hp@redhat.com>
10491
10492         * gtk/gtkstock.h, gtk/gtkstock.c, gtk/gtkiconfactory.h,
10493         gtk/gtkiconfactory.c: Fix copyrights    
10494
10495         * demos/testpixbuf.c: add inline pixbuf test
10496         
10497 Mon Sep 25 15:05:17 2000  Owen Taylor  <otaylor@redhat.com>
10498
10499         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c (gdk_window_iconify):
10500         Add gdk_window_iconify.
10501
10502         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c
10503         (gdk_window_set_geometry_hints): Add win_gravity
10504         to geometry structure.
10505
10506         * gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter):
10507         Implement _NET_WM_PING.
10508
10509         * gdk/x11/gdkmain-x11.c (_gdk_windowing_init_check):
10510         Set _NET_WM_PID on the client leader.
10511
10512         * gdk/x11/gdkwindow-x11.c (gdk_window_set_icon_name):
10513         Handle UTF-8 better.
10514
10515         * gdk/x11/gdkwindow-x11.c (gdk_window_set_title): Handle
10516         UTF-8 better, set _NET_WM_NAME as well. Only set
10517         icon name if it hasn't previously been explicitely 
10518         set.
10519
10520 2000-10-03  Havoc Pennington  <hp@redhat.com>
10521
10522         * gtk/testtextbuffer.c: clean up trailing whitespace,
10523         add extensive tests for tag toggle iteration.
10524         
10525         * gtk/gtktextiter.c (MAX_LINEAR_SCAN): decrease linear scan 
10526         distance
10527
10528         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
10529         optimize case where the tag root is on level 1
10530         (gtk_text_line_previous_could_contain_tag): attempt to implement
10531         (gtk_text_line_next_could_contain_tag): Abstract out node_compare
10532         functionality
10533
10534         * gtk/gtktextiter.c (gtk_text_iter_backward_to_tag_toggle):
10535         Implement this, though not very efficiently.
10536
10537         * gtk/gtktextiterprivate.h: reformat
10538
10539         * gtk/gtktextiter.c (gtk_text_iter_get_char): return 0 on the end
10540         iterator
10541
10542         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_interactive): Fix
10543         this to properly revalidate the iterators.
10544
10545         * gtk/gtktextview.c (gtk_text_view_delete): fix control-K to work
10546         properly at the end of the line (and therefore on empty lines)
10547
10548         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Gee,
10549         maybe we should return a value...
10550
10551 2000-10-03  Tor Lillqvist  <tml@iki.fi>
10552
10553         * config.h.win32: Guard definition of alloca(). glib.h now handles
10554         that.
10555
10556         * gdk/gdk.def
10557         * gtk/gtk.def: Add new entry points.
10558
10559         Changes just to make GTK+ build without errors on Win32. No hope
10560         of it working in its current state, though...:
10561         
10562         * gdk/win32/gdkselection-win32.c: Remove gcc -Wall warnings.  Add
10563         some functions from the X11 backend, just to make GTK+ build.
10564
10565         * gdk/makefile.mingw.in
10566         * gtk/makefile.mingw.in: Use correct gdk_pixbuf version
10567         number. Add new object files.
10568
10569         * gtk/gtkclipboard.c: Include gdkwin32.h on Win32. Use
10570         GetMessageTime to get timestamp (where on X11 uses
10571         gdk_x11_get_server_time()).
10572
10573 2000-10-02  Havoc Pennington  <hp@pobox.com>
10574
10575         * gtk/gtktextview.c: text_window_* weren't static and should have
10576         been.
10577         Start work on child widgets; not yet complete, syncing to 
10578         office computer.
10579
10580         * gtk/gtktextchild.h: change this to contain a public interface,
10581         starting work on child interfaces.
10582         * gtk/gtktextchildprivate.h: move private interfaces here
10583
10584         * gtk/Makefile.am: update to reflect gtktextchildprivate.h
10585
10586         * gtk/gtktextview.h, gtk/gtktextview.c, gtk/gtktextbuffer.h,
10587         gtk/gtktextbuffer.c, gtk/gtktextiter.h, gtk/gtk/textiter.c, 
10588         gtk/gtktextmark.c: copyright notices
10589
10590         * gtk/gtktextmarkprivate.h: reformat, and put _ in front of
10591         internal functions      
10592
10593         * gtk/gtktextchild.c (_pixbuf_segment_new): put _ in front of
10594         internal function
10595
10596         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
10597         Reformatting    
10598
10599 2000-09-30  Havoc Pennington  <hp@pobox.com>
10600
10601         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Handle
10602         NULL start/end pointers
10603
10604         * gtk/gtktextbuffer.c: Write some docs
10605         (gtk_text_buffer_get_selection_bounds): Allow start/end to be
10606         NULL, so you can just check whether there's a selection.        
10607
10608         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): No need to 
10609         cleanup_line or segments_changed ourselves, it gets done 
10610         in unlink_segment
10611
10612         * gtk/gtktextmark.h:
10613         s/gtk_text_mark_deleted/gtk_text_mark_get_deleted/
10614         
10615         * gtk/gtktextsegment.h: Clean up some indentation and naming mess
10616
10617         * gtk/gtktextmark.c: delete some more old Tk cruft
10618
10619         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_mark): add ref to
10620         mark before removing it, so we can emit MARK_DELETED with a valid
10621         pointer.
10622         (gtk_text_buffer_mark_set): hold ref across signal emission
10623
10624         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): improve
10625         whining about attempts to delete special marks
10626
10627         * gtk/gtktextbuffer.c (_gtk_text_buffer_spew): Prepend with
10628         underscore, since it's internal.
10629
10630         * gtk/gtktextbuffer.h: Remove find_string prototype, this is 
10631         now implemented in terms of iterators in gtktextiter.h
10632
10633         * gtk/gtktextbuffer.c (gtk_text_buffer_set_text): 
10634         New function, destructively sets contents of buffer. Also 
10635         a convenient way to clear the buffer by setting text to ""
10636
10637         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): reformat
10638         multiline string literal
10639
10640         * gtk/testtext.c (text_changed_callback): Redraw line numbers if
10641         text changes.
10642
10643         * gtk/gtktextiter.c (forward_char): Return FALSE if new location 
10644         is not dereferenceable
10645         (gtk_text_iter_forward_lines): fix return value
10646
10647 2000-09-29  Havoc Pennington  <hp@redhat.com>
10648
10649         * gtk/gtktexttag.c (gtk_text_tag_set_priority): fix indentation
10650
10651         * gtk/gtktextview.c: Implement drag thresholding; change functions 
10652         that set border window size to have nicer name
10653         (gtk_text_view_mark_set_handler):  Fix this to have the 
10654         right signature.
10655
10656         * gtk/testtextbuffer.c (fill_buffer): Update with pixbuf changes
10657
10658         * gtk/testtext.c: Update with API changes, put line numbers on 
10659         both sides.
10660         
10661         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): Replace get_pixmap
10662         with this
10663
10664         * gtk/gtktextchild.h, gtk/gtktextchild.c: replace all pixmap with
10665         pixbuf; delete a big block of #if 0 Tk code
10666
10667         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_pixbuf): Replace 
10668         insert_pixmap with insert_pixbuf
10669
10670 2000-09-29  Martin Baulig  <baulig@suse.de>
10671
10672         * gdk-pixbuf.pc.in: Renamed to gdb-pixbuf-2.0.pc.in to avoid
10673         confusion with the GdkPixbuf of the GNOME 1.x platform.
10674
10675 2000-09-29  Havoc Pennington  <hp@pobox.com>
10676
10677         * gtk/gtktextview.c: Implement the side windows.
10678
10679         * gtk/testtext.c: Implement simple line numbering in the 
10680         left side window; seems to make scrolling sloooow. Oops.
10681         Also, cursor blink is for some reason causing redraws
10682         of the line numbers. Should investigate...
10683
10684 2000-09-28  Havoc Pennington  <hp@redhat.com>
10685
10686         * gtk/gtktextview.c: Set up infrastructure to deal with lots of 
10687         scrolling child windows, and draw focus rectangle properly.
10688         
10689         (gtk_text_view_buffer_to_window_coords):
10690         Coordinate transformation to deal with all these freaking windows
10691         and offsets
10692         (gtk_text_view_window_to_buffer_coords): transform the other way
10693
10694         * gtk/testtext.c (create_buffer): Update to match Pango API change
10695
10696         * gtk/gtktexttagtable.c (gtk_text_tag_table_foreach): Go over the
10697         anonymous tags
10698         (foreach_unref): don't emit remove signal from finalize, just
10699         set tag's parent to NULL
10700
10701 2000-09-26  Havoc Pennington  <hp@redhat.com>
10702
10703         * gtk/gtkiconfactory.c (gtk_icon_set_clear): remove
10704         Fix some warnings       
10705
10706 2000-09-26  Havoc Pennington  <hp@redhat.com>
10707
10708         * gtk/Makefile.am (gtk_private_h_sources): Move more text widget
10709         headers into the private header list
10710
10711         * Makefile.am (pkgconfig_DATA): install pkg-config files
10712
10713         * configure.in: add pkg-config files
10714
10715         * gdk-2.0.pc.in, gdk-pixbuf.pc.in, gtk+-2.0.pc.in: pkg-config files
10716
10717         * gtk/gtkwindow.c (gtk_window_read_rcfiles): Invalidate
10718         outstanding icon caches on theme change.
10719
10720         * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: New icon system. Three 
10721         important types:
10722
10723         (GtkIconSource): Specification for creating a pixbuf 
10724         appropriate for a direction/state/size triplet from 
10725         a source pixbuf or filename
10726
10727         (GtkIconSet): List of GtkIconSource objects that are used to
10728         create the "same" icon (e.g. an OK button icon), and cache for
10729         rendered icons
10730
10731         (GtkIconFactory): Hash from stock ID to GtkIconSet; used to look
10732         up the icon set for a given stock ID.  GTK maintains a stack of
10733         GtkIconFactory to search, and applications or libraries can add
10734         additional icon factories on top of the stack
10735         
10736         * gtk/gtkrc.h, gtk/gtkrc.c: When loading an RcStyle, parse 
10737         the set of GtkIconSource specified for a given stock ID into 
10738         a GtkIconSet, and put the GtkIconSet into a GtkIconFactory for the 
10739         RcStyle, under the specified stock ID.
10740
10741         * gtk/gtkstyle.h, gtk/gtkstyle.c: Add a virtual function
10742         render_icon used to derive a GdkPixbuf from a GtkIconSource.
10743         This allows people to theme how prelight, insensitive, etc. are
10744         done.
10745
10746         (gtk_style_lookup_icon_set): Look up a stock ID in the list of
10747         icon factories for a style, and return the resulting 
10748         icon set if any.
10749
10750         (gtk_style_render_icon): Render an icon using the render_icon 
10751         method in the GtkStyleClass.
10752
10753         * gtk/gtkwidget.h, gtk/gtkwidget.c (gtk_widget_render_icon): 
10754         Use the style for a given widget to look up a stock ID, get the
10755         icon set, and render an icon using the render_icon method 
10756         of the style
10757
10758         * gtk/gtkstock.h, gtk/gtkstock.c: Header with the GtkStockItem type
10759         (contains information about a stock item), the built-in stock item
10760         IDs, and functions to add/lookup stock items.
10761
10762         * gtk/stock-icons/*: Stock icons that come with GTK
10763
10764         * gtk/gtkbutton.h, gtk/gtkbutton.c (gtk_button_new_stock): Returns
10765         a button based on a GtkStockItem
10766         (gtk_button_new_accel): Takes a uline string and accel group, and
10767         installs the accelerator.
10768
10769         * gtk/gtkimage.h, gtk/gtkimage.c: Make this into a generic
10770         image-display widget.
10771
10772 2000-09-25  Havoc Pennington  <hp@redhat.com>
10773
10774         * gtk/gtktexttypes.c: Remove Latin1 conversion stuff
10775
10776         * gtk/gtktextbtree.c (gtk_text_btree_node_remove_data): 
10777         Fix a bug when removing node data, we didn't properly 
10778         re-splice the linked list after removing the data.
10779
10780         * gtk/gtktextview.c (gtk_text_view_key_press_event): Pass through 
10781         GDK_Tab as literal tab, Ctrl-Tab to tab to focus widget
10782
10783         * gtk/gtktextbuffer.c (selection_received): fix g_convert usage
10784
10785         * gtk/gtktextlayout.c (set_para_values): Set tab array 
10786         for the layout from the GtkTextTag.
10787
10788         * gtk/gtktexttypes.h: delete tab and search cruft, 
10789         remove g_convert() in favor of GLib version
10790
10791         * gtk/gtktexttypes.c: remove tab implementation from here,
10792         move to Pango
10793
10794         * gtk/gtktexttag.h, gtk/gtktexttag.c: Implement 
10795         tab stuff using new PangoTabArray from Pango
10796
10797         * gtk/gtktexttag.c (gtk_text_attributes_fill_from_tags): Remove
10798         unused border_width stuff
10799
10800 Thu Sep 14 12:21:12 2000  Owen Taylor  <otaylor@redhat.com>
10801
10802         * gtk/gtktexttypes.[ch]: Remove g_convert (moved to
10803         glib) and now useless utf_to_latin1() latin1_to_utf()
10804
10805         * gtk/gtktextview.[ch]: Change ::move_insert and
10806         ::delete_text action signals to ::move and ::delete;
10807         create the signals with the right enumeration type,
10808         not GTK_TYPE_ENUM so that bindings work. Add C-d, M-d,
10809         C-v bindings, change Home, End to move to beginning/end
10810         of line, Add C-Home C-End to move to beginning/end
10811         of buffer. Change ::cut_text to ::cut_clipboard, etc;
10812         combine ::scroll_text into ::move; use new GtkSelectionData
10813         functions to simplify DND text handling.
10814         
10815         * gtk/gtkenums.h gtk/gtktextview.h: Move movement,
10816         deletion enumerations here, rename enumeration values to 
10817         be consistently plural.
10818
10819         * gtk/gtktextbuffer.c: Use new clipboard interfaces
10820         for cut/copy/paste and primary selection.
10821
10822         * gtk/gtktextbuffer.[ch]: Remove excess time and
10823         'interactive' arguments from cut/copy/paste;
10824         rename cut to cut_clipboard, etc; remove
10825         gtk_text_buffer_get_clipboard_contents().
10826
10827         * gtk/gtktextlayout.[ch]: Add 
10828         gtk_text_layout_move_iter_to_line_end() to move the iter to 
10829         line ends.
10830
10831         * gtk/gtkselection.[ch] (gtk_selection_data_set/get_text):
10832         Functions to set or get a UTF-8 string on the selection
10833         data.
10834
10835         * gtk/gtkclipboard.[ch]: New, simplified selection handling
10836         interfaces.
10837
10838         * gtk/gtkinvisible.c (gtk_invisible_new): Realize newly
10839         created widgets - one of these is useless if we don't.
10840
10841         * gtk/gtkselection.[ch] (gtk_selection_clear_targets): Export
10842         a public function clear all targets registered for the
10843         widget.
10844
10845         * gtk/gtkselection.c (gtk_selection_owner_set) docs/Changes-2.0.txt:
10846         Never call gtk_widget_realize() - that was just asking
10847         for bizarre side-effects.
10848
10849         * gtk/gtkselection.c (gtk_selection_owner_set): Call
10850         gdk_selection_owner_set even if the widget is the
10851         same so that we reliably update the timestamp on
10852         the server.
10853
10854         * gdk/x11/gdkevents-x11.c gdk/x11/gdkx.h: Add a 
10855         gdk_x11_get_server_time() function.
10856         
10857         * gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.h
10858         gdk/x11/gdkselection-x11.c gdk/x11/gdkwindow-x11.h:
10859         Add some tricky filtering on serial numbers for
10860         selection clear events to fix up long-standard
10861         race condition FIXME's in gtkselection.c.
10862
10863         * gdk/gdkproperty.h gdk/x11/gdkselection-x11.h: Add
10864         routines to convert from utf8 to compound text or
10865         STRING and from a text property to UTF-8.
10866
10867         * gtk/gtkmain.[ch] (gtk_get_current_event_time): Add 
10868         a convenience function gdk_get_current_event_time().
10869
10870         * gtk/gtkselection.c (gtk_selection_data_copy/free): Copy
10871         and free selection_data->data properly
10872
10873 Sat Sep  9 10:23:53 2000  Owen Taylor  <otaylor@redhat.com>
10874
10875         * gtk/gtkthemes.c: Remove some unecessary includes.
10876
10877 2000-09-08  Jonathan Blandford  <jrb@redhat.com>
10878
10879         * gtk/gtktextdisplay.c
10880         * gtk/gtktextlayout.c
10881         * gtk/gtktexttag.c
10882         * gtk/gtktexttag.h
10883         * gtk/testtext.c: Change the overstrike property to strikethrough,
10884         to closer match pango.
10885
10886 Fri Sep  8 14:28:00 2000  Owen Taylor  <otaylor@redhat.com>
10887
10888         * gtk/gtktextview.c: Fix up visibility so that focus,
10889         cursor_visible and blink interact properly.  Reenable cursor blink
10890         which had been roughly disabled. Make blink and focus
10891         properly per-view.
10892
10893         * gtk/gtktextlayout.[ch] (gtk_text_layout_set_cursor_visible):
10894         Add a flag for whether to display insertion cursor and
10895         a function to set the flag.
10896
10897         * gtk/gtktextlayout.c (gtk_text_layout_get_line_yrange): Change
10898         get_line_y() to get_line_yrange(), to be a bit more generally
10899         useful.
10900
10901 Thu Sep 07 20:54:33 2000  George Lebl <jirka@5z.com>
10902
10903         * gtk/gtkmenu.c:  in gtk_menu_set_submenu_navigation_region
10904           do stop_navigating_submenu, to clear last timeout properly.
10905           Also in gtk_menu_motion_notify move ignore_enter above
10906           the conditional to make it always happen as suggested by Owen
10907
10908 2000-09-07  Tor Lillqvist  <tml@iki.fi>
10909
10910         * gdk/win32/makefile.mingw.in: Use -Wall. Add gdkpango-win32.o
10911
10912         * gdk/win32/gdkwin32.h: Add more definitions missing from the free
10913         w32api headers.
10914
10915         * gdk/win32/gdkprivate-win32.h: Add a couple of missing
10916         declarations.
10917
10918         * gdk/win32/gdkdrawable-win32.c: Remove gcc -Wall warnings.
10919         (gdk_win32_get_colormap): A line had been deleted by mistake.
10920
10921         * gdk/win32/gdkevents-win32.c: Remove lint (gcc -Wall) here, too.
10922         (gdk_event_translate): Handle more virtual keycodes to be able to
10923         generate GDK events for Control-comma, Control-period, etc.
10924
10925         * gtk/gtk.def: Add some missing entry points.
10926
10927 Thu Sep  7 11:47:02 2000  Owen Taylor  <otaylor@redhat.com>
10928
10929         * gtk/gtktextbuffer.c gtk/gtkimcontext.c gtk/gtkwidget.c:
10930         Doc comment fixing. (Mostly non-matching parameter names.)
10931
10932         * gtk/gtkcalendar.c gtk/gtklist.c gtk/gtknotebook.c: Modify
10933         comments a little to avoid looking like a doc comment.
10934
10935         * gtk/gtkspinbutton.h (GTK_INPUT_ERROR): Change INPUT_ERROR to
10936         GTK_INPUT_ERROR. (Should the mechanism for erros in spin button
10937         conversions be changed to GError?)
10938
10939         * gtk/gtkcolorsel.c (GTK_CUSTOM_PALETTE_WIDTH/HEIGHT): 
10940         Move private #defines into .c file.
10941
10942         * gtk/gtktexttag.c (gtk_text_tag_class_init): Alphabetize
10943         order of argument addition, remove duplicates.
10944
10945         * gtk/gtkaspectframe.h (struct _GtkAspectFrameClass):
10946         parent class is FrameClass, not BinClass.
10947
10948         * gtk/gtk.h: Add gtkinvisible, which was missing.
10949         (It's occasionalyl useful for client apps, if seldom.)
10950
10951         * gdk/gdktypes.h: Remove obsolete GDK_CORE_POINTER
10952         #define.
10953
10954 Wed Sep  6 09:53:15 2000  Owen Taylor  <otaylor@redhat.com>
10955
10956         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Use X-space
10957         coordinates when creating window, instead of GDK-space
10958         coordinates. (Avoid BadValue on too large windows.)
10959
10960 2000-09-05  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
10961
10962         * configure.in (use_mmx_asm): Remove conftest* after use along the
10963         lines of AC_TRY_COMPILE.        
10964         
10965         * gtk/gtkrc.c (gtk_rc_parse_file): Use g_path_get_dirname instead
10966         of g_dirname, which is deprecated.
10967         (gtk_rc_parse_any): Removed calls to
10968         g_scanner_{freeze,thaw}_symbol_table, which are deprecated.
10969
10970         * gtk/gtkbindings.c (binding_entry_new, binding_entry_destroy):
10971         Removed calls to g_hash_table_{freeze,thaw}, as they are
10972         deprecated now.
10973
10974         * gtk/testtext.c (buffer_pretty_name): Use g_path_get_basename
10975         instead of g_basename.
10976         
10977 2000-09-04 Elliot Lee <sopwith@redhat.com>
10978         
10979         * gdk/gdkpixbuf.h: Put text after #endif inside a comment to avoid
10980         ANSI warning.
10981
10982 Sun Sep 03 00:47:08 2000  George Lebl <jirka@5z.com>
10983
10984         * gtk/gtkwidget.h:  Add some documenting comments about 
10985           GTK_CAN_DEFAULT, GTK_HAS_DEFAULT and GTK_RECEIVES_DEFAULT
10986           just as owen said on irc.
10987
10988         * gtk/gtkwindow.c (gtk_window_set_default):  Don't blindly
10989           set HAS_DEFAULT.  Only set it if there isn't another window
10990           holding it (a focus window which RECEIVES_DEFAULT) and only unset
10991           it if the widget is not the focused window with RECEIVES_DEFAULT.
10992           This fixes weird double default bugs in dialogs which has things
10993           call gtk_window_set_default at times.
10994
10995 Fri Sep  1 22:39:07 2000  Owen Taylor  <otaylor@redhat.com>
10996
10997         * gtk/gtkmenu.[ch] TODO.xml: Apply patch from
10998         Nils Barth and David Santiago to improve submenu
10999         navigation. The patch does this by creating a triangular
11000         region from the point where the pointer leaves the
11001         menu to the submenu.  While the pointer is in
11002         that region and a timeout has not expired, events 
11003         that would cause the active submenu to change are
11004         ignored.
11005
11006 Fri Sep  1 15:34:46 2000  Owen Taylor  <otaylor@redhat.com>
11007
11008         * gdk/x11/gdkwindow-x11.c (gdk_window_move): Fix bug where
11009         moving a toplevel window immediately after sizing it would
11010         result in it being sized back to the old size since 
11011         impl->width, impl->height aren't updated until we hear
11012         back from the server. There is still a (longstanding) bug
11013         here that gdk_window_get_size() will give the wrong size
11014         until we do hear back.
11015
11016 2000-08-31  Havoc Pennington  <hp@redhat.com>
11017
11018         * gtk/gtktextiter.h, gtk/gtktextiter.c, gtk/gtktextlayout.h, 
11019         gtk/gtktextlayout.c, gtk/gtktexttag.h, gtk/gtktexttag.c, 
11020         gtk/gtktexttagprivate.h, gtk/gtktextview.c:
11021         Rename GtkTextStyleValues to GtkTextAttributes
11022
11023 2000-08-31  Havoc Pennington  <hp@pobox.com>
11024
11025         * gtk/gtktextbtree.c (GtkTextBTree): cache end line, 
11026         for rapid testing whether an iterator is the end iterator
11027         (gtk_text_btree_new): init end line cache
11028         (gtk_text_line_is_last): use fast cached line to 
11029         see if we're the last line.
11030         (get_last_line): use cached line here too, should 
11031         speed up some random unrelated code.
11032         
11033 2000-08-30  Havoc Pennington  <hp@pobox.com>
11034
11035         * gtk/gtkmarshal.list: Add marshallers for changed GtkTextBuffer
11036         signals.
11037
11038         * gtk/gtktextbuffer.h: Add "interactive" arg to insert_text and
11039         delete_text signals. This allows the signals to be used for
11040         implementing undo.
11041
11042         * gtk/gtktextbuffer.c: Change signal handler signatures; 
11043         provide "interactive" argument when emitting insert_text or
11044         delete_text signal.
11045         
11046 2000-08-30  Havoc Pennington  <hp@pobox.com>
11047
11048         * gtk/gtktextbuffer.c: Docs
11049
11050 Fri Aug 25 12:16:15 2000  Owen Taylor  <otaylor@redhat.com>
11051
11052         * gdk/x11/gdkimage-x11.c: remove GDK_IMAGE_SHARED_PIXMAP
11053         from switch statements, since Tor removed the enumeration
11054         value.
11055         
11056         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
11057         s/GDK_IS_WINDOW/GDK_IS_DRAWABLE/.
11058
11059 2000-08-29 Elliot Lee <sopwith@redhat.com>
11060         * */*.h: Use G_GNUC_CONST.
11061
11062 2000-08-27  Havoc Pennington  <hp@pobox.com>
11063
11064         * gtk/gtktextiter.c, gtk/gtktextiter.h: wrote lots of API docs,
11065         minor indentation fixes, inserted some FIXME about stuff I
11066         realized was broken while documenting it.
11067         (gtk_text_iter_get_pixmap): allow out params to be NULL, following
11068         GTK convention  
11069
11070 Tue Aug 22 12:33:24 2000  Owen Taylor  <otaylor@redhat.com>
11071
11072         * gtk/testgtk.c (create_styles): Fix double free of
11073         font desc.
11074
11075 Mon Aug 21 22:39:18 2000  Owen Taylor  <otaylor@redhat.com>
11076
11077         * gtk/gtkwidget.[ch]: Add gtk_widget_modify_{fg,bg,text,base,font}.
11078         
11079         * gtk/testgtk.c (create_styles): Add a test for modifying
11080         the style through gtk_widget_modify_*.
11081
11082         * gtk/gtkwidget.c (gtk_widget_get_modifier_style): Add
11083         a function to get the current modifier style.
11084
11085         * gtk/gtkwidget.c (gtk_widget_modify_style): Make a copy
11086         of the passed in GtkRcStyle instead of ref'ing it.
11087
11088         * gtk/gtkrc.[ch]: Add gtk_rc_style_copy().
11089
11090 2000-08-20  Tor Lillqvist  <tml@iki.fi>
11091
11092         * gdk/gdkimage.h
11093         * gdk/win32/gdkimage-win32.c: No need any longer on Win32 for the
11094         shared memory image+pixmap GdkImage type, or
11095         gdk_image_bitmap_new(). They were used in the gdk_imlib port, but
11096         I am dropping that.
11097
11098         * gtk/gtkmain.h: On Win32, use a #define to map gtk_init() to
11099         actually call gtk_init_abi_check(), passing also
11100         sizeof(GtkWindow). Ditto for gtk_init_check(). 
11101
11102         * gtk/gtk.def
11103         * gtk/gtkmain.c: (gtk_init_abi_check, gtk_init_check_abi_check):
11104         New functions, used to check that the GTK+-using code has been
11105         compiled using the correct compiler and switches. In particular,
11106         with gcc one has to use the -fnative-struct switch as GTK+ is
11107         compiled with that.
11108
11109 Fri Aug 18 17:27:46 2000  Owen Taylor  <otaylor@redhat.com>
11110
11111         * gtk/gtkclist.c (gtk_clist_merge): Don't leave dangling
11112         ->prev fields when merging lists. (Found simultaneously
11113         by Pawel Salek and Jakub Jelinek)
11114
11115 2000-08-12  Tor Lillqvist  <tml@iki.fi>
11116
11117         * gdk/gdk.def
11118         * gtk/gtk.def: Add missing entries.
11119
11120         * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Use
11121         OUT_TT_ONLY_PRECIS, try to get a TrueType font.
11122
11123         * gdk/win32/gdkinput-win32.c (gdk_device_get_state): New
11124         function. Dummy implementation at this point.
11125
11126         * gtk/makefile.mingw.in: Fix typo. Add testtext and testtextbuffer
11127         rules. Undefine GTK_COMPILATION when compiling the test programs.
11128         
11129         * gtk/gtkdebug.h: Mark gtk_debug_flags for export/import.
11130
11131 2000-08-11  Tor Lillqvist  <tml@iki.fi>
11132
11133         * gtk/gtkfilesel.c: Add more calls to g_filename_{to,from}_utf8()
11134         to convert back and forth from UTF-8 and the "system" (or "current
11135         locale") charset when necessary. Indentation/spacing cleanup.
11136
11137 2000-08-10  Havoc Pennington  <hp@redhat.com>
11138
11139         * Makefile.am (snapshot): Change the format of the snapshot
11140         version to match glib
11141
11142         * gdk/win32/Makefile.am (EXTRA_DIST): remove gdkinputprivate.h
11143         from EXTRA_DIST since it doesn't seem to exist
11144
11145 2000-08-10  Tor Lillqvist  <tml@iki.fi>
11146
11147         * gtk/gtkfilesel.c (open_new_dir): Use the "system codepage"
11148         version of the directory name (not the UTF-8 one) when building
11149         the path name to stat().
11150
11151 2000-08-03  Elliot Lee  <sopwith@redhat.com>
11152
11153         * gdk/gdkpango.c (gdk_draw_layout_line): Don't shape runs with a
11154         PANGO_ATTR_SHAPE set.
11155
11156 Thu Aug  3 09:17:06 2000  Owen Taylor  <otaylor@redhat.com>
11157
11158         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Applied patch from
11159         Peter Osterlund to simplify the code while keeping the
11160         functionality the same.
11161
11162 Wed Aug  2 14:57:38 2000  Owen Taylor  <otaylor@redhat.com>
11163
11164         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Move
11165         is_viewable() test further inside the function, since removing the 
11166         window from the redraw list without clearing ->update_area
11167         was also very broken.
11168
11169 2000-08-02  Tor Lillqvist  <tml@iki.fi>
11170
11171         * configure.in: Check for <unistd.h>.
11172
11173 2000-08-01  Martin Baulig  <baulig@suse.de>
11174
11175         * gtk/gtkmain.c (gtk_init_check): Use g_message() and not g_warning()
11176         to display the message that this is a development version of GTK+.
11177
11178 Mon Jul 31 18:37:36 2000  Owen Taylor  <otaylor@redhat.com>
11179
11180         * gtk/gtkentry.c (entry_adjust_scroll): Fix problem where computation
11181         was depending on widget->allocation instead of the width of text_area,
11182         which was incorrect for subclasses like GtkSpinButton.
11183
11184         * gdk/gdkpango.c (gdk_draw_layout): Fix a couple of typos
11185         with width == 1 tests that should be width == -1.
11186
11187 Mon Jul 31 16:45:48 2000  Owen Taylor  <otaylor@redhat.com>
11188
11189         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Replace broken, 
11190         (broken, Elliot, every single window blank on X) custom code with call
11191         to gdk_window_is_viewable() which a) prevents code duplicate and
11192         b) works. 
11193
11194 2000-07-31  Elliot Lee  <sopwith@redhat.com>
11195
11196         * gtk/gtkcolorsel.c: We really do need to include gdkfb.h in order
11197         to get the GDK_PARENT_ROOT() macro to work.
11198         * gtk/gtkmarshal.list: Add NONE:STRING,POINTER
11199         * gdk/gdkwindow.c: Don't send expose events, or invalidate pieces
11200         of, windows that aren't shown.
11201         * gdk/linux-fb: Redraw-when-menu-hidden solved, plus a bunch of
11202         pointer grab stuff.
11203
11204 Mon Jul 31 13:53:16 BST 2000  Tony Gale <gale@gtk.org>
11205
11206         * docs/gtkfaq.sgml docs/gtk-faq.sgml:
11207           s/gtk_main_iteration/g_main_iteration/
11208
11209           Did this already in change:
11210                 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
11211           don't know how it got reverted.
11212
11213 2000-07-31  Stanislav Brabec  <utx@penguin.cz>
11214
11215         * gdk/gdk.c: #ifdef G_ENABLE_DEBUG around gdk_arg_debug_cb and
11216         gdk_arg_no_debug_cb to fix compilation problem with --disable-debug.
11217
11218         * gdk/Makefile.am: Link gdk against actually compiled gdk_pixbuf-1.3,
11219         not gdk_pixbuf.
11220
11221 2000-07-30  Pablo Saratxaga <pablo@mandrakesoft.com>
11222
11223         * configure.in,po/{sp,sr}.po: Added Serbian files
11224
11225 2000-07-30  Tor Lillqvist  <tml@iki.fi>
11226
11227         * gdk/Makefile.am: Add makefile.mingw.in to EXTRA_DIST.
11228
11229         * gdk/win32/gdkevents-win32.c (gdk_events_init, gdk_events_queue):
11230         Remove the g_pipe_readable_msg stuff. Not needed with new GLib
11231         GIOChannel implementation.
11232
11233         * gdk/win32/gdkinput.c
11234         * gdk/win32/gdkpango-win32.c: Update license name here, too.
11235
11236         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_lookup): Fix
11237         definition to match prototype.
11238
11239         * gtk/makefile.mingw.in: Add libiconv CFLAGS and LIBS.
11240
11241 2000-07-27  Elliot Lee  <sopwith@redhat.com>
11242
11243         * gtk/gdk-pixbuf-loader.[ch]: Add gdk_pixbuf_loader_new_with_type
11244         function, to allow handling image formats that cannot be detected
11245         by looking at content alone.
11246
11247 Thu Jul 27 13:13:21 BST 2000  Tony Gale <gale@gtk.org>
11248
11249         * docs/tutorial/*.gif *.jpg *.eps
11250           Update these to the same look-n-feel.
11251           Why does including images in DocBook suck so badly?
11252
11253 Thu Jul 27 05:06:29 2000  Tim Janik  <timj@gtk.org>
11254
11255         * gtk/gtktable.c: applied patch from Phil Thompson
11256         <phil@river-bank.demon.co.uk> that enables space settings for
11257         the last row/columns as well.
11258
11259 Wed Jul 26 12:59:31 2000  Tim Janik  <timj@gtk.org>
11260
11261         * *.[hc]: applied patch from Andreas Persenius <ndap@swipnet.se> that
11262         updates the license headers to the GNU Lesser General Public License,
11263         as well as updating the copyright year to 2000.
11264
11265 2000-07-26  Robert Brady  <rwb197@zepler.org>
11266
11267         * configure.in: Cause GETTEXT_PACKAGE to be consistent in config.h
11268           and po/Makefile, was installing and looking for them under gtk20
11269           and gtk2 respectively.
11270
11271 2000-07-25  Havoc Pennington  <hp@redhat.com>
11272
11273         * gtk/testtext.c: Comment out some stuff that depends on the rest
11274         of my patches.
11275
11276 2000-07-25  Havoc Pennington  <hp@redhat.com>
11277
11278         * gtk/gtkmarshal.list: Add NONE:POINTER,POINTER,INT for the text
11279         buffer
11280
11281 2000-07-25  Havoc Pennington  <hp@redhat.com>
11282
11283         * gtk/testtext.c, gtk/testtextbuffer.c: update to reflect text
11284         widget changes.
11285
11286         * gtk/gtktextview.h: To be consistent with usage of "line"
11287         throughout the API to mean "newline-terminated thingy", change
11288         MOVEMENT_LINE to be MOVEMENT_WRAPPED_LINE, and MOVEMENT_PARAGRAPH
11289         to MOVEMENT_LINE.
11290
11291         (GtkTextView): Add flags for default editability, and whether to
11292         show the cursor. Add functions to get/set that. Add 
11293
11294         (gtk_text_view_get_iter_location): new function
11295
11296         * gtk/gtktexttypes.h: Move GtkTextLine typedef from here to
11297         gtktextlayout.h
11298         (g_convert): Add g_convert temporarily, will go in glib in a bit
11299         
11300         * gtk/gtktexttagtable.h: include gtktexttag.h, and define
11301         GtkTextTagTableForeach instead of brokenly using GHFunc.
11302         Change gtk_text_tag_table_foreach() so it doesn't use GHFunc.
11303
11304         * gtk/gtktexttagprivate.h: Remove GtkTextStyleValues from here,
11305         moved to public header.
11306
11307         * gtk/gtktexttag.h: Rename the "elide" attribute of tags to
11308         "invisible", since "elide" was a bad name.
11309         (gtk_text_tag_get_priority): Added
11310
11311         (GtkTextStyleValues): put this in public header, along with
11312         functions to use it.
11313
11314         * gtk/gtktextmarkprivate.h: Include more headers, since we no
11315         longer include gtktextbtree.h.
11316
11317         * gtk/gtktextmark.h: Add gtk_text_mark_ref, gtk_text_mark_unref,
11318         gtk_text_mark_deleted
11319
11320         * gtk/gtktextlayout.h: Don't include the "really private" headers,
11321         only buffer/iter. Forward declare GtkTextLIne and GtkTextLineData
11322         to make this possible. Now we only need to install
11323         gtktextlayout.h, not gtktextbtree.h and gtktext*private.h.
11324         (However the Makefile.am isn't changed yet because of the
11325         logistics of merging gtk-hp-patches piecemeal)
11326
11327         * gtk/gtktextiterprivate.h: include btree header, so it compiles;
11328         rename gtk_text_iter_get_line to gtk_text_iter_get_text_line since
11329         gtk_text_iter_get_line is now used in the public API for a
11330         different purpose.
11331
11332         * gtk/gtktextiter.h: Clean up function names to be more
11333         consistent. Always call char offset "offset" and byte index
11334         "index". A "line" is always a line number. 
11335
11336         (gtk_text_iter_is_last): new function, more efficient than 
11337         the existing way to check
11338         (gtk_text_iter_is_first): new function, also more efficient
11339
11340         (gtk_text_iter_up_lines, gtk_text_iter_down_lines): Remove these
11341
11342         (gtk_text_iter_next_char, gtk_text_iter_prev_char): Renamed from 
11343         gtk_text_iter_forward_char, etc.
11344
11345         (gtk_text_iter_forward_to_tag_toggle): Renamed from
11346         forward_find_tag_toggle, since this isn't a linear search
11347
11348         (GtkTextCharPredicate): rename from GtkTextViewCharPredicate
11349
11350         (gtk_text_iter_forward_search, gtk_text_iter_backward_search): 
11351         New functions, search for a buffer substring.
11352
11353         * gtk/gtktextbuffer.h: Add fields to store whether a paste is
11354         interactive and default editable (since we need to store that info
11355         until we receive the selection data).
11356
11357         Remove all the _at_char and at_line etc. versions of functions;
11358         only have iterator versions.
11359
11360         Add _interactive() versions of functions, that consider the
11361         editability of text. (FIXME add interactive flag to the 
11362         insert/delete signals per Darin's suggestion)
11363
11364         (gtk_text_buffer_get_tag_table): new function, demand-creates the
11365         tag table if necessary
11366
11367         Remove declaration of gtk_text_buffer_get_iter_from_string
11368
11369         (_gtk_text_buffer_get_btree): private/internal function, added.
11370         
11371
11372         * gtk/gtktextbtree.h: Remove forward decl of GtkTextLineData.
11373         (gtk_text_line_is_last): new function
11374
11375 2000-07-25  Havoc Pennington  <hp@redhat.com>
11376
11377         * gtk/gtkprogressbar.h: Implement new sane, 5-function API for
11378         using GtkProgressBar. See Changes-2.0.txt for details.
11379
11380         * gtk/gtkprogressbar.c: Add object arguments "fraction" and
11381         "pulse_step" which are the equivalent of
11382         gtk_progress_bar_set_pulse_step and gtk_progress_bar_set_fraction.
11383         Implement new API.
11384         
11385         * gtk/gtkprogress.h (struct _GtkProgress): Add a field
11386         (use_text_format) to mark whether text set on the progress bar is
11387         a format string. Deprecate entire GtkProgress interface.
11388
11389         * gtk/gtkprogress.c (gtk_progress_init): init use_text_format to TRUE
11390         (gtk_progress_build_string): make this a no-op if use_text_format
11391         is FALSE
11392
11393         * docs/Changes-2.0.txt: Describe progress bar changes.
11394
11395 2000-07-25  Tor Lillqvist  <tml@iki.fi>
11396
11397         * Makefile.am: Include the build directory.
11398
11399         * configure.in: Generate build/Makefile, build/win32/Makefile,
11400         gdk/, gdk/win32/, and gtk/makefile.mingw.
11401
11402         * config.h.win32: Add USE_GMODULE and USE_MMX for gdk-pixbuf.
11403         Add GETTEXT_PACKAGE.
11404         
11405         * gdk/gdk.def
11406         * gtk/gtk.def: Updates.
11407
11408         * gdk/gdkfont.h
11409         * gdk/gdkpixmap.h: Remove temporary Win32-only functions, we don't
11410         need them any longer.
11411
11412         * gdk/gdkinput.h: Mark gdk_core_pointer for export/import.
11413
11414         * gdk/makefile.mingw.in: Define GDK_COMPILATION. Link with
11415         PANGOWIN32_LIBS and gdk_pixbuf.
11416
11417         * gdk/win32: Compiles, but no doubt doesn't work at all.
11418
11419         * gdk/win32/makefile.mingw.in: Define GDK_COMPILATION. 
11420
11421         * gdk/win32/gdkinput.c: New file, temporarily.
11422         
11423         * gdk/win32/gdkinput-win32.h: New file
11424
11425         * gdk/win32/gdkinputprivate.h: Remove.
11426
11427         * gdk/win32/gdkpango-win32.c: New file.
11428
11429         * gtk/makefile.mingw.in: New file
11430
11431         * gtk/makefile.cygwin: Removed
11432         
11433         * gtk/Makefile.am: Update accordingly.
11434
11435         * gtk/gtkrc.[ch] (gtk_win32_get_installation_directory): Renamed and
11436         made externally visible.
11437
11438         * gtk/gtkmain.c: Use it.
11439         
11440         * gtk/gtktextdisplay.c: No need to include pangox.h, pango.h
11441         is enough.
11442
11443         * gtk/gtktypeutils.c: Mark glib_debug_objects for import.
11444
11445 2000-07-24 Elliot Lee <sopwith@redhat.com>
11446         * gdk/gdkprivate.h: Remove gdk_*_lookup() defines, since they are defined by the
11447         individual backends already.
11448         * gdk/gdkregion-generic.h, gdk/gdktypes.h: Put gdkregionbox & gdksegment back together
11449         again. Yes, there really is a good reason for this, if you are using the gdkregion
11450         internals, and if you're not, why do you care?
11451         * gdk/gdkwindow.c: Fix inverted condition
11452         * gdk/linux-fb: Compiles (for me - it will not work elsewhere most likely).
11453         * gtk/gtkcolorsel.c, gtk/gtkwindow.c: Add include for linux-fb
11454         * gtk/gtkrange.c: Redraw trough when moving.
11455         * gtk/gtktypeutils.c: Fix warning by adding const cast.
11456         * modules/linux-fb/basic.c: Fix unknown glyph retrieval.
11457
11458 2000-07-23  Tor Lillqvist  <tml@iki.fi>
11459
11460         * configure.in: Check for mkstemp and sigsetjmp. Output
11461         gdk-pixbuf/makefile.mingw and gdk-pixbuf/pixops/makefile.mingw.
11462
11463         More work on GDK for Win32. Still in an intermediate state.
11464
11465         * gdk/makefile.cygwin
11466         * gdk/win32/makefile.cygwin: Removed.
11467         
11468         * gdk/makefile.mingw.in
11469         * gdk/win32/makefile.mingw.in: New files.
11470
11471         * gdk/Makefile.am
11472         * gdk/win32/Makefile.am: Generate and distribute them.
11473
11474         * gdk/win32/gdkwindow-win32.h
11475         * gdk/win32/gdkdrawable-win32.h
11476         * gdk/win32/gdkpixmap-win32.h: New files.
11477
11478         * gdk/win32/gdkcolor-win32.c
11479         * gdk/win32/gdkcursor-win32.c
11480         * gdk/win32/gdkdrawable-win32.c
11481         * gdk/win32/gdkgc-win32.c
11482         * gdk/win32/gdkimage-win32.c
11483         * gdk/win32/gdkprivate-win32.h
11484         * gdk/win32/gdkwin32.h: Update data structures. Cosmetics:
11485         Rename fields and variables called xcursor, xid, etc (these names
11486         were leftovers from the X11 backend) to hcursor, hwnd, hbitmap etc.
11487
11488 Sat Jul 22 17:41:26 2000  Owen Taylor  <otaylor@redhat.com>
11489
11490         * gtk/gtkentry.[ch]: Fix some problems with vertical
11491         alignment.
11492
11493         * gtk/gtkentry.c (gtk_entry_find_position): Fix 
11494         char/byte confusion.
11495
11496 Sat Jul 22 11:16:05 2000  Owen Taylor  <otaylor@redhat.com>
11497
11498         * gtk/gtktextview.c (changed_handler): Fix bug where
11499         redraw wasn't being done properly when height of
11500         dirty region changed.
11501
11502         * demos/Makefile.am: Remove various references to
11503         -lgmodule
11504
11505 Fri Jul 21 15:28:13 2000  Owen Taylor  <otaylor@redhat.com>
11506
11507         * gtk/gtktextlayout.[ch], gtk/gtktextdisplay.c: Use new
11508         PangoAttrShape to reserve space for pixmaps, add 
11509         GSList *pixmaps to GtkTextLineDisplay, draw the pixmaps
11510         in the display functions.
11511         
11512         * gtk/testgtk.c (create_layout): Set some more exotic
11513         scrolled window options
11514
11515         * gtk/gtkscrolledwindow.[ch] (gtk_scrolled_window_set_shadow_type):
11516         Add function to set the shadow type of a window, to allow
11517         putting a shadow around widgets such as GtkLayout or GnomeCanvas
11518         which don't draw their own frame.
11519
11520 Fri Jul 21 16:34:42 BST 2000  Tony Gale <gale@gtk.org>
11521
11522         * docs/tutorial/package-db-tutorial.sh: New file for
11523           packaging DocBook format tutorial
11524
11525 Fri Jul 21 14:23:51 BST 2000  Tony Gale <gale@gtk.org>
11526
11527         * docs/tutorial/gtk-tut.sgml: Minor updates
11528
11529         * docs/tutorial/*.jpg *.eps: Screenshots for tutorial
11530
11531 2000-07-19  Tor Lillqvist  <tml@iki.fi>
11532
11533         * gtk/gtksignal.c: Fix C++ comment.
11534
11535         * gtk/gtkimmulticontext.c
11536         * gtk/gtktextbtree.c: Remove gccisms: Don't use __FUNCTION__,
11537         don't return value from void functions.
11538
11539         * gtk/gtk.def: Add gtk_rc_style_unref.
11540
11541 2000-07-19  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
11542
11543         * gdk-pixbuf/gdk-pixbuf.h, gtk/gtkhsv.h, gtk/gtktextbtree.h,
11544         gtk/gtktextbuffer.h, gtk/gtktextchild.h, gtk/gtktextdisplay.h,
11545         gtk/gtktextiter.h, gtk/gtktextiterprivate.h, gtk/gtktextlayout.h,
11546         gtk/gtktextmarkprivate.h, gtk/gtktextsegment.h, gtk/gtktexttag.h,
11547         gtk/gtktexttagtable.h, gtk/gtktexttypes.h, gtk/gtktextview.h,
11548         gtk/gtktypeutils.h: Include files outside of the extern "C"
11549         block. Makes some C++ compiler happy. Reported by Denis Vakatov
11550         <vakatov@peony.nlm.nih.gov>.
11551
11552 Wed Jul 19 14:07:57 BST 2000  Tony Gale <gale@gtk.org>
11553
11554         * docs/tutorial/gtk-tut.sgml: Yet more clean ups.
11555           Completes first pass. Hurrah!
11556
11557 Tue Jul 18 17:17:55 BST 2000  Tony Gale <gale@gtk.org>
11558
11559         * docs/tutorial/gtk-tut.sgml: More clean ups.
11560
11561 Mon Jul 17 18:52:38 2000  Owen Taylor  <otaylor@redhat.com>
11562
11563         * gtk/gtkentry.c (gtk_entry_draw_text): Restore code to
11564         paint the background of the text area which was accidentally
11565         removed at some point.
11566
11567         * gtk/gtkrc.[ch] gtk/gtkstyle.[ch] gtk/gtkthemes.[ch]: 
11568           
11569          - Move most of the functionality from the theme vtable
11570            into GtkRcStyleClass and GtkStyleClass. The moved
11571            vtable functions were changed a bit in the move to
11572            work better in their new home.
11573
11574          - Get rid of the engine and engine_data fields from
11575            GtkRcStyle and GtkStyle; instead the theme
11576            engine derives theme-specific subclasses of GtkRcStyle
11577            and GtkStyle
11578
11579          - Add extra dlsym() found entry point to themes,
11580            theme_create_rc_style().
11581
11582         * gtk/gtkstyle.c: Copy xthickness, ythickness fields
11583         in gtk_style_real_copy.
11584
11585         * gtk/themes.[ch]: add a function gtk_theme_engine_register_type()
11586         to register a type associated with an engine. (The engine
11587         won't be unloaded as there is an instance of the type.)
11588
11589
11590 Mon Jul 17 18:19:06 BST 2000  Tony Gale <gale@gtk.org>
11591
11592         * docs/tutorial/gtk-tut.sgml: Clean ups.
11593
11594 Mon Jul 17 13:59:29 BST 2000  Tony Gale <gale@gtk.org>
11595
11596         * docs/tutorial/gtk-tut.sgml: Initial DocBook version. Lots
11597           of cleaning up to do.
11598
11599 2000-07-15  Tor Lillqvist  <tml@iki.fi>
11600
11601         * gdk/testgdk.c: New file, quick hack to test backends for
11602         pixel-by-pixel correctness of the most simple graphic operations.
11603
11604 Fri Jul 14 20:30:25 2000  Owen Taylor  <otaylor@redhat.com>
11605
11606         * Really release 1.3.1
11607         
11608         * gtk-config-2.0.in gtk-2.0.m4: Fix up to correspond to new
11609         include structure.
11610
11611 Fri Jul 14 18:40:39 2000  Owen Taylor  <otaylor@redhat.com>
11612
11613         * Released 1.3.1
11614
11615 Fri Jul 14 16:21:26 2000  Owen Taylor  <otaylor@redhat.com>
11616
11617         * gtk/gtktextlayout.c: use FALSE for size_only most
11618         of the time when calling gtk_text_layout_get_line_display()
11619         to avoid causing double reshapes when a redraw follows
11620         immediately after.
11621
11622 Tue Jul 11 11:13:40 2000  Owen Taylor  <otaylor@redhat.com>
11623
11624         * gtk/gtkrange.c (gtk_range_default_[hv]slider_update): Invalidate
11625         appropriate region and gdk_window_process_updates() so trough
11626         updating doesn't lag behind the window being scrolled.
11627
11628         * gdk/gdkgc.c: Make parent_class pointer static.
11629          
11630 Sun Jul  9 21:31:23 2000  Owen Taylor  <otaylor@redhat.com>
11631
11632         * gdk/gdk-pixbuf.c gtk/gdk-pixbuf-loader.c gtk/gtktextview.c:
11633         include <string.h>.
11634          
11635         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Fix
11636         cut-and-paste error in computing memory offset for 4 channels.
11637
11638 Fri Jul 14 14:05:02 2000  Owen Taylor  <otaylor@redhat.com>
11639
11640         * gtk/gtkrc.c (gtk_rc_parse_pixmap_path_string): Remove
11641         gtk_rc_append_default_pixmap_path(), since it wasn't
11642         adding an interesting path and we don't have a meaningful
11643         default for this value.
11644
11645 Fri Jul 14 12:22:49 2000  Owen Taylor  <otaylor@redhat.com>
11646
11647         * configure.in Makefile.am gtk-config.m4 gtk.m4: Move
11648         gtk-config to gtk-config-2.0 move gtk_.m4 to
11649         gtk-2.0.m4
11650
11651         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
11652         gdk/Makefile.am demos/Makefile.am: Change 
11653         library names to libgtk-1.3.la, etc, so that we
11654         can distinguish gtk-1.2 and gtk-2.0 on the linkline.
11655
11656         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
11657         gdk/Makefile.am gdk/x11/Makfile.am
11658         Move include files into /usr/include/gtk-2.0, 
11659         /usr/lib/gtk-2.0/include/
11660          
11661         * autogen.sh acconfig.h configure.in gtk/gtkmain.c
11662         gtk/gtkintl.h: Change package for gettext from 
11663         gtk+ to gtk20. Put hack in autogen.sh to modify
11664         po/Makefile.in.in after gettextize to make this
11665         possible.
11666
11667         * gtk+.spec: Some updates, not tested.
11668
11669         * gdk-pixbuf/Makefile.am: Move loaders into
11670         $(libdir)/gtk-2.0/$(GTK_VERSION)/loaders.
11671
11672         * gtk/Makefile.am gtk/gtkrc.c: Move RC file locations
11673         $(sysconfdir)/gtk-2.0 ~/.gtkrc-2.0; theme subdir
11674         to THEMENAME/gtk-2.0/. Move engine directory  to
11675         $(libdir)/gtk-2.0/$(GTK_VERSION)/engines.
11676         
11677 2000-07-12  Tor Lillqvist  <tml@iki.fi>
11678
11679         Win32 changes, still doesn't build though.
11680
11681         * gdk/makefile.cygwin
11682         * gdk/win32/makefile.cygwin
11683         * gtk/makefile.cygwin: Updates.
11684
11685         * gdk/win32/gdkgc-win32.c (_gdk_win32_gc_new): Use the same
11686         default values for fg and bg pixel as X11 does (0 and 1), not
11687         black and white. Use PS_ENDCAP_FLAT and PS_JOIN_MITER by default.
11688         Use 0 for pen width by default (treated as 1 anyway later, but for
11689         apps that might check the value in the GdkGC).
11690         (gdk_win32_hdc_get, gdk_win32_hdc_release): New functions, public
11691         interface to gdk_gc_predraw and _postdraw.
11692
11693         * gdk/win32/gdkwin32.h
11694         * gdk/gdk.def: Add gdk_win32_hdc_{get,release}.
11695
11696         * gdk/win32/gdkcolor-win32.c (gdk_colormap_alloc1): Remove
11697         extraneous semicolon.
11698
11699         * gdk/win32/gdkdrawable-win32.c: Check also for pen_width == 0.
11700
11701         * gdk/win32/gdkimage-win32.c (gdk_image_new): Use the visual's depth,
11702         not the Win32 bitspixel value.
11703
11704         * gdk/win32/gdkcc-win32.c:
11705         * gdk/win32/gdkcolor-win32.c 
11706         * gdk/win32/gdkprivate-win32.h
11707         * gdk/win32/gdkwin32.h: Changes to make compilable, with new
11708         GDK object structure.
11709
11710 Tue Jul 11 20:59:35 2000  Tim Janik  <timj@gtk.org>
11711
11712         * docs/tutorial/gtk_tut_12.es.sgml (name): 
11713         * docs/tutorial/gtk_tut_it.sgml (name): 
11714         * docs/tutorial/gtk_tut_fr.sgml (name): 
11715         * docs/tutorial/gtk_tut.sgml (name): scratched notion of completely
11716         outdated email adress: s/timj@psynet.net/timj@gtk.org/.
11717
11718 Tue Jul 11 13:10:57 BST 2000  Tony Gale <gale@gtk.org>
11719
11720         * docs/faq/gtk-faq.sgml: Cleanup indenting and various
11721           small changes.
11722
11723 Tue Jul 11 08:04:58 2000  Tim Janik  <timj@gtk.org>
11724
11725         * gtk/gtktree.c (gtk_real_tree_select_child): eek, i've never seen
11726         a bug here, never been here and never fixed anything ;(
11727         (don't segfault if tree->root_tree is NULL, which happens prior
11728         to widget realization, but puke instead).
11729
11730 Tue Jul 11 06:38:42 2000  Tim Janik  <timj@gtk.org>
11731
11732         * gtk/gtkrc.h: add xthickness and ythickness to GtkRcStyle and
11733         add the necessary tokens.
11734
11735         * gtk/gtkrc.c (gtk_rc_style_init): properly initiality the rc style.
11736         (gtk_rc_style_to_style): copy thicknesses.
11737         (gtk_rc_init_style): apply thicknesses.
11738         (gtk_rc_parse_style): parse xthickness and ythickness.
11739
11740         * gdk/x11/gdkdnd-x11.c: silence compiler in switch() statements.
11741
11742         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): 
11743         (gdk_window_new): 
11744         (_gdk_windowing_window_init): 
11745         * gdk/x11/gdkpixmap-x11.c (gdk_pixmap_foreign_new): 
11746         (gdk_pixmap_create_from_data): 
11747         (gdk_bitmap_create_from_data): 
11748         (gdk_pixmap_new): 
11749         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
11750         (gdk_image_new): 
11751         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): 
11752         * gdk/x11/gdkdnd-x11.c (gdk_drag_context_new): 
11753         * gdk/x11/gdkcolor-x11.c (gdkx_colormap_get):
11754         (gdk_colormap_get_system): 
11755         (gdk_colormap_new): 
11756         * gdk/gdkwindow.c (gdk_window_init): 
11757         * gtk/gtkstyle.c (gtk_style_new):
11758         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done):
11759         * gdk/gdkpixmap.c (gdk_pixmap_init): 
11760         * gtk/gtkrc.c (gtk_rc_style_new):
11761         use g_object_new() instead of g_type_create_instance() which
11762         is a private function for fundamental type implementations.
11763
11764 Thu Jul  6 16:12:14 2000  Owen Taylor  <otaylor@redhat.com>
11765
11766         * configure.in: Add check for db2html
11767
11768 Thu Jul  6 14:53:05 2000  Owen Taylor  <otaylor@redhat.com>
11769
11770         * gtk/gtktypeutils.c (gtk_type_init): Add a temporary 
11771         hack to set glib_debug_objects based on gtk_debug_flags.
11772
11773 Thu Jul  6 14:12:13 2000  Owen Taylor  <otaylor@redhat.com>
11774
11775         * INSTALL.in: Update the Prerequisites section.
11776
11777         * Makefile.am demos/Makefile.am docs/Makefile.am
11778         docs/tutorial/Makefile.am gdk/x11/Makefile.am
11779         gdk/linux-fb/Makefile.am: Dist fixes
11780
11781 Thu Jul  6 12:26:03 2000  Owen Taylor  <otaylor@redhat.com>
11782
11783         * NEWS: 10,000 foot view of 1.3.1 changes.
11784
11785 Thu Jul  6 11:54:03 2000  Owen Taylor  <otaylor@redhat.com>
11786
11787         * gdk/gdk.h gdk/gdktypes.h gdk/linux-fb/gdkmain-fb.c
11788         gdk/nanox/gdkmain-nanox.c gdk/win32/gdkevents-win32.c
11789         gdk/win32/gdkinput-win32.c gdk/win32/gdkwin32.h
11790         gdk/x11/gdkmain-x11.c: 
11791
11792         Patch from George Lebl to add a GdkGrabStatus enumeration to use
11793         as a return value of gdk_*_grab(). Previously, we just
11794         returned the X11 values directly.
11795
11796 Thu Jul  6 11:27:44 2000  Owen Taylor  <otaylor@redhat.com>
11797
11798         * gdk/x11/Makefile.am: Patch from George Lebl to 
11799         install all the headers in the right place.
11800
11801 Tue Jul  4 13:13:01 BST 2000  Tony Gale <gale@gtk.org>
11802
11803         * docs/faq/gtk-faq.sgml: Add remaining sections. Completes
11804           initial conversion to DocBook.
11805
11806 2000-07-04  Tor Lillqvist  <tml@iki.fi>
11807
11808         * README.win32: Improve a bit.
11809
11810         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Handle also
11811         WM_SYSCHAR, and other changes to get handling of Alt+nnn or
11812         Alt+0nnn on the numpad (used to enter characters by numeric code
11813         from current DOS or ANSI codepage) working correctly, as in other
11814         Windows apps.
11815
11816         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Use
11817         same argument validity tests as in X11 version.
11818         (_gdk_cursor_destroy): Use DestroyCursor, not DestroyIcon.
11819
11820         * gdk/win32/gdkwin32.h: Add also WM_MOUSEWHEEL and CopyCursor
11821         definitions in case missing from headers.
11822
11823         * gdk/win32/gdkwindow-win32.c (gdk_win32_window_destroy): Also
11824         destroy the window-specific cursor.
11825         (RegisterGdkClass): Use the global gdk_ProgInstance instead of
11826         calling GetModuleHandle(NULL).
11827         (gdk_window_set_cursor): Reworked to always copy the passed cursor
11828         with CopyCursor before setting it as the window-specific
11829         cursor. It is OK for the caller to destroy the GdkCursor (and thus
11830         also its Windows cursor) after calling this function. Destroy any
11831         previous window-specific cursor.
11832
11833 Mon Jul  3 17:54:49 2000  Owen Taylor  <otaylor@redhat.com>
11834
11835         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): 
11836         font charset is iso8859-1, not iso-8859-1.
11837
11838 Mon Jul  3 17:08:14 2000  Owen Taylor  <otaylor@redhat.com>
11839
11840         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale):
11841         Use g_get_charset() instead of g_get_codeset().
11842
11843         * gtk/gtkframe.[ch] gtkframe.h gtk/gtktextmark.h: 
11844         Comment out some strdup'ing functions to keep timj
11845         happy until we finish fighting this out.
11846
11847 Mon Jul  3 14:24:16 2000  Owen Taylor  <otaylor@redhat.com>
11848
11849         * gtk/gtkwidget.c (gtk_widget_draw): Ignore calls with
11850         <= width or height.
11851
11852         * gtk/gtktable.c (gtk_table_attach): Fix missed merge
11853         from 1.2 for parent/child states.
11854
11855         * gdk/gdkgc.c (gdk_gc_set_rgb_fg/bg_color): Fix a couple
11856         of typos.
11857
11858         * gdk/gdkevents.[ch]: Remove press/xtilt/ytilt fields of
11859         event structures, replace with a generic axes field. Replace 
11860         deviceid/sourec with GdkDevice *device.
11861
11862         * gdk/gdkevents.[ch] (gdk_event_get_axis): Add function
11863         to extract particular axis use value from event. (Also
11864         can be used for normal X/Y.)
11865
11866         * gdk/gdkinput.h gdk/x11/gdkinput*: Major revision;
11867         allow for arbitrary number of axes, namespace everything
11868         as gdk_device_*. Replace guint32 deviceid with GdkDevice *
11869         everywhere.
11870
11871         * gdk/x11/{gdkmain-x11.c,gdkevent-x11.c,gdkinput*}: 
11872         Get rid of the gdk_input_vtable setup if favor of simply
11873         defining the functions in gdkinput-none/gxi/xfree.c in
11874         a similar fashion to the way that the port structure is 
11875         done.
11876
11877         * gtk/gtkdnd.c: Fix fields of synthesized button press event
11878         for new event structures. 
11879
11880         * gtk/gtkinputdialog.c gtk/testinput.c: Revise to match
11881         new device interfaces.
11882
11883 Sun Jul  2 18:19:50 2000  Owen Taylor  <otaylor@redhat.com>
11884
11885         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_layout): Add a 'text' argument to
11886         set the initial text.
11887
11888         * gtk/gtkaccellabel.c gtk/gtkcalendar.c gtk/gtkclist.c
11889         gtk/gtkentry.c gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c
11890         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvruler.c
11891         gtk/gtkvscale.c: Adapt to new argument of create_pango_layout().
11892
11893         * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
11894         pango_layout_set_font_description to simplify.
11895
11896 Sun Jul  2 17:43:41 2000  Owen Taylor  <otaylor@redhat.com>
11897
11898         * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
11899         pango_layout_set_font_description to simplify.
11900
11901 Sun Jul  2 17:06:40 2000  Owen Taylor  <otaylor@redhat.com>
11902
11903         * gtk/gtkcalendar.c gtk/gtkclist.c gtk/gtkctree.c gtk/gtkhscale.c
11904         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvscale.c gtk/gtkaccellabel.c: Use
11905         pango_layout_get_pixel_extents() to remove a large number of '/ PANGO_SCALE'.
11906
11907         * gtk/gtk[hv]ruler.c gtk/gtklabel.c: replace some / PANGO_SCALE with
11908         PANGO_PIXELS() macro.
11909
11910 Sun Jul  2 15:24:41 2000  Owen Taylor  <otaylor@redhat.com>
11911
11912         * gtk/gtkwidget.[ch] (gtk_widget_get_pango_context): Add new function
11913         that returns a PangoContext owned by the widget and updated to
11914         match future changes in the widget. Also, make 
11915         gtk_widget_create_pango_layout() use this context. If we ever
11916         add a ::changed signal to PangoContext, this will make things
11917         much more convenient. 
11918
11919         * gtk/gtkentry.c gtk/gtklabel.c: Call pango_layout_context_changed()
11920         in the appropriate places instead of destroying the layouts and
11921         creating new ones.
11922
11923         * gtk/gtkfontsel.[ch] gtk/gtkclist.c: Use gtk_widget_get_pango_context()
11924         in a few strategic places.
11925
11926 Sun Jul  2 14:37:58 2000  Owen Taylor  <otaylor@redhat.com>
11927
11928         * gtk/gtkoptionmenu.c (gtk_option_menu_size_request): Call 
11929         gtk_widget_size_request() on reparented child, if one. Otherwise,
11930         queue_resize() on the child never results in it getting size-requested
11931         at all.
11932
11933         * gtk/testgtk.c (build_option_menu): Remove silly radio-menu-items
11934         in option menus, so that (with luck) people won't copy it into
11935         their apps in the future.
11936
11937         * gtk/gtkoptionmenu.c: Connect ::size_request on the menu
11938         to gtk_option_menu_calc_size. This isn't perfect, but should fix
11939         a lot of problems with changing the size of the menu's menu
11940         items after adding it to the option menu.
11941
11942         * gtk/gtktexttag.c: Include gtkmain.h for gtk_get_default_language().
11943
11944         * gtk/gtkwidget.[ch]: Add a ::direction_changed that triggers when
11945         the text direction for a widget changes.
11946
11947         * gtk/gtk{entry.c,label.[ch],textview.[ch]} gtk/testgtk.c: Use
11948         ::direction_changed to get rid of various hacks.
11949
11950 Sun Jul  2 13:19:12 2000  Owen Taylor  <otaylor@redhat.com>
11951
11952         * docs/Changes-2.0.txt: Move Changes-1.4.txt to the appropriate
11953         name.
11954
11955 Sun Jul  2 13:06:26 2000  Owen Taylor  <otaylor@redhat.com>
11956
11957         * gdk/x11/gdkpixmap-x11.[ch] Changes-1.4.txt: Add a is_foreign
11958         flag to the structure. Do not call XFreePixmap on pixmaps created
11959         by gdk_pixmap_foreign_new().
11960
11961 Sun Jul  2 12:45:50 2000  Owen Taylor  <otaylor@redhat.com>
11962
11963         * gdk/gdkrgb.[ch]: Add gdk_rgb_find_color() to get a pixel
11964         value using GdkRGB functionality given GdkColormap and GdkColor.
11965         (name not final, waiting for inspiration.)
11966         
11967         * gdk/gdkgc.[ch] (gdk_gc_set_rgb_fg/bg_color): New functions to
11968         set the foreground/background of a GC using the GC's colormap
11969         and GdkRGB. (name not final, waiting for inspiration.)
11970
11971         * gdk/gdkcompat.h gdk/gdkrgb.c (gdk_rgb_get_colormap): Rename from 
11972         gdk_rgb_get_cmap(), put #define in gdkcompat.h.
11973
11974         * gtk/gtkwidget.[ch] gtkcompat.h: Make visuals for
11975         gtk_widget_get_visual(), gtk_widget_get_default_visual, etc,
11976         purely a function of the corresponding colormap. Make
11977         gtk_widget_set_visual(), etc, noop macros in gtkcompat.h.
11978
11979         * gdk/gdkpixmap.c gdk/x11/gdkpixmap-c11.c: Rewrite
11980         gdk_pixbuf_*create_from_xpm_* in terms of
11981         gdk_pixbuf_new_from_xpm_data(), move into platform independent
11982         code.
11983
11984         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Take
11985         advantage of the new draw_rgb_32_image_dithalign.
11986
11987         * gdk/gdkrgb.c (gdk_draw_rgb_32_image_dithalign): Added.
11988
11989         * gtk/gtkgc.c (gtk_gc_new): Set the appropriate colormap
11990         on each created GC.
11991
11992         * gdk/gdkgc.[ch]: Add gdk_gc_get/set_colormap.
11993
11994         * gdk/gdkgc.[ch]: Add a colormap field to the GdkGC structure
11995         which we initialize from the drawable when the GC is created,
11996         if the drawable has a colormap.
11997
11998         * gdk/x11/gdkgc-x11.c: include string.h for memset.
11999
12000         * gdk/x11/gdkinput-x11.c: include string.h for strlen, etc.
12001
12002         * gtk/gtklayout.[ch]: Remove unsed configure serial member.
12003
12004 Sat Jul  1 16:28:32 2000  Owen Taylor  <otaylor@redhat.com>
12005
12006         * gdk/x11/gdkevents-x11.c (gdk_event_translate): When
12007         actually returning expose events, make sure to set
12008         the count field properly.
12009
12010         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): Fix
12011         accidentally reintroced bug which always cleared
12012         the graphics_exposures value. 
12013
12014 Wed Jun 28 18:03:09 BST 2000  Tony Gale <gale@gtk.org>
12015
12016         * docs/faq/gtk-faq.sgml: Change DocBook layout slightly
12017
12018 Wed Jun 28 17:49:05 BST 2000  Tony Gale <gale@gtk.org>
12019
12020         * docs/faq/gtk-faq.sgml: Finish Section 6. Add Section 7.
12021
12022 Wed Jun 28 13:31:55 BST 2000  Tony Gale <gale@gtk.org>
12023
12024         * docs/faq/gtk-faq.sgml: Start of Section 6.
12025
12026 Mon Jun 26 19:37:04 2000  Owen Taylor  <otaylor@redhat.com>
12027
12028         * configure.in: Put 1.3.1 in warning message, not 1.3.0.
12029         
12030         (Fixes problem with drawing childless frames. Pointed out
12031         by and a first patch from Anders)
12032         
12033         * gtk/gtkframe.c (gtk_frame_compute_child_allocation): Always
12034         compute a child_allocation, even if we don't have a child.
12035
12036         * gtk/gtkaspectframe.c (gtk_aspect_frame_compute_child_allocation):
12037         Always chain to the parent's impl, even if we don't have a child.
12038
12039 Mon Jun 26 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
12040
12041         * gdk/gdkrgb.c: If possible, create only a single shm segment and
12042         use multiple parts of it instead of creating a bunch of separate
12043         segments, since the maximum number of segments per system is not
12044         large. (This might be worth backporting to GTK+-1.2.x if we make a
12045         new release )
12046
12047         * gdk/gdkrgb.c: Localize a bunch of variables into the GdkRgbInfo
12048         structure in preparation for per-colormap GdkRGB.
12049
12050         * gdk/x11/gdkimage-x11.c (gdk_image_new): Don't set gdk_use_xshm
12051         to False when we get EINVAL from shmget so that the caller of
12052         gdk_image_new can retry with a smaller segment size.
12053
12054 Mon Jun 26 13:01:16 BST 2000  Tony Gale <gale@gtk.org>
12055
12056         * docs/faq/gtk-faq.sgml: Add Sections 4 & 5.
12057
12058 Fri Jun 23 17:54:23 2000  Tim Janik  <timj@gtk.org>
12059
12060         * configure.in: make the current version number 1.3.1 (binary age 0,
12061         interface age 0).
12062         
12063         * gtkfeatures.h, gtkfeatures.h.in: dejavue, get rid of these *again*,
12064         gtkcompat.h is all we want.
12065
12066         * gtk/gtktypeutils.[hc]: define most of the primitive types in terms of
12067         GLib primitive types. fixed g_type_register_fundamental() argument
12068         ordering.
12069
12070         * gtk-config.in (lib_gtk): add -lgdk_pixbuf so third party code
12071         compiles.
12072
12073         * gdk-pixbuf-loader.[hc]: get rid of unistd.h include.
12074         object code cleanup, comment trigraph fixes, etc...
12075
12076 2000-06-23  Havoc Pennington  <hp@redhat.com>
12077
12078         * gtk/gtktextview.c (gtk_text_view_set_buffer): Use anonymous mark 
12079         instead of making up a bogus name for first_para_mark
12080
12081         * gtk/gtkstatusbar.h, gtk/gtkstatusbar.c: Allow 
12082         0 as a context ID
12083
12084 Thu Jun 22 17:43:51 BST 2000  Tony Gale <gale@gtk.org>
12085
12086         * docs/faq/gtk-faq.sgml: Change filename. Add Section 3.
12087
12088 2000-06-21  Havoc Pennington  <hp@pobox.com>
12089
12090         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Fix bug where
12091         we didn't check window->bg_pixmap != GDK_NO_BG.
12092
12093         * gtk/gdk-pixbuf-loader.c: Change to reflect GObject-ification of
12094         gdk-pixbuf
12095
12096 Thu Jun 22 14:02:19 BST 2000  Tony Gale <gale@gtk.org>
12097
12098         * docs/faq/gtk-faq.sgm: Move file to here.
12099           TODO: Update Makfile.am 
12100
12101 Thu Jun 22 13:41:09 BST 2000  Tony Gale <gale@gtk.org>
12102
12103         * docs/gtk-faq.sgm: Add Section 2
12104
12105 Thu Jun 22 08:43:45 BST 2000  Tony Gale <gale@gtk.org>
12106
12107         * docs/gtk-faq.sgm: New file. Start of DocBook
12108           version of the FAQ.
12109
12110 Wed Jun 21 23:04:17 2000  Owen Taylor  <otaylor@redhat.com>
12111
12112         * configure.in (GDK_PIXBUF_MAJOR): Define version
12113         numbers for GDK_PIXBUF_*, as they get substituted
12114         into a header file. Need to consider versioning
12115         for gdk-pixbuf more carefully later.
12116
12117 2000-06-21  Raja R Harinath  <harinath@cs.umn.edu>
12118
12119         Work with srcdir != builddir.   
12120         * demos/testanimation.c: Don't include "gdk-pixbuf.h".  Use
12121         <gtk/gdk-pixbuf-loader.h>, not "gtk-pixbuf/gdk-pixbuf-loader.h".
12122         * demos/testpixbuf.c: Likewise.
12123         * demos/testpixbuf-scale.c: Don't include "gdk-pixbuf.h".
12124         * demos/testpixbuf-drawable.c: Don't include "gdk-pixbuf.h".  Use
12125         <gdk/x11/gdkx.h>.
12126         * demos/pixbuf-demo.c: Use <gtk/gtk.h> not "gtk.h".  Don't include
12127         "gdk-pixbuf.h".
12128         * demos/Makefile.am (INCLUDES): Remove unneeded directories.
12129
12130 Wed Jun 21 19:45:02 2000  Owen Taylor  <otaylor@redhat.com>
12131
12132         * TODO.xml: Change 1.4 version numbers to 2.0.
12133
12134 Wed Jun 21 19:29:08 2000  Owen Taylor  <otaylor@redhat.com>
12135
12136         * gdk/gdkpixbuf-render.c gdk/gdkpixbuf-drawable.c: Indentation
12137         fixups to GTK+ standard.
12138
12139 Wed Jun 21 16:38:13 2000  Owen Taylor  <otaylor@redhat.com>
12140
12141         * gdk-pixbuf/* docs/reference/gdk-pixbuf/*: Welcome aboard,
12142         gdk-pixbuf.
12143
12144         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init):
12145         fixups for GObject.
12146
12147         * gdk/Makefile.am gdk/gdkpixbuf-render.[ch] gdk/gdkpixbuf.[ch]: Bits of 
12148         gdk-pixbuf with GDK dependencies moved into GDK.
12149         
12150         * gtk/Makefile.am gtk/gdk-pixbuf-loader.[ch]: Temporarily
12151         move gdk-pixbuf-loader here until GObject has signals.
12152
12153         * demos/: New directory of demos. Move demos from
12154         gdk-pixbuf here.
12155
12156         * demos/pixbuf-init.c: Small bit of code to check for
12157         loaders in ../gdk-pixbuf/.libs/gdk-pixbuf, and if found,
12158         set GDK_PIXBUF_MODULEDIR appropriately.
12159
12160         * gdk/gdkcompat.h: Remove GDK_DRAWABLE_PIXMAP compat
12161         define which no longer makes sense.
12162
12163 2000-06-21  Havoc Pennington  <hp@redhat.com>
12164
12165         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Use
12166         gtk_get_default_language
12167
12168         * gtk/gtkmain.h, gtk/gtkmain.c (gtk_get_default_language): 
12169         new function to get the default language
12170
12171         * gtk/gtktexttagprivate.h, gtk/gtktexttag.c, gtktextview.c: 
12172         s/gtk_text_view_style_values/gtk_text_style_values/
12173
12174         * gtk/gtktexttag.c, gtk/gtktexttag.h, gtk/gtktexttagprivate.h:
12175         Add a "language" field to tags.
12176
12177         (gtk_text_tag_set_arg): Fix bug in setting
12178         "bg_full_height_set" tag.
12179
12180 2000-06-21  Havoc Pennington  <hp@redhat.com>
12181
12182         * gtk/gtktextiter.h: Use gunichar instead of gint when appropriate
12183         in the interfaces
12184
12185         * gtk/gtktexttypes.c: Remove UTF functions, use glib 
12186         stuff instead when possible.
12187
12188         * gtk/gtktexttypes.h: Delete some unused constants
12189
12190         * gtktextbtree.c, gtktextiter.c, gtktextsegment.c, gtktextview.c,
12191         testtextbuffer.c: use glib instead of custom unicode routines
12192
12193 Wed Jun 21 12:50:58 2000  Owen Taylor  <otaylor@redhat.com>
12194
12195         * docs/es/: Removed mistakenly added generated sgml
12196
12197         * docs/{gdk.texi,gtk.texi,gdk.sgml} macros.texi texinfo.tex:
12198         Remove outdated info files.
12199
12200         * docs/gtk_tut* docs/package_tutorial.sh docs/tutorial:
12201         Moved tutorial files into subdir
12202
12203         * docs/gtkfaq.sgml docs/faq/gtkfaq.sgml: Move FAQ into
12204         subdir.
12205
12206         * docs/man/gtk_button.pod: Remove. (contents will be
12207         integrated into gtk-reference button page.)
12208
12209         * configure.in docs/Makefile.am docs/tutorial/Makefile.am
12210         docs/faq/Makefile.am: Adjust for new organization
12211
12212 2000-06-21 Christopher Blizzard  <blizzard@redhat.com>
12213
12214         * gdk/x11/Makefile.am (install-data-local): use $(mkinstalldirs)
12215         not $(MKINSTALLDIRS)
12216
12217 Wed Jun 21 12:24:28 2000  Owen Taylor  <otaylor@redhat.com>
12218
12219         * gtk/testgtk.c (create_text): Finish the job Elliot started
12220         of removing font setting test for text widget. (Since text widget
12221         and GdkFont are not deprecated, and cause portability problems.)
12222
12223 Wed Jun 21 11:41:43 2000  Owen Taylor  <otaylor@redhat.com>
12224
12225         * gtk/gtkentry.c gtk/gtkimcontextsimple.c gtk/gtklabel.c
12226         gtk/gtktexttypes.c gtk/testtext.c modules/linux-fb/basic.c:
12227         Remove use of libunicode in favor of new GLib functions.
12228
12229         * gtk/gtkcolorsel.c: Remove conditional includes for FB, win32,
12230         nano-x, framebuffer. The X11 include is just a hack until we get
12231         the necessary functions in gdkcolor.h, so there is no reason to
12232         add other includes of platforms.
12233
12234         * gtk/gtkwindow.c (gtk_window_compute_default_size): Revert 
12235         window bigger than the screen change.
12236
12237         * gtk/testgtk.c: Revert some random changes from Elliot
12238         that had no particular point and were causing testgtkrc
12239         not to function correctly.
12240         
12241         * gdk/gdkregion-generic.h: Revert change from Elliot. Just
12242         because GdkSegment and GdkRegionBox have the same fields,
12243         it doesn't mean that 'typedef GdkSegment GdkRegionBox'
12244         results in clearer code.
12245
12246         * gdk/x11/gdkinput-x11.c (gdk_input_common_select_events,
12247         gdk_input_translate_coordinates): Fix missed GdkObjectification
12248
12249 2000-06-18  Elliot Lee  <sopwith@redhat.com>
12250
12251         * gdk/Makefile.am, gdk/*/Makefile.am: Fix conditionality to work the "right" way.
12252         * gtk/gtk{plug,socket}.h: Missed commits from previous.
12253
12254 2000-06-20  Havoc Pennington  <hp@redhat.com>
12255
12256         * modules/linux-fb/Makefile.am: Make this compile
12257         without framebuffer enabled
12258
12259         * gdk/linux-fb/Makefile.am: Add conditional to not build
12260         framebuffer unless specified in configure
12261
12262         * gdk/gdkdraw.c (gdk_draw_drawable): Fix bug where I was getting
12263         the size of the target instead of source if -1 was passed for
12264         width/height
12265
12266         * gdk/x11/gdkgeometry-x11.c (gdk_window_compute_position): Fix 
12267         width/height confusion.
12268
12269 2000-06-19  Havoc Pennington  <hp@redhat.com>
12270
12271         * gdk/x11/gdkx.h (GDK_WINDOW_XWINDOW): change this to be
12272         GDK_DRAWABLE_XID. In the future, we probably want to make it
12273         faster with G_DISABLE_CHECKS turned on.
12274
12275 2000-06-14  Havoc Pennington  <hp@redhat.com>
12276
12277         * gdk/Makefile.am: add gdkpixmap.c
12278
12279         * gdk/gdk.c: s/gdk_window_init/_gdk_windowing_window_init/
12280         s/gdk_image_init/_gdk_windowing_image_init
12281
12282         * gdk/gdkcolor.c: make ref/unref compat wrappers for GObject
12283         ref/unref
12284
12285         * gdk/gdkcolor.h: make GdkColormap a GObject subclass
12286
12287         * gdk/gdkcompat.h: remove GdkWindowType compat, since
12288         GdkWindowType is now non-deprecated; 
12289         change gdk_window_get_type() compat to be
12290         gdk_window_get_window_type().
12291
12292         * gdk/gdkdnd.h: make GdkDragContext a GObject.
12293
12294         * gdk/gdkdraw.c, gdk/gdkdraw.h: Convert GdkDrawable to a pure
12295         virtual GObject. Make all functions call into the vtable.
12296         Move gdk_image_put() guts in here. Remove GdkDrawableType
12297         and gdk_drawable_get_type(), these are now GdkWindow-specific.
12298         draw_image, get_depth, get_size, set_colormap, get_colormap,
12299         get_visual added to the vtable.
12300         
12301         * gdk/gdkgc.h, gdk/gdkgc.c: Convert GdkGC to a pure virtual 
12302         GObject. Virtualize everything. 
12303         (gdk_gc_new_with_values): remove check for destroyed window,
12304         because now GdkWindow::create_gc will check this.
12305         (gdk_gc_set_values): New function to set GC values, this 
12306         was already implemented but wasn't in the header
12307
12308         * gdk/gdkimage.h, gdk/gdkimage.c: Convert GdkImage to a GObject.
12309
12310         * gdk/gdkinternals.h: Remove _gdk_window_alloc(), remove
12311         _gdk_window_draw_image(), remove _gdk_windowing_window_class,
12312         remove _gdk_window_class; add _gdk_window_impl_get_type() and
12313         _gdk_pixmap_impl_get_type(). Rename gdk_window_init to
12314         _gdk_windowing_window_init, rename gdk_image_init to
12315         _gdk_windowing_image_init.
12316         
12317         * gdk/gdkpango.c: Reflect GObject-ification of PangoContext.
12318         (gdk_draw_layout): Remove check for destroyed window, 
12319         because all the drawable methods already check it.
12320         
12321         * gdk/gdkpixmap.h, gdk/gdkpixmap.c: Convert GdkPixmap to GObject.
12322         Add gdkpixmap.c which contains implementation of GdkDrawable
12323         virtual table (by chaining to a platform-specific implementation
12324         object).
12325         
12326         * gdk/gdkprivate.h: Remove GDK_IS_WINDOW, GDK_IS_PIXMAP, 
12327         GDK_DRAWABLE_DESTROYED. Add GDK_WINDOW_DESTROYED. Replace
12328         GDK_DRAWABLE_TYPE with GDK_WINDOW_TYPE. Remove GdkDrawablePrivate,
12329         GdkWindowPrivate, GdkImageClass, GdkImagePrivate, GdkGCPrivate,
12330         GdkColormapPrivate. 
12331
12332         * gdk/gdktypes.h: #include <glib-object.h>
12333
12334         * gdk/gdkwindow.h, gdk/gdkwindow.c: Convert GdkWindow to GObject.
12335         Move most functionality to platform-specific implementation
12336         object. GdkWindow itself now handles the backing store, then
12337         chains to the platform-specific implementation.
12338         (gdk_window_get_window_type): return GdkWindowType of the window.
12339         (gdk_window_peek_children): New routine, returns the children of 
12340         a GdkWindow
12341         (gdk_window_get_children): Was in X11-specific code and did 
12342         XQueryTree. Changed to simply return a copy of window->children; 
12343         so it can go in cross-platform code.
12344         
12345         * gdk/x11/Makefile.am: fix broken MKINSTALLDIRS path
12346
12347         * gdk/x11/gdkcolor-x11.c: implement X-specific parts of 
12348         GdkColormap; just changed to use the new private data instead
12349         of casting to GdkColormapPrivate.
12350
12351         * gdk/x11/gdkcursor-x11.c: added a couple typechecks to 
12352         gdk_cursor_new().
12353
12354         * gdk/x11/gdkdnd-x11.c: Change the way we access private fields 
12355         (private data member in the GObject). 
12356         (xdnd_manager_source_filter): Function had broken 
12357         error handling, fix it (use gdk_error_trap_push).
12358
12359         * gdk/x11/gdkdrawable-x11.c: This file now implements
12360         a base class for GdkWindowImplX11/GdkPixmapImplX11. This 
12361         base class is purely for the convenience of the X port,
12362         and not part of the interface to cross-platform GDK.
12363
12364         * gdk/x11/gdkevents-x11.c: Reflect various renamings.
12365         
12366         * gdk/x11/gdkgc-x11.c: Implement a subclass of GdkGC that's
12367         specific to X, and returned by the create_gc virtual method
12368         of GdkDrawableImplX11. 
12369         (gdk_x11_gc_set_dashes): Change this to take an array of gint8
12370         rather than gchar, this was also changed in the GdkGC vtable.
12371         (gdk_x11_gc_values_to_xvalues): If GdkGCValues is NULL, or the
12372         mask is 0, return immediately, instead of checking every flag.
12373         This is faster, and keeps us from segfaulting if values is NULL
12374         and the mask contains some nonzero flags.
12375
12376         * gdk/x11/gdkgeometry-x11.c: deal with all the rearranging of
12377         GdkWindow.
12378
12379         * gdk/x11/gdkglobals-x11.c: change type of grab window, since 
12380         GdkWindowPrivate is gone.
12381
12382         * gdk/x11/gdkim-x11.c: rename things that got renamed.
12383
12384         * gdk/x11/gdkimage-x11.c: implement in terms of GObject, and 
12385         remove the image_put stuff that got transferred to GdkDrawable.
12386         
12387         * gdk/x11/gdkinput.c: renamings
12388
12389         * gdk/x11/gdkmain-x11.c: #include <pango/pangox.h>
12390
12391         * gdk/x11/gdkpixmap-x11.c: GObject conversion
12392
12393         * gdk/x11/gdkprivate-x11.h: indentation fixes
12394
12395         * gdk/x11/gdkproperty-x11.c: renamings
12396
12397         * gdk/x11/gdkselection-x11.c: renamings
12398
12399         * gdk/x11/gdkwindow-x11.c: Restructuring and renaming; this now 
12400         implements the platform-specific "impl" object.
12401         Moved gdk_window_get_children to gdk/gdkwindow.c
12402
12403         * gdk/x11/gdkx.h: Remove all the private structs and private datas
12404         that no longer exist. Add declaration of GdkGCX11 object here.
12405         Fix all the macros to still work. 
12406
12407         * gtk/gtk-boxed.defs: Remove GtkStyle, GdkColormap, GdkWindow,
12408         GdkDragContext from the boxed types since they are now GObjects.
12409
12410         * gtk/gtkstyle.h, gtk/gtkstyle.c: Converted GtkStyle to a GObject,
12411         moved xthickness/ythickness into the instance. GtkStyleClass
12412         functions are now in the standard vtable for GtkStyle, so you have
12413         to create a GObject subclass to write a theme engine.
12414         (gtk_style_copy): fixed a leaked PangoFontDescription
12415         (gtk_style_init): renamed gtk_style_realize, so gtk_style_init
12416         can be the standard GObject function.
12417         
12418         * Throughout GTK:
12419         s/style->klass->[xy]thickness/style->[xy]thickness
12420         s/pango_layout_unref/g_object_unref/
12421
12422         * gtk/gtkrc.h, gtk/gtkrc.c: Converted GtkRcStyle to a GObject.
12423         
12424         * gtk/gtksocket.c: Use gdk_window_get_user_data() instead of 
12425         accessing GDK internals.
12426
12427         * gtk/gtkwidget.c: Use gdk_window_peek_children() instead of 
12428         accessing GDK internals.
12429
12430 2000-06-18  Elliot Lee  <sopwith@redhat.com>
12431
12432         * gtk/gtkwindow.c: Don't allow creation of a window bigger than the screen.
12433
12434         * gtk/gtkrange.c: Fix the mega-jumpy-with-lagged-events scrollbar
12435         problem by calculating event position relative to the trough
12436         rather than the slider.
12437         * gtk/gtkdnd.c, gtk/gtkcolorsel.c: Include FB headers if appropriate.
12438
12439         * gdk/gdkgc.h: Add GDK_NOR.
12440
12441         * configure.in, Makefile.am: Add modules top level dir
12442         * configure.in: Only use pangox library if building x11 target.
12443         * gdk/gdkdnd.h: Add GDK_DRAG_PROTO_LOCAL enum for future intra-app use.
12444
12445 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
12446
12447         * gtk/gtkcolorsel.c: Change private class member to be named
12448         private_data throughout the file.
12449
12450         * gtk/gtkcolorsel.h (struct _GtkColorSelection): Change private to
12451         private_data to avoid clashing with keyword.
12452
12453 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
12454
12455         * gdk/gdkdnd.h: Add comment to remove warning.
12456
12457 Sun Jun 18 15:35:35 2000  Pablo Saratxaga <pablo@mandrakesoft.com>
12458
12459         * gtk/gtkrc.cp1251,gtk/Makefile.am: the cp1251 is also used by
12460         Byelorussian language; changed the Makefile and file names 
12461         to reflect that.
12462
12463 Mon Jun 12 16:58:40 2000  Owen Taylor  <otaylor@redhat.com>
12464
12465         * gtk/gtkwindow.c (gtk_window_unmap): Call gdk_window_withdraw
12466         rather than gdk_window_hide; this makes things work
12467         correctly if the window is programmatically hidden while
12468         iconified.
12469
12470 Sun Jun 11 12:46:19 2000  Owen Taylor  <otaylor@redhat.com>
12471
12472         * gtk/gtkdnd.c (gtk_drag_set_default_icon): Fix
12473         cut and paste typo where wrong pixmap was being
12474         unref'ed. (Pointed out by a friend of KUSANO Takayuki.)
12475
12476 Sun Jun 11 10:22:36 2000  Owen Taylor  <otaylor@redhat.com>
12477
12478         * gtk/gtkselection.c (gtk_selection_bytes_per_item):
12479         Add helper function to compute format / bytes 
12480         relationship. Use in a couple places to fix up
12481         errors which assume 8 * format.
12482
12483         * gtk/gtkselection.c (gtk_selection_request): Use 32
12484         rather than 8 * sizeof (GdkAtom), to work correctly
12485         on Alpha.
12486
12487 Thu Jun  8 21:54:51 2000 Christopher Blizzard  <blizzard@redhat.com>
12488
12489         * gtk/Makefile.am (DEPS): deps include libgtk-x11.la, not
12490         libgtk.la
12491         (LDADDS): include libgtk-x11.la and libgdk-x11.la, not the non-x11
12492         versions
12493
12494         * gtk/gtklabel.c (gtk_label_get_text): Make sure that the error
12495         checking macros return NULL since the function has a return value.
12496
12497 Wed Jun  7 15:44:42 2000  Owen Taylor  <otaylor@redhat.com>
12498
12499         * gtk/Makefile.am (LDFLAGS): Add missing backslash that was keeping
12500         GTK+ from building at all.
12501
12502         * gdk/Makefile.am (gdk_c_sources): Fix up some indentation issues.
12503
12504 Mon Jun  5 19:32:53 CEST 2000 Paolo Molaro <lupus@linuxcare.com>
12505
12506         * configure.in, gtk-config.in, gdk/Makefile.am, gdk/*/Makefile.am,
12507         gtk/Makefile.am: make it possible to configure gtk for different
12508         targets on the same platform. The library name is now 
12509         libgtk-$target-$version.so. gtk-config accepts a --target x11|nanox|linux-fb
12510         flag. Only the x11 target compiles right now.
12511         * gdk/gdkregion-generic.h, gdk/gdkregion-generic.c, gdk/gdkpoly-generic.h,
12512         gdk/gdkpolyreg-generic.c: move generic region code in the main GDK dir.
12513         * gdk/nanox/gdk*generic*: delete generic region code.
12514         * gdk/linux-fb/gdk*generic*: delete generic region code.
12515         * README.nanox: update information.
12516         
12517 Tue Jun  6 10:53:59 2000  Owen Taylor  <otaylor@redhat.com>
12518
12519         * gtk/gtktoolbar.c (gtk_toolbar_prepend_widget): Fix to
12520         prepend not append. (Pointed out by Brett Hall.)
12521
12522 Tue Jun  6 01:59:57 2000  Owen Taylor  <otaylor@redhat.com>
12523
12524         * gtk/gtkentry.c (gtk_entry_finalize): Unref the entry's layout.
12525
12526 Mon Jun  5 16:00:09 2000  Owen Taylor  <otaylor@redhat.com>
12527
12528         * gdk/gdk.c (gdk_init_check): Add call to g_type_init() - we'll
12529         need this later, and this makes sure that the atexit for
12530         glib gets called after that for GDK, so atexits are
12531         properly ordered for object leak checking.
12532
12533         * gdk/gdk.c (gdk_exit_func): Call gdk_windowing_exit().
12534
12535         * gdk/x11/gdkmain-x11.c (gdk_windowing_exit): Call 
12536         pango_x_shutdown_display()
12537
12538         * gtk/simple.c (main): Close window on destroy.
12539
12540 Mon Jun  5 11:50:02 2000  Owen Taylor  <otaylor@redhat.com>
12541
12542         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): We need
12543         to treat initial creation different from setting with 
12544         regards to the graphics-exposures parameter, so add a parameter
12545         indicating whether this is initial or not.
12546
12547 Mon Jun  5 13:29:31 2000  Owen Taylor  <otaylor@redhat.com>
12548
12549         * gdk/x11/gdkevents-x11.c: Hack gdk_event_get_graphics_expose()
12550         to sort of work by adding an extra return_exposes arg
12551         to gdk_event_translate() - it might be better to simply
12552         deprecate the function altogether and force people to rewrite
12553         without it. gdk_window_scroll() handles most of it, and where
12554         gdk_window_scroll() doesn't work, simply redrawing more does.
12555
12556         * gtk/gtkwidget.c (gtk_widget_set_default_direction): Fix up
12557         assertion.
12558
12559         * gtk-config.in: Include PANGO_CFLAGS/LIBS.
12560
12561         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Remove a 
12562         bunch of pretty much useless /* Print debugging info */ comments 
12563         which had drifted away from the code they were commenting.
12564
12565 2000-06-02  Havoc Pennington  <hp@pobox.com>
12566
12567         * gtk/testtextbuffer.c: Test program to make sure GtkTextBuffer
12568         is in working order.
12569         
12570         * gtk/testtext.c: Change to reflect anonymous mark API
12571
12572         * gtk/gtktextview.c: Convert from mark names to GtkTextMark*.
12573
12574         * gtk/gtktexttag.h (struct _GtkTextTag): remove the affects_size
12575         field, which was unused.
12576
12577         * gtk/gtktextmarkprivate.h (GTK_IS_TEXT_MARK): add this macro,
12578         saves some typing.
12579
12580         * gtk/gtktextbuffer.c: Switch from mark names to GtkTextMark*   
12581
12582         * gtk/gtktextbtree.c (gtk_text_btree_new): set the not_deleteable
12583         flag on the insertion point and selection bound
12584
12585         Throughout, use GtkTextMark instead of GtkTextLineSegment, and 
12586         make mark-manipulation functions take a GtkTextMark* instead of a
12587         mark name.
12588         
12589         * gtk/gtktextmarkprivate.h: Add a "not_deleteable" flag to 
12590         GtkTextMarkBody; will be used to detect attempts to delete
12591         the permanent marks (insert and selection bound)
12592
12593         * gtk/Makefile.am (noinst_PROGRAMS): add testtextbuffer 
12594
12595 Fri Jun  2 12:56:01 2000  Owen Taylor  <otaylor@redhat.com>
12596
12597         * gtk/gtkwidget.c (gtk_widget_init): Initialize DOUBLE_BUFFERED
12598         flag to on.
12599
12600         * gtk/gtkwidget.c (gtk_widget_draw) gtk/gtkmain.c (gtk_main_do_event): 
12601         Honor DOUBLE_BUFFRED_FLAG
12602
12603         * gtk/gtkwidget.c (gtk_widget_set_double_buffered): Add a
12604         function to set the DOUBLE_BUFFERED flag.
12605
12606         * gtk/gtkwidget.h: Add GTK_DOUBLE_BUFFERED flag to indicate whether
12607         or not exposes done on the widget should be double-buffered.
12608
12609         * gtk/gtkenums.h (GtkTextDirection): Reverse order of enumerations
12610         to be what would be expected. (Fixes problem with a
12611         g_return_if_fail() validating a TextDirection enumeration)
12612
12613 Thu Jun  1 23:05:13 2000  Owen Taylor  <otaylor@redhat.com>
12614
12615         * gtk/gtkwidget.c: Remove all references to 
12616         offscreen flag which was no longer used.
12617
12618         * gtk/gtkprivate.h (enum): Remove unused flags and compress.
12619
12620         * gtk/gtkframe.c (gtk_frame_set_label_widget): Check
12621         for non-null label_widget->parent.
12622
12623         * gtk/gtkentry.c: Get rid of code to deal with PangoAttribute 
12624         which no longer was used.
12625
12626         * gdk/gdkpango.c (gdk_pango_context_get_info): make static.
12627
12628         * gdk/gdkpango.c (gdk_draw_layout[_line]): Add checks
12629         for null arguments.
12630
12631         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): add
12632         check for destroyed windows.
12633
12634 Thu Jun  1 13:48:45 2000  Owen Taylor  <otaylor@redhat.com>
12635
12636         * gtk/gtkimmulticontext.c: Add a finalize method and unref
12637         the slave context there.
12638
12639         * gtk/gtkinvisible.[ch]: Make reference counting behavior
12640         identical to GtkWindow.
12641
12642 Thu Jun  1 01:54:11 2000  Owen Taylor  <otaylor@redhat.com>
12643
12644         * Makefile.am gdk/gdkpango.c: Copy the layout render function from
12645         pangox to here, so we can write them independent of rendering
12646         system, using GDK primitives.
12647
12648         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c
12649         gdk/x11/gdkdrawable-x11.c: Remove draw_layout() from the vtable,
12650         since we have a rendering-system independent implementation in
12651         terms of draw_glyphs().
12652         
12653         * gdk/gdkpango.c gdkdrawable.h (gdk_draw_layout_line): New
12654         function to render a single line.
12655
12656         * gdk/x11/gdkpango.c: Move the guts of this file mostly
12657         into ../gdkpango.c, which simplifies things, since we
12658         don't have to deal with raw X gc's.
12659
12660 Fri May 19 04:28:16 2000  Owen Taylor  <otaylor@redhat.com>
12661
12662         * gtk/gtktextlayout.[ch]: Add get_log_attrs() function to
12663         get the logical attributes for a given GtkTextLine.
12664
12665 Tue May 30 16:05:39 2000  Owen Taylor  <otaylor@redhat.com>
12666
12667         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Track
12668         g_locale_get_codeset() to g_get_codeset() change.
12669
12670 Tue May 30 15:03:19 2000  Owen Taylor  <otaylor@redhat.com>
12671
12672         * gtk/testcalendar.c (calendar_font_selection_ok): Use font
12673         descriptions.
12674
12675         * gtk/gtkentry.c (gtk_entry_draw_text): Center text within
12676         the entry.
12677
12678         * gtk/gtkfontsel.c (gtk_font_selection_dialog_init): Start of
12679         redoing (vastly simplifying) for Pango. Still needs quite
12680         a bit of work. (Size selection is currently poor. List of 
12681         predefined sizes is not a good idea, since all of these
12682         sizes won't necessarily be distinct.)
12683
12684 Tue May 30 13:50:19 2000  Owen Taylor  <otaylor@redhat.com>
12685
12686         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Handle
12687         CODESET results for LANG=C.
12688
12689 Mon May 29 15:49:10 2000  Owen Taylor  <otaylor@redhat.com>
12690
12691         * gtk/gtkrc.[ch]: Add a 'font_name' declaration to RC
12692         which takes a stringized pango font description;
12693         ignore the older 'font' and 'fontset' declarations.
12694
12695         * gtk/gtkstyle.c gtk/gtkrc.c: Fill in the style->font
12696         field with a GdkFont derived via gdk_font_from_description(),
12697         for compatibility. (Should we just remove it entirely?
12698         Probably too much compatibility breakage, but people
12699         should be migrating to the new Pango stuff as quickly
12700         as possible.)
12701
12702 Mon May 29 15:47:41 2000  Owen Taylor  <otaylor@redhat.com>
12703
12704         * gtk/gtkentry.c gtk/gtkclist.c: s/pango_font_unref/g_object_unref/.
12705
12706 Mon May 29 15:44:46 2000  Owen Taylor  <otaylor@redhat.com>
12707
12708         * gtk/gtkcalender.c: Roughly pango-ized. Really needs 
12709         redoing; there are some bugs in size allocation right
12710         now, the semi-existant distinction between header / day
12711         fonts was removed, but, with Pango, could actually
12712         be made functional in a nice way.
12713         
12714         * gtk/testcalender: Move calender from examples into this
12715         directory as a test program. (We really need to restrcture
12716         testgtk into a whole directory full of tests for every
12717         widget or functionality group, separated into multiple .c
12718         files.)
12719
12720 Mon May 29 15:19:56 2000  Owen Taylor  <otaylor@redhat.com>
12721
12722         * gtk/testgtk.c (file_exists): Fix stupid typo that
12723         was keeping RC file from being loaded.
12724
12725         * gtk/testgtkrc gtk/testgtkrc2: Test new pango-ized
12726         RC file font code.
12727
12728 Mon May 29 14:31:27 2000  Owen Taylor  <otaylor@redhat.com>
12729
12730         * gdk/gdkfont.h gdk/x11/gdkfont-x11.c (gdk_font_from_description):
12731         Add function to load a GdkFont from a PangoFontDescription.
12732
12733 2000-05-29  Tor Lillqvist  <tml@iki.fi>
12734
12735         * gdk/win32/gdkevents-win32.c (gdk_WindowProc): The local "event"
12736         variable should be of type GdkEventPrivate.
12737
12738 Fri May 26 17:16:40 2000  Owen Taylor  <otaylor@redhat.com>
12739
12740         * gtk/frame.[ch] gtkaspectframe.c: Make frame widgets able
12741         to have any widget for the label, use a GtkLabel widget
12742         to display the text. (Based partially on a patch from
12743         Anders Carlson.)
12744
12745         (Quite a bit of code reorganization - strip 90% of the
12746         guts out of gtkaspectframe and add a single virtual
12747         func to GtkFrameClass - compute_child_allocation.)
12748
12749 Fri May 26 12:00:02 2000  Owen Taylor  <otaylor@redhat.com>
12750
12751         * gtk/gtkctree.c gtk/gtkclist.[ch]: Pangoized.
12752         (Removed clist->row_center_offset field because caching
12753         it wasn't saving time or code, added private function
12754         _gtk_clist_create_cell_layout()).
12755
12756 Wed May 24 15:59:37 2000  Owen Taylor  <otaylor@redhat.com>
12757
12758         * gtk/gtkaccellabel.c: Pangoized.
12759
12760         * gtk/[hv]ruler.c: Pangoized
12761
12762 Mon May 22 19:23:59 2000  Owen Taylor  <otaylor@redhat.com>
12763
12764         * gtk/gtkfilesel.c (gtk_file_selection_init):
12765         Use gtk_clist_set_column_auto_resize() to remove need
12766         need for manual column width computations.
12767
12768 Mon May 22 18:50:26 2000  Owen Taylor  <otaylor@redhat.com>
12769
12770         * gtk/gtktooltips.[ch]: Replace custom drawing with a GtkLabel, 
12771         ensuring Pango correctness, and considerably simplifying the
12772         code.
12773         
12774         * gtk/gtklabel.c gtk[hv]scale.c: 1000 => PANGO_SCALE.
12775
12776         * gtk/gtklabel.c (gtk_label_size_request): Fixed incorrect
12777         getting of numbers of lines.
12778
12779         * gtk/gtklabel.c (gtk_label_size_request): Set the requisition
12780         to the actual requested width of the lable, not to the wrap
12781         width we set.
12782
12783         * gtk/gtktextchild.h: Remove extraneous include of gtk/gtk.h.
12784
12785         * gtk/gtktextbtree.c gtk/gtktextbuffer.c gtk/gtktextlayout.c
12786           gtk/gtktextview.c gtk/gtktextview.[ch]: Fix up includes.
12787
12788         * gtk/gtktextview.c: Fix structure inheritance.
12789
12790         * gtk/gtkprogressbar.c: Pangoize.
12791
12792 Mon May 22 15:47:30 2000  Owen Taylor  <otaylor@redhat.com>
12793
12794         * gtk/gtktextview.c (gtk_text_view_get_first_para_iter): Encapsulate
12795         in a function.
12796
12797         * gtk/gtktextlayout.c (find_display_line_above): Fixed
12798         bug with computing line tops.
12799
12800         * gtk/gtktextview.c (changed_handler): Fix < , <= confusion.
12801
12802 Thu May 18 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
12803
12804         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Fix up the x_offset
12805         and y_offset coordinates to do what we need now. (The offset between
12806         buffer and layout coordinates has been reintroduced, but is a 
12807         bit different than before.)
12808
12809         * gtk/gtktextview.[ch]: No longer inherit from GtkLayout; instead
12810         handle the adjustments ourselves, and scroll as necessary using
12811         the new gdk_window_scroll().
12812         
12813         The advantage of this is that when we are incrementally revalidating,
12814         we are essentially rearranging things around the visible portion
12815         of the screen. With the old setup, the visible portion of the
12816         screen was moved around in the layout, so scrolling and redrawing
12817         to track that caused jumping of the display. Since we now
12818         control the scrolling ourselves, we can suppress this and
12819         only redraw when things actually change.
12820
12821 Thu May 18 18:47:25 2000  Owen Taylor  <otaylor@redhat.com>
12822
12823         * gtk/gtktextbtree.c (redisplay_mark): We need to invalidate
12824         the region not just redisplay it after-all, since we store the
12825         cursors in the LineDisplay. (Ugly interactions here between
12826         GtkLayout and GtkTextBTree here.)
12827         
12828         * gtk/gtktextbtree.c (redisplay_region): Fixed reversed comparison.
12829
12830 Thu May 18 18:43:21 2000  Owen Taylor  <otaylor@redhat.com>
12831
12832         * gdk/gdkwindow.h gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): 
12833         Added function to scroll contents of a window while keeping the
12834         window constant. Works by XCopyArea or guffaw-scrolling depending
12835         on the details of how the window is set up. (guffaw-scrolling
12836         still needs to be filled in.)
12837
12838 Wed May 17 22:36:53 2000  Owen Taylor  <otaylor@redhat.com>
12839
12840         * gtk/gtktextiter.c gtk/gtkmain.c: Add a debug key for the text widget,
12841         move the debugging that was tied to a global variable
12842         to that.
12843
12844         * gtk/gtkmarshal.list: Add NONE:INT,INT,INT
12845
12846         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.c: Keep a separate
12847         validated flag, in line data instead of setting height/width to
12848         -1. This allows us to perform operations with partially invalid
12849         buffer (using the old size for invalid lines) and thus to do
12850         incremental vaidation. Keep height/width aggregates up to date
12851         when deleting text and rebalancing the tree.
12852
12853         * gtk/gtktextbtree.[ch]: Add functions validate a line
12854         (gtk_text_btree_validate_line), and to validate up
12855         to a number of pixels (gtk_text_btree_validate).
12856
12857         * gtk/gtktextlayout.[ch]: Add an ::invalidated signal
12858         that indicates that something is changed and a revalidation
12859         pass is needed. Change ::need_repaint to ::changed, and
12860         make it take old and new yranges instead of a rectangle.
12861
12862         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.[ch]: Move
12863         the line_data_destroy() function from 
12864         gtk_text_btree_add_view() to a virtual function in 
12865         GtkTextLayout
12866
12867         * gtk/gtktextbtree.[ch]: Remove gtk_text_btree_get_damage_range(),
12868         since we are handling partial repaints in a different fashion
12869         now.
12870
12871         * gtk/gtktextbtree.[ch]: Only repaint the changed portion
12872         of the selection instead of queueing a repaint on the
12873         entire widget.
12874
12875         * gtk/gtktextbuffer.[ch] gtk/gtktextbtree.[ch]: Move
12876         get_selection_bounds() down to btree, make the function
12877         in buffer a wrapper around the btree function.
12878
12879         * gtk/gtktextlayout.[ch]: Add functions to check if the
12880         layout is valid and to recompute either a range of pixels
12881         aroudn a line or a certain total number of pixels.
12882
12883         * gtk/gtktextlayout.[ch]: Cache a single line display;
12884         now that we only redraw the needed portions, the hit rate
12885         for this cache is quite high.
12886         
12887         * gtk/gtktextview.[ch]: Keep track of the first paragraph
12888         on the screen so that when re-laying-out the buffer, we can
12889         keep the same place. This requires connecting to ::value_changed
12890         on the adjustments
12891
12892         * gtk/gtktextview.[ch]: Add idle functions to revalidate
12893         the buffer after we receive an ::invalidated signal.
12894         
12895 Wed May 17 22:10:47 2000  Owen Taylor  <otaylor@redhat.com>
12896
12897         * gtk/gtklayout.c (gtk_layout_size_allocate): Set upper
12898         to max of allocation and layout size, not just to the
12899         layout size.
12900
12901         * gtk/gtk[hv]scrollbar.c (gtk_[hv]scrollbar_calc_slider_size): 
12902         Invalidate window so it gets redrawn properly.
12903
12904         * gdk/gdkwindow.c (gdk_window_invalidate_rect): Allow rect == NULL
12905         to mean the entire window.
12906
12907         * gdk/gdkevents.h: Move definition for GDK_PRIORITY_REDRAW
12908         into public header.
12909
12910 Mon May 15 14:51:31 2000  Owen Taylor  <otaylor@redhat.com>
12911
12912         * gtk/gtktextmark.c (gtk_text_mark_get_name): Add function
12913         to get the name of a mark.
12914
12915         * gtk/gtktextlayout.c (gtk_text_layout_get_line_at_y): Add a function
12916         to find the paragraph from a y position.
12917
12918 Thu May 11 12:57:20 2000  Owen Taylor  <otaylor@redhat.com>
12919
12920         * gtk/gtktextbtree.c (gtk_text_btree_node_invalidate_upward): Valid
12921         nodes have width/height >= 0, not > 0.
12922
12923 Tue May  9 21:29:06 2000  Owen Taylor  <otaylor@redhat.com>
12924
12925         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c (gtk_text_layout_get_line_display):
12926         Add a size_only flag, so when we only need the size, we don't create
12927         useless appearance attributes.
12928
12929         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Remove
12930         duplicate setting of font description.
12931
12932         * gtk/gtkscale.c: Use PANGO_SCALE instead of 1000 
12933
12934 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
12935
12936         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
12937         EXTRA_DIST. It does not work well when the file that
12938         everything depends on is not in the tarball.
12939
12940 Wed Apr 26 00:56:14 2000  Owen Taylor  <otaylor@redhat.com>
12941
12942         * gtk/testgtk.c: Some hacks and fixes so that it basically
12943         works when not sitting in the GTK+ build tree.
12944
12945 2000-05-03  Havoc Pennington  <hp@redhat.com>
12946
12947         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
12948         Properly determine the ordering of the tag root and the current
12949         line within the tree. Previous algorithm only worked if the tag
12950         root's immediate parent was the common root of both the current
12951         line and the tag root.
12952
12953 Wed Apr 26 00:43:00 2000  Owen Taylor  <otaylor@redhat.com>
12954
12955         * gtk/gtktextlayout.c (set_para_values): Fix some bugs in
12956         alignment.
12957
12958         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Track
12959         the widget text directional dynamically.
12960
12961         * gtk/gtktextview.[ch]: Added functions to get and set default
12962         wrap mode.
12963
12964 Tue Apr 25 23:47:38 2000  Owen Taylor  <otaylor@redhat.com>
12965
12966         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Fix bug
12967         in cursor location computation.
12968
12969 Tue Apr 25 23:22:59 2000  Owen Taylor  <otaylor@redhat.com>
12970
12971         * gtk/gtklayout.c (gtk_layout_set_size): Clamp hadjustment/
12972         vadjusment values properly when layout gets smaller.
12973
12974         * gtk/gtktextview.c (need_repaint_handler): Areas being
12975         passed in are far completely inaccurate, and sometimes
12976         too small, so, for now, just queue a redraw on the
12977         whole visible region.
12978
12979 2000-04-25  Havoc Pennington  <hp@redhat.com>
12980
12981         * gtk/gtktextbtree.c (summary_destroy): new function to 
12982         destroy tag summary nodes
12983         (gtk_text_line_next_could_contain_tag): this function was 
12984         totally broken if the line passed in wasn't below the tag
12985         root. Fix it.
12986         (gtk_text_btree_first_could_contain_tag): In the tag == NULL 
12987         "wildcard" case, we have to do a linear scan. Blah.
12988         (gtk_text_btree_last_could_contain_tag): In tag == NULL case,
12989         we have to do the linear scan
12990         (tag_removed_cb): When a tag is removed from the tag table, 
12991         remove the GtkTextTagInfo node from the btree.
12992         (gtk_text_btree_spew): Implement the spew function, for 
12993         our debugging pleasure.
12994
12995 Tue Apr 25 19:40:18 2000  Owen Taylor  <otaylor@redhat.com>
12996
12997         * gtk/gtktextlayout.c (gtk_text_layout_set_buffer): Fix
12998         a problem with referring to the wrong buffer.
12999
13000         * gtk/gtkentry.c: Fix focus-in/focus-out confusion.
13001
13002         * gtk/gtkrc.c gtk/gtkstyle.c: Moving setting default
13003         font description to gtk_style_new() - otherwise things
13004         don't work without a .gtkrc file.
13005
13006         * gtk/gtktextbuffer.c (gtk_text_buffer_new): Sink the
13007         tags table if we create it ourself, too.
13008
13009         * gdk/gdktypes.h (enum): Move GDK_RELEASE_MASK, since
13010         it was conflicting with XKB modifiers.
13011
13012         * gtk/gtktextview.[ch]: Add simple support for 
13013         GtkIMContext.
13014
13015 Mon Apr 24 19:34:18 2000  Owen Taylor  <otaylor@redhat.com>
13016
13017         * gtk/gtkentry.c (gtk_entry_move_cursor_visually): Fix problem
13018         with deletion from last commit.
13019
13020 Mon Apr 24 19:29:40 2000  Owen Taylor  <otaylor@redhat.com>
13021
13022         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Set the language
13023         in the context from the current locale.
13024         
13025         * gtk/gtkentry.c (gtk_entry_size_request): Use language from the
13026         context, not hardcoded value.
13027
13028         * gtk/gtkentry.c (gtk_entry_move_cursor): Make character movement visual,
13029         not logical.
13030
13031 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
13032
13033         * gtk/gtkentry.c gtk/gtktextdisplay.c: Don't handle selections as
13034         attributes - that doesn't handle partial-glyph selection
13035         properly. Instead use new pango_layout_line_get_x_ranges()
13036         functionality to draw the selection.
13037
13038         * gtk/gtkentry.c: Simplify code since pango_layout_line_index_to_x()
13039         now properly handles out-of-range coordinates.
13040
13041         * gtk/gtktextbuffer.c: Emit "mark_set" when the cursor is moved.
13042
13043         * gtk/gtktextiter.h gtk/gtktextiterprivate.h: Make gtk_text_iter_get_line_byte()
13044         public.
13045
13046         * gtk/gtktextlayout.[ch]: Properly set the direction in the PangoContext
13047         for paragraphs opposite to the base direction of the widget.
13048
13049         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c: Fixes for alignment.
13050
13051         * gtk/gtktextlayout.c: Don't split segments on marks, since that
13052         causes Arabic words to reshape as you cursor through.
13053
13054         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Implement virtual
13055         cursor position when moving vertically with the arrow keys and
13056         scrolling with page-up/page-down. (Arrow keys save only the X,
13057         scrolling saves both X and Y.)
13058
13059         This means you can line-up / line-down or page-up / page-down
13060         without losing your place, and also that moving vertically
13061         with the cursor keys keeps the same X position, not the same
13062         character count:
13063
13064         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Make vertical
13065         arrow keys move by display lines, not paragraphs.
13066
13067 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
13068
13069         * gtk/gtklayout.c: Make sure that the bin window is at least
13070         as big as the allocation. (Should we also make sure that the
13071         bin window is big enough to completely cover widget->window?)
13072
13073         * gtk/gtktextview.c (gtk_text_view_get_visible_rect): Add
13074         function to get the onscreen rectangle.
13075
13076         * gdk/x11/gdkwindow-x11.c (gdk_window_get_pointer): Correctly account
13077         for offsets in window coordinates.
13078
13079 Sun Apr 16 16:13:27 2000  Owen Taylor  <otaylor@redhat.com>
13080
13081         * gtk/gtkentry.c (gtk_entry_get_cursor_locations): Fix index/offset
13082         confusion.
13083
13084         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Set the default direction
13085         from the widget direction.
13086
13087         * gtk/gtktexttag.c gtk/gtktexttagprivate.h (gtk_text_tag_set_arg): 
13088         Add a "direction" attribute.
13089
13090         * gtk/gtktextview.c: global s/tkxt/text_view/.
13091
13092         * gtk/testtext.c: Added long block of text in Arabic, to test out
13093         the direction attributes. (Some problems with the shaping system
13094         for arabic become obvious - like the fact the cursor splits words
13095         into unjoined pieces.)
13096
13097 Fri Apr 14 12:54:34 2000  Owen Taylor  <otaylor@redhat.com>
13098
13099         * gtk/gtktextdisplay.c (render_layout): Add overstrike handling.
13100
13101         * gtk/gtktextlayout.c: Fix up alignment.
13102
13103         * gtk/testtext.c: Add some tests for centering, wrapping.
13104
13105 Fri Apr 14 09:26:22 2000  Owen Taylor  <otaylor@redhat.com>
13106
13107         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c gdk/x11/gdkdrawable-x11.c:
13108         Add a draw_glyphs() operation to the drawable vtable and gdk_draw_glyphs().
13109         If we wrote GTK+-specific layout-render function this could just replace
13110         the draw_layout() operation in the vtable.
13111
13112         * gtk/gtkentry.c: Move guts of gtk_entry_get_cursor_locations to 
13113         pango_layout_get_cursor_pos() and use that function.
13114
13115         * gtk/gtktextchild.[ch]: add gtk_ onto pixmap_segment_new(), since it
13116         is a non-static symbol.
13117
13118         * gtk/gtktextbtree.[ch]: Replace gtk_text_btree_find_line_data_by_y()
13119         with gtk_text_btree_find_line_by_y()
13120
13121         * gtk/gtktextdisplay.c: Rewrote for Pango - uses a custom layout
13122         renderer that handles GtkTextAppearance attributes.
13123
13124         * gtk/gtktexttag.[ch] gtk/gtktexttagprivate.h: 
13125
13126           - Move the values in the style that don't affect geometry into a
13127             GtkTextAppearance structure.
13128           - Change underline to take a PangoUnderline and "font" a string
13129             representation of a font description
13130           - Add a "font_desc" attribute which takes a FontDescription structure.
13131
13132         * gtk/gtktextlayout.[ch]:
13133
13134           - Get rid of the display-line list per each line. Instead, we
13135             generate, on demand, a GtkTextLineDisplay structure which]
13136             contains a PangoLayout * and other necesary information
13137             (offsets, cursor locations) for displaying a paragraph.
13138           - Get rid of the code to wrap lines, create display chunks,
13139             etc. Instead, we just go through a paragraph and convert
13140             it into the necessary inputs to a PangoLayout.
13141           - Implement a new attribute type, GtkTextAttrAppearance. This
13142             holds a GtkTextAppearance, and is used to pass colors, 
13143             stipple, etc, through from the layout to the display without
13144             having to use lots and lots of individual attributes.
13145           - Reimplement gtk_layout_get_iter_at_pixel() gtk_layout_get_iter_pos()
13146             in terms of PangoLayout functions.
13147         
13148         * gtk/gtktextview.c: 
13149          
13150           - Handle passing the necessary PangoContext to the layout
13151           - Some fixups in painting to deal with the automatic backing store
13152             and offsetting of GTK+-1.4
13153           - Add a style_set handler so that the default style reacts
13154             properly to theme changes.
13155         
13156         * gtk/gtktext?*.[ch]: Random code-style fixes.
13157
13158         * gtk/testtext.c: Substitute in languages that Pango handles now for Thai
13159
13160 Mon Apr 10 10:33:45 2000  Owen Taylor  <otaylor@redhat.com>
13161
13162         * gtk/gtktext?*.[ch]: Check in Havoc's port of the Tk text widget,
13163         in original form preparatory to Pango-ization and gdkimcontext-ization.
13164
13165 Thu Apr  6 19:25:39 2000  Owen Taylor  <otaylor@redhat.com>
13166
13167         * gtk/gtkimcontext.c: Move default implementations to real_* vfuncs,
13168         so that we can derive from gtkimcontext in language bindings properly.
13169
13170 Thu Apr  6 16:02:52 2000  Owen Taylor  <otaylor@redhat.com>
13171
13172         * gtk/gtkimcontextsimple.[ch]: Use gdk_keyval_to_unicode to gdk_unicode_to_keyval.
13173         Add a compose table including (almost) all the compose combinations
13174         from X. This is 6k of static, shared data as opposed to 50k or so of dynamic
13175         data in the XIM implementation.
13176
13177         * gdk/gdk.h gdk/gdkkeyuni.c gdk/win32/gdkevents-win32.c (gdk_keyval_to_unicode, gdk_unicode_to_keyval):
13178         Moved functions to convert keyvalues from and to unicode here from
13179         the win32 port and made them public.
13180
13181 Wed Apr  5 16:37:29 2000  Owen Taylor  <otaylor@redhat.com>
13182
13183         * gtk/gtkeditable.c (gtk_editable_insert_text): Allow new_text_length == -1.
13184
13185 Wed Apr  5 16:27:45 2000  Owen Taylor  <otaylor@redhat.com>
13186
13187         * gtk/gtkimcontext.[ch]: Base class for new input context system
13188
13189         * gtk/gtkimmulticontext.[ch]: Proxy input context that allows
13190         the real input context implementation to be loaded from modules
13191         and switched on the fly.
13192
13193         * gtk/gtkcontextsimple.[ch]: Simple implementation of an input
13194         context that just does direct keysymbol => unicode translation.
13195
13196         * gtk/gtkentry.[ch]: Start switching editing over to using
13197         GtkInputContext. (No handling of preedit yet.)
13198
13199 Wed Apr  5 15:48:41 2000  Owen Taylor  <otaylor@redhat.com>
13200
13201         * gtk/gtktypeutils.h (GTK_CHECK_GET_CLASS): Fix problem with one too
13202         many substitutions. (klass should not be subsituted.)
13203
13204 Wed Apr  5 00:18:14 2000  Owen Taylor  <otaylor@redhat.com>
13205
13206         * configure.in: Add checks for Pango
13207
13208         * configure.in docs/Makefile.am: Add test for sgml2html
13209         and allow 'make dist' without building html, but print out
13210         warnings in that case. (For making snapshots)
13211
13212         * gdk/Makefile.am gdk/x11/Makefile.am gtk/Makefile.am:
13213         Add Pango libraries and C flags
13214
13215         * gdk/gdkdraw.c gdk/gdkdrawable.h gdkwindow.c gdk/x11/gdkdrawable-x11.c:
13216         Add function (gdk_draw_layout) to draw a pango layout.
13217
13218         * gdk/gdkpango.h gdk/x11/gdkpango-x11.c: New file with functions
13219         for getting Pango contexts for GDK.
13220
13221         * gtk/gtkeditable.c: Get rid of dead code gtk_editable_parent_set()
13222
13223         * gtk/gtkentry.[ch]: Complete rewrite to use Pango, add bidirectional
13224         editing.
13225
13226         * gtk/gtkentry.c: Hack in simple Hebrew input with direct
13227         keysym => unicode translations. More languages can be added
13228         here, but real input-method support is needed.
13229
13230         * docs/Changes-1.4.txt: Added note about entry behavior.
13231         
13232         * gtk/gtkenums.h gtk/gtkwidget.[ch] testgtk.c gtkprivate.h: Add functions
13233         to set the reading direction for a widget and the global direction.
13234         Add test which allows toggling the global direction. Two private
13235         flags are used to store the direction. (GTK_DIRECTION_SET + GTK_DIRECTION_LTR)
13236
13237         * gtk/gtkcheckbutton.c gtk/gtkframe.c gtk/gtkhbbox.c gtk/gtkhbox.c
13238           gtk/gtkradiobutton.c gtk/gtkspinbutton.c gtk/gtktable.c 
13239
13240         * gtk/gtk[hv]scale.c gtk/gtkscale.[ch]: Draw numbers using Pango
13241
13242         * gtk/gtklabel.[ch]: Moved to Pango and considerably rewritten. Line breaking,
13243         underlining now handled by Pango.
13244
13245         * gtk/gtkstyle.[ch] gtk/gtkrc.[ch]: Add a PangoFontDescription
13246         to RCStyle and Style. (Having both this and the old font name and GdkFont 
13247         is temporary.)
13248
13249         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_{context,layout}): Added 
13250         convenience functions for creating contexts and layouts for widgets.
13251
13252         * gtk/testgtk.c: Enhance label tests with multilingual labels.
13253
13254 2000-05-29  Jonathan Blandford  <jrb@redhat.com>
13255
13256         * gtk/gtkclist.c (gtk_clist_column_titles_active): let you set the
13257         titles to be active, even if they aren't visible.
13258         (gtk_clist_column_titles_passive):  Ditto.
13259
13260 2000-05-21  Nils Barth  <nils_barth@post.harvard.edu>
13261
13262         * gtkmenu.c:
13263         * gtkmenu.h:
13264         * gtktypeutils.h: Spelling/grammar fixes in comments.
13265
13266 Tue May 23 12:25:07 CEST 2000 lupus <lupus@debian.org>
13267
13268         * gdk/nanox/*.h: add missing header files.
13269
13270 Fri May 19 11:52:59 2000  Tim Janik  <timj@gtk.org>
13271
13272         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set
13273         send_event to TRUE.
13274         (gtk_drawing_area_size): queue a resize.
13275
13276 Sun Mar 26 03:21:28 2000  Tim Janik  <timj@gtk.org>
13277
13278         * gtk/gtksignal.c (gtk_signal_handlers_destroy): when unref-ing
13279         the handlers, also invalidate them. bug nailed down by Karl Nelson
13280         <kenelson@ece.ucdavis.edu>.
13281
13282 Fri May 19 06:49:23 2000  Tim Janik  <timj@gtk.org>
13283
13284         * gtk/gtkfontsel.c (gtk_font_selection_get_font_name): handle
13285         "(nil)" foundries, patch from Grigorios Magklis.
13286
13287         * gtk/gtkfontsel.c (gtk_font_selection_load_font): don't crash
13288         on non-available fonts, based on a patch by Grigorios Magklis
13289         <maglis@cs.rochester.edu>.
13290
13291 2000-05-18  Elliot Lee  <sopwith@redhat.com>
13292
13293         * gdk/x11/gdkregion-generic.c: If a region does not have any
13294         rectangles, or if the specified rectangle is not in the region, then return GDK_OVERLAP_RECTANGLE_OUT
13295         instead of GDK_OVERLAP_RECTANGLE_IN.
13296
13297 2000-05-17  Jonathan Blandford  <jrb@redhat.com>
13298
13299         * gtk/gtklayout.c (gtk_layout_map): Remove references to
13300         OFFSCREEN, as it is no longer necessary.
13301
13302 Wed May 17 10:52:12 2000  Owen Taylor  <otaylor@redhat.com>
13303
13304         * gtk/gtkcolorsel.c: Patch from David Santiago
13305         <mrcooger@cyberverse.com> to change things so that the 
13306         indicator of the active palette entry is done independently,
13307         not via the focus, since it should always be visible.
13308
13309 2000-05-17  Tor Lillqvist  <tml@iki.fi>
13310
13311         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Plug same
13312         refcount leaks as in the X11 backend.
13313
13314         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Logging
13315         cosmetics.
13316
13317         * gdk/win32/gdkwindow-win32.c: Similar changes as in X11
13318         backend. Add _gdk_windowing_window_destroy().
13319
13320         * gtk/gtkcolorsel.c: Include correct backend-specific header.
13321         Don't use XColor unless on X11. (No GDK_VISUAL_STATIC_COLOR
13322         either, but these probably do exist on nanox?)
13323         
13324         * gtk/gtkhsv.c: Use G_PI (fresh from <glib.h>) instead of M_PI
13325         which isn't necessarily defined by <math.h>.
13326
13327         * gtk/gtkobject.c (gtk_object_init): Don't go up the class
13328         ancestry past GtkObject.
13329
13330         * gtk/gtktypeutils.h: Mark GTK_TYPE_IDENTIFIER for export/import
13331         from DLL on Win32.
13332
13333         * gtk/gtk.def: Update corresponding to recent changes.
13334
13335         * gtk/makefile.{cygwin,msc}: Updates.
13336
13337 Fri May 12 18:46:51 2000  Owen Taylor  <otaylor@redhat.com>
13338
13339         * docs/Changes-1.4.txt: A bit of editing.
13340
13341         * gdk/gdkwindow.c (_gdk_window_clear_update_area) 
13342         * gdk/x11/gdkwindow-x11.c (gdk_window_hide): Add a function
13343         to clear the update area for the window, and clear it
13344         when hiding a window.
13345
13346         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Ignore
13347         if window destroyed.
13348
13349         * gdk/gdkwindow.c (gdk_window_end_paint): Likewise.
13350
13351         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c gdk/gdkinternals.h: Move 
13352         gdk_window_destroy() to the generic code, since there was a lot of 
13353         window-system-independent logic it in. Add a function:
13354         
13355          _gdk_window_destroy() 
13356
13357         to the internal API to destroy a window without unreferencing it.
13358         Add a function:
13359
13360          _gdk_windowing_window_destroy()
13361
13362         That does the windowing-system-dependent part of destroying 
13363         the window.
13364
13365 Fri May 12 11:07:41 2000  Owen Taylor  <otaylor@redhat.com>
13366
13367         * gtk/testgtk.c: Fix various memory leaks of pixmaps.
13368
13369 Fri May 12 11:06:10 2000  Owen Taylor  <otaylor@redhat.com>
13370
13371         * gtk/gtkwidget.c docs/Changes-1.4.txt (gtk_widget_shape_combine_mask): 
13372         Make gtk_widget_shape_combine_mask() keep a reference count on
13373         the pixmap since it keeps it around.
13374
13375 Fri May 12 10:53:29 2000  Owen Taylor  <otaylor@redhat.com>
13376
13377         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix refcount
13378         leak.
13379
13380         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Fix refcount
13381         leak with event filters.
13382
13383 Thu May 11 14:29:44 2000  Owen Taylor  <otaylor@redhat.com>
13384
13385         * gtk/gtkdnd.c (gtk_drag_dest_set_internal): Remove the
13386         signal handlers with the right data arguments. (Fixes
13387         some warnings when a widget was repeatedly set as a drag
13388         destination.)
13389
13390         * gdk/x11/gdkdnd-x11.c (gdk_window_register_dnd): Set data on the
13391         window so we can avoid avoid setting the DND properties on the
13392         toplevel window repeatedly.
13393
13394 2000-05-13  Tor Lillqvist  <tml@iki.fi>
13395
13396         * gdk/win32/gdkwin32.h: Define more message types missing from
13397         mingw headers.
13398
13399         * gdk/win32/gdkevents-win32.c (gdk_event_translate): On WM_DESTROY
13400         call gdk_window_destroy_notify(). It was never called. This
13401         probably meant that the GdkWindow was never freed. Thanks Owen for
13402         noticing (!).
13403
13404         * gdk/win32/gdkwindow-win32.c (gdk_window_internal_destroy): Mark
13405         window as destroyed before calling DestroyWindow(). DestroyWindow()
13406         causes a call to the window procedure (gdk_WindowProc), which
13407         calls gdk_event_translate(), which calls
13408         gdk_window_destroy_notify(), which gets confused unless the window
13409         is set as destroyed.
13410
13411         * gdk/win32/gdkcolor-win32.c (gdk_win32_color_to_string): Rename
13412         this function to indicate it's win32 only. Put inside #ifdef
13413         G_ENABLE_DEBUG.
13414
13415         * gdk/win32/gdkevents-win32.c (gdk_win32_message_name): New
13416         debugging function. (gdk_event_translate:) Add a default branch
13417         that uses the above function to print debug messages with all
13418         Windows messages symbolically.
13419
13420         * gdk/win32/gdkprivate-win32.h: Declare it, and
13421         gdk_win32_color_to_string, but only if G_ENABLE_DEBUG.
13422
13423 Fri May 12 20:07:32 2000  Tim Janik  <timj@gtk.org>
13424
13425         * gtk/gtkcolorseldialog.c: don't include gtk/gtkintl.h in a
13426         public header file.
13427
13428 Fri May 12 17:13:32 2000  Tim Janik  <timj@gtk.org>
13429
13430         * docs/Changes-1.4.txt: documented necessary changes for 1.4 transition.
13431
13432         * gtk/gtktext.c: made the adjustments no-construct args, simply
13433         provide default adjustments.
13434         (gtk_text_destroy): release adjustments.
13435
13436         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): made the
13437         adjustment argument non-construct.
13438
13439         * gtk/gtkprogress.c (gtk_progress_destroy): release adjustment here,
13440         instead of in finalize.
13441         (gtk_progress_get_text_from_value): 
13442         (gtk_progress_get_current_text): 
13443         (gtk_progress_set_value): 
13444         (gtk_progress_get_percentage_from_value): 
13445         (gtk_progress_get_current_percentage): 
13446         (gtk_progress_set_percentage): 
13447         (gtk_progress_configure): ensure an adjustment is present.
13448
13449 Thu May 11 01:24:08 2000  Tim Janik  <timj@gtk.org>
13450
13451         * gtk/gtkcolorsel.[hc]:
13452         * gtk/gtkcolorseldialog.[hc]:
13453         * gtk/gtkhsv.[hc]: major code cleanups, destroy handlers need to chain
13454         their parent implementation, use bit fields for boolean values, don't
13455         create unused widgets, usage of glib types, braces go on their own
13456         lines, function argument alignment, #include directives etc. etc. etc..
13457
13458         * gtk/Makefile.am (gtk_public_h_sources): install gtkhsv.h.
13459
13460 Wed May 10 23:29:52 2000  Tim Janik  <timj@gtk.org>
13461
13462         * gtk/gtktoolbar.c (gtk_toolbar_destroy): don't unref a NULL tooltips.
13463
13464         * gtk/gtkfilesel.c (gtk_file_selection_destroy): don't free a cmpl_state
13465         of NULL.
13466
13467         * gtk/gtkcombo.c (gtk_combo_item_destroy): don't keep references
13468         to freed data.
13469         (gtk_combo_destroy): don't keep a pointer to a destroyed window.
13470
13471         * gtk/gtkmenu.c (gtk_menu_init): reset the menu's toplevel pointer
13472         to NULL when the toplevel is getting destroyed.
13473         (gtk_menu_set_tearoff_state): same here for the tearoff_window.
13474         (gtk_menu_destroy): 
13475         (gtk_menu_init): store the information of whether we have to
13476         readd the initial child ref_count during destruction in a new
13477         GtkMenu field needs_destruction_ref_count.
13478
13479         * gtk/gtkviewport.c: SHAME! ok this one is tricky, so i note it
13480         here, those reading: learn from my mistake! ;)
13481         in order for set_?adjustment to support a default adjustemnt if
13482         invoked with an adjustment pointer of NULL, the code read (pseudo):
13483         if (v->adjustment) unref (v->adjustment);
13484         if (!adjustment) adjustment = adjustment_new ();
13485         if (v->adjustment != adjustment) v->adjustment = ref (adjustment);
13486         now imagine the first unref to actually free the old adjustment and
13487         adjustment_new() creating a new adjustment from the very same memory
13488         portion. here, the latter comparision will unintendedly fail, and
13489         all hell breaks loose.
13490         (gtk_viewport_set_hadjustment):
13491         (gtk_viewport_set_vadjustment): reset viewport->?adjustment to NULL
13492         after unreferencing it.
13493
13494         * gtk/gtkcontainer.[hc]: removed toplevel registration
13495         functions: gtk_container_register_toplevel(),
13496         gtk_container_unregister_toplevel() and
13497         gtk_container_get_toplevels() which had wrong semantics
13498         anyways: it didn't reference and copy the list.
13499
13500         * gtk/gtkwindow.c: we take over the container toplevel registration
13501         bussiness now. windows are registered across multiple destructions,
13502         untill they are finalized. the initial implicit reference count
13503         users are holding on windows is removed with the first destruction
13504         though.
13505         (gtk_window_init): ref & sink and set has_user_ref_count, got
13506         rid of gtk_container_register_toplevel() call. add window to
13507         toplevel_list.
13508         (gtk_window_destroy): unref the window if has_user_ref_count
13509         is still set, got rid of call to
13510         gtk_container_unregister_toplevel().
13511         (gtk_window_finalize): remove window from toplevel list.
13512         (gtk_window_list_toplevels): new function to return a newly
13513         created list with referenced toplevels.
13514         (gtk_window_read_rcfiles): use gtk_window_list_toplevels().
13515
13516         * gtk/gtkhscale.c (gtk_hscale_class_init): made the GtkRange
13517         adjustment a non-construct arg.
13518         * gtk/gtkvscale.c (gtk_vscale_class_init): likewise.
13519         * gtk/gtkhscrollbar.c (gtk_vscrollbar_class_init): likewise.
13520         * gtk/gtkvscrollbar.c (gtk_vscrollbar_class_init): likewise.
13521
13522         * gtk/gtkrange.c: added some realized checks.
13523         (gtk_range_destroy): get rid of the h/v adjustments in the
13524         destroy handler instead of finalize. remove timer.
13525         (gtk_range_get_adjustment): demand create adjustment.
13526
13527         * gtk/gtkviewport.c: made h/v adjustment non-construct args.
13528         we simply create them on demand now and get rid of them in
13529         the destroy handler.
13530         (gtk_viewport_destroy): get rid of the h/v adjustments in the
13531         destroy handler instead of finalize.
13532         (gtk_viewport_get_hadjustment): 
13533         (gtk_viewport_get_vadjustment): 
13534         (gtk_viewport_size_allocate): demand create h/v adjustment
13535         if required.
13536
13537         * gtk/gtkwidget.c (gtk_widget_finalize): duplicate part of the
13538         gtk_widget_real_destroy () functionality.
13539         (gtk_widget_real_destroy): reinitialize with a new style, instead
13540         of setting widget->style to NULL.
13541
13542 Fri May  5 13:02:09 2000  Tim Janik  <timj@gtk.org>
13543
13544         * gtk/gtkcalendar.c:
13545         * gtk/gtkbutton.c: ported _get_type() implementation over to
13546         GType, either to preserve memchunks allocation facilities,
13547         or because Gtk+ 1.0 GtkTypeInfo was still being used.
13548
13549         * gtk/gtkobject.[hc]: derive from GObject. ported various functions
13550         over. prepare for ::destroy to be emitted multiple times.
13551         removed reference tracer magic. chain into GObjectClass.shutdown()
13552         to emit ::destroy signal.
13553
13554         * gtk/gtksignal.c: removed assumptions about GTK_TYPE_OBJECT being
13555         fundamental.
13556
13557         * gtk/gtkmain.c: removed gtk_object_post_arg_parsing_init()
13558         cludge.
13559
13560         * gtk/gtksocket.c:
13561         * gtk/gtkplug.c:
13562         * gtk/gtklayout.c:
13563         * gtk/gtklabel.c:
13564         * gtk/gtkargcollector.c:
13565         * gtk/gtkarg.c: various fixups to work with GTK_TYPE_OBJECT
13566         not being a fundamental anymore, and to work with the new
13567         type system (nuked fundamental type varargs clutter).
13568
13569         * gtk/*.c: install finalize handlers in the GObjectClass
13570         part of the class structure.
13571         changed direct GTK_OBJECT()->klass accesses to
13572         GTK_*_GET_CLASS().
13573         changed direct object_class->type accesses to GTK_CLASS_TYPE().
13574
13575         * gtktypeutils.[hc]: use the reserved fundamental ids provided by
13576         GType. made most of the GTK_*() type macros and Gtk* typedefs
13577         simple wrappers around macros and types provided by GType.
13578         most notably, a significant portion of the old API vanished:
13579         GTK_TYPE_MAKE(),
13580         GTK_TYPE_SEQNO(),
13581         GTK_TYPE_FLAT_FIRST, GTK_TYPE_FLAT_LAST,
13582         GTK_TYPE_STRUCTURED_FIRST, GTK_TYPE_STRUCTURED_LAST,
13583         GTK_TYPE_ARGS,
13584         GTK_TYPE_CALLBACK,
13585         GTK_TYPE_C_CALLBACK,
13586         GTK_TYPE_FOREIGN,
13587         GtkTypeQuery,
13588         gtk_type_query(),
13589         gtk_type_set_varargs_type(),
13590         gtk_type_get_varargs_type(),
13591         gtk_type_check_object_cast(),
13592         gtk_type_check_class_cast(),
13593         gtk_type_describe_tree(),
13594         gtk_type_describe_heritage(),
13595         gtk_type_free(),
13596         gtk_type_children_types(),
13597         gtk_type_set_chunk_alloc(),
13598         gtk_type_register_enum(),
13599         gtk_type_register_flags(),
13600         gtk_type_parent_class().
13601         replacements, where available are described in ../docs/Changes-1.4.txt.
13602         implemented compatibility functions for the remaining API.
13603
13604         * configure.in: depend on glib 1.3.1, use gobject module.
13605
13606 Thu May 11 12:39:50 2000  Owen Taylor  <otaylor@redhat.com>
13607
13608         * TODO.xml: Various updates to current status.
13609
13610 Wed May 10 20:25:04 2000  Owen Taylor  <otaylor@redhat.com>
13611
13612         * gtk.m4: Print out version when test succeeds.
13613
13614 Wed May 10 16:38:17 2000  Owen Taylor  <otaylor@redhat.com>
13615
13616         * gtk/Makefile.am docs/Changes-1.4.txt gtk/gtkcolorsel.[ch]
13617         gtk/gtkhsv.[ch]: Color selection dialog rewrite.
13618         
13619         (Original triangle color selector from Simon Budig
13620         <Simon.Budig@unix-ag.org>, Cleaned up and rewritten for GTK+ by
13621         from Jonathan, Havoc, and Federico. Merge into GTK+ done by David
13622         Santiago <mrcooger@cyberverse.com>)
13623
13624         * gtk/gtkcolorseldialog.[ch]: Split color selection dialog
13625         out into a separate widget.
13626
13627         * gtk/testgtk.c: Add some checkbuttons for toggling palette
13628         and opacity controls.
13629
13630 Wed May 10 16:08:09 2000  Owen Taylor  <otaylor@redhat.com>
13631
13632         * configure.in (GTK_LIBS_EXTRA): Remove references to gobject that 
13633         snuck in prematurely.
13634
13635 2000-05-07  Tor Lillqvist  <tml@iki.fi>
13636
13637         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Fix typo. I
13638         had deleted a ! operator by mistake, which caused
13639         GDK_SELECTION_CLEAR events never to be generated, which caused
13640         only the first copy to the clipboard from an gtkeditable to
13641         actually cause a copy to the Windows clipboard.
13642
13643 2000-05-06  Tor Lillqvist  <tml@iki.fi>
13644
13645         * gdk/win32/gdkdnd-win32.c: Enable shortcut resolution for gcc
13646         compilation, too. Current mingw gcc distributions include the
13647         necessary headers. Also the necessary IIDs are now in mingw
13648         headers/libraries, and own definitions unnecessary.
13649
13650         More hacking on OLE2 DND, still doesn't work though, and thus
13651         ifdeffed out.
13652
13653         * gdk/win32/gdkwindow-win32.c: Remove gdk_window_clear() from
13654         here, too.
13655
13656 Sat,  6 May 2000 13:31:34 +0200 Paolo Molaro <lupus@linuxcare.com>
13657
13658         * gdk/nanox/*: nano-X port work in progress.
13659         * gdk/simple.c: simple test for Gdk.
13660         * README.nanox: notes about the port: read this first!
13661         * gtk/gtk{dnd,plug,selection,window}.c: minimal changes to make gtk compile
13662         with nano-X.
13663
13664 Fri May  5 11:18:47 2000  Owen Taylor  <otaylor@redhat.com>
13665
13666         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c (gdk_window_clear): Move
13667         gdk_window_clear() into common code, implement in terms of
13668         gdk_window_clear_area(). (Fixes bug where gdk_window_clear() was
13669         not redirected to the backing rectangle.
13670
13671 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
13672
13673         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
13674         EXTRA_DIST. It does not work well when the file that
13675         everything depends on is not in the tarball.
13676
13677 Tue Apr 25 22:20:41 2000  Owen Taylor  <otaylor@redhat.com>
13678
13679         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix error
13680         with recursion where process_updates() is called from
13681         an expose handler. (GtkTextView is highly broken in
13682         doing this, but it should work, so it is a nice test
13683         case.)
13684
13685 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
13686
13687         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Gracefully
13688         handle the case where updates are queued during processing of
13689         updates.
13690
13691 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
13692
13693         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): We already assume
13694         window is on gdk_display - use that instead of segfaulting.
13695
13696 Thu May  4 02:04:46 2000  Tim Janik  <timj@gtk.org>
13697
13698         * configure.in (STRIP_DUMMY): some Make 3.79 $(strip ) versions are
13699         broken and require an empty arg, give it to them.
13700
13701 Fri Apr 28 19:34:32 2000  Tim Janik  <timj@gtk.org>
13702
13703         * gtk/gtklabel.h: indentation fixes.
13704
13705 2000-05-02  Tor Lillqvist  <tml@iki.fi>
13706
13707         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_arc): Don't try to
13708         draw too narrow or too low arcs, they seem to fail, at least with
13709         some display drivers.
13710
13711         * gdk/gdk.c (gdk_init_check): Use G_DIR_SEPARATOR.
13712
13713         Large changes to the Win32 backend, partially made necessary by
13714         the changes to the backend-independent internal
13715         structures. Attempts to implement similar backing store stuff as
13716         on X11. The current (CVS) version of the Win32 backend is *not* as
13717         stable as it was before the no-flicker branch was merged. A
13718         zipfile with that version is available from
13719         http://www.gimp.org/win32/. That should be use by "production"
13720         code until this CVS version is usable. (But note, the Win32
13721         backend has never been claimed to be "production quality".)
13722
13723         * README.win32: Add the above comment about versions.
13724
13725         * gdk/gdkwindow.c: Don't use backing store for now on Win32.
13726
13727         * gdk/gdk.def: Update.
13728
13729         * gdk/gdkfont.h: Declare temporary Win32-only functions. Will
13730         presumably be replaced by some more better mechanism as 1.4 gets
13731         closer to release shape.
13732
13733         * gdk/makefile.{cygwin,msc}: Update.
13734
13735         * gdk/win32/*.c: Correct inclusions of the backend-specific and
13736         internal headers. Change code according to changes in these. Use
13737         gdk_drawable_*, not gdk_window_* where necessary.
13738
13739         * gdk/win32/gdkdnd-win32.c: Use MISC selector for GDK_NOTE, not
13740         our old DND.
13741
13742         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_text): Don't try
13743         to interpret single characters as UTF-8. Thanks to Hans Breuer.
13744         Use correct function name in warning messages.
13745
13746         * gdk/win32/gdkevents-win32.c: Use correct parameter lists for the
13747         GSourceFuncs gdk_event_prepare and gdk_event_check.
13748         (gdk_event_get_graphics_expose): Do implement, use
13749         PeekMessage. Thanks to Hans Breuer.
13750         (event_mask_string): Debugging function to print an GdkEventMask.
13751         (gdk_pointer_grab): Use it.
13752
13753         * gdk/win32/gdkfont-win32.c: The Unicode subrange that the
13754         (old) book I used claimed was Hangul actually is CJK Unified
13755         Ideographs Extension A. Also, Hangul Syllables were missing.
13756         Improve logging.
13757
13758         * gdk/win32/gdkgc-win32.c: Largish changes.
13759
13760         * gdk/win32/gdkim-win32.c (gdk_set_locale): Use
13761         g_win32_getlocale() from GLib, and not setlocale() to get current
13762         locale name.
13763
13764         * gdk/win32/gdkprivate-win32.h
13765         * gdk/win32/gdkwin32.h: Move stuff from gdkprivate-win32.h to
13766         gdkwin32.h, similarily as in the X11 backend.
13767
13768         * gdk/win32/gdkwindow-win32.c (gdk_propagate_shapes): Bugfix,
13769         assignment was used instead of equals in if test. Thanks to Hans
13770         Breuer.
13771
13772         * gdk/win32/gdkgeometry-win32.c: New file, just a quick hack of
13773         the X11 version.
13774
13775         * gdk/win32/makefile.{cygwin,msc}
13776         * gtk/makefile.{cygwin,msc}: Updates. Better kludge to get the
13777         path to the Win32 headers that works also with the mingw compiler.
13778
13779         * gtk/gtkstyle.c: Include <string.h>.
13780
13781 2000-04-26  Havoc Pennington  <hp@redhat.com>
13782
13783         * gtk/gtklabel.c (gtk_label_get_text): Add this function,
13784         replacing the broken gtk_label_get ()
13785
13786 2000-04-15  Havoc Pennington  <hp@pobox.com>
13787
13788         * gdk/gdkdnd.h: clean up enum format, remove extra comma, 
13789         this keeps scanner scripts from getting confused.
13790
13791         * gdk/gdkdraw.c (gdk_drawable_get_data): This should return the
13792         data, rather than void
13793
13794 2000-04-15  Tor Lillqvist  <tml@iki.fi>
13795
13796         * gtk/gtkclist.c (gtk_clist_motion)
13797         * gtk/gtklist.c (gtk_list_motion_notify): If we get a motion event
13798         with is_hint FALSE, get x and y from the event. They used to be
13799         used uninitialised. The Win32 backend never sends motion events
13800         marked as hints. This for instance fixes the annoying file and
13801         font selector behaviour in the Win32 version.
13802
13803 2000-04-14  Tor Lillqvist  <tml@iki.fi>
13804
13805         * gtk/gtksignal.c: (Win32:) Export the gtk_private_signals and
13806         gtk_private_n_signals variables, they are used by some software,
13807         sigh.
13808
13809         * gtk/gtkrc.c (get_gtk_sysconf_directory): (Win32:) Fetch the
13810         installation directory from the Registry, where the installer
13811         should have put it.
13812
13813 Fri Apr  7 17:19:27 2000  Owen Taylor  <otaylor@redhat.com>
13814
13815         * gdk/x11/Makefile.am: Fix problem with installation directory for
13816         gdkx.h
13817
13818         * gtk/gtkmenuitem.c gtk/gtkmenushell.c: Patch from David Santiago
13819         <mrcooger@cyberverse.com> so that when selecting menus with the
13820         mouse, the first item will not be selected, but when selecting
13821         with an accelerator, or navigating left-right on a menubar with
13822         the menus popped up, the first item will be selected.
13823
13824 2000-04-05  Dan Damian  <dand@dnttm.ro>
13825
13826         * configure.in: Added "ro" to ALL_LINGUAS.
13827
13828 Wed Apr  5 00:08:36 2000  Owen Taylor  <otaylor@redhat.com>
13829
13830         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): Fix screwy
13831         indentation.
13832
13833         * Makefile.am (EXTRA_DIST): Fix typo.
13834
13835         * gdk[/x11]/Makefile.am (INCLUDES): Add $(top_builddir)/gdk
13836         to catch gdkconfig.h
13837
13838         * gtk/gtkitemfactory.c: Added FIXME.
13839
13840 2000-03-30  Jonathan Blandford  <jrb@redhat.com>
13841
13842         * gtk/gtkpaned.c (gtk_paned_get_position): oops.
13843         s/return_if_fail/return_val_if_fail/g and add a return value.
13844
13845 Mon Mar 27 20:56:14 2000  Owen Taylor  <otaylor@redhat.com>
13846
13847         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Fix up 
13848         merge slipup.
13849
13850         * gdk/gdkinput.h: Fix missing line from merge.
13851
13852 Mon Mar 27 20:39:49 2000  Owen Taylor  <otaylor@redhat.com>
13853
13854         * gdk/gdkcolor.c cursor.c gdkdraw.c gdkfont.c: Include gdkinternals.h
13855         instead of gdkprivate.h.
13856
13857 Sun Mar 12 15:19:24 2000  Owen Taylor  <otaylor@redhat.com>
13858
13859         * gtk/gtkinputdialog.h (struct _GtkInputDialogClass): Fix
13860         parent class to correctly be GtkDialogClass.
13861
13862 Thu Feb 24 23:58:21 2000  Owen Taylor  <otaylor@redhat.com>
13863
13864         * gdk/x11/gdkgeometry-x11.c: Don't worry about clipping of
13865         toplevel windows and their immediate children by their parents,
13866         since the size of toplevel windows is out of our immediate
13867         control and we don't get any real benefit from trying to track
13868         this size for clipping.
13869
13870         * gdk/gdkprivate.h (struct _GdkWindowPrivate) gdk/x11/gdkwindow-x11.c : Add a flag
13871         for input_only windows.
13872
13873         * gdk/gdkwindow.c gdk/x11/gdkgeometry-x11.c: Use the above flag
13874         to fix some hacks and make sure that we don't try to set the
13875         background of input only windows.
13876
13877 Thu Feb 24 18:11:46 2000  Owen Taylor  <otaylor@redhat.com>
13878
13879         * gdk/gdkinternals.h gdk/gdkprivate.h gdk/Makefile.am: Add a header file for
13880         the _really_ internal stuff, and leave gdkprivate.h for the fake private
13881         stuff that we've traditionally exposed.
13882
13883         * gdk/**.c: Use gdkinternals.h where appropriate.
13884
13885         * gdk/x11/gdkx.h gdk/x11/gdkprivate-x11.h gdk/x11/*.c: Make gdkx.h
13886         not include gdkprivate-x11.h, move all stuff of conceivable public
13887         interest into gdkx.h; keep all really private stuff in
13888         uninstalled header gdkprivate-x11.h.
13889
13890         * gdk/gdkdraw.c gdk/gdkwindow.c gdk/gdkinternals: Redirect all calls to
13891         image->image_put on windows through a new function _gdk_window_draw_image()
13892         to allow us to do backing store for images. (Sort of ugly)
13893
13894         * gdk/gdkgc.c gdk/gdkprivate.h: Cache the ts and clip origins for graphics
13895         contexts locally so that we can offset them properly when drawing 
13896         onto backing pixmaps.
13897
13898         * gdk/gdkinput.h: Reindented
13899
13900         * gdk/gdkprivate.h gdk/x11/gdkwindow-x11.c: Store the background
13901         pixmap or color for the window, so we can properly initialize
13902         our double-buffer pixmaps, and also so that we temporarily set
13903         a background of None while scrolling.
13904
13905         * gdk/gdkregion.h: Revise region boolean operators to have an
13906         interface that is actually convenient - switch from creating new
13907         regions on every op, to "methods" that modify existing regions
13908         (A = A OP B). 3 argument forms which allow dest == src, would also
13909         be possible, but the current interfaces seem to map nicely
13910         onto what needs to be done. (There is quite a lot of region
13911         code in GDK now.)
13912
13913         * gdk/gdkregion.h: Add constructor from rectangle and a copy
13914         operator.
13915
13916         * gdk/x11/{gdkregion-generic.[ch],gdkpolyreg-generic.c,
13917         gdkpoly-generic.h: Copy region code from Xlib, switch it over
13918         to 32 bit coordinates, modify it to be mostly GTK+ style
13919         and to have interfaces that match gdkregion.h.
13920
13921         * gdk/gdkwindow.c gdk/gdkprivate.h: Add facility for
13922         double-buffered drawing. gdk_window_begin_paint_{rect,region}()
13923         create a backing pixmap and redirect all drawing to
13924         that backing pixmap until a matching gdk_window_end_paint().
13925
13926         * gdk/gdkwindow.[ch] gdk/gdkinternals.h gdk/x11/gdkdrawable-x11.c:
13927         Create a special drawable class for GtkWindow's that 
13928         redirects the drawing to the backing pixmap as necessary
13929         and then calls the real operations in _gdk_windowing_window_class.
13930
13931         * gdk/gdkprivate.h gdk/gdkwindow.[ch] gdk/x11/gdkevents-x11.c:
13932         Store invalid region for each window. Generate expose events for invalid
13933         region in an idle. This replaces both the expose compression
13934         and the redrawing queuing in GTK+. It is both more efficient and
13935         simpler than either one individually and far more so then the
13936         combination.
13937
13938         * gdk/x11/gdkgeometry.c gdk/x11/gdkwindow.c gdk/x11/gdkprivate-x11.h:
13939         Emulate 32 bit coordinates for windows with 16 bit coordinates
13940         by offsetting drawing, guffaw scrolling techniques and
13941         mapping/unmapping child windows as necessary.
13942
13943         * gdk/gdkwindow.[ch] gdk/x11/gdkgeometry.c: Add anti-exposes,
13944         where, when invalid regions are processed, the region is stored,
13945         and if expose events come in that are detectably duplicate
13946         the processed exposes (by comparison of event serial numbers),
13947         the stored region is subtracted out of those exposes.
13948
13949         * gdk/x11/gdkgeometry.c: Temporarily unset backing pixmaps of
13950         regions newly exposed when scrolling or resizing windows.
13951         This, combined with forcing processesing of queued invalidated
13952         regions, gives nice flicker-free scrolling.
13953
13954         * gtk/gtklayout.c gtk/gtkviewport.c: Force processing of
13955         invalidated regions after every scroll.
13956
13957         * gtk/gtklayout.c: Vastly simplify using the new 32 bit coordinate
13958         emulation in GDK. Its, for all practical purposes just a
13959         GtkViewport/GtkFixed hybrid now.
13960
13961         * gdk/gdkdrawable-x11.c: Convert from GDK (32 bit) to X11
13962         (16-bit) structures as necessary instead of just casting.
13963
13964         * gdk/x11/gdkgc-x11.c gdk/x11/gdkx.h: Replace XSetRegion with code
13965         in terms of the structures from gdkregion-generic.c, using appropriate
13966         offsets from GDK to X11 coordinates. Cache clip mask and
13967         origin and ts origin locally and only flush to the server
13968         when drawing, to avoid constantly setting and resetting these
13969         values when offsetting GC's for scrolling and backing pixmaps.
13970
13971         * gdk/x11/gdkinput-x11.c: Fix leak of axes structures.
13972
13973         * gtk/gtkcontainer.c: Call process_all_updates at end
13974         of resizing to reduce flicker. (Avoids having redraw
13975         lag arbitrarily behind resize under some circumstances)
13976
13977         * gtk/gtkentry.c: Remove old backing store code, and simply take
13978         advantage of the new backing store capabilities of GDK.
13979
13980         * gtk/gtkmain.c: Simple implementation of widget backing
13981         store - simply push a paint while handling each expose.
13982         (Should really be configurable widget for widget.)
13983         
13984         * gtk/gtkwidget.c: Remove all the old complicated redraw
13985         code, and simply invalidate the GDK windows from
13986         gdk_window_queue_clear(), etc. (Sigh, so much carefully
13987         debugged complexity ... gone to the winds.)
13988
13989         Remove all the code for suppressing expose events while
13990         resizes are pending; this isn't needed since the invalid
13991         areas won't be processed until after the resizes are
13992         processed, since they are in a lower priority idle.
13993
13994 Thu Feb 24 15:37:41 2000  Owen Taylor  <otaylor@redhat.com>
13995
13996         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Set width
13997         and height of dest rectangle for non-intersecting rectangles.
13998
13999 Sun Feb 20 16:47:31 2000  Owen Taylor  <otaylor@redhat.com>
14000
14001         * gtk/gtkwidget.h: Make GtkAllocation just a typedef
14002         for GdkRectangle.
14003
14004 Sun Feb 20 11:27:00 2000  Owen Taylor  <otaylor@redhat.com>
14005
14006         * gdk/gdk{events,image,private,types,window}.h
14007          gdk/x11/gdkinputprivate.h: Change all coordinates
14008          from int16 to int. Also, Change width and height from
14009          unsigned to signed to avoid all the stupid C 
14010          signedness bugs.
14011
14012 Sat Feb 19 12:01:53 2000  Owen Taylor  <otaylor@redhat.com>
14013
14014         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable):
14015         Use gdk_drawable_get_depth instead of gdk_drawable_get_visual.
14016         Add some more detailed checking.
14017
14018         * gdk/gdkdraw.c gdk/gdkdrawable.h (gdk_drawable_get_depth):
14019         New function to retrieve the depth of a drawable.
14020
14021         * gdk/gdkprivate.h (struct _GdkDrawablePrivate): Add a depth
14022         field, reorder fields to save memory. 
14023
14024 Mon Dec 13 14:06:03 1999  Owen Taylor  <otaylor@redhat.com>
14025
14026         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): Draw a small portion
14027         of the background image instead of scaling the background down to
14028         a line.
14029
14030         * gtk/gtk[hv]scrollbar.c (gtk_hscrollbar_size_allocate): Removed mysterious
14031         which temporarily set slider to wrong size.
14032
14033         * gtk/gtkaspectframe.c gtkbin.c: Remove unecessary calls to
14034         queue_clear().
14035
14036 Wed Nov 17 18:36:05 1999  Owen Taylor  <otaylor@redhat.com>
14037
14038 2000-03-23  Jonathan Blandford  <jrb@redhat.com>
14039
14040         * gtk/gtkpaned.c (gtk_paned_get_position): add getter.
14041
14042 2000-03-17  Tor Lillqvist  <tml@iki.fi>
14043
14044         * gdk/win32/gdkevents-win32.c: Remove the #ifndef
14045         USE_DISPATCHMESSAGE sections, we do want to use DispatchMessage.
14046
14047         * gdk/win32/gdkfont-win32.c
14048         * gdk/win32/gdkproperty-win32.c
14049         * gdk/win32/gdkselection-win32.c
14050         * gdk/win32/gdkwindow-win32.c: Add const to some arguments that are
14051         now declared such.
14052
14053 Wed Mar 15 02:59:38 PST 2000 Manish Singh <yosh@gimp.org>
14054
14055         * gtk/gtkvpaned.c: removed stray gutter_size reference, a 1.2 relic
14056
14057 Mon Mar 13 18:37:55 2000  Owen Taylor  <otaylor@redhat.com>
14058
14059         * gdk/gdkdnd.c: Fix a bunch of cases where XGetWindowProperty()
14060         is called without trapping X errors.
14061
14062 Fri Feb 25 10:48:53 2000  Owen Taylor  <otaylor@redhat.com>
14063
14064         * gtk/gtkrc.*: Fix problem where stray '"' characters found their
14065         way into the fontset lists.
14066
14067 Tue Feb 22 08:52:52 2000  Tim Janik  <timj@gtk.org>
14068
14069         * gtk/gtkthemes.h: add extern "C" scope.
14070
14071 Mon Feb 21 20:16:42 2000  Lars Hamann  <lars@gtk.org>
14072
14073         * gtk/gtkclist.c: applied  patch from Guy Harris <guy@netapp.com>
14074         to make appends to the list constant. (gtk-guy-990901-0.patch)
14075
14076 Mon Feb 14 22:50:10 2000  Tim Janik  <timj@gtk.org>
14077
14078         * gtk/gtktypeutils.c (gtk_type_init): use g_str_hash() and g_str_equal()
14079         for the typename hash table.
14080
14081 Mon Feb 14 15:01:23 2000  Owen Taylor  <otaylor@redhat.com>
14082
14083         * gtk/gtkpaned.c (gtk_paned_compute_position): Add some sanity checks
14084         to make sure we never divide by zero. 
14085         (Problem pointed out by Michal Jaegermann <michal@ellpspace.math.ualberta.ca>)
14086
14087 Mon Feb 14 12:29:38 2000  Owen Taylor  <otaylor@redhat.com>
14088
14089         * gtk/gtkfontsel.c: Apply patch from
14090         SHIRASAKI Yasuhiro <yasuhiro@awa.tohoku.ac.jp> to make font selector work a little
14091         better with 2-byte fonts. (Load a fontset instead of a font for two byte fonts.)
14092
14093         Also, some cleanups in atom handling.
14094
14095 Sun Feb 13 08:02:21 2000  Tim Janik  <timj@gtk.org>
14096
14097         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
14098         not GtkWidget.
14099
14100 Fri Feb 11 02:19:32 2000  Tim Janik  <timj@gtk.org>
14101
14102         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): 
14103         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): 
14104         * gtk/gtkpaned.c (gtk_paned_compute_position): had to squeeze some
14105         more guint wrap-around bugs before going to bed.
14106
14107 Thu Feb 10 16:16:35 2000  Tim Janik  <timj@gtk.org>
14108
14109         * gtk/gtkspinbutton.c (gtk_spin_button_size_allocate): guard against
14110         guint wrap arounds in allocation.width.
14111
14112         * gtk/gtktable.c (gtk_table_size_allocate_pass1): repeat shrinking
14113         process untill we fit the allocation given.
14114
14115 Tue Feb  8 09:38:29 2000  Tim Janik  <timj@gtk.org>
14116
14117         * gtk/gtkwidget.c:
14118         (gtk_widget_unrealize): guard widget access with ref/unref
14119         around signal emission.
14120         (gtk_widget_hide): same here, but also check its destroyed
14121         state before queueing a resize.
14122
14123 Tue Feb  8 03:05:55 2000  Tim Janik  <timj@gtk.org>
14124
14125         * gtk/gtkstyle.c (gtk_style_new): use gtk_default_prelight_bg instead
14126         of gtk_default_insensitive_bg as insensitive base color.
14127
14128         * gtk/gtktext.c (gtk_text_style_set): set the background color according
14129         to the widget's state.
14130         (gtk_text_realize): same here.
14131         (gtk_text_state_changed): same here.
14132         (draw_bg_rect): compare background color against base[] from
14133         GTK_WIDGET_STATE (text) not GTK_STATE_NORMAL.
14134
14135 Mon Feb  7 04:01:55 2000  Tim Janik  <timj@gtk.org>
14136
14137         * gtk/gtkmain.c (gtk_main_do_event): ignore delete events when
14138         grabs are active, unless a delete event is send to the toplevel
14139         of the currently grab holding widget.
14140
14141 Sun Feb  6 10:13:15 2000  Owen Taylor  <otaylor@redhat.com>
14142
14143         * gtk/gtkctree.c (gtk_ctree_drag_data_received): Remove
14144         debugging g_print's.
14145
14146 Fri Feb  4 15:54:54 2000  Owen Taylor  <otaylor@redhat.com>
14147
14148         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_request): Don't
14149         ever make the scrolled-window requisition ever depend on the 
14150         visibility state of the scrollbars for the AUTOMATIC policy. 
14151         This breaks the GTK+ requisition model, and causes loops.
14152
14153 Fri Feb  4 15:09:12 2000  Owen Taylor  <otaylor@redhat.com>
14154
14155         * gtk/gtkstyle.c (gtk_style_new): Set the charset explicitely for
14156         the default font to avoid problems with XFree86-4.0 where the
14157         default charset is iso10646-1, not iso8859-1.
14158
14159 Thu Feb  3 14:58:48 PST 2000 Manish Singh <yosh@gimp.org>
14160
14161         * acinclude.m4
14162         * config.guess
14163         * config.sub
14164         * ltconfig
14165         * ltmain.sh: upgrade to libtool 1.3.4 (bugfix only release)
14166
14167         * gtk/Makefile.am: minor cosmetic consistency tweak
14168
14169 Thu Feb  3 14:46:01 2000  Owen Taylor  <otaylor@redhat.com>
14170
14171         * gtk/gtkmenushell.c (gtk_menu_shell_button_release): Set
14172         the activate_time to 0, so that we handle a quick
14173         press/release press/release properly and don't suppress
14174         the second release. (Red Hat bug #7545)
14175
14176 Wed Feb  2 22:25:17 2000  Tim Janik  <timj@gtk.org>
14177
14178         * gtk/gtkctree.c (row_delete):
14179         (gtk_ctree_node_set_row_data_full): fixed very evil reentrancy
14180         bugs with destruction notifier, *always* update internal
14181         structures *before* calling user code.
14182
14183 Sun Jan 30 20:10:52 2000  Lars Hamann  <lars@gtk.org>
14184
14185         A few more fixes for bug #5487, #2051, #2677.
14186         * gtk/gtkclist.c : 
14187         (gtk_clist_button_press):  Reset clist->anchor to -1 if event->type is
14188         not GDK_BUTTON_PRESS.
14189         (resync_selection): resync only if selection_mode is
14190         GTK_SELECTION_EXTENDED
14191         * gtk/gtkctree.c (resync_selection): same here
14192
14193 Sun Jan 30 12:29:20 2000  Owen Taylor  <otaylor@redhat.com>
14194
14195         * gdk/gdk.h gtk/gtkmenu.h: Removed duplicate prototypes for
14196         gdk_drag_get_selection() and gtk_menu_detach().
14197
14198         [ From Jeroen Ruigrok/Asmodai ]
14199
14200 Sat Jan 29 10:11:56 2000  Owen Taylor  <otaylor@redhat.com>
14201
14202         * gtk/gtknotebook.c (gtk_notebook_size_request): 
14203         page->tab_label can be NULL.
14204
14205 2000-01-25  Havoc Pennington  <hp@pobox.com>
14206         
14207         * gdk/gdkwindow.c (gdk_window_set_back_pixmap): parent_relative
14208         arg is boolean
14209
14210         * gdk/gdkselection.c (gdk_selection_owner_set): return boolean
14211
14212         * gdk/gdkrectangle.c (gdk_rectangle_intersect): return boolean
14213
14214         * gdk/gdkproperty.c (gdk_property_get): return boolean
14215
14216         * gdk/gdkinput.c (gdk_input_set_mode): return boolean
14217
14218         * gdk/gdkim.c (gdk_im_ready): return boolean
14219
14220         * gdk/gdkgc.c (gdk_gc_set_exposures): gboolean arg
14221
14222         * gdk/gdkfont.c (gdk_font_equal): return gboolean (mild
14223         glib clash, should fix glib)
14224
14225         * gdk/gdkevents.c (gdk_set_show_events): take gboolean arg
14226         (gdk_get_show_events): return gboolean, and canonicalize 
14227         to TRUE/FALSE
14228
14229         * gdk/gdkcolor.c (gdk_colormap_new): gboolean flag whether the
14230         colormap is private
14231         (gdk_colors_alloc): gboolean whether to be contiguous
14232         (gdk_color_equal): return gboolean since we are a predicate
14233         and not a qsort() (this looks semi-wrong due to glib breakage,
14234         IMO glib should be fixed)
14235         
14236         * gdk/gdk.c (gdk_set_use_xshm): take gboolean arg
14237         (gdk_get_use_xshm): return gboolean
14238         (gdk_pointer_is_grabbed): return gboolean
14239
14240         * gdk/gdk.h: Change prototypes to match all the above changes,
14241         and re-run egtk-format-protos as required.
14242
14243 Fri Jan 28 12:28:17 2000  Owen Taylor  <otaylor@redhat.com>
14244
14245         * gtk/gtkctree.c (resync_selection): 
14246         * gtk/gtkclist.c (resync_selection):
14247
14248         Return immediately if clist->drag_pos < 0. This is a workaround
14249         for the corrupt state that the clist gets into when a
14250         GDK_2BUTTON_PRESS occurs. See note in gtk_clist_button_press().
14251
14252         Bug #5487, #2051, #2677; fix suggested by David Helder and T. Alexander Popiel.
14253         
14254         * gtk/gtknotebook.c (gtk_notebook_size_request): Fix uninitialized
14255         variable from recent commit.
14256
14257 Thu Jan 27 15:22:09 2000  Owen Taylor  <otaylor@redhat.com>
14258
14259         * gtk/gtkdnd.c (gtk_drag_begin): Fix stupid typo in last commit.
14260
14261 Thu Jan 27 18:00:55 2000  Tim Janik  <timj@gtk.org>
14262
14263         * gtk/Makefile.am: prefix all autogenerated source that get build in
14264         $(srcdir) with $(srcdir)/, so make doesn't assume they got generted
14265         in builddir. since we subsequently cd into srcdir for autogeneration,
14266         the paths have to be stripped from the target file names, thusly we
14267         use $(@F) as target names now.
14268         put a comment about configure.in's --disable-rebuilds option,
14269         which can be used for non-writable source directories, for development
14270         setups though, srcdir has to be *writable*.
14271
14272 hu Jan 27 00:15:03 2000  Owen Taylor  <otaylor@redhat.com>
14273
14274         * gtk/gtkdnd.c (gtk_drag_begin gtk_drag_get_event_actions):
14275           Finish the job of allowing event to be NULL.
14276           (Fixes bug #4283, reported by Chris Blizzard)
14277
14278         * gtk/gtkentry.c (entry_adjust_scroll): When calculating
14279           things so that the cursor appears on screen, properly
14280           take into account INNER_BORDER.
14281           (Fixes bug #4754, reported by Antonio Campos)
14282
14283 Wed Jan 26 23:12:28 2000  Owen Taylor  <otaylor@redhat.com>
14284
14285         * gtk/gtknotebook.c (gtk_notebook_map): Don't
14286           show the tab_label unless it itself is visible.
14287
14288           gtk/gtknotebook.c (gtk_notebook_size_request):
14289           Do a better job of making sure that the visibility
14290           of the tab label corresponds to whether it should
14291           be mapped or not.
14292
14293 Wed Jan 26 21:17:03 2000  Owen Taylor  <otaylor@redhat.com>
14294
14295         * gtk/gtkoptionmenu.c (gtk_option_menu_position):
14296           Use the requisition, not the allocation, since the
14297           allocation has not necessarily been computed yet.
14298           (Pointed out by Eugene Osintsev)
14299
14300 Wed Jan 26 19:44:25 2000  Owen Taylor  <otaylor@redhat.com>
14301
14302         * gtk/gtkstyle.c (gtk_style_new): Dont' set
14303           style/base[GTK_STATE_INSENSITIVE] both to
14304           gtk_default_insensitive_bg!
14305           (Bug #2187, reported by Jonathan Blandford)
14306
14307         * gtk/gtkaccelgroup.c (gtk_accelerator_valid):
14308           Add Alt_L, Alt_R to list of invalid accelerators.
14309           (Bug #3736, reported by Vlad Harchev)
14310
14311 Wed Jan 26 19:01:56 2000  Owen Taylor  <otaylor@redhat.com>
14312
14313         * gtk/gtkfilesel.c (open_ref_dir): Fix several
14314         bugs which occured after an attempt to open 
14315         invalid home directory left cmpl_state->reference_dir == NULL.
14316
14317          - completion on files in home directory didn't work
14318          - completion on an empty string caused  segfault
14319
14320          (Bug #3678, reported by Steve Ratcliffe)
14321
14322         * gtk/gtkscale.c (gtk_scale_get_value_width): Fix
14323         cut and paste error that was causing scales to
14324         be incorrectly positioned.
14325         (Bug #2956,
14326          patch from Steve Ratcliffe <steve@parabola.demon.co.uk>)
14327
14328 2000-01-27  Shirasaki Yasuhiro  <yasuhiro@gnome.gr.jp>
14329
14330         * acinclude.m4 (AM_GTK_WITH_NLS): Add -lintl to libs
14331         when checking for dcgettext, if we've found we needed
14332         it for dgettext.
14333 +
14334 Wed Jan 26 18:06:07 2000  Owen Taylor  <otaylor@redhat.com>
14335
14336         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
14337         queue_clear on NO_WINDOW widgets during a reparent,
14338         since at that point the window and widget heirarchies
14339         are out of sync. This stops crashing in some cases
14340         (the scrolled window reparent test, for instance), and
14341         _probably_ won't cause drawing errors.
14342
14343         * gtk/testgtk.c: Make the reparenting-a-scrolled-window
14344         test do what it was supposed to do and be robust against
14345         window closings, etc. (Bug #2443)
14346
14347 Wed Jan 26 16:56:54 2000  Owen Taylor  <otaylor@redhat.com>
14348
14349         * gtk/gtkentry.c: Fix return values on mouse events.
14350         (Bug #2686, Sky <seb_sky@yahoo.com>)
14351
14352         * gtk/genmarshal.pl: Fix up handling of FOREIGN.
14353         (pointed out by George Lebl)
14354
14355         * gdk/gdkcolor.c (gdk_color_copy): Made const-safe.
14356         (From Ettore Perazzoli  <ettore@helixcode.com>)
14357  
14358 Mon Jan 24 10:44:48 2000  Owen Taylor  <otaylor@redhat.com>
14359
14360         * gtk/gtkcalendar.c (gtk_calendar_main_button): Handle
14361         clicks between rows or outside calender area correctly.
14362         (Patch from Damon Chaplin)
14363
14364         * gtk/gtkclist.c (gtk_clist_set_row_data_full): 
14365         * gtk/gtkctree.c (gtk_ctree_node_set_row_data_full): 
14366           Call destroy function when overwriting existing data. 
14367           (Pointed out by Damon Chaplin)
14368
14369 Tue Jan 25 09:55:41 2000  Owen Taylor  <otaylor@redhat.com>
14370
14371         * gdk/gdk.c: Remove useless #include of <X11/Xmu/WinUtil.h>,
14372           which was causing problems on various systems with Xmu.
14373           This hasn't been needed for a very long time.
14374           (Fixes #1185 3167)
14375
14376 Sun Jan 23 22:27:36 2000  Owen Taylor  <otaylor@redhat.com>
14377
14378         * gdk/gdki18n.h: Include <ctype.h> when defining
14379           gdk_isw* in terms of is* as a fallback.
14380           (Bug #4106 - Dan Winship <danw@MIT.EDU>)
14381
14382 Sun Jan 23 22:12:36 2000  Owen Taylor  <otaylor@redhat.com>
14383
14384         * gtk/gtkviewport.c (gtk_viewport_size_allocate): Don't
14385           realize the widget when it is size allocated!
14386           (old, old bug)
14387
14388         * gtk/gtkviewport.c (gtk_viewport_adjustment_value_changed):
14389           Removed unused call to gdk_window_get_size() that
14390           showed up when the above was fixed.
14391
14392 Sat Jan 22 15:44:30 2000  Owen Taylor  <otaylor@redhat.com>
14393
14394         * gtk/gtkwidget.c (gtk_widget_reparent): Correctly
14395           fix up widget->window when the widget is a
14396           NO_WINDOW container widget.
14397
14398 Sat Jan 22 12:40:48 2000  Owen Taylor  <otaylor@redhat.com>
14399
14400         * gdk/gdkpixmap.c (gdk_pixmap_seek_string): Rewrite
14401           to account for the fact that feof() does _not_ 
14402           return TRUE on errors, and thus avoid infinite loops
14403           when trying to use gdk_pixmap_create_from_xpm()
14404           on unreadable values.
14405
14406 Fri Jan 21 18:32:43 2000  Owen Taylor  <otaylor@redhat.com>
14407
14408         * gtk/gtkaspectframe.h (struct _GtkAspectFrame): s/gint/gboolean/.
14409
14410 Fri Jan 21 16:24:08 2000  Owen Taylor  <otaylor@redhat.com>
14411
14412         * gdk/gdkgc.c (gdk_gc_set_dashes): Change from
14413           gdk_gc_set_dashes to take gint8 instead of gchar to
14414           make it clearer that it is _not_ a NULL terminated string.
14415
14416         * gdk/gdk.h gdk/gdkfont.c gdk/gdkgc.c gdk/gdkselection.c
14417           gdk/gdkwindow.c gtk/gtkprogress.[ch] gtk/gtkthemes.[ch]
14418           gtk/gtktreeitem.[ch] gtk/gtkwidget.[ch]: Constify string
14419           arguments.
14420
14421 Thu Dec 30 04:51:05 1999  Tim Janik  <timj@gtk.org>
14422
14423         * gtk/gtkvscale.c (gtk_vscale_pos_background): 
14424         * gtk/gtkhscale.c (gtk_hscale_pos_background): when calculating the
14425         background size relative to our allocation, guard against small
14426         allocations, we may have not yet been size allocated.
14427
14428 Thu Dec  2 10:59:14 1999  Owen Taylor  <otaylor@redhat.com>
14429
14430         * gdk/gdkdnd.c (xdnd_check_dest): Allow version >= 3,
14431         not just version == 3. We implement all 3 + most of 4 - 
14432         (we don't support matching text/plain;charset=iso-8859-1
14433         to a dest that expects text/plain). We'll still advertise
14434         3 to be safe, but any client implementing version >= 3
14435         must interoperate with 3.
14436         
14437 Tue Mar 14 11:53:31 2000  Owen Taylor  <otaylor@redhat.com>
14438
14439         * gtk/gtktooltips.[ch] (struct _GtkTooltips): Remove foreground,
14440         background and gc members, add a warning in gtk_tooltips_set_color()
14441         indicating that this function is deprecated.
14442
14443 Thu Mar  9 22:10:56 GMT 2000  Tony Gale <gale@gtk.org>
14444
14445         * docs/gtkfaq.sgml: FAQ Update:
14446           - Minor cleanups (Emmanuel, me)
14447           - New questions:
14448                 I need to add a new signal to a GTK+ widget. Any idea? (timj)
14449                 How can I retrieve the text from a GtkMenuItem? (timj)
14450                 How do I validate/limit/filter the input to a GtkEntry? (me)
14451                 Memory does not seem to be released when I free the list
14452                         nodes I've allocated (timj)
14453
14454 2000-03-07  Tor Lillqvist  <tml@iki.fi>
14455
14456         * gdk/win32/gdkmain-win32.c: Internal GDK error reporting changes:
14457         (gdk_win32_gdi_failed) New function for reporting errors from GDI,
14458         for which it is no use to call GetLastError onWin9x.
14459         (gdk_other_api_failed) New function, for general error
14460         reporting without calling GetLastError.
14461         (gdk_win32_api_failed) OTOH, this function always calls
14462         GetLastError. (gdk_win32_last_error_string) Remove this function,
14463         GLib has the equivalent now.
14464
14465         * gdk/win32/gdkprivate-win32.h: Declare the above, and macros to
14466         call them with function name, file name and line number in the
14467         arguments.
14468
14469         * gdk/win32/*.c: Use the new macros for reporting errors from GDI
14470         functions.
14471         
14472         * gtk/gtk.def: Add some missing entry points.
14473
14474         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
14475         gtk_paned_set_gutter_size, which don't exist any longer, as void.
14476         
14477         Fixes by Hans Breuer:
14478
14479         * gdk/makefile.msc: Update for debugging.
14480
14481         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_dashes): Fake
14482         implementation, just use the PS_DASH, PS_DOT, PS_DASHDOT or
14483         PS_DASHDOTDOT or PS_DASH styles depending on the number of entries
14484         in the dash_list.
14485
14486         * gdk/win32/gdkwin32.h (GDK_FONT_XFONT): New macro, similar as in
14487         the x11 backend.
14488
14489         * gdk/win32/gdkprivate-win32.h (IS_WIN_NT): New macro.
14490
14491         * gtk/testgtk.c: Include config.h, guard inclusion of unistd.h.
14492
14493 2000-03-04  Tor Lillqvist  <tml@iki.fi>
14494
14495         * gdk/win32/gdkprivate-win32.h (struct _GdkWindowWin32Data): Store
14496         just pixel value of background colour.
14497
14498         * gdk/win32/gdkgc-win32.c (gdk_colormap_color): New function
14499         containing code snippet previously duplicated in a couple of
14500         places.
14501         
14502         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_points): Use
14503         gdk_colormap_color.
14504
14505         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Generate
14506         GDK_SCROLL events for WM_MOUSEWHEEL messages. Don't generate
14507         events for autorepeated Shift, Control and Alt keys. Use
14508         gdk_colormap_color.
14509
14510         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): If the
14511         pointer is inside the window the cursor of which we are setting,
14512         call SetCursor immediately.
14513
14514         * gdk/win32/makefile.cygwin
14515         * gtk/makefile.cygwin: If we don't have the build number stamp
14516         file, use zero.
14517
14518         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
14519         gtk_paned_set_gutter_size as empty.
14520
14521         * gtk/gtk.def: Remove gtk_paned_set_gutter_size.
14522         
14523 Tue Feb 29 13:10:00 GMT 2000  Tony Gale <gale@gtk.org>
14524
14525         * gdk/gdkwindow.h gdk/x11/gxid.c gtk/gtkclist.c gtk/gtkclist.h
14526           gtk/gtkctree.c gtk/gtkmenu.h gtk/gtkwidget.c gtk/testgtk.c
14527           docs/styles.txt docs/refcounting.txt docs/gtkfaq.sgml
14528           docs/gtk_tut.sgml docs/gtk.texi TODO:
14529
14530           Spelling/grammar fixes from Martin Buchholz <martin@xemacs.org>
14531
14532 Sat Feb 26 11:46:25 GMT 2000  Tony Gale <gale@gtk.org>
14533
14534         * gtk/gtkcalendar.c: Implement num_marked_dates,
14535           and don't emit mutiple day_selected signals on
14536           month_prev.
14537
14538 2000-02-25  Jonathan Blandford  <jrb@redhat.com>
14539
14540         * docs/make-todo (lineno): let title and logo be configurable so
14541         that GNOME can use this script too.
14542
14543         * TODO.xml: added logourl and a title
14544
14545 Fri Feb 25 11:12:00 2000  Owen Taylor  <otaylor@redhat.com>
14546
14547         * TODO.xml: Added some UI items, and an explanatory
14548         comment at the top of the file.
14549
14550 Thu Feb 24 09:07:28 2000  Tim Janik  <timj@gtk.org>
14551
14552         * TODO.xml: some updates, added abunch of new entries.
14553         a note for those fiddeling with this file, when done
14554         with it, invoke:
14555         $ ./docs/make-todo TODO.xml >/dev/null
14556         and correct output errors before comitting changes.
14557
14558 Wed Feb 23 22:59:50 2000  Owen Taylor  <otaylor@redhat.com>
14559
14560         * TODO.xml: Added XML-structured TODO file.
14561         * docs/make-todo: python script to turn TODO.xml into
14562           pretty XML output. 
14563
14564 2000-02-23  Jonathan Blandford  <jrb@redhat.com>
14565
14566         * gtk/gtkstyle.c (gtk_default_draw_handle): add a 'paned' mode to
14567         the function to let it draw the seven dots, instead of the old,
14568         much maligned, method.
14569         (draw_dot): New function to draw a dot.
14570
14571         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): changed allocation
14572         to draw the handle inside the border width as opposed to outside.
14573         Use paint function instead of gdk_draw_point.
14574
14575         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): changed allocation
14576         to draw the handle inside the border width as opposed to outside.
14577         Use paint function instead of gdk_draw_point.
14578
14579         * gtk/gtkfilesel.c (gtk_file_selection_update_history_menu):
14580         Change indenting to be more GTK like.
14581
14582 Wed Feb 23 10:54:14 GMT 2000  Tony Gale <gale@gtk.org>
14583
14584         * docs/gtk_tut.sgml: New section on GtkCalendar
14585         * examples/calendar: Update example code
14586
14587 Tue Feb 22 13:54:12 GMT 2000  Tony Gale <gale@gtk.org>
14588
14589         * docs/gtkfaq.sgml: FAQ Update
14590
14591 2000-02-19  Anders Carlsson  <andersca@gnu.org>
14592
14593         * gtk/gtkrange.c (gtk_range_scroll_event): Return TRUE
14594         to prevent the scroll event to be propagated upwards.
14595
14596 Fri Feb 18 14:37:29 2000  Owen Taylor  <otaylor@redhat.com>
14597
14598         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Remove
14599         OwnerGrabButtonMask from button entries for
14600         GDK_BUTTON_PRESS / GDK_BUTTON_RELEASE.
14601
14602         * gtk/gtklayout.c (gtk_layout_realize): Always add GDK_SCROLL
14603         to the event mask (which will result in button/press release
14604         being added to the event mask on Unix) so scrolling works
14605         for layouts in scroll windows.
14606
14607         * gdk/gdkevents.h (enum): Fix up GDK_ALL_EVENTS_MASK.
14608
14609         Patch from Anders Carlsson  <andersca@gnu.org> to add
14610         a scroll event.
14611
14612         * gtk/testgtk.c (scroll_test_scroll): Added an example of mouse wheel
14613         scrolling to the "Test Scrolling" part of testgtk.
14614  
14615         * gtk/gtkwidget.h (struct _GtkWidgetClass): Added scroll_event signal.
14616  
14617         * gtk/gtkwidget.c: Added "scroll_event" GTK+ signal and matched
14618         it against GDK_SCROLL.
14619  
14620         * gtk/gtkrange.c (gtk_range_scroll_event): Updated to use the new
14621         way of mouse wheel scrolling.
14622  
14623         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_scroll_event): Likewise.
14624  
14625         * gtk/gtkspinbutton.c (gtk_spin_button_scroll): Likewise.
14626  
14627         * gtk/gtkmain.c: Removed previous mouse wheel hack.
14628  
14629         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Added entry in
14630         gdk_event_mask_table.
14631  
14632         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Added 
14633         GdkEventScroll handler.
14634  
14635         * gdk/gdkevents.h: Added GdkEventScroll structure.
14636  
14637 Thu Feb 17 17:10:12 2000  Owen Taylor  <otaylor@redhat.com>
14638
14639         * gtk/gt{h,k,}vpaned.[ch]: Add patch from Jonathan Blandford
14640         and Anders Carlsson to change the Paned widgets so that they
14641         can be dragged from anywhere along the length. Also change
14642         the way that this is drawn to make this apparent.
14643
14644         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): Apply patch
14645         from George Lebl to check that option_menu->menu is present
14646         before getting history.
14647
14648 2000-02-14  Tor Lillqvist  <tml@iki.fi>
14649
14650         * gdk/gdkdraw.c (gdk_draw_segments): Move the test for no segments
14651         before the assertion for non-NULL segment list.
14652
14653         * gdk/win32/gdkgc-win32.c: (gdk_win32_gc_values_to_win32values):
14654         Seems that pattern brushes *must* be 8x8 pixels! At least on my
14655         machine, but it might be display driver dependent. Sigh, so make
14656         sure the stipple is that size. Does Windows suck or what?
14657
14658         * gdk/win32/gdkdrawable-win32.c: Improve error handling in a few
14659         places.
14660
14661 2000-02-13  Havoc Pennington  <hp@pobox.com>
14662
14663         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): init
14664         refcount to 1
14665         (gdk_cursor_new): init refcount to 1
14666
14667         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new): init refcount to 1
14668
14669 2000-02-13  Tor Lillqvist  <tml@iki.fi>
14670
14671         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Add an extra parameter
14672         so that we don't have to do unnecessary settings to the HDC.
14673
14674         * gdk/win32/gdkdrawable-win32.c
14675         * gdk/win32/gdkimage-win32.c: Corresponding changes to the calls of
14676         gdk_gc_predraw.
14677
14678         * gdk/win32/gdkdrawable-win32.c: Special-casing for GdkGCs where
14679         the fill style is GDK_OPAQUE_STIPPLED. In those cases we construct
14680         GDI paths, call WidenPath to get the outline of the stroken path,
14681         and then fill the outline (with the brush that was built from the
14682         stipple).
14683
14684         * gdk/win32/gdkgc-win32.c: Factor out common code from
14685         _gdk_win32_gc_new and gdk_win32_gc_set_values into
14686         gdk_win32_gc_values_to_win32values. Use correct colour for
14687         SetBkColor() (Until now the code actually used a random colour in
14688         the call to SetBkColor()... but that didn't show up as not many
14689         GDI APIs use the background colour. Pattern (opaque stippled)
14690         brushes do.)
14691
14692         * gdk/win32/gdkmain-win32.c (gdk_win32_last_error_string,
14693         gdk_win32_api_failed): New functions for error logging.
14694
14695         * gdk/win32/gdkprivate-win32.h: Declare them, and define a macro
14696         WIN32_API_FAILED to call them, passing function or file name and
14697         line number.
14698
14699         * gdk/win32/*.c: Use the WIN32_API_FAILED macro.
14700
14701         * gdk/win32/gdkprivate-win32.h: Store just the pixel values from
14702         GdkColor for foreground and background in GdkGCWin32Data.
14703
14704         * gdk/makefile.cygwin: Link in the resource object separately.
14705
14706         * gdk/win32/rc/gdk.rc
14707         * gtk/gtk.rc (New file)
14708         * gdk/win32/makefile.cygwin
14709         * gtk/makefile.cygwin: Update build number in DLLs automatically,
14710         as in GLib.
14711
14712 Sun Feb 13 08:54:45 2000  Tim Janik  <timj@gtk.org>
14713
14714         * gdk/gdkcursor.h (struct _GdkCursor): s/refcount/ref_count/.
14715         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): 
14716         * gdk/x11/gdkcursor-x11.c (_gdk_cursor_destroy): 
14717         * gdk/gdkcursor.c (gdk_cursor_ref): insert assertments for the
14718         parameters given and cursor->ref_count. coding style fixups.
14719
14720         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
14721         not GtkWidget.
14722         
14723         * gtk/*.h: applied patch from Mathieu Lacage <lacage@email.enst.fr> to
14724         fix up widget macros and add _GET_CLASS() variant.
14725         
14726         * gtk/*.c: some GtkType fixups.
14727
14728 2000-02-09  Tor Lillqvist  <tml@iki.fi>
14729
14730         * gdk/win32/gdkproperty-win32.c
14731         * gdk/x11/gdkproperty-x11.c: The assertions for GDK_IS_WINDOW
14732         were reversed.
14733
14734 2000-02-04  Tor Lillqvist  <tml@iki.fi>
14735
14736         * gdk/win32/gdkfont-win32.c (logfont_to_xlfd): Use
14737         g_filename_to_utf8 to convert the font names Windows gives us from
14738         whatever is the default codepage to UTF-8.
14739         (gdk_font_load_internal) Use g_filename_from_utf8 for conversion
14740         in the other direction.
14741
14742         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Fix cut&paste
14743         error in debugging output.
14744
14745 2000-02-02  Tor Lillqvist  <tml@iki.fi>
14746
14747         * gdk/win32/gdkwindow-win32.c (gdk_window_clear): Pass zero width
14748         and height parameters to gdk_window_clear_area(). Not minus one.
14749
14750 Wed Feb  2 11:58:05 2000  Owen Taylor  <otaylor@redhat.com>
14751
14752         * gtk/gtkdnd.c (gtk_drag_selection_received): Add some sanity
14753         checks if the widget passed to gtk_drag_get_data() was not the
14754         dest widget.
14755
14756 2000-02-01  Tor Lillqvist  <tml@iki.fi>
14757
14758         * gtk/gtkfilesel.c: Use the g_filename_to_utf8 and
14759         g_filename_from_utf8 functions (which were added a moment ago to
14760         GLib). Some cleanups: Use gbooleans. Use GStrings instead of fixed
14761         size buffers.
14762
14763         gtk_file_selection_get_filename returns the filename in the C
14764         runtime encoding. It calls g_filename_from_utf8, but copies the
14765         returned string to a static buffer, which is returned. I think
14766         this is better than returning the result from g_filename_from_utf8
14767         directly, which would mean all apps that use it would have to free
14768         the return value. Or should this function care about this issue at
14769         all? Maybe a new function with clearly defined semantics.
14770
14771         * gtk/gtkfilesel.h: Add comment about
14772         gtk_file_selection_get_filename returning the filename in the C
14773         runtime's encoding.
14774
14775         * README.win32
14776         * gdk/gdk.def
14777         * gdk/makefile.{cygwin,msc}
14778         * gtk/gtk.def: Updates.
14779
14780         * gdk/gdkcursor-win32.c: Initialise refcount.
14781
14782 2000-01-31  Yuan-Chung Cheng <platin@linux.org.tw>
14783
14784         * configure.in: Added "zh_CN.GB2312" to ALL_LINGUAS.
14785
14786 2000-01-30  Havoc Pennington  <hp@pobox.com>
14787
14788         * gtk/testgtk.c (set_cursor): use gdk_cursor_unref instead of
14789         destroy
14790
14791         * gdk/gdkimage.c (gdk_image_ref): image wasn't being returned
14792
14793         * gdk/gdkprivate.h: declare _gdk_cursor_destroy which is then 
14794         implemented in platform-specific code
14795
14796         * gdk/Makefile.am (gdk_c_sources): add gdkcursor.c
14797
14798         * gdk/x11/gdkcursor-x11.c (gdk_cursor_destroy): rename with an
14799         underscore in front
14800
14801         * gdk/win32/gdkcursor-win32.c (gdk_cursor_destroy):
14802         put an underscore in front
14803
14804         * gdk/gdkcursor.c: new file, implements
14805         gdk_cursor_ref/gdk_cursor_unref
14806
14807         * gdk/gdkcursor.h: Refcount GdkCursor
14808
14809         * gdk/gdkcompat.h (gdk_cursor_destroy): compat
14810
14811 2000-01-29  Tor Lillqvist  <tml@iki.fi>
14812
14813         * gdk/gdkwindow.h
14814         * gdk/gdkpixmap.h: Remove prototypes for renamed functions.
14815
14816 Tue Jan 25 11:43:21 2000  Owen Taylor  <otaylor@redhat.com>
14817
14818         * gtk/gtkinvisible.h (struct _GtkInvisible[Class]): Fix
14819         structures to properly inherit from GtkWidget not GtkBin.
14820
14821 Sun Jan 23 20:28:24 2000  Owen Taylor  <otaylor@redhat.com>
14822
14823         * gtk+.spec.in: Added lib/gtk+/include/* to %files
14824         (bug #5178 - Peter Wainright)
14825         
14826         * gtk/Makefile.am (gtk_public_h_sources): Add gtkcompat.h
14827         so that it will be installed.
14828         (bug #4889 - "david d `zoo' zuhn" <zoo@mnnr.org>)
14829
14830 Fri Jan 21 16:29:28 2000  Owen Taylor  <otaylor@redhat.com>
14831
14832         * gtk/gtkstyle.[ch] docs/Changes-1.4.txt: Make the @detail argument
14833         for the GtkStyleClass vtable const.
14834
14835         * gtk/gtkitemfactory.[ch] docs/Changes-1.4.txt: Make GtkPrintFunc
14836         take a const string argument like GtkTranslateFunc. This will
14837         require changes in use code.
14838
14839 2000-01-19  Tor Lillqvist  <tml@iki.fi>
14840
14841         * gdk/win32/gdkwindow-win32.c (gdk_window_clear_area): The correct
14842         semantics (to mimic the X11 backend, which just calls XClearArea)
14843         is to check for zero width (and height), and in that case use the
14844         window's width minus x (height minus y). This fixes for instance
14845         some redraw problems with gtkclist, which were easily noticeable
14846         in the gtk file selection widget.
14847
14848         (gdk_window_new): Don't set WS_EX_TOPMOST for dialog
14849         windows.
14850
14851 2000-01-13  Tor Lillqvist  <tml@iki.fi>
14852
14853         * configure.in
14854         * gdk/Makefile.am
14855         * gdk/x11/Makefile.am
14856         * gdk/win32/Makefile.am: Small fixes, thanks to Peter Wainwright
14857         (bug #5177).
14858         * gdk/win32/gdkcc-win32.c: Reintroduce, to be thrown
14859         out later.
14860
14861 2000-01-09  Tor Lillqvist  <tml@iki.fi>
14862
14863         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Ignore
14864         WM_MOVE for iconified or invisible windows. This fixes various
14865         problems when minimising windows. Thanks to Bernd Herd.
14866
14867 2000-01-05  Tor Lillqvist  <tml@iki.fi>
14868
14869         * gdk/gdkdraw.c (gdk_draw_lines): Fix copy&paste error: Call the
14870         backend's draw_lines method, not draw_points.
14871
14872 2000-01-02  Tor Lillqvist  <tml@iki.fi>
14873
14874         * gdk/win32/gdkevents-win32.c: Clean up some more leftovers from
14875         before Owen's reorganisation: Don't have queued_events and
14876         queued_tail statics in this file, but use gdk_queued_events and
14877         gdk_queued_tail. This makes exposure event compression work again.
14878
14879         (gdk_WindowProc): Comment out a posting of gdk_ping_msg, doesn't
14880         seem to be needed?
14881
14882 1999-12-30  Tor Lillqvist  <tml@iki.fi>
14883
14884         * gdk/gdk.c: If we don't HAVE_XCONVERTCASE we must #include
14885         gdkkeysyms.h to get the GDK_* keysym constants that are needed by
14886         gdk_keyval_convert_case(). Otherwise, gdk_keyval_convert_case()
14887         doesn't do anything.
14888
14889         * gdk/gdk.def: Add gdk_xid_table_insert.
14890
14891         * gdk/win32/gdkprivate-win32.h
14892         * gdk/win32/gdkevents-win32.c
14893         * gdk/win32/gdkinput-win32.c
14894         
14895         * gdk/win32/gdkwindow-win32.c: Remove the superfluous
14896         extension_events field in the GdkWindowWin32Data struct. Use only
14897         the extension_events field in GdkWindowPrivate. Previously one was
14898         set, and the other one tested, which broke tablet
14899         functionality. Thanks to Keishi Suenaga for pointing this out.
14900
14901 1999-12-18  Tor Lillqvist  <tml@iki.fi>
14902
14903         * gdk/win32/gdkfont-win32.c (gdk_text_size, gdk_text_extents):
14904         When handling a single character (text length == 1), don't handle
14905         it as if it was UTF-8.
14906
14907 1999-12-11  Tor Lillqvist  <tml@iki.fi>
14908
14909         * Makefile.am: Distribute README.win32.
14910         
14911         * gdk/Makefile.am
14912         * gdk/win32/Makefile.am: Distribute Win32 files.
14913
14914         * gdk/makefile.msc: New file.
14915
14916         * gdk/gdk.c (gdk_arg_context_parse): Fix gccism (no statement
14917         after label).
14918
14919         * gdk/gdkprivate.h: Must mark also gdk_error_warnings and
14920         gdk_error_code as GDKVAR, as they are referred outside GDK.
14921
14922         * gdk/win32/makefile.msc: Update.
14923
14924         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): More
14925         tweaks. Check only if at least one of those Unicode subrange bits
14926         we care for is set. If no code page bits are set, guess (wildly)
14927         based on the charset.
14928
14929         * gdk/win32/gdkinput-win32.c: Remove debugging leftover.
14930
14931         * gdk/win32/gdkwindow-win32.c (gdk_window_new): Assure title is
14932         non-NULL.
14933
14934         * gtk/gtkdnd.c
14935         * gtk/gtklayout.c
14936         * gtk/gtkplug.c
14937         * gtk/gtkselection.c
14938         * gtk/gtksocket.c
14939         * gtk/gtkwindow.c: Include x11/gdkx.h *or* win32/gdkwin32.c as
14940         appropriate. There must be a cleaner way to handle this?
14941
14942         * gtk/gtkrc.c: Must include windows.h on Win32.
14943
14944         * gtk/testgtk.c: No need to include gdkx.h.
14945
14946         * gtk/makefile.cygwin: Correct invokation of genmarshal.pl.
14947
14948 1999-12-07  Tor Lillqvist  <tml@iki.fi>
14949
14950         * gdk/win32/gdkfont-win32.c: Fix string measurement code. For now,
14951         the rbearing is set to the same as the width, but this should be
14952         fixed.
14953
14954 1999-12-06  Tor Lillqvist  <tml@iki.fi>
14955
14956         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): New
14957         function. If Windows doesn't tell us what Unicode subranges a font
14958         covers, guesstimate based on the codepages it covers. This will
14959         hopefully help those Windows versions or fonts that don't give us
14960         any useful Unicode subrange information with GetTextCharsetInfo.
14961         Call this function in gdk_font_load_internal.
14962
14963         * gdk/win32/{gdkdnd,gdkimage,gdkpixmap,gdkprivate}-win32.c: Misc
14964         minor changes.
14965
14966 Fri Dec  3 14:09:50 1999  Owen Taylor  <otaylor@redhat.com>
14967
14968         * gtk/gtkoptionmenu.[ch] (gtk_option_menu_get_history):
14969         New function, long needed.
14970
14971 Wed Dec  1 22:35:43 1999  Owen Taylor  <otaylor@redhat.com>
14972
14973         * gdk/gdkproperty.h x11/gdkproperty.c: Change 
14974         only_if_exists argument of gdk_atom_intern to
14975         bool.
14976
14977 1999-11-25  Tor Lillqvist  <tml@iki.fi>
14978
14979         * gdk/gdkgc.c (gdk_gc_set_ts_origin, gdk_gc_set_clip_origin): 
14980         Fix two copy&paste errors.
14981
14982         * gdk/makefile.cygwin: Also rebuild DLL when the static archive in
14983         win32 has changed.
14984
14985         * gdk/win32/gdkprivate-win32.h: Don't need CPINFO in the
14986         GdkWin32SingleFont struct.
14987
14988         * gdk/win32/gdkfont-win32.c: Some more debugging: Print Unicode
14989         subranges of loaded fonts. Clear font signature first, in case
14990         GetTextCharsetInfo fails. Pretend SYMBOL_CHARSET fonts have
14991         ASCII+Basic Latin (i.e. 0x40--0xFF) as they are single-byte.
14992
14993         * gdk/win32/gdkgc-win32.c: Improved logging. (gdk_gc_postdraw):
14994         Unoffset clip region.
14995
14996 1999-11-23  Tor Lillqvist  <tml@iki.fi>
14997
14998         * gdk/win32/gdkevents-win32.c (gdk_event_translate): set
14999         event->any.window before calling filter functions.
15000
15001 Fri Nov 19 10:34:41 1999  Owen Taylor  <otaylor@redhat.com>
15002
15003         * gtk/gtkgamma.h: Adapt cast macros to standard.
15004
15005 [ Merges from 1.2 ]
15006
15007 Tue Nov 16 10:15:54 1999  Owen Taylor  <otaylor@redhat.com>
15008
15009         * gtk/gtkitemfactory.c (gtk_item_factory_parse_path):
15010         If translation does not include a '/', use entire
15011         translation instead of crashing.
15012
15013 Sun Oct 31 22:21:11 1999  Tim Janik  <timj@gtk.org>
15014
15015         * docs/gtk_tut.sgml:
15016         s/gtk_accel_group_attach/gtk_window_add_accel_group/.
15017
15018 Sat Oct 30 09:09:09 1999  Owen Taylor  <otaylor@redhat.com>
15019
15020         * gtk/gtkselection.c (gtk_target_list_remove): Use
15021         g_list_remove_link, not g_list_remove.
15022
15023         [ From Geert Bevin <gbevin@thunderstorms.org> ]
15024         
15025 Sun Oct 24 07:41:40 1999  Tim Janik  <timj@gtk.org>
15026
15027         * gtk/gtkclist.c (real_undo_selection): commented out g_print()
15028         statement upon unselection (how the heck did that slip in?).
15029
15030 Sat Oct 23 03:03:08 1999  Tim Janik  <timj@gtk.org>
15031
15032         * gtk/gtktext.c (gtk_text_freeze): 
15033         (gtk_text_thaw): undraw/draw cursor here to avoid unnecessary scrolling
15034         in frozen state (and aparently crashes). patch provided by Anders
15035         Melchiorsen <and@kampsax.dtu.dk>.
15036
15037 Sat Oct 23 02:53:20 1999  Tim Janik  <timj@gtk.org>
15038
15039         * fix insensitive default/focus widget activation,
15040         reported by Matt Goodall <mgg@isotek.co.uk>.
15041
15042         * gtk/gtkwindow.c (gtk_window_key_press_event): 
15043         (gtk_window_activate_default):
15044         (gtk_window_activate_focus):
15045         return handled=FALSE for actiavtion of insensitive default
15046         widgets. return handled=TRUE for activation of insensitive
15047         focus widgets. don't activate in either case.
15048
15049 Tue Oct 19 09:55:08 1999  Owen Taylor  <otaylor@redhat.com>
15050
15051         * gtk-config.in (lib_gtk): Switch order of @x_cflags@
15052         and $glib_cflags to match library order and in the
15053         theory that an old version of GLib is more likely to
15054         be in the include directory for X then vice-versa.
15055         (Bug #2776)
15056
15057 Tue Oct 19 09:46:49 1999  Owen Taylor  <otaylor@redhat.com>
15058
15059         * gtk/gtkrc.c (gtk_rc_init): Always use LC_CTYPE 
15060         to determine the locale for fontsets, not LC_MESSAGES;
15061         the user may want English messages with a handling
15062         for non-English languages. (LC_CTYPE=ru_RU LC_MESSAGES=fr_FR
15063         will still be broken) (Bug #2891)
15064
15065 Tue Oct 19 20:36:42 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
15066
15067         * gtk/gtkrc.ko: Fixed the wrong number of "*"'s.
15068
15069 Tue Oct 19 12:15:13 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
15070
15071         * gtk/gtkrc.ko: Changed the Korean default fontset.
15072
15073 Fri Oct  8 02:32:47 1999  Owen Taylor  <otaylor@redhat.com>
15074
15075         * gtk/gtklayout.c (gtk_layout_adjustment_changed): Fix bug
15076         where when scrolling to the left or top double exposes
15077         were done, causing major slowdowns.
15078
15079 Thu Oct  7 18:31:55 1999  Owen Taylor  <otaylor@redhat.com>
15080
15081         * gtk/gtkrc.c (gtk_rc_init): Always normalize codeset
15082         names to lowercase and alphanumeric, before looking
15083         them up.
15084
15085         * gtk/Makefile.am: Install codeset variant gtkrc files
15086         with normalized names.
15087
15088 Thu Oct  7 22:52:42 1999  Tim Janik  <timj@gtk.org>
15089
15090         * gtk/gtkitemfactory.c (gtk_item_factory_popup_with_data): even
15091         popup menus when the menu is already visible, but its parent
15092         is still hidden, (happens after tornoff window got hidden).
15093
15094 Thu Oct  7 11:09:55 1999  Owen Taylor  <otaylor@redhat.com>
15095
15096         * gtk/Makefile.am (install-data-local): Fix
15097         a typo where gtkrc.vi_VN.tcvn5712 wasn't getting
15098         deleted, causing error messages on install.
15099
15100 Thu Oct  7 11:03:06 1999  Owen Taylor  <otaylor@redhat.com>
15101
15102         * gtk/gtk[hv]paned.c (gtk_{h,v}paned_draw): Redraw
15103         the handle as well, since we now sometimes ignore
15104         exposes on the handle while resizing.
15105
15106 Wed Oct  6 18:02:31 1999  Owen Taylor  <otaylor@redhat.com>
15107
15108         * gtk/gtkrc.c (gtk_rc_append_default_pixmap_path): Fix stupid
15109         extra g_free introduced in one of the last one or two 
15110         commits.
15111
15112 Wed Oct  6 16:38:36 1999  Owen Taylor  <otaylor@redhat.com>
15113
15114         * gtk/Makefile.am gtk/gtkrc*: Make naming of gtkrc files
15115         consistent, put each style that a gtkrc.* file creates
15116         in a unique namespace, remove old files before installing.
15117
15118 Wed Oct  6 14:31:16 1999  Owen Taylor  <otaylor@redhat.com>
15119
15120         * gtk/gtkrc.c (gtk_rc_init): Avoid leaking memory when
15121         gtk_rc_init is called multiple times. (Yes, people who
15122         do that have bugs in their code.)
15123
15124 Tue Oct  5 11:36:57 PDT 1999 Manish Singh <yosh@gimp.org>
15125
15126         * gtk/Makefile.am: listing gtkrc in gtkconf_DATA seems to barf.
15127         Remove it since it's generated by the Makefile anyway
15128
15129 Tue Oct  5 02:43:41 1999  Owen Taylor  <otaylor@redhat.com>
15130
15131         * gdk/gdkinputcommon.h (gdk_input_device_new): Free
15132         device->info.axes for core pointer.
15133
15134 Thu Sep 30 13:55:25 1999  Owen Taylor  <otaylor@redhat.com>
15135
15136         * gtk/testgtk.c (destroy_idle_test): Rename idle to 
15137         idle_id, to deal with obsolete, broken C libraries.
15138
15139 Mon Sep 27 02:50:15 1999  Owen Taylor  <otaylor@redhat.com>
15140
15141         * gtk/gtkvscale.c (gtk_vscale_draw): Don't add in
15142         allocation->x/y twice!
15143
15144         * gtk/gtkhscale.c: Make usage of gtk_hscale_pos_trough()
15145         consistent with gtk_vscale_pos_trough().
15146
15147 Sun Sep 26 19:44:34 1999  Owen Taylor  <otaylor@redhat.com>
15148
15149         * gtk/gtkcontainer.c (gtk_container_queue_resize): We may
15150         be queueing a resize on a toplevel container between
15151         the time we show it and when we map it. So, we need
15152         to test GTK_WIDGET_VISIBLE() for toplevels, and only
15153         use GTK_WIDGET_DRAWABLE() for child windows.
15154
15155 Thu Sep 23 16:41:03 1999  Owen Taylor  <otaylor@redhat.com>
15156
15157         * gtk/Makefile.am (LDADDS): Add GDK_WLIBS to LDADDS 
15158         (fixes bug #2144)
15159
15160 Fri Sep 24 00:51:45 1999  Tim Janik  <timj@gtk.org>
15161
15162         * gtk/gtkcontainer.c (gtk_container_queue_resize): check for
15163         container DRAWABLE (instead of VISIBLE), so we don't queue
15164         resizes on non-toplevel containers.
15165
15166 Sun Sep 19 18:13:31 1999  Owen Taylor  <otaylor@redhat.com>
15167
15168         * gtk/gtkselection.[ch]: Make the data argument
15169         const guchar *.
15170
15171 Sat Sep 18 21:27:40 1999  Owen Taylor  <otaylor@redhat.com>
15172
15173         * gtk/gtkwindow.c: Try to behave sensibly if 
15174         the focus widget is the window itself. (Should
15175         we allow this at all?)
15176
15177 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
15178
15179         * gtk/gtkwidget.c (gtk_widget_set_sensitive): 
15180         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): 
15181         * gtk/gtknotebook.c (gtk_notebook_set_show_border): 
15182         * gtk/gtkclist.c (gtk_notebook_set_show_border): make gboolean args
15183         in prototypes and implementations consistent (Tomas Ogren).
15184
15185         * gtk/gtklayout.c (gtk_layout_remove): unset GTK_IS_OFFSCREEN flag
15186         before the widget is unparented (reported by damon).
15187
15188         * gtk/gtkdnd.c: make the cursor and icon data _unsigned_ char,
15189         since we provide unsigned data anyways.
15190
15191 Thu Sep 16 21:32:01 1999  Owen Taylor  <otaylor@redhat.com>
15192
15193         * gtk/gtktooltips.c (gtk_tooltips_set_tip): Delay
15194         the call to gtk_tooltips_layout_text() until later.
15195
15196         * gtk/gtktooltips.c (gtk_tooltips_draw_tips):
15197         Call gtk_widget_ensure_style() before using the style.
15198
15199 Wed Sep 15 02:52:19 1999  Owen Taylor  <otaylor@redhat.com>
15200
15201         * gtk/gtkwidget.c (gtk_widget_event): Added workaround
15202         for old widgets that don't propagate draws to all
15203         children. (Namely gnome-dock for gnome-libs <= 1.0.16)
15204
15205 Tue Sep 14 19:22:19 1999  Tim Janik  <timj@gtk.org>
15206
15207         * gtk/gtkwidget.c (gtk_widget_queue_resize): don't queue the parent
15208         for a redraw but just the widget that requested the resize.
15209
15210 Tue Sep 14 18:29:47 1999  Tim Janik  <timj@gtk.org>
15211
15212         * gtk/gtkcontainer.c: added new widget level method
15213         gtk_container_set_reallocate_redraws() and a GtkContainer flag
15214         reallocate_redraws : 1 to reflect the setting, exported this through
15215         the argument system as a boolean ::reallocate_redraws.
15216
15217         * gtk/gtkwidget.c (gtk_widget_size_allocate): when queueing redraws
15218         on the widget because the allocation changes, do so as well for
15219         widget->parent if the parent has reallocate_redraws set to TRUE.
15220         with that containers requesting reallocation redraws get automatically
15221         redrawn if their children changed allocation (this unfortunately
15222         affects also other children that didn't change allocation, but we
15223         cannot work around that before 1.3).
15224
15225 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
15226
15227         * gtk/gtkwidget.c (gtk_widget_idle_draw): only emit ::draw if width
15228         _and_ height are >0 (not _or_).
15229
15230         * gtk/gtktable.c (gtk_table_remove): use gtk_widget_queue_resize()
15231         instead of gtk_container_queue_resize(), which is a core gtk internal
15232         function (must have been on crack when i queued that).
15233
15234         * gtk/gtkprivate.h: added new private flag GTK_FULLDRAW_PENDING, so
15235         we can check more reliably if we want to discard expose events.
15236         * gtk/gtkwidget.c: added setting/unsetting of the GTK_FULLDRAW_PENDING
15237         flag.
15238         
15239         * gtk/gtkwidget.c (gtk_widget_event): don't discard synthesized exposes,
15240         we simply trust these events. for deciding whether to discard exposes,
15241         check GTK_FULLDRAW_PENDING instead of RESIZE_PENDING.
15242         
15243 Mon Sep 13 15:01:21 1999  Owen Taylor  <otaylor@redhat.com>
15244
15245         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
15246         queues of areas that are completely off screen.
15247
15248         * gtk/gtkwidget.c (gtk_widget_idle_draw): Fix broken
15249         logic for handleboxes.
15250
15251         * gtk/gtkwidget.c (gtk_widget_queue_draw_data): Add santity
15252         check on width/height.
15253
15254 Mon Sep 13 02:22:47 1999  Tim Janik  <timj@gtk.org>
15255
15256         * gtk/Makefile.am: backed out Raja's recent VPATH build "improvements",
15257         we are fine with using $@ the way we do (if we actually encounter
15258         brokeness with $@ in VPATH builds because of additional path prefixes,
15259         we need to use $(@F) actually).
15260
15261 Mon Sep 13 01:34:53 1999  Tim Janik  <timj@gtk.org>
15262
15263         * gtk/gtksignal.c: renamed two variables, hopefully didn't introduce
15264         short lived bugs, that would allow language bindings to do surgeries
15265         to our guts.
15266
15267 Fri Sep 10 15:22:50 1999  Owen Taylor  <otaylor@redhat.com>
15268
15269         * gtk/gtkwindow.c (gtk_window_size_allocate): Fix typo
15270         where comparison was being done against an uninitialized
15271         value causing intermittant results depending on
15272         compiler flags. Also make it clearer that we aren't
15273         ever initializing the child as 0x0 (though this will
15274         be caught in gtk_widget_size_allocate())
15275
15276 Fri Sep 10 10:06:56 1999  Owen Taylor  <otaylor@redhat.com>
15277
15278         * gtk/gtkwindow.c (gtk_window_set_transient_for): Move
15279         gtk_window_unset_transient_for() call after we do checks
15280         involving the old transient parent.
15281         [ From Lance Capser <lmc@cyberhighway.net> ]
15282
15283 1999-09-07  Raja R Harinath  <harinath@cs.umn.edu>
15284
15285         * gtk/Makefile.am (gtk.defs): Go back to using `touch' to create
15286         an empty file.
15287
15288 Mon Sep  6 00:11:56 1999  Lars Hamann  <lars@gtk.org>
15289
15290         * gtk/gtkctree.c (gtk_ctree_is_ancestor): return FALSE if node has
15291         no children. (Reported by: Chris Rogers <gandalf@pobox.com>)
15292
15293 1999-09-03  Raja R Harinath  <harinath@cs.umn.edu>
15294
15295         * gtk/Makefile.am (gen_sources): Improve VPATH builds.
15296         `$@' is valid only in the build dir, not after we've done 
15297         `cd $srcdir'.  Also use `test -f' instead of less portable
15298         `test -e'.
15299
15300 Fri Sep  3 15:59:56 1999  Owen Taylor  <otaylor@redhat.com>
15301
15302         * gtk/gtktext.c (correct_cache_insert): Rewrite
15303          for simplicity, and hopefully correctness.
15304          (Fixes bug #1322, which was a segfault when
15305           on some insertions with the properties around
15306           the insertion set up just wrong.)
15307
15308         * gtk/gtktext.c (gtk_text_adjustment): When we receive
15309          a "changed" signal, clamp the new value to the adjustment
15310          bounds to avoid segfaulting if someone tries to change
15311          the adjustment to a bogus value. (Bug #1795)
15312
15313 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
15314
15315         * gtk/gtkmain.c: Ignore unexpected destroy notifies
15316         for children, for toplevel windows handle them
15317         like delete_event.
15318
15319         * gtk/gtkplug.c: Add an unrealize handler so that
15320         we unref plug->socket_window when we are done
15321         with it.
15322
15323 Fri Sep  3 14:52:54 1999  Owen Taylor  <otaylor@redhat.com>
15324
15325         * gtk/gtktext.c (clear_area): Fix stupid signedness
15326          problem that was causing background to sometimes
15327          be misaligned.
15328
15329 Fri Sep  3 12:26:33 1999  Owen Taylor  <otaylor@redhat.com>
15330
15331         [ Fixes pointed out by Ettore Perazzoli <ettore@comm2000.it> ]
15332         
15333         * gtk/gtkmenu.c (gtk_menu_position): Make
15334          sure we never position menus with negative x, y,
15335          since gtk_widget_set_uposition() can't handle that.
15336
15337         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu):
15338          Modify the positioning code a bit so that we always
15339          put the top-left corner onscreen. (This is for
15340          UI reasons, gtk_menu_position() now takes care of
15341          gtk_widet_set_uposition() brokeness.)
15342
15343 Fri Sep  3 03:06:30 1999  Tim Janik  <timj@gtk.org>
15344
15345         * gtk/Makefile.am: fixed up things for -jx, x > 1.
15346
15347 Sun Sep  5 08:48:51 1999  Owen Taylor  <otaylor@redhat.com>
15348
15349         * gtk/gtkwidget.c (gtk_widget_modify_style): Ref the
15350           RC style that is passed in. The lack of the ref
15351           before was a bug. If people worked around this
15352           bug, this will introduce a slight memory leak
15353           in their code. The code should typically look like:
15354
15355             rc_style = gtk_rc_style_new ();
15356             [...]
15357             gtk_widget_modify_style (widget, rc_style);
15358             gtk_rc_style_unref (rc_style);
15359
15360         * gtk/gtkwidget.c (gtk_widget_modify_style): Reset
15361           the style if it was already set.
15362
15363         * gtk/gtkwidget.c (gtk_widget_set_name): Only set the
15364           style if it was set before.
15365
15366 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
15367
15368         * gtk/testgtk.c (main): Add a check to see if we
15369           are being run from the correct directory and
15370           to quit nicely if we are not.
15371
15372         * gtk/gtkrc.c (gtk_rc_slist_remove_all): Make function
15373           static.
15374
15375 Thu Sep  2 23:00:03 1999  Tim Janik  <timj@gtk.org>
15376
15377         * gtk/gtkenums.h (GtkWindowPosition): added GTK_WIN_POS_CENTER_ALWAYS.
15378
15379         * gtk/gtkwindow.c:
15380         queue resizes unconditionally (gtk_widget_queue_resize will figure
15381         what to do if the window is not realized).
15382         (gtk_window_move_resize): only recenter the window
15383         for GTK_WIN_POS_CENTER_ALWAYS.
15384         (gtk_window_compute_reposition): handle GTK_WIN_POS_CENTER_ALWAYS in
15385         the same way as GTK_WIN_POS_CENTER.
15386
15387 Thu Sep  2 22:39:27 1999  Tim Janik  <timj@gtk.org>
15388
15389         * gtk/gtkwindow.c (gtk_window_reposition): check for the last position
15390         with (!(info->last_flags & GDK_HINT_POS)) instead of
15391         (!info->last_flags & GDK_HINT_POS).
15392
15393         * gtk/gtkwindow.c (gtk_window_move_resize): constrain new_width and
15394         new_height unconditionally, because we use these values even if
15395         !default_size_changed && !hints_changed.
15396         comented the (default_size_changed || hints_changed) case with
15397         respect to resize rejects from the window manager.
15398
15399         * gtk/gtkwindow.c (gtk_window_move_resize): save info->last values
15400         in the zvt condition hack, since this includes the window hints, set
15401         the hints after the handling_resize case.
15402
15403         * gtk/gtkwindow.c (gtk_window_show): constrain the default size that a
15404         window is initially shown with to the geometry.
15405
15406 Thu Sep  2 07:38:56 1999  Tim Janik  <timj@gtk.org>
15407
15408         * gtk/gtkwindow.c (gtk_window_move_resize):
15409         s/size_changed/default_size_changed/g so i know what's
15410         really going on (frying brain on smaller flame now).
15411
15412 Thu Sep  2 05:47:47 1999  Tim Janik  <timj@gtk.org>
15413
15414         * gtk/gtkwindow.c (gtk_window_move_resize): queue a new resize if
15415         we have size_changed upon handling_resize. this is a gross
15416         workaround for the broken zvt widget and should be removed in
15417         1.3 again (search for FIXME).
15418         Owen provided an accurate comment for this:
15419
15420         /* We could be here for two reasons
15421          *  1) We coincidentally got a resize while handling
15422          *     another resize.
15423          *  2) Our computation of size_changed was completely
15424          *     screwed up, probably because one of our children
15425          *     is broken. It's probably a zvt widget.
15426          *
15427          * For 1), we could just go ahead and ask for the
15428          * new size right now, but doing that for 2)
15429          * might well be fighting the user (and can even
15430          * trigger a loop). Since we really don't want to
15431          * do that, we requeue a resize in hopes that
15432          * by the time it gets handled, the child has seen
15433          * the light and is willing to go along with the
15434          * new size. (this happens for the zvt widget, since
15435          * the size_allocate() above will have stored the
15436          * requisition corresponding to the new size in the
15437          * zvt widget)
15438          *
15439          * This doesn't buy us anything for 1), but it shouldn't
15440          * hurt us too badly, since it is what would have
15441          * happened if we had gotten the configure event before
15442          * the new size had been set.
15443          */
15444
15445 Wed Sep  1 20:46:11 1999  Owen Taylor  <otaylor@redhat.com>
15446
15447         * gtk/gtkrc.c: deal properly with the fact that RC
15448           style lists may include rc styles more than once.
15449
15450         * gtk/gtkrc.c (gtk_rc_append_pixmap_path): Removed
15451           unused static function.
15452
15453         * gtk/gtkrc.c (gtk_rc_find_pixmap_in_path): Keep a
15454           stack of directories of RC files currently being
15455           parsed and implicitely add them to pixmap path.
15456           
15457           This fixes a bug where the directory would get
15458           appended then overwritten by pixmap_path declarations.
15459
15460           (bug #1462, from Peter Wainright <prw@wainpr.demon.co.uk>)
15461
15462         * gtk/gtkthemes.c (gtk_theme_engine_unref): Call
15463           theme's exit function. (Patch from Peter Wainwright,
15464           bug #1454)
15465
15466         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_destroy):
15467           Add a destroy() handler to take care of removing
15468           group for menu item. (Fixes bug #1197)
15469
15470         * gtk/gtkwidget.c (gtk_widget_size_request): Fixed thinko
15471           in warning message.
15472
15473 Wed Sep  1 21:27:42 1999  Tim Janik  <timj@gtk.org>
15474
15475         * gtk/gtkwindow.c (gtk_window_move_resize): don't require a server
15476         roundtrip to figure window's width and height, since we know that
15477         anyways from widget->allocation.
15478
15479 Wed Sep  1 12:37:44 1999  Owen Taylor  <otaylor@redhat.com>
15480
15481         * gtk/gtkwindow.c (gtk_window_move_resize): Compute
15482           the hints after we request the new size.
15483
15484 Wed Sep  1 10:38:37 1999  Owen Taylor  <otaylor@redhat.com>
15485
15486         * gtk/gtkwindow.c (gtk_window_compute_hints): Removed
15487           GTK_WIDGET_REALIZED() assertion - we can compute the
15488           hints before we are realized.
15489
15490         * gtk/gtkwindow.c (gtk_window_move_resize): Reorder
15491           hint changing so that we have a value of hints_changed
15492           when we decide whether to constrain the window size.
15493
15494         * gtk/gtkwindow.c (gtk_window_move_resize): Spelling fix.
15495
15496         * gtk/gtkwindow.c (gtk_window_constrain_size): cleanups,
15497         change back to G_MAXINT.
15498
15499 Wed Sep  1 06:54:59 1999  Tim Janik  <timj@gtk.org>
15500
15501         * gtk/gtkwindow.c (gtk_window_get_geometry_info): zero initialize
15502         new GtkWindowGeometryInfo, so fields like GdkGeometry geometry
15503         contain uncluttered values.
15504         (gtk_window_compute_hints): simply assert that window is realized
15505         and that geometry_info is valid, since we rely on this anyways.
15506         (gtk_window_constrain_size): major cleanups to the code.
15507         if (flags & GDK_HINT_BASE_SIZE) use geometry's base width and height
15508         for the base size, instead of the minimums. use 32767 as max width
15509         and height (like in gtkwindow.c) instead of G_MAXINT.
15510
15511 Wed Sep  1 04:41:25 1999  Tim Janik  <timj@gtk.org>
15512
15513         * cleaned up the GtkContainer.need_resize flag handling mess, we
15514         only need to force resize requests when we were prematurely
15515         realized, or our widget tree was modified when we were temporarily
15516         hidden. handling these cases directly upon showing the window (i.e.
15517         while the GdkWindow is still unmapped) avoids the need to wait for
15518         a configure event response and therefore makes the GUI more snappier
15519         and avoids blank windows during the roundtrip.
15520
15521         * gtk/gtkwidget.c:
15522         (gtk_widget_hide): 
15523         (gtk_widget_show): don't queue resizes on toplevels, they know how
15524         to deal with matters.
15525
15526         * gtk/gtkcontainer.c (gtk_container_queue_resize): set the ->need_resize
15527         flag directly for not visible resize containers and spare us unecessary
15528         signal emissions.
15529
15530         * gtk/gtkwindow.c:
15531         (gtk_window_realize): if we need to enforce premature size allocation,
15532         queue a container resize so we are correctly resized later on.
15533         (gtk_window_init):
15534         (gtk_window_size_request):
15535         don't freak around with the ->need_resize flag,
15536         gtk_container_queue_resize() will care about that.
15537         (gtk_window_show):
15538         handle initial resizing issues here, we can handle matters better in
15539         this place, especially since we know that our GdkWindow is still
15540         unmapped.
15541         (gtk_window_move_resize):
15542         don't care about ->need_resize at all.
15543         handle size changes properly that occoured while we waited for a
15544         configure event.
15545
15546 Tue Aug 31 15:58:46 1999  Owen Taylor  <otaylor@redhat.com>
15547
15548         * gtk/gtkwidget.c (gtk_widget_set_uposition):
15549         * gtk/gtkwindow.[hc] (gtk_window_reposition):
15550         Move the hint setting code from gtk_widget_set_uposition
15551         to here; set the hints so that we respect any previously
15552         set geometry hints.
15553
15554         * gtk/gtkwindow.c (gtk_window_compute_reposition): Don't
15555         change the window hints here or move the window here,
15556         let that happen in gtk_window_move_resize().
15557
15558 Tue Aug 31 06:58:52 1999  Tim Janik  <timj@gtk.org>
15559
15560         * gtk/gtkwidget.c (gtk_widget_event): when discarding exposes due
15561         to already queued resizes (and therefore redraws) on a widget, check
15562         its anchestry as well.
15563
15564         * gtk/gtkcontainer.c:
15565         (gtk_container_queue_resize): clear resize widgets for resize
15566         containers before aborting prematurely. this is especially important
15567         for toplevels which may need imemdiate processing or their resize
15568         handler to be queued.
15569         (gtk_container_dequeue_resize_handler): added new internal function for
15570         gtkwindow.c.
15571
15572         * gtk/gtkwindow.c (gtk_window_move_resize): if we are resizing due to a
15573         configure event, take possible changes in window position into account
15574         as well.
15575         if we request a new window size, queue up a resize handler that will
15576         last until the configure event response arrives.
15577         combined the ->need_resize case (initial show) with the general size
15578         (hints) changed case and added even more comments.
15579         if !auto_shrink, only revert to the old allocation if the new size
15580         is smaller than the current allocation.
15581
15582 Tue Aug 31 11:55:20 1999  Owen Taylor  <otaylor@redhat.com>
15583
15584         * gtk/gtkwindow.c (gtk_window_set_arg, gtk_window_set_policy,
15585                            gtk_window_set_geometry_hints
15586                            gtk_window_set_default_size):
15587         When hints are set, queue a resize so that the hints will
15588         be eventually reset on the toplevel.
15589
15590         * gtk/gtkwindow.c (gtk_window_show): Use
15591         gtk_window_compute_default_size(). Clear the need_resize flag
15592         on the initail map so that we don't unnecessarily trigger the
15593         resize code.
15594
15595         * gtk/gtkwindow.c (gtk_window_move_resize): Split apart
15596         into separate functions. Compare the hints we are setting
15597         with what we set last time so that we can accurately
15598         tell when we need to reset the hints.
15599
15600         * gtk/gtkwindow.c (gtk_window_compute_default_size): New
15601         function to figure out the size from requisition
15602         and default_size.
15603
15604         * gtk/gtkwindow.c (gtk_window_constrain_size): Function
15605         from fvwm to constrain a size to the geometry hints.
15606
15607         * gtk/gtkwindow.c (gtk_window_compare_hints): New function
15608         to compare two sets of geometry hints.
15609
15610         * gtk/gtkwindow.c (gtk_window_compute_hints): Renamed
15611         from gtk_window_set_hints(), just compute the hints,
15612         don't set them.
15613
15614         * gtk/gtkwindow.c (gtk_window_compute_reposition): Move
15615         code from gtk_window_move_resize() to separate function,
15616         rationalize a bit.
15617
15618 Tue Aug 31 13:05:03 1999  Owen Taylor  <otaylor@redhat.com>
15619
15620         * gtkrc.h: Move the ref_count member out of the GtkRcStyle
15621         structure into a new private structure.
15622
15623         * gtkrc.c: Split GtkRcStyle into public/private.
15624         In the private part, add a list of pointers to the
15625         RcStyle lists this RcStyle participates in.
15626
15627         * gtkrc.c: When a RcStyle is free, remove all
15628         lists referencing it from the 
15629         realized_style_ht hash, and free those lists.
15630         
15631         * gtk/gtkrc.c (gtk_rc_clear_styles): Don't call
15632         gtk_rc_init(), since that adds the default styles
15633         to the list of parsed RC files again.
15634
15635         * gtk/gtkrc.c: Use gtk_rc_style_find() consistently.
15636         
15637 Thu Aug 26 14:14:42 1999  Tim Janik  <timj@gtk.org>
15638
15639         * gtk/gtkwidget.c (gtk_widget_size_allocate): reactivated the sanity
15640         checks that ensure that a widget's allocation is at least 1 in width
15641         and height. (GNOME note: this doesn't affect old panel code anymore,
15642         because GtkSocket will request width and height of at least 1 since
15643         Fri Jul 23).
15644
15645         * gtk/gtkwindow.c (gtk_window_realize): if the widget hasn't been
15646         allocated yet (happens if the user realizes the window prematurely),
15647         size request and allocate it.
15648         (gtk_window_size_allocate): guard against guint underflows.
15649
15650 Wed Aug 25 19:01:36 1999  Lars Hamann  <lars@gtk.org>
15651
15652         * gtk/Makefile.am (gtk_built_sources): reordered stamp-gtk.defs
15653         in gtk_built_sources, so gtk.defs gets built prior to all other
15654         sources.
15655
15656 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
15657
15658         * gtk/Makefile.am:
15659         invoke indent on gtkmarshal.*. 
15660         rewrote source generation rules, use COPYING as oldest source tag for
15661         a piggyback rule to generate all sources from (don't touch it ;).
15662         major cleanups, strip spaces on build rules for GNU Make.
15663
15664         * gtk/genmarshal.pl: don't operate on hardcoded filenames but take
15665         source and target files from commandline arguments. don't invoke indent.
15666
15667 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
15668
15669         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
15670         notebook after switch to avoid drawing problems.
15671         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
15672         
15673         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
15674         show them instead. 
15675         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
15676
15677 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
15678
15679         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
15680         notebook after switch to avoid drawing problems.
15681         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
15682         
15683         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
15684         show them instead. 
15685         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
15686
15687 Wed Aug 18 09:20:10 1999  Tim Janik  <timj@gtk.org>
15688
15689         * gtk/gtkwindow.c:
15690         we use window->need_resize from configure_event now, to indicate that
15691         the gtkwindow should keep its allocation (e.g. because the user resized
15692         the window through window manager handles). resize_count is now reliably
15693         used to figure whether we got the allocation we requested from the
15694         window manager.
15695         configure events get queued as resizes now, the real stuff (size
15696         computation and allocation) now only goes on in gtk_window_move_resize().
15697         GtkWindow's requisition now contains its *real* requisition (like all
15698         other widgets), *not* taking usize into account.
15699         geometry_info->last_{width|height} is now updated from set_hints() only
15700         so it always contains the last hints we set for the window manager.
15701         made some event handlers return TRUE instead of FALSE.
15702         the overall code should be much more straight forward now, and the
15703         significant code portions are accompanied by comments now.
15704         (gtk_window_set_hints):
15705         removed requisition argument and made it
15706         fetch the requisition through gtk_widget_get_child_requisition.
15707         we also don't move the gdkwindow here anymore, gtk_window_move_resize()
15708         does that now.
15709         (gtk_window_show):
15710         ensure that the widget is realized before calling 
15711         gtk_container_check_resize() (and thus gtk_window_move_resize()), also
15712         ensure that we got properly size requested and allocated before
15713         realization.
15714         (gtk_window_configure_event):
15715         ignore plain window moves, or reallocate the widget tree through the
15716         resize queue otherwise.
15717         (gtk_window_move_resize):
15718         mostly rewrote this function to figure window manager hints more
15719         reliably, coalesce window moves and resizes to reduce configure events
15720         and do actuall size allocations.
15721
15722 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
15723
15724         * gtk/gtkwidget.c (gtk_widget_event): discard expose events for widgets
15725         that have a resize pending, because a redraw is already queued for them.
15726
15727         * gtk/gtkcontainer.c: removed ugly connect_to ::size_allocate signal
15728         hack to clear resize_widgets.
15729
15730         * gtk/gtkwidget.c (gtk_widget_size_allocate): call clear_resize_widgets
15731         for resize containers prior to size allocation. (this is also a bit
15732         ugly, but avoids side effects for stopped emissions and is thus more
15733         reliable).
15734         (gtk_widget_unparent): removed disconnect call for clear_resize_widgets.
15735
15736         * gtk/gtktooltips.c (gtk_tooltips_paint_window): renamed this
15737         function from gtk_tooltips_expose, as we connect to ::expose_event
15738         *and* ::draw now.
15739
15740 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
15741
15742         * gtk/gtkselection.c (gtk_target_list_ref): Added missing sanity
15743         checks.
15744         (gtk_target_list_unref): Likewise.
15745
15746         * gtk/gtkthemes.c (gtk_theme_engine_unref): Likewise.
15747
15748 Tue Aug 17 15:47:07 1999  Owen Taylor  <otaylor@redhat.com>
15749
15750         * gtk/gtkcolorsel.c (gtk_color_selection_draw_value_bar):
15751         guard against division by zero. (Fixes bug #1339)
15752
15753 Tue Aug 17 10:56:49 1999  Owen Taylor  <otaylor@redhat.com>
15754
15755         * gtk/gtkentry.c (gtk_move_{forward,backward}_word): 
15756         Prevent the trivial leak of information of allowing
15757         word motion when the entry is not visible.
15758
15759 Tue Aug 17 10:28:52 1999  Owen Taylor  <otaylor@redhat.com>
15760
15761         * gtk/gtkfilesel.c (gtk_file_selection_fileop_error): Propagate
15762         modality to error dialog as well as confirmation dialogs.
15763         (Bug #1803, reported by Rosanna Wing Sze Yuen)
15764
15765 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
15766
15767         * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): Honor
15768         tree->view_lines.
15769         (gtk-guy-990611-3.patch: Guy Harris <guy@netapp.com>)
15770
15771         * gtk/Makefile.am (install-data-local): Solaris apparently
15772         has various troubles with ln -f; use rm first instead.
15773         (gtk-guy-990611-2.patch: Guy Harris <guy@netapp.com>)
15774
15775 1999-07-30  Raja R Harinath  <harinath@cs.umn.edu>
15776
15777         * gtk/Makefile.am (stamp-m): Don't `mv' from builddir to srcdir,
15778         use `cp' followed by `rm' (the `rm' was already there).
15779
15780 July 30, 1999 Elliot Lee <sopwith@redhat.com>
15781         
15782         * configure.in: Fix autoconf warnings about cross compilation by
15783         trying to provide sane defaults for AC_TRY_RUN.
15784         * gtk/Makefile.am: If we refer to gtkmarshal.[ch] in $(srcdir),
15785         put them into $(srcdir) when generated. Also add a dependency of
15786         gtksignal.h on gtkmarshal.h for -j builds. 
15787         * gtk/gtk(dnd,style,gamma).c: Minor warning fixes.
15788
15789 Wed Jul 28 09:29:19 1999  Owen Taylor  <otaylor@redhat.com>
15790
15791         * gtk/gtkmain.c (gtk_main_iteration_do): Added missing
15792         GDK_THREADS_{LEAVE,ENTER} pair.
15793         (From Paul Fisher <pnfisher@redhat.com>)
15794
15795 Fri Jul 23 01:00:15 1999  Tim Janik  <timj@gtk.org>
15796
15797         * gtk/gtksocket.c (gtk_socket_size_request): asure that the requested
15798         width and height are always >0 (owen).
15799
15800 Fri Jul 23 00:00:47 1999  Tim Janik  <timj@gtk.org>
15801
15802         * gtk/gtkwidget.c (gtk_widget_size_allocate): backed out my recent
15803         change that assured that a widget's allocated with and height are
15804         always >1, since this breaks *buggy* panel code. unfortunately this
15805         back-breaks the gimp's color selector.
15806
15807         * gtk/gtkdrawingarea.c (gtk_drawing_area_size_allocate): asure that our
15808         allocation is always >0 in width and height, before sending the
15809         configure event; this is a *gross* hack to get the gimp back to work.
15810         
15811         * marked both cases with TODO-1.3
15812
15813 Wed Jul 21 15:47:39 1999  Owen Taylor  <otaylor@redhat.com>
15814
15815         * gtk/gtktext.c: Don't display wrap indicators when
15816         text is not editable and word wrap is on.
15817
15818 Wed Jul 21 08:21:40 1999  Tim Janik  <timj@gtk.org>
15819
15820         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): special case
15821         option menus here as they are not derived from menu shell, assure that
15822         the option menu has a menu we can add items to.
15823
15824 Tue Jul 20 23:29:48 1999  Tim Janik  <timj@gtk.org>
15825
15826         * gtk/gtknotebook.c (gtk_notebook_page_allocate): convert allocation->
15827         width/height to (gint) before calculations and check against < 0 to
15828         avoid guint wraparounds.
15829
15830 Sun Jul 18 00:35:49 1999  Tim Janik  <timj@gtk.org>
15831
15832         * gtk/gtkwidget.c (gtk_widget_size_allocate): ensure that the allocated
15833         width and height is never zero. sanity check both dimensions against
15834         32767 and issue a warning if the allocation is greater than that.
15835
15836 Wed Jul  7 15:03:30 1999  Owen Taylor  <otaylor@redhat.com>
15837
15838         * gtk/gtkmain.c (gtk_events_pending): Unlock around call
15839         to g_main_pending() as well.
15840
15841 Wed Jul  7 14:59:01 1999  Owen Taylor  <otaylor@redhat.com>
15842
15843         * gtk/gtkmain.c (gtk_main_iteration): Unlock around
15844         call to g_main_iteration() - since that will regrab
15845         GTK+ lock to process events.
15846
15847 Thu Jul  1 15:01:55 1999  Owen Taylor  <otaylor@redhat.com>
15848
15849         * gtk/gtkwindow.c
15850         - Regularize with the rest of GTK+ by making widget->requisition
15851           not reflect the set_usize()
15852         - Always recompute geometry hints, then check if they
15853           changed before sending them to the X server. The
15854           previous checks for changes would fail in a number
15855           of circumstances. 
15856
15857 Thu Jul  1 11:55:59 1999  Owen Taylor  <otaylor@redhat.com>
15858
15859         * gtk/gtkstyle.c: Include <stdlib.h> for strcmp().
15860
15861 Wed Jun 30 19:26:36 1999  Owen Taylor  <otaylor@redhat.com>
15862
15863         * gtk/gtkdnd.c:
15864         - Code cleanups
15865         - Instantaneously update on modifier key presses
15866         - Allow cancellation of the drag with Escape.
15867
15868 Tue Jun 29 17:04:09 1999  Owen Taylor  <otaylor@redhat.com>
15869
15870         * gtk/testgtk.c (create_handle_box): Set the policy
15871         to auto_shrink - otherwise the appearance is rather
15872         strange when flipping between horizontal and vertical.
15873
15874 Mon Jun 28 09:29:52 1999  Tim Janik  <timj@gtk.org>
15875
15876         * gtk/gtkwindow.c: add ::default_width and ::default_height arguments.
15877         (gtk_window_set_default_size): don't change a value if it's < 0.
15878         queue a resize.
15879
15880 Sun Jun 27 11:00:33 1999  Tim Janik  <timj@gtk.org>
15881
15882         * gtk/gtktext.c (gtk_text_insert): don't segfault on NULL inserts.
15883
15884 Mon Jun 28 12:08:25 1999  Owen Taylor  <otaylor@redhat.com>
15885
15886         * gtk/gtkfilesel.c (cmpl_completion_fullname): Don't
15887         add an extra "/" when concating "/" + filename.
15888         (From Matt Grossman <mattg@oz.net>)
15889
15890 Mon Jun 28 10:57:12 1999  Owen Taylor  <otaylor@redhat.com>
15891
15892         * gtk/gtkctree.c (draw_cell_pixmap): Reset clip mask
15893         for fg_gc if we set it for drawing pixmap.
15894
15895 Tue Jun 15 12:45:12 1999  Owen Taylor  <otaylor@redhat.com>
15896
15897         Fixes from Peter Wainwright <prw@wainpr.demon.co.uk>
15898         
15899         * gtk/gtkrc.c (gtk_rc_parse_engine): If rc_style->engine is
15900         already set, call old engine's destroy function and
15901         unref the old engine.
15902
15903 Thu Jun 10 17:59:38 1999  Tim Janik  <timj@gtk.org>
15904
15905         * gtk/gtkdrawingarea.c (gtk_drawing_area_size): queue a resize.
15906
15907 Wed Jun  9 15:13:16 1999  Tim Janik  <timj@gtk.org>
15908
15909         * gtk/gtkaccelgroup.h: mark certain functions as internal.
15910
15911 Wed Jun  9 13:48:28 1999  Tim Janik  <timj@gtk.org>
15912
15913         * gtk/gtkpreview.c (gtk_preview_set_expand): queue a resize if the
15914         expand behaviour changed.
15915
15916         * gtk/gtklabel.c (gtk_label_set_pattern):
15917         (gtk_label_set_justify):
15918         (gtk_label_set_line_wrap):
15919         don't bother invoking queue_clear, the reallocation does
15920         that for us, always free_words so the upcoming resize will
15921         relayout the label's contents.
15922
15923 Wed Jun  9 12:50:48 1999  Tim Janik  <timj@gtk.org>
15924
15925         * applied argument implementation patches from Elena Devdariani
15926         <elena@cogent.ca>.
15927
15928         * gtk/gtktoolbar.c: ::orientation, ::toolbar_style, ::space_size,
15929         ::space_style, ::relief
15930         * gtk/gtkruler.c: ::lower, ::upper, ::position, ::max_size
15931         * gtk/gtkpreview.c: ::expand
15932         * gtk/gtkpaned.c: ::handle_size, ::gutter_size
15933         * gtk/gtknotebook.c: ::homogeneous
15934         * gtk/gtklabel.c: ::wrap
15935         * gtk/gtklist.c: ::selection_mode
15936         * gtk/gtkhandlebox.c: ::handle_position, ::snap_edge
15937         * gtk/gtkcurve.c: ::curve_type, ::min_x, ::max_x, ::min_y, ::max_y
15938         * gtk/gtkcolorsel.c: ::update_policy, ::use_opacity
15939         * gtk/gtkclist.c: ::sort_type
15940         * gtk/gtkcheckmenuitem.c: ::active, ::show_toggle
15941         * gtk/gtkaspectframe.c: ::xalign, ::yalign, ::ratio, ::obey_child
15942
15943 Tue Jun  1 23:38:38 1999  Owen Taylor  <otaylor@redhat.com>
15944
15945         * gtk/gtkstyle.c: Removed ill-thought-out part of last
15946         comment.
15947
15948 Tue Jun  1 23:30:09 1999  Owen Taylor  <otaylor@redhat.com>
15949
15950         * gtk/gtkstyle.c (gtk_style_attach): Get the reference
15951         counting right when we have to attach a new style
15952         for a different visual. (Chi-Deok Hwang <cdhwang@sr.hei.co.kr>)
15953
15954         * gtk/gtkstyle.c: Documented the refcounting
15955         peculularities of gtk_style_attach.
15956
15957 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
15958
15959         * gtk/gtkwindow.c (gtk_window_new): added return if fail for invalid
15960         window types.
15961
15962         * examples/packer/pack.c (main): use GTK_WINDOW_TOPLEVEL instead
15963         of GTK_TOPLEVEL for creating the window.
15964
15965 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
15966
15967         * gtk/gtkmain.c (gtk_init_check): don't segfault when --gtk-module is
15968         the last argument (reported by Per Winkvist).
15969         
15970 Tue May 25 13:13:12 1999  Owen Taylor  <otaylor@redhat.com>
15971
15972         Fixes for invisible XOR lines (Frank Loemker
15973         <floemker@TechFak.Uni-Bielefeld.DE>)
15974         
15975         * gtk/gtkclist.c (gtk_clist_realize): Always use
15976         a non-zero pixel for GDK_XOR.
15977
15978         * gtk/gtkvpaned.c gtk/gtkhpaned.c: 
15979         Use GDK_INVERT instead of GDK_XOR.
15980
15981 Wed May 12 21:56:40 1999  Lars Hamann  <lars@gtk.org>
15982
15983         * gtk/gtkclist.c (adjust_adjustments): signal emit value_changed
15984         signals if h/voffsets differ from adjustment values.
15985         Reportet by Jerome Bolliet <bolliet@in2p3.fr>
15986
15987 Mon May 10 04:20:41 1999  Tim Janik  <timj@gtk.org>
15988
15989         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): propagate
15990         ::selection-done emissions up to the topmost menu shell.
15991
15992 Fri May  7 10:15:14 1999  Owen Taylor  <otaylor@redhat.com>
15993
15994         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): Unset
15995         the user data on the window before destroying it.
15996
15997         * gtk/gtknotebook.c (gtk_notebook_unrealize): Add an
15998         unrealize handler to take care of destroying 
15999         notebook->panel properly. 
16000         (Bug #1198 - Morten Welinder <terra@diku.dk>)
16001
16002         * gtk/gtktext.c (expand_scratch_buffer): Fix reversal
16003         of g_new and g_realloc to stop memory leak. (Actually,
16004         we could just use g_realloc(), but I'm not 100% sure
16005         that is portable).
16006         (Bug #1196 - Morten Welinder <terra@diku.dk>)
16007
16008 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
16009
16010         * gtk/gtkplug.h: Removed stray GtkPlugButton declaration.
16011
16012         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
16013         for fontsets.
16014
16015         * gtk/gtkbutton.c (gtkbutton_expose): Fix warning
16016         with bin/button confusion.
16017
16018 Thu May  6 04:53:26 1999  Tim Janik  <timj@gtk.org>
16019
16020         * gtk/testgtk.c: in the ItemFactory test, link radio items together,
16021         and show how preselection of radio items is done.
16022
16023 Sun May  2 13:31:14 1999  Tim Janik  <timj@gtk.org>
16024
16025         * gtk/gtktreeitem.c (gtk_tree_item_set_subtree): 
16026         * gtk/gtktree.c (gtk_tree_add) (gtk_tree_insert):
16027         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): 
16028         * gtk/gtkpaned.c (gtk_paned_pack2) (gtk_paned_pack1):
16029         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_add): 
16030         * gtk/gtktable.c (gtk_table_attach): 
16031         * gtk/gtklist.c (gtk_list_insert_items): 
16032         * gtk/gtkmenushell.c (gtk_menu_shell_insert): 
16033         * gtk/gtknotebook.c (gtk_notebook_insert_page_menu): 
16034         * gtk/gtkpacker.c (gtk_packer_add_defaults) (gtk_packer_add): 
16035         * gtk/gtkbin.c (gtk_bin_add): 
16036         * gtk/gtkbox.c (gtk_box_pack_start) (gtk_box_pack_end): 
16037         * gtk/gtkfixed.c (gtk_fixed_put): 
16038         * gtk/gtklayout.c (gtk_layout_put):
16039         general fixups to container_add logic. always realize child if
16040         child->parent is realized, only map the child and queue a resize
16041         if child and child->parent are both visible.
16042
16043 Fri Apr 30 09:02:28 1999  Tim Janik  <timj@gtk.org>
16044
16045         * gtk/gtkwidget.c (gtk_widget_real_unrealize): use gtk_container_forall
16046         instead of gtk_container_foreach to walk and unrealize children, so
16047         composite children get also unrealized.
16048         (gtk_widget_real_show): don't call gtk_widget_map() if we don't need to.
16049         (gtk_widget_map): assert that the widget is visible (basic constrain).
16050         (gtk_widget_real_map): assert that the widget is realized (basic
16051         constrain).
16052
16053 Fri Apr 29 00:53:20 1999  Tim Janik  <timj@gtk.org>
16054
16055         * gtk/gtkbindings.c (gtk_pattern_spec_init): plugged a memory leak.
16056
16057 Tue May  4 09:32:08 1999  Owen Taylor  <otaylor@redhat.com>
16058
16059         * gtk/Makefile.am gtk/gtkrc.iso-8859-2: Add a gtkrc
16060         file for iso-8859-2 locales.
16061
16062         * configure.in (ALL_LINGUAS): ALL_LINGUAS update.
16063
16064 Tue Apr 27 16:38:32 1999  Owen Taylor  <otaylor@redhat.com>
16065
16066         * gtk/Makefile.am: Fix typo of static_sources for static_SOURCES.
16067          (Pointed out by andy@rz.uni-karlsruhe.de and others).
16068          Remove some suspicious and useless lines. 
16069
16070 Tue May  4 08:44:08 1999  Owen Taylor  <otaylor@redhat.com>
16071
16072         * gtk/gtkclist.c (gtk_clist_draw, draw_rows): Use 
16073         width,height = 0, 0 to mean - here to edge of window,
16074         instead of -1, -1, since the former is all we support.
16075
16076 Tue May  4 08:34:43 1999  Owen Taylor  <otaylor@redhat.com>
16077
16078         * gtk/gtkmain.c (gtk_main): Correctly free list nodes
16079         when removing from quit_functions list.
16080
16081 Tue Apr 27 14:17:16 1999  Tim Janik  <timj@gtk.org>
16082
16083         * gtk/gtkpacker.c (gtk_packer_size_request): remove unused variable.
16084
16085 Tue Apr 27 18:23:35 1999  Owen Taylor  <otaylor@redhat.com>
16086
16087         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): 
16088          When redrawing characters on non-visible entry, use appropriate
16089          '*' character. (Bug #1130 - Jean-Marc Jacquet <jm@littleigloo.org>)
16090
16091 Tue Apr 27 01:31:40 1999  Lars Hamann  <lars@gtk.org>
16092
16093         * gtk/gtkclist.c (drag_dest_cell): compute destination cell
16094         from drag coordinates.
16095         (gtk_clist_drag_data_received) (gtk_clist_drag_motion):
16096         use drag_dest_cell.
16097
16098         * gtk/gtktree (drag_dest_cell)
16099         (gtk_ctree_drag_data_received) (gtk_ctree_drag_motion): likewise.
16100         (Bug #1129)
16101
16102 Wed Apr 21 21:26:11 1999  Tim Janik  <timj@gtk.org>
16103
16104         * gtk/gtkitemfactory.c (gtk_item_factory_init): properly initialize
16105         translate_* fields.
16106         (gtk_item_factory_finalize): invoke translate_notify independant from
16107         translate_data.
16108         (gtk_item_factory_set_translate_func): likewise.
16109         (gtk_item_factory_destroy): only remove ifactory pointer from those
16110         widgets that belong to us (stupid me).
16111
16112 Mon Apr 19 12:05:31 1999  Owen Taylor  <otaylor@redhat.com>
16113
16114         * gtk/gtkrc.c (gtk_rc_style_init): Fixed leak of
16115         rc_style list when lookup succeeeds.
16116
16117 Thu Apr 15 01:11:24 1999  Lars Hamann  <lars@gtk.org>
16118
16119         * gtk/gtkctree.c (resync_selection): 
16120         * gtk/gtkclist.c (resync_selection): fixed undo_selection bug.
16121         * gtk/gtkclist.c (gtk_clist_button_release): fixed resync_selection
16122         bug.
16123
16124 Fri Apr  9 19:22:19 1999  Owen Taylor  <otaylor@redhat.com>
16125
16126         * gtk/gtkcolorsel.c gtk/gtkdnd.c gtk/gtkmenuitem.c:
16127         Add some missing GDK_THREADS_ENTER()/LEAVE around
16128         timeouts. (Patches from Sebastian Wilhelmi <wilhelmi@ira.uka.de>)
16129
16130 Thu Apr  8 20:10:33 1999  Tim Janik  <timj@gtk.org>
16131
16132         * gtk/gtkentry.c (gtk_entry_key_press): use gtk_widget_activate()
16133         rather than emit_by_name.
16134
16135         * gtk/gtkeditable.c (gtk_editable_insert_text): keep a reference
16136         on the widget across multiple signal emissions.
16137         (gtk_editable_delete_text): same here.
16138         (gtk_editable_class_init): set widget_class->activate_signal after
16139         editable_signals[ACTIVATE] has been created.
16140
16141 Wed Apr  7 22:59:47 1999  Owen Taylor  <otaylor@redhat.com>
16142
16143         * gtk/gtkpaned.c (gtk_paned_set_position): Don't clamp
16144         position here prematurely -- we might not have the
16145         right ->min_position and ->max_position yet.
16146
16147 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
16148
16149         * gtk/gtkselection.c gdk/gdkselection.c: (gtk_selection_request):
16150         Add error traps so if the other end of the connection
16151         dies, we survive.
16152
16153         * gtk/gtkselection.c (gtk_selection_notify): Clean
16154         up properly when selection property retrieval fails.
16155         
16156         * gtk/gtkselection.c (gtk_selection_request): Correctly
16157         reject SelectionRequest notifies where the handler
16158         returns no data.
16159
16160 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
16161
16162         * gtk/gtkdnd.c (gtk_drag_dest_leave): Only unhighlight
16163         when we've previously highlighted.
16164
16165         * gtk/gtkdnd.c (gtk_drag_dest_handle_event): Don't
16166         emit two "drag_leave" signals for Motif drops.
16167
16168         * gtk/gtkdnd.c (gtk_drag_source_handle_event): Send
16169         back the correct status messages when dropping from
16170         Motif onto a proxy window that is rejecting the
16171         drop.
16172
16173 Sat Mar 27 23:32:13 1999  Tim Janik  <timj@gtk.org>
16174
16175         * gtk/gtkarg.[hc]: added functions from GLE, gtk_arg_reset() to free
16176         the value and reset type to GTK_TYPE_INVALID, and gtk_arg_values_equal()
16177         to compare two argument values. added gtk_arg_to_valueloc() to set a
16178         variable from an arg through its location (pointer).
16179
16180         * gtk/gtkobject.[hc]: implemented gtk_object_get() in terms of
16181         gtk_object_arg_get() and gtk_arg_to_valueloc(), floats are collected
16182         as gfloat*, uchars are collected as guchar*, ints are collected as
16183         gint*, etc...
16184
16185 Mon Mar 29 17:45:47 1999  Owen Taylor  <otaylor@redhat.com>
16186
16187         * gtk/gtkaccelgroup.c gtk/gtkgtkbindings.c:
16188         Include <string.h> instead of <strings.h>.
16189
16190         * gtk/gtkstyle.c: Fix double include of gtkthemes.h
16191         (actually, a lot more duplicate includes occur if
16192          you trace through the sequence of #include's)
16193         gtk-jbb-990320-0: John Bley, jbb6@acpub.duke.edu
16194         
16195 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
16196
16197         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
16198         gtk-a-higuti-990322-[0-3]
16199
16200         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
16201         that was causing -DX_LOCALE not to work.
16202
16203         * gtk/gtkrc.c (gtk_rc_init):
16204         X_LOCALE will never have LC_MESSAGES defined
16205
16206 Thu Mar 25 12:38:31 1999  Tim Janik  <timj@gtk.org>
16207
16208         * gtk/gtkrc.c (gtk_rc_append_default_module_path): get $HOME from
16209         g_get_home_dir() (gtk-pmc-990123-0.patch.gz).
16210
16211         * gtk/gtkwindow.c (gtk_window_key_press_event): feature keypad up/down/
16212         left/right as well (gtk-michael-980726-0.patch.gz).
16213
16214         * gtk/gtklabel.[hc]: bunch of miscellaneous cleanups, such as s/0/NULL/
16215         for pointer values, use gchar instead of char. fixed uline allocation
16216         leaks, changed the allocation pattern so we use G_ALLOC_AND_FREE mem
16217         chunks instead of G_ALLOC_ONLY.
16218         (gtk_label_size_request): always alter requisition as passed and leave
16219         widget->requisition alone.
16220         (gtk_label_set_text): allow NULL strings.
16221         (gtk_label_new): likewise.
16222
16223 Wed Mar 24 09:24:03 1999  Tim Janik  <timj@gtk.org>
16224
16225         * gtk/gtkdrawingarea.[hc]: type/macro fixups.
16226
16227 Mon Mar 22 05:51:34 1999  Tim Janik  <timj@gtk.org>
16228
16229         * gtk/gtkbin.c (gtk_bin_draw): only redraw children that are visible
16230         *and* mapped (i.e. drawable).
16231         (gtk_bin_expose): only send exposes to drawable children.
16232
16233         * gtk/gtkbox.c (gtk_box_draw): only redraw children that are drawable.
16234         (gtk_box_expose): only send exposes to drawable children.
16235
16236         * gtk/gtkhscale.c (gtk_hscale_draw): 
16237         * gtk/gtkvscale.c (gtk_vscale_draw):
16238         hm, this is an ugly one. we first compute the size of our trough area
16239         here (window relative) and then check intersection with the draw_area
16240         which is parent relative because we're a NO_WINDOW widget, so we need
16241         to offset the trough area by allocation.x and allocation.y before the
16242         check. (this must not be done for the background area though, since
16243         that's already computed parent relative).
16244
16245 Mon Mar 22 00:41:39 1999  Lars Hamann  <lars@gtk.org>
16246
16247         * gtk/gtkclist.c (gtk_clist_unrealize): unmap clist if neccessary,
16248         unrealize title buttons.
16249
16250 Fri Mar 19 00:00:22 1999  Lars Hamann  <lars@gtk.org>
16251
16252         * gtk/gtkclist.c (gtk_clist_column_title_passive)
16253         (gtk_clist_column_title_active): 
16254         only connect/disconnect to GtkWidgetClass::event to block mouse events.
16255
16256         * gtk/gtkclist.c (vertical_timeout) (horizontal_timeout): 
16257         zero initialize event, removed superfluous gdk_window_get_pointer call
16258
16259         * gtk/gtklist.c (gtk_list_vertical_timeout)
16260         (gtk_list_horizontal_timeout): removed superfluous
16261         gdk_window_get_pointer call
16262
16263 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
16264
16265         * plugging problems reported by "Bruce Mitchener, Jr."
16266         <bruce@puremagic.com> due to a purify session.
16267
16268         * gtk/gtkstyle.c:
16269         (gtk_style_ref): 
16270         (gtk_style_unref): assert ref_count to be > 0.
16271
16272         * gtk/gtkclist.c (gtk_clist_set_cell_style): { 0 } initilaize
16273         the requisition.
16274         (gtk_clist_set_shift): likewise.
16275
16276         * gtk/gtklayout.c: introduce gtk_layout_finalize() to unref the
16277         adjustments.
16278
16279         * gtk/gtklist.c (gtk_list_horizontal_timeout): zero initialize the
16280         event before sending it and set send_event to TRUE (which needs to
16281         be done for *all* synthesized events).
16282         (gtk_list_vertical_timeout): likewise.
16283
16284         * gtk/gtktipsquery.c (gtk_tips_query_destroy): plug small memory
16285         leaks.
16286
16287         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set send_event
16288         to TRUE when synthesizing events.
16289
16290 [ *** end of merges from 1.2 *** ]      
16291         
16292 1999-11-21  Tor Lillqvist  <tml@iki.fi>
16293
16294         * gdk/gdkconfig.h: Remove, as this is a file generated by configure
16295         (or copied from gdkconfig.h.win32 on Win32, sigh).
16296
16297         * gdk/gdkprivate.h: Mark gdk_parent_root for export from DLL.
16298
16299         * gdk/gdk.c (gdk_keyval_convert_case): Fix typo.
16300
16301         * gdk/gdkgc.c (gdk_gc_alloc): Remove duplicated line.
16302
16303         * gdk/gdkconfig.h.win32: New file.
16304
16305         * gdk/win32/makefile.cygwin: Build just a static archive here.
16306
16307         * gdk/makefile.cygwin: New file. Get the win32-specific stuff
16308         for the DLL from the static archive built above.
16309
16310         * gdk/gdk.def: Moved here from the win32 subdirectory.
16311
16312         * gdk/win32/*: Adapt for the changed private struct organisation.
16313
16314         * gtk/makefile.{cygwin,msc}: Get gdk library from ../gdk now.
16315
16316 Sun Nov 21 16:44:35 1999  Stefan Jeske  <stefan@gtk.org>
16317
16318         * gtk/gtkspinbutton.c (gtk_spin_button_button_press): Added support 
16319         for wheel mice (buttons 4 and 5).
16320
16321 1999-11-18  Tor Lillqvist  <tml@iki.fi>
16322
16323         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Also for truecolor
16324         drawables use just the pixel field in the foreground and
16325         background GdkColor of the GdkGC.
16326
16327         gdk_gc_set_{fore,back}ground() are called in the GIMP with
16328         GdkColors containing uninitialized (red,green,blue) fields, and
16329         just the pixel field filled in, and furthermore in the
16330         visual-dependent format as returned by gdk_rgb_xpixel_from_rgb().
16331         It thus turns out that we really don't need to have the full
16332         GdkColor for fg and bg in GdkGCWin32Data after all. Will change
16333         it later to have just the pixel values.
16334
16335 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
16336
16337         * docs/gtkfaq.sgml: s/gtk_main_iteration/g_main_iteration/
16338
16339 Sat Nov 13 22:30:29 GMT 1999 Tony Gale  <gale@gtk.org>
16340
16341         * docs/gtkfaq.sgml: threads example from Erik Mouw.
16342         New question on GtkLabel background colors.
16343
16344         * docs/gtk_tut.sgml:
16345           - Correct the example code callback
16346             function definitions.
16347           - Update the gtkdial example code, from Frans van Schaik.
16348           - Update setselection.c to current API.
16349
16350         * examples/Makefile examples/*/*.c: Update to code
16351         listed in tutorial.
16352
16353 1999-11-10  Tor Lillqvist  <tml@iki.fi>
16354
16355         * gdk/win32/gdkfont-win32.c: Fix a couple of bugs. The Unicode
16356         subrange table (from the "Developing International Software for
16357         WIndows 95 and Windows NT" book) was missing the Hangul syllable
16358         block... Get the loaded font's charset correctly.
16359
16360         (Note that this, and the other *-win32.c files, still really are
16361         the old ones, the win32 subdirectory is not ready for compilation
16362         yet after the reorg.)
16363
16364 Wed Nov 10 17:26:49 GMT 1999 Tony Gale  <gale@gtk.org>
16365
16366         * gtk/gtkclist.c: Fix off-by-one bug in parameter
16367         check.
16368
16369 Wed Nov 10 12:12:03 1999  Owen Taylor  <otaylor@redhat.com>
16370
16371         * gdk/x11/gdkinput-{x11,xfree}.c: Call XFreeDeviceState()
16372         on results of XQueryDeviceState().
16373
16374 Mon Nov  8 16:40:43 1999  Owen Taylor  <otaylor@redhat.com>
16375
16376         * gtk/gtkwidget.c: Substitute gdkx.h => gdkprivate.h since
16377         we need to accesss only ->children. We need an accessor
16378         for the children.
16379
16380         * gtk/gtkhandlebox.c gtk/testgtk.c: Substitute G
16381         DK_ROOT_PARENT() => NULL, in call to gtk_window_get_pointer()
16382         to get rid of gdkx.h include.
16383         
16384         * gtk/gtkctree.c: Get rid of #include <gdk/gdkx.h>
16385         and random references to 'None'.
16386
16387         * gtk/gtkclist.c gtk/gtkeditable.c gtk/gtkpreview.c
16388         Get rid of unused #include <gdk/gdkx.h>
16389
16390         * gtk/gtkrc.c gtk/gtkmain.c: Get rid of #include <gdk/gdkx.h>
16391         gdkx.h is _X_ specific stuff. GDK_WINDOWING comes from
16392         gdkconfig.h.
16393
16394 1999-11-08  Tor Lillqvist  <tml@iki.fi>
16395
16396         * gdk/win32/gdkdraw.c
16397         * gdk/win32/gdkfont.c
16398         * gdk/win32/gdkgc.c: Various minor cleanups and bugfixes
16399         following yesterday's changes. (Unrelated to Owen's reorg.)
16400
16401 Mon Nov  8 16:18:25 1999  Owen Taylor  <otaylor@redhat.com>
16402
16403         * gdk/x11/gdkinput-gxi.c: Add missing include,
16404           fix GdkWindowPrivate => GdkDrawablePrivate.
16405
16406         * gdk/x11/gdkinputprivate.h: include <X11/Xlib.h>.
16407
16408         * gdk/x11/Makefile.am (xinput_sources): Add missing
16409         backslash to fix building with --with-xinput=none
16410
16411 Mon Nov  8 14:47:04 1999  Owen Taylor  <otaylor@redhat.com>
16412
16413         Move all X specific code into the x11/ directory.
16414         Aside from shuffling things around, did the following:
16415
16416        * gdk/gdkprivate.h gdk/gdk.h gdk/x11/gdkmain-x11.h: Add
16417          gdk_arg_context_* - a simple argument parsing system
16418          in the style of popt.
16419
16420        * gdk/gdkdrawable.[ch] gdk/gdkprivate.h gdk/gdkwindow.[ch]
16421          gdk/x11/gdkprivate-x11.h:
16422          Remove X specific stuff from GdkDrawable and GdkWindowPrivate - 
16423          add ->klass and ->klass_data fields. The klass_data
16424          field points to an auxilliary structure that is
16425          windowing system dependent.
16426
16427        * gdk/gdkfont.c: Make most of the measurement functions
16428          simply wrappers around gdk_text_extents().
16429
16430        * gdk/gdkfont.c gdk/gdkprivate.h gdk/x11/gdkfont-x11.c: Add a 
16431          _gdk_font_strlen() function that hides the weird
16432          behavior in gtk+-1.[02] where a string is interpreted
16433          differently for 8-bit and 16-bit fonts.
16434
16435        * gdk/gdkevents.c: Add a new function gdk_event_button_generate()
16436          to store common code for synthesizing double/triple
16437          press events.
16438         
16439        * gdk/gdkgc.[ch]: Virtualize in the same way as gdkdrawable.h.
16440          Make all the function that modify an existing GC
16441          simply wrappers around gdk_gc_set_values().
16442          
16443        * gdk/gdkcc.[ch]: Moved into x11/ directory in preparation
16444          for throwing out later.
16445
16446        * gdk/gdkfont.c gdk/gdkimage.c gdk/gdkcolor.c: Change GdkFontPrivate,
16447          GdkImagePrivate and GdkColormapPrivate to have a
16448          windowing system dependent part (GdkFontPrivateX etc.)
16449          that "derives" from the system-independent part.
16450
16451        * configure.in gdk/x11/Makefile.in gdk/x11/gdkinput*.c:
16452          Got rid of the included-source-files for XInput in
16453          favor of automake conditionals. (Which didn't exist
16454          when XInput support was originally added.)
16455
16456        * gdk/gdkrgb.c: Remove the visual id from the debugging
16457          statements since that is X11 specific; print out
16458          type/depth info instead.
16459          
16460
16461 Wed Nov  3 18:14:49 1999  Owen Taylor  <otaylor@redhat.com>
16462
16463         * gdk/x11/gdkfont-x11.c (gdk_font_load): Ref fonts when
16464         loading duplicates of hashed fonts.
16465
16466         * gdk/gdk.c (gdk_keysym_convert_case): rename
16467         gdk_XConvertCase to gdk_keysym_convert_case, allow
16468         results to be NULL in the GTK+ style.
16469
16470         * gdk/gdkcompat.h: Started compatibility header
16471         for renames.
16472
16473 1999-11-07  Tor Lillqvist  <tml@iki.fi>
16474
16475         * gdk/win32/gdkprivate.h: New font private structures, related to
16476         fontsets.
16477
16478         * gdk/win32/gdkfont.c: New functions gdk_font_list_new() and
16479         gdk_font_list_free(). On X11, will just be wrappers to
16480         XListFonts() and XFreeFontNames(). On Win32, the code previously
16481         in gtkfontsel.c is now here.
16482
16483         New function gdk_font_xlfd_create(). On X11 will get the FONT
16484         property of the font (for GDK_FONT_FONTs), or call
16485         XBaseFontNameListOfFontSet (for GDK_FONT_FONTSETs), on Win32
16486         builds a XLFD style name from the font information in the LOGFONT
16487         struct(s).
16488
16489         New function gdk_font_xlfd_free(), which correspondingly frees the
16490         string returned by gdk_font_xlfd_create().
16491
16492         Implement fontsets on Win32. Add a function that iterates over a
16493         wide char string and calls a callback function for each substring
16494         of wide chars from the same Unicode subrange (and thus probably
16495         available in the same real font).
16496
16497         Improve the XLFD emulation a bit.
16498
16499         * gdk/win32/gdkim.c (gdk_nmbstowchar_ts): Small bugfix.
16500
16501         * gdk/win32/gdkevents.c: Workaround for suspected bug on Win2k
16502         Beta3, WM_IME_CHAR messages don't seem to contain the composed
16503         multi-byte char as with the Active IMM on Win9x. Oh well, handle
16504         WM_IME_COMPOSITION with GCS_RESULTSTR instead, use
16505         ImmGetCompositionStringW() to get the composed Unicode chars.
16506
16507         * gdk/win32/gdkgc.c
16508         * gdk/win32/gdkdraw.c: Changes needed because of the font private
16509         struct changes.
16510
16511         * gdk/win32/gdk.def: Add the new functions.
16512
16513 1999-11-04  Tor Lillqvist  <tml@iki.fi>
16514
16515         * config.h.win32: Don't define HAVE_DIMM_H if MSC, as you have to
16516         get the Platform SDK to get <dimm.h>.
16517
16518         * gdk/win32/gdkevents.c: More event handling fixes and
16519         simplification. Never generate motion events with is_hint true. We
16520         used to do that on bogus grounds earlier. Windows sends
16521         WM_MOUSEMOVE messages on button events even if the mouse hasn't
16522         moved, ignore these.
16523
16524         * gdk/win32/gdkfont.c: Load all fonts as (pretended) fontsets.
16525
16526         * gdk/win32/gdkglobals.c
16527         * gdk/win32/gdkprivate.h: Define a typedef for the pointer to
16528         the TrackMouseEvent function, and use it.
16529
16530         * gdk/win32/gdkwindow.c: Terminate widechar string with a zero
16531         char before calling WideCharToMultiByte in order to get a string
16532         for the window title.
16533
16534         * gdk/win32/gdkdnd.c: Some more random hacking, ifdeffed out.
16535
16536         * gdk/win32/gdk.def: Remove obsolete functions.
16537
16538         * gdk/win32/makefile.{cygwin,msc}: Remove gdkcompat.{o,obj}. Add
16539         /nodefaultlib and /defaultlib switches.
16540
16541         * gtk/gtkrc.c: s/gwin_getlocale/g_win32_getlocale/.
16542
16543 1999-10-31  Tor Lillqvist  <tml@iki.fi>
16544
16545         * gdk/gdkkeysyms.h: Add new keysyms from X11R6.4 (including
16546         EuroSign).
16547
16548         * gdk/gdktypes.h: Add note about wchar_t not necessarily being the
16549         same type as GdkWChar, especially on Win32.
16550
16551         * gdk/win32/*.c: Change gdk_root_parent to be a pointer.
16552
16553         * gdk/win32/*.c: Assume all strings are UTF-8. Convert to Unicode
16554         before passing to Windows GDI for drawing etc. Convert to the
16555         system default codepage before passing to Windows as window
16556         titles.
16557
16558         * gdk/win32/gdkprivate.h: Add more fields to GdkWindowPrivate to
16559         support changing input locale on the fly.
16560
16561         * gdk/win32/gdkevent.c: Support input language (keyboard locale)
16562         on-the-fly changes. Convert incoming characters from the current
16563         codepage to Unicode (and then to a UTF-8 multi-byte string) based
16564         on the current input language. Use keysym<->Unicode mapping tables
16565         and functions borrowed from xterm sources.
16566
16567         Support IMEs (Input Method Editors) for CJK languages. On non-CJK
16568         editions of Win9x, use the ActiveX-based Active IMM (Input Method
16569         Manager) if available. IMEs and the Active IMM are available under
16570         the disguise of Chinese, Korean and Japanese support for IE and
16571         Outlook Express from "Windows Update" for Win98. On Win2k, the CJK
16572         support is present in all editions (as long as you install it).
16573
16574         Call DispatchMessage from gdk_events_queue() (and thus
16575         gdk_WindowProc()), instead of duplicating the code in
16576         gdk_WindowProc().
16577
16578         Reworked the grab handling and propagation code, factored out
16579         duplicated code snippets into separate functions. Other cleanups,
16580         too.
16581
16582         * gdk/win32/surrogate-dimm.h: Provide just the bits we need from
16583         the <dimm.h> header describing the Active IMM.
16584
16585         * gdk/win32/gdkfont.c: Pretend to support fontsets, but so far
16586         just do the same as for "single" fonts.
16587
16588         * gdk/win32/gdk.c: Call CoInitialize() (COM initialisation) from
16589         gdk_init_check, and CoUninitialize() from gdk_exit_func. Handle
16590         the new keysyms from gdkkeysyms.h.
16591
16592         * gtk/gtkfontsel.c (Win32): Load the font for the preview as a
16593         fontset, so that gtkentry uses wide characters.
16594
16595         * gtk/gtkrc.c (Win32): Get the locale with gwin_getlocale(). Call
16596         GTk+'s system directory "gtk+", not "gtk".
16597
16598 Sat Oct 30 13:17:18 BST 1999 Tony Gale <gale@gtk.org>
16599
16600         * docs/gtkfaq.sgml: FAQ update
16601
16602 1999-10-21  Tor Lillqvist  <tml@iki.fi>
16603
16604         * gdk/win32/gdkprivate.h: Add more font private data.
16605
16606         * gdk/win32/gdkfont.c
16607         * gdk/win32/gdkdraw.c: Revamped handling of multi-byte charset
16608         fonts and strings. Now works much better. You still have to
16609         have a correct font selected, though. No fontset emulation yet.
16610
16611 1999-10-19  Tor Lillqvist  <tml@iki.fi>
16612
16613         * gtk/maketypes.awk: Use G_OS_WIN32.
16614
16615         * gtk/gtk.def: Add some missing entry points. Also some non-public
16616         ones, but PyGTK porter claims to need them.
16617
16618         * gtk/makefile.{cygwin,msc}: Drop some unneeded headers from the
16619         built-in type generation.
16620
16621 1999-10-14  Tor Lillqvist  <tml@iki.fi>
16622
16623         * gdk/win32/gdkdraw.c (gdk_draw_text_wc): Don't use TextOutW for
16624         GDK_FONT_FONT fonts (which is all we have for now, we don't
16625         emulate fontsets). The X11 version uses plain XDrawString in that
16626         case, too. The string passed to gdk_draw_text_wc seems to be in
16627         fact (at least, when used by gtkentry and gtktext) either in a
16628         single-byte charset, or a DBCS. Not Unicode.
16629
16630         This fixes the problem in gtkfontsel, where even if you had
16631         selected a font with a non-Latin1 charset (windows-greek, for
16632         instance), the preview still used Latin-1 glyphs.
16633
16634         * gdk/win32/gdkfont.c (gdk_text_width_wc): Similar change. Don't
16635         use GetTextExtentPoint32W, use GetTextExtentPoint32A.
16636         (gdk_font_load): Recognize the demibold etc weights, even if we
16637         don't have the corresponding constants in the headers.
16638         (gdk_font_hash_insert): Use same hash mechanism as in the X11
16639         version. Should save font resources a bit, when we don't have
16640         multiple HFONTs for the same font.
16641
16642         * gdk/win32/gdkprivate.h: Add the names field as in the X11
16643         version.
16644
16645 1999-10-11  ERDI Gergo  <cactus@cactus.rulez.org>
16646
16647         * gdk/gdk.c (gdk_beep): Modified the XBell call to use the default
16648         X values
16649
16650 1999-10-09  ERDI Gergo  <cactus@cactus.rulez.org>
16651
16652         * gtk/gtktoolbar.h, gtk/gtktoolbar.c: Added horizontal icon/text
16653         layout support (as mentioned on
16654         http://www.jcinteractive.com/gnome-ui/software/widgets/)
16655
16656 Wed Oct  6 12:46:17 PDT 1999 Manish Singh <yosh@gimp.org>
16657
16658         * gtk/fnmatch.c
16659         * gtk/gtkfilesel.c: s/G_HAVE_CYGWIN/G_WITH_CYGWIN/
16660
16661 1999-10-05  Jesus Bravo Alvarez  <jba@pobox.com>
16662
16663         * configure.in (ALL_LINGUAS): Added Galician (gl)
16664
16665 1999-10-05  Tor Lillqvist  <tml@iki.fi>
16666
16667         * gdk/win32/*.[ch]: Corresponding changes as in X11 backend.
16668
16669         * gdk/win32/gdkcompat.c: New file, actually provide an
16670         implementation for the deprecated functions. (Just temporarily.)
16671
16672         * gtk/gtkfilesel.c: Fix an #ifdef syntax botch.
16673
16674         * gtk/makefile.{cygwin,msc}: Update gdk_headers.
16675
16676         * gdk/win32/gdk.def gtk/gtk.def: Updates.
16677
16678 1999-10-05  Kjartan Maraas  <kmaraas@online.no>
16679
16680         * configure.in: Added "uk" to ALL_LINGUAS.
16681         
16682 Mon Oct  4 11:57:11 PDT 1999 Manish Singh <yosh@gimp.org>
16683
16684         * configure.in: correct checking for BeOS check
16685
16686         * gdk/gdktypes.h
16687         * gtk/fnmatch.c
16688         * gtk/gtkfilesel.c
16689         * gtk/gtkitemfactory.c
16690         * gtk/gtkmain.[ch]
16691         * gtk/gtkrc.c: use G_OS_WIN32 and G_HAVE_CYGWIN #defines
16692
16693 Mon Oct  4 16:16:53 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
16694
16695         * gtk/gtkrc.{bg,iso88591[345]}: add gtkrc files for some new charset
16696         encodings: iso-8859-13 (for Lithuanian), iso-8859-14 (used by celtic
16697         languages), iso-8859-15 (used in Estonia) and microsoft-cp1251 (used
16698         by Bulgarian). 
16699
16700 Sun Oct  3 18:13:44 1999  Owen Taylor  <otaylor@redhat.com>
16701
16702         * gtk/gtkwidget.c (gtk_reset_shapes_recurse): 
16703         Fix a reference to window_private->destroyed.   
16704
16705         * gtk/gtkplug.c (gtk_plug_realize): Fix up a direct
16706         (ugly) setting of an internal GdkWindow member to use
16707         a _slightly_ cleaner macro.
16708
16709         * gdk/gdkprivate.h: Split GdkWindowPrivate into
16710         GdkDrawablePrivate and GdkWindowPrivate.
16711         Add extra macros for accessing GDK_DRAWABLE_ components.
16712
16713         * *.[ch]: Massive adjustments for the above, use the
16714         new macros in a lot of places.
16715
16716 Sun Oct  3 15:16:24 1999  Owen Taylor  <otaylor@redhat.com>
16717
16718         * gdk/gdktypes.h: Make GdkDrawable the base type,
16719         not GdkWindow.
16720
16721 Sun Oct  3 15:08:44 1999  Owen Taylor  <otaylor@redhat.com>
16722
16723         * gdk/gdkdraw.c (gdk_drawable_get_data): Added new function.
16724
16725 Sun Oct  3 14:26:15 1999  Owen Taylor  <otaylor@redhat.com>
16726
16727         * gdk/gxid* gdk/x11/gxid*: Move files into x11 subdirectory.
16728
16729 Sun Oct  3 14:16:23 1999  Owen Taylor  <otaylor@redhat.com>
16730
16731         * gdk/gdkdrawable.h: Include gdk/gdkdrawable.h with
16732         gdk/ prefix. (Pointed out by chak@is.tsukuba.ac.jp)
16733
16734         * configure.in gdk/Makefile.am x11/: create x-specific subdirectory.
16735
16736         * docs/gtk-config.1: Now autogenerated.
16737         * docs/Changes-1.4.txt: started
16738         
16739 1999-10-03  Tor Lillqvist  <tml@iki.fi>
16740
16741         * gdk/gdkimage.h gdk/gdkpixmap.h: Change GDK_WINDOWING_WIN32 usage
16742         to #ifdef also here.
16743
16744         * gdk/win32/*.h gdk/win32/*.c: Make corresponding changes as those
16745         Owen did to the X11 backend.
16746
16747         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Fix it again, don't use
16748         ScrollWindowEx when blitting inside a window, it can't be correct
16749         in the general case.
16750
16751         * gdk/win32/gdkevents.c: Don't handle WM_SIZING, handling
16752         WM_GETMINMAXINFO is easier.
16753
16754         * gdk/win32/gdkimage.c (gdk_image_new): Create new image with
16755         depth equal to the bitspixel value, not the visual's depth.
16756
16757         * gdk/win32/gdkvisual.c (gdk_visual_init): Set the visual's depth
16758         to 24 even if the bitspixel value is 32.
16759
16760         * gdk/gdkrgb.c (gdk_rgb_select_conv): After the above change, no
16761         need to check for depth==32 when bpp==32, depth will always be 24.
16762
16763 Fri Oct  1 18:03:36 1999  Owen Taylor  <otaylor@redhat.com>
16764
16765         * docs/Changes-1.4.txt: Started
16766         
16767         * gtk/Makefile.am (gdk_headers): Include all the new headers.
16768
16769         * gdk/*.h gdk/*.c: Split gdk.h into lots of itty-bitty little pieces.
16770         
16771         * gdk/gdkprivate.h gdk/gdkcc.c: Moved GdkColorContext private
16772         into C file.
16773         
16774         * gdkinput.h gdkinputprivate.h - renamed the internal gdkinput
16775         header to gdkinputprivate.h.
16776
16777         * gdk/gdk.h gdk/gdk.c: Removed gdk_time* functions which have been
16778         unused since before 1.2.
16779
16780 1999-09-30  Tor Lillqvist  <tml@iki.fi>
16781
16782         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): On Win32,
16783         expand possible hex escapes in the font family (put there by
16784         logfont_to_xlfd if the font name isn't a legal XLFD font family,
16785         mainly if it contains slashes). (gtk_font_selection_create_xlfd):
16786         On Win32, add hex escapes here, too.
16787
16788 Wed Sep 29 19:55:35 1999  Owen Taylor  <otaylor@redhat.com>
16789
16790         * */*.[ch]: Changed from #if GDK_WINDOWING == GDK_WINDOWING_X11
16791         to #ifdef GDK_WINDOWING_X11.
16792
16793 [ Merges from gtk-1-2 ]
16794
16795 Wed Sep  8 07:13:29 1999  Tim Janik  <timj@gtk.org>
16796
16797         * configure.in: fixed "GNU Make" check to pass with new make version
16798         3.77.95.
16799
16800 Fri Sep  3 16:04:41 1999  Tim Janik  <timj@gtk.org>
16801
16802         * gtk-config.in (--version): don't echo @GTK_VERSION@, but
16803         @GTK_MAJOR_VERSION@.@GTK_MINOR_VERSION@.@GTK_MICRO_VERSION@, so the
16804         AM_PATH_GTK() macros don't get confused by the -pre1.
16805
16806 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
16807
16808         * configure.in (REBUILD): Change check for perl5
16809           to check explicitely for v >= 5.002. (5.001
16810           does not work with our scripts.)
16811
16812 Wed Aug 25 15:45:46 1999  Tim Janik  <timj@gtk.org>
16813
16814         * configure.in: evaluate $PERL for the perl version check. added
16815         --disable-rebuilds to give the user an option to completely disable
16816         any source autogeneration rules.
16817
16818 Mon Aug 23 23:16:14 1999  Tim Janik  <timj@gtk.org>
16819
16820         * configure.in: evaluate $ac_make when checking for GNU Make.
16821
16822 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
16823
16824         * docs/Makefile.am: added generation.txt.
16825
16826         * Makefile.am: require automake 1.4, build README from README.in and
16827         INSTALL from INSTALL.in in dist-hook.
16828         
16829         * README.in:
16830         * INSTALL.in: new files to autogenerate README and INSTALL from.
16831
16832         * configure.in: figure whether we have GNU Make
16833
16834         * docs/generation.txt: minor additions/corrections.
16835
16836 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
16837
16838         * docs/gtkfaq.sgml: FAQ Update
16839
16840 July 30, 1999 Elliot Lee <sopwith@redhat.com>
16841         
16842         * configure.in: Fix autoconf warnings about cross compilation by
16843         trying to provide sane defaults for AC_TRY_RUN.
16844
16845 Fri Jul 16 22:20:21 PDT 1999 Manish Singh <yosh@gimp.org>
16846
16847         * ltconfig
16848         * ltmain.sh: upgrade to libtool 1.3.3
16849
16850 Thu Jul  8 11:30:18 1999  Owen Taylor  <otaylor@redhat.com>
16851
16852         * INSTALL: Indicate that the --with-glib= configure
16853         time flag is unsupported.
16854
16855 Mon Jul  5 20:36:03 1999  Owen Taylor  <otaylor@redhat.com>
16856
16857         * docs/generation.txt: Added a file that gives
16858         documenation about the autogeneration process for
16859         various autogenerated files.
16860         
16861 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
16862
16863         * configure.in (LIBS): Look for libgmodule in the
16864         right location.
16865
16866 Thu Jun 17 13:57:31 1999  Owen Taylor  <otaylor@redhat.com>
16867
16868         * docs/gtk_tut.sgml: Removed references to
16869         code examples in my directory on gtk.org as
16870         they should all be in the tutorial now.
16871
16872         * docs/gtk_tut.sgml: Added sources for dial-test
16873         and scribble-xinput programs that were previously
16874         missing.
16875
16876 Fri Jun  4 00:08:59 1999  Owen Taylor  <otaylor@redhat.com>
16877
16878         * TODO: Added entry about menu keyboard navigation, removed
16879         some finished items.
16880
16881 Mon May 31 00:11:24 1999  Owen Taylor  <otaylor@redhat.com>
16882
16883         * acinclude.m4: Standardize on func_dgettext
16884         not func_gettext, so that the checks for dgettext
16885         actually are paid attention to.
16886
16887 Wed May  5 10:47:54 1999  Owen Taylor  <otaylor@redhat.com>
16888
16889         * configure.in (LIBS): Add $INTLLIBS into $LIBS
16890         directly, rather than repeating the checks for
16891         gettext.
16892
16893         * INSTALL: Added information about gettext and
16894         NLS support.
16895
16896         * acinclude.m4 (LIBM): Check for dgettext, not
16897         just gettext. This should hopefully fix things wrt
16898         systems with old versions of GNU gettext installed.
16899
16900 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
16901
16902         * configure.in (LIBS): Look for libgmodule in the
16903         right location.
16904
16905 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
16906
16907         * autogen.sh: add --enable-maintainer-mode
16908
16909         * configure.in: set ACLOCAL="$ACLOCAL $ACLOCAL_FLAGS"
16910
16911 Wed Mar 24 23:03:49 CST 1999 Shawn T. Amundson <amundson@gtk.org>
16912
16913         * docs/gtk-config.1.in:
16914           docs/Makefile.am:
16915           configure.in: gtk-config is now generated.
16916
16917         * docs/gtk-config.1: Removed, now generated.
16918
16919 Thu Sep 23 17:59:59 1999  Tim Janik  <timj@gtk.org>
16920
16921         * gdk/gdkevents.c (gdk_event_translate): grr, even if Gdk doesn't
16922         handle CreateNotify itself, still put out a debuging message for
16923         --gdk-debug=events. made the ReparentNotify debugging message more
16924         verbose.
16925         wrap xcoords translation for ConfigureEvents into an error trap,
16926         a destroy event may already be pending, and in that case, the
16927         actuall coordinate values are not at all critical.
16928
16929 Sat Sep 18 22:24:15 1999  Owen Taylor  <otaylor@redhat.com>
16930
16931         * gdk/gdkcc.c: Stop leaking the color_hash all over
16932         the place. Simplify and improve the logic.
16933
16934 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
16935
16936         * gdk/gdk.h, gdk/gdkcolor.c: make return types (gint or gboolean)
16937         for prototypes and function implementations consistent (reported
16938         by Tomas Ogren).
16939
16940 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
16941
16942         * gdk/gdkevents.c (gdk_event_translate): tell if expose events have
16943         send_event set in debugging output.
16944         (gdk_compress_exposures): default initialize the event so we don't
16945         operate on bogus values (namely send_event).
16946
16947 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
16948
16949         * gdk/gdkwindow.c: When we receive an unexpected
16950         destroy notify on one of our windows, don't just
16951         warn about it, also mark our windows as destroyed.
16952
16953 Sun Sep  5 08:10:53 1999  Owen Taylor  <otaylor@redhat.com>
16954
16955         * gdk/gdkfont.c (gdk_font_hash_insert): Add
16956           name => font and name => fontset hashes. The 
16957           name => fontset hash is a _big_ win since we
16958           weren't previously caching fontsets at all and loading
16959           fontsets is expensive. The name => font hash
16960           is less of a win, but it does save us from doing
16961           repeated XQueryFont calls on the same font.
16962
16963         * gdk/gdkprivate.h (struct _GdkFontPrivate): Add a names
16964           list so we can remove font/fontset from hash.
16965
16966 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
16967
16968         * gdk/gdkproperty.c (gdk_atom_intern): Remove useless
16969           and slightly confusing test. [ XInternAtom (,,TRUE)
16970           will never return None ].
16971
16972 Sat Sep  4 08:39:26 1999  Owen Taylor  <otaylor@redhat.com>
16973
16974         * gdk/gdkwindow.c (gdk_window_set_geometry_hints)
16975           gdk/gdkwindow.c (gdk_window_set_hints):
16976
16977         Don't omit setting the properties if flags == 0 -
16978         there may be an existing set of properties there
16979         already. (Very old bug. Would it be better to
16980         delete the property instead?)
16981
16982         * gdk/gdkselection.c (gdk_selection_property_get): Fix 
16983           spelling error in comment.
16984
16985 Wed Sep  1 14:05:30 1999  Owen Taylor  <otaylor@redhat.com>
16986
16987         * gdk/gdkimage.c (gdk_image_new): Use gdk_error_trap_push()
16988           to avoid stomping over gdk_error_warnings.
16989
16990         * gdk/gdkimage.c (gdk_image_new): compute image->bpp
16991           as (bits_per_pixel + 7) / 8. This gives the same
16992           result as before for multiples of 8, but actually
16993           a "reasonable" value for 1bit or 4bit displays.
16994
16995 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
16996
16997         * gdk/Makefile.am: minor cleanups, strip spaces on build rules for
16998         GNU Make.
16999
17000 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
17001
17002         * gdk/gdkevents.c (gdk_event_translate): give a debugging note when
17003         discarding configure events.
17004
17005 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
17006
17007         * gdk/gdkpixmap.c (gdk_pixmap_unref): g_return_if_fail() the
17008         refcount is greater than zero.
17009
17010         * gdk/gdkwindow.c (gdk_window_unref): Likewise.
17011
17012         * gdk/gdkfont.c (gdk_font_unref): Likewise.
17013
17014         * gdk/gdkgc.c (gdk_gc_unref): Likewise.
17015
17016         * gdk/gdkdnd.c (gdk_drag_context_unref): Likewise.
17017
17018 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
17019
17020         * gdk/gdkproperty.c (gdk_property_get): Fix assumption
17021         that format 32 => sizeof(item) == 4. It really is
17022         sizeof(long).
17023
17024 Tue Jun 29 23:02:42 1999  Owen Taylor  <otaylor@redhat.com>
17025
17026         * gdk/gdk.c (gdk_x_error / gdk_x_io_error): Don't
17027         core dump at all on X IO errors, only core dump
17028         if --enable-debug for X errors.
17029
17030 Thu Jun 24 17:06:23 1999  Tim Janik  <timj@gtk.org>
17031
17032         * gdk/gdkevents.c (gdk_event_translate): removed old ""Got event for
17033         unknown window:" message. disabled ConfigureNotify discarding code,
17034         because it led to events being processed out of order.
17035
17036 Thu Jun 24 12:22:02 1999  Tim Janik  <timj@gtk.org>
17037
17038         * gdk/gdkglobals.c: preinitialize gdk_error_code to 0.
17039
17040         * gdk/gdkevents.c (gdk_event_send_client_message_to_all_recurse): since
17041         we export this function, supress error warnings and don't reset the
17042         error code in the first half of this function.
17043
17044         * gdk/gdk.c (gdk_x_error): set gdk_error_code to the actuall X error
17045         code (instead of just -1) so gdk_error_trap_pop() reveals something
17046         actually informative about the error that happened.
17047
17048         * gdk/*.c:
17049         don't rely on gdk_error_code being -1 if an error occoured, but just
17050         gdk_error_code != 0.
17051
17052 Thu Jun 24 11:50:07 1999  Tim Janik  <timj@gtk.org>
17053
17054         * gdk/gdkevents.c (gdk_event_apply_filters): advance the filter list
17055         pointer *before* invoking the filter function, so we at least don't
17056         crash if a filter is removed that is currently executed. window filters
17057         *really* need to be made truely reentrant at some point.
17058
17059 Mon Jun 14 11:10:15 1999  Tim Janik  <timj@gtk.org>
17060
17061         * gdk/gdkevents.c (gdk_event_translate): print the atom name in the
17062         PropertyNotify debug messages.
17063
17064 Wed May  5 22:51:06 1999  Owen Taylor  <otaylor@redhat.com>
17065         
17066         Patch from Sung-Hyun Nam <namsh@lgic.co.kr>
17067         
17068         * gdk/gdkim.c: Fix cut-and-paste errors for 
17069         x/y and PreeditAttributes/StatusAttributes.
17070
17071 Wed May  5 22:24:21 1999  Owen Taylor  <otaylor@redhat.com>
17072
17073         * gdk/gdkwindow.c (gdk_window_set_geometry_hints): Change
17074         G_MAXINT to 2^16 to alleviate overflow problems in
17075         various window managers.
17076
17077 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
17078
17079         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
17080         for fontsets.
17081
17082 Wed May  5 12:42:01 1999  Owen Taylor  <otaylor@redhat.com>
17083
17084         * gdk/gdkwindow.c (gdk_window_set_geometry_hints):
17085         Initialize size_hints.x and size_hints.y because kwm
17086         brokenly pays attention to them.
17087         (Bug #1181 -  Lars Heete <hel@admin.de>)
17088
17089 Wed May  5 11:38:56 1999  Owen Taylor  <otaylor@redhat.com>
17090
17091         * gdk/gdkrgb.c (gdk_rgb_choose_visual): Free the 
17092         return value of gdk_list_visuals(). 
17093         (Bug #1193 - Morten Welinder <terra@diku.dk>)
17094
17095 Tue May  4 11:12:56 PDT 1999 Manish Singh <yosh@gimp.org>
17096
17097         * gdk/gdkim.c (gdk_im_real_open): cast the return value of
17098         XSetIMValues to (void *) when comparing to NULL, to workaround
17099         the problem of some compilers barfing since older X headers don't
17100         have the prototype for it.
17101
17102 Mon Apr 19 10:11:12 1999  Owen Taylor  <otaylor@redhat.com>
17103
17104         * gdk/gdkcolor.c (gdk_colormap_new): Fix memory leak
17105         for pseudocolor where colormap->colors was double
17106         allocated.
17107
17108         * gdk/gdkcolor.c (gdk_colormap_alloc1): Store the
17109         color value in the hash table with the pixel filled
17110         in so when we do later hash table lookups, the color
17111         value is correct.
17112         
17113 Sun May  2 15:29:45 PDT 1999 Manish Singh <yosh@gimp.org>
17114
17115         * gdk/gdkdraw.c (gdk_draw_lines): check private->destroyed before
17116         making the call
17117
17118 Tue Apr 27 11:17:35 1999  Owen Taylor  <otaylor@redhat.com>
17119
17120         * gdk/gdkdnd.c (xdnd_set_{targets,actions}): Fix leak
17121         pointed out by Morten Welinder <terra@diku.dk>.
17122
17123 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
17124
17125         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
17126           default filter from the list
17127
17128 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
17129
17130         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
17131           default filter from the list
17132
17133 Fri Apr 16 20:41:43 PDT 1999 Manish Singh <yosh@gimp.org>
17134
17135         * gdk/gdk.c: #include "gdkkeysyms.h" for gdk_XConvertCase #defines
17136
17137         * gtk/gtkfontsel.c (gtk_font_selection_create_xlfd): use
17138         g_strdup_printf instead of calcing the length separately
17139
17140 Tue Apr 13 02:49:33 1999  Owen Taylor  <otaylor@redhat.com>
17141
17142         * gdk/gdkwindow.c: removed some silly #ifdef HAVE_CONFIG
17143         that we don't do in many other places. (Fixing duplicate 
17144         #include of config.h)
17145
17146         * gdk/gdkevents.c: include gdkinput.h _after_ config.h.
17147         Otherwise, #ifndef XINPUT_NONE check in the latter
17148         doesn't work. (Bug #546)
17149
17150 Sun Apr 11 14:38:03 1999  Tim Janik  <timj@gtk.org>
17151
17152         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): check for color
17153         "None" case insensitive.
17154
17155 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
17156
17157         * gdk/gdkselection.c: 
17158         Add error traps so if the other end of the connection
17159         dies, we survive.
17160
17161 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
17162
17163         * gdk/gdkdnd.c (gdk_drag_motion): Separate out the
17164         dest_xid field into two fields - one for the window
17165         to send in messages, one to indicate the last looked
17166         up window for caching purposes. This is needed, so
17167         that Leave messages get the correct window.
17168
17169 Mon Apr  5 13:21:30 1999  Owen Taylor  <otaylor@redhat.com>
17170
17171         * gdk/gdkevents.c (gdk_event_check, gdk_event_prepare):
17172         Fix warning created by people mucking around
17173         with the gsource API.
17174
17175         * gdk/gdkevents.c (gdk_io_invoke, gdk_input_add_full):
17176         Change mapping between GIOCondition and GdkInputCondition
17177         to match the way the Linux kernel does it. This should
17178         fix problems where closed pipes were no longer signalling
17179         GDK_INPUT_READ on systems with a native poll().
17180
17181 Mon Apr  5 17:11:57 1999  Owen Taylor  <otaylor@redhat.com>
17182
17183         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): Check 
17184         explicitly for the string "None" - it is in the XPM
17185         spec and some servers treat unknown colors in odd ways
17186         (like asking the user!)
17187
17188 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
17189
17190         * gdk/gdkevents.c: made "->" into a "." of previous change so
17191         it compiles
17192
17193 Thu Apr  1 18:41:25 1999  Owen Taylor  <otaylor@redhat.com>
17194
17195         * gdk/gdkevents.c (gdk_compress_exposures): Set the
17196         window field of the event structure before calling
17197         user filters.
17198
17199 1999-03-31  Federico Mena Quintero  <federico@nuclecu.unam.mx>
17200
17201         * gdk/gdk.c (gdk_init_check): Use False as the last argument to
17202         XInternAtom() here.  This is a particularly Old And Nasty(tm) bug.
17203
17204 Mon Mar 29 17:31:52 1999  Owen Taylor  <otaylor@redhat.com>
17205
17206         * gdk/gdkim.c (gdk_mbstowcs): Free the value of the
17207         intermediate text property - prevents major memory
17208         leak when gdk_use_mb.
17209         gtk-d3august-990311-0: Bj|rn Augustsson <d3august@dtek.chalmers.se>
17210
17211 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
17212
17213         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
17214         gtk-a-higuti-990322-[0-3]
17215
17216         * gdk/gdkfont.c (gdk_text_extents_wc): Make  work when
17217         sizeof(wchar_t) != sizeof (GdkWChar)
17218
17219         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
17220         that was causing -DX_LOCALE not to work.
17221
17222         * gtk/gtkrc.c (gtk_rc_init):
17223         X_LOCALE will never have LC_MESSAGES defined
17224
17225         * gdk/gdk.c (gdk_init_check):
17226         Remove --xim-preedit and --xim-status from argv properly.
17227
17228         * gdk/gdkim.c (gdk_ic_real_new): Add a gdk_flush() so
17229         that the client window is present on the X server
17230         before we pass it to the input method.
17231
17232 Tue Mar  9 10:46:49 1999  Owen Taylor  <otaylor@redhat.com>
17233
17234         * gdk/gdkdnd.c (motif_find_drag_window): Fix bug where
17235         if --display is specified on the command line, than
17236         the drag window will not be created on that display.
17237         
17238 Tue Mar  9 10:38:24 1999  Owen Taylor  <otaylor@redhat.com>
17239
17240         * gdk/gdkproperty.c (gdk_atom_intern): Fixed bug where
17241         lookups with only_if_exists == TRUE were inserting
17242         bogus values into the atom cache.
17243
17244 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
17245
17246         * gdk/gdkselection.c (gdk_selection_property_get): first XFree(t),
17247         then reset it to NULL.
17248
17249         * gdk/gdkcolor.c:
17250         (gdk_colors_free): 
17251         (gdk_colormap_free_colors): use colormap->colors[in_pixels[i]] as the
17252         key for g_hash_table_remove() in both functions, this prevents us
17253         from accessing possibly uninitialized portions of a GdkColor structure
17254         where we are only interested in its pixel value.
17255
17256 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
17257
17258         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
17259         font hash table, if we have a GdkFontPrivate entry for this font
17260         already, simply increment its reference count, provided by Olaf Dietsche
17261         <olaf.dietsche+list.gtk@netcologne.de>.
17262
17263 1999-09-21  Tor Lillqvist  <tml@iki.fi>
17264
17265         * gdk/win32/gdk.c (gdk_exit_func): Delete the gdk_DC when exiting,
17266         just to be sure.
17267
17268         * gdk/win32/gdkvisual.c (gdk_visual_init): Remove a couple of
17269         unused variables, leftovers from the X11 version.
17270
17271         * gdk/win32/rc/*.cur: Better cursors provided by Bernd Herd.
17272
17273         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): Only
17274         downcase fields on X11.
17275
17276 Mon Sep 20 13:17:39 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
17277         
17278         * configure.in,po/pt_BR.po: added Portuguese Brazilian file from
17279         Alex Sandro Queiroz e Silva <asandro@lcg.dc.ufc.br>
17280
17281 1999-09-17  Tor Lillqvist  <tml@iki.fi>
17282
17283         * gdk/win32/gdk.def: Add gdk_threads_mutex.
17284
17285         * gtk/makefile.msc: Correct path to libintl.
17286
17287         Thanks to Tomi Ollila and Bernd Herd: Fix some inconsistencies in
17288         use of gint vs. int, and gint vs. gboolean in headers and
17289         definitions. Use GtkType for the *_get_type functions. Note that
17290         these changes preserve binary compatibility.
17291
17292         * gdk/gdk.c
17293         * gdk/win32/gdk.c
17294         * gdk/gdk.h: Fix inconsistencies: gint vs int.
17295
17296         * gtk/gtkmain.c
17297         * gtk/gtkclist.c
17298         * gtk/gtkmenufactory.c
17299         * gtk/gtknotebook.c
17300         * gtk/gtkwidget.c: Fix inconsistencies, also gint
17301         vs. gboolean.
17302
17303         * gtk/gtkcolorsel.[ch]
17304         * gtk/gtkcombo.[ch]
17305         * gtk/gtkdrawingarea.[ch]
17306         * gtk/gtkgamma.[ch]
17307         * gtk/gtkhandlebox.[ch]
17308         * gtk/gtkhpaned.[ch]
17309         * gtk/gtkhruler.[ch]
17310         * gtk/gtkplug.[ch]
17311         * gtk/gtkpreview.[ch]
17312         * gtk/gtkruler.[ch]
17313         * gtk/gtksocket.[ch]
17314         * gtk/gtkstatusbar.[ch]
17315         * gtk/gtktoolbar.[ch]
17316         * gtk/gtkvbbox.[ch]
17317         * gtk/gtkvpaned.[ch]
17318         * gtk/gtkvruler.[ch]: Always use type GtkType for the *_get_type
17319         functions.
17320
17321         * gtk/gtkgamma.h: Fix bug, missing () in call of
17322         gtk_gamma_curve_get_type() in GTK_GAMMA_CURVE_CLASS. 
17323
17324 1999-09-14  Tor Lillqvist  <tml@iki.fi>
17325
17326         * gdk/gdkcolor.c (gdk_colormap_new)
17327         * gdk/win32/gdkcolor.c (gdk_colormap_new): Fix memory leak:
17328         colormap->colors was allocated twice.
17329
17330         * gdk/win32/gdk.c: Remove some unused stuff.
17331
17332         * gdk/win32/gdkcolor.c (gdk_colormap_sync): Initialize all of the
17333         colormap.
17334
17335         * gtk/gtkfontsel.c (gtk_font_selection_dialog_get_type)
17336         * gtk/gtklabel.h (gtk_label_get_type)
17337         * gtk/gtktipsquery.c (gtk_tips_query_get_type)
17338         * gtk/gtktypeutils.h (gtk_type_name): : Use GtkType
17339         in a couple of places, not guint.
17340
17341 Fri Sep 10 21:31:00 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
17342
17343         * configure.in,po/et.po: added Estonian language file
17344
17345 Wed Sep  1 14:36:12 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
17346
17347         * configure.in,po/da.po: added Danish file
17348
17349 Sun Aug 29 13:38:59 BST 1999 Tony Gale <gale@gtk.org>
17350
17351         * docs/gtkfaq.sgml: Minor FAQ Update
17352
17353 Sat Aug 28 14:34:37 BST 1999 Tony Gale <gale@gtk.org>
17354
17355         * docs/gtkfaq.sgml: FAQ update
17356
17357 1999-08-27  Tor Lillqvist  <tml@iki.fi>
17358
17359         Win32: Philippe Colantoni <colanton@aris.ss.uci.edu> suggests a
17360         way to get window contents continually refreshed while resizing. I
17361         didn't like the effects myself, so it's not on by default.
17362
17363         * gdk/win32/gdkprivate.h: New flag variable
17364         gdk_event_func_from_window_proc, FALSE by default.
17365
17366         * gdk/win32/gdk.c (gdk_init_check): Set above flag if the
17367         environment variable GDK_EVENT_FUNC_FROM_WINDOW_PROC is set, or we
17368         are passed --gdk-event-func-from-window-proc.
17369
17370         * gdk/win32/gdkevents.c (gdk_WindowProc): If above flag is set,
17371         and we have am event_func, call it instead of enqueing the event.
17372
17373 1999-08-23  Tor Lillqvist  <tml@iki.fi>
17374
17375         * gdk/win32/gdkevents.c (gdk_event_translate): Fix from Simon
17376         Kelley: Set expose_count in GdkEventExposes correctly.
17377
17378         * gdk/win32/gdkwindow.c: Remove dead code (#ifdef
17379         MULTIPLE_WINDOW_CLASSES).
17380
17381         * gdk/win32/gdkdraw.c (gdk_draw_line): Workaround from Hans Breuer
17382         for bug in NT, apparently NT *does* draw the end pixel, too, in
17383         LineTo with a one-pixel pen, so we don't have to do it ourselves.
17384
17385 1999-08-21  Tor Lillqvist  <tml@iki.fi>
17386
17387         Improvements by Hans Breuer: 
17388
17389         * gdk/win32/gdkwindow.c (RegisterGdkClass): New function
17390
17391         * gdk/win32/gdkwindow.c (gdk_window_new): Use it. Don't set the
17392         CS_?REDRAW flags as they cause lots of (late) redraws when "show
17393         window contents while dragging" is turned on. Allocate at least
17394         one unique class for every GdkWindowType. If support for single
17395         window-specific icons is ever needed (eg. Dialog specific), every
17396         such window should get its own class.
17397
17398 1999-08-19  Tor Lillqvist  <tml@iki.fi>
17399
17400         * gdk/win32/gdkgc.c (gdk_gc_new_with_values): Fix a cut&paste
17401         error that caused crashes.
17402
17403 1999-08-17  Tor Lillqvist  <tml@iki.fi>
17404
17405         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): When blitting inside one
17406         window, use ScrollWindowEx, and call UpdateWindow. This prevents
17407         bugs when for instance part of the window was outside the
17408         display. Thanks to Philippe Colantoni for finding and fixing this.
17409
17410 1999-08-16  Tor Lillqvist  <tml@iki.fi>
17411
17412         * gdk/win32/gdkdraw.c (gdk_draw_arc): Fix start and end radial
17413         endpoint calculations which were totally wrong. (A little RTFMing
17414         helps a lot ;-)
17415
17416         * gtk/makefile.{cygwin,msc}: Use libintl extracted from glibc
17417         from a separate directory, not from gettext, because of licensing
17418         issues (we want to use the LGPL version).
17419
17420         * README.win32: Mention the intl from glibc vs from gettext issue.
17421
17422 1999-08-13  Tor Lillqvist  <tml@iki.fi>
17423
17424         * gdk/win32/gdkevents.c (gdk_event_translate): Fix a couple of bugs
17425         in the key event handling: Now AltGr chars work again. Also,
17426         now Alt-digits are passed up as well as Control-digits.
17427         Pass keypad plus and minus as normal plus and minus.
17428
17429 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
17430
17431         * docs/gtkfaq.sgml: FAQ Update
17432
17433 1999-07-25  Tor Lillqvist  <tml@iki.fi>
17434
17435         * README.win32
17436         * config.h.win32: Add HAVE_WINTAB. Undefine it if bulding without
17437         the Wintab SDK.
17438
17439         * gdk/win32/gdkinput.c: Hack some more. Still doesn't quite work
17440         OK, but getting closer. Guard against bogus tilt data from Wacom
17441         ArtPad II with the 3.40 driver. Add ifdefs for HAVE_WINTAB to
17442         enable easier building without Wintab.
17443
17444         * gdk/win32/gdkinput.h
17445         * gdk/win32/gdkevents.c 
17446         * gdk/win32/gdkwindow.c: Minor changes related related to above.
17447         
17448         * gdk/win32/gdkvisual.c: Simplify a lot, remove leftovers from X11
17449         code. As we have just one visual on Win32, no sense to have it in a
17450         table, and no need for the hash table.
17451
17452         * gdk/win32/rc/cursor*.cur: Edit some of the cursors a bit to look
17453         better on white background.
17454
17455 1999-07-21  Tor Lillqvist  <tml@iki.fi>
17456
17457         * README.win32: Update gcc build instructions. Mention gettext is
17458         GPL.
17459
17460         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Get correct
17461         supported cursor size with GetSystemMetrics.
17462
17463         * gdk/win32/gdkfont.c
17464         * gtk/gtkfontsel.c: Guard against some font weight and charset
17465         symbols being undefined (in mingw32 headers).
17466
17467         * gdk/win32/makefile.cygwin
17468         * gtk/makefile.cygwin
17469         * gtk/gtkthemes.c: No longer need to have differently named
17470         gcc-built DLLs when using gcc-2.95 and -fnative-struct.
17471
17472 hu Jul 15 13:33:15 BST 1999 Tony Gale <gale@gtk.org>
17473
17474         * docs/gtkfaq.sgml: Long awaited FAQ update.
17475
17476 1999-07-15  Tor Lillqvist  <tml@iki.fi>
17477
17478         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Implement
17479         it. Obscure bit manipulation needed.
17480
17481         * gdk/win32/gdkevents.c: Logging.
17482         
17483         * gtk/gtkthemes.c (gtk_theme_engine_get): (Win32) Use new DLL naming
17484         style (file name include compiler name) for theme engines.
17485
17486 1999-07-13  Tor Lillqvist  <tml@iki.fi>
17487
17488         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Less logging verbiage.
17489
17490         * gdk/win32/gdkevents.c: Fix long-standing bug in key
17491         events. The key.string wasn't zero-terminated, still we strdup'ed
17492         it in gdk_event_copy(). Synthesize crossing events for button
17493         events before possible propagation.
17494
17495         * gdk/win32/gdkwindow.c: Log gdk_window_set_title.
17496
17497         * gdk/win32/makefile.cygwin
17498         * gtk/makefile.cygwin: Use new DLL naming style for the
17499         GCC-compiled ones.
17500
17501         * gdk/win32/makefile.msc
17502         * gtk/makefile.msc: Cosmetics mostly.
17503
17504         * gtk/gtk.def: Add missing entry points.
17505
17506         * gtk/gtksocket.c: Add dummy gtk_socket_get_type() for Win32.
17507
17508 1999-07-09  Tor Lillqvist  <tml@iki.fi>
17509
17510         * gdk/win32/gdkdraw.c (gdk_draw_arc): Don't draw anything if width
17511         or height is zero. Don't print a warning if Pie or Arc fails, they
17512         always fail (?) for very narrow ellipses.
17513
17514         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Call InvalidateRgn for
17515         the part or the destination window corresponding to source area
17516         outside of the source drawable's boundary.
17517
17518         * gdk/win32/gdkdraw.c (gdk_draw_lines, gdk_draw_polygon): Don't do
17519         anything if less than two points.
17520
17521         * gdk/win32/gdkselection.c (gdk_selection_owner_get): Always
17522         return NULL. Gtk cut-and-paste inside a single program works
17523         better this way. (It always gets the clipboard contents from
17524         Windows, not from its own copy, which is cleared anyway. I can't
17525         say I fully understand what happens... Emulating the X selection
17526         and property stuff is a bit of a mess.)
17527
17528         * gdk/win32/gdkevents.c
17529         * gdk/win32/gdkproperty.c: A bit more verbose logging.
17530
17531         * gdk/win32/gdkregion.c: Fix some memory leaks (temporary regions
17532         that never got deleted). Revamp gdk_region_shrink.
17533
17534         * gdk/win32/gdkregion.c: Fix memory leak, delete temporary regions
17535         after use.
17536
17537         * gtk/gtk.def: Add some missing entry points.
17538
17539         * gtk/gtkrc.c: Strip trailing directory separator from pixmap path
17540         component.
17541
17542 1999-07-04  Tor Lillqvist  <tml@iki.fi>
17543
17544         * gdk/win32/gdkevents.c (gdk_event_translate): Handle
17545         Control-digits specially.
17546
17547 1999-07-03  Tor Lillqvist  <tml@iki.fi>
17548
17549         * gtk/makefile.{cygwin,msc}: New pthreads version. Use gettext.
17550
17551 1999-06-28  Tor Lillqvist  <tml@iki.fi>
17552
17553         * gdk/win32/gdkimage.c (gdk_image_get): bpl was set wrong for
17554         bitmaps, should be multiple of 4. (Thanks to Hans Breuer for
17555         finding this.)
17556
17557 1999-06-01  Jose H Mercado  <jmercado@mit.edu>
17558
17559         * gtk+.spec.in: Corrected some typos in files section.
17560         
17561 1999-06-15  Tor Lillqvist  <tml@iki.fi>
17562
17563         * README.win32: Mention using GNU gettext.
17564         * config.h.win32: Enable NLS stuff.
17565         * gtk/makefile.msc: Use GNU gettext.
17566         * gdk/win32/gdkdnd.c: Minor header reorg.
17567         * gdk/win32/{gdkevents,gdkwindow}.c: No semantic changes, mainly
17568         cosmetics.
17569         * gtk/gtkrc.c (Win32): Make get_gtk_sysconf_directory() public.
17570         * gtk/gtkmain.c (Win32): Use it in bindtextdomain() call.
17571
17572 Wed Jun  2 11:44:25 PDT 1999 Manish Singh <yosh@gimp.org>
17573
17574         * acinclude.m4
17575         * config.guess
17576         * config.status
17577         * ltconfig
17578         * ltmain.sh: upgrade to libtool 1.3.2 (BeOS changes merged)
17579
17580 1999-05-30  Tor Lillqvist  <tml@iki.fi>
17581
17582         * gdk/win32/gdkwindow.c: AdjustWindowRectEx2 renamed to
17583         SafeAdjustWindowRectEx. Don't override all calls to
17584         AdjustWindowRectEx by it, but use it only in two places: When
17585         creating a new top-level window and when moving a top-level
17586         window.
17587
17588         Use screen coordinate rectangle, not client rectangle, in
17589         gdk_window_move. Thus SafeAdjustWindowRectEx will do its job only
17590         when we try to place a window so that the decoration (mainly,
17591         title bar) isn't visible.
17592
17593         These changes fix the bug that showed up for instance as the
17594         GIMP's saved top-level windows moving right and down (by an amount
17595         equal to the window decoration) for each session. This bug showed
17596         up also in testgtk's "Saved Position".
17597
17598         gdk_window_resize also redone a bit.
17599
17600 1999-05-25  Tor Lillqvist  <tml@iki.fi>
17601
17602         * gtk/testgtkrc: Add (commented out) Windows-style theme
17603         include line.
17604
17605         * gdk/win32/gdk.def,gtk/gtk.def: Add some missing entry points.
17606
17607 1999-05-18  Tor Lillqvist  <tml@iki.fi>
17608
17609         * gdk/win32/makefile.{cygwin,msc}: Copy our gdkprivate.h and
17610         gdkx.h to a gdk subdirectory, so that applications can include
17611         these with <gdk/*.h> without trouble.
17612
17613         * gdk/win32/gdkimage.c (gdk_image_new_with_depth): Code simplified.
17614         (gdk_image_destroy): Plug resource leak, some GdkImages didn't
17615         have their bitmap destroyed.
17616
17617         * gdk/win32/gdk.def: Add gdk_root_parent.
17618
17619 Wed May 12 03:00:56 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
17620
17621         * configure.in
17622           gtk-config.in
17623           ltconfig
17624           ltmain.sh     
17625           gtk/Makefile.am: changes to compile nicely (with xlib) 
17626           on BeOS
17627
17628 Sat May  1 15:04:42 PDT 1999 Manish Singh <yosh@gimp.org>
17629
17630         * acinclude.m4
17631         * config.guess
17632         * config.sub
17633         * ltconfig
17634         * ltmain.sh: upgrade to libtool 1.3
17635
17636 Fri Apr 30 13:38:16 1999  Lars Hamann  <lars@gtk.org>
17637
17638         * gtk/gtkclist.c:
17639         * gtk/gtkctree.c: merges from gtk-1-2
17640
17641 1999-04-25  Tor Lillqvist  <tml@iki.fi>
17642
17643         Support added for building using a GNU toolchain on Win32,
17644         gcc -mno-cygwin (egcs-1.1.2) on cygwin-b20.1.
17645
17646         * gdk/win32/makefile.cygwin gtk/makefile.cygwin: New files.
17647         * config.h.win32: Changes for gcc.
17648         * gdk/gdkrectangle.c: Include gdk.h as <gdk/gdk.h>.
17649         * gdk/gdkcolor.c: config.h.win32 already defines strcasecmp.
17650         * gdk/win32/gdkconfig.h: Only the MS compiler has wctype.h.
17651         * gdk/win32/gdkdnd.c: Protect (unused) OLE2 stuff better.
17652         Protect shl stuff unavaiilable with mingw32 headers.
17653         * gdk/win32/gdkevents.c: Fix typo.
17654         * gdk/win32/gdkglobals.c: Use GDKVAR here also for gcc.
17655         * gdk/win32/gdkim.c: Use OEM code page for multibyte chars. (?)
17656         * gdk/win32/gdkinput.c: Use __try __except only with the MS compiler.
17657         * gdk/win32/gdkprivate.h: Make up for some stuff missing from
17658         the mingw32 headers.
17659         * gdk/win32/makefile.msc: Use latest Wintab kit and glib.
17660         * gtk/gtkfilesel.c: Include <glib.h> early, to get stat->_stat
17661         definition on Win32. Test for NATIVE_WIN32, not _MSC_VER.
17662         * gtk/gtkfontsel.c: Protect CHARSET redefinition on Win32.
17663         Test for NATIVE_WIN32, not _MSC_VER.
17664         * gtk/gtkmain.c: No use warning about developer version on Win32,
17665         there aren't any non-developer versions anyhow.
17666         * gtk/gtkrc.c: Test for NATIVE_WIN32, not _MSC_VER.
17667         * gtk/makefile.msc: Use pthread from another directory. Minor other
17668         changes. 
17669
17670 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
17671
17672         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
17673           default filter from the list
17674
17675 Mon Mar  8 12:52:53 1999  Owen Taylor  <otaylor@redhat.com>
17676
17677         * gtk/gtkwidget.c (gtk_widget_grab_default): Add a warning
17678          when gtk_widget_grab_default() is called for a widget that
17679          is not within a GtkWindow.
17680
17681 Sat Apr 10 13:52:54 BST 1999  Tony Gale <gale@gtk.org>
17682
17683         * docs/gtk_tut.sgml, examples/clist.c: use a
17684           scrolled window in the clist example. Minor
17685           tutorial fixes.
17686
17687 Fri Apr  2 09:19:20 BST 1999  Tony Gale <gale@gtk.org>
17688
17689         * docs/gtk_tut.sgml: Style check from David King
17690           <dking@youvegotmail.net>
17691
17692 1999-03-30  Pavel Machek  <pavel@artax.karlin.mff.cuni.cz>
17693
17694         * gtk/gtkfontsel.c (gtk_font_selection_get_fonts): Make code
17695         compile with unknown value of GDK_WINDOWING
17696
17697 1999-03-28  Raja R Harinath  <harinath@cs.umn.edu>
17698
17699         * gdk/Makefile.am (gdkconfig.h): Make sure `gdkconfig.h' exists
17700         after the rule is fired.
17701         (install-exec-local): Install gdkconfig.h only if the contents are
17702         different from the currently installed gdkconfig.h.
17703
17704 1999-03-26  Raja R Harinath  <harinath@cs.umn.edu>
17705
17706         * gdk/Makefile.am (configexecincludedir): Rename from 
17707         configincludedir so that gdkconfig.h will be installed 
17708         as part of `make install-exec'. 
17709
17710 Fri Mar 19 16:50:33 PST 1999 Manish Singh <yosh@gimp.org>
17711
17712         * acinclude.m4
17713         * config.guess
17714         * config.sub
17715         * ltconfig
17716         * ltmain.sh: upgrade to libtool 1.2f
17717
17718         * autogen.sh: libtool is not required to autogen gtk+
17719
17720         * acconfig.h: remove WITH_SYMBOL_UNDERSCORE (not explictly
17721         needed)
17722
17723 1999-03-18  Tor Lillqvist  <tml@iki.fi>
17724
17725         * gdk/gdktypes.h: Merge in Win32 version: Define macro GDKVAR for
17726         declaring gdk variables exported/imported from the DLL. New image
17727         type enum, GDK_IMAGE_SHARED_PIXMAP, for gdk_imlib. New drag and
17728         drop protocol enums, GDK_DRAG_PROTO_WIN32_DROPFILES and
17729         GDK_DRAG_PROTO_OLE2.
17730
17731         * gdk/gdk.h: Merge in Win32 version: Two new functions,
17732         gdk_pixmap_create_on_shared_image and gdk_image_bitmap_new. So far
17733         declared only for the Win32 version, but could be in the X11
17734         version as well. (Needed for a Xlib-less gdk_imlib.)
17735         gdk_color_hash should have only one parameter. Declare
17736         gdk_threads_mutex with GDKVAR.
17737         
17738         * gdk/gdkcolor.c (gdk_color_hash): A hash function should have
17739         just one parameter.
17740
17741         * gdk/gdkimage.c (gdk_image_get): Initialize bpp correctly. Bytes
17742         per pixel, not bits.
17743
17744         * gdk/gdkrgb.c: Mingle includes somewhat. (gdk_rgb_select_conv):
17745         Fetch bpp (which means bits-per-pixel here) from another place on
17746         Win32. Accept also depth==32 (which we might get on Win32) with
17747         bpp==32.
17748
17749         * gtk/{gtkclist,gtkctree,gtkdnd,gtkditable,gtkfontsel,
17750         gtkhandlebox,gtklayout,gtkmain,gtkplug,gtkpreview,gtkrc,
17751         gtkselection,gtksocket,gtkstyle,gtkwidget,gtkwindow}.c:
17752         Include gdx.h from "gdkx.h", not "gdk/gdkx.h", as gdkx.h will be
17753         in the backend-dependent directory, not in the common gdk
17754         directory.
17755
17756         * gtk/testgtk.c: Ditto. Also, don't use ../gdk path to gdk
17757         headers.
17758
17759 Wed Mar 17 05:06:49 1999  Tim Janik  <timj@gtk.org>
17760
17761         * gtk/gtkmain.c (gtk_init_check): tell people that they don't really
17762         want to use the Gtk+ devel version (which is true, and yes - even i am
17763         currently working with the 1.2.x branch). so everyone reading this, you
17764         probably want to issue
17765         cvs checkout -r glib-1-2 glib
17766         and
17767         cvs checkout -r gtk-1-2 gtk+
17768         as your next two comands.
17769
17770 Wed Mar 17 02:49:32 1999  Tim Janik  <timj@gtk.org>
17771
17772         * configure.in: build gtkcompat.h from gtkcompat.h.in instead of
17773         gtkfeatures.h from gtkfeatures.h.in, require GLib 1.3.0.
17774
17775         * gtk/gtkcompat.h.in: combined gtkcompat.h and gtkfeatures.in in this
17776         file. strongly deprecated the GTK_HAVE_* macros, we provide
17777         GTK_CHECK_VERSION() for people that need to check for certain
17778         Gtk+ versions.
17779
17780         * gtk/gtkcompat.h: removed this from CVS.
17781         * gtk/gtkfeatures.h.in: removed this from CVS, gtkfeatures.h was a bad
17782         idea right from the start, it just didn't seem like that back then.
17783
17784 Wed Mar 17 01:46:28 1999  Tim Janik  <timj@gtk.org>
17785
17786         * merges from gtk-1-2:
17787
17788 Tue Mar 16 17:43:33 1999  Tim Janik  <timj@gtk.org>
17789
17790         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc_string): ensure the
17791         item factory class has been created.
17792         (gtk_item_factory_parse_rc): likewise.
17793
17794         * gtk/gtkmenu.c:
17795         keep proper references for old_active_menu_item.
17796         (gtk_menu_reparent): unset the usize of the new parent,
17797         so the menu can sanely be size requested and we don't get nasty screen
17798         artefacts upon next reparentation.
17799         (gtk_menu_motion_notify): set send_event to TRUE if we synthesize an
17800         enter notify. only synthesize enter notifies if the pointer really is
17801         inside the event window.
17802         (gtk_menu_popdown): use gtk_menu_shell_deselect().
17803         (gtk_menu_popup): move the background setting stuff into
17804         gtk_menu_tearoff_bg_copy() so it can be called from other places as well.
17805
17806         * gtk/gtkmenushell.c (gtk_menu_shell_button_press): use
17807         gtk_menu_shell_select_item() to select the new item.
17808         (gtk_menu_shell_deselect): export this function, so gtkmenu.c can
17809         do the right thing for deselection as well.
17810
17811 Sat Mar 15 20:10:33 1999  Tim Janik  <timj@gtk.org>
17812
17813         * gtk/gtkwidget.[hc]:
17814         (gtk_widget_accelerators_locked): return whether a widget's accelerators
17815         are locked.
17816
17817         * gtk/gtkmenu.c (gtk_menu_key_press): don't remove or install new or
17818         existing accelerators if the widget's accelerators are locked.
17819
17820 Sat Mar 14 19:44:05 1999  Tim Janik  <timj@gtk.org>
17821
17822         * gtk/gtkitemfactory.[hc]: allow managing of foreign menu items.
17823
17824         * gtk/gtkmenu.c: truely forward key press and key release events to
17825         the menu widget from the toplevel or tearoff window. we can't simply
17826         connect to that, we need to stop further processing of the events as
17827         well.
17828
17829 Sat Mar 13 13:14:17 1999  Tim Janik  <timj@gtk.org>
17830
17831         * gtk/gtkmenu.c:
17832         (gtk_menu_key_press): pass event->keyval, event->state to
17833         gtk_accelerator_valid, instead of event->keyval twice.
17834         refuse to install single letter accelerators for menus that use
17835         single letter shortcuts.
17836
17837         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): use
17838         gtk_menu_ensure_uline_accel_group().
17839
17840         * gtk/gtkmenu.[hc]: added gtk_menu_ensure_uline_accel_group()
17841         which will always return an uline accel group, made
17842         gtk_menu_get_uline_accel_group() return NULL if the group isn't
17843         yet created.
17844
17845 Mon Mar 15 01:03:27 1999  Lars Hamann  <lars@gtk.org>
17846
17847         * gtk/gtkclist.h (struct _GtkCListColumn): added button_passive flag.
17848
17849         * gtk/gtkclist.c (gtk_clist_column_title_passive):
17850         Leave button sensitive, trap  button_press, button_release,
17851         motion_notify, enter_notify and leave_notify events instead.
17852         (gtk_clist_column_title_active): disconnect event handler.
17853         (gtk_clist_drag_data_get): fixed memory leak. Reported by
17854         Guillaume Laurent <glaurent@worldnet.fr>
17855
17856 Wed Mar 10 23:49:55 1999  Lars Hamann  <lars@gtk.org>
17857
17858         * gtk/gtklayout.c (gtk_layout_adjustment_changed): fixed a few
17859         width/height mixups.
17860
17861         * gtk/gtkctree.c (tree_delete): emit an tree_unselect_row signal
17862         if needed.
17863
17864 Wed Mar 10 00:11:32 1999  Tim Janik  <timj@gtk.org>
17865
17866         * gtk/testgtk.c (create_item_factory): unref the item factory after
17867         window's destruction.
17868
17869         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): keep a reference
17870         count on the menu shell around the menu item's activation, since the
17871         signal emission may cause menu shell destruction.
17872
17873         * gtk/gtkitemfactory.c:
17874         the previous code leaked one accel group per menu. we use
17875         gtk_menu_get_uline_accel_group() now to fix that, and with that
17876         also create the underline accelerator group of the menus only if
17877         required (i.e. an underline accelerator has been specified).
17878         (gtk_item_factory_construct):
17879         (gtk_item_factory_create_item): removed code that would create an
17880         extra accel group for the menu (and leak references).
17881         (gtk_item_factory_create_item): adapted the underline accelerator
17882         installation code to properly feature gtk_menu_get_uline_accel_group().
17883
17884         * gtk/gtkmenu.[hc]: added gtk_menu_get_accel_group() to retrive
17885         menu->accel_group, this may return NULL if the accelerator group
17886         hasn't been set yet.
17887         added gtk_menu_get_uline_accel_group() to retrive the underline
17888         accelerator group of the menu, this will be created on demand
17889         and proper care is taken about its reference count.
17890
17891         * gtk/gtkitemfactory.h:
17892         * gtk/gtkitemfactory.c:
17893         dumped the approach of keeping a widgets by action list on the
17894         factory since the factory<->widget destroy negotiation didn't work
17895         and would be hard to get going at all. instead we keep a list of
17896         GtkItemFactoryItem items on the factory (GtkItemFactoryItems are
17897         persistant throughout a program's life time).
17898         also, i removed the static const gchar *key_* variables, and made
17899         them inline strings (they weren't actually used anyways).
17900         (gtk_item_factory_add_item): update ifactory->items.
17901         (gtk_item_factory_destroy): destroy ifactory->items (and remove
17902         the item factory pointer from the remaining ifactory widgets).
17903         (gtk_item_factory_get_widget_by_action): walk the GtkItemFactoryItem
17904         list to find the widget.
17905         (gtk_item_factory_get_item): new function that works around
17906         gtk_item_factory_get_widget() limitations, this function will only
17907         return menu items, even for <Branch> entries.
17908
17909 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
17910
17911         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
17912         font hash table, if we have a GdkFontPrivate entry for this font
17913         already, simply increment its reference count, provided by Olaf Dietsche
17914         <olaf.dietsche+list.gtk@netcologne.de>.
17915
17916         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
17917         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
17918
17919 Sun Mar  7 06:13:29 1999  Tim Janik  <timj@gtk.org>
17920
17921         * gtk/gtkcontainer.c:
17922         (gtk_container_add_with_args):
17923         (gtk_container_addv):
17924         (gtk_container_add): before adding a child to a conatiner, make sure
17925         it is (default) constructed, this is neccessary because under certain
17926         circumstances the child will get relized and mapped immediatedly, in
17927         which case it has to be constructed already.
17928
17929 Mon Mar  1 17:58:21 1999  Tim Janik  <timj@gtk.org>
17930
17931         * gtk/gtksignal.c (gtk_signal_connect_by_type): count object_signal
17932         values > 1 as TRUE also.
17933
17934 1999-03-16  Tor Lillqvist  <tml@iki.fi>
17935
17936         * README.win32: New file.
17937                 
17938         * configure.in: Check for lstat.
17939
17940         * config.h.win32: Add non-definition of HAVE_LSTAT, just for
17941         completeness.
17942
17943         * gtk/gtkrc.c: If don't HAVE_LSTAT, use stat.
17944
17945         * gtk/gtk.def: Removed CRs.
17946
17947         * gtk/makefile.msc: Correct include path to Win32 GDK version (in
17948         ..\gdk\win32).
17949
17950         * gdk/win32/makefile.msc: Correct upwards relative paths.
17951         
17952 Mon Mar 15 03:38:34 1999  George Lebl  <jirka@5z.com>
17953
17954         * gtk/gtkdnd.c: (gtk_drag_highlight) swap the
17955           gtk_drag_highlight_expose and gtk_drag_highlight_paint since
17956           it was connecting a void function to expose_event and the int
17957           returning function to the draw signal
17958
17959 1999-03-14  Jeff Garzik  <jgarzik@pobox.com>
17960
17961         * configure.in:
17962         Use correct path to libgmodule.la when ref'ing uninstalled copy
17963         of glib.  (Already in stable branch, Bug #417)
17964
17965 1999-03-15  Tor Lillqvist  <tml@iki.fi>
17966
17967         Win32 merge and general portability stuff:
17968                 
17969         * acconfig.h,configure.in: Check for <sys/time.h>.
17970
17971         * gdk/win32: New directory (actually, been there for a while).
17972         
17973         * gtk/fnmatch.c: Include <glib.h> for G_DIR_SEPARATOR, WIN32 and
17974         NATIVE_WIN32, and use these. Always case fold on Win32. No
17975         backslashed escapes on native Win32.
17976
17977         * gtk/{gtk.def,makefile.msc}: New files.
17978
17979         * gtk/Makefile.am: Add above new files.
17980         
17981         * gtk/{gtkaccelgroup,gtkbindings}.c: Include <string.h>
17982         instead of <strings.h>.
17983
17984         * gtk/{gtkcalendar,gtkitemfactory,gtkpreview,gtkrc}.c: Include
17985         config.h. Protect inclusion of <sys/param.h>, <sys/time.h>, and
17986         <unistd.h> appropriately.
17987
17988         * gtk/gtkdnd.c: Merge in Win32 version (which doesn't do much).
17989         Use ABS() (from <glib.h>) instead of abs().
17990         
17991         * gtk/gtkfilesel.c: Moved Win32-specific includes after inclusion
17992         of gtk (and thus glib) headers, so that WIN32 will be
17993         defined. With MS C, include <direct.h> for mkdir prototype.
17994
17995         * gtk/gtkitemfactory.c (gtk_item_factory_callback_marshal): Add
17996         some casts, needed by MS C.
17997
17998         * gtk/{gtklayout,gtkplug}.c: Merge in Win32 version (which isn't
17999         implemented).
18000
18001         * gtk/gtkmain.c: Include gdk/gdkx.h for GDK_WINDOWING. Include
18002         <X11/Xlocale.h> only on X11 platform, otherwise <locale.h>.  Use
18003         G_SEARCHPATH_SEPARATOR_S and g_module_build_path.
18004
18005         * gtk/gtkmain.h: Mark variables for export/import on Win32.
18006                 
18007         * gtk/gtkrange.c (gtk_range_motion_notify): Set mods also in case
18008         the event is not a hint, or its window is not the slider. Needed
18009         on Win32, at least.
18010
18011         * gtk/gtkrc.c: Include config.h and gdk/gdkx.h. Use <locale.h>
18012         unless on X11. Skip \r chars, too. Use G_DIR_SEPARATOR and
18013         G_SEARCHPATH_SEPARATOR(_S). Use g_path_is_absolute. On Win32, use
18014         a subdirectory of the Windows directory as gtk system
18015         configuration directory.
18016
18017         * gtk/gtkselection.c: No chunks on Win32.
18018
18019         * gtk/gtksocket.c: Not implemented on Win32.
18020
18021         * gtk/gtkthemes.c (gtk_theme_engine_get): Use g_module_build_path.
18022
18023         * gtk/makeenums.h: Include gdkprivate.h after gdk.h.
18024
18025         * gtk/maketypes.awk: Declare variables with a macro that expands to
18026         necessary export/import magic in the case of Win32.
18027                 
18028         * gtk/testrgb.c: Use dynamically allocated buffer. Use GTimers.
18029
18030 1999-03-13  Raja R Harinath  <harinath@cs.umn.edu>
18031
18032         * configure.in (gdk_wc): Move widechar tests from `glib' to here,
18033         since those were meant only for gdki18n.h.  
18034         * gdk/gdki18n.h: Include gdkconfig.h and use GDK_* instead of G_*
18035         for widechar tests.
18036         * gtk/Makefile.am (INCLUDES): Add -I../gdk for gdkconfig.h.
18037
18038 1999-03-13  Tor Lillqvist  <tml@iki.fi>
18039
18040         * configure.in acconfig.h: Check for dirent.h and pwd.h. Generate
18041         gdk/gdkconfig.h using similar mechanism as GLib's glibconfig.h.
18042
18043         * gtk-config.in: Add @libdir/gtk+/include (where gdkconfig.h is
18044         installed) to CFLAGS.
18045
18046         * gdk/Makefile.am: Add rules for gdkconfig.h.
18047
18048         * gdk/gdktypes.h: Include gdkconfig.h. Define macros for windowing
18049         APIs.
18050
18051         * gdk/gdkfontsel.c: Don't include Xlib.h, it gets included via
18052         gdkx.h anyway when compiling for X11.
18053         (gtk_font_selection_create_xlfd): Use g_strdup_printf. (In
18054         general): Merge in Win32 version.
18055         
18056         * gtk/gtkfilesel.c: Use g_get_current_dir(). Merge in Win32
18057         version: Use G_DIR_SEPARATOR, g_path_is_absolute, no tilde
18058         expansion (if we don't have HAVE_PWD_H), allow for drive
18059         letters. UNC paths (\\server\share\...) are not handled yet.  Also,
18060         included code from Craig Setera's port to Win32 (the one that uses
18061         X11, and the cygwin dll), even if it probably will be abandoned.
18062
18063         * gtk/gtkfilesel.c: Don't append a * to the pattern to complete if
18064         the user entered one herself.  This way one can complete *.h and
18065         don't get matches on any .help files, for instance.
18066         
18067 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
18068
18069         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
18070         font hash table, if we have a GdkFontPrivate entry for this font
18071         already, simply increment its reference count, provided by Olaf Dietsche
18072         <olaf.dietsche+list.gtk@netcologne.de>.
18073
18074         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
18075         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
18076
18077 1999-03-09  Federico Mena Quintero  <federico@nuclecu.unam.mx>
18078
18079         * gtk/gtkstyle.c (gtk_default_draw_handle): Significantly reduced
18080         the number of calls to gdk_draw_point() (and thus to X) by
18081         clipping the points by hand.
18082
18083         * gtk/gtkhandlebox.c (draw_textured_frame): Actually make use of
18084         the clip parameter.
18085         (gtk_handle_box_paint): Only paint the handle if the expose area
18086         intersects it.
18087
18088 Sun Mar  7 18:46:37 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
18089
18090         * gtk/gtkmain.c (add_dll_suffix): Add this function (OS/2 ver.)
18091
18092 Sun Mar  7 11:43:34 1999  ape@spacetec.no  (Asbjorn Pettersen)
18093
18094         * gtk/gtkthemes.c (gtk_theme_engine_get): Add OS/2 changes.
18095         Added function gen_8_3_dll_name(gchar *name, gchar *fullname).
18096
18097 Fri Mar  5 09:12:24 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
18098
18099         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc): Open file in
18100          textmode (O_TEXT) for OS/2 version.
18101
18102 Sun Feb 28 16:46:02 1999  Stefan Jeske  <stefan@gtk.org>
18103
18104         * gtk/gtkspinbutton.[c,h] gtk/testgtk.c: Added two new signals to 
18105         GtkSpinButton, "input" and "output", to make the output more flexible.
18106         The user has to provide a mapping between adjustment->value and the
18107         output string (and vice versa, if the spin button is editable). 
18108         See testgtk for examples.
18109
18110 Sat Feb 27 01:18:47 1999  Tim Janik  <timj@gtk.org>
18111
18112         * ChangeLog: moved old ChangeLog to ChangeLog.pre-1-2, and started
18113         new one.
18114         
18115         * configure.in: set gtk+ version to 1.3.0.