]> Pileus Git - ~andy/gtk/blob - ChangeLog.pre-2-4
aadd7bd5b3f640ab7074a397f5dc9b27f5f3f79e
[~andy/gtk] / ChangeLog.pre-2-4
1 2001-07-02  Havoc Pennington  <hp@pobox.com>
2
3         * gdk/x11/gdkwindow-x11.c (gdk_wmspec_change_state): fix to 
4         use constants not atoms.
5
6 2001-07-02  James Henstridge  <james@daa.com.au>
7
8         * gtk/gtktextview.c (gtk_text_view_class_init): same here for
9         PANGO_TYPE_TAB_ARRAY.
10
11         * gtk/gtktexttag.c (gtk_text_tag_class_init): same here, but also
12         for PANGO_TYPE_TAB_ARRAY.
13
14         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_class_init):
15         s/GTK_TYPE_PANGO_FONT_DESCRIPTION/PANGO_TYPE_FONT_DESCRIPTION/
16
17         * gtk/gtk-boxed.defs: move all the boxed definitions to the top of
18         the file.  Remove Pango types from defs -- they are now defined in
19         libpango.
20
21 Mon Jul  2 06:35:10 2001  Tim Janik  <timj@gtk.org>
22
23         * gdk/gdkkeys.c (gdk_keymap_class_init): s/signal_newc/signal_new/
24
25         * gtk/gtkobject.c (gtk_object_destroy): invoke
26         g_object_run_dispose().
27
28         * gtk/gtkwindow.c: 
29         * gtk/gtkwidget.c: 
30         * gtk/gtkobject.c:
31         * gtk/gtklist.c: s/shutdown/dispose/ for the GObject
32         method.
33
34 Sat Jun 30 20:44:48 2001  Owen Taylor  <otaylor@redhat.com>
35
36         * gtk/gtktypeutils.c (gtk_type_class): Remove
37         change check for GTK_TYPE_OBJECT derivation to
38         G_TYPE_OBJECTS - it's Tim-approved to use this 
39         for arbitary objects.
40
41         * gtk/gtkwindow.c gtk/gtkcontainer.[ch]: underscore
42         prefix gtk_container_dequeue_resize_handler().
43
44         * gtk/gtkwidget.[ch]: Add a previous_toplevel argument
45         to the hierarachy_changed signal, since you otherwise
46         have to always keep that around.
47
48         * gtk/gtkmenubar.c gtk/gtklabel.c gtk/gtksocket.c: Adapt
49         for extra argument to hierarchy_changed.
50
51 Tue Jun 26 19:39:03 2001  Owen Taylor  <otaylor@redhat.com>
52
53         * gtk/gtkwidget.c (gtk_widget_set_style): Allow %NULL
54         for style to mean "revert to default style"
55
56         * gtk/gtkwidget.[ch] (gtk_widget_set_rc_style,
57           gtk_widget_restore_default_style): Make this functions
58         deprecated aliases for gtk_widget_set_style (widget, NULL).
59
60         * gtk/gtkwidget.[ch]: Remove:
61            gtk_widget_set_default_style ()
62            gtk_widget_push_style ()
63            gtk_widget_pop_style ()
64         These functions interact are overriden by RC files, and
65         thus virtually useless, and complicated.
66
67 Fri Jun 22 18:49:48 2001  Owen Taylor  <otaylor@redhat.com>
68
69         * gtk/gtkrc.c: Add a GtkRcContext structure to hold 
70         most of the previous global variables in gtkrc.c. This is
71         in preparation for multi-head, since each screen can
72         have different GtkSettings and RC information.
73
74         * gtk/gtkrc.[ch]: 
75
76         * gtk/gtkrc.h (struct _GtkRcStyleClass): Add a
77         GtkSettings parameter to GtkRcStyle::parse.
78
79         * gdk/x11/gdkevents-x11.c gtk/gtksettings.c gtk/gtkrc.c: 
80         Add two new settings gtk-theme-name, gtk-key-theme-name,
81         for RC files that are loaded by name after reading
82         the default RC files.
83         
84         * gtk/gtkrc.c: Allow priorities for styles, as wll as
85         bindings.
86
87         * gtk/gtkenums.h gtk/gtkrc.c: Add GTK_PATH_PRIO_THEME,
88         and use it by default for RC files loaded via 
89         gtk-theme-name, gtk-key-theme-name.
90
91         * gtk/gtkiconfactory.c (gtk_icon_source_set_filename)
92         gtk/gtkrc.c (gtk_rc_parse_pixmap_path_string) 
93         tests/testgtkrc: Require pathnames to be absolute.
94
95         * gtk/gtkrc.c gtk/gtkiconfactory.c: Look up the full filename for
96         the source when parsing, since the operation of looking up a
97         pixmap from an RC file depends on the parsing context.
98
99         * gtk/gtkrc.c (gtk_rc_context_reparse_all): Automatically
100         reset RC styles on all widgets when files are reparsed.
101
102         * tests/testgtk.c (create_rc_file) 
103           gtk/gtkwindow.c (gtk_window_read_rcfiles): 
104         Simplify, now that gtk_rc_reparse_all() resets styles on
105         all widgets itself.
106
107         * gtk/gtkmain.c (gtk_get_default_language): Fix broken
108         return value.
109
110         * gtk/gtksettings.[ch] (gtk_settings_install_property[_ch]): Remove
111         GtkSettings argument.
112
113         * gtk/gtksettings.[ch] (gtk_settings_get_default): Rename from
114         gtk_settings_get_global().
115
116         * gtk/gtkwidget.[ch]: Add a function gtk_widget_Get_settings()
117         to get the appropriate GtkSettings for a widget. (For now,
118         just gets the default GtkSetttings.) 
119
120         * gtk/gtkcolorsel.c gtk/gtkentry.c gtk/gtkmenu.c gtk/gtkmenubar.c
121           gtk/gtktextview.c gtk/gtktoolbar.c: Fixes for GtkSettings
122         changes.
123
124         * gtk/gtkrc.[ch]: Add gtk_rc_get_style_by_paths() to allow
125         getting a style for a path without actually having a widget.
126         (Allows using a style for a subpart of a widget, for
127         example.)
128
129         * gtk/gtkrc.[ch]: Add gtk_rc_reparse_all_for_setting() to allow forcing
130         the RC files to be reloaded for just one GtkSettings
131         (not sure how useful this really is.)
132
133         * gtk/gtkrc.h: Deprecate
134         gtk_rc_add_widget_name/widget_class/class_style
135
136 2001-06-30  Alex Larsson  <alexl@redhat.com>
137
138         * gdk/linux-fb/gdkinput-none.c:
139         * gdk/linux-fb/gdkinput.c:
140         * gdk/linux-fb/gdkinputprivate.h:
141         Convert GdkDevice to a GObject.
142
143         * linux-fb/gdkprivate-fb.h:
144         * linux-fb/gdkvisual-fb.c:
145         Convert GdkVisual to a GObject.
146
147 2001-06-29  Alex Larsson  <alexl@redhat.com>
148
149         * gdk/gdkvisual.h:
150         * gdk/gdkcolor.c:
151         * gdk/x11/gdkx.h:
152         * gdk/x11/gdkvisual-x11.c:
153         Convert GdkVisual to a GObject.
154
155         * gdk/gdkinput.h:
156         * gdk/gdkevents.c:
157         * gdk/x11/gdkinputprivate.h:
158         * gdk/x11/gdkinput-gxi.c:
159         * gdk/x11/gdkinput-none.c:
160         * gdk/x11/gdkinput-x11.c:
161         * gdk/x11/gdkinput-xfree.c:
162         * gdk/x11/gdkinput.c:
163         Convert GdkDevice to a GObject.
164
165 Fri Jun 29 22:13:28 2001  Jonathan Blandford  <jrb@redhat.com>
166
167         * gtk/gtktreestore.c (gtk_tree_store_new): changed new_with_types
168         to just plain new, fixing the number of columns, and column types
169         at creation time.
170
171         * gtk/gtkliststore.c (gtk_list_store_new): ditto.
172
173         * gtk/gtkcellrenderertext.c
174         (gtk_cell_renderer_text_set_fixed_height_from_font): FIX the
175         height to a specific font.
176
177         * gtk/gtktreeview.c (gtk_tree_view_is_expander_column): fix brokenness.
178
179         * tests/*c: change to work with new store models.
180
181 2001-06-29  Havoc Pennington  <hp@redhat.com>
182
183        * Throughout: fixes to compile with G_DISABLE_COMPAT
184         (s/g_signal_connectc/g_signal_connect/,
185         s/g_signal_newc/g_signal_new/,
186         s/g_signal_disconnect_by_func/g_signal_handlers_disconnect_by_func/)
187
188 Fri Jun 29 03:14:16 2001  Jonathan Blandford  <jrb@webwynk.net>
189
190         * gtk/gtktreeselection.c (gtk_tree_selection_selected_foreach):
191         add path argument to selection callbacks.
192
193 Fri Jun 29 00:13:34 2001  Jonathan Blandford  <jrb@redhat.com>
194
195         * gtk/gtktreemodel.c (gtk_tree_model_foreach): New function to
196         walk through a model in a depth first manner, with the option to
197         break out.
198
199 Fri Jun  8 18:52:10 2001  Jonathan Blandford  <jrb@redhat.com>
200
201         * gtk/gtktreeview.[hc]: Patch Thomas Broyer from
202         <tbroyer@ltgt.net>. Expander arrows are now attached to a specific
203         column and follow it when draged, rather than a location in the
204         view. "expander_column" property and drawing functions changed
205         accordingly.  Fixes bug #55942.
206
207         (gtk_tree_view_{set,get}_expander_column): Now works with a
208         GtkTreeViewColumn* instead of int.
209
210 Thu Jun 28 22:53:18 2001  Owen Taylor  <otaylor@redhat.com>
211
212         *  gdk/gdk.c gtk/gtktypeutils.c: Fix args to g_type_init(). 
213
214 2001-06-28  Havoc Pennington  <hp@pobox.com>
215
216         * gdk/x11/gdkimage-x11.c (_gdk_x11_get_image): Clip the retrieved
217         image data to the screen, using a server grab to avoid race
218         conditions.
219
220         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): remove 
221         check for NULL return from gtk_image_new_from_stock(), it never
222         returns NULL.
223         (gtk_item_factory_create_item): fix bug where we parsed the stock
224         ID as an inline pixbuf
225
226         * gtk/gtktext.c (gtk_text_key_press): numeric keypad support
227
228         * gtk/gtkspinbutton.c (gtk_spin_button_key_press): numeric keypad
229         support (should be using binding set here)
230
231         * gtk/gtkoptionmenu.c (gtk_option_menu_key_press): numeric keypad
232         support (should be using binding set here)
233
234         * gtk/gtkmenushell.c (gtk_menu_shell_class_init): numeric keypad 
235         support
236
237         * gtk/gtkmenu.c (gtk_menu_class_init): numeric keypad support
238
239         * gtk/gtkmenubar.c (gtk_menu_bar_class_init): numeric keypad
240
241         * gtk/gtklistitem.c (gtk_list_item_class_init): numeric keypad
242
243         * gtk/gtkimcontextsimple.c
244         (gtk_im_context_simple_filter_keypress): keypad
245
246         * gtk/gtkfilesel.c (gtk_file_selection_key_press): keypad 
247
248         * gtk/gtkentry.c (gtk_entry_class_init): numeric keypad fixes
249
250         * gtk/gtkctree.c (gtk_ctree_class_init): numeric keypad support
251
252         * gtk/gtkcolorsel.c (palette_activate): keypad support (of course,
253         should be binding-setted)
254
255         * gtk/gtkwindow.c (gtk_window_class_init): numeric keypad fixes
256
257         * gtk/gtkclist.c (gtk_clist_class_init): numeric keypad fixes
258
259         * gtk/gtkcalendar.c: numeric keypad fixes
260
261         * gtk/gtktextview.c (gtk_text_view_class_init): numeric keypad
262         support
263
264         * gdk/gdkwindow.c (gdk_window_get_clip_region): fix infinite loop
265         screwup
266
267         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha): 
268         clip the render area to the drawable's clip region in advance,
269         so we don't get data from the server that we don't need.
270
271         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
272         check return value of gdk_pixbuf_get_from_drawable(), fall back 
273         to bilevel alpha if we can't get the pixbuf to composite against.
274
275         * gdk/gdkdraw.c (gdk_drawable_get_image): set the image colormap
276
277         * gdk/gdkimage.c (gdk_image_get_colormap): add
278         gdk_image_set_colormap, gdk_image_get_colormap
279
280         * gdk/gdkpixbuf-drawable.c (rgbconvert): Change all converters to
281         take a region of the image, instead of converting the entire
282         image.
283
284         * gtk/gtkwidget.h (struct _GtkWidgetClass): add show_help
285         keybinding signal. Add default bindings for it. Add default
286         handler for show_help that shows the tooltip for the widget.
287
288         * gtk/gtkdialog.c (gtk_dialog_class_init): add binding set and
289         "close" keybinding signal, remove key press handler.
290
291         * gtk/gtktooltips.c (gtk_tooltips_set_colors): Just remove this,
292         it's not our usual practice to leave a deprecated function around
293         with a runtime warning, plus we don't want it to appear in docs,
294         plus if we make them yellow no one will want to change them
295         anyhow.
296
297 Thu Jun 28 23:53:31 2001  Tim Janik  <timj@gtk.org>
298
299         * gtk/gtkwidget.c (gtk_widget_hide): !GTK_OBJECT_DESTROYED() ->
300         GTK_WIDGET_REALIZE() for resize queueing.
301
302         * gtk/gtkmain.c (gtk_main_do_event): !GTK_OBJECT_DESTROYED() ->
303         GTK_WIDGET_REALIZE() for post event delivery destruction upon
304         GDK_DESTROY.
305         
306         * gtk/gtkwidget.c: added GtkWidget::event-after notification signal, to
307         sompensate for former (pre-2.0) connect_after() facility.
308         (gtk_widget_send_expose): 
309         (gtk_widget_event): assert the widget is realized, since event delivery
310         to non-realized widgets is essentially a bug. event handlers should
311         be able to unconditionally rely on widget->window (unless they
312         emit events on their own which can trigger widget destruction).
313         (gtk_widget_event_internal): removed old outdated GTK_OBJECT_DESTROYED()
314         logic. event delivery happens as follows:
315         a) emission of GtkWidget::event (RUN_LAST handler). returns was_handled.
316         b) if !was_handled in (a) and the widget is still realized, emit event-
317            specific signal (RUN_LAST handler). returns was_handled.
318         c) emission of GtkWidget::event-after for notification if the widget is
319            still realized (regardless of was_handled from previous stages, no
320            class handler). no return value.
321         d) was_handled gets passed on to caller, to determine further
322            propagation. if the widget got unrealized meanwhile, was_handled
323            is returned as TRUE.
324
325         * gdk/gdkevents.[hc]: added gdk_event_get_root_coords() and
326         gdk_event_get_coords().
327
328 Thu Jun 28 17:18:41 2001  Tim Janik  <timj@gtk.org>
329
330         * configure.in (GTK_MICRO_VERSION): up version to 1.3.7, interface
331         age 0, binary age 0. depend on glib 1.3.7.
332
333         * gtk/gtkcontainer.c: remove g_signal_handlers_disconnect_by_func() hack.
334
335         * gtk/gtkmenubar.c: same here.
336         
337         * gtk/gtkcontainer.c (gtk_container_focus_tab): fix param-spec retrival.
338
339         * gtk/gtkcolorsel.c (gtk_color_selection_init): fix connect_data() usage.
340
341         * gtk/gtkentry.c (gtk_entry_focus_in): same here.
342         
343         * gtk/gtkmenubar.c (add_to_window): likewise.
344         
345         * gtk/gtktextbtree.c: and here...
346         
347         * gtk/gtktextview.c (gtk_text_view_ensure_layout): same thing.
348         
349         * gtk/gtktoolbar.c (gtk_toolbar_init): once more.
350         
351         * gtk/gtktreemodel.c (connect_ref_callbacks): and another time.
352         
353         * gtk/gtktreeviewcolumn.c:
354         (_gtk_tree_view_column_set_tree_view): yet again.
355
356         * demos/gtk-demo/images.c (progressive_timeout): demonstrate
357         signal connections without g_signal_connect_data().
358         
359         * demos/gtk-demo/stock_browser.c (do_stock_browser): second
360         demo of the matter.
361         
362         * demos/testpixbuf.c (main): running out of equality phrases for the
363         ChangeLog, but had to adapt connections here as well.
364         
365         * demos/testanimation.c (progressive_timeout): and for the fun of it,
366         tackled this the same way.
367         
368         * tests/testtext.c (create_view): ok, it's becoming a pain at this
369         point, but had enough enery for one more fix.
370
371         * tests/testtreecolumns.c (main): stand up man, do your work!
372
373         * tests/testtreeview.c (set_columns_type): ok, this is the last file i
374         fix, either that's been all of it or CVS gtk is broken yet again.
375         
376 2001-06-29  James Henstridge  <james@daa.com.au>
377
378         The following changes correspond to bug #56812
379
380         * gdk/gdkinput.h, gdk/gdkevents.c (GDK_TYPE_DEVICE): register type
381         code for GdkDevice.
382
383         * gdk/gdkcursor.[ch] (GDK_TYPE_CURSOR): register type code for
384         GdkCursor.
385
386 2001-06-19  Havoc Pennington  <hp@pobox.com>
387
388         * gdk/x11/gdkwindow-x11.c (gdk_window_show_unraised): new function
389         for mapping a window without fooling with stacking order, but
390         updating the "withdrawn" flag
391
392         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Do event
393         filtering as soon as possible, moving move resize and wmspec_check
394         handling after the event filter.  Make default filter apply to all
395         events, not just those with no GdkWindow wrapped around the X
396         window. Fix a FIXME about how the window could be a pixmap using 
397         RTTI; this of course assumes GDK_IS_WINDOW() is optimized. 
398
399         Also, be robust against events not on a known GdkWindow.
400
401         * gdk/x11/gdkmain-x11.c (gdk_x11_grab_server,
402         gdk_x11_ungrab_server): export reference-counted server grabs, so
403         other people can grab server over a GDK function that also does
404         so.
405
406 Wed Jun 27 19:40:31 2001  Jonathan Blandford  <jrb@redhat.com>
407
408         * gtk/gtktreeviewcolumn.c
409         (gtk_tree_view_column_pack_start_cell_renderer): New function to
410         reflect that you can (hypothetically) pack cell renderers into a
411         column.
412         (gtk_tree_view_column_pack_end_cell_renderer): ditto.
413         (gtk_tree_view_column_cell_is_visible): Move more functionality to
414         the column.
415         (gtk_tree_view_column_cell_can_focus): Move more functionality to
416         the column.
417
418         * gtk/gtktreeview.c: Move to use new column-packing code.
419         (gtk_tree_view_real_expand_row): remove totally braindead code.
420         (gtk_tree_view_real_collapse_row): ditto.
421
422 2001-06-27  Kjartan Maraas  <kmaraas@gnome.org>
423
424         * gtk/gtktreeviewcolumn.c: Fix a typo.
425         
426 2001-06-26  Joel Becker  <jlbec@evilplan.org>
427
428         * gdk-pixbuf/gdk-pixbuf-csource.c: remove '#include "x"' line
429           at the end of the file
430
431 2001-06-26  Havoc Pennington  <hp@redhat.com>
432
433         * gtk/gtkwindow.c (gtk_window_set_policy): forgot a notification
434
435 2001-06-26  Havoc Pennington  <hp@redhat.com>
436
437         * gtk/gtkwindow.c (gtk_window_class_init): add "resizable"
438         property
439
440 Tue Jun 26 12:59:28 2001  Jonathan Blandford  <jrb@redhat.com>
441
442         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_set_model): fix
443         stupid missing statement
444
445         * gtk/gtktreeview.c (gtk_tree_view_set_destroy_count_func): New
446         private function for ATK.  It notifies you of how many _visible_
447         children are deleted when a node is deleted.  Should be used by
448         atk only.
449
450 Tue Jun 26 11:06:34 2001  Owen Taylor  <otaylor@redhat.com>
451
452         * gtk/gtkclist.c gtk/gtkentry.c gtk/gtkspinbutton.c:
453         Use new pango_context_get_metrics() to fix problems
454         with font lists in descriptions. (#56184, reported by
455         Jonas Borgström)
456
457 Tue Jun 26 10:04:30 2001  Tim Janik  <timj@gtk.org>
458
459         * gtk/gtkiconfactory.c:
460         * gtk/gtkitemfactory.c: use gdk_pixbuf_new_from_stream(). fixed up
461         item factory so inlined pixbufs actually work.
462
463 2001-06-25  Havoc Pennington  <hp@redhat.com>
464
465         * gtk/gtktreeviewcolumn.h, gtk/gtktreeviewcolumn.c:
466         s/RESIZEABLE/RESIZABLE/
467
468         * gtk/gtkwindow.c, gtk/gtkwindow.h: s/resizeable/resizable/
469
470 2001-06-25  Alexander Larsson  <alexl@redhat.com>
471
472         * configure.in:
473         Added --enable-fbmanager. This is some experimental code
474         that lets several GtkFB apps coordinate their access to the
475         framebuffer.
476         
477         * acconfig.h:
478         Added ENABLE_FB_MANAGER.
479
480         * gdk/linux-fb/Makefile.am:
481         Added gdkfbmanager and gdkfbswitch.
482
483         * gdk/linux-fb/gdkkeyboard-fb.c:
484         * gdk/linux-fb/gdkmouse-fb.c:
485         * gdk/linux-fb/gdkprivate-fb.h:
486         Split device init and open so that
487         they can be opened and closed while switched
488         away.
489
490         * gdk/linux-fb/gdkmain-fb.c:
491         Add the basic manager communication.
492
493         * gdk/linux-fb/gdkrender-fb.c:
494         Don't update to the shadow fb if we're
495         blocked by the fb manager.
496
497 Sun Jun 24 22:15:16 2001  Owen Taylor  <otaylor@redhat.com>
498
499         * docs/Changes-2.0.txt: Add note about child property
500         changes.
501
502 Sun Jun 24 21:34:32 2001  Owen Taylor  <otaylor@redhat.com>
503
504         * gtk/gtkenums.h gtk/gtkiconfactory.c: Add a special size for
505         drag-and-drop GTK_ICON_SIZE_DND (Default to 32x32)
506
507         * gtk/gtkdnd.c (gtk_drag_dest_set_target_list): Fix problem
508         with un'reffing wrong list reported by Jeff Franks.
509
510         * gtk/gtkdnd.[ch] (_gtk_drag_{source,}dest_handle_event): _prefix.
511
512         * gtk/gtkdnd.c (gtk_drag_set_icon_default): Use GTK_STOCK_DND
513         for the default icon. Remove inline XPM.
514
515         * gtk/gtkstock.h gtk/gtkiconfactory.c:
516         Add GTK_STOCK_DND GTK_STOCK_DND_MULTIPLE (Currently, stock_new
517         is used for GTK_STOCK_DND, but it is a bit too small.)
518
519         * gtk/stock-icons/stock_dnd_multiple.png
520         gtk/stock-icons/Makefile.am: New stock icon moved from gnome-libs.
521
522         * gtk/gtkdnd.c (gtk_drag_source_event_cb): Only return
523         TRUE when starting a drag. In other cases, we are
524         just observing. (#52995)
525
526         * gtk/gtkdnd.[ch] (gtk_drag_set_icon_{stock,pixbuf}): Add 
527         function to set the icon for a drag from a GdkPixbuf
528         or stock ID.
529
530         * gtk/gtkdnd.[ch] (gtk_drag_source_set_icon_{stock,pixbuf}): 
531         Likewise, for drag sources.
532
533         * gtk/gtkdnd.h: Deprecate gtk_drag_set_default_icon.
534         (Now should be done using the stock system.)
535
536 Sun Jun 24 12:06:47 2001  Owen Taylor  <otaylor@redhat.com>
537
538         * gtk/gtktextview.[ch] (gtk_text_view_set_text_window_size): 
539         Removed - didn't work and not particularly useful anyways
540         if it did. 
541
542 Sun Jun 24 11:29:35 2001  Owen Taylor  <otaylor@redhat.com>
543
544         * gdk/x11/gdkimage-x11.c (gdk_image_new): Fix stupid error
545         introduced last night that was making things decidedly not work.
546
547         * gtk/*.[ch]: Patch from Kristian Rietveld adding 80 getters
548         so that we have getter/setter pairing everywhere it makes
549         sense. (#55767)
550
551         * gtk/gtkradiobutton.[ch] gtk/gtktoolbar.c tests/testgtk.:
552         Rename gtk_radio_button_group to gtk_radio_button_get_group, add a
553         deprecated compat macro. (#55516)
554
555         * gtk/gtklabel.[ch]: Add functions
556         gtk_label_set/get_use_underline(), gtk_label_set/get_use_markup(),
557         gtk_label_set_label(), which mirror the property API for GtkLabel.
558         Make gtk_label_get_attributes() only reflect the attributes
559         set by gtk_label_set_attributes.
560
561         * gtk/gtknotebook.c (gtk_notebook_set_current_page) gtk/gtkcompat.h: Rename
562         from gtk_notebook_set_page().
563
564 Sat Jun 23 18:02:46 2001  Owen Taylor  <otaylor@redhat.com>
565
566         * configure.in: Fix tests for XShm.h.
567
568         * gdk/x11/gdkimage-x11.c: Cleanup error handling in
569         gdk_image_new() by use of goto, properly use g_object_unref().
570
571 Sat Jun 23 22:03:20 2001  Tim Janik  <timj@gtk.org>
572
573         * gdk/x11/gdkimage-x11.c (gdk_image_init): disabled g_free (image)
574         calls, as GdkImage is an object. these should be g_obejct_unref()
575         instead but that won't work because of the g_error() statement
576         in gdk_x11_image_destroy(). so for now, i did s/g_free/LEAK_IMAGE/
577         to spot these places.
578
579 Sat Jun 23 10:27:53 2001  Owen Taylor  <otaylor@redhat.com>
580
581         * modules/input/gtkimcontextxim.c: Fixup some problems with 
582         text length handling in error cases.
583
584         * gtk/gtkwidget.c (gtk_widget_size_allocate): Reorder
585         a bit to make test actually warn on attempt to allocation
586         a negative size. (#56101, Matthias Clasen)
587
588 Fri Jun 22 14:06:08 2001  Jonathan Blandford  <jrb@redhat.com>
589
590         * gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): Fix bug
591         noticed by Brian Cameron.
592         (gtk_tree_view_real_expand_row): Fix bug noticed by Brian
593         Cameron.
594
595 2001-06-22  Hans Breuer  <hans@breuer.org>
596
597         * gdk/gdk.def : updated externals
598
599         * gdk/win32/gdkdrawable-win32.c : corrected some casts
600         in GDK_NOTEs
601
602         * gdk/win32/gdkevents-win32.c : use _gdk_windowing_window_get_offsets
603         to translate coordinates to the internal > 16 bit system
604         Try to handle WM_WINDOWPOSCHANGED to get better performance for
605         when moving/resizing
606
607         * gdk/win32/gdkkeys-win32.c : implement gdk_keymap_get_default ()
608         and gdk_keymap_get_direction (). The latter is untested for
609         the RTL case
610
611         * gtk/gtk.def : updated externals
612
613         * gtk/gtkmain.c : gtk_get_default_language () should reurn the result
614         from pango_language_from_string (), not an already freed pointer
615
616         * gtk/stock-icons/stock_menu_sort_ascending.png : PNGs need to be 
617         binary (-kb) to be useable on windoze
618  
619 2001-06-21  Alexander Larsson  <alexl@redhat.com>
620
621         * gdk/linux-fb/gdkfont-fb.c (gdk_font_from_description): 
622         Update to new PangoLanguage changes.
623         
624         * gtk/gtkwindow-decorate.c:
625         * gtk/gtkwindow.[ch]:
626         Added setting argument to gtk_window_set_has_frame ()
627         
628 Thu Jun 21 13:42:01 2001  Owen Taylor  <otaylor@redhat.com>
629
630         * gdk/x11/gdkkeys-x11.c (gdk_keymap_get_direction): Handle
631         the case without XKB properly.
632
633         * gtk/gtkrc.c (gtk_rc_set_default_files): Remove
634         unused gtk_rc_auto_parse variable.
635
636         * gtk/gtkrc.[ch] gtk/gtkstyle.c docs/Changes-2.0.txt:
637         Remove gtk_rc_set_image_loader(), gtk_rc_load_image(), no
638         longer needed with GdkPixbuf.
639
640         * gtk/gtkrc.c (_gtk_rc_init): Make private.
641
642 Fri Jun 15 16:26:12 2001  Owen Taylor  <otaylor@redhat.com>
643
644         * gtk/gtkentry.h: Mark deprecated functions with
645         GTK_DISABLE_DEPRECATED.
646
647 Mon Jun 11 18:15:16 2001  Owen Taylor  <otaylor@redhat.com>
648
649         * gdk/gdk.h: Add missing gdk_rectangle_get_type() prototype.
650
651         * gtk/gtk[hv]scale.c: Include math.h, stdlib.h
652
653         * gdk/gdkpango.h gtk/gtkclist.c gtk/gtkentry.c gtk/gtkmain.[ch]
654           gtk/gtkspinbutton.c gtk/gtkstyle.c gtk/gtktextbuffer.c
655           gtk/gtktextdisplay.c gtk/gtktextiter.[ch]
656           gtk/gtktextlayout.c gtk/gtktexttag.[ch] gtk/gtkwidget.c: Adapt
657           to recent changes in Pango.
658
659         * tests/testgtk.c: Set language tags with gtk_label_set_markup()
660           to test whether the basic engine honors them.
661
662 Thu Jun 21 02:13:40 2001  Tim Janik  <timj@gtk.org>
663
664         * gtk/gtkcontainer.[hc]: added gtk_container_child_set_property() and
665         gtk_container_child_get_property().
666
667 Wed Jun 20 19:19:15 2001  Jonathan Blandford  <jrb@redhat.com>
668
669         * gtk/gtktreeview.c (gtk_tree_view_move_cursor_up_down): clean up
670         (gtk_tree_view_move_cursor_page_up_down): implement.
671
672 Wed Jun 20 05:32:05 2001  Tim Janik  <timj@gtk.org>
673
674         * gtk/gtkspinbutton.c: make maximum digits compile time configurable
675         via MAX_DIGITS and up to 20. 5 was just ridiculously small.
676         don't use automatic fixed size buffer for printf-ing floats, doubles
677         can expand to really _huge_ strings, use g_strdup_printf() instead.
678
679 Wed Jun 20 04:28:24 2001  Tim Janik  <timj@gtk.org>
680
681         * gtk/gtkrange.c (gtk_range_class_init): hum, "adjustment" was a
682         construct property in 1.2 and still needs to be.
683
684         * gtk/gtkwidget.c: "composite_child" is not a settable property.
685
686 Tue Jun 19 19:13:19 2001  Jonathan Blandford  <jrb@redhat.com>
687
688         * gtk/gtkliststore.c (gtk_list_store_clear): 
689         * gtk/gtktreestore.c (gtk_tree_store_clear): New functions to
690         clear a model.
691
692 Mon Jun 18 02:00:49 2001  Tim Janik  <timj@gtk.org>
693
694         * gtk/gtkwidget.c (gtk_widget_get_property): fix PROP_EVENTS.
695
696         * gtk/Makefile.am:
697         * gtk/gtk.h: disabled GtkPacker compilation.
698
699         * gtk/gtkarg.[hc], gtk/gtkargcollector.c: got rid of these.
700
701         * gtk/gtknotebook.c:
702         * gtk/gtktable.c:
703         * gtk/gtkbox.c: ported this over to child properties.
704
705         * gtk/gtksettings.c: fetch class properties via
706         g_object_class_list_properties().
707
708         * gtk/gtkcontainer.[hc]: implemented child properties, got rid of the
709         child arg interface. use gobjectnotifyqueue.c for child property
710         notification.
711
712         * gtk/gtkwidget.[hc]: provide necessary means for container child
713         properties, i.e. ::child_notify signal,
714         gtk_widget_freeze_child_notify(),
715         gtk_widget_child_notify(),
716         gtk_widget_thaw_child_notify().
717
718         * tests/testgtk.c: removed inferior property handling code, for
719         property editing, a generic module should be used, and GLE
720         coincidentally fullfills that purpose.
721
722         * docs/reference/Makefile.am: disabled gtk docs building, gtk-doc
723         needs to be adapted to g_object_class_list_properties() before this
724         builds again.
725
726 Mon Jun 18 20:06:10 2001  Jonathan Blandford  <jrb@redhat.com>
727
728         * gtk/gtktreeview.c (gtk_tree_view_row_expanded): New function to
729         test if a node is expanded.
730
731 Mon Jun 18 19:41:38 2001  Jonathan Blandford  <jrb@redhat.com>
732
733         * gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): Fix bug
734         where collapsing a selected row would result in the cursor/anchor
735         getting screwed up.
736
737 Fri Jun 15 18:53:48 2001  Jonathan Blandford  <jrb@redhat.com>
738
739         * gtk/gtktreesortable.c (gtk_tree_sortable_set_sort_func): Rename
740         gtk_tree_sortable_sort_column_id_set_func.  It's much shorter now.
741         * gtk/gtktreeview.c (gtk_tree_view_sort_iter_changed): WOOO!!!
742         Now I can really reorder/sort all Store widgets.  treesorttest
743         seems to just work now.
744         * gtk/gtklistview.c (gtk_list_store_iter_changed): Whoops.
745         testtreesort worked through a big coincidence all this time.
746         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): Nasty bug fix in nasty
747         code.
748         * tests/testtreecolumns.c: Big 'ol warning at the top letting
749         people know that this code should never ever ever be copied.
750
751 2001-06-15  Jonas Borgström  <jonas@codefactory.se>
752
753         * gtk/gtkwindow.h: Fixed a small typo, it should be
754         GTK_WINDOW_GROUP_GET_CLASS and not GTK_WINDOW_GET_CLASS
755         on line 134.
756
757 2001-06-14  Havoc Pennington  <hp@redhat.com>
758
759         Docs fixups, and:
760         
761         * gtk/gtkcompat.h: remove GTK_DISABLE_COMPAT_H, replace with
762         GTK_DISABLE_DEPRECATED
763
764 Thu Jun 14 19:21:27 2001  Jonathan Blandford  <jrb@redhat.com>
765
766         * gtk/gtktreestore.c (gtk_tree_store_sort_helper): Whoops.  Forgot
767         this a couple months ago.  Now GtkTreeStore sort of sorts.  I'll
768         finish it off tonight, though it basically works now when it's a
769         list.  Also, I have a sinking feeling neither GtkTreeStore or
770         GtkListStore actually resort when adding a new item.  I'll look
771         into it.
772
773 2001-06-14  Havoc Pennington  <hp@redhat.com>
774
775         * demos/gtk-demo/main.c (load_file): fix bug identified by
776         warnings I just added to gtktextbuffer
777
778 2001-06-14  Havoc Pennington  <hp@redhat.com>
779
780         * gtk/gtkwindow.c (window_group_cleanup_grabs): fix other typo
781
782         * gtk/gtkwidget.c (gtk_widget_propagate_state): fix typo
783
784         * gtk/gtktextbtree.c: don't leak node data all over the place.
785
786         * demos/gtk-demo/main.c (main): create fontify tags for the right
787         buffer
788
789         * gtk/gtktextbuffer.c, gtk/gtktexttagtable.c: enhance docs
790         to mention tags in the same table can't have the same name,
791         suggested by Skip Montanaro
792
793 2001-06-11  Havoc Pennington  <hp@redhat.com>
794
795         * gtk/gtktexttagtable.c (gtk_text_tag_table_add): improve warning 
796         for trying to add two tags with same name to the tag table
797
798         * demos/gtk-demo/main.c (main): fix colors ;-)
799
800 `Fri Jun  8 17:56:52 2001  Owen Taylor  <otaylor@redhat.com>
801
802         * gtk/gtkwindow.[ch] gtk/gtkmain.c: Add a GtkWindowGroup struct
803         that allows grouping together multiple windows so that grabs
804         within that set of windows only affect those windows.
805
806         * gtk/gtkmain.c gtk/gtkwidget.[ch]: Add a "grab_notify"
807         signal for notification when a widget becomes shadowed
808         by a grab or is no longer shadowed by a grab.
809
810         * gtk/gtkwidget.c (gtk_widget_propagate_state)
811           gtk/gtkmain.c: (gtk_widget_grab_add): Don't allow
812         insenstive widgets to maintain a grab.
813
814 2001-06-14  Alexander Larsson  <alexl@redhat.com>
815
816         * docs/README.linux-fb:
817         Add some example config files that can be used with the URW fonts.
818         
819         * gdk/linux-fb/gdkvisual-fb.c (gdk_visual_init): 
820         Set up the color ramps for DirectColor mode.
821
822 2001-06-11  Havoc Pennington  <hp@redhat.com>
823
824         * Release 1.3.6
825          
826 2001-06-13  Alexander Larsson  <alla@lysator.liu.se>
827
828         * gdk/linux-fb/gdkwindow-fb.c:
829         Unify shaped window code and make it repaint the area that used
830         to be part of the shape, but isn't anymore.
831
832 2001-06-11  Havoc Pennington  <hp@redhat.com>
833
834         * NEWS: Updates
835
836         * configure.in (GTK_MINOR_VERSION): bump version to 1.3.6
837
838         * gtk/Makefile.am: glib_genmarshal already contains top_builddir
839         
840 2001-06-13  Alexander Larsson  <alla@lysator.liu.se>
841
842         * gdk/linux-fb/gdkdnd-fb.c (gdk_drag_status):
843         Don't pass on GDK_ACTION_DEFAULT. The Xdnd code
844         passes zero instead, so do we.
845         
846 2001-06-13  Alexander Larsson  <alla@lysator.liu.se>
847
848         * gdk/linux-fb/gdkgc-fb.c (gdk_gc_copy):
849         Deep copy dash_list too.
850         (_gdk_fb_gc_new): Set default cap_style before
851         setting values.
852
853 2001-06-12  Alexander Larsson  <alla@lysator.liu.se>
854
855         * gdk/linux-fb/gdkkeyboard-fb.c (gdk_keymap_get_default,
856         gdk_keymap_get_direction): New functions.
857
858 Tue Jun 12 12:41:27 2001  Jonathan Blandford  <jrb@redhat.com>
859
860         * gtk/gtktreemodel.h (GTK_TREE_MODEL_LIST_ONLY): further justify
861         gtk_tree_model_get_flags by adding a second flag for atk.
862
863         * gtk/gtktreemodel.c: make cursor behavior interact better with
864         mouse presses.
865
866 Mon Jun 11 12:43:08 2001  Jonathan Blandford  <jrb@redhat.com>
867
868         * gtk/gtktreeview.c (gtk_tree_view_class_init): changed
869         expand_row/collapse_row to be 2 signals each -- test_expand_row
870         and row_expanded as well as test_collapse_row and row_collapsed.
871
872 2001-06-10  Anders Carlsson  <andersca@codefactory.se>
873
874         * demos/gtk-demo/stock_browser.c (do_stock_browser): Update
875         signal name to be changed instead of selection_changed.
876
877 2001-06-08  Havoc Pennington  <hp@redhat.com>
878
879         * gtk/gtkentry.c (gtk_entry_class_init): add read-only
880         "scroll_offset" property for notification when the layout offsets
881         may have changed
882         (gtk_entry_adjust_scroll): add notify for scroll_offset
883         (gtk_entry_layout_index_to_text_index): function to compensate for
884         preedit string when doing coordinate stuff on the entry's layout
885         (gtk_entry_text_index_to_layout_index): inverse function
886         (gtk_entry_get_layout_offsets): hook to get current position of
887         the layout      
888         (gtk_entry_get_layout): hook to get the layout itself.
889
890         * gtk/gtklabel.c (gtk_label_get_layout): new function
891
892 Fri Jun  8 19:49:29 2001  Jonathan Blandford  <jrb@redhat.com>
893
894         * gtk/gtktreeview.c (gtk_tree_view_real_select_cursor_row): New
895         keybinding.
896         (gtk_tree_view_focus): Fix merge conflict.
897
898 Fri Jun  8 18:41:30 2001  Jonathan Blandford  <jrb@redhat.com>
899
900         * gtk/gtktreeview.c (gtk_tree_view_set_cursor): new function to
901         clean up cursor handling.
902
903 2001-06-08  Havoc Pennington  <hp@redhat.com>
904
905         * gtk/gtktextbuffer.c (gtk_text_buffer_get_start_iter): added this
906         function
907
908         * gtk/gtktextview.c (gtk_text_view_get_default_attributes): added
909         this function
910
911 2001-06-08  Alex Larsson  <alexl@redhat.com>
912
913         * gtk/gtkcompat.h.in:
914         Added compat macros for all old GTK_TYPE_GDK_xxx types.
915         Fixes bug #52892
916
917 2001-06-08  Havoc Pennington  <hp@redhat.com>
918         
919         * gtk/gtkhsv.h (struct _GtkHSVClass): had GtkContainerClass as
920         parent still
921
922 2001-06-08  Havoc Pennington  <hp@redhat.com>
923
924         * gtk/gtktextbuffer.c (gtk_text_buffer_remove_all_tags): geez,
925         don't call g_list funcs on GSList
926
927         * gtk/gtkwidget.c (gtk_widget_child_focus): replaces
928         gtk_container_focus(), since some widgets have focusable locations
929         which are not other widgets. These widgets should not have to be 
930         containers just to manage the focus. For example, GtkHSV is
931         currently a container for no good reason. Also, this cleans
932         up the "if (is_container && is_sensitive && is_drawable)
933         container_focus ()" mess in widget implementations.
934
935         * gtk/gtkcontainer.c (gtk_container_focus): deprecate this
936         function, and have it just call gtk_widget_child_focus().
937
938         * gtk/gtkhsv.c: derive from widget not container
939         
940         Throughout: fix to reflect GtkContainer::focus change
941         
942 Fri Jun  8 12:38:49 2001  Jonathan Blandford  <jrb@redhat.com>
943
944         * gtk/gtktable.c (gtk_table_resize): warn if row/cols are out of
945         range.  Fix bug #55921
946
947         * gtk/gtkliststore.c (gtk_list_store_new_with_types): fix doc bug
948         (#55920).
949
950 Fri Jun  8 12:03:07 2001  Owen Taylor  <otaylor@redhat.com>
951
952         * gdk/gdkkeys.[ch]: Add a direction-changed signal,
953         and gdk_keymap_get_current_direction().
954
955         * gdk/x11/gdkevents-x11.c gdk/x11/gdkkeys-x11.c
956           gdk/x11/gdkmain-x11.c gdk/x11/gdkprivate-x11.h: Track
957         the current locked group, use it to set the keymap
958         direction.
959
960         * gtk/gtksettings.c: Add a new gtk-split-cursor setting
961         to determine whether we draw a split cursor or use
962         a jumping cursor based on the current direction.
963
964         * gtk/gtkentry.c gtk/gtktextview.c gtk/gtktextlayout.[ch]:
965         Obey the split cursor setting. 
966
967 Fri Jun  8 11:57:50 2001  Owen Taylor  <otaylor@redhat.com>
968
969         * gtk/gtkimmulticontext.c (activate_cb): Only activate
970         when toggling on, not when toggling off... (#55906)
971
972 Wed Jun  6 10:37:07 2001  Owen Taylor  <otaylor@redhat.com>
973
974         * gtk/gtkwidget.c (gtk_widget_set_double_buffered): 
975         s/gdk_window_begin_paint/gdk_window_begin_paint_region/
976         in docs. (#55812, Vitaly Tishkov)
977
978 2001-06-08  Anders Carlsson  <andersca@codefactory.se>
979
980         * demos/gtk-demo/main.c (create_tree): Changed signal name from
981         selection_changed to changed in signal connection to GtkTreeSelection,
982         also used g_signal_connectc since GtkTreeSelection is now a GObject.
983
984 Thu Jun  7 18:25:42 2001  Jonathan Blandford  <jrb@redhat.com>
985
986         * gtk/gtktreeselection.c: Now it's a GObject instead of a
987         GtkObject.  The GtkTreeSelection::selection_changed signal is now
988         the GtkTreeSelection::changed signal.
989
990         * gtk/gtktreeview.c: Modified to deal with new GtkTreeSelection
991         object.
992
993         * tests/gtktree*.c: Modified to deal with new GtkTreeSelection
994         object.
995
996 2001-06-07  Havoc Pennington  <hp@redhat.com>
997
998         * gtk/Makefile.am: fix glib-mkenums and glib-genmarshal again
999
1000 2001-06-07  Havoc Pennington  <hp@redhat.com>
1001         
1002         * gtk/Makefile.am: fixups for glib-mkenums and glib-genmarshal
1003         (not tested yet because with absolute path to srcdir I can't build
1004         atk, but it was broken anyway so this may help) 
1005
1006 2001-06-07  Havoc Pennington  <hp@redhat.com>
1007
1008         * configure.in: output m4macros/Makefile
1009         
1010 Wed Jun  6 21:59:16 2001  Jonathan Blandford  <jrb@redhat.com>
1011
1012         * gtk/gtktreeview.c (gtk_tree_view_size_allocate): hook up arrow
1013         buttons.  Fixes #55460 reported by matthiasc@poet.de.
1014
1015 Wed Jun  6 21:18:54 2001  Jonathan Blandford  <jrb@redhat.com>
1016
1017         * gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): centralize
1018         expansion/collapsing so it only happens in one place.
1019         (gtk_tree_view_real_expand_row): ditto.
1020
1021 2001-06-07  Havoc Pennington  <hp@redhat.com>
1022
1023         * tests/Makefile.am: add missing -I flag
1024
1025         * gtk/Makefile.am: use @GLIB_MKENUMS@, @GLIB_GENMARSHAL@, etc.
1026
1027         * configure.in: use pkg-config to see if GModule is
1028         supported; fix to properly turn on included loaders 
1029         when GModule isn't supported; don't use AC_CHECK_LIB 
1030         when libs are not installed yet
1031
1032         * autogen.sh: add support for AUTOGEN_SUBDIR_MODE
1033
1034         * Makefile.am (SUBDIRS): add m4macros subdir
1035
1036         * gtk/Makefile.am: $(srcdir)/foo targets must be $(srcdir)/foo in
1037         dependencies also.
1038
1039 Wed Jun  6 19:31:11 2001  Jonathan Blandford  <jrb@redhat.com>
1040
1041         * gtk/gtktreeview.c (gtk_tree_view_set_model): fix silly bug
1042         reported by "Padraig O'Briain" <Padraig.Obriain@Sun.COM>.
1043
1044 Wed Jun  6 20:01:38 2001  Jonathan Blandford  <jrb@redhat.com>
1045
1046         * gtk/gtktreeview.c
1047         (gtk_tree_view_real_expand_collapse_cursor_row): Handle key
1048         bindings to expand and collapse rows.
1049         (gtk_tree_view_real_select_cursor_parent): New key binding.
1050         (gtk_tree_view_real_toggle_cursor_row): New key binding.
1051
1052         * gtk/gtkmarshal.list: new
1053         marshaller. (VOID__BOOLEAN_BOOLEAN_BOOLEAN)
1054
1055 2001-06-06  Havoc Pennington  <hp@redhat.com>
1056
1057         * gtk/gtkrange.c (gtk_range_class_init): add "inverted" property
1058
1059         * gtk/gtkscale.c (gtk_scale_class_init): Change Page Up and Page
1060         Down to move visually rather than logically, since it confuses 
1061         people. Add -/+ and Ctrl--/+ bindings for logical movement.
1062
1063 2001-06-06  Alex Larsson  <alexl@redhat.com>
1064
1065         * gdk/linux-fb/gdkmain-fb.c (_gdk_windowing_init_check):
1066         Fix up error messages.
1067
1068 Wed Jun  6 10:34:42 2001  Owen Taylor  <otaylor@redhat.com>
1069
1070         * gtk/gtktooltips.h: Include gtkwidget.h 
1071         (#55798, Karl Nelson)
1072
1073         * gdk/x11/gdkwindow-x11.c (utf8_is_latin1): 0xff is
1074         a valid latin-1 character. (Marc Lehmann, #35467)
1075
1076         * gdk/x11/gdkwindow-x11.c: Fix minor typo in comment. 
1077         (Marc Lehmann, #35467)
1078         
1079 2001-06-05  Alex Larsson  <alexl@redhat.com>
1080
1081         * demos/gtk-demo/appwindow.c (do_appwindow):
1082         Don't swap the order of the args to gtk_widget_destroyed.
1083
1084         * tests/testgtk.c (destroy_properties):
1085         Don't crash when the properties window is destroyed.
1086
1087         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_new_from_stock):
1088         Use with_mnemonics to handle the case of stock items with
1089         underscores in them.
1090
1091 2001-06-05  Havoc Pennington  <hp@redhat.com>
1092
1093         * gtk/gtktextiter.c (gtk_text_iter_order): rename from 
1094         gtk_text_iter_reorder
1095
1096 2001-06-05  Havoc Pennington  <hp@redhat.com>
1097
1098         * gtk/gtktoolbar.c (gtk_toolbar_remove_space): new function
1099
1100 2001-06-05  Havoc Pennington  <hp@redhat.com>
1101
1102         * gtk/gtkspinbutton.c (gtk_spin_button_set_range): clamp the value 
1103         to the range that was set
1104
1105         * gtk/gtkrange.c: add value_changed signal, primarily 
1106         intended for use with GtkScale
1107         (gtk_range_set_increments): new function
1108         (gtk_range_set_range): new function with weird name
1109         (gtk_range_set_value): new function
1110         (gtk_range_get_value): new function
1111
1112         * gtk/gtkspinbutton.c (gtk_spin_button_get_value): rename 
1113         from gtk_spin_button_get_value_as_float(). Compat #define
1114         added for get_value_as_float.
1115
1116         * gtk/gtkhscale.c (gtk_hscale_new_with_range): new function
1117
1118         * gtk/gtkvscale.c (gtk_vscale_new_with_range): new function
1119
1120 Tue Jun  5 14:57:18 2001  Jonathan Blandford  <jrb@redhat.com>
1121
1122         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_get_size): Fix bug #55573
1123
1124 Mon Jun  4 12:41:25 2001  Owen Taylor  <otaylor@redhat.com>
1125
1126         * gtk/gtkwidget.h: Deprecate gtk_widget_set().
1127
1128         * tests/testgtk.c (create_tooltips): Remove usage of
1129         gtk_widget_set().
1130
1131 2001-06-05  Havoc Pennington  <hp@redhat.com>
1132
1133         * gtk/gtkcolorsel.c: Use new mnemonic convenience functions
1134
1135         Applying patch from Jeff Franks, with function docs added.
1136         
1137         * gtk/gtkcheckbutton.c (gtk_check_button_new_with_mnemonic):
1138         remove call to set_mnemonic_widget, change docs a bit.  
1139
1140         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_new_with_mnemonic):
1141         new function
1142
1143         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_new_with_mnemonic):
1144         new function
1145
1146         * gtk/gtkmenuitem.c (gtk_menu_item_new_with_mnemonic): new function
1147
1148         * gtk/gtkradiobutton.c (gtk_radio_button_new_with_mnemonic): new
1149         function
1150         (gtk_radio_button_new_with_mnemonic_from_widget): new function
1151
1152         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_new_with_mnemonic):
1153         new function
1154
1155         * gtk/gtktogglebutton.c (gtk_toggle_button_new_with_mnemonic): new
1156         function        
1157
1158         * gtk/gtklabel.c (gtk_label_new_with_mnemonic): Improve docs on 
1159         auto-selection of mnemonic widget.
1160
1161 Mon Jun  4 15:05:24 2001  Jonathan Blandford  <jrb@redhat.com>
1162
1163         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_max_width):
1164         Fix segfault found by Vitaly Tishkov <tvv@sparc.spb.su>.
1165         (gtk_tree_view_column_set_min_width): ditto.
1166
1167 Tue Jun  5 11:04:06 2001  Owen Taylor  <otaylor@redhat.com>
1168
1169         * gdk/gdkpixmap.h (GDK_PIXMAP_GET_CLASS): 
1170         s/GdkPixmapClass/GdkPixmapObjectClass/. (#51890, Jeff Franks)
1171
1172 Mon Jun  4 12:50:11 2001  Owen Taylor  <otaylor@redhat.com>
1173
1174         * gtk/gtkctree.c (gtk_ctree_insert_gnode): Add a missing
1175         gtk_clist_thaw().
1176
1177 2001-06-04  Havoc Pennington  <hp@pobox.com>
1178
1179         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Ignore 
1180         releases for buttons 6, 7
1181
1182 2001-06-04  Havoc Pennington  <hp@redhat.com>
1183
1184         * gtk/gtkseparatormenuitem.h: Fix a search-and-replace screwup
1185         (s/CHECK/SEPARATOR/ gone awry). Patch from Jeff Franks, bug
1186         #55562
1187
1188 2001-06-04  Havoc Pennington  <hp@redhat.com>
1189
1190         * gtk/gtktextview.c (gtk_text_view_size_request): handle case
1191         where text_view->layout == NULL by assuming its size is 0, 
1192         i.e. same as if we haven't done any reflow. Reported by 
1193         Hidetoshi Tajima #55448 
1194
1195 2001-06-04  Havoc Pennington  <hp@redhat.com>
1196
1197         * gdk/x11/gdkevents-x11.c (gdk_event_translate): support button 6
1198         and 7 for scroll left/right, from Thomas Broyer
1199
1200 2001-05-10  Havoc Pennington  <hp@redhat.com>
1201
1202         * gtk/gtksettings.c (gtk_settings_get_property): Handle case where
1203         we need to parse the xsetting as if it were an RC file string.
1204
1205         * gtk/gtkcolorsel.c (gtk_color_selection_class_init): load initial
1206         value of palette from settings, not from static variable
1207
1208         * gdk/x11/gdkevents-x11.c: add color palette, toolbar mode to
1209         xsettings translation table
1210
1211         * gtk/gtktoolbar.c (gtk_toolbar_new): Remove arguments, because 
1212         hardcoding the toolbar style conflicts with new customizable 
1213         toolbar style philosophy
1214         (gtk_toolbar_class_init): add settings for default toolbar style;
1215         these are used unless the app specifically forces a toolbar style
1216
1217         * gtk/gtksettings.c (settings_install_property_parser): only
1218         return at the start if we warn and parser == NULL
1219
1220         * gtk/gtkcolorsel.c (gtk_color_selection_finalize): disconnect the
1221         palette changed handler so we don't notify dead color selections
1222
1223         * gtk/gtkstyle.c (gtk_default_draw_shadow): handle
1224         xthickness/ythickness of 0 or 1 properly 
1225         (gtk_default_draw_resize_grip): clear the background behind the
1226         resize grips, and align to bottom right if we square the 
1227         area to be drawn.
1228
1229         * gtk/gtkstatusbar.c (gtk_statusbar_init): set horizontal usize on 
1230         statusbar label to 1, so it doesn't make toplevels resize oddly
1231         (gtk_statusbar_size_request): add grip size to request
1232         (gtk_statusbar_size_allocate): hack so the hbox still works with 
1233         the grip size in the request
1234
1235         * gtk/gtktoolbar.c (gtk_toolbar_show_all): override to fix 
1236         bug where showing all on a toplevel makes the toolbar 
1237         button text appear despite the toolbar mode
1238
1239         * gtk/gtkmenubar.c: add internal padding style property
1240
1241         * gtk/gtktoolbar.c: Add internal padding style property; add
1242         shadow type style property
1243
1244         * gtk/gtkmenubar.c (gtk_menu_bar_paint): paint box with widget
1245         state; and put Container::border_width outside the frame
1246
1247         * gtk/gtktextview.c: don't draw focus rectangle if we're in
1248         interior focus mode, we just use blinking cursor
1249
1250 2001-06-04  Havoc Pennington  <hp@redhat.com>
1251
1252         * configure.in: Make gdk-pixbuf have same version number as GTK
1253
1254 2001-06-04  Havoc Pennington  <hp@redhat.com>
1255
1256         * gtk/gtkspinbutton.c: Get rid of stupid g_return_if_fail on 
1257         digits greater than 6. If there actually are limits (which there
1258         likely aren't), should clamp to them not warn.
1259         (gtk_spin_button_new_with_range): don't take log of 0
1260         (gtk_spin_button_size_request): use digits to compute size
1261         request, rather than step increment.
1262
1263         * tests/testgtk.c (create_spins): test larger values of digits
1264         
1265         * gtk/gtkfontsel.c (gtk_font_selection_init): scroll to selected
1266         font on map not expose, so we don't get weirdness during scrolling
1267
1268 2001-06-04  Havoc Pennington  <hp@redhat.com>
1269
1270         * gtk/gtkclist.c (vadjustment_value_changed): Apply fix from
1271         Sam Solon, bug #54577, update value even if not drawable.
1272
1273 2001-06-04  Havoc Pennington  <hp@redhat.com>
1274
1275         * gtk/gtkrange.c (gtk_range_scroll_event): change SCROLL_RIGHT to
1276         SCROLL_LEFT, reported by Thomas Broyer.
1277
1278 2001-06-04  Havoc Pennington  <hp@redhat.com>
1279
1280         * gtk/gtkrange.c (gtk_range_adjustment_value_changed): 
1281         Process updates immediately, to prevent funny lag effect
1282         when scrolling, at some mild potential efficiency cost.
1283
1284 2001-06-04  Havoc Pennington  <hp@redhat.com>
1285
1286         * gtk/gtkrange.c (gtk_range_button_press): on middle click, center
1287         slider on the click.
1288
1289 2001-06-03  Havoc Pennington  <hp@pobox.com>
1290
1291         * gtk/gtkstyle.c (gtk_default_draw_slider): make this special-case
1292         hscale/vscale details, so we can use it for scrollbar as well.
1293
1294         * tests/testgtk.c (reformat_value): honor digits from GtkScale
1295
1296         * gtk/gtkenums.h (GtkTroughType): Remove this enum
1297         (GtkScrollType): add START and END from GtkTroughType
1298
1299         * gtk/gtkstyle.c (gtk_default_draw_slider): was not properly using
1300         its x/y arguments
1301
1302         * gtk/gtkrange.h, gtk/gtkrange.c, gtk/gtkscrollbar.h,
1303         gtk/gtkscrollbar.c, gtk/gtkscale.h, gtk/gtkscale.c,
1304         gtk/gtkhscrollbar.h, gtk/gtkhscrollbar.c, gtk/gtkvscrollbar.h,
1305         gtk/gtkvscrollbar.c, gtk/gtkhscale.h, gtk/gtkhscale.c,
1306         gtk/gtkvscale.h, gtk/gtkvscale.c: Rewrite GtkRange and subclasses.
1307
1308         Notable changes in the process:
1309          
1310         - stepper_size style property is the height for vertical 
1311           ranges, width for horizontal; the other dimension matches
1312           the trough size
1313         - add ability to do NeXT-style steppers (and several other styles
1314           that don't make any sense)
1315         - added min_slider_length, fixed_slider_length properties to
1316           GtkScrollbar
1317         - cleaned some private (or at least useless) functions out of
1318           gtkscale.h    
1319         - moved bindings to GtkScale from subclasses, even arrow keys,
1320           since blind users don't know scale orientation.
1321         - change move_slider action signal to use new GtkScrollType,
1322           remove GtkTroughType argument
1323         - digits rounds the values a range will input to the given 
1324           number of decimals, but will not try to force adjustment 
1325           values set by other controllers. That is, we no longer
1326           modify adjustment->value inside a value_changed handler.
1327         - added getters for GtkScale setters
1328         - middle-click begins a slider drag
1329         
1330 Fri Jun  1 18:54:47 2001  Jonathan Blandford  <jrb@redhat.com>
1331
1332         * gtk/gtktreeview.c: (gtk_tree_view_focus): Initial stab at
1333         getting the focus code to work.
1334         (gtk_tree_view_class_init): Add a bunch of keybindings.
1335
1336         * gtk/gtktreeviewcolumn.c
1337         (gtk_tree_view_column_set_cell_data_func):
1338         s/GtkCellDataFunc/GtkTreeCellDataFunc.
1339         (_gtk_tree_view_column_set_tree_view): Use "notify::model" instead
1340         of "properties_changed" to help justify the death of the latter
1341         signal. (-:
1342
1343         * tests/testtreefocus.c (main): Let some columns be focussable to
1344         test focus better.
1345
1346 2001-06-01  Havoc Pennington  <hp@redhat.com>
1347
1348         * gtk/gtkentry.c (gtk_entry_commit_cb): implement overwrite mode
1349         
1350         * gtk/gtktextview.c (gtk_text_view_commit_handler): don't
1351         overwrite in overwrite mode if we already deleted the selection
1352         and replaced it with new text.  
1353
1354         * gtk/gtklabel.c (gtk_label_select_region_index): if you set the
1355         selection to an empty range, clear the clipboard if we owned it.
1356         (gtk_label_set_selectable): give up selection if we become
1357         unselectable.
1358         (gtk_label_state_changed): override state changed to unselect text
1359         when insensitive
1360         (get_text_callback): add paranoia check that indexes aren't
1361         outside of label->text
1362         (gtk_label_select_region): make -1 for start_offset mean "end of
1363         label," for consistency with GtkEditable
1364
1365         * gtk/gtkmessagedialog.c (gtk_message_dialog_new): honor
1366         GTK_DIALOG_NO_SEPARATOR flag
1367
1368 Fri Jun  1 11:47:11 2001  Owen Taylor  <otaylor@redhat.com>
1369
1370         * gtk/gtkcombo.c (gtk_combo_set_use_arrows_always): Fix 
1371         notifications on non-existant "enable_arrow_keys".
1372         (#53753, Skip Montanaro)
1373
1374 Fri Jun  1 11:31:55 2001  Owen Taylor  <otaylor@redhat.com>
1375
1376         * gdk/gdkrectangle.c (gdk_rectangle_get_type): Add 
1377         GDK_TYPE_RECTANGLE.
1378
1379         * gtk/gtkwidget.c (gtk_widget_class_init): Fix type
1380         of allocation argument be GDK_TYPE_RECTANGLE.
1381
1382 Thu May 31 12:43:57 2001  Owen Taylor  <otaylor@redhat.com>
1383
1384         * gtk/gtkoptionmenu.c: Account for the fact that the border
1385         width is _outside_ the window. (Fixes #54585, bug found
1386         by Bastien Nocera.)
1387
1388 Wed May 30 15:56:30 2001  Owen Taylor  <otaylor@redhat.com>
1389
1390         * gtk/gtksettings.c (gtk_settings_get_property): Validate
1391         value from GDK settings against parameter spec.
1392
1393         * gdk/x11/gdkevents-x11.c (gdk_setting_get): Add assignments
1394         to temporary values and use g_value_transform(), since
1395         thinking that GValue was going to be easy or efficient
1396         to use was, of course, a mistake.
1397
1398         * gtk/gtksettings.c: Add cursor blink setting.
1399         
1400         * gdk/x11/gdkevents-x11.c: Add cursor blink X settings.
1401
1402         * gtk/gtkentry.c: Add cursor blinking.
1403
1404         * gtk/gtktextview.c (gtk_text_view_check_cursor_blink): Use
1405         cursor blink global settings.
1406
1407         * gtk/gtkentry.c (gtk_entry_button_press): Add notification
1408         for :text_position in places where it is missing.
1409
1410 Tue May 29 18:17:11 2001  Owen Taylor  <otaylor@redhat.com>
1411
1412         * autogen.sh (have_libtool): Fix GNU sedism (#55430)
1413
1414 Tue May 29 17:40:29 2001  Owen Taylor  <otaylor@redhat.com>
1415
1416         * configure.in (GTK_DEP_CFLAGS): Use $PKG_CONFIG,
1417         not pkg-config. (#51032)
1418
1419         * gdk/gdkproperty.h: Remove inappropriate G_GNUC_CONST
1420         (fixes #51952, James Henstridge)
1421         
1422 2001-05-27  Alexander Larsson  <alla@lysator.liu.se>
1423
1424         * gtk/gtkstock.h (GTK_STOCK_GO_UP):
1425         Rename to the more correct gtk-go-up.
1426
1427         * gtk/stock-icons/stock_menu_sort_ascending.png:
1428         Added new file.
1429         
1430         * gtk/stock-icons/stock_menu_sort_descending.png:
1431         Changed to show descending instead of ascending.
1432
1433         * gtk/gtkiconfactory.c:
1434         Added menu size icon to sort ascending.
1435
1436         * gtk/stock-icons/Makefile.am:
1437         Added stock_menu_sort_ascending.png.
1438         
1439         * gtk/gtkseparatormenuitem.c:
1440         Use correct typenames.
1441
1442 Sun May 20 20:07:35 2001  Tim Janik  <timj@gtk.org>
1443
1444         * gtk/gtksignal.[hc] (gtk_signal_connect_full): make hanlder id a
1445         gulong as in GSignal.
1446
1447 Fri May 25 19:04:17 2001  Jonathan Blandford  <jrb@redhat.com>
1448
1449         * gtk/gtktreeview.c (gtk_tree_view_calc_size): Remove almost all
1450         instances of GtkCellRenderer in code (all but dnd icon code).
1451         Virtualized in GtkTreeViewColumn.  Now I need to move focus in
1452         there, and I can do multiple Cells per column.
1453
1454         * gtk/gtktreeviewcolumn.c: Proxy all cell calls correctly
1455
1456         * gtk/gtktreemodel.c (gtk_tree_row_reference_new_proxy): fix bug
1457         when model was unreffed prior to removing the row reference.
1458
1459 2001-05-25  Havoc Pennington  <hp@redhat.com>
1460
1461         * gtk/gtkiconfactory.c: fix so that default icons are created if 
1462         you call gtk_stock_list_ids()
1463
1464         * demos/gtk-demo/stock_browser.c (create_model): sort stock items
1465         in list
1466
1467 2001-05-25  Havoc Pennington  <hp@redhat.com>
1468
1469         * gtk/gtkiconfactory.c (gtk_icon_set_get_sizes): get sizes an icon
1470         set can render without falling back to missing image icon
1471
1472         * gtk/gtktextview.c (gtk_text_view_size_request): request full
1473         size of text, instead of random values
1474
1475         * gtk/gtktreeview.c (gtk_tree_view_size_request): request full
1476         size of tree view, instead of random values
1477
1478         * gtk/gtkiconfactory.c (gtk_icon_set_render_icon): render fallback
1479         image in an appropriate size
1480
1481         * gtk/gtkstock.h: Rename the stock items including _BUTTON_,
1482         etc. not to include that. i.e. s/GTK_STOCK_BUTTON_OK/GTK_STOCK_OK/
1483
1484         Throughout: fix GTK_STOCK_BUTTON_ instances
1485         
1486         * gtk/gtkstock.h, gtk/gtkstock.c, gtk/gtkiconfactory.h,
1487         gtk/gtkiconfactory.c, gtk/stock-icons/Makefile.am:
1488         Add a bunch of new stock items/icons
1489
1490         * gtk/gtktreeview.c (gtk_tree_view_insert_column_with_data_func):
1491         new function, convenience for inserting columns with a data func
1492
1493         * gtk/gtkiconfactory.c: keep a list of all existing icon factories
1494         (_gtk_icon_factory_list_ids): use list of all factories to
1495         generate a list of all known IDs
1496
1497         * gtk/gtkstock.c (gtk_stock_list_ids): replace
1498         gtk_stock_list_items() with a function that returns all IDs known
1499         including those for GtkIconFactory.
1500
1501 2001-05-25  Hans Breuer  <hans@breuer.org>
1502
1503         * gdk/win32/gdkgc-win32.c : made fil mode GDK_STIPPLED actually
1504         work -> check boxes and radio buttons are drawn now, even on win9x.
1505         Improved line settings a bit, still no clue how to get really dotted
1506         lines on win9x, on NT it's PS_ALTERNATE.
1507
1508         * gdk/win32/gdkwindow-win32.c : use SafeAdjustWindowRect for 
1509         GDK_HINT_MIN_SIZE as well
1510
1511         * gdk/win32/makefile.am : added gdkkeys-win32.c to EXTRA_DIST
1512
1513         * gtk/gtk.def : updated
1514
1515         * gtk/gtktreeprivate.h : change column_drop_func to be a function
1516         pointer not a function pointer pointer
1517
1518         * tests/testdnd.c : include <stdlib.h> for putenv prototype
1519
1520         * tests/testsocket.c : made it compile on win32 again
1521
1522         * tests/makefile.msc : one more test-app uses prop-editor.obj
1523
1524 2001-05-22  Havoc Pennington  <hp@pobox.com>
1525
1526         * gtk/gtkbin.c (gtk_bin_get_child): New function
1527
1528 Wed May 23 20:07:53 2001  Owen Taylor  <otaylor@redhat.com>
1529
1530         * gtk/gtkimcontextsimple.c: Add Mode_Switch to list of keys
1531         to ignore when doing compose processing.
1532
1533 2001-05-22  Joe Shaw  <joe@ximian.com>
1534
1535         * gtk/gtktextiter.c (_gtk_text_btree_get_iter_at_last_toggle): 
1536         Simplify as suggested by Havoc. Just get the last iter and work
1537         backward to the tag instead of getting a line and working back from
1538         there. Fixes passing in an invalid offset to
1539         iter_init_from_byte_offset().
1540
1541 Tue May 22 16:25:27 2001  Jonathan Blandford  <jrb@redhat.com>
1542
1543         * gtk/gtktreeview*.h: 
1544         * gtk/gtkcell*.h:
1545         * gtk/gtk*store.h:
1546         Added patch from Jeff Franks <jcf@tpg.com.au> to add GET_CLASS
1547         macros to all objects.
1548
1549 Tue May 22 15:13:52 2001  Jonathan Blandford  <jrb@redhat.com>
1550
1551         * gtk/gtkcellrenderertext.c
1552         (gtk_cell_renderer_text_set_fixed_size): Evil function to deal
1553         with very large (TM) amounts of text.  May be moved to
1554         GtkCellRenderer in the future, though I'm not sure it wants to be
1555         this accessible.
1556
1557         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_update_button):
1558         More sanity brought to this class.  I like it.
1559
1560         * tests/testtreecolumns.c (ViewColumnModel): Amazingly scary test
1561         case.  Kids, don't try this at home.
1562
1563         * gtk/gtktreemodel.c (gtk_tree_model_get_iter_root): new
1564         convenience function.
1565
1566         * gtk/gtkwindow.c (gtk_window_set_geometry_hints): Fix typo in docs.
1567
1568 2001-05-21  Alexander Larsson  <alexl@redhat.com>
1569
1570         * gtk/gtkfontsel.c:
1571         Added properties. Based on patch by Lee Mallabone.
1572
1573         * gtk/gtkruler.c:
1574         * gtk/gtkhruler.c:
1575         * gtk/gtkvruler.c:
1576         * gtk/gtktext.c:
1577         * gtk/gtktextview.c:
1578         Converted GtkArg to GParam. Based on patches by John Margaglione.
1579
1580         * tests/Makefile.am:
1581         * tests/testtext.c:
1582         Add a property editor to testtext.
1583         
1584 Mon May 21 11:29:21 2001  Owen Taylor  <otaylor@redhat.com>
1585
1586         * gtk/gtk{h,v,}paned.c: Only show the separator if 
1587
1588         * configure.in: Fixed reversed conditional causing all image
1589         libraries to be linked in.
1590
1591 2001-05-21  Joe Shaw  <joe@ximian.com>
1592
1593         * gtk/gtklayout.c (gtk_text_layout_get_lines): Remove the assertion
1594         that top_y needs to be >= 0.
1595
1596 2001-05-11  Havoc Pennington  <hp@pobox.com>
1597         
1598         * gdk/x11/gdkmain-x11.c: Improve error messages for X errors and
1599         losing connection to the X server.
1600
1601 Sun May 20 13:59:20 2001  Owen Taylor  <otaylor@redhat.com>
1602
1603         * configure.in: Start checks for X from pangox/pangoxft
1604         CFLAGS to avoid duplicate libraries.
1605
1606         * gdk/Makefile.am (LDFLAGS): Remove extra -lm.
1607
1608         * configure.in (GDK_PIXBUF_PACKAGES): Fix GDK_PIXBUF_PACKAGES
1609         to include gobject.
1610         
1611 2001-05-18  Alexander Larsson  <alexl@redhat.com>
1612
1613         * gtk/gtkspinbutton.c:
1614         Convert GtkArgs to GParams. Based on patch by John Margaglione.
1615         Also do size request reasonable for MAXDOUBLE. Previously it printed
1616         the limits to a buffer and overran it. Instead do it using log10() and
1617         limit the width to 10 digits.
1618         
1619         * gtk/gtkwidget.c (gtk_widget_get_property):
1620         Correctly handle setting the parent property to NULL.
1621
1622 Fri May 18 15:26:26 2001  Owen Taylor  <otaylor@redhat.com>
1623
1624         * gtk/gtktextview.c (gtk_text_view_style_set): Reset 
1625         style attributes even if the widget isn't realized.
1626
1627         * demos/gtk-demo/main.c: Use a slightly smaller font.
1628
1629 Fri May 18 14:25:20 2001  Owen Taylor  <otaylor@redhat.com>
1630
1631         * gtk/gtkcontainer.c: Remove reallocate-redraws property.
1632         This is something that only a widget writer would ever want
1633         to change.
1634
1635         * gtk/gtksignal.c: Handle G_SIGNAL_TYPE_STATIC_SCOPE for
1636         gtk_signal_emit_by_name().
1637
1638         * gtk/gtkviewport.c: Fix some warnings.
1639
1640         * gtk/gtkwidget.c gtk/gtksizegroup.c: Add "size group" facility
1641         allowing the requisitions of multiple widgets to be grouped
1642         together.
1643
1644         * tests/testgtk.c: Add GtkSizeGroup test
1645
1646         * demos/gtk-demo/sizegroup.c: Add GtkSizeGroup demo.
1647
1648         * demos/gtk-demo/main.c demos/gtk-demo/pixbufs.c: Fix some
1649         warnings.
1650
1651         * configure.in: Switch to using AM_GLIB_GNU_GETTEXT.
1652
1653 2001-04-28  Martin Baulig  <baulig@suse.de>
1654
1655         * gtk/gtkimagemenuitem.[ch]: Renamed gtk_image_menu_item_add_icon()
1656         to gtk_image_menu_item_set_icon() and made it work if there's already
1657         an image.
1658         (gtk_image_menu_item_new): This function doesn't take any arguments anymore.
1659         (gtk_image_menu_item_new_with_label): New function.
1660
1661 Thu May 17 16:20:04 2001  Jonathan Blandford  <jrb@redhat.com>
1662
1663         * demos/gtk-demo/main.c (fontify): It's the worlds ugliest
1664         highlighting code!!!!  The result is okay so long as you don't try
1665         to stress it.  It also highlights a bug in the TextView so it's in
1666         an unproportional font right now until it's fixed.
1667
1668         *demos/gtk-demo/*.c: Clean up code a bit to make it
1669         ugly-parser(TM) friendly. (-:
1670
1671 2001-05-17  Joe Shaw  <joe@ximian.com>
1672
1673         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Remove the assertions
1674         that x_offset and y_offset must be >= 0. Clip the cursor being drawn
1675         if it is only partially onscreen.
1676
1677 Thu May 17 17:10:13 2001  Owen Taylor  <otaylor@redhat.com>
1678
1679         * gtk/gtkentry.c: Make logical motion and deletion by graphemes, 
1680         not by characters.
1681
1682         * gtk/gtkentry.c: Handle "trailing" returns from Pango when they
1683         are not zero or one; that is, when graphemes of multiple characters
1684         are involved.
1685
1686         * gtk/gtktextlayout.c (line_display_index_to_iter): Remove unnecessary
1687         FIXME.
1688
1689 2001-05-17  Alexander Larsson  <alla@lysator.liu.se>
1690         
1691         * gtk/gtkbbox.c:
1692         Add properties, based on patch by Lee Mallabone.
1693
1694         * gtk/gtknotebook.c:
1695         * gtk/gtktoolbar.c:
1696         Convert from GtkArg to GParam, based on patch by John Margaglione.
1697         
1698         * gtk/gtkhscale.c:
1699         * gtk/gtkvscale.c:
1700         * gtk/gtkhscrollbar.c:
1701         * gtk/gtkvscrollbar.c:
1702         * gtk/gtkrange.c:
1703         Move adjustment property to GtkRange.
1704
1705         * gtk/gtklabel.c:
1706         Setup mnemonics on property changes
1707
1708         * gtk/gtkwidget.c (gtk_widget_get_property):
1709         GdkExtensionMode is an enum, not a flag. Set it with
1710         g_value_set_enum ().
1711
1712         * tests/prop-editor.c:
1713         Better propery editor.
1714
1715         * tests/testgtk.c:
1716         Add new property test. Pass zero to the property editor to
1717         get properties from all derived types.
1718         
1719 Sun May 13 12:01:12 2001  Owen Taylor  <otaylor@redhat.com>
1720
1721         * autogen.sh (have_automake): Require libtool-1.4,
1722         automake-1.4p1.
1723
1724         * acinclude.m4: Remove libtool macros.
1725
1726         * gdk-pixbuf/Makefile.am: Add dependencies to loade
1727         modules.
1728
1729         * gdk/Makefile.am: Add dependency on libgdk_pixbuf.la
1730         for libgdk.
1731
1732         * gtk/Makefile.am: Add dependency on libgdk_pixbuf.la
1733         libgdk.la for libgtk.
1734
1735         * modules/input/Makefile.am: Make modules have full
1736         dependencies.
1737
1738 Wed May 16 14:06:01 2001  Jonathan Blandford  <jrb@redhat.com>
1739
1740         * gtk/gtktreemodel.c (gtk_tree_path_new_from_string): fix bug
1741         #54699 where paths weren't being checked for correctness.
1742
1743 Tue May 15 20:13:24 2001  Jonathan Blandford  <jrb@redhat.com>
1744
1745         * gtk/gtktreeviewcolumn.c: You can now set all sorts of properties
1746         in any order you wan, whether or not the column is added to the
1747         tree, or the tree is realized.  Yay!
1748
1749         * gtk/gtktreeviewcolumn.c
1750         (gtk_tree_view_column_setup_sort_column_id_callback): handle
1751         sorting columns a lot saner
1752
1753         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_reorderable):
1754         new function to actually set wether or not a column is
1755         reorderable.
1756
1757         * gtk/gtktreeview.c (gtk_tree_view_unrealize): Only destroy things
1758         if we have 'em.
1759
1760         * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_set_tree_view):
1761         Fix nasty bug where we were showing the button just before
1762         realizing it.  As a result, the parent window was
1763         tree_view->window instead of tree_view->priv->header_window.
1764
1765         * gtk/gtktreeview.c (gtk_tree_view_set_reorderable): new property
1766         to let you easily reorder a list or tree.
1767
1768 2001-05-15  Alexander Larsson  <alla@lysator.liu.se>
1769
1770         * gtk/gtkpacker.c: Apply patch from John Margaglione that converts
1771         from args to properties.
1772
1773 Tue May 15 10:11:59 2001  Owen Taylor  <otaylor@redhat.com>
1774
1775         * gtk/gtkpreview.c: Apply patch from John Margaglione converting
1776         from args to properties. (#51957)
1777
1778         * gtk/gtkscale.c (gtk_scale_class_init): Move install property
1779         calls to after ->set_property call.
1780
1781 Mon May 14 14:56:21 2001  Owen Taylor  <otaylor@redhat.com>
1782
1783         * tests/prop-editor.c: Block against redundant changes.
1784
1785         * gtk/gtkpaned.c gtk/gtk[hv]paned.c: Add position, position_set
1786         properties.
1787
1788 Sun May 13 18:40:04 2001  Owen Taylor  <otaylor@redhat.com>
1789
1790         * gdk/gdkpixmap.h: Remove creative formatting.
1791
1792 Thu May 10 19:22:28 2001  Owen Taylor  <otaylor@redhat.com>
1793
1794         * gtk/gtktogglebutton.c:  Patch from John Margaglione converting to
1795         property API. (#51669)
1796
1797         * gtk/gtkscale.c: Patch from John Margaglione converting to
1798         property API. (#51891)
1799
1800         * gtk/gtkaccellabel.c: Applied patch from Lee Mallabone, converting
1801         to property API. (#50985)
1802
1803 Fri May 11 20:13:44 2001  Tim Janik  <timj@gtk.org>
1804
1805         * gtk/gtkmain.c (gtk_main_do_event): remember widget's double
1806         buffering state across expose event, so we still call end_paint().
1807
1808 2001-05-11  Alexander Larsson  <alexl@redhat.com>
1809
1810         * gtk/gtkhsv.c (paint_triangle):
1811         Expose the ring in the triangle at the correct place when
1812         exposing just a part of the triangle.
1813
1814         * gtk/gtkwindow-decorate.c (gtk_decorated_window_focus_change):
1815         Return FALSE, or window focusing will not work.
1816
1817 2001-05-11  Havoc Pennington  <hp@pobox.com>
1818
1819         * gtk/gtkimage.c (gtk_image_new_from_stock): docs, fixes bug
1820         #54144
1821
1822         * gtk/gtkcolorsel.c (gtk_color_selection_new): docs, fixes
1823         bug #54330
1824
1825 Fri May 11 02:53:57 2001  Tim Janik  <timj@gtk.org>
1826
1827         * gtk/gtktogglebutton.c (gtk_toggle_button_expose): don't
1828         propagate exposes to NULL child.
1829
1830         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed): guard
1831         against not having one of the scrollbars.
1832
1833         * gtk/gtklabel.c (gtk_label_setup_mnemonic): clean up after us,
1834         we don't keep a mnemonic window if we have no mnemonic installed.
1835
1836 Fri May 11 01:05:00 2001  Tim Janik  <timj@gtk.org>
1837
1838         * gtk/gtktypeutils.h: grum, gtk_type_class() is not GNUC_CONST
1839         it has the _important_ side effect of initializing a class.
1840
1841 2001-05-10  Alexander Larsson  <alexl@redhat.com>
1842
1843         * gdk/linux-fb/gdkprivate-fb.h:
1844         Make sure you can compile out the implementation/wrapper assert
1845         macros.
1846
1847         * gdk/linux-fb/gdkdrawable-fb2.c:
1848         Check implementation/wrappers, initialize type for pixmap dummys.
1849
1850         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image):
1851         Hide the cursor if reading from the screen.
1852
1853         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic):
1854         Fix sign bug in tiling code.
1855
1856         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_clear_area):
1857         Handle background pixmaps.
1858
1859 Wed May  9 15:27:22 2001  Jonathan Blandford  <jrb@redhat.com>
1860
1861         * gtk/gtktreeview.c (gtk_tree_view_set_column_drag_function): New
1862         function to let user control where columns are dragged.
1863
1864         * gtk/gtktreeview.c (gtk_tree_view_key_press): Cancel drags if
1865         Escape is pressed.
1866
1867 Wed May  9 09:08:44 2001  Jonathan Blandford  <jrb@redhat.com>
1868
1869         * gtk/gtktreeview.c (gtk_tree_view_class_init): New
1870         "columns_changed" signal.
1871         (gtk_tree_view_motion_draw_column_motion_arrow): Change column
1872         motion code to draw arrows to the side if indicator is outside the
1873         widget.
1874         (gtk_tree_view_map_expanded_rows): Implement.
1875
1876 2001-05-07  Alexander Larsson  <alexl@redhat.com>
1877
1878         * demos/testpixbuf-save.c: 
1879         * demos/testpixbuf-drawable.c:
1880         Include gdkfb.h on linux-fb.
1881
1882 2001-05-07  Alexander Larsson  <alexl@redhat.com>
1883
1884         * gdk/linux-fb/gdkdnd-fb.c (get_toplevel_window_at):
1885         New function for getting toplevel window at position.
1886         (gdk_drag_find_window): Use get_toplevel_window () instead
1887         of gdk_window_get_pointer(). (gdk_drag_status): Use
1888         correct context for getting window.
1889
1890         * gdk/linux-fb/gdkproperty-fb.c (gdk_atom_name):
1891         g_strdup the atom name.
1892
1893         * gdk/linux-fb/gdkwindow-fb.c:
1894         Costmetic fix.
1895
1896         * gtk/gtkdnd.c (gtk_drag_source_handle_event):
1897         Add code for changing cursor on linux-fb backend (same as
1898         win32).
1899
1900 2001-05-07  Federico Mena Quintero  <federico@ximian.com>
1901
1902         * gtk/gtkwindow.c (gtk_window_focus): Test for bin->child being
1903         present before doing anything with it.  Patch from HÃ¥vard KvÃ¥len
1904         <havardk@netcom.no>.  Fixes Ximian bugzilla #2492 (OK, the bug
1905         report was not for the development branch of GTK+, but it applies
1906         anyways).
1907
1908 2001-05-04  Havoc Pennington  <hp@redhat.com>
1909
1910         * configure.in: fix some shell typos
1911
1912         * gtk/gtkcolorsel.c (gtk_color_selection_destroy): warning fix
1913
1914         * gtk/gtkimage.c: handle animations
1915
1916         * gtk/gtkcheckbutton.c (gtk_check_button_size_request): request
1917         border_width * 2, not just border_width
1918
1919         * gtk/gtkscale.c: add "format_value" signal to allow people
1920         to override the way values are drawn.
1921         (gtk_scale_get_value_size): fix width/height mistake,
1922         and compute size from actual displayed text, not 
1923         from made-up text.
1924
1925         * gtk/gtktexttag.c (gtk_text_tag_class_init): fix return type in 
1926         signal registration
1927
1928         * tests/testtext.c: Add "Remove all tags" menu item for testing
1929
1930         * gtk/gtktextbuffer.c (gtk_text_buffer_remove_all_tags): implement
1931
1932         * demos/gtk-demo/main.c (main): add hack so we can find modules
1933         without installing gtk
1934
1935         * demos/gtk-demo/textview.c (insert_text): demo font scaling
1936
1937         * gtk/gtkcellrenderertext.c: Add "scale" property (font scaling
1938         factor)
1939         (gtk_cell_renderer_text_set_property): remove some bogus
1940         g_object_notify
1941
1942         * gtk/gtktexttag.c: add "scale" property which is a font scaling
1943         factor
1944
1945         * gtk/gtktextlayout.c (add_text_attrs): add font scale attribute 
1946         to layout
1947
1948         * gtk/gtktextiter.c (gtk_text_iter_is_start): rename from
1949         gtk_text_iter_is_first
1950
1951 2001-01-06  Hans Breuer  <hans@breuer.org>
1952
1953         * gdk/gdk.def : updated exports
1954
1955         * gdk/win32/makefile.msc : -DGDK_ENABLE_BROKEN otherwise
1956         gdk won't compile anymore
1957  
1958         * gdk/win32/gdkevents-win32.c : initialize ret_val when
1959         processing GDK_FILTER functions, initialize event.key->hardware_keycode.
1960         Improved gdk_flush () to not only do pending drawing operations
1961         but also process all currently pending events. This should make
1962         the behaviour more similar to the X11 version.  
1963
1964         * gdk/win32/gdkgc-win32.c (predraw_set_background) : a background
1965         option needs to be set even if there is no GDK_GC_BACKGROUND.
1966         (gdk_win32_hdc_get) : use predraw_set_background () independent
1967         of value_mask. This allows to draw dashed lines leaving the original
1968         background intact.
1969
1970         * gdk/win32/gdkimage-win32.c (gdk_image_new_bitamp) : free data
1971         after processing, because we can't reuse it as the X11 version does.
1972
1973         * gtk/gtk.def : updated exports
1974
1975         * gtk/makefile.msc.in : added ATK, removed all test apps. (I
1976         would like to get rid of this file again, and use straight
1977         makefile.msc again, as the other Gtk+ subdirs do)
1978
1979         * test/makefile.msc (new file) : build the test apps here
1980
1981 2001-05-05  ERDI Gergo  <cactus@cactus.rulez.org>
1982
1983         * gdk/gdkpango.c (gdk_pango_get_item_properties): Peek
1984         strike-through setting
1985         (gdk_draw_layout_line_with_colors): Render strike-through
1986
1987 Sat May  5 10:06:24 2001  Owen Taylor  <otaylor@redhat.com>
1988
1989         * Release 1.3.5
1990
1991         * configure.in (GTK_MICRO_VERSION): Up to 1.3.5
1992
1993         * NEWS: Updated
1994
1995         * demos/gtk-demo/Makefile.am (EXTRA_DIST): Fix minor
1996         Makefile breakage.
1997
1998 Sat May  5 09:18:30 2001  Owen Taylor  <otaylor@redhat.com>
1999
2000         * demos/gtk-demo/images.c (progressive_timeout): Fix
2001         typo in filename.
2002
2003         * gtk/gtktreeview.c (gtk_tree_view_row_activated): Comment
2004         out FIXME warning; just too annoying.
2005
2006 2001-05-04  Alex Larsson  <alla@lysator.liu.se>
2007
2008         * gdk/linux-fb/gdkcolor-fb.c:
2009         Better error messages.
2010
2011         * gdk/linux-fb/gdkpixmap-fb.c (gdk_pixmap_new):
2012         Initialize abs_x and abs_y.
2013         
2014         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic):
2015         Correct handling of stipple offset.
2016
2017         * gdk/linux-fb/gdkvisual-fb.c (gdk_visual_init):
2018         Treat directcolor framebuffers as truecolor.
2019         
2020 Thu May  3 14:13:49 2001  Owen Taylor  <otaylor@redhat.com>
2021
2022         * INSTALL.in HACKING gtk/gtkaccessible.[ch] gtk/gtk.c: Add
2023         dependency on Atk for accessibility support.
2024
2025         * configure.in **/Makefile.am: Major reworking of substituted
2026         variables for CFLAGS/LIBS to make a lot more sane and 
2027         keep the the compile/link lines a bit shorter.
2028
2029         * gdk/x11/gdkkeys-x11.c: Fix #endif with trailing stuff.
2030
2031 Thu May  3 08:10:54 2001  Owen Taylor  <otaylor@redhat.com>
2032
2033         * gtk/gtktexttag.c (gtk_text_tag_class_init): Fix return
2034         value to be G_TYPE_BOOLEAN, not G_TYPE_INT, also,
2035         use _gtk_boolean_handled_accumulator.
2036
2037 Thu May  3 07:00:09 2001  Owen Taylor  <otaylor@redhat.com>
2038
2039         * gtk/gtktextview.c: Patch from Juan Pablo Mendoza Mendoza
2040         to fix things so clicking inside selection leaves cursor
2041         at point where clicked. (#50324)
2042
2043         * gtk/gtksettings.c (gtk_settings_class_init): Restore
2044         sane value for default double click time.
2045
2046         * tests/testtext.c (test_init): Really path to input modules.
2047
2048 2001-05-03  Sven Neumann  <sven@convergence.de>
2049
2050         * demos/testpixbuf-save.c: include target-specific headers as
2051         done in testpixbuf-drawable.c
2052
2053 Wed May  2 20:36:38 2001  Owen Taylor  <otaylor@redhat.com>
2054
2055         * gtk/gtkentry.c (gtk_entry_real_insert_text): Reduce
2056         new_text_length appropriately when we run into the 
2057         size limit for the entry. (#53445, reported by Jeff Franks)
2058
2059         * tests/testgtk.c (create_entry): Remove most of the
2060         property toggle buttons. Replace with a "Props" button
2061         that brings up a property editor.
2062
2063         * tests/prop-editor.[ch] test/testtreeview.c tests/Makefile.am:
2064         Split the property editor code out for reuse, improve.
2065
2066 Wed May  2 17:26:22 2001  Owen Taylor  <otaylor@redhat.com>
2067
2068         * gdk/x11/gdkevents-x11.c gdk/x11/gdkwindow-x11.c: Always
2069         trap errors around calls to XSetInputFocus since we have
2070         no way of knowing reliably whether we are viewable or
2071         not. (#53947)
2072
2073 Tue May  1 09:21:23 2001  Jonathan Blandford  <jrb@redhat.com>
2074
2075         * gtk/gtktreeview.c (gtk_tree_view_button_release_drag_column):
2076         fix bug in dropping columns.  Moving columns now basically works
2077         modula some fine tuning.
2078
2079 Tue May  1 19:09:21 2001  Jonathan Blandford  <jrb@redhat.com>
2080
2081         * gtk/gtktreeview.c (gtk_tree_view_horizontal_autoscroll): Add
2082         autoscroll support.  It mostly works, but could use some fine
2083         tuning.
2084         * gtk/gtktreeview.c (gtk_tree_view_button_release_drag_column):
2085         Actually move the column.
2086
2087 Mon Apr 30 20:29:27 2001  Owen Taylor  <otaylor@redhat.com>
2088
2089         * gtk/gtkbutton.c gtk/gtkcheckbutton.c gtk/gtkoptionmenu.c 
2090           gtk/gtkspinbutton.c gtk/gtkstyle.c gtk/gtkwidget.c:
2091           New default theme! A slighly improved version of the 2.0 Raleigh
2092           theme, with Windows-esque focus/drawing default. 
2093           (GtkWidget::interior_focus defaults to TRUE.)
2094
2095         * gtk/gtkstyle.[ch]: Add a text_aa color halfway between text and base.
2096
2097 2001-04-30  Havoc Pennington  <hp@pobox.com>
2098
2099         * tests/testtext.c (line_numbers_expose): fix to work with
2100         gtk_paint_layout change
2101
2102 Mon Apr 30 19:18:07 2001  Owen Taylor  <otaylor@redhat.com>
2103
2104         * gtk/gtkstyle.[ch] gtk/gtkaccellabel.c gtk/gtkcellrenderertext.c
2105           gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c gtk/gtkprogressbar.c
2106           gtk/gtkvruler.c gtk/gtkvscale.c: Add an extra parameter
2107           use_text to gtk_paint_label() to deal with style->bg[] vs style->text[].
2108
2109         * gtk/gtkbbox.c gtk/gtkdialog.c: Tweak padding some to deal
2110           with GtkWidget::interior_focus = TRUE better.
2111
2112         * gtk/gtkbutton.c: Switch ::default_spacing to ::default_border,
2113         ::default_outside_border for more flexibility.
2114
2115         * gtk/gtkwidget.c (gtk_widget_style_get_valist): Remove 
2116         G_VALUE_NO_COPY_CONTENTS, to correspond with the recent
2117         change that had to be made with g_object_get.
2118
2119 Sun Apr 29 20:13:40 2001  Jonathan Blandford  <jrb@redhat.com>
2120
2121         * gtk/gtktreeview.c (gtk_tree_view_get_columns): new function.
2122         (gtk_tree_view_move_column_after): Clean up interface. 
2123
2124 Sun Apr 29 03:02:02 2001  Tim Janik  <timj@gtk.org>
2125
2126         * gtk/gtkpacker.h:
2127         * gtk/gtkenums.h: moved GtkAnchorType and GtkSideType from gtkpacker.h
2128          to gtkenum.h.
2129
2130         * gtk/gtkmain.c (gtk_main_do_event): silence compiler (GDK_SETTING not
2131         handled in switch).
2132
2133         * gtk/Makefile.am:
2134         (gtk.defs): generate enum portions with  glib-mkenums.
2135         (gtktypebuiltins_evals.c): generate this with glib-mkenums.
2136         got rid of makeenums.pl and makeenums.awk in distributed tarballs.
2137         
2138         * gtk/gtkaccelgroup.c (gtk_accel_group_add): refined havocs warning
2139         addition.
2140
2141         * docs/Changes-2.0.txt: keep a note on signal handlers now
2142         not getting emitted during the emission they were connected within.
2143
2144 2001-04-28  Havoc Pennington  <hp@pobox.com>
2145
2146         * gtk/gtkcolorsel.c (palette_new): fix bug in tooltip
2147
2148 2001-04-24  Havoc Pennington  <hp@redhat.com>
2149
2150         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_previous_line): 
2151         (gtk_text_layout_move_iter_to_next_line): fix these two for
2152         invisible text, lots of other stuff still hosed.
2153
2154         * gtk/gtkcolorsel.c (gtk_color_selection_set_change_palette_hook):
2155         new function, replaces the get/set palette stuff. This function 
2156         is intended for use by libgnomeui which should set the hook to a
2157         thing which sets the palette in GConf, and we need the
2158         GConf-to-xsettings proxy which will result in the change being
2159         propagated back to the GTK app.
2160
2161         * gtk/gtkaccelgroup.c (gtk_accel_group_add): add note to warning 
2162         about unusable signals that it may be because the signal has 
2163         parameters.
2164
2165         * gtk/gtkwidget.c (gtk_widget_modify_style): always copy the
2166         style, otherwise gtkrc.c won't know to create a new GtkStyle for
2167         it.
2168         (gtk_widget_modify_color_component): call
2169         gtk_widget_modify_style() so the rc style will get copied.
2170         (gtk_widget_modify_font): ditto
2171
2172         * gtk/gtkrc.c: make a couple variables static
2173
2174         * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): hide
2175         help button by default, since it does nothing
2176
2177         * gtk/gtkcolorsel.c: add tooltips, work on key navigation, fool
2178         around with UI
2179
2180         * gtk/gtkentry.c (gtk_entry_realize): request enter/leave notify
2181         so we can have tooltips
2182
2183         * gtk/gtkhsv.c (gtk_hsv_realize): request enter/leave notify so we
2184         can have tooltips
2185
2186         * gdk/gdkimage.h: mark gdk_image_new_bitmap with
2187         GDK_ENABLE_BROKEN, because its memory behavior is completely
2188         hosed.
2189
2190         * gtk/gtknotebook.c: remove key press handler, replace with
2191         binding set, add numeric keypad support
2192
2193         * gtk/gtktextview.c (gtk_text_view_class_init): accept KP_Delete
2194
2195         * gtk/gtktext.c (gtk_text_key_press): add a bunch of KP keysyms
2196
2197         * gtk/gtkentry.c (gtk_entry_class_init): accept GDK_KP_Delete in
2198         addition to plain Delete
2199
2200         * gtk/gtktextview.c (gtk_text_view_key_press_event): accept
2201         GDK_KP_Enter in addition to GDK_Return
2202
2203         * gtk/gtkfontsel.c (gtk_font_selection_size_key_press): connect to
2204         activate on entry instead of key press
2205         (gtk_font_selection_on_clist_key_press): get
2206         rid of this signal handler, not needed with new font sel.
2207
2208         * gtk/gtkfilesel.c (gtk_file_selection_key_press): remove a
2209         no-longer-needed emit_stop_by_name(), just return TRUE
2210
2211         * gtk/gtkhscrollbar.c, gtk/gtkvscrollbar.c: remove keybindings
2212         cruft, this widget is no longer focusable.
2213
2214         * gtk/gtkrange.h, gtk/gtkrange.c, gtk/gtkvscale.c,
2215         gtk/gtkhscale.c: Get rid of trough_keys virtual function, add
2216         move_slider action signal, add binding set for vscale/hscale, in
2217         the process support numeric keypad
2218
2219         * gtk/gtkentry.c (gtk_entry_class_init): Add keypad bindings; 
2220         make GDK_Return and GDK_KP_Enter activate the entry via 
2221         binding set, instead of hardcoded.
2222
2223 Fri Apr 27 20:27:21 2001  Jonathan Blandford  <jrb@redhat.com>
2224
2225         * gtk/gtktreeview.[hc]: Massive reorder/cleanup of a lot of the
2226         code.  Some documentation added.
2227
2228 2001-04-27  Havoc Pennington  <hp@redhat.com>
2229
2230         * gtk/gtkcombo.c (gtk_combo_popup_button_press): fix warning
2231
2232         * gtk/gtkmessagedialog.c (gtk_message_dialog_init): make messages selectable
2233
2234         * gtk/gtkentry.c (gtk_entry_real_insert_text): don't strip
2235         line/para separators
2236         (gtk_entry_create_layout): set single paragraph mode on the layout
2237
2238         * gtk/gtkbutton.c (gtk_button_new_from_stock): don't put much
2239         spacing between the image and label; instead, inside a button box 
2240         the button will get extra space that will go there, but if people 
2241         configure button box for 0 chubbiness, then there's no spacing.
2242
2243         * gtk/gtkbbox.c (gtk_button_box_class_init): Make child ipadding
2244         and min/max size style properties, so people can tune their
2245         chubbiness.
2246
2247         * tests/testgtk.c (make_toolbar): remove calls to removed toolbar
2248         functions
2249
2250         * gtk/gtktoolbar.c (gtk_toolbar_class_init): Make space_size,
2251         space_style, and button_relief into style properties, remove
2252         functions for setting them
2253         
2254         * gtk/gtkmenu.c (gtk_menu_key_press): handle menu bar accel to pop 
2255         it back down
2256
2257         * gtk/gtkoptionmenu.c (gtk_option_menu_get_props): free boxed
2258         types from gtk_widget_style_get
2259
2260         * gtk/gtkmenubar.c (gtk_menu_bar_set_shadow_type): Remove, replace
2261         with a style property.
2262
2263         * gdk/x11/gdkevents-x11.c: namespace the settings
2264
2265         * gtk/gtkmenubar.c: Add F10 accelerator to move between menubars.
2266
2267         * gtk/gtksettings.c (gtk_settings_class_init): remove code with
2268         side effects from inside g_assert(), so that G_DISABLE_ASSERT can
2269         be used. Also, translate doc strings for settings. Also, namespace
2270         the double-click-time property. Also, remove bell properties crap.
2271
2272 2001-04-27  Sven Neumann  <sven@gimp.org>
2273
2274         * Makefile.am: before creating links, check if pkg-config files
2275         exist for the default target. Otherwise link to the pkg-config files
2276         that got installed with this build.
2277
2278 Thu Apr 26 19:11:46 2001  Jonathan Blandford  <jrb@redhat.com>
2279
2280         * gtk/gtktreeview.c (gtk_tree_view_motion): clean up column
2281         dragging code.  Revealed some (potential) GdkWindow bugs.
2282
2283         * gdk/x11/gdkwindow-x11.c (gdk_window_reparent): add
2284         _gdk_window_init_position to the end of reparent to fix the case
2285         of reparenting when new_x != old_x and new_y != old_y.
2286
2287 Thu Apr 26 10:54:50 2001  Owen Taylor  <otaylor@redhat.com>
2288
2289         * gtk/gtkentry.c (strstr_len): Fix optimization that
2290         was correct for the use here, but completely incorrect
2291         in general.
2292
2293 Thu Apr 26 10:40:41 2001  Owen Taylor  <otaylor@redhat.com>
2294
2295         * gtk/gtkwindow.h: Remove deprecation of gtk_window_set_default_size()
2296         until patch adding gtk_window_set_size() is recommitted. 
2297
2298         * **Makefile.am configure.in gdk/x11/gdkim-11.c
2299           gtk/gtkmain.c gtk/gtkimmulticontext.c gtk/gtkmain.c
2300           gtk/gtkrc.c: Remove all traces of -DX_LOCALE support.
2301           (#10784)
2302
2303 Wed Apr 25 12:16:36 2001  Owen Taylor  <otaylor@redhat.com>
2304
2305         * gdk/X11/gdkevents-x11.c (gdk_event_translate): Test for 
2306         window == NULL in a number of cases.
2307
2308         * tests/testdnd.c: Set module path for gdk-pixbuf.
2309
2310 Thu Apr 19 16:11:07 2001  Owen Taylor  <otaylor@redhat.com>
2311
2312         * gtk/Makefile.am xembed.h: File containing #defines
2313         for XEMBED protocol.
2314
2315         * gtk/gtkplug.[ch] gtk/gtksocket.[ch]: 
2316
2317         - Change protocol from old plug/socket specific protocol
2318           to XEMBED draft
2319         - Various fixes to work with GTK+-2.0
2320
2321         Still quite a bit of work to do here to handle initiation
2322         from the socket side (as specified by XEMBED), to handle
2323         the more advanced features of XEMBED, and to figure out
2324         a good way to handle same-app embedding with less overhead
2325         than using full XEMBED.
2326
2327 Wed Apr 18 16:04:28 2001  Owen Taylor  <otaylor@redhat.com>
2328
2329         * gtk/gtkwindow.[ch] (gtk_window_real_set_focus): Keep
2330         track of whether the toplevel has the focus; only send
2331         focus-in events to the focus widget when the window
2332         actually has the focus.
2333
2334 2001-04-25  Havoc Pennington  <hp@pobox.com>
2335
2336         * gtk/gtkwindow.h: set_decorations_hint and set_functions_hint
2337         were still in the header
2338
2339 2001-04-24  Alexander Larsson  <alexl@redhat.com>
2340
2341         * gtk/gtkclist.[ch]:
2342         * gtk/gtkctree.c:
2343         When there is a row highlighted for D'n'D it must alse
2344         be painted hightlighted on exposes. Otherwise exposes from
2345         the icon being dragged will mess up the hightlight.
2346
2347         * gtk/gtkfontsel.c:
2348         Don't recenter selected font when exposing the font family
2349         clist. This means you can now actually scroll the font family
2350         list.
2351
2352         * gtk/gtknotebook.c:
2353         Fix focus movement on scrolling tabs that are placed on the left
2354         and right.
2355
2356 2001-04-21  Havoc Pennington  <hp@pobox.com>
2357
2358         * gtk/gtktextdisplay.c (gtk_text_layout_draw): handle 0-height
2359         empty/invisible lines.
2360
2361         * gtk/gtktextiter.c (gtk_text_iter_set_visible_line_offset)
2362         (gtk_text_iter_set_visible_line_index): new functions to set
2363         indexes excluding invisible text
2364
2365         * gtk/gtktextlayout.c (line_display_iter_to_index): get visible 
2366         index
2367
2368         * gtk/gtktextiter.c (gtk_text_iter_get_visible_line_index)
2369         (gtk_text_iter_get_visible_line_offset): new functions to 
2370         get indexes excluding invisible text
2371
2372         * gtk/gtkmessagedialog.c (gtk_message_dialog_init): strip out a
2373         bunch of extra padding that served no purpose
2374
2375         * gtk/gtkdialog.c: Make all the spacings configurable via style
2376         properties, for chubbiness configuration in themes
2377
2378         * tests/testtext.c: fix path to the immodules.
2379         
2380 Mon Apr 23 18:57:03 2001  Jonathan Blandford  <jrb@redhat.com>
2381
2382         * gtk/gtksocket.c (gtk_socket_filter_func): add missing '}' that
2383         got munched by #endif.
2384
2385         * gtk/Makefile.am (gtk_plug_c_sources): add missing '\'
2386
2387         * gtk/gtktreeview.c: Refactored code to clean up a number of
2388         events.
2389
2390         * gtk/gtktreemodel.c (gtk_tree_path_compare): Switched return
2391         values to make consistent with other functions.  Spotted by Jeff
2392         Franks <jcf@tpg.com.au>.
2393
2394         * gtk/gtktreeview.h (struct _GtkTreeViewClass): Fixes to signal
2395         declaration spotted by Jeff Franks <jcf@tpg.com.au>.
2396
2397 2001-04-23  Sven Neumann  <sven@gimp.org>
2398
2399         * gtk/Makefile.am
2400         * gtk/gtkplug.c
2401         * gtk/gtksocket.c: on request of Owen, reverted my last change 
2402         and exclude gtkplug.c/gtksocket.c from the build for non-X11 targets
2403
2404 2001-04-23  Sven Neumann  <sven@gimp.org>
2405
2406         * gtk/gtkplug.c: put into #ifdef GDK_WINDOWING_X11 to make GTK+
2407         compile for non-X11 targets again
2408
2409 2001-04-20  Alexander Larsson  <alexl@redhat.com>
2410
2411         * gtk/gtkcolorsel.[ch]:
2412         API Change. Take GdkColor arguments instead of gdouble *.
2413         Leave the old gtk_color_selection_set_color for compatibility,
2414         but marked deprecated.
2415         Do correct rounding when converting RGB <-> HSV.
2416         
2417         * gtk/gtkcolorseldialog.c:
2418         * tests/testgtk.c:
2419         Use new GtkColorSelection API.
2420
2421         * gtk/gtkhsv.c:
2422         Fix problem selecting colors in triangle when Hue is 330.
2423         Fix some black dots around the HSB triangle.
2424         
2425         * gtk/gtkfilesel.c:
2426         return FALSE from the focus_in_event handler to fix focus problems.
2427
2428 2001-04-18  Havoc Pennington  <hp@redhat.com>
2429
2430         * gtk/gtkwindow.c (gtk_window_class_init): add signals and binding
2431         set, so keybindings are configurable    
2432         (gtk_window_activate_default): Change to activate the focus widget
2433         instead if there's a focus widget, to be consistent with the
2434         behavior that previously existed in key_press_event
2435
2436 2001-04-18  Havoc Pennington  <hp@redhat.com>
2437
2438         * gdk/gdkkeyuni.c: Handle numeric keypad keysyms; bug #50201
2439
2440 2001-04-18  Havoc Pennington  <hp@redhat.com>
2441
2442         Close bug #50615:
2443         
2444         * gtk/gtkstyle.c (gtk_default_draw_layout): Use text_gc to draw
2445         the layout
2446
2447         * gtk/gtktext.c: Use base/text instead of bg/fg throughout
2448
2449         * gtk/gtkentry.c: Use base/text instead of bg/fg throughout
2450
2451         * gtk/gtktextdisplay.c: Use base/text instead of bg/fg throughout
2452         
2453         * gtk/gtkstyle.c (gtk_style_init): make GTK_STATE_SELECTED default
2454         to blue for base, in addition to bg
2455         
2456 2001-04-18  Havoc Pennington  <hp@redhat.com>
2457
2458         * tests/testgtk.c (create_image): allow shrinking the image window
2459         to test that we clip to allocation.
2460
2461         * gtk/gtkimage.c (gtk_image_expose): clip to allocation,
2462         #9845
2463
2464         * gtk/gtkenums.h: move GtkWrapMode in here, #50472
2465
2466 Wed Apr 18 14:23:14 2001  Owen Taylor  <otaylor@redhat.com>
2467
2468         * gdk/x11/gdkimage-x11.c (gdk_image_new): Try changing
2469         mode on shm segments to 0600. We'll see who complains.
2470
2471         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Call
2472         _gdk_windowing_window_destroy() AFTER recursing through
2473         children.
2474
2475         * tests/Makefile.am (noinst_PROGRAMS): Build testsocket,
2476         testsocket_child on X.
2477
2478         * tests/testsocket[_child].c: Fix uses of
2479         gtk_window_get_default_accel_group().
2480
2481         [ Merge patch from Ramiro Estrugo  <ramiro@eazel.com> from gtk-1-2 ]
2482
2483         * gdk/gdkimage.c: (gdk_image_get):
2484         Deal with the possibility that XGetImage() might return NULL.
2485         Allocate the GdkImagePrivate structure only after XGetImage()
2486         succeeds in order not to dereference a NULL ximage pointer.  This
2487         prevents a core dump when XGetImage() fails - which is unlikely,
2488         but can happen due to race conditions accessing the geometries of
2489         drawables.  An x error will still be triggered, but the gdk image
2490         wrapper at least wont seg fault.
2491         
2492 2001-04-18  Havoc Pennington  <hp@redhat.com>
2493
2494         * gtk/gtkimage.c: fix to properly queue resizes when the image is
2495         set
2496
2497         * gtk/gtktextview.c (gtk_text_view_do_popup): desensitize Paste
2498         if the insertion point isn't editable
2499
2500         * demos/gtk-demo/images.c: Added a GtkImage demo
2501
2502         * demos/gtk-demo/drawingarea.c: drawing area demo
2503         
2504         * demos/gtk-demo/menus.c (create_menu): cleanups
2505
2506 Wed Apr 18 12:15:52 2001  Owen Taylor  <otaylor@redhat.com>
2507
2508         * gdk/x11/gdkwindow-x11.c gdk/x11/gdkwindow-x11.h 
2509           gdk/x11/gdkevents-x11.c: Introduce an extra child
2510         of toplevel windows that serves to hold the focus to
2511         avoid events being delivered to embedded windows.
2512
2513         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Introduce
2514         some extra variables to clean up code and reduce the
2515         number of casts.
2516
2517         * gdk/x11/gdkwindow-x11.h (struct _GdkXPositionInfo): Use
2518         guint for 1 bit bit fields, not gboolean.
2519
2520 Wed Apr 18 10:04:23 2001  Owen Taylor  <otaylor@redhat.com>
2521
2522         * gtk/gtktooltips.c (gtk_tooltips_paint_window): Return FALSE,
2523         not TRUE. (Fixes #52925)
2524
2525 Tue Apr 17 18:05:34 2001  Owen Taylor  <otaylor@redhat.com>
2526
2527         * Released 1.3.4
2528
2529         * NEWS: Updated
2530
2531         * gtk/gtktextview.c (gtk_text_view_class_init): Fix to not
2532         use GTK_TYPE_ENUM.
2533
2534 Tue Apr 17 13:47:12 2001  Owen Taylor  <otaylor@redhat.com>
2535
2536         * configure.in: Don't put -lgthread in GLIB_LIBS, GLIB_DEPLIBS
2537
2538         * gtk/gtktypeutils.h gtk/gtksignals.h: Restore proper parameter
2539         names to compatibility #defines so docs work.
2540
2541         * gtk/gtkenums.h: Remove GtkMenuFactoryType
2542
2543         * gtk/gtkwindow.c gtk/gtkdnd.c: Docs cleanups.
2544
2545         * configure.in: Don't include -lgthread in GLIB_LIBS, GLIB_DEPLIBS
2546
2547         * tests/testgtkrc: No magenta cursors, please.
2548
2549         * README.in INSTALL.in HACKING README.cvs-commits: Updated.
2550
2551         * gtk/gtkenums.h (enum): Remove left over GtkMenuFactoryType.
2552         
2553 Mon Apr 16 14:38:41 2001  Owen Taylor  <otaylor@redhat.com>
2554
2555         * gtk/gtklist.c gtk/gtklistitem.c: Remove explicit pointer
2556         grabs, since they are no longer necessary.
2557
2558         * gtk/gtkcombo.c (gtk_combo_popup_button_press): Fix #52926
2559         by signal_connect() and call gtk_button_pressed() rather
2560         than signal_connect_after().
2561
2562         * tests/testgtk.c: Restore radio menu items to combos 
2563         since they'll look OK with Raleigh, and it is easier
2564         than finishing the process of removing them that was
2565         started earlier.
2566
2567 2001-04-16  Hans Breuer  <hans@breuer.org>
2568
2569         * gdk/gdk.def :
2570         * gtk/gtk.def : added all exports required to link PyGtk 0.7.1
2571
2572         * gdk/gdkfont.h : #define GDK_TYPE gdk_font_get_type ()
2573         we are interested in the functions return value not the function address
2574         * gdk/gdkvisual.h : same for GDK_TYPE_VISUAL
2575
2576         * gtk/makefile.msc.in : reflect movement of GDK_TYPEs from gtk to gdk
2577
2578 2001-04-14  Hans Breuer  <hans@breuer.org>
2579
2580         * gdk/gdk.def :
2581         * gdk/makefile.msc : updated
2582
2583         * gdk/win32/gdkdrawable.win32 (gdk_win32_draw_rectangle) : if modus is 
2584         "fill with tile" do so with new helper function gdk_win32_draw_tiles 
2585         (the testgtk::text backgound pixmap is drawn again)
2586         Changed SetTextAlign before pango_win32_render to TA_BASELINE to reflect 
2587         Win32 Pango change
2588         * gdk/win32/gdkprivate-win32.h : prototype for gdk_win32_draw_tiles
2589
2590         * gdk/win32/gdkproperty-win32.c : first implementation of gdk_setting_get
2591         Not sure if the returned settings have the right unit, because I couldn't
2592         find any docs for the X version ...
2593
2594         * gtk/gtk.def :
2595         * gtk/makefile.msc.in : updated
2596
2597 Thu Apr 12 17:41:17 2001  Owen Taylor  <otaylor@redhat.com>
2598
2599         * gtk-2.0.m4: Fix up to refer to GTK+, not to GLib; fix some
2600         wording problems. (Compared to version from Johannes Stezenbach to
2601         check correctness.)
2602
2603 Thu Apr 12 21:04:26 2001  Tim Janik  <timj@gtk.org>
2604
2605         * gtk/gtktreeview.c (_gtk_tree_view_column_start_drag): get
2606         this to compile.
2607
2608 2001-04-12  Anders Carlsson  <andersca@codefactory.se>
2609
2610         * gtk/gtkcellrenderertextpixbuf.c (gtk_cell_renderer_text_pixbuf_class_init): It's pixbuf_pos,
2611         not pixbufpos.
2612
2613         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render): Fix small typo.
2614
2615         * gtk/gtkcellrenderer.c (gtk_cell_renderer_get_property): xpad and ypad
2616         are unsigned insts, therefore use g_value_set_uint.
2617         (gtk_cell_renderer_set_property): Likewise, use g_value_get_uint.
2618
2619 Sun Apr  8 05:36:06 2001  Jonathan Blandford  <jrb@redhat.com>
2620
2621         * gtk/gtktextview.c (gtk_text_view_class_init): fix a fixme.
2622
2623         * gtk/gtkcellrendertoggle.c: change GTK_TYPE_POINTER to
2624         GTK_TYPE_STRING.
2625
2626         * gtk/gtktreeview.c: New functions to allow initial column
2627         dragging work.
2628
2629         * gtk/gtktreeviewcolumn.c: Initial column dragging support.
2630
2631         * tests/testtreefocus.c: give dave some love.
2632
2633         * tests/testtreesort.c: Modify test to check really long samples.
2634
2635 2001-04-11  Alexander Larsson  <alexl@redhat.com>
2636
2637         * gtk-2.0.m4: Pass pkg-config options
2638         before the other args so it works even if
2639         POSIXLY_CORRECT is set.
2640
2641 Mon Apr  9 19:02:07 2001  Tim Janik  <timj@gtk.org>
2642
2643         * configure.in (GTK_MICRO_VERSION): increment version to 1.3.4 (binary
2644         0, interface 0).
2645
2646 2001-04-04  Denis Oliver Kropp  <dok@convergence.de>
2647
2648         * gtk/gtkcalendar.c (gtk_calendar_button_press):
2649         check for action_func != NULL
2650
2651 2001-04-04  Sven Neumann  <sven@gimp.org>
2652
2653         * tests/testgtk.c (test_init): corrected path to gtk.immodules
2654
2655 Wed Apr  4 09:18:18 2001  Tim Janik  <timj@gtk.org>
2656
2657         * Released Gtk+-1.3.3.
2658
2659 Wed Apr  4 07:42:23 2001  Tim Janik  <timj@gtk.org>
2660
2661         * gdk/Makefile.am (EXTRA_DIST): add makeenums.pl to EXTRA_DIST.
2662
2663 Wed Apr  4 04:13:18 2001  Tim Janik  <timj@gtk.org>
2664
2665         * gtk/stock-icons/Makefile.am: stay in builddir and read/write
2666         files to/from source dir. (if we don't stay in builddir, we
2667         can't reach make-inline-pixbuf.
2668
2669         * gdk/Makefile.am (gdkenumtypes.c): add $(srcdir) to mekeenums.pl
2670         deps.
2671
2672         * configure.in (GTK_MICRO_VERSION): up and away (1.3.3 bin/interface
2673         ages 0).
2674
2675 Tue Apr  3 15:04:45 2001  Jonathan Blandford  <jrb@redhat.com>
2676
2677         * gtk/gtktreemodelsort.h:  removed set_sort_column, as it was
2678         moved to the GtkTreeSortable interface.
2679
2680         * gtk/gtktreeselection.c (gtk_tree_selection_selected_foreach):
2681         Make more efficient (fixes #50262).
2682
2683 Tue Apr  3 13:55:37 2001  Owen Taylor  <otaylor@redhat.com>
2684
2685         * NEWS: Updated.
2686
2687         * configure.in: Remove support for uninstalled glib.
2688
2689         * gtk/gtkdnd.c (gtk_drag_highlight_expose): Return FALSE as
2690         so as not to stop emission.
2691
2692         * gtk-config-2.0.in: Exit with an error message that gtk-config-2.0
2693         is no longer supported.
2694
2695         * Makefile.am gtk/Makefile.am tests/*: Moved all tests
2696         into tests, change build order to build modules before
2697         gtk/.
2698
2699         * modules/input/Makefile.am: Move gtk-query-immodules-2.0 invocation
2700         to here.
2701
2702 Tue Apr  3 13:52:57 2001  Tim Janik  <timj@gtk.org>
2703
2704         * gtk/gtkitemfactory.[hc]: changed gtk_item_factory_dump_items()
2705         and gtk_item_factory_dump_rc() GtkPatternSpec argument to
2706         GPatternSpec. this is actually unlikely to cause breakage in
2707         third-party apps since except for gle, pretty much ever caller
2708         passes NULL here.
2709
2710         * gtk/gtkbindings.[hc]: removed gtk_pattern_*() API.
2711
2712         * *.c: use g_pattern_*() API.
2713
2714         * docs/Changes-2.0.txt: GtkPatternSpec->GPatternSpec updates.
2715
2716         * gtk/gtkstyle.c (gtk_default_draw_resize_grip): assert unhandled
2717         directions aren't passed in.
2718
2719         * gtk/gtksettings.[hc] (_gtk_settings_parse_convert): export conversion
2720         functionality to be usable from gtkstyle.c as well, give precedence
2721         for conversion to user-supplied parsers.
2722         s/_gtk_rc_property_parser_for_type/_gtk_rc_property_parser_from_type/;
2723
2724         * gtk/gtkstyle.c (_gtk_style_peek_property_value): use
2725         _gtk_settings_parse_convert() for rcporperty value conversion.
2726
2727 2001-04-03  Alexander Larsson  <alexl@redhat.com>
2728
2729         * gdk/linux-fb/gdkevents-fb.c:
2730         Add empty gdk_setting_get().
2731
2732 Tue Apr  3 05:09:07 2001  Tim Janik  <timj@gtk.org>
2733
2734         * gtk/gtkmain.c (_gtk_boolean_handled_accumulator): use more elaborate
2735         variable names.
2736         
2737         * gtk/makeenums.pl: touch this so enum files get remade.
2738
2739 Mon Apr  2 19:36:57 2001  Jonathan Blandford  <jrb@redhat.com>
2740
2741         * gtk/gtktreestore.c (gtk_tree_store_init):  Bug fix to make trees
2742         work again when not sorted.
2743
2744         * gtk/gtktreeview.c (gtk_tree_view_class_init): Add "collapse_row"
2745         and "expand_row" signal, closing bug 52578.
2746
2747         * gtk/gtktreeview.c (gtk_tree_view_expand_row): Add signal
2748         support.
2749
2750         * gtk/gtktreeview.c (gtk_tree_view_collapse_row): Add signal
2751         support.
2752
2753 Mon Apr  2 18:18:07 2001  Owen Taylor  <otaylor@redhat.com>
2754
2755         * gdk/gdkevents.h: Add GdkEventSetting event for notification
2756         of changes to system settings, gdk_setting_get() to retrieve
2757         a single system setting.
2758
2759         * gdk/x11/gdkevents-x11.c: Bridge gdk_setting_get() and GdkEventSetting
2760         to the draft XSETTINGS mechanism.
2761
2762         * gdk/x11/xsettings-{common,client}.[ch]: Sample-implementation of
2763         XSETTINGS.
2764
2765         * gtk/gtkmain.c gtk/gtksettings.[ch]: Propagate notification
2766         of GDK settings changes to the GtkSettings object.
2767
2768         * gdk/gdkevents.[ch] gdk/gtk/gtksettings.c: Hook up the
2769         double-click-timeout property to GDK.
2770
2771         * gdk/gdkcolor.[ch] gdk/gdkvisual.h gdk/gdkevent.[ch] gdk/gdkfont.[ch]:
2772         Define GDK boxed types here.
2773
2774         * gdk/Makefile.am gdk/makeenums.pl: Generate source files
2775         gdk/gdkenumtypes.[ch] for enum definitions.
2776
2777         * gtk/gtkcompat.h: Add defines for GTK_TYPE_GDK_*
2778         * gtk/gtk-boxed.defs: Comment out GDK types
2779         * gtk/gtktypeutils.h: Remove GDK types
2780         * gtk/Makefile.am: No longer scan GDK headers for enumerataions
2781
2782 Mon Apr  2 16:41:08 2001  Owen Taylor  <otaylor@redhat.com>
2783
2784         * Applied patch from Ron Steinke to add signal accumulators
2785         so that signals with the convention 'TRUE return means
2786         handled' stop emission on a TRUE return.
2787
2788         * gtk/gtkmain.[ch]: Add private accumulator 
2789         _gtk_boolean_handled_accumulator, used throughout GTK+.
2790         
2791         * gtk/gtkspinbutton.c: Add accumulator for ::output.
2792
2793         * gtk/gtktipsquery.c: Add accumulator for ::widget_selected
2794         
2795         * gtk/gtkwidget.c: Add accumulators for event signals,
2796         ::drag_motion, ::drag_drop. Use _gtk_boolean_handled_accumator
2797         for ::mnemonic-activate.
2798
2799         * gtk/gtkwindow.c: Add accumulator for ::frame_event
2800
2801 Mon Apr  2 16:24:21 2001  Owen Taylor  <otaylor@redhat.com>
2802
2803         * gtk/gtkwidget.c: Add missing include.
2804
2805 Mon Apr  2 16:56:15 2001  Jonathan Blandford  <jrb@redhat.com>
2806
2807         * gtk/gtkmarshal.list (VOID:BOXED,BOXED,BOXED,BOXED): new
2808         marshaller.
2809
2810         * gtk/gtktreemodel.c (gtk_tree_model_range_changed): change
2811         "changed" signal to "range_changed".
2812
2813         * gtk/gtktreeview.c (gtk_tree_view_set_model): fix small bug where
2814         removing a tree from one model would remove all trees from that
2815         model.
2816         * gtk/gtktreeview.c (gtk_tree_view_range_changed): use range
2817         changed signal instead.
2818
2819 Mon Apr  2 16:13:58 2001  Owen Taylor  <otaylor@redhat.com>
2820
2821         * gtk/gtkinvisible.c (gtk_invisible_style_set): Avoid
2822         chaining up to parent impl, since we have a INPUT_ONLY
2823         window.
2824
2825         * gtk/gtkentry.[ch]: Add a cursor_color property to set the
2826         foreground color for the cursor.
2827
2828 Mon Apr  2 15:06:13 2001  Owen Taylor  <otaylor@redhat.com>
2829
2830         * gtk/gtkstyle.c (_gtk_style_peek_property_value): Reference 
2831         param spec when caching property values, since we unref it
2832         later when we free the style.
2833
2834         * gtk/gtkoptionmenu.c (gtk_option_menu_get_props): Dont' free
2835         values since they are retrieved with G_VALUE_NO_COPY_CONTENTS.
2836
2837 Mon Apr  2 10:47:57 2001  Owen Taylor  <otaylor@redhat.com>
2838
2839         * gtk/gtkwidget.c (gtk_widget_class_init): Fix 
2840         G_VALUE_NO_COPY_CONTENTS instead of G_SIGNAL_TYPE_STATIC_SCOPE
2841         stupidity.
2842
2843 Mon Apr  2 00:51:11 2001  Owen Taylor  <otaylor@redhat.com>
2844
2845         [ First pass at adding style properties. Still needs some definite
2846         fine-tuning. ]
2847
2848         * gtk/gtkbutton.c: Add ::default_spacing style property.
2849          
2850         * gtk/gtkcheckbutton.[ch] gtkradiobutton.c: Add ::indicator_size,
2851         ::indicator_spacing style properties.
2852
2853         * gtk/gtkoptionmenu.c: Add ::indicator_size, ::indicator_spacing
2854         style properties.
2855
2856         * gtk/gtk{,h,v}paned.[ch]: Make handle_size a style property
2857         rather than a normal property.
2858
2859         * gtk/gtkwidget.c: Add an ::interior_focus style property to
2860         draw focus inside buttons, in the Windows/Java Metal/etc. style.
2861
2862         * gtk/gtkbutton.c gtk/gtkcheckbutton.c gtk/gtktogglenbutton.c:
2863         Honor ::interior_focus.
2864         
2865         * gtk/gtkentry.c: Don't draw focus at all when ::interior_focus is 
2866         TRUE.
2867
2868         * gtk/gtkrange.[ch] gtk/gtk{h,v}scrollbar.c gtk/gtk{h,v}scale.c:
2869         Add ::slider_width, ::trough_border, ::stepper_size,
2870         ::stepper_spacing style properties.
2871
2872         * gtk/gtkscale.[ch] Add ::slider-length style property.
2873
2874 2001-04-02 Alexander Larsson   <alexl@redhat.com>
2875
2876         * gdk/linux-fb/gdkwindow-fb.c:
2877         Add gdk_window_begin_resize_drag and gdk_window_begin_move_drag. Remove some
2878         warnings that were spewed on startup.
2879
2880         * gtk/gtkwindow-decorate.c:
2881         gtk_window_reposition -> _gtk_window_reposition
2882
2883 Sun Apr  1 21:37:22 2001  Owen Taylor  <otaylor@redhat.com>
2884
2885         * gtk/gtkwidget.[ch] gtk/gtktypeutils.c gtk/gtk-boxed.defs:
2886         Add boxed type for GtkRequistion. Use it for ::size-request.
2887
2888         * gtk/gtkstyle.[ch] gtk/gtktypeutils.c gtk/gtk-boxed.defs:
2889         Add a new GtkBorder structure useful for geometry properties
2890         for widgets. Add corresponding GTK_TYPE_BORDER.
2891         
2892         * gtk/gtkwidget.c (gtk_widget_class_install_style_property):
2893         Support automatic parser selection like
2894         gtk_settings_install_property_parser().
2895
2896         * gtk/gtksettings.c (_gtk_rc_property_select_parser): Export
2897         functionality for use by gtk_widget_class_install_style_property.
2898         Support GTK_TYPE_BORDER, GTK_TYPE_REQUISITION.
2899
2900 Sun Apr  1 20:48:59 2001  Owen Taylor  <otaylor@redhat.com>
2901
2902         * gtk/gtkentry.c (gtk_entry_class_init): Make invisible-char
2903         g_param_spec_unichar(). 
2904
2905 Sun Apr  1 23:41:37 2001  Tim Janik  <timj@gtk.org>
2906
2907         * gdk/x11/gdkwindow-x11.c (gdk_window_focus): raise window for non
2908         _NET window managers.
2909
2910         * gtk/gtkmenufactory.[hc]: cvs removed those files now.
2911
2912 Sun Apr  1 08:00:13 2001  Tim Janik  <timj@gtk.org>
2913
2914         * gtk/gtkwidget.[hc]: got rid of gtk_widget_popup(), a function that
2915         bad needs to be nuked, not just deprecated.
2916
2917         * gtk/gtktooltips.c (gtk_tooltips_draw_tips): don't use 
2918         gtk_widget_popup().
2919
2920         * gtk/*.[hc]: s/activate_mnemonic/mnemonic_activate/g;
2921         
2922         * gtk/gtkmenufactory.[hc]: removed this long-standingly deprecated
2923         widget.
2924         
2925         * docs/Changes-2.0.txt: updates.
2926         
2927 Sun Apr  1 01:02:54 2001  Jonathan Blandford  <jrb@redhat.com>
2928
2929         * gtk/gtktreestore.c (gtk_tree_store_sort_iter_changed):
2930         for (i = 0; i < 100; i ++)
2931           g_print ("I will confirm it compile before committing\n");
2932
2933 Sun Apr  1 00:52:06 2001  Jonathan Blandford  <jrb@redhat.com>
2934
2935         * gtk/gtktreestore.c: Initial work on implementing the
2936         GtkTreeSortable interface.  Basicaly a big cut'n'paste job.
2937
2938 Sun Apr  1 03:28:14 2001  Tim Janik  <timj@gtk.org>
2939
2940         * gtk/gtkwidget.c: fixed a bunch of notifications, added
2941         reference counts around emissions where the widget is used afterwards.
2942         added freeze/thaws around multiple properties being notified.
2943         (_gtk_widget_get_aux_info): cleanups.
2944         
2945         * gtk/gtksettings.c (gtk_settings_install_property): provide
2946         default parsing functions for gdkcolor, enums and flags.
2947
2948         * gtk/gtkwindow.[hc]: partially reverted patch from havoc,
2949         applied by owen.
2950         backed out gtk_window_get_location(), gtk_window_set_location(),
2951         gtk_window_get_size() and gtk_window_set_size(), these
2952         have to be sorted out wrg x/y/width/height/default_with/default_height
2953         properties.
2954         kept a flag in GtkWindowGeometryInfo to handle user
2955         resetting default sizes.
2956         cleaned up ZVT comments.
2957         bunch of assorted bug fixes, notification fixes.
2958         (_gtk_window_reposition): make this a really internal function.
2959         
2960         * gtk/testgtk.c: fixups.
2961         
2962 2001-03-31  Hans Breuer  <hans@breuer.org>
2963
2964         * config.h.win32.in : disable USE_MMX for msvc build cause
2965         the assembler doesn't fit and is out of my scope. Disable
2966         USE_GMODULE for msvc build as wel. The right way to share
2967         binaries on win32 would be to use libtiff.dll etc. To reduce
2968         installation hassles IMO it's better to include all fileformats
2969         builtin to gdk-pixbuf
2970
2971         * gdk-pixbuf/makefile.msc : new file
2972
2973         * gdk/gdk.def : updated
2974
2975         * gdk/win32/gdkevents-win32.c : don't erase the background if
2976         .no_bg is set. It improves the scrolling (e.g. of testgtk main
2977         buttons
2978         * gdk/win32/gdkgeometry-win32.c : added comment about the above
2979
2980         * gdk/win32/gdkwindow-win32.c : added three new functions like
2981         the X version. Only one is implemented, because the other two
2982         "gdk_window_begin_(resize|move)_drag" got no docs and appear to
2983         be default behaviour on win32 anyway ...
2984
2985         * gtk/gtk.def : updated
2986
2987         * gtk/makefile.msc.in : update for new files, use glib-genmarshal
2988         from where it was built and add an additional rule to automagically
2989         build gtkmarshal.[hc]
2990
2991         * gtk/gtkfilesel.c (open_new_dir) : don't increase n_entries
2992         before array access for the current entry isn't finished
2993
2994         * gtk/gtktreeitem.c (gtk_tree_item_subtree_button_click) :
2995         use g_return_val_if_fail
2996
2997         * gtk/testgtk.c (window_controls) : don't use the *wrong* size
2998         for the static array, but let the compiler calculate it. It
2999         makes me wonder if gcc isn't capable to catch bugs like this ...
3000
3001 2001-03-31  James Henstridge  <james@daa.com.au>
3002
3003         * gtk/gtkwidget.c (gtk_widget_size_adjust): fix use of magic
3004         constant "-1" in the aux info structure.
3005
3006 2001-03-30  Alexander Larsson  <alexl@redhat.com>
3007
3008         * gtk/gtkbutton.c (gtk_button_get_property):
3009         * gtk/gtklabel.c:
3010         Remove leaks.
3011         
3012         * gtk/gtkcontainer.c:
3013         * gtk/gtkhscale.c:
3014         * gtk/gtkhscrollbar.c:
3015         * gtk/gtklayout.c:
3016         * gtk/gtkmisc.c:
3017         * gtk/gtkprogress.c:
3018         * gtk/gtkprogressbar.c:
3019         * gtk/gtkrange.c:
3020         * gtk/gtktable.c:
3021         * gtk/gtkviewport.c:
3022         * gtk/gtkvscale.c:
3023         * gtk/gtkvscrollbar.c:
3024         * gtk/gtkwidget.c:
3025         Property patches, based on patches from John Margaglione and Lee Mallabone.
3026
3027 Thu Mar 29 21:20:38 2001  Mike Kestner  <mkestner@ameritech.net>
3028
3029         * gtk/gtkspinbutton.c : added value_changed signal which proxies for the
3030         adjustment. Cleaned redundant preconditions (spin != NULL). Added
3031         inline API function docs.
3032         (gtk_spin_button_new_with_range): New convenience constructor.
3033         (gtk_spin_button_set_increments): New adjustment helper.
3034         (gtk_spin_button_set_range): New adjustment helper.
3035
3036         * gtk/testgtk.c : added test of the new convenince constructor and
3037         value_changed signals.
3038
3039 Thu Mar 29 20:20:38 2001  Jonathan Blandford  <jrb@redhat.com>
3040
3041         * gtk/gtktreemodel.c (gtk_tree_row_ref_reordered_callback): Now we
3042         listen to the reorder signal.
3043
3044 Wed Mar 28 20:30:26 2001  Owen Taylor  <otaylor@redhat.com>
3045
3046         * gtk/gtkwidget.[ch] (_gtk_widget_get_aux_info): Add private function
3047         to get the aux info structure fo the widget.
3048
3049         * gtk/gtklabel.c gtk/gtkscrolledwindow.c gtk/gtkwindow.c: Use
3050         above function.
3051
3052         [ Patch from  Havoc Pennington  <hp@redhat.com> ]
3053
3054         * gdk/x11/gdkwindow-x11.c (gdk_window_get_frame_extents): function
3055         to get the size of the window manager frame, basically the same
3056         code that gdk_window_get_root_origin() had
3057         (gdk_window_get_root_origin): use gdk_window_get_frame_extents()
3058
3059         * gtk/gtkwindow.c (gtk_window_set_default_size): use
3060         gdk_window_resize() if the window is realized and resizeable
3061
3062         * gdk/x11/gdkwindow-x11.c (gdk_window_set_geometry_hints): fix
3063         typo so that setting gravity works
3064
3065         * gtk/gtkwindow.c (gtk_window_move_resize): don't ever use
3066         allocation if auto_shrink is on, even if the default size
3067         has not changed.
3068
3069         * gtk/gtkwidget.c (gtk_widget_render_icon): remove bogus
3070         g_return_if_fail
3071
3072 Thu Mar 29 16:29:12 2001  Jonathan Blandford  <jrb@redhat.com>
3073
3074         * gtk/gtkliststore.c (gtk_list_store_iter_changed): Massive
3075         reordering/sorting work.  Now pretty much works.
3076
3077         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): Lots of work to make
3078         reorder mostly work.  Still need to get the parity correct.
3079
3080         * gtk/gtktreeviewcolumn.c: Listen for "model" property changed
3081         signal, so I can listen for the sort_column_changed signal so I
3082         can change my "sort_indicator" property.  Cool.
3083
3084 Wed Mar 28 00:03:10 2001  Owen Taylor  <otaylor@redhat.com>
3085
3086         [ Patch from Havoc Pennington, hp@redhat.com ]
3087
3088         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c:
3089         Add functions gdk_window_begin_resize_drag/begin_move_drag
3090         to start resizing or moving a toplevel window. This
3091         is done either using the _NET_WM_MOVERESIZE protocol,
3092         or, if that isn't present, by emulation.
3093
3094         * gtk/gtkwindow.[ch]: Add functions gtk_begin_move/resize_drag
3095         to export the above to GTK+-land.
3096
3097         * gtk/gtkstyle.[ch]: Add ->draw_resize_grip() paint func.
3098         
3099         * gtk/gtkwindow.c gdk/gdkwindow.[ch] (gdk_window_constrain_size):
3100         Move this function into gdkwindow, since we need it
3101         when implementing fallback resizing.
3102
3103         * gdk/x11/gdkwindow-x11.c: gdk_window_set_geometry_hints.
3104         Fix typo when setting gravity.
3105
3106         * gtk/gtkstatusbar.[ch] (gtk_statusbar_set_has_resize_grip):
3107         Add an optional (but on by default) resize grip for resizing 
3108         the parent window.
3109
3110 01-03-29  Alexander Larsson  <alexl@redhat.com>
3111
3112         * gtk/gtktooltips.c (gtk_tooltips_event_handler):
3113         Don't return TRUE from the event handler, that blocks all
3114         event signals on the tooltip widget. Now you can press buttons
3115         in toolbars again.
3116
3117 Wed Mar 28 19:20:43 2001  Owen Taylor  <otaylor@redhat.com>
3118
3119         * gtk/testtext.c (create_buffer): Add missing NULL on
3120         valist.
3121
3122         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_class_init): Fix
3123         c-n-p problem with INCONSISTENT property.
3124
3125         [ Patch from Havoc Pennington  <hp@redhat.com> ]
3126
3127         * gtk/gtkentry.h (struct _GtkEntryClass): add same populate_popup
3128         hook.
3129
3130         * gtk/gtktextview.h (struct _GtkTextViewClass): add populate_popup
3131         signal as a hook for extending the default popup menu
3132
3133         * gtk/gtkimmulticontext.c (gtk_im_multicontext_append_menuitems):
3134         use radio menu items for the input method menuitems
3135
3136         * gtk/gtkimcontextsimple.c (check_hex): do better validation of 
3137         inserted unicode from Ctrl-Shift-hex input method
3138
3139         * gtk/gtktextbtree.c (_gtk_text_btree_insert): remove utf8
3140         validatation here, already done at GtkTextBuffer level.
3141
3142         * gtk/gtkwidget.c (gtk_widget_class_init): add binding set, add
3143         popup_menu run action signal and Shift+F10 and Menu keybindings.
3144
3145         * gtk/gtkentry.c: implement a default handler for popup_menu
3146
3147         * gtk/gtktextview.c: implement a default handler for popup_menu
3148
3149         * gtk/gtkmenu.c (gtk_menu_popup): select first item if popup is
3150         from a key event
3151         
3152         * gtk/gtklabel.c: remove "trailer" cruft
3153
3154 Wed Mar 28 17:27:12 2001  Jonathan Blandford  <jrb@redhat.com>
3155
3156         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): new function to
3157         handle reordering of trees.  Seems to mostly work w/ the exception
3158         of the parity flag.
3159
3160         * gtk/gtktreeview.c (gtk_tree_view_reordered): handle "reordered"
3161         signal.
3162
3163 Wed Mar 28 21:12:37 2001  Tim Janik  <timj@gtk.org>
3164
3165         * gtk/gtkwidget.h: c++ fixes.
3166
3167 Sun Mar 25 15:51:28 2001  Owen Taylor  <otaylor@redhat.com>
3168
3169         * gtk/gtksettings.c (gtk_settings_init): Fix use of uninitialized
3170         memory.
3171
3172 Tue Mar 27 22:36:07 2001  Owen Taylor  <otaylor@redhat.com>
3173
3174         * gtk/gtkwidget.h gtk/gtkrange.h: Apply patch from 
3175         Nils Barth fixing event return values. (#51041)
3176
3177         * gtk/gtkwidget.c: Fix some return values for default
3178         functions.
3179
3180         * gtk/gtk[vh]scrollbar.c gtk/gtk[vh]range.c: Fix
3181         return values for trough_keys functions.
3182
3183         * gtk/gtkwidget.h (struct _GtkWidgetClass): Fix return
3184         value for add_accelerator (shoudl have been a void
3185         return.)
3186
3187         * gtk/gtkcellrenderer.[ch]: gtkcellrenderertoggle.h:
3188         Fix return type of EVENT.
3189
3190         * gtk/gtkmarshal.list gtk/gtktexttag.c: Make EVENT
3191         signal return a boolean.
3192
3193 Tue Mar 27 22:07:44 2001  Jonathan Blandford  <jrb@redhat.com>
3194
3195         * gtk/gtkliststore.c (gtk_list_store_sort): Fix arguments to
3196         reordered signal.
3197
3198         * tests/testtreesort.c (main): fix spelling.
3199
3200 Tue Mar 27 20:55:29 2001  Jonathan Blandford  <jrb@redhat.com>
3201
3202         * gtk/gtkliststore.c: More work on implementing sortable
3203         interface.
3204
3205 Mon Mar 26 15:48:45 2001  Owen Taylor  <otaylor@redhat.com>
3206
3207         * gtk/gtkwindow.c (gtk_window_list_toplevels): Don't
3208         reference the widgets in the resulting list. (#11821)
3209         This makes this consistent with gtk_container_children.
3210
3211         * gtk/gtkwindow.c gtk/gtkwidget.c: Fix up the two
3212         uses of gtk_window_list_toplevels.
3213
3214 Mon Mar 26 15:26:17 2001  Owen Taylor  <otaylor@redhat.com>
3215
3216         * gtk/gtkimcontext.c (gtk_im_context_set_use_preedit): Add
3217         a virtual function to set whether the IM context should use 
3218         the preedit string. (#51922)
3219         
3220 Mon Mar 26 14:42:59 2001  Owen Taylor  <otaylor@redhat.com>
3221
3222         * gdk/gdkpango.h: Remove stale FIXME comment.
3223
3224 2001-03-26  Alexander Larsson  <alla@lysator.liu.se>
3225
3226         * gtk/gtkfilesel.c (gtk_file_selection_get_filename):
3227         Fixed bug that returned NULL if a filename was selected.
3228
3229 2001-03-24  Havoc Pennington  <hp@pobox.com>
3230
3231         * gtk/gtkthemes.c (gtk_theme_engine_load): improve error message
3232         to contain the word "theme"
3233
3234 2001-03-24  Havoc Pennington  <hp@pobox.com>
3235
3236         * gtk/gtkhsv.c (gtk_hsv_move): make motion around the ring much
3237         slower but finer-grained
3238         (gtk_hsv_focus): get initial focus on the ring or triangle 
3239         according to tab direction
3240
3241         * gtk/testgtk.c (main): get rid of weird sleep(1) on exit
3242
3243 2001-03-23  Havoc Pennington  <hp@pobox.com>
3244
3245         * gtk/gtkhsv.c: make this somewhat key-navigable
3246
3247         * gtk/gtkfontsel.c: mnemonics
3248
3249         * gtk/gtkgamma.c: mnemonics
3250
3251         * gtk/gtkcolorsel.c: add mnemonics to labels
3252
3253 2001-03-22  Havoc Pennington  <hp@pobox.com>
3254
3255         Applied big patch from Seth Lytle to fix event handler return
3256         values, slightly modified.
3257
3258         * gtk/gtkcalendar.c (gtk_calendar_button_press): return TRUE if
3259         handled.
3260         (gtk_calendar_key_press): return TRUE for GDK_space triggers
3261         select_day
3262
3263         * gtk/gtkclist.c (gtk_clist_button_press): return TRUE if handled
3264         (gtk_clist_button_release): return TRUE if handled
3265
3266         * gtk/gtkcolorsel.c (mouse_release):
3267         (palette_activate): 
3268         (palette_press): 
3269         (palette_new): 
3270         (mouse_press): 
3271         (get_screen_color): 
3272         fixed return type (void to gboolean), return TRUE,
3273         added GTK_SIGNAL_FUNC cast
3274
3275         * gtk/gtkcombo.c (gtk_combo_popup_button_press): fixed return type
3276         (void to gboolean), and return TRUE
3277         (gtk_combo_button_release): changed return value to TRUE after
3278         gtk_grab_add on combo->popwin
3279
3280         * gtk/gtkctree.c (gtk_ctree_button_press): return TRUE if triggers a
3281         collapse or expand
3282
3283         * gtk/gtkcurve.c (gtk_curve_graph_events): return TRUE for
3284         button/motion
3285
3286         * gtk/gtkdnd.c (gtk_drag_source_event_cb): return TRUE for button
3287         press/release and motion that trigger act
3288
3289         * gtk/gtkentry.c (gtk_entry_button_release): return TRUE
3290
3291         * gtk/gtkfontsel.c (gtk_font_selection_size_key_press): return TRUE
3292         for GDK_Return
3293         
3294         * gtk/gtklist.c (gtk_list_button_press): return TRUE mostly
3295         (gtk_list_button_release): return TRUE if selection
3296
3297         * gtk/gtklistitem.c (gtk_list_item_button_press): return TRUE on
3298         press
3299
3300         * gtk/gtkmenushell.c (gtk_menu_shell_button_press):
3301         (gtk_menu_shell_button_release): chain parent_menu_shell retval
3302
3303         * gtk/gtknotebook.c (gtk_notebook_button_press): return FALSE if
3304         nothing triggered
3305         (gtk_notebook_button_release): return TRUE if we do anything
3306
3307         * gtk/gtkspinbutton.c (gtk_spin_button_button_press): 
3308         (gtk_spin_button_button_release): return TRUE or chained retval
3309
3310         * gtk/gtktext.c (gtk_text_button_press): 
3311         (gtk_text_button_release): return TRUE
3312         (gtk_text_key_press): remove redundant retval code
3313         
3314         * gtk/gtktreeitem.c (gtk_tree_item_button_press): return TRUE if button
3315         and sensitive
3316         (gtk_tree_item_subtree_button_click): changed type to gint, and return
3317         TRUE if sensitive
3318
3319         * gtk/gtktooltips.c (gtk_tooltips_event_handler): deactivate implies 
3320         return TRUE
3321
3322 2001-03-23  Havoc Pennington  <hp@redhat.com>
3323
3324         * gtk/testgtk.c: fix warnings
3325
3326         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): fix return value
3327
3328         * gtk/gtktextview.c: fix warnings
3329
3330         * gtk/gtktext.c (find_cursor_at_line): fix warning
3331
3332         * gtk/gtkselection.c (gtk_selection_notify): fix warning 
3333
3334         * gtk/gtkitemfactory.c (gtk_item_factory_menu_pos): fix signature
3335         of this function
3336
3337         * gtk/gtkimmulticontext.c (gtk_im_multicontext_append_menuitems):
3338         fix warning
3339
3340         * gtk/gtkhandlebox.c (gtk_handle_box_style_set): fix warning
3341
3342         * gtk/gtkfontsel.c: fix warning
3343
3344         * gtk/gtkcolorsel.c: fix warnings
3345
3346 2001-03-23  Havoc Pennington  <hp@redhat.com>
3347
3348         * gtk/gtkhandlebox.c: Apply property patch from Lee Mallabone
3349
3350         * gtk/gtkbox.c: Apply property patch from Lee Mallabone
3351
3352         * gtk/gtkcheckmenuitem.c: Apply property patch from Lee Mallabone,
3353         and deprecated gtk_check_menu_item_set_show_toggle().
3354         
3355         * gtk/gtkbutton.c: Apply property patch from Lee Mallabone
3356
3357         * gtk/gtkfilesel.c: Apply property patch from Lee Mallabone
3358
3359         * gtk/gtkframe.c: Apply property patch from Lee Mallabone
3360
3361 2001-03-23  Havoc Pennington  <hp@redhat.com>
3362
3363         * gtk/gtktoolbar.c, gtk/gtkimcontext.c, gtk/gtklabel.c: fix up
3364         some docs
3365
3366 Fri Mar 23 16:13:43 2001  Jonathan Blandford  <jrb@redhat.com>
3367
3368         * gtk/gtktreeviewcolumn.h (GtkCellDataFunc): Forgot to namespace
3369         this.
3370
3371         * gtk/gtktreestore.c (gtk_tree_store_set_value): change from
3372         set_cell to set_value
3373
3374         * gtk/gtkliststore.c (gtk_list_store_set_value): change from
3375         set_cell to set_value
3376
3377 Thu Mar 22 19:27:34 2001  Jonathan Blandford  <jrb@redhat.com>
3378
3379         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
3380         fix braino.
3381         * gtk/gtktreesortable.[ch]: New interface to add cleanup sortable
3382         support.
3383
3384         * gtk/gtktreeview.c: Addition of initial sortable support.
3385
3386         * gtk/gtktreestore.c: Addition of initial sortable support.
3387
3388         * gtk/gtkliststore.c: Addition of initial sortable support.
3389
3390         * gtk/gtkmarshal.list: yet another marshaller.
3391
3392         * gtk/gtktreedatallist.[ch]: shared code between the store models
3393         for handling sorting headers.
3394
3395 2001-03-22  Havoc Pennington  <hp@redhat.com>
3396
3397         * gtk/gtkcontainer.c (gtk_container_set_focus_chain): 
3398         (gtk_container_unset_focus_chain): Add ability to override the 
3399         focus chain for a container explicitly
3400
3401 Thu Mar 22 13:01:44 2001  Tim Janik  <timj@gtk.org>
3402
3403         * gtk/gtklabel.[hc]: some cleanups, fixed mnemonic_widget handling,
3404         added PROP_MNEMONIC_WIDGET.
3405
3406         * gtk/gtkwindow.c (gtk_window_activate_mnemonic): 
3407         (gtk_window_remove_mnemonic): 
3408         (gtk_window_add_mnemonic): fixed assertions.
3409         (gtk_window_activate_mnemonic): constrain modifier checks to those
3410         permitted by gtk_accelerator_get_default_mod_mask().
3411         got rid of gtk_window_get_default_accel_group().
3412
3413         * gtk/gtkwidget.c (gtk_widget_real_activate_mnemonic): handle non
3414         activatable widgets either by focussing or a warning.
3415         added a signal accumulator to ::activate_mnemonic which stops the
3416         emission once a handler returned TRUE.
3417
3418 2001-03-22  Havoc Pennington  <hp@pobox.com>
3419
3420         * gtk/gtktoolbar.c (gtk_toolbar_insert_stock): handle mnemonics in
3421         the stock item label
3422
3423         * gtk/gtklabel.c: s/@gtk_func/gtk_func()/ in docs
3424
3425         * gtk/gtkstock.c (builtin_items): add mnemonics where missing
3426
3427         * demos/gtk-demo/*.c: Add mnemonics all over the place
3428
3429         * gtk/gtklabel.h: mark parse_uline deprecated
3430
3431 2001-03-21  Alexander Larsson  <alexl@redhat.com>
3432
3433         * gtk/gtkitemfactory.[ch]:
3434         Add support for stock and normal imagemenuitems.
3435         
3436         * gtk/testgtk.c:
3437         Add some tests for mnemonics, stock toolbars, stock
3438         and image menuitems in itemfactory and gdk_window_scroll.
3439
3440 2001-03-21  Alexander Larsson  <alexl@redhat.com>
3441
3442         * gtk/gtkbutton.[ch]:
3443         * gtk/gtkdialog.c:
3444         Renamed gtk_button_new_stock() to gtk_button_new_from_stock() and
3445         removed accel_group argument. Renamed gtk_button_new_accel() to
3446         gtk_button_new_with_mnemonic() and removed accel_group argument.
3447
3448         * gtk/gtkcheckbutton.[ch]:
3449         New function gtk_check_button_new_with_mnemonic().
3450
3451         * gtk/gtkentry.c:
3452         Override activate_mnemonic and just grab focus.
3453
3454         * gtk/gtkitemfactory.c:
3455         Don't add menu uline accel group, instead use mnemonics support.
3456
3457         * gtk/gtklabel.[ch]:
3458         New support for mnemonics.
3459
3460         * gtk/gtkmarshal.list:
3461         Needed BOOLEAN:BOOLEAN for activate_mnemonic.
3462
3463         * gtk/gtkmenu.[c]:
3464         * gtkmenushell.c:
3465         Use mnemonics instead of accel groups for uline
3466         support in menu items.
3467         Removed gtk_menu_get_uline_accel_group() and
3468         gtk_menu_ensure_uline_accel_group().
3469
3470         * gtk/gtkmenuitem.c:
3471         Override activate_mnemonic to handle switching between
3472         menu items if there are collisions.
3473         
3474         * gtk/gtknotebook.c:
3475         Connect to activate_mnemonic on the tab_label, so that
3476         activating it switches to that notebook page.
3477
3478         * gtk/gtkwidget.[ch]:
3479         Add activate_mnemonic signal. New function
3480         gtk_widget_activate_mnemonic() to emit it.
3481         Default implementation does activate/grab_focus.
3482
3483         * gtk/gtkwindow.[ch]:
3484         Add support for mnemonics in windows.
3485         New functions:
3486         gtk_window_add_mnemonic, gtk_window_remove_mnemonic,
3487         gtk_window_activate_mnemonic, gtk_window_set_mnemonic_modifier
3488
3489         * gtk/testgtk.c:
3490         Update to function name changes.
3491         
3492 2001-03-21  Alexander Larsson  <alexl@redhat.com>
3493
3494         * gtk/gtkimagemenuitem.[c]:
3495         Add gtk_image_menu_item_new_from_stock()
3496
3497 Tue Mar 20 15:00:43 2001  Jonathan Blandford  <jrb@redhat.com>
3498
3499         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
3500         Fix buglet in meeting.
3501
3502 2001-03-19  Havoc Pennington  <hp@redhat.com>
3503
3504         * gtk/gtkiconfactory.c: Make GtkIconSource an opaque datatype, and
3505         add a bunch of accessor functions. This is because we have
3506         reasonable expectations of extending what fields it contains in
3507         the future.
3508
3509         * gtk/gtkstyle.c (gtk_default_render_icon): adapt to icon source
3510         changes
3511
3512         * gtk/gtkrc.c (gtk_rc_parse_icon_source): fix to use new
3513         GtkIconSource   
3514
3515 Mon Mar 19 15:53:36 2001  Owen Taylor  <otaylor@redhat.com>
3516
3517         * gtk/gtkitemfactory.c gtk/testgtk.c: Handle quoting of / with \; properly
3518         handle __ in paths, quote " and \n in gtk_item_factory_dump_items().
3519
3520         * gtk/gtkadjustment.[ch] gtk/gtkclist.c gtk/gtkhruler.c gtk/gtklayout.c 
3521           gtk/gtklist.c gtk/gtkprogress.[ch] gtk/gtkprogressbar.[ch] gtk/gtkrange.[ch]
3522           gtk/gtkruler.[ch] gtk/gtkscale.c gtk/gtkscrolledwindow.c gtk/gtkspinbutton.[ch]
3523           gtk/gtktext.c gtk/gtktextview.c gtk/gtkvruler.c gtk/testgtk.c:
3524         Change float to double everywhere with the exception of 0<->1.0 alignment
3525         and GtkCurve.
3526
3527 2001-03-19  Tor Lillqvist  <tml@iki.fi>
3528
3529         * gdk/win32/gdkdrawable-win32.c
3530         * gdk/win32/gdkimage-win32.c: Use correct casts in debugging
3531         output.
3532
3533         * demos/testpixbuf-drawable.c: If GDK_WINDOWING_WIN32, include
3534         gdkwin32.h.
3535
3536 2001-03-18  Tor Lillqvist  <tml@iki.fi>
3537
3538         * gdk/win32/gdkevents-win32.c (print_window_state): New function.
3539         print_event_state, print_event): Use preprocessor macro to make
3540         code more compact. Print also GDK_WINDOW_STATE events.
3541         (synthesize_crossing_events): Remove the old #ifdeffed-out code.
3542         
3543         * gtk/gtk.def
3544         * gtk/makefile.mingw.in: Update.
3545
3546         * gtk/gtkmain.h: Check for G_PLATFORM_WIN32, not only G_OS_WIN32,
3547         to catch also Cygwin.
3548
3549 Sun Mar 18 01:15:30 2001  Tim Janik  <timj@gtk.org>
3550
3551         * gtk/gtkspinbutton.[hc]: added rc-style argument
3552         GtkSpinButton::shadow_type.
3553         removed spin_button->shadow_type, gtk_spin_button_set_shadow_type()
3554         and ARG_SHADOW_TYPE as it doesn' make much sense to try to override
3555         rc-style settings.
3556
3557         * gtk/gtkfixed.c: removed gtk_fixed_paint() (was unused).
3558
3559         * gtk/gtkwidget.c: quark cleanups.
3560
3561         * gtk/gtkrc.[hc]: added gtk_rc_scanner_new() to create an rc-file
3562         scanner with appropriate configuration, renamed GtkRcStyleClass.clone
3563         to create_rc_style() (we don't do cloning in standard OO sense).
3564         added per rc style properties.
3565         
3566         * gtk/gtkstyle.[hc]: added code to retrive pspec conformant rc-style
3567         property values and for caching those. some cleanups.
3568         
3569         * gtk/Makefile.am: -DG_DISABLE_CONST_RETURNS.
3570         
3571         * gtk/gtksettings.[hc]: new file for global rc-file properties
3572         (at least currently, should get extended to support X properties
3573         and other communication mechanisms).
3574         
3575         * gtk/gtkwidget.[hc]: added style property support:
3576         (gtk_widget_class_install_style_property_parser): install style
3577         property pspec with parser function for rc-file values other
3578         than LONG, DOUBLE or STRING.
3579         (gtk_widget_class_install_style_property): same as above without
3580         parser (parsers are going to be needed quite infrequently).
3581         (gtk_widget_style_get_property): retrive style property value.
3582         (gtk_widget_style_get_valist): same as above with varargs support,
3583         has NOCOPY semantics.
3584         (gtk_widget_style_get): wrapper around gtk_widget_style_get_valist().
3585
3586 Fri Mar 16 18:24:53 2001  Jonathan Blandford  <jrb@redhat.com>
3587
3588         * demos/gtk-demo/main.c (row_activated_cb): modified to use
3589         "row_activated" signal.
3590
3591         * gtk/gtktreeview.c (gtk_tree_view_row_activated): oh, the
3592         stupidity.  Lets actually pass in the row with this signal...
3593
3594 Fri Mar 16 18:01:17 2001  Jonathan Blandford  <jrb@redhat.com>
3595
3596         * gtk/gtktreeviewcolumn.[ch]: s/GTK_TREE_COLUMN/GTK_TREE_VIEW_COLUMN
3597
3598         * gtk/gtktreeview.c (gtk_tree_view_row_activated): New signal.
3599
3600         * gtk/gtktreeview.c (gtk_tree_view_destroy): moved pretty much
3601         everything into the ::destroy function, and freed a lot more.
3602
3603 2001-03-16  Havoc Pennington  <hp@redhat.com>
3604
3605         * gtk/gtkwidget.h (struct _GtkWidgetAuxInfo): change to use gint
3606         instead of gint16, to avoid overflow issues, since sizes > 16-bit
3607         are now allowed.
3608
3609 2001-03-16  Havoc Pennington  <hp@redhat.com>
3610
3611         * Applied patch from Nils Barth (bug # 51041) to 
3612         replace "gint" with "gboolean" and 0/1 with TRUE/FALSE
3613         in various places.
3614
3615 2001-03-15  Havoc Pennington  <hp@redhat.com>
3616         
3617         * gtk/gtktextbuffer.c (gtk_text_buffer_create_tag): add varargs 
3618         for properties to set on the tag.
3619
3620         * gtk/testtext.c: fixups to reflect create_tag change
3621         
3622         * gtk/gtktexttag.c (gtk_text_tag_set_property):
3623         background/foreground stipple are objects, not boxed.
3624
3625         * demos/gtk-demo/textview.c: intellihancing
3626
3627 Fri Mar 16 11:38:42 2001  Jonathan Blandford  <jrb@redhat.com>
3628
3629         * gtk/gtktreeview.c (gtk_tree_view_set_model): Fixed some
3630         braindeadness spotted by Jamie Strachan <frostfreek@yahoo.com>.
3631
3632 2001-03-16  Alexander Larsson  <alexl@redhat.com>
3633
3634         * gdk/x11/gdkgeometry-x11.c (_gdk_window_process_expose):
3635         Fix sign error with queued region translations.
3636
3637 2001-03-15  HideToshi Tajima  <tajima@happy>
3638
3639         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_set_cursor_location): 
3640         * gtk/gtkimmulticontext.c (gtk_im_multicontext_set_cursor_location):
3641         * gtk/gtkentry.c (update_im_cursor_location): 
3642         * gtk/gtkimcontext.c (gtk_im_context_set_cursor_location):
3643         * gtk/gtkimcontext.h (struct _GtkIMContextClass): rename
3644         set_cursor_pos to set_cursor_location in GtkInputContext class
3645
3646 Thu Mar 15 18:22:44 2001  Jonathan Blandford  <jrb@redhat.com>
3647
3648         * gtk/gtkcellrenderer.h: Changed prototype to allow for getting
3649         the location of the cell relative to its area.
3650         * gtk/gtkcell*: modified for above change
3651         * gtk/gtktreeview.c: modified for above change.
3652
3653 Wed Mar 14 13:58:32 2001  Jonathan Blandford  <jrb@redhat.com>
3654
3655         * gtk/gtktreeview.c (gtk_tree_view_set_model): Ref the model.
3656          (gtk_tree_view_finalize): actually unref the model.  Thanks to
3657         Jamie Strachan <frostfreek@yahoo.com> for noticing this error.
3658
3659 2001-03-14  Havoc Pennington  <hp@redhat.com>
3660
3661         * gtk/gtkdata.h, gtk/gtkdata.c: Delete.
3662         
3663         * gtk/gtk.h: remove gtkdata.h
3664
3665         * gtk/Makefile.am: remove gtkdata
3666         
3667         * gtk/gtktext.c (gtk_text_set_adjustments): connect to "destroy"
3668         not "disconnect" on the adjustments.
3669         
3670         * gtk/gtktooltips.h, gtk/gtktooltips.c: derive from GtkObject not
3671         GtkData
3672
3673         * gtk/gtkadjustment.h, gtk/gtkadjustment.c: derive from GtkObject
3674         not GtkData
3675
3676         * configure.in: handle case where X render exists, but Pango lacks
3677         Xft support.
3678
3679 2001-03-15 Alexander Larsson  <alexl@redhat.com>
3680
3681         * gtk/gtktoolbar.[ch]:
3682         New functions gtk_toolbar_set_icon_size and gtk_toolbar_insert_stock
3683         to add stock items to toolbars.
3684
3685         * gtk/Makefile.am:
3686         Remove ../gdk/gdkim.h from gdk_headers.
3687
3688 2001-03-15  Sven Neumann  <sven@gimp.org>
3689
3690         * gdk/gdkim.h: removed
3691         
3692         * gdk/gdkprivate.h
3693         * gdk/x11/gdkim-x11.c: do not include gdkim.h 
3694
3695 2001-03-14  HideToshi Tajima  <tajima@happy.sunsoft.eng.sun.com>
3696
3697         * gtk/gtkimmulticontext.c (gtk_im_multicontext_set_cursor_pos):
3698         * gtk/gtkimcontext.c (gtk_im_context_set_cursor_pos):
3699         * gtk/gtkimcontext.h (struct _GtkIMContextClass): add
3700         set_cursor_pos() virtual method
3701
3702         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_class_init):
3703         (gtk_im_context_xim_set_cursor_pos): add implementation for
3704         set_cursor_pos() method
3705
3706         * gtk/gtkentry.c (recompute_idle_func): set current cursor
3707         position to input methods
3708
3709 Mon Mar 12 21:02:08 2001  Jonathan Blandford  <jrb@redhat.com>
3710
3711         * gtk/gtktreeview.c (gtk_tree_view_header_focus): Fix up focus
3712         code a lot.
3713
3714         * gtk/gtktreedatalist.c (_gtk_tree_data_list_free): use
3715         g_mem_chunk.
3716         (_gtk_tree_data_list_alloc): use g_mem_chunk.
3717         (_gtk_tree_data_list_node_to_value): Fix to switch on
3718         G_TYPE_FUNDAMENTAL.
3719         (_gtk_tree_data_list_value_to_node): Fix to switch on
3720         G_TYPE_FUNDAMENTAL.
3721         (_gtk_tree_data_list_node_copy): Fix to switch on
3722         G_TYPE_FUNDAMENTAL.
3723
3724 2001-03-12  Havoc Pennington  <hp@redhat.com>
3725
3726         * gtk/gtkwindow.c (gtk_window_class_init): Patch from John Margaglione 
3727         to convert to new property API. Also, change default_width and
3728         default_height get_property to return 0 as the flag value for
3729         "unset"; -1 is not a valid value for these fields.
3730
3731 2001-03-12  Havoc Pennington  <hp@redhat.com>
3732
3733         * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: Switch to using an
3734         enum with registration for icon sizes, instead of strings.
3735
3736         * gtkimage.h, gtkimage.c, gtkstyle.h, gtkstyle.c, gtkwidget.h, 
3737         gtkwidget.c: Fix to reflect GtkIconSize
3738         
3739 2001-03-12  Alexander Larsson  <alexl@redhat.com>
3740
3741         Make GtkFB compile and link.
3742         
3743         * gdk/linux-fb/gdkdrawable-fb2.c:
3744         window->mapped to GDK_WINDOW_IS_MAPPED(). 
3745         
3746         * gdk/linux-fb/gdkwindow-fb.c:
3747         window->mapped to GDK_WINDOW_IS_MAPPED(). 
3748         Added gdk_window_shape_combine_region.
3749         Added assorted placeholders for unimplemented new GdkWindow API calls.
3750
3751 2001-03-12  Alexander Larsson  <alexl@redhat.com>
3752
3753         * gtk/gtkfilesel.c:
3754         Add more test when converting filenames from/to utf-8.
3755         Don't allow entering text in the filename entry which isn't allowed in
3756         a filename. Just beep instead.
3757
3758 2001-03-12  Alexander Larsson  <alexl@redhat.com>
3759
3760         * gtk/gtkclist.c:
3761         Scroll using gdk_window_scroll(). Don't wait for exposes.
3762         Move the column headers in an order that makes them flash less.
3763
3764 2001-03-10  Hans Breuer  <hans@breuer.org>
3765
3766         * gdk/gdk.def : updated
3767
3768         * gdk/win32/gdkgc-win32.c : pixmaps are visible again, due
3769         to offseting the clip_mask at the right place
3770
3771         * gdk/win32/gdkwindow-win32.c : don't create background brushes
3772         for all the gdkClasses, especially not for the input_only case.
3773         Otherwise flickering wont be avoidable, because we don't get
3774         WM_ERASEBKGND message for these windows.
3775
3776         * gdk/win32/gdkevents-win32.c : initialize event->expose.region
3777         and fixed massive redraw problems apparently triggered by Alexanders 
3778         recent change. Not fully understood the GDK_EXPOSE / WM_PAINT handling
3779         but it seems to work quite well :-)
3780
3781         * gdk/win32/gdkprivate-win32.h : added _gdk_window_process_expose
3782         prototype
3783
3784 Sat Mar 10 12:15:31 2001  Jonathan Blandford  <jrb@redhat.com>
3785
3786         * gtk/gtktreestore.c (gtk_tree_store_set_cell): Fix a stupid typo.
3787         (gtk_list_store_set_cell): Fix a stupid typo.
3788
3789 Fri Mar  9 20:36:21 2001  Jonathan Blandford  <jrb@redhat.com>
3790
3791         * gtk/gtktreeselection.c (gtk_tree_selection_select_all): Make
3792         select_all not work if you're in SINGLE mode (it doesn't make that
3793         much sense, anyway.)
3794
3795         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_to_value):
3796         handle types more sanely.
3797         (_gtk_tree_data_list_value_to_node): handle types more sanely.
3798         (_gtk_tree_data_list_node_copy): handle types more sanely.
3799
3800         * gtk/gtkliststore.c (gtk_list_store_set_cell): fix to work with
3801         GValue better. Converts the type as well.
3802
3803         * gtk/gtktreestore.c (gtk_tree_store_set_cell): fix to work with
3804         GValue better. Converts the type as well.
3805
3806 Wed Mar  7 20:47:41 2001  Owen Taylor  <otaylor@redhat.com>
3807
3808         * gtk/gtktext.c gtk/gtkoldeditable.[ch] gdk/gdk.[ch]
3809         gdk/Makefile.am gdk/x11/Makefile.am gdk/x11/gdkevents-x11.c 
3810         gdk/x11/gdkglobals-x11.c gdk/x11/gdkprivate-x11.c
3811         gdk/x11/gdkx.h gdk/x11/gdkim-x11.c: Remove old XIM code.
3812
3813         * gdk/win32/gdkim-win32.c gdk/linux-fb/gdkim-fb.c: Remove
3814         gdk_im/gdk_ic.
3815
3816 2001-03-09  Hans Breuer  <hans@breuer.org>
3817
3818         * gdk/gdk.def : updated
3819
3820         * gdk/win32/gdkevents-win32.c : don't ask input_only windows
3821         for their palette
3822
3823         * gdk/win32/gdkgeometry-win32.c : reflect GdkWindowObject::mapped
3824         removing
3825
3826         * gdk/win32/gdkwindow-win32.c : reflect GdkWindowObject::mapped
3827         removing and implemented Havoc's GdkWindow state functions; 
3828         stick/unstick only as no-op, cause I don't know how to emulate 
3829         on win32 ...
3830
3831         * gtk/gtk.def : updated
3832
3833         * gtk/gtkbox.c (gtk_box_get_spacing) : use g_return_val_if_fail ()
3834
3835         * gtk/gtktypeutils.c : #include <string.h>
3836
3837         * gtk/gtkwindow.h : declare gtk_window_set_decorated ()
3838
3839 Fri Mar  9 09:31:55 2001  Tim Janik  <timj@gtk.org>
3840
3841         * gtk/gtkwidget.c (gtk_widget_class_init): fixed signals with
3842         GDK_TYPE_DRAG_CONTEXT, it needs to be marshaled as an object,
3843         not a boxed.
3844
3845 2001-03-09  Alexander Larsson  <alexl@redhat.com>
3846
3847         * docs/Changes-2.0.txt:
3848         Document expose event->region change and that gtk_widget_event
3849         doesn't allow passing expose events.
3850
3851         * gdk/gdkevents.h:
3852         Add region to expose event.
3853         
3854         * gdk/gdkevents.c:
3855         Handle event->region in gdk_event_copy() and gdk_event_free().
3856
3857         * gdk/gdkwindow.c (gdk_window_process_updates_internal):
3858         Generate expose_event->region when creating expose events.
3859
3860         * gdk/x11/gdkevents-x11.c:
3861         Generate expose events with regions when translating X events.
3862
3863         * gtk/gtkcontainer.[ch]:
3864         Default expose handler that propagates expose events to NO_WINDOW
3865         children. New function gtk_container_propagate_expose()
3866
3867         * gtk/gtkwidget.[ch]:
3868         Moved gtk_widget_event implementation to gtk_widget_event_internal.
3869         gtk_widget_event calls gtk_widget_event_internal but doesn't allow
3870         expose events. New function gtk_widget_send_expose() to send expose
3871         events. New function gtk_widget_region_intersect() to calculate
3872         window/region intersections.
3873         
3874         * gtk/gtkmain.c (gtk_main_do_event):
3875         Use gdk_window_begin_paint_region() instead of gdk_window_begin_paint_rect().
3876         Use gtk_widget_send_expose() to send expose events.
3877         
3878         * gtk/gtkbin.c:
3879         * gtk/gtkbox.c:
3880         * gtk/gtkfixed.c:
3881         * gtk/gtkimagemenuitem.c:
3882         * gtk/gtklist.c:
3883         * gtk/gtkpacker.c:
3884         * gtk/gtktable.c:
3885         * gtk/gtktree.c:
3886         Remove expose handler, using the default container implementation
3887         instead.
3888         
3889         * gtk/gtkbutton.c:
3890         * gtk/gtkcheckbutton.c:
3891         * gtk/gtkeventbox.c:
3892         * gtk/gtkfixed.c:
3893         * gtk/gtkhandlebox.c:
3894         * gtk/gtklayout.c:
3895         * gtk/gtklistitem.c:
3896         * gtk/gtkmenu.c:
3897         * gtk/gtkmenubar.c:
3898         * gtk/gtkmenuitem.c:
3899         * gtk/gtknotebook.c:
3900         * gtk/gtkoptionmenu.c:
3901         * gtk/gtkpaned.c:
3902         * gtk/gtkscrolledwindow.c:
3903         * gtk/gtktogglebutton.c:
3904         * gtk/gtktoolbar.c:
3905         * gtk/gtktreeitem.c:
3906         * gtk/gtkviewport.c:
3907         Chain expose handler to parent class handler. Use
3908         gtk_container_propagate_expose() to propagate exposes.
3909
3910         * gtk/gtkclist.c (check_exposures):
3911         * gtk/gtktext.c (process_exposes):
3912         Use gtk_widget_send_expose instead of gtk_widget_event.
3913
3914 Thu Mar  8 19:40:28 2001  Jonathan Blandford  <jrb@redhat.com>
3915
3916         * gtk/gtktreeview.c (gtk_tree_view_destroy): Add destroy function.
3917
3918 Thu Mar  8 19:18:27 2001  Jonathan Blandford  <jrb@redhat.com>
3919
3920         * gtk/gtktreeview.c (gtk_tree_view_unref_tree_helper): Actually
3921         unref the nodes.   Fixes bug #50058.
3922
3923         * gtk/gtktreemodel.c (gtk_tree_model_ref_node): change
3924         "::ref_iter" to "::ref_node".
3925         (gtk_tree_model_unref_node): change "::unref_iter" to
3926         "::unref_node". Fixes bug #50064.
3927
3928 Thu Mar  8 17:40:09 2001  Jonathan Blandford  <jrb@redhat.com>
3929
3930         * gtk/gtktreeview.c (gtk_tree_view_create_row_drag_icon): add
3931         support for invisible cells.
3932          (gtk_tree_view_bin_expose): ditto
3933
3934 Thu Mar  8 16:36:00 2001  Jonathan Blandford  <jrb@redhat.com>
3935
3936         * gtk/gtktreemodel.c (gtk_tree_model_get_type): add prerequesite
3937         on gobjects.
3938
3939         * tests/testtreefocus.c (main): New test file.
3940
3941         * tests/testtreeview.c: update to latest glib changes.
3942
3943         * tests/testtreecolumns.c: update to latest glib changes.
3944
3945 Thu Mar  8 18:13:20 2001  Tim Janik  <timj@gtk.org>
3946
3947         * gtk/testgtk.c: re-enabled event watcher emission hooks.
3948
3949 Thu Mar  8 16:51:21 2001  Tim Janik  <timj@gtk.org>
3950
3951         * *.c: added accumulator data argument to g_signal_newc()
3952         functions.
3953
3954         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_set_model): 
3955         * gtk/gtktreeview.c (gtk_tree_view_setup_model): 
3956         * gtk/treestoretest.c (make_window):
3957         s/g_signal_connect/g_signal_connectc/.
3958
3959         * gtk/gtktextbuffer.c: completed signal arg fixups,
3960         they also needed G_SIGNAL_TYPE_STATIC_SCOPE flag.
3961
3962 Thu Mar  8 00:02:30 2001  Owen Taylor  <otaylor@redhat.com>
3963
3964         * gtk/gtkwidget.[ch] (gtk_widget_get_name): Make
3965         G_CONST_RETURN.
3966
3967         * gtk/gtkwidget.[ch] gtk/gtkprivate.h: Add a 
3968         ::hierarchy-changed signal when a widget changes
3969         from anchored to unanchored or vice versa.
3970         (anchored means 
3971          gtk_widget_get_ancestor (widget, GTK_TYPE_WINDOW) != NULL.)
3972         Use a private flag to keep track of this efficiently.
3973
3974 2001-03-07  Havoc Pennington  <hp@redhat.com>
3975
3976         * gtk/testgtk.c (create_spins): uglify so that size request gets
3977         tested.
3978
3979         * gtk/gtkspinbutton.c (gtk_spin_button_size_request): Base size
3980         request on values for upper/lower, completes #6152
3981
3982 Wed Mar  7 20:07:22 2001  Owen Taylor  <otaylor@redhat.com>
3983
3984         * Makefile.am: Remove gtk-config-2.0 again.
3985         (Grrrr, pkg-config. And stops make loops.)
3986
3987 Thu Mar  8 00:18:29 2001  Tim Janik  <timj@gtk.org>
3988
3989         * gtk/gtksignal.[hc]: removed old emission hook API.
3990         
3991         * docs/Changes-2.0.txt: fixed sections.
3992         
3993         * gtk/gtktextbuffer.c: signal arg fixups.
3994
3995 2001-03-07  Havoc Pennington  <hp@redhat.com>
3996
3997         * gtk/gtktextview.c (invalidated_handler): use PRIORITY_VALIDATE
3998
3999         * gtk/gtktextview.h (GTK_TEXT_VIEW_PRIORITY_VALIDATE): add this
4000         here, bug #50368; changed to be GDK_PRIORITY_REDRAW + 5, instead
4001         of GDK_PRIORITY_REDRAW + 1, so you can insert stuff in between the
4002         validation and the redraw which is higher priority than the
4003         validation.
4004
4005 2001-03-07  Havoc Pennington  <hp@redhat.com>
4006
4007         * gtk/gtkentry.c (gtk_entry_get_property): remove trailer
4008         (gtk_entry_set_property): remove trailer
4009
4010         * gtk/gtkentry.c (gtk_entry_set_width_chars): 
4011         (gtk_entry_get_width_chars): new functions, to set size request to 
4012         a given number of characters
4013
4014         * gtk/testgtk.c (create_dialog): beef up the dialog test slightly
4015
4016         * gtk/gtkdialog.c (gtk_dialog_set_has_separator): new function
4017         (gtk_dialog_get_has_separator): new function
4018         (run_delete_handler): fix to not emit "response" signal
4019         because we already did in the delete event handler installed
4020         at dialog creation time.
4021         
4022         * gtk/gtkdialog.h: add a has_separator property,
4023         add GTK_DIALOG_NO_SEPARATOR flag
4024
4025 2001-03-07  Havoc Pennington  <hp@redhat.com>
4026
4027         * gtk/gtkwindow.c (gtk_window_set_decorated): new function, turns
4028         off decorations for a window.
4029
4030         * demos/gtk-demo/button_box.c (create_bbox): adapt to button box
4031         changes
4032
4033         * gtk/gtklabel.c (gtk_label_get_layout_offsets): new function 
4034         to get location of PangoLayout inside the label, closes #51198
4035
4036         * gtk/testgtk.c (create_bbox): fix up button box usage
4037
4038         * gtk/testcalendar.c (create_calendar): fix up button box usage
4039
4040         * gtk/gtkfilesel.c (gtk_file_selection_init): fixup buttonbox usage
4041
4042         * gtk/gtkdialog.c (gtk_dialog_init): fixup buttonbox usage
4043
4044         * gtk/gtkhbbox.h: deprecations
4045
4046         * gtk/gtkvbbox.h: deprecations
4047
4048         * gtk/gtkbox.c (gtk_box_get_spacing): new function, used to
4049         emulate deprecated gtk_button_box_get_spacing
4050
4051         * gtk/gtkbbox.h: deprecate some useless functions, remove entirely 
4052         the "set global default" functions
4053         (struct _GtkButtonBox): remove "spacing" field, use the one from 
4054         GtkBox base class
4055
4056         * gtk/gtkbbox.c (_gtk_button_box_child_requisition): rename with uscore
4057
4058         * gtk/gtkiconfactory.c (gtk_icon_set_render_icon): If we fail to
4059         render the icon, return the missing image icon.
4060
4061         * gtk/gtkimage.c (gtk_image_set_from_file): fall back to missing
4062         image icon if the load fails.   
4063
4064         * gtk/gtkstock.h (GTK_STOCK_MISSING_IMAGE): Add stock icon for use
4065         when no image is found; should be the Netscape "missing image"
4066         icon eventually but for now is a random image
4067
4068         * gtk/gtkwindow.c (gtk_window_set_role): new function, sets the 
4069         role for the session manager
4070
4071         * gtk/testgtk.c (dnd_drop): remove use of GTK_WINDOW_DIALOG
4072
4073         * gtk/gtkcompat.h (GTK_WINDOW_DIALOG): compat #define
4074         GTK_WINDOW_DIALOG GTK_WINDOW_TOPLEVEL
4075
4076         * gtk/gtkenums.h (enum GtkWindowType): remove GTK_WINDOW_DIALOG
4077
4078 Wed Mar  7 13:24:57 2001  Tim Janik  <timj@gtk.org>
4079
4080         * gtk/*.c: marshaller fixes.
4081         
4082         * gtk/gtkmarshal.list: extreme cleanup.
4083
4084         * gtk/gtktreeview.c (gtk_tree_view_class_init): disable interface
4085         param spec for now.
4086
4087         * gtk/gtktexttag.c (gtk_text_tag_set_property): use g_value_get_boxed()
4088         where appliable.
4089
4090         * gtk/gtktypeutils.[hc]: updates to GLib API changes.
4091         special cased autogenerated boxed types from gtktypebuiltins_ids.c
4092         which are not reference counted:
4093         GtkSelectionData, GdkEvent, GdkColor, GtkTextIter, PangoTabArray,
4094         PangoFontDescription, GtkTreeIter and GtkTreePath.
4095
4096 Thu Mar  1 03:58:56 2001  Tim Janik  <timj@gtk.org>
4097
4098         * gtk/gtktreeselection.h: 
4099         * gtk/gtktreemodel.c:
4100         * gtk/gtktreedatalist.[hc]: fixed includes. no gobject/*
4101         file should be included directly, and gobject/gmarshal.h
4102         as well as gtk/gtkmarshal.h even can't be included directly.
4103
4104         * Makefile.am: grr, install gtk-config-2.0.
4105
4106         * gtk/testgtk.c:
4107         * gtk/simple.c:
4108         * gtk/gtkmenu.c:
4109         * gtk/gtkitemfactory.c: use g_object_connect() instead of
4110         passing "*signal*::*" args to gtk_widget_set().
4111         
4112         * gtk/gtktypeutils.[hc]: got rid of GTK_TYPE_SIGNAL.
4113         
4114         * gtk/*.c: removed trailer arg from property setters and getters.
4115         macro fixups.
4116
4117 2001-03-07  Alexander Larsson  <alexl@redhat.com>
4118
4119         * gtk/gtklabel.c (set_markup): Removed warning
4120
4121 Tue Mar  6 19:59:12 2001  Jonathan Blandford  <jrb@redhat.com>
4122
4123         * gtk/gtkcellrenderer.h (struct _GtkCellRenderer): Add visible
4124         field to allow you to hide cell renderers.
4125
4126         * gtk/gtkcellrenderer.c: Add support for invisible cells.
4127
4128         * gtk/gtktreeview.c: Add support for invisible cells.
4129
4130 Tue Mar  6 17:25:07 2001  Jonathan Blandford  <jrb@redhat.com>
4131
4132         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_button_clicked):
4133         Add "clicked" signal back to columns.
4134
4135         * ChangeLog: remove conflict markers.
4136
4137 Tue Mar  6 10:45:45 2001  Owen Taylor  <otaylor@redhat.com>
4138
4139         * gtk/gtkbutton.c: Add animation of activation by, on 
4140         activate, pressing the button, and adding a timeout that 
4141         releases the button after 250ms or on key release and
4142         emits ::clicked. (#51501)
4143
4144         * gtk/gtkdialog.c: Bit of a hack - for buttons in the
4145         action area, we connect to ::clicked instead of ::activate
4146         so the dialog stays up through the animation.
4147
4148 Mon Mar  5 16:38:15 2001  Owen Taylor  <otaylor@redhat.com>
4149
4150         * gtk/gtkmenushell.c (gtk_menu_shell_enter_notify): Only
4151         check the ignore_enter flag for the menu shell that
4152         the item is actually a child of, not for attached
4153         submenus. (#51536)
4154
4155 Tue Feb 27 02:16:14 2001  Owen Taylor  <otaylor@redhat.com>
4156
4157         * gtk/gtkmain.c (gtk_propagate_event): Only do special
4158         special key-press grab handling for widgets within
4159         GtkWindows. Otherwise, fall through to normal case.
4160
4161         This prevents key events being sent twice to GtkInvisible
4162         widgets, which can cause all sorts of mischief.
4163
4164 Fri Feb  2 13:20:12 2001  Owen Taylor  <otaylor@redhat.com>
4165
4166         * gtk/gtkmain.c (gtk_propagate_event): When a grab
4167         widget is in effect, give the grab widget a first
4168         crack at KEY_PRESS/RELEASE events. (#424)
4169
4170 2001-03-06  James Henstridge  <james@daa.com.au>
4171
4172         * gtk/gtkwidget.c (gtk_widget_class_init): set the class closure
4173         offset for the window_state_event to point at window_state_event
4174         rather than no_expose_event.
4175
4176 Mon Mar  5 19:10:15 2001  Jonathan Blandford  <jrb@redhat.com>
4177
4178         * gtk/gtkimmodule.h: fix busted /* comment */
4179
4180 Mon Mar  5 15:07:05 2001  Jonathan Blandford  <jrb@redhat.com>
4181
4182         * gtk/gtktreeview.c: Apply patch from John Margaglione to add
4183         object properties.
4184
4185 Mon Mar  5 14:55:19 2001  Jonathan Blandford  <jrb@redhat.com>
4186
4187         * gtk/gtkcellrenderertoggle.c: Apply patch from Lee Mallabone to
4188         add object properties.
4189
4190         * gtk/gtkcellrenderertextpixbuf.c: Apply patch from Lee Mallabone
4191         to add object properties.
4192
4193         * gtk/gtkcellrenderertext.c: Apply patch from Lee Mallabone to add
4194         object properties.
4195
4196         * gtk/gtkcellrendererpixbuf.c: Apply patch from Lee Mallabone to
4197         add object properties.
4198
4199         * gtk/gtkcellrenderer.c: Apply patch from Lee Mallabone to add
4200         object properties.
4201
4202 Mon Mar  5 14:38:54 2001  Jonathan Blandford  <jrb@redhat.com>
4203
4204         * gtk/gtktreemodel.c: renamed "child_toggled" to
4205         "has_child_toggled".
4206
4207         * gtk/gtktreeview.c: Handle removing columns better.  Updated to
4208         handle new signal name.
4209
4210         * gtk/gtktreestore.c: Updated to handle new signal name.
4211         * gtk/gtklisttore.c: Updated to handle new signal name.
4212         * gtk/gtktreemodelsort.c: Updated to handle new signal name.
4213
4214 2001-03-05  Alexander Larsson  <alexl@redhat.com>
4215
4216         * gtk/gtkmenu.c (gtk_menu_set_tearoff_state):
4217         Set GDK_WINDOW_TYPE_HINT_MENU on tearoff window.
4218
4219 2001-03-05  Michael Natterer  <mitch@gimp.org>
4220
4221         * gtk/gtklabel.c: Made the "parent_class" pointer static. The
4222         pixbuf-engine coincidentially also failed to make one of it's
4223         parent_class pointers static, causing overwriting of GtkLabel's
4224         parent_class pointer in pixbuf_style_class_init().
4225         (Will commit the fix to the pixbuf-engine too).
4226
4227 2001-03-05  Alexander Larsson  <alexl@redhat.com>
4228
4229         * gdk/gdkwindow.h:
4230         Added GdkWindowTypeHint type. Added modal_hint field to GdkWindindow.
4231         New functions gdk_window_set_type_hint, gdk_window_set_modal_hint and
4232         gdk_window_set_icon_list for net wmspec functionality.
4233
4234         * gdk/x11/gdkwindow-x11.c:
4235         Set _NEW_WM_STATE_MODAL from window->modal_hint in set_inital_hints.
4236         Implement gdk_window_set_type_hint, gdk_window_set_modal_hint and
4237         gdk_window_set_icon_list.
4238         Added gdk_wmspec_change_state helper function and used it in the code.
4239         Set _NET_WM_ICON_NAME in gdk_window_set_title and gdk_window_set_icon_name.
4240
4241         * gtk/gtkdialog.c (gtk_dialog_init):
4242         Set GDK_WINDOW_TYPE_HINT_DIALOG.
4243
4244         * gtk/gtkhandlebox.c (gtk_handle_box_realize):
4245         Set GDK_WINDOW_TYPE_HINT_TOOLBAR.
4246
4247         * gtk/gtkwindow.c:
4248         new function gtk_window_set_type_hint.
4249         On realize, set type hint and modal hint.
4250
4251         * gtk/gtkwindow.h:
4252         Added type_hint field and gtk_window_set_type_hint.
4253
4254 2001-03-05  Alexander Larsson  <alexl@redhat.com>
4255
4256         * gtk/gtklabel.[ch]:
4257         Convert from GtkArg to GParam (originally based on patch from Lee Mallabone).
4258         New function gtk_label_get_accel_keyval () to get the underline accelerator
4259         of the label. Setting the label pattern overrides other attributes.
4260
4261 Mon Mar  5 14:51:10 MET 2001  Sven Neumann  <sven@gimp.org>
4262
4263         * gtk/gtkrc.c: fixed compiler warnings by inserting some consts.
4264         Added missing initializers to gtk_rc_style_init().
4265
4266 Sun Mar 04  07:30:03 2001 CET Mikael Hermansson <mikeh@bahnhof.se>
4267
4268         * gtk/gtktextview.c: fixed bug #51097 about setting 
4269         gtk_text_view_set_border_window_size() if the widget is 
4270         already realized.
4271
4272 Sat Mar  3 16:59:16 2001  Owen Taylor  <otaylor@redhat.com>
4273
4274         * gdk/gdkpango.h gdk/x11/gdkwindow-x11.c: Doc fixes
4275
4276         * gdk/win32/gdkinput.c (gdk_device_get_axis): Remove doc
4277         comment. Won't do to have duplicated doc comments between
4278         the platform subdirs.
4279
4280 Sat Mar  3 16:26:33 2001  Owen Taylor  <otaylor@redhat.com>
4281
4282         * gdk/x11/gdkmain-x11.c gdk/x11/gdkkeys-x11.c 
4283           gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.c:
4284
4285         Detectable auto-repeat - make a repeating key generate
4286         press/press/press/release instead of press/release pairs.
4287
4288         If we have Xkb and XkbSetDectableAutoRepeat supports
4289         that, we do it that way. Otherwise, when we get
4290         a release event, we check ahead with XPending to see
4291         if the next key is a KeyPress with the same keycode
4292         and timestamp. (Not 100% reliable, but pretty close.)
4293           
4294 Tue Feb 27 02:16:14 2001  Owen Taylor  <otaylor@redhat.com>
4295         
4296         * gtk/gtkmain.c (gtk_propagate_event): Only do special
4297         special key-press grab handling for widgets within
4298         GtkWindows. Otherwise, fall through to normal case.
4299  
4300         This prevents key events being sent twice to GtkInvisible
4301         widgets, which can cause all sorts of mischief.
4302  
4303 Fri Feb  2 13:20:12 2001  Owen Taylor  <otaylor@redhat.com>
4304  
4305         * gtk/gtkmain.c (gtk_propagate_event): When a grab
4306         widget is in effect, give the grab widget a first
4307         crack at KEY_PRESS/RELEASE events. (#424)
4308  
4309 Sat Mar  3 15:39:49 2001  Owen Taylor  <otaylor@redhat.com>
4310
4311         * gtk/gtkentry.c (gtk_entry_button_press): Add shift-clicking
4312         to extend the selection. (Roughly based on patch
4313         from Jay Cox, #50939)
4314
4315         * gtk/gtkentry.c (gtk_entry_button_press): Fix triple-clicking
4316         to properly handle previous GDK_BUTTON_PRESS. 
4317         (Patch from Jay Cox, #50938)
4318
4319         * gtk/gtkentry.c (gtk_entry_real_delete_text): Move the
4320         '\0' back along with the deleted text. (#51148)
4321
4322 Mon Jan 22 14:31:29 2001  Owen Taylor  <otaylor@redhat.com>
4323
4324         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Unshift
4325         the group when extracting it from the X keyboard event.
4326
4327         * modules/input/Makefile.am modules/input/imipa.c: 
4328         Simple module for entering IPA. (Do we need a 
4329         gtk-stupid-input-tricks CVS module?)
4330
4331 Sat Mar  3 13:32:47 2001  Owen Taylor  <otaylor@redhat.com>
4332
4333         * gtk/gtkimmodule.c (gtk_im_module_init): Remove spurious
4334         const.
4335
4336         * gdk-pixbuf-2.0.pc.in gtk+-2.0.pc.in: Fix include path.
4337
4338         * gtk/gtkdialog.c (gtk_dialog_set_default_response): If there
4339         is no focus widget for the dialog currently, grab the focus as well
4340         as the default.
4341
4342         * gtk/gtkdialog.c (gtk_dialog_set_default_response): Get
4343         the action area's children to iterate through, not the
4344         dialog's children.
4345
4346 Sat Mar  3 13:21:27 2001  Owen Taylor  <otaylor@redhat.com>
4347
4348         * tests/Makefile.am tests/testsocket.c tests/testsocket_child.c:
4349         Add plug-socket tests. (Won't work worth a darn until I commit
4350         the rest of the plug-socket changes, but no reason these
4351         can't go into CVS now.)
4352
4353 2001-03-02  Havoc Pennington  <hp@redhat.com>
4354
4355         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_flush): use
4356         _gdk_region_get_xrectangles()
4357
4358         * gdk/x11/gdkmain-x11.c (_gdk_region_get_xrectangles): new function
4359
4360         * gtk/testgtk.c (create_shapes): add test for shape_combine_region
4361
4362         * gdk/x11/gdkwindow-x11.c (gdk_window_shape_combine_region): new
4363         function, contributed by Ron Steinke    
4364
4365         * gdk/x11/gdkevents-x11.c (gdk_wmspec_supported): rename
4366         gdk_net_wm_supports
4367
4368         * gdk/gdkregion-generic.c (gdk_region_get_rectangles): 
4369         New function, contributed by Ron Steinke
4370
4371         * gtk/gtkentry.c (gtk_entry_get_layout_offsets): New function, 
4372         used to line up the text in the entry when using the entry for
4373         editable sheet cell hacks
4374
4375         * gtk/testgtk.c (create_entry): test the activate_default setting
4376         on GtkEntry
4377
4378         * gtk/gtkentry.c (gtk_entry_set_activates_default): New function to 
4379         cause the entry to activate the default button for a dialog when 
4380         activated
4381         (gtk_entry_get_activates_default): new function
4382
4383 Wed Feb 28 19:10:43 2001  Owen Taylor  <otaylor@redhat.com>
4384
4385         * gtk/gtkclist.c (real_remove_row): Patch from ChiDeok
4386         Hwang to move call to sync_selection() up a few lines
4387         to before the row list is modified, to fix crash when
4388         removing rows in the undo_selection list.
4389
4390         (Test case provided by Daniel Elstner:
4391
4392         http://mail.gnome.org/archives/gtk-list/2001-February/msg00359.html)
4393
4394 Fri Feb 23 15:06:48 2001  Owen Taylor  <otaylor@redhat.com>
4395
4396         * gtk/gtktree.c (gtk_tree_class_init): Do the setting
4397         of tree->root_tree in parent_set rather than _map(), 
4398         fixing #50892 in a bit better manner.
4399
4400 Thu Feb 22 17:07:58 2001  Owen Taylor  <otaylor@redhat.com>
4401
4402         * gtk/gtkmenu.c (gtk_menu_popup): Don't flip cursor. (#50934)
4403
4404 Tue Feb  2 11:22:33 2001  Jody Goldberg <jgoldberg@home.com>
4405
4406         * gtk/gtkstyle.c : Remove duplicate fwd decl for
4407         gtk_default_draw_shadow.
4408
4409 ue Feb 20 11:40:58 2001  Owen Taylor  <otaylor@redhat.com>
4410
4411         * gdk/gdkimage.c (gdk_image_new): Remove excess 
4412         warning, make warnings more verbose, treat a error
4413         in shmat as permanent, and don't try again.
4414         (#51163, Ed Randall.)
4415
4416 Mon Feb 19 20:15:28 2001  Owen Taylor  <otaylor@redhat.com>
4417
4418         * gtk/gtkrange.c (gtk_range_timer_1st_time): Add an initial
4419         delay for the first click before starting to scroll.
4420         (based on #51026, gtk-enf-990512-0.patch, Eric Fisher)
4421
4422         * gtk/gtktext.c: GtkText should have I-beam cursor. 
4423         (based on gtk-enf-990513-1.patch, Eric Fisher.)
4424
4425 Mon Feb 19 16:42:19 2001  Owen Taylor  <otaylor@redhat.com>
4426
4427         * gtk/gtklayout.c (gtk_layout_allocate_child): Tiny
4428         cleanup to remove some references to unused
4429         ->xoffset, ->yoffset.
4430
4431 Mon Feb 19 14:20:36 2001  Owen Taylor  <otaylor@redhat.com>
4432
4433         * gdk/gdkrgb.c (gdk_rgb_convert_555_br): Fix incorrect
4434         mask. (#51039, fix from Martin Maierhofer)
4435
4436 Fri Feb 16 20:09:42 2001  Owen Taylor  <otaylor@redhat.com>
4437
4438         * gtk/gtkctree.c (gtk_ctree_class_init): Add bindings
4439         for unshifted + and shifted = for non-us keyboards.
4440         Make <Control>+ and <Control>- work as well as 
4441         <Control>KP_Plus, <Control>KP_Minus for recursive
4442         open/close.  (#2682, René Seindal)
4443
4444 Fri Feb 16 18:50:59 2001  Owen Taylor  <otaylor@redhat.com>
4445
4446         * gtk/gtkmenushell.c (gtk_real_menu_shell_cancel): Unset
4447         the active menu item before deactivating the menu,
4448         so gtk_menu_popdown doesn't change the history. (#50964)
4449         
4450 Fri Feb 16 15:55:22 2001  Owen Taylor  <otaylor@redhat.com>
4451
4452         * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): 
4453         draw lines with text_gc rather than black_gc.
4454         (Patch from Vlad Harchev <hvv hippo ru>, #50926)
4455
4456 Thu Mar  1 19:50:56 2001  Jonathan Blandford  <jrb@redhat.com>
4457
4458         * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_realize_button):
4459         Move handling of buttons fully in gtktreeviewcolumn.  This code is
4460         less interrelated then it was, but it still requires the
4461         GtkTreeView to map it.
4462
4463         * test/testtreecolumn.c: Now I can add a column to one view,
4464         remove it, add it to the another view, remove it, then re-add it
4465         to the first.  Nifty.
4466
4467 Thu Mar  1 13:14:27 GMT 2001  Tony Gale <gale@gtk.org>
4468
4469         * docs/tutorial/gtk-tut.sgml: Minor corrections
4470
4471 Wed Feb 28 16:36:46 2001  Jonathan Blandford  <jrb@redhat.com>
4472
4473         * gtk/gtktreemodel.c (gtk_tree_row_reference_*): Sanitize
4474         GtkRowReference.
4475
4476 2001-02-28  Havoc Pennington  <hp@redhat.com>
4477
4478         * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove draw_focus and
4479         draw_default
4480         (gtk_widget_draw_focus): remove this function; we could instead
4481         make it just gtk_widget_draw(), but in most cases I think the
4482         result would be broken user code, so think it's better to have
4483         that code not compile and get fixed
4484         (gtk_widget_draw_default): ditto
4485
4486         * gtk/gtkwidget.c: Add default handlers for focus_in_event and
4487         focus_out_event that set/unset GTK_HAS_FOCUS and call queue_draw
4488         
4489         * gtk/gtkwindow.c (gtk_window_set_default): just queue a draw when
4490         widgets lose/get the default, instead of calling draw_default
4491         
4492         * docs/Changes-2.0.txt: note about all this
4493
4494         Then fixed every widget in GTK, I won't list all the filenames.
4495
4496 Tue Feb 27 19:32:53 2001  Jonathan Blandford  <jrb@redhat.com>
4497
4498         * gtk/gtktreemodel.c (deleted_callback): Proxy out to
4499         _gtk_tree_row_reference_deleted.
4500         (inserted_callback): Proxy out to
4501         _gtk_tree_row_reference_inserted.
4502         (_gtk_tree_row_reference_new_from_view): Somewhat yukky hack to
4503         get around signal emission ordering problem.
4504
4505         * gtk/gtktreeselection.c (gtk_tree_selection_real_unselect_all):
4506         fix to work with SINGLE 
4507         (_gtk_tree_selection_internal_select_node): Major sanitization on
4508         selections.  SINGLE now seems to work.
4509
4510         * tests/Makefile.am: add testtreecolumn.c:
4511
4512         * tests/testtreecolumn.c: New test.  Mostly points out selection
4513         bugs currently, but will test columns later.
4514
4515         * gtk/gtkrbtree.c (_gtk_rbtree_remove_node): Fix really nasty
4516         selection bug.  I hate touching this code -- it's scary.
4517
4518 2001-02-26  Havoc Pennington  <hp@redhat.com>
4519
4520         * gtk/testgtk.c: test the window state stuff
4521
4522         * gtk/gtkwindow.c (gtk_window_present): new function, makes a
4523         window come to the user's attention as if it were just created
4524         (gtk_window_iconify): new function
4525         (gtk_window_deiconify): new function
4526         (gtk_window_stick): new function
4527         (gtk_window_unstick): new function
4528         (gtk_window_maximize): new function
4529         (gtk_window_unmaximize): new function
4530
4531         * gtk/gtkwidget.h, gtk/gtkwidget.c: add window_state_event signal
4532
4533         * gtk/gtkmain.c (gtk_main_do_event): handle GDK_WINDOW_STATE
4534
4535         * gdk/x11/gdkevents-x11.c: create window state events when
4536         appropriate
4537         (gdk_wmspec_supported): new function
4538
4539         * gdk/x11/gdkwindow-x11.c (gdk_window_iconify): handle
4540         iconification before showing the window
4541         (gdk_window_deiconify): new function
4542         (gdk_window_stick): new function
4543         (gdk_window_unstick): new function
4544         (gdk_window_maximize): new function
4545         (gdk_window_unmaximize): new function
4546
4547         * gdk/gdkwindow.c: store the window state in the window; 
4548         change to using the GDK_WINDOW_STATE_WITHDRAWN flag instead of
4549         window->mapped.
4550         (gdk_window_get_state): return the current window state
4551
4552         * gdk/gdkevents.c (gdk_event_get_time): handle GDK_WINDOW_STATE
4553         (gdk_event_get_state): handle GDK_WINDOW_STATE
4554         (gdk_synthesize_window_state): function to create the window state
4555         events
4556
4557         * gdk/gdkevents.h (struct _GdkEventWindowState): new type of
4558         event, for changes to "window state" such as maximized, sticky, 
4559         etc.
4560         
4561         * gdk/x11/gdkwindow-x11.c (gdk_window_focus): new function,
4562         focuses a window
4563
4564         * gdk/x11/gdkmain-x11.c (_gdk_wmspec_supported): new function, 
4565         finds out if we support a given WM spec hint
4566
4567 Tue Feb 27 13:37:38 GMT 2001  Tony Gale <gale@gtk.org>
4568
4569         * docs/faq/gtk-faq.sgml: New question re memory leaks.
4570
4571 2001-02-25  Hans Breuer  <hans@breuer.org>
4572
4573         * gdk/gdk.h : changed #ifdef GDK_DISBALE_DEPRECARED to #ifndef
4574         cause we want to loose those prototypes only in the latter case
4575
4576         * gdk/win32/gdkevents-win32.c : can't cast from GdkPixmap to
4577         GdkPixmapImplWin32 because it itsn't derived from it. Use the
4578         impl member variable instead
4579
4580         * gtk/gtk.def : updated
4581
4582         * gtk/gtklist.c : 
4583         * gtk/gtkmenus.c : include <string.h> for memset ()
4584
4585         * gtk/makefile.msc.in : updated and don't define GTK_COMPILATION
4586         for everthing built here, but for gtk-x.x.dll only. This solves
4587         problem of indifferent gtk type definitions
4588
4589 Sat Feb 24 20:11:39 2001  Jonathan Blandford  <jrb@redhat.com>
4590
4591         * gtk/gtkclipboard.h: actually put /* */ around #endif comment.
4592
4593 Fri Feb 23 17:50:13 2001  Jonathan Blandford  <jrb@redhat.com>
4594
4595         * gtk/gtktreeview.c (gtk_tree_view_bin_expose): Only draw the
4596         column that is exposed.
4597
4598         (_gtk_tree_view_update_size): Changed name from set_size, and
4599         changed function to do more work, and not force people calling it
4600         to figure out the size.  Simplifies a lot of code elsewhere.
4601
4602 2001-02-23  Alexander Larsson  <alexl@redhat.com>
4603
4604         * gdk/gdkpixmap.c (gdk_pixmap_colormap_new_from_pixbuf):
4605         return solid masks for xpms that have no transparent color.
4606         This makes the ..._create_from_xpm... API backwards
4607         compatible.
4608
4609 2001-02-23  Tor Lillqvist  <tml@iki.fi>
4610
4611         * README.win32: Update. Mention the gtk-1-3-win32-production
4612         branch.
4613
4614         * gdk/win32/bdfcursor.c: New file. A program that generates
4615         xcursors.h. Thanks to Stefan Ondrejicka.
4616
4617         * gdk/win32/xcursors.h: New file, contains the X cursor font in a
4618         compact format.
4619
4620         * gdk/win32/Makefile.am (EXTRA_DIST): Add new files.
4621
4622         * gdk/win32/gdkcursor-win32.c (_gdk_win32_data_to_wcursor): New
4623         function, uses xcursors.h.
4624         (gdk_cursor_new): Use _gdk_win32_data_to_wcursor to generate
4625         cursor from inline data instead of using LoadCursor() to generate
4626         it from a resource.
4627
4628         * gdk/win32/gdkevents-win32.c (gdk_event_translate): At button up
4629         event, must check the Windows message for mouse button state, as
4630         the GDK event state might not have been built if it is
4631         undelivered. Remove one goto.
4632
4633         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Call
4634         SetCursor() if the current cursor as returned by GetCursor() is
4635         the window's previous cursor. The ChildWindowFromPoint() test
4636         apparently didn't work correctly.
4637
4638         * gdk/win32/rc/*.cur: Remove.
4639
4640         * gdk/win32/rc/gdk.rc.in: Remove cursors.
4641
4642         * gdk/win32/rc/Makefile.am (EXTRA_DIST): Remove from here, too.
4643
4644         * gtk/makefile.{mingw,msc}.in: Updates.
4645
4646 Wed Feb 21 20:56:50 2001  Jonathan Blandford  <jrb@redhat.com>
4647
4648         * gtk/gtktreemodel.h: add functions for signal emission.
4649
4650         * gtk/gtktreestore.c: move to use above functions instead of
4651         g_signal_emit.
4652
4653         * gtk/gtkliststore.c: ditto
4654
4655 Wed Feb 21 15:41:34 2001  Jonathan Blandford  <jrb@redhat.com>
4656
4657         * gtk/gtktreestore.c: removed signals.  Moved to inherit from
4658         GObject instead of GtkObject.
4659
4660         * gtk/gtkliststore.c: ditto.
4661
4662         * gtk/gtktreemodelsort.c: ditto.
4663
4664         * gtk/gtktreemodel.c (gtk_tree_model_base_init): moved signals to
4665         GtkTreeModelIface, instead of in each model.
4666
4667 2001-02-21  Havoc Pennington  <hp@redhat.com>
4668
4669         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_child_anchor):
4670         unbreak this function
4671
4672         * gtk/gtkentry.c: apply patch from Lee Mallabone to add object 
4673         properties
4674
4675         * gtk/gtkcurve.c: apply patch from Lee Mallabone to add object
4676         properties
4677
4678         * gtk/gtkcombo.c: apply patch from Lee Mallabone to add object 
4679         properties
4680
4681         * gtk/gtkentry.c (gtk_entry_set_max_length): have this take -1 to
4682         mean unset the max length
4683
4684 Wed Feb 21 14:23:05 2001  Jonathan Blandford  <jrb@redhat.com>
4685
4686         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data_func):
4687         Changed name to be set_cell_data_func to make it clear what
4688         the functino does.  Close bug #51069.
4689
4690 Tue Feb 20 16:49:00 2001  Jonathan Blandford  <jrb@redhat.com>
4691
4692         * gtk/testgtk.c (main): Remove turning on of profiling malloc,
4693         have memory actually freed.  Keeps box running longer.
4694
4695 2001-02-21  Alexander Larsson  <alexl@redhat.com>
4696         
4697         * gtk/gtkseparatormenuitem.[ch]:
4698         Added new menu separator item. The drawing and size handling
4699         is still done in GtkMenuItem, but the API is a bit more sane.
4700         
4701         * gtk/Makefile.am:
4702         Add gtkseparatormenuitem.[ch].
4703
4704         * gtk/gtk.h:
4705         Add gtkseparatormenuitem.h.
4706         
4707         * gtk/gtkentry.c:
4708         * gtk/gtkmenufactory.c:
4709         * gtk/gtktextview.c:
4710         Use the new API for menu separators.
4711         
4712         * demos/gtk-demo/menus.c (create_menu):
4713         Add some GtkSeparatorMenuItem demo code.
4714
4715 2001-02-20  Havoc Pennington  <hp@redhat.com>
4716
4717         * gtk/gtkaspectframe.c: Convert to new property API, patch from 
4718         Lee Mallabone
4719
4720         * gtk/gtkarrow.c: Convert to new property API, patch from 
4721         Lee Mallabone
4722
4723 Tue Feb 20 14:26:41 2001  Jonathan Blandford  <jrb@redhat.com>
4724
4725         * tests/testtreeview.c (toggled_callback): fix to reflect change
4726         in GtkTreeModelStore.
4727
4728 Tue Feb 20 12:16:12 2001  Jonathan Blandford  <jrb@redhat.com>
4729
4730         * gtk/gtkiconfactory.c (gtk_icon_set_new_from_pixbuf): New
4731         function to create an icon set from a pixbuf.
4732
4733 2001-02-20  Alexander Larsson  <alexl@redhat.com>
4734
4735         * gtk/gtkcellrenderertext.[ch]:
4736         Add a "markup" property.
4737
4738         * gtk/treestoretest.c:
4739         Use the markup property, remove some leftover stuff from
4740         GtkTreeModelMapping.
4741
4742 2001-02-20  Alexander Larsson  <alexl@redhat.com>
4743
4744         * gtk/gtklabel.c (gtk_label_set_selectable):
4745         Queue a redraw if the selectable setting was changed.
4746
4747 2001-02-20  Alexander Larsson  <alexl@redhat.com>
4748
4749         * gdk/linux-fb/gdkgc-fb.c (gdk_gc_copy):
4750         Actually copy the whole gc, not just the public parts.
4751         
4752         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
4753         GDK_WINDOW_TEMP are not toplevel. Fixes selectable
4754         labels.
4755
4756 2001-02-19  Havoc Pennington  <hp@pobox.com>
4757
4758         * gdk/gdkwindow.c: docs
4759
4760         * gdk/gdkrgb.c: docs
4761
4762         * gdk/gdkregion-generic.c: docs
4763
4764         * gdk/gdkgc.c (gdk_gc_set_values): docs
4765
4766         * gdk/gdkdraw.c: docs
4767
4768         * gdk/gdkdrawable.h: deprecate drawable get/set data
4769
4770 Mon Feb 19 20:37:35 2001  Jonathan Blandford  <jrb@redhat.com>
4771
4772         * demos/gtk-demo/dialog.c: Add simple new demo.
4773
4774 2001-02-19  Havoc Pennington  <hp@redhat.com>
4775
4776         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): add
4777         insert_child_anchor signal, bug #50245
4778
4779         * gtk/gtktextbtree.c (_gtk_text_btree_insert_child_anchor): change
4780         from create_child_anchor, so the anchor is passed in
4781
4782         * gtk/gtktextchild.c (gtk_text_child_anchor_new): new function
4783         (_gtk_widget_segment_new): have the child anchor object passed in, 
4784         instead of creating it.
4785
4786         * gtk/gtktextbuffer.c (gtk_text_buffer_modified): rename
4787         to gtk_text_buffer_get_modified
4788
4789 2001-02-19  Havoc Pennington  <hp@redhat.com>
4790
4791         * gtk/gtktreemodel.c (gtk_tree_model_get_valist): hmm, someone
4792         changed GLib without fixing GTK
4793
4794         * gtk/gtkrange.h: Rename all the stupid implementation detail 
4795         functions to have an underscore in front. Most of them should 
4796         probably just go away, but for starters don't export them.
4797         Bug #50482
4798
4799 2001-02-19  Havoc Pennington  <hp@redhat.com>
4800
4801         * gdk/gdkcolor.h: test was backward, so deprecated functions were
4802         excluded by default
4803
4804         * gtk/gtkstyle.c (gtk_default_draw_diamond): draw etched in/out,
4805         clean up the old code a bit
4806
4807         * gtk/gtkradiobutton.c (gtk_radio_button_draw_indicator): draw
4808         inconsistent state
4809
4810         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_draw_indicator):
4811         draw inconsistent state
4812
4813         * gtk/testgtk.c (create_toggle_buttons): add test for inconsistent
4814         (create_menu): add inconsistent test
4815
4816         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_set_inconsistent):
4817         new function
4818         (gtk_check_menu_item_get_inconsistent): new function
4819         (gtk_real_check_menu_item_draw_indicator): draw the inconsistent
4820         state (using etched in for now)
4821
4822         * gtk/gtkcheckbutton.c (gtk_real_check_button_draw_indicator):
4823         draw inconsistent state
4824
4825         * gtk/gtktogglebutton.c (gtk_toggle_button_set_inconsistent): new
4826         function, used when the user has selected a range of stuff in
4827         different states
4828         (gtk_toggle_button_get_inconsistent): accessor for that
4829         (gtk_toggle_button_paint): draw inconsistent state (etched in?
4830         don't know what else to do)
4831
4832 2001-02-19  Hans Breuer <hans@breuer.org>
4833
4834         * gtk/gtk.def : updated exported symbols
4835
4836         * gtk/makefile.msc.in : updated
4837
4838         * gtk/gtkstyle.c (gtk_style_realize) : gets called without
4839         a colormap, when invoked from testgtk::entry. I'm not sure where
4840         the bug is, but g_return_if_fail (GDK_IS_COLORMAP (colormap));
4841         avoids immediate crashing ...
4842
4843         * gtk/gtkmain.c (check_setugid) : totally disabled on win32;
4844         any objections ?
4845
4846         * gtk/gtktreemodel.c : called G_VALUE_LCOPY with an extra
4847         0 parameter. At least msvc doesn't like macros with var args. 
4848         I simply removed the extra 0, was it a feature or a typo ?
4849
4850         * gtk/gtktreeviewcolumn.[hc] (gtk_tree_view_column_set_func) :
4851         removed the extra indirection from the GtkTreeViewColumnFunc parameter,
4852         because the value assignment to the internal struct wasn't working.
4853         I'm not absolutely sure. The problem could have been resolved by
4854         changing the "func" declartion in the struct, but was the pointer
4855         to the function pointer intended ?
4856
4857         * gtk+/gtk/gtktreedatalist.c : include gboxed.h
4858
4859         * gdk/gdk.def : updated exported symbols
4860
4861         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_image) :
4862         only use SetDIBitsToDevice if there is a palette at the drawable
4863         and the image is GDK_VISUAL_PSEUDO_COLOR
4864
4865         * gdk/win32/gdkkeys-win32.c : msvc still has no <unistd.h> ...
4866
4867         * gdk/win32/gdkwindow-win32.c : #include "gdk.h" /* gdk_rectangle_intersect */
4868
4869         * gdk/*/makefile.msc : updated
4870
4871 2001-02-19  Havoc Pennington  <hp@redhat.com>
4872
4873         * demos/gtk-demo/Makefile.am (INCLUDES): GDK_DISABLE_COMPAT_H,
4874         GDK_DISABLE_DEPRECATED (we need to merge those two #defines)
4875
4876         * gdk/x11/gdkmain-x11.c (gdk_key_repeat_disable): nuke
4877         (gdk_key_repeat_restore): nuke
4878
4879         * gdk/gdk.c (gdk_exit_func): #if 0 this for now, don't install it
4880         (gdk_init_check): no atexit func
4881
4882         * gdk/gdkrgb.h: mark some stuff deprecated
4883
4884         * gdk/gdkcolor.h: mark some stuff deprecated
4885         
4886         * gdk/gdk.h: deprecated gdk_exit, gdk_input_*
4887
4888         * gdk/gdkfont.h: bracket in GDK_DISABLE_DEPRECATED
4889
4890 2001-02-16  Havoc Pennington  <hp@redhat.com>
4891
4892         * gtk/gtkvscrollbar.c (gtk_vscrollbar_trough_keys): use the visual
4893         scroll steps.
4894
4895         * gtk/gtkvscale.c (gtk_vscale_trough_keys): use the visual scroll
4896         steps, and add Ctrl-arrow shortcuts for paging visually as with
4897         HScale, since Page Up and Page Down move logically.
4898
4899         * gtk/gtkenums.h (GtkScrollType): add GTK_SCROLL_STEP_UP,
4900         GTK_SCROLL_STEP_DOWN, etc. for visual scroll directions
4901         
4902         * gtk/gtkrange.c (gtk_range_key_press): handle the visual scroll
4903         steps
4904         (gtk_range_scroll): handle the visual steps
4905
4906         * gtk/gtklist.c (gtk_list_scroll_horizontal): handle the up/down
4907         scroll steps
4908
4909         * gtk/gtkhscale.c (gtk_hscale_trough_keys): use the visual scroll
4910         steps, not the logical ones.
4911
4912         * gtk/gtkclist.c (move_focus_row): handle the up/down scroll steps
4913         (scroll_vertical): handle up/down steps
4914
4915 2001-02-19 Alexander Larsson  <alexl@redhat.com>
4916
4917         * gdk/linux-fb/gdkimage-fb.c (gdk_image_new_bitmap):
4918         Copy data and free data with free().
4919
4920         * gdk-pixbuf/gdk-pixbuf.c:
4921         * gdk-pixbuf/io-jpeg.c:
4922         * gdk-pixbuf/io-png.c:
4923         Use g_try_malloc/g_free instead malloc/free.
4924         
4925         * gdk-pixbuf/test-gdk-pixbuf.c:
4926         Must... initialize... gobject...
4927         
4928         * gdk-pixbuf/pixops/timescale.c:
4929         * gtk/gtkcalendar.c:
4930         Use g_malloc instead of malloc.
4931         
4932 2001-02-19 Alexander Larsson  <alla@lysator.liu.se>
4933
4934         * gtk/testgtkrc:
4935         Comment out property assignments, these don't work yet.
4936
4937 2001-02-17  Havoc Pennington  <hp@pobox.com>
4938
4939         * gtk/gtkalignment.c (gtk_alignment_class_init): clean this up a
4940         bit.
4941
4942 2001-02-17  Havoc Pennington  <hp@pobox.com>
4943
4944         * gtk/gtklabel.c (gtk_label_ensure_layout): fix screwup with
4945         shadowed variables that had broken size request in some cases,
4946         leading to bogus tooltips (#50996)
4947
4948 2001-02-06  Jon K Hellan  <hellan@acm.org>
4949
4950         Implement fast browsing of tooltips, bug #50619
4951         
4952         * gtk/gtktooltips.h (struct _GtkTooltips): Add use_sticky_delay
4953         and last_popdown
4954         
4955         * gtk/gtktooltips.c (gtk_tooltips_init): Initialize sticky_delay,
4956         use_sticky_delay and last_popdown.
4957         (gtk_tooltips_draw_tips, gtk_tooltips_set_active_widget): Record
4958         time of popdown.
4959         (gtk_tooltips_set_active_widget): Unset sticky behaviour if widget
4960         is NULL.
4961         (gtk_tooltips_recently_shown): New static function.  Return true
4962         if < sticky_delay has elapsed since last popdown.
4963         (gtk_tooltips_event_handler): Display window after sticky_delay
4964         (presumably < normal delay) if < STICKY_REVERT_DELAY has elapsed
4965         since last popdown.
4966         
4967 2001-02-17  Havoc Pennington  <hp@pobox.com>
4968
4969         * gtk/gtktypeutils.h (GtkSignalFunc): change it to take (void)
4970         instead of (). #6394
4971
4972         * gtk/gtkprogressbar.c (gtk_progress_bar_get_text): Add
4973         G_CONST_RETURN, make it return by reference, #50473
4974         
4975 Sat Feb 17 06:47:27 2001  Tim Janik  <timj@gtk.org>
4976
4977         * gtk/gtkmenu.c (gtk_menu_motion_notify): default initialize the
4978         generated ENTER_NOTIFY event with 0, otherwise not explicitely
4979         setup fields contain garbage (e.g. subwindow, breaking
4980         gdk_drawable_ref() upon event copy).
4981         (gtk_menu_stop_navigating_submenu_cb): same here.
4982
4983         * gtk/gtklist.c (gtk_list_vertical_timeout): 
4984         * gtk/gtklist.c (gtk_list_horizontal_timeout): 
4985         * gtk/gtkclist.c (vertical_timeout): 
4986         * gtk/gtkclist.c (horizontal_timeout): change direct assignment
4987         default-zero-intialization for unions to memset(,0,), as unions are
4988         not fully default-zero-initialized by compilers (GdkEvent x = { 0, };
4989         has to become GdkEvent x; memset (&x, 0, sizeof (x)); )
4990
4991         * gtk/gtktreeview.c (gtk_tree_view_set_rows_drag_source): scratch
4992         g_closure_sink() warning.
4993
4994         * gtk/gtktreemodel.c (gtk_tree_model_get_valist): 
4995         * gtk/gtktreestore.c (gtk_tree_store_set_valist): 
4996         * gtk/gtkliststore.c (gtk_list_store_set_valist): 
4997         fix G_VALUE_COLLECT() and G_VALUE_LCOPY() calls.
4998         
4999 Fri Feb 16 17:49:59 2001  Jonathan Blandford  <jrb@redhat.com>
5000
5001         * gtk/gtktreestore.[hc], gtk/gtkliststore.[ch]: removed
5002         gtk_*_store_get, and moved to GtkTreeModel.
5003
5004         * gtk/gtktreemodel.h (gtk_tree_model_set{v,}): Added
5005
5006         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_finalize): added.
5007
5008         * gtk/Makefile.am: remove gtktreemodelmapping.[ch]
5009
5010         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_func): let you
5011         set the func.
5012
5013         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
5014         freeze/thaw notify between setting all the properties for a cell.
5015
5016         * gtk/gtk.h: remove gtktreemodelsimple.h, and gtktreemodelmapping.h
5017
5018 2001-02-15  Havoc Pennington  <hp@redhat.com>
5019
5020         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): convert
5021         the X coordinates so they're with respect to the line, rather than 
5022         with respect to the layout.
5023
5024         * gtk/gtkalignment.c: Convert to new property API, patch from Lee
5025         Mallabone
5026
5027         * gtk/testgtk.c (create_range_controls): add vscale tests, 
5028         and inverted test
5029
5030         * gtk/gtkrange.c (gtk_range_set_inverted): new function to fix 
5031         #50806
5032
5033         * gtk/gtkentry.c (gtk_entry_get_text): add G_CONST_RETURN
5034
5035         * gtk/gtktextiter.h (gtk_text_iter_is_last): rename 
5036         gtk_text_iter_is_end
5037
5038         * gtk/gtktextbuffer.h (gtk_text_buffer_get_last_iter):
5039         rename gtk_text_buffer_get_end_iter
5040
5041         * gtk/testgtk.c (create_labels): Add test for selectable
5042
5043         * gtk/gtkentry.c (gtk_entry_draw_text): Use new GDK API to draw
5044         the selection stuff. This code is kind of broken since it doesn't 
5045         use the theme engine.
5046
5047         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): 
5048         fix infinite loop and y offset problem
5049         (gdk_draw_layout_line_with_colors): fix foreground color handling
5050
5051         * gtk/gtklabel.h, gtk/gtklabel.c: Implement a "selectable" flag 
5052         that makes the label selectable.
5053         
5054         * gtk/gtklabel.c (gtk_label_style_set): recreate the label's
5055         layout when the style is set, since fonts etc. could have changed.      
5056
5057 Fri Feb 16 14:22:05 2001  Jonathan Blandford  <jrb@redhat.com>
5058
5059         * gtk/Makefile.am: Removed gtktreemodelsimple.[ch]
5060
5061         * gtk/gtktreemodelsimple.[ch]: removed.
5062
5063 2001-02-16  Alexander Larsson  <alexl@redhat.com>
5064
5065         * gtk/gtktreemodelmapping.[ch]:
5066         New files. Implement GtkTreeModelMapping.
5067         
5068         * gtk/Makefile.am:
5069         Add gtktreemodelmapping.[ch].
5070         
5071         * gtk/gtk.h:
5072         Add gtktreemodelmapping.h
5073
5074         * gtk/treestoretest.c:
5075         Test the GtkTreeModelMapping
5076
5077 Tue Feb 13 13:16:09 2001  Jonathan Blandford  <jrb@redhat.com>
5078
5079         * demos/gtk-demo/panes.c (create_pane_options): If we're going to
5080         have a demo, we might as well pass in real values.  Thanks to
5081         clahey for pointing this out.
5082
5083 2001-02-14  Havoc Pennington  <hp@pobox.com>
5084
5085         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_remove): add
5086         "static" to a private function
5087         (gtk_image_menu_item_class_init): remove destroy handler,
5088         add "image" object property
5089
5090 2001-02-13  Alexander Larsson  <alla@lysator.liu.se>
5091
5092         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_clip_region):
5093         Add a shortcut if the window and the current clip_region doesn't
5094         overlap. This is needed when there are a lot of windows in a
5095         window. The layout test in testgtk is a good test.
5096
5097         * gdk/linux-fb/gdkwindow-fb.c:
5098         Whitespace fix.
5099
5100 2001-02-13  Sven Neumann  <sven@convergence.de>
5101
5102         * demos/testanimation.c: replaced deprecated gtk_drawing_area_size
5103
5104 2001-02-13  Alexander Larsson  <alexl@redhat.com>
5105
5106         * gdk/linux-fb/gdkcursor-fb.c (gdk_fb_cursor_unhide):
5107         Don't reference last_cursor if it is null. Fixes crash when rotating
5108         the screen before having moved the mouse.
5109
5110         * gdk/linux-fb/gdkcc-fb.c: Zapp!
5111
5112         * gdk/linux-fb/Makefile.am: Don't compile gdkcc-fb.c
5113
5114         * gdk/linux-fb/gdkwindow-fb.c: Fix typo. width->height. Fixes redraw 
5115         when using 90 or 270 degrees rotation.
5116
5117 2001-02-12  Havoc Pennington  <hp@pobox.com>
5118
5119         * gdk/gdkpango.c (gdk_pango_get_gc): fix bug where 
5120         it always set the foreground, even if we were only using
5121         a stipple.
5122         (gdk_draw_layout_line_with_colors): new function, allow
5123         override colors
5124         (gdk_draw_layout_with_colors): new function, allow override
5125         colors
5126         (gdk_pango_layout_line_get_clip_region): function to get the clip
5127         region for a logical text range
5128         (gdk_pango_layout_get_clip_region): get the clip region for a
5129         logical text range
5130
5131         * gdk/x11/gdkcolor-x11.c: forward declare gdk_colormap_sync(),
5132         (gdk_colormap_new): fix call to gdk_colormap_sync() so it has 
5133         the right number of arguments.
5134
5135         * gtk/gtktextbtree.c (gtk_text_btree_node_check_consistency):
5136         enhance the function to check that node data corresponds to a 
5137         view still belonging to the tree.
5138
5139         * gtk/gtktreeview.c (gtk_tree_view_changed): we were leaking the 
5140         GtkTreePath
5141         (gtk_tree_view_inserted): ditto
5142         (gtk_tree_view_child_toggled): ditto
5143
5144         * gtk/gtktreemodel.c (gtk_tree_path_append_index): use realloc to
5145         simplify this code.
5146
5147         * gtk/gtkcellrenderertext.c (get_layout): fix leak of 
5148         a PangoAttrList
5149
5150         * demos/gtk-demo/main.c (load_file): Fix leak of a GString
5151
5152         * gtk/gtkentry.c (gtk_entry_realize): Fix leak of a GdkCursor
5153
5154         * gtk/gtkmenubar.c (gtk_menu_bar_size_request): consider toggle
5155         size in the size request 
5156         (gtk_menu_bar_size_allocate): consider toggle size here
5157
5158         * gtk/gtkimagemenuitem.h, gtkimagemenuitem.c: Menu item
5159         that displays a widget in the toggle slot
5160
5161         * gtk/testgtk.c: test GtkImageMenuItem
5162
5163         * gtk/Makefile.am, gtk/gtk.h: Add GtkImageMenuItem
5164         
5165         * gtk/gtkmenuitem.h: Use "gint" not "guint16" for toggle size
5166         request and allocation
5167
5168         * gtk/gtkmenu.c (gtk_menu_size_request): use gint not guint16
5169
5170         * gtk/gtkcheckmenuitem.c
5171         (gtk_check_menu_item_toggle_size_request): ditto
5172         
5173 Mon Feb 12 23:43:30 2001  Owen Taylor  <otaylor@redhat.com>
5174
5175         * gtk/Makefile.am (gdk_headers): Remove gdkcc.h 
5176         reference.
5177
5178         * configure.in gtk/gtkmain.c: Add checks for setuid/setgid,
5179         and refuse to initialize GTK+ if they fail.
5180
5181 Mon Feb 12 15:02:07 2001  Owen Taylor  <otaylor@redhat.com>
5182
5183         * configure.in: Add check for gtk-doc version.
5184
5185 Thu Feb  8 17:18:26 2001  Owen Taylor  <otaylor@redhat.com>
5186
5187         * gtk/gtklabel.c (gtk_label_size_request): Fix bug
5188         where the xpad/ypad was only being used on one side!
5189
5190 2001-02-11  Tor Lillqvist  <tml@iki.fi>
5191
5192         * gdk/win32/gdkcolor-win32.c (gdk_colormap_query_color): New
5193         function, copied from X11 version.
5194
5195         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Eliminate
5196         DestroyCursor failures. The reason for the problem (despite the
5197         inconsistent messages from GetLastError()) was that
5198         DestroyCursor() cannot be called while a cursor is set in a
5199         window. Set the new cursor first and then destroy the old one.
5200         Thanks to jpe@archaeopteryx.com.
5201
5202         * gdk/win32/gdkcc-win32.c: Remove.
5203
5204         * gdk/win32/Makefile.am: Remove from here, too.
5205         
5206         * gdk/gdk.def
5207         * gdk/makefile.mingw.in: Update. Godbye GdkColorContext.
5208
5209         * gtk/gtk.def
5210         * gtk/makefile.mingw.in: Updates.
5211
5212 2001-02-08  Havoc Pennington  <hp@redhat.com>
5213
5214         * gtk/gtkbin.c (gtk_bin_add): better error message if you try to
5215         add a widget to a bin that already has a child.
5216
5217         * gdk/gdkcc.h, gdk/gdkcc-x11.c: Remove GdkColorContext, #50512
5218
5219         * docs/Changes-2.0.txt: note that GdkColorContext is gone.
5220         
5221         * gdk/x11/Makefile.am (libgdk_x11_la_SOURCES): remove gdkcc-x11.c
5222
5223         * gdk/gdk.h: remove gdkcc.h
5224
5225         * gdk/Makefile.am (gdk_public_h_sources): remove gdkcc.h
5226
5227         * gtk/gtkpixmap.c (build_insensitive_pixmap): rewrite using
5228         GdkPixbuf, since the previous implementation was GdkColorContext
5229         dependent.
5230
5231         * gtk/testgtk.c (create_pixmap): add test for insensitive GtkPixmap
5232         
5233 Thu Feb  8 19:00:00 2001  Jonathan Blandford  <jrb@redhat.com>
5234
5235         * gtk/gtktreeview.c (TREE_VIEW_VERTICAL_SEPARATOR): moved back to
5236         a sane value!
5237
5238 2001-02-08  Havoc Pennington  <hp@redhat.com>
5239
5240         * gtk/gtkstyle.c (get_darkened_gc): let's darken colors, not
5241         lighten them.
5242
5243 2001-02-08  Havoc Pennington  <hp@redhat.com>
5244
5245         * gtk/gtktextview.c (gtk_text_view_destroy_layout): remove
5246         validation idle
5247
5248         * demos/gtk-demo/main.c (create_tree): adjust to changes in text
5249         cell renderer
5250
5251         * demos/pixbuf-demo.c (timeout): remove deprecated
5252         gtk_widget_draw
5253
5254         * demos/testpixbuf-save.c (main): remove deprecated
5255         gtk_drawing_area_size
5256
5257         * gtk/gtktreeview.c (gtk_tree_view_size_allocate): allocate
5258         buttons even if the model isn't setup. gtk_tree_view_check_dirty()
5259         at the start of the allocation.
5260         (gtk_tree_view_check_dirty): handle column->button == NULL, handle
5261         unsetup or NULL model.
5262
5263         * gtk/gtkstyle.c (gtk_default_draw_flat_box): drawing for the 
5264         even/odd/sorted cells in the tree view.
5265
5266         * gtk/gtktreeselection.c (gtk_tree_selection_real_unselect_all):
5267         bugfixes
5268
5269         * gtk/gtktreeview.c: assorted bugfixy stuff. Draw the row
5270         backgrounds with draw_flat_box using different detail for even/odd
5271         rows.
5272
5273         * gtk/gtkrbtree.c, gtkrbtree.h: Keep track of the parity of each
5274         row, so we can draw the alternating colors thing
5275
5276         * gtk/gtktexttag.c (gtk_text_tag_set_property): if we change a
5277         property from a synonym property, notify for the synonym.
5278         Also, nuke the background_gdk_set and foreground_gdk_set synonyms
5279         (gtk_text_tag_get_property): Always return the font, even if
5280         all its fields aren't set
5281
5282         * gtk/gtkcellrenderertext.h (struct _GtkCellRendererText): don't
5283         store the attr list; it leaves us with no way to change attributes
5284         in _render according to the render flags, and no way to implement
5285         get_property. Instead store all the specific text attributes. 
5286         Separate whether an attribute is enabled from its value. Sync all
5287         properties with GtkTextTag, make them all consistent, etc.
5288
5289         * gtk/gtkcellrenderer.h: Add a flag GTK_CELL_RENDERER_SORTED so
5290         renderers can highlight the sort row/column     
5291
5292         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_get_property): use
5293         accessor functions to get values; this has the side effect of
5294         showing up which accessor functions were missing. Added those.
5295
5296         * gtk/gtktreeviewcolumn.h: Replace set_justification with
5297         set_alignment, to be consistent with GtkLabel, GtkMisc
5298
5299         * gtk/gtktreeviewcolumn.c: Added code to display sort indicator
5300         arrow.
5301
5302         * gtk/Makefile.am (gtk_public_h_sources): add gtktreesortable.h
5303
5304         * gtk/gtktreesortable.h: updates in here
5305
5306 2001-02-07  Sven Neumann  <sven@convergence.de>
5307
5308         * gtk/gtkentry.c (gtk_entry_draw_text): convert area_height to 
5309         pango dimensions after painting the background. We used to draw
5310         gigantic flat boxes here.
5311
5312 Mon Feb  5 22:05:57 2001  Owen Taylor  <otaylor@redhat.com>
5313
5314         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Fix syntax
5315         error introduced with earlier commit) (pointed out by
5316         Ollie Lho)
5317
5318 Mon Feb  5 12:25:06 2001  Owen Taylor  <otaylor@redhat.com>
5319
5320         * gtk/gtkbutton.c: Remove calls to gtk_grab_add/gtk_grab_remove,
5321         which are no longer necessary.
5322
5323 Mon Feb  5 13:22:54 GMT 2001  Tony Gale <gale@gtk.org>
5324
5325         * docs/faq/gtk-faq.sgml: s/MISK/MISC/
5326
5327 2001-02-04  Tor Lillqvist  <tml@iki.fi>
5328
5329         * gdk/gdk.def
5330         * gdk/win32/gdkim-win32.c (gdk_ic_attr_new, gdk_ic_attr_destroy):
5331         Provide dummy implementations.
5332
5333 Sun Feb  4 07:55:17 2001  Tim Janik  <timj@gtk.org>
5334
5335         * gtk/gtksignal.h: removed gtk_signal_init() compat define.
5336
5337         * gtk/gtktypeutils.[hc]: gtk_tpye_init() take an additional argument
5338         GTypeDebugFlags debug_flags and pass it on to g_type_init ();
5339         deprecated this function.
5340
5341         * gdk/gdk.c (gdk_init_check): call g_type_init () with 0 as
5342         argument.
5343
5344 Sun Feb  4 07:45:45 2001  Tim Janik  <timj@gtk.org>
5345
5346         * gtk/gtkdebug.h: nuke GTK_DEBUG_OBJECTS and GTK_DEBUG_SIGNALS.
5347
5348 2001-02-03  Havoc Pennington  <hp@pobox.com>
5349
5350         * gtk/gtktextbtree.c (_gtk_text_btree_tag): Fix bug reported by
5351         Mikael Hermansson with patch from Mikael (if there was a toggle
5352         start one after the first character in the range, this function
5353         was broken). Bug #50380
5354
5355 Sat Feb  3 11:28:03 2001  Owen Taylor  <otaylor@redhat.com>
5356
5357         * configure.in: Remove confusing comment about X11.
5358
5359 Fri Feb  2 19:21:23 2001  Owen Taylor  <otaylor@redhat.com>
5360
5361         * gdk/gdkwindow.c (gdk_propagate_shapes): Surround additional
5362         regions with HAVE_SHAPE_EXT. (#50511, Eric Ding)
5363         
5364 Fri Feb  2 18:31:54 2001  Owen Taylor  <otaylor@redhat.com>
5365
5366         * gdk/x11/gdkimage-x11.c: Remove definition of _XOPEN_SOURCE, since
5367         it breaks things on BSD. If you want to compile GTK+ with
5368         -ansi -pedantic, you should supply CPP_FLAGS=_XOPEN_SOURCE 
5369         when configuring, since GTK+ simply can't be "pure ANSI" 
5370         in the header files it uses. (#8170, Greg Hudson)
5371
5372 2001-02-02  Havoc Pennington  <hp@redhat.com>
5373
5374         * gtk/gtkwindow.c: docs
5375
5376         * gtk/gtkwidget.c: docs
5377         (gtk_widget_set_colormap): add a reference to the colormap
5378         (gtk_widget_get_default_colormap): add a reference to the colormap
5379
5380         * gtk/gtktextbtree.c (gtk_text_mark_set_visible): docs
5381
5382         * gtk/gtktextiter.c: docs
5383
5384         * gtk/gtkmain.c (gtk_propagate_event): docs
5385
5386         * gtk/gtkpaned.c (gtk_paned_get_position): docs
5387         (gtk_paned_set_position): docs
5388
5389         * gtk/gtktreesortable.h (struct _GtkTreeSortableIface): Initial
5390         sort interface, no implementation yet.
5391
5392         * demos/testpixbuf.c (new_testrgb_window): replace
5393         gtk_drawing_area_size() with gtk_widget_set_usize()
5394
5395         * demos/testpixbuf-drawable.c (main): ditto
5396         
5397         * gtk/testgtk.c: remove use of GtkStatusbarMsg
5398
5399         * gtk/gtktextbuffer.c: docs
5400
5401         * gtk/gtkstock.c: docs
5402
5403         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_set_shadow_type): docs
5404
5405         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): docs
5406
5407         * gtk/gtklabel.c (gtk_label_set_markup_with_accel): fix docs
5408         
5409         * gtk/gtkimage.c: add some docs in here
5410         (gtk_image_size_request): change name of
5411         gtk_widget_render_stock_icon
5412         (gtk_image_get_icon_set): don't dup returned string
5413         (gtk_image_get_icon_set): don't dup returned string
5414
5415         * gtk/gtkwidget.c (gtk_widget_render_icon): rename from 
5416         gtk_widget_render_stock_icon(), more consistent with gtkstyle.h
5417         and gtkiconfactory.h functions
5418
5419         * gtk/gtkiconfactory.c: add some docs in here
5420
5421         * gtk/gtkmain.c (gtk_get_default_language): document
5422         (gtk_get_current_event): document
5423         (gtk_get_current_event_state): document
5424         (gtk_get_event_widget): document
5425
5426         * gtk/gtkentry.c (gtk_entry_set_invisible_char): document
5427
5428         * gtk/gtkcontainer.c: Add some documentation
5429         (gtk_container_add): give a more explanatory warning on adding an
5430         already-parented widget, this is kind of a FAQ and also a common
5431         typo that's easier to debug with a nice warning 
5432
5433         * gtk/gtkcellrenderertoggle.c
5434         (gtk_cell_renderer_toggle_get_active): remove, I was on crack
5435         adding this, it's useless
5436         (gtk_cell_renderer_toggle_set_active): remove
5437         (gtk_cell_renderer_toggle_get_radio): add
5438
5439         * gtk/gtkcellrenderer.c (gtk_cell_renderer_get_size): don't allow
5440         the NULL cell renderer, that doesn't make any sense to me. 
5441
5442         * demos/gtk-demo/Makefile.am (INCLUDES): -DGTK_DISABLE_DEPRECATED,
5443         demo code should never use deprecated features.
5444
5445         * demos/Makefile.am (INCLUDES): -DGTK_DISABLE_DEPRECATED, demo
5446         code should never use deprecated features.
5447
5448         * gtk/gtkwidget.h: Mark gtk_widget_draw, gtk_widget_queue_clear,
5449         gtk_widget_queue_clear_area deprecated
5450
5451         * gtk/gtklayout.h: mark gtk_layout_freeze/gtk_layout_thaw
5452         deprecated
5453
5454         * gtk/gtklabel.h: mark gtk_label_get() deprecated
5455
5456         * gtk/gtkimage.h: mark the legacy GtkImage functions that took 
5457         a GdkImage deprecated, replaced by new consistently-named
5458         functions       
5459
5460         * gtk/gtkmain.h: Mark gtk_exit() deprecated
5461
5462         * gtk/gtkdrawingarea.h: mark gtk_drawing_area_size deprecated
5463
5464         * gtk/gtkstyle.h: mark gtk_draw_string, gtk_paint_string 
5465         deprecated
5466
5467         * gtk/gtkstatusbar.h: Move GtkStatusbarMsg to the .c file, 
5468         so it won't appear in docs and confuse people.
5469
5470         * gtk/gtkprogressbar.h: Mark all the old methods deprecated
5471
5472         * gtk/gtkprogress.h: Mark all methods deprecated, mark the cast
5473         macros deprecated. (can't mark the type itself deprecated, since
5474         GtkProgressBar is not deprecated and we need the type decl to use
5475         GtkProgressBar)
5476
5477         * gtk/gtkpixmap.h: Mark deprecated
5478
5479         * gtk/gtkoldeditable.h: Mark deprecated
5480
5481         * gtk/gtklist.h: Mark deprecated
5482
5483         * gtk/gtklabel.h: delete "GtkLabelWord" typedef, not used 
5484         for anything anymore.
5485
5486         * gtk/gtkctree.h: Mark deprecated
5487
5488         * gtk/gtkclist.h: Mark deprecated
5489
5490         * gtk/gtkpreview.h: Mark deprecated
5491
5492         * gtk/gtkpacker.h: Mark deprecated
5493
5494         * gtk/gtktipsquery.h: Mark deprecated
5495
5496         * gtk/gtkinputdialog.h: Add comment that it will move out of GTK
5497
5498         * gtk/gtkvruler.h: Add comment that it will move out of GTK
5499
5500         * gtk/gtkhruler.h: Add comment that it will move out of GTK
5501
5502         * gtk/gtkruler.h: Add comment that it will move out of GTK
5503
5504         * gtk/gtkgamma.h: Add comment that it will move out of GTK
5505
5506         * gtk/gtkcurve.h: Add comment that it will move out of GTK
5507
5508 Fri Feb  2 17:16:09 2001  Owen Taylor  <otaylor@redhat.com>
5509
5510         * gdk/x11/gdkcolor-x11.c (gdk_colormap_sync): Make
5511         gdk_colormap_sync private since it was never exported
5512         in a header file.
5513
5514         * gdk/x11/gdkcolor-x11.c (gdk_colormap_new): Fill in
5515         colormap->colors[] for StaticGray, StaticColor colormaps.
5516
5517         * gdk/gdkpixbuf-drawable.c: Fix problems where image->bpp
5518         was being used as if it was image->bits_per_pixel.
5519
5520         * gdk/gdkimage.h, gdk/x11/gdkimage-x11.c: Save the bits-per-pixel
5521         for the image in the GdkImage structure since it isn't
5522         reconstructable, and we need it to handle packed types
5523
5524         * gdk/win32/gdkimage-win32.c: Set image->bits_per_pixel. (I'm making
5525         the assumption that on Win32 image->bits_per_pixel == image->depth,
5526         always.
5527
5528         * gdk/linux-fb/gdkimage-fb.c: Set image->bits_per_pixel.
5529
5530         * gdk/gdkrgb.c (gdk_rgb_select_conv): Exit with an informative
5531         warning message if no converter can be found. 
5532
5533 Fri Feb  2 15:09:51 2001  Owen Taylor  <otaylor@redhat.com>
5534
5535         * gtk/fnmatch.c (FOLD): Fix problem with passing signed
5536         chars to isupper() / tolower(). (#567)
5537
5538         * examples/packer/pack.c: Add GINT_TO_POINTER, GPOINTER_TO_INT
5539         to clear up 64-bit warnings. (#567)
5540
5541 Fri Feb  2 12:26:50 2001  Owen Taylor  <otaylor@redhat.com>
5542
5543         * gtk/gtkrc.c (gtk_rc_add_initial_default_files): Get rid of
5544         a bunch of g_strdup_printf("%s%s") in favor of g_strconcat().
5545
5546         * gtk/gtkrc.c Makefile.am: Use $(libdir), not $(exe_prefix),
5547         since some people set $(libdir) separately. (#1290, David Kaelbling)
5548
5549 Thu Feb  1 18:25:46 2001  Owen Taylor  <otaylor@redhat.com>
5550
5551         * gtk/gtkfilesel.c: If PATH_MAX and MAXPATHLEN are not
5552         defined, define MAXPATHLEN to 2048. (The Hurd doesn't have
5553         MAXPATHLEN, but the code here depends on a fixed value.)
5554         (#4524)
5555
5556 Wed Jan 31 22:01:04 2001  Owen Taylor  <otaylor@redhat.com>
5557
5558         * gtk/gtkhandlebox.c (gtk_handle_box_button_changed): Handle the case
5559         where child == NULL and handle_position == RIGHT or BOTTOM. (#8041g)
5560
5561 Wed Jan 31 21:20:39 2001  Owen Taylor  <otaylor@redhat.com>
5562
5563         * gtk/gtkctree.c (real_tree_move): If the node being moved isn't
5564         viewable there is no way that moving the node will cause the 
5565         focus row to become not viewable, so omit check on the visibility
5566         of new_sibling, which is irrelevant. (Fixes #8002, David Helder)
5567
5568 Wed Jan 31 20:38:17 2001  Owen Taylor  <otaylor@redhat.com>
5569
5570         * gtk/gtkentry.c (gtk_entry_commit_cb): Delete the current
5571         selection before inserting new text.
5572
5573 Wed Jan 31 18:49:33 2001  Owen Taylor  <otaylor@redhat.com>
5574
5575         * gtk/gtkoptionmenu.c (gtk_option_menu_item_state_changed_cb):
5576         Make the sensitivity of the reparented child track that of
5577         the original parent menu item. (#34218, David Hodson)
5578
5579         * gtk/gtkoptionmenu.c (gtk_option_menu_item_destroy_cb): Handle
5580         the case where the current item is destroyed properly.
5581
5582         * gtk/gtkoptionmenu.c: Some additional code cleanups and fix
5583         some edge cases with child-less menuitems.
5584         
5585 Wed Jan 31 17:16:13 2001  Owen Taylor  <otaylor@redhat.com>
5586
5587         * gtk/gtkcombo.c (gtk_combo_window_key_press): Make Return
5588         key pop down window. (#12074, Jon K Hellan)
5589
5590 Wed Jan 31 16:21:42 2001  Owen Taylor  <otaylor@redhat.com>
5591
5592         * gtk/gtklist.c (gtk_list_signal_item_toggle): Don't allow
5593         toggling of rows off in BROWSE or EXTENDED mode. (#12072, Jon K Hellan) 
5594         The solution here isn't perfect - you get an extraneous
5595         emission of "toggle", which could conceivably confuse an app,
5596         but better than the current situation. LXR search seems to
5597         indicate that no apps in GNOME CVS connect to "toggle".
5598
5599 Wed Jan 31 15:46:13 2001  Owen Taylor  <otaylor@redhat.com>
5600
5601         * gtk/Makefile.am (libgtkinclude_HEADERS): Move gtkcompat.h from
5602         gtk_public_h_sources to directly here to avoid warning when
5603         building srcdir != builddir. (#9656)
5604
5605 Tue Jan 30 19:49:02 2001  Owen Taylor  <otaylor@redhat.com>
5606
5607         * gtk/gtkrange.c: Patch from Kipp Hickman to make the event
5608         handlers in gtkrange.c return the proper values (TRUE == handled)
5609         (#10316).
5610
5611         This is just the tip of the iceberg, but gtkrange.c is the
5612         most common place where the propagation is problematical,
5613         and also a place where it is almost certainly safe to change
5614         this in the stable branch.
5615
5616         (You don't want right click popups on a range control or anything...)
5617
5618 Tue Jan 30 18:57:59 2001  Owen Taylor  <otaylor@redhat.com>
5619
5620         * gtk/gtktext.c (clear_focus_area): We need to clear the focus
5621         area on focus out, even if a background pixmap isn't set.
5622         (#13941)
5623         
5624 Tue Jan 30 18:24:10 2001  Owen Taylor  <otaylor@redhat.com>
5625
5626         * gtk/gtknotebook.c (gtk_notebook_set_shape): Fix from Sean Cunningham
5627         to deal with setting the shape properly when scrolling arrows are
5628         turned on, but not visible because there is sufficient space.
5629         (#13432)
5630
5631 Tue Jan 30 16:39:25 2001  Owen Taylor  <otaylor@redhat.com>
5632
5633         * gtk/gtkitemfactory.c (gtk_item_factory_delete_item): For menu
5634         items with submenus, destroy the item along with the submenu.
5635         (#7841, Brian Masney(?)) Also, handle paths of the form '<foo>/abcd...' 
5636         properly.
5637
5638         * gtk/testgtk.c (menu_items): Add a dummy branch that we delete
5639         later.
5640
5641 Tue Jan 30 15:51:25 2001  Owen Taylor  <otaylor@redhat.com>
5642
5643         * gtk/gtkwindow.c (gtk_window_real_set_focus): Fix a problem where
5644         the focus widget sometimes wasn't drawn with the default if there
5645         was no default widget.
5646
5647         * gtk/gtkstyle.c (gtk_style_real_unrealize): free colors,
5648         unreference pixmaps. 
5649
5650         * gtk/gtkstyle.c (gtk_style_realize): Reference colormap
5651         for some extra safety.
5652
5653 Mon Jan 29 19:00:01 2001  Owen Taylor  <otaylor@redhat.com>
5654
5655         * gtk/gtk{ctree.c,clist.c} (set_cell_contents): Handle setting
5656         the text of a cell to the old pointer value better, by
5657         copying the new text before freeing the old text. Some code
5658         cleanup. (#8079, Karl Nelson)
5659
5660 Mon Jan 29 16:50:19 2001  Owen Taylor  <otaylor@redhat.com>
5661
5662         * gtk/gtklabel.[ch] gtk/gtkframe.[ch]: Make gtk_label_get_text()
5663         gtk_frame_get_label() non strdup'ing, and G_CONST_RETURN.
5664
5665 Mon Jan 29 15:22:51 2001  Owen Taylor  <otaylor@redhat.com>
5666
5667         * gtk/gtkmenu.c (gtk_menu_remove): When removing an
5668         item from a menu, check to see if it matches 
5669         menu->old_active_menu_item, and if so, unref and clear
5670         old_active_menu_item (Patch from Pavel Cisler)
5671
5672         * gtk/gtkmenushell.c (gtk_menu_shell_remove): Unset 
5673         menu_shell->active_menu_item, if it is the child being
5674         removed. (Patch based on that of Gene Ragan, #50337)
5675
5676 2001-01-31  Alexander Larsson  <alla@lysator.liu.se>
5677
5678         * gdk/linux-fb/gdkselection-fb.c: 
5679         * gdk/linux-fb/gdkcolor-fb.c: 
5680         * gdk/linux-fb/gdkdrawable-fb2.c: 
5681         * gdk/linux-fb/gdkfont-fb.c: 
5682         * gdk/linux-fb/gdkim-fb.c: 
5683         * gdk/linux-fb/gdkinput.c: 
5684         * gdk/linux-fb/gdkkeyboard-fb.c: 
5685         * gdk/linux-fb/gdkmain-fb.c: 
5686         * gdk/linux-fb/gdkrender-fb.c: 
5687         A bunch of whitespace cleanup.
5688         
5689 2001-01-30  Havoc Pennington  <hp@pobox.com>
5690
5691         * gtk/gtktreeitem.h, gtk/gtktree.h, gtk/gtktext.h: bracket in 
5692         #ifdef GTK_ENABLE_BROKEN.
5693
5694         * gtk/gtktreeitem.c, gtk/gtktree.c, gtk/gtktext.c: #define
5695         GTK_ENABLE_BROKEN just before including the broken headers.
5696         
5697         * gtk/gtktypeutils.c: #define GTK_ENABLE_BROKEN, so we can get the
5698         deprecated types registered.
5699
5700         * gtk/testgtk.c, gtk/testselection.c: #define GTK_ENABLE_BROKEN,
5701         we have to test the broken stuff.
5702
5703         * docs/Changes-2.0.txt: explain GTK_ENABLE_BROKEN
5704         
5705 2001-01-30  Havoc Pennington  <hp@redhat.com>
5706
5707         * gtk/gtkliststore.c (gtk_list_store_insert_before): fix bug in
5708         here where prev pointer was set to the wrong thing
5709
5710         * gtk/gtktreemodel.c (gtk_tree_path_is_ancestor): new function
5711         (gtk_tree_path_is_descendant): new function
5712
5713         * gtk/gtkliststore.c (gtk_list_store_iter_n_children): return
5714         cached length
5715         (gtk_list_store_get_iter): don't modify iter if we can't get the
5716         path.
5717
5718         * gtk/gtkliststore.h (struct _GtkListStore): cache the length
5719         
5720         * gtk/gtktreednd.h: add virtual function row_drop_possible() to
5721         GtkTreeDragDest
5722
5723         * gtk/gtktreestore.c (copy_node_data): fix varargs type error that
5724         was causing segfault
5725
5726         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_copy): set next
5727         pointer to NULL
5728
5729         * gtk/gtktreestore.c (gtk_tree_store_append): fix memleak
5730
5731         * gtk/gtkliststore.c (gtk_list_store_iter_next): don't modify iter
5732         on returning FALSE
5733         (gtk_list_store_iter_children): ditto
5734         (gtk_list_store_iter_nth_child): ditto
5735         (gtk_list_store_iter_nth_child): ditto
5736         (gtk_list_store_iter_parent): ditto
5737
5738         * gtk/gtktreestore.c (gtk_tree_store_get_path): g_return_if_fail
5739         on iter->user_data != NULL instead of silently accepting it.
5740         (gtk_tree_store_iter_next): ditto. Also, don't modify iter unless
5741         we are returning TRUE.
5742         (gtk_tree_store_iter_children): ditto
5743         (gtk_tree_store_iter_nth_child): ditto
5744         (gtk_tree_store_iter_parent): ditto
5745         (gtk_tree_store_insert): remove handling of parent->user_data ==
5746         NULL, replace with parent == NULL       
5747
5748         * gtk/gtktreemodel.c (inserted_callback): put some fixes in here,
5749         and a comment explaining things
5750
5751         * gtk/gtktreestore.c: add GtkTreeDragSource/GtkTreeDragDest
5752         interface support to GtkTreeStore.
5753
5754         * gtk/gtktreemodel.c (gtk_tree_path_prev): didn't properly return
5755         FALSE if no prev, fix
5756
5757         * gtk/gtktreeview.c (set_source_row): use a row reference
5758         (set_dest_row): use a row reference
5759
5760 Sat Jan 27 15:52:02 2001  Jonathan Blandford  <jrb@redhat.com>
5761
5762         * gtk/gtktreeselection.c (gtk_tree_selection_unselect_iter): Fix
5763         stupid typo pointed out by Kristian Rietveld <kristian@planet.nl>.
5764         (gtk_tree_selection_select_iter): The same as above.
5765
5766 2001-01-26  Havoc Pennington  <hp@redhat.com>
5767
5768         * gtk/gtktreemodel.c, gtk/gtktreemodel.h: add GtkTreeRowReference
5769         which holds a handle to a specific row (particular set of values
5770         in the model, i.e. pointer-identity row).
5771
5772         * gtk/gtktreeview.c, gtk/gtktreeprivate.h, gtk/gtktreeselection.c:
5773         use GtkTreeRowReference for anchor, cursor, and drag_dest_row.
5774         Still need to use it for the src/dest row saved on the drag context.
5775
5776 2001-01-26  Havoc Pennington  <hp@redhat.com>
5777
5778         * gtk/gtktextlayout.c (convert_color): adapt to handle PangoColor
5779
5780         * gtk/gtktreeview.c (gtk_tree_view_widget_to_tree_coords): fix to
5781         not offset by TREE_VIEW_HEADER_HEIGHT
5782         (gtk_tree_view_tree_to_widget_coords): fix to not offset by
5783         TREE_VIEW_HEADER_HEIGHT
5784
5785         * configure.in (included_loaders): for me, --with-included-loaders
5786         generates the error "the specified loader yes does not exist",
5787         i.e. the arg defaults to "yes", so change test for value ""
5788         to test for value "yes", and include all loaders in that case.
5789
5790         * gtk/gtkrbtree.c (_gtk_rbtree_get_depth): new function
5791
5792         * gtk/gtktreeview.c (gtk_tree_view_get_cell_rect): fix to properly
5793         handle TREE_VIEW_VERTICAL_SEPARATOR
5794         (gtk_tree_view_bin_expose): fix to consider the row offset as
5795         pointing halfway into vertical separator.       
5796         (gtk_tree_view_draw_node_focus_rect): ditto
5797
5798         * gtk/gtkdebug.h, gtk/gtkmain.c (gtk_init_check): Add
5799         --gtk-debug=updates, which causes gdk_window_set_debug_updates
5800         (TRUE) to be called.
5801
5802         * gdk/gdkwindow.c (gdk_window_set_debug_updates): Allow enabling a
5803         debug mode where the invalid region is colored in on invalidate,
5804         so you can see the flicker and know whether your redraw code is 
5805         doing a good job.
5806
5807         * gtk/gtktreeview.c (gtk_tree_view_queue_draw_node): Work in 
5808         tree window coordinates (clip rect is in tree window coords)
5809
5810         * gtk/Makefile.am: add gtktreednd.[hc]
5811
5812         * gtk/gtkliststore.c: implement gtktreednd interfaces.
5813
5814         * gtk/gtktreednd.c, gtk/gtktreednd.h: New interface to support
5815         drag-and-drop data operations on a model (so we can set up tree
5816         drag-and-drop automatically)
5817
5818         * gtk/testgtk.c: Add a window to change sensitivity in the
5819         GtkLabel test; add a way to change the entry frame in GtkEntry
5820         test
5821
5822         * gtk/gtkentry.c (gtk_entry_set_has_frame): 
5823         (gtk_entry_get_has_frame): new functions to remove the frame
5824         around an entry
5825         (gtk_entry_size_request): shrink requisition if no frame
5826         (gtk_entry_draw_focus): don't draw frame if no frame
5827
5828         * gtk/gtkstyle.c (gtk_default_draw_check): draw custom look for
5829         checks inside a cell renderer
5830         (gtk_default_draw_option): ditto for options
5831
5832         * gtk/gtktreeviewcolumn.c (update_button_contents): add/remove
5833         children from the alignment, not the button
5834         (gtk_tree_view_column_init): ref/sink the column, to emulate
5835         GObject refcounting.
5836
5837         * gtk/gtkcellrenderer.c (gtk_cell_renderer_init): ref/sink
5838         
5839         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
5840         Use theme functions to draw the toggles 
5841
5842         * gdk/gdkpango.c (gdk_pango_get_gc): use GdkRGB to alloc colors
5843
5844         * gdk/gdkpango.h, gdk/gdkpango.c: Add GdkPangoAttrStipple and
5845         GdkPangoAttrEmbossed to use in rendering insensitive text
5846
5847         * gdk/gdkpango.c (gdk_draw_layout_line): render new properties
5848
5849         * gtk/gtkstyle.c (gtk_default_draw_layout): handle sensitivity
5850         using new GDK features
5851         
5852 2001-01-24  Alexander Larsson  <alexl@redhat.com>
5853
5854         * gtk/gtkimage.c:
5855         Splitted gtk_image_clear into gtk_image_clear() and
5856         gtk_image_reset(). Call gtk_image_clear() in ::destroy
5857         to avoid leaks.
5858
5859         * gtk/gtklabel.c (set_markup):
5860         Don't leak text.
5861
5862         * gtk/gtktextlayout.c:
5863         Always free display->shaped_objects.
5864
5865         * gtk/testgtk.c (create_clist):
5866         Don't leak custom style.
5867
5868 2001-01-23  Alexander Larsson  <alexl@redhat.com>
5869
5870         * gtk/gtkcolorsel.c (grab_color_at_mouse):
5871         Don't leak image. Simplify using gdk_colormap_query_color().
5872         (gtk_color_selection_init): Don't leak dropper_pixmap and mask.
5873
5874         * linux-fb/gdkcolor-fb.c:
5875         Implemented gdk_colormap_query_color.
5876
5877 2001-01-23  Alexander Larsson  <alexl@redhat.com>
5878
5879         * linux-fb/gdkcursor-fb.c:
5880         Don't leak built-in cursors.
5881
5882         * linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_polygon):
5883         Don't leak tmp_points.
5884
5885         * linux-fb/gdkfont-fb.c (gdk_font_from_description):
5886         Don't modify desc. Don't leak font if the PangoFont
5887         isn't found.
5888         
5889         * linux-fb/gdkgc-fb.c (gdk_fb_gc_finalize):
5890         Free dash_list.
5891
5892         * linux-fb/gdkkeyboard-fb.c (gdk_fb_handle_key):
5893         Don't leak string.
5894         
5895 2001-01-20  Havoc Pennington  <hp@pobox.com>
5896
5897         * gtk/gtktexttag.h (enum GtkWrapMode): rename member fields
5898         from GTK_WRAPMODE_WORD to GTK_WRAP_WORD, etc., seems nicer to 
5899         me, matches Pango
5900
5901 2001-01-22  Havoc Pennington  <hp@redhat.com>
5902
5903         * demos/testanimation.c: fix to reflect gdk-pixbuf changes
5904
5905         * demos/testpixbuf.c: fix to reflect gdk-pixbuf changes
5906
5907         * gtk/gdk-pixbuf-loader.c, gtk/gdk-pixbuf-loader.h: 
5908         Remove, move back to gdk-pixbuf
5909
5910         * gtk/gtktextiter.c, gtk/gtktextiter.h: add sentence equivalents
5911         to all the word functions
5912
5913         * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): return
5914         before doing anything on NULL layout or if we don't have the focus
5915
5916         * gtk/testtext.c (fill_example_buffer): "justification"
5917
5918         * gtk/gtktexttag.h, gtk/gtktexttag.c: change the tag attribute
5919         to be called "justification" not "justify"
5920
5921         * demos/gtk-demo/textview.c (create_tags): "justification"
5922         
5923         * gtk/gtktextlayout.c (set_para_values): Handle char-wise wrapping
5924
5925 2001-01-22  Alexander Larsson  <alexl@redhat.com>
5926
5927         * gdk/gdkwindow.c (gdk_window_invalidate_region):
5928         Don't leak visible_region. Use visible_region instead of region.
5929         
5930         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
5931         Don't do extra gdk_drawable_ref(). This is not X.
5932         (gdk_fb_window_find_focus, gdk_fb_change_focus): make sure
5933         gdk_fb_focused_window is ref:ed.
5934         (gdk_fb_window_send_crossing_events): Watch out for destroyed
5935         windows.
5936
5937 2001-01-22  Alexander Larsson  <alexl@redhat.com>
5938
5939         * gtk/gtkwindow-decorate.c (gtk_decorated_window_realize):
5940         Don't leak the PangoFontDescriptor.
5941
5942 Sun Jan 21 09:58:00 2001  Jonathan Blandford  <jrb@redhat.com>
5943
5944         * gtk/gtktreeview.c (gtk_tree_view_scroll_to_point): Make fail
5945         when not realized.
5946         (gtk_tree_view_scroll_to_cell): Make work when not realized.
5947         (gtk_tree_view_realize): add scroll_to support
5948         (gtk_tree_view_finalize): add a finalize method.  Populate.
5949         (gtk_tree_view_insert_column): ref and sink the column.
5950         (gtk_tree_view_append_column): ref and sink the column.
5951         (gtk_tree_view_queue_draw_node): New function to handle redrawing
5952         individual nodes.  Should make the code much more efficient, if
5953         actually used.
5954
5955 2001-01-19  Havoc Pennington  <hp@redhat.com>
5956
5957         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
5958         byte_offset variable was being used to mean both "offset into
5959         layout" and "offset into buffer line" which was no longer true
5960         with addition of preedit string; fix
5961
5962 2001-01-19  Havoc Pennington  <hp@redhat.com>
5963
5964         * demos/gtk-demo/main.c (button_press_event_cb): sync to tree changes
5965
5966         * gtk/gtkrbtree.c (_gtk_rbtree_node_find_offset): fix this
5967         function
5968
5969         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_widget):
5970         implement
5971
5972         * gtk/gtktreeview.c (gtk_tree_view_move_to): rename
5973         scroll_to_cell, matches TextView scroll functions better
5974         (gtk_tree_view_tree_to_widget_coords): new function
5975         (gtk_tree_view_widget_to_tree_coords): new function
5976         (gtk_tree_view_get_visible_rect): new function
5977         (gtk_tree_view_get_path_at_pos): accept negative coordinates
5978         (gtk_tree_view_draw_node_focus_rect): new function moved from
5979         draw_focus, also, use width of bin_window as width of the focus
5980         rect
5981         (gtk_tree_view_expand_row): fix bug where it didn't recognize
5982         already-expanded rows
5983         (gtk_tree_view_get_cell_rect): new function
5984         (gtk_tree_view_get_path_at_pos): return the click position
5985         relative to the passed-in cell
5986         (gtk_tree_view_set_expander_column): new function
5987
5988         * configure.in: remove gtk-config-2.0 chmod
5989
5990         * gtk/gtktextview.c (gtk_text_view_drag_motion): small cleanups,
5991         and properly handle drags with targets we don't understand
5992         (gtk_text_view_drag_end): don't stop scrolling, the source isn't
5993         scrolling anyway
5994         (gtk_text_view_drag_drop): stop scrolling here though, and set the
5995         mark invisible
5996
5997         * gtk/gtkdnd.c (gtk_drag_dest_find_target): export as a public
5998         function
5999         (gtk_drag_dest_get_target_list): new function
6000         (gtk_drag_dest_set_target_list): new function
6001         
6002         * gtk/gtktreeview.c: Add a bunch of drag-and-drop implementation
6003
6004         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): add fields
6005         related to drag-and-drop
6006
6007 2001-01-19  Alexander Larsson  <alexl@redhat.com>
6008
6009         * gdk/linux-fb/gdkprivate-fb.h:
6010         Define EMULATE_GDKFONT.
6011         Add extra pango_font stuff to GfkFontPrivate.
6012         
6013         * gdk/linux-fb/gdkdrawable-fb2.c:
6014         * gdk/linux-fb/gdkfont-fb.c:
6015         If EMULATE_GDKFONT defined, implement a slow lame GdkFont
6016         emulation using PangoFont.
6017
6018 2001-01-17  Havoc Pennington  <hp@pobox.com>
6019
6020         * gtk/gtkprogressbar.c, gtk/gtkprogressbar.h: Add "getters" for
6021         all the non-deprecated set_foo functions. Added missing object
6022         properties, and added g_object_notify() to setters. 
6023         Wrote docs.
6024         
6025 2001-01-18  Tor Lillqvist  <tml@iki.fi>
6026
6027         * gtk/gtkmain.c
6028         * gtk/gtkrc.c: (Win32) Use the new
6029         g_win32_get_package_installation_(sub)directory() functions.
6030
6031         * config.h.win32.in: New file.
6032         
6033         * config.h.win32: Removed.
6034
6035         * configure.in: Output config.h.win32.
6036
6037         * Makefile.am: Add it to EXTRA_DIST.
6038
6039         * gtk/gtk.def: Update.
6040
6041 Wed Jan 17 16:22:54 2001  Owen Taylor  <otaylor@redhat.com>
6042
6043         * gtk/gtklabel.c (gtk_label_size_request): Set the
6044         attributes onto the PangoLayout even if they are newly
6045         created from label->pattern.
6046
6047 Tue Jan  9 11:20:48 2001  Owen Taylor  <otaylor@redhat.com>
6048
6049         * gdk/x11/gdkdnd-x11.c: Remove unused variable.
6050
6051         * gtk/gtkdnd.c: Encapsulate storing and retrieving info
6052         structures in functions. Fixes bug where gtk_dataset_*
6053         was accidentally still being used in one place, causing
6054         every dest side event to be treated independently.
6055
6056         * gtk/gtkdnd.c: Remove last vestages of handling
6057         ::draw (fixes warning)
6058         
6059         * gtk/gtkentry.[ch]: Add drag and drop support.
6060
6061         * gtk/gtkdnd.[ch] gtk/gtktextview.c gtk/gtkentry.c: Add
6062         new function gtk_check_drag_threshhold() for checking
6063         to check if (dx,dy) has exceeded the threshhold for starting
6064         a drag and use it everywhere.
6065
6066 Mon Jan  8 11:58:05 2001  Owen Taylor  <otaylor@redhat.com>
6067
6068         * gtk+-2.0.pc.in gdk-pixbuf-2.0.pc.in (Cflags): Remove -I${includedir},
6069         add -I{includedir}/gtk-2.0.
6070
6071         * gtk/gtktreeview.[ch] gtktreemodelsort.[ch] gtknotebook.c
6072         gdk/gdk-pixbuf.h: Doc fixups.
6073         
6074         * gtk/gtkobject.h: Remove trailing , from enum
6075
6076 2001-01-17 Alexander Larsson <alexl@redhat.com> 
6077
6078         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_shadow_fb_draw_arc):
6079         Doh! Mixed up x and y.
6080
6081         * gdk/linux-fb/gdkglobals-fb.c:
6082         Removed gdk_fb_pointer_grab_window_events,
6083         added _gdk_fb_pointer_grab_owner_events and
6084         _gdk_fb_keyboard_grab_owner_events.
6085
6086         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab):
6087         Set all button mask if GDK_BUTTON_MOTION_MASK set. Send
6088         crossing events before grabbing. Set _gdk_fb_pointer_grab_owner_events.
6089         (gdk_fb_pointer_ungrab): Unset _gdk_fb_pointer_grab_owner_events
6090         Send crossing events after ungrab finished.
6091         (gdk_keyboard_grab): Set ..._owner_events
6092         (type_masks): Move out of function.
6093         (gdk_fb_other_event_window, gdk_fb_pointer_event_window,
6094         gdk_fb_keyboard_event_window): New functions, return the
6095         window an event should be targeted at. Handles grabs and
6096         event propagation. Can return NULL.
6097         (gdk_event_make): Remove event_mask checking. Now always
6098         returns an event.
6099                 
6100         * gdk/linux-fb/gdkkeyboard-fb.c:
6101         * gdk/linux-fb/gdkproperty-fb.c:
6102         * gdk/linux-fb/gdkselection-fb.c:
6103         Use new event_window/gdk_event_make() behaviour.
6104         
6105         * gdk/linux-fb/gdkmouse-fb.c:
6106         Use new event_window/gdk_event_make() behaviour.
6107         Only send motion events if in the same window.
6108         If grabbed, use cursor from window if sibling of grabbed
6109         window, and cursor from grabbed window otherwise.
6110
6111         * gdk/linux-fb/gdkprivate-fb.h:
6112         Update gdk_fb_window_send_crossing_events, gdk_event_make
6113         and grab varaible declarations. Add gdk_fb_*_event_window().
6114
6115         * gdk/linux-fb/gdkwindow-fb.c:
6116         Use new event_window/gdk_event_make() behaviour.
6117         Keep correct track of focus window.
6118         (gdk_window_set_events): Set all specific button motion masks
6119         if GDK_BUTTON_MOTION_MASK set.
6120
6121         * gtk/gtkdnd.c (gtk_drag_update):
6122         Free info->last_event if gdk_drag_motion returned FALSE.
6123
6124 2001-01-16  Tor Lillqvist  <tml@iki.fi>
6125
6126         * gdk/win32/gdkwindow-win32.c (gdk_window_show, gdk_window_hide):
6127         Eliminate redraws when input-only windows are shown or
6128         hidden. Thanks to jpe@archaeopteryx.com.
6129
6130 Tue Jan 16 13:13:13 GMT 2001  Tony Gale <gale@gtk.org>
6131
6132         * docs/faq/gtk-faq.sgml: FAQ update:
6133           - Update to bugzilla
6134           - Add GTK+ and security/SUID/SGID
6135           - Add DnD question
6136
6137 2001-01-16  Alexander Larsson  <alla@lysator.liu.se>
6138
6139         * gdk/linux-fb/gdkdnd-fb.c:
6140         Some cleanups.
6141         
6142 2001-01-15  Havoc Pennington  <hp@pobox.com>
6143
6144         * tests/testtreeview.c: add test stuff for CellRendererToggle
6145
6146         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_get_model): add this
6147         accessor
6148
6149         * gtk/gtkcellrenderertoggle.c: distinguish different event types,
6150         only toggle on button press (would do release like GtkButton, but
6151         we'd need implicit grab code for treeview cells)
6152
6153 2001-01-16  Tor Lillqvist  <tml@iki.fi>
6154
6155         * gdk/win32/gdkvisual-win32.c: Include <stdlib.h> for getenv().
6156
6157         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Don't use
6158         GDK_COLORMAP_PRIVATE_DATA on a potentially NULL GdkColormap.
6159
6160         * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Adapt calls
6161         to g_{locale,filename}_{to,from}_utf8 to match current API.
6162
6163         * gtk/makefile.msc.in (gtk_OBJECTS)
6164         * gtk/makefile.mingw.in (gtk_OBJECTS): Add gtkwindow-decorate.
6165
6166         * gtk/gtk.def: Update.
6167
6168 2001-01-15  Tor Lillqvist  <tml@iki.fi>
6169
6170         * gdk/win32/gdkevents-win32.c (synthesize_crossing_events): New
6171         implementaion that more closely mimics the events that an X server
6172         would generate. Especially, properly generate GDK_NOTIFY_VIRTUAL and
6173         GDK_NOTIFY_NONLINEAR_VIRTUAL crossing events. This makes buttons
6174         with nested preview widgets, for instance, more responsive when
6175         you move the mouse quickly into them.
6176         (find_window_for_pointer_event): Make it actually compile.
6177         (gdk_event_translate): Set send_event to the value of
6178         InSendMessage (). This doesn't really mean the same as X11's
6179         send_event flag, but is close enough, says jpe@archaeopteryx.com
6180
6181 2001-01-15  Alexander Larsson  <alexl@redhat.com>
6182
6183         * gdk/linux-fb/gdkdnd-fb.c:
6184         Implemented drag and drop.
6185         Seems to be mostly working. I sometimes get an assert from gtkdnd.c:2664
6186         when it tries to free and then copy the same event (info->last_event).
6187         I am not sure about why this happens, but will continue looking.
6188
6189 2001-01-15  Alexander Larsson  <alexl@redhat.com>
6190
6191         * gdk/linux-fb/gdkwindow-fb.c:
6192         Use gdk_window_invalidate_rect instead of
6193         gdk_window_invalidate_rect_clear to minimise flashing.
6194         When hiding windows you need to clear the root window though.
6195
6196 2001-01-15  Alexander Larsson  <alexl@redhat.com>
6197
6198         * gdk/linux-fb/gdkdrawable-fb2.c:
6199         For optization, add an full_shapes argument to gdk_fb_clip_region.
6200         If this is false, only the cliprects of the shapes are used.
6201
6202         * gdk/linux-fb/gdkprivate-fb.h:
6203         Export gdk_fb_window_peek_shape.
6204         Add full_shapes to gdk_fb_clip_region.
6205
6206         * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
6207         When moving a window, don't clear everything under the it, just the
6208         root window. Makes stuff faster and flash less.
6209         (gdk_window_get_pointer): Correctly handle offseted shapes, due to
6210         USE_CHILD_SHAPE. (gdk_fb_window_peek_shape): Return the correct
6211         offset of the shape.
6212         
6213
6214 2001-01-12  Havoc Pennington  <hp@redhat.com>
6215
6216         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): offset the 
6217         current invalid region, fixes redraw bug while scrolling the 
6218         text widget
6219
6220         * gtk/gtktextview.c, gtk/gtktextview.h:
6221         Rearrange the scrolling/validation/etc. code in a major way, 
6222         so it seems to make sense to me. Probably isn't genuinely that
6223         much better, but...
6224
6225         * gtk/gtktexttag.c (set_fg_color): fix name of property used for
6226         notifies
6227
6228         * gtk/gtktextmark.c (gtk_text_mark_get_left_gravity): new function
6229
6230 2001-01-12  Alexander Larsson  <alla@lysator.liu.se>
6231
6232         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_set_rotation):
6233         Hide mouse pointer while rotation. Show it afterwards.
6234
6235 2001-01-12  Alexander Larsson  <alexl@redhat.com>
6236
6237         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_clip_region): Take shaped
6238         windows in consideration when generating clip region.
6239
6240         * gdk/linux-fb/gdkfb.h:
6241         Huge HACK. Added GDK_FB_USE_CHILD_SHAPE.
6242
6243         * gdk/linux-fb/gdkprivate-fb.h:
6244         Add shape to GdkWindowFBDatat.
6245         exported gdk_fb_window_get_abs_shape().
6246         removed gdk_fb_draw_lines declaration.
6247
6248         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_impl_fb_init):
6249         Init shape to NULL. (gdk_fb_window_send_crossing_events): Don't
6250         send focus changes when there is a grabbed window.
6251         (gdk_window_get_pointer): Handle shaped windows.
6252         (gdk_fb_region_create_from_bitmap): Convert bitmap to region.
6253         (gdk_fb_window_peek_shape): Returns the shape for a window,
6254         handles GDK_FB_USE_CHILD_SHAPE.
6255         (gdk_fb_window_get_abs_shape): Returns the shape of the window,
6256         offseted to absolute positions. Handles GDK_FB_USE_CHILD_SHAPE.
6257         (gdk_window_shape_combine_mask): Implement.
6258
6259         * gtk/gtkwindow-decorate.c:
6260         HACK! Set GDK_FB_USE_CHILD_SHAPE on window->frame to make sure
6261         setting the shape of a window makes the window transparent.
6262
6263 2001-01-11  Havoc Pennington  <hp@redhat.com>
6264
6265         * gtk/gtktreemodelsimple.h: Oops, broke some macros
6266
6267 2001-01-10  Havoc Pennington  <hp@redhat.com>
6268
6269         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clear_attributes):
6270         add this function, bug 40251
6271
6272         * gtk/gtktreemodelsimple.h (GTK_TYPE_TREE_MODEL_SIMPLE): fix name
6273         of type macro   
6274
6275 2001-01-11  Alexander Larsson  <alexl@redhat.com>
6276
6277         * acconfig.h:
6278         Added ENABLE_SHADOW_FB
6279
6280         * configure.in:
6281         Added --disable-shadowfb
6282
6283         * gdk/linux-fb/gdkcursor-fb.c:
6284         Update shadowfb when updating cursor
6285
6286         * gdk/linux-fb/gdkdrawable-fb2.c:
6287         Added wrappers for shadowfb that calls  the normal drawable
6288         methods, but calls gdk_shadow_fb_update(bounding box) when
6289         GdkWindows are drawed to.
6290         Moved gdk_draw_glyphs implementation to _gdk_draw_glyphs
6291         which also returns the bounding box.
6292
6293         * gdk/linux-fb/gdkfb.h:
6294         Added GdkFBAngle type and gdk_fb_set_rotation declaration.
6295
6296         * gdk/linux-fb/gdkgeometry-fb.c:
6297         Update shadowfb when scrolling window.
6298
6299         * gdk/linux-fb/gdkglobals-fb.c:
6300         Add _gdk_fb_screen_angle.
6301         
6302         * gdk/linux-fb/gdkkeyboard-fb.c:
6303         Test code for screen rotation. Shift-F2 in the xlate driver
6304         rotates the screen.
6305
6306         * gdk/linux-fb/gdkmain-fb.c:
6307         Handle shadowfb. Add gdk_fb_set_rotation(). Remove CM and RP.
6308
6309         * gdk/linux-fb/gdkmouse-fb.c:
6310         Use fb_width/height instead of modeinfo.xres/yres.
6311
6312         * gdk/linux-fb/gdkprivate-fb.h:
6313         Added fb_men, fb_width, fb_height & fb_stride. When using
6314         shadow fb these can differ from the framebuffer stuff.
6315         Declarations for gdk_shadow_fb_update, gdk_shadow_fb_init,
6316         gdk_shadow_fb_stop_updates, gdk_fb_recompute_all,
6317         _gdk_fb_screen_angle. Removed CM, RP.
6318
6319         * gdk/linux-fb/gdkrender-fb.c:
6320         Added code for shadowfb handling and screen rotation using
6321         shadowfb.
6322
6323         * gdk/linux-fb/gdkwindow-fb.c:
6324         Use fb_mem, fb_stride, fb_width, fb_height.
6325         Added recompute_rowstride to reset the rowstride of all windows.
6326         Added gdk_fb_recompute_all() which recomputes rootwindow size,
6327         window abs positions and window rowstrides. Usefull when the
6328         rotation has changed.
6329
6330 Thu Jan 11 13:16:50 GMT 2001  Tony Gale <gale@gtk.org>
6331
6332         * docs/faq/gtk-faq.sgml: update to make web site updating easier
6333
6334 2001-01-10  Havoc Pennington  <hp@redhat.com>
6335
6336         * gtk/gtktreestore.c (gtk_tree_store_insert_before): handle case
6337         where sibling == iter
6338         (gtk_tree_store_insert_after): handle sibling == iter
6339         (gtk_tree_store_prepend): remove stamp checks
6340         (gtk_tree_store_insert_before): ditto
6341         (gtk_tree_store_append): ditto
6342         (gtk_tree_store_get_path): ditto
6343         (gtk_tree_store_get_value): ditto
6344         (gtk_tree_store_iter_has_child): ditto
6345         (gtk_tree_store_iter_n_children): ditto
6346         (gtk_tree_store_iter_nth_child): ditto
6347         (gtk_tree_store_insert_after): ditto
6348         (gtk_tree_store_is_ancestor): ditto
6349         (gtk_tree_store_iter_depth): ditto
6350         (gtk_tree_store_insert_before): assert that sibling's parent is
6351         the same as the passed-in parent
6352         (gtk_tree_store_insert_after): assert that sibling's parent is
6353         the same as the passed-in parent
6354
6355         
6356         * gtk/gtktreemodel.c (gtk_tree_model_get_first): new convenience 
6357         function to get the first iterator in a model
6358         
6359         * gtk/gtktreestore.c (gtk_tree_store_get_root_iter): remove,
6360         conventionally the "root" in this sense is just NULL afaict.
6361
6362         * gtk/gtkliststore.c (gtk_list_store_insert_before): handle case
6363         where sibling == iter
6364         (gtk_list_store_insert_after): handle case where sibling == iter
6365
6366         * tests/testtreeview.c (run_automated_tests): fairly lame basic
6367         automated tests for ListStore, TreeStore
6368
6369         * gtk/gtkliststore.c (gtk_list_store_remove): update tail pointer
6370         (gtk_list_store_insert): update tail pointer, and fix it to work
6371         (gtk_list_store_insert_before): update tail pointer, and fix it to work
6372         (gtk_list_store_append): use tail to be faster
6373         (gtk_list_store_prepend): fix it, update tail pointer
6374         (gtk_list_store_insert_after): fix it, update tail pointer
6375
6376         * gtk/gtkliststore.h (struct _GtkListStore): add tail pointer for 
6377         the list
6378
6379 2001-01-09  Havoc Pennington  <hp@redhat.com>
6380
6381         * gtk/gtklabel.c (gtk_label_expose): don't draw if label->layout
6382         is NULL due to a pending resize
6383
6384         * gtk/gtktreeview.c (gtk_tree_view_check_dirty): don't set the
6385         column width to values less than 1
6386
6387         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_width): clamp
6388         width to be between min/max width, and still set the width 
6389         even if autosize is turned on, so the tree view can use this 
6390         function in order to autosize.
6391         (gtk_tree_view_column_init): set initial width to 1 not 0
6392
6393         * gtk/gtktreeview.c (gtk_tree_view_size_request_buttons): use
6394         setter function to modify column width, so we get notification
6395         (gtk_tree_view_insert_iter_height): ditto
6396         (gtk_tree_view_calc_size): ditto
6397         (gtk_tree_view_check_dirty): ditto
6398
6399         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_class_init): Add
6400         properties to change all the interesting attributes of the tree
6401         view column.
6402         (gtk_tree_view_column_set_header_clickable): rename set_clickable
6403         (gtk_tree_view_column_get_clickable): add
6404         (gtk_tree_view_column_set_cell_renderer): don't unset the current
6405         attributes; assume a cell renderer with equivalent object
6406         properties has been swapped in. Do g_object_notify().
6407         (gtk_tree_view_column_set_visible): g_object_notify
6408         (gtk_tree_view_column_get_sizing): rename from get_col_type
6409         (gtk_tree_view_column_set_sizing): g_object_notify
6410         (gtk_tree_view_column_set_width): add g_object_notify
6411         (gtk_tree_view_column_set_min_width): ditto
6412         (gtk_tree_view_column_set_max_width): ditto
6413         (gtk_tree_view_column_set_title): ditto
6414         (gtk_tree_view_column_set_clickable): ditto
6415         (gtk_tree_view_column_set_widget): ditto
6416         (gtk_tree_view_column_set_justification): ditto
6417
6418 2001-01-09  Havoc Pennington  <hp@redhat.com>
6419
6420         * gtk/gtktreeview.c (gtk_tree_view_check_dirty): handle case where
6421         there are no rows in the model
6422
6423         * gtk/gtkliststore.c (gtk_list_store_iter_children): if parent is
6424         NULL, then return the start of the list
6425
6426         * gtk/gtktreeview.c (gtk_tree_view_setup_model): don't build tree
6427         if we can't get any rows from an empty model 
6428
6429         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): remove
6430         extraneous * after function pointer typedef usage
6431
6432         * Makefile.am: don't specify full path to cp and rm
6433
6434         * gtk/gtkcellrenderertextpixbuf.c
6435         (gtk_cell_renderer_text_pixbuf_get_size): check width/height !=
6436         NULL before dereferencing, fixes a segfault that happened from
6437         time to time
6438
6439         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render):
6440         use gdk_pixbuf_render_to_drawable_alpha() to get alpha channel,
6441         and reindent the function
6442         (gtk_cell_renderer_pixbuf_get_size): indentation
6443
6444         * gtk/gtkdialog.c (gtk_dialog_run): destroy main loop only after
6445         we quit it
6446         (gtk_dialog_add_buttons_valist): add g_return_if_fail
6447         (gtk_dialog_set_default_response): New function, to set default
6448         button
6449         (gtk_dialog_set_response_sensitive): New function, to set 
6450         sensitivity of buttons
6451
6452         * gtk/gtkcellrendererpixbuf.c
6453         (gtk_cell_renderer_pixbuf_get_property): allow getting a NULL pixbuf
6454         (gtk_cell_renderer_pixbuf_set_property): allow setting a NULL pixbuf
6455
6456         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_to_value):
6457         handle any G_TYPE_OBJECT subclass, not just the base class, and 
6458         also boxed types.
6459         (_gtk_tree_data_list_value_to_node): ditto
6460
6461         * gtk/gtkrbtree.c: Run _gtk_rbtree_test at strategic points if 
6462         --gtk-debug=tree
6463
6464         * gtk/gtkmain.c: add GTK_DEBUG_TREE
6465
6466         * gtk/gtkdebug.h: add GTK_DEBUG_TREE
6467
6468 2001-01-09  Tor Lillqvist  <tml@iki.fi>
6469
6470         * gdk/win32/gdkevents-win32.c: Implement better mouse
6471         capturing. Do use SetCapture(). Thanks to jpe@archaeopteryx.com.
6472         (find_window_for_pointer_event): New function.
6473         (gdk_event_translate): Use it when handling mouse events.
6474
6475 2001-01-09  Alexander Larsson  <alla@lysator.liu.se>
6476
6477         * configure.in:
6478         Added --with-included-loaders option
6479
6480         * gdk-pixbuf/Makefile.am:
6481         * gdk-pixbuf/gdk-pixbuf-io.c:
6482         Add support for including selected gdk-pixbuf loaders only.
6483
6484         * gtk/gtkwindow.c (gtk_window_set_frame_dimensions,
6485         gtk_window_set_has_frame):
6486         Added inline documentation.
6487
6488         * gdk/x11/gdkwindow-x11.c (gdk_window_get_decorations):
6489         * docs/reference/gdk/tmpl/windows.sgml:
6490         Added inline documentation.
6491
6492 Mon Jan  8 14:42:06 2001  Jonathan Blandford  <jrb@redhat.com>
6493
6494         * gtk/gtktreeview.c (gtk_tree_view_realize_buttons): Skip
6495         realizing buttons that have already been realized.
6496
6497 Mon Jan  8 14:06:29 2001  Jonathan Blandford  <jrb@redhat.com>
6498
6499         * tests/testtreeview.c (main): Show menu items before adding to
6500         option menu.
6501
6502         * gtk/gtktreeview.c (gtk_tree_view_set_model): Keep the columns
6503         around if we kill them.
6504
6505         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
6506         Return if we pass in a NULL model.
6507
6508 2001-01-08  Havoc Pennington  <hp@redhat.com>
6509
6510         * tests/testtreeview.c: hack on this some
6511
6512         * gtk/gtktreestore.c (gtk_tree_store_setv): rename
6513         gtk_tree_store_set_valist, v is for arrays, valist for varargs
6514         list
6515         (gtk_tree_store_getv): rename gtk_tree_store_get_valist
6516
6517         * gtk/gtkliststore.h: Add varargs set() and get() convenience
6518         functions
6519
6520 2001-01-08  Alexander Larsson  <alexl@redhat.com>
6521
6522         * gtk/gtkwindow-decorate.[hc]:
6523         * gtk/Makefile.am:
6524         New files. Contains an implementation of a minimal WM for
6525         linux-fb.
6526
6527         * gtk/gtkwindow.h:
6528         Add the possibility for GtkWindows to specify a frame. This
6529         is used for the window decoration code, but could concievably
6530         be used for X programs too (xmms style windows).
6531         GtkWindow->frame is the toplevel window if the window is framed.
6532         The signal frame_event gets all events that are targeted to
6533         GtkWindow->frame.
6534         (_gtk_window_constrain_size): Exported for usage by gtkwindow-decorate.c.
6535         
6536         * gtk/gtkwindow.c:
6537         Implement gtk_window_set_has_frame and gtk_window_set_frame_dimensions.
6538         Call out to gtkwindow-decorate.c for WM support in linx-fb.
6539
6540 2001-01-08  Alexander Larsson  <alexl@redhat.com>
6541
6542         * docs/README.linux-fb:
6543         Correct filename ~/.pangoft2_aliases
6544
6545         * gdk/gdkwindow.h:
6546         Added new function gdk_window_get_decorations.
6547
6548         * gdk/linux-fb/gdkfb.h:
6549         Removed _gdk_window_get_decorations declaration.
6550         Renamed _gdk_window_set_child_handler to
6551         gdk_fb_window_set_child_handler.
6552
6553         * gdk/linux-fb/gdkwindow-fb.c:
6554         Renamed _gdk_window_set_child_handler to
6555         gdk_fb_window_set_child_handler.
6556
6557         * gdk/x11/gdkwindow-x11.c:
6558         New function gdk_window_get_mwm_hints().
6559         Implemented gdk_window_get_decorations.
6560
6561         * docs/reference/gdk/tmpl/windows.sgml:
6562         * docs/reference/gdk/gdk-sections.txt:
6563         Added gdk_window_get_decorations docs.
6564         
6565 2001-01-08  Alexander Larsson  <alla@lysator.liu.se>
6566
6567         * gdk/linux-fb/gdkwindow-fb.c (_gdk_fb_window_find_focus,
6568         gdk_fb_window_find_focus, gdk_fb_send_focus_change,
6569         gdk_fb_window_send_crossing_events):
6570         Possibly send focus events when the mouse moves from one
6571         window to another.
6572
6573 2001-01-07  Tor Lillqvist  <tml@iki.fi>
6574
6575         * gdk/win32/gdkwindow-win32.c (gdk_window_set_title,
6576         gdk_window_new): Adapt calls to g_{locale,filename}_{to,from}_utf8
6577         to match current API.
6578
6579         * gdk/win32/gdkvisual-win32.c (gdk_visual_init): If a secret
6580         environment variable is set, don't call g_error when on a
6581         palettized (PseudoColor) display. Some people want to use GTK+ 
6582         in 256-colour mode even though works only partially.
6583
6584         * gdk/gdk.def
6585         * gtk/gtk.def
6586         * gtk/makefile.mingw.in: Update.
6587
6588 2001-01-05  Havoc Pennington  <hp@redhat.com>
6589
6590         * tests/testtreeview.c: hack on this a bit
6591
6592         * gtk/gtktextlayout.c (gtk_text_layout_class_init):
6593         s/GTK_RUN_LAST/G_SIGNAL_RUN_LAST
6594
6595         * gtk/gtktreemodelsimple.h (GTK_IS_TREE_MODEL_SIMPLE_CLASS): 
6596         was spelled incorrectly
6597         (GTK_IS_TREE_MODEL_SIMPLE): ditto
6598
6599         * gtk/gtktreeview.c (gtk_tree_view_set_headers_clickable): rename
6600         from gtk_tree_view_set_headers_active   
6601
6602         * gtk/gtktexttag.c:
6603         (gtk_text_tag_get_property): handle PROP_DIRECTION
6604         (gtk_text_tag_set_property): g_object_notify when we toggle the _set
6605         properties, bug 40235
6606
6607         * gtk/gtktextiter.c (gtk_text_iter_forward_to_delimiters): rename
6608         forward_to_line_end
6609
6610 Fri Jan  5 16:16:29 2001  Owen Taylor  <otaylor@redhat.com>
6611
6612         * gtk/{gtkcalender.c,gtkfilesel.c,gtkimcontext.c},
6613         modules/input/gtkimcontextxim.c: Adapt to new prototypes
6614         for unicode,locale,filename conversion functions.
6615
6616 2001-01-05  Havoc Pennington  <hp@redhat.com>
6617
6618         * gtk/gtktextiter.c (gtk_text_iter_ends_line): this function was
6619         broken if called on the first position in the buffer.
6620
6621         * gtk/gtktextlayout.c (line_display_index_to_iter): fix
6622         forward_to_delimiters to be called only if we aren't already at
6623         the delimiters.
6624
6625 2001-01-05  Havoc Pennington  <hp@redhat.com>
6626
6627         * demos/gtk-demo/main.c (create_tree): Oops, that didn't link. Fix.
6628
6629 2001-01-05  Alexander Larsson  <alexl@redhat.com>
6630
6631         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_drawable_finalize): free
6632         colormap in here. Sync from X port.
6633         (gdk_fb_set_colormap): allow the colormap to be NULL if you like.
6634         Sync from X port.
6635         (gdk_fb_clip_region): Comment out g_warning about empty clip region.
6636         This happens now and then, and i don't think it is a bug.
6637         (gdk_fb_draw_polygon): Correctly add extra point if startpoint
6638         != endpoint.
6639         (gdk_fb_draw_lines): Don't draw dashed lines if line_style is
6640         GDK_LINE_SOLID.
6641
6642         * gdk/linux-fb/gdkfont-fb.c: Return bogus GdkFont that has
6643         some of the fields filled in at least.
6644
6645         * gdk/linux-fb/miwideline.c: The widths argument to miLineArcI, and
6646         miLineArcD is no more, remove it from the function definition.
6647
6648 2001-01-04  Havoc Pennington  <hp@redhat.com>
6649
6650         * gtk/gtktreeselection.c (gtk_tree_selection_get_tree_view): add
6651         this
6652
6653         * gtk/gtktreemodel.h (struct _GtkTreeIter): rename fields to
6654         user_data instead of tree_node
6655
6656         * gtk/gtktreeprivate.h (TREE_VIEW_COLUMN_WIDTH): rename from
6657         TREE_VIEW_COLUMN_SIZE
6658
6659         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): rename
6660         "size" field to "width" finishes bug 40061
6661
6662         * gtk/gtkcellrenderer.h: Use GtkCellRendererState instead of guint
6663         for bitfields, bug 40268
6664
6665 2001-01-04  Havoc Pennington  <hp@redhat.com>
6666
6667         Rename some stuff:
6668         
6669         s/gtk_tree_view_column_set_size/gtk_tree_view_column_set_width/g;
6670
6671         s/GtkModelSimple/GtkTreeModelSimple/g;
6672         s/GTK_MODEL_SIMPLE/GTK_TREE_MODEL_SIMPLE/g;
6673         s/gtk_model_simple/gtk_tree_model_simple/g;
6674         s/gtkmodelsimple/gtktreemodelsimple/g;
6675
6676         s/gtk_tree_view_column_set_header_active/gtk_tree_view_column_set_header_clickable/g;
6677
6678         s/GtkTreeViewColumnType/GtkTreeViewColumnSizing/g;
6679         s/column_set_col_type/column_set_sizing/g;
6680
6681         s/GtkTreeSelectionType/GtkTreeSelectionMode/g;
6682         s/gtk_tree_selection_set_type/gtk_tree_selection_set_mode/g;
6683
6684         s/GtkCellRendererType/GtkCellRendererState/g;
6685         
6686         * gtk/gtkcellrenderertoggle.c: remove _ macro, include gtkintl.h
6687         (gtk_cell_renderer_toggle_class_init): change "state" property to
6688         "active", to match GtkToggleButton
6689         (gtk_cell_renderer_toggle_get_active): new function, bug
6690         40269
6691         (gtk_cell_renderer_toggle_set_active): new function
6692         (gtk_cell_renderer_toggle_set_property): route changes to toggle
6693         state through gtk_cell_renderer_set_active
6694
6695 Thu Jan  4 15:46:18 2001  Jonathan Blandford  <jrb@redhat.com>
6696
6697         * gtk/gtkmodelsimple.c: Changed a bunch of boxed types to pointers
6698         temporarily until they work again.  Brought up to date with
6699         changes in the model.
6700         * gtk/gtkmodelsimple.h: Brought up to date with changes in the
6701         model.
6702
6703 2001-01-04  Havoc Pennington  <hp@redhat.com>
6704
6705         * gtk/gtktextlayout.c (line_display_index_to_iter): if index is
6706         equal to the line length, then position iterator before paragraph 
6707         separators. Fixes crash reported by Mikael Hermansson when
6708         pressing left arrow from the start of a line.   
6709
6710         * gtk/gtktextiter.c (iter_set_from_byte_offset): Add g_error
6711         about byte indexes off the end
6712         (iter_set_from_char_offset): add g_error about char offsets
6713         off the end
6714
6715 2001-01-03  Havoc Pennington  <hp@redhat.com>
6716
6717         * gtk/gtktextbtree.c: Adapt to uscore-ification of gtktextiterprivate
6718
6719         * gtk/gtktextdisplay.c (gtk_text_layout_draw): remove use 
6720         of private functions; remove inclusion of private headers.
6721
6722         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_at_line): Add this 
6723         function, so we don't need private functions in gtktextdisplay.c
6724
6725         * gtk/gtktextiterprivate.h: underscore-ification
6726
6727         * gtk/gtkwidget.c: Clean up a bunch of docs that said "INTERNAL"
6728         to instead say "only useful to implement widgets"
6729
6730         * gtk/gtkenums.h (GtkMovementStep): Rename GTK_MOVEMENT_CHARS,
6731         GTK_MOVEMENT_POSITIONS to GTK_MOVEMENT_LOGICAL_POSITIONS,
6732         GTK_MOVEMENT_VISUAL_POSITIONS. Resolves bug 40249.
6733
6734         * gdk/x11/gdkwindow-x11.c (gdk_window_impl_x11_set_colormap):
6735         This function was completely broken
6736
6737         * gtk/testtext.c (line_numbers_expose): use gtk_paint_layout
6738
6739         * gtk/gtkvscale.c (gtk_vscale_draw_value): use gtk_paint_layout
6740
6741         * gtk/gtkvruler.c (gtk_vruler_draw_ticks): use gtk_paint_layout
6742
6743         * gtk/gtklabel.c (gtk_label_expose): use gtk_paint_layout
6744
6745         * gtk/gtkhscale.c (gtk_hscale_draw_value): use gtk_paint_layout
6746
6747         * gtk/gtkhruler.c (gtk_hruler_draw_ticks): use gtk_paint_layout
6748
6749         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_render): use
6750         gtk_paint_layout
6751
6752         * gtk/gtkaccellabel.c (gtk_accel_label_expose_event): use
6753         gtk_paint_layout
6754
6755         * gtk/gtkstyle.h: Add draw/paint expander to draw tree expanders.
6756         Progress on bug 40103. Add draw_layout to draw a PangoLayout.
6757         (struct _GtkStyleClass): Remove draw_cross, draw_oval, draw_ramp,
6758         which were not implemented.     
6759
6760         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): Add
6761         insert_pixbuf signal. Rename delete_text to delete_range since it
6762         also deletes pixbufs and child anchors. This almost closes bug
6763         40245 (still need to deal with child anchors)
6764
6765         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Add
6766         insert_pixbuf, change signal names as appropriate, change types of
6767         signals taking marks/tags to have the specific type, not just
6768         G_TYPE_OBJECT
6769         
6770         * gtk/gtkmain.c (gtk_get_current_event_state): Add this function; 
6771         closes bug 40051
6772
6773         * gtk/gtkoptionmenu.c (gtk_option_menu_set_history): clean up
6774         unnecessary remove_contents() call
6775         (gtk_option_menu_class_init): add a "changed" signal, closes
6776         bug 40039
6777         (gtk_option_menu_update_contents): emit "changed" if the 
6778         active menu item changes
6779
6780         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done): fix bad
6781         cast to GtkObject, reported by Jonas Borgstrom
6782         (gdk_pixbuf_loader_finalize): don't close the loader on finalize;
6783         we can't do stuff with side effects in finalize. Instead, spew a
6784         warning if the loader isn't closed.
6785
6786         * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_finalize): free
6787         colormap in here, non-X ports probably need to sync to this change
6788
6789         * gdk/x11/gdkdrawable-x11.c (gdk_x11_set_colormap): remove 
6790         assertion that colormap != NULL, you can set the colormap to NULL
6791         if you like.
6792         
6793         * Makefile.am: remove gtk-config-2.0
6794
6795         * configure.in: Use pkg-config to locate GLib. Remove
6796         separated-out GMODULE_LIBS, GMODULE_CFLAGS; these were not used,
6797         and the gmodule libs/cflags were in GLIB_LIBS GLIB_CFLAGS anyhow.
6798         Use pkg-config to locate Pango. Output correct Pango libs to
6799         gdk-2.0.pc.in. Fix test for FREETYPE_CONFIG (typo fix).
6800
6801         * Makefile.am (pkgconfig_DATA): install only target-specific pc
6802         files
6803         (install-data-local): symlink gtk+-2.0.pc and gdk-2.0.pc to the
6804         X11 pc files
6805
6806         * gtk+-2.0.pc.in (Requires): require the GDK for the current target
6807         unref from here
6808
6809 2001-01-03  Alexander Larsson  <alla@lysator.liu.se>
6810
6811         * configure.in:
6812         Change GTK_NO_CHECK_CASTS to G_DISABLE_CAST_CHECKS.
6813
6814 Tue Jan  2 16:23:05 2001  Owen Taylor  <otaylor@redhat.com>
6815
6816         * gtk/gtktextlayout.c
6817         (gtk_text_layout_move_iter_to_previous_line): Fix unitialized
6818         variable when moving back onto a single line.
6819
6820 2001-01-01  Havoc Pennington  <hp@redhat.com>
6821
6822         * gtk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
6823
6824         * gdk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
6825
6826         * configure.in (LIBTOOL_EXPORT_OPTIONS): define
6827         LIBTOOL_EXPORT_OPTIONS with options to control symbol export
6828
6829 2001-01-01  Havoc Pennington  <hp@redhat.com>
6830
6831         * gtk/gtktexttagprivate.h: uscore-prepend all the stuff in here.
6832
6833         * gtk/gtk-boxed.defs (GtkTextAttributes): Add boxed type for 
6834         GtkTextAttributes
6835
6836         * gtk/gtktexttag.c: Fix up GtkTextAttributes copying to close bug 
6837         #40246
6838         (gtk_text_attributes_copy_values): rename from 
6839         gtk_text_attributes_copy
6840         (gtk_text_attributes_copy): a more standard GTK copy function, 
6841         which returns a new object
6842
6843 2001-01-01  Havoc Pennington  <hp@redhat.com>
6844
6845         * gtk/gtktreeview.c: Adapt to GtkTreeSelection changes
6846         
6847         * gtk/gtktreeselection.c (_gtk_tree_selection_set_tree_view):
6848         don't fill in tree_view->priv->selection, kind of an unexpected
6849         side effect
6850
6851         * gtk/gtkcellrenderertext.c: Remove definition of _ and include
6852         gtkintl.h
6853         
6854         * gtk/gtkcellrenderer.c: Remove definition of _ and include
6855         gtkintl.h
6856         (gtk_cell_renderer_get_property): remove calls to g_value_init
6857
6858         * gtk/gtkcellrendererpixbuf.c: Remove definition of _ and include
6859         gtkintl.h
6860
6861         * gtk/gtkcellrenderertextpixbuf.c: Remove definition of _ macro
6862         and include gtkintl.h
6863         (gtk_cell_renderer_text_pixbuf_class_init): remove spaces from
6864         property names
6865
6866         * gtk/gtktreeselection.c (_gtk_tree_selection_new): rename, return
6867         GtkTreeSelection
6868         (_gtk_tree_selection_new_from_with_view): rename, return
6869         GtkTreeSelection
6870         (_gtk_tree_selection_set_tree_view): rename with uscore
6871         (gtk_tree_selection_get_selected): fill in the "model" out param
6872         first, so it gets filled in even if we return at the top of the 
6873         function
6874         (gtk_tree_selection_real_select_all): add a comment and an else{}
6875         to clarify this a bit
6876         (gtk_tree_selection_real_unselect_all): add the same else{}
6877
6878         * gtk/gtktreeselection.h: Rename new, new_with_tree_view, and
6879         set_tree_view to have underscore prefixes, move them to the
6880         private header, fix return type of new_with_tree_view
6881         (struct _GtkTreeSelection): mark struct
6882         fields private  
6883
6884         * gtk/gtktreemodel.c (gtk_tree_model_get_flags): return
6885         GtkTreeModelFlags, not a guint
6886         (gtk_tree_path_prev): return gboolean not gint
6887         (gtk_tree_path_up): return gboolean not gint
6888
6889         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): make get_flags
6890         return GtkTreeModelFlags, not a guint
6891
6892         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_finalize): check
6893         that child model is non-null before unrefing it
6894         (g_value_int_compare_func): make this a qsort compare func, not 
6895         a boolean predicate
6896
6897         * gtk/gtktreemodelsort.h: rename gtk_tree_model_set_sort_column,
6898         (add -umn to the end), and mark it unimplemented
6899         (gtk_tree_model_sort_resort): remove, this wasn't implemented, and 
6900         I don't see what it's for - doesn't the model always sort itself?
6901         (gtk_tree_model_sort_set_compare): this had the wrong signature
6902
6903         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_attributes):
6904         Fix the docs to say that it destructively replaces existing
6905         attributes (previously said that it added attributes).
6906         (gtk_tree_view_column_set_visible): canonicalize bool before
6907         equality testing. Also, check for realization before
6908         hiding/showing the tree_column->window; if this window could exist
6909         before realization, then it's busted and needs fixing, we can't 
6910         create GDK resources pre-realization. Also, remove
6911         superfluous queue_resize(), since set_size() does that for us.
6912         (gtk_tree_view_column_set_col_type): check realization before 
6913         using tree_column->window
6914
6915         * gtk/gtktreedatalist.c: fix filename in copyright notice
6916
6917 2000-12-31  Havoc Pennington  <hp@pobox.com>
6918
6919         * gtk/gtktextview.c: Rearrange all the
6920         scroll-while-dragging-or-selecting code to be different, not
6921         necessarily better. ;-)
6922         (gtk_text_view_scroll_to_mark): Change this
6923         function to take within_margin as a fraction instead of a pixel
6924         value, and to take alignment arguments (indicating where to align 
6925         the mark inside the visible area)
6926         
6927         * gtk/testtextbuffer.c (fill_buffer): fix bad cast of GtkTextTag
6928         to GtkObject
6929
6930         * gtk/gtktextiter.c (gtk_text_iter_set_line_offset): change
6931         behavior so that offsets past the end of the line are not 
6932         allowed, and an offset equal to the line length moves the iterator
6933         to the next line
6934         (gtk_text_iter_set_line_index): make parallel change
6935         (gtk_text_iter_get_bytes_in_line): add this function
6936         
6937         * gtk/gtktextbtree.c (_gtk_text_line_byte_locate): change handling
6938         of byte indexes off the end of the line; byte index at the end of
6939         the line now returns FALSE and doesn't fill in the requested
6940         values, byte index past the end of the line is an error.  Also,
6941         don't allow -1 offset anymore, since its meaning is unclear.
6942
6943         This change exposes some bug in visual cursor motion, where we
6944         end up with a huge invalid byte index; needs fixing. Symptom of 
6945         bug is a crash when you hit up arrow.
6946         
6947         (_gtk_text_line_char_locate): match the change to byte_locate
6948
6949         * gtk/gtktextiter.c (find_by_log_attrs): Handle iteration backward
6950         from start of line properly. fixes bug reported by Mikael
6951         Hermansson where backspace would delete all text before the
6952         cursor.
6953
6954 2000-12-30  Tor Lillqvist  <tml@iki.fi>
6955
6956         * gdk/win32/gdkwindow-win32.c
6957         (gdk_window_impl_win32_get_visible_region): New function, as in
6958         the X11 backend.
6959         (gdk_window_new, gdk_window_set_title): Use g_locale_from_utf8()
6960         instead of duplicating the same code here.
6961
6962         * gdk/win32/gdkwin32.h (GDK_COLORMAP_PRIVATE_DATA): Use
6963         GDK_COLORMAP macro.
6964
6965         * gdk/win32/gdkevents-win32.c (gdk_event_funcs): Use NULL as
6966         destroy function.
6967         (gdk_event_translate): Use GDK_COLORMAP_PRIVATE_DATA to correctly
6968         access that.
6969
6970         * gtk/gtk.def: Update.
6971
6972         * gtk/makefile.mingw.in: Use glib-genmarshal from $(GLIB)/gobject.
6973
6974 2000-12-30  Havoc Pennington  <hp@pobox.com>
6975
6976         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Set the system
6977         colormap on input only windows, to avoid special cases all over
6978         the code for these windows.
6979
6980 2000-12-26  Tor Lillqvist  <tml@iki.fi>
6981
6982         * gdk/win32/gdkvisual-win32.c (gdk_visual_init): Call g_error if
6983         we are on a palettized display ("PseudoColor" in X11), as the code
6984         for that doesn't work anyway, and never has.
6985
6986 2000-12-22  Alexander Larsson  <alexl@redhat.com>
6987
6988         * gdk/linux-fb/gdkkeyboard-fb.c (xlate_io):
6989         Don't use isprint() for chars > 255.
6990
6991 2000-12-21  Havoc Pennington  <hp@redhat.com>
6992
6993         * tests/testtreeview.c: more work
6994
6995 2000-12-21  Alexander Larsson  <alexl@redhat.com>
6996
6997         * docs/README.linux-fb:
6998         Update the docs to the new pangoft2 way.
6999
7000 2000-12-21  Alexander Larsson  <alexl@redhat.com>
7001
7002         * configure.in:
7003         For linux-fb get the pangoft2 cflags and libs. This needs a recent
7004         pango version.
7005         Remove modules/linux-fb/Makefile.
7006
7007         * gdk/linux-fb/gdkdrawable-fb2.c:
7008         Render glyphs using freetype.
7009
7010         * gdk/linux-fb/gdkfb.h:
7011         Add new fb-specific functions needed for managing windows.
7012
7013         * gdk/linux-fb/gdkmain-fb.c:
7014         Remove gdk_font_init/fini() calls.
7015
7016         * gdk/linux-fb/gdkpango-fb.c:
7017         Remove old implementation. Use pangoft2 instead.
7018
7019         * gdk/linux-fb/gdkprivate-fb.h:
7020         Remove PangoFBFont and related stuff.
7021
7022         * gdk/linux-fb/gdkwindow-fb.c:
7023         Implement drawable->get_visible_region.
7024         Implement support for _gdk_window_set_child_handler () and
7025         _gdk_window_get_decorations().
7026
7027         * modules/Makefile.am:
7028         Remove linux-fb subdir.
7029
7030         * modules/linux-fb/*:
7031         Removed all.
7032         
7033 2000-12-20  Jonathan Blandford  <jrb@redhat.com>
7034
7035         * gtk/gtkcellrenderer*.c (::get_property): remove g_value_init
7036         calls, as they are no longer needed.
7037
7038         * gtk/gtktreemodelsort.c: Fix up the comparison code.
7039         
7040         * gtk/gtktreemodel.h: Start work on ::reordered signal.  Need to
7041         figure out how to emit a signal on an interface.
7042
7043 2000-12-20  Havoc Pennington  <hp@redhat.com>
7044
7045         * tests: new directory to contain tests, gtk/test* should move
7046         here sometime (with appropriate on-cvs-server hackery)
7047
7048         * tests/testtreeview.c, tests/Makefile.am: a test
7049         
7050         * configure.in (AC_OUTPUT): add tests/Makefile
7051
7052         * gtk/gtktexttag.c (gtk_text_tag_get_property): Add "invisible"
7053         and "invisible_set" which were missing
7054
7055         * gtk/gtkrbtree.h: some cheesy indentation fix
7056         
7057 2000-12-20  Alexander Larsson  <alexl@redhat.com>
7058
7059         * gtk/gtkinvisible.c (gtk_invisible_realize):
7060         Attach the style to the window so that the style it is not
7061         leaked when unrealizing the window.
7062
7063 2000-12-18  Havoc Pennington  <hp@redhat.com>
7064
7065         * gtk/gtktextview.c (gtk_text_view_delete_from_cursor): do
7066         begin/end user action where appropriate
7067         (gtk_text_view_commit_handler): add begin/end user action
7068
7069         * gtk/gtktextbuffer.c: add begin/end user action signals, and
7070         bracket interactive operations with begin/end user action pair.
7071         
7072         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): remove
7073         "interactive" arg from insert_text and delete_text signals.
7074         Add begin_user_action, end_user_action signals
7075         (gtk_text_buffer_begin_user_action): 
7076         (gtk_text_buffer_end_user_action): New functions to delimit 
7077         a user-visible action
7078
7079         * gtk/gtkmarshal.list: update to reflect changes to gtktextbuffer
7080         signals.
7081         
7082 2000-12-18  Havoc Pennington  <hp@redhat.com>
7083
7084         * gdk/gdkevents.c (gdk_event_get_state): wow, that implementation
7085         was pretty non-working.
7086
7087         * gtk/testtext.c (fill_file_buffer): make this a bit more robust
7088         by passing the length to g_utf8_validate().
7089
7090 2000-12-16  Havoc Pennington  <hp@pobox.com>
7091
7092         * gtk/gdk-pixbuf-loader.h, gtk/gdk-pixbuf-loader.c: 
7093         Port to GObject, can go back in gdk-pixbuf after setting up 
7094         a gdk-pixbuf-marshal.h header over there.
7095
7096         * gtk/gtktreeview.c: s/SEPERATOR/SEPARATOR/g;
7097         (gtk_tree_view_class_init): specify GTK_TYPE_ADJUSTMENT for signal
7098         args
7099         (gtk_tree_view_init): don't unset GTK_NO_WINDOW, it shouldn't be
7100         set
7101         (gtk_tree_view_realize_buttons): don't gtk_widget_show() buttons
7102         here, do it when we create the buttons later
7103         (gtk_tree_view_realize_buttons): add some g_return_if_fail 
7104         (gtk_tree_view_map): paranoia checks that column->button is shown 
7105         and unmapped
7106         (gtk_tree_view_size_request): only request visible children.
7107         Move header size calculation in here, for cleanliness, and 
7108         to maintain invariants for child widgets if we eventually 
7109         let users set different children inside the buttons
7110         (gtk_tree_view_map_buttons): factor out code to map buttons,
7111         since it was being called several times
7112         (gtk_tree_view_size_allocate_buttons): move_resize the drag
7113         windows instead of just moving them; their height may change 
7114         if we allow random widgets in there, or the theme changes.
7115         (gtk_tree_view_size_allocate): move button size allocation 
7116         above emitting the scroll signals, to ensure a sane state when we
7117         hit user code
7118         (gtk_tree_view_button_release): remove queue_resize after
7119         tree_view_set_size(), set_size() will handle any resize queuing
7120         that's needed
7121         (gtk_tree_view_focus_in): just queue a draw, don't fool with
7122         draw_focus goo
7123         (gtk_tree_view_focus): use gtk_get_current_event() and
7124         gdk_event_get_state()
7125         (gtk_tree_view_deleted): don't queue_resize() after calling set_size()
7126         (gtk_tree_view_build_tree): fix a "if (foo); {}" bug - i.e. remove
7127         semicolon
7128         (gtk_tree_view_create_button): show the button here
7129         (gtk_tree_view_button_clicked): actually emit the clicked signal
7130         on the column
7131         (_gtk_tree_view_set_size): return right away if the size is
7132         unchanged, as a cheesy optimization
7133         (gtk_tree_view_setup_model): rename set_model_realized to 
7134         setup_model to match the flag that indicates whether we've 
7135         called it
7136         (gtk_tree_view_get_hadjustment): create adjustment if it doesn't
7137         exist, because set_scroll_adjustment does that and it shouldn't
7138         matter what order you call these in
7139         (gtk_tree_view_get_vadjustment): ditto
7140         (gtk_tree_view_set_headers_visible): canonicalize the bool, 
7141         for paranoia
7142         (gtk_tree_view_set_headers_visible): call
7143         gtk_tree_view_map_buttons() instead of using cut-and-paste code
7144         (gtk_tree_view_append_column): clarify whether the return value
7145         is the count of columns before or after, and do the increment 
7146         separately from the return statement so you can tell from the code.
7147         (gtk_tree_view_remove_column): ditto
7148         (gtk_tree_view_insert_column): ditto
7149         (gtk_tree_view_get_column): remove g_return_if_fail for columns
7150         outside the existing range, the docs say that outside-range
7151         columns are allowed, so we handle them as documented. (Presumably
7152         this allows a nice loop with column != NULL as test.)
7153         (gtk_tree_view_move_to): document what 0.0, 0.5, 1.0 alignments 
7154         mean (left/right/center etc.).
7155         (gtk_tree_view_collapse_all): only queue a draw if we're mapped
7156         (gtk_tree_view_expand_row): add docs
7157         (gtk_tree_view_collapse_row): add docs
7158
7159         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clicked): new
7160         function to emit the clicked signal on a column
7161         
7162         * gdk/gdkevents.c (gdk_event_get_state): new function, to get the
7163         state of an event
7164         (gdk_event_get_time): don't treat GDK_SCROLL 
7165         as a button event, remove default case from switch so gcc 
7166         will whine if we don't explicitly handle all event types
7167
7168         * gtk/gtktreeselection.h: added some FIXME 
7169         
7170         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): rename
7171         "columns" to "n_columns" and "column" to "columns" for clarity
7172
7173 2000-12-16  Havoc Pennington  <hp@pobox.com>
7174         
7175         * gtk/gtktextiter.c: General cleanup of the log attr iteration
7176         stuff. This should make e.g. the delete key work again in the
7177         text widget...
7178         (gtk_text_iter_forward_cursor_positions): handle negative count
7179         (gtk_text_iter_backward_cursor_positions): handle negative count
7180         (gtk_text_iter_forward_word_ends): handle negative count
7181         (gtk_text_iter_backward_word_starts): handle negative count
7182
7183         * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktexttag.h,
7184         gtk/gtktexttag.c, gtk/gtktexttagtable.h, gtk/gtktexttagtable.c, 
7185         gtk/gtktextbuffer.h, gtk/gtktextbuffer.c: Convert everything to 
7186         GObject. No doubt will cause breakage.
7187
7188         * demos/gtk-demo/textview.c: remove hacks around
7189         non-GObject-ification of the text objects
7190
7191         * demos/gtk-demo/main.c (main): use g_object_set() to manipulate 
7192         the text tag
7193         
7194 2000-12-14  Havoc Pennington  <hp@pobox.com>
7195
7196         * configure.in: only AC_DEFINE(HAVE_XFT) if we actually determined
7197         that we have Xrender
7198
7199 Thu Dec 14 20:22:31 2000  Owen Taylor  <otaylor@redhat.com>
7200
7201         * gdk/{gdkdrawable.[ch],gdkpixmap.c,gdkwindow.c,x11/gdkwindow.c}:
7202         Add two virtualized functions gdk_drawable_get_clip_region - to
7203         get the clip region when drawing.
7204         
7205         * gdk/gdkwindow.c (gdk_window_invalidate_rect): Rewrite to simple
7206         use invalidate_region.
7207
7208         * gdk/gdkwindow.c (gdk_window_invalidate_region): Clip to visible
7209         region.
7210
7211         * acconfig.h configure.in: Check for Xft. For now, assume
7212         that if Xft is found, Pango was compiled with Xft support
7213         as well.
7214
7215         * gdk/gdkcolor.h gdk/x11/gdkcolor-x11.c: Add 
7216         gdk_colormap_query_color().
7217         
7218         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_glyphs): Draw
7219         with Xft if appropriate.
7220
7221         * gdk/x11/gdkpango-x11.c (gdk_pango_context_get): Create
7222         a pangoxft context if we have XFT and the environment
7223         variable GD_USE_XFT is set.
7224         
7225         * gdk/x11/gdkx.h (struct _GdkGCX11): Cache the fg_pixel
7226         and also possibly an XftDraw structure.
7227
7228         * gtk/gtkfontsel.c: Handle the case where the font from the
7229         style doesn't match any of the fonts a bit better.
7230         
7231         * gtk/testgtk.c: Add tabs between directional segments for
7232         hebrew/arabic test. (Not really necessary, just a little
7233         prettier.)
7234
7235 2000-12-14  Havoc Pennington  <hp@redhat.com>
7236
7237         * gtk/testtext.c (fill_file_buffer): fix unicode validation when
7238         reading a file
7239
7240 2000-12-14  Havoc Pennington  <hp@redhat.com>
7241
7242         * gtk/gtktextbtree.c (_gtk_text_btree_validate_line): remove
7243         unused call to get_last_line()
7244
7245         * gtk/gtkobject.c (gtk_object_add_arg_type): add G_TYPE_POINTER
7246         here until boxed is working (and maybe after that - we should
7247         really not gratuitously break old code)
7248
7249         * gtk/gtktexttag.c (gtk_text_tag_class_init): add commented-out
7250         specific types for font_desc and tabs args, move them to
7251         GTK_TYPE_POINTER for now, waiting on g_param_spec_boxed() to get 
7252         fixed. Move GdkColor args to GTK_TYPE_POINTER also.
7253
7254         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): temporarily
7255         use GTK_TYPE_POINTER for signal signatures as a hack-around
7256
7257         * gtk/gtk-boxed.defs: Add boxed types for PangoFontDescription and
7258         PangoTabArray
7259
7260         * gtk/gtktextlayout.c (line_display_iter_to_index): 
7261         make static
7262         (line_display_index_to_iter): make static
7263
7264         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
7265         to marshal a string not a boxed
7266
7267         * gtk/gtkmarshal.list: add marshaller for GtkTextBuffer:insert_text
7268
7269         * gtk/testtext.c (fill_file_buffer): don't use g_utf8_next_char
7270         since the UTF-8 isn't validated yet
7271
7272         * gtk/gtktextsegment.c (char_segment_check_func): don't require
7273         lines to end in '\n'
7274         
7275         * gtk/gtktextview.c (gtk_text_view_move_cursor): update to use
7276         forward_to_delimiters, and grapheme boundaries
7277         (gtk_text_view_delete_from_cursor): properly handle non-newline
7278         delimiters, and grapheme boundaries
7279
7280         * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): rename
7281         to gtk_text_iter_forward_to_delimiters, and make it work properly
7282         if empty lines end with a character other than '\n'
7283
7284         * gtk/gtktextiter.h, gtk/gtktextiter.c: Add movement by cursor
7285         position
7286
7287 2000-12-15  Tor Lillqvist  <tml@iki.fi>
7288
7289         * gdk/makefile.{mingw.in,msc} (gdk_OBJECTS): Add gdkkeys.
7290
7291         * gtk/gtk.def
7292         * gdk/gdk.def: Update.
7293
7294         * gdk/win32/gdkmain-win32.c
7295         * gdk/win32/gdkkeys-win32.c: New file. Move some functions from
7296         gdkmain-win32.c here.
7297
7298         * gdk/win32/makefile.mingw.in (all): No need to make
7299         gdk-win32res.o here, the makefile one step up will call us to make
7300         it.
7301
7302         * gdk/win32/makefile.{mingw.in,msc} (gdk_win32_OBJECTS): Add
7303         gdkkeys-win32.
7304
7305         * gdk/win32/gdkcolor-win32.c: Silence gcc -Wall.
7306
7307         * gdk/win32/gdkevents-win32.c (gdk_events_init): Remove leftover
7308         call to g_source_add().
7309
7310         * gdk/win32/gdkgc-win32.c (BitmapToRegion): Plug memory
7311         leak. Thanks to Andreas Kemnade.
7312
7313 2000-12-13  Havoc Pennington  <hp@pobox.com>
7314
7315         * gtk/gtktextbtree.h: Remove double _ in front of some functions
7316
7317         * gtk/gtktext*.[hc]: update accordingly
7318         
7319 2000-12-13  Havoc Pennington  <hp@pobox.com>
7320
7321         * gtk/gtktextbtree.h: Put _ in front of every function in this 
7322         header file
7323
7324         * gtk/gtktext*.[hc]: update to reflect renamed btree functions
7325
7326 2000-12-13  Alex Larsson  <alexl@redhat.com>
7327
7328         * gdk/linux-fb/gdkmouse-fb.c (mouse_devs):
7329         Add support for ps2 intellimouse.
7330
7331         * gdkkeyboard-fb.c:
7332         Move shift-F1 repaint handling to xlate handler only.
7333         
7334         * docs/README.linux-fb:
7335         Add imps2 to docs.
7336         Document the new refresh keys.
7337         
7338 Tue Dec 12 23:46:44 2000  Tim Janik  <timj@gtk.org>
7339
7340         * gtk/stock-icons/Makefile.am: doh, this was broken beyond believe.
7341
7342         * gtk/gtkbox.c: change property types from (u)long to (u)int for
7343         ::position and ::padding.
7344
7345         * gtk/gtkcontainer.c: make ::border_width an INT property.
7346
7347         * gtk/gtkpacker.c: make ::position an INT property.
7348
7349         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed):
7350         guard against NULL h/v scrollbars, since this is used at construction
7351         time.
7352
7353         * gtk/gtkclist.[hc]: nuked gtk_clist_construct(), implemented
7354         internal gtk_clist_constructor().
7355
7356         * gtk/gtkctree.[hc]: nuked gtk_ctree_construct(), implemented
7357         gtk_ctree_constructor().
7358
7359         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): property
7360         ::pulse_step should use ARG_PULSE_STEP, not ARG_FRACTION.
7361
7362         * docs/reference/Makefile.am: fun stuff, disabled docs generation
7363         again, gtk-scan.c needs to introspec paramspecs, not GtkAgs.
7364
7365         * gtk/gtkwidget.[hc]:
7366         removed gtk_widget_setv(), gtk_widget_getv(), gtk_widget_newv()
7367         and gtk_widget_get().
7368         (gtk_widget_new): use g_object_new_valist().
7369         (gtk_widget_set): use g_object_set_valist().
7370
7371         * gtk/gtkobject.[hc]:
7372         removed gtk_object_arg_get_info(), gtk_object_getv(),
7373         gtk_object_query_args(), gtk_object_newv(),
7374         gtk_object_class_add_signals(),
7375         gtk_object_class_user_signal_new(),
7376         gtk_object_class_user_signal_newv(),
7377         gtk_object_arg_set(), gtk_object_arg_get(),
7378         gtk_object_args_collect(),
7379         gtk_object_default_construct(),
7380         gtk_object_constructed(),
7381         GTK_CONSTRUCTED and GTK_OBJECT_CONSTRUCTED().
7382         removed nsignals, signals and n_args members from GtkObjectClass.
7383         (gtk_object_new): use g_object_new_valist().
7384         (gtk_object_set): use g_object_set_valist().
7385         (gtk_object_get): use g_object_get_valist().
7386         
7387         * gtk/gtkcompat.h: define gtk_object_default_construct().
7388         
7389         * gtk/gtktypeutils.c (gtk_type_new): create constructed objects via
7390         g_object_new().
7391
7392         * gtk/*.c: removed gtk_object_class_add_signals() from class_init()
7393         fucntions, cleaned up method assignments (make sure your structures
7394         are setup properly before calling out). removed all GTK_CONSTRUCTED
7395         hacks ;)
7396
7397 Tue Dec 12 11:52:16 2000  Owen Taylor  <otaylor@redhat.com>
7398
7399         * gtk/gtkclist.c (gtk_clist_optimal_column_width): Fix 
7400         off-by-one error in checks. (Dave Lambert)
7401
7402 2000-12-12  Alexander Larsson  <alexl@redhat.com>
7403
7404         * gdk/linux-fb/gdkkeyboard-fb.c (xlate_close, raw_close):
7405         Don't free gdk_fb_keyboard twice.
7406
7407 Tue Dec 12 08:24:42 2000  Tim Janik  <timj@gtk.org>
7408
7409         * gtk/testgtk.c:
7410         (create_tooltips): 
7411         (create_statusbar): get rid of object_signal:: GtkObject argument uses,
7412         use GObject swapped_signal:: properties instead.
7413
7414         * gtk/gtkcellrenderertoggle.c: 
7415         * gtk/gtkcellrenderertextpixbuf.c: 
7416         * gtk/gtkcellrenderertext.c: 
7417         * gtk/gtkcellrendererpixbuf.c: 
7418         * gtk/gtkcellrenderer.c:
7419         * gtk/gtktreeviewcolumn.c: s/[sg]et_param/[sg]et_property/, fixed
7420         missing warnings for invalid property ids, install properties
7421         with g_object_class_install_property() now.
7422         
7423         * gtk/gtksignal.c:
7424         (gtk_signal_emit): let g_signal_emit_valist() collect the values for us.
7425         
7426 Wed Oct 25 14:17:43 2000  Owen Taylor  <otaylor@redhat.com>
7427         
7428         * gtk/gtkwidget.[ch] (gtk_widget_is_focus): Add a function
7429         to determine if a window is the focus widget within
7430         its toplevel.
7431
7432         * gtk/gtkcontainer.[ch]: Fix the return type of ::focus
7433         to be boolean.
7434
7435         * gtk/gtkcontainer.c (gtk_container_real_focus): Move handling 
7436         of the case where the container CAN_FOCUS to here instead
7437         of having it in each individual move-the-focus place.
7438
7439         * gtk/gtkcontainer.c: Rewrite handling of left-right and up-down
7440         focusing to be geometric in a much more obvious sense. Arrowing
7441         around is still non-intuitive because it isn't perfect and
7442         because entries, etc, grab the arrow keys, but it at least
7443         usually will do what you expect now.
7444         
7445         * gtk/gtknotebook.[ch]: Many cleanups. Moved docs inline in this
7446         file.
7447
7448         * gtk/gtknotebook.c: Change tabs to be a single item in
7449         the focus chain. Make movement of focus on tabs with arrow
7450         keys wrap around.
7451         
7452         * gtk/gtknotebook.c (gtk_notebook_find_child): Add
7453         CHECK_FIND_CHILD macro to give informative error messages
7454         instead of silent returns.
7455
7456         * gtk/gtknotebook.c (gtk_notebook_init): Set the RECEIVES_DEFAULT 
7457         flag since we handle GdkReturn on the tabs.
7458
7459         * gtk/gtknotebook.c (gtk_notebook_expose_tabs): Invalidate
7460         windows rather than sending expose events directly.
7461
7462         * gtk/gtknotebook.[ch] docs/Changes-2.0.txt: Move structure 
7463         definition for GtkNotebookPage into .c file, since it is private.
7464
7465         * gtk/testgtk.c (create_notebook): Add option for 
7466         testing borderless notebook.
7467
7468         * gtk/testgtk.c (page_switch): Removed egregious poking
7469         around in GTK+ internals.
7470
7471         * docs/widget-system.txt: Remove references to GTK_REDRAW_PENDING.
7472
7473         * gtk/gtkclist.[ch]: Remove key press handler, handle focusing
7474         properly through gtk_clist_focus. Make the title headers a
7475         single item in the tab-focus chain, and make left-right wrap
7476         around.
7477
7478         * gtk/gtkwindow.c (gtk_window_focus): Add a custom
7479         focus method so that wrapping around works properly.
7480
7481         * gtk/gtktreeview.c: Remove calls to gtk_container_set_focus_child() - 
7482         that is handled for the widget now. 
7483
7484 Mon Dec 11 11:41:12 2000  Owen Taylor  <otaylor@redhat.com>
7485
7486         * gtk/gtkinvisible.c (gtk_invisible_init): Flag invisible
7487         widgets as TOPLEVEL.
7488
7489         * gtk/gtkwidget.c (gtk_widget_queue_resize): Don't assume
7490         TOPLEVEL widgets are containers.
7491
7492         * gtk/gtkinvisible.h: Remove useless include.
7493
7494 2000-12-11  Havoc Pennington  <hp@redhat.com>
7495
7496         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): 
7497         Handle chopping off \r\n and 0x2029 in addition to \n before
7498         passing to PangoLayout
7499
7500         * gtk/gtkimcontextsimple.c
7501         (gtk_im_context_simple_get_preedit_string): 
7502         return an empty string if no match is pending
7503
7504         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): add
7505         assertion that the returned preedit string was sane
7506
7507         * gtk/gtktext*.[hc], gtk/testtext.c, gtk/testtextbuffer.c:
7508         s/gtk_text_iter_next_char/gtk_text_iter_forward_char/g;
7509         s/gtk_text_iter_prev_char/gtk_text_iter_backward_char/g;
7510
7511 Mon Dec 11 10:02:26 2000  Owen Taylor  <otaylor@redhat.com>
7512
7513         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_finalize): 
7514         Fix up finalizer to chain to its parent.
7515
7516 2000-12-11  Alexander Larsson  <alexl@redhat.com>
7517
7518         * docs/README.linux-fb (GDK_KEYBOARD_TYPE):
7519         Clearified the difference between the keyboard types. Wrote a note
7520         about the magic sysrq key to get out of raw mode.
7521
7522 2000-12-09  James Henstridge  <james@daa.com.au>
7523
7524         * gdk/linux-fb/gdkmouse-fb.c (GdkFBMouseDevice): add prot struct
7525         member to hold masks for detecting the start of a protocol packet.
7526         (mouse_devs): add packet start masks for ps2 and ms device types.
7527         Left the mask for fidmour blank, as I have no idea what it should
7528         be.
7529         (handle_mouse_io): skip bytes until we get to the start of a
7530         packet.  My Logitech mouse seems to be passing an extra NULL pad
7531         byte, and GPM does a similar thing here.
7532         (gdk_fb_mouse_ms_open): changed error message to not say psaux, as
7533         this is the ms mouse driver.
7534         (gdk_fb_mouse_ms_packet): fix up button handling, which was
7535         completely broken except for button1.  It was checking the wrong
7536         bit in the packet for the status of the right mouse button, and
7537         wrongly assuming right == button2 rather than 3.  I fixed that and
7538         also added support for middle button (button2).
7539
7540 2000-12-08  Havoc Pennington  <hp@redhat.com>
7541
7542         * gtk/gtktextbtree.c (gtk_text_btree_insert): fix breakage here
7543         that cause a segfault on text insertion
7544
7545         * gtk/gtktextchild.c (gtk_text_child_anchor_queue_resize): fix 
7546         warning
7547
7548         * gtk/gtktextiter.c (test_log_attrs): use
7549         _gtk_text_buffer_get_line_log_attrs to speed things up a bit
7550
7551         * gtk/gtktextbuffer.c (_gtk_text_buffer_get_line_log_attrs): 
7552         Get log attrs for a line, using a cache stored on the buffer
7553         
7554         * gtk/gtkcolorsel.h (GTK_COLOR_SELECTION_GET_CLASS): fix typo,
7555         reported by Jeff Franks
7556
7557 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
7558
7559         * gdk/linux-fb/gdkmouse-fb.c (gdk_fb_mouse_ms_open):
7560         /dev/ttyS0 -> /dev/mouse
7561
7562 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
7563
7564         * gdk/linux-fb/gdkfont-fb.c (gdk_fontset_load):
7565         Added dummy gdk_fontset_load.
7566
7567 2000-12-08  Alexander Larsson  <alexl@redhat.com>
7568
7569         * docs/README.linux-fb:
7570         * docs/Makefile.am:
7571         Initial GtkFB docs.
7572         
7573         * gdk/linux-fb/Makefile.am:
7574         Define GDK_DATA_PREFIX.
7575
7576         * gdk/linux-fb/gdkmain-fb.c:
7577         Fix typo.
7578         Change default display to /dev/fb0.
7579
7580         * gdk/linux-fb/gdkpango-fb.c:
7581         Add $(prefix)/share/fonts/ to font path.
7582         
7583 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
7584
7585         * gdk/linux-fb/gdkkeyboard-fb.c:
7586         New file containing the abstracted keyboard driver. Most code
7587         taken from gdkinput-ps2.c
7588
7589         * gdk/linux-fb/gdkinput-ps2.c:
7590         Removed file.
7591         
7592         * gdk/linux-fb/Makefile.am:
7593         Added gdkkeyboard-fb.c, removed gdkinput-ps2.c.
7594
7595         * gdk/linux-fb/gdkcolor-fb.c:
7596         display->fb was renamed to display->fb_fd.
7597
7598         * gdk/linux-fb/gdkcursor-fb.c:
7599         gdk_mouse_get_info -> gdk_fb_mouse_get_info
7600
7601         * gdk/linux-fb/gdkinput.c:
7602         Moved gdk_input_init here from gdkinput-ps2.c
7603
7604         * gdk/linux-fb/gdkmain-fb.c:
7605         display->fb was renamed to display->fb_fd.
7606         Now the tty and the console is opened here instead
7607         of in the keyboard driver. Also check GDK_VT to see what
7608         tty to open.
7609         Move gdk_beep () here from gdkinput-ps2.c
7610         gdk_mouse_get_info -> gdk_fb_mouse_get_info
7611
7612         * gdk/linux-fb/gdkmouse-fb.c:
7613         Add header.
7614         gdk_mouse_get_info -> gdk_fb_mouse_get_info
7615         Return correct keyboard modifiers.
7616         GDK_MOUSETYPE -> GDK_MOUSE_TYPE for consistancy
7617
7618         * gdk/linux-fb/gdkprivate-fb.h:
7619         Add tty and vt info to display.
7620         Add orignal modeinfo storage to display
7621         Update global functions
7622
7623         * gdk/linux-fb/gdkwindow-fb.c:
7624         Added gdk_fb_window_find_focus().
7625         gdk_mouse_get_info -> gdk_fb_mouse_get_info
7626
7627 2000-12-07  Havoc Pennington  <hp@pobox.com>
7628
7629         * gdk/x11/gdkkeys-x11.c (gdk_keymap_lookup_key): fix name of 
7630         function, noticed by Alex
7631
7632 2000-12-06  Elliot Lee  <sopwith@redhat.com>
7633
7634         * configure.in: Detect freetype properly
7635
7636         * modules/basic/Makefile.am, gdk/linux-fb/Makefile.am: Make use of
7637         above.
7638
7639 2000-12-06  Alexander Larsson  <alexl@redhat.com>
7640
7641         * gdk/linux-fb/Makefile.am:
7642         Add gdkmouse-fb.c
7643         
7644         * gdk/linux-fb/gdkmouse-fb.c:
7645         New file. Abstracted the mouse drivers a bit.
7646
7647         * gdk/linux-fb/gdkcursor-fb.c:
7648         The cursor hide/show functions was moved here from gdkinput-ps2.c.
7649
7650         * gdk/linux-fb/gdkinput-ps2.c:
7651         Removed old mouse handling code. Moved cursor handling code
7652         to gdkcursor-fb.c, moved gdk_fb_window_send_crossing_events() to
7653         gdkwindow-fb.c. gdk_input_get_mouseinfo was renamed to
7654         gdk_mouse_get_info.
7655
7656         * gdk/linux-fb/gdkmain-fb.c:
7657         Pass NULL pointers for x,y in gdk_mouse_get_info call.
7658
7659         * gdk/linux-fb/gdkprivate-fb.h:
7660         Removed public gdk_fb_find_common_ancestor, added and renamed
7661         functions for the new mouse handling code.
7662
7663         * gdk/linux-fb/gdkwindow-fb.c:
7664         Moved gdk_fb_window_send_crossing_events here. added global
7665         variable gdk_fb_window_containing_pointer. made
7666         gdk_fb_find_common_ancestor static. gdk_input_get_mouseinfo was
7667         renamed to gdk_mouse_get_info.
7668
7669 2000-12-06  Alexander Larsson  <alexl@redhat.com>
7670
7671         * gdk/linux-fb/gdkevents-fb.c:
7672         Update to match latest gmain/gsource changes.
7673
7674         * gdk/linux-fb/gdkinput-ps2.c:
7675         Bogus gdk_keymap_get_entries_for_keycode implementation so that
7676         it links. Will be implemented later.
7677
7678 2000-12-03  Havoc Pennington  <hp@pobox.com>
7679
7680         * gdk/Makefile.am: add gdkkeys.[hc]
7681
7682         * gdk/gdkkeys.h, gdk/gdkkeys.c: Move all the keyval stuff to these
7683         files from gdk.h, gdk.c; add GdkKeymap type and operations on it.
7684
7685         * acconfig.h, configure.in: add checks and command line options
7686         for XKB
7687
7688         * gdk/x11/gdkkeys-x11.c: Implement the above functions
7689         
7690         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Put the keycode
7691         and group in the key event
7692
7693         * gdk/gdkevents.h (struct _GdkEventKey): Add a hardware_keycode
7694         field with the low-level hardware key code, and a group
7695         field with the keyboard group
7696
7697         * gdk/x11/gdkprivate-x11.h: include config.h for HAVE_XKB,
7698         and declare a couple globals used for keymap handling
7699         
7700         * gtk/gtkimcontextsimple.c: Implement ISO 14755 input method,
7701         hold down Shift-Control and type a hex number to get a Unicode 
7702         character corresponding to the hex number
7703         (gtk_im_context_simple_get_preedit_string): Fix cursor position
7704         (return bytes not chars)
7705
7706 2000-12-05  Elliot Lee  <sopwith@redhat.com>
7707
7708         * gdk/gdkcolor.h: Make GdkColor specify element sizes
7709         to avoid waste on 64-bit platforms.
7710
7711 Tue Dec  5 15:49:31 2000  Owen Taylor  <otaylor@redhat.com>
7712
7713         * INSTALL: Fix link to PNG home, remove reference
7714         to fribidi.
7715
7716         * gdk/x11/gdkevents-x11.c: Fix up for new GMain API.
7717         
7718         * gdk/win32/gdkevents-win32.c: Fix up for new GMain API. (Not
7719         tested.)
7720
7721         * gtk/gtkcheckmenuitem.c: Permanently turn on
7722         always_show_toggle.
7723
7724         * gtk/gtkclist.c (gtk_clist_get_pixtext): Allow mask to 
7725         be NULL. (Vladimir Klebanov, #26545)
7726
7727         * gtk/gtkspinbutton.c (gtk_spin_button_insert_text): Fix 
7728         some signed/unsigned comparison problems. (#6510,
7729         David Kaelbling)
7730
7731         * gtk/gtkwidget.[ch] (gtk_widget_is_ancestor): Change
7732         return type to boolean (Oskar Liljeblad, #18648)
7733
7734 2000-12-05  Alexander Larsson  <alexl@redhat.com>
7735
7736         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_display_new):
7737         Remove bogus colormap setting.
7738
7739 2000-12-05  Alexander Larsson  <alexl@redhat.com>
7740
7741         * gdk/linux-fb/gdkcolor-fb.c:
7742         More complete colormap handling. Now GdkRGB work in 8 bpp modes.
7743
7744         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_image):
7745         Must set colormap.
7746         
7747 Tue Dec  5 13:17:53 GMT 2000  Tony Gale <gale@gtk.org>
7748
7749         * docs/tutorial/gtk-tut.sgml: DND updates
7750
7751 2000-12-05  Alexander Larsson  <alla@lysator.liu.se>
7752
7753         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
7754         Remove old debug g_warning().
7755         (gdk_fb_draw_drawable): The src argument can be either a wrapper
7756         or an implementation, just pass the implementation to draw_drawable_2.
7757         
7758         * gdk/linux-fb/gdkprivate-fb.h:
7759         Added GDK_IS_DRAWABLE_IMPL_FBDATA()
7760
7761         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
7762         clear and invalidate area when window is destroyed.
7763         (send_map_events): Remove old commented out code.
7764
7765 2000-12-05  Alexander Larsson  <alexl@redhat.com>
7766
7767         * gdk/linux-fb/gdkpango-fb.c:
7768         Use italic instead of oblique in font aliases.
7769         
7770         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic,
7771         _gdk_fb_gc_calc_state): Support GDK_XOR, add g_warning for
7772         other unsupported functions.
7773
7774 2000-12-04  Havoc Pennington  <hp@redhat.com>
7775
7776         * gtk/gtkpaned.c (gtk_paned_expose): fix this to be sane
7777
7778         * gtk/gtkvpaned.c (gtk_vpaned_expose): Add an expose handler
7779
7780         * gtk/gtkhpaned.c (gtk_hpaned_expose): Add an expose handler
7781
7782         * gtk/gtknotebook.c (gtk_notebook_draw_tab): put in a temporary 
7783         hack to avoid infinite loops (synthetic expose event) - 
7784         Owen has more appropriate fixes in a branch he'll check in later.
7785
7786         * gtk/gtktextiter.c (gtk_text_iter_ends_line): handle paragraph
7787         separator, CR, and CRLF as line ends
7788
7789         * gtk/gtktextbtree.c (gtk_text_btree_insert): on insertion, break
7790         into lines using pango_find_paragraph_boundary(); other bits of
7791         the widget are still going to be broken if the boundary isn't '\n'
7792         though
7793
7794 2000-12-04  Alexander Larsson  <alexl@redhat.com>
7795
7796         * gdk/linux-fb/gdkfont-fb.c (gdk_text_width): Divide size by 2, not
7797         multiply.
7798
7799         * gdk/linux-fb/gdkpango-fb.c:
7800         Copied some 26.6 scaling macros from pango to clean up the rounding.
7801         (pango_fb_font_get_glyph_info): Correct sign on x value.
7802
7803         * gdk/linux-fb/gdkprivate-fb.h:
7804         Removed unreferenced external functions.
7805
7806         * modules/linux-fb/Makefile.am: Use ` instead of '.
7807
7808         * modules/linux-fb/basic.c:
7809         Remove dead code. In particular the dummy lang engine which broke all
7810         pango layouts in GtkFB. Don't include tables-big.i anymore.
7811
7812         * modules/linux-fb/tables-big.i:
7813         Upgrade to latest version from pango. Left for reference, basic_ranges
7814         moved to basic.c.
7815         
7816 2000-12-04  Havoc Pennington  <hp@redhat.com>
7817
7818         Fix bugs Alex found:
7819         
7820         * gtk/gtktooltips.c (gtk_tooltips_force_window): nuke connection
7821         to "draw"
7822
7823         * gtk/gtkdnd.c (gtk_drag_highlight): nuke connection to "draw"
7824
7825         * gtk/gtkcolorsel.c (palette_new): nuke connection to "draw"
7826
7827         * gtk/gtklistitem.c (gtk_list_item_expose): Put the old _draw() 
7828         implementation in here, apparently the expose() implementation was
7829         dead code.
7830
7831 2000-12-04  Alexander Larsson  <alexl@redhat.com>
7832
7833         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
7834         Return positive descent.
7835
7836 2000-12-02  Havoc Pennington  <hp@pobox.com>
7837
7838         * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove "draw" virtual
7839         method and signal
7840         
7841         * gtk/gtkwidget.c (gtk_widget_draw): Now just queues a draw then
7842         calls gdk_window_process_updates() to push the exposes through
7843         (gtk_widget_class_init): No more draw signal, no
7844         gtk_widget_real_draw()  
7845         
7846         * gtk/gtkbin.c (gtk_bin_draw): remove
7847
7848         * gtk/gtkbox.c (gtk_box_draw): remove
7849
7850         * gtk/gtkbutton.c (gtk_button_draw): remove
7851
7852         * gtk/gtkcalendar.c (gtk_calendar_draw): remove
7853
7854         * gtk/gtkcheckbutton.c (gtk_check_button_draw): remove
7855
7856         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_draw): remove
7857
7858         * gtk/gtkclist.c (gtk_clist_draw): remove
7859
7860         * gtk/gtkentry.c (gtk_entry_draw): remove
7861
7862         * gtk/gtkeventbox.c (gtk_event_box_draw): remove
7863
7864         * gtk/gtkfixed.c (gtk_fixed_draw): remove
7865
7866         * gtk/gtkframe.c (gtk_frame_draw): remove
7867
7868         * gtk/gtkhandlebox.c (gtk_handle_box_draw): remove
7869
7870         * gtk/gtkhpaned.c (gtk_hpaned_draw): remove
7871
7872         * gtk/gtklayout.c (gtk_layout_draw): remove
7873
7874         * gtk/gtklist.c (gtk_list_draw): remove
7875
7876         * gtk/gtklistitem.c (gtk_list_item_draw): remove
7877
7878         * gtk/gtkmenu.c (gtk_menu_draw): remove
7879
7880         * gtk/gtkmenubar.c (gtk_menu_bar_draw): remove
7881
7882         * gtk/gtkmenuitem.c (gtk_menu_item_draw): remove
7883
7884         * gtk/gtknotebook.c (gtk_notebook_draw): remove
7885
7886         * gtk/gtkoptionmenu.c (gtk_option_menu_draw): remove
7887
7888         * gtk/gtkpacker.c (gtk_packer_draw): remove
7889
7890         * gtk/gtkrange.c (gtk_range_draw): remove
7891
7892         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_draw): remove
7893
7894         * gtk/gtkspinbutton.c (gtk_spin_button_draw): remove
7895
7896         * gtk/gtktable.c (gtk_table_draw): remove
7897
7898         * gtk/gtktearoffmenuitem.c (gtk_tearoff_menu_item_draw): remove
7899
7900         * gtk/gtktext.c (gtk_text_draw): remove
7901
7902         * gtk/gtktextview.c (gtk_text_view_draw): remove
7903
7904         * gtk/gtktogglebutton.c (gtk_toggle_button_draw): remove
7905
7906         * gtk/gtktoolbar.c (gtk_toolbar_draw): remove
7907
7908         * gtk/gtktree.c (gtk_tree_draw): remove
7909
7910         * gtk/gtktreeitem.c (gtk_tree_item_draw): remove
7911
7912         * gtk/gtktreeview.c (gtk_tree_view_draw): remove
7913
7914         * gtk/gtkviewport.c (gtk_viewport_draw): remove
7915
7916         * gtk/gtkvpaned.c (gtk_vpaned_draw): remove
7917
7918         * gtk/gtkvscale.c (gtk_vscale_draw): remove
7919
7920         * gtk/gtkwindow.c (gtk_window_draw): remove
7921
7922 2000-20-01  Anders Carlsson  <andersca@gnu.org>
7923
7924         * gtk/gtktogglebutton.c (gtk_toggle_button_draw): Fix bug when
7925         a GtkToggleButton is both insensitive and active, it was being
7926         drawn by the GtkButton draw handler which doesn't check the
7927         state. Now it's calling gtk_toggle_button_paint instead.
7928         
7929 2000-12-01  Havoc Pennington  <hp@redhat.com>
7930
7931         * gtk/gtktextdisplay.c (gtk_text_layout_draw): don't create
7932         dangling pointers to the appearance attributes from the 
7933         line display
7934
7935         * gdk/gdkdraw.c (gdk_drawable_get_image): allow negative
7936         width/height to mean "full width/height of drawable"
7937
7938         * gtk/gtktextview.h, gtk/gtktextview.c: Implement double/triple
7939         click to select word/line
7940         
7941         * gtk/gtktextiter.c (test_log_attrs): include paragraph delimiters 
7942         when getting log attrs. Get a slice, so that pixmaps and stuff
7943         are properly handled.
7944
7945         * gtk/gtktextbuffer.c (paste): Fix pasting to work properly if you
7946         paste into the selection (replaces selection now, previously
7947         crashed or added to selection). Reveals longstanding btree bug -
7948         select multiple lines, middle-click on the selection, boom. This
7949         isn't related to my changes though.
7950
7951         * gtk/gtkentry.c (gtk_entry_move_forward_word): Update to reflect
7952         PangoLogAttrs changes
7953         (gtk_entry_move_backward_word): ditto
7954
7955         * gtk/gtktextlayout.h, gtk/gtktextlayout.c: Make the iter motion
7956         functions return bool whether the iter moved onto a
7957         dereferenceable position.
7958  
7959         * gtk/gtktextview.h, gtk/gtktextview.c: Add a bunch of public
7960         functions for motion in terms of display lines.
7961
7962         * gtk/gtktextmark.c (gtk_text_mark_get_buffer): Add function to
7963         get the buffer a mark is inside
7964         
7965 2000-12-01  Alexander Larsson  <alexl@redhat.com>
7966
7967         * gdk/linux-fb/Makefile.am:
7968         * modules/linux-fb/Makefile.am:
7969         Freetype 2 final uses freetype-config
7970
7971         * gdk/linux-fb/gdkpango-fb.c:
7972         Upgrade to use Freetype 2 final.
7973         More flexible support for font aliases, this also fixes a bug with
7974         GtkFontSelector, as the aliases must be visible in the font/family list,
7975         or GtkFontSelector reads uninitialized memory.
7976
7977 2000-11-30 Hidetoshi Tajima  <tajima@eng.sun.com>
7978
7979         * modules/input/gtkimcontextxim.c (setup_im): Add NULL argument to
7980         XGetIMValues to properly terminate variable argument list, and do
7981         NULL return check for ic_values and xim_styles.
7982
7983         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset):
7984         Restore preedit state after XmbResetIC().
7985         
7986         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_get_ic):
7987         XvaCreateNestedList() should take XvaNestedList, but not
7988         XvaNestedList*.
7989
7990         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset,
7991         preedit_draw_callback, preedit_caret_callback): Match
7992         "preedit-changed" signal name to "preedit_changed" to be
7993         consistent to the spec.
7994
7995         * gtk/gtkimcontextsimple.c (check_table):
7996         Match "preedit-changed" to "preedit_changed" to be consistent
7997         to the spec.
7998
7999 Thu Nov 30 23:03:04 2000  Owen Taylor  <otaylor@redhat.com>
8000
8001         * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Properly handle
8002         gc->clip_region == NULL>
8003
8004 2000-11-30  Tor Lillqvist  <tml@iki.fi>
8005
8006         Changes by Hans Breuer:
8007         
8008         * gdk/win32/gdkwindow-win32.c (gdk_window_set_geometry_hints):
8009         Dont't use negative width and height as max_hints. This fixes
8010         Owen's recent testgtk changes for win32.
8011
8012         * gdk/win32/gdkgc-win32.c (gdk_win32_hdc_get,
8013         gdk_win32_hdc_release): These are exported and may be called with
8014         other drawable types than our GdkDrawableImplWin32 (?).
8015
8016         * gdk/gdkwindow.c: Backing store appears to work on Windows now,
8017         so always #define USE_BACKING_STORE.
8018
8019         * gtk/gtktextdisplay.c (render_layout_line): Use g_print instead
8020         of printf for debugging output.
8021
8022         * gtk/gtktextlayout.c (allocate_child_widgets): Ditto.
8023         
8024         * gtk/gtktextview.c (gtk_text_view_child_allocated): Ditto.
8025
8026         * gtk/gtkmain.h (GTKMAIN_C_VAR): Win32 fix for dllimport
8027         declaration.
8028
8029         * gtk/gtktexttypes.h: Ditto.
8030
8031         * gtk/gtklabel.c (gtk_label_set_markup_with_accel): Return a value
8032         (GDK_VoidSymbol) also if in case of arg check failure.
8033
8034         * gtk/gtkimcontextsimple.c
8035         (gtk_im_context_simple_get_preedit_string): Don't assign cursor
8036         position to the pointer, but to the variable it points to.
8037
8038         * gtk/makefile.msc.in (DEFINES): Define GTK_VERSION.
8039
8040         * gtk/gtk.def: Updates.
8041
8042 2000-11-29  Elliot Lee  <sopwith@redhat.com>
8043
8044         * gtk/gtkmodelsimple.c: Inherits from GTK_TYPE_OBJECT, not
8045         GTK_TYPE_TREE_MODEL.
8046
8047 2000-11-29  Alexander Larsson  <alexl@redhat.com>
8048
8049         * gdk/linux-fb/gdkfont-fb.c (gdk_font_from_description):
8050         Set the size of the font from the description.
8051         (gdk_text_width): Gross hack that calculates the width
8052         of text by text_length * size/2. This is necessary because
8053         GtkLabel does some ugly gtk_string_width call to calculate
8054         an good size.
8055         (linux-fb/gdkprivate-fb.h): Removed unused field FT_Face.
8056
8057 Wed Nov 29 13:39:19 GMT 2000  Tony Gale <gale@gtk.org>
8058
8059         * docs/tutorial/gtk-tut.sgml: DND updates
8060
8061 2000-11-29  Alexander Larsson  <alexl@redhat.com>
8062
8063         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_clear_area):
8064         If you pass width or height == 0 to gdk_window_clear_area they
8065         should be calculated from the window size.
8066
8067 2000-11-29  Alexander Larsson  <alexl@redhat.com>
8068
8069         * gdk/linux-fb/gdkinput-ps2.c (move_pointer): If there is
8070         a grab, but no grab-cursor, use the cursor from the grabbed
8071         window. (gdk_fb_window_send_crossing_events): Send normal
8072         enter/leave notifications if grab and owner_events == TRUE.
8073
8074 2000-11-29  Alexander Larsson  <alexl@redhat.com>
8075
8076         * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
8077         Do implicit button grabs, even if the window doesn't
8078         want the event.
8079         (gdk_fb_window_send_crossing_events): If there is a
8080         grab, only the grabbed window gets normal enter/leave
8081         notifications. On ungrab go from grabbed window to current.
8082         Don't send any notification to b when propagating from c -> b.
8083         If setting a grab on window, don't set prev_window.
8084         (handle_mouse_input): Send enter/leave events to the window the
8085         mouse is over, not the grabbed one.
8086         
8087 2000-11-28  Elliot Lee  <sopwith@redhat.com>
8088
8089         * gdk/gdkregion-generic.c: Zap warning.
8090         * modules/input/Makefile.am: Only build im-xim if USE_X11 is enabled
8091         * gtk/gtkrc.c: s/strcpy/memcpy/ to save a few nanoseconds.
8092
8093 2000-11-28  Alexander Larsson  <alla@lysator.liu.se>
8094
8095         * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
8096         The cursor should be hidden if it is part of either the
8097         source or destination region. Not only if it is in both.
8098         (gdk_window_set_transient_for): Silence warnings.
8099
8100 2000-11-28  Alexander Larsson  <alexl@redhat.com>
8101
8102         * gdk/linux-fb/mifillarc.c (miFillArcSliceSetup):
8103         The default mode in X is Pie Arcs, therefore that is
8104         what Gtk+ uses.
8105
8106 2000-11-28  Alexander Larsson  <alexl@redhat.com>
8107
8108         * gdk/linux-fb/gdkinput-ps2.c:
8109         Implement correct EnterNotify/LeaveNotify:
8110         (gdk_fb_window_send_crossing_events): New function that sends
8111         all GdkCrossingEvents from the last mouse-window to the specified
8112         destination.
8113         (gdk_fb_window_visibility_crossing): Removed function.
8114         (handle_mouse_input): Use gdk_fb_window_send_crossing_events()
8115         (send_button_event, gdk_fb_cursor_reset): Use gdk_window_at_pointer
8116         instead of gdk_window_get_pointer() for better readability.
8117
8118         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab,
8119         gdk_fb_pointer_ungrab): Use gdk_fb_window_send_crossing_events.
8120
8121         * gdk/linux-fb/gdkprivate-fb.h:
8122         removed gdk_fb_window_visibility_crossing, added
8123         gdk_fb_window_send_crossing_events and gdk_fb_find_common_ancestor.
8124
8125         gdk/linux-fb/gdkwindow-fb.c (gdk_fb_find_common_ancestor):
8126         New function that finds the least common ancestor of two windows.
8127         (gdk_window_show, gdk_window_hide):
8128         Use gdk_fb_window_send_crossing_events.
8129         (gdk_fb_window_move_resize): Send configure events to toplevel
8130         windows. Use gdk_fb_window_send_crossing_events.
8131
8132 2000-11-27  Havoc Pennington  <hp@redhat.com>
8133
8134         * gtk/gtkprivate.h (enum): Remove a trailing comma
8135
8136 2000-11-27  Federico Mena Quintero  <federico@helixcode.com>
8137
8138         * gtk/gtkspinbutton.c (gtk_spin_button_set_adjustment): Connect to
8139         the "changed" callback of the adjustment.  We need to redraw the
8140         spin button's arrows when the adjustment's range changes.
8141         (adjustment_changed_cb): Draw the arrows.
8142         (gtk_spin_button_value_changed): Draw the arrows.
8143
8144 2000-11-23  Alexander Larsson  <alexl@redhat.com>
8145
8146         * gdk/linux-fb/gdkselection-fb.c:
8147         Initial selection implementation.
8148
8149         * gtk/gtkselection.c:
8150         if GDK_WINDOWING_FB defined, include linux-fb/gdkfb.h and look up
8151         requestor in gtk_selection_request.
8152         
8153         * gdk/linux-fb/gdkfb.h, gdk/linux-fb/gdkglobals-fb.c:
8154         Added gdk_selection_property atom.
8155
8156         * gdk/linux-fb/gdkprivate-fb.h:
8157         Export _gdk_selection_window_destroyed.
8158         Removed mask_off_x/y from GdkCursorPrivateFB.
8159         Removed hbearing, added top, left to PangoFBGlyphInfo.
8160
8161         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
8162         Call _gdk_selection_window_destroyed
8163         (_gdk_windowing_window_init): Don't call gdk_cursor_new() before
8164         the root window has been created.
8165         (static_dx_hack, static_dy_hack, compare_draw_rects,
8166         gdk_fb_window_move_resize): Remove unnecessary sort of rectangles
8167         in region. They are already sorted. Instead just traverse them in
8168         reverse if draw_direction < 0.
8169         
8170         * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
8171         Double-clicks must be sent after the normal button_press.
8172         (gdk_fb_cursor_unhide): Remove usage of mask_off_x/y. Clean up.
8173         
8174         * gdk/linux-fb/gdkgeometry-fb.c (gdk_window_scroll):
8175         Pass _gdk_fb_screen_gc instead of NULL.
8176
8177         * gdk/linux-fb/gdkmain-fb.c (_gdk_windowing_init_check):
8178         Initialize gdk_selection_property.
8179         (gdk_event_make): Remove unused code.
8180
8181         * gdk/linux-fb/gdkcursor-fb.c:
8182         Make the pixmap for the cursor the same size as the mask. Also remove
8183         the mask_off_x/y fields in GdkCursorPrivateFB and combine
8184         _gdk_cursor_new_from_pixmap() and gdk_cursor_new_from_pixmap()
8185         Now the whole cursor is visible.
8186
8187         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
8188         Fix bug where xdest+height instead of ydest+height was used
8189         to calculate if the source and dest overlapped. This fixes the
8190         redraw bug when the main window in testgtk was scrolled when
8191         partially covered by a tall window.
8192         Copy rectangles in region in order depending on draw_direction.
8193         Also moved the draw_direction flipping of start_y and end_y into
8194         the gc functions, as this might not be what all of them want.
8195         (gdk_fb_draw_lines): Support dashed lines.
8196         (gdk_fb_draw_glyphs): Clean up glyph placement. Also fix positioning
8197         so that the text is positioned correctly (was 1 pixel high).
8198
8199         gdk/linux-fb/gdkgc-fb.c:
8200         Initialize cap_style to GTK_CAP_BUTT. This fixes a problem where
8201         all lines were drawn a pixel to short. Also checked the default of
8202         the rest of the values, and they're the same as X now.
8203
8204         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_glyph_info):
8205         Clean up pixel positioning of the glyphs. Just use bgy->top and
8206         bgy->left. Also used PANGO_PIXEL where appropriate and added 0.5
8207         to all divisions to get correct rounding behaviour.
8208
8209         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_draw_drawable_generic,
8210         gdk_fb_draw_drawable_memmove, gdk_fb_draw_drawable_aa_24):
8211         Moved start_y/end_y flip into draw_drawable implementations.
8212         Flip also x rendering when draw_direction < 0.
8213         Remove unneccesary multiply with draw_direction.
8214
8215 Wed Nov 22 14:11:19 GMT 2000  Tony Gale <gale@gtk.org>
8216
8217         * docs/tutorial/gtk-tut.sgml:
8218           - get rid of gtk_toggle_button_toggled FUD
8219           - start DND section - needs work - based on:
8220                 http://wolfpack.twu.net/docs/gtkdnd/
8221
8222 2000-11-22  Alexander Larsson  <alexl@redhat.com>
8223
8224         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
8225         Correct calculation of font metrics. Now GtkEntrys have sane
8226         size.
8227
8228 2000-11-22  Alexander Larsson  <alexl@redhat.com>
8229
8230         * gdk/gdktypes.h:
8231         Add new type GdkSpan
8232         
8233         * docs/reference/gdk/gdk-sections.txt,
8234         docs/reference/gdk/tmpl/regions.sgml, gdk/gdkregion-generic.c,
8235         gdk/gdkregion.h:
8236         Implement and document gdk_region_spans_intersect_foreach.
8237
8238         * gdk/linux-fb/Makefile.am, gdk/linux-fb/gdkrender-fb.c:
8239         Add new file gdkrender-fb.c which contains all core
8240         rendering code.
8241         Add gdk_fb_fill_rectangle_generic (old rectangle code) and
8242         gdk_fb_fill_rectangle_simple_16, gdk_fb_fill_rectangle_simple_32
8243         (optimized rectangle fillers).
8244
8245         * gdk/linux-fb/gdkdrawable-fb2.c:
8246         Move all rendering code to gdkrender-fb.c.
8247         Change from using GdkRectangles and GdkSegments for spans to GdkSpan.
8248         Use the new span intersection functions in gdk_fb_fill_spans.
8249         gdk_fb_draw_rectangle() clips filled rectangles and calls
8250         gc->fill_rectangle with the result.
8251         gdk_fb_fill_spans() gets extra argument "sorted".
8252
8253         * gdk/linux-fb/gdkevents-fb.c:
8254         Remove unused includes and defines.
8255         New function gdk_fb_get_time() to get correct time for events.
8256
8257         * gdk/linux-fb/gdkinput-ps2.c:
8258         Use gdk method of generating multiple-clicks (gdk_event_button_generate)
8259         Make sure to set the time of all events.
8260
8261         * gdk/linux-fb/gdkmain-fb.c:
8262         Use gdk_fb_get_time ().
8263
8264         * gdk/linux-fb/gdkprivate-fb.h:
8265         New virtual GC calls: fill_span & fill_rectangle.
8266         Export gdk_fb_get_time().
8267         gdk_fb_fill_spans() gets extra argument "sorted".
8268
8269         * gdk/linux-fb/mi*.c:
8270         Use GdkSpan instead of GdkRectangle.
8271         Pass correct sorted to gdk_fb_fill_spans. (sorted value taken
8272         from XFree 4 source)
8273         
8274 2000-11-22    <jrb@redhat.com>
8275
8276         * gtk/gtktreeview.c (gtk_tree_view_calc_size): It's amazing what
8277         reversing the order in an if statement will do.  Doing so managed
8278         to make the treemodelsort half work.  Other half will follow after
8279         I get the insert function fully fixed.
8280
8281 2000-11-21  Elliot Lee  <sopwith@redhat.com>
8282         * gtk/gtkmenushell.h: GdkEventButton->button can occupy significantly
8283         more than 2 bits. Besides, I need to implement an evil hack. :)
8284
8285 Tue Nov 21 14:17:51 GMT 2000  Tony Gale <gale@gtk.org>
8286
8287         * docs/tutorial/gtk-tut.sgml: minor corrections
8288
8289 2000-11-20  Jonathan Blandford <jrb@redhat.com>
8290         * gtk/gtktreemodelsort.h: Add convertion functions to let you
8291           convert to and from relative path's and iters.
8292
8293         * gtk/treestoretest.c: move to having a sorted/unsorted view.  Start
8294           testing sorting functions a bit better.  Currently broken -- will
8295           fix in morning.
8296
8297 2000-11-20  Havoc Pennington  <hp@redhat.com>
8298
8299         * gtk/gtkwidget.c: Documented a bunch of functions in here
8300         (gtk_widget_realize): Warn if you try to realize
8301         a widget with no parent that isn't a toplevel
8302         (gtk_widget_intersect): return a gboolean
8303
8304 2000-11-20  Havoc Pennington  <hp@redhat.com>
8305
8306         * gtk/gtktextview.c, gtk/gtktextlayout.c, gtk/gtktextchild.c,
8307         gtk/testtext.c: Semi-finish widget embedding. Need guffaw
8308         scrolling to be implemented in GDK to finish. Also, right now
8309         we just size_allocate all children on every layout change,
8310         which is pretty lame. Test commented out of testtext.c, 
8311         until it works better.
8312
8313 2000-11-20  Alexander Larsson  <alla@lysator.liu.se>
8314
8315         * gdk/linux-fb/gdkdrawable-fb2.c:
8316         Removed unused arguments from gdk_fb_drawable_get_pixel().
8317
8318         * gdk/linux-fb/gdkinput-ps2.c (handle_input_ps2):
8319         Renamed fidur specific mouse packet data in MouseDevice to
8320         generic. Used it in ps2 mouse handling code to avoid blocking
8321         reads.
8322
8323 Sat Nov 18 18:00:17 2000  Jonathan Blandford  <jrb@redhat.com>
8324
8325         * demos/gtk-demo/main.c: Changed to have the list become
8326         non-italic when the demo window is destroyed through an external
8327         event (like a close button).  Doing so found three bugs in the
8328         widget.
8329
8330         * demos/gtk-demo/*.c (do_*): Changed to return the toplevel window.
8331
8332         * gtk/gtkliststore.c (gtk_list_store_set_cell): emit "change" when
8333         we actually set the cell.
8334
8335         * gtk/gtktreestore.c (gtk_tree_store_set_cell): ditto
8336
8337         * gtk/gtktreeselection.c (gtk_tree_selection_real_select_node):
8338         free a leaked path.  Thanks memprof.
8339
8340 Sat Nov 18 11:58:17 2000  Owen Taylor  <otaylor@redhat.com>
8341
8342         * gdk/gdkrgb.c (gdk_rgb_allocate_images): Fix 
8343         off-by-one error when destroying allocated segments
8344         on failure. (Elliot)
8345
8346 Sat Nov 18 11:45:09 2000  Owen Taylor  <otaylor@redhat.com>
8347
8348         * gtk/gtkcalendar.c: Patch from ChiDeok Hwang to fix
8349         memleaks found by Evan Martin.
8350
8351 Fri Nov 17 20:14:20 2000  Owen Taylor  <otaylor@redhat.com>
8352
8353         * Released 1.3.2
8354         
8355         * NEWS: Updates for 1.3.2
8356
8357 2000-11-17  Tor Lillqvist  <tml@iki.fi>
8358
8359         * gdk/gdkevents.h: Add comment that GdkXEvent isn't only for XEvent,
8360         but in general for window system specific events.
8361
8362         * gtk/gtk.def
8363         * gtk/makefile.mingw.in
8364         * gtk/makefile.msc.in: Update.
8365         
8366         * gtk/gtktexttypes.h: Mark variables for export/import from DLL.
8367
8368 Thu Nov 16 16:11:39 2000  Owen Taylor  <otaylor@redhat.com>
8369
8370         * gtk/Makefile.am (EXTRA_DIST): Do not, in any circumstances,
8371         distribute gtk.immodules.
8372
8373         * gtk/Makefile.am (install-data-local): Don't install the
8374         gtk.immodules file created for the uninstalled modules;
8375         instead run gtk-query-immodules after install
8376
8377 Wed Nov 15 21:51:31 2000  Owen Taylor  <otaylor@redhat.com>
8378
8379         * modules/input/Makefile.am (im_xim_la_LDFLAGS): Point
8380         -rpath to the right install location.
8381
8382         * modules/input/Makefile.am (im_inuktitut_la_LDFLAGS): Remove
8383         -export-dynamic.
8384
8385         * gtk/gtkthemes.c (gtk_theme_engine_get): Set engine->name
8386         properly.
8387
8388 2000-11-15  Havoc Pennington  <hp@pobox.com>
8389
8390         * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): Apply
8391         patch from Mikael Hermansson to temporarily stop blinking while
8392         the user is using the keyboard to type or navigate. 
8393
8394         Also, when blinking, stay on for longer than we stay off. Also,
8395         return from start_cursor_blink if !cursor_visible, to save
8396         checking that flag all over the place before we call
8397         start_cursor_blink.
8398
8399 Thu Nov 16 01:25:51 2000  Robert Brady  <robert@suse.co.uk>
8400
8401         * gtk/gtkrc.*: Remove the locale-specific gtkrc's, as they
8402         only contain a "fontset" line, which is now ignored.
8403
8404         * gtk/gtkentry.c (gtk_entry_button_release): Make 
8405         double-click-to-select-word work.
8406         
8407 Wed Nov 15 20:16:54 2000  Owen Taylor  <otaylor@redhat.com>
8408
8409         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): 
8410         Don't move back one char when we are actually at the end of the 
8411         paragraph.
8412
8413 2000-11-15  Robert Brady  <robert@suse.co.uk>
8414
8415         * modules/input/iminuktitut.c (inuktitut_compose_seqs): 
8416         'o' < 'p'.
8417         
8418         * gtk/gtkmain.c: s/CODSET/CODESET/, include <libintl.h> for
8419         bind_textdomain_codeset.
8420
8421         (gtk_init_check): Make the warning about translating default:LTR
8422         sterner.
8423         
8424 Wed Nov 15 18:39:40 2000  Owen Taylor  <otaylor@redhat.com>
8425
8426         * **/Makefile.am : remove unecessary rules for win32-specific
8427         config-substituted targets. If you want these rules, use
8428         --enable-maintainer-mode (called automatically by autogen.sh).
8429         Stops a lot of unneccessary make-time warnings.
8430
8431         * gtk/gtktext{layout,display}.c: Factor in total width as
8432         well as screen when figuring alignment for word-wrap as well as
8433         no wrap; this is necessary to handle lines that cannot be wrapped
8434         at all.
8435
8436 2000-11-15  Havoc Pennington  <hp@redhat.com>
8437
8438         * gtk/testtext.c: Implement essential color cycling feature
8439
8440 2000-11-15  Havoc Pennington  <hp@redhat.com>
8441
8442         * gtk/gtktextview.c (changed_handler): Invalidate the side windows
8443         when we invalidate the main window.
8444
8445         * gtk/testtext.c (create_view): Get rid of text_changed_callback,
8446         GtkTextView will now invalidate the side windows for us when text
8447         changes.
8448
8449 Wed Nov 15 16:02:20 2000  Owen Taylor  <otaylor@redhat.com>
8450
8451         * gtk/gtktextview.c (changed_handler): Call scroll_calc_now()
8452         unconditionally, since we may need to update the horizontal
8453         scrollbars even if the height didn't change.
8454
8455         * gtk/gtktextlayout.c (add_preedit_attrs): Always get
8456         the extra attrs, since some of them affect size.
8457
8458         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Factor in
8459         x_offset correctly.
8460
8461 2000-11-15  Havoc Pennington  <hp@redhat.com>
8462
8463         * gtk/gtktextlayout.c (set_para_values): If indent is negative,
8464         don't move the first line out into the margin, instead move the
8465         whole paragraph in order to make space for the first line within 
8466         the margin
8467
8468 2000-11-15  Havoc Pennington  <hp@redhat.com>
8469
8470         * gtk/gtktextview.c (changed_handler): offset redraw rect by
8471         xoffset in addition to yoffset, so horizontal scrolling doesn't
8472         break redraws
8473
8474 2000-11-15  Havoc Pennington  <hp@redhat.com>
8475
8476         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Remove extra pixel
8477         from the cursor
8478         (render_layout_line): fix reversed test that caused weird
8479         underlines to get drawn
8480
8481 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
8482
8483         * gdk/linux-fb/gdkprivate-fb.h:
8484         Fix debug macros.
8485         
8486 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
8487
8488         * gdk/linux-fb/gdkprivate-fb.h:
8489         Added virtual functions set_pixel, get_color,
8490         fill_span and draw_drawable to the GC.
8491         Added global _gdk_fb_screen_gc to use instead of
8492         NULL when drawing to the screen.
8493         Added _gdk_fb_gc_calc_state() prototype.
8494
8495         * gdk/linux-fb/gdkgc-fb.c:
8496         Call _gdk_fb_gc_calc_state() on any gc state change.
8497
8498         * gdk/linux-fb/gdkglobals-fb.c:
8499         Add _gdk_fb_screen_gc
8500                 
8501         * gdk/linux-fb/gdkdrawable-fb2.c:
8502         _gdk_fb_gc_calc_state() calculates best functions
8503         for the GC state and depth.
8504         Moved bpp specialized code to separate functions.
8505         Added optimized 24 bpp AA draw_drawable.
8506
8507         * gdk/linux-fb/gdkevents-fb.c:
8508         Silence gcc warning.
8509
8510         * gdk/linux-fb/gdkimage-fb.c:
8511         Use _gdk_fb_screen_gc
8512
8513         * gdk/linux-fb/gdkwindow-fb.c:
8514         Init and use _gdk_fb_screen_gc
8515
8516         * gdk/linux-fb/mitypes.h:
8517         Remove unused types.
8518
8519 2000-11-14  Havoc Pennington  <hp@pobox.com>
8520
8521         * gtk/gtktextlayout.c (add_cursor): use PANGO_PIXELS() to convert
8522         to pixels
8523
8524 2000-11-14  Havoc Pennington  <hp@pobox.com>
8525
8526         * gtk/testtextbuffer.c (fill_buffer): change "offset" to "rise"
8527
8528         * gtk/gtktexttypes.h (GTK_TEXT_UNKNOWN_CHAR): Add macro for
8529         unknown char, no real reason we were using a variable. 
8530         Remove gtk_text_unknown_char variable. Fix all the text widget
8531         files accordingly.
8532
8533         * gtk/gtktexttypes.c: Change "unknown character" to 0xFFFC, 
8534         since the Unicode spec seems to prefer that character for our
8535         purposes.
8536
8537 Wed Nov 15 02:18:01 2000  Robert Brady  <robert@suse.co.uk>
8538
8539         * gtk/gtkrc.c (gtk_rc_get_im_module_file): The return 
8540         value of g_getenv() isn't freeable, so g_strdup it.
8541
8542         * modules/input/inuktitut.c: Inuktitut input method.
8543
8544         * modules/input/Makefile.am: Build this.
8545         
8546 2000-11-14  Elliot Lee  <sopwith@redhat.com>
8547
8548         * gtk/Makefile.am: Install gtk.immodules, needed for operation
8549         of gtk programs.
8550
8551 Tue Nov 14 20:13:06 2000  Owen Taylor  <otaylor@redhat.com>
8552
8553         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): Fix
8554         reversed > that was causing Home to go to end of previous line.
8555
8556         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_filter_keypress): Ignore
8557         modified-keypresses (leave for bindings.)
8558
8559         * modules/input/Makefile.am: Remove useless -export-dynamic
8560         from module LDFLAGS.
8561
8562 2000-11-14  Havoc Pennington  <hp@redhat.com>
8563
8564         * gdk/gdkpango.c (gdk_draw_layout_line): Draw underlines one pixel
8565         higher.
8566
8567         * gtk/gtktextdisplay.c (render_layout_line): Take rise into
8568         account. Also, render rise, underline, background, etc. for
8569         pixbufs as well as text. Also, draw underlines one pixel higher.
8570
8571         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): Add a
8572         PangoAttribute for the rise, so it gets drawn properly. Also,
8573         add the GtkTextAppearance attribute for pixbuf/widget segments
8574         as well; we should go ahead and have rise, underline, background,
8575         stipple work for those
8576
8577         * gtk/gtktexttag.c: Rename "offset" property to "rise" to match
8578         Pango
8579
8580 2000-11-15  Tor Lillqvist  <tml@iki.fi>
8581
8582         * gtk/makefile.{mingw,msc}.in (gtk_OBJECTS): Add new objects.
8583
8584         * gtk/gtk.def: Update.
8585
8586         * gtk/gtkrc.c: Can't check for G_OS_WIN32 until glib.h has been
8587         included.
8588         (gtk_rc_get_im_module_file): Use run-time installation directory
8589         on Win32.
8590
8591         * gdk/win32/rc/gdk.rc: Remove.
8592         * gdk/win32/rc/gdk.rc.in: New file.
8593         * gdk/win32/rc/Makefile.am: New file
8594         * gdk/win32/Makefile.am: Corresponding changes.
8595
8596         * gtk/gtk.rc: Remove.
8597         * gtk/gtk-win32.rc.in: New file.
8598         * gtk/Makefile.am: Corresponding changes.
8599
8600         * configure.in: Corresponding changes.
8601
8602         * gtk/gtkcompat.h.win32: Remove, useless. A distribution already
8603         has a built gtkcompat.h. Developers using CVS code on Win32 can
8604         hand-edit it from gtkcompat.h.in.
8605
8606         * gtk/makefile.{mingw,msc}.in: Correspondingly don't try to make
8607         gtkcompat.h from gtkcompat.h.win32.
8608
8609 2000-11-14  Havoc Pennington  <hp@redhat.com>
8610
8611         * gtk/gtktextview.c (gtk_text_view_drag_motion): Fix drag-and-drop
8612         to default to GDK_ACTION_MOVE if the drag is within a single
8613         widget. Defaults to GDK_ACTION_COPY between widgets.
8614
8615 Mon Nov 13 14:43:48 2000  Owen Taylor  <otaylor@redhat.com>
8616
8617         * demos/Makefile.am (test-inline-pixbufs.h): Fix srcdir != builddir
8618
8619         * gtk/Makefile.am (INCLUDES): Add -I$(builddir)/gtk
8620
8621         * gtk/stock-icons/Makefile.am (gtkstockpixbufs.h): Handles
8622         srcdir != builddir
8623
8624         * modules/input/Makefile.am (INCLUDES): add $(top_srcdir)/gdk
8625
8626         * configure.in (GTK_VERSION): Up to 1.3.2
8627
8628         * modules/input/Makefile.am (im_xim_la_SOURCES): Add 
8629         gtkimcontextxim.h
8630
8631         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): Add
8632         missing doc comment.
8633
8634 2000-11-14  Alexander Larsson  <alexl@redhat.com>
8635
8636         * modules/linux-fb/basic.c:
8637         Use the glib iconv wrappers.
8638
8639 2000-11-13  Havoc Pennington  <hp@pobox.com>
8640
8641         * demos/gtk-demo/textview.c: spiff up the demo a bit; reveals
8642         still more bugs.
8643
8644         * gtk/gtktextview.c (gtk_text_view_value_changed): don't try to
8645         scroll the GdkWindows before realization.
8646
8647 2000-11-13  Havoc Pennington  <hp@redhat.com>
8648
8649         * gtk/gtktextdisplay.c (gtk_text_render_state_update): fix bug 
8650         where GC didn't always get updated properly
8651
8652         * demos/gtk-demo/textview.c (create_tags): Use subattributes
8653         of fonts instead of setting the entire font
8654
8655         * gtk/testtext.c (fill_example_buffer): Use "size" instead of
8656         setting entire font
8657
8658         * gtk/gtkdialog.c (gtk_dialog_add_button): Fix some warnings
8659
8660         * gtk/gtktexttag.h, gtk/gtktexttag.c: Explode font_desc into 
8661         a bunch of individually-settable font attributes. You can still 
8662         use the "font" and "font_desc" args, they just set all the font
8663         attributes at once.
8664
8665 2000-11-13 Elliot Lee <sopwith@redhat.com>
8666
8667         * gdk/gdk.h: Add a couple of missing G_GNUC_CONST's.
8668
8669 Mon Nov 13 14:29:32 2000  Jonathan Blandford  <jrb@redhat.com>
8670
8671         * gtk/gtktreemodel.c (gtk_tree_path_copy): confirm path != NULL
8672         * gtk/gtktreemodel.c (gtk_tree_path_free): ditto
8673
8674         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): make
8675         work better.
8676
8677 2000-11-13  Havoc Pennington  <hp@redhat.com>
8678
8679         * gtk/gtkimmodule.c (gtk_im_module_init): Free the filename of 
8680         the module file.
8681
8682         * gtk/gtktexttag.c (gtk_text_attributes_copy): fix memory leak of
8683         dest->language
8684
8685         * gtk/testtext.c: Test pixels above/below/inside paragraphs
8686         settings
8687
8688         * gtk/gtktextview.c: Implement object args and setters/getters for
8689         all the aspects of the GtkTextAttributes that are not set from
8690         GtkWidget attributes. This is spacing, justification, margins,
8691         etc.
8692
8693         (gtk_text_view_set_arg)
8694         (gtk_text_view_get_arg): implement get/set for editable, wrap mode
8695         args
8696         (gtk_text_view_class_init): Add args for justify, left_margin,
8697         right_margin, indent, and tabs
8698         
8699
8700         * gtk/gtktextlayout.c (set_para_values): fix to display indent
8701         attribute properly
8702
8703         * gtk/gtktexttag.c: Remove left_wrapped_line_margin attribute, 
8704         replace with indent attribute
8705
8706         * gtk/gtktextlayout.c (set_para_values): multiply indent by
8707         PANGO_SCALE
8708
8709         * gtk/gtktextdisplay.c (render_para): Use PangoLayoutIter,
8710         rearranging code to do that
8711         (gtk_text_layout_draw): Pass in the y for the whole LineDisplay,
8712         i.e. don't subtract the top_margin first, just to keep
8713         all margin-futzing in one place.
8714
8715         * gdk/gdkpango.c (gdk_draw_layout): Use PangoLayoutIter
8716
8717         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Remove
8718         special case of last line, Pango now handles this itself.
8719         (gtk_text_layout_get_iter_at_pixel): Fix incorrect clamp of the 
8720         Y coordinate
8721         (gtk_text_layout_move_iter_to_x): port to use PangoLayoutIter
8722         (find_display_line_above): wasn't moving the byte index as it
8723         iterated over lines, so always returned byte 0. Also, port to use
8724         PangoLayoutIter.
8725         (find_display_line_below): same problem as
8726         find_display_line_above. Also, port to use PangoLayoutIter.
8727
8728 2000-11-13  Alexander Larsson  <alexl@redhat.com>
8729
8730         * gdk/linux-fb/*.[ch]:
8731         Massive reindent to gtk+ standard. My hands hurt.
8732
8733         * gdk/linux-fb/gdkcolor-fb.c:
8734         Move GdkColorPrivateFB from inherited to windowing_data
8735
8736         * gdk/linux-fb/gdkcursor-fb.c:
8737         _gdk_cursor_new_from_pixmap made static
8738
8739         * gdk/linux-fb/gdkdnd-fb.c:
8740         GdkDragContextPrivate moved to windowing_data
8741
8742         * gdk/linux-fb/gdkdrawable-fb2.c:
8743         Removed endian.h, use glib endianness macros instead
8744         Some cleanups in the usage of GDK_DRAWABLE_FBDATA
8745         and GDK_DRAWABLE_IMPL_FBDATA
8746
8747         * gdk/linux-fb/gdkfont-fb.c:
8748         Add empty gdk_font_load(). Needed for linking of Gtk+.
8749
8750         * gdk/linux-fb/gdkimage-fb.c:
8751         Removed endian.h, use glib endianness macros instead
8752         Moved GdkImagePrivateFB to windowing_data
8753         gdk_image_new_bitmap didn't always allocate enough
8754         memory.
8755
8756         * gdk/linux-fb/gdkinput-ps2.c:
8757         Added semi-working support for MS serial mice.
8758
8759         * gdk/linux-fb/gdkprivate-fb.h:
8760         s/GdkWindowPrivate/GdkWindowObject/
8761         Removed GdkWindowPrivate typedef
8762         s/GDK_DRAWABLE_P/GDK_DRAWABLE_FBDATA/
8763         Removed GDK_DRAWABLE_P
8764         Move GdkColorPrivateFB from inherited to windowing_data
8765         Moved GdkImagePrivateFB to windowing_data
8766
8767         * gdk/linux-fb/gdkvisual-fb.c:
8768         Removed some unused debug code.
8769
8770         * gdk/linux-fb/gdkwindow-fb.c:
8771         Use stock cursors instead of including X headers.
8772         s/GdkWindowPrivate/GdkWindowObject/
8773
8774         * gdk/linux-fb/mitypes.h:
8775         Removed unused types.
8776
8777         * modules/linux-fb/basic.c:
8778         Use the pango fribidi wrappers.
8779
8780 2000-11-13  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
8781
8782         * gdk/linux-fb/gdkcolor-fb.c, gdk/nanox/gdkmain-nanox.c,
8783         gdk/win32/gdkcolor-win32.c, gdk/win32/gdkwin32id.c,
8784         gdk/x11/gdkcolor-x11.c, gdk/x11/gdkvisual-x11.c, gdk/x11/gdkxid.c,
8785         gtk/gtkgc.c, gtk/gtkrc.c, gtk/gtktext.c: GCompareFunc ->
8786         GEqualFunc where applicable.
8787         
8788         * gdk/linux-fb/gdkpango-fb.c: pango_font_description_compare ->
8789         pango_font_description_equal as changed in pango.
8790         
8791         * gdk/nanox/gdkmain-nanox.c: gdk_xid_compare -> gdk_xid_equal.
8792
8793         * gdk/win32/gdkcolor-win32.c: gdk_colormap_cmp -> gdk_colormap_equal.
8794
8795         * gdk/win32/gdkwin32id.c: gdk_handle_compare -> gdk_handle_equal.
8796
8797         * gdk/x11/gdkcolor-x11.c: gdk_colormap_cmp -> gdk_colormap_equal.
8798
8799         * gdk/x11/gdkvisual-x11.c: gdk_visual_compare -> gdk_visual_equal.
8800
8801         * gdk/x11/gdkxid.c: gdk_xid_compare -> gdk_xid_equal.
8802
8803         * gtk/gtkgc.c: gtk_gc_key_compare -> gtk_gc_key_equal and
8804         gtk_gc_drawable_compare -> gtk_gc_drawable_equal.
8805
8806         * gtk/gtkrc.c: gtk_rc_style_compare -> gtk_rc_style_equal and
8807         gtk_rc_styles_compare -> gtk_rc_styles_equal.
8808
8809 2000-11-12  Havoc Pennington  <hp@pobox.com>
8810
8811         * demos/gtk-demo/Makefile.am (democodedir): change demo install
8812         dir to datadir/gtk+-2.0/demo
8813
8814         * demos/gtk-demo/textview.c: Text widget demo; reveals all 
8815         sorts of text widget and Pango font bugs. Urgh.
8816
8817         * demos/gtk-demo/Makefile.am (demos): Add textview.c
8818
8819         * demos/gtk-demo/main.c (create_tree): Add instructions at top of
8820         tree that you should double click to see the demo. Fix 
8821         types of variables to reflect changed return values from 
8822         GtkTreeStore and GtkTreeViewColumn constructors.
8823
8824         * gtk/gtktextbuffer.c (gtk_text_buffer_new): ref/sink the
8825         newly-created buffer to prepare for GObject semantics
8826
8827         * gtk/testtext.c: don't leak the buffer with GObject semantics
8828
8829         * gtk/testtextbuffer.c: ditto
8830         
8831 2000-11-12  Havoc Pennington  <hp@pobox.com>
8832
8833         Rename this testgtk to gtk-demo to avoid confusion, and 
8834         install it so people can use it as a supplement to 
8835         the documentation.
8836         
8837         * demos/gtk-demo: Moved from demos/testgtk
8838
8839         * demos/testgtk: Removed
8840
8841         * configure.in: make Makefile in gtk-demo
8842         
8843         * demos/gtk-demo/Makefile.am: Install sample source to 
8844         datadir/gtk-demo (maybe there's a better place?), and 
8845         rename the binary to gtk-demo
8846         
8847         * demos/gtk-demo/main.c (load_file): Load installed sample
8848         source if source isn't found in pwd.
8849
8850 2000-11-09  Havoc Pennington  <hp@pobox.com>
8851
8852         * gtk/gtkentry.c (gtk_entry_class_init): Add an "invisible_char" 
8853         argument to set the char displayed when visibility == FALSE
8854         (gtk_entry_create_layout): If !entry->visible, replace 
8855         all chars with the "invisible char"
8856
8857         * gtk/testgtk.c: Test the invisible_char deal
8858         
8859 Mon Nov 13 02:16:33 2000  Robert Brady  <robert@suse.co.uk>
8860
8861         * gtk/gtkstyle.c (gtk_style_init): Fall back to "fixed" if we
8862         can't get a native font in the right encoding.
8863
8864 Mon Nov 13 00:09:29 2000  Robert Brady  <robert@suse.co.uk>
8865
8866         * configure.in: Chinese .pos have been renamed to zh_CN and zh_TW
8867         respectively.
8868
8869 Sun Nov 12 19:11:42 2000  Owen Taylor  <otaylor@redhat.com>
8870
8871         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_next_line):
8872         Fix warning when moving between paragraphs.
8873
8874         * gtk/gtkentry.[ch]: Change move => move_cursor, 
8875         delete => delete_from_cursor, insert => insert_at_cursor
8876
8877 Sun Nov 12 22:52:51 2000  Robert Brady  <robert@suse.co.uk>
8878
8879         * modules/input/imviqr.c: A vietnamese VIQR-based input method.
8880
8881         * modules/input/imthai-broken.c: A Thai input method for use if
8882         Thai keys are really generating Latin1 keysyms.
8883
8884         * modules/input/Makefile.am: Build these.
8885
8886 Sun Nov 12 22:15:35 2000  Robert Brady  <robert@suse.co.uk>
8887
8888         * gtk/gtkfileselection.c, gdk/win32/gdkfont-win32.c: 
8889         g_filename_{to,from}_utf8 now takes an extra parameter.
8890
8891         * gtk/gtkcalendar.c (gtk_calendar_init): Convert output of
8892         strftime into UTF-8.
8893
8894         (column_from_x, gtk_calendar_paint_day_names): Support RTL
8895         calendars.
8896
8897         (gtk_calendar_paint_day_names): Draw day names in the right 
8898         place.
8899         
8900 Sun Nov 12 14:10:09 2000  Owen Taylor  <otaylor@redhat.com>
8901
8902         * gdk/x11/gdkselection-x11.c (gdk_utf8_to_compound_text): Fix
8903         problem with using result of g_get_charset() backwards -
8904         pointed out by Mikael Hermansson <mikeh@bahnhof.se>.
8905
8906         * gtk/gtkwindow.c (gtk_window_compute_hints): Support
8907         negative min_width/height and max_width/height to
8908         mean "requisition"; this allows setting a window
8909         to be user-resizable in only one direction easily.
8910
8911         * gtk/testgtk.c (create_main_window): Remove hard-coded
8912         usize - set a default size in the vertical direction.
8913
8914 Sun Nov 12 13:33:01 2000  Owen Taylor  <otaylor@redhat.com>
8915
8916         * gtk/gtkrange.c: Add some missing casts. Support 
8917         2 and 3 button clicks on the arrows to mean 
8918         "move by pages" and "jump to end". (Like gtkspinbutton)
8919
8920 2000-11-12 Hans Breuer <Hans@Breuer.Org>
8921
8922         * gdk/win32/makefile.msc : reflect build module changes
8923
8924         * gdk/win32/gdkcursor-win32.c : can't cast to impl type directly
8925         from GdkPixmap*, cast implementation member instead.
8926
8927         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_drawable) : The
8928         passed in drawable is of type GdkDrawableImplWin32, the GdkPixmap *src 
8929         maybe either GdkDrawable or GdkDrawableImpl. Corrected all casts, add
8930         more Gdi functions return value checking. 
8931         (gdk_win32_draw_image) : use IMAGE_PRIVATE_DATA to get on the
8932         GdkImagePrivateWin32 *.
8933
8934         * gdk/win32/gdkevents-win32.c : Disable the SetCapture call to make
8935         menus useable again. Add #pragma message to keep reminded on this issue.
8936         (gdk_event_translate) : don't generate GDK_EXPOSE events for InputOnly
8937         windows. This allows to enable backing store on Win32!
8938
8939         * gdk/win32/gdkimage-win32.c (_gdk_win32_get_image) : the passed
8940         in drawable is of impl type. Correct specific type checks appropriate.
8941  
8942         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_create_from_data) : check 
8943         GDK_WINDOW_DESTROYED before allocating new resources.
8944
8945         * gdk/win32/gdkselection-win32.c : Handle GDK_WINDOW_DESTROYED case
8946
8947         * gdk/win32/gdkwindow-win32.c : more Gdi return value checking,
8948         (gdk_window_foreign_new) initialize parent handle.
8949         (gdk_window_destroy_notify) add GDK_IS_WINDOW check
8950
8951         * gdk/win32/gdkgeometry-win32.c (_gdk_window_move_resize_child) :
8952         Let the GDI invalidate the window on MoveWindow call to fix scrolling
8953         problems (e.g. main buttons in testgtk). 
8954
8955 Sat Nov 11 23:07:30 2000  Owen Taylor  <otaylor@redhat.com>
8956
8957         * gtk/gtkentry.c (gtk_entry_key_press): Call 
8958         gtk_widget_activate for GDK_Return.
8959
8960         * gtk/gtkentry.c (gtk_entry_preedit_changed_cb): Fix handling
8961         of preedit cursor position.
8962
8963 Sun Nov  5 04:24:53 2000  Owen Taylor  <otaylor@redhat.com>
8964
8965         * gtk/gtkcellrenderertextpixbuf.c: Make parent_class
8966         static.
8967
8968 Tue Sep 19 10:54:22 2000  Owen Taylor  <otaylor@redhat.com>
8969
8970         * modules/input/{gtkimcontextxim.[ch],imxim.c}: Rip
8971         out support for multiple locales; that simple doesn't
8972         work reliably with current Xlib
8973
8974         * gtk/gtkimcontext*.[ch] gtk/gtkimmulticontext.[ch]
8975         gtk/gtktextlayout.[ch] gtk/gtktextview.c gtk/gtkentry.c: 
8976         Add support for positioning the cursor within the preedit string.
8977
8978 Mon Sep 18 23:56:32 2000  Owen Taylor  <otaylor@redhat.com>
8979
8980         * modules/input/{imxim.c,gtkimcontextxim.[ch]}: Start
8981         at XIM input method module.
8982
8983         * gtk/gtktextview.c: Check for bindings after passing
8984         events to im context filter.
8985
8986 Mon Sep 18 11:50:51 2000  Owen Taylor  <otaylor@redhat.com>
8987
8988         * gtk/gtktextlayout.c (add_preedit_attrs): Handle
8989         empty attribute lists properly.
8990
8991 Sun Sep 17 10:08:16 2000  Owen Taylor  <otaylor@redhat.com>
8992
8993         * gtk/queryimmodules.c (main): Return non-zero exit
8994         status if errors were encountered querying any
8995         modules.
8996
8997         * modules/input/Makefile.am (moduledir): remove
8998         leftover bin program target.
8999
9000         * docs/make-todo: Fix typo in error message.
9001
9002 Sat Sep 16 14:04:30 2000  Owen Taylor  <otaylor@redhat.com>
9003
9004         * configure.in: Add modules/input/Makefile
9005
9006 Sat Sep 16 14:01:52 2000  Owen Taylor  <otaylor@redhat.com>
9007
9008         * gtk/gtk.h: include gtkmodule.h gtkoldeditable.h,
9009         don't include gtkthemes.h.
9010
9011         * gtk/testgtk.c gtk/testtext.c: Set environment variables
9012         to point
9013
9014         * gtk/Makefile.am: Add new .c and .h files, build 
9015         gtk-query-immodules and use it to create a gtk.immodules
9016         file for use of test programs.
9017
9018         * gtk/gtkpreview.c: remove extra blank line.
9019
9020 Sat Sep 16 13:21:04 2000  Owen Taylor  <otaylor@redhat.com>
9021
9022         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_add_table): 
9023         Add the ability to add extra tables beyond the default
9024         one, and also the ability to have compose sequences 
9025         that are prefixes of other compose sequences. 
9026
9027         * gtk/gtkimcontextsimple.c: Export a preedit string which
9028         consists of possible candidates for keystrokes that have
9029         been entered but not yet committed.
9030
9031         * gtk/gtkimcontext.[ch] gtk/immulticontext.[ch]
9032         gtk/gtkimcontextsimple.[ch]: add gtk_im_context_reset()
9033
9034         * gtk/gtkmulticontext.[ch] (gtk_im_multicontext_append_menuitems): 
9035         Add a function to add input-method switching menu items
9036         to a menu.
9037
9038         * gtk/gtkimmulticontext.[ch]: Properly handly set_client_window
9039         when switching input methods.
9040
9041         * gtk/gtkimcontextsimple.[ch]: Change the format of
9042         the compose table to allow compose tables of different
9043         lengths / sequence.
9044
9045 Sat Sep 16 13:05:48 2000  Owen Taylor  <otaylor@redhat.com>
9046
9047         * gtk/gtkimmodule.[ch]: Support routines for loading
9048         GtkIMContext implementations dynamically at runtime.
9049
9050         * modules/input/imcyrillic-translit.c: A sample input
9051         method (based on GtkIMContextSimple with an extra table),
9052         which demonstrates preedit strings and the module
9053         system for input modules
9054
9055         * gtk/queryimmodules.c: Program to query the available
9056         input modules and write the results into a file.
9057          
9058         * gtk/gtkrc.[ch] (gtk_rc_get_im_module_file): Add
9059         extra config options "im_module_file" (cache file for
9060         input method modules), and "im_module_path" - path
9061         to look for modules when generating cache file.
9062
9063         This doesn't scale.
9064
9065 Sat Sep 16 13:09:06 2000  Owen Taylor  <otaylor@redhat.com>
9066
9067         * gtk/gtkthemes.[ch] gtk/gtkmodule.[ch]: Move most of the 
9068         generic code from gtkthemes into a new abstraction
9069         GtkModule which has the logic for implementing
9070         a loadable module which implements a number of 
9071         GObject types.
9072
9073 Sat Sep 16 13:07:13 2000  Owen Taylor  <otaylor@redhat.com>
9074
9075         * gtk/gtkeditable.[ch]: Convert GtkEditable from
9076         a class into an interface  
9077         
9078         * gtk/gtkoldeditable.[ch]: Move the old editable
9079         implementation into here, so legacy widgets can
9080         still rely on the implemenation. GtkOldEditable
9081         exports GtkEditable. Make selection handling
9082         code use new text conversion functions (and
9083         handle UTF-8 as a side-effect). Use GtkClipboard
9084         for CLIPBOARD.
9085
9086         * gtk/gtktext.[ch] gtk/gtkcombo.c gtk/gtkspinbutton.c:
9087         Adopt to match above changes.
9088
9089         * gtk/gtkentry.[ch]: Implement GtkEditable directly,
9090         avoid GtkOldEditable implementation. Restructure
9091         to reduce number of places that modify state directly.
9092         Move to GtkBindingSet. Display the preedit string.
9093         Queue recomputation of PangoLayout and scroll position
9094         to improve effiency of doing complex changes naively.
9095         Add a menu with cut/copy/paste and input method selection.
9096
9097 Thu Sep 14 22:11:05 2000  Owen Taylor  <otaylor@redhat.com>
9098
9099         * gtk/gtktextlayout.[ch]: Add gtk_text_layout_set_preedit_string()
9100         to set preedit string and attributes; display preedit string by
9101         inserting string and attributes at cursor when creating the
9102         GtkTextLineDisplay.
9103
9104         * gtk/gtktextlayout.c: Move all conversions between byte
9105         positions in PangoLayout and GtkTextIter into new functions
9106         line_display_iter_to_index/index_to_iter that properly
9107         handle the preedit string.
9108
9109         * gtk/gtktextmark.[ch]: Restore gtk_text_mark_get_name, modify
9110         it to return const char * (eventually will end up
9111         as GCONST char *, most likely.)
9112
9113         * gtk/gtktextview.[ch]: Handle the preedit string, call
9114         gtk_im_context_reset() as necessary, add a menu to switch
9115         input methods.
9116         
9117         * gtk/gtktextlayout.[ch]: Remove useless
9118         gtk_text_layout_get_log_attrs() function.
9119
9120 2000-11-11  Tor Lillqvist  <tml@iki.fi>
9121
9122         * gdk/gdk.def
9123         * gtk/gtk.def: Update.
9124
9125         * gdk/win32/*.c: Add last argument to g_type_register_static()
9126         calls.
9127
9128         * gdk/win32/gdkwindow-win32.c: Silence gcc -Wall.
9129
9130         * gdk/win32/gdkevents-win32.c: Handle MSH_MOUSEWHEEL messages
9131         generated by older wheel mouse drivers. Get the correct y
9132         coordinate from WM_MOUSEWHEEL messages.
9133
9134         * gdk/win32/gdkgc-win32.c (gdk_win32_cap_style_to_string,
9135         gdk_win32_fill_style_to_string, gdk_win32_function_to_string,
9136         gdk_win32_join_style_to_string, gdk_win32_line_style_to_string):
9137         Debugging functions.
9138
9139         * gdk/win32/gdkprivate-win32.h: Declare them.
9140
9141         * gdk/win32/gdkinput-win32.h: Add declaration for
9142         gdk_input_window_destroy().
9143
9144         * gtk/makefile.mingw.in: Pass -DGTK_VERSION. Add gtktreemodel.o.
9145
9146 Fri Nov 10 19:06:41 2000  Jonathan Blandford  <jrb@redhat.com>
9147
9148         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): New
9149         function to help handle keeping things in sync.
9150
9151 Fri Nov 10 12:10:34 2000  Jonathan Blandford  <jrb@redhat.com>
9152
9153         * gtk/gtkliststore.c (gtk_model_simple_class_init): use the new
9154         BOXED marshallers.
9155
9156         * gtk/gtkliststore.c (gtk_list_store_get_column_type): Add this.
9157         (gtk_list_store_class_init): use the new BOXED marshallers.
9158
9159         * gtk/gtktreestore.c (gtk_tree_store_new_with_types): change
9160         new_with_values to new_with_types.
9161         (gtk_tree_store_get_column_type): add this.
9162         (gtk_tree_store_class_init): use the new BOXED marshallers.
9163
9164         * gtk/gtkmarshal.list: Added a number of BOXED marshallers to
9165         mirror some POINTER marshallers.
9166
9167 Thu Nov  9 11:23:22 2000  Jonathan Blandford  <jrb@redhat.com>
9168
9169         * gtk/gtktreemodel.h (struct _GtkTreeIter): added more fields to
9170         allow more interesting iterators.  Also, made the lifecycle of
9171         iterators more explicit.
9172
9173         * gtk/gtktreemodelsort.[ch]: New model for sorting.
9174
9175         * gtk/gtk-boxed.defs (GtkTreeIter, GtkTreePath): Added two boxed
9176         types.
9177
9178 2000-11-09  Alexander Larsson  <alexl@redhat.com>
9179
9180         * demos/testgtk/menus.c:
9181         Changes to make the new testgtk compile after
9182         gtk_menu_append was removed.
9183
9184         * gdk/linux-fb/gdkdrawable-fb2.c
9185         (gdk_fb_get_depth, gdk_fb_get_visual,
9186         gdk_drawable_impl_fb_class_init): Implement
9187         these drawable functions. Now GtkImages work again.
9188
9189         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Change prototype.
9190
9191         * gdk/linux-fb/gdkprivate-fb.h (_gdk_fb_get_image): Change prototype.
9192         
9193         * gdk/linux-fb/gdkmain-fb.c (fb_modes_parse_mode,
9194         gdk_fb_setup_mode_from_name, gdk_fb_set_mode, gdk_fb_display_new);
9195         Parse /etc/fb.modes, use the environment variables GDK_DISPLAY_MODE,
9196         GDK_DISPLAY_DEPTH, GDK_DISPLAY_WIDTH, GDK_DISPLAY_HEIGHT.
9197
9198 2000-11-08  Havoc Pennington  <hp@pobox.com>
9199
9200         * gtk/gtktexttag.c (gtk_text_tag_class_init): Add visible and
9201         visible_set args, don't know where these had gone, I thought they
9202         used to be there
9203
9204         * gtk/testtext.c: Add a menu item to apply invisibility tag;
9205         now we can test the feature and see that it's totally broken.
9206
9207 2000-11-08  Havoc Pennington  <hp@pobox.com>
9208
9209         Make DND copy pixbufs and tags when source and target share a 
9210         tag table.
9211         
9212         * gtk/gtktextview.c (gtk_text_view_drag_data_get): provide the
9213         in-process GTK_TEXT_BUFFER_CONTENTS target
9214         (gtk_text_view_drag_data_received): Paste from
9215         GTK_TEXT_BUFFER_CONTENTS if we receive it.
9216
9217 2000-11-08  Alexander Larsson  <alexl@redhat.com>
9218
9219         * docs/Changes-2.0.txt: Add note about GtkMenuPositionFunc
9220         API changes.
9221
9222         * gtk/gtkmenu.c: Add support for scrolling menus.
9223         Remove gtk_menu_append/prepend/insert, these have been moved to
9224         gtkcompat.h as #defines.
9225
9226         * gtk/gtkcompat.h.in:
9227         Add compatibility #defines for gtk_menu_append/prepend/insert
9228
9229         * gtk/gtkmenu.h: Add data needed for scrolling menus.
9230         GtkMenuPositionFunc gets an extra argument push_in.
9231         gtk_menu_append/prepend/insert removed.
9232         
9233         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu): Change menu
9234         positioning behaviour to fit to scrolling menus.
9235
9236         * gtk/gtkmenuitem.c (gtk_menu_item_forall): Don't recurse
9237         into menuitem->submeny. That is wrong, and broke torn
9238         off submenus of torn off menus, since they were unrealized
9239         when the first menu was unrealized.
9240
9241         * gtk/gtkmenushell.[ch]: Virtualize gtk_menu_shell_insert() and
9242         gtk_menu_shell_select_item() since these need to be overridden in
9243         GtkMenu.
9244
9245         * gtk/gtkoptionmenu.c (gtk_opttion_menu_position): Change menu
9246         positioning behaviour to fit to scrolling menus.
9247         (gtk_option_menu_key_press, gtk_option_menu_button_press): Select
9248         the current item so that it is prelighted when the menu pops up.
9249         This is a workaround to the fact that the menu doesn't get the
9250         initial enter event (due to grabs).
9251
9252         * gtk/gtkfilesel.c, gtk/gtkinputdialog.c, gtk/testgtk.c:
9253         s/gtk_menu_append/gtk_menu_shell_append/
9254
9255         * gtk/gtknotebook.c:
9256         s/gtk_menu_insert/gtk_menu_shell_insert/
9257
9258         * gtk/testgtk.c (create_menu, create_menus):
9259         Create the first menu with 50 items so that menu scrolling
9260         can be tested.
9261         
9262         
9263         Patch from Jonathan Blandford  <jrb@redhat.com>
9264
9265         * gtk/gtkmenuitem.[ch] (gtk_menu_item_toggle_size_request): new
9266         system to handle size requests.  First, we ask what the size of
9267         the toggle is.  Then, when allocating the size, we allocate the
9268         toggle_size first.  This way we can have multiple menu-item
9269         classes w/o needing a seperate class for each.
9270
9271         * gtk/gtkmenu.c (gtk_menu_size_request): Actually use the new system.
9272         * gtk/gtkmenu.c (gtk_menu_size_allocate): Use the new system.
9273
9274         * gtk/gtkcheckmenuitem.c
9275         (gtk_check_menu_item_toggle_size_request): New function to handle
9276         the toggle size-request.
9277
9278 2000-11-07  Havoc Pennington  <hp@redhat.com>
9279
9280         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location):
9281         Half-ass somewhat fix this function, so that scrolling to the
9282         insertion point works. Pango hacking is in the future to really
9283         fix it.
9284
9285         * gtk/gtktextview.c (gtk_text_view_drag_data_get): Don't calculate
9286         length of data, no longer used.
9287
9288         * gtk/gtktextbuffer.c (gtk_text_buffer_finalize): move destroy
9289         method contents in here, get rid of destroy method
9290         (gtk_text_buffer_insert_range): Fix some g_return_if_fail checks
9291         that were backward. Remove debug spew.
9292         (cut_or_copy): Make the clipboard work with insert_range to
9293         preserve tags and pixbufs, not just the primary selection.
9294
9295 2000-11-07  Havoc Pennington  <hp@redhat.com>
9296
9297         * gtk/gtktextmark.c (gtk_text_mark_is_visible): rename 
9298         to gtk_text_mark_get_visible
9299
9300         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): fix
9301         bug that was generating an invalid iterator
9302
9303         * gtk/gtktextiter.c (gtk_text_iter_get_offset): move call to
9304         ensure_char_offsets() in front of code placing the iter in an
9305         invalid state.
9306
9307         * gtk/gtktextbuffer.c (gtk_text_buffer_paste_primary):
9308         make override_location arg const
9309         (paste): Replace the selection if we paste into the 
9310         current selection
9311
9312         * gtk/gtkselection.h: Remove "GtkSelectioData"
9313         (struct _GtkSelectionData): move the definition here.
9314
9315         * gtk/gtktextbuffer.c (gtk_text_buffer_update_primary_selection):
9316         Export the GTK_TEXT_BUFFER_CONTENTS target for in-process copies
9317
9318         * gtk/gtktextiter.c (gtk_text_iter_get_tags): New function
9319
9320         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_range): implement
9321         (gtk_text_buffer_insert_range_interactive): implement
9322         (gtk_text_buffer_get_tags): Remove, replaced by
9323         gtk_text_iter_get_tags()
9324
9325         * gtk/gtktextiter.c (gtk_text_iter_forward_search): Add a search
9326         limit parameter, to avoid infinite linear scan.
9327         (gtk_text_iter_backward_search): Add search limit
9328         (gtk_text_iter_forward_find_char): Add search limit
9329         (gtk_text_iter_backward_find_char): Add search limit
9330
9331 2000-11-07  Alexander Larsson  <alla@lysator.liu.se>
9332
9333         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
9334         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkimage-fb.c,
9335         gdk/linux-fb/gdkpango-fb.c, gdk/linux-fb/gdkpixmap-fb.c,
9336         gdk/linux-fb/gdkwindow-fb.c:
9337         use g_object_new() instead of g_type_create_instance() which
9338         is a private function for fundamental type implementations.
9339
9340         * gdk/linux-fb/gdkinput-ps2.c:
9341         Use MEDIUMRAW instead of RAW keycodes. Remove keyboard state-table
9342         instead just store the current modifier state. Add a (somewhat broken)
9343         keyboard input parser for XLATE mode too, if we couldn't use MEDIUMRAW.
9344         Rename exported function gdk_input_ps2_get_mouseinfo to
9345         gdk_input_get_mouseinfo.
9346
9347         * gdk/linux-fb/gdkmain-fb.c, gdk/linux-fb/gdkprivate-fb.h,
9348         gdk/linux-fb/gdkwindow-fb.c:
9349         gdk_input_ps2_get_mouseinfo was renamed to gdk_input_get_mouseinfo.
9350         
9351
9352 2000-11-02  Havoc Pennington  <hp@redhat.com>
9353
9354         * gtk/gtkfilesel.h, gtk/gtkfilesel.c: Derive from GtkDialog, and
9355         use stock buttons. Should be 100% source compatible, appropriate
9356         filesel fields now point to dialog->vbox and dialog->action_area.
9357         On the bizarre side, dialog->action_area and filesel->action_area
9358         are not the same widget.
9359         (gtk_file_selection_init): Put some padding around the selection
9360         entry, so it isn't touching the GtkDialog separator.    
9361
9362         * gtk/gtkfontsel.h, gtk/gtkfontsel.c: Derive from GtkDialog, 
9363         use stock buttons, etc. Should also be source compatible.
9364         Set the dialog default title in _init not _new().
9365         
9366         * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): 
9367         Use stock buttons; don't put a button box inside the existing
9368         dialog button box. Don't bother with push/pop colormap anymore.
9369
9370         * gtk/gtkdialog.h (GtkResponseType): Add a bunch of more 
9371         specific GTK_RESPONSE_* values. This is clearer than ACCEPT/REJECT
9372         for message dialog, and necessary for the font selection and color
9373         selection with help and apply buttons.
9374         
9375         * gtk/gtkdialog.c (gtk_dialog_add_button): Return a pointer 
9376         to the created button widget. Set GTK_CAN_DEFAULT on the button.
9377         (gtk_dialog_init): Default to GTK_BUTTONBOX_END, put less spacing
9378         between buttons, put less padding around the action area.
9379         (gtk_dialog_run): Exit on unmap rather than on destroy. 
9380         This will also exit the loop if the widget is hidden.
9381         (gtk_dialog_delete_event_handler): Use GTK_RESPONSE_DELETE_EVENT
9382         instead of GTK_RESPONSE_NONE; since we're already adding a bunch
9383         of GTK_RESPONSE_* stuff, this seems cleaner, and lets you 
9384         special-case delete event.
9385
9386         * gtk/gtktexttagtable.c, gtk/gtktextview.c: Fix doc comment
9387         formatting
9388         
9389 Sun Nov  5 05:32:39 2000  Tim Janik  <timj@gtk.org>
9390
9391         * gtk/testgtk.c (uposition_stop_configure): provide a toggle
9392         button to temporarily disable position recording in the
9393         "saved position" test.
9394
9395 Sat Nov  4 05:37:17 2000  Tim Janik  <timj@gtk.org>
9396
9397         * gtk/gtkthemes.c: added compat code that temporarily implements
9398         GtkThemeEnginePlugin as a GObject exporting GTypePlugin. this is
9399         going to be revamped by owen's upcoming GtkModule patches, but
9400         untill then people want gtk to build, right? ;)
9401
9402 2000-11-04  Havoc Pennington  <hp@pobox.com>
9403
9404         * gtk/gtkenums.h: remove trailing comma from GtkDeleteType member
9405         list
9406
9407         * docs/Changes-2.0.txt: Add note about
9408         gtk_container_get_toplevels()
9409
9410         * gtk/gtktextview.h: formatting
9411         
9412         * gtk/gtktextview.c: don't start descriptions with "Returns",
9413         confuses gtk-doc
9414
9415 Sat Nov  4 10:12:27 2000  Owen Taylor  <otaylor@redhat.com>
9416
9417         * autogen.sh: When doing sanity checking on ACLOCAL_FLAGS,
9418         look for glib-2.0.m4 not glib.m4. (Ali Abdin)
9419
9420 2000-11-03  Havoc Pennington  <hp@redhat.com>
9421
9422         * gtk/gtktexttagtable.c: Docs
9423         (gtk_text_tag_table_size): return a signed int
9424
9425         * gtk/gtktexttag.c: s/tkxt/text/g; write documentation
9426         (gtk_text_tag_event): make the event_object a GObject
9427
9428         * gtk/gtktextview.c: Write API docs for all functions.
9429
9430         * gtk/gtktextview.h: add GTK_TEXT_WINDOW_PRIVATE as return value
9431         for gtk_text_view_get_window_type() called on one of the private
9432         windows.
9433
9434         * gtk/gtktextview.c: Instead of accessing text_view->buffer
9435         directly, call get_buffer() which demand-creates a default
9436         buffer. So gtk_text_view_new() can be used to create a view with a
9437         default buffer in it, if you just want an empty text box users can
9438         put data in. Useful for GUI builders also.
9439
9440 2000-11-03  Pablo Saratxaga <pablo@mandrakesoft.com>
9441
9442         * gtk/gtkrc.zh_TW.*: moved gtkrc.zh_TW.Big5 to gtkrc.zh_TW.big5;
9443         the charset encodign portion MUST be in lowercase.
9444         * gtk/gtkrc.az: added file for Azeri language
9445
9446 2000-11-03  Havoc Pennington  <hp@redhat.com>
9447
9448         Get widgets working on the btree/buffer side. Display of them 
9449         still doesn't work.
9450         
9451         * gtk/gtktextview.c: start implementing child widget stuff
9452
9453         * gtk/gtktextiter.c (gtk_text_iter_get_child_anchor): new function
9454
9455         * gtk/gtktextlayout.c: handle embedded widgets
9456
9457         * gtk/gtktextdisplay.c: handle embedded widgets
9458
9459         * gtk/gtktextchild.c: Implement all the child anchor goo
9460
9461         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor): New
9462         function
9463
9464         * gtk/gtktextbtree.c: Add child anchor table to the btree struct
9465         (insert_pixbuf_or_widget_segment): abstract out common portions of 
9466         creating a child anchor or a pixbuf segment.
9467         (gtk_text_btree_create_child_anchor): new function
9468         (gtk_text_btree_unregister_child_anchor): new function
9469
9470         * gtk/gtkmarshal.list: added VOID:OBJECT,INT,INT for the
9471         allocate_child signal on GtkTextLayout
9472
9473         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): fix bogus return
9474         values
9475         (gtk_text_iter_get_child_anchor): new function
9476
9477         * gtk/gtktextbuffer.c (gtk_text_buffer_real_changed): Add a
9478         default handler for the changed signal, which calls
9479         gtk_text_buffer_set_modified(), instead of just always emitting
9480         changed then calling set_modified() manually. I guess this is
9481         maybe more flexible. It seems logical.
9482
9483 Fri Nov  3 08:58:38 2000  Tim Janik  <timj@gtk.org>
9484
9485         * gtk/gtkobject.c: _g_signal_handlers_destroy() is prefixed with '_'
9486         now.
9487
9488         * gtk/gtksignal.c: use g_signal_connect_closure_by_id() now.
9489
9490 Thu Nov  2 14:10:51 2000  Owen Taylor  <otaylor@redhat.com>
9491
9492         * gdk/x11/gdkdnd-x11.c: Fix a bunch of functions that should have
9493         been marked static.
9494
9495 2000-11-02  Havoc Pennington  <hp@redhat.com>
9496
9497         * gtk/testgtk.c (create_labels): had a test backward
9498
9499         * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Copy the client-side GC
9500         fields, so the dest GC ends up with the correct clip origin, 
9501         etc. Fixes a bug where colored labels didn't redraw 
9502         properly.
9503
9504 2000-11-02  Alexander Larsson  <alexl@redhat.com>
9505
9506         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
9507         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkpango-fb.c,
9508         gdk/linux-fb/gdkpixmap-fb.c, gdk/linux-fb/gdkwindow-fb.c:
9509         Add last argument to t_type_register_static call.
9510         
9511         * gdk/linux-fb/gdkdrawable-fb2.c:
9512         Add last argument to t_type_register_static call.
9513         export the get_image drawable virtual function.
9514
9515         * gdk/linux-fb/gdkimage-fb.c:
9516         Add last argument to t_type_register_static call.
9517         rename gtk_image_get to _gdk_fb_get_image and
9518         export it for use by gdkdrawable-fb2.
9519
9520         * gdk/linux-fb/gdkprivate-fb.h:
9521         export _gdk_fb_get_image.
9522
9523         * gdk/linux-fb/gdkselection-fb.c:
9524         Add new api call stubs.
9525
9526         * gtk/Makefile.am:
9527         Missing ( in linux-fb part.
9528
9529         * modules/linux-fb/Makefile.am:
9530         Must link with gdk_pixbuf or get unresolved symbol.
9531
9532 2000-11-01  Havoc Pennington  <hp@pobox.com>
9533
9534         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Use 
9535         GTK_TYPE_TEXT_ITER and BOXED marshallers
9536
9537         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): ditto
9538
9539         * gtk/gtktexttag.c (gtk_text_tag_class_init): ditto
9540         
9541         * gtk/gtk-boxed.defs: add GtkTextIter
9542
9543         * gtk/gtkmarshal.list: Add marshallers for text widget that 
9544         properly use OBJECT and BOXED
9545
9546 2000-11-01  Havoc Pennington  <hp@redhat.com>
9547
9548         * gtk/testgtk.c (create_labels): Test set_markup_with_accel()
9549
9550         * gtk/gtklabel.c (set_markup): Convert the unichar to a GDK keyval
9551         before returning it. 
9552         
9553 2000-11-01  Havoc Pennington  <hp@redhat.com>
9554
9555         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
9556         Clip the rectangle to be rendered to the drawable, since
9557         get_from_drawable() requires a region within the drawable
9558
9559 2000-11-01  Havoc Pennington  <hp@redhat.com>
9560
9561         * gtk/gtkimage.c (gtk_image_expose): Um, don't randomly subtract 4
9562         from coordinates.
9563
9564 Wed Oct 25 20:10:57 2000  Owen Taylor  <otaylor@redhat.com>
9565
9566         * gdk/gdkevents.c (gdk_event_copy): Only ref the window if
9567         it isn't NULL.
9568
9569 2000-11-01  Havoc Pennington  <hp@pobox.com>
9570
9571         * gtk/gtklabel.c (gtk_label_set_attributes): Set a PangoAttrList
9572         on a label
9573         (gtk_label_finalize): unref the attr list if any.
9574
9575         * gtk/testgtk.c (create_get_image): close test on second click
9576         (make_message_dialog): close dialog if it exists
9577
9578         * gdk/gdkpango.c (gdk_draw_layout): Handle rise attribute
9579
9580         * gdk-2.0.pc.in (Requires): Make it require gdk-pixbuf-2.0 not
9581         gdk-pixbuf
9582
9583         * gtk/gtklabel.c (gtk_label_set_markup): new function to set label
9584         from Pango markup format
9585         (gtk_label_set_markup_with_accel): ditto but with accelerator
9586         parsing
9587
9588         * gtk/gtkimage.c (gtk_image_expose): reformatting.
9589
9590         * gdk/gdkpixbuf-drawable.c (gdk_pixbuf_get_from_drawable): Hack to
9591         reflect current state of GDK - use gdk_drawable_get_colormap, etc.
9592         Check GDK_IS_WINDOW() not !GDK_IS_PIXMAP() to decide whether to 
9593         call gdk_window_get_origin().
9594
9595         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
9596         implement GDK_PIXBUF_ALPHA_FULL
9597         
9598 Wed Nov  1 03:43:42 2000  Tim Janik  <timj@gtk.org>
9599
9600         * gtk/gtksignal.c (gtk_signal_compat_matched): make use of
9601         g_signal_handlers_block_matched, g_signal_handlers_unblock_matched and
9602         g_signal_handlers_disconnect_matched to block/unblock and disconnect
9603         multiple handlers respectively, instead of only treating the
9604         first handler found (bug reported by owen).
9605
9606 Mon Oct 30 19:23:50 2000  Jonathan Blandford  <jrb@redhat.com>
9607
9608         * gtk/gtktreeview.c (gtk_tree_view_expand_row): New function.
9609
9610         * gtk/gtktreeview.c (gtk_tree_view_collapse_row): New function.
9611
9612         * gtk/gtktreeview.c, gtk/gtktreemodel.c, gtk/gtktreeselection.c
9613         gtk/gtktreestore.h, gtk/gtktreeview.h, gtk/gtktreeviewcolumn.c,
9614         gtk/gtktreeviewcolumn.h: Fixed inline docs.
9615
9616         * docs/reference/gtk/tree_widget.sgml: Proto intro to the tree
9617         widget.  Needs writing someday.
9618
9619         * docs/reference/gtk/tmpl/gtktree*sgml: Added the tree widget to
9620         the docs.
9621
9622 2000-10-30  Havoc Pennington  <hp@redhat.com>
9623
9624         * gtk/gtktextview.h, gtk/gtktextview.c:
9625         Rename delete_at_cursor delete_from_cursor, and 
9626         move to move_cursor.
9627
9628 2000-10-30  Havoc Pennington  <hp@redhat.com>
9629
9630         * gtktextbtree.c, gtktextbtree.h, gtktextbuffer.c,
9631         gtktextbuffer.h, gtktextchild.c, gtktextchild.h,
9632         gtktextchildprivate.h, gtktextdisplay.c, gtktextdisplay.h,
9633         gtktextiter.c, gtktextiter.h, gtktextiterprivate.h,
9634         gtktextlayout.c, gtktextlayout.h, gtktextmark.c, gtktextmark.h,
9635         gtktextmarkprivate.h, gtktextsegment.c, gtktextsegment.h,
9636         gtktexttag.c, gtktexttag.h, gtktexttagprivate.h,
9637         gtktexttagtable.c, gtktexttagtable.h, gtktexttypes.c,
9638         gtktexttypes.h, gtktextview.c, gtktextview.h:
9639
9640         Massive reindentation and reformatting. Arg alignment and comments
9641         still need fixing in various places.
9642
9643 2000-10-30  Havoc Pennington  <hp@redhat.com>
9644
9645         * gtk/gtktextview.h, gtk/gtktextview.c: Change run action signals
9646         to be named insert_at_cursor and delete_at_cursor so C++ can
9647         handle them.
9648
9649 2000-10-28  Tor Lillqvist  <tml@iki.fi>
9650
9651         * gtk/gtkrc.c (gtk_rc_append_default_module_path): Make sure not
9652         to get a double directory separator in case the home directory
9653         ends with one. This would cause trouble especially on Windows,
9654         where the path will be confused with the syntax for an an UNC
9655         (network share) path \\server\share\path.
9656         (gtk_rc_add_initial_default_files): Ditto.
9657
9658 Sat Oct 28 02:33:09 2000  Robert Brady  <robert@suse.co.uk>
9659
9660         * gtk/gtkmarshal.list: add new marshallers for GtkTextView.
9661
9662         * gtk/gtktextview.c: Use correct marshallers.
9663
9664 Fri Oct 27 17:56:26 2000  Jonathan Blandford  <jrb@redhat.com>
9665
9666         * gtk/gtkliststore.c: Not sure how this ever worked.  Fixed it to
9667         use new iter stuff, and added all the appropriate signals et al.
9668
9669         * gtk/gtktreedatalist.h: s/gtk/_gtk to further reinforce that this
9670         code is internal to gtk only.
9671
9672 2000-10-28  Tor Lillqvist  <tml@iki.fi>
9673
9674         * gtk/gtk.def
9675         * gtk/makefile.{mingw,msc}.in: Adjust to Tim's changes. Use
9676         glib-genmarshal etc.
9677
9678 Fri Oct 27 20:15:00 2000  Tim Janik  <timj@gtk.org>
9679
9680         * gtk/Makefile.am: added dependancies for testtextbuffer which broke
9681         parallel builds.
9682
9683 Fri Oct 27 18:51:44 2000  Tim Janik  <timj@gtk.org>
9684
9685         * gtk/gtksignal.[hc]: adapt to GSignal signature changes.
9686
9687 2000-10-27  Robert Brady  <robert@suse.co.uk>
9688
9689         * configure.in (ALL_LINGUAS): Add en@IPA (English, phonetic), 
9690         en_GB (British), ia (Interlingua).
9691
9692 2000-10-26  Havoc Pennington  <hp@redhat.com>
9693
9694         * gtk/gtktextiter.c (my_strrstr): fix constness warning
9695
9696         Fixed output of:
9697         nm -g -l .libs/libgtk-x11-1.3.so | grep ' T ' | grep -v gtk_ | grep -v GTK_
9698         
9699         * gtk/gtktextsegment.c (char_segment_new): rename
9700         (_char_segment_new_from_two_strings): rename
9701         (_toggle_segment_new): rename
9702         
9703         * gtk/gtkclipboard.c (ensure_clipboard_widget): make this static
9704         (make_clipboard_widget): make it static
9705         (text_get_func): static
9706         (text_clear_func): static
9707
9708         * gtk/gtkcolorsel.c (adjustment_changed): make this function
9709         static
9710         (hex_changed): make it static
9711         (hsv_changed): make it static
9712         (opacity_entry_changed): make it static
9713
9714         * gtk/gtktextbtree.c (change_node_toggle_count): rename with _gtk
9715         (toggle_segment_check_func): rename with _gtk
9716
9717         * gtk/gtktextchild.c (_pixbuf_segment_new): rename with _gtk
9718         (_widget_segment_new): rename
9719         (_widget_segment_add): rename
9720         (_widget_segment_remove): rename
9721         (_widget_segment_ref): rename
9722         (_widget_segment_unref): rename
9723
9724         * gtk/gtktextmark.c (_mark_segment_new): Rename
9725         _gtk_mark_segment_new   
9726
9727 2000-10-26  Havoc Pennington  <hp@redhat.com>
9728
9729         * gtk/gtkmarshal.list: add new marshallers used by the text widget
9730         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
9731         types
9732
9733         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): fix
9734         marshaller types
9735
9736         * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktextdisplay.h,
9737         gtk/gtktextdisplay.c: We need to preserve Tk copyrights and
9738         license on these files.
9739
9740         * gtk/gtktextiter.c (gtk_text_iter_backward_search): Make this
9741         work.
9742
9743         * gtk/gtktextbtree.c (gtk_text_btree_new): init stamps to 
9744         runtime random number different for each tree, instead of 
9745         a constant I made up.
9746
9747 Thu Oct 26 07:36:16 2000  Tim Janik  <timj@gtk.org>
9748
9749         * gtk/Makefile.am: buncha cleanups, kludged build sources
9750         dependencies with a Makefile: oldest-source-stamp dependancy
9751         for the moment. automake is really fighting us here, with
9752         intentionally not allowing user-defined rules or dependancies
9753         prior to it's -include $(DEP_FILES) statement. sucks rocks!
9754
9755         * gtk/Makefile.am: added gtktextlayout.h and gtktextdisplay.h
9756         to public headers. tehy have a comment stating that they are
9757         "semi-public" aren't included by gtk.h and if enums popup there,
9758         they can be /*< skip >*/-ed.
9759
9760         * gtk/gtktextlayout.h: 
9761         * gtk/gtktextdisplay.h: indentation fixes, comment fixes,
9762         added LGPL... <SIGH>
9763
9764 Wed Oct 25 20:40:25 2000  Jonathan Blandford  <jrb@redhat.com>
9765
9766         * gtk/gtktreemodel.h: Got rid of GtkTreeNode, and changed it to
9767         GtkTreeIter.  Added iterators everywhere.
9768
9769         * gtk/gtktreeviewcolumn.c: Changed to use the iterators.
9770
9771         * gtk/gtktreeviewselection.c: Changed to use the iterators.
9772
9773         * gtk/gtktreestore.c: Changed to use the iterators.
9774
9775         * gtk/gtkliststore.c: Commented out the code.  Will convert to
9776         iterators tomorrow.
9777
9778         * gtk/gtkmodelsimple.c: Commented out the code.  Will convert to
9779         iterators tomorrow.
9780
9781         * gtk/treestoretest.c: Changed to use iterators.
9782
9783         * demos/testgtk/main.c: Moved to use the new iterator system.
9784
9785 Thu Oct 26 02:10:32 2000  Tim Janik  <timj@gtk.org>
9786
9787         * gtk/Makefile.am: invoke maketypes.awk with LC_ALL=C to avoid
9788         localization misbehaviour.
9789
9790         * gtk/gtk-boxed.defs: nuked "boxed" type GtkCTreeNode, since it's
9791         a useless type without copy/free.
9792
9793         * gtk/gtkctree.c (gtk_ctree_class_init): use GTK_TYPE_POINTER instead
9794         of GTK_TYPE_CTREE_NODE.
9795
9796 Thu Oct 26 00:51:52 2000  Tim Janik  <timj@gtk.org>
9797
9798         * gtk/gtksignal.c:
9799         (gtk_signal_emitv): use g_value_set_static_{string|boxed} where
9800         applicable.
9801
9802         * gtk/gtk-boxed.defs (GtkSelectionData): specify
9803         gtk_selection_data_copy and gtk_selection_data_free
9804         do GtkSelectionData work as params in signals.
9805
9806 Wed Oct 25 20:47:41 2000  Tim Janik  <timj@gtk.org>
9807
9808         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init): urg, removed
9809         implementation of gtk_marshal_VOID__INT_INT_INT_INT. if people do that,
9810         couldn't they at least give it a non-standard name?
9811         
9812         * gtk/gtktextlayout.c: arg! yet another implementation of
9813         gtk_marshal_VOID__INT_INT_INT_INT(), is this a conspiracy?
9814
9815         * gtk/gtktextbuffer.c: gotcha! captured a vagabonding
9816         gtk_marshal_VOID__INT_POINTER_INT() implementation, braught it back
9817         home. now i know this _is_ a conspiracy.
9818
9819         * gtk/gtkwidget.c (gtk_widget_class_init): marshaller fixups for
9820         ::state-changed.
9821
9822         * gtk/gtkaccelgroup.c (gtk_accel_group_create_remove): 
9823         (gtk_accel_group_create_add): marshaller signature fixups.
9824
9825         * gtk/gtklistitem.c (gtk_list_item_class_init): signal creation fixups,
9826         pass in GTK_TYPE_SCROLL_TYPE instead of GTK_TYPE_ENUM.
9827
9828         * gtk/gtkobject.[hc]: removed GTK_CONNECTED flag, it's not valid
9829         anymore.
9830
9831 Tue Oct 24 23:59:21 2000  Tim Janik  <timj@gtk.org>
9832
9833         * docs/reference/Makefile.am: disabled SUBDIRS for the moment, since
9834         due to the signal system changes, it wouldn't build currently. to
9835         be fixed soon.
9836
9837         * docs/Changes-2.0.txt: GtkSignal/GSignal updates.
9838
9839         * gtk/gtkwidget.c: ::direction_changed takes an enum as argument,
9840         so it needs gtk_marshal_VOID__ENUM() instead of
9841         gtk_marshal_NONE__UINT().
9842
9843         * gdk/gdk*.c: adapted type registration functions.
9844
9845         * gtk/gtkbindings.c:
9846         * gtk/gtkaccelgroup.c: operate on GSignalQuery, GtkSignalQuery is
9847         gone.
9848
9849         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType.
9850
9851         * gtk/gtkobject.c:
9852         (gtk_object_destroy):
9853         (gtk_object_shutdown): fixed recursion guards. basically we have to
9854         catch the case where any of GObject.shutdown() or gtk_object_destroy()
9855         is called during ::destroy, and avoid recursion there.
9856
9857         * gtk/gtktypeutils.c:
9858         * gtk/maketypes.awk: awk-script hackup to provide gtk_type_init() with
9859         boxed_copy/boxed_free. this needs a more general solution based on a
9860         publically installed code-generator utility.
9861
9862         * gtk/gtktypeutils.[hc]: compat aliased GTK_TYPE_BOXED to G_TYPE_BOXED,
9863         glib's gobject has support for that now.
9864         define GtkSignalMarshaller in terms of GSignalCMarshaller.
9865
9866 Mon Oct 23 09:36:42 2000  Tim Janik  <timj@gtk.org>
9867
9868         * gtk/gtksignal.[hc]:
9869         * gtk/gtkmarshal.[hc]:
9870         * gtk/Makefile.am: generate marshallers with glib-genmarshal and don't
9871         compile gtkmarshal.c on its own anymore, just include it in gtksignal.c.
9872         removed #include <gtkmarshal.h>s all over the place, gtksignal.h takes
9873         care of that.
9874
9875         * *.c: marshaller name fixups.
9876
9877         * gtk/gtkmarshal.list: added a comment briefing the format.
9878
9879 Sun Oct 22 23:14:39 2000  Tim Janik  <timj@gtk.org>
9880
9881         * gtk/gtksignal.[hc]: nuked old implementation. we mostly have
9882         compatibility macros here now. more specifically, most of
9883         the API is preserved (yes, _most_, nonwithstanding the
9884         following exceptions listed, the API is stil lHUGE ;)
9885         things that got removed completely:
9886         GtkSignalQuery, gtk_signal_query(), gtk_signal_n_emissions(),
9887         gtk_signal_n_emissions_by_name(), gtk_signal_handlers_destroy(),
9888         gtk_signal_set_funcs(), gtk_signal_handler_pending_by_id(),
9889         gtk_signal_add_emission_hook(), gtk_signal_add_emission_hook_full(),
9890         gtk_signal_remove_emission_hook().
9891         non-functional functions variants:
9892         gtk_signal_add_emission_hook(), gtk_signal_remove_emission_hook().
9893         the GtkCallbackMarshal argument to gtk_signal_connect_full() is
9894         not supported anymore.
9895         (gtk_signal_compat_matched): new internal function to aid
9896         implementation of the compatibility macros, it  provides
9897         functionality to block/unblock/disconnect handlers based
9898         on func/data.
9899
9900         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType,
9901
9902         * *.c: adaptions to new type registration API signatures.
9903
9904 Fri Oct 20 15:26:33 2000  Tim Janik  <timj@gtk.org>
9905
9906         * gtk/gtktypeutils.[hc]: removed G_TYPE_GTK_POINTER cludge.
9907
9908 2000-10-25  Robert Brady  <robert@suse.co.uk>
9909
9910         * gdk/x11/gdkproperty-x11.c (gdk_property_get, gdk_property_change,
9911         gdk_property_delete): If window == NULL, assume the root window.
9912         (restoring the behaviour that was in 1.2).
9913         
9914         * gtk/testtext.c (save_buffer): Allow creation of new files when
9915         saving.
9916
9917         (fill_file_buffer): Don't die if a UTF-8 sequence is split across
9918         calls to read().
9919
9920 2000-10-25  Tor Lillqvist  <tml@iki.fi>
9921
9922         * gdk/gdkwindow.c: Include x11/gdkx.h only when building for X11.
9923
9924         * gdk/win32/gdkdrawable-win32.c
9925         * gdk/win32/gdkimage-win32.c
9926         * gdk/win32/gdkprivate-win32.h: Corresponding changes as in the
9927         X11 backend.
9928
9929         * gdk/win32/gdkcc-win32.c
9930         * gdk/win32/gdkcolor-win32.c
9931         * gdk/win32/gdkfont-win32.c
9932         * gdk/win32/gdkinput-win32.c
9933         * gdk/win32/gdkmain-win32.c
9934         * gdk/win32/gdkproperty-win32.c: Silence gcc -Wall.
9935
9936 2000-10-24  Havoc Pennington  <hp@redhat.com>
9937
9938         * gtk/gtktextview.c (gtk_text_view_scroll_to_mark_adjusted): make
9939         it a static function
9940
9941         * gtk/gtktextbtree.c (gtk_text_btree_tag): Gee, maybe we should
9942         redraw text when a tag is applied to it.
9943
9944         * gtk/gtktexttag.c (gtk_text_tag_affects_size)
9945         (gtk_text_tag_affects_nonsize_appearance): private functions to
9946         see if a tag requires various kinds of redraw/layout to be queued
9947         up.
9948
9949         * gtk/gtktexttag.h (struct _GtkTextTag): Remove relief crackrock
9950
9951         * gtk/testtext.c (fill_example_buffer): Put the cursor 
9952         at the start of the buffer, so search works by default
9953
9954         * gtk/gtktextiter.c (lines_match): init match_start always
9955
9956         * gtk/gtktextbuffer.c (gtk_text_buffer_get_iter_at_line_index): New
9957         function, get iter at a line + a byte index
9958
9959         * gtk/gtktextiter.c (gtk_text_iter_set_line_index): New function,
9960         to set byte position within a line
9961         (gtk_text_iter_check): remove leftover G_BREAKPOINT thing
9962
9963 2000-10-23  Havoc Pennington  <hp@redhat.com>
9964
9965         * gtk/testtext.c: Re-enable the "find" dialog
9966
9967         * gtk/testgtk.c: Add test for gdk_drawable_get_image
9968         
9969         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix bug where
9970         the arguments to gdk_draw_drawable were in the wrong order
9971         (gdk_window_paint_init_bg): This function was ignoring the
9972         init_region, instead of clipping to it, so the entire backing
9973         pixmap was cleared on every begin_paint()
9974         (gdk_window_begin_paint_region): Hmm, the same list-walking bug
9975         was in here again, the loop kept using the same GtkWindowPaint
9976         over and over.
9977         (gdk_window_begin_paint_region): Fix a bug where we had two
9978         x_offset instead of x_offset and y_offset
9979
9980         * gdk/gdkdraw.c (gdk_drawable_get_image): get composite drawable
9981         before we get the image.
9982         (gdk_draw_drawable): get the composite before we draw the drawable.
9983         (gdk_drawable_real_get_composite_drawable): default
9984         get_composite_drawable implementation that returns the drawable 
9985         itself
9986
9987         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Add
9988         get_composite_drawable virtual function
9989
9990         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix a cheesy
9991         list-walking bug
9992
9993         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable): Add a hack to
9994         make this work if the source drawable is a GdkDrawableImplX11
9995         instead of a public drawable type. This is really broken; the
9996         problem is that GdkDrawable needs a virtual method get_xid(), but
9997         of course that doesn't work in practice. Enter RTTI.
9998
9999         Also, improve mismatched depth message.
10000
10001         * gdk/gdkpixmap.c (gdk_pixmap_get_image): Implement get_image for
10002         GdkPixmap
10003
10004         * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_class_init):
10005         install _gdk_x11_get_image as our implementation of get_image
10006         
10007         * gdk/x11/gdkimage-x11.c (gdk_image_get): Rename to
10008         _gdk_x11_get_image and export for use in gdkdrawable-x11.c
10009
10010         * gdk/gdkimage.c (gdk_image_get): Make this just a wrapper around
10011         gdk_drawable_get_image
10012
10013         * gdk/gdkdraw.c (gdk_drawable_get_image): call virtual get_image
10014
10015         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Virtualize
10016         get_image
10017
10018         * gtk/gtktreestore.c (gtk_tree_store_get_node): remove weird
10019         trailing semicolon after for loop
10020
10021 Mon Oct 23 12:07:57 2000  Owen Taylor  <otaylor@redhat.com>
10022
10023         * gtk/gtkwidget.c (gtk_widget_set_style_internal): Fix problem
10024         where font_desc for widget's context lagged widget's font_desc by
10025         one step.
10026
10027 2000-10-22  Tor Lillqvist  <tml@iki.fi>
10028
10029         * gdk/win32/gdkgc-win32.c
10030         * gdk/win32/gdkimage-win32.c: Remove gcc -Wall warnings.
10031
10032         * gtk/makefile.mingw.in
10033         * gtk/gtk.def: Updates.
10034
10035         * gtk/testgtk.c: sleep() is called _sleep in MS's C
10036         library.
10037
10038         * gtk/gtkimcontextsimple.c: Include <stdlib.h> for bsearch().
10039
10040         * gtk/makefile.msc: Remove
10041
10042         * gtk/makefile.msc.in: New file, like makefile.mingw.in.
10043
10044         * gtk/Makefile.am: Add it.
10045
10046         * configure.in: Generate it.
10047
10048         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor)
10049         * gtk/gtktextbtree.c (gtk_text_line_char_to_byte): Return
10050         something even if not implemented, to satisfy picky MSVC.
10051
10052         Patches by Hans Breuer:
10053         
10054         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_glyphs): Call
10055         SetBkMode() and SetTextAlign() before calling
10056         pango_win32_render().
10057
10058         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_values_to_win32values):
10059         Set hcliprgn to NULL after destroying it.
10060         (gdk_gc_set_clip_rectangle): Delete hcliprgn and set to NULL.
10061
10062         * gdk/win32/gdkgeometry-win32.c
10063         (_gdk_windowing_window_queue_antiexpose): More effective
10064         implementation.
10065
10066         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_new): Use drawable's
10067         depth as default, not the visual's.
10068
10069         * gdk/win32/gdkwindow-win32.c (gdk_window_set_title): Guard
10070         against empty title.
10071
10072         * gdk/win32/gdkprivate-win32.h: Define a helper macro,
10073         IMAGE_PRIVATE_DATA.
10074
10075         * gdk/win32/gdkimage-win32.c: Use it.
10076
10077 2000-10-22  Robert Brady  <robert@suse.co.uk>
10078
10079         * configure.in: Check for bind_textdomain_codeset
10080
10081         * gtk/gtkmain.c (gtk_init_check): If bind_textdomain_codeset 
10082         present, make use of it.
10083
10084         Add a translatable string "default:LTR" which, if translated
10085         to "default:RTL", will cause the default direction to be
10086         Right-to-Left.
10087
10088         * gtk/gtkrange.h, gtk/gtkrange.c: Take into account the widget 
10089         direction if marked as flippable.
10090
10091         * gtk/gtkhscale.c: Mark widget as flippable.
10092         
10093 2000-10-04  Havoc Pennington  <hp@redhat.com>
10094
10095         * gtk/testgtk.c (create_buttons): create some stock buttons
10096         with the default accel group
10097         (create_image): test some new GtkImage features
10098         (make_message_dialog): test GtkMessageDialog
10099         (create_modal_window): fix someone's bizzarro indentation
10100
10101         * gtk/gtkwindow.h, gtk/gtkwindow.c: Implement 
10102         GTK_WIN_POS_CENTER_ON_PARENT. 
10103         Add "destroy with parent" setting, which means the window goes
10104         away with its transient parent.
10105         (gtk_window_get_default_accel_group): get the default accel group
10106         for the window.
10107         (gtk_window_set_destroy_with_parent): set/unset destroy with
10108         parent flag
10109         (gtk_window_read_rcfiles): invalidate icon set caches
10110         after reloading rcfiles 
10111
10112         * gtk/gtkenums.h (GtkWindowPosition): add
10113         GTK_WIN_POS_CENTER_ON_PARENT, which centers a dialog 
10114         on its parent window when the dialog is mapped for the first time.
10115
10116         * gtk/gtkmessagedialog.h, gtk/gtkmessagedialog.c: Add 
10117         a simple message dialog class
10118         
10119         * gtk/gtkdialog.c (gtk_dialog_init): Connect delete event 
10120         handler to emit response signal, and maybe later it would
10121         honor a hide_on_delete flag - though that isn't there yet.
10122         Set border width on the vbox to 2, so we get some padding.      
10123         Use a button box for the action area.
10124         (gtk_dialog_key_press): synthesize a delete event if Esc
10125         is pressed and the GtkWidget key press handler didn't 
10126         handle the escape key.
10127         (gtk_dialog_new_with_buttons): new function creates a dialog
10128         with some default buttons in it.
10129         (gtk_dialog_add_action_widget): add an activatable widget
10130         as a button in the dialog - you can also add a non-activatable
10131         widget by accessing the action area directly.
10132         (gtk_dialog_add_button): add a simple button - stock ID or 
10133         label - to the action area
10134         (gtk_dialog_response): emit response signal
10135         (gtk_dialog_run): block waiting for the dialog, return 
10136         the response. Override normal delete_event behavior, so that 
10137         delete_event does nothing inside gtk_dialog_run().
10138
10139         * gtk/gtkdialog.h, gtk/gtkdialog.c: Add "response" signal
10140         emitted when an action widget is clicked or the dialog gets
10141         delete_event
10142
10143         * gtk/gtk.h: add gtkmessagedialog.h
10144
10145         * gtk/Makefile.am: add gtkmessagedialog.[hc]
10146
10147 2000-10-18  Havoc Pennington  <hp@redhat.com>
10148
10149         * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): Fix a bug 
10150         where any number of empty lines would get skipped
10151
10152         * gtk/gtktextiter.h: Remove padding from GtkTextIter; live on the
10153         edge.
10154
10155         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): enhance the
10156         warning about invalid iterators (explain more thoroughly)
10157         (gtk_text_iter_in_region): rename gtk_text_iter_in_range
10158
10159         * gtk/gtktextview.c (FOCUS_EDGE_WIDTH): Make focus rectangle less
10160         big
10161
10162         * demos/*.c: Add error handling
10163
10164         * gtk/gtktextbuffer.c: don't modify const iterators
10165
10166         * gtk/gdk-pixbuf-loader.c: Add full error handling here
10167
10168         * gtk/gtkimage.c (gtk_image_set_from_file): ignore errors
10169         on file load
10170
10171         * gtk/gtkiconfactory.c: Update to reflect addition of error
10172         handling to gdk-pixbuf loaders
10173
10174 Wed Oct 18 11:14:05 2000  Owen Taylor  <otaylor@redhat.com>     
10175
10176         * configure.in demos/Makefile.am demos/testgtk/*: Start of work to
10177         move to new modularized testgtk.
10178
10179 2000-10-17  Jonathan Blandford  <jrb@redhat.com>
10180
10181         * gtk/gtktreeview.c: Draw the arrows correctly.
10182
10183         * gtk/gtktreemodel.c: Added user docs.
10184
10185         * gtk/gtk.h: remove gtktreedatalist.h.
10186
10187         * gtk/gtktreestore.c (gtk_tree_store_get_type): Get the correct
10188         parent when generating my type.
10189
10190         * gtk/gtkmarshal.list: Added four more marshallers: INT:NONE,
10191         POINTER:NONE, POINTER:POINTER, and POINTER:POINTER,INT.
10192
10193 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
10194
10195         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): Move
10196         GtkTreeModel from object to interface.
10197
10198 2000-10-16  Havoc Pennington  <hp@redhat.com>
10199
10200         * gtk/gtktreeviewcolumn.c: #include gtklabel.h, fixing 
10201         compilation
10202
10203 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
10204
10205         * gtk/gtktreeselection.c: Add API documentation to all public
10206         functions.
10207
10208         * gtk/gtktreeviewcolumn.c: Added API documentation to all public
10209         functions.
10210
10211 2000-10-15  Jonathan Blandford  <jrb@redhat.com>
10212
10213         * gtk/gtktreeview.c (gtk_tree_view_insert_column): New function
10214         proposed by Guy Harris <gharris@flashcom.net>.  Also, added API
10215         docs to all public functions.
10216
10217         * gtk/gtktreeview.c, gtk/gtktreeview.h, gtk/gtktreestore.h,
10218         gtk/gtktreestore.c, gtk/gtkliststore.h, gtk/gtkliststore.c,
10219         gtk/gtkmodelsimple.c, gtk/gtkmodelsimple.h, gtk/gtktreedatalist.c,
10220         gtk/gtktreemodel.h, gtk/gtktreeselection.c,
10221         gtk/gtktreeselection.h: Fix GtkTreeNode *node ->GtkTreeNode node
10222         issue.
10223
10224 2000-10-14  Robert Brady  <robert@suse.co.uk>
10225
10226         * configure.in: Added "fa" (Persian) to ALL_LINGUAS.
10227
10228 2000-10-12  Jonathan Blandford  <jrb@redhat.com>
10229
10230         * gtk/gtktreedatalist.[ch] (gtk_tree_data_list_value_to_node): Added
10231         values other then G_TYPE_STRING.
10232         * gtk/gtktreeselection.c: Minor commenting updates.
10233         * gtk/gtktreeview.c: Format updates.
10234
10235 2000-10-09  Tor Lillqvist  <tml@iki.fi>
10236
10237         * README.win32: Update.
10238
10239         * gdk/win32/gdkgeometry-win32.c (gdk_window_clip_changed): Add two
10240         lines that had been deleted by mistake (?).
10241
10242         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Handle
10243         also the case fg==white and bg==black (but still not randomly
10244         coloured cursors). Thanks to Wolfgang Sourdeau.
10245
10246         * gdk/win32/*.c: Silence gcc -Wall.
10247
10248         * gtk/gtk.def: Add missing entry points.
10249
10250         Fixes by Hans Breuer:
10251
10252         * gdk/makefile.msc
10253         * gdk/win32/makefile.msc: Update.
10254
10255         * gdk/testgdk.c: If compiling with debugging (with _DEBUG defined,
10256         some MSVC thing, presumably), cause breakpoint on failures. Add
10257         GDK_NOR case. Call g_log_set_always_fatal.
10258
10259         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_insert): Handle
10260         should be pased by reference.
10261         
10262         * gdk/win32/gdkprivate-win32.h: Correct declaration accordingly.
10263         
10264         * gdk/win32/*.c: Correct calls to gdk_win32_handle_table_insert.
10265
10266         * gdk/win32/gdkevents-win32.c
10267         * gdk/win32/gdkwindow-win32.c: Handle WM_CREATE.
10268
10269         * gdk/win32/gdkgc-win32.c: Fix mixups of drawable and
10270         implementation object.
10271
10272         * gdk/win32/gdkimage-win32.c (gdk_image_get): Handle drawables,
10273         not just windows.
10274         
10275         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_impl_win32_finalize):
10276         Use the wrapper object.
10277         
10278 2000-10-06  Havoc Pennington  <hp@redhat.com>
10279
10280         * Makefile.am (SRC_SUBDIRS): contrib subdir
10281
10282         * gdk/gdkpixbuf.h: Move GdkPixbufAlphaMode to gdk-pixbuf library,
10283         so it can be used in Xlib version
10284
10285         * demos/testpixbuf.c (update_timeout): error checking from 1.0
10286         tree
10287
10288         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_get_pixbuf): Sync
10289         change from 1.0 tree that returns first frame of animation
10290         if the loaded file is an animation.
10291
10292         * contrib: add new directory to hold stuff that comes with GTK+
10293         but isn't really part of GTK+ (for now, gdk-pixbuf-xlib)
10294         
10295         * configure.in: add contrib/*
10296
10297 2000-10-05  Havoc Pennington  <hp@redhat.com>
10298
10299         * demos/testpixbuf-save.c: add pixbuf save test
10300
10301         * demos/Makefile.am: add testpixbuf-save.c
10302
10303 2000-10-05  Jonathan Blandford  <jrb@redhat.com>
10304
10305         * gtk/gtktree.h (GTK_TREE_SELECTION): Replaced with
10306         GTK_TREE_SELECTION_OLD to prevent conflict with gtktreeselection.c
10307         * gtk/testgtk.c: s/GTK_TREE_SELECTION/GTK_TREE_SELECTION_OLD/
10308         * gtk/gtktreeselection.[ch]: Replaced
10309         "node_selected"/"node_unselected" signal with "selection_changed"
10310         signal.
10311
10312 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
10313
10314         * gtk/gtk{tree,cell}?*.[ch]: Checked in initial draft of the new
10315         tree widget.
10316
10317 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
10318
10319         * gdk/gdkwindow.c (gdk_window_draw_arc): Fix obvious bug in circle
10320         drawing.
10321
10322 Wed Oct  4 15:52:15 2000 Owen Taylor  <otaylor@redhat.com>
10323
10324         * gdk/x11/gdkselection-x11.c (_gdk_selection_window_destroyed):
10325         Move list pointer forwards before removing item from
10326         list. (Crash reported by Salmaso Raffaele)
10327
10328         * gdk/gdkwindow.h: Remove spurious trailing ,
10329
10330         * gdk/Makefile.am (LDFLAGS): You can't do interlibrary
10331         dependencies on uninstalled libraries, sorry folks.
10332
10333 2000-10-04  Havoc Pennington  <hp@redhat.com>
10334
10335         * gtk/gtkstock.h, gtk/gtkstock.c, gtk/gtkiconfactory.h,
10336         gtk/gtkiconfactory.c: Fix copyrights    
10337
10338         * demos/testpixbuf.c: add inline pixbuf test
10339         
10340 Mon Sep 25 15:05:17 2000  Owen Taylor  <otaylor@redhat.com>
10341
10342         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c (gdk_window_iconify):
10343         Add gdk_window_iconify.
10344
10345         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c
10346         (gdk_window_set_geometry_hints): Add win_gravity
10347         to geometry structure.
10348
10349         * gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter):
10350         Implement _NET_WM_PING.
10351
10352         * gdk/x11/gdkmain-x11.c (_gdk_windowing_init_check):
10353         Set _NET_WM_PID on the client leader.
10354
10355         * gdk/x11/gdkwindow-x11.c (gdk_window_set_icon_name):
10356         Handle UTF-8 better.
10357
10358         * gdk/x11/gdkwindow-x11.c (gdk_window_set_title): Handle
10359         UTF-8 better, set _NET_WM_NAME as well. Only set
10360         icon name if it hasn't previously been explicitely 
10361         set.
10362
10363 2000-10-03  Havoc Pennington  <hp@redhat.com>
10364
10365         * gtk/testtextbuffer.c: clean up trailing whitespace,
10366         add extensive tests for tag toggle iteration.
10367         
10368         * gtk/gtktextiter.c (MAX_LINEAR_SCAN): decrease linear scan 
10369         distance
10370
10371         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
10372         optimize case where the tag root is on level 1
10373         (gtk_text_line_previous_could_contain_tag): attempt to implement
10374         (gtk_text_line_next_could_contain_tag): Abstract out node_compare
10375         functionality
10376
10377         * gtk/gtktextiter.c (gtk_text_iter_backward_to_tag_toggle):
10378         Implement this, though not very efficiently.
10379
10380         * gtk/gtktextiterprivate.h: reformat
10381
10382         * gtk/gtktextiter.c (gtk_text_iter_get_char): return 0 on the end
10383         iterator
10384
10385         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_interactive): Fix
10386         this to properly revalidate the iterators.
10387
10388         * gtk/gtktextview.c (gtk_text_view_delete): fix control-K to work
10389         properly at the end of the line (and therefore on empty lines)
10390
10391         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Gee,
10392         maybe we should return a value...
10393
10394 2000-10-03  Tor Lillqvist  <tml@iki.fi>
10395
10396         * config.h.win32: Guard definition of alloca(). glib.h now handles
10397         that.
10398
10399         * gdk/gdk.def
10400         * gtk/gtk.def: Add new entry points.
10401
10402         Changes just to make GTK+ build without errors on Win32. No hope
10403         of it working in its current state, though...:
10404         
10405         * gdk/win32/gdkselection-win32.c: Remove gcc -Wall warnings.  Add
10406         some functions from the X11 backend, just to make GTK+ build.
10407
10408         * gdk/makefile.mingw.in
10409         * gtk/makefile.mingw.in: Use correct gdk_pixbuf version
10410         number. Add new object files.
10411
10412         * gtk/gtkclipboard.c: Include gdkwin32.h on Win32. Use
10413         GetMessageTime to get timestamp (where on X11 uses
10414         gdk_x11_get_server_time()).
10415
10416 2000-10-02  Havoc Pennington  <hp@pobox.com>
10417
10418         * gtk/gtktextview.c: text_window_* weren't static and should have
10419         been.
10420         Start work on child widgets; not yet complete, syncing to 
10421         office computer.
10422
10423         * gtk/gtktextchild.h: change this to contain a public interface,
10424         starting work on child interfaces.
10425         * gtk/gtktextchildprivate.h: move private interfaces here
10426
10427         * gtk/Makefile.am: update to reflect gtktextchildprivate.h
10428
10429         * gtk/gtktextview.h, gtk/gtktextview.c, gtk/gtktextbuffer.h,
10430         gtk/gtktextbuffer.c, gtk/gtktextiter.h, gtk/gtk/textiter.c, 
10431         gtk/gtktextmark.c: copyright notices
10432
10433         * gtk/gtktextmarkprivate.h: reformat, and put _ in front of
10434         internal functions      
10435
10436         * gtk/gtktextchild.c (_pixbuf_segment_new): put _ in front of
10437         internal function
10438
10439         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
10440         Reformatting    
10441
10442 2000-09-30  Havoc Pennington  <hp@pobox.com>
10443
10444         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Handle
10445         NULL start/end pointers
10446
10447         * gtk/gtktextbuffer.c: Write some docs
10448         (gtk_text_buffer_get_selection_bounds): Allow start/end to be
10449         NULL, so you can just check whether there's a selection.        
10450
10451         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): No need to 
10452         cleanup_line or segments_changed ourselves, it gets done 
10453         in unlink_segment
10454
10455         * gtk/gtktextmark.h:
10456         s/gtk_text_mark_deleted/gtk_text_mark_get_deleted/
10457         
10458         * gtk/gtktextsegment.h: Clean up some indentation and naming mess
10459
10460         * gtk/gtktextmark.c: delete some more old Tk cruft
10461
10462         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_mark): add ref to
10463         mark before removing it, so we can emit MARK_DELETED with a valid
10464         pointer.
10465         (gtk_text_buffer_mark_set): hold ref across signal emission
10466
10467         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): improve
10468         whining about attempts to delete special marks
10469
10470         * gtk/gtktextbuffer.c (_gtk_text_buffer_spew): Prepend with
10471         underscore, since it's internal.
10472
10473         * gtk/gtktextbuffer.h: Remove find_string prototype, this is 
10474         now implemented in terms of iterators in gtktextiter.h
10475
10476         * gtk/gtktextbuffer.c (gtk_text_buffer_set_text): 
10477         New function, destructively sets contents of buffer. Also 
10478         a convenient way to clear the buffer by setting text to ""
10479
10480         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): reformat
10481         multiline string literal
10482
10483         * gtk/testtext.c (text_changed_callback): Redraw line numbers if
10484         text changes.
10485
10486         * gtk/gtktextiter.c (forward_char): Return FALSE if new location 
10487         is not dereferenceable
10488         (gtk_text_iter_forward_lines): fix return value
10489
10490 2000-09-29  Havoc Pennington  <hp@redhat.com>
10491
10492         * gtk/gtktexttag.c (gtk_text_tag_set_priority): fix indentation
10493
10494         * gtk/gtktextview.c: Implement drag thresholding; change functions 
10495         that set border window size to have nicer name
10496         (gtk_text_view_mark_set_handler):  Fix this to have the 
10497         right signature.
10498
10499         * gtk/testtextbuffer.c (fill_buffer): Update with pixbuf changes
10500
10501         * gtk/testtext.c: Update with API changes, put line numbers on 
10502         both sides.
10503         
10504         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): Replace get_pixmap
10505         with this
10506
10507         * gtk/gtktextchild.h, gtk/gtktextchild.c: replace all pixmap with
10508         pixbuf; delete a big block of #if 0 Tk code
10509
10510         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_pixbuf): Replace 
10511         insert_pixmap with insert_pixbuf
10512
10513 2000-09-29  Martin Baulig  <baulig@suse.de>
10514
10515         * gdk-pixbuf.pc.in: Renamed to gdb-pixbuf-2.0.pc.in to avoid
10516         confusion with the GdkPixbuf of the GNOME 1.x platform.
10517
10518 2000-09-29  Havoc Pennington  <hp@pobox.com>
10519
10520         * gtk/gtktextview.c: Implement the side windows.
10521
10522         * gtk/testtext.c: Implement simple line numbering in the 
10523         left side window; seems to make scrolling sloooow. Oops.
10524         Also, cursor blink is for some reason causing redraws
10525         of the line numbers. Should investigate...
10526
10527 2000-09-28  Havoc Pennington  <hp@redhat.com>
10528
10529         * gtk/gtktextview.c: Set up infrastructure to deal with lots of 
10530         scrolling child windows, and draw focus rectangle properly.
10531         
10532         (gtk_text_view_buffer_to_window_coords):
10533         Coordinate transformation to deal with all these freaking windows
10534         and offsets
10535         (gtk_text_view_window_to_buffer_coords): transform the other way
10536
10537         * gtk/testtext.c (create_buffer): Update to match Pango API change
10538
10539         * gtk/gtktexttagtable.c (gtk_text_tag_table_foreach): Go over the
10540         anonymous tags
10541         (foreach_unref): don't emit remove signal from finalize, just
10542         set tag's parent to NULL
10543
10544 2000-09-26  Havoc Pennington  <hp@redhat.com>
10545
10546         * gtk/gtkiconfactory.c (gtk_icon_set_clear): remove
10547         Fix some warnings       
10548
10549 2000-09-26  Havoc Pennington  <hp@redhat.com>
10550
10551         * gtk/Makefile.am (gtk_private_h_sources): Move more text widget
10552         headers into the private header list
10553
10554         * Makefile.am (pkgconfig_DATA): install pkg-config files
10555
10556         * configure.in: add pkg-config files
10557
10558         * gdk-2.0.pc.in, gdk-pixbuf.pc.in, gtk+-2.0.pc.in: pkg-config files
10559
10560         * gtk/gtkwindow.c (gtk_window_read_rcfiles): Invalidate
10561         outstanding icon caches on theme change.
10562
10563         * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: New icon system. Three 
10564         important types:
10565
10566         (GtkIconSource): Specification for creating a pixbuf 
10567         appropriate for a direction/state/size triplet from 
10568         a source pixbuf or filename
10569
10570         (GtkIconSet): List of GtkIconSource objects that are used to
10571         create the "same" icon (e.g. an OK button icon), and cache for
10572         rendered icons
10573
10574         (GtkIconFactory): Hash from stock ID to GtkIconSet; used to look
10575         up the icon set for a given stock ID.  GTK maintains a stack of
10576         GtkIconFactory to search, and applications or libraries can add
10577         additional icon factories on top of the stack
10578         
10579         * gtk/gtkrc.h, gtk/gtkrc.c: When loading an RcStyle, parse 
10580         the set of GtkIconSource specified for a given stock ID into 
10581         a GtkIconSet, and put the GtkIconSet into a GtkIconFactory for the 
10582         RcStyle, under the specified stock ID.
10583
10584         * gtk/gtkstyle.h, gtk/gtkstyle.c: Add a virtual function
10585         render_icon used to derive a GdkPixbuf from a GtkIconSource.
10586         This allows people to theme how prelight, insensitive, etc. are
10587         done.
10588
10589         (gtk_style_lookup_icon_set): Look up a stock ID in the list of
10590         icon factories for a style, and return the resulting 
10591         icon set if any.
10592
10593         (gtk_style_render_icon): Render an icon using the render_icon 
10594         method in the GtkStyleClass.
10595
10596         * gtk/gtkwidget.h, gtk/gtkwidget.c (gtk_widget_render_icon): 
10597         Use the style for a given widget to look up a stock ID, get the
10598         icon set, and render an icon using the render_icon method 
10599         of the style
10600
10601         * gtk/gtkstock.h, gtk/gtkstock.c: Header with the GtkStockItem type
10602         (contains information about a stock item), the built-in stock item
10603         IDs, and functions to add/lookup stock items.
10604
10605         * gtk/stock-icons/*: Stock icons that come with GTK
10606
10607         * gtk/gtkbutton.h, gtk/gtkbutton.c (gtk_button_new_stock): Returns
10608         a button based on a GtkStockItem
10609         (gtk_button_new_accel): Takes a uline string and accel group, and
10610         installs the accelerator.
10611
10612         * gtk/gtkimage.h, gtk/gtkimage.c: Make this into a generic
10613         image-display widget.
10614
10615 2000-09-25  Havoc Pennington  <hp@redhat.com>
10616
10617         * gtk/gtktexttypes.c: Remove Latin1 conversion stuff
10618
10619         * gtk/gtktextbtree.c (gtk_text_btree_node_remove_data): 
10620         Fix a bug when removing node data, we didn't properly 
10621         re-splice the linked list after removing the data.
10622
10623         * gtk/gtktextview.c (gtk_text_view_key_press_event): Pass through 
10624         GDK_Tab as literal tab, Ctrl-Tab to tab to focus widget
10625
10626         * gtk/gtktextbuffer.c (selection_received): fix g_convert usage
10627
10628         * gtk/gtktextlayout.c (set_para_values): Set tab array 
10629         for the layout from the GtkTextTag.
10630
10631         * gtk/gtktexttypes.h: delete tab and search cruft, 
10632         remove g_convert() in favor of GLib version
10633
10634         * gtk/gtktexttypes.c: remove tab implementation from here,
10635         move to Pango
10636
10637         * gtk/gtktexttag.h, gtk/gtktexttag.c: Implement 
10638         tab stuff using new PangoTabArray from Pango
10639
10640         * gtk/gtktexttag.c (gtk_text_attributes_fill_from_tags): Remove
10641         unused border_width stuff
10642
10643 Thu Sep 14 12:21:12 2000  Owen Taylor  <otaylor@redhat.com>
10644
10645         * gtk/gtktexttypes.[ch]: Remove g_convert (moved to
10646         glib) and now useless utf_to_latin1() latin1_to_utf()
10647
10648         * gtk/gtktextview.[ch]: Change ::move_insert and
10649         ::delete_text action signals to ::move and ::delete;
10650         create the signals with the right enumeration type,
10651         not GTK_TYPE_ENUM so that bindings work. Add C-d, M-d,
10652         C-v bindings, change Home, End to move to beginning/end
10653         of line, Add C-Home C-End to move to beginning/end
10654         of buffer. Change ::cut_text to ::cut_clipboard, etc;
10655         combine ::scroll_text into ::move; use new GtkSelectionData
10656         functions to simplify DND text handling.
10657         
10658         * gtk/gtkenums.h gtk/gtktextview.h: Move movement,
10659         deletion enumerations here, rename enumeration values to 
10660         be consistently plural.
10661
10662         * gtk/gtktextbuffer.c: Use new clipboard interfaces
10663         for cut/copy/paste and primary selection.
10664
10665         * gtk/gtktextbuffer.[ch]: Remove excess time and
10666         'interactive' arguments from cut/copy/paste;
10667         rename cut to cut_clipboard, etc; remove
10668         gtk_text_buffer_get_clipboard_contents().
10669
10670         * gtk/gtktextlayout.[ch]: Add 
10671         gtk_text_layout_move_iter_to_line_end() to move the iter to 
10672         line ends.
10673
10674         * gtk/gtkselection.[ch] (gtk_selection_data_set/get_text):
10675         Functions to set or get a UTF-8 string on the selection
10676         data.
10677
10678         * gtk/gtkclipboard.[ch]: New, simplified selection handling
10679         interfaces.
10680
10681         * gtk/gtkinvisible.c (gtk_invisible_new): Realize newly
10682         created widgets - one of these is useless if we don't.
10683
10684         * gtk/gtkselection.[ch] (gtk_selection_clear_targets): Export
10685         a public function clear all targets registered for the
10686         widget.
10687
10688         * gtk/gtkselection.c (gtk_selection_owner_set) docs/Changes-2.0.txt:
10689         Never call gtk_widget_realize() - that was just asking
10690         for bizarre side-effects.
10691
10692         * gtk/gtkselection.c (gtk_selection_owner_set): Call
10693         gdk_selection_owner_set even if the widget is the
10694         same so that we reliably update the timestamp on
10695         the server.
10696
10697         * gdk/x11/gdkevents-x11.c gdk/x11/gdkx.h: Add a 
10698         gdk_x11_get_server_time() function.
10699         
10700         * gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.h
10701         gdk/x11/gdkselection-x11.c gdk/x11/gdkwindow-x11.h:
10702         Add some tricky filtering on serial numbers for
10703         selection clear events to fix up long-standard
10704         race condition FIXME's in gtkselection.c.
10705
10706         * gdk/gdkproperty.h gdk/x11/gdkselection-x11.h: Add
10707         routines to convert from utf8 to compound text or
10708         STRING and from a text property to UTF-8.
10709
10710         * gtk/gtkmain.[ch] (gtk_get_current_event_time): Add 
10711         a convenience function gdk_get_current_event_time().
10712
10713         * gtk/gtkselection.c (gtk_selection_data_copy/free): Copy
10714         and free selection_data->data properly
10715
10716 Sat Sep  9 10:23:53 2000  Owen Taylor  <otaylor@redhat.com>
10717
10718         * gtk/gtkthemes.c: Remove some unecessary includes.
10719
10720 2000-09-08  Jonathan Blandford  <jrb@redhat.com>
10721
10722         * gtk/gtktextdisplay.c
10723         * gtk/gtktextlayout.c
10724         * gtk/gtktexttag.c
10725         * gtk/gtktexttag.h
10726         * gtk/testtext.c: Change the overstrike property to strikethrough,
10727         to closer match pango.
10728
10729 Fri Sep  8 14:28:00 2000  Owen Taylor  <otaylor@redhat.com>
10730
10731         * gtk/gtktextview.c: Fix up visibility so that focus,
10732         cursor_visible and blink interact properly.  Reenable cursor blink
10733         which had been roughly disabled. Make blink and focus
10734         properly per-view.
10735
10736         * gtk/gtktextlayout.[ch] (gtk_text_layout_set_cursor_visible):
10737         Add a flag for whether to display insertion cursor and
10738         a function to set the flag.
10739
10740         * gtk/gtktextlayout.c (gtk_text_layout_get_line_yrange): Change
10741         get_line_y() to get_line_yrange(), to be a bit more generally
10742         useful.
10743
10744 Thu Sep 07 20:54:33 2000  George Lebl <jirka@5z.com>
10745
10746         * gtk/gtkmenu.c:  in gtk_menu_set_submenu_navigation_region
10747           do stop_navigating_submenu, to clear last timeout properly.
10748           Also in gtk_menu_motion_notify move ignore_enter above
10749           the conditional to make it always happen as suggested by Owen
10750
10751 2000-09-07  Tor Lillqvist  <tml@iki.fi>
10752
10753         * gdk/win32/makefile.mingw.in: Use -Wall. Add gdkpango-win32.o
10754
10755         * gdk/win32/gdkwin32.h: Add more definitions missing from the free
10756         w32api headers.
10757
10758         * gdk/win32/gdkprivate-win32.h: Add a couple of missing
10759         declarations.
10760
10761         * gdk/win32/gdkdrawable-win32.c: Remove gcc -Wall warnings.
10762         (gdk_win32_get_colormap): A line had been deleted by mistake.
10763
10764         * gdk/win32/gdkevents-win32.c: Remove lint (gcc -Wall) here, too.
10765         (gdk_event_translate): Handle more virtual keycodes to be able to
10766         generate GDK events for Control-comma, Control-period, etc.
10767
10768         * gtk/gtk.def: Add some missing entry points.
10769
10770 Thu Sep  7 11:47:02 2000  Owen Taylor  <otaylor@redhat.com>
10771
10772         * gtk/gtktextbuffer.c gtk/gtkimcontext.c gtk/gtkwidget.c:
10773         Doc comment fixing. (Mostly non-matching parameter names.)
10774
10775         * gtk/gtkcalendar.c gtk/gtklist.c gtk/gtknotebook.c: Modify
10776         comments a little to avoid looking like a doc comment.
10777
10778         * gtk/gtkspinbutton.h (GTK_INPUT_ERROR): Change INPUT_ERROR to
10779         GTK_INPUT_ERROR. (Should the mechanism for erros in spin button
10780         conversions be changed to GError?)
10781
10782         * gtk/gtkcolorsel.c (GTK_CUSTOM_PALETTE_WIDTH/HEIGHT): 
10783         Move private #defines into .c file.
10784
10785         * gtk/gtktexttag.c (gtk_text_tag_class_init): Alphabetize
10786         order of argument addition, remove duplicates.
10787
10788         * gtk/gtkaspectframe.h (struct _GtkAspectFrameClass):
10789         parent class is FrameClass, not BinClass.
10790
10791         * gtk/gtk.h: Add gtkinvisible, which was missing.
10792         (It's occasionalyl useful for client apps, if seldom.)
10793
10794         * gdk/gdktypes.h: Remove obsolete GDK_CORE_POINTER
10795         #define.
10796
10797 Wed Sep  6 09:53:15 2000  Owen Taylor  <otaylor@redhat.com>
10798
10799         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Use X-space
10800         coordinates when creating window, instead of GDK-space
10801         coordinates. (Avoid BadValue on too large windows.)
10802
10803 2000-09-05  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
10804
10805         * configure.in (use_mmx_asm): Remove conftest* after use along the
10806         lines of AC_TRY_COMPILE.        
10807         
10808         * gtk/gtkrc.c (gtk_rc_parse_file): Use g_path_get_dirname instead
10809         of g_dirname, which is deprecated.
10810         (gtk_rc_parse_any): Removed calls to
10811         g_scanner_{freeze,thaw}_symbol_table, which are deprecated.
10812
10813         * gtk/gtkbindings.c (binding_entry_new, binding_entry_destroy):
10814         Removed calls to g_hash_table_{freeze,thaw}, as they are
10815         deprecated now.
10816
10817         * gtk/testtext.c (buffer_pretty_name): Use g_path_get_basename
10818         instead of g_basename.
10819         
10820 2000-09-04 Elliot Lee <sopwith@redhat.com>
10821         
10822         * gdk/gdkpixbuf.h: Put text after #endif inside a comment to avoid
10823         ANSI warning.
10824
10825 Sun Sep 03 00:47:08 2000  George Lebl <jirka@5z.com>
10826
10827         * gtk/gtkwidget.h:  Add some documenting comments about 
10828           GTK_CAN_DEFAULT, GTK_HAS_DEFAULT and GTK_RECEIVES_DEFAULT
10829           just as owen said on irc.
10830
10831         * gtk/gtkwindow.c (gtk_window_set_default):  Don't blindly
10832           set HAS_DEFAULT.  Only set it if there isn't another window
10833           holding it (a focus window which RECEIVES_DEFAULT) and only unset
10834           it if the widget is not the focused window with RECEIVES_DEFAULT.
10835           This fixes weird double default bugs in dialogs which has things
10836           call gtk_window_set_default at times.
10837
10838 Fri Sep  1 22:39:07 2000  Owen Taylor  <otaylor@redhat.com>
10839
10840         * gtk/gtkmenu.[ch] TODO.xml: Apply patch from
10841         Nils Barth and David Santiago to improve submenu
10842         navigation. The patch does this by creating a triangular
10843         region from the point where the pointer leaves the
10844         menu to the submenu.  While the pointer is in
10845         that region and a timeout has not expired, events 
10846         that would cause the active submenu to change are
10847         ignored.
10848
10849 Fri Sep  1 15:34:46 2000  Owen Taylor  <otaylor@redhat.com>
10850
10851         * gdk/x11/gdkwindow-x11.c (gdk_window_move): Fix bug where
10852         moving a toplevel window immediately after sizing it would
10853         result in it being sized back to the old size since 
10854         impl->width, impl->height aren't updated until we hear
10855         back from the server. There is still a (longstanding) bug
10856         here that gdk_window_get_size() will give the wrong size
10857         until we do hear back.
10858
10859 2000-08-31  Havoc Pennington  <hp@redhat.com>
10860
10861         * gtk/gtktextiter.h, gtk/gtktextiter.c, gtk/gtktextlayout.h, 
10862         gtk/gtktextlayout.c, gtk/gtktexttag.h, gtk/gtktexttag.c, 
10863         gtk/gtktexttagprivate.h, gtk/gtktextview.c:
10864         Rename GtkTextStyleValues to GtkTextAttributes
10865
10866 2000-08-31  Havoc Pennington  <hp@pobox.com>
10867
10868         * gtk/gtktextbtree.c (GtkTextBTree): cache end line, 
10869         for rapid testing whether an iterator is the end iterator
10870         (gtk_text_btree_new): init end line cache
10871         (gtk_text_line_is_last): use fast cached line to 
10872         see if we're the last line.
10873         (get_last_line): use cached line here too, should 
10874         speed up some random unrelated code.
10875         
10876 2000-08-30  Havoc Pennington  <hp@pobox.com>
10877
10878         * gtk/gtkmarshal.list: Add marshallers for changed GtkTextBuffer
10879         signals.
10880
10881         * gtk/gtktextbuffer.h: Add "interactive" arg to insert_text and
10882         delete_text signals. This allows the signals to be used for
10883         implementing undo.
10884
10885         * gtk/gtktextbuffer.c: Change signal handler signatures; 
10886         provide "interactive" argument when emitting insert_text or
10887         delete_text signal.
10888         
10889 2000-08-30  Havoc Pennington  <hp@pobox.com>
10890
10891         * gtk/gtktextbuffer.c: Docs
10892
10893 Fri Aug 25 12:16:15 2000  Owen Taylor  <otaylor@redhat.com>
10894
10895         * gdk/x11/gdkimage-x11.c: remove GDK_IMAGE_SHARED_PIXMAP
10896         from switch statements, since Tor removed the enumeration
10897         value.
10898         
10899         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
10900         s/GDK_IS_WINDOW/GDK_IS_DRAWABLE/.
10901
10902 2000-08-29 Elliot Lee <sopwith@redhat.com>
10903         * */*.h: Use G_GNUC_CONST.
10904
10905 2000-08-27  Havoc Pennington  <hp@pobox.com>
10906
10907         * gtk/gtktextiter.c, gtk/gtktextiter.h: wrote lots of API docs,
10908         minor indentation fixes, inserted some FIXME about stuff I
10909         realized was broken while documenting it.
10910         (gtk_text_iter_get_pixmap): allow out params to be NULL, following
10911         GTK convention  
10912
10913 Tue Aug 22 12:33:24 2000  Owen Taylor  <otaylor@redhat.com>
10914
10915         * gtk/testgtk.c (create_styles): Fix double free of
10916         font desc.
10917
10918 Mon Aug 21 22:39:18 2000  Owen Taylor  <otaylor@redhat.com>
10919
10920         * gtk/gtkwidget.[ch]: Add gtk_widget_modify_{fg,bg,text,base,font}.
10921         
10922         * gtk/testgtk.c (create_styles): Add a test for modifying
10923         the style through gtk_widget_modify_*.
10924
10925         * gtk/gtkwidget.c (gtk_widget_get_modifier_style): Add
10926         a function to get the current modifier style.
10927
10928         * gtk/gtkwidget.c (gtk_widget_modify_style): Make a copy
10929         of the passed in GtkRcStyle instead of ref'ing it.
10930
10931         * gtk/gtkrc.[ch]: Add gtk_rc_style_copy().
10932
10933 2000-08-20  Tor Lillqvist  <tml@iki.fi>
10934
10935         * gdk/gdkimage.h
10936         * gdk/win32/gdkimage-win32.c: No need any longer on Win32 for the
10937         shared memory image+pixmap GdkImage type, or
10938         gdk_image_bitmap_new(). They were used in the gdk_imlib port, but
10939         I am dropping that.
10940
10941         * gtk/gtkmain.h: On Win32, use a #define to map gtk_init() to
10942         actually call gtk_init_abi_check(), passing also
10943         sizeof(GtkWindow). Ditto for gtk_init_check(). 
10944
10945         * gtk/gtk.def
10946         * gtk/gtkmain.c: (gtk_init_abi_check, gtk_init_check_abi_check):
10947         New functions, used to check that the GTK+-using code has been
10948         compiled using the correct compiler and switches. In particular,
10949         with gcc one has to use the -fnative-struct switch as GTK+ is
10950         compiled with that.
10951
10952 Fri Aug 18 17:27:46 2000  Owen Taylor  <otaylor@redhat.com>
10953
10954         * gtk/gtkclist.c (gtk_clist_merge): Don't leave dangling
10955         ->prev fields when merging lists. (Found simultaneously
10956         by Pawel Salek and Jakub Jelinek)
10957
10958 2000-08-12  Tor Lillqvist  <tml@iki.fi>
10959
10960         * gdk/gdk.def
10961         * gtk/gtk.def: Add missing entries.
10962
10963         * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Use
10964         OUT_TT_ONLY_PRECIS, try to get a TrueType font.
10965
10966         * gdk/win32/gdkinput-win32.c (gdk_device_get_state): New
10967         function. Dummy implementation at this point.
10968
10969         * gtk/makefile.mingw.in: Fix typo. Add testtext and testtextbuffer
10970         rules. Undefine GTK_COMPILATION when compiling the test programs.
10971         
10972         * gtk/gtkdebug.h: Mark gtk_debug_flags for export/import.
10973
10974 2000-08-11  Tor Lillqvist  <tml@iki.fi>
10975
10976         * gtk/gtkfilesel.c: Add more calls to g_filename_{to,from}_utf8()
10977         to convert back and forth from UTF-8 and the "system" (or "current
10978         locale") charset when necessary. Indentation/spacing cleanup.
10979
10980 2000-08-10  Havoc Pennington  <hp@redhat.com>
10981
10982         * Makefile.am (snapshot): Change the format of the snapshot
10983         version to match glib
10984
10985         * gdk/win32/Makefile.am (EXTRA_DIST): remove gdkinputprivate.h
10986         from EXTRA_DIST since it doesn't seem to exist
10987
10988 2000-08-10  Tor Lillqvist  <tml@iki.fi>
10989
10990         * gtk/gtkfilesel.c (open_new_dir): Use the "system codepage"
10991         version of the directory name (not the UTF-8 one) when building
10992         the path name to stat().
10993
10994 2000-08-03  Elliot Lee  <sopwith@redhat.com>
10995
10996         * gdk/gdkpango.c (gdk_draw_layout_line): Don't shape runs with a
10997         PANGO_ATTR_SHAPE set.
10998
10999 Thu Aug  3 09:17:06 2000  Owen Taylor  <otaylor@redhat.com>
11000
11001         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Applied patch from
11002         Peter Osterlund to simplify the code while keeping the
11003         functionality the same.
11004
11005 Wed Aug  2 14:57:38 2000  Owen Taylor  <otaylor@redhat.com>
11006
11007         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Move
11008         is_viewable() test further inside the function, since removing the 
11009         window from the redraw list without clearing ->update_area
11010         was also very broken.
11011
11012 2000-08-02  Tor Lillqvist  <tml@iki.fi>
11013
11014         * configure.in: Check for <unistd.h>.
11015
11016 2000-08-01  Martin Baulig  <baulig@suse.de>
11017
11018         * gtk/gtkmain.c (gtk_init_check): Use g_message() and not g_warning()
11019         to display the message that this is a development version of GTK+.
11020
11021 Mon Jul 31 18:37:36 2000  Owen Taylor  <otaylor@redhat.com>
11022
11023         * gtk/gtkentry.c (entry_adjust_scroll): Fix problem where computation
11024         was depending on widget->allocation instead of the width of text_area,
11025         which was incorrect for subclasses like GtkSpinButton.
11026
11027         * gdk/gdkpango.c (gdk_draw_layout): Fix a couple of typos
11028         with width == 1 tests that should be width == -1.
11029
11030 Mon Jul 31 16:45:48 2000  Owen Taylor  <otaylor@redhat.com>
11031
11032         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Replace broken, 
11033         (broken, Elliot, every single window blank on X) custom code with call
11034         to gdk_window_is_viewable() which a) prevents code duplicate and
11035         b) works. 
11036
11037 2000-07-31  Elliot Lee  <sopwith@redhat.com>
11038
11039         * gtk/gtkcolorsel.c: We really do need to include gdkfb.h in order
11040         to get the GDK_PARENT_ROOT() macro to work.
11041         * gtk/gtkmarshal.list: Add NONE:STRING,POINTER
11042         * gdk/gdkwindow.c: Don't send expose events, or invalidate pieces
11043         of, windows that aren't shown.
11044         * gdk/linux-fb: Redraw-when-menu-hidden solved, plus a bunch of
11045         pointer grab stuff.
11046
11047 Mon Jul 31 13:53:16 BST 2000  Tony Gale <gale@gtk.org>
11048
11049         * docs/gtkfaq.sgml docs/gtk-faq.sgml:
11050           s/gtk_main_iteration/g_main_iteration/
11051
11052           Did this already in change:
11053                 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
11054           don't know how it got reverted.
11055
11056 2000-07-31  Stanislav Brabec  <utx@penguin.cz>
11057
11058         * gdk/gdk.c: #ifdef G_ENABLE_DEBUG around gdk_arg_debug_cb and
11059         gdk_arg_no_debug_cb to fix compilation problem with --disable-debug.
11060
11061         * gdk/Makefile.am: Link gdk against actually compiled gdk_pixbuf-1.3,
11062         not gdk_pixbuf.
11063
11064 2000-07-30  Pablo Saratxaga <pablo@mandrakesoft.com>
11065
11066         * configure.in,po/{sp,sr}.po: Added Serbian files
11067
11068 2000-07-30  Tor Lillqvist  <tml@iki.fi>
11069
11070         * gdk/Makefile.am: Add makefile.mingw.in to EXTRA_DIST.
11071
11072         * gdk/win32/gdkevents-win32.c (gdk_events_init, gdk_events_queue):
11073         Remove the g_pipe_readable_msg stuff. Not needed with new GLib
11074         GIOChannel implementation.
11075
11076         * gdk/win32/gdkinput.c
11077         * gdk/win32/gdkpango-win32.c: Update license name here, too.
11078
11079         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_lookup): Fix
11080         definition to match prototype.
11081
11082         * gtk/makefile.mingw.in: Add libiconv CFLAGS and LIBS.
11083
11084 2000-07-27  Elliot Lee  <sopwith@redhat.com>
11085
11086         * gtk/gdk-pixbuf-loader.[ch]: Add gdk_pixbuf_loader_new_with_type
11087         function, to allow handling image formats that cannot be detected
11088         by looking at content alone.
11089
11090 Thu Jul 27 13:13:21 BST 2000  Tony Gale <gale@gtk.org>
11091
11092         * docs/tutorial/*.gif *.jpg *.eps
11093           Update these to the same look-n-feel.
11094           Why does including images in DocBook suck so badly?
11095
11096 Thu Jul 27 05:06:29 2000  Tim Janik  <timj@gtk.org>
11097
11098         * gtk/gtktable.c: applied patch from Phil Thompson
11099         <phil@river-bank.demon.co.uk> that enables space settings for
11100         the last row/columns as well.
11101
11102 Wed Jul 26 12:59:31 2000  Tim Janik  <timj@gtk.org>
11103
11104         * *.[hc]: applied patch from Andreas Persenius <ndap@swipnet.se> that
11105         updates the license headers to the GNU Lesser General Public License,
11106         as well as updating the copyright year to 2000.
11107
11108 2000-07-26  Robert Brady  <rwb197@zepler.org>
11109
11110         * configure.in: Cause GETTEXT_PACKAGE to be consistent in config.h
11111           and po/Makefile, was installing and looking for them under gtk20
11112           and gtk2 respectively.
11113
11114 2000-07-25  Havoc Pennington  <hp@redhat.com>
11115
11116         * gtk/testtext.c: Comment out some stuff that depends on the rest
11117         of my patches.
11118
11119 2000-07-25  Havoc Pennington  <hp@redhat.com>
11120
11121         * gtk/gtkmarshal.list: Add NONE:POINTER,POINTER,INT for the text
11122         buffer
11123
11124 2000-07-25  Havoc Pennington  <hp@redhat.com>
11125
11126         * gtk/testtext.c, gtk/testtextbuffer.c: update to reflect text
11127         widget changes.
11128
11129         * gtk/gtktextview.h: To be consistent with usage of "line"
11130         throughout the API to mean "newline-terminated thingy", change
11131         MOVEMENT_LINE to be MOVEMENT_WRAPPED_LINE, and MOVEMENT_PARAGRAPH
11132         to MOVEMENT_LINE.
11133
11134         (GtkTextView): Add flags for default editability, and whether to
11135         show the cursor. Add functions to get/set that. Add 
11136
11137         (gtk_text_view_get_iter_location): new function
11138
11139         * gtk/gtktexttypes.h: Move GtkTextLine typedef from here to
11140         gtktextlayout.h
11141         (g_convert): Add g_convert temporarily, will go in glib in a bit
11142         
11143         * gtk/gtktexttagtable.h: include gtktexttag.h, and define
11144         GtkTextTagTableForeach instead of brokenly using GHFunc.
11145         Change gtk_text_tag_table_foreach() so it doesn't use GHFunc.
11146
11147         * gtk/gtktexttagprivate.h: Remove GtkTextStyleValues from here,
11148         moved to public header.
11149
11150         * gtk/gtktexttag.h: Rename the "elide" attribute of tags to
11151         "invisible", since "elide" was a bad name.
11152         (gtk_text_tag_get_priority): Added
11153
11154         (GtkTextStyleValues): put this in public header, along with
11155         functions to use it.
11156
11157         * gtk/gtktextmarkprivate.h: Include more headers, since we no
11158         longer include gtktextbtree.h.
11159
11160         * gtk/gtktextmark.h: Add gtk_text_mark_ref, gtk_text_mark_unref,
11161         gtk_text_mark_deleted
11162
11163         * gtk/gtktextlayout.h: Don't include the "really private" headers,
11164         only buffer/iter. Forward declare GtkTextLIne and GtkTextLineData
11165         to make this possible. Now we only need to install
11166         gtktextlayout.h, not gtktextbtree.h and gtktext*private.h.
11167         (However the Makefile.am isn't changed yet because of the
11168         logistics of merging gtk-hp-patches piecemeal)
11169
11170         * gtk/gtktextiterprivate.h: include btree header, so it compiles;
11171         rename gtk_text_iter_get_line to gtk_text_iter_get_text_line since
11172         gtk_text_iter_get_line is now used in the public API for a
11173         different purpose.
11174
11175         * gtk/gtktextiter.h: Clean up function names to be more
11176         consistent. Always call char offset "offset" and byte index
11177         "index". A "line" is always a line number. 
11178
11179         (gtk_text_iter_is_last): new function, more efficient than 
11180         the existing way to check
11181         (gtk_text_iter_is_first): new function, also more efficient
11182
11183         (gtk_text_iter_up_lines, gtk_text_iter_down_lines): Remove these
11184
11185         (gtk_text_iter_next_char, gtk_text_iter_prev_char): Renamed from 
11186         gtk_text_iter_forward_char, etc.
11187
11188         (gtk_text_iter_forward_to_tag_toggle): Renamed from
11189         forward_find_tag_toggle, since this isn't a linear search
11190
11191         (GtkTextCharPredicate): rename from GtkTextViewCharPredicate
11192
11193         (gtk_text_iter_forward_search, gtk_text_iter_backward_search): 
11194         New functions, search for a buffer substring.
11195
11196         * gtk/gtktextbuffer.h: Add fields to store whether a paste is
11197         interactive and default editable (since we need to store that info
11198         until we receive the selection data).
11199
11200         Remove all the _at_char and at_line etc. versions of functions;
11201         only have iterator versions.
11202
11203         Add _interactive() versions of functions, that consider the
11204         editability of text. (FIXME add interactive flag to the 
11205         insert/delete signals per Darin's suggestion)
11206
11207         (gtk_text_buffer_get_tag_table): new function, demand-creates the
11208         tag table if necessary
11209
11210         Remove declaration of gtk_text_buffer_get_iter_from_string
11211
11212         (_gtk_text_buffer_get_btree): private/internal function, added.
11213         
11214
11215         * gtk/gtktextbtree.h: Remove forward decl of GtkTextLineData.
11216         (gtk_text_line_is_last): new function
11217
11218 2000-07-25  Havoc Pennington  <hp@redhat.com>
11219
11220         * gtk/gtkprogressbar.h: Implement new sane, 5-function API for
11221         using GtkProgressBar. See Changes-2.0.txt for details.
11222
11223         * gtk/gtkprogressbar.c: Add object arguments "fraction" and
11224         "pulse_step" which are the equivalent of
11225         gtk_progress_bar_set_pulse_step and gtk_progress_bar_set_fraction.
11226         Implement new API.
11227         
11228         * gtk/gtkprogress.h (struct _GtkProgress): Add a field
11229         (use_text_format) to mark whether text set on the progress bar is
11230         a format string. Deprecate entire GtkProgress interface.
11231
11232         * gtk/gtkprogress.c (gtk_progress_init): init use_text_format to TRUE
11233         (gtk_progress_build_string): make this a no-op if use_text_format
11234         is FALSE
11235
11236         * docs/Changes-2.0.txt: Describe progress bar changes.
11237
11238 2000-07-25  Tor Lillqvist  <tml@iki.fi>
11239
11240         * Makefile.am: Include the build directory.
11241
11242         * configure.in: Generate build/Makefile, build/win32/Makefile,
11243         gdk/, gdk/win32/, and gtk/makefile.mingw.
11244
11245         * config.h.win32: Add USE_GMODULE and USE_MMX for gdk-pixbuf.
11246         Add GETTEXT_PACKAGE.
11247         
11248         * gdk/gdk.def
11249         * gtk/gtk.def: Updates.
11250
11251         * gdk/gdkfont.h
11252         * gdk/gdkpixmap.h: Remove temporary Win32-only functions, we don't
11253         need them any longer.
11254
11255         * gdk/gdkinput.h: Mark gdk_core_pointer for export/import.
11256
11257         * gdk/makefile.mingw.in: Define GDK_COMPILATION. Link with
11258         PANGOWIN32_LIBS and gdk_pixbuf.
11259
11260         * gdk/win32: Compiles, but no doubt doesn't work at all.
11261
11262         * gdk/win32/makefile.mingw.in: Define GDK_COMPILATION. 
11263
11264         * gdk/win32/gdkinput.c: New file, temporarily.
11265         
11266         * gdk/win32/gdkinput-win32.h: New file
11267
11268         * gdk/win32/gdkinputprivate.h: Remove.
11269
11270         * gdk/win32/gdkpango-win32.c: New file.
11271
11272         * gtk/makefile.mingw.in: New file
11273
11274         * gtk/makefile.cygwin: Removed
11275         
11276         * gtk/Makefile.am: Update accordingly.
11277
11278         * gtk/gtkrc.[ch] (gtk_win32_get_installation_directory): Renamed and
11279         made externally visible.
11280
11281         * gtk/gtkmain.c: Use it.
11282         
11283         * gtk/gtktextdisplay.c: No need to include pangox.h, pango.h
11284         is enough.
11285
11286         * gtk/gtktypeutils.c: Mark glib_debug_objects for import.
11287
11288 2000-07-24 Elliot Lee <sopwith@redhat.com>
11289         * gdk/gdkprivate.h: Remove gdk_*_lookup() defines, since they are defined by the
11290         individual backends already.
11291         * gdk/gdkregion-generic.h, gdk/gdktypes.h: Put gdkregionbox & gdksegment back together
11292         again. Yes, there really is a good reason for this, if you are using the gdkregion
11293         internals, and if you're not, why do you care?
11294         * gdk/gdkwindow.c: Fix inverted condition
11295         * gdk/linux-fb: Compiles (for me - it will not work elsewhere most likely).
11296         * gtk/gtkcolorsel.c, gtk/gtkwindow.c: Add include for linux-fb
11297         * gtk/gtkrange.c: Redraw trough when moving.
11298         * gtk/gtktypeutils.c: Fix warning by adding const cast.
11299         * modules/linux-fb/basic.c: Fix unknown glyph retrieval.
11300
11301 2000-07-23  Tor Lillqvist  <tml@iki.fi>
11302
11303         * configure.in: Check for mkstemp and sigsetjmp. Output
11304         gdk-pixbuf/makefile.mingw and gdk-pixbuf/pixops/makefile.mingw.
11305
11306         More work on GDK for Win32. Still in an intermediate state.
11307
11308         * gdk/makefile.cygwin
11309         * gdk/win32/makefile.cygwin: Removed.
11310         
11311         * gdk/makefile.mingw.in
11312         * gdk/win32/makefile.mingw.in: New files.
11313
11314         * gdk/Makefile.am
11315         * gdk/win32/Makefile.am: Generate and distribute them.
11316
11317         * gdk/win32/gdkwindow-win32.h
11318         * gdk/win32/gdkdrawable-win32.h
11319         * gdk/win32/gdkpixmap-win32.h: New files.
11320
11321         * gdk/win32/gdkcolor-win32.c
11322         * gdk/win32/gdkcursor-win32.c
11323         * gdk/win32/gdkdrawable-win32.c
11324         * gdk/win32/gdkgc-win32.c
11325         * gdk/win32/gdkimage-win32.c
11326         * gdk/win32/gdkprivate-win32.h
11327         * gdk/win32/gdkwin32.h: Update data structures. Cosmetics:
11328         Rename fields and variables called xcursor, xid, etc (these names
11329         were leftovers from the X11 backend) to hcursor, hwnd, hbitmap etc.
11330
11331 Sat Jul 22 17:41:26 2000  Owen Taylor  <otaylor@redhat.com>
11332
11333         * gtk/gtkentry.[ch]: Fix some problems with vertical
11334         alignment.
11335
11336         * gtk/gtkentry.c (gtk_entry_find_position): Fix 
11337         char/byte confusion.
11338
11339 Sat Jul 22 11:16:05 2000  Owen Taylor  <otaylor@redhat.com>
11340
11341         * gtk/gtktextview.c (changed_handler): Fix bug where
11342         redraw wasn't being done properly when height of
11343         dirty region changed.
11344
11345         * demos/Makefile.am: Remove various references to
11346         -lgmodule
11347
11348 Fri Jul 21 15:28:13 2000  Owen Taylor  <otaylor@redhat.com>
11349
11350         * gtk/gtktextlayout.[ch], gtk/gtktextdisplay.c: Use new
11351         PangoAttrShape to reserve space for pixmaps, add 
11352         GSList *pixmaps to GtkTextLineDisplay, draw the pixmaps
11353         in the display functions.
11354         
11355         * gtk/testgtk.c (create_layout): Set some more exotic
11356         scrolled window options
11357
11358         * gtk/gtkscrolledwindow.[ch] (gtk_scrolled_window_set_shadow_type):
11359         Add function to set the shadow type of a window, to allow
11360         putting a shadow around widgets such as GtkLayout or GnomeCanvas
11361         which don't draw their own frame.
11362
11363 Fri Jul 21 16:34:42 BST 2000  Tony Gale <gale@gtk.org>
11364
11365         * docs/tutorial/package-db-tutorial.sh: New file for
11366           packaging DocBook format tutorial
11367
11368 Fri Jul 21 14:23:51 BST 2000  Tony Gale <gale@gtk.org>
11369
11370         * docs/tutorial/gtk-tut.sgml: Minor updates
11371
11372         * docs/tutorial/*.jpg *.eps: Screenshots for tutorial
11373
11374 2000-07-19  Tor Lillqvist  <tml@iki.fi>
11375
11376         * gtk/gtksignal.c: Fix C++ comment.
11377
11378         * gtk/gtkimmulticontext.c
11379         * gtk/gtktextbtree.c: Remove gccisms: Don't use __FUNCTION__,
11380         don't return value from void functions.
11381
11382         * gtk/gtk.def: Add gtk_rc_style_unref.
11383
11384 2000-07-19  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
11385
11386         * gdk-pixbuf/gdk-pixbuf.h, gtk/gtkhsv.h, gtk/gtktextbtree.h,
11387         gtk/gtktextbuffer.h, gtk/gtktextchild.h, gtk/gtktextdisplay.h,
11388         gtk/gtktextiter.h, gtk/gtktextiterprivate.h, gtk/gtktextlayout.h,
11389         gtk/gtktextmarkprivate.h, gtk/gtktextsegment.h, gtk/gtktexttag.h,
11390         gtk/gtktexttagtable.h, gtk/gtktexttypes.h, gtk/gtktextview.h,
11391         gtk/gtktypeutils.h: Include files outside of the extern "C"
11392         block. Makes some C++ compiler happy. Reported by Denis Vakatov
11393         <vakatov@peony.nlm.nih.gov>.
11394
11395 Wed Jul 19 14:07:57 BST 2000  Tony Gale <gale@gtk.org>
11396
11397         * docs/tutorial/gtk-tut.sgml: Yet more clean ups.
11398           Completes first pass. Hurrah!
11399
11400 Tue Jul 18 17:17:55 BST 2000  Tony Gale <gale@gtk.org>
11401
11402         * docs/tutorial/gtk-tut.sgml: More clean ups.
11403
11404 Mon Jul 17 18:52:38 2000  Owen Taylor  <otaylor@redhat.com>
11405
11406         * gtk/gtkentry.c (gtk_entry_draw_text): Restore code to
11407         paint the background of the text area which was accidentally
11408         removed at some point.
11409
11410         * gtk/gtkrc.[ch] gtk/gtkstyle.[ch] gtk/gtkthemes.[ch]: 
11411           
11412          - Move most of the functionality from the theme vtable
11413            into GtkRcStyleClass and GtkStyleClass. The moved
11414            vtable functions were changed a bit in the move to
11415            work better in their new home.
11416
11417          - Get rid of the engine and engine_data fields from
11418            GtkRcStyle and GtkStyle; instead the theme
11419            engine derives theme-specific subclasses of GtkRcStyle
11420            and GtkStyle
11421
11422          - Add extra dlsym() found entry point to themes,
11423            theme_create_rc_style().
11424
11425         * gtk/gtkstyle.c: Copy xthickness, ythickness fields
11426         in gtk_style_real_copy.
11427
11428         * gtk/themes.[ch]: add a function gtk_theme_engine_register_type()
11429         to register a type associated with an engine. (The engine
11430         won't be unloaded as there is an instance of the type.)
11431
11432
11433 Mon Jul 17 18:19:06 BST 2000  Tony Gale <gale@gtk.org>
11434
11435         * docs/tutorial/gtk-tut.sgml: Clean ups.
11436
11437 Mon Jul 17 13:59:29 BST 2000  Tony Gale <gale@gtk.org>
11438
11439         * docs/tutorial/gtk-tut.sgml: Initial DocBook version. Lots
11440           of cleaning up to do.
11441
11442 2000-07-15  Tor Lillqvist  <tml@iki.fi>
11443
11444         * gdk/testgdk.c: New file, quick hack to test backends for
11445         pixel-by-pixel correctness of the most simple graphic operations.
11446
11447 Fri Jul 14 20:30:25 2000  Owen Taylor  <otaylor@redhat.com>
11448
11449         * Really release 1.3.1
11450         
11451         * gtk-config-2.0.in gtk-2.0.m4: Fix up to correspond to new
11452         include structure.
11453
11454 Fri Jul 14 18:40:39 2000  Owen Taylor  <otaylor@redhat.com>
11455
11456         * Released 1.3.1
11457
11458 Fri Jul 14 16:21:26 2000  Owen Taylor  <otaylor@redhat.com>
11459
11460         * gtk/gtktextlayout.c: use FALSE for size_only most
11461         of the time when calling gtk_text_layout_get_line_display()
11462         to avoid causing double reshapes when a redraw follows
11463         immediately after.
11464
11465 Tue Jul 11 11:13:40 2000  Owen Taylor  <otaylor@redhat.com>
11466
11467         * gtk/gtkrange.c (gtk_range_default_[hv]slider_update): Invalidate
11468         appropriate region and gdk_window_process_updates() so trough
11469         updating doesn't lag behind the window being scrolled.
11470
11471         * gdk/gdkgc.c: Make parent_class pointer static.
11472          
11473 Sun Jul  9 21:31:23 2000  Owen Taylor  <otaylor@redhat.com>
11474
11475         * gdk/gdk-pixbuf.c gtk/gdk-pixbuf-loader.c gtk/gtktextview.c:
11476         include <string.h>.
11477          
11478         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Fix
11479         cut-and-paste error in computing memory offset for 4 channels.
11480
11481 Fri Jul 14 14:05:02 2000  Owen Taylor  <otaylor@redhat.com>
11482
11483         * gtk/gtkrc.c (gtk_rc_parse_pixmap_path_string): Remove
11484         gtk_rc_append_default_pixmap_path(), since it wasn't
11485         adding an interesting path and we don't have a meaningful
11486         default for this value.
11487
11488 Fri Jul 14 12:22:49 2000  Owen Taylor  <otaylor@redhat.com>
11489
11490         * configure.in Makefile.am gtk-config.m4 gtk.m4: Move
11491         gtk-config to gtk-config-2.0 move gtk_.m4 to
11492         gtk-2.0.m4
11493
11494         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
11495         gdk/Makefile.am demos/Makefile.am: Change 
11496         library names to libgtk-1.3.la, etc, so that we
11497         can distinguish gtk-1.2 and gtk-2.0 on the linkline.
11498
11499         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
11500         gdk/Makefile.am gdk/x11/Makfile.am
11501         Move include files into /usr/include/gtk-2.0, 
11502         /usr/lib/gtk-2.0/include/
11503          
11504         * autogen.sh acconfig.h configure.in gtk/gtkmain.c
11505         gtk/gtkintl.h: Change package for gettext from 
11506         gtk+ to gtk20. Put hack in autogen.sh to modify
11507         po/Makefile.in.in after gettextize to make this
11508         possible.
11509
11510         * gtk+.spec: Some updates, not tested.
11511
11512         * gdk-pixbuf/Makefile.am: Move loaders into
11513         $(libdir)/gtk-2.0/$(GTK_VERSION)/loaders.
11514
11515         * gtk/Makefile.am gtk/gtkrc.c: Move RC file locations
11516         $(sysconfdir)/gtk-2.0 ~/.gtkrc-2.0; theme subdir
11517         to THEMENAME/gtk-2.0/. Move engine directory  to
11518         $(libdir)/gtk-2.0/$(GTK_VERSION)/engines.
11519         
11520 2000-07-12  Tor Lillqvist  <tml@iki.fi>
11521
11522         Win32 changes, still doesn't build though.
11523
11524         * gdk/makefile.cygwin
11525         * gdk/win32/makefile.cygwin
11526         * gtk/makefile.cygwin: Updates.
11527
11528         * gdk/win32/gdkgc-win32.c (_gdk_win32_gc_new): Use the same
11529         default values for fg and bg pixel as X11 does (0 and 1), not
11530         black and white. Use PS_ENDCAP_FLAT and PS_JOIN_MITER by default.
11531         Use 0 for pen width by default (treated as 1 anyway later, but for
11532         apps that might check the value in the GdkGC).
11533         (gdk_win32_hdc_get, gdk_win32_hdc_release): New functions, public
11534         interface to gdk_gc_predraw and _postdraw.
11535
11536         * gdk/win32/gdkwin32.h
11537         * gdk/gdk.def: Add gdk_win32_hdc_{get,release}.
11538
11539         * gdk/win32/gdkcolor-win32.c (gdk_colormap_alloc1): Remove
11540         extraneous semicolon.
11541
11542         * gdk/win32/gdkdrawable-win32.c: Check also for pen_width == 0.
11543
11544         * gdk/win32/gdkimage-win32.c (gdk_image_new): Use the visual's depth,
11545         not the Win32 bitspixel value.
11546
11547         * gdk/win32/gdkcc-win32.c:
11548         * gdk/win32/gdkcolor-win32.c 
11549         * gdk/win32/gdkprivate-win32.h
11550         * gdk/win32/gdkwin32.h: Changes to make compilable, with new
11551         GDK object structure.
11552
11553 Tue Jul 11 20:59:35 2000  Tim Janik  <timj@gtk.org>
11554
11555         * docs/tutorial/gtk_tut_12.es.sgml (name): 
11556         * docs/tutorial/gtk_tut_it.sgml (name): 
11557         * docs/tutorial/gtk_tut_fr.sgml (name): 
11558         * docs/tutorial/gtk_tut.sgml (name): scratched notion of completely
11559         outdated email adress: s/timj@psynet.net/timj@gtk.org/.
11560
11561 Tue Jul 11 13:10:57 BST 2000  Tony Gale <gale@gtk.org>
11562
11563         * docs/faq/gtk-faq.sgml: Cleanup indenting and various
11564           small changes.
11565
11566 Tue Jul 11 08:04:58 2000  Tim Janik  <timj@gtk.org>
11567
11568         * gtk/gtktree.c (gtk_real_tree_select_child): eek, i've never seen
11569         a bug here, never been here and never fixed anything ;(
11570         (don't segfault if tree->root_tree is NULL, which happens prior
11571         to widget realization, but puke instead).
11572
11573 Tue Jul 11 06:38:42 2000  Tim Janik  <timj@gtk.org>
11574
11575         * gtk/gtkrc.h: add xthickness and ythickness to GtkRcStyle and
11576         add the necessary tokens.
11577
11578         * gtk/gtkrc.c (gtk_rc_style_init): properly initiality the rc style.
11579         (gtk_rc_style_to_style): copy thicknesses.
11580         (gtk_rc_init_style): apply thicknesses.
11581         (gtk_rc_parse_style): parse xthickness and ythickness.
11582
11583         * gdk/x11/gdkdnd-x11.c: silence compiler in switch() statements.
11584
11585         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): 
11586         (gdk_window_new): 
11587         (_gdk_windowing_window_init): 
11588         * gdk/x11/gdkpixmap-x11.c (gdk_pixmap_foreign_new): 
11589         (gdk_pixmap_create_from_data): 
11590         (gdk_bitmap_create_from_data): 
11591         (gdk_pixmap_new): 
11592         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
11593         (gdk_image_new): 
11594         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): 
11595         * gdk/x11/gdkdnd-x11.c (gdk_drag_context_new): 
11596         * gdk/x11/gdkcolor-x11.c (gdkx_colormap_get):
11597         (gdk_colormap_get_system): 
11598         (gdk_colormap_new): 
11599         * gdk/gdkwindow.c (gdk_window_init): 
11600         * gtk/gtkstyle.c (gtk_style_new):
11601         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done):
11602         * gdk/gdkpixmap.c (gdk_pixmap_init): 
11603         * gtk/gtkrc.c (gtk_rc_style_new):
11604         use g_object_new() instead of g_type_create_instance() which
11605         is a private function for fundamental type implementations.
11606
11607 Thu Jul  6 16:12:14 2000  Owen Taylor  <otaylor@redhat.com>
11608
11609         * configure.in: Add check for db2html
11610
11611 Thu Jul  6 14:53:05 2000  Owen Taylor  <otaylor@redhat.com>
11612
11613         * gtk/gtktypeutils.c (gtk_type_init): Add a temporary 
11614         hack to set glib_debug_objects based on gtk_debug_flags.
11615
11616 Thu Jul  6 14:12:13 2000  Owen Taylor  <otaylor@redhat.com>
11617
11618         * INSTALL.in: Update the Prerequisites section.
11619
11620         * Makefile.am demos/Makefile.am docs/Makefile.am
11621         docs/tutorial/Makefile.am gdk/x11/Makefile.am
11622         gdk/linux-fb/Makefile.am: Dist fixes
11623
11624 Thu Jul  6 12:26:03 2000  Owen Taylor  <otaylor@redhat.com>
11625
11626         * NEWS: 10,000 foot view of 1.3.1 changes.
11627
11628 Thu Jul  6 11:54:03 2000  Owen Taylor  <otaylor@redhat.com>
11629
11630         * gdk/gdk.h gdk/gdktypes.h gdk/linux-fb/gdkmain-fb.c
11631         gdk/nanox/gdkmain-nanox.c gdk/win32/gdkevents-win32.c
11632         gdk/win32/gdkinput-win32.c gdk/win32/gdkwin32.h
11633         gdk/x11/gdkmain-x11.c: 
11634
11635         Patch from George Lebl to add a GdkGrabStatus enumeration to use
11636         as a return value of gdk_*_grab(). Previously, we just
11637         returned the X11 values directly.
11638
11639 Thu Jul  6 11:27:44 2000  Owen Taylor  <otaylor@redhat.com>
11640
11641         * gdk/x11/Makefile.am: Patch from George Lebl to 
11642         install all the headers in the right place.
11643
11644 Tue Jul  4 13:13:01 BST 2000  Tony Gale <gale@gtk.org>
11645
11646         * docs/faq/gtk-faq.sgml: Add remaining sections. Completes
11647           initial conversion to DocBook.
11648
11649 2000-07-04  Tor Lillqvist  <tml@iki.fi>
11650
11651         * README.win32: Improve a bit.
11652
11653         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Handle also
11654         WM_SYSCHAR, and other changes to get handling of Alt+nnn or
11655         Alt+0nnn on the numpad (used to enter characters by numeric code
11656         from current DOS or ANSI codepage) working correctly, as in other
11657         Windows apps.
11658
11659         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Use
11660         same argument validity tests as in X11 version.
11661         (_gdk_cursor_destroy): Use DestroyCursor, not DestroyIcon.
11662
11663         * gdk/win32/gdkwin32.h: Add also WM_MOUSEWHEEL and CopyCursor
11664         definitions in case missing from headers.
11665
11666         * gdk/win32/gdkwindow-win32.c (gdk_win32_window_destroy): Also
11667         destroy the window-specific cursor.
11668         (RegisterGdkClass): Use the global gdk_ProgInstance instead of
11669         calling GetModuleHandle(NULL).
11670         (gdk_window_set_cursor): Reworked to always copy the passed cursor
11671         with CopyCursor before setting it as the window-specific
11672         cursor. It is OK for the caller to destroy the GdkCursor (and thus
11673         also its Windows cursor) after calling this function. Destroy any
11674         previous window-specific cursor.
11675
11676 Mon Jul  3 17:54:49 2000  Owen Taylor  <otaylor@redhat.com>
11677
11678         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): 
11679         font charset is iso8859-1, not iso-8859-1.
11680
11681 Mon Jul  3 17:08:14 2000  Owen Taylor  <otaylor@redhat.com>
11682
11683         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale):
11684         Use g_get_charset() instead of g_get_codeset().
11685
11686         * gtk/gtkframe.[ch] gtkframe.h gtk/gtktextmark.h: 
11687         Comment out some strdup'ing functions to keep timj
11688         happy until we finish fighting this out.
11689
11690 Mon Jul  3 14:24:16 2000  Owen Taylor  <otaylor@redhat.com>
11691
11692         * gtk/gtkwidget.c (gtk_widget_draw): Ignore calls with
11693         <= width or height.
11694
11695         * gtk/gtktable.c (gtk_table_attach): Fix missed merge
11696         from 1.2 for parent/child states.
11697
11698         * gdk/gdkgc.c (gdk_gc_set_rgb_fg/bg_color): Fix a couple
11699         of typos.
11700
11701         * gdk/gdkevents.[ch]: Remove press/xtilt/ytilt fields of
11702         event structures, replace with a generic axes field. Replace 
11703         deviceid/sourec with GdkDevice *device.
11704
11705         * gdk/gdkevents.[ch] (gdk_event_get_axis): Add function
11706         to extract particular axis use value from event. (Also
11707         can be used for normal X/Y.)
11708
11709         * gdk/gdkinput.h gdk/x11/gdkinput*: Major revision;
11710         allow for arbitrary number of axes, namespace everything
11711         as gdk_device_*. Replace guint32 deviceid with GdkDevice *
11712         everywhere.
11713
11714         * gdk/x11/{gdkmain-x11.c,gdkevent-x11.c,gdkinput*}: 
11715         Get rid of the gdk_input_vtable setup if favor of simply
11716         defining the functions in gdkinput-none/gxi/xfree.c in
11717         a similar fashion to the way that the port structure is 
11718         done.
11719
11720         * gtk/gtkdnd.c: Fix fields of synthesized button press event
11721         for new event structures. 
11722
11723         * gtk/gtkinputdialog.c gtk/testinput.c: Revise to match
11724         new device interfaces.
11725
11726 Sun Jul  2 18:19:50 2000  Owen Taylor  <otaylor@redhat.com>
11727
11728         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_layout): Add a 'text' argument to
11729         set the initial text.
11730
11731         * gtk/gtkaccellabel.c gtk/gtkcalendar.c gtk/gtkclist.c
11732         gtk/gtkentry.c gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c
11733         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvruler.c
11734         gtk/gtkvscale.c: Adapt to new argument of create_pango_layout().
11735
11736         * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
11737         pango_layout_set_font_description to simplify.
11738
11739 Sun Jul  2 17:43:41 2000  Owen Taylor  <otaylor@redhat.com>
11740
11741         * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
11742         pango_layout_set_font_description to simplify.
11743
11744 Sun Jul  2 17:06:40 2000  Owen Taylor  <otaylor@redhat.com>
11745
11746         * gtk/gtkcalendar.c gtk/gtkclist.c gtk/gtkctree.c gtk/gtkhscale.c
11747         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvscale.c gtk/gtkaccellabel.c: Use
11748         pango_layout_get_pixel_extents() to remove a large number of '/ PANGO_SCALE'.
11749
11750         * gtk/gtk[hv]ruler.c gtk/gtklabel.c: replace some / PANGO_SCALE with
11751         PANGO_PIXELS() macro.
11752
11753 Sun Jul  2 15:24:41 2000  Owen Taylor  <otaylor@redhat.com>
11754
11755         * gtk/gtkwidget.[ch] (gtk_widget_get_pango_context): Add new function
11756         that returns a PangoContext owned by the widget and updated to
11757         match future changes in the widget. Also, make 
11758         gtk_widget_create_pango_layout() use this context. If we ever
11759         add a ::changed signal to PangoContext, this will make things
11760         much more convenient. 
11761
11762         * gtk/gtkentry.c gtk/gtklabel.c: Call pango_layout_context_changed()
11763         in the appropriate places instead of destroying the layouts and
11764         creating new ones.
11765
11766         * gtk/gtkfontsel.[ch] gtk/gtkclist.c: Use gtk_widget_get_pango_context()
11767         in a few strategic places.
11768
11769 Sun Jul  2 14:37:58 2000  Owen Taylor  <otaylor@redhat.com>
11770
11771         * gtk/gtkoptionmenu.c (gtk_option_menu_size_request): Call 
11772         gtk_widget_size_request() on reparented child, if one. Otherwise,
11773         queue_resize() on the child never results in it getting size-requested
11774         at all.
11775
11776         * gtk/testgtk.c (build_option_menu): Remove silly radio-menu-items
11777         in option menus, so that (with luck) people won't copy it into
11778         their apps in the future.
11779
11780         * gtk/gtkoptionmenu.c: Connect ::size_request on the menu
11781         to gtk_option_menu_calc_size. This isn't perfect, but should fix
11782         a lot of problems with changing the size of the menu's menu
11783         items after adding it to the option menu.
11784
11785         * gtk/gtktexttag.c: Include gtkmain.h for gtk_get_default_language().
11786
11787         * gtk/gtkwidget.[ch]: Add a ::direction_changed that triggers when
11788         the text direction for a widget changes.
11789
11790         * gtk/gtk{entry.c,label.[ch],textview.[ch]} gtk/testgtk.c: Use
11791         ::direction_changed to get rid of various hacks.
11792
11793 Sun Jul  2 13:19:12 2000  Owen Taylor  <otaylor@redhat.com>
11794
11795         * docs/Changes-2.0.txt: Move Changes-1.4.txt to the appropriate
11796         name.
11797
11798 Sun Jul  2 13:06:26 2000  Owen Taylor  <otaylor@redhat.com>
11799
11800         * gdk/x11/gdkpixmap-x11.[ch] Changes-1.4.txt: Add a is_foreign
11801         flag to the structure. Do not call XFreePixmap on pixmaps created
11802         by gdk_pixmap_foreign_new().
11803
11804 Sun Jul  2 12:45:50 2000  Owen Taylor  <otaylor@redhat.com>
11805
11806         * gdk/gdkrgb.[ch]: Add gdk_rgb_find_color() to get a pixel
11807         value using GdkRGB functionality given GdkColormap and GdkColor.
11808         (name not final, waiting for inspiration.)
11809         
11810         * gdk/gdkgc.[ch] (gdk_gc_set_rgb_fg/bg_color): New functions to
11811         set the foreground/background of a GC using the GC's colormap
11812         and GdkRGB. (name not final, waiting for inspiration.)
11813
11814         * gdk/gdkcompat.h gdk/gdkrgb.c (gdk_rgb_get_colormap): Rename from 
11815         gdk_rgb_get_cmap(), put #define in gdkcompat.h.
11816
11817         * gtk/gtkwidget.[ch] gtkcompat.h: Make visuals for
11818         gtk_widget_get_visual(), gtk_widget_get_default_visual, etc,
11819         purely a function of the corresponding colormap. Make
11820         gtk_widget_set_visual(), etc, noop macros in gtkcompat.h.
11821
11822         * gdk/gdkpixmap.c gdk/x11/gdkpixmap-c11.c: Rewrite
11823         gdk_pixbuf_*create_from_xpm_* in terms of
11824         gdk_pixbuf_new_from_xpm_data(), move into platform independent
11825         code.
11826
11827         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Take
11828         advantage of the new draw_rgb_32_image_dithalign.
11829
11830         * gdk/gdkrgb.c (gdk_draw_rgb_32_image_dithalign): Added.
11831
11832         * gtk/gtkgc.c (gtk_gc_new): Set the appropriate colormap
11833         on each created GC.
11834
11835         * gdk/gdkgc.[ch]: Add gdk_gc_get/set_colormap.
11836
11837         * gdk/gdkgc.[ch]: Add a colormap field to the GdkGC structure
11838         which we initialize from the drawable when the GC is created,
11839         if the drawable has a colormap.
11840
11841         * gdk/x11/gdkgc-x11.c: include string.h for memset.
11842
11843         * gdk/x11/gdkinput-x11.c: include string.h for strlen, etc.
11844
11845         * gtk/gtklayout.[ch]: Remove unsed configure serial member.
11846
11847 Sat Jul  1 16:28:32 2000  Owen Taylor  <otaylor@redhat.com>
11848
11849         * gdk/x11/gdkevents-x11.c (gdk_event_translate): When
11850         actually returning expose events, make sure to set
11851         the count field properly.
11852
11853         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): Fix
11854         accidentally reintroced bug which always cleared
11855         the graphics_exposures value. 
11856
11857 Wed Jun 28 18:03:09 BST 2000  Tony Gale <gale@gtk.org>
11858
11859         * docs/faq/gtk-faq.sgml: Change DocBook layout slightly
11860
11861 Wed Jun 28 17:49:05 BST 2000  Tony Gale <gale@gtk.org>
11862
11863         * docs/faq/gtk-faq.sgml: Finish Section 6. Add Section 7.
11864
11865 Wed Jun 28 13:31:55 BST 2000  Tony Gale <gale@gtk.org>
11866
11867         * docs/faq/gtk-faq.sgml: Start of Section 6.
11868
11869 Mon Jun 26 19:37:04 2000  Owen Taylor  <otaylor@redhat.com>
11870
11871         * configure.in: Put 1.3.1 in warning message, not 1.3.0.
11872         
11873         (Fixes problem with drawing childless frames. Pointed out
11874         by and a first patch from Anders)
11875         
11876         * gtk/gtkframe.c (gtk_frame_compute_child_allocation): Always
11877         compute a child_allocation, even if we don't have a child.
11878
11879         * gtk/gtkaspectframe.c (gtk_aspect_frame_compute_child_allocation):
11880         Always chain to the parent's impl, even if we don't have a child.
11881
11882 Mon Jun 26 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
11883
11884         * gdk/gdkrgb.c: If possible, create only a single shm segment and
11885         use multiple parts of it instead of creating a bunch of separate
11886         segments, since the maximum number of segments per system is not
11887         large. (This might be worth backporting to GTK+-1.2.x if we make a
11888         new release )
11889
11890         * gdk/gdkrgb.c: Localize a bunch of variables into the GdkRgbInfo
11891         structure in preparation for per-colormap GdkRGB.
11892
11893         * gdk/x11/gdkimage-x11.c (gdk_image_new): Don't set gdk_use_xshm
11894         to False when we get EINVAL from shmget so that the caller of
11895         gdk_image_new can retry with a smaller segment size.
11896
11897 Mon Jun 26 13:01:16 BST 2000  Tony Gale <gale@gtk.org>
11898
11899         * docs/faq/gtk-faq.sgml: Add Sections 4 & 5.
11900
11901 Fri Jun 23 17:54:23 2000  Tim Janik  <timj@gtk.org>
11902
11903         * configure.in: make the current version number 1.3.1 (binary age 0,
11904         interface age 0).
11905         
11906         * gtkfeatures.h, gtkfeatures.h.in: dejavue, get rid of these *again*,
11907         gtkcompat.h is all we want.
11908
11909         * gtk/gtktypeutils.[hc]: define most of the primitive types in terms of
11910         GLib primitive types. fixed g_type_register_fundamental() argument
11911         ordering.
11912
11913         * gtk-config.in (lib_gtk): add -lgdk_pixbuf so third party code
11914         compiles.
11915
11916         * gdk-pixbuf-loader.[hc]: get rid of unistd.h include.
11917         object code cleanup, comment trigraph fixes, etc...
11918
11919 2000-06-23  Havoc Pennington  <hp@redhat.com>
11920
11921         * gtk/gtktextview.c (gtk_text_view_set_buffer): Use anonymous mark 
11922         instead of making up a bogus name for first_para_mark
11923
11924         * gtk/gtkstatusbar.h, gtk/gtkstatusbar.c: Allow 
11925         0 as a context ID
11926
11927 Thu Jun 22 17:43:51 BST 2000  Tony Gale <gale@gtk.org>
11928
11929         * docs/faq/gtk-faq.sgml: Change filename. Add Section 3.
11930
11931 2000-06-21  Havoc Pennington  <hp@pobox.com>
11932
11933         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Fix bug where
11934         we didn't check window->bg_pixmap != GDK_NO_BG.
11935
11936         * gtk/gdk-pixbuf-loader.c: Change to reflect GObject-ification of
11937         gdk-pixbuf
11938
11939 Thu Jun 22 14:02:19 BST 2000  Tony Gale <gale@gtk.org>
11940
11941         * docs/faq/gtk-faq.sgm: Move file to here.
11942           TODO: Update Makfile.am 
11943
11944 Thu Jun 22 13:41:09 BST 2000  Tony Gale <gale@gtk.org>
11945
11946         * docs/gtk-faq.sgm: Add Section 2
11947
11948 Thu Jun 22 08:43:45 BST 2000  Tony Gale <gale@gtk.org>
11949
11950         * docs/gtk-faq.sgm: New file. Start of DocBook
11951           version of the FAQ.
11952
11953 Wed Jun 21 23:04:17 2000  Owen Taylor  <otaylor@redhat.com>
11954
11955         * configure.in (GDK_PIXBUF_MAJOR): Define version
11956         numbers for GDK_PIXBUF_*, as they get substituted
11957         into a header file. Need to consider versioning
11958         for gdk-pixbuf more carefully later.
11959
11960 2000-06-21  Raja R Harinath  <harinath@cs.umn.edu>
11961
11962         Work with srcdir != builddir.   
11963         * demos/testanimation.c: Don't include "gdk-pixbuf.h".  Use
11964         <gtk/gdk-pixbuf-loader.h>, not "gtk-pixbuf/gdk-pixbuf-loader.h".
11965         * demos/testpixbuf.c: Likewise.
11966         * demos/testpixbuf-scale.c: Don't include "gdk-pixbuf.h".
11967         * demos/testpixbuf-drawable.c: Don't include "gdk-pixbuf.h".  Use
11968         <gdk/x11/gdkx.h>.
11969         * demos/pixbuf-demo.c: Use <gtk/gtk.h> not "gtk.h".  Don't include
11970         "gdk-pixbuf.h".
11971         * demos/Makefile.am (INCLUDES): Remove unneeded directories.
11972
11973 Wed Jun 21 19:45:02 2000  Owen Taylor  <otaylor@redhat.com>
11974
11975         * TODO.xml: Change 1.4 version numbers to 2.0.
11976
11977 Wed Jun 21 19:29:08 2000  Owen Taylor  <otaylor@redhat.com>
11978
11979         * gdk/gdkpixbuf-render.c gdk/gdkpixbuf-drawable.c: Indentation
11980         fixups to GTK+ standard.
11981
11982 Wed Jun 21 16:38:13 2000  Owen Taylor  <otaylor@redhat.com>
11983
11984         * gdk-pixbuf/* docs/reference/gdk-pixbuf/*: Welcome aboard,
11985         gdk-pixbuf.
11986
11987         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init):
11988         fixups for GObject.
11989
11990         * gdk/Makefile.am gdk/gdkpixbuf-render.[ch] gdk/gdkpixbuf.[ch]: Bits of 
11991         gdk-pixbuf with GDK dependencies moved into GDK.
11992         
11993         * gtk/Makefile.am gtk/gdk-pixbuf-loader.[ch]: Temporarily
11994         move gdk-pixbuf-loader here until GObject has signals.
11995
11996         * demos/: New directory of demos. Move demos from
11997         gdk-pixbuf here.
11998
11999         * demos/pixbuf-init.c: Small bit of code to check for
12000         loaders in ../gdk-pixbuf/.libs/gdk-pixbuf, and if found,
12001         set GDK_PIXBUF_MODULEDIR appropriately.
12002
12003         * gdk/gdkcompat.h: Remove GDK_DRAWABLE_PIXMAP compat
12004         define which no longer makes sense.
12005
12006 2000-06-21  Havoc Pennington  <hp@redhat.com>
12007
12008         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Use
12009         gtk_get_default_language
12010
12011         * gtk/gtkmain.h, gtk/gtkmain.c (gtk_get_default_language): 
12012         new function to get the default language
12013
12014         * gtk/gtktexttagprivate.h, gtk/gtktexttag.c, gtktextview.c: 
12015         s/gtk_text_view_style_values/gtk_text_style_values/
12016
12017         * gtk/gtktexttag.c, gtk/gtktexttag.h, gtk/gtktexttagprivate.h:
12018         Add a "language" field to tags.
12019
12020         (gtk_text_tag_set_arg): Fix bug in setting
12021         "bg_full_height_set" tag.
12022
12023 2000-06-21  Havoc Pennington  <hp@redhat.com>
12024
12025         * gtk/gtktextiter.h: Use gunichar instead of gint when appropriate
12026         in the interfaces
12027
12028         * gtk/gtktexttypes.c: Remove UTF functions, use glib 
12029         stuff instead when possible.
12030
12031         * gtk/gtktexttypes.h: Delete some unused constants
12032
12033         * gtktextbtree.c, gtktextiter.c, gtktextsegment.c, gtktextview.c,
12034         testtextbuffer.c: use glib instead of custom unicode routines
12035
12036 Wed Jun 21 12:50:58 2000  Owen Taylor  <otaylor@redhat.com>
12037
12038         * docs/es/: Removed mistakenly added generated sgml
12039
12040         * docs/{gdk.texi,gtk.texi,gdk.sgml} macros.texi texinfo.tex:
12041         Remove outdated info files.
12042
12043         * docs/gtk_tut* docs/package_tutorial.sh docs/tutorial:
12044         Moved tutorial files into subdir
12045
12046         * docs/gtkfaq.sgml docs/faq/gtkfaq.sgml: Move FAQ into
12047         subdir.
12048
12049         * docs/man/gtk_button.pod: Remove. (contents will be
12050         integrated into gtk-reference button page.)
12051
12052         * configure.in docs/Makefile.am docs/tutorial/Makefile.am
12053         docs/faq/Makefile.am: Adjust for new organization
12054
12055 2000-06-21 Christopher Blizzard  <blizzard@redhat.com>
12056
12057         * gdk/x11/Makefile.am (install-data-local): use $(mkinstalldirs)
12058         not $(MKINSTALLDIRS)
12059
12060 Wed Jun 21 12:24:28 2000  Owen Taylor  <otaylor@redhat.com>
12061
12062         * gtk/testgtk.c (create_text): Finish the job Elliot started
12063         of removing font setting test for text widget. (Since text widget
12064         and GdkFont are not deprecated, and cause portability problems.)
12065
12066 Wed Jun 21 11:41:43 2000  Owen Taylor  <otaylor@redhat.com>
12067
12068         * gtk/gtkentry.c gtk/gtkimcontextsimple.c gtk/gtklabel.c
12069         gtk/gtktexttypes.c gtk/testtext.c modules/linux-fb/basic.c:
12070         Remove use of libunicode in favor of new GLib functions.
12071
12072         * gtk/gtkcolorsel.c: Remove conditional includes for FB, win32,
12073         nano-x, framebuffer. The X11 include is just a hack until we get
12074         the necessary functions in gdkcolor.h, so there is no reason to
12075         add other includes of platforms.
12076
12077         * gtk/gtkwindow.c (gtk_window_compute_default_size): Revert 
12078         window bigger than the screen change.
12079
12080         * gtk/testgtk.c: Revert some random changes from Elliot
12081         that had no particular point and were causing testgtkrc
12082         not to function correctly.
12083         
12084         * gdk/gdkregion-generic.h: Revert change from Elliot. Just
12085         because GdkSegment and GdkRegionBox have the same fields,
12086         it doesn't mean that 'typedef GdkSegment GdkRegionBox'
12087         results in clearer code.
12088
12089         * gdk/x11/gdkinput-x11.c (gdk_input_common_select_events,
12090         gdk_input_translate_coordinates): Fix missed GdkObjectification
12091
12092 2000-06-18  Elliot Lee  <sopwith@redhat.com>
12093
12094         * gdk/Makefile.am, gdk/*/Makefile.am: Fix conditionality to work the "right" way.
12095         * gtk/gtk{plug,socket}.h: Missed commits from previous.
12096
12097 2000-06-20  Havoc Pennington  <hp@redhat.com>
12098
12099         * modules/linux-fb/Makefile.am: Make this compile
12100         without framebuffer enabled
12101
12102         * gdk/linux-fb/Makefile.am: Add conditional to not build
12103         framebuffer unless specified in configure
12104
12105         * gdk/gdkdraw.c (gdk_draw_drawable): Fix bug where I was getting
12106         the size of the target instead of source if -1 was passed for
12107         width/height
12108
12109         * gdk/x11/gdkgeometry-x11.c (gdk_window_compute_position): Fix 
12110         width/height confusion.
12111
12112 2000-06-19  Havoc Pennington  <hp@redhat.com>
12113
12114         * gdk/x11/gdkx.h (GDK_WINDOW_XWINDOW): change this to be
12115         GDK_DRAWABLE_XID. In the future, we probably want to make it
12116         faster with G_DISABLE_CHECKS turned on.
12117
12118 2000-06-14  Havoc Pennington  <hp@redhat.com>
12119
12120         * gdk/Makefile.am: add gdkpixmap.c
12121
12122         * gdk/gdk.c: s/gdk_window_init/_gdk_windowing_window_init/
12123         s/gdk_image_init/_gdk_windowing_image_init
12124
12125         * gdk/gdkcolor.c: make ref/unref compat wrappers for GObject
12126         ref/unref
12127
12128         * gdk/gdkcolor.h: make GdkColormap a GObject subclass
12129
12130         * gdk/gdkcompat.h: remove GdkWindowType compat, since
12131         GdkWindowType is now non-deprecated; 
12132         change gdk_window_get_type() compat to be
12133         gdk_window_get_window_type().
12134
12135         * gdk/gdkdnd.h: make GdkDragContext a GObject.
12136
12137         * gdk/gdkdraw.c, gdk/gdkdraw.h: Convert GdkDrawable to a pure
12138         virtual GObject. Make all functions call into the vtable.
12139         Move gdk_image_put() guts in here. Remove GdkDrawableType
12140         and gdk_drawable_get_type(), these are now GdkWindow-specific.
12141         draw_image, get_depth, get_size, set_colormap, get_colormap,
12142         get_visual added to the vtable.
12143         
12144         * gdk/gdkgc.h, gdk/gdkgc.c: Convert GdkGC to a pure virtual 
12145         GObject. Virtualize everything. 
12146         (gdk_gc_new_with_values): remove check for destroyed window,
12147         because now GdkWindow::create_gc will check this.
12148         (gdk_gc_set_values): New function to set GC values, this 
12149         was already implemented but wasn't in the header
12150
12151         * gdk/gdkimage.h, gdk/gdkimage.c: Convert GdkImage to a GObject.
12152
12153         * gdk/gdkinternals.h: Remove _gdk_window_alloc(), remove
12154         _gdk_window_draw_image(), remove _gdk_windowing_window_class,
12155         remove _gdk_window_class; add _gdk_window_impl_get_type() and
12156         _gdk_pixmap_impl_get_type(). Rename gdk_window_init to
12157         _gdk_windowing_window_init, rename gdk_image_init to
12158         _gdk_windowing_image_init.
12159         
12160         * gdk/gdkpango.c: Reflect GObject-ification of PangoContext.
12161         (gdk_draw_layout): Remove check for destroyed window, 
12162         because all the drawable methods already check it.
12163         
12164         * gdk/gdkpixmap.h, gdk/gdkpixmap.c: Convert GdkPixmap to GObject.
12165         Add gdkpixmap.c which contains implementation of GdkDrawable
12166         virtual table (by chaining to a platform-specific implementation
12167         object).
12168         
12169         * gdk/gdkprivate.h: Remove GDK_IS_WINDOW, GDK_IS_PIXMAP, 
12170         GDK_DRAWABLE_DESTROYED. Add GDK_WINDOW_DESTROYED. Replace
12171         GDK_DRAWABLE_TYPE with GDK_WINDOW_TYPE. Remove GdkDrawablePrivate,
12172         GdkWindowPrivate, GdkImageClass, GdkImagePrivate, GdkGCPrivate,
12173         GdkColormapPrivate. 
12174
12175         * gdk/gdktypes.h: #include <glib-object.h>
12176
12177         * gdk/gdkwindow.h, gdk/gdkwindow.c: Convert GdkWindow to GObject.
12178         Move most functionality to platform-specific implementation
12179         object. GdkWindow itself now handles the backing store, then
12180         chains to the platform-specific implementation.
12181         (gdk_window_get_window_type): return GdkWindowType of the window.
12182         (gdk_window_peek_children): New routine, returns the children of 
12183         a GdkWindow
12184         (gdk_window_get_children): Was in X11-specific code and did 
12185         XQueryTree. Changed to simply return a copy of window->children; 
12186         so it can go in cross-platform code.
12187         
12188         * gdk/x11/Makefile.am: fix broken MKINSTALLDIRS path
12189
12190         * gdk/x11/gdkcolor-x11.c: implement X-specific parts of 
12191         GdkColormap; just changed to use the new private data instead
12192         of casting to GdkColormapPrivate.
12193
12194         * gdk/x11/gdkcursor-x11.c: added a couple typechecks to 
12195         gdk_cursor_new().
12196
12197         * gdk/x11/gdkdnd-x11.c: Change the way we access private fields 
12198         (private data member in the GObject). 
12199         (xdnd_manager_source_filter): Function had broken 
12200         error handling, fix it (use gdk_error_trap_push).
12201
12202         * gdk/x11/gdkdrawable-x11.c: This file now implements
12203         a base class for GdkWindowImplX11/GdkPixmapImplX11. This 
12204         base class is purely for the convenience of the X port,
12205         and not part of the interface to cross-platform GDK.
12206
12207         * gdk/x11/gdkevents-x11.c: Reflect various renamings.
12208         
12209         * gdk/x11/gdkgc-x11.c: Implement a subclass of GdkGC that's
12210         specific to X, and returned by the create_gc virtual method
12211         of GdkDrawableImplX11. 
12212         (gdk_x11_gc_set_dashes): Change this to take an array of gint8
12213         rather than gchar, this was also changed in the GdkGC vtable.
12214         (gdk_x11_gc_values_to_xvalues): If GdkGCValues is NULL, or the
12215         mask is 0, return immediately, instead of checking every flag.
12216         This is faster, and keeps us from segfaulting if values is NULL
12217         and the mask contains some nonzero flags.
12218
12219         * gdk/x11/gdkgeometry-x11.c: deal with all the rearranging of
12220         GdkWindow.
12221
12222         * gdk/x11/gdkglobals-x11.c: change type of grab window, since 
12223         GdkWindowPrivate is gone.
12224
12225         * gdk/x11/gdkim-x11.c: rename things that got renamed.
12226
12227         * gdk/x11/gdkimage-x11.c: implement in terms of GObject, and 
12228         remove the image_put stuff that got transferred to GdkDrawable.
12229         
12230         * gdk/x11/gdkinput.c: renamings
12231
12232         * gdk/x11/gdkmain-x11.c: #include <pango/pangox.h>
12233
12234         * gdk/x11/gdkpixmap-x11.c: GObject conversion
12235
12236         * gdk/x11/gdkprivate-x11.h: indentation fixes
12237
12238         * gdk/x11/gdkproperty-x11.c: renamings
12239
12240         * gdk/x11/gdkselection-x11.c: renamings
12241
12242         * gdk/x11/gdkwindow-x11.c: Restructuring and renaming; this now 
12243         implements the platform-specific "impl" object.
12244         Moved gdk_window_get_children to gdk/gdkwindow.c
12245
12246         * gdk/x11/gdkx.h: Remove all the private structs and private datas
12247         that no longer exist. Add declaration of GdkGCX11 object here.
12248         Fix all the macros to still work. 
12249
12250         * gtk/gtk-boxed.defs: Remove GtkStyle, GdkColormap, GdkWindow,
12251         GdkDragContext from the boxed types since they are now GObjects.
12252
12253         * gtk/gtkstyle.h, gtk/gtkstyle.c: Converted GtkStyle to a GObject,
12254         moved xthickness/ythickness into the instance. GtkStyleClass
12255         functions are now in the standard vtable for GtkStyle, so you have
12256         to create a GObject subclass to write a theme engine.
12257         (gtk_style_copy): fixed a leaked PangoFontDescription
12258         (gtk_style_init): renamed gtk_style_realize, so gtk_style_init
12259         can be the standard GObject function.
12260         
12261         * Throughout GTK:
12262         s/style->klass->[xy]thickness/style->[xy]thickness
12263         s/pango_layout_unref/g_object_unref/
12264
12265         * gtk/gtkrc.h, gtk/gtkrc.c: Converted GtkRcStyle to a GObject.
12266         
12267         * gtk/gtksocket.c: Use gdk_window_get_user_data() instead of 
12268         accessing GDK internals.
12269
12270         * gtk/gtkwidget.c: Use gdk_window_peek_children() instead of 
12271         accessing GDK internals.
12272
12273 2000-06-18  Elliot Lee  <sopwith@redhat.com>
12274
12275         * gtk/gtkwindow.c: Don't allow creation of a window bigger than the screen.
12276
12277         * gtk/gtkrange.c: Fix the mega-jumpy-with-lagged-events scrollbar
12278         problem by calculating event position relative to the trough
12279         rather than the slider.
12280         * gtk/gtkdnd.c, gtk/gtkcolorsel.c: Include FB headers if appropriate.
12281
12282         * gdk/gdkgc.h: Add GDK_NOR.
12283
12284         * configure.in, Makefile.am: Add modules top level dir
12285         * configure.in: Only use pangox library if building x11 target.
12286         * gdk/gdkdnd.h: Add GDK_DRAG_PROTO_LOCAL enum for future intra-app use.
12287
12288 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
12289
12290         * gtk/gtkcolorsel.c: Change private class member to be named
12291         private_data throughout the file.
12292
12293         * gtk/gtkcolorsel.h (struct _GtkColorSelection): Change private to
12294         private_data to avoid clashing with keyword.
12295
12296 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
12297
12298         * gdk/gdkdnd.h: Add comment to remove warning.
12299
12300 Sun Jun 18 15:35:35 2000  Pablo Saratxaga <pablo@mandrakesoft.com>
12301
12302         * gtk/gtkrc.cp1251,gtk/Makefile.am: the cp1251 is also used by
12303         Byelorussian language; changed the Makefile and file names 
12304         to reflect that.
12305
12306 Mon Jun 12 16:58:40 2000  Owen Taylor  <otaylor@redhat.com>
12307
12308         * gtk/gtkwindow.c (gtk_window_unmap): Call gdk_window_withdraw
12309         rather than gdk_window_hide; this makes things work
12310         correctly if the window is programmatically hidden while
12311         iconified.
12312
12313 Sun Jun 11 12:46:19 2000  Owen Taylor  <otaylor@redhat.com>
12314
12315         * gtk/gtkdnd.c (gtk_drag_set_default_icon): Fix
12316         cut and paste typo where wrong pixmap was being
12317         unref'ed. (Pointed out by a friend of KUSANO Takayuki.)
12318
12319 Sun Jun 11 10:22:36 2000  Owen Taylor  <otaylor@redhat.com>
12320
12321         * gtk/gtkselection.c (gtk_selection_bytes_per_item):
12322         Add helper function to compute format / bytes 
12323         relationship. Use in a couple places to fix up
12324         errors which assume 8 * format.
12325
12326         * gtk/gtkselection.c (gtk_selection_request): Use 32
12327         rather than 8 * sizeof (GdkAtom), to work correctly
12328         on Alpha.
12329
12330 Thu Jun  8 21:54:51 2000 Christopher Blizzard  <blizzard@redhat.com>
12331
12332         * gtk/Makefile.am (DEPS): deps include libgtk-x11.la, not
12333         libgtk.la
12334         (LDADDS): include libgtk-x11.la and libgdk-x11.la, not the non-x11
12335         versions
12336
12337         * gtk/gtklabel.c (gtk_label_get_text): Make sure that the error
12338         checking macros return NULL since the function has a return value.
12339
12340 Wed Jun  7 15:44:42 2000  Owen Taylor  <otaylor@redhat.com>
12341
12342         * gtk/Makefile.am (LDFLAGS): Add missing backslash that was keeping
12343         GTK+ from building at all.
12344
12345         * gdk/Makefile.am (gdk_c_sources): Fix up some indentation issues.
12346
12347 Mon Jun  5 19:32:53 CEST 2000 Paolo Molaro <lupus@linuxcare.com>
12348
12349         * configure.in, gtk-config.in, gdk/Makefile.am, gdk/*/Makefile.am,
12350         gtk/Makefile.am: make it possible to configure gtk for different
12351         targets on the same platform. The library name is now 
12352         libgtk-$target-$version.so. gtk-config accepts a --target x11|nanox|linux-fb
12353         flag. Only the x11 target compiles right now.
12354         * gdk/gdkregion-generic.h, gdk/gdkregion-generic.c, gdk/gdkpoly-generic.h,
12355         gdk/gdkpolyreg-generic.c: move generic region code in the main GDK dir.
12356         * gdk/nanox/gdk*generic*: delete generic region code.
12357         * gdk/linux-fb/gdk*generic*: delete generic region code.
12358         * README.nanox: update information.
12359         
12360 Tue Jun  6 10:53:59 2000  Owen Taylor  <otaylor@redhat.com>
12361
12362         * gtk/gtktoolbar.c (gtk_toolbar_prepend_widget): Fix to
12363         prepend not append. (Pointed out by Brett Hall.)
12364
12365 Tue Jun  6 01:59:57 2000  Owen Taylor  <otaylor@redhat.com>
12366
12367         * gtk/gtkentry.c (gtk_entry_finalize): Unref the entry's layout.
12368
12369 Mon Jun  5 16:00:09 2000  Owen Taylor  <otaylor@redhat.com>
12370
12371         * gdk/gdk.c (gdk_init_check): Add call to g_type_init() - we'll
12372         need this later, and this makes sure that the atexit for
12373         glib gets called after that for GDK, so atexits are
12374         properly ordered for object leak checking.
12375
12376         * gdk/gdk.c (gdk_exit_func): Call gdk_windowing_exit().
12377
12378         * gdk/x11/gdkmain-x11.c (gdk_windowing_exit): Call 
12379         pango_x_shutdown_display()
12380
12381         * gtk/simple.c (main): Close window on destroy.
12382
12383 Mon Jun  5 11:50:02 2000  Owen Taylor  <otaylor@redhat.com>
12384
12385         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): We need
12386         to treat initial creation different from setting with 
12387         regards to the graphics-exposures parameter, so add a parameter
12388         indicating whether this is initial or not.
12389
12390 Mon Jun  5 13:29:31 2000  Owen Taylor  <otaylor@redhat.com>
12391
12392         * gdk/x11/gdkevents-x11.c: Hack gdk_event_get_graphics_expose()
12393         to sort of work by adding an extra return_exposes arg
12394         to gdk_event_translate() - it might be better to simply
12395         deprecate the function altogether and force people to rewrite
12396         without it. gdk_window_scroll() handles most of it, and where
12397         gdk_window_scroll() doesn't work, simply redrawing more does.
12398
12399         * gtk/gtkwidget.c (gtk_widget_set_default_direction): Fix up
12400         assertion.
12401
12402         * gtk-config.in: Include PANGO_CFLAGS/LIBS.
12403
12404         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Remove a 
12405         bunch of pretty much useless /* Print debugging info */ comments 
12406         which had drifted away from the code they were commenting.
12407
12408 2000-06-02  Havoc Pennington  <hp@pobox.com>
12409
12410         * gtk/testtextbuffer.c: Test program to make sure GtkTextBuffer
12411         is in working order.
12412         
12413         * gtk/testtext.c: Change to reflect anonymous mark API
12414
12415         * gtk/gtktextview.c: Convert from mark names to GtkTextMark*.
12416
12417         * gtk/gtktexttag.h (struct _GtkTextTag): remove the affects_size
12418         field, which was unused.
12419
12420         * gtk/gtktextmarkprivate.h (GTK_IS_TEXT_MARK): add this macro,
12421         saves some typing.
12422
12423         * gtk/gtktextbuffer.c: Switch from mark names to GtkTextMark*   
12424
12425         * gtk/gtktextbtree.c (gtk_text_btree_new): set the not_deleteable
12426         flag on the insertion point and selection bound
12427
12428         Throughout, use GtkTextMark instead of GtkTextLineSegment, and 
12429         make mark-manipulation functions take a GtkTextMark* instead of a
12430         mark name.
12431         
12432         * gtk/gtktextmarkprivate.h: Add a "not_deleteable" flag to 
12433         GtkTextMarkBody; will be used to detect attempts to delete
12434         the permanent marks (insert and selection bound)
12435
12436         * gtk/Makefile.am (noinst_PROGRAMS): add testtextbuffer 
12437
12438 Fri Jun  2 12:56:01 2000  Owen Taylor  <otaylor@redhat.com>
12439
12440         * gtk/gtkwidget.c (gtk_widget_init): Initialize DOUBLE_BUFFERED
12441         flag to on.
12442
12443         * gtk/gtkwidget.c (gtk_widget_draw) gtk/gtkmain.c (gtk_main_do_event): 
12444         Honor DOUBLE_BUFFRED_FLAG
12445
12446         * gtk/gtkwidget.c (gtk_widget_set_double_buffered): Add a
12447         function to set the DOUBLE_BUFFERED flag.
12448
12449         * gtk/gtkwidget.h: Add GTK_DOUBLE_BUFFERED flag to indicate whether
12450         or not exposes done on the widget should be double-buffered.
12451
12452         * gtk/gtkenums.h (GtkTextDirection): Reverse order of enumerations
12453         to be what would be expected. (Fixes problem with a
12454         g_return_if_fail() validating a TextDirection enumeration)
12455
12456 Thu Jun  1 23:05:13 2000  Owen Taylor  <otaylor@redhat.com>
12457
12458         * gtk/gtkwidget.c: Remove all references to 
12459         offscreen flag which was no longer used.
12460
12461         * gtk/gtkprivate.h (enum): Remove unused flags and compress.
12462
12463         * gtk/gtkframe.c (gtk_frame_set_label_widget): Check
12464         for non-null label_widget->parent.
12465
12466         * gtk/gtkentry.c: Get rid of code to deal with PangoAttribute 
12467         which no longer was used.
12468
12469         * gdk/gdkpango.c (gdk_pango_context_get_info): make static.
12470
12471         * gdk/gdkpango.c (gdk_draw_layout[_line]): Add checks
12472         for null arguments.
12473
12474         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): add
12475         check for destroyed windows.
12476
12477 Thu Jun  1 13:48:45 2000  Owen Taylor  <otaylor@redhat.com>
12478
12479         * gtk/gtkimmulticontext.c: Add a finalize method and unref
12480         the slave context there.
12481
12482         * gtk/gtkinvisible.[ch]: Make reference counting behavior
12483         identical to GtkWindow.
12484
12485 Thu Jun  1 01:54:11 2000  Owen Taylor  <otaylor@redhat.com>
12486
12487         * Makefile.am gdk/gdkpango.c: Copy the layout render function from
12488         pangox to here, so we can write them independent of rendering
12489         system, using GDK primitives.
12490
12491         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c
12492         gdk/x11/gdkdrawable-x11.c: Remove draw_layout() from the vtable,
12493         since we have a rendering-system independent implementation in
12494         terms of draw_glyphs().
12495         
12496         * gdk/gdkpango.c gdkdrawable.h (gdk_draw_layout_line): New
12497         function to render a single line.
12498
12499         * gdk/x11/gdkpango.c: Move the guts of this file mostly
12500         into ../gdkpango.c, which simplifies things, since we
12501         don't have to deal with raw X gc's.
12502
12503 Fri May 19 04:28:16 2000  Owen Taylor  <otaylor@redhat.com>
12504
12505         * gtk/gtktextlayout.[ch]: Add get_log_attrs() function to
12506         get the logical attributes for a given GtkTextLine.
12507
12508 Tue May 30 16:05:39 2000  Owen Taylor  <otaylor@redhat.com>
12509
12510         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Track
12511         g_locale_get_codeset() to g_get_codeset() change.
12512
12513 Tue May 30 15:03:19 2000  Owen Taylor  <otaylor@redhat.com>
12514
12515         * gtk/testcalendar.c (calendar_font_selection_ok): Use font
12516         descriptions.
12517
12518         * gtk/gtkentry.c (gtk_entry_draw_text): Center text within
12519         the entry.
12520
12521         * gtk/gtkfontsel.c (gtk_font_selection_dialog_init): Start of
12522         redoing (vastly simplifying) for Pango. Still needs quite
12523         a bit of work. (Size selection is currently poor. List of 
12524         predefined sizes is not a good idea, since all of these
12525         sizes won't necessarily be distinct.)
12526
12527 Tue May 30 13:50:19 2000  Owen Taylor  <otaylor@redhat.com>
12528
12529         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Handle
12530         CODESET results for LANG=C.
12531
12532 Mon May 29 15:49:10 2000  Owen Taylor  <otaylor@redhat.com>
12533
12534         * gtk/gtkrc.[ch]: Add a 'font_name' declaration to RC
12535         which takes a stringized pango font description;
12536         ignore the older 'font' and 'fontset' declarations.
12537
12538         * gtk/gtkstyle.c gtk/gtkrc.c: Fill in the style->font
12539         field with a GdkFont derived via gdk_font_from_description(),
12540         for compatibility. (Should we just remove it entirely?
12541         Probably too much compatibility breakage, but people
12542         should be migrating to the new Pango stuff as quickly
12543         as possible.)
12544
12545 Mon May 29 15:47:41 2000  Owen Taylor  <otaylor@redhat.com>
12546
12547         * gtk/gtkentry.c gtk/gtkclist.c: s/pango_font_unref/g_object_unref/.
12548
12549 Mon May 29 15:44:46 2000  Owen Taylor  <otaylor@redhat.com>
12550
12551         * gtk/gtkcalender.c: Roughly pango-ized. Really needs 
12552         redoing; there are some bugs in size allocation right
12553         now, the semi-existant distinction between header / day
12554         fonts was removed, but, with Pango, could actually
12555         be made functional in a nice way.
12556         
12557         * gtk/testcalender: Move calender from examples into this
12558         directory as a test program. (We really need to restrcture
12559         testgtk into a whole directory full of tests for every
12560         widget or functionality group, separated into multiple .c
12561         files.)
12562
12563 Mon May 29 15:19:56 2000  Owen Taylor  <otaylor@redhat.com>
12564
12565         * gtk/testgtk.c (file_exists): Fix stupid typo that
12566         was keeping RC file from being loaded.
12567
12568         * gtk/testgtkrc gtk/testgtkrc2: Test new pango-ized
12569         RC file font code.
12570
12571 Mon May 29 14:31:27 2000  Owen Taylor  <otaylor@redhat.com>
12572
12573         * gdk/gdkfont.h gdk/x11/gdkfont-x11.c (gdk_font_from_description):
12574         Add function to load a GdkFont from a PangoFontDescription.
12575
12576 2000-05-29  Tor Lillqvist  <tml@iki.fi>
12577
12578         * gdk/win32/gdkevents-win32.c (gdk_WindowProc): The local "event"
12579         variable should be of type GdkEventPrivate.
12580
12581 Fri May 26 17:16:40 2000  Owen Taylor  <otaylor@redhat.com>
12582
12583         * gtk/frame.[ch] gtkaspectframe.c: Make frame widgets able
12584         to have any widget for the label, use a GtkLabel widget
12585         to display the text. (Based partially on a patch from
12586         Anders Carlson.)
12587
12588         (Quite a bit of code reorganization - strip 90% of the
12589         guts out of gtkaspectframe and add a single virtual
12590         func to GtkFrameClass - compute_child_allocation.)
12591
12592 Fri May 26 12:00:02 2000  Owen Taylor  <otaylor@redhat.com>
12593
12594         * gtk/gtkctree.c gtk/gtkclist.[ch]: Pangoized.
12595         (Removed clist->row_center_offset field because caching
12596         it wasn't saving time or code, added private function
12597         _gtk_clist_create_cell_layout()).
12598
12599 Wed May 24 15:59:37 2000  Owen Taylor  <otaylor@redhat.com>
12600
12601         * gtk/gtkaccellabel.c: Pangoized.
12602
12603         * gtk/[hv]ruler.c: Pangoized
12604
12605 Mon May 22 19:23:59 2000  Owen Taylor  <otaylor@redhat.com>
12606
12607         * gtk/gtkfilesel.c (gtk_file_selection_init):
12608         Use gtk_clist_set_column_auto_resize() to remove need
12609         need for manual column width computations.
12610
12611 Mon May 22 18:50:26 2000  Owen Taylor  <otaylor@redhat.com>
12612
12613         * gtk/gtktooltips.[ch]: Replace custom drawing with a GtkLabel, 
12614         ensuring Pango correctness, and considerably simplifying the
12615         code.
12616         
12617         * gtk/gtklabel.c gtk[hv]scale.c: 1000 => PANGO_SCALE.
12618
12619         * gtk/gtklabel.c (gtk_label_size_request): Fixed incorrect
12620         getting of numbers of lines.
12621
12622         * gtk/gtklabel.c (gtk_label_size_request): Set the requisition
12623         to the actual requested width of the lable, not to the wrap
12624         width we set.
12625
12626         * gtk/gtktextchild.h: Remove extraneous include of gtk/gtk.h.
12627
12628         * gtk/gtktextbtree.c gtk/gtktextbuffer.c gtk/gtktextlayout.c
12629           gtk/gtktextview.c gtk/gtktextview.[ch]: Fix up includes.
12630
12631         * gtk/gtktextview.c: Fix structure inheritance.
12632
12633         * gtk/gtkprogressbar.c: Pangoize.
12634
12635 Mon May 22 15:47:30 2000  Owen Taylor  <otaylor@redhat.com>
12636
12637         * gtk/gtktextview.c (gtk_text_view_get_first_para_iter): Encapsulate
12638         in a function.
12639
12640         * gtk/gtktextlayout.c (find_display_line_above): Fixed
12641         bug with computing line tops.
12642
12643         * gtk/gtktextview.c (changed_handler): Fix < , <= confusion.
12644
12645 Thu May 18 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
12646
12647         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Fix up the x_offset
12648         and y_offset coordinates to do what we need now. (The offset between
12649         buffer and layout coordinates has been reintroduced, but is a 
12650         bit different than before.)
12651
12652         * gtk/gtktextview.[ch]: No longer inherit from GtkLayout; instead
12653         handle the adjustments ourselves, and scroll as necessary using
12654         the new gdk_window_scroll().
12655         
12656         The advantage of this is that when we are incrementally revalidating,
12657         we are essentially rearranging things around the visible portion
12658         of the screen. With the old setup, the visible portion of the
12659         screen was moved around in the layout, so scrolling and redrawing
12660         to track that caused jumping of the display. Since we now
12661         control the scrolling ourselves, we can suppress this and
12662         only redraw when things actually change.
12663
12664 Thu May 18 18:47:25 2000  Owen Taylor  <otaylor@redhat.com>
12665
12666         * gtk/gtktextbtree.c (redisplay_mark): We need to invalidate
12667         the region not just redisplay it after-all, since we store the
12668         cursors in the LineDisplay. (Ugly interactions here between
12669         GtkLayout and GtkTextBTree here.)
12670         
12671         * gtk/gtktextbtree.c (redisplay_region): Fixed reversed comparison.
12672
12673 Thu May 18 18:43:21 2000  Owen Taylor  <otaylor@redhat.com>
12674
12675         * gdk/gdkwindow.h gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): 
12676         Added function to scroll contents of a window while keeping the
12677         window constant. Works by XCopyArea or guffaw-scrolling depending
12678         on the details of how the window is set up. (guffaw-scrolling
12679         still needs to be filled in.)
12680
12681 Wed May 17 22:36:53 2000  Owen Taylor  <otaylor@redhat.com>
12682
12683         * gtk/gtktextiter.c gtk/gtkmain.c: Add a debug key for the text widget,
12684         move the debugging that was tied to a global variable
12685         to that.
12686
12687         * gtk/gtkmarshal.list: Add NONE:INT,INT,INT
12688
12689         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.c: Keep a separate
12690         validated flag, in line data instead of setting height/width to
12691         -1. This allows us to perform operations with partially invalid
12692         buffer (using the old size for invalid lines) and thus to do
12693         incremental vaidation. Keep height/width aggregates up to date
12694         when deleting text and rebalancing the tree.
12695
12696         * gtk/gtktextbtree.[ch]: Add functions validate a line
12697         (gtk_text_btree_validate_line), and to validate up
12698         to a number of pixels (gtk_text_btree_validate).
12699
12700         * gtk/gtktextlayout.[ch]: Add an ::invalidated signal
12701         that indicates that something is changed and a revalidation
12702         pass is needed. Change ::need_repaint to ::changed, and
12703         make it take old and new yranges instead of a rectangle.
12704
12705         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.[ch]: Move
12706         the line_data_destroy() function from 
12707         gtk_text_btree_add_view() to a virtual function in 
12708         GtkTextLayout
12709
12710         * gtk/gtktextbtree.[ch]: Remove gtk_text_btree_get_damage_range(),
12711         since we are handling partial repaints in a different fashion
12712         now.
12713
12714         * gtk/gtktextbtree.[ch]: Only repaint the changed portion
12715         of the selection instead of queueing a repaint on the
12716         entire widget.
12717
12718         * gtk/gtktextbuffer.[ch] gtk/gtktextbtree.[ch]: Move
12719         get_selection_bounds() down to btree, make the function
12720         in buffer a wrapper around the btree function.
12721
12722         * gtk/gtktextlayout.[ch]: Add functions to check if the
12723         layout is valid and to recompute either a range of pixels
12724         aroudn a line or a certain total number of pixels.
12725
12726         * gtk/gtktextlayout.[ch]: Cache a single line display;
12727         now that we only redraw the needed portions, the hit rate
12728         for this cache is quite high.
12729         
12730         * gtk/gtktextview.[ch]: Keep track of the first paragraph
12731         on the screen so that when re-laying-out the buffer, we can
12732         keep the same place. This requires connecting to ::value_changed
12733         on the adjustments
12734
12735         * gtk/gtktextview.[ch]: Add idle functions to revalidate
12736         the buffer after we receive an ::invalidated signal.
12737         
12738 Wed May 17 22:10:47 2000  Owen Taylor  <otaylor@redhat.com>
12739
12740         * gtk/gtklayout.c (gtk_layout_size_allocate): Set upper
12741         to max of allocation and layout size, not just to the
12742         layout size.
12743
12744         * gtk/gtk[hv]scrollbar.c (gtk_[hv]scrollbar_calc_slider_size): 
12745         Invalidate window so it gets redrawn properly.
12746
12747         * gdk/gdkwindow.c (gdk_window_invalidate_rect): Allow rect == NULL
12748         to mean the entire window.
12749
12750         * gdk/gdkevents.h: Move definition for GDK_PRIORITY_REDRAW
12751         into public header.
12752
12753 Mon May 15 14:51:31 2000  Owen Taylor  <otaylor@redhat.com>
12754
12755         * gtk/gtktextmark.c (gtk_text_mark_get_name): Add function
12756         to get the name of a mark.
12757
12758         * gtk/gtktextlayout.c (gtk_text_layout_get_line_at_y): Add a function
12759         to find the paragraph from a y position.
12760
12761 Thu May 11 12:57:20 2000  Owen Taylor  <otaylor@redhat.com>
12762
12763         * gtk/gtktextbtree.c (gtk_text_btree_node_invalidate_upward): Valid
12764         nodes have width/height >= 0, not > 0.
12765
12766 Tue May  9 21:29:06 2000  Owen Taylor  <otaylor@redhat.com>
12767
12768         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c (gtk_text_layout_get_line_display):
12769         Add a size_only flag, so when we only need the size, we don't create
12770         useless appearance attributes.
12771
12772         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Remove
12773         duplicate setting of font description.
12774
12775         * gtk/gtkscale.c: Use PANGO_SCALE instead of 1000 
12776
12777 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
12778
12779         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
12780         EXTRA_DIST. It does not work well when the file that
12781         everything depends on is not in the tarball.
12782
12783 Wed Apr 26 00:56:14 2000  Owen Taylor  <otaylor@redhat.com>
12784
12785         * gtk/testgtk.c: Some hacks and fixes so that it basically
12786         works when not sitting in the GTK+ build tree.
12787
12788 2000-05-03  Havoc Pennington  <hp@redhat.com>
12789
12790         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
12791         Properly determine the ordering of the tag root and the current
12792         line within the tree. Previous algorithm only worked if the tag
12793         root's immediate parent was the common root of both the current
12794         line and the tag root.
12795
12796 Wed Apr 26 00:43:00 2000  Owen Taylor  <otaylor@redhat.com>
12797
12798         * gtk/gtktextlayout.c (set_para_values): Fix some bugs in
12799         alignment.
12800
12801         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Track
12802         the widget text directional dynamically.
12803
12804         * gtk/gtktextview.[ch]: Added functions to get and set default
12805         wrap mode.
12806
12807 Tue Apr 25 23:47:38 2000  Owen Taylor  <otaylor@redhat.com>
12808
12809         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Fix bug
12810         in cursor location computation.
12811
12812 Tue Apr 25 23:22:59 2000  Owen Taylor  <otaylor@redhat.com>
12813
12814         * gtk/gtklayout.c (gtk_layout_set_size): Clamp hadjustment/
12815         vadjusment values properly when layout gets smaller.
12816
12817         * gtk/gtktextview.c (need_repaint_handler): Areas being
12818         passed in are far completely inaccurate, and sometimes
12819         too small, so, for now, just queue a redraw on the
12820         whole visible region.
12821
12822 2000-04-25  Havoc Pennington  <hp@redhat.com>
12823
12824         * gtk/gtktextbtree.c (summary_destroy): new function to 
12825         destroy tag summary nodes
12826         (gtk_text_line_next_could_contain_tag): this function was 
12827         totally broken if the line passed in wasn't below the tag
12828         root. Fix it.
12829         (gtk_text_btree_first_could_contain_tag): In the tag == NULL 
12830         "wildcard" case, we have to do a linear scan. Blah.
12831         (gtk_text_btree_last_could_contain_tag): In tag == NULL case,
12832         we have to do the linear scan
12833         (tag_removed_cb): When a tag is removed from the tag table, 
12834         remove the GtkTextTagInfo node from the btree.
12835         (gtk_text_btree_spew): Implement the spew function, for 
12836         our debugging pleasure.
12837
12838 Tue Apr 25 19:40:18 2000  Owen Taylor  <otaylor@redhat.com>
12839
12840         * gtk/gtktextlayout.c (gtk_text_layout_set_buffer): Fix
12841         a problem with referring to the wrong buffer.
12842
12843         * gtk/gtkentry.c: Fix focus-in/focus-out confusion.
12844
12845         * gtk/gtkrc.c gtk/gtkstyle.c: Moving setting default
12846         font description to gtk_style_new() - otherwise things
12847         don't work without a .gtkrc file.
12848
12849         * gtk/gtktextbuffer.c (gtk_text_buffer_new): Sink the
12850         tags table if we create it ourself, too.
12851
12852         * gdk/gdktypes.h (enum): Move GDK_RELEASE_MASK, since
12853         it was conflicting with XKB modifiers.
12854
12855         * gtk/gtktextview.[ch]: Add simple support for 
12856         GtkIMContext.
12857
12858 Mon Apr 24 19:34:18 2000  Owen Taylor  <otaylor@redhat.com>
12859
12860         * gtk/gtkentry.c (gtk_entry_move_cursor_visually): Fix problem
12861         with deletion from last commit.
12862
12863 Mon Apr 24 19:29:40 2000  Owen Taylor  <otaylor@redhat.com>
12864
12865         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Set the language
12866         in the context from the current locale.
12867         
12868         * gtk/gtkentry.c (gtk_entry_size_request): Use language from the
12869         context, not hardcoded value.
12870
12871         * gtk/gtkentry.c (gtk_entry_move_cursor): Make character movement visual,
12872         not logical.
12873
12874 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
12875
12876         * gtk/gtkentry.c gtk/gtktextdisplay.c: Don't handle selections as
12877         attributes - that doesn't handle partial-glyph selection
12878         properly. Instead use new pango_layout_line_get_x_ranges()
12879         functionality to draw the selection.
12880
12881         * gtk/gtkentry.c: Simplify code since pango_layout_line_index_to_x()
12882         now properly handles out-of-range coordinates.
12883
12884         * gtk/gtktextbuffer.c: Emit "mark_set" when the cursor is moved.
12885
12886         * gtk/gtktextiter.h gtk/gtktextiterprivate.h: Make gtk_text_iter_get_line_byte()
12887         public.
12888
12889         * gtk/gtktextlayout.[ch]: Properly set the direction in the PangoContext
12890         for paragraphs opposite to the base direction of the widget.
12891
12892         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c: Fixes for alignment.
12893
12894         * gtk/gtktextlayout.c: Don't split segments on marks, since that
12895         causes Arabic words to reshape as you cursor through.
12896
12897         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Implement virtual
12898         cursor position when moving vertically with the arrow keys and
12899         scrolling with page-up/page-down. (Arrow keys save only the X,
12900         scrolling saves both X and Y.)
12901
12902         This means you can line-up / line-down or page-up / page-down
12903         without losing your place, and also that moving vertically
12904         with the cursor keys keeps the same X position, not the same
12905         character count:
12906
12907         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Make vertical
12908         arrow keys move by display lines, not paragraphs.
12909
12910 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
12911
12912         * gtk/gtklayout.c: Make sure that the bin window is at least
12913         as big as the allocation. (Should we also make sure that the
12914         bin window is big enough to completely cover widget->window?)
12915
12916         * gtk/gtktextview.c (gtk_text_view_get_visible_rect): Add
12917         function to get the onscreen rectangle.
12918
12919         * gdk/x11/gdkwindow-x11.c (gdk_window_get_pointer): Correctly account
12920         for offsets in window coordinates.
12921
12922 Sun Apr 16 16:13:27 2000  Owen Taylor  <otaylor@redhat.com>
12923
12924         * gtk/gtkentry.c (gtk_entry_get_cursor_locations): Fix index/offset
12925         confusion.
12926
12927         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Set the default direction
12928         from the widget direction.
12929
12930         * gtk/gtktexttag.c gtk/gtktexttagprivate.h (gtk_text_tag_set_arg): 
12931         Add a "direction" attribute.
12932
12933         * gtk/gtktextview.c: global s/tkxt/text_view/.
12934
12935         * gtk/testtext.c: Added long block of text in Arabic, to test out
12936         the direction attributes. (Some problems with the shaping system
12937         for arabic become obvious - like the fact the cursor splits words
12938         into unjoined pieces.)
12939
12940 Fri Apr 14 12:54:34 2000  Owen Taylor  <otaylor@redhat.com>
12941
12942         * gtk/gtktextdisplay.c (render_layout): Add overstrike handling.
12943
12944         * gtk/gtktextlayout.c: Fix up alignment.
12945
12946         * gtk/testtext.c: Add some tests for centering, wrapping.
12947
12948 Fri Apr 14 09:26:22 2000  Owen Taylor  <otaylor@redhat.com>
12949
12950         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c gdk/x11/gdkdrawable-x11.c:
12951         Add a draw_glyphs() operation to the drawable vtable and gdk_draw_glyphs().
12952         If we wrote GTK+-specific layout-render function this could just replace
12953         the draw_layout() operation in the vtable.
12954
12955         * gtk/gtkentry.c: Move guts of gtk_entry_get_cursor_locations to 
12956         pango_layout_get_cursor_pos() and use that function.
12957
12958         * gtk/gtktextchild.[ch]: add gtk_ onto pixmap_segment_new(), since it
12959         is a non-static symbol.
12960
12961         * gtk/gtktextbtree.[ch]: Replace gtk_text_btree_find_line_data_by_y()
12962         with gtk_text_btree_find_line_by_y()
12963
12964         * gtk/gtktextdisplay.c: Rewrote for Pango - uses a custom layout
12965         renderer that handles GtkTextAppearance attributes.
12966
12967         * gtk/gtktexttag.[ch] gtk/gtktexttagprivate.h: 
12968
12969           - Move the values in the style that don't affect geometry into a
12970             GtkTextAppearance structure.
12971           - Change underline to take a PangoUnderline and "font" a string
12972             representation of a font description
12973           - Add a "font_desc" attribute which takes a FontDescription structure.
12974
12975         * gtk/gtktextlayout.[ch]:
12976
12977           - Get rid of the display-line list per each line. Instead, we
12978             generate, on demand, a GtkTextLineDisplay structure which]
12979             contains a PangoLayout * and other necesary information
12980             (offsets, cursor locations) for displaying a paragraph.
12981           - Get rid of the code to wrap lines, create display chunks,
12982             etc. Instead, we just go through a paragraph and convert
12983             it into the necessary inputs to a PangoLayout.
12984           - Implement a new attribute type, GtkTextAttrAppearance. This
12985             holds a GtkTextAppearance, and is used to pass colors, 
12986             stipple, etc, through from the layout to the display without
12987             having to use lots and lots of individual attributes.
12988           - Reimplement gtk_layout_get_iter_at_pixel() gtk_layout_get_iter_pos()
12989             in terms of PangoLayout functions.
12990         
12991         * gtk/gtktextview.c: 
12992          
12993           - Handle passing the necessary PangoContext to the layout
12994           - Some fixups in painting to deal with the automatic backing store
12995             and offsetting of GTK+-1.4
12996           - Add a style_set handler so that the default style reacts
12997             properly to theme changes.
12998         
12999         * gtk/gtktext?*.[ch]: Random code-style fixes.
13000
13001         * gtk/testtext.c: Substitute in languages that Pango handles now for Thai
13002
13003 Mon Apr 10 10:33:45 2000  Owen Taylor  <otaylor@redhat.com>
13004
13005         * gtk/gtktext?*.[ch]: Check in Havoc's port of the Tk text widget,
13006         in original form preparatory to Pango-ization and gdkimcontext-ization.
13007
13008 Thu Apr  6 19:25:39 2000  Owen Taylor  <otaylor@redhat.com>
13009
13010         * gtk/gtkimcontext.c: Move default implementations to real_* vfuncs,
13011         so that we can derive from gtkimcontext in language bindings properly.
13012
13013 Thu Apr  6 16:02:52 2000  Owen Taylor  <otaylor@redhat.com>
13014
13015         * gtk/gtkimcontextsimple.[ch]: Use gdk_keyval_to_unicode to gdk_unicode_to_keyval.
13016         Add a compose table including (almost) all the compose combinations
13017         from X. This is 6k of static, shared data as opposed to 50k or so of dynamic
13018         data in the XIM implementation.
13019
13020         * gdk/gdk.h gdk/gdkkeyuni.c gdk/win32/gdkevents-win32.c (gdk_keyval_to_unicode, gdk_unicode_to_keyval):
13021         Moved functions to convert keyvalues from and to unicode here from
13022         the win32 port and made them public.
13023
13024 Wed Apr  5 16:37:29 2000  Owen Taylor  <otaylor@redhat.com>
13025
13026         * gtk/gtkeditable.c (gtk_editable_insert_text): Allow new_text_length == -1.
13027
13028 Wed Apr  5 16:27:45 2000  Owen Taylor  <otaylor@redhat.com>
13029
13030         * gtk/gtkimcontext.[ch]: Base class for new input context system
13031
13032         * gtk/gtkimmulticontext.[ch]: Proxy input context that allows
13033         the real input context implementation to be loaded from modules
13034         and switched on the fly.
13035
13036         * gtk/gtkcontextsimple.[ch]: Simple implementation of an input
13037         context that just does direct keysymbol => unicode translation.
13038
13039         * gtk/gtkentry.[ch]: Start switching editing over to using
13040         GtkInputContext. (No handling of preedit yet.)
13041
13042 Wed Apr  5 15:48:41 2000  Owen Taylor  <otaylor@redhat.com>
13043
13044         * gtk/gtktypeutils.h (GTK_CHECK_GET_CLASS): Fix problem with one too
13045         many substitutions. (klass should not be subsituted.)
13046
13047 Wed Apr  5 00:18:14 2000  Owen Taylor  <otaylor@redhat.com>
13048
13049         * configure.in: Add checks for Pango
13050
13051         * configure.in docs/Makefile.am: Add test for sgml2html
13052         and allow 'make dist' without building html, but print out
13053         warnings in that case. (For making snapshots)
13054
13055         * gdk/Makefile.am gdk/x11/Makefile.am gtk/Makefile.am:
13056         Add Pango libraries and C flags
13057
13058         * gdk/gdkdraw.c gdk/gdkdrawable.h gdkwindow.c gdk/x11/gdkdrawable-x11.c:
13059         Add function (gdk_draw_layout) to draw a pango layout.
13060
13061         * gdk/gdkpango.h gdk/x11/gdkpango-x11.c: New file with functions
13062         for getting Pango contexts for GDK.
13063
13064         * gtk/gtkeditable.c: Get rid of dead code gtk_editable_parent_set()
13065
13066         * gtk/gtkentry.[ch]: Complete rewrite to use Pango, add bidirectional
13067         editing.
13068
13069         * gtk/gtkentry.c: Hack in simple Hebrew input with direct
13070         keysym => unicode translations. More languages can be added
13071         here, but real input-method support is needed.
13072
13073         * docs/Changes-1.4.txt: Added note about entry behavior.
13074         
13075         * gtk/gtkenums.h gtk/gtkwidget.[ch] testgtk.c gtkprivate.h: Add functions
13076         to set the reading direction for a widget and the global direction.
13077         Add test which allows toggling the global direction. Two private
13078         flags are used to store the direction. (GTK_DIRECTION_SET + GTK_DIRECTION_LTR)
13079
13080         * gtk/gtkcheckbutton.c gtk/gtkframe.c gtk/gtkhbbox.c gtk/gtkhbox.c
13081           gtk/gtkradiobutton.c gtk/gtkspinbutton.c gtk/gtktable.c 
13082
13083         * gtk/gtk[hv]scale.c gtk/gtkscale.[ch]: Draw numbers using Pango
13084
13085         * gtk/gtklabel.[ch]: Moved to Pango and considerably rewritten. Line breaking,
13086         underlining now handled by Pango.
13087
13088         * gtk/gtkstyle.[ch] gtk/gtkrc.[ch]: Add a PangoFontDescription
13089         to RCStyle and Style. (Having both this and the old font name and GdkFont 
13090         is temporary.)
13091
13092         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_{context,layout}): Added 
13093         convenience functions for creating contexts and layouts for widgets.
13094
13095         * gtk/testgtk.c: Enhance label tests with multilingual labels.
13096
13097 2000-05-29  Jonathan Blandford  <jrb@redhat.com>
13098
13099         * gtk/gtkclist.c (gtk_clist_column_titles_active): let you set the
13100         titles to be active, even if they aren't visible.
13101         (gtk_clist_column_titles_passive):  Ditto.
13102
13103 2000-05-21  Nils Barth  <nils_barth@post.harvard.edu>
13104
13105         * gtkmenu.c:
13106         * gtkmenu.h:
13107         * gtktypeutils.h: Spelling/grammar fixes in comments.
13108
13109 Tue May 23 12:25:07 CEST 2000 lupus <lupus@debian.org>
13110
13111         * gdk/nanox/*.h: add missing header files.
13112
13113 Fri May 19 11:52:59 2000  Tim Janik  <timj@gtk.org>
13114
13115         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set
13116         send_event to TRUE.
13117         (gtk_drawing_area_size): queue a resize.
13118
13119 Sun Mar 26 03:21:28 2000  Tim Janik  <timj@gtk.org>
13120
13121         * gtk/gtksignal.c (gtk_signal_handlers_destroy): when unref-ing
13122         the handlers, also invalidate them. bug nailed down by Karl Nelson
13123         <kenelson@ece.ucdavis.edu>.
13124
13125 Fri May 19 06:49:23 2000  Tim Janik  <timj@gtk.org>
13126
13127         * gtk/gtkfontsel.c (gtk_font_selection_get_font_name): handle
13128         "(nil)" foundries, patch from Grigorios Magklis.
13129
13130         * gtk/gtkfontsel.c (gtk_font_selection_load_font): don't crash
13131         on non-available fonts, based on a patch by Grigorios Magklis
13132         <maglis@cs.rochester.edu>.
13133
13134 2000-05-18  Elliot Lee  <sopwith@redhat.com>
13135
13136         * gdk/x11/gdkregion-generic.c: If a region does not have any
13137         rectangles, or if the specified rectangle is not in the region, then return GDK_OVERLAP_RECTANGLE_OUT
13138         instead of GDK_OVERLAP_RECTANGLE_IN.
13139
13140 2000-05-17  Jonathan Blandford  <jrb@redhat.com>
13141
13142         * gtk/gtklayout.c (gtk_layout_map): Remove references to
13143         OFFSCREEN, as it is no longer necessary.
13144
13145 Wed May 17 10:52:12 2000  Owen Taylor  <otaylor@redhat.com>
13146
13147         * gtk/gtkcolorsel.c: Patch from David Santiago
13148         <mrcooger@cyberverse.com> to change things so that the 
13149         indicator of the active palette entry is done independently,
13150         not via the focus, since it should always be visible.
13151
13152 2000-05-17  Tor Lillqvist  <tml@iki.fi>
13153
13154         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Plug same
13155         refcount leaks as in the X11 backend.
13156
13157         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Logging
13158         cosmetics.
13159
13160         * gdk/win32/gdkwindow-win32.c: Similar changes as in X11
13161         backend. Add _gdk_windowing_window_destroy().
13162
13163         * gtk/gtkcolorsel.c: Include correct backend-specific header.
13164         Don't use XColor unless on X11. (No GDK_VISUAL_STATIC_COLOR
13165         either, but these probably do exist on nanox?)
13166         
13167         * gtk/gtkhsv.c: Use G_PI (fresh from <glib.h>) instead of M_PI
13168         which isn't necessarily defined by <math.h>.
13169
13170         * gtk/gtkobject.c (gtk_object_init): Don't go up the class
13171         ancestry past GtkObject.
13172
13173         * gtk/gtktypeutils.h: Mark GTK_TYPE_IDENTIFIER for export/import
13174         from DLL on Win32.
13175
13176         * gtk/gtk.def: Update corresponding to recent changes.
13177
13178         * gtk/makefile.{cygwin,msc}: Updates.
13179
13180 Fri May 12 18:46:51 2000  Owen Taylor  <otaylor@redhat.com>
13181
13182         * docs/Changes-1.4.txt: A bit of editing.
13183
13184         * gdk/gdkwindow.c (_gdk_window_clear_update_area) 
13185         * gdk/x11/gdkwindow-x11.c (gdk_window_hide): Add a function
13186         to clear the update area for the window, and clear it
13187         when hiding a window.
13188
13189         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Ignore
13190         if window destroyed.
13191
13192         * gdk/gdkwindow.c (gdk_window_end_paint): Likewise.
13193
13194         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c gdk/gdkinternals.h: Move 
13195         gdk_window_destroy() to the generic code, since there was a lot of 
13196         window-system-independent logic it in. Add a function:
13197         
13198          _gdk_window_destroy() 
13199
13200         to the internal API to destroy a window without unreferencing it.
13201         Add a function:
13202
13203          _gdk_windowing_window_destroy()
13204
13205         That does the windowing-system-dependent part of destroying 
13206         the window.
13207
13208 Fri May 12 11:07:41 2000  Owen Taylor  <otaylor@redhat.com>
13209
13210         * gtk/testgtk.c: Fix various memory leaks of pixmaps.
13211
13212 Fri May 12 11:06:10 2000  Owen Taylor  <otaylor@redhat.com>
13213
13214         * gtk/gtkwidget.c docs/Changes-1.4.txt (gtk_widget_shape_combine_mask): 
13215         Make gtk_widget_shape_combine_mask() keep a reference count on
13216         the pixmap since it keeps it around.
13217
13218 Fri May 12 10:53:29 2000  Owen Taylor  <otaylor@redhat.com>
13219
13220         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix refcount
13221         leak.
13222
13223         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Fix refcount
13224         leak with event filters.
13225
13226 Thu May 11 14:29:44 2000  Owen Taylor  <otaylor@redhat.com>
13227
13228         * gtk/gtkdnd.c (gtk_drag_dest_set_internal): Remove the
13229         signal handlers with the right data arguments. (Fixes
13230         some warnings when a widget was repeatedly set as a drag
13231         destination.)
13232
13233         * gdk/x11/gdkdnd-x11.c (gdk_window_register_dnd): Set data on the
13234         window so we can avoid avoid setting the DND properties on the
13235         toplevel window repeatedly.
13236
13237 2000-05-13  Tor Lillqvist  <tml@iki.fi>
13238
13239         * gdk/win32/gdkwin32.h: Define more message types missing from
13240         mingw headers.
13241
13242         * gdk/win32/gdkevents-win32.c (gdk_event_translate): On WM_DESTROY
13243         call gdk_window_destroy_notify(). It was never called. This
13244         probably meant that the GdkWindow was never freed. Thanks Owen for
13245         noticing (!).
13246
13247         * gdk/win32/gdkwindow-win32.c (gdk_window_internal_destroy): Mark
13248         window as destroyed before calling DestroyWindow(). DestroyWindow()
13249         causes a call to the window procedure (gdk_WindowProc), which
13250         calls gdk_event_translate(), which calls
13251         gdk_window_destroy_notify(), which gets confused unless the window
13252         is set as destroyed.
13253
13254         * gdk/win32/gdkcolor-win32.c (gdk_win32_color_to_string): Rename
13255         this function to indicate it's win32 only. Put inside #ifdef
13256         G_ENABLE_DEBUG.
13257
13258         * gdk/win32/gdkevents-win32.c (gdk_win32_message_name): New
13259         debugging function. (gdk_event_translate:) Add a default branch
13260         that uses the above function to print debug messages with all
13261         Windows messages symbolically.
13262
13263         * gdk/win32/gdkprivate-win32.h: Declare it, and
13264         gdk_win32_color_to_string, but only if G_ENABLE_DEBUG.
13265
13266 Fri May 12 20:07:32 2000  Tim Janik  <timj@gtk.org>
13267
13268         * gtk/gtkcolorseldialog.c: don't include gtk/gtkintl.h in a
13269         public header file.
13270
13271 Fri May 12 17:13:32 2000  Tim Janik  <timj@gtk.org>
13272
13273         * docs/Changes-1.4.txt: documented necessary changes for 1.4 transition.
13274
13275         * gtk/gtktext.c: made the adjustments no-construct args, simply
13276         provide default adjustments.
13277         (gtk_text_destroy): release adjustments.
13278
13279         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): made the
13280         adjustment argument non-construct.
13281
13282         * gtk/gtkprogress.c (gtk_progress_destroy): release adjustment here,
13283         instead of in finalize.
13284         (gtk_progress_get_text_from_value): 
13285         (gtk_progress_get_current_text): 
13286         (gtk_progress_set_value): 
13287         (gtk_progress_get_percentage_from_value): 
13288         (gtk_progress_get_current_percentage): 
13289         (gtk_progress_set_percentage): 
13290         (gtk_progress_configure): ensure an adjustment is present.
13291
13292 Thu May 11 01:24:08 2000  Tim Janik  <timj@gtk.org>
13293
13294         * gtk/gtkcolorsel.[hc]:
13295         * gtk/gtkcolorseldialog.[hc]:
13296         * gtk/gtkhsv.[hc]: major code cleanups, destroy handlers need to chain
13297         their parent implementation, use bit fields for boolean values, don't
13298         create unused widgets, usage of glib types, braces go on their own
13299         lines, function argument alignment, #include directives etc. etc. etc..
13300
13301         * gtk/Makefile.am (gtk_public_h_sources): install gtkhsv.h.
13302
13303 Wed May 10 23:29:52 2000  Tim Janik  <timj@gtk.org>
13304
13305         * gtk/gtktoolbar.c (gtk_toolbar_destroy): don't unref a NULL tooltips.
13306
13307         * gtk/gtkfilesel.c (gtk_file_selection_destroy): don't free a cmpl_state
13308         of NULL.
13309
13310         * gtk/gtkcombo.c (gtk_combo_item_destroy): don't keep references
13311         to freed data.
13312         (gtk_combo_destroy): don't keep a pointer to a destroyed window.
13313
13314         * gtk/gtkmenu.c (gtk_menu_init): reset the menu's toplevel pointer
13315         to NULL when the toplevel is getting destroyed.
13316         (gtk_menu_set_tearoff_state): same here for the tearoff_window.
13317         (gtk_menu_destroy): 
13318         (gtk_menu_init): store the information of whether we have to
13319         readd the initial child ref_count during destruction in a new
13320         GtkMenu field needs_destruction_ref_count.
13321
13322         * gtk/gtkviewport.c: SHAME! ok this one is tricky, so i note it
13323         here, those reading: learn from my mistake! ;)
13324         in order for set_?adjustment to support a default adjustemnt if
13325         invoked with an adjustment pointer of NULL, the code read (pseudo):
13326         if (v->adjustment) unref (v->adjustment);
13327         if (!adjustment) adjustment = adjustment_new ();
13328         if (v->adjustment != adjustment) v->adjustment = ref (adjustment);
13329         now imagine the first unref to actually free the old adjustment and
13330         adjustment_new() creating a new adjustment from the very same memory
13331         portion. here, the latter comparision will unintendedly fail, and
13332         all hell breaks loose.
13333         (gtk_viewport_set_hadjustment):
13334         (gtk_viewport_set_vadjustment): reset viewport->?adjustment to NULL
13335         after unreferencing it.
13336
13337         * gtk/gtkcontainer.[hc]: removed toplevel registration
13338         functions: gtk_container_register_toplevel(),
13339         gtk_container_unregister_toplevel() and
13340         gtk_container_get_toplevels() which had wrong semantics
13341         anyways: it didn't reference and copy the list.
13342
13343         * gtk/gtkwindow.c: we take over the container toplevel registration
13344         bussiness now. windows are registered across multiple destructions,
13345         untill they are finalized. the initial implicit reference count
13346         users are holding on windows is removed with the first destruction
13347         though.
13348         (gtk_window_init): ref & sink and set has_user_ref_count, got
13349         rid of gtk_container_register_toplevel() call. add window to
13350         toplevel_list.
13351         (gtk_window_destroy): unref the window if has_user_ref_count
13352         is still set, got rid of call to
13353         gtk_container_unregister_toplevel().
13354         (gtk_window_finalize): remove window from toplevel list.
13355         (gtk_window_list_toplevels): new function to return a newly
13356         created list with referenced toplevels.
13357         (gtk_window_read_rcfiles): use gtk_window_list_toplevels().
13358
13359         * gtk/gtkhscale.c (gtk_hscale_class_init): made the GtkRange
13360         adjustment a non-construct arg.
13361         * gtk/gtkvscale.c (gtk_vscale_class_init): likewise.
13362         * gtk/gtkhscrollbar.c (gtk_vscrollbar_class_init): likewise.
13363         * gtk/gtkvscrollbar.c (gtk_vscrollbar_class_init): likewise.
13364
13365         * gtk/gtkrange.c: added some realized checks.
13366         (gtk_range_destroy): get rid of the h/v adjustments in the
13367         destroy handler instead of finalize. remove timer.
13368         (gtk_range_get_adjustment): demand create adjustment.
13369
13370         * gtk/gtkviewport.c: made h/v adjustment non-construct args.
13371         we simply create them on demand now and get rid of them in
13372         the destroy handler.
13373         (gtk_viewport_destroy): get rid of the h/v adjustments in the
13374         destroy handler instead of finalize.
13375         (gtk_viewport_get_hadjustment): 
13376         (gtk_viewport_get_vadjustment): 
13377         (gtk_viewport_size_allocate): demand create h/v adjustment
13378         if required.
13379
13380         * gtk/gtkwidget.c (gtk_widget_finalize): duplicate part of the
13381         gtk_widget_real_destroy () functionality.
13382         (gtk_widget_real_destroy): reinitialize with a new style, instead
13383         of setting widget->style to NULL.
13384
13385 Fri May  5 13:02:09 2000  Tim Janik  <timj@gtk.org>
13386
13387         * gtk/gtkcalendar.c:
13388         * gtk/gtkbutton.c: ported _get_type() implementation over to
13389         GType, either to preserve memchunks allocation facilities,
13390         or because Gtk+ 1.0 GtkTypeInfo was still being used.
13391
13392         * gtk/gtkobject.[hc]: derive from GObject. ported various functions
13393         over. prepare for ::destroy to be emitted multiple times.
13394         removed reference tracer magic. chain into GObjectClass.shutdown()
13395         to emit ::destroy signal.
13396
13397         * gtk/gtksignal.c: removed assumptions about GTK_TYPE_OBJECT being
13398         fundamental.
13399
13400         * gtk/gtkmain.c: removed gtk_object_post_arg_parsing_init()
13401         cludge.
13402
13403         * gtk/gtksocket.c:
13404         * gtk/gtkplug.c:
13405         * gtk/gtklayout.c:
13406         * gtk/gtklabel.c:
13407         * gtk/gtkargcollector.c:
13408         * gtk/gtkarg.c: various fixups to work with GTK_TYPE_OBJECT
13409         not being a fundamental anymore, and to work with the new
13410         type system (nuked fundamental type varargs clutter).
13411
13412         * gtk/*.c: install finalize handlers in the GObjectClass
13413         part of the class structure.
13414         changed direct GTK_OBJECT()->klass accesses to
13415         GTK_*_GET_CLASS().
13416         changed direct object_class->type accesses to GTK_CLASS_TYPE().
13417
13418         * gtktypeutils.[hc]: use the reserved fundamental ids provided by
13419         GType. made most of the GTK_*() type macros and Gtk* typedefs
13420         simple wrappers around macros and types provided by GType.
13421         most notably, a significant portion of the old API vanished:
13422         GTK_TYPE_MAKE(),
13423         GTK_TYPE_SEQNO(),
13424         GTK_TYPE_FLAT_FIRST, GTK_TYPE_FLAT_LAST,
13425         GTK_TYPE_STRUCTURED_FIRST, GTK_TYPE_STRUCTURED_LAST,
13426         GTK_TYPE_ARGS,
13427         GTK_TYPE_CALLBACK,
13428         GTK_TYPE_C_CALLBACK,
13429         GTK_TYPE_FOREIGN,
13430         GtkTypeQuery,
13431         gtk_type_query(),
13432         gtk_type_set_varargs_type(),
13433         gtk_type_get_varargs_type(),
13434         gtk_type_check_object_cast(),
13435         gtk_type_check_class_cast(),
13436         gtk_type_describe_tree(),
13437         gtk_type_describe_heritage(),
13438         gtk_type_free(),
13439         gtk_type_children_types(),
13440         gtk_type_set_chunk_alloc(),
13441         gtk_type_register_enum(),
13442         gtk_type_register_flags(),
13443         gtk_type_parent_class().
13444         replacements, where available are described in ../docs/Changes-1.4.txt.
13445         implemented compatibility functions for the remaining API.
13446
13447         * configure.in: depend on glib 1.3.1, use gobject module.
13448
13449 Thu May 11 12:39:50 2000  Owen Taylor  <otaylor@redhat.com>
13450
13451         * TODO.xml: Various updates to current status.
13452
13453 Wed May 10 20:25:04 2000  Owen Taylor  <otaylor@redhat.com>
13454
13455         * gtk.m4: Print out version when test succeeds.
13456
13457 Wed May 10 16:38:17 2000  Owen Taylor  <otaylor@redhat.com>
13458
13459         * gtk/Makefile.am docs/Changes-1.4.txt gtk/gtkcolorsel.[ch]
13460         gtk/gtkhsv.[ch]: Color selection dialog rewrite.
13461         
13462         (Original triangle color selector from Simon Budig
13463         <Simon.Budig@unix-ag.org>, Cleaned up and rewritten for GTK+ by
13464         from Jonathan, Havoc, and Federico. Merge into GTK+ done by David
13465         Santiago <mrcooger@cyberverse.com>)
13466
13467         * gtk/gtkcolorseldialog.[ch]: Split color selection dialog
13468         out into a separate widget.
13469
13470         * gtk/testgtk.c: Add some checkbuttons for toggling palette
13471         and opacity controls.
13472
13473 Wed May 10 16:08:09 2000  Owen Taylor  <otaylor@redhat.com>
13474
13475         * configure.in (GTK_LIBS_EXTRA): Remove references to gobject that 
13476         snuck in prematurely.
13477
13478 2000-05-07  Tor Lillqvist  <tml@iki.fi>
13479
13480         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Fix typo. I
13481         had deleted a ! operator by mistake, which caused
13482         GDK_SELECTION_CLEAR events never to be generated, which caused
13483         only the first copy to the clipboard from an gtkeditable to
13484         actually cause a copy to the Windows clipboard.
13485
13486 2000-05-06  Tor Lillqvist  <tml@iki.fi>
13487
13488         * gdk/win32/gdkdnd-win32.c: Enable shortcut resolution for gcc
13489         compilation, too. Current mingw gcc distributions include the
13490         necessary headers. Also the necessary IIDs are now in mingw
13491         headers/libraries, and own definitions unnecessary.
13492
13493         More hacking on OLE2 DND, still doesn't work though, and thus
13494         ifdeffed out.
13495
13496         * gdk/win32/gdkwindow-win32.c: Remove gdk_window_clear() from
13497         here, too.
13498
13499 Sat,  6 May 2000 13:31:34 +0200 Paolo Molaro <lupus@linuxcare.com>
13500
13501         * gdk/nanox/*: nano-X port work in progress.
13502         * gdk/simple.c: simple test for Gdk.
13503         * README.nanox: notes about the port: read this first!
13504         * gtk/gtk{dnd,plug,selection,window}.c: minimal changes to make gtk compile
13505         with nano-X.
13506
13507 Fri May  5 11:18:47 2000  Owen Taylor  <otaylor@redhat.com>
13508
13509         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c (gdk_window_clear): Move
13510         gdk_window_clear() into common code, implement in terms of
13511         gdk_window_clear_area(). (Fixes bug where gdk_window_clear() was
13512         not redirected to the backing rectangle.
13513
13514 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
13515
13516         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
13517         EXTRA_DIST. It does not work well when the file that
13518         everything depends on is not in the tarball.
13519
13520 Tue Apr 25 22:20:41 2000  Owen Taylor  <otaylor@redhat.com>
13521
13522         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix error
13523         with recursion where process_updates() is called from
13524         an expose handler. (GtkTextView is highly broken in
13525         doing this, but it should work, so it is a nice test
13526         case.)
13527
13528 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
13529
13530         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Gracefully
13531         handle the case where updates are queued during processing of
13532         updates.
13533
13534 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
13535
13536         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): We already assume
13537         window is on gdk_display - use that instead of segfaulting.
13538
13539 Thu May  4 02:04:46 2000  Tim Janik  <timj@gtk.org>
13540
13541         * configure.in (STRIP_DUMMY): some Make 3.79 $(strip ) versions are
13542         broken and require an empty arg, give it to them.
13543
13544 Fri Apr 28 19:34:32 2000  Tim Janik  <timj@gtk.org>
13545
13546         * gtk/gtklabel.h: indentation fixes.
13547
13548 2000-05-02  Tor Lillqvist  <tml@iki.fi>
13549
13550         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_arc): Don't try to
13551         draw too narrow or too low arcs, they seem to fail, at least with
13552         some display drivers.
13553
13554         * gdk/gdk.c (gdk_init_check): Use G_DIR_SEPARATOR.
13555
13556         Large changes to the Win32 backend, partially made necessary by
13557         the changes to the backend-independent internal
13558         structures. Attempts to implement similar backing store stuff as
13559         on X11. The current (CVS) version of the Win32 backend is *not* as
13560         stable as it was before the no-flicker branch was merged. A
13561         zipfile with that version is available from
13562         http://www.gimp.org/win32/. That should be use by "production"
13563         code until this CVS version is usable. (But note, the Win32
13564         backend has never been claimed to be "production quality".)
13565
13566         * README.win32: Add the above comment about versions.
13567
13568         * gdk/gdkwindow.c: Don't use backing store for now on Win32.
13569
13570         * gdk/gdk.def: Update.
13571
13572         * gdk/gdkfont.h: Declare temporary Win32-only functions. Will
13573         presumably be replaced by some more better mechanism as 1.4 gets
13574         closer to release shape.
13575
13576         * gdk/makefile.{cygwin,msc}: Update.
13577
13578         * gdk/win32/*.c: Correct inclusions of the backend-specific and
13579         internal headers. Change code according to changes in these. Use
13580         gdk_drawable_*, not gdk_window_* where necessary.
13581
13582         * gdk/win32/gdkdnd-win32.c: Use MISC selector for GDK_NOTE, not
13583         our old DND.
13584
13585         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_text): Don't try
13586         to interpret single characters as UTF-8. Thanks to Hans Breuer.
13587         Use correct function name in warning messages.
13588
13589         * gdk/win32/gdkevents-win32.c: Use correct parameter lists for the
13590         GSourceFuncs gdk_event_prepare and gdk_event_check.
13591         (gdk_event_get_graphics_expose): Do implement, use
13592         PeekMessage. Thanks to Hans Breuer.
13593         (event_mask_string): Debugging function to print an GdkEventMask.
13594         (gdk_pointer_grab): Use it.
13595
13596         * gdk/win32/gdkfont-win32.c: The Unicode subrange that the
13597         (old) book I used claimed was Hangul actually is CJK Unified
13598         Ideographs Extension A. Also, Hangul Syllables were missing.
13599         Improve logging.
13600
13601         * gdk/win32/gdkgc-win32.c: Largish changes.
13602
13603         * gdk/win32/gdkim-win32.c (gdk_set_locale): Use
13604         g_win32_getlocale() from GLib, and not setlocale() to get current
13605         locale name.
13606
13607         * gdk/win32/gdkprivate-win32.h
13608         * gdk/win32/gdkwin32.h: Move stuff from gdkprivate-win32.h to
13609         gdkwin32.h, similarily as in the X11 backend.
13610
13611         * gdk/win32/gdkwindow-win32.c (gdk_propagate_shapes): Bugfix,
13612         assignment was used instead of equals in if test. Thanks to Hans
13613         Breuer.
13614
13615         * gdk/win32/gdkgeometry-win32.c: New file, just a quick hack of
13616         the X11 version.
13617
13618         * gdk/win32/makefile.{cygwin,msc}
13619         * gtk/makefile.{cygwin,msc}: Updates. Better kludge to get the
13620         path to the Win32 headers that works also with the mingw compiler.
13621
13622         * gtk/gtkstyle.c: Include <string.h>.
13623
13624 2000-04-26  Havoc Pennington  <hp@redhat.com>
13625
13626         * gtk/gtklabel.c (gtk_label_get_text): Add this function,
13627         replacing the broken gtk_label_get ()
13628
13629 2000-04-15  Havoc Pennington  <hp@pobox.com>
13630
13631         * gdk/gdkdnd.h: clean up enum format, remove extra comma, 
13632         this keeps scanner scripts from getting confused.
13633
13634         * gdk/gdkdraw.c (gdk_drawable_get_data): This should return the
13635         data, rather than void
13636
13637 2000-04-15  Tor Lillqvist  <tml@iki.fi>
13638
13639         * gtk/gtkclist.c (gtk_clist_motion)
13640         * gtk/gtklist.c (gtk_list_motion_notify): If we get a motion event
13641         with is_hint FALSE, get x and y from the event. They used to be
13642         used uninitialised. The Win32 backend never sends motion events
13643         marked as hints. This for instance fixes the annoying file and
13644         font selector behaviour in the Win32 version.
13645
13646 2000-04-14  Tor Lillqvist  <tml@iki.fi>
13647
13648         * gtk/gtksignal.c: (Win32:) Export the gtk_private_signals and
13649         gtk_private_n_signals variables, they are used by some software,
13650         sigh.
13651
13652         * gtk/gtkrc.c (get_gtk_sysconf_directory): (Win32:) Fetch the
13653         installation directory from the Registry, where the installer
13654         should have put it.
13655
13656 Fri Apr  7 17:19:27 2000  Owen Taylor  <otaylor@redhat.com>
13657
13658         * gdk/x11/Makefile.am: Fix problem with installation directory for
13659         gdkx.h
13660
13661         * gtk/gtkmenuitem.c gtk/gtkmenushell.c: Patch from David Santiago
13662         <mrcooger@cyberverse.com> so that when selecting menus with the
13663         mouse, the first item will not be selected, but when selecting
13664         with an accelerator, or navigating left-right on a menubar with
13665         the menus popped up, the first item will be selected.
13666
13667 2000-04-05  Dan Damian  <dand@dnttm.ro>
13668
13669         * configure.in: Added "ro" to ALL_LINGUAS.
13670
13671 Wed Apr  5 00:08:36 2000  Owen Taylor  <otaylor@redhat.com>
13672
13673         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): Fix screwy
13674         indentation.
13675
13676         * Makefile.am (EXTRA_DIST): Fix typo.
13677
13678         * gdk[/x11]/Makefile.am (INCLUDES): Add $(top_builddir)/gdk
13679         to catch gdkconfig.h
13680
13681         * gtk/gtkitemfactory.c: Added FIXME.
13682
13683 2000-03-30  Jonathan Blandford  <jrb@redhat.com>
13684
13685         * gtk/gtkpaned.c (gtk_paned_get_position): oops.
13686         s/return_if_fail/return_val_if_fail/g and add a return value.
13687
13688 Mon Mar 27 20:56:14 2000  Owen Taylor  <otaylor@redhat.com>
13689
13690         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Fix up 
13691         merge slipup.
13692
13693         * gdk/gdkinput.h: Fix missing line from merge.
13694
13695 Mon Mar 27 20:39:49 2000  Owen Taylor  <otaylor@redhat.com>
13696
13697         * gdk/gdkcolor.c cursor.c gdkdraw.c gdkfont.c: Include gdkinternals.h
13698         instead of gdkprivate.h.
13699
13700 Sun Mar 12 15:19:24 2000  Owen Taylor  <otaylor@redhat.com>
13701
13702         * gtk/gtkinputdialog.h (struct _GtkInputDialogClass): Fix
13703         parent class to correctly be GtkDialogClass.
13704
13705 Thu Feb 24 23:58:21 2000  Owen Taylor  <otaylor@redhat.com>
13706
13707         * gdk/x11/gdkgeometry-x11.c: Don't worry about clipping of
13708         toplevel windows and their immediate children by their parents,
13709         since the size of toplevel windows is out of our immediate
13710         control and we don't get any real benefit from trying to track
13711         this size for clipping.
13712
13713         * gdk/gdkprivate.h (struct _GdkWindowPrivate) gdk/x11/gdkwindow-x11.c : Add a flag
13714         for input_only windows.
13715
13716         * gdk/gdkwindow.c gdk/x11/gdkgeometry-x11.c: Use the above flag
13717         to fix some hacks and make sure that we don't try to set the
13718         background of input only windows.
13719
13720 Thu Feb 24 18:11:46 2000  Owen Taylor  <otaylor@redhat.com>
13721
13722         * gdk/gdkinternals.h gdk/gdkprivate.h gdk/Makefile.am: Add a header file for
13723         the _really_ internal stuff, and leave gdkprivate.h for the fake private
13724         stuff that we've traditionally exposed.
13725
13726         * gdk/**.c: Use gdkinternals.h where appropriate.
13727
13728         * gdk/x11/gdkx.h gdk/x11/gdkprivate-x11.h gdk/x11/*.c: Make gdkx.h
13729         not include gdkprivate-x11.h, move all stuff of conceivable public
13730         interest into gdkx.h; keep all really private stuff in
13731         uninstalled header gdkprivate-x11.h.
13732
13733         * gdk/gdkdraw.c gdk/gdkwindow.c gdk/gdkinternals: Redirect all calls to
13734         image->image_put on windows through a new function _gdk_window_draw_image()
13735         to allow us to do backing store for images. (Sort of ugly)
13736
13737         * gdk/gdkgc.c gdk/gdkprivate.h: Cache the ts and clip origins for graphics
13738         contexts locally so that we can offset them properly when drawing 
13739         onto backing pixmaps.
13740
13741         * gdk/gdkinput.h: Reindented
13742
13743         * gdk/gdkprivate.h gdk/x11/gdkwindow-x11.c: Store the background
13744         pixmap or color for the window, so we can properly initialize
13745         our double-buffer pixmaps, and also so that we temporarily set
13746         a background of None while scrolling.
13747
13748         * gdk/gdkregion.h: Revise region boolean operators to have an
13749         interface that is actually convenient - switch from creating new
13750         regions on every op, to "methods" that modify existing regions
13751         (A = A OP B). 3 argument forms which allow dest == src, would also
13752         be possible, but the current interfaces seem to map nicely
13753         onto what needs to be done. (There is quite a lot of region
13754         code in GDK now.)
13755
13756         * gdk/gdkregion.h: Add constructor from rectangle and a copy
13757         operator.
13758
13759         * gdk/x11/{gdkregion-generic.[ch],gdkpolyreg-generic.c,
13760         gdkpoly-generic.h: Copy region code from Xlib, switch it over
13761         to 32 bit coordinates, modify it to be mostly GTK+ style
13762         and to have interfaces that match gdkregion.h.
13763
13764         * gdk/gdkwindow.c gdk/gdkprivate.h: Add facility for
13765         double-buffered drawing. gdk_window_begin_paint_{rect,region}()
13766         create a backing pixmap and redirect all drawing to
13767         that backing pixmap until a matching gdk_window_end_paint().
13768
13769         * gdk/gdkwindow.[ch] gdk/gdkinternals.h gdk/x11/gdkdrawable-x11.c:
13770         Create a special drawable class for GtkWindow's that 
13771         redirects the drawing to the backing pixmap as necessary
13772         and then calls the real operations in _gdk_windowing_window_class.
13773
13774         * gdk/gdkprivate.h gdk/gdkwindow.[ch] gdk/x11/gdkevents-x11.c:
13775         Store invalid region for each window. Generate expose events for invalid
13776         region in an idle. This replaces both the expose compression
13777         and the redrawing queuing in GTK+. It is both more efficient and
13778         simpler than either one individually and far more so then the
13779         combination.
13780
13781         * gdk/x11/gdkgeometry.c gdk/x11/gdkwindow.c gdk/x11/gdkprivate-x11.h:
13782         Emulate 32 bit coordinates for windows with 16 bit coordinates
13783         by offsetting drawing, guffaw scrolling techniques and
13784         mapping/unmapping child windows as necessary.
13785
13786         * gdk/gdkwindow.[ch] gdk/x11/gdkgeometry.c: Add anti-exposes,
13787         where, when invalid regions are processed, the region is stored,
13788         and if expose events come in that are detectably duplicate
13789         the processed exposes (by comparison of event serial numbers),
13790         the stored region is subtracted out of those exposes.
13791
13792         * gdk/x11/gdkgeometry.c: Temporarily unset backing pixmaps of
13793         regions newly exposed when scrolling or resizing windows.
13794         This, combined with forcing processesing of queued invalidated
13795         regions, gives nice flicker-free scrolling.
13796
13797         * gtk/gtklayout.c gtk/gtkviewport.c: Force processing of
13798         invalidated regions after every scroll.
13799
13800         * gtk/gtklayout.c: Vastly simplify using the new 32 bit coordinate
13801         emulation in GDK. Its, for all practical purposes just a
13802         GtkViewport/GtkFixed hybrid now.
13803
13804         * gdk/gdkdrawable-x11.c: Convert from GDK (32 bit) to X11
13805         (16-bit) structures as necessary instead of just casting.
13806
13807         * gdk/x11/gdkgc-x11.c gdk/x11/gdkx.h: Replace XSetRegion with code
13808         in terms of the structures from gdkregion-generic.c, using appropriate
13809         offsets from GDK to X11 coordinates. Cache clip mask and
13810         origin and ts origin locally and only flush to the server
13811         when drawing, to avoid constantly setting and resetting these
13812         values when offsetting GC's for scrolling and backing pixmaps.
13813
13814         * gdk/x11/gdkinput-x11.c: Fix leak of axes structures.
13815
13816         * gtk/gtkcontainer.c: Call process_all_updates at end
13817         of resizing to reduce flicker. (Avoids having redraw
13818         lag arbitrarily behind resize under some circumstances)
13819
13820         * gtk/gtkentry.c: Remove old backing store code, and simply take
13821         advantage of the new backing store capabilities of GDK.
13822
13823         * gtk/gtkmain.c: Simple implementation of widget backing
13824         store - simply push a paint while handling each expose.
13825         (Should really be configurable widget for widget.)
13826         
13827         * gtk/gtkwidget.c: Remove all the old complicated redraw
13828         code, and simply invalidate the GDK windows from
13829         gdk_window_queue_clear(), etc. (Sigh, so much carefully
13830         debugged complexity ... gone to the winds.)
13831
13832         Remove all the code for suppressing expose events while
13833         resizes are pending; this isn't needed since the invalid
13834         areas won't be processed until after the resizes are
13835         processed, since they are in a lower priority idle.
13836
13837 Thu Feb 24 15:37:41 2000  Owen Taylor  <otaylor@redhat.com>
13838
13839         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Set width
13840         and height of dest rectangle for non-intersecting rectangles.
13841
13842 Sun Feb 20 16:47:31 2000  Owen Taylor  <otaylor@redhat.com>
13843
13844         * gtk/gtkwidget.h: Make GtkAllocation just a typedef
13845         for GdkRectangle.
13846
13847 Sun Feb 20 11:27:00 2000  Owen Taylor  <otaylor@redhat.com>
13848
13849         * gdk/gdk{events,image,private,types,window}.h
13850          gdk/x11/gdkinputprivate.h: Change all coordinates
13851          from int16 to int. Also, Change width and height from
13852          unsigned to signed to avoid all the stupid C 
13853          signedness bugs.
13854
13855 Sat Feb 19 12:01:53 2000  Owen Taylor  <otaylor@redhat.com>
13856
13857         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable):
13858         Use gdk_drawable_get_depth instead of gdk_drawable_get_visual.
13859         Add some more detailed checking.
13860
13861         * gdk/gdkdraw.c gdk/gdkdrawable.h (gdk_drawable_get_depth):
13862         New function to retrieve the depth of a drawable.
13863
13864         * gdk/gdkprivate.h (struct _GdkDrawablePrivate): Add a depth
13865         field, reorder fields to save memory. 
13866
13867 Mon Dec 13 14:06:03 1999  Owen Taylor  <otaylor@redhat.com>
13868
13869         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): Draw a small portion
13870         of the background image instead of scaling the background down to
13871         a line.
13872
13873         * gtk/gtk[hv]scrollbar.c (gtk_hscrollbar_size_allocate): Removed mysterious
13874         which temporarily set slider to wrong size.
13875
13876         * gtk/gtkaspectframe.c gtkbin.c: Remove unecessary calls to
13877         queue_clear().
13878
13879 Wed Nov 17 18:36:05 1999  Owen Taylor  <otaylor@redhat.com>
13880
13881 2000-03-23  Jonathan Blandford  <jrb@redhat.com>
13882
13883         * gtk/gtkpaned.c (gtk_paned_get_position): add getter.
13884
13885 2000-03-17  Tor Lillqvist  <tml@iki.fi>
13886
13887         * gdk/win32/gdkevents-win32.c: Remove the #ifndef
13888         USE_DISPATCHMESSAGE sections, we do want to use DispatchMessage.
13889
13890         * gdk/win32/gdkfont-win32.c
13891         * gdk/win32/gdkproperty-win32.c
13892         * gdk/win32/gdkselection-win32.c
13893         * gdk/win32/gdkwindow-win32.c: Add const to some arguments that are
13894         now declared such.
13895
13896 Wed Mar 15 02:59:38 PST 2000 Manish Singh <yosh@gimp.org>
13897
13898         * gtk/gtkvpaned.c: removed stray gutter_size reference, a 1.2 relic
13899
13900 Mon Mar 13 18:37:55 2000  Owen Taylor  <otaylor@redhat.com>
13901
13902         * gdk/gdkdnd.c: Fix a bunch of cases where XGetWindowProperty()
13903         is called without trapping X errors.
13904
13905 Fri Feb 25 10:48:53 2000  Owen Taylor  <otaylor@redhat.com>
13906
13907         * gtk/gtkrc.*: Fix problem where stray '"' characters found their
13908         way into the fontset lists.
13909
13910 Tue Feb 22 08:52:52 2000  Tim Janik  <timj@gtk.org>
13911
13912         * gtk/gtkthemes.h: add extern "C" scope.
13913
13914 Mon Feb 21 20:16:42 2000  Lars Hamann  <lars@gtk.org>
13915
13916         * gtk/gtkclist.c: applied  patch from Guy Harris <guy@netapp.com>
13917         to make appends to the list constant. (gtk-guy-990901-0.patch)
13918
13919 Mon Feb 14 22:50:10 2000  Tim Janik  <timj@gtk.org>
13920
13921         * gtk/gtktypeutils.c (gtk_type_init): use g_str_hash() and g_str_equal()
13922         for the typename hash table.
13923
13924 Mon Feb 14 15:01:23 2000  Owen Taylor  <otaylor@redhat.com>
13925
13926         * gtk/gtkpaned.c (gtk_paned_compute_position): Add some sanity checks
13927         to make sure we never divide by zero. 
13928         (Problem pointed out by Michal Jaegermann <michal@ellpspace.math.ualberta.ca>)
13929
13930 Mon Feb 14 12:29:38 2000  Owen Taylor  <otaylor@redhat.com>
13931
13932         * gtk/gtkfontsel.c: Apply patch from
13933         SHIRASAKI Yasuhiro <yasuhiro@awa.tohoku.ac.jp> to make font selector work a little
13934         better with 2-byte fonts. (Load a fontset instead of a font for two byte fonts.)
13935
13936         Also, some cleanups in atom handling.
13937
13938 Sun Feb 13 08:02:21 2000  Tim Janik  <timj@gtk.org>
13939
13940         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
13941         not GtkWidget.
13942
13943 Fri Feb 11 02:19:32 2000  Tim Janik  <timj@gtk.org>
13944
13945         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): 
13946         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): 
13947         * gtk/gtkpaned.c (gtk_paned_compute_position): had to squeeze some
13948         more guint wrap-around bugs before going to bed.
13949
13950 Thu Feb 10 16:16:35 2000  Tim Janik  <timj@gtk.org>
13951
13952         * gtk/gtkspinbutton.c (gtk_spin_button_size_allocate): guard against
13953         guint wrap arounds in allocation.width.
13954
13955         * gtk/gtktable.c (gtk_table_size_allocate_pass1): repeat shrinking
13956         process untill we fit the allocation given.
13957
13958 Tue Feb  8 09:38:29 2000  Tim Janik  <timj@gtk.org>
13959
13960         * gtk/gtkwidget.c:
13961         (gtk_widget_unrealize): guard widget access with ref/unref
13962         around signal emission.
13963         (gtk_widget_hide): same here, but also check its destroyed
13964         state before queueing a resize.
13965
13966 Tue Feb  8 03:05:55 2000  Tim Janik  <timj@gtk.org>
13967
13968         * gtk/gtkstyle.c (gtk_style_new): use gtk_default_prelight_bg instead
13969         of gtk_default_insensitive_bg as insensitive base color.
13970
13971         * gtk/gtktext.c (gtk_text_style_set): set the background color according
13972         to the widget's state.
13973         (gtk_text_realize): same here.
13974         (gtk_text_state_changed): same here.
13975         (draw_bg_rect): compare background color against base[] from
13976         GTK_WIDGET_STATE (text) not GTK_STATE_NORMAL.
13977
13978 Mon Feb  7 04:01:55 2000  Tim Janik  <timj@gtk.org>
13979
13980         * gtk/gtkmain.c (gtk_main_do_event): ignore delete events when
13981         grabs are active, unless a delete event is send to the toplevel
13982         of the currently grab holding widget.
13983
13984 Sun Feb  6 10:13:15 2000  Owen Taylor  <otaylor@redhat.com>
13985
13986         * gtk/gtkctree.c (gtk_ctree_drag_data_received): Remove
13987         debugging g_print's.
13988
13989 Fri Feb  4 15:54:54 2000  Owen Taylor  <otaylor@redhat.com>
13990
13991         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_request): Don't
13992         ever make the scrolled-window requisition ever depend on the 
13993         visibility state of the scrollbars for the AUTOMATIC policy. 
13994         This breaks the GTK+ requisition model, and causes loops.
13995
13996 Fri Feb  4 15:09:12 2000  Owen Taylor  <otaylor@redhat.com>
13997
13998         * gtk/gtkstyle.c (gtk_style_new): Set the charset explicitely for
13999         the default font to avoid problems with XFree86-4.0 where the
14000         default charset is iso10646-1, not iso8859-1.
14001
14002 Thu Feb  3 14:58:48 PST 2000 Manish Singh <yosh@gimp.org>
14003
14004         * acinclude.m4
14005         * config.guess
14006         * config.sub
14007         * ltconfig
14008         * ltmain.sh: upgrade to libtool 1.3.4 (bugfix only release)
14009
14010         * gtk/Makefile.am: minor cosmetic consistency tweak
14011
14012 Thu Feb  3 14:46:01 2000  Owen Taylor  <otaylor@redhat.com>
14013
14014         * gtk/gtkmenushell.c (gtk_menu_shell_button_release): Set
14015         the activate_time to 0, so that we handle a quick
14016         press/release press/release properly and don't suppress
14017         the second release. (Red Hat bug #7545)
14018
14019 Wed Feb  2 22:25:17 2000  Tim Janik  <timj@gtk.org>
14020
14021         * gtk/gtkctree.c (row_delete):
14022         (gtk_ctree_node_set_row_data_full): fixed very evil reentrancy
14023         bugs with destruction notifier, *always* update internal
14024         structures *before* calling user code.
14025
14026 Sun Jan 30 20:10:52 2000  Lars Hamann  <lars@gtk.org>
14027
14028         A few more fixes for bug #5487, #2051, #2677.
14029         * gtk/gtkclist.c : 
14030         (gtk_clist_button_press):  Reset clist->anchor to -1 if event->type is
14031         not GDK_BUTTON_PRESS.
14032         (resync_selection): resync only if selection_mode is
14033         GTK_SELECTION_EXTENDED
14034         * gtk/gtkctree.c (resync_selection): same here
14035
14036 Sun Jan 30 12:29:20 2000  Owen Taylor  <otaylor@redhat.com>
14037
14038         * gdk/gdk.h gtk/gtkmenu.h: Removed duplicate prototypes for
14039         gdk_drag_get_selection() and gtk_menu_detach().
14040
14041         [ From Jeroen Ruigrok/Asmodai ]
14042
14043 Sat Jan 29 10:11:56 2000  Owen Taylor  <otaylor@redhat.com>
14044
14045         * gtk/gtknotebook.c (gtk_notebook_size_request): 
14046         page->tab_label can be NULL.
14047
14048 2000-01-25  Havoc Pennington  <hp@pobox.com>
14049         
14050         * gdk/gdkwindow.c (gdk_window_set_back_pixmap): parent_relative
14051         arg is boolean
14052
14053         * gdk/gdkselection.c (gdk_selection_owner_set): return boolean
14054
14055         * gdk/gdkrectangle.c (gdk_rectangle_intersect): return boolean
14056
14057         * gdk/gdkproperty.c (gdk_property_get): return boolean
14058
14059         * gdk/gdkinput.c (gdk_input_set_mode): return boolean
14060
14061         * gdk/gdkim.c (gdk_im_ready): return boolean
14062
14063         * gdk/gdkgc.c (gdk_gc_set_exposures): gboolean arg
14064
14065         * gdk/gdkfont.c (gdk_font_equal): return gboolean (mild
14066         glib clash, should fix glib)
14067
14068         * gdk/gdkevents.c (gdk_set_show_events): take gboolean arg
14069         (gdk_get_show_events): return gboolean, and canonicalize 
14070         to TRUE/FALSE
14071
14072         * gdk/gdkcolor.c (gdk_colormap_new): gboolean flag whether the
14073         colormap is private
14074         (gdk_colors_alloc): gboolean whether to be contiguous
14075         (gdk_color_equal): return gboolean since we are a predicate
14076         and not a qsort() (this looks semi-wrong due to glib breakage,
14077         IMO glib should be fixed)
14078         
14079         * gdk/gdk.c (gdk_set_use_xshm): take gboolean arg
14080         (gdk_get_use_xshm): return gboolean
14081         (gdk_pointer_is_grabbed): return gboolean
14082
14083         * gdk/gdk.h: Change prototypes to match all the above changes,
14084         and re-run egtk-format-protos as required.
14085
14086 Fri Jan 28 12:28:17 2000  Owen Taylor  <otaylor@redhat.com>
14087
14088         * gtk/gtkctree.c (resync_selection): 
14089         * gtk/gtkclist.c (resync_selection):
14090
14091         Return immediately if clist->drag_pos < 0. This is a workaround
14092         for the corrupt state that the clist gets into when a
14093         GDK_2BUTTON_PRESS occurs. See note in gtk_clist_button_press().
14094
14095         Bug #5487, #2051, #2677; fix suggested by David Helder and T. Alexander Popiel.
14096         
14097         * gtk/gtknotebook.c (gtk_notebook_size_request): Fix uninitialized
14098         variable from recent commit.
14099
14100 Thu Jan 27 15:22:09 2000  Owen Taylor  <otaylor@redhat.com>
14101
14102         * gtk/gtkdnd.c (gtk_drag_begin): Fix stupid typo in last commit.
14103
14104 Thu Jan 27 18:00:55 2000  Tim Janik  <timj@gtk.org>
14105
14106         * gtk/Makefile.am: prefix all autogenerated source that get build in
14107         $(srcdir) with $(srcdir)/, so make doesn't assume they got generted
14108         in builddir. since we subsequently cd into srcdir for autogeneration,
14109         the paths have to be stripped from the target file names, thusly we
14110         use $(@F) as target names now.
14111         put a comment about configure.in's --disable-rebuilds option,
14112         which can be used for non-writable source directories, for development
14113         setups though, srcdir has to be *writable*.
14114
14115 hu Jan 27 00:15:03 2000  Owen Taylor  <otaylor@redhat.com>
14116
14117         * gtk/gtkdnd.c (gtk_drag_begin gtk_drag_get_event_actions):
14118           Finish the job of allowing event to be NULL.
14119           (Fixes bug #4283, reported by Chris Blizzard)
14120
14121         * gtk/gtkentry.c (entry_adjust_scroll): When calculating
14122           things so that the cursor appears on screen, properly
14123           take into account INNER_BORDER.
14124           (Fixes bug #4754, reported by Antonio Campos)
14125
14126 Wed Jan 26 23:12:28 2000  Owen Taylor  <otaylor@redhat.com>
14127
14128         * gtk/gtknotebook.c (gtk_notebook_map): Don't
14129           show the tab_label unless it itself is visible.
14130
14131           gtk/gtknotebook.c (gtk_notebook_size_request):
14132           Do a better job of making sure that the visibility
14133           of the tab label corresponds to whether it should
14134           be mapped or not.
14135
14136 Wed Jan 26 21:17:03 2000  Owen Taylor  <otaylor@redhat.com>
14137
14138         * gtk/gtkoptionmenu.c (gtk_option_menu_position):
14139           Use the requisition, not the allocation, since the
14140           allocation has not necessarily been computed yet.
14141           (Pointed out by Eugene Osintsev)
14142
14143 Wed Jan 26 19:44:25 2000  Owen Taylor  <otaylor@redhat.com>
14144
14145         * gtk/gtkstyle.c (gtk_style_new): Dont' set
14146           style/base[GTK_STATE_INSENSITIVE] both to
14147           gtk_default_insensitive_bg!
14148           (Bug #2187, reported by Jonathan Blandford)
14149
14150         * gtk/gtkaccelgroup.c (gtk_accelerator_valid):
14151           Add Alt_L, Alt_R to list of invalid accelerators.
14152           (Bug #3736, reported by Vlad Harchev)
14153
14154 Wed Jan 26 19:01:56 2000  Owen Taylor  <otaylor@redhat.com>
14155
14156         * gtk/gtkfilesel.c (open_ref_dir): Fix several
14157         bugs which occured after an attempt to open 
14158         invalid home directory left cmpl_state->reference_dir == NULL.
14159
14160          - completion on files in home directory didn't work
14161          - completion on an empty string caused  segfault
14162
14163          (Bug #3678, reported by Steve Ratcliffe)
14164
14165         * gtk/gtkscale.c (gtk_scale_get_value_width): Fix
14166         cut and paste error that was causing scales to
14167         be incorrectly positioned.
14168         (Bug #2956,
14169          patch from Steve Ratcliffe <steve@parabola.demon.co.uk>)
14170
14171 2000-01-27  Shirasaki Yasuhiro  <yasuhiro@gnome.gr.jp>
14172
14173         * acinclude.m4 (AM_GTK_WITH_NLS): Add -lintl to libs
14174         when checking for dcgettext, if we've found we needed
14175         it for dgettext.
14176 +
14177 Wed Jan 26 18:06:07 2000  Owen Taylor  <otaylor@redhat.com>
14178
14179         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
14180         queue_clear on NO_WINDOW widgets during a reparent,
14181         since at that point the window and widget heirarchies
14182         are out of sync. This stops crashing in some cases
14183         (the scrolled window reparent test, for instance), and
14184         _probably_ won't cause drawing errors.
14185
14186         * gtk/testgtk.c: Make the reparenting-a-scrolled-window
14187         test do what it was supposed to do and be robust against
14188         window closings, etc. (Bug #2443)
14189
14190 Wed Jan 26 16:56:54 2000  Owen Taylor  <otaylor@redhat.com>
14191
14192         * gtk/gtkentry.c: Fix return values on mouse events.
14193         (Bug #2686, Sky <seb_sky@yahoo.com>)
14194
14195         * gtk/genmarshal.pl: Fix up handling of FOREIGN.
14196         (pointed out by George Lebl)
14197
14198         * gdk/gdkcolor.c (gdk_color_copy): Made const-safe.
14199         (From Ettore Perazzoli  <ettore@helixcode.com>)
14200  
14201 Mon Jan 24 10:44:48 2000  Owen Taylor  <otaylor@redhat.com>
14202
14203         * gtk/gtkcalendar.c (gtk_calendar_main_button): Handle
14204         clicks between rows or outside calender area correctly.
14205         (Patch from Damon Chaplin)
14206
14207         * gtk/gtkclist.c (gtk_clist_set_row_data_full): 
14208         * gtk/gtkctree.c (gtk_ctree_node_set_row_data_full): 
14209           Call destroy function when overwriting existing data. 
14210           (Pointed out by Damon Chaplin)
14211
14212 Tue Jan 25 09:55:41 2000  Owen Taylor  <otaylor@redhat.com>
14213
14214         * gdk/gdk.c: Remove useless #include of <X11/Xmu/WinUtil.h>,
14215           which was causing problems on various systems with Xmu.
14216           This hasn't been needed for a very long time.
14217           (Fixes #1185 3167)
14218
14219 Sun Jan 23 22:27:36 2000  Owen Taylor  <otaylor@redhat.com>
14220
14221         * gdk/gdki18n.h: Include <ctype.h> when defining
14222           gdk_isw* in terms of is* as a fallback.
14223           (Bug #4106 - Dan Winship <danw@MIT.EDU>)
14224
14225 Sun Jan 23 22:12:36 2000  Owen Taylor  <otaylor@redhat.com>
14226
14227         * gtk/gtkviewport.c (gtk_viewport_size_allocate): Don't
14228           realize the widget when it is size allocated!
14229           (old, old bug)
14230
14231         * gtk/gtkviewport.c (gtk_viewport_adjustment_value_changed):
14232           Removed unused call to gdk_window_get_size() that
14233           showed up when the above was fixed.
14234
14235 Sat Jan 22 15:44:30 2000  Owen Taylor  <otaylor@redhat.com>
14236
14237         * gtk/gtkwidget.c (gtk_widget_reparent): Correctly
14238           fix up widget->window when the widget is a
14239           NO_WINDOW container widget.
14240
14241 Sat Jan 22 12:40:48 2000  Owen Taylor  <otaylor@redhat.com>
14242
14243         * gdk/gdkpixmap.c (gdk_pixmap_seek_string): Rewrite
14244           to account for the fact that feof() does _not_ 
14245           return TRUE on errors, and thus avoid infinite loops
14246           when trying to use gdk_pixmap_create_from_xpm()
14247           on unreadable values.
14248
14249 Fri Jan 21 18:32:43 2000  Owen Taylor  <otaylor@redhat.com>
14250
14251         * gtk/gtkaspectframe.h (struct _GtkAspectFrame): s/gint/gboolean/.
14252
14253 Fri Jan 21 16:24:08 2000  Owen Taylor  <otaylor@redhat.com>
14254
14255         * gdk/gdkgc.c (gdk_gc_set_dashes): Change from
14256           gdk_gc_set_dashes to take gint8 instead of gchar to
14257           make it clearer that it is _not_ a NULL terminated string.
14258
14259         * gdk/gdk.h gdk/gdkfont.c gdk/gdkgc.c gdk/gdkselection.c
14260           gdk/gdkwindow.c gtk/gtkprogress.[ch] gtk/gtkthemes.[ch]
14261           gtk/gtktreeitem.[ch] gtk/gtkwidget.[ch]: Constify string
14262           arguments.
14263
14264 Thu Dec 30 04:51:05 1999  Tim Janik  <timj@gtk.org>
14265
14266         * gtk/gtkvscale.c (gtk_vscale_pos_background): 
14267         * gtk/gtkhscale.c (gtk_hscale_pos_background): when calculating the
14268         background size relative to our allocation, guard against small
14269         allocations, we may have not yet been size allocated.
14270
14271 Thu Dec  2 10:59:14 1999  Owen Taylor  <otaylor@redhat.com>
14272
14273         * gdk/gdkdnd.c (xdnd_check_dest): Allow version >= 3,
14274         not just version == 3. We implement all 3 + most of 4 - 
14275         (we don't support matching text/plain;charset=iso-8859-1
14276         to a dest that expects text/plain). We'll still advertise
14277         3 to be safe, but any client implementing version >= 3
14278         must interoperate with 3.
14279         
14280 Tue Mar 14 11:53:31 2000  Owen Taylor  <otaylor@redhat.com>
14281
14282         * gtk/gtktooltips.[ch] (struct _GtkTooltips): Remove foreground,
14283         background and gc members, add a warning in gtk_tooltips_set_color()
14284         indicating that this function is deprecated.
14285
14286 Thu Mar  9 22:10:56 GMT 2000  Tony Gale <gale@gtk.org>
14287
14288         * docs/gtkfaq.sgml: FAQ Update:
14289           - Minor cleanups (Emmanuel, me)
14290           - New questions:
14291                 I need to add a new signal to a GTK+ widget. Any idea? (timj)
14292                 How can I retrieve the text from a GtkMenuItem? (timj)
14293                 How do I validate/limit/filter the input to a GtkEntry? (me)
14294                 Memory does not seem to be released when I free the list
14295                         nodes I've allocated (timj)
14296
14297 2000-03-07  Tor Lillqvist  <tml@iki.fi>
14298
14299         * gdk/win32/gdkmain-win32.c: Internal GDK error reporting changes:
14300         (gdk_win32_gdi_failed) New function for reporting errors from GDI,
14301         for which it is no use to call GetLastError onWin9x.
14302         (gdk_other_api_failed) New function, for general error
14303         reporting without calling GetLastError.
14304         (gdk_win32_api_failed) OTOH, this function always calls
14305         GetLastError. (gdk_win32_last_error_string) Remove this function,
14306         GLib has the equivalent now.
14307
14308         * gdk/win32/gdkprivate-win32.h: Declare the above, and macros to
14309         call them with function name, file name and line number in the
14310         arguments.
14311
14312         * gdk/win32/*.c: Use the new macros for reporting errors from GDI
14313         functions.
14314         
14315         * gtk/gtk.def: Add some missing entry points.
14316
14317         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
14318         gtk_paned_set_gutter_size, which don't exist any longer, as void.
14319         
14320         Fixes by Hans Breuer:
14321
14322         * gdk/makefile.msc: Update for debugging.
14323
14324         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_dashes): Fake
14325         implementation, just use the PS_DASH, PS_DOT, PS_DASHDOT or
14326         PS_DASHDOTDOT or PS_DASH styles depending on the number of entries
14327         in the dash_list.
14328
14329         * gdk/win32/gdkwin32.h (GDK_FONT_XFONT): New macro, similar as in
14330         the x11 backend.
14331
14332         * gdk/win32/gdkprivate-win32.h (IS_WIN_NT): New macro.
14333
14334         * gtk/testgtk.c: Include config.h, guard inclusion of unistd.h.
14335
14336 2000-03-04  Tor Lillqvist  <tml@iki.fi>
14337
14338         * gdk/win32/gdkprivate-win32.h (struct _GdkWindowWin32Data): Store
14339         just pixel value of background colour.
14340
14341         * gdk/win32/gdkgc-win32.c (gdk_colormap_color): New function
14342         containing code snippet previously duplicated in a couple of
14343         places.
14344         
14345         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_points): Use
14346         gdk_colormap_color.
14347
14348         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Generate
14349         GDK_SCROLL events for WM_MOUSEWHEEL messages. Don't generate
14350         events for autorepeated Shift, Control and Alt keys. Use
14351         gdk_colormap_color.
14352
14353         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): If the
14354         pointer is inside the window the cursor of which we are setting,
14355         call SetCursor immediately.
14356
14357         * gdk/win32/makefile.cygwin
14358         * gtk/makefile.cygwin: If we don't have the build number stamp
14359         file, use zero.
14360
14361         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
14362         gtk_paned_set_gutter_size as empty.
14363
14364         * gtk/gtk.def: Remove gtk_paned_set_gutter_size.
14365         
14366 Tue Feb 29 13:10:00 GMT 2000  Tony Gale <gale@gtk.org>
14367
14368         * gdk/gdkwindow.h gdk/x11/gxid.c gtk/gtkclist.c gtk/gtkclist.h
14369           gtk/gtkctree.c gtk/gtkmenu.h gtk/gtkwidget.c gtk/testgtk.c
14370           docs/styles.txt docs/refcounting.txt docs/gtkfaq.sgml
14371           docs/gtk_tut.sgml docs/gtk.texi TODO:
14372
14373           Spelling/grammar fixes from Martin Buchholz <martin@xemacs.org>
14374
14375 Sat Feb 26 11:46:25 GMT 2000  Tony Gale <gale@gtk.org>
14376
14377         * gtk/gtkcalendar.c: Implement num_marked_dates,
14378           and don't emit mutiple day_selected signals on
14379           month_prev.
14380
14381 2000-02-25  Jonathan Blandford  <jrb@redhat.com>
14382
14383         * docs/make-todo (lineno): let title and logo be configurable so
14384         that GNOME can use this script too.
14385
14386         * TODO.xml: added logourl and a title
14387
14388 Fri Feb 25 11:12:00 2000  Owen Taylor  <otaylor@redhat.com>
14389
14390         * TODO.xml: Added some UI items, and an explanatory
14391         comment at the top of the file.
14392
14393 Thu Feb 24 09:07:28 2000  Tim Janik  <timj@gtk.org>
14394
14395         * TODO.xml: some updates, added abunch of new entries.
14396         a note for those fiddeling with this file, when done
14397         with it, invoke:
14398         $ ./docs/make-todo TODO.xml >/dev/null
14399         and correct output errors before comitting changes.
14400
14401 Wed Feb 23 22:59:50 2000  Owen Taylor  <otaylor@redhat.com>
14402
14403         * TODO.xml: Added XML-structured TODO file.
14404         * docs/make-todo: python script to turn TODO.xml into
14405           pretty XML output. 
14406
14407 2000-02-23  Jonathan Blandford  <jrb@redhat.com>
14408
14409         * gtk/gtkstyle.c (gtk_default_draw_handle): add a 'paned' mode to
14410         the function to let it draw the seven dots, instead of the old,
14411         much maligned, method.
14412         (draw_dot): New function to draw a dot.
14413
14414         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): changed allocation
14415         to draw the handle inside the border width as opposed to outside.
14416         Use paint function instead of gdk_draw_point.
14417
14418         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): changed allocation
14419         to draw the handle inside the border width as opposed to outside.
14420         Use paint function instead of gdk_draw_point.
14421
14422         * gtk/gtkfilesel.c (gtk_file_selection_update_history_menu):
14423         Change indenting to be more GTK like.
14424
14425 Wed Feb 23 10:54:14 GMT 2000  Tony Gale <gale@gtk.org>
14426
14427         * docs/gtk_tut.sgml: New section on GtkCalendar
14428         * examples/calendar: Update example code
14429
14430 Tue Feb 22 13:54:12 GMT 2000  Tony Gale <gale@gtk.org>
14431
14432         * docs/gtkfaq.sgml: FAQ Update
14433
14434 2000-02-19  Anders Carlsson  <andersca@gnu.org>
14435
14436         * gtk/gtkrange.c (gtk_range_scroll_event): Return TRUE
14437         to prevent the scroll event to be propagated upwards.
14438
14439 Fri Feb 18 14:37:29 2000  Owen Taylor  <otaylor@redhat.com>
14440
14441         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Remove
14442         OwnerGrabButtonMask from button entries for
14443         GDK_BUTTON_PRESS / GDK_BUTTON_RELEASE.
14444
14445         * gtk/gtklayout.c (gtk_layout_realize): Always add GDK_SCROLL
14446         to the event mask (which will result in button/press release
14447         being added to the event mask on Unix) so scrolling works
14448         for layouts in scroll windows.
14449
14450         * gdk/gdkevents.h (enum): Fix up GDK_ALL_EVENTS_MASK.
14451
14452         Patch from Anders Carlsson  <andersca@gnu.org> to add
14453         a scroll event.
14454
14455         * gtk/testgtk.c (scroll_test_scroll): Added an example of mouse wheel
14456         scrolling to the "Test Scrolling" part of testgtk.
14457  
14458         * gtk/gtkwidget.h (struct _GtkWidgetClass): Added scroll_event signal.
14459  
14460         * gtk/gtkwidget.c: Added "scroll_event" GTK+ signal and matched
14461         it against GDK_SCROLL.
14462  
14463         * gtk/gtkrange.c (gtk_range_scroll_event): Updated to use the new
14464         way of mouse wheel scrolling.
14465  
14466         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_scroll_event): Likewise.
14467  
14468         * gtk/gtkspinbutton.c (gtk_spin_button_scroll): Likewise.
14469  
14470         * gtk/gtkmain.c: Removed previous mouse wheel hack.
14471  
14472         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Added entry in
14473         gdk_event_mask_table.
14474  
14475         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Added 
14476         GdkEventScroll handler.
14477  
14478         * gdk/gdkevents.h: Added GdkEventScroll structure.
14479  
14480 Thu Feb 17 17:10:12 2000  Owen Taylor  <otaylor@redhat.com>
14481
14482         * gtk/gt{h,k,}vpaned.[ch]: Add patch from Jonathan Blandford
14483         and Anders Carlsson to change the Paned widgets so that they
14484         can be dragged from anywhere along the length. Also change
14485         the way that this is drawn to make this apparent.
14486
14487         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): Apply patch
14488         from George Lebl to check that option_menu->menu is present
14489         before getting history.
14490
14491 2000-02-14  Tor Lillqvist  <tml@iki.fi>
14492
14493         * gdk/gdkdraw.c (gdk_draw_segments): Move the test for no segments
14494         before the assertion for non-NULL segment list.
14495
14496         * gdk/win32/gdkgc-win32.c: (gdk_win32_gc_values_to_win32values):
14497         Seems that pattern brushes *must* be 8x8 pixels! At least on my
14498         machine, but it might be display driver dependent. Sigh, so make
14499         sure the stipple is that size. Does Windows suck or what?
14500
14501         * gdk/win32/gdkdrawable-win32.c: Improve error handling in a few
14502         places.
14503
14504 2000-02-13  Havoc Pennington  <hp@pobox.com>
14505
14506         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): init
14507         refcount to 1
14508         (gdk_cursor_new): init refcount to 1
14509
14510         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new): init refcount to 1
14511
14512 2000-02-13  Tor Lillqvist  <tml@iki.fi>
14513
14514         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Add an extra parameter
14515         so that we don't have to do unnecessary settings to the HDC.
14516
14517         * gdk/win32/gdkdrawable-win32.c
14518         * gdk/win32/gdkimage-win32.c: Corresponding changes to the calls of
14519         gdk_gc_predraw.
14520
14521         * gdk/win32/gdkdrawable-win32.c: Special-casing for GdkGCs where
14522         the fill style is GDK_OPAQUE_STIPPLED. In those cases we construct
14523         GDI paths, call WidenPath to get the outline of the stroken path,
14524         and then fill the outline (with the brush that was built from the
14525         stipple).
14526
14527         * gdk/win32/gdkgc-win32.c: Factor out common code from
14528         _gdk_win32_gc_new and gdk_win32_gc_set_values into
14529         gdk_win32_gc_values_to_win32values. Use correct colour for
14530         SetBkColor() (Until now the code actually used a random colour in
14531         the call to SetBkColor()... but that didn't show up as not many
14532         GDI APIs use the background colour. Pattern (opaque stippled)
14533         brushes do.)
14534
14535         * gdk/win32/gdkmain-win32.c (gdk_win32_last_error_string,
14536         gdk_win32_api_failed): New functions for error logging.
14537
14538         * gdk/win32/gdkprivate-win32.h: Declare them, and define a macro
14539         WIN32_API_FAILED to call them, passing function or file name and
14540         line number.
14541
14542         * gdk/win32/*.c: Use the WIN32_API_FAILED macro.
14543
14544         * gdk/win32/gdkprivate-win32.h: Store just the pixel values from
14545         GdkColor for foreground and background in GdkGCWin32Data.
14546
14547         * gdk/makefile.cygwin: Link in the resource object separately.
14548
14549         * gdk/win32/rc/gdk.rc
14550         * gtk/gtk.rc (New file)
14551         * gdk/win32/makefile.cygwin
14552         * gtk/makefile.cygwin: Update build number in DLLs automatically,
14553         as in GLib.
14554
14555 Sun Feb 13 08:54:45 2000  Tim Janik  <timj@gtk.org>
14556
14557         * gdk/gdkcursor.h (struct _GdkCursor): s/refcount/ref_count/.
14558         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): 
14559         * gdk/x11/gdkcursor-x11.c (_gdk_cursor_destroy): 
14560         * gdk/gdkcursor.c (gdk_cursor_ref): insert assertments for the
14561         parameters given and cursor->ref_count. coding style fixups.
14562
14563         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
14564         not GtkWidget.
14565         
14566         * gtk/*.h: applied patch from Mathieu Lacage <lacage@email.enst.fr> to
14567         fix up widget macros and add _GET_CLASS() variant.
14568         
14569         * gtk/*.c: some GtkType fixups.
14570
14571 2000-02-09  Tor Lillqvist  <tml@iki.fi>
14572
14573         * gdk/win32/gdkproperty-win32.c
14574         * gdk/x11/gdkproperty-x11.c: The assertions for GDK_IS_WINDOW
14575         were reversed.
14576
14577 2000-02-04  Tor Lillqvist  <tml@iki.fi>
14578
14579         * gdk/win32/gdkfont-win32.c (logfont_to_xlfd): Use
14580         g_filename_to_utf8 to convert the font names Windows gives us from
14581         whatever is the default codepage to UTF-8.
14582         (gdk_font_load_internal) Use g_filename_from_utf8 for conversion
14583         in the other direction.
14584
14585         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Fix cut&paste
14586         error in debugging output.
14587
14588 2000-02-02  Tor Lillqvist  <tml@iki.fi>
14589
14590         * gdk/win32/gdkwindow-win32.c (gdk_window_clear): Pass zero width
14591         and height parameters to gdk_window_clear_area(). Not minus one.
14592
14593 Wed Feb  2 11:58:05 2000  Owen Taylor  <otaylor@redhat.com>
14594
14595         * gtk/gtkdnd.c (gtk_drag_selection_received): Add some sanity
14596         checks if the widget passed to gtk_drag_get_data() was not the
14597         dest widget.
14598
14599 2000-02-01  Tor Lillqvist  <tml@iki.fi>
14600
14601         * gtk/gtkfilesel.c: Use the g_filename_to_utf8 and
14602         g_filename_from_utf8 functions (which were added a moment ago to
14603         GLib). Some cleanups: Use gbooleans. Use GStrings instead of fixed
14604         size buffers.
14605
14606         gtk_file_selection_get_filename returns the filename in the C
14607         runtime encoding. It calls g_filename_from_utf8, but copies the
14608         returned string to a static buffer, which is returned. I think
14609         this is better than returning the result from g_filename_from_utf8
14610         directly, which would mean all apps that use it would have to free
14611         the return value. Or should this function care about this issue at
14612         all? Maybe a new function with clearly defined semantics.
14613
14614         * gtk/gtkfilesel.h: Add comment about
14615         gtk_file_selection_get_filename returning the filename in the C
14616         runtime's encoding.
14617
14618         * README.win32
14619         * gdk/gdk.def
14620         * gdk/makefile.{cygwin,msc}
14621         * gtk/gtk.def: Updates.
14622
14623         * gdk/gdkcursor-win32.c: Initialise refcount.
14624
14625 2000-01-31  Yuan-Chung Cheng <platin@linux.org.tw>
14626
14627         * configure.in: Added "zh_CN.GB2312" to ALL_LINGUAS.
14628
14629 2000-01-30  Havoc Pennington  <hp@pobox.com>
14630
14631         * gtk/testgtk.c (set_cursor): use gdk_cursor_unref instead of
14632         destroy
14633
14634         * gdk/gdkimage.c (gdk_image_ref): image wasn't being returned
14635
14636         * gdk/gdkprivate.h: declare _gdk_cursor_destroy which is then 
14637         implemented in platform-specific code
14638
14639         * gdk/Makefile.am (gdk_c_sources): add gdkcursor.c
14640
14641         * gdk/x11/gdkcursor-x11.c (gdk_cursor_destroy): rename with an
14642         underscore in front
14643
14644         * gdk/win32/gdkcursor-win32.c (gdk_cursor_destroy):
14645         put an underscore in front
14646
14647         * gdk/gdkcursor.c: new file, implements
14648         gdk_cursor_ref/gdk_cursor_unref
14649
14650         * gdk/gdkcursor.h: Refcount GdkCursor
14651
14652         * gdk/gdkcompat.h (gdk_cursor_destroy): compat
14653
14654 2000-01-29  Tor Lillqvist  <tml@iki.fi>
14655
14656         * gdk/gdkwindow.h
14657         * gdk/gdkpixmap.h: Remove prototypes for renamed functions.
14658
14659 Tue Jan 25 11:43:21 2000  Owen Taylor  <otaylor@redhat.com>
14660
14661         * gtk/gtkinvisible.h (struct _GtkInvisible[Class]): Fix
14662         structures to properly inherit from GtkWidget not GtkBin.
14663
14664 Sun Jan 23 20:28:24 2000  Owen Taylor  <otaylor@redhat.com>
14665
14666         * gtk+.spec.in: Added lib/gtk+/include/* to %files
14667         (bug #5178 - Peter Wainright)
14668         
14669         * gtk/Makefile.am (gtk_public_h_sources): Add gtkcompat.h
14670         so that it will be installed.
14671         (bug #4889 - "david d `zoo' zuhn" <zoo@mnnr.org>)
14672
14673 Fri Jan 21 16:29:28 2000  Owen Taylor  <otaylor@redhat.com>
14674
14675         * gtk/gtkstyle.[ch] docs/Changes-1.4.txt: Make the @detail argument
14676         for the GtkStyleClass vtable const.
14677
14678         * gtk/gtkitemfactory.[ch] docs/Changes-1.4.txt: Make GtkPrintFunc
14679         take a const string argument like GtkTranslateFunc. This will
14680         require changes in use code.
14681
14682 2000-01-19  Tor Lillqvist  <tml@iki.fi>
14683
14684         * gdk/win32/gdkwindow-win32.c (gdk_window_clear_area): The correct
14685         semantics (to mimic the X11 backend, which just calls XClearArea)
14686         is to check for zero width (and height), and in that case use the
14687         window's width minus x (height minus y). This fixes for instance
14688         some redraw problems with gtkclist, which were easily noticeable
14689         in the gtk file selection widget.
14690
14691         (gdk_window_new): Don't set WS_EX_TOPMOST for dialog
14692         windows.
14693
14694 2000-01-13  Tor Lillqvist  <tml@iki.fi>
14695
14696         * configure.in
14697         * gdk/Makefile.am
14698         * gdk/x11/Makefile.am
14699         * gdk/win32/Makefile.am: Small fixes, thanks to Peter Wainwright
14700         (bug #5177).
14701         * gdk/win32/gdkcc-win32.c: Reintroduce, to be thrown
14702         out later.
14703
14704 2000-01-09  Tor Lillqvist  <tml@iki.fi>
14705
14706         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Ignore
14707         WM_MOVE for iconified or invisible windows. This fixes various
14708         problems when minimising windows. Thanks to Bernd Herd.
14709
14710 2000-01-05  Tor Lillqvist  <tml@iki.fi>
14711
14712         * gdk/gdkdraw.c (gdk_draw_lines): Fix copy&paste error: Call the
14713         backend's draw_lines method, not draw_points.
14714
14715 2000-01-02  Tor Lillqvist  <tml@iki.fi>
14716
14717         * gdk/win32/gdkevents-win32.c: Clean up some more leftovers from
14718         before Owen's reorganisation: Don't have queued_events and
14719         queued_tail statics in this file, but use gdk_queued_events and
14720         gdk_queued_tail. This makes exposure event compression work again.
14721
14722         (gdk_WindowProc): Comment out a posting of gdk_ping_msg, doesn't
14723         seem to be needed?
14724
14725 1999-12-30  Tor Lillqvist  <tml@iki.fi>
14726
14727         * gdk/gdk.c: If we don't HAVE_XCONVERTCASE we must #include
14728         gdkkeysyms.h to get the GDK_* keysym constants that are needed by
14729         gdk_keyval_convert_case(). Otherwise, gdk_keyval_convert_case()
14730         doesn't do anything.
14731
14732         * gdk/gdk.def: Add gdk_xid_table_insert.
14733
14734         * gdk/win32/gdkprivate-win32.h
14735         * gdk/win32/gdkevents-win32.c
14736         * gdk/win32/gdkinput-win32.c
14737         
14738         * gdk/win32/gdkwindow-win32.c: Remove the superfluous
14739         extension_events field in the GdkWindowWin32Data struct. Use only
14740         the extension_events field in GdkWindowPrivate. Previously one was
14741         set, and the other one tested, which broke tablet
14742         functionality. Thanks to Keishi Suenaga for pointing this out.
14743
14744 1999-12-18  Tor Lillqvist  <tml@iki.fi>
14745
14746         * gdk/win32/gdkfont-win32.c (gdk_text_size, gdk_text_extents):
14747         When handling a single character (text length == 1), don't handle
14748         it as if it was UTF-8.
14749
14750 1999-12-11  Tor Lillqvist  <tml@iki.fi>
14751
14752         * Makefile.am: Distribute README.win32.
14753         
14754         * gdk/Makefile.am
14755         * gdk/win32/Makefile.am: Distribute Win32 files.
14756
14757         * gdk/makefile.msc: New file.
14758
14759         * gdk/gdk.c (gdk_arg_context_parse): Fix gccism (no statement
14760         after label).
14761
14762         * gdk/gdkprivate.h: Must mark also gdk_error_warnings and
14763         gdk_error_code as GDKVAR, as they are referred outside GDK.
14764
14765         * gdk/win32/makefile.msc: Update.
14766
14767         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): More
14768         tweaks. Check only if at least one of those Unicode subrange bits
14769         we care for is set. If no code page bits are set, guess (wildly)
14770         based on the charset.
14771
14772         * gdk/win32/gdkinput-win32.c: Remove debugging leftover.
14773
14774         * gdk/win32/gdkwindow-win32.c (gdk_window_new): Assure title is
14775         non-NULL.
14776
14777         * gtk/gtkdnd.c
14778         * gtk/gtklayout.c
14779         * gtk/gtkplug.c
14780         * gtk/gtkselection.c
14781         * gtk/gtksocket.c
14782         * gtk/gtkwindow.c: Include x11/gdkx.h *or* win32/gdkwin32.c as
14783         appropriate. There must be a cleaner way to handle this?
14784
14785         * gtk/gtkrc.c: Must include windows.h on Win32.
14786
14787         * gtk/testgtk.c: No need to include gdkx.h.
14788
14789         * gtk/makefile.cygwin: Correct invokation of genmarshal.pl.
14790
14791 1999-12-07  Tor Lillqvist  <tml@iki.fi>
14792
14793         * gdk/win32/gdkfont-win32.c: Fix string measurement code. For now,
14794         the rbearing is set to the same as the width, but this should be
14795         fixed.
14796
14797 1999-12-06  Tor Lillqvist  <tml@iki.fi>
14798
14799         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): New
14800         function. If Windows doesn't tell us what Unicode subranges a font
14801         covers, guesstimate based on the codepages it covers. This will
14802         hopefully help those Windows versions or fonts that don't give us
14803         any useful Unicode subrange information with GetTextCharsetInfo.
14804         Call this function in gdk_font_load_internal.
14805
14806         * gdk/win32/{gdkdnd,gdkimage,gdkpixmap,gdkprivate}-win32.c: Misc
14807         minor changes.
14808
14809 Fri Dec  3 14:09:50 1999  Owen Taylor  <otaylor@redhat.com>
14810
14811         * gtk/gtkoptionmenu.[ch] (gtk_option_menu_get_history):
14812         New function, long needed.
14813
14814 Wed Dec  1 22:35:43 1999  Owen Taylor  <otaylor@redhat.com>
14815
14816         * gdk/gdkproperty.h x11/gdkproperty.c: Change 
14817         only_if_exists argument of gdk_atom_intern to
14818         bool.
14819
14820 1999-11-25  Tor Lillqvist  <tml@iki.fi>
14821
14822         * gdk/gdkgc.c (gdk_gc_set_ts_origin, gdk_gc_set_clip_origin): 
14823         Fix two copy&paste errors.
14824
14825         * gdk/makefile.cygwin: Also rebuild DLL when the static archive in
14826         win32 has changed.
14827
14828         * gdk/win32/gdkprivate-win32.h: Don't need CPINFO in the
14829         GdkWin32SingleFont struct.
14830
14831         * gdk/win32/gdkfont-win32.c: Some more debugging: Print Unicode
14832         subranges of loaded fonts. Clear font signature first, in case
14833         GetTextCharsetInfo fails. Pretend SYMBOL_CHARSET fonts have
14834         ASCII+Basic Latin (i.e. 0x40--0xFF) as they are single-byte.
14835
14836         * gdk/win32/gdkgc-win32.c: Improved logging. (gdk_gc_postdraw):
14837         Unoffset clip region.
14838
14839 1999-11-23  Tor Lillqvist  <tml@iki.fi>
14840
14841         * gdk/win32/gdkevents-win32.c (gdk_event_translate): set
14842         event->any.window before calling filter functions.
14843
14844 Fri Nov 19 10:34:41 1999  Owen Taylor  <otaylor@redhat.com>
14845
14846         * gtk/gtkgamma.h: Adapt cast macros to standard.
14847
14848 [ Merges from 1.2 ]
14849
14850 Tue Nov 16 10:15:54 1999  Owen Taylor  <otaylor@redhat.com>
14851
14852         * gtk/gtkitemfactory.c (gtk_item_factory_parse_path):
14853         If translation does not include a '/', use entire
14854         translation instead of crashing.
14855
14856 Sun Oct 31 22:21:11 1999  Tim Janik  <timj@gtk.org>
14857
14858         * docs/gtk_tut.sgml:
14859         s/gtk_accel_group_attach/gtk_window_add_accel_group/.
14860
14861 Sat Oct 30 09:09:09 1999  Owen Taylor  <otaylor@redhat.com>
14862
14863         * gtk/gtkselection.c (gtk_target_list_remove): Use
14864         g_list_remove_link, not g_list_remove.
14865
14866         [ From Geert Bevin <gbevin@thunderstorms.org> ]
14867         
14868 Sun Oct 24 07:41:40 1999  Tim Janik  <timj@gtk.org>
14869
14870         * gtk/gtkclist.c (real_undo_selection): commented out g_print()
14871         statement upon unselection (how the heck did that slip in?).
14872
14873 Sat Oct 23 03:03:08 1999  Tim Janik  <timj@gtk.org>
14874
14875         * gtk/gtktext.c (gtk_text_freeze): 
14876         (gtk_text_thaw): undraw/draw cursor here to avoid unnecessary scrolling
14877         in frozen state (and aparently crashes). patch provided by Anders
14878         Melchiorsen <and@kampsax.dtu.dk>.
14879
14880 Sat Oct 23 02:53:20 1999  Tim Janik  <timj@gtk.org>
14881
14882         * fix insensitive default/focus widget activation,
14883         reported by Matt Goodall <mgg@isotek.co.uk>.
14884
14885         * gtk/gtkwindow.c (gtk_window_key_press_event): 
14886         (gtk_window_activate_default):
14887         (gtk_window_activate_focus):
14888         return handled=FALSE for actiavtion of insensitive default
14889         widgets. return handled=TRUE for activation of insensitive
14890         focus widgets. don't activate in either case.
14891
14892 Tue Oct 19 09:55:08 1999  Owen Taylor  <otaylor@redhat.com>
14893
14894         * gtk-config.in (lib_gtk): Switch order of @x_cflags@
14895         and $glib_cflags to match library order and in the
14896         theory that an old version of GLib is more likely to
14897         be in the include directory for X then vice-versa.
14898         (Bug #2776)
14899
14900 Tue Oct 19 09:46:49 1999  Owen Taylor  <otaylor@redhat.com>
14901
14902         * gtk/gtkrc.c (gtk_rc_init): Always use LC_CTYPE 
14903         to determine the locale for fontsets, not LC_MESSAGES;
14904         the user may want English messages with a handling
14905         for non-English languages. (LC_CTYPE=ru_RU LC_MESSAGES=fr_FR
14906         will still be broken) (Bug #2891)
14907
14908 Tue Oct 19 20:36:42 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
14909
14910         * gtk/gtkrc.ko: Fixed the wrong number of "*"'s.
14911
14912 Tue Oct 19 12:15:13 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
14913
14914         * gtk/gtkrc.ko: Changed the Korean default fontset.
14915
14916 Fri Oct  8 02:32:47 1999  Owen Taylor  <otaylor@redhat.com>
14917
14918         * gtk/gtklayout.c (gtk_layout_adjustment_changed): Fix bug
14919         where when scrolling to the left or top double exposes
14920         were done, causing major slowdowns.
14921
14922 Thu Oct  7 18:31:55 1999  Owen Taylor  <otaylor@redhat.com>
14923
14924         * gtk/gtkrc.c (gtk_rc_init): Always normalize codeset
14925         names to lowercase and alphanumeric, before looking
14926         them up.
14927
14928         * gtk/Makefile.am: Install codeset variant gtkrc files
14929         with normalized names.
14930
14931 Thu Oct  7 22:52:42 1999  Tim Janik  <timj@gtk.org>
14932
14933         * gtk/gtkitemfactory.c (gtk_item_factory_popup_with_data): even
14934         popup menus when the menu is already visible, but its parent
14935         is still hidden, (happens after tornoff window got hidden).
14936
14937 Thu Oct  7 11:09:55 1999  Owen Taylor  <otaylor@redhat.com>
14938
14939         * gtk/Makefile.am (install-data-local): Fix
14940         a typo where gtkrc.vi_VN.tcvn5712 wasn't getting
14941         deleted, causing error messages on install.
14942
14943 Thu Oct  7 11:03:06 1999  Owen Taylor  <otaylor@redhat.com>
14944
14945         * gtk/gtk[hv]paned.c (gtk_{h,v}paned_draw): Redraw
14946         the handle as well, since we now sometimes ignore
14947         exposes on the handle while resizing.
14948
14949 Wed Oct  6 18:02:31 1999  Owen Taylor  <otaylor@redhat.com>
14950
14951         * gtk/gtkrc.c (gtk_rc_append_default_pixmap_path): Fix stupid
14952         extra g_free introduced in one of the last one or two 
14953         commits.
14954
14955 Wed Oct  6 16:38:36 1999  Owen Taylor  <otaylor@redhat.com>
14956
14957         * gtk/Makefile.am gtk/gtkrc*: Make naming of gtkrc files
14958         consistent, put each style that a gtkrc.* file creates
14959         in a unique namespace, remove old files before installing.
14960
14961 Wed Oct  6 14:31:16 1999  Owen Taylor  <otaylor@redhat.com>
14962
14963         * gtk/gtkrc.c (gtk_rc_init): Avoid leaking memory when
14964         gtk_rc_init is called multiple times. (Yes, people who
14965         do that have bugs in their code.)
14966
14967 Tue Oct  5 11:36:57 PDT 1999 Manish Singh <yosh@gimp.org>
14968
14969         * gtk/Makefile.am: listing gtkrc in gtkconf_DATA seems to barf.
14970         Remove it since it's generated by the Makefile anyway
14971
14972 Tue Oct  5 02:43:41 1999  Owen Taylor  <otaylor@redhat.com>
14973
14974         * gdk/gdkinputcommon.h (gdk_input_device_new): Free
14975         device->info.axes for core pointer.
14976
14977 Thu Sep 30 13:55:25 1999  Owen Taylor  <otaylor@redhat.com>
14978
14979         * gtk/testgtk.c (destroy_idle_test): Rename idle to 
14980         idle_id, to deal with obsolete, broken C libraries.
14981
14982 Mon Sep 27 02:50:15 1999  Owen Taylor  <otaylor@redhat.com>
14983
14984         * gtk/gtkvscale.c (gtk_vscale_draw): Don't add in
14985         allocation->x/y twice!
14986
14987         * gtk/gtkhscale.c: Make usage of gtk_hscale_pos_trough()
14988         consistent with gtk_vscale_pos_trough().
14989
14990 Sun Sep 26 19:44:34 1999  Owen Taylor  <otaylor@redhat.com>
14991
14992         * gtk/gtkcontainer.c (gtk_container_queue_resize): We may
14993         be queueing a resize on a toplevel container between
14994         the time we show it and when we map it. So, we need
14995         to test GTK_WIDGET_VISIBLE() for toplevels, and only
14996         use GTK_WIDGET_DRAWABLE() for child windows.
14997
14998 Thu Sep 23 16:41:03 1999  Owen Taylor  <otaylor@redhat.com>
14999
15000         * gtk/Makefile.am (LDADDS): Add GDK_WLIBS to LDADDS 
15001         (fixes bug #2144)
15002
15003 Fri Sep 24 00:51:45 1999  Tim Janik  <timj@gtk.org>
15004
15005         * gtk/gtkcontainer.c (gtk_container_queue_resize): check for
15006         container DRAWABLE (instead of VISIBLE), so we don't queue
15007         resizes on non-toplevel containers.
15008
15009 Sun Sep 19 18:13:31 1999  Owen Taylor  <otaylor@redhat.com>
15010
15011         * gtk/gtkselection.[ch]: Make the data argument
15012         const guchar *.
15013
15014 Sat Sep 18 21:27:40 1999  Owen Taylor  <otaylor@redhat.com>
15015
15016         * gtk/gtkwindow.c: Try to behave sensibly if 
15017         the focus widget is the window itself. (Should
15018         we allow this at all?)
15019
15020 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
15021
15022         * gtk/gtkwidget.c (gtk_widget_set_sensitive): 
15023         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): 
15024         * gtk/gtknotebook.c (gtk_notebook_set_show_border): 
15025         * gtk/gtkclist.c (gtk_notebook_set_show_border): make gboolean args
15026         in prototypes and implementations consistent (Tomas Ogren).
15027
15028         * gtk/gtklayout.c (gtk_layout_remove): unset GTK_IS_OFFSCREEN flag
15029         before the widget is unparented (reported by damon).
15030
15031         * gtk/gtkdnd.c: make the cursor and icon data _unsigned_ char,
15032         since we provide unsigned data anyways.
15033
15034 Thu Sep 16 21:32:01 1999  Owen Taylor  <otaylor@redhat.com>
15035
15036         * gtk/gtktooltips.c (gtk_tooltips_set_tip): Delay
15037         the call to gtk_tooltips_layout_text() until later.
15038
15039         * gtk/gtktooltips.c (gtk_tooltips_draw_tips):
15040         Call gtk_widget_ensure_style() before using the style.
15041
15042 Wed Sep 15 02:52:19 1999  Owen Taylor  <otaylor@redhat.com>
15043
15044         * gtk/gtkwidget.c (gtk_widget_event): Added workaround
15045         for old widgets that don't propagate draws to all
15046         children. (Namely gnome-dock for gnome-libs <= 1.0.16)
15047
15048 Tue Sep 14 19:22:19 1999  Tim Janik  <timj@gtk.org>
15049
15050         * gtk/gtkwidget.c (gtk_widget_queue_resize): don't queue the parent
15051         for a redraw but just the widget that requested the resize.
15052
15053 Tue Sep 14 18:29:47 1999  Tim Janik  <timj@gtk.org>
15054
15055         * gtk/gtkcontainer.c: added new widget level method
15056         gtk_container_set_reallocate_redraws() and a GtkContainer flag
15057         reallocate_redraws : 1 to reflect the setting, exported this through
15058         the argument system as a boolean ::reallocate_redraws.
15059
15060         * gtk/gtkwidget.c (gtk_widget_size_allocate): when queueing redraws
15061         on the widget because the allocation changes, do so as well for
15062         widget->parent if the parent has reallocate_redraws set to TRUE.
15063         with that containers requesting reallocation redraws get automatically
15064         redrawn if their children changed allocation (this unfortunately
15065         affects also other children that didn't change allocation, but we
15066         cannot work around that before 1.3).
15067
15068 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
15069
15070         * gtk/gtkwidget.c (gtk_widget_idle_draw): only emit ::draw if width
15071         _and_ height are >0 (not _or_).
15072
15073         * gtk/gtktable.c (gtk_table_remove): use gtk_widget_queue_resize()
15074         instead of gtk_container_queue_resize(), which is a core gtk internal
15075         function (must have been on crack when i queued that).
15076
15077         * gtk/gtkprivate.h: added new private flag GTK_FULLDRAW_PENDING, so
15078         we can check more reliably if we want to discard expose events.
15079         * gtk/gtkwidget.c: added setting/unsetting of the GTK_FULLDRAW_PENDING
15080         flag.
15081         
15082         * gtk/gtkwidget.c (gtk_widget_event): don't discard synthesized exposes,
15083         we simply trust these events. for deciding whether to discard exposes,
15084         check GTK_FULLDRAW_PENDING instead of RESIZE_PENDING.
15085         
15086 Mon Sep 13 15:01:21 1999  Owen Taylor  <otaylor@redhat.com>
15087
15088         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
15089         queues of areas that are completely off screen.
15090
15091         * gtk/gtkwidget.c (gtk_widget_idle_draw): Fix broken
15092         logic for handleboxes.
15093
15094         * gtk/gtkwidget.c (gtk_widget_queue_draw_data): Add santity
15095         check on width/height.
15096
15097 Mon Sep 13 02:22:47 1999  Tim Janik  <timj@gtk.org>
15098
15099         * gtk/Makefile.am: backed out Raja's recent VPATH build "improvements",
15100         we are fine with using $@ the way we do (if we actually encounter
15101         brokeness with $@ in VPATH builds because of additional path prefixes,
15102         we need to use $(@F) actually).
15103
15104 Mon Sep 13 01:34:53 1999  Tim Janik  <timj@gtk.org>
15105
15106         * gtk/gtksignal.c: renamed two variables, hopefully didn't introduce
15107         short lived bugs, that would allow language bindings to do surgeries
15108         to our guts.
15109
15110 Fri Sep 10 15:22:50 1999  Owen Taylor  <otaylor@redhat.com>
15111
15112         * gtk/gtkwindow.c (gtk_window_size_allocate): Fix typo
15113         where comparison was being done against an uninitialized
15114         value causing intermittant results depending on
15115         compiler flags. Also make it clearer that we aren't
15116         ever initializing the child as 0x0 (though this will
15117         be caught in gtk_widget_size_allocate())
15118
15119 Fri Sep 10 10:06:56 1999  Owen Taylor  <otaylor@redhat.com>
15120
15121         * gtk/gtkwindow.c (gtk_window_set_transient_for): Move
15122         gtk_window_unset_transient_for() call after we do checks
15123         involving the old transient parent.
15124         [ From Lance Capser <lmc@cyberhighway.net> ]
15125
15126 1999-09-07  Raja R Harinath  <harinath@cs.umn.edu>
15127
15128         * gtk/Makefile.am (gtk.defs): Go back to using `touch' to create
15129         an empty file.
15130
15131 Mon Sep  6 00:11:56 1999  Lars Hamann  <lars@gtk.org>
15132
15133         * gtk/gtkctree.c (gtk_ctree_is_ancestor): return FALSE if node has
15134         no children. (Reported by: Chris Rogers <gandalf@pobox.com>)
15135
15136 1999-09-03  Raja R Harinath  <harinath@cs.umn.edu>
15137
15138         * gtk/Makefile.am (gen_sources): Improve VPATH builds.
15139         `$@' is valid only in the build dir, not after we've done 
15140         `cd $srcdir'.  Also use `test -f' instead of less portable
15141         `test -e'.
15142
15143 Fri Sep  3 15:59:56 1999  Owen Taylor  <otaylor@redhat.com>
15144
15145         * gtk/gtktext.c (correct_cache_insert): Rewrite
15146          for simplicity, and hopefully correctness.
15147          (Fixes bug #1322, which was a segfault when
15148           on some insertions with the properties around
15149           the insertion set up just wrong.)
15150
15151         * gtk/gtktext.c (gtk_text_adjustment): When we receive
15152          a "changed" signal, clamp the new value to the adjustment
15153          bounds to avoid segfaulting if someone tries to change
15154          the adjustment to a bogus value. (Bug #1795)
15155
15156 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
15157
15158         * gtk/gtkmain.c: Ignore unexpected destroy notifies
15159         for children, for toplevel windows handle them
15160         like delete_event.
15161
15162         * gtk/gtkplug.c: Add an unrealize handler so that
15163         we unref plug->socket_window when we are done
15164         with it.
15165
15166 Fri Sep  3 14:52:54 1999  Owen Taylor  <otaylor@redhat.com>
15167
15168         * gtk/gtktext.c (clear_area): Fix stupid signedness
15169          problem that was causing background to sometimes
15170          be misaligned.
15171
15172 Fri Sep  3 12:26:33 1999  Owen Taylor  <otaylor@redhat.com>
15173
15174         [ Fixes pointed out by Ettore Perazzoli <ettore@comm2000.it> ]
15175         
15176         * gtk/gtkmenu.c (gtk_menu_position): Make
15177          sure we never position menus with negative x, y,
15178          since gtk_widget_set_uposition() can't handle that.
15179
15180         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu):
15181          Modify the positioning code a bit so that we always
15182          put the top-left corner onscreen. (This is for
15183          UI reasons, gtk_menu_position() now takes care of
15184          gtk_widet_set_uposition() brokeness.)
15185
15186 Fri Sep  3 03:06:30 1999  Tim Janik  <timj@gtk.org>
15187
15188         * gtk/Makefile.am: fixed up things for -jx, x > 1.
15189
15190 Sun Sep  5 08:48:51 1999  Owen Taylor  <otaylor@redhat.com>
15191
15192         * gtk/gtkwidget.c (gtk_widget_modify_style): Ref the
15193           RC style that is passed in. The lack of the ref
15194           before was a bug. If people worked around this
15195           bug, this will introduce a slight memory leak
15196           in their code. The code should typically look like:
15197
15198             rc_style = gtk_rc_style_new ();
15199             [...]
15200             gtk_widget_modify_style (widget, rc_style);
15201             gtk_rc_style_unref (rc_style);
15202
15203         * gtk/gtkwidget.c (gtk_widget_modify_style): Reset
15204           the style if it was already set.
15205
15206         * gtk/gtkwidget.c (gtk_widget_set_name): Only set the
15207           style if it was set before.
15208
15209 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
15210
15211         * gtk/testgtk.c (main): Add a check to see if we
15212           are being run from the correct directory and
15213           to quit nicely if we are not.
15214
15215         * gtk/gtkrc.c (gtk_rc_slist_remove_all): Make function
15216           static.
15217
15218 Thu Sep  2 23:00:03 1999  Tim Janik  <timj@gtk.org>
15219
15220         * gtk/gtkenums.h (GtkWindowPosition): added GTK_WIN_POS_CENTER_ALWAYS.
15221
15222         * gtk/gtkwindow.c:
15223         queue resizes unconditionally (gtk_widget_queue_resize will figure
15224         what to do if the window is not realized).
15225         (gtk_window_move_resize): only recenter the window
15226         for GTK_WIN_POS_CENTER_ALWAYS.
15227         (gtk_window_compute_reposition): handle GTK_WIN_POS_CENTER_ALWAYS in
15228         the same way as GTK_WIN_POS_CENTER.
15229
15230 Thu Sep  2 22:39:27 1999  Tim Janik  <timj@gtk.org>
15231
15232         * gtk/gtkwindow.c (gtk_window_reposition): check for the last position
15233         with (!(info->last_flags & GDK_HINT_POS)) instead of
15234         (!info->last_flags & GDK_HINT_POS).
15235
15236         * gtk/gtkwindow.c (gtk_window_move_resize): constrain new_width and
15237         new_height unconditionally, because we use these values even if
15238         !default_size_changed && !hints_changed.
15239         comented the (default_size_changed || hints_changed) case with
15240         respect to resize rejects from the window manager.
15241
15242         * gtk/gtkwindow.c (gtk_window_move_resize): save info->last values
15243         in the zvt condition hack, since this includes the window hints, set
15244         the hints after the handling_resize case.
15245
15246         * gtk/gtkwindow.c (gtk_window_show): constrain the default size that a
15247         window is initially shown with to the geometry.
15248
15249 Thu Sep  2 07:38:56 1999  Tim Janik  <timj@gtk.org>
15250
15251         * gtk/gtkwindow.c (gtk_window_move_resize):
15252         s/size_changed/default_size_changed/g so i know what's
15253         really going on (frying brain on smaller flame now).
15254
15255 Thu Sep  2 05:47:47 1999  Tim Janik  <timj@gtk.org>
15256
15257         * gtk/gtkwindow.c (gtk_window_move_resize): queue a new resize if
15258         we have size_changed upon handling_resize. this is a gross
15259         workaround for the broken zvt widget and should be removed in
15260         1.3 again (search for FIXME).
15261         Owen provided an accurate comment for this:
15262
15263         /* We could be here for two reasons
15264          *  1) We coincidentally got a resize while handling
15265          *     another resize.
15266          *  2) Our computation of size_changed was completely
15267          *     screwed up, probably because one of our children
15268          *     is broken. It's probably a zvt widget.
15269          *
15270          * For 1), we could just go ahead and ask for the
15271          * new size right now, but doing that for 2)
15272          * might well be fighting the user (and can even
15273          * trigger a loop). Since we really don't want to
15274          * do that, we requeue a resize in hopes that
15275          * by the time it gets handled, the child has seen
15276          * the light and is willing to go along with the
15277          * new size. (this happens for the zvt widget, since
15278          * the size_allocate() above will have stored the
15279          * requisition corresponding to the new size in the
15280          * zvt widget)
15281          *
15282          * This doesn't buy us anything for 1), but it shouldn't
15283          * hurt us too badly, since it is what would have
15284          * happened if we had gotten the configure event before
15285          * the new size had been set.
15286          */
15287
15288 Wed Sep  1 20:46:11 1999  Owen Taylor  <otaylor@redhat.com>
15289
15290         * gtk/gtkrc.c: deal properly with the fact that RC
15291           style lists may include rc styles more than once.
15292
15293         * gtk/gtkrc.c (gtk_rc_append_pixmap_path): Removed
15294           unused static function.
15295
15296         * gtk/gtkrc.c (gtk_rc_find_pixmap_in_path): Keep a
15297           stack of directories of RC files currently being
15298           parsed and implicitely add them to pixmap path.
15299           
15300           This fixes a bug where the directory would get
15301           appended then overwritten by pixmap_path declarations.
15302
15303           (bug #1462, from Peter Wainright <prw@wainpr.demon.co.uk>)
15304
15305         * gtk/gtkthemes.c (gtk_theme_engine_unref): Call
15306           theme's exit function. (Patch from Peter Wainwright,
15307           bug #1454)
15308
15309         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_destroy):
15310           Add a destroy() handler to take care of removing
15311           group for menu item. (Fixes bug #1197)
15312
15313         * gtk/gtkwidget.c (gtk_widget_size_request): Fixed thinko
15314           in warning message.
15315
15316 Wed Sep  1 21:27:42 1999  Tim Janik  <timj@gtk.org>
15317
15318         * gtk/gtkwindow.c (gtk_window_move_resize): don't require a server
15319         roundtrip to figure window's width and height, since we know that
15320         anyways from widget->allocation.
15321
15322 Wed Sep  1 12:37:44 1999  Owen Taylor  <otaylor@redhat.com>
15323
15324         * gtk/gtkwindow.c (gtk_window_move_resize): Compute
15325           the hints after we request the new size.
15326
15327 Wed Sep  1 10:38:37 1999  Owen Taylor  <otaylor@redhat.com>
15328
15329         * gtk/gtkwindow.c (gtk_window_compute_hints): Removed
15330           GTK_WIDGET_REALIZED() assertion - we can compute the
15331           hints before we are realized.
15332
15333         * gtk/gtkwindow.c (gtk_window_move_resize): Reorder
15334           hint changing so that we have a value of hints_changed
15335           when we decide whether to constrain the window size.
15336
15337         * gtk/gtkwindow.c (gtk_window_move_resize): Spelling fix.
15338
15339         * gtk/gtkwindow.c (gtk_window_constrain_size): cleanups,
15340         change back to G_MAXINT.
15341
15342 Wed Sep  1 06:54:59 1999  Tim Janik  <timj@gtk.org>
15343
15344         * gtk/gtkwindow.c (gtk_window_get_geometry_info): zero initialize
15345         new GtkWindowGeometryInfo, so fields like GdkGeometry geometry
15346         contain uncluttered values.
15347         (gtk_window_compute_hints): simply assert that window is realized
15348         and that geometry_info is valid, since we rely on this anyways.
15349         (gtk_window_constrain_size): major cleanups to the code.
15350         if (flags & GDK_HINT_BASE_SIZE) use geometry's base width and height
15351         for the base size, instead of the minimums. use 32767 as max width
15352         and height (like in gtkwindow.c) instead of G_MAXINT.
15353
15354 Wed Sep  1 04:41:25 1999  Tim Janik  <timj@gtk.org>
15355
15356         * cleaned up the GtkContainer.need_resize flag handling mess, we
15357         only need to force resize requests when we were prematurely
15358         realized, or our widget tree was modified when we were temporarily
15359         hidden. handling these cases directly upon showing the window (i.e.
15360         while the GdkWindow is still unmapped) avoids the need to wait for
15361         a configure event response and therefore makes the GUI more snappier
15362         and avoids blank windows during the roundtrip.
15363
15364         * gtk/gtkwidget.c:
15365         (gtk_widget_hide): 
15366         (gtk_widget_show): don't queue resizes on toplevels, they know how
15367         to deal with matters.
15368
15369         * gtk/gtkcontainer.c (gtk_container_queue_resize): set the ->need_resize
15370         flag directly for not visible resize containers and spare us unecessary
15371         signal emissions.
15372
15373         * gtk/gtkwindow.c:
15374         (gtk_window_realize): if we need to enforce premature size allocation,
15375         queue a container resize so we are correctly resized later on.
15376         (gtk_window_init):
15377         (gtk_window_size_request):
15378         don't freak around with the ->need_resize flag,
15379         gtk_container_queue_resize() will care about that.
15380         (gtk_window_show):
15381         handle initial resizing issues here, we can handle matters better in
15382         this place, especially since we know that our GdkWindow is still
15383         unmapped.
15384         (gtk_window_move_resize):
15385         don't care about ->need_resize at all.
15386         handle size changes properly that occoured while we waited for a
15387         configure event.
15388
15389 Tue Aug 31 15:58:46 1999  Owen Taylor  <otaylor@redhat.com>
15390
15391         * gtk/gtkwidget.c (gtk_widget_set_uposition):
15392         * gtk/gtkwindow.[hc] (gtk_window_reposition):
15393         Move the hint setting code from gtk_widget_set_uposition
15394         to here; set the hints so that we respect any previously
15395         set geometry hints.
15396
15397         * gtk/gtkwindow.c (gtk_window_compute_reposition): Don't
15398         change the window hints here or move the window here,
15399         let that happen in gtk_window_move_resize().
15400
15401 Tue Aug 31 06:58:52 1999  Tim Janik  <timj@gtk.org>
15402
15403         * gtk/gtkwidget.c (gtk_widget_event): when discarding exposes due
15404         to already queued resizes (and therefore redraws) on a widget, check
15405         its anchestry as well.
15406
15407         * gtk/gtkcontainer.c:
15408         (gtk_container_queue_resize): clear resize widgets for resize
15409         containers before aborting prematurely. this is especially important
15410         for toplevels which may need imemdiate processing or their resize
15411         handler to be queued.
15412         (gtk_container_dequeue_resize_handler): added new internal function for
15413         gtkwindow.c.
15414
15415         * gtk/gtkwindow.c (gtk_window_move_resize): if we are resizing due to a
15416         configure event, take possible changes in window position into account
15417         as well.
15418         if we request a new window size, queue up a resize handler that will
15419         last until the configure event response arrives.
15420         combined the ->need_resize case (initial show) with the general size
15421         (hints) changed case and added even more comments.
15422         if !auto_shrink, only revert to the old allocation if the new size
15423         is smaller than the current allocation.
15424
15425 Tue Aug 31 11:55:20 1999  Owen Taylor  <otaylor@redhat.com>
15426
15427         * gtk/gtkwindow.c (gtk_window_set_arg, gtk_window_set_policy,
15428                            gtk_window_set_geometry_hints
15429                            gtk_window_set_default_size):
15430         When hints are set, queue a resize so that the hints will
15431         be eventually reset on the toplevel.
15432
15433         * gtk/gtkwindow.c (gtk_window_show): Use
15434         gtk_window_compute_default_size(). Clear the need_resize flag
15435         on the initail map so that we don't unnecessarily trigger the
15436         resize code.
15437
15438         * gtk/gtkwindow.c (gtk_window_move_resize): Split apart
15439         into separate functions. Compare the hints we are setting
15440         with what we set last time so that we can accurately
15441         tell when we need to reset the hints.
15442
15443         * gtk/gtkwindow.c (gtk_window_compute_default_size): New
15444         function to figure out the size from requisition
15445         and default_size.
15446
15447         * gtk/gtkwindow.c (gtk_window_constrain_size): Function
15448         from fvwm to constrain a size to the geometry hints.
15449
15450         * gtk/gtkwindow.c (gtk_window_compare_hints): New function
15451         to compare two sets of geometry hints.
15452
15453         * gtk/gtkwindow.c (gtk_window_compute_hints): Renamed
15454         from gtk_window_set_hints(), just compute the hints,
15455         don't set them.
15456
15457         * gtk/gtkwindow.c (gtk_window_compute_reposition): Move
15458         code from gtk_window_move_resize() to separate function,
15459         rationalize a bit.
15460
15461 Tue Aug 31 13:05:03 1999  Owen Taylor  <otaylor@redhat.com>
15462
15463         * gtkrc.h: Move the ref_count member out of the GtkRcStyle
15464         structure into a new private structure.
15465
15466         * gtkrc.c: Split GtkRcStyle into public/private.
15467         In the private part, add a list of pointers to the
15468         RcStyle lists this RcStyle participates in.
15469
15470         * gtkrc.c: When a RcStyle is free, remove all
15471         lists referencing it from the 
15472         realized_style_ht hash, and free those lists.
15473         
15474         * gtk/gtkrc.c (gtk_rc_clear_styles): Don't call
15475         gtk_rc_init(), since that adds the default styles
15476         to the list of parsed RC files again.
15477
15478         * gtk/gtkrc.c: Use gtk_rc_style_find() consistently.
15479         
15480 Thu Aug 26 14:14:42 1999  Tim Janik  <timj@gtk.org>
15481
15482         * gtk/gtkwidget.c (gtk_widget_size_allocate): reactivated the sanity
15483         checks that ensure that a widget's allocation is at least 1 in width
15484         and height. (GNOME note: this doesn't affect old panel code anymore,
15485         because GtkSocket will request width and height of at least 1 since
15486         Fri Jul 23).
15487
15488         * gtk/gtkwindow.c (gtk_window_realize): if the widget hasn't been
15489         allocated yet (happens if the user realizes the window prematurely),
15490         size request and allocate it.
15491         (gtk_window_size_allocate): guard against guint underflows.
15492
15493 Wed Aug 25 19:01:36 1999  Lars Hamann  <lars@gtk.org>
15494
15495         * gtk/Makefile.am (gtk_built_sources): reordered stamp-gtk.defs
15496         in gtk_built_sources, so gtk.defs gets built prior to all other
15497         sources.
15498
15499 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
15500
15501         * gtk/Makefile.am:
15502         invoke indent on gtkmarshal.*. 
15503         rewrote source generation rules, use COPYING as oldest source tag for
15504         a piggyback rule to generate all sources from (don't touch it ;).
15505         major cleanups, strip spaces on build rules for GNU Make.
15506
15507         * gtk/genmarshal.pl: don't operate on hardcoded filenames but take
15508         source and target files from commandline arguments. don't invoke indent.
15509
15510 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
15511
15512         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
15513         notebook after switch to avoid drawing problems.
15514         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
15515         
15516         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
15517         show them instead. 
15518         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
15519
15520 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
15521
15522         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
15523         notebook after switch to avoid drawing problems.
15524         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
15525         
15526         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
15527         show them instead. 
15528         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
15529
15530 Wed Aug 18 09:20:10 1999  Tim Janik  <timj@gtk.org>
15531
15532         * gtk/gtkwindow.c:
15533         we use window->need_resize from configure_event now, to indicate that
15534         the gtkwindow should keep its allocation (e.g. because the user resized
15535         the window through window manager handles). resize_count is now reliably
15536         used to figure whether we got the allocation we requested from the
15537         window manager.
15538         configure events get queued as resizes now, the real stuff (size
15539         computation and allocation) now only goes on in gtk_window_move_resize().
15540         GtkWindow's requisition now contains its *real* requisition (like all
15541         other widgets), *not* taking usize into account.
15542         geometry_info->last_{width|height} is now updated from set_hints() only
15543         so it always contains the last hints we set for the window manager.
15544         made some event handlers return TRUE instead of FALSE.
15545         the overall code should be much more straight forward now, and the
15546         significant code portions are accompanied by comments now.
15547         (gtk_window_set_hints):
15548         removed requisition argument and made it
15549         fetch the requisition through gtk_widget_get_child_requisition.
15550         we also don't move the gdkwindow here anymore, gtk_window_move_resize()
15551         does that now.
15552         (gtk_window_show):
15553         ensure that the widget is realized before calling 
15554         gtk_container_check_resize() (and thus gtk_window_move_resize()), also
15555         ensure that we got properly size requested and allocated before
15556         realization.
15557         (gtk_window_configure_event):
15558         ignore plain window moves, or reallocate the widget tree through the
15559         resize queue otherwise.
15560         (gtk_window_move_resize):
15561         mostly rewrote this function to figure window manager hints more
15562         reliably, coalesce window moves and resizes to reduce configure events
15563         and do actuall size allocations.
15564
15565 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
15566
15567         * gtk/gtkwidget.c (gtk_widget_event): discard expose events for widgets
15568         that have a resize pending, because a redraw is already queued for them.
15569
15570         * gtk/gtkcontainer.c: removed ugly connect_to ::size_allocate signal
15571         hack to clear resize_widgets.
15572
15573         * gtk/gtkwidget.c (gtk_widget_size_allocate): call clear_resize_widgets
15574         for resize containers prior to size allocation. (this is also a bit
15575         ugly, but avoids side effects for stopped emissions and is thus more
15576         reliable).
15577         (gtk_widget_unparent): removed disconnect call for clear_resize_widgets.
15578
15579         * gtk/gtktooltips.c (gtk_tooltips_paint_window): renamed this
15580         function from gtk_tooltips_expose, as we connect to ::expose_event
15581         *and* ::draw now.
15582
15583 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
15584
15585         * gtk/gtkselection.c (gtk_target_list_ref): Added missing sanity
15586         checks.
15587         (gtk_target_list_unref): Likewise.
15588
15589         * gtk/gtkthemes.c (gtk_theme_engine_unref): Likewise.
15590
15591 Tue Aug 17 15:47:07 1999  Owen Taylor  <otaylor@redhat.com>
15592
15593         * gtk/gtkcolorsel.c (gtk_color_selection_draw_value_bar):
15594         guard against division by zero. (Fixes bug #1339)
15595
15596 Tue Aug 17 10:56:49 1999  Owen Taylor  <otaylor@redhat.com>
15597
15598         * gtk/gtkentry.c (gtk_move_{forward,backward}_word): 
15599         Prevent the trivial leak of information of allowing
15600         word motion when the entry is not visible.
15601
15602 Tue Aug 17 10:28:52 1999  Owen Taylor  <otaylor@redhat.com>
15603
15604         * gtk/gtkfilesel.c (gtk_file_selection_fileop_error): Propagate
15605         modality to error dialog as well as confirmation dialogs.
15606         (Bug #1803, reported by Rosanna Wing Sze Yuen)
15607
15608 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
15609
15610         * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): Honor
15611         tree->view_lines.
15612         (gtk-guy-990611-3.patch: Guy Harris <guy@netapp.com>)
15613
15614         * gtk/Makefile.am (install-data-local): Solaris apparently
15615         has various troubles with ln -f; use rm first instead.
15616         (gtk-guy-990611-2.patch: Guy Harris <guy@netapp.com>)
15617
15618 1999-07-30  Raja R Harinath  <harinath@cs.umn.edu>
15619
15620         * gtk/Makefile.am (stamp-m): Don't `mv' from builddir to srcdir,
15621         use `cp' followed by `rm' (the `rm' was already there).
15622
15623 July 30, 1999 Elliot Lee <sopwith@redhat.com>
15624         
15625         * configure.in: Fix autoconf warnings about cross compilation by
15626         trying to provide sane defaults for AC_TRY_RUN.
15627         * gtk/Makefile.am: If we refer to gtkmarshal.[ch] in $(srcdir),
15628         put them into $(srcdir) when generated. Also add a dependency of
15629         gtksignal.h on gtkmarshal.h for -j builds. 
15630         * gtk/gtk(dnd,style,gamma).c: Minor warning fixes.
15631
15632 Wed Jul 28 09:29:19 1999  Owen Taylor  <otaylor@redhat.com>
15633
15634         * gtk/gtkmain.c (gtk_main_iteration_do): Added missing
15635         GDK_THREADS_{LEAVE,ENTER} pair.
15636         (From Paul Fisher <pnfisher@redhat.com>)
15637
15638 Fri Jul 23 01:00:15 1999  Tim Janik  <timj@gtk.org>
15639
15640         * gtk/gtksocket.c (gtk_socket_size_request): asure that the requested
15641         width and height are always >0 (owen).
15642
15643 Fri Jul 23 00:00:47 1999  Tim Janik  <timj@gtk.org>
15644
15645         * gtk/gtkwidget.c (gtk_widget_size_allocate): backed out my recent
15646         change that assured that a widget's allocated with and height are
15647         always >1, since this breaks *buggy* panel code. unfortunately this
15648         back-breaks the gimp's color selector.
15649
15650         * gtk/gtkdrawingarea.c (gtk_drawing_area_size_allocate): asure that our
15651         allocation is always >0 in width and height, before sending the
15652         configure event; this is a *gross* hack to get the gimp back to work.
15653         
15654         * marked both cases with TODO-1.3
15655
15656 Wed Jul 21 15:47:39 1999  Owen Taylor  <otaylor@redhat.com>
15657
15658         * gtk/gtktext.c: Don't display wrap indicators when
15659         text is not editable and word wrap is on.
15660
15661 Wed Jul 21 08:21:40 1999  Tim Janik  <timj@gtk.org>
15662
15663         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): special case
15664         option menus here as they are not derived from menu shell, assure that
15665         the option menu has a menu we can add items to.
15666
15667 Tue Jul 20 23:29:48 1999  Tim Janik  <timj@gtk.org>
15668
15669         * gtk/gtknotebook.c (gtk_notebook_page_allocate): convert allocation->
15670         width/height to (gint) before calculations and check against < 0 to
15671         avoid guint wraparounds.
15672
15673 Sun Jul 18 00:35:49 1999  Tim Janik  <timj@gtk.org>
15674
15675         * gtk/gtkwidget.c (gtk_widget_size_allocate): ensure that the allocated
15676         width and height is never zero. sanity check both dimensions against
15677         32767 and issue a warning if the allocation is greater than that.
15678
15679 Wed Jul  7 15:03:30 1999  Owen Taylor  <otaylor@redhat.com>
15680
15681         * gtk/gtkmain.c (gtk_events_pending): Unlock around call
15682         to g_main_pending() as well.
15683
15684 Wed Jul  7 14:59:01 1999  Owen Taylor  <otaylor@redhat.com>
15685
15686         * gtk/gtkmain.c (gtk_main_iteration): Unlock around
15687         call to g_main_iteration() - since that will regrab
15688         GTK+ lock to process events.
15689
15690 Thu Jul  1 15:01:55 1999  Owen Taylor  <otaylor@redhat.com>
15691
15692         * gtk/gtkwindow.c
15693         - Regularize with the rest of GTK+ by making widget->requisition
15694           not reflect the set_usize()
15695         - Always recompute geometry hints, then check if they
15696           changed before sending them to the X server. The
15697           previous checks for changes would fail in a number
15698           of circumstances. 
15699
15700 Thu Jul  1 11:55:59 1999  Owen Taylor  <otaylor@redhat.com>
15701
15702         * gtk/gtkstyle.c: Include <stdlib.h> for strcmp().
15703
15704 Wed Jun 30 19:26:36 1999  Owen Taylor  <otaylor@redhat.com>
15705
15706         * gtk/gtkdnd.c:
15707         - Code cleanups
15708         - Instantaneously update on modifier key presses
15709         - Allow cancellation of the drag with Escape.
15710
15711 Tue Jun 29 17:04:09 1999  Owen Taylor  <otaylor@redhat.com>
15712
15713         * gtk/testgtk.c (create_handle_box): Set the policy
15714         to auto_shrink - otherwise the appearance is rather
15715         strange when flipping between horizontal and vertical.
15716
15717 Mon Jun 28 09:29:52 1999  Tim Janik  <timj@gtk.org>
15718
15719         * gtk/gtkwindow.c: add ::default_width and ::default_height arguments.
15720         (gtk_window_set_default_size): don't change a value if it's < 0.
15721         queue a resize.
15722
15723 Sun Jun 27 11:00:33 1999  Tim Janik  <timj@gtk.org>
15724
15725         * gtk/gtktext.c (gtk_text_insert): don't segfault on NULL inserts.
15726
15727 Mon Jun 28 12:08:25 1999  Owen Taylor  <otaylor@redhat.com>
15728
15729         * gtk/gtkfilesel.c (cmpl_completion_fullname): Don't
15730         add an extra "/" when concating "/" + filename.
15731         (From Matt Grossman <mattg@oz.net>)
15732
15733 Mon Jun 28 10:57:12 1999  Owen Taylor  <otaylor@redhat.com>
15734
15735         * gtk/gtkctree.c (draw_cell_pixmap): Reset clip mask
15736         for fg_gc if we set it for drawing pixmap.
15737
15738 Tue Jun 15 12:45:12 1999  Owen Taylor  <otaylor@redhat.com>
15739
15740         Fixes from Peter Wainwright <prw@wainpr.demon.co.uk>
15741         
15742         * gtk/gtkrc.c (gtk_rc_parse_engine): If rc_style->engine is
15743         already set, call old engine's destroy function and
15744         unref the old engine.
15745
15746 Thu Jun 10 17:59:38 1999  Tim Janik  <timj@gtk.org>
15747
15748         * gtk/gtkdrawingarea.c (gtk_drawing_area_size): queue a resize.
15749
15750 Wed Jun  9 15:13:16 1999  Tim Janik  <timj@gtk.org>
15751
15752         * gtk/gtkaccelgroup.h: mark certain functions as internal.
15753
15754 Wed Jun  9 13:48:28 1999  Tim Janik  <timj@gtk.org>
15755
15756         * gtk/gtkpreview.c (gtk_preview_set_expand): queue a resize if the
15757         expand behaviour changed.
15758
15759         * gtk/gtklabel.c (gtk_label_set_pattern):
15760         (gtk_label_set_justify):
15761         (gtk_label_set_line_wrap):
15762         don't bother invoking queue_clear, the reallocation does
15763         that for us, always free_words so the upcoming resize will
15764         relayout the label's contents.
15765
15766 Wed Jun  9 12:50:48 1999  Tim Janik  <timj@gtk.org>
15767
15768         * applied argument implementation patches from Elena Devdariani
15769         <elena@cogent.ca>.
15770
15771         * gtk/gtktoolbar.c: ::orientation, ::toolbar_style, ::space_size,
15772         ::space_style, ::relief
15773         * gtk/gtkruler.c: ::lower, ::upper, ::position, ::max_size
15774         * gtk/gtkpreview.c: ::expand
15775         * gtk/gtkpaned.c: ::handle_size, ::gutter_size
15776         * gtk/gtknotebook.c: ::homogeneous
15777         * gtk/gtklabel.c: ::wrap
15778         * gtk/gtklist.c: ::selection_mode
15779         * gtk/gtkhandlebox.c: ::handle_position, ::snap_edge
15780         * gtk/gtkcurve.c: ::curve_type, ::min_x, ::max_x, ::min_y, ::max_y
15781         * gtk/gtkcolorsel.c: ::update_policy, ::use_opacity
15782         * gtk/gtkclist.c: ::sort_type
15783         * gtk/gtkcheckmenuitem.c: ::active, ::show_toggle
15784         * gtk/gtkaspectframe.c: ::xalign, ::yalign, ::ratio, ::obey_child
15785
15786 Tue Jun  1 23:38:38 1999  Owen Taylor  <otaylor@redhat.com>
15787
15788         * gtk/gtkstyle.c: Removed ill-thought-out part of last
15789         comment.
15790
15791 Tue Jun  1 23:30:09 1999  Owen Taylor  <otaylor@redhat.com>
15792
15793         * gtk/gtkstyle.c (gtk_style_attach): Get the reference
15794         counting right when we have to attach a new style
15795         for a different visual. (Chi-Deok Hwang <cdhwang@sr.hei.co.kr>)
15796
15797         * gtk/gtkstyle.c: Documented the refcounting
15798         peculularities of gtk_style_attach.
15799
15800 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
15801
15802         * gtk/gtkwindow.c (gtk_window_new): added return if fail for invalid
15803         window types.
15804
15805         * examples/packer/pack.c (main): use GTK_WINDOW_TOPLEVEL instead
15806         of GTK_TOPLEVEL for creating the window.
15807
15808 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
15809
15810         * gtk/gtkmain.c (gtk_init_check): don't segfault when --gtk-module is
15811         the last argument (reported by Per Winkvist).
15812         
15813 Tue May 25 13:13:12 1999  Owen Taylor  <otaylor@redhat.com>
15814
15815         Fixes for invisible XOR lines (Frank Loemker
15816         <floemker@TechFak.Uni-Bielefeld.DE>)
15817         
15818         * gtk/gtkclist.c (gtk_clist_realize): Always use
15819         a non-zero pixel for GDK_XOR.
15820
15821         * gtk/gtkvpaned.c gtk/gtkhpaned.c: 
15822         Use GDK_INVERT instead of GDK_XOR.
15823
15824 Wed May 12 21:56:40 1999  Lars Hamann  <lars@gtk.org>
15825
15826         * gtk/gtkclist.c (adjust_adjustments): signal emit value_changed
15827         signals if h/voffsets differ from adjustment values.
15828         Reportet by Jerome Bolliet <bolliet@in2p3.fr>
15829
15830 Mon May 10 04:20:41 1999  Tim Janik  <timj@gtk.org>
15831
15832         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): propagate
15833         ::selection-done emissions up to the topmost menu shell.
15834
15835 Fri May  7 10:15:14 1999  Owen Taylor  <otaylor@redhat.com>
15836
15837         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): Unset
15838         the user data on the window before destroying it.
15839
15840         * gtk/gtknotebook.c (gtk_notebook_unrealize): Add an
15841         unrealize handler to take care of destroying 
15842         notebook->panel properly. 
15843         (Bug #1198 - Morten Welinder <terra@diku.dk>)
15844
15845         * gtk/gtktext.c (expand_scratch_buffer): Fix reversal
15846         of g_new and g_realloc to stop memory leak. (Actually,
15847         we could just use g_realloc(), but I'm not 100% sure
15848         that is portable).
15849         (Bug #1196 - Morten Welinder <terra@diku.dk>)
15850
15851 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
15852
15853         * gtk/gtkplug.h: Removed stray GtkPlugButton declaration.
15854
15855         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
15856         for fontsets.
15857
15858         * gtk/gtkbutton.c (gtkbutton_expose): Fix warning
15859         with bin/button confusion.
15860
15861 Thu May  6 04:53:26 1999  Tim Janik  <timj@gtk.org>
15862
15863         * gtk/testgtk.c: in the ItemFactory test, link radio items together,
15864         and show how preselection of radio items is done.
15865
15866 Sun May  2 13:31:14 1999  Tim Janik  <timj@gtk.org>
15867
15868         * gtk/gtktreeitem.c (gtk_tree_item_set_subtree): 
15869         * gtk/gtktree.c (gtk_tree_add) (gtk_tree_insert):
15870         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): 
15871         * gtk/gtkpaned.c (gtk_paned_pack2) (gtk_paned_pack1):
15872         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_add): 
15873         * gtk/gtktable.c (gtk_table_attach): 
15874         * gtk/gtklist.c (gtk_list_insert_items): 
15875         * gtk/gtkmenushell.c (gtk_menu_shell_insert): 
15876         * gtk/gtknotebook.c (gtk_notebook_insert_page_menu): 
15877         * gtk/gtkpacker.c (gtk_packer_add_defaults) (gtk_packer_add): 
15878         * gtk/gtkbin.c (gtk_bin_add): 
15879         * gtk/gtkbox.c (gtk_box_pack_start) (gtk_box_pack_end): 
15880         * gtk/gtkfixed.c (gtk_fixed_put): 
15881         * gtk/gtklayout.c (gtk_layout_put):
15882         general fixups to container_add logic. always realize child if
15883         child->parent is realized, only map the child and queue a resize
15884         if child and child->parent are both visible.
15885
15886 Fri Apr 30 09:02:28 1999  Tim Janik  <timj@gtk.org>
15887
15888         * gtk/gtkwidget.c (gtk_widget_real_unrealize): use gtk_container_forall
15889         instead of gtk_container_foreach to walk and unrealize children, so
15890         composite children get also unrealized.
15891         (gtk_widget_real_show): don't call gtk_widget_map() if we don't need to.
15892         (gtk_widget_map): assert that the widget is visible (basic constrain).
15893         (gtk_widget_real_map): assert that the widget is realized (basic
15894         constrain).
15895
15896 Fri Apr 29 00:53:20 1999  Tim Janik  <timj@gtk.org>
15897
15898         * gtk/gtkbindings.c (gtk_pattern_spec_init): plugged a memory leak.
15899
15900 Tue May  4 09:32:08 1999  Owen Taylor  <otaylor@redhat.com>
15901
15902         * gtk/Makefile.am gtk/gtkrc.iso-8859-2: Add a gtkrc
15903         file for iso-8859-2 locales.
15904
15905         * configure.in (ALL_LINGUAS): ALL_LINGUAS update.
15906
15907 Tue Apr 27 16:38:32 1999  Owen Taylor  <otaylor@redhat.com>
15908
15909         * gtk/Makefile.am: Fix typo of static_sources for static_SOURCES.
15910          (Pointed out by andy@rz.uni-karlsruhe.de and others).
15911          Remove some suspicious and useless lines. 
15912
15913 Tue May  4 08:44:08 1999  Owen Taylor  <otaylor@redhat.com>
15914
15915         * gtk/gtkclist.c (gtk_clist_draw, draw_rows): Use 
15916         width,height = 0, 0 to mean - here to edge of window,
15917         instead of -1, -1, since the former is all we support.
15918
15919 Tue May  4 08:34:43 1999  Owen Taylor  <otaylor@redhat.com>
15920
15921         * gtk/gtkmain.c (gtk_main): Correctly free list nodes
15922         when removing from quit_functions list.
15923
15924 Tue Apr 27 14:17:16 1999  Tim Janik  <timj@gtk.org>
15925
15926         * gtk/gtkpacker.c (gtk_packer_size_request): remove unused variable.
15927
15928 Tue Apr 27 18:23:35 1999  Owen Taylor  <otaylor@redhat.com>
15929
15930         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): 
15931          When redrawing characters on non-visible entry, use appropriate
15932          '*' character. (Bug #1130 - Jean-Marc Jacquet <jm@littleigloo.org>)
15933
15934 Tue Apr 27 01:31:40 1999  Lars Hamann  <lars@gtk.org>
15935
15936         * gtk/gtkclist.c (drag_dest_cell): compute destination cell
15937         from drag coordinates.
15938         (gtk_clist_drag_data_received) (gtk_clist_drag_motion):
15939         use drag_dest_cell.
15940
15941         * gtk/gtktree (drag_dest_cell)
15942         (gtk_ctree_drag_data_received) (gtk_ctree_drag_motion): likewise.
15943         (Bug #1129)
15944
15945 Wed Apr 21 21:26:11 1999  Tim Janik  <timj@gtk.org>
15946
15947         * gtk/gtkitemfactory.c (gtk_item_factory_init): properly initialize
15948         translate_* fields.
15949         (gtk_item_factory_finalize): invoke translate_notify independant from
15950         translate_data.
15951         (gtk_item_factory_set_translate_func): likewise.
15952         (gtk_item_factory_destroy): only remove ifactory pointer from those
15953         widgets that belong to us (stupid me).
15954
15955 Mon Apr 19 12:05:31 1999  Owen Taylor  <otaylor@redhat.com>
15956
15957         * gtk/gtkrc.c (gtk_rc_style_init): Fixed leak of
15958         rc_style list when lookup succeeeds.
15959
15960 Thu Apr 15 01:11:24 1999  Lars Hamann  <lars@gtk.org>
15961
15962         * gtk/gtkctree.c (resync_selection): 
15963         * gtk/gtkclist.c (resync_selection): fixed undo_selection bug.
15964         * gtk/gtkclist.c (gtk_clist_button_release): fixed resync_selection
15965         bug.
15966
15967 Fri Apr  9 19:22:19 1999  Owen Taylor  <otaylor@redhat.com>
15968
15969         * gtk/gtkcolorsel.c gtk/gtkdnd.c gtk/gtkmenuitem.c:
15970         Add some missing GDK_THREADS_ENTER()/LEAVE around
15971         timeouts. (Patches from Sebastian Wilhelmi <wilhelmi@ira.uka.de>)
15972
15973 Thu Apr  8 20:10:33 1999  Tim Janik  <timj@gtk.org>
15974
15975         * gtk/gtkentry.c (gtk_entry_key_press): use gtk_widget_activate()
15976         rather than emit_by_name.
15977
15978         * gtk/gtkeditable.c (gtk_editable_insert_text): keep a reference
15979         on the widget across multiple signal emissions.
15980         (gtk_editable_delete_text): same here.
15981         (gtk_editable_class_init): set widget_class->activate_signal after
15982         editable_signals[ACTIVATE] has been created.
15983
15984 Wed Apr  7 22:59:47 1999  Owen Taylor  <otaylor@redhat.com>
15985
15986         * gtk/gtkpaned.c (gtk_paned_set_position): Don't clamp
15987         position here prematurely -- we might not have the
15988         right ->min_position and ->max_position yet.
15989
15990 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
15991
15992         * gtk/gtkselection.c gdk/gdkselection.c: (gtk_selection_request):
15993         Add error traps so if the other end of the connection
15994         dies, we survive.
15995
15996         * gtk/gtkselection.c (gtk_selection_notify): Clean
15997         up properly when selection property retrieval fails.
15998         
15999         * gtk/gtkselection.c (gtk_selection_request): Correctly
16000         reject SelectionRequest notifies where the handler
16001         returns no data.
16002
16003 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
16004
16005         * gtk/gtkdnd.c (gtk_drag_dest_leave): Only unhighlight
16006         when we've previously highlighted.
16007
16008         * gtk/gtkdnd.c (gtk_drag_dest_handle_event): Don't
16009         emit two "drag_leave" signals for Motif drops.
16010
16011         * gtk/gtkdnd.c (gtk_drag_source_handle_event): Send
16012         back the correct status messages when dropping from
16013         Motif onto a proxy window that is rejecting the
16014         drop.
16015
16016 Sat Mar 27 23:32:13 1999  Tim Janik  <timj@gtk.org>
16017
16018         * gtk/gtkarg.[hc]: added functions from GLE, gtk_arg_reset() to free
16019         the value and reset type to GTK_TYPE_INVALID, and gtk_arg_values_equal()
16020         to compare two argument values. added gtk_arg_to_valueloc() to set a
16021         variable from an arg through its location (pointer).
16022
16023         * gtk/gtkobject.[hc]: implemented gtk_object_get() in terms of
16024         gtk_object_arg_get() and gtk_arg_to_valueloc(), floats are collected
16025         as gfloat*, uchars are collected as guchar*, ints are collected as
16026         gint*, etc...
16027
16028 Mon Mar 29 17:45:47 1999  Owen Taylor  <otaylor@redhat.com>
16029
16030         * gtk/gtkaccelgroup.c gtk/gtkgtkbindings.c:
16031         Include <string.h> instead of <strings.h>.
16032
16033         * gtk/gtkstyle.c: Fix double include of gtkthemes.h
16034         (actually, a lot more duplicate includes occur if
16035          you trace through the sequence of #include's)
16036         gtk-jbb-990320-0: John Bley, jbb6@acpub.duke.edu
16037         
16038 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
16039
16040         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
16041         gtk-a-higuti-990322-[0-3]
16042
16043         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
16044         that was causing -DX_LOCALE not to work.
16045
16046         * gtk/gtkrc.c (gtk_rc_init):
16047         X_LOCALE will never have LC_MESSAGES defined
16048
16049 Thu Mar 25 12:38:31 1999  Tim Janik  <timj@gtk.org>
16050
16051         * gtk/gtkrc.c (gtk_rc_append_default_module_path): get $HOME from
16052         g_get_home_dir() (gtk-pmc-990123-0.patch.gz).
16053
16054         * gtk/gtkwindow.c (gtk_window_key_press_event): feature keypad up/down/
16055         left/right as well (gtk-michael-980726-0.patch.gz).
16056
16057         * gtk/gtklabel.[hc]: bunch of miscellaneous cleanups, such as s/0/NULL/
16058         for pointer values, use gchar instead of char. fixed uline allocation
16059         leaks, changed the allocation pattern so we use G_ALLOC_AND_FREE mem
16060         chunks instead of G_ALLOC_ONLY.
16061         (gtk_label_size_request): always alter requisition as passed and leave
16062         widget->requisition alone.
16063         (gtk_label_set_text): allow NULL strings.
16064         (gtk_label_new): likewise.
16065
16066 Wed Mar 24 09:24:03 1999  Tim Janik  <timj@gtk.org>
16067
16068         * gtk/gtkdrawingarea.[hc]: type/macro fixups.
16069
16070 Mon Mar 22 05:51:34 1999  Tim Janik  <timj@gtk.org>
16071
16072         * gtk/gtkbin.c (gtk_bin_draw): only redraw children that are visible
16073         *and* mapped (i.e. drawable).
16074         (gtk_bin_expose): only send exposes to drawable children.
16075
16076         * gtk/gtkbox.c (gtk_box_draw): only redraw children that are drawable.
16077         (gtk_box_expose): only send exposes to drawable children.
16078
16079         * gtk/gtkhscale.c (gtk_hscale_draw): 
16080         * gtk/gtkvscale.c (gtk_vscale_draw):
16081         hm, this is an ugly one. we first compute the size of our trough area
16082         here (window relative) and then check intersection with the draw_area
16083         which is parent relative because we're a NO_WINDOW widget, so we need
16084         to offset the trough area by allocation.x and allocation.y before the
16085         check. (this must not be done for the background area though, since
16086         that's already computed parent relative).
16087
16088 Mon Mar 22 00:41:39 1999  Lars Hamann  <lars@gtk.org>
16089
16090         * gtk/gtkclist.c (gtk_clist_unrealize): unmap clist if neccessary,
16091         unrealize title buttons.
16092
16093 Fri Mar 19 00:00:22 1999  Lars Hamann  <lars@gtk.org>
16094
16095         * gtk/gtkclist.c (gtk_clist_column_title_passive)
16096         (gtk_clist_column_title_active): 
16097         only connect/disconnect to GtkWidgetClass::event to block mouse events.
16098
16099         * gtk/gtkclist.c (vertical_timeout) (horizontal_timeout): 
16100         zero initialize event, removed superfluous gdk_window_get_pointer call
16101
16102         * gtk/gtklist.c (gtk_list_vertical_timeout)
16103         (gtk_list_horizontal_timeout): removed superfluous
16104         gdk_window_get_pointer call
16105
16106 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
16107
16108         * plugging problems reported by "Bruce Mitchener, Jr."
16109         <bruce@puremagic.com> due to a purify session.
16110
16111         * gtk/gtkstyle.c:
16112         (gtk_style_ref): 
16113         (gtk_style_unref): assert ref_count to be > 0.
16114
16115         * gtk/gtkclist.c (gtk_clist_set_cell_style): { 0 } initilaize
16116         the requisition.
16117         (gtk_clist_set_shift): likewise.
16118
16119         * gtk/gtklayout.c: introduce gtk_layout_finalize() to unref the
16120         adjustments.
16121
16122         * gtk/gtklist.c (gtk_list_horizontal_timeout): zero initialize the
16123         event before sending it and set send_event to TRUE (which needs to
16124         be done for *all* synthesized events).
16125         (gtk_list_vertical_timeout): likewise.
16126
16127         * gtk/gtktipsquery.c (gtk_tips_query_destroy): plug small memory
16128         leaks.
16129
16130         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set send_event
16131         to TRUE when synthesizing events.
16132
16133 [ *** end of merges from 1.2 *** ]      
16134         
16135 1999-11-21  Tor Lillqvist  <tml@iki.fi>
16136
16137         * gdk/gdkconfig.h: Remove, as this is a file generated by configure
16138         (or copied from gdkconfig.h.win32 on Win32, sigh).
16139
16140         * gdk/gdkprivate.h: Mark gdk_parent_root for export from DLL.
16141
16142         * gdk/gdk.c (gdk_keyval_convert_case): Fix typo.
16143
16144         * gdk/gdkgc.c (gdk_gc_alloc): Remove duplicated line.
16145
16146         * gdk/gdkconfig.h.win32: New file.
16147
16148         * gdk/win32/makefile.cygwin: Build just a static archive here.
16149
16150         * gdk/makefile.cygwin: New file. Get the win32-specific stuff
16151         for the DLL from the static archive built above.
16152
16153         * gdk/gdk.def: Moved here from the win32 subdirectory.
16154
16155         * gdk/win32/*: Adapt for the changed private struct organisation.
16156
16157         * gtk/makefile.{cygwin,msc}: Get gdk library from ../gdk now.
16158
16159 Sun Nov 21 16:44:35 1999  Stefan Jeske  <stefan@gtk.org>
16160
16161         * gtk/gtkspinbutton.c (gtk_spin_button_button_press): Added support 
16162         for wheel mice (buttons 4 and 5).
16163
16164 1999-11-18  Tor Lillqvist  <tml@iki.fi>
16165
16166         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Also for truecolor
16167         drawables use just the pixel field in the foreground and
16168         background GdkColor of the GdkGC.
16169
16170         gdk_gc_set_{fore,back}ground() are called in the GIMP with
16171         GdkColors containing uninitialized (red,green,blue) fields, and
16172         just the pixel field filled in, and furthermore in the
16173         visual-dependent format as returned by gdk_rgb_xpixel_from_rgb().
16174         It thus turns out that we really don't need to have the full
16175         GdkColor for fg and bg in GdkGCWin32Data after all. Will change
16176         it later to have just the pixel values.
16177
16178 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
16179
16180         * docs/gtkfaq.sgml: s/gtk_main_iteration/g_main_iteration/
16181
16182 Sat Nov 13 22:30:29 GMT 1999 Tony Gale  <gale@gtk.org>
16183
16184         * docs/gtkfaq.sgml: threads example from Erik Mouw.
16185         New question on GtkLabel background colors.
16186
16187         * docs/gtk_tut.sgml:
16188           - Correct the example code callback
16189             function definitions.
16190           - Update the gtkdial example code, from Frans van Schaik.
16191           - Update setselection.c to current API.
16192
16193         * examples/Makefile examples/*/*.c: Update to code
16194         listed in tutorial.
16195
16196 1999-11-10  Tor Lillqvist  <tml@iki.fi>
16197
16198         * gdk/win32/gdkfont-win32.c: Fix a couple of bugs. The Unicode
16199         subrange table (from the "Developing International Software for
16200         WIndows 95 and Windows NT" book) was missing the Hangul syllable
16201         block... Get the loaded font's charset correctly.
16202
16203         (Note that this, and the other *-win32.c files, still really are
16204         the old ones, the win32 subdirectory is not ready for compilation
16205         yet after the reorg.)
16206
16207 Wed Nov 10 17:26:49 GMT 1999 Tony Gale  <gale@gtk.org>
16208
16209         * gtk/gtkclist.c: Fix off-by-one bug in parameter
16210         check.
16211
16212 Wed Nov 10 12:12:03 1999  Owen Taylor  <otaylor@redhat.com>
16213
16214         * gdk/x11/gdkinput-{x11,xfree}.c: Call XFreeDeviceState()
16215         on results of XQueryDeviceState().
16216
16217 Mon Nov  8 16:40:43 1999  Owen Taylor  <otaylor@redhat.com>
16218
16219         * gtk/gtkwidget.c: Substitute gdkx.h => gdkprivate.h since
16220         we need to accesss only ->children. We need an accessor
16221         for the children.
16222
16223         * gtk/gtkhandlebox.c gtk/testgtk.c: Substitute G
16224         DK_ROOT_PARENT() => NULL, in call to gtk_window_get_pointer()
16225         to get rid of gdkx.h include.
16226         
16227         * gtk/gtkctree.c: Get rid of #include <gdk/gdkx.h>
16228         and random references to 'None'.
16229
16230         * gtk/gtkclist.c gtk/gtkeditable.c gtk/gtkpreview.c
16231         Get rid of unused #include <gdk/gdkx.h>
16232
16233         * gtk/gtkrc.c gtk/gtkmain.c: Get rid of #include <gdk/gdkx.h>
16234         gdkx.h is _X_ specific stuff. GDK_WINDOWING comes from
16235         gdkconfig.h.
16236
16237 1999-11-08  Tor Lillqvist  <tml@iki.fi>
16238
16239         * gdk/win32/gdkdraw.c
16240         * gdk/win32/gdkfont.c
16241         * gdk/win32/gdkgc.c: Various minor cleanups and bugfixes
16242         following yesterday's changes. (Unrelated to Owen's reorg.)
16243
16244 Mon Nov  8 16:18:25 1999  Owen Taylor  <otaylor@redhat.com>
16245
16246         * gdk/x11/gdkinput-gxi.c: Add missing include,
16247           fix GdkWindowPrivate => GdkDrawablePrivate.
16248
16249         * gdk/x11/gdkinputprivate.h: include <X11/Xlib.h>.
16250
16251         * gdk/x11/Makefile.am (xinput_sources): Add missing
16252         backslash to fix building with --with-xinput=none
16253
16254 Mon Nov  8 14:47:04 1999  Owen Taylor  <otaylor@redhat.com>
16255
16256         Move all X specific code into the x11/ directory.
16257         Aside from shuffling things around, did the following:
16258
16259        * gdk/gdkprivate.h gdk/gdk.h gdk/x11/gdkmain-x11.h: Add
16260          gdk_arg_context_* - a simple argument parsing system
16261          in the style of popt.
16262
16263        * gdk/gdkdrawable.[ch] gdk/gdkprivate.h gdk/gdkwindow.[ch]
16264          gdk/x11/gdkprivate-x11.h:
16265          Remove X specific stuff from GdkDrawable and GdkWindowPrivate - 
16266          add ->klass and ->klass_data fields. The klass_data
16267          field points to an auxilliary structure that is
16268          windowing system dependent.
16269
16270        * gdk/gdkfont.c: Make most of the measurement functions
16271          simply wrappers around gdk_text_extents().
16272
16273        * gdk/gdkfont.c gdk/gdkprivate.h gdk/x11/gdkfont-x11.c: Add a 
16274          _gdk_font_strlen() function that hides the weird
16275          behavior in gtk+-1.[02] where a string is interpreted
16276          differently for 8-bit and 16-bit fonts.
16277
16278        * gdk/gdkevents.c: Add a new function gdk_event_button_generate()
16279          to store common code for synthesizing double/triple
16280          press events.
16281         
16282        * gdk/gdkgc.[ch]: Virtualize in the same way as gdkdrawable.h.
16283          Make all the function that modify an existing GC
16284          simply wrappers around gdk_gc_set_values().
16285          
16286        * gdk/gdkcc.[ch]: Moved into x11/ directory in preparation
16287          for throwing out later.
16288
16289        * gdk/gdkfont.c gdk/gdkimage.c gdk/gdkcolor.c: Change GdkFontPrivate,
16290          GdkImagePrivate and GdkColormapPrivate to have a
16291          windowing system dependent part (GdkFontPrivateX etc.)
16292          that "derives" from the system-independent part.
16293
16294        * configure.in gdk/x11/Makefile.in gdk/x11/gdkinput*.c:
16295          Got rid of the included-source-files for XInput in
16296          favor of automake conditionals. (Which didn't exist
16297          when XInput support was originally added.)
16298
16299        * gdk/gdkrgb.c: Remove the visual id from the debugging
16300          statements since that is X11 specific; print out
16301          type/depth info instead.
16302          
16303
16304 Wed Nov  3 18:14:49 1999  Owen Taylor  <otaylor@redhat.com>
16305
16306         * gdk/x11/gdkfont-x11.c (gdk_font_load): Ref fonts when
16307         loading duplicates of hashed fonts.
16308
16309         * gdk/gdk.c (gdk_keysym_convert_case): rename
16310         gdk_XConvertCase to gdk_keysym_convert_case, allow
16311         results to be NULL in the GTK+ style.
16312
16313         * gdk/gdkcompat.h: Started compatibility header
16314         for renames.
16315
16316 1999-11-07  Tor Lillqvist  <tml@iki.fi>
16317
16318         * gdk/win32/gdkprivate.h: New font private structures, related to
16319         fontsets.
16320
16321         * gdk/win32/gdkfont.c: New functions gdk_font_list_new() and
16322         gdk_font_list_free(). On X11, will just be wrappers to
16323         XListFonts() and XFreeFontNames(). On Win32, the code previously
16324         in gtkfontsel.c is now here.
16325
16326         New function gdk_font_xlfd_create(). On X11 will get the FONT
16327         property of the font (for GDK_FONT_FONTs), or call
16328         XBaseFontNameListOfFontSet (for GDK_FONT_FONTSETs), on Win32
16329         builds a XLFD style name from the font information in the LOGFONT
16330         struct(s).
16331
16332         New function gdk_font_xlfd_free(), which correspondingly frees the
16333         string returned by gdk_font_xlfd_create().
16334
16335         Implement fontsets on Win32. Add a function that iterates over a
16336         wide char string and calls a callback function for each substring
16337         of wide chars from the same Unicode subrange (and thus probably
16338         available in the same real font).
16339
16340         Improve the XLFD emulation a bit.
16341
16342         * gdk/win32/gdkim.c (gdk_nmbstowchar_ts): Small bugfix.
16343
16344         * gdk/win32/gdkevents.c: Workaround for suspected bug on Win2k
16345         Beta3, WM_IME_CHAR messages don't seem to contain the composed
16346         multi-byte char as with the Active IMM on Win9x. Oh well, handle
16347         WM_IME_COMPOSITION with GCS_RESULTSTR instead, use
16348         ImmGetCompositionStringW() to get the composed Unicode chars.
16349
16350         * gdk/win32/gdkgc.c
16351         * gdk/win32/gdkdraw.c: Changes needed because of the font private
16352         struct changes.
16353
16354         * gdk/win32/gdk.def: Add the new functions.
16355
16356 1999-11-04  Tor Lillqvist  <tml@iki.fi>
16357
16358         * config.h.win32: Don't define HAVE_DIMM_H if MSC, as you have to
16359         get the Platform SDK to get <dimm.h>.
16360
16361         * gdk/win32/gdkevents.c: More event handling fixes and
16362         simplification. Never generate motion events with is_hint true. We
16363         used to do that on bogus grounds earlier. Windows sends
16364         WM_MOUSEMOVE messages on button events even if the mouse hasn't
16365         moved, ignore these.
16366
16367         * gdk/win32/gdkfont.c: Load all fonts as (pretended) fontsets.
16368
16369         * gdk/win32/gdkglobals.c
16370         * gdk/win32/gdkprivate.h: Define a typedef for the pointer to
16371         the TrackMouseEvent function, and use it.
16372
16373         * gdk/win32/gdkwindow.c: Terminate widechar string with a zero
16374         char before calling WideCharToMultiByte in order to get a string
16375         for the window title.
16376
16377         * gdk/win32/gdkdnd.c: Some more random hacking, ifdeffed out.
16378
16379         * gdk/win32/gdk.def: Remove obsolete functions.
16380
16381         * gdk/win32/makefile.{cygwin,msc}: Remove gdkcompat.{o,obj}. Add
16382         /nodefaultlib and /defaultlib switches.
16383
16384         * gtk/gtkrc.c: s/gwin_getlocale/g_win32_getlocale/.
16385
16386 1999-10-31  Tor Lillqvist  <tml@iki.fi>
16387
16388         * gdk/gdkkeysyms.h: Add new keysyms from X11R6.4 (including
16389         EuroSign).
16390
16391         * gdk/gdktypes.h: Add note about wchar_t not necessarily being the
16392         same type as GdkWChar, especially on Win32.
16393
16394         * gdk/win32/*.c: Change gdk_root_parent to be a pointer.
16395
16396         * gdk/win32/*.c: Assume all strings are UTF-8. Convert to Unicode
16397         before passing to Windows GDI for drawing etc. Convert to the
16398         system default codepage before passing to Windows as window
16399         titles.
16400
16401         * gdk/win32/gdkprivate.h: Add more fields to GdkWindowPrivate to
16402         support changing input locale on the fly.
16403
16404         * gdk/win32/gdkevent.c: Support input language (keyboard locale)
16405         on-the-fly changes. Convert incoming characters from the current
16406         codepage to Unicode (and then to a UTF-8 multi-byte string) based
16407         on the current input language. Use keysym<->Unicode mapping tables
16408         and functions borrowed from xterm sources.
16409
16410         Support IMEs (Input Method Editors) for CJK languages. On non-CJK
16411         editions of Win9x, use the ActiveX-based Active IMM (Input Method
16412         Manager) if available. IMEs and the Active IMM are available under
16413         the disguise of Chinese, Korean and Japanese support for IE and
16414         Outlook Express from "Windows Update" for Win98. On Win2k, the CJK
16415         support is present in all editions (as long as you install it).
16416
16417         Call DispatchMessage from gdk_events_queue() (and thus
16418         gdk_WindowProc()), instead of duplicating the code in
16419         gdk_WindowProc().
16420
16421         Reworked the grab handling and propagation code, factored out
16422         duplicated code snippets into separate functions. Other cleanups,
16423         too.
16424
16425         * gdk/win32/surrogate-dimm.h: Provide just the bits we need from
16426         the <dimm.h> header describing the Active IMM.
16427
16428         * gdk/win32/gdkfont.c: Pretend to support fontsets, but so far
16429         just do the same as for "single" fonts.
16430
16431         * gdk/win32/gdk.c: Call CoInitialize() (COM initialisation) from
16432         gdk_init_check, and CoUninitialize() from gdk_exit_func. Handle
16433         the new keysyms from gdkkeysyms.h.
16434
16435         * gtk/gtkfontsel.c (Win32): Load the font for the preview as a
16436         fontset, so that gtkentry uses wide characters.
16437
16438         * gtk/gtkrc.c (Win32): Get the locale with gwin_getlocale(). Call
16439         GTk+'s system directory "gtk+", not "gtk".
16440
16441 Sat Oct 30 13:17:18 BST 1999 Tony Gale <gale@gtk.org>
16442
16443         * docs/gtkfaq.sgml: FAQ update
16444
16445 1999-10-21  Tor Lillqvist  <tml@iki.fi>
16446
16447         * gdk/win32/gdkprivate.h: Add more font private data.
16448
16449         * gdk/win32/gdkfont.c
16450         * gdk/win32/gdkdraw.c: Revamped handling of multi-byte charset
16451         fonts and strings. Now works much better. You still have to
16452         have a correct font selected, though. No fontset emulation yet.
16453
16454 1999-10-19  Tor Lillqvist  <tml@iki.fi>
16455
16456         * gtk/maketypes.awk: Use G_OS_WIN32.
16457
16458         * gtk/gtk.def: Add some missing entry points. Also some non-public
16459         ones, but PyGTK porter claims to need them.
16460
16461         * gtk/makefile.{cygwin,msc}: Drop some unneeded headers from the
16462         built-in type generation.
16463
16464 1999-10-14  Tor Lillqvist  <tml@iki.fi>
16465
16466         * gdk/win32/gdkdraw.c (gdk_draw_text_wc): Don't use TextOutW for
16467         GDK_FONT_FONT fonts (which is all we have for now, we don't
16468         emulate fontsets). The X11 version uses plain XDrawString in that
16469         case, too. The string passed to gdk_draw_text_wc seems to be in
16470         fact (at least, when used by gtkentry and gtktext) either in a
16471         single-byte charset, or a DBCS. Not Unicode.
16472
16473         This fixes the problem in gtkfontsel, where even if you had
16474         selected a font with a non-Latin1 charset (windows-greek, for
16475         instance), the preview still used Latin-1 glyphs.
16476
16477         * gdk/win32/gdkfont.c (gdk_text_width_wc): Similar change. Don't
16478         use GetTextExtentPoint32W, use GetTextExtentPoint32A.
16479         (gdk_font_load): Recognize the demibold etc weights, even if we
16480         don't have the corresponding constants in the headers.
16481         (gdk_font_hash_insert): Use same hash mechanism as in the X11
16482         version. Should save font resources a bit, when we don't have
16483         multiple HFONTs for the same font.
16484
16485         * gdk/win32/gdkprivate.h: Add the names field as in the X11
16486         version.
16487
16488 1999-10-11  ERDI Gergo  <cactus@cactus.rulez.org>
16489
16490         * gdk/gdk.c (gdk_beep): Modified the XBell call to use the default
16491         X values
16492
16493 1999-10-09  ERDI Gergo  <cactus@cactus.rulez.org>
16494
16495         * gtk/gtktoolbar.h, gtk/gtktoolbar.c: Added horizontal icon/text
16496         layout support (as mentioned on
16497         http://www.jcinteractive.com/gnome-ui/software/widgets/)
16498
16499 Wed Oct  6 12:46:17 PDT 1999 Manish Singh <yosh@gimp.org>
16500
16501         * gtk/fnmatch.c
16502         * gtk/gtkfilesel.c: s/G_HAVE_CYGWIN/G_WITH_CYGWIN/
16503
16504 1999-10-05  Jesus Bravo Alvarez  <jba@pobox.com>
16505
16506         * configure.in (ALL_LINGUAS): Added Galician (gl)
16507
16508 1999-10-05  Tor Lillqvist  <tml@iki.fi>
16509
16510         * gdk/win32/*.[ch]: Corresponding changes as in X11 backend.
16511
16512         * gdk/win32/gdkcompat.c: New file, actually provide an
16513         implementation for the deprecated functions. (Just temporarily.)
16514
16515         * gtk/gtkfilesel.c: Fix an #ifdef syntax botch.
16516
16517         * gtk/makefile.{cygwin,msc}: Update gdk_headers.
16518
16519         * gdk/win32/gdk.def gtk/gtk.def: Updates.
16520
16521 1999-10-05  Kjartan Maraas  <kmaraas@online.no>
16522
16523         * configure.in: Added "uk" to ALL_LINGUAS.
16524         
16525 Mon Oct  4 11:57:11 PDT 1999 Manish Singh <yosh@gimp.org>
16526
16527         * configure.in: correct checking for BeOS check
16528
16529         * gdk/gdktypes.h
16530         * gtk/fnmatch.c
16531         * gtk/gtkfilesel.c
16532         * gtk/gtkitemfactory.c
16533         * gtk/gtkmain.[ch]
16534         * gtk/gtkrc.c: use G_OS_WIN32 and G_HAVE_CYGWIN #defines
16535
16536 Mon Oct  4 16:16:53 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
16537
16538         * gtk/gtkrc.{bg,iso88591[345]}: add gtkrc files for some new charset
16539         encodings: iso-8859-13 (for Lithuanian), iso-8859-14 (used by celtic
16540         languages), iso-8859-15 (used in Estonia) and microsoft-cp1251 (used
16541         by Bulgarian). 
16542
16543 Sun Oct  3 18:13:44 1999  Owen Taylor  <otaylor@redhat.com>
16544
16545         * gtk/gtkwidget.c (gtk_reset_shapes_recurse): 
16546         Fix a reference to window_private->destroyed.   
16547
16548         * gtk/gtkplug.c (gtk_plug_realize): Fix up a direct
16549         (ugly) setting of an internal GdkWindow member to use
16550         a _slightly_ cleaner macro.
16551
16552         * gdk/gdkprivate.h: Split GdkWindowPrivate into
16553         GdkDrawablePrivate and GdkWindowPrivate.
16554         Add extra macros for accessing GDK_DRAWABLE_ components.
16555
16556         * *.[ch]: Massive adjustments for the above, use the
16557         new macros in a lot of places.
16558
16559 Sun Oct  3 15:16:24 1999  Owen Taylor  <otaylor@redhat.com>
16560
16561         * gdk/gdktypes.h: Make GdkDrawable the base type,
16562         not GdkWindow.
16563
16564 Sun Oct  3 15:08:44 1999  Owen Taylor  <otaylor@redhat.com>
16565
16566         * gdk/gdkdraw.c (gdk_drawable_get_data): Added new function.
16567
16568 Sun Oct  3 14:26:15 1999  Owen Taylor  <otaylor@redhat.com>
16569
16570         * gdk/gxid* gdk/x11/gxid*: Move files into x11 subdirectory.
16571
16572 Sun Oct  3 14:16:23 1999  Owen Taylor  <otaylor@redhat.com>
16573
16574         * gdk/gdkdrawable.h: Include gdk/gdkdrawable.h with
16575         gdk/ prefix. (Pointed out by chak@is.tsukuba.ac.jp)
16576
16577         * configure.in gdk/Makefile.am x11/: create x-specific subdirectory.
16578
16579         * docs/gtk-config.1: Now autogenerated.
16580         * docs/Changes-1.4.txt: started
16581         
16582 1999-10-03  Tor Lillqvist  <tml@iki.fi>
16583
16584         * gdk/gdkimage.h gdk/gdkpixmap.h: Change GDK_WINDOWING_WIN32 usage
16585         to #ifdef also here.
16586
16587         * gdk/win32/*.h gdk/win32/*.c: Make corresponding changes as those
16588         Owen did to the X11 backend.
16589
16590         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Fix it again, don't use
16591         ScrollWindowEx when blitting inside a window, it can't be correct
16592         in the general case.
16593
16594         * gdk/win32/gdkevents.c: Don't handle WM_SIZING, handling
16595         WM_GETMINMAXINFO is easier.
16596
16597         * gdk/win32/gdkimage.c (gdk_image_new): Create new image with
16598         depth equal to the bitspixel value, not the visual's depth.
16599
16600         * gdk/win32/gdkvisual.c (gdk_visual_init): Set the visual's depth
16601         to 24 even if the bitspixel value is 32.
16602
16603         * gdk/gdkrgb.c (gdk_rgb_select_conv): After the above change, no
16604         need to check for depth==32 when bpp==32, depth will always be 24.
16605
16606 Fri Oct  1 18:03:36 1999  Owen Taylor  <otaylor@redhat.com>
16607
16608         * docs/Changes-1.4.txt: Started
16609         
16610         * gtk/Makefile.am (gdk_headers): Include all the new headers.
16611
16612         * gdk/*.h gdk/*.c: Split gdk.h into lots of itty-bitty little pieces.
16613         
16614         * gdk/gdkprivate.h gdk/gdkcc.c: Moved GdkColorContext private
16615         into C file.
16616         
16617         * gdkinput.h gdkinputprivate.h - renamed the internal gdkinput
16618         header to gdkinputprivate.h.
16619
16620         * gdk/gdk.h gdk/gdk.c: Removed gdk_time* functions which have been
16621         unused since before 1.2.
16622
16623 1999-09-30  Tor Lillqvist  <tml@iki.fi>
16624
16625         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): On Win32,
16626         expand possible hex escapes in the font family (put there by
16627         logfont_to_xlfd if the font name isn't a legal XLFD font family,
16628         mainly if it contains slashes). (gtk_font_selection_create_xlfd):
16629         On Win32, add hex escapes here, too.
16630
16631 Wed Sep 29 19:55:35 1999  Owen Taylor  <otaylor@redhat.com>
16632
16633         * */*.[ch]: Changed from #if GDK_WINDOWING == GDK_WINDOWING_X11
16634         to #ifdef GDK_WINDOWING_X11.
16635
16636 [ Merges from gtk-1-2 ]
16637
16638 Wed Sep  8 07:13:29 1999  Tim Janik  <timj@gtk.org>
16639
16640         * configure.in: fixed "GNU Make" check to pass with new make version
16641         3.77.95.
16642
16643 Fri Sep  3 16:04:41 1999  Tim Janik  <timj@gtk.org>
16644
16645         * gtk-config.in (--version): don't echo @GTK_VERSION@, but
16646         @GTK_MAJOR_VERSION@.@GTK_MINOR_VERSION@.@GTK_MICRO_VERSION@, so the
16647         AM_PATH_GTK() macros don't get confused by the -pre1.
16648
16649 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
16650
16651         * configure.in (REBUILD): Change check for perl5
16652           to check explicitely for v >= 5.002. (5.001
16653           does not work with our scripts.)
16654
16655 Wed Aug 25 15:45:46 1999  Tim Janik  <timj@gtk.org>
16656
16657         * configure.in: evaluate $PERL for the perl version check. added
16658         --disable-rebuilds to give the user an option to completely disable
16659         any source autogeneration rules.
16660
16661 Mon Aug 23 23:16:14 1999  Tim Janik  <timj@gtk.org>
16662
16663         * configure.in: evaluate $ac_make when checking for GNU Make.
16664
16665 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
16666
16667         * docs/Makefile.am: added generation.txt.
16668
16669         * Makefile.am: require automake 1.4, build README from README.in and
16670         INSTALL from INSTALL.in in dist-hook.
16671         
16672         * README.in:
16673         * INSTALL.in: new files to autogenerate README and INSTALL from.
16674
16675         * configure.in: figure whether we have GNU Make
16676
16677         * docs/generation.txt: minor additions/corrections.
16678
16679 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
16680
16681         * docs/gtkfaq.sgml: FAQ Update
16682
16683 July 30, 1999 Elliot Lee <sopwith@redhat.com>
16684         
16685         * configure.in: Fix autoconf warnings about cross compilation by
16686         trying to provide sane defaults for AC_TRY_RUN.
16687
16688 Fri Jul 16 22:20:21 PDT 1999 Manish Singh <yosh@gimp.org>
16689
16690         * ltconfig
16691         * ltmain.sh: upgrade to libtool 1.3.3
16692
16693 Thu Jul  8 11:30:18 1999  Owen Taylor  <otaylor@redhat.com>
16694
16695         * INSTALL: Indicate that the --with-glib= configure
16696         time flag is unsupported.
16697
16698 Mon Jul  5 20:36:03 1999  Owen Taylor  <otaylor@redhat.com>
16699
16700         * docs/generation.txt: Added a file that gives
16701         documenation about the autogeneration process for
16702         various autogenerated files.
16703         
16704 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
16705
16706         * configure.in (LIBS): Look for libgmodule in the
16707         right location.
16708
16709 Thu Jun 17 13:57:31 1999  Owen Taylor  <otaylor@redhat.com>
16710
16711         * docs/gtk_tut.sgml: Removed references to
16712         code examples in my directory on gtk.org as
16713         they should all be in the tutorial now.
16714
16715         * docs/gtk_tut.sgml: Added sources for dial-test
16716         and scribble-xinput programs that were previously
16717         missing.
16718
16719 Fri Jun  4 00:08:59 1999  Owen Taylor  <otaylor@redhat.com>
16720
16721         * TODO: Added entry about menu keyboard navigation, removed
16722         some finished items.
16723
16724 Mon May 31 00:11:24 1999  Owen Taylor  <otaylor@redhat.com>
16725
16726         * acinclude.m4: Standardize on func_dgettext
16727         not func_gettext, so that the checks for dgettext
16728         actually are paid attention to.
16729
16730 Wed May  5 10:47:54 1999  Owen Taylor  <otaylor@redhat.com>
16731
16732         * configure.in (LIBS): Add $INTLLIBS into $LIBS
16733         directly, rather than repeating the checks for
16734         gettext.
16735
16736         * INSTALL: Added information about gettext and
16737         NLS support.
16738
16739         * acinclude.m4 (LIBM): Check for dgettext, not
16740         just gettext. This should hopefully fix things wrt
16741         systems with old versions of GNU gettext installed.
16742
16743 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
16744
16745         * configure.in (LIBS): Look for libgmodule in the
16746         right location.
16747
16748 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
16749
16750         * autogen.sh: add --enable-maintainer-mode
16751
16752         * configure.in: set ACLOCAL="$ACLOCAL $ACLOCAL_FLAGS"
16753
16754 Wed Mar 24 23:03:49 CST 1999 Shawn T. Amundson <amundson@gtk.org>
16755
16756         * docs/gtk-config.1.in:
16757           docs/Makefile.am:
16758           configure.in: gtk-config is now generated.
16759
16760         * docs/gtk-config.1: Removed, now generated.
16761
16762 Thu Sep 23 17:59:59 1999  Tim Janik  <timj@gtk.org>
16763
16764         * gdk/gdkevents.c (gdk_event_translate): grr, even if Gdk doesn't
16765         handle CreateNotify itself, still put out a debuging message for
16766         --gdk-debug=events. made the ReparentNotify debugging message more
16767         verbose.
16768         wrap xcoords translation for ConfigureEvents into an error trap,
16769         a destroy event may already be pending, and in that case, the
16770         actuall coordinate values are not at all critical.
16771
16772 Sat Sep 18 22:24:15 1999  Owen Taylor  <otaylor@redhat.com>
16773
16774         * gdk/gdkcc.c: Stop leaking the color_hash all over
16775         the place. Simplify and improve the logic.
16776
16777 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
16778
16779         * gdk/gdk.h, gdk/gdkcolor.c: make return types (gint or gboolean)
16780         for prototypes and function implementations consistent (reported
16781         by Tomas Ogren).
16782
16783 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
16784
16785         * gdk/gdkevents.c (gdk_event_translate): tell if expose events have
16786         send_event set in debugging output.
16787         (gdk_compress_exposures): default initialize the event so we don't
16788         operate on bogus values (namely send_event).
16789
16790 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
16791
16792         * gdk/gdkwindow.c: When we receive an unexpected
16793         destroy notify on one of our windows, don't just
16794         warn about it, also mark our windows as destroyed.
16795
16796 Sun Sep  5 08:10:53 1999  Owen Taylor  <otaylor@redhat.com>
16797
16798         * gdk/gdkfont.c (gdk_font_hash_insert): Add
16799           name => font and name => fontset hashes. The 
16800           name => fontset hash is a _big_ win since we
16801           weren't previously caching fontsets at all and loading
16802           fontsets is expensive. The name => font hash
16803           is less of a win, but it does save us from doing
16804           repeated XQueryFont calls on the same font.
16805
16806         * gdk/gdkprivate.h (struct _GdkFontPrivate): Add a names
16807           list so we can remove font/fontset from hash.
16808
16809 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
16810
16811         * gdk/gdkproperty.c (gdk_atom_intern): Remove useless
16812           and slightly confusing test. [ XInternAtom (,,TRUE)
16813           will never return None ].
16814
16815 Sat Sep  4 08:39:26 1999  Owen Taylor  <otaylor@redhat.com>
16816
16817         * gdk/gdkwindow.c (gdk_window_set_geometry_hints)
16818           gdk/gdkwindow.c (gdk_window_set_hints):
16819
16820         Don't omit setting the properties if flags == 0 -
16821         there may be an existing set of properties there
16822         already. (Very old bug. Would it be better to
16823         delete the property instead?)
16824
16825         * gdk/gdkselection.c (gdk_selection_property_get): Fix 
16826           spelling error in comment.
16827
16828 Wed Sep  1 14:05:30 1999  Owen Taylor  <otaylor@redhat.com>
16829
16830         * gdk/gdkimage.c (gdk_image_new): Use gdk_error_trap_push()
16831           to avoid stomping over gdk_error_warnings.
16832
16833         * gdk/gdkimage.c (gdk_image_new): compute image->bpp
16834           as (bits_per_pixel + 7) / 8. This gives the same
16835           result as before for multiples of 8, but actually
16836           a "reasonable" value for 1bit or 4bit displays.
16837
16838 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
16839
16840         * gdk/Makefile.am: minor cleanups, strip spaces on build rules for
16841         GNU Make.
16842
16843 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
16844
16845         * gdk/gdkevents.c (gdk_event_translate): give a debugging note when
16846         discarding configure events.
16847
16848 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
16849
16850         * gdk/gdkpixmap.c (gdk_pixmap_unref): g_return_if_fail() the
16851         refcount is greater than zero.
16852
16853         * gdk/gdkwindow.c (gdk_window_unref): Likewise.
16854
16855         * gdk/gdkfont.c (gdk_font_unref): Likewise.
16856
16857         * gdk/gdkgc.c (gdk_gc_unref): Likewise.
16858
16859         * gdk/gdkdnd.c (gdk_drag_context_unref): Likewise.
16860
16861 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
16862
16863         * gdk/gdkproperty.c (gdk_property_get): Fix assumption
16864         that format 32 => sizeof(item) == 4. It really is
16865         sizeof(long).
16866
16867 Tue Jun 29 23:02:42 1999  Owen Taylor  <otaylor@redhat.com>
16868
16869         * gdk/gdk.c (gdk_x_error / gdk_x_io_error): Don't
16870         core dump at all on X IO errors, only core dump
16871         if --enable-debug for X errors.
16872
16873 Thu Jun 24 17:06:23 1999  Tim Janik  <timj@gtk.org>
16874
16875         * gdk/gdkevents.c (gdk_event_translate): removed old ""Got event for
16876         unknown window:" message. disabled ConfigureNotify discarding code,
16877         because it led to events being processed out of order.
16878
16879 Thu Jun 24 12:22:02 1999  Tim Janik  <timj@gtk.org>
16880
16881         * gdk/gdkglobals.c: preinitialize gdk_error_code to 0.
16882
16883         * gdk/gdkevents.c (gdk_event_send_client_message_to_all_recurse): since
16884         we export this function, supress error warnings and don't reset the
16885         error code in the first half of this function.
16886
16887         * gdk/gdk.c (gdk_x_error): set gdk_error_code to the actuall X error
16888         code (instead of just -1) so gdk_error_trap_pop() reveals something
16889         actually informative about the error that happened.
16890
16891         * gdk/*.c:
16892         don't rely on gdk_error_code being -1 if an error occoured, but just
16893         gdk_error_code != 0.
16894
16895 Thu Jun 24 11:50:07 1999  Tim Janik  <timj@gtk.org>
16896
16897         * gdk/gdkevents.c (gdk_event_apply_filters): advance the filter list
16898         pointer *before* invoking the filter function, so we at least don't
16899         crash if a filter is removed that is currently executed. window filters
16900         *really* need to be made truely reentrant at some point.
16901
16902 Mon Jun 14 11:10:15 1999  Tim Janik  <timj@gtk.org>
16903
16904         * gdk/gdkevents.c (gdk_event_translate): print the atom name in the
16905         PropertyNotify debug messages.
16906
16907 Wed May  5 22:51:06 1999  Owen Taylor  <otaylor@redhat.com>
16908         
16909         Patch from Sung-Hyun Nam <namsh@lgic.co.kr>
16910         
16911         * gdk/gdkim.c: Fix cut-and-paste errors for 
16912         x/y and PreeditAttributes/StatusAttributes.
16913
16914 Wed May  5 22:24:21 1999  Owen Taylor  <otaylor@redhat.com>
16915
16916         * gdk/gdkwindow.c (gdk_window_set_geometry_hints): Change
16917         G_MAXINT to 2^16 to alleviate overflow problems in
16918         various window managers.
16919
16920 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
16921
16922         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
16923         for fontsets.
16924
16925 Wed May  5 12:42:01 1999  Owen Taylor  <otaylor@redhat.com>
16926
16927         * gdk/gdkwindow.c (gdk_window_set_geometry_hints):
16928         Initialize size_hints.x and size_hints.y because kwm
16929         brokenly pays attention to them.
16930         (Bug #1181 -  Lars Heete <hel@admin.de>)
16931
16932 Wed May  5 11:38:56 1999  Owen Taylor  <otaylor@redhat.com>
16933
16934         * gdk/gdkrgb.c (gdk_rgb_choose_visual): Free the 
16935         return value of gdk_list_visuals(). 
16936         (Bug #1193 - Morten Welinder <terra@diku.dk>)
16937
16938 Tue May  4 11:12:56 PDT 1999 Manish Singh <yosh@gimp.org>
16939
16940         * gdk/gdkim.c (gdk_im_real_open): cast the return value of
16941         XSetIMValues to (void *) when comparing to NULL, to workaround
16942         the problem of some compilers barfing since older X headers don't
16943         have the prototype for it.
16944
16945 Mon Apr 19 10:11:12 1999  Owen Taylor  <otaylor@redhat.com>
16946
16947         * gdk/gdkcolor.c (gdk_colormap_new): Fix memory leak
16948         for pseudocolor where colormap->colors was double
16949         allocated.
16950
16951         * gdk/gdkcolor.c (gdk_colormap_alloc1): Store the
16952         color value in the hash table with the pixel filled
16953         in so when we do later hash table lookups, the color
16954         value is correct.
16955         
16956 Sun May  2 15:29:45 PDT 1999 Manish Singh <yosh@gimp.org>
16957
16958         * gdk/gdkdraw.c (gdk_draw_lines): check private->destroyed before
16959         making the call
16960
16961 Tue Apr 27 11:17:35 1999  Owen Taylor  <otaylor@redhat.com>
16962
16963         * gdk/gdkdnd.c (xdnd_set_{targets,actions}): Fix leak
16964         pointed out by Morten Welinder <terra@diku.dk>.
16965
16966 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
16967
16968         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
16969           default filter from the list
16970
16971 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
16972
16973         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
16974           default filter from the list
16975
16976 Fri Apr 16 20:41:43 PDT 1999 Manish Singh <yosh@gimp.org>
16977
16978         * gdk/gdk.c: #include "gdkkeysyms.h" for gdk_XConvertCase #defines
16979
16980         * gtk/gtkfontsel.c (gtk_font_selection_create_xlfd): use
16981         g_strdup_printf instead of calcing the length separately
16982
16983 Tue Apr 13 02:49:33 1999  Owen Taylor  <otaylor@redhat.com>
16984
16985         * gdk/gdkwindow.c: removed some silly #ifdef HAVE_CONFIG
16986         that we don't do in many other places. (Fixing duplicate 
16987         #include of config.h)
16988
16989         * gdk/gdkevents.c: include gdkinput.h _after_ config.h.
16990         Otherwise, #ifndef XINPUT_NONE check in the latter
16991         doesn't work. (Bug #546)
16992
16993 Sun Apr 11 14:38:03 1999  Tim Janik  <timj@gtk.org>
16994
16995         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): check for color
16996         "None" case insensitive.
16997
16998 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
16999
17000         * gdk/gdkselection.c: 
17001         Add error traps so if the other end of the connection
17002         dies, we survive.
17003
17004 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
17005
17006         * gdk/gdkdnd.c (gdk_drag_motion): Separate out the
17007         dest_xid field into two fields - one for the window
17008         to send in messages, one to indicate the last looked
17009         up window for caching purposes. This is needed, so
17010         that Leave messages get the correct window.
17011
17012 Mon Apr  5 13:21:30 1999  Owen Taylor  <otaylor@redhat.com>
17013
17014         * gdk/gdkevents.c (gdk_event_check, gdk_event_prepare):
17015         Fix warning created by people mucking around
17016         with the gsource API.
17017
17018         * gdk/gdkevents.c (gdk_io_invoke, gdk_input_add_full):
17019         Change mapping between GIOCondition and GdkInputCondition
17020         to match the way the Linux kernel does it. This should
17021         fix problems where closed pipes were no longer signalling
17022         GDK_INPUT_READ on systems with a native poll().
17023
17024 Mon Apr  5 17:11:57 1999  Owen Taylor  <otaylor@redhat.com>
17025
17026         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): Check 
17027         explicitly for the string "None" - it is in the XPM
17028         spec and some servers treat unknown colors in odd ways
17029         (like asking the user!)
17030
17031 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
17032
17033         * gdk/gdkevents.c: made "->" into a "." of previous change so
17034         it compiles
17035
17036 Thu Apr  1 18:41:25 1999  Owen Taylor  <otaylor@redhat.com>
17037
17038         * gdk/gdkevents.c (gdk_compress_exposures): Set the
17039         window field of the event structure before calling
17040         user filters.
17041
17042 1999-03-31  Federico Mena Quintero  <federico@nuclecu.unam.mx>
17043
17044         * gdk/gdk.c (gdk_init_check): Use False as the last argument to
17045         XInternAtom() here.  This is a particularly Old And Nasty(tm) bug.
17046
17047 Mon Mar 29 17:31:52 1999  Owen Taylor  <otaylor@redhat.com>
17048
17049         * gdk/gdkim.c (gdk_mbstowcs): Free the value of the
17050         intermediate text property - prevents major memory
17051         leak when gdk_use_mb.
17052         gtk-d3august-990311-0: Bj|rn Augustsson <d3august@dtek.chalmers.se>
17053
17054 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
17055
17056         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
17057         gtk-a-higuti-990322-[0-3]
17058
17059         * gdk/gdkfont.c (gdk_text_extents_wc): Make  work when
17060         sizeof(wchar_t) != sizeof (GdkWChar)
17061
17062         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
17063         that was causing -DX_LOCALE not to work.
17064
17065         * gtk/gtkrc.c (gtk_rc_init):
17066         X_LOCALE will never have LC_MESSAGES defined
17067
17068         * gdk/gdk.c (gdk_init_check):
17069         Remove --xim-preedit and --xim-status from argv properly.
17070
17071         * gdk/gdkim.c (gdk_ic_real_new): Add a gdk_flush() so
17072         that the client window is present on the X server
17073         before we pass it to the input method.
17074
17075 Tue Mar  9 10:46:49 1999  Owen Taylor  <otaylor@redhat.com>
17076
17077         * gdk/gdkdnd.c (motif_find_drag_window): Fix bug where
17078         if --display is specified on the command line, than
17079         the drag window will not be created on that display.
17080         
17081 Tue Mar  9 10:38:24 1999  Owen Taylor  <otaylor@redhat.com>
17082
17083         * gdk/gdkproperty.c (gdk_atom_intern): Fixed bug where
17084         lookups with only_if_exists == TRUE were inserting
17085         bogus values into the atom cache.
17086
17087 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
17088
17089         * gdk/gdkselection.c (gdk_selection_property_get): first XFree(t),
17090         then reset it to NULL.
17091
17092         * gdk/gdkcolor.c:
17093         (gdk_colors_free): 
17094         (gdk_colormap_free_colors): use colormap->colors[in_pixels[i]] as the
17095         key for g_hash_table_remove() in both functions, this prevents us
17096         from accessing possibly uninitialized portions of a GdkColor structure
17097         where we are only interested in its pixel value.
17098
17099 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
17100
17101         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
17102         font hash table, if we have a GdkFontPrivate entry for this font
17103         already, simply increment its reference count, provided by Olaf Dietsche
17104         <olaf.dietsche+list.gtk@netcologne.de>.
17105
17106 1999-09-21  Tor Lillqvist  <tml@iki.fi>
17107
17108         * gdk/win32/gdk.c (gdk_exit_func): Delete the gdk_DC when exiting,
17109         just to be sure.
17110
17111         * gdk/win32/gdkvisual.c (gdk_visual_init): Remove a couple of
17112         unused variables, leftovers from the X11 version.
17113
17114         * gdk/win32/rc/*.cur: Better cursors provided by Bernd Herd.
17115
17116         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): Only
17117         downcase fields on X11.
17118
17119 Mon Sep 20 13:17:39 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
17120         
17121         * configure.in,po/pt_BR.po: added Portuguese Brazilian file from
17122         Alex Sandro Queiroz e Silva <asandro@lcg.dc.ufc.br>
17123
17124 1999-09-17  Tor Lillqvist  <tml@iki.fi>
17125
17126         * gdk/win32/gdk.def: Add gdk_threads_mutex.
17127
17128         * gtk/makefile.msc: Correct path to libintl.
17129
17130         Thanks to Tomi Ollila and Bernd Herd: Fix some inconsistencies in
17131         use of gint vs. int, and gint vs. gboolean in headers and
17132         definitions. Use GtkType for the *_get_type functions. Note that
17133         these changes preserve binary compatibility.
17134
17135         * gdk/gdk.c
17136         * gdk/win32/gdk.c
17137         * gdk/gdk.h: Fix inconsistencies: gint vs int.
17138
17139         * gtk/gtkmain.c
17140         * gtk/gtkclist.c
17141         * gtk/gtkmenufactory.c
17142         * gtk/gtknotebook.c
17143         * gtk/gtkwidget.c: Fix inconsistencies, also gint
17144         vs. gboolean.
17145
17146         * gtk/gtkcolorsel.[ch]
17147         * gtk/gtkcombo.[ch]
17148         * gtk/gtkdrawingarea.[ch]
17149         * gtk/gtkgamma.[ch]
17150         * gtk/gtkhandlebox.[ch]
17151         * gtk/gtkhpaned.[ch]
17152         * gtk/gtkhruler.[ch]
17153         * gtk/gtkplug.[ch]
17154         * gtk/gtkpreview.[ch]
17155         * gtk/gtkruler.[ch]
17156         * gtk/gtksocket.[ch]
17157         * gtk/gtkstatusbar.[ch]
17158         * gtk/gtktoolbar.[ch]
17159         * gtk/gtkvbbox.[ch]
17160         * gtk/gtkvpaned.[ch]
17161         * gtk/gtkvruler.[ch]: Always use type GtkType for the *_get_type
17162         functions.
17163
17164         * gtk/gtkgamma.h: Fix bug, missing () in call of
17165         gtk_gamma_curve_get_type() in GTK_GAMMA_CURVE_CLASS. 
17166
17167 1999-09-14  Tor Lillqvist  <tml@iki.fi>
17168
17169         * gdk/gdkcolor.c (gdk_colormap_new)
17170         * gdk/win32/gdkcolor.c (gdk_colormap_new): Fix memory leak:
17171         colormap->colors was allocated twice.
17172
17173         * gdk/win32/gdk.c: Remove some unused stuff.
17174
17175         * gdk/win32/gdkcolor.c (gdk_colormap_sync): Initialize all of the
17176         colormap.
17177
17178         * gtk/gtkfontsel.c (gtk_font_selection_dialog_get_type)
17179         * gtk/gtklabel.h (gtk_label_get_type)
17180         * gtk/gtktipsquery.c (gtk_tips_query_get_type)
17181         * gtk/gtktypeutils.h (gtk_type_name): : Use GtkType
17182         in a couple of places, not guint.
17183
17184 Fri Sep 10 21:31:00 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
17185
17186         * configure.in,po/et.po: added Estonian language file
17187
17188 Wed Sep  1 14:36:12 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
17189
17190         * configure.in,po/da.po: added Danish file
17191
17192 Sun Aug 29 13:38:59 BST 1999 Tony Gale <gale@gtk.org>
17193
17194         * docs/gtkfaq.sgml: Minor FAQ Update
17195
17196 Sat Aug 28 14:34:37 BST 1999 Tony Gale <gale@gtk.org>
17197
17198         * docs/gtkfaq.sgml: FAQ update
17199
17200 1999-08-27  Tor Lillqvist  <tml@iki.fi>
17201
17202         Win32: Philippe Colantoni <colanton@aris.ss.uci.edu> suggests a
17203         way to get window contents continually refreshed while resizing. I
17204         didn't like the effects myself, so it's not on by default.
17205
17206         * gdk/win32/gdkprivate.h: New flag variable
17207         gdk_event_func_from_window_proc, FALSE by default.
17208
17209         * gdk/win32/gdk.c (gdk_init_check): Set above flag if the
17210         environment variable GDK_EVENT_FUNC_FROM_WINDOW_PROC is set, or we
17211         are passed --gdk-event-func-from-window-proc.
17212
17213         * gdk/win32/gdkevents.c (gdk_WindowProc): If above flag is set,
17214         and we have am event_func, call it instead of enqueing the event.
17215
17216 1999-08-23  Tor Lillqvist  <tml@iki.fi>
17217
17218         * gdk/win32/gdkevents.c (gdk_event_translate): Fix from Simon
17219         Kelley: Set expose_count in GdkEventExposes correctly.
17220
17221         * gdk/win32/gdkwindow.c: Remove dead code (#ifdef
17222         MULTIPLE_WINDOW_CLASSES).
17223
17224         * gdk/win32/gdkdraw.c (gdk_draw_line): Workaround from Hans Breuer
17225         for bug in NT, apparently NT *does* draw the end pixel, too, in
17226         LineTo with a one-pixel pen, so we don't have to do it ourselves.
17227
17228 1999-08-21  Tor Lillqvist  <tml@iki.fi>
17229
17230         Improvements by Hans Breuer: 
17231
17232         * gdk/win32/gdkwindow.c (RegisterGdkClass): New function
17233
17234         * gdk/win32/gdkwindow.c (gdk_window_new): Use it. Don't set the
17235         CS_?REDRAW flags as they cause lots of (late) redraws when "show
17236         window contents while dragging" is turned on. Allocate at least
17237         one unique class for every GdkWindowType. If support for single
17238         window-specific icons is ever needed (eg. Dialog specific), every
17239         such window should get its own class.
17240
17241 1999-08-19  Tor Lillqvist  <tml@iki.fi>
17242
17243         * gdk/win32/gdkgc.c (gdk_gc_new_with_values): Fix a cut&paste
17244         error that caused crashes.
17245
17246 1999-08-17  Tor Lillqvist  <tml@iki.fi>
17247
17248         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): When blitting inside one
17249         window, use ScrollWindowEx, and call UpdateWindow. This prevents
17250         bugs when for instance part of the window was outside the
17251         display. Thanks to Philippe Colantoni for finding and fixing this.
17252
17253 1999-08-16  Tor Lillqvist  <tml@iki.fi>
17254
17255         * gdk/win32/gdkdraw.c (gdk_draw_arc): Fix start and end radial
17256         endpoint calculations which were totally wrong. (A little RTFMing
17257         helps a lot ;-)
17258
17259         * gtk/makefile.{cygwin,msc}: Use libintl extracted from glibc
17260         from a separate directory, not from gettext, because of licensing
17261         issues (we want to use the LGPL version).
17262
17263         * README.win32: Mention the intl from glibc vs from gettext issue.
17264
17265 1999-08-13  Tor Lillqvist  <tml@iki.fi>
17266
17267         * gdk/win32/gdkevents.c (gdk_event_translate): Fix a couple of bugs
17268         in the key event handling: Now AltGr chars work again. Also,
17269         now Alt-digits are passed up as well as Control-digits.
17270         Pass keypad plus and minus as normal plus and minus.
17271
17272 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
17273
17274         * docs/gtkfaq.sgml: FAQ Update
17275
17276 1999-07-25  Tor Lillqvist  <tml@iki.fi>
17277
17278         * README.win32
17279         * config.h.win32: Add HAVE_WINTAB. Undefine it if bulding without
17280         the Wintab SDK.
17281
17282         * gdk/win32/gdkinput.c: Hack some more. Still doesn't quite work
17283         OK, but getting closer. Guard against bogus tilt data from Wacom
17284         ArtPad II with the 3.40 driver. Add ifdefs for HAVE_WINTAB to
17285         enable easier building without Wintab.
17286
17287         * gdk/win32/gdkinput.h
17288         * gdk/win32/gdkevents.c 
17289         * gdk/win32/gdkwindow.c: Minor changes related related to above.
17290         
17291         * gdk/win32/gdkvisual.c: Simplify a lot, remove leftovers from X11
17292         code. As we have just one visual on Win32, no sense to have it in a
17293         table, and no need for the hash table.
17294
17295         * gdk/win32/rc/cursor*.cur: Edit some of the cursors a bit to look
17296         better on white background.
17297
17298 1999-07-21  Tor Lillqvist  <tml@iki.fi>
17299
17300         * README.win32: Update gcc build instructions. Mention gettext is
17301         GPL.
17302
17303         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Get correct
17304         supported cursor size with GetSystemMetrics.
17305
17306         * gdk/win32/gdkfont.c
17307         * gtk/gtkfontsel.c: Guard against some font weight and charset
17308         symbols being undefined (in mingw32 headers).
17309
17310         * gdk/win32/makefile.cygwin
17311         * gtk/makefile.cygwin
17312         * gtk/gtkthemes.c: No longer need to have differently named
17313         gcc-built DLLs when using gcc-2.95 and -fnative-struct.
17314
17315 hu Jul 15 13:33:15 BST 1999 Tony Gale <gale@gtk.org>
17316
17317         * docs/gtkfaq.sgml: Long awaited FAQ update.
17318
17319 1999-07-15  Tor Lillqvist  <tml@iki.fi>
17320
17321         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Implement
17322         it. Obscure bit manipulation needed.
17323
17324         * gdk/win32/gdkevents.c: Logging.
17325         
17326         * gtk/gtkthemes.c (gtk_theme_engine_get): (Win32) Use new DLL naming
17327         style (file name include compiler name) for theme engines.
17328
17329 1999-07-13  Tor Lillqvist  <tml@iki.fi>
17330
17331         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Less logging verbiage.
17332
17333         * gdk/win32/gdkevents.c: Fix long-standing bug in key
17334         events. The key.string wasn't zero-terminated, still we strdup'ed
17335         it in gdk_event_copy(). Synthesize crossing events for button
17336         events before possible propagation.
17337
17338         * gdk/win32/gdkwindow.c: Log gdk_window_set_title.
17339
17340         * gdk/win32/makefile.cygwin
17341         * gtk/makefile.cygwin: Use new DLL naming style for the
17342         GCC-compiled ones.
17343
17344         * gdk/win32/makefile.msc
17345         * gtk/makefile.msc: Cosmetics mostly.
17346
17347         * gtk/gtk.def: Add missing entry points.
17348
17349         * gtk/gtksocket.c: Add dummy gtk_socket_get_type() for Win32.
17350
17351 1999-07-09  Tor Lillqvist  <tml@iki.fi>
17352
17353         * gdk/win32/gdkdraw.c (gdk_draw_arc): Don't draw anything if width
17354         or height is zero. Don't print a warning if Pie or Arc fails, they
17355         always fail (?) for very narrow ellipses.
17356
17357         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Call InvalidateRgn for
17358         the part or the destination window corresponding to source area
17359         outside of the source drawable's boundary.
17360
17361         * gdk/win32/gdkdraw.c (gdk_draw_lines, gdk_draw_polygon): Don't do
17362         anything if less than two points.
17363
17364         * gdk/win32/gdkselection.c (gdk_selection_owner_get): Always
17365         return NULL. Gtk cut-and-paste inside a single program works
17366         better this way. (It always gets the clipboard contents from
17367         Windows, not from its own copy, which is cleared anyway. I can't
17368         say I fully understand what happens... Emulating the X selection
17369         and property stuff is a bit of a mess.)
17370
17371         * gdk/win32/gdkevents.c
17372         * gdk/win32/gdkproperty.c: A bit more verbose logging.
17373
17374         * gdk/win32/gdkregion.c: Fix some memory leaks (temporary regions
17375         that never got deleted). Revamp gdk_region_shrink.
17376
17377         * gdk/win32/gdkregion.c: Fix memory leak, delete temporary regions
17378         after use.
17379
17380         * gtk/gtk.def: Add some missing entry points.
17381
17382         * gtk/gtkrc.c: Strip trailing directory separator from pixmap path
17383         component.
17384
17385 1999-07-04  Tor Lillqvist  <tml@iki.fi>
17386
17387         * gdk/win32/gdkevents.c (gdk_event_translate): Handle
17388         Control-digits specially.
17389
17390 1999-07-03  Tor Lillqvist  <tml@iki.fi>
17391
17392         * gtk/makefile.{cygwin,msc}: New pthreads version. Use gettext.
17393
17394 1999-06-28  Tor Lillqvist  <tml@iki.fi>
17395
17396         * gdk/win32/gdkimage.c (gdk_image_get): bpl was set wrong for
17397         bitmaps, should be multiple of 4. (Thanks to Hans Breuer for
17398         finding this.)
17399
17400 1999-06-01  Jose H Mercado  <jmercado@mit.edu>
17401
17402         * gtk+.spec.in: Corrected some typos in files section.
17403         
17404 1999-06-15  Tor Lillqvist  <tml@iki.fi>
17405
17406         * README.win32: Mention using GNU gettext.
17407         * config.h.win32: Enable NLS stuff.
17408         * gtk/makefile.msc: Use GNU gettext.
17409         * gdk/win32/gdkdnd.c: Minor header reorg.
17410         * gdk/win32/{gdkevents,gdkwindow}.c: No semantic changes, mainly
17411         cosmetics.
17412         * gtk/gtkrc.c (Win32): Make get_gtk_sysconf_directory() public.
17413         * gtk/gtkmain.c (Win32): Use it in bindtextdomain() call.
17414
17415 Wed Jun  2 11:44:25 PDT 1999 Manish Singh <yosh@gimp.org>
17416
17417         * acinclude.m4
17418         * config.guess
17419         * config.status
17420         * ltconfig
17421         * ltmain.sh: upgrade to libtool 1.3.2 (BeOS changes merged)
17422
17423 1999-05-30  Tor Lillqvist  <tml@iki.fi>
17424
17425         * gdk/win32/gdkwindow.c: AdjustWindowRectEx2 renamed to
17426         SafeAdjustWindowRectEx. Don't override all calls to
17427         AdjustWindowRectEx by it, but use it only in two places: When
17428         creating a new top-level window and when moving a top-level
17429         window.
17430
17431         Use screen coordinate rectangle, not client rectangle, in
17432         gdk_window_move. Thus SafeAdjustWindowRectEx will do its job only
17433         when we try to place a window so that the decoration (mainly,
17434         title bar) isn't visible.
17435
17436         These changes fix the bug that showed up for instance as the
17437         GIMP's saved top-level windows moving right and down (by an amount
17438         equal to the window decoration) for each session. This bug showed
17439         up also in testgtk's "Saved Position".
17440
17441         gdk_window_resize also redone a bit.
17442
17443 1999-05-25  Tor Lillqvist  <tml@iki.fi>
17444
17445         * gtk/testgtkrc: Add (commented out) Windows-style theme
17446         include line.
17447
17448         * gdk/win32/gdk.def,gtk/gtk.def: Add some missing entry points.
17449
17450 1999-05-18  Tor Lillqvist  <tml@iki.fi>
17451
17452         * gdk/win32/makefile.{cygwin,msc}: Copy our gdkprivate.h and
17453         gdkx.h to a gdk subdirectory, so that applications can include
17454         these with <gdk/*.h> without trouble.
17455
17456         * gdk/win32/gdkimage.c (gdk_image_new_with_depth): Code simplified.
17457         (gdk_image_destroy): Plug resource leak, some GdkImages didn't
17458         have their bitmap destroyed.
17459
17460         * gdk/win32/gdk.def: Add gdk_root_parent.
17461
17462 Wed May 12 03:00:56 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
17463
17464         * configure.in
17465           gtk-config.in
17466           ltconfig
17467           ltmain.sh     
17468           gtk/Makefile.am: changes to compile nicely (with xlib) 
17469           on BeOS
17470
17471 Sat May  1 15:04:42 PDT 1999 Manish Singh <yosh@gimp.org>
17472
17473         * acinclude.m4
17474         * config.guess
17475         * config.sub
17476         * ltconfig
17477         * ltmain.sh: upgrade to libtool 1.3
17478
17479 Fri Apr 30 13:38:16 1999  Lars Hamann  <lars@gtk.org>
17480
17481         * gtk/gtkclist.c:
17482         * gtk/gtkctree.c: merges from gtk-1-2
17483
17484 1999-04-25  Tor Lillqvist  <tml@iki.fi>
17485
17486         Support added for building using a GNU toolchain on Win32,
17487         gcc -mno-cygwin (egcs-1.1.2) on cygwin-b20.1.
17488
17489         * gdk/win32/makefile.cygwin gtk/makefile.cygwin: New files.
17490         * config.h.win32: Changes for gcc.
17491         * gdk/gdkrectangle.c: Include gdk.h as <gdk/gdk.h>.
17492         * gdk/gdkcolor.c: config.h.win32 already defines strcasecmp.
17493         * gdk/win32/gdkconfig.h: Only the MS compiler has wctype.h.
17494         * gdk/win32/gdkdnd.c: Protect (unused) OLE2 stuff better.
17495         Protect shl stuff unavaiilable with mingw32 headers.
17496         * gdk/win32/gdkevents.c: Fix typo.
17497         * gdk/win32/gdkglobals.c: Use GDKVAR here also for gcc.
17498         * gdk/win32/gdkim.c: Use OEM code page for multibyte chars. (?)
17499         * gdk/win32/gdkinput.c: Use __try __except only with the MS compiler.
17500         * gdk/win32/gdkprivate.h: Make up for some stuff missing from
17501         the mingw32 headers.
17502         * gdk/win32/makefile.msc: Use latest Wintab kit and glib.
17503         * gtk/gtkfilesel.c: Include <glib.h> early, to get stat->_stat
17504         definition on Win32. Test for NATIVE_WIN32, not _MSC_VER.
17505         * gtk/gtkfontsel.c: Protect CHARSET redefinition on Win32.
17506         Test for NATIVE_WIN32, not _MSC_VER.
17507         * gtk/gtkmain.c: No use warning about developer version on Win32,
17508         there aren't any non-developer versions anyhow.
17509         * gtk/gtkrc.c: Test for NATIVE_WIN32, not _MSC_VER.
17510         * gtk/makefile.msc: Use pthread from another directory. Minor other
17511         changes. 
17512
17513 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
17514
17515         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
17516           default filter from the list
17517
17518 Mon Mar  8 12:52:53 1999  Owen Taylor  <otaylor@redhat.com>
17519
17520         * gtk/gtkwidget.c (gtk_widget_grab_default): Add a warning
17521          when gtk_widget_grab_default() is called for a widget that
17522          is not within a GtkWindow.
17523
17524 Sat Apr 10 13:52:54 BST 1999  Tony Gale <gale@gtk.org>
17525
17526         * docs/gtk_tut.sgml, examples/clist.c: use a
17527           scrolled window in the clist example. Minor
17528           tutorial fixes.
17529
17530 Fri Apr  2 09:19:20 BST 1999  Tony Gale <gale@gtk.org>
17531
17532         * docs/gtk_tut.sgml: Style check from David King
17533           <dking@youvegotmail.net>
17534
17535 1999-03-30  Pavel Machek  <pavel@artax.karlin.mff.cuni.cz>
17536
17537         * gtk/gtkfontsel.c (gtk_font_selection_get_fonts): Make code
17538         compile with unknown value of GDK_WINDOWING
17539
17540 1999-03-28  Raja R Harinath  <harinath@cs.umn.edu>
17541
17542         * gdk/Makefile.am (gdkconfig.h): Make sure `gdkconfig.h' exists
17543         after the rule is fired.
17544         (install-exec-local): Install gdkconfig.h only if the contents are
17545         different from the currently installed gdkconfig.h.
17546
17547 1999-03-26  Raja R Harinath  <harinath@cs.umn.edu>
17548
17549         * gdk/Makefile.am (configexecincludedir): Rename from 
17550         configincludedir so that gdkconfig.h will be installed 
17551         as part of `make install-exec'. 
17552
17553 Fri Mar 19 16:50:33 PST 1999 Manish Singh <yosh@gimp.org>
17554
17555         * acinclude.m4
17556         * config.guess
17557         * config.sub
17558         * ltconfig
17559         * ltmain.sh: upgrade to libtool 1.2f
17560
17561         * autogen.sh: libtool is not required to autogen gtk+
17562
17563         * acconfig.h: remove WITH_SYMBOL_UNDERSCORE (not explictly
17564         needed)
17565
17566 1999-03-18  Tor Lillqvist  <tml@iki.fi>
17567
17568         * gdk/gdktypes.h: Merge in Win32 version: Define macro GDKVAR for
17569         declaring gdk variables exported/imported from the DLL. New image
17570         type enum, GDK_IMAGE_SHARED_PIXMAP, for gdk_imlib. New drag and
17571         drop protocol enums, GDK_DRAG_PROTO_WIN32_DROPFILES and
17572         GDK_DRAG_PROTO_OLE2.
17573
17574         * gdk/gdk.h: Merge in Win32 version: Two new functions,
17575         gdk_pixmap_create_on_shared_image and gdk_image_bitmap_new. So far
17576         declared only for the Win32 version, but could be in the X11
17577         version as well. (Needed for a Xlib-less gdk_imlib.)
17578         gdk_color_hash should have only one parameter. Declare
17579         gdk_threads_mutex with GDKVAR.
17580         
17581         * gdk/gdkcolor.c (gdk_color_hash): A hash function should have
17582         just one parameter.
17583
17584         * gdk/gdkimage.c (gdk_image_get): Initialize bpp correctly. Bytes
17585         per pixel, not bits.
17586
17587         * gdk/gdkrgb.c: Mingle includes somewhat. (gdk_rgb_select_conv):
17588         Fetch bpp (which means bits-per-pixel here) from another place on
17589         Win32. Accept also depth==32 (which we might get on Win32) with
17590         bpp==32.
17591
17592         * gtk/{gtkclist,gtkctree,gtkdnd,gtkditable,gtkfontsel,
17593         gtkhandlebox,gtklayout,gtkmain,gtkplug,gtkpreview,gtkrc,
17594         gtkselection,gtksocket,gtkstyle,gtkwidget,gtkwindow}.c:
17595         Include gdx.h from "gdkx.h", not "gdk/gdkx.h", as gdkx.h will be
17596         in the backend-dependent directory, not in the common gdk
17597         directory.
17598
17599         * gtk/testgtk.c: Ditto. Also, don't use ../gdk path to gdk
17600         headers.
17601
17602 Wed Mar 17 05:06:49 1999  Tim Janik  <timj@gtk.org>
17603
17604         * gtk/gtkmain.c (gtk_init_check): tell people that they don't really
17605         want to use the Gtk+ devel version (which is true, and yes - even i am
17606         currently working with the 1.2.x branch). so everyone reading this, you
17607         probably want to issue
17608         cvs checkout -r glib-1-2 glib
17609         and
17610         cvs checkout -r gtk-1-2 gtk+
17611         as your next two comands.
17612
17613 Wed Mar 17 02:49:32 1999  Tim Janik  <timj@gtk.org>
17614
17615         * configure.in: build gtkcompat.h from gtkcompat.h.in instead of
17616         gtkfeatures.h from gtkfeatures.h.in, require GLib 1.3.0.
17617
17618         * gtk/gtkcompat.h.in: combined gtkcompat.h and gtkfeatures.in in this
17619         file. strongly deprecated the GTK_HAVE_* macros, we provide
17620         GTK_CHECK_VERSION() for people that need to check for certain
17621         Gtk+ versions.
17622
17623         * gtk/gtkcompat.h: removed this from CVS.
17624         * gtk/gtkfeatures.h.in: removed this from CVS, gtkfeatures.h was a bad
17625         idea right from the start, it just didn't seem like that back then.
17626
17627 Wed Mar 17 01:46:28 1999  Tim Janik  <timj@gtk.org>
17628
17629         * merges from gtk-1-2:
17630
17631 Tue Mar 16 17:43:33 1999  Tim Janik  <timj@gtk.org>
17632
17633         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc_string): ensure the
17634         item factory class has been created.
17635         (gtk_item_factory_parse_rc): likewise.
17636
17637         * gtk/gtkmenu.c:
17638         keep proper references for old_active_menu_item.
17639         (gtk_menu_reparent): unset the usize of the new parent,
17640         so the menu can sanely be size requested and we don't get nasty screen
17641         artefacts upon next reparentation.
17642         (gtk_menu_motion_notify): set send_event to TRUE if we synthesize an
17643         enter notify. only synthesize enter notifies if the pointer really is
17644         inside the event window.
17645         (gtk_menu_popdown): use gtk_menu_shell_deselect().
17646         (gtk_menu_popup): move the background setting stuff into
17647         gtk_menu_tearoff_bg_copy() so it can be called from other places as well.
17648
17649         * gtk/gtkmenushell.c (gtk_menu_shell_button_press): use
17650         gtk_menu_shell_select_item() to select the new item.
17651         (gtk_menu_shell_deselect): export this function, so gtkmenu.c can
17652         do the right thing for deselection as well.
17653
17654 Sat Mar 15 20:10:33 1999  Tim Janik  <timj@gtk.org>
17655
17656         * gtk/gtkwidget.[hc]:
17657         (gtk_widget_accelerators_locked): return whether a widget's accelerators
17658         are locked.
17659
17660         * gtk/gtkmenu.c (gtk_menu_key_press): don't remove or install new or
17661         existing accelerators if the widget's accelerators are locked.
17662
17663 Sat Mar 14 19:44:05 1999  Tim Janik  <timj@gtk.org>
17664
17665         * gtk/gtkitemfactory.[hc]: allow managing of foreign menu items.
17666
17667         * gtk/gtkmenu.c: truely forward key press and key release events to
17668         the menu widget from the toplevel or tearoff window. we can't simply
17669         connect to that, we need to stop further processing of the events as
17670         well.
17671
17672 Sat Mar 13 13:14:17 1999  Tim Janik  <timj@gtk.org>
17673
17674         * gtk/gtkmenu.c:
17675         (gtk_menu_key_press): pass event->keyval, event->state to
17676         gtk_accelerator_valid, instead of event->keyval twice.
17677         refuse to install single letter accelerators for menus that use
17678         single letter shortcuts.
17679
17680         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): use
17681         gtk_menu_ensure_uline_accel_group().
17682
17683         * gtk/gtkmenu.[hc]: added gtk_menu_ensure_uline_accel_group()
17684         which will always return an uline accel group, made
17685         gtk_menu_get_uline_accel_group() return NULL if the group isn't
17686         yet created.
17687
17688 Mon Mar 15 01:03:27 1999  Lars Hamann  <lars@gtk.org>
17689
17690         * gtk/gtkclist.h (struct _GtkCListColumn): added button_passive flag.
17691
17692         * gtk/gtkclist.c (gtk_clist_column_title_passive):
17693         Leave button sensitive, trap  button_press, button_release,
17694         motion_notify, enter_notify and leave_notify events instead.
17695         (gtk_clist_column_title_active): disconnect event handler.
17696         (gtk_clist_drag_data_get): fixed memory leak. Reported by
17697         Guillaume Laurent <glaurent@worldnet.fr>
17698
17699 Wed Mar 10 23:49:55 1999  Lars Hamann  <lars@gtk.org>
17700
17701         * gtk/gtklayout.c (gtk_layout_adjustment_changed): fixed a few
17702         width/height mixups.
17703
17704         * gtk/gtkctree.c (tree_delete): emit an tree_unselect_row signal
17705         if needed.
17706
17707 Wed Mar 10 00:11:32 1999  Tim Janik  <timj@gtk.org>
17708
17709         * gtk/testgtk.c (create_item_factory): unref the item factory after
17710         window's destruction.
17711
17712         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): keep a reference
17713         count on the menu shell around the menu item's activation, since the
17714         signal emission may cause menu shell destruction.
17715
17716         * gtk/gtkitemfactory.c:
17717         the previous code leaked one accel group per menu. we use
17718         gtk_menu_get_uline_accel_group() now to fix that, and with that
17719         also create the underline accelerator group of the menus only if
17720         required (i.e. an underline accelerator has been specified).
17721         (gtk_item_factory_construct):
17722         (gtk_item_factory_create_item): removed code that would create an
17723         extra accel group for the menu (and leak references).
17724         (gtk_item_factory_create_item): adapted the underline accelerator
17725         installation code to properly feature gtk_menu_get_uline_accel_group().
17726
17727         * gtk/gtkmenu.[hc]: added gtk_menu_get_accel_group() to retrive
17728         menu->accel_group, this may return NULL if the accelerator group
17729         hasn't been set yet.
17730         added gtk_menu_get_uline_accel_group() to retrive the underline
17731         accelerator group of the menu, this will be created on demand
17732         and proper care is taken about its reference count.
17733
17734         * gtk/gtkitemfactory.h:
17735         * gtk/gtkitemfactory.c:
17736         dumped the approach of keeping a widgets by action list on the
17737         factory since the factory<->widget destroy negotiation didn't work
17738         and would be hard to get going at all. instead we keep a list of
17739         GtkItemFactoryItem items on the factory (GtkItemFactoryItems are
17740         persistant throughout a program's life time).
17741         also, i removed the static const gchar *key_* variables, and made
17742         them inline strings (they weren't actually used anyways).
17743         (gtk_item_factory_add_item): update ifactory->items.
17744         (gtk_item_factory_destroy): destroy ifactory->items (and remove
17745         the item factory pointer from the remaining ifactory widgets).
17746         (gtk_item_factory_get_widget_by_action): walk the GtkItemFactoryItem
17747         list to find the widget.
17748         (gtk_item_factory_get_item): new function that works around
17749         gtk_item_factory_get_widget() limitations, this function will only
17750         return menu items, even for <Branch> entries.
17751
17752 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
17753
17754         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
17755         font hash table, if we have a GdkFontPrivate entry for this font
17756         already, simply increment its reference count, provided by Olaf Dietsche
17757         <olaf.dietsche+list.gtk@netcologne.de>.
17758
17759         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
17760         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
17761
17762 Sun Mar  7 06:13:29 1999  Tim Janik  <timj@gtk.org>
17763
17764         * gtk/gtkcontainer.c:
17765         (gtk_container_add_with_args):
17766         (gtk_container_addv):
17767         (gtk_container_add): before adding a child to a conatiner, make sure
17768         it is (default) constructed, this is neccessary because under certain
17769         circumstances the child will get relized and mapped immediatedly, in
17770         which case it has to be constructed already.
17771
17772 Mon Mar  1 17:58:21 1999  Tim Janik  <timj@gtk.org>
17773
17774         * gtk/gtksignal.c (gtk_signal_connect_by_type): count object_signal
17775         values > 1 as TRUE also.
17776
17777 1999-03-16  Tor Lillqvist  <tml@iki.fi>
17778
17779         * README.win32: New file.
17780                 
17781         * configure.in: Check for lstat.
17782
17783         * config.h.win32: Add non-definition of HAVE_LSTAT, just for
17784         completeness.
17785
17786         * gtk/gtkrc.c: If don't HAVE_LSTAT, use stat.
17787
17788         * gtk/gtk.def: Removed CRs.
17789
17790         * gtk/makefile.msc: Correct include path to Win32 GDK version (in
17791         ..\gdk\win32).
17792
17793         * gdk/win32/makefile.msc: Correct upwards relative paths.
17794         
17795 Mon Mar 15 03:38:34 1999  George Lebl  <jirka@5z.com>
17796
17797         * gtk/gtkdnd.c: (gtk_drag_highlight) swap the
17798           gtk_drag_highlight_expose and gtk_drag_highlight_paint since
17799           it was connecting a void function to expose_event and the int
17800           returning function to the draw signal
17801
17802 1999-03-14  Jeff Garzik  <jgarzik@pobox.com>
17803
17804         * configure.in:
17805         Use correct path to libgmodule.la when ref'ing uninstalled copy
17806         of glib.  (Already in stable branch, Bug #417)
17807
17808 1999-03-15  Tor Lillqvist  <tml@iki.fi>
17809
17810         Win32 merge and general portability stuff:
17811                 
17812         * acconfig.h,configure.in: Check for <sys/time.h>.
17813
17814         * gdk/win32: New directory (actually, been there for a while).
17815         
17816         * gtk/fnmatch.c: Include <glib.h> for G_DIR_SEPARATOR, WIN32 and
17817         NATIVE_WIN32, and use these. Always case fold on Win32. No
17818         backslashed escapes on native Win32.
17819
17820         * gtk/{gtk.def,makefile.msc}: New files.
17821
17822         * gtk/Makefile.am: Add above new files.
17823         
17824         * gtk/{gtkaccelgroup,gtkbindings}.c: Include <string.h>
17825         instead of <strings.h>.
17826
17827         * gtk/{gtkcalendar,gtkitemfactory,gtkpreview,gtkrc}.c: Include
17828         config.h. Protect inclusion of <sys/param.h>, <sys/time.h>, and
17829         <unistd.h> appropriately.
17830
17831         * gtk/gtkdnd.c: Merge in Win32 version (which doesn't do much).
17832         Use ABS() (from <glib.h>) instead of abs().
17833         
17834         * gtk/gtkfilesel.c: Moved Win32-specific includes after inclusion
17835         of gtk (and thus glib) headers, so that WIN32 will be
17836         defined. With MS C, include <direct.h> for mkdir prototype.
17837
17838         * gtk/gtkitemfactory.c (gtk_item_factory_callback_marshal): Add
17839         some casts, needed by MS C.
17840
17841         * gtk/{gtklayout,gtkplug}.c: Merge in Win32 version (which isn't
17842         implemented).
17843
17844         * gtk/gtkmain.c: Include gdk/gdkx.h for GDK_WINDOWING. Include
17845         <X11/Xlocale.h> only on X11 platform, otherwise <locale.h>.  Use
17846         G_SEARCHPATH_SEPARATOR_S and g_module_build_path.
17847
17848         * gtk/gtkmain.h: Mark variables for export/import on Win32.
17849                 
17850         * gtk/gtkrange.c (gtk_range_motion_notify): Set mods also in case
17851         the event is not a hint, or its window is not the slider. Needed
17852         on Win32, at least.
17853
17854         * gtk/gtkrc.c: Include config.h and gdk/gdkx.h. Use <locale.h>
17855         unless on X11. Skip \r chars, too. Use G_DIR_SEPARATOR and
17856         G_SEARCHPATH_SEPARATOR(_S). Use g_path_is_absolute. On Win32, use
17857         a subdirectory of the Windows directory as gtk system
17858         configuration directory.
17859
17860         * gtk/gtkselection.c: No chunks on Win32.
17861
17862         * gtk/gtksocket.c: Not implemented on Win32.
17863
17864         * gtk/gtkthemes.c (gtk_theme_engine_get): Use g_module_build_path.
17865
17866         * gtk/makeenums.h: Include gdkprivate.h after gdk.h.
17867
17868         * gtk/maketypes.awk: Declare variables with a macro that expands to
17869         necessary export/import magic in the case of Win32.
17870                 
17871         * gtk/testrgb.c: Use dynamically allocated buffer. Use GTimers.
17872
17873 1999-03-13  Raja R Harinath  <harinath@cs.umn.edu>
17874
17875         * configure.in (gdk_wc): Move widechar tests from `glib' to here,
17876         since those were meant only for gdki18n.h.  
17877         * gdk/gdki18n.h: Include gdkconfig.h and use GDK_* instead of G_*
17878         for widechar tests.
17879         * gtk/Makefile.am (INCLUDES): Add -I../gdk for gdkconfig.h.
17880
17881 1999-03-13  Tor Lillqvist  <tml@iki.fi>
17882
17883         * configure.in acconfig.h: Check for dirent.h and pwd.h. Generate
17884         gdk/gdkconfig.h using similar mechanism as GLib's glibconfig.h.
17885
17886         * gtk-config.in: Add @libdir/gtk+/include (where gdkconfig.h is
17887         installed) to CFLAGS.
17888
17889         * gdk/Makefile.am: Add rules for gdkconfig.h.
17890
17891         * gdk/gdktypes.h: Include gdkconfig.h. Define macros for windowing
17892         APIs.
17893
17894         * gdk/gdkfontsel.c: Don't include Xlib.h, it gets included via
17895         gdkx.h anyway when compiling for X11.
17896         (gtk_font_selection_create_xlfd): Use g_strdup_printf. (In
17897         general): Merge in Win32 version.
17898         
17899         * gtk/gtkfilesel.c: Use g_get_current_dir(). Merge in Win32
17900         version: Use G_DIR_SEPARATOR, g_path_is_absolute, no tilde
17901         expansion (if we don't have HAVE_PWD_H), allow for drive
17902         letters. UNC paths (\\server\share\...) are not handled yet.  Also,
17903         included code from Craig Setera's port to Win32 (the one that uses
17904         X11, and the cygwin dll), even if it probably will be abandoned.
17905
17906         * gtk/gtkfilesel.c: Don't append a * to the pattern to complete if
17907         the user entered one herself.  This way one can complete *.h and
17908         don't get matches on any .help files, for instance.
17909         
17910 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
17911
17912         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
17913         font hash table, if we have a GdkFontPrivate entry for this font
17914         already, simply increment its reference count, provided by Olaf Dietsche
17915         <olaf.dietsche+list.gtk@netcologne.de>.
17916
17917         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
17918         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
17919
17920 1999-03-09  Federico Mena Quintero  <federico@nuclecu.unam.mx>
17921
17922         * gtk/gtkstyle.c (gtk_default_draw_handle): Significantly reduced
17923         the number of calls to gdk_draw_point() (and thus to X) by
17924         clipping the points by hand.
17925
17926         * gtk/gtkhandlebox.c (draw_textured_frame): Actually make use of
17927         the clip parameter.
17928         (gtk_handle_box_paint): Only paint the handle if the expose area
17929         intersects it.
17930
17931 Sun Mar  7 18:46:37 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
17932
17933         * gtk/gtkmain.c (add_dll_suffix): Add this function (OS/2 ver.)
17934
17935 Sun Mar  7 11:43:34 1999  ape@spacetec.no  (Asbjorn Pettersen)
17936
17937         * gtk/gtkthemes.c (gtk_theme_engine_get): Add OS/2 changes.
17938         Added function gen_8_3_dll_name(gchar *name, gchar *fullname).
17939
17940 Fri Mar  5 09:12:24 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
17941
17942         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc): Open file in
17943          textmode (O_TEXT) for OS/2 version.
17944
17945 Sun Feb 28 16:46:02 1999  Stefan Jeske  <stefan@gtk.org>
17946
17947         * gtk/gtkspinbutton.[c,h] gtk/testgtk.c: Added two new signals to 
17948         GtkSpinButton, "input" and "output", to make the output more flexible.
17949         The user has to provide a mapping between adjustment->value and the
17950         output string (and vice versa, if the spin button is editable). 
17951         See testgtk for examples.
17952
17953 Sat Feb 27 01:18:47 1999  Tim Janik  <timj@gtk.org>
17954
17955         * ChangeLog: moved old ChangeLog to ChangeLog.pre-1-2, and started
17956         new one.
17957         
17958         * configure.in: set gtk+ version to 1.3.0.