]> Pileus Git - ~andy/gtk/blob - ChangeLog.pre-2-6
7953464708025a1bc2c978094def411e03e57347
[~andy/gtk] / ChangeLog.pre-2-6
1 Fri Sep  7 18:17:47 2001  Owen Taylor  <otaylor@redhat.com>
2
3         * gdk/gdk.h gdk/x11/gdkmain-x11.c: Deprecate gdk_set/get_use_xshm, 
4         make gdk_set_use_xshm a noop. Remove --no-xshm command line
5         option. If we aren't autodetecting properly, we need
6         to fix the problem, or at least make it an environment
7         variable setting, to avoid problems with propagating
8         to embedded children, plugins, etc.
9
10         * gdk/gdkcolor.h: Deprecate gdk_colormap_get_system_size().
11
12         * gdk/gdkpixbuf-render.c gdk/gdkpixbuf.h
13         (gdk_pixbuf_render_pixmap_and_mask_for_colormap):
14         New function to render a pixmap and mask for a particular colormap.
15
16         * gtk/gtkwindow.c (get_pixmap_and_mask): Change to use
17         gdk_pixbuf_render_pixmap_and_mask_for_colormap () instead
18         of internal implementation of the same.
19
20 2001-09-07  Havoc Pennington  <hp@redhat.com>
21
22         * gtk/gtktextlayout.c (gtk_text_layout_get_lines): remove some
23         debug code that seems to have caused a breakpoint in valid cases
24         
25         * gtk/gtktextbtree.c (_gtk_text_btree_add_view): set the prev
26         pointer on the first view when adding the second view, fixes
27         crash when closing gtk-demo text test with active selection
28
29         * gtk/gtktextbuffer.c
30         (gtk_text_buffer_remove_selection_clipboard): don't leave dead
31         clipboards in the list of clipboards - probably fixes #59836
32
33 Fri Sep  7 11:51:44 2001  Owen Taylor  <otaylor@redhat.com>
34
35       Make gdkx.h the only installed header from gdk/x11.
36       All structures in gdk/x11 are opaque.
37
38         * gdk/x11/Makefile.am gdk/x11/gdkx.h gdk/x11/gdkprivate-x11.h:
39         Don't install gdk{drawable,pixmap,window}-x11.h.
40
41         * gdk/x11/{gdkcolormap-x11.c, gdkfont-x11.c, gdkx.h, gdkvisual-x11.c: 
42         Move GdkColormapPrivateX11, GdkFontPrivateX GdkImagePrivateX11, 
43         GdkVisualClass into C files.
44
45         * gdk/gdkpixmap-x11.[ch]: Make gdk_pixmap_impl_get_type() static.
46
47         * gdk/x11/{gdkcolor-x11.c, gdkcursor-x11.c, gdkdrawable-x11.c,
48         gdkfont-x11.c, gdkgc-x11.c, gdkx.h, gdkimage-x11,gdkvisual-x11.c}
49         Add public functions to replace previously exported direct
50         structure access.
51         gdk_x11_colormap_get_{xdisplay,xcolormap} 
52         gdk_x11_cursor_get_{xdisplay,xcursor},
53         gdk_x11_drawable_get_{xdisplay,xcursor,gdk_x11_visual_get_xvisual, 
54         gdk_x11_font_get_{xdisplay,xfont}, gdk_x11_image_get_{xdisplay,ximage},
55         gdk_x11_gc_get_{xdisplay,ximage}
56         
57         * gdk/gdkprivate.h gdk/gdkinternals.h: Move GdkColorInfo,
58         GdkEventFilter, GdkClientFilter, GdkFontPrivate to gdkinternals.
59
60       Fix a number of variables and functions that were exported
61       "accidentally" from GDK.
62
63         * gdk/**.[ch]: gdk => _gdk for gdk_visual_init,
64         gdk_events_init, gdk_input_init, gdk_dnd_init, gdk_image_exit, 
65         gdk_input_exit, gdk_windowing_exit, gdk_event_func, gdk_event_data,
66         gdk_event_notify, gdk_queued_events, gdk_queued_tail,
67         gdk_event_new, gdk_events_queue, gdk_events_unqueue,
68         gdk_event_queue_find_first, gdk_event_queue_remove_link,
69         gdk_event_queue_append, gdk_event_button_generate,
70         gdk_debug_flags, gdk_default_filters, gdk_parent_root.
71
72         * gdk/x11/{gdkevents-x11.c, gdkglobals-x11.c, gdkimage-x11.c, 
73            gdkmain-x11.c, gdkprivate-x11.h, gdk/x11/gdkwindow-x11.c}:
74         gdk => _gdk for gdk_event_mask_table, gkd_nevent_masks, 
75         gdk_wm_window_protocols, gdk_leader_window, gdk_xgrab_window,
76         gdk_use_xshm, gdk_input_ignore_core.
77
78         * gdk/x11/xsettings-common.h (xsettings_list_insert): Add
79         #defines to namespace functions into the private _gdk_ 
80         namespace.
81
82         * gdk/gdkwindow.[ch] gdk/x11/gdkx.h: Add gdk_get_default_root_window ()
83         to replace gdk_parent_root exported variable. Adjust and
84         deprecate GDK_ROOT_PARENT().
85
86         * demos/{testpixbuf-drawable.c,testpixbuf-save.c}: Fix
87         GDK_ROOT_PARENT usage, remove includes of port-specific
88         headers.
89
90         * gdk/{win32,x11,fb}/gdkinput*.[ch]: s/gdk/_gdk/ for 
91         _gdk_input_gxid_host, _gdk_input_gxid_port, _gdk_input_ignore_core, 
92         gdk_input_devices, _gdk_input_windows, gdk_init_input_core.
93
94         * gdk/x11/{gdkevents-x11.,c gdkglobals-x11.c, gdkmain-x11.c}
95         docs/Changes-2.0.txt: Remove gdk_wm_protocols, 
96         gdk_wm_delete_window functions, gdk_wm_take_focus, 
97         use gdk_atom_intern() instead.
98
99         * gdk/linux-fb/{gdkselection-fb.c, gdkmain-fb.c, gdkprivatefb.h}
100           gdk/win32/{gdkselection-win32.c, gdkmgdkwin32.h, gdkprivate-win32.h} 
101           gdk/x11/{gdkselection-x11.c gdkx.h, gtkprivate-x11.h}
102           gtk/gtkselection.c 
103         Unexport gdk_selection_property, just use 
104         gdk_atom_intern ("GDK_SELECTION").
105
106         * gdk/x11/{gdkprivate-x11.h,gdkdrawable-x11h,gdkgc-x11.c,gdkx.h}: 
107         Unexport gdk_drawable_impl_x11_get_type, gdk_gc_x11_get_type, 
108         GDK_GC_X11 cast macros, GdkGCX11 structures, GdkCursorPrivate, 
109         GdkVisualprivate, gdk_x11_gc_flush.
110
111       Make a number of public exports of variables into functions
112       to increase encapsulation.
113
114         * gdk/gdkinternals.h gdk/gdkinput.h gdk/gdkevents.h 
115         gdk/linux-fb/gdkmouse-fb.c: gdk_core_pointer => _gdk_core_pointer, 
116         move to gdkinternals.h. Add gdk_device_get_core_pointer ().     
117
118         * gdk/gdkprivate.h gdk/gdkpango.c gdk/gdkinternals.h
119         docs/Changes-2.0.txt: Unexport gdk_parent_root, gdk_error_code, 
120         gdk_error_warnings.
121
122         * gdk/x11/{gdkcolormap-x11.c, gdkmain-x11.c, gdkx.h}
123           docs/Changes-2.0.txt: 
124         s/gdk_screen/_gdk_screen/, add gdk_x11_get_default_screen()
125         s/gdk_root_window/_gdk_root_window/, add gdk_x11_get_default_root_xwindow()
126         Add gdk_x11_get_default_xdisplay().
127
128         * gdk/gdk.h gdk/gdk.c linux-fb/gdkfb.h linux-fb/gdkglobals-fb.c 
129         win32/gdkwin32.h x11/gdkglobals-x11.c gdk/x11/gdkmain-x11.c 
130         gdk/x11/gdkx.h: gdk/gdk.def: Add gdk_get/set_program_class, 
131         Don't export gdk_progclass, move --class command line
132         option and handling to common portion of GDK.
133
134       Miscellaneous fixes:
135
136         * gdk/x11/gdkwindow-x11.c (gdk_window_set_icon_list): Fix
137         g_return_val_if_fail that should have been g_return_if_fail.
138
139         * gdk/gdkinternals.h gdk/gdkprivate.h: Move
140         gdk_synthesize_window_state() to the semi-public gdkprivate.h.
141
142         * gtk/gtkdnd.c (_gtk_drag_source_handle_event): Remove uneeded
143         X11 dependency.
144
145         * gdk/linux-fb/gdkmain-fb.c gdk/win32/gdkmain-win32.c gdk/TODO: 
146         Remove unused gdk_key_repeat_disable/restore.
147
148         * linux-fb/gdkglobals-fb.c win32/gdkglobals-win32.c 
149         x11/gdkglobals-x11.c x11/gdkprivate-x11.h gdk/gdk.def:
150         Remove unused gdk_null_window_warnings variable.
151
152         * gdk/Makefile.am (DIST_SUBDIRS) nanox/*: cvs remove nanox;
153         it can be retrieved from the repository; it is too far
154         from functional to be worth having people check out;
155         it would be easier to start from scratch, I suspect.
156
157         * gdk/x11/gdkpixmap-x11.c: Fix lvalue usage of GDK_PIXMAP_XID().
158
159         * gdk/x11/gdkkeys-x11.c gdk/gdkrgb.c gdk/gdkwindow.c 
160         gdk/x11/gdkpango-x11.c gdk/x11/gdkselection-x11.c: 
161         Fix some accidentally global variables and unused global variables.
162
163         * gdk/x11/gdkkeys-x11.c gdk/gdkrgb.c gdk/gdkwindow.c 
164         gdk/x11/gdkpango-x11.c gdk/x11/gdkselection-x11.c: 
165         Fix some accidentally global variables and unused global variables.
166
167       Add some space for future expansion to multihead.
168
169         * gdk/gdkdrawable.h: Add four reserved function pointers
170         for future expansion of GdkDrawableClass.
171
172         * gtk/gtkwindow.h gtk/gtkinvisible.h: Add reserved pointer
173         where we can put a GdkScreen * later.
174
175 2001-09-07  Havoc Pennington  <hp@redhat.com>
176
177         * gtk/gtktextview.c (gtk_text_view_flush_scroll): update
178         adjustments after validating destination yrange; fixes #53918
179         (This may cause other issues, but I hope it won't)
180         
181 2001-09-05  Havoc Pennington  <hp@redhat.com>
182
183         * gtk/gtktextbtree.c (_gtk_text_btree_delete): when merging end
184         line into start line, update the character counts in parent nodes; 
185         caused a bug when end and start line had different parent nodes.
186
187 2001-08-30  Havoc Pennington  <hp@redhat.com>
188         
189         * gtk/gtktexttag.c (_gtk_text_attributes_fill_from_tags): add
190         assertion that tag is in a table
191
192 Fri Sep  7 12:48:56 2001  Matthias Clasen  <matthiasc@poet.de>
193
194         * gdk/x11/gdkkeys-x11.c (get_direction): Don't call
195         g_strcasecmp on NULL strings. (#59058)
196
197 2001-09-06  Alex Larsson  <alexl@redhat.com>
198
199         * gtk/gtkbin.c:
200         * gtk/gtkfontsel.c:
201         * gtk/gtkspinbutton.c:
202         * gtk/gtktipsquery.c:
203         Use GtkType/GType instead of uint.
204
205 Tue Sep  4 18:13:43 2001  Jonathan Blandford  <jrb@redhat.com>
206
207         * gtk/gtkliststore.c (gtk_list_store_init): fix initial val for
208         sort column.
209
210         * gtk/gtktreestore.c (gtk_list_store_init): ditto
211
212         * gtk/gtktreesortable.c: add docs.
213
214 Tue Sep  4 09:37:19 2001  Owen Taylor  <otaylor@redhat.com>
215
216         * Version 1.3.7
217
218         * configure.in docs/Makefile.am docs/gtk-config.1.in: Remove 
219         docs for gtk-config
220
221         * modules/input/Makefile.am (install-data-local): Don't
222         run gtk-query-immodules if DESTDIR is set.
223
224         * NEWS: Various additions.
225
226 Tue Sep  4 03:12:25 2001  Tim Janik  <timj@gtk.org>
227
228         * NEWS: updates for 1.3.7 release.
229
230 Mon Sep  3 18:03:56 2001  Jonathan Blandford  <jrb@redhat.com>
231
232         * gtk/gtktreestore.c (gtk_tree_store_set_default_sort_func):
233         handle default sort feature
234
235         * gtk/gtktreesortable.c (gtk_tree_sortable_set_default_sort_func):
236         new function to handle default sort.
237         (gtk_tree_sortable_has_default_sort_func): check if default sort
238         is set.
239
240         * gtk/gtkliststore.c (gtk_list_store_set_default_sort_func): 
241         handle default sort feature
242
243 Sun Sep  2 20:32:36 2001  Jonathan Blandford  <jrb@redhat.com>
244
245         * gtk/gtktreeview.c (gtk_tree_view_scroll_to_cell): patch from
246         vishnu@pobox.com (Joshua N Pritikin) to fix math and an assertion,
247         #59731
248
249 Sun Sep  2 17:38:42 2001  Jonathan Blandford  <jrb@redhat.com>
250
251         * gtk/gtktreeview.c (gtk_tree_view_deleted): Patch from
252         vishnu@pobox.com (Joshua N Pritikin) to emit signal at the correct
253         time, #59727
254
255         * gtk/gtkbutton.c (gtk_button_update_state): Get depressed
256         correctly.
257
258 Sun Sep  2 21:41:21 2001  Owen Taylor  <otaylor@redhat.com>
259
260         * gdk/x11/gdkkeys-x11.c (update_keymaps): Set current serial
261         so that we don't eternally update the keymap after we
262         get a change notification.
263
264         * gtk/gtkmenuitem.c (gtk_menu_item_set_right_justified): Fix
265         incorrect cast.
266
267 Sun Sep  2 23:27:16 2001  Kristian Rietveld  <kristian@planet.nl>
268
269         * gtk/gtktreemodelsort.[ch]: much changes in an attempt to make
270         it working. It mostly works now, although there're still a few issues
271         to be worked out.
272
273         * tests/testtreesort.c (main): changes to have a better test
274         application for the GtkTreeModelSort.
275
276 Sun Sep  2 23:19:07 2001  Kristian Rietveld  <kristian@planet.nl>
277
278         * gtk/gtktreeview.c (gtk_tree_view_search_iter): code cleaup,
279         fix for bug #59222.
280
281         * gtk/gtktreeview.c (gtk_tree_view_search_equal_func): add
282         gpointer search_data argument to function definition and
283         prototype, to match GtkTreeViewSearchEqualFunc typedef.
284
285 Sat Sep  1 21:57:27 2001  Kristian Rietveld  <kristian@planet.nl>
286
287         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): add warnings
288         per jrb's request.
289
290 Fri Aug 31 20:01:23 2001  Jonathan Blandford  <jrb@redhat.com>
291
292         * gtk/gtktreeview.c (gtk_tree_view_search_iter): pass in user data.
293
294         * gtk/gtktreeview.c (gtk_tree_view_destroy): destroy search_data.
295
296 Wed Aug 29 20:40:58 2001  Owen Taylor  <otaylor@redhat.com>
297
298         * gtk/gtktextbuffer.[ch] (gtk_text_buffer_add/remove_selection_clipboard): 
299         Instead of always mirroring the selection to a single PRIMARY
300         selection, allow it to be mirrored to any number of clipboards.
301
302         * gtk/gtktextbuffer.[ch] (gtk_text_buffer_paste_primary): Remove, 
303         just use gtk_text_buffer_paste_clipboard with the appropriate clipboard.
304
305         * gtk/gtktextbuffer.[ch] (gtk_text_buffer_cut/copy/paste_clipboard): Add a
306         GtkClipboard argument, and for paste_clipboard, the
307         @override_location argument from @paste_primary.
308
309         * gtk/gtktextview.c: Adapt to above change.
310         
311 2001-08-30  Havoc Pennington  <hp@redhat.com>
312
313         * gtk/gtktextview.c (invalidated_handler): put validate idle at
314         resize - 2 just for flexibility
315
316 2001-08-30  Havoc Pennington  <hp@redhat.com>
317
318         * gtk/gtktextdisplay.c (render_layout_line): handle NULL shaped
319         object from the empty-child-anchor case by drawing a little box.
320         
321         * gtk/gtktextlayout.c (add_child_attrs): Still set shape attribute
322         if the child anchor has no anchored widgets - fixes #59328.
323
324         Also, remove bizarre deletion of preedit string that seems to have
325         gotten in here somehow.
326
327 2001-08-30  Havoc Pennington  <hp@redhat.com>
328
329         * gtk/gtktextview.c (gtk_text_view_check_cursor_blink): apply fix
330         to #58420 from Hidetoshi Tajima and Matthias Clasen
331
332 Wed Aug 29 17:28:04 2001  Jonathan Blandford  <jrb@redhat.com>
333
334         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
335         change color when the GtkTreeView loses focus.
336
337         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_render):
338         ditto.
339         
340         * gtk/gtkstyle.c (gtk_default_draw_flat_box): ditto
341
342 2001-08-28  Havoc Pennington  <hp@pobox.com>
343
344         * gtk/gtkwindow.c (gtk_window_set_icon_list): fix g_object_notify
345
346 2001-08-28  Havoc Pennington  <hp@pobox.com>
347
348         * demos/gtk-demo/main.c (setup_default_icon): add default icon
349
350         * gtk/gtkradiobutton.c (gtk_radio_button_new_with_mnemonic):
351         warning fix
352         (gtk_radio_button_new_with_label): warning fix
353
354         * gtk/gtkdnd.c: used some random GtkImage private structs, 
355         update to reflect GtkImage changes
356
357         * gdk/x11/gdkwindow-x11.c (gdk_window_set_icon_list): don't check
358         whether the hint is supported, just always set the icon. A task
359         list might want to use it even if the WM doesn't, and the WM may
360         change over time. Also, XDeleteProperty() if list == NULL.
361
362         * gtk/gtkwindow.c (gtk_window_set_icon_list)
363         (gtk_window_get_icon_list)
364         (gtk_window_set_icon)
365         (gtk_window_get_icon)
366         (gtk_window_set_default_icon_list)
367         (gtk_window_get_default_icon_list):
368         new functions
369
370         * gtk/gtk-boxed.defs (GtkIconSet): add GtkIconSet
371
372         * gtk/gtkimage.c: Implement property support, bug #59408
373
374         * gtk/gtkcontainer.c (gtk_container_add): make the warning message
375         on reparent-without-removing-first a bit more helpful.
376         Let's just destroy this FAQ.
377
378 Tue Aug 28 21:37:11 2001  Matthias Clasen  <matthiasc@poet.de>
379
380         * demos/gtk-demo/appwindow.c (do_appwindow): Use g_signal_connect_object
381         instead of gtk_signal_connect, to avoid warnings at destruction time. (#58161)
382
383 Tue Aug 28 21:00:44 2001  Matthias Clasen  <matthiasc@poet.de>
384
385         * gtk/gtkprogressbar.c (gtk_progress_bar_set_text): Move the setting
386         of use_text_format to the end of the function. (#56447)
387
388 Tue Aug 28 20:06:07 2001  Matthias Clasen  <matthiasc@poet.de>
389
390         * demos/testpixbuf.c (update_timeout): Use gdk_pixbuf_loader_get_pixbuf
391         only in response to an area_prepared signal.
392
393 2001-08-28  Alex Larsson  <alexl@redhat.com>
394
395         * gtk/gtkwidget.c (gtk_widget_class_init):
396         Make unrealize GTK_RUN_LAST.
397
398 Mon Aug 27 22:00:41 2001 Manish Singh <yosh@gimp.org>
399
400         * gtk/gtkradiobutton.c: fix silly cut'n'paste error,
401         with_label and with_mnemonic should create radio buttons, not
402         check buttons
403
404 Mon Aug 27 15:28:56 2001  Jonathan Blandford  <jrb@redhat.com>
405
406         * tests/testtreefocus.c (main): Fix to use GtkSelectionMode.
407         * tests/treestoretest.c (make_window): ditto
408         * demos/gtk-demo/main.c (create_tree): ditto
409         * demos/gtk-demo/stock_browser.c (do_stock_browser): ditto.
410
411 Mon Aug 27 15:18:14 2001  Jonathan Blandford  <jrb@redhat.com>
412
413         * gtk/gtktreeselection.c (gtk_tree_selection_set_mode): Use the
414         GTK selection types rather than GtkTreeSelectionMode.
415
416         * docs/Changes-2.0: Add comment about selection change.
417
418 Mon Aug 27 14:21:30 2001  Jonathan Blandford  <jrb@redhat.com>
419
420         * gtk/gtkenums.h (GtkSelectionMode): deprecate
421         GTK_SELECTION_EXTENDED.
422
423         * gtk/gtkclist.c: Remove old GTK_SELECTION_MULTIPLE behavior.
424         Make GTK_SELECTION_EXTENDED be GTK_SELECTION_MULTIPLE.
425
426         * gtk/gtkctree.c: ditto
427
428         * gtk/gtklist.c: ditto
429
430         * gtk/gtktree.c: ditto
431
432 Mon Aug 27 14:18:12 2001  Owen Taylor  <otaylor@redhat.com>
433
434         * gtk/gtkmenubar.h (gtk_menu_bar_prepend): Fix a cuple
435         of typos in compat macros. (#59624, Skip Montaro)
436
437 Sun Aug 26 20:00:00 2001  Owen Taylor  <otaylor@redhat.com>
438
439         * configure.in acinclude.m4: Use autoconf 2.13/2.50 compat
440         macro.
441
442          (patch from ERDI Gergo  <cactus@cactus.rulez.org>, #58920)
443  
444         * gtk/gtkmenuitem.c (gtk_menu_item_set_right_justified): Change
445         interface to be a standard setter from gtk_menu_item_right_justify.
446         (gtk_menu_item_get_right_justified): a getter to go with the setter
447
448         * gtk/gtkmenuitem.h: Add a deprecated compat macro for
449         gtk_menu_item_right_justify.
450
451         * demos/gtk-demo/menus.c tests/testgtk.c: Switch to 
452         gtk_menu_item_set_right_justified.
453  
454 2001-08-27  Jens Finke <jens@gnome.org>
455
456         * gtk+.spec.in: Updated to match gpp requirements, reworked the
457         files section to make it work with 1.3.x releases.
458
459 2001-08-26  Alexander Larsson  <alla@lysator.liu.se>
460
461         * gtk/gtkbutton.[ch]:
462         Add properties for labels, mnemonics and stock items.
463         Added C accessor functions for the properties.
464         Removed deprecated button->child.
465
466         * gtk/gtkradiobutton.c:
467         * gtk/gtktogglebutton.c:
468         Update to use the functions in GtkButton.
469
470         * gtk/gtkcheckbutton.c:
471         Update to use the functions in GtkButton.
472         Changed size allocation of child. Now only gets as much
473         space as it requests.
474
475         * gtk/gtkclist.c:
476         Don't use GtkButton->child
477
478         * gtk/gtklabel.c:
479         Fixed typo in docs
480         
481 2001-08-26  Alexander Larsson  <alla@lysator.liu.se>
482
483         * tests/testgtk.c:
484         * tests/Makefile.am:
485         Ressurect the properties test.
486         I don't care if it is inferior, I just want to test my property code.
487
488 2001-08-25  Chema Celorio  <chema@celorio.com>
489
490         * gtk/gtktable.c (gtk_table_set_child_property): pass ->nrows to
491         gtk_table_resize as the first argument for CHILD_PROP_RIGHT_ATTACH
492         and CHILD_PROP_LEFT_ATTACH v.s. using ->ncols
493
494 2001-08-24  Havoc Pennington  <hp@pobox.com>
495
496         * gtk/gtkcompat.h: remove gtk_menu_* compat defines; 
497         these are already in gtkmenu.h, and the copies
498         here were broken.
499
500         Also, change GTK_DISABLE_COMPAT_H to GTK_DISABLE_DEPRECATED
501
502         * gdk/gdkpixbuf-drawable.c (gdk_pixbuf_get_from_image):
503         special-case bitmaps to allow no colormap
504         (bitmap1): implement no-colormap bitmap-getting
505         (bitmap1a): implement no-colormap bitmap-getting to pixbuf with
506         alpha
507         (rgb8): indentation
508         (rgb1a, rgb1): change the way we read the data out of the image, 
509         old way didn't seem to work quite right.
510
511         I'm pretty sure a lot of the rgbconvert code is still broken.
512         
513         * gtk/gtkwindow.c (gtk_window_move_resize): move hints comparison
514         above position constraint (I really intended to do this before,
515         don't know what's up with that)
516         (gtk_XParseGeometry): shut up gcc
517
518         * gdk/gdkpixbuf-drawable.c (rgb1a): fix bug where "x1" was used
519         and "0" should have been. remove the attempted 4-bytes-at-once
520         optimization, it was totally broken.
521
522 Sat Aug 25 19:02:39 2001  Owen Taylor  <otaylor@redhat.com>
523
524         * gtk/gtkbutton.[ch] gtk/gtktogglebutton.c: Add optional movement
525         on push to buttons (based on patch from Soeren Sandmann, #54720)
526
527           - Add child_displacement_x/y style properties to control how far the
528             child moves when the button is depressed.
529
530           - Add non-exported function _gtk_button_set_depressed to clean
531             up the handling of the in/out shadow and separate it frmo
532             widget->state.
533
534           - Lots of code cleanup and simplification of state handling
535             for GtkButton/GtkToggleButton.
536  
537         * tests/testgtkrc: Set the x/y displacement to 1 to provide a test
538         of button movement. testgtk + testgtkrc == test ugly GTK+, as always.   
539
540 Fri Aug 24 23:09:05 2001  Owen Taylor  <otaylor@redhat.com>
541
542         * gtk/gtkimage.[ch] docs/Changes-2.0.txt: Break compatibility 
543         and make gtk_image_new() take no arguments. The compiler will
544         catch it, and it is vastly more useful than having
545         gtk_image_new() be a deprecated alias for gtk_image_new_from_image().  
546
547         * gtk/gtkmenu.c (gtk_menu_set_property): Apply patch
548         to add tearoff-title property (#51319, Lee Mallabone)
549
550 Fri Aug 24 22:12:32 2001  Owen Taylor  <otaylor@redhat.com>
551
552         * gtk/gtkmenuitem.[ch]: Remove unused and useless function
553         gtk_menu_item_configure(). (#58925)
554
555 Fri Aug 24 16:03:45 2001  Jonathan Blandford  <jrb@redhat.com>
556
557         * gtk/gtktreeview.c (gtk_tree_view_scroll_to_cell): Add
558         "use_align" to give people the option to just make a cell visible.
559
560         * gtk/gtktreeview.c (gtk_tree_view_scroll_to_point): fix bug where
561         we were scrolling past the end of the tree.
562
563         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_pack_start):
564         rename gtk_tree_view_column_pack_start_cell_renderer to
565         gtk_tree_view_column_pack_start.  Same for pack_end, and clear.
566
567 Fri Aug 24 12:02:08 2001  Owen Taylor  <otaylor@redhat.com>
568
569         * gtk/gtktextbuffer.c (gtk_text_buffer_new): Remove
570         a stray g_object_ref() left over from gtk_object_ref/sink.
571         (Pointed out by Josh Pritikin.)
572
573 Thu Aug 23 19:33:54 2001  Owen Taylor  <otaylor@redhat.com>
574
575         * gtk/gtkcontainer.[ch]: Rename gtk_container_children()
576         to gtk_container_get_children. Added deprecated compatibility
577         macro. (Suggested by Vitaly Tishkov, #59051)
578
579         * gtk/gtktoolbar.c gtkdialog.c: Fix gtk_container_children()
580         calls.
581
582 Thu Aug 23 19:10:01 2001  Owen Taylor  <otaylor@redhat.com>
583
584         * gtk/gtkmenubar.h (gtk_menu_bar_insert): Deprecate 
585         gtk_menu_bar_append/prepend/insert, forgot to do this
586         when we deprecated gtk_menu_append/prepend/insert.
587
588         * gtk/gtkmenu.h (gtk_menu_insert): Add casts to deprecated
589         compat macros.
590
591         * gtk/gtkmenu.c: Fix problem with static gtk_menu_insert() being
592         renamed by compat macro.
593
594         * gtk/gtkfontsel.h: Deprecated gtk_font_selection_get_font(),
595         gtk_font_selection_dialog_get_font(). (Suggested by
596         Vitaly Tishkov, #59383)
597
598 Thu Aug 23 18:23:31 2001  Owen Taylor  <otaylor@redhat.com>
599
600         * gtk/gtktexttag.c (gtk_text_tag_table_get_size): 
601         Rename from gtk_text_tag_table_size(). (#59366)
602
603 Thu Aug 23 20:01:41 2001  Kristian Rietveld  <kristian@planet.nl>
604
605         * gtk/gtktreemodelsort.[ch], gtk/gtktreesortable.[ch],
606         gtk/gtktreestore.[ch], gtk/gtktreeviewcolumn.[ch],
607         gtk/gtkliststore.[ch]: use GtkSortType instead of GtkTreeSortOrder.
608         (#59173).
609
610 Thu Aug 23 16:26:47 2001  Tim Janik  <timj@gtk.org>
611
612         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_finalize): 
613         * gtk/gtktextmark.c (gtk_text_mark_finalize): chain parent class
614         handlers, pointed out by Joshua N Pritikin <vishnu@pobox.com>.
615
616 Wed Aug 22 19:15:39 2001  Owen Taylor  <otaylor@redhat.com>
617
618         [ Patch from Sebastian Wilhelmi, 52790 ]
619
620         * gtk/gtkversion.h.in gtk/gtk.h: New file replacing gtkcompat.h
621
622         * gdk/gdkcompat.h gdk/gdk*.h gtk/gtkcompat.h.in gtk/gtk*.h: 
623         Move compatibility macros from g[dt]kcompat.h to within 
624         #ifndef G[DT]K_DISABLE_DEPRECATED in each file.
625
626         * gdk/gdk-pixbuf-csource.c: Fix up include of gtkcompat.h.
627
628         * demos/Makefile.am demos/gtk-demo/Makefile.am 
629           docs/reference/gdk-pixbuf/Makefile.am modules/input/Makefile.am
630           tests/Makefile.am: Remove references to -G[DT]K_DISABLE_DEPRECATED.
631
632         * demos/{pixbuf-demo.c,testpixbuf-drawable.c,testpixbuf-save.c,
633                  testpixbuf.c}: Fix usages of deprecated functions.
634
635 Wed Aug 22 19:03:27 2001  Jonathan Blandford  <jrb@redhat.com>
636
637         * gtk/gtktreeview.c (gtk_tree_view_set_model): clean up selection
638         when changing models.
639
640 Wed Aug 22 18:25:46 2001  Jonathan Blandford  <jrb@redhat.com>
641
642         * gtk/gtktreeview.c: Fix selection.  I think it's all dandy now.
643         We check the current event for modifiers rather than try to trap
644         all presses.
645
646 2001-08-22  Anders Carlsson  <andersca@gnu.org>
647
648         * gtk/gtkliststore.h (GTK_LIST_STORE_CLASS): Fix a small typo.
649         It's LIST_STORE, not LISTSTORE.
650
651 Tue Aug 21 12:43:29 2001  Owen Taylor  <otaylor@redhat.com>
652
653         * gtk/gtk.h: Remove commented out gtkpacker reference.
654
655 2001-08-21  Matthias Clasen  <matthiasc@waldgeist.poet.de>
656
657         * configure.in (all_loaders): Add tga loader, 
658         patch by Nicola Girardi. (#56067)
659
660 Tue Aug 21 02:57:13 2001  Jonathan Blandford  <jrb@redhat.com>
661
662         * gtk/gtktreeview.c (gtk_tree_view_button_press): Fix up selection
663         a little.  More needs to be done tomorrow.
664
665 Tue Aug 21 00:45:55 2001  Jonathan Blandford  <jrb@redhat.com>
666
667         * gtk/gtktreeview.c (gtk_tree_view_destroy): Grr... Get it right.
668
669 Mon Aug 20 23:48:18 2001  Jonathan Blandford  <jrb@redhat.com>
670
671         * gtk/gtktreeview.c (gtk_tree_view_get_cell_area): Fix bug
672         reported by Kristian Rietveld <kristian@planet.nl> to handle row
673         == NULL.
674         (gtk_tree_view_destroy): Fix bug reported by Kristian Rietveld
675         <kristian@planet.nl> to change destroy order.
676
677 Mon Aug 20 11:39:44 2001  Jonathan Blandford  <jrb@redhat.com>
678
679         * gtk/gtktreeselection.c (gtk_tree_selection_class_init): Use
680         correct marshaller.
681
682 Sun Aug 19 03:22:59 2001  Jonathan Blandford  <jrb@redhat.com>
683
684         * gtk/gtkliststore.c: Fix up warnings, #58928.
685
686         * gtk/gtktreeselection.h: Change signal prototype, #58647
687
688         * gtk/gtktreeview.c (_gdk_tree_view_find_node): Make more robust,
689         #59221.
690
691         * gtk/gtkstyle.c: Actually prelight arrow, #50981
692         
693 2001-08-18  Hans Breuer  <hans@breuer.org>
694
695         * gdk/gdk.def : updated externals
696
697         * gdk/win32/gdkselection-win32.c : returning TRUE with gdk_selection_set
698         is required to get (at least) visible in entry fields. Some selections
699         are really handled now - even on win32 - but copying via middle
700         mouse button into a different app needs to wait ... 
701
702         * gdk/win32/gdkdnd-win32.c : implemented inter-app drag&drop
703         mostly by stealling code from gdkdnd-fb.c. Thanks to who ever wrote it!
704
705         * gdk/win32/gdkevents-win32.c : some tweaking to get better expose
706         handling. I'm not sure if it is better now, but at least not worse
707
708         * gdk/win32/gdkgeometry-win32.c : replaced every call to MoveWindow
709         with SetWindowPos () which allows more fine-tuning backing-store wise
710
711         * gdk/win32/gdkwindow-win32.c : allow unraised gdk_window_show ().
712         Also changed move/resize to be more like the X version.
713
714         * gtk/gtk.def : updated externals
715
716 2001-08-19  Sven Neumann  <sven@gimp.org>
717
718         * gtk/gtktooltips.c
719         * tests/testtreesort.c
720         * tests/treestoretest.c: inserted some casts to get rid of compiler
721         warnings.
722
723 Sun Aug 19 01:44:44 2001  Jonathan Blandford  <jrb@redhat.com>>
724
725         * gtk/gtktreeviewcolumn.c
726         (gtk_tree_view_column_pack_{start,end}_cell_renderer): sink cell.
727
728         * gtk/gtktreeview.c (gtk_tree_view_insert_column): sink column.
729         (_gtk_tree_view_find_node): If *node is NULL,
730         *tree should be NULL too.
731
732         * demos/gtk-demo/stock_browser.c (do_stock_browser): don't unref
733         column/renderers.
734         * tests/testtreecolumns.c: ditto
735         * tests/testtreefocus.c: ditto
736         * tests/testtreesort.c: ditto
737         * tests/testtreeview.c: ditto
738         * tests/treestoretest.c: ditto
739
740 Sat Aug 18 04:34:31 2001  Jonathan Blandford  <jrb@redhat.com>
741
742         * gtk/gtkcellrenderer.c (gtk_cell_renderer_class_init): 2 new
743         signals; is_expander/is_expanded.
744
745         * gtk/gtlcellrendererpixbuf.c: Allow other expanded and closed
746         pixbufs.
747
748         * gtk/gtktreeview.c: set above properties.
749
750 Sat Aug 18 23:01:33 2001  Owen Taylor  <otaylor@redhat.com>
751
752         * gtk/gtkwidget.h: Really remove set_default_style().
753
754         * docs/Changes-2.0.txt: added a note about
755         gtk_widget_push/pop/set_default_style.
756
757 2001-08-18  Havoc Pennington  <hp@pobox.com>
758
759         * gtk/gtkwindow.c (gtk_window_move_resize): constrain position on
760         hints_changed in addition to the other cases.
761         (gtk_window_move_resize): include last position from configure
762         notify in debug spew
763
764 2001-08-18  James Henstridge  <james@daa.com.au>
765
766         * gtk/gtkaccelgroup.c (gtk_accel_group_object_destroy): use the
767         second argument to the weak ref notify, cleaning up some uglyness.
768         (gtk_accel_group_attach): remove and add the weak notifier when
769         changing the accel groups slist.
770         (gtk_accel_group_detach): same here.
771
772 2001-08-17  Darin Adler  <darin@bentspoon.com>
773
774         * gtk/gtktreeview.c: (gtk_tree_view_search_equal_func): Add
775         missing parameters to utf8 functions to make it compile.
776
777 Fri Aug 17 19:30:14 2001  Jonathan Blandford  <jrb@redhat.com>
778
779         * gtk/gtktreeprivate.h:
780         * gtk/gtktreeview.c: (gtk_tree_view_class_init),
781         (gtk_tree_view_init), (gtk_tree_view_set_property),
782         (gtk_tree_view_get_property), (gtk_tree_view_destroy),
783         (gtk_tree_view_key_press), (gtk_tree_view_leave_notify),
784         (gtk_tree_view_focus_out), (gtk_tree_view_set_model),
785         (gtk_tree_view_set_destroy_count_func),
786         (gtk_tree_view_set_enable_search),
787         (gtk_tree_view_get_enable_search),
788         (gtk_tree_view_get_search_column),
789         (gtk_tree_view_set_search_column),
790         (gtk_tree_view_get_search_equal_func),
791         (gtk_tree_view_set_search_equal_func),
792         (gtk_tree_view_search_dialog_destroy),
793         (gtk_tree_view_search_position_func),
794         (gtk_tree_view_interactive_search),
795         (gtk_tree_view_search_delete_event),
796         (gtk_tree_view_search_button_press_event),
797         (gtk_tree_view_search_key_press_event),
798         (gtk_tree_view_search_move), (gtk_tree_view_search_equal_func),
799         (gtk_tree_view_search_iter), (gtk_tree_view_search_init):
800         * gtk/gtktreeview.h:
801         Add heavily modified patch from Kristian Rietveld to handle
802         interactive searching.
803
804 Fri Aug 17 17:30:34 2001  Tim Janik  <timj@gtk.org>
805
806         * gtk/gtktreemodel.c (gtk_tree_path_new_from_string): const correct
807         string parameter.
808
809         * gtk/gtkoptionmenu.c (gtk_option_menu_set_menu): connect to
810         GtkMenuShell::selection_done, now that we have it, instead of 
811         ::deactivate so we're not tearing the menu apart and notify
812         the user prematurely.
813
814 Thu Aug 16 05:22:01 2001  Tim Janik  <timj@gtk.org>
815
816         * gtk/gtkwindow.c (gtk_window_move_resize): if we actually move our
817         window, clear window->need_default_position to avoid infinite loops.
818         some comment fixups and GTK_RESIZE_IMMEDIATE fixups.
819
820 Wed Aug 15 12:36:55 2001  Tim Janik  <timj@gtk.org>
821
822         * gtk/gtktreeview.c (gtk_tree_view_set_model): move all model setup
823         code into this place. get rid of GTK_TREE_VIEW_MODEL_SETUP usage.
824         (gtk_tree_view_set_property): don't cast possible NULL objects.
825         (gtk_tree_view_destroy): reset the model to NULL.
826
827         * gtk/gtktreeselection.c (gtk_tree_selection_finalize): chain
828         parent_class handler.
829
830 2001-08-17  Matthias Clasen  <matthiasc@waldgeist.poet.de>
831
832         * gtk/demos/gtk-demo/*: Remove all uses of deprecated functions.
833
834 2001-08-17  Anders Carlsson  <andersca@gnu.org>
835
836         * gtk/gtkstyle.c (create_expander_affine): Divide with floating
837         point numbers so that the result will be floating point.
838
839 2001-08-16  Matthias Clasen  <matthiasc@waldgeist.poet.de>
840
841         * tests/testgtk.c (create_handle_box): 
842         (create_toolbar): Replace gtk_window_set_policy calls by
843         gtk_window_set_resizable.
844
845 2001-08-16  Jakub Steiner <jimmac@ximian.com>
846
847         * gtk/stock-icons/dialog_info.png: new style bulb
848         * gtk/stock-icons/dialog_error.png: maybe a little drastic ;)
849         * gtk/stock-icons/dialog_warning.png: need a hand?
850         * gtk/stock-icons/stock_add.png, stock_remove.png: I hope 
851           the aa border gets chopped off ok
852         * gtk/stock-icons/stock_colorselector.png: using the new hand
853         * gtk/stock-icons/stock_dnd_multiple.png: I'm not totally sure what 
854           this one is for, but the old icon was butt ugly.
855         * gtk/stock-icons/stock*_insert_image.png: not sure if it belongs here
856         * gtk/stock-icons/stock*_insert_object.png: "
857         * gtk/stock-icons/stock_index.png: using new hand icon
858         * gtk/stock-icons/stock*_new.png: the document template being used 
859           elsewhere too
860         * gtk/stock-icons/stock*_print*.png: new print and print preview 
861           icons (panel/menu)  
862         * gtk/stock-icons/stock*_save*.png, stock*_revert.png: new save/revert 
863           icons based on Tuomas' floppy image.
864         * gtk/stock-icons/stock*_search*.png: search and s'n'r icons for panel/menu
865         * gtk/stock-icons/stock*_stop.png: replacing the old 'x' button
866         * gtk/stock-icons/stock*_trash.png: based on Tuomas' trash icon
867         * gtk/stock-icons/stock*_undelete.png: "
868         * gtk/stock-icons/stock_preferences.png: I have a version with a 
869           document base if the sliders are no good.
870         * gtk/stock-icons/stock_properties.png: properties 
871         
872
873         * gtk/stock-icons/stock*_copy.png, stock*_cut.png, stock*_paste.png: Tuomas' 
874           (tigert@ximian.com) clipboard icons
875         * gtk/stock-icons/stock_{up,down,left,right}_arrow.png: tigert's new arrows
876         * gtk/stock-icons/stock*_{undo,redo}.png: tigert's undo/redo icons.
877         * gtk/stock-icons/stock_open.png: shaded open icon by Tuomas. we should make it a
878           little bigger IMHO
879
880 2001-08-16  Sven Neumann  <sven@gimp.org>
881
882         * gtk/gtkbox.c (gtk_box_class_init): removed unused widget_class.
883
884 2001-08-15  Padraig O'Briain  <padraig.obriain@sun.com>
885
886         * gtk/gtkcellrenderertext.c:
887         Avoid warning when specifying NULL for "attributes" property
888
889 2001-08-15  Matthias Clasen  <matthiasc@waldgeist.poet.de>
890
891         * docs/debugging.txt: Add a warning about --enable-debug=no,
892         some editorial changes.
893
894 2001-08-13  Matthias Clasen  <matthiasc@waldgeist.poet.de>
895
896         * gtk/docs/debugging.txt, gdk/gdk.c, gdk/gdkinternals.h, 
897         gdk/x11/gdkmain-x11.c, gtk/gtkdebug.h, gtk/gtkmain.c: Update 
898         debugging info, remove unused debug flags. (#58330)
899
900 Mon Aug 13 13:17:32 2001  Jonathan Blandford  <jrb@redhat.com>
901
902         * gtk/gtktreeselection.c (gtk_tree_selection_select_all): 
903         (gtk_tree_selection_select_all): Remove strict checking for rows.
904
905 2001-08-13  Matthias Clasen  <matthiasc@waldgeist.poet.de>
906         
907         * gtk/gtktooltips.c (gtk_tooltips_set_tip, gtk_tooltips_draw_tips): 
908         Don't remove the tooltip window when the tip text changes. (#15891)
909
910 Sun Aug 12 12:02:09 2001  Owen Taylor  <otaylor@redhat.com>
911
912         * gtk/Makefile.am ($(srcdir)/gtkmarshal.c): Remove extra
913         $(srcdir).
914
915 Sun Aug 12 10:39:12 2001  Owen Taylor  <otaylor@redhat.com>
916
917         * Makefile.am (EXTRA_DIST): Fix problem with trying to
918         dist files from intl/, which is no longer there.
919
920 2001-08-11  Hans Breuer  <hans@breuer.org>
921
922         * gtk/gtkalignment.c, gtk/gtkarrow.c, gtk/gtkaspectframe.c,
923           gtk/gtkcellrenderer.c, gtk/gtkcellrenderertext.c, 
924           gtk/gtkcombo.c, gtk/gtkcurve.c, gtk/gtkfontsel.c, 
925           gtk/gtklayout.c, gtk/gtkmisc.c, gtk/gtkpacker.c, 
926           gtk/gtkprogress.c, gtk/gtkruler.c,, gtk/gtksettings.c,
927           gtk/gtkspinbutton.c, gtk/gtktexttag.c : coalescing property notifies
928
929         * gtk/gtkclist.c, gtk/gtktipsquery.c, gtk/gtktexttag.c,
930           gtk/gtkwidget.c : added G_SIGNAL_TYPE_STATIC_SCOPE to all
931         GDK_TYPE_EVENT signals
932
933         * gtk/gtkalignment.c : removed 'direct allocation bug',
934         which Tim discovered while reading the patch
935
936 Sat Aug 11 14:32:14 2001  Owen Taylor  <otaylor@redhat.com>
937
938         * gtk/gtkwidget.h (gtk_widget_set_default_visual): Add some
939         compat macros for push/pop/set_visual that were supposed
940         to be added a long time ago, but got dropped. 
941
942 Fri Aug 10 16:55:53 2001  Tim Janik  <timj@gtk.org>
943
944         * gtk/gtkwindow.c (gtk_window_set_policy): coalesce multiple
945         property notifies.
946
947 2001-08-07  Havoc Pennington  <hp@pobox.com>
948
949         * gtk/gtkfilesel.c (open_ref_dir): fix a typo.
950
951         * gtk/gtkplug.c (gtk_plug_init): remove setting of auto_shrink;
952         some fixage is needed here, but nothing simple. Owen understands
953         it. ;-)
954
955         * gtk/gtkwindow.h, gtk/gtkwindow.c: Rework code and API for window
956         sizing and positioning.  Also, fix bug in compute_geometry_hints
957         (width/height confusion for setting min size). 
958         (gtk_window_move): new function
959         (gtk_window_resize): new function
960         (gtk_window_get_size): new function
961         (gtk_window_get_position): new function
962         (gtk_window_parse_geometry): new function
963         
964         * gtk/gtkwidget.c (gtk_widget_set_size_request): new function
965         (gtk_widget_get_size_request): new function
966         (gtk_widget_get_usize): delete, that was a short-lived function
967         ;-)
968         (gtk_widget_set_usize): deprecate
969         (gtk_widget_set_uposition): deprecate, make it a trivial 
970         gtk_window_move() wrapper
971         (gtk_widget_class_init): remove x/y/width/height properties,
972         add width_request height_request
973         
974         * demos/*: update to avoid deprecated functions
975         
976         * gtk/gtklayout.c: add x/y child properties
977
978         * gtk/gtkfixed.c: add x/y child properties, and get rid of 
979         uses of "gint16"
980
981         * tests/testgtk.c (create_window_sizing): lots of tweaks to window
982         sizing test
983
984         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Ensure that
985         configure events on toplevel windows are always in root window
986         coordinates, following ICCCM spec that all synthetic events 
987         are in root window coords already, while real events are 
988         in parent window coords. Previously the code assumed that 
989         coords of 0,0 were parent window coords, which was 
990         really broken.
991   
992         * gtk/gtkcontainer.c (gtk_container_get_focus_chain): fix
993         warning
994  
995         * gdk/gdkwindow.h (GdkWindowHints): add GDK_HINT_USER_POS 
996         and GDK_HINT_USER_SIZE so we can set USSize and USPosition 
997         hints in gtk_window_parse_geometry()
998  
999         * gdk/x11/gdkwindow-x11.c (gdk_window_set_geometry_hints): support
1000         new USER_POS USER_SIZE hints    
1001
1002 2001-08-09  Matthias Clasen  <matthiasc@waldgeist.poet.de>
1003
1004         * tests/prop-editor.c (properties_from_type): Use 
1005         g_object_class_list_properties to get the param specs 
1006         for a given type. (#58609)
1007
1008 2001-08-09  Matthias Clasen  <matthiasc@waldgeist.poet.de>
1009
1010         * gtk/gtkstyle.c (gtk_style_real_unrealize): Don't forget to
1011         free the text_aa parts. (#57549)
1012
1013 2001-08-09  Matthias Clasen  <matthiasc@waldgeist.poet.de>
1014
1015         * gdk/gdkgc.c (gdk_gc_set_rgb_bg_color): Set the background color,
1016         not the foreground color. (#57621)
1017
1018 2001-08-09  Alexander Larsson <alexl@redhat.com>
1019
1020         * gdk/win32/gdkfont-win32.c:
1021         Update to the new pango win32 api.
1022
1023 2001-08-08  HideToshi Tajima  <tajima@eng.sun.com>
1024
1025         * gtk/gtkclipboard.c (request_text_received_func): ask apps for
1026         COMPOUND_TEXT instead of TEXT
1027         * gdk/x11/gdkselection-x11.c (gdk_utf8_to_compound_text): correctly
1028         interpret the return value of g_string_to_compound_text()
1029         (#55152)
1030
1031 2001-08-08  Matthias Clasen  <matthiasc@waldgeist.poet.de>
1032
1033         * gtk/gtktreestore.c (gtk_tree_store_iter_n_children): Don't
1034         fail if iter is NULL. (#58347)
1035
1036 2001-08-07  Matthias Clasen  <matthiasc@waldgeist.poet.de>
1037
1038         * gtk/gtktextdisplay.c (render_para, gtk_text_layout_draw): Fix
1039         some off-by-one issues, fixing selection of line-ends. (#50323)
1040
1041 2001-08-07  Matthias Clasen  <matthiasc@waldgeist.poet.de>
1042
1043         * gtk/gtkhsv.c (gtk_hsv_map, gtk_hsv_unmap): Reinstate these
1044         functions in order to make mouse operation work again in the
1045         color wheel. (#58604)
1046
1047 2001-08-07  James Henstridge  <james@daa.com.au>
1048
1049         * gtk/gtkaccellabel.c (gtk_accel_label_set_accel_object): refetch
1050         the accelerator when the accel object is changed.  Fixes bug
1051         #58628.
1052
1053 2001-08-06  HideToshi Tajima  <tajima@eng.sun.com>
1054
1055         * modules/input/gtkimcontextxim.c (mb_to_utf8), xim_text_to_utf8):
1056         Skip g_convert when to_codeset and from_codeset are both 'UTF-8'
1057         (gnome bugzilla #58202)
1058
1059 2001-08-06  Havoc Pennington  <hp@pobox.com>
1060  
1061         * gdk/x11/gdkimage-x11.c (_gdk_x11_get_image): The whole 
1062         GDK_IS_WINDOW() branch of this was a bit screwed up, because 
1063         it was expecting a GdkWindow, not a GdkWindowImplX11.
1064  
1065         Also, we were getting the window rect in screen coords 
1066         and the screen rect in window coords then intersecting 
1067         them; instead, get window rect in window coords.
1068  
1069         Finally, there were codepaths that resulted in a stuck server grab
1070         (when the window was fully onscreen, or on gdk_image_new()
1071         failure); make the server ungrab thing a bit more
1072         robust/consistent.
1073
1074 2001-08-06  Sven Neumann  <sven@gimp.org>
1075
1076         * gdk/gdkpango.c (gdk_pango_context_destroy): 
1077         check if info->colormap != NULL before unref'ing it. It might have
1078         been set to NULL using gdk_pango_context_set_colormap().
1079
1080 Sun Aug  5 11:24:27 2001  Owen Taylor  <otaylor@redhat.com>
1081
1082         * gtk/gtkcolorsel.c (gtk_color_selection_set_current_alpha): 
1083         Fix conversion from float to int so that we don't get
1084         skew in the int => float => int roundtrip. 
1085         (#58120, reported by Vitaly Tishkov). Also fix problem
1086         where if no alpha was set, the returned alpha
1087         from (say) set_current_alpha() was returned as 1, not 65535.
1088
1089 Sun Aug  5 09:48:08 2001  Owen Taylor  <otaylor@redhat.com>
1090
1091         * gtk/gtklist.c (gtk_list_clear_items): Fix
1092         problem with selecting a new focus child.
1093
1094         * gtk/gtklist.c (gtk_list_clear_items): Clear 
1095         list->undo/list_focus_child after unparenting
1096         child, since unparenting the child can result
1097         in list->last_focus_child being set. (#58024)
1098
1099         * Makefile.am (SUBDIRS): Add target specific pc
1100         files to DISTCLEANFILES.
1101
1102         * gtk/Makefile.am: add @GTK_DEBUG_FLAGS@
1103         (58327, Matthias Clasen)
1104
1105 Sat Aug  4 19:28:21 2001  Owen Taylor  <otaylor@redhat.com>
1106
1107         * tests/testgtk.c: Patch from Hans (with various modifications),
1108         to add the ability to use testgtk as a rough-and-ready
1109         benchmark. Try, 'testgtk --bench all:5' (if you want decent
1110         numbers, run without a window manager)
1111
1112 2001-08-04 Alexander Larsson <alexl@redhat.com>
1113
1114         * gdk/win32/gdkinput.c:
1115         Add #ifdef HAVE_WINTAB around wintab.h include.
1116
1117         * gtk/gtk.def:
1118         Removed marshals that have been moved to glib.
1119         Commented out plug and socket. They didn't compile for me 
1120         on win32.
1121
1122 2001-08-04  Hans Breuer  <hans@breuer.org>
1123
1124         * gtk/stocks-icons/makefile.msc : new file
1125         * gtk/makefile.msc.in : use it
1126
1127         * gtk/gtkstyle.c : not all platforms do provide M_PI and
1128         friends, but luckily there is G_PI
1129
1130         * gtk/gtk.def : updated
1131
1132         * gdk/win32/gdkwindow.c (gdk_window_new) : don't make all TEMP 
1133         windows WS_POPUP, but only those without a parent. This fixes the 
1134         mis-alignment between the selectable (temp, input only) window and 
1135         the window text of GtkLabel.
1136
1137         (gdk_window_show) : respect private->state when actually showing
1138         the window.
1139
1140         (gdk_window_set_transient_for) : Implementation from Wolfgang 
1141         Sourdeau <wolfgang@contre.com> ported to 2.0 and added some 
1142         error handling. Should fix #50586.
1143
1144         * gdk/win32/gdkevents-win32.c : beautify log output
1145
1146 2001-08-04  Michael Natterer  <mitch@gimp.org>
1147
1148         * gtk/gtkitemfactory.c (gtk_item_factory_create_item):
1149         Need to show the image after adding it to the GtkImageMenuItem.
1150         This used to work without in testgtk because of the
1151         gtk_widget_show_all() at the end of the function.
1152         (Closes #54978).
1153
1154 Tue Jul 31 22:59:33 2001  Tim Janik  <timj@gtk.org>
1155
1156         * gtk/gtknotebook.c (gtk_notebook_get_child_property): 
1157         (gtk_notebook_set_child_property): fix finding of child's page,
1158         since we have to validly deal with labels and menus here as well.
1159         (gtk_notebook_get_child_property): fix warning.
1160         (gtk_notebook_class_init): property tab_pack is of type
1161         GTK_TYPE_PACK_TYPE (enum) not boolean.
1162         (gtk_notebook_find_child): don't always warn, we might be looking
1163         for a label or menu child.
1164         (gtk_notebook_map): fix mapping of panel.
1165
1166         * gtk/gtkwidget.c (gtk_widget_set_child_visible): always constrain
1167         widget's mapped state, regardless of the value being set equals
1168         old settings, since things like REALIZED(parent) or MAPPED(parent)
1169         may have changed since the old value was set. make it an error to
1170         invoke this function on a toplevel widget.
1171
1172 2001-07-31  Darin Adler  <darin@bentspoon.com>
1173
1174         * gdk/gdkprivate.h:
1175         * gdk/x11/gdkx.h:
1176         Put all mentions of GdkFont inside #ifndef GDK_DISABLE_DEPRECATED.
1177
1178         * demos/gtk-demo/menus.c: (do_menus): Cast to G_OBJECT, not
1179         GTK_OBJECT.
1180
1181 Tue Jul 31 15:34:57 2001  Jonathan Blandford  <jrb@redhat.com>
1182
1183         * gtk/gtktreeview.c (gtk_tree_view_remove_column): Whoops.  Stupid
1184         scoping error pointed out by matthiasc@poet.de.
1185
1186 2001-07-31  Sven Neumann  <sven@gimp.org>
1187
1188         * demos/gtk-demo/appwindow.c
1189         * demos/gtk-demo/item_factory.c
1190         * tests/testgtk.c: gtk_accel_group_attach() takes a GObject.
1191
1192 Mon Jul 30 10:49:16 PDT 2001 Suresh Chandrasekharan <suresh.chandrasekharan@sun.com>
1193
1194         * gtk/gtksignal.h (gtk_signal_handler_pending): corrected the wrong
1195         argument order for g_signal_has_handler_pending.
1196
1197 Sun Jul 29 17:14:01 2001  Tim Janik  <timj@gtk.org>
1198
1199         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc): use g_file_test()
1200         instead of long deprecated g_scanner_stat_mode().
1201
1202 2001-07-29  Hans Breuer  <hans@breuer.org>
1203
1204         * gdk/makefile.msc : build in the backend dir after
1205         auto-generating files
1206
1207         * gdk/win32/gdkfont-win32.c (gdk_font_load) : reimplement
1208         with code from win32-production-branch.
1209
1210         *  gdk/win32/gdkwindow-win32.c : set the private->destroyed flag
1211         before calling DestroyWindow, which indirectly calls 
1212         gdk_window_destroy_notify ()
1213
1214         (performance patch merged from win32-production-branch)
1215         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_segments): 
1216         Use PatBlt() instead of LineTo() when possible (solid single-pixel pen, 
1217         R2_COPYPEN rop). It is claimed to be much faster.
1218
1219 Fri Jul 27 11:31:15 2001  Jonathan Blandford  <jrb@redhat.com>
1220
1221         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_get_property):
1222         add an "attributes" property to the text renderer for ATK.
1223
1224 2001-07-26  Alex Larsson  <alexl@redhat.com>
1225
1226         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image):
1227         Initialize image->bits_per_pixel from the drawable, not from
1228         the root window.
1229
1230         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_get_depth):
1231         Fix cast. argument is an IMPL already.
1232
1233 2001-07-15  James Henstridge  <james@daa.com.au>
1234
1235         * gtk/gtkwindow.c (gtk_window_add_accel_group): cast to GObject.
1236         (gtk_window_remove_accel_group): same here.
1237         (gtk_window_key_press_event): same here.
1238
1239         * gtk/gtkwidget.c (gtk_widget_add_accelerator): cast to GObject.
1240         (gtk_widget_remove_accelerator): same here.
1241         (gtk_widget_remove_accelerators): same here.
1242
1243         * gtk/gtkplug.c (gtk_plug_accel_entries_changed): same here.
1244
1245         * gtk/gtkmenushell.c (gtk_menu_shell_key_press): cast to GObject
1246         instead of GtkObject.
1247
1248         * gtk/gtkmenu.c (gtk_menu_key_press): update since GtkAccelGroup
1249         now takes GObjects.
1250
1251         * gtk/gtkitemfactory.c (gtk_item_factory_propagate_accelerator):
1252         pass a GObject to gtk_accel_group_entries_from_object.
1253         (gtk_item_factory_create_item): s/accel_widget/accel_object/
1254
1255         * gtk/gtk-boxed.defs: remove GtkAccelGroup boxed def.
1256
1257         * gtk/gtkaccellabel.c: convert to handle GObject accel objects.
1258
1259         * gtk/gtkaccellabel.h: fix header to reflect that arbitrary
1260         GObjects can have accelerators set now.  Add compatibility
1261         defines.
1262
1263         * gtk/gtkmarshal.list: add missing marshallers.
1264
1265         * gtk/gtkaccelgroup.[ch]: convert to a GObject, and allow setting
1266         accelerators on plain GObjects.  gtk_accel_group_object_destroy
1267         has been converted into a weak reference, and
1268         gtk_accel_group_delete_entries is now a destroy notify for that
1269         piece of data.
1270
1271 2001-07-23  Ron Steinke  <rsteinke@w-link.net>
1272
1273         * gdk/gdkdraw.c: Added a check on the colormap depth to
1274         gdk_drawable_set_colormap()
1275         * gdk/x11/gdkimage-x11.c: combination of Matthias Clasen's
1276         patch to fix colorsel and my patch to fix gdk_drawable_get_image()
1277         for pixmaps without visuals (more specifically, bitmaps)
1278         * gdk/x11/gdkpixmap-x11.c: Fixed gdk_pixmap_new() so it
1279         doesn't set a colormap with the wrong depth
1280
1281
1282 2001-07-22  Anders Carlsson  <andersca@gnome.org>
1283
1284         * gtk/gtktreeview.c (gtk_tree_view_class_init): Replace the
1285         expander_height and expander_width properties with a single
1286         property, expander_size.
1287         (gtk_tree_view_init): Set the tab_offset to expander_size
1288         plus some padding.
1289         (gtk_tree_view_unrealize): Remove the expand/collapse
1290         timeout if it exists.
1291         (coords_are_over_arrow): Fix a small bug.
1292         (gtk_tree_view_motion_draw_column_motion_arrow): Use
1293         expander_size.
1294         (gtk_tree_view_draw_focus): Use "treeview" instead of
1295         "add-mode" as detail when drawing the focus.
1296         (gtk_tree_view_bin_expose): Use "treeview-drop-indicator"
1297         instead of "add-mode" as detail when drawing the focus.
1298         (gtk_tree_view_deleted): If we have a node currently being
1299         expanded or collapsed, remove the timeout and set the node 
1300         to NULL.
1301         (gtk_tree_view_queue_draw_arrow): New function that just
1302         redraws the arrow of a node.
1303         (gtk_tree_view_draw_arrow): Use expander_size instead of
1304         expander_width/expander_height, also pass a different
1305         expander_style to gtk_paint_expander depending on the 
1306         state of the node being drawn.
1307         (expand_collapse_timeout): New function for expanding 
1308         or collapsing a node depending on the previous state.
1309         (gtk_tree_view_real_expand_row): Add timeout and set 
1310         correct state for node being expanded.
1311         (gtk_tree_view_real_collapse_row): Add timeout and set
1312         correct state for node being collapsed.
1313
1314         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): Add
1315         information about the node currently being expanded or
1316         collapsed, and also a timeout id.
1317
1318         * gtk/gtkstyle.h (struct _GtkStyleClass): Replace is_open
1319         with expander_style for draw_expander.
1320
1321         * gtk/gtkstyle.c (gtk_draw_expander): Replace is_open with
1322         expander_style.
1323         (create_expander_affine): New function for creating an 
1324         expander affine.
1325         (apply_affine_on_point): New function for applying an 
1326         affine to a point.
1327         (gtk_default_draw_expander): Modified to take expander_style
1328         instead of is_open, and to draw the rectangle rotated differently
1329         depending on the expander style.
1330         (gtk_paint_expander): Replace is_open with expander_style.
1331
1332         * gtk/gtkrbtree.h: Add expander states to GtkRBNodeColor.
1333
1334         * gtk/gtkenums.h: Add expander style enum.
1335
1336 2001-07-21  Jonas Borgström  <jonas@codefactory.se>
1337
1338         * gtk/gtktreemodel.c (gtk_tree_model_foreach): Check the return
1339         value from gtk_tree_model_get_iter, the model might be empty.
1340
1341 2001-07-20  Hans Breuer  <hans@breuer.org>
1342
1343         * gdk/win32/gdkinput-win32.c : gdk_device_get_history moved to
1344         gdk/gdkinput.c like the other backends
1345
1346         * gdk/win32/gdkinput-win32.h :
1347         * gdk/win32/gdkinput.c :
1348         * gdk/win32/gdkvisual-win32.c :
1349         * gdk/win32/gdkwin32.h : mechanical adaption to GdkDevice and
1350         GdkVisual GObjectification. UNTESTED for pen-devices because
1351         I simply have none.
1352
1353         * gdk/gdk.def :
1354         * gtk/gtk.def : updated externals
1355
1356         * gtk/gtkiconfactory.c :
1357         * gtk/gtkoldeditable.c : GError *error needs to be initialized (= NULL) 
1358         before passing &error to functions to avoid strange crashes
1359         
1360         * gtk/gtkcontainer.c (gtk_container_real_set_focus_child) : is static
1361
1362         * gtk/gtkwidget.c (gtk_widget_get_child_visible): use g_return_val_if_fail
1363
1364         * gtk/makefile.msc.in : updated
1365
1366 Thu Jul 19 15:35:32 2001  Owen Taylor  <otaylor@redhat.com>
1367
1368         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_set_vadjustment):
1369         Add property support. (#51858)
1370
1371 Thu Jul 19 14:56:33 2001  Owen Taylor  <otaylor@redhat.com>
1372
1373         * gtk/gtkaccellabel.c (gtk_accel_label_class_init) 
1374         * gtk/gtkinputdialog.c (gtk_input_dialog_set_key):
1375         Use Shift/Ctrl instead of Shft/Ctl. (#53807)
1376
1377 Thu Jul 19 11:41:00 2001  Owen Taylor  <otaylor@redhat.com>
1378
1379         * gtk/gtkcolorsel.c: Add propery support (roughly
1380         based on patch from Lee Mallabone, #51014)
1381
1382         * gtk/gtkcolorsel.h: Mark gtk_color_selection_set_update_policy as
1383         deprecated, since we already g_warning() on it.
1384
1385 Thu Jul 19 14:24:34 2001  Owen Taylor  <otaylor@redhat.com>
1386
1387         * gtk/gtkentry.c (gtk_entry_set_positions): Fix
1388         typo that sometimes caused selection not to work properly.
1389
1390         * gtk/gtkentry.c (gtk_entry_grab_focus): Select text in
1391         entry when tabbing in. (#57743)
1392         
1393         * gtk/gtkentry.c (gtk_entry_motion_notify): If the
1394         user drags up above or down below the entry, move
1395         to the end or the beginning of the entry. (Suggestion
1396         from Jay Cox, #50940)
1397
1398         * gtk/gtkentry.c (gtk_entry_move_cursor): If we have
1399         a current selection, then when moving by chars or
1400         words, move to the end of the selection rather than
1401         from entry->current_pos. (Suggestion from Jay Cox,
1402         #50942)
1403         
1404 Thu Jul 19 12:14:28 2001  Owen Taylor  <otaylor@redhat.com>
1405
1406         * gtk/gtkwindow.c (gtk_window_set_decorated): Actualy
1407         set window->decorated. (Patch from Hidetoshi Tajima,
1408         #55846)
1409
1410 Sat Jul  7 02:50:14 2001  Owen Taylor  <otaylor@redhat.com>
1411
1412         * gtk/gtkwidget.c (gtk_widget_set_parent): Enforce
1413         the widget/child realization/mapping invariants.
1414
1415         * gtk/gtkwidget.[ch] gtk/gtkprivate.h: Add functions 
1416         gtk_widget_[get/set]_child_visible() to control
1417         whether visible children of a mapped window are
1418         mapped.
1419
1420         * docs/widget_system.txt: Updated for changes in
1421         container contract, and addition of GTK_CHILD_VISIBLE.
1422
1423         * gtk/gtkcontainer.c: Add generic map()/unmap()
1424         functions that work for almost all containers.
1425
1426         * gtk/gtknotebook.c gtk/gtkpacker.c: Use 
1427         gtk_widget_set_child_visible() where necessary.
1428
1429         * gtk/*.c: Remove excess map(), unmap(), and 
1430         realization/mapping invariant enforcing code
1431         from many containers.
1432
1433 Wed Jul 18 19:51:45 2001  Owen Taylor  <otaylor@redhat.com>
1434
1435         * gtk/gtktextview.c (gtk_text_view_set_attributes_from_style): 
1436         Get the foreground color from 'text', nor 'fg'. (#57568)
1437
1438 Wed Jul 18 19:28:46 2001  Owen Taylor  <otaylor@redhat.com>
1439
1440         * gtk/*.c: Patch from Matthias Clasen to remove remove
1441         all instances of g_return_if_fail (foo != NULL); that are
1442         immediately before a g_return_if_fail (GTK_IS_FOO (foo));
1443         since the second check catches the NULL anyways.
1444
1445 Wed Jul 18 18:23:05 2001  Owen Taylor  <otaylor@redhat.com>
1446
1447         * gtk/gtkbutton.c gtk/gtkentry.c gtk/gtkmenu.c gtk/gtktextview.c
1448         gtktreeview.c: Fix idles and timeouts to be properly surrounded by 
1449         GDK_THREADS_ENTER()/LEAVE() pairs.
1450
1451         * gtk/gtkdialog.c gtk/gtkclipboard.c: Surround calls
1452         to g_main_loop_run() with GDK_THREADS_LEAVE()/ENTER()
1453         pairs. (Problem found by M. Meeks)
1454
1455 2001-07-18  Darin Adler  <darin@bentspoon.com>
1456
1457         * gtk/gtkiconfactory.c: (gtk_icon_size_register): Reorder code so
1458         that we don't get a g_warning message every time we register a new
1459         icon size.
1460
1461         * gdk/x11/gdkcolor-x11.c: (gdk_colormap_alloc1): Fix warning by
1462         using pixel variable of the correct type.
1463         
1464 Fri Jul 13 15:33:32 2001  Owen Taylor  <otaylor@redhat.com>
1465
1466         * gdk/gdkwindow.[ch]: Add a function gdk_window_get_internal_paint_info(),
1467         so that using X functions on a GdkWindow is possible, if
1468         a little hairy.
1469
1470         * gdk/gdkgc.c (gdk_gc_offset): Add a function to offset the clip
1471         and ts_origin of a GC, so that external parties can offset/restore
1472         a GC, when using gdk_window_get_internal_paint_info().
1473
1474 2001-07-17  Darin Adler  <darin@bentspoon.com>
1475
1476         * .cvsignore: Ignore the sgml directory made by gtkdoc.
1477         * demos/pixbuf-demo.c: (main): Use gtk_window_set_resizable
1478         instead of the deprecated gtk_window_set_policy.
1479         * demos/testpixbuf-scale.c: Add missing <stdlib.h> include.
1480         * gdk/gdkkeys.c: (gdk_keymap_class_init): Remove empty finalize
1481         function to get rid of warning and some code too.
1482         * gdk/x11/gdkfont-x11.c: (gdk_font_charset_for_locale): Add
1483         missing const.
1484         * gdk/x11/gdkmain-x11.c: (_gdk_windowing_init_check): Remove
1485         unused local.
1486         * gdk/x11/gdkpango-x11.c: (gdk_pango_context_get): Add missing
1487         const.
1488         * gdk/x11/gdkselection-x11.c: (gdk_text_property_to_utf8_list),
1489         (gdk_utf8_to_compound_text): Add missing const.
1490         * gtk/gtkimage.c: (gtk_image_expose): Remove unused local.
1491         * gtk/gtkmenubar.c: (gtk_menu_bar_hierarchy_changed): Add missing
1492         cast and get rid of an unnecessary one.
1493         * gtk/gtksettings.c: (gtk_settings_notify): Remove unused local.
1494         * gtk/gtkstatusbar.c: (gtk_statusbar_size_allocate): Remove unused
1495         local.
1496         * gtk/gtktreemodelsort.c: (gtk_tree_model_sort_build_level):
1497         Remove unused local.
1498         * modules/input/gtkimcontextxim.c: (gtk_im_context_xim_new): Add
1499         missing const.
1500         * tests/testsocket.c: (add_child): Add cast so the printf format
1501         doesn't make us implicitly depend on what integer type
1502         gtk_socket_get_id returns.
1503         * tests/testtextbuffer.c: Add missing const.
1504         * tests/testtreefocus.c: (main): Remove unused local.
1505         * tests/treestoretest.c: (iter_remove): Remove unused local.
1506         (uppercase_value): Remove unused function.
1507         (make_window): Add statement to quiet the compiler's uninitialized
1508         variable warning.
1509
1510 Sat Jul 14 12:47:35 2001  Tim Janik  <timj@gtk.org>
1511
1512         * gtk/gtkrange.c:
1513         (second_timeout): 
1514         (initial_timeout): 
1515         (update_timeout): add GDK_THREADS_ENTER/GDK_THREADS_LEAVE.
1516         (gtk_range_calc_layout): compute the new layout based on an
1517         adjustment->value being passed in as argument.
1518         (gtk_range_button_press): for button2 slider warps, first recalc
1519         the layout, then adjust the value. also, use update_slider_position()
1520         for adjusting the value, so we keep pixel quantisation at which we
1521         usually operate (upon motion or button releases). the reason for this
1522         is that, we can't change the adjustment upon button2 presses to a non
1523         quantised value and upon button2 release re-quantise the value since
1524         that'd alter the value even if we didn't get any motion events (causing
1525         unexpected scroll area warps upon release and/or slider pixel-jitter).
1526         (gtk_range_motion_notify): update the slider position from queried
1527         coordinates, not event coordinates.
1528
1529 Fri Jul 13 09:47:52 2001  Tim Janik  <timj@gtk.org>
1530
1531         * gtk/gtkstyle.c (gtk_default_draw_focus): fix line style resetting,
1532         the default gc values are: width=0, CapBut, JoinMiter.
1533
1534 2001-07-13  Anders Carlsson  <andersca@codefactory.se>
1535
1536         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render): Take
1537         into account the xpad and ypad when calculating the width and the
1538         height of the pixbuf cel.
1539
1540 Thu Jul 12 18:29:40 2001  Owen Taylor  <otaylor@redhat.com>
1541
1542         * gtk/gtkradiomenuitem.[ch] (gtk_radio_menu_item_group): 
1543         Rename to gtk_radio_menu_item_get_group(), add deprecated
1544         alias. (#57044)
1545
1546         * gtk/gtkfilesel.c: Indentation fix.
1547
1548 Thu Jul 12 17:33:00 2001  Owen Taylor  <otaylor@redhat.com>
1549
1550         * gtk/gtkbbox.h gtk/gtkcompat.h: Patch from Mathias 
1551         Hasselmann to fix warnings in compat macros. 
1552         (#56773)
1553
1554         * gtk/gtkmenubar.c (gtk_menu_bar_hierarchy_changed): Fix 
1555         stupid wrong cast added in last patch.
1556
1557 Thu Jul 12 16:51:34 2001  Owen Taylor  <otaylor@redhat.com>
1558
1559         * gtk/gtkwidget.c: Replace a couple of inappropriate calls to 
1560         GTK_WIDGET_HAS_FOCUS() with gtk_widget_is_focus(). (#57067)
1561
1562 Thu Jul 12 14:06:19 2001  Owen Taylor  <otaylor@redhat.com>
1563
1564         * gtk/gtkmenubar.c (gtk_menu_bar_hierarchy_changed): Add
1565         missing cast.
1566
1567         * gtk/gtkcontainer.c (gtk_container_get_focus_chain): Fix
1568         NULL/FALSE return value confusion.
1569
1570         * gtk/gtkrange.c (coord_to_value): Fix division-by-zero
1571         problem when scrollbar completely fills range. (Patch
1572         from  Matthias Clasen, #57047)
1573
1574 Thu Jul 12 13:53:28 2001  Owen Taylor  <otaylor@redhat.com>
1575
1576         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Properly
1577         clean up when handling events for move-resize emulation.
1578         (Problem traced down by Matthias Clasen, #57271)
1579
1580 Thu Jul 12 13:43:27 2001  Owen Taylor  <otaylor@redhat.com>
1581
1582         * gtk/gtkclist.c gtk/gtkcolorsel.c gtk/gtkcombo.c
1583           gtk/gtkctree.c gtk/gtkcurve.c gtk/gtkentry.c
1584           gtk/gtkfontsel.c gtk/gtkhandlebox.c 
1585           gtk/gtkimcontextsimple.c gtk/gtkmain.c gtk/gtkmenu.c
1586           gtk/gtkmenuitem.c gtk/gtkoptionmenu.c gtk/gtkpixmap.c
1587           gtk/gtkselection.c gtk/gtktextdisplay.c gtk/gtktextview.c
1588           gtk/gtktooltips.c gtk/gtkwidget.c gtk/gtkwindow.c:
1589         Formatting fixes from multihead brnach. [ mostly foo(bar) => foo (bar) ]
1590
1591 2001-07-09  Peter Williams  <peterw@ximian.com>
1592
1593         * gtk/Makefile.am ($(srcdir)/stamp-gtk.defs): Add a cd $(srcdir)
1594         for when srcdir != builddir
1595
1596 Mon Jul  9 12:50:51 2001  Jonathan Blandford  <jrb@redhat.com>
1597
1598         * gtk/gtktreemodel.c: remove gtk_tree_model_get_first in favor of
1599         gtk_tree_model_get_iter_root.
1600
1601         * gtk/gtkliststore.c: Add a bunch of g_return statements.
1602         (gtk_list_store_iter_n_children): Fix up.
1603
1604         * gtk/gtktreestore.c: Add a bunch of g_return statements.
1605
1606 Fri Jul  6 15:38:33 2001  Owen Taylor  <otaylor@redhat.com>
1607
1608         * gtk/gtkwidget.c (gtk_widget_class_init):
1609         G_SIGNAL_TYPE_STATIC_SCOPE GtkSelectionData to
1610         restore some workingness.
1611
1612         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Fix 
1613         handle of window type for input-only windows.
1614
1615 Thu Jul  5 21:53:46 2001  Owen Taylor  <otaylor@redhat.com>
1616
1617         * gtk/gtkbbox.[ch] gtk/gtkbox.[ch] gtk/gtk[hv]bbox.c:
1618         Patch from Gregory Merchan to add 
1619         gtk_button_box_set_secondary(), which separates
1620         the child into a separate group from the normal
1621         buttons. (#56331)
1622
1623         * gtk/gtkdialog.c: Make help buttons secondary by
1624         default.
1625
1626         * gtk/gtkbbox.c: Added a child property "secondary".
1627
1628         * gtk/testgtk.c: Turn on the help button for the 
1629         color selector to check that it properly appears
1630         as secondary.
1631
1632 Mon Jul  2 01:09:37 2001  Owen Taylor  <otaylor@redhat.com>
1633  
1634         * gdk/gdkwindow.[ch] gdk/gdkinternals.h gdk/x11/gdkwindow-x11.c
1635         gdk/linux-fb/gdkwindow-fb.c gdk/x11/gdkwindow-x11.c gdk/gdk:
1636         Add gdk_set_pointer_hooks() to allow pointer-querying to
1637         be hooked by an event record/playback system like GERD.
1638         (#56914)
1639         
1640 Thu Jul  5 08:57:07 2001  Owen Taylor  <otaylor@redhat.com>
1641
1642         * gtk/gtkwidget.c (gtk_widget_reset_rc_style): Pass
1643         in the right value of initial_emission to
1644         gtk_widget_set_style_internal (#57091)
1645
1646 Wed Jul  4 23:17:04 2001  Owen Taylor  <otaylor@redhat.com>
1647
1648         * gtk/gtkdnd.c (gtk_drag_dest_hierarchy_changed):
1649         Make compile.
1650
1651         * gtk/gtkwidget.c (gtk_widget_reset_rc_style): Fix problem
1652         with calling gtk_widget_set_style_internal() with
1653         the old style, not the new style. (#56989)
1654
1655 Wed Jul  4 22:35:40 2001  Owen Taylor  <otaylor@redhat.com>
1656
1657         * gtk/gtklabel.c gtk/gtkmenubar.c gtk/gtktreeviewcolumn.c
1658           gtk/gtkwidget.c:
1659         Check GTK_WIDGET_TOPLEVEL(gtk_widget_get_toplevel (widget)),
1660         not GTK_WIDGET_GET_ANCESTOR ... see 
1661         http://mail.gnome.org/archives/gtk-devel-list/2001-July/msg00072.html.
1662         Indicate the best practice in the docs for gtk_widget_get_toplevel().
1663
1664         * gtk/gtkwidget.[ch]: Expose a private _gtk_widget_hierarchy_changed(),
1665         so GtkPlug can give the correct signals when transforming
1666         from a child to a toplevel.
1667         
1668         * gtk/gtkdnd.c (gtk_drag_dest_hierarchy_changed): Handle
1669         reparentation correctly.
1670
1671         * gtk/gtkwidget.c (gtk_widget_propagate_hierarchy_changed):
1672         Propagate the previous_toplevel argument down properly.
1673
1674         * gtk/gtklabel.c (gtk_label_finalize): Fix unrefing
1675         of wrong atr list.
1676
1677         * gtk/gtkplug.[ch]: Add an "embedded" signal.
1678
1679         * gtk/gtksocket.[ch]: Add "child_added", "child_removed"
1680         signals.
1681
1682         * gtk/gtkplug.[ch] gtk/gtksocket.[ch]: Add 
1683         functions gtk_plug_get_id(), gtk_socket_get_id(),
1684         to avoid the user having to worry about realization,
1685         and gdkx.h.
1686
1687         * tests/testsocket.c: Extend to try out the new signals
1688         and gtk_plug/socket_get_id().
1689
1690         * gtk/gtklabel.c (gtk_label_set_pattern_internal): Fix
1691         setting of underline attributes.
1692
1693         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Ignore
1694         DestroyNotify events from SubstructureNotifyMask
1695
1696         * gdk/x11/gdkwindow-x11.c (gdk_window_reparent):
1697         Switch GDK_WINDOW_TYPE (window) as needed.
1698
1699         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Clean up,
1700         allow creation of toplevel windows as children of
1701         foreign windows.
1702
1703         * gtk/gtkplug.c: Remove hacks involving changing private
1704         fields of GdkWindow.
1705
1706         * gtk/gtkplug.[ch] gtk/gtksocket.c: Work to make 
1707         exactly the same signals and notification
1708         be emitted for local embedding as for inter-process
1709         embedding.
1710
1711 2001-07-04  James Henstridge  <james@daa.com.au>
1712
1713         * gtk/gtkliststore.h: add missing gtk_list_store_newv prototype.
1714
1715 Mon Jul  2 16:53:25 2001  Owen Taylor  <otaylor@redhat.com>
1716
1717         * gtk/xembed.h gtk/gtkplug.c gtk/gtksocket.c: For
1718         XEMBED embedding add a _XEMBED_INFO property to the
1719         client with version number and a "mapped" flags.
1720         Use the mapped flag instead of the racy MapRequestEvent
1721
1722         * gtk/gtksocket.c: Clean up the gtk_socket_steal()
1723         code to reliably set things (when the child is a passive
1724         embedder participating in the XEMBED protocol) intead
1725         of just being a hack for embedding non-participating
1726         programs. Fix various bugs and race conditions.
1727         
1728         * gtk/gtksocket.[ch] gtk/gtkplug.[ch]: Make local embedding
1729         work by simply making the GtkSocket the gtk parent
1730         of the GtkPlug. Set a flag in this case and make
1731         the GtkPlug work like a normal container by overriding
1732         methods such as check_resize and "chaining past" GtkWindow
1733         to GtkBin.
1734
1735         * gtk/gtkentry.c (gtk_entry_real_activate)
1736           gtk/gtkmain.c (gtk_propagate_event): 
1737         Eliminate use of gtk_widget_get_ancestor (widget, GTK_TYPE_WINDOW).
1738         
1739         * gtk/gtkwidget.c (gtk_widget_get_toplevel,
1740         gtk_widget_get_ancestor):
1741         Explain why gtk_widget_get_ancestor (widget, GTK_TYPE_WINDOW)
1742         might not give the expected result and recommend
1743         an alternative.
1744
1745         * tests/testsocket.c tests/testsocket_child.c
1746         tests/testsocket_common.c tests/Makefile.am: Extended
1747         to test different type of adding plugs to sockets
1748         (local,active,passive), and to test mapping/unmapping
1749         the plug.
1750
1751         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Don't
1752         mark the window as destroyed until after we
1753         called _gdk_windowing_window_destroy().
1754         (_gdk_windowing_window_destroy() may use GDK functions
1755         on the window.)
1756
1757         * gdk/x11/gdkinput.c: Remove the check for finalization - 
1758         devices can be finalized under some circumnstances.
1759  
1760         * gdk/x11/gdkinput-x11.c (gdk_input_device_new): Fix 
1761         small problem with GDK_TYPE_DEVICE.
1762  
1763 2001-07-02  Havoc Pennington  <hp@pobox.com>
1764
1765         * gdk/x11/gdkwindow-x11.c (gdk_wmspec_change_state): fix to 
1766         use constants not atoms.
1767
1768 2001-07-02  James Henstridge  <james@daa.com.au>
1769
1770         * gtk/gtktextview.c (gtk_text_view_class_init): same here for
1771         PANGO_TYPE_TAB_ARRAY.
1772
1773         * gtk/gtktexttag.c (gtk_text_tag_class_init): same here, but also
1774         for PANGO_TYPE_TAB_ARRAY.
1775
1776         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_class_init):
1777         s/GTK_TYPE_PANGO_FONT_DESCRIPTION/PANGO_TYPE_FONT_DESCRIPTION/
1778
1779         * gtk/gtk-boxed.defs: move all the boxed definitions to the top of
1780         the file.  Remove Pango types from defs -- they are now defined in
1781         libpango.
1782
1783 Mon Jul  2 06:35:10 2001  Tim Janik  <timj@gtk.org>
1784
1785         * gdk/gdkkeys.c (gdk_keymap_class_init): s/signal_newc/signal_new/
1786
1787         * gtk/gtkobject.c (gtk_object_destroy): invoke
1788         g_object_run_dispose().
1789
1790         * gtk/gtkwindow.c: 
1791         * gtk/gtkwidget.c: 
1792         * gtk/gtkobject.c:
1793         * gtk/gtklist.c: s/shutdown/dispose/ for the GObject
1794         method.
1795
1796 Sat Jun 30 20:44:48 2001  Owen Taylor  <otaylor@redhat.com>
1797
1798         * gtk/gtktypeutils.c (gtk_type_class): Remove
1799         change check for GTK_TYPE_OBJECT derivation to
1800         G_TYPE_OBJECTS - it's Tim-approved to use this 
1801         for arbitary objects.
1802
1803         * gtk/gtkwindow.c gtk/gtkcontainer.[ch]: underscore
1804         prefix gtk_container_dequeue_resize_handler().
1805
1806         * gtk/gtkwidget.[ch]: Add a previous_toplevel argument
1807         to the hierarachy_changed signal, since you otherwise
1808         have to always keep that around.
1809
1810         * gtk/gtkmenubar.c gtk/gtklabel.c gtk/gtksocket.c: Adapt
1811         for extra argument to hierarchy_changed.
1812
1813 Tue Jun 26 19:39:03 2001  Owen Taylor  <otaylor@redhat.com>
1814
1815         * gtk/gtkwidget.c (gtk_widget_set_style): Allow %NULL
1816         for style to mean "revert to default style"
1817
1818         * gtk/gtkwidget.[ch] (gtk_widget_set_rc_style,
1819           gtk_widget_restore_default_style): Make this functions
1820         deprecated aliases for gtk_widget_set_style (widget, NULL).
1821
1822         * gtk/gtkwidget.[ch]: Remove:
1823            gtk_widget_set_default_style ()
1824            gtk_widget_push_style ()
1825            gtk_widget_pop_style ()
1826         These functions interact are overriden by RC files, and
1827         thus virtually useless, and complicated.
1828
1829 Fri Jun 22 18:49:48 2001  Owen Taylor  <otaylor@redhat.com>
1830
1831         * gtk/gtkrc.c: Add a GtkRcContext structure to hold 
1832         most of the previous global variables in gtkrc.c. This is
1833         in preparation for multi-head, since each screen can
1834         have different GtkSettings and RC information.
1835
1836         * gtk/gtkrc.[ch]: 
1837
1838         * gtk/gtkrc.h (struct _GtkRcStyleClass): Add a
1839         GtkSettings parameter to GtkRcStyle::parse.
1840
1841         * gdk/x11/gdkevents-x11.c gtk/gtksettings.c gtk/gtkrc.c: 
1842         Add two new settings gtk-theme-name, gtk-key-theme-name,
1843         for RC files that are loaded by name after reading
1844         the default RC files.
1845         
1846         * gtk/gtkrc.c: Allow priorities for styles, as wll as
1847         bindings.
1848
1849         * gtk/gtkenums.h gtk/gtkrc.c: Add GTK_PATH_PRIO_THEME,
1850         and use it by default for RC files loaded via 
1851         gtk-theme-name, gtk-key-theme-name.
1852
1853         * gtk/gtkiconfactory.c (gtk_icon_source_set_filename)
1854         gtk/gtkrc.c (gtk_rc_parse_pixmap_path_string) 
1855         tests/testgtkrc: Require pathnames to be absolute.
1856
1857         * gtk/gtkrc.c gtk/gtkiconfactory.c: Look up the full filename for
1858         the source when parsing, since the operation of looking up a
1859         pixmap from an RC file depends on the parsing context.
1860
1861         * gtk/gtkrc.c (gtk_rc_context_reparse_all): Automatically
1862         reset RC styles on all widgets when files are reparsed.
1863
1864         * tests/testgtk.c (create_rc_file) 
1865           gtk/gtkwindow.c (gtk_window_read_rcfiles): 
1866         Simplify, now that gtk_rc_reparse_all() resets styles on
1867         all widgets itself.
1868
1869         * gtk/gtkmain.c (gtk_get_default_language): Fix broken
1870         return value.
1871
1872         * gtk/gtksettings.[ch] (gtk_settings_install_property[_ch]): Remove
1873         GtkSettings argument.
1874
1875         * gtk/gtksettings.[ch] (gtk_settings_get_default): Rename from
1876         gtk_settings_get_global().
1877
1878         * gtk/gtkwidget.[ch]: Add a function gtk_widget_Get_settings()
1879         to get the appropriate GtkSettings for a widget. (For now,
1880         just gets the default GtkSetttings.) 
1881
1882         * gtk/gtkcolorsel.c gtk/gtkentry.c gtk/gtkmenu.c gtk/gtkmenubar.c
1883           gtk/gtktextview.c gtk/gtktoolbar.c: Fixes for GtkSettings
1884         changes.
1885
1886         * gtk/gtkrc.[ch]: Add gtk_rc_get_style_by_paths() to allow
1887         getting a style for a path without actually having a widget.
1888         (Allows using a style for a subpart of a widget, for
1889         example.)
1890
1891         * gtk/gtkrc.[ch]: Add gtk_rc_reparse_all_for_setting() to allow forcing
1892         the RC files to be reloaded for just one GtkSettings
1893         (not sure how useful this really is.)
1894
1895         * gtk/gtkrc.h: Deprecate
1896         gtk_rc_add_widget_name/widget_class/class_style
1897
1898 2001-06-30  Alex Larsson  <alexl@redhat.com>
1899
1900         * gdk/linux-fb/gdkinput-none.c:
1901         * gdk/linux-fb/gdkinput.c:
1902         * gdk/linux-fb/gdkinputprivate.h:
1903         Convert GdkDevice to a GObject.
1904
1905         * linux-fb/gdkprivate-fb.h:
1906         * linux-fb/gdkvisual-fb.c:
1907         Convert GdkVisual to a GObject.
1908
1909 2001-06-29  Alex Larsson  <alexl@redhat.com>
1910
1911         * gdk/gdkvisual.h:
1912         * gdk/gdkcolor.c:
1913         * gdk/x11/gdkx.h:
1914         * gdk/x11/gdkvisual-x11.c:
1915         Convert GdkVisual to a GObject.
1916
1917         * gdk/gdkinput.h:
1918         * gdk/gdkevents.c:
1919         * gdk/x11/gdkinputprivate.h:
1920         * gdk/x11/gdkinput-gxi.c:
1921         * gdk/x11/gdkinput-none.c:
1922         * gdk/x11/gdkinput-x11.c:
1923         * gdk/x11/gdkinput-xfree.c:
1924         * gdk/x11/gdkinput.c:
1925         Convert GdkDevice to a GObject.
1926
1927 Fri Jun 29 22:13:28 2001  Jonathan Blandford  <jrb@redhat.com>
1928
1929         * gtk/gtktreestore.c (gtk_tree_store_new): changed new_with_types
1930         to just plain new, fixing the number of columns, and column types
1931         at creation time.
1932
1933         * gtk/gtkliststore.c (gtk_list_store_new): ditto.
1934
1935         * gtk/gtkcellrenderertext.c
1936         (gtk_cell_renderer_text_set_fixed_height_from_font): FIX the
1937         height to a specific font.
1938
1939         * gtk/gtktreeview.c (gtk_tree_view_is_expander_column): fix brokenness.
1940
1941         * tests/*c: change to work with new store models.
1942
1943 2001-06-29  Havoc Pennington  <hp@redhat.com>
1944
1945        * Throughout: fixes to compile with G_DISABLE_COMPAT
1946         (s/g_signal_connectc/g_signal_connect/,
1947         s/g_signal_newc/g_signal_new/,
1948         s/g_signal_disconnect_by_func/g_signal_handlers_disconnect_by_func/)
1949
1950 Fri Jun 29 03:14:16 2001  Jonathan Blandford  <jrb@webwynk.net>
1951
1952         * gtk/gtktreeselection.c (gtk_tree_selection_selected_foreach):
1953         add path argument to selection callbacks.
1954
1955 Fri Jun 29 00:13:34 2001  Jonathan Blandford  <jrb@redhat.com>
1956
1957         * gtk/gtktreemodel.c (gtk_tree_model_foreach): New function to
1958         walk through a model in a depth first manner, with the option to
1959         break out.
1960
1961 Fri Jun  8 18:52:10 2001  Jonathan Blandford  <jrb@redhat.com>
1962
1963         * gtk/gtktreeview.[hc]: Patch Thomas Broyer from
1964         <tbroyer@ltgt.net>. Expander arrows are now attached to a specific
1965         column and follow it when draged, rather than a location in the
1966         view. "expander_column" property and drawing functions changed
1967         accordingly.  Fixes bug #55942.
1968
1969         (gtk_tree_view_{set,get}_expander_column): Now works with a
1970         GtkTreeViewColumn* instead of int.
1971
1972 Thu Jun 28 22:53:18 2001  Owen Taylor  <otaylor@redhat.com>
1973
1974         *  gdk/gdk.c gtk/gtktypeutils.c: Fix args to g_type_init(). 
1975
1976 2001-06-28  Havoc Pennington  <hp@pobox.com>
1977
1978         * gdk/x11/gdkimage-x11.c (_gdk_x11_get_image): Clip the retrieved
1979         image data to the screen, using a server grab to avoid race
1980         conditions.
1981
1982         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): remove 
1983         check for NULL return from gtk_image_new_from_stock(), it never
1984         returns NULL.
1985         (gtk_item_factory_create_item): fix bug where we parsed the stock
1986         ID as an inline pixbuf
1987
1988         * gtk/gtktext.c (gtk_text_key_press): numeric keypad support
1989
1990         * gtk/gtkspinbutton.c (gtk_spin_button_key_press): numeric keypad
1991         support (should be using binding set here)
1992
1993         * gtk/gtkoptionmenu.c (gtk_option_menu_key_press): numeric keypad
1994         support (should be using binding set here)
1995
1996         * gtk/gtkmenushell.c (gtk_menu_shell_class_init): numeric keypad 
1997         support
1998
1999         * gtk/gtkmenu.c (gtk_menu_class_init): numeric keypad support
2000
2001         * gtk/gtkmenubar.c (gtk_menu_bar_class_init): numeric keypad
2002
2003         * gtk/gtklistitem.c (gtk_list_item_class_init): numeric keypad
2004
2005         * gtk/gtkimcontextsimple.c
2006         (gtk_im_context_simple_filter_keypress): keypad
2007
2008         * gtk/gtkfilesel.c (gtk_file_selection_key_press): keypad 
2009
2010         * gtk/gtkentry.c (gtk_entry_class_init): numeric keypad fixes
2011
2012         * gtk/gtkctree.c (gtk_ctree_class_init): numeric keypad support
2013
2014         * gtk/gtkcolorsel.c (palette_activate): keypad support (of course,
2015         should be binding-setted)
2016
2017         * gtk/gtkwindow.c (gtk_window_class_init): numeric keypad fixes
2018
2019         * gtk/gtkclist.c (gtk_clist_class_init): numeric keypad fixes
2020
2021         * gtk/gtkcalendar.c: numeric keypad fixes
2022
2023         * gtk/gtktextview.c (gtk_text_view_class_init): numeric keypad
2024         support
2025
2026         * gdk/gdkwindow.c (gdk_window_get_clip_region): fix infinite loop
2027         screwup
2028
2029         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha): 
2030         clip the render area to the drawable's clip region in advance,
2031         so we don't get data from the server that we don't need.
2032
2033         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
2034         check return value of gdk_pixbuf_get_from_drawable(), fall back 
2035         to bilevel alpha if we can't get the pixbuf to composite against.
2036
2037         * gdk/gdkdraw.c (gdk_drawable_get_image): set the image colormap
2038
2039         * gdk/gdkimage.c (gdk_image_get_colormap): add
2040         gdk_image_set_colormap, gdk_image_get_colormap
2041
2042         * gdk/gdkpixbuf-drawable.c (rgbconvert): Change all converters to
2043         take a region of the image, instead of converting the entire
2044         image.
2045
2046         * gtk/gtkwidget.h (struct _GtkWidgetClass): add show_help
2047         keybinding signal. Add default bindings for it. Add default
2048         handler for show_help that shows the tooltip for the widget.
2049
2050         * gtk/gtkdialog.c (gtk_dialog_class_init): add binding set and
2051         "close" keybinding signal, remove key press handler.
2052
2053         * gtk/gtktooltips.c (gtk_tooltips_set_colors): Just remove this,
2054         it's not our usual practice to leave a deprecated function around
2055         with a runtime warning, plus we don't want it to appear in docs,
2056         plus if we make them yellow no one will want to change them
2057         anyhow.
2058
2059 Thu Jun 28 23:53:31 2001  Tim Janik  <timj@gtk.org>
2060
2061         * gtk/gtkwidget.c (gtk_widget_hide): !GTK_OBJECT_DESTROYED() ->
2062         GTK_WIDGET_REALIZE() for resize queueing.
2063
2064         * gtk/gtkmain.c (gtk_main_do_event): !GTK_OBJECT_DESTROYED() ->
2065         GTK_WIDGET_REALIZE() for post event delivery destruction upon
2066         GDK_DESTROY.
2067         
2068         * gtk/gtkwidget.c: added GtkWidget::event-after notification signal, to
2069         sompensate for former (pre-2.0) connect_after() facility.
2070         (gtk_widget_send_expose): 
2071         (gtk_widget_event): assert the widget is realized, since event delivery
2072         to non-realized widgets is essentially a bug. event handlers should
2073         be able to unconditionally rely on widget->window (unless they
2074         emit events on their own which can trigger widget destruction).
2075         (gtk_widget_event_internal): removed old outdated GTK_OBJECT_DESTROYED()
2076         logic. event delivery happens as follows:
2077         a) emission of GtkWidget::event (RUN_LAST handler). returns was_handled.
2078         b) if !was_handled in (a) and the widget is still realized, emit event-
2079            specific signal (RUN_LAST handler). returns was_handled.
2080         c) emission of GtkWidget::event-after for notification if the widget is
2081            still realized (regardless of was_handled from previous stages, no
2082            class handler). no return value.
2083         d) was_handled gets passed on to caller, to determine further
2084            propagation. if the widget got unrealized meanwhile, was_handled
2085            is returned as TRUE.
2086
2087         * gdk/gdkevents.[hc]: added gdk_event_get_root_coords() and
2088         gdk_event_get_coords().
2089
2090 Thu Jun 28 17:18:41 2001  Tim Janik  <timj@gtk.org>
2091
2092         * configure.in (GTK_MICRO_VERSION): up version to 1.3.7, interface
2093         age 0, binary age 0. depend on glib 1.3.7.
2094
2095         * gtk/gtkcontainer.c: remove g_signal_handlers_disconnect_by_func() hack.
2096
2097         * gtk/gtkmenubar.c: same here.
2098         
2099         * gtk/gtkcontainer.c (gtk_container_focus_tab): fix param-spec retrival.
2100
2101         * gtk/gtkcolorsel.c (gtk_color_selection_init): fix connect_data() usage.
2102
2103         * gtk/gtkentry.c (gtk_entry_focus_in): same here.
2104         
2105         * gtk/gtkmenubar.c (add_to_window): likewise.
2106         
2107         * gtk/gtktextbtree.c: and here...
2108         
2109         * gtk/gtktextview.c (gtk_text_view_ensure_layout): same thing.
2110         
2111         * gtk/gtktoolbar.c (gtk_toolbar_init): once more.
2112         
2113         * gtk/gtktreemodel.c (connect_ref_callbacks): and another time.
2114         
2115         * gtk/gtktreeviewcolumn.c:
2116         (_gtk_tree_view_column_set_tree_view): yet again.
2117
2118         * demos/gtk-demo/images.c (progressive_timeout): demonstrate
2119         signal connections without g_signal_connect_data().
2120         
2121         * demos/gtk-demo/stock_browser.c (do_stock_browser): second
2122         demo of the matter.
2123         
2124         * demos/testpixbuf.c (main): running out of equality phrases for the
2125         ChangeLog, but had to adapt connections here as well.
2126         
2127         * demos/testanimation.c (progressive_timeout): and for the fun of it,
2128         tackled this the same way.
2129         
2130         * tests/testtext.c (create_view): ok, it's becoming a pain at this
2131         point, but had enough enery for one more fix.
2132
2133         * tests/testtreecolumns.c (main): stand up man, do your work!
2134
2135         * tests/testtreeview.c (set_columns_type): ok, this is the last file i
2136         fix, either that's been all of it or CVS gtk is broken yet again.
2137         
2138 2001-06-29  James Henstridge  <james@daa.com.au>
2139
2140         The following changes correspond to bug #56812
2141
2142         * gdk/gdkinput.h, gdk/gdkevents.c (GDK_TYPE_DEVICE): register type
2143         code for GdkDevice.
2144
2145         * gdk/gdkcursor.[ch] (GDK_TYPE_CURSOR): register type code for
2146         GdkCursor.
2147
2148 2001-06-19  Havoc Pennington  <hp@pobox.com>
2149
2150         * gdk/x11/gdkwindow-x11.c (gdk_window_show_unraised): new function
2151         for mapping a window without fooling with stacking order, but
2152         updating the "withdrawn" flag
2153
2154         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Do event
2155         filtering as soon as possible, moving move resize and wmspec_check
2156         handling after the event filter.  Make default filter apply to all
2157         events, not just those with no GdkWindow wrapped around the X
2158         window. Fix a FIXME about how the window could be a pixmap using 
2159         RTTI; this of course assumes GDK_IS_WINDOW() is optimized. 
2160
2161         Also, be robust against events not on a known GdkWindow.
2162
2163         * gdk/x11/gdkmain-x11.c (gdk_x11_grab_server,
2164         gdk_x11_ungrab_server): export reference-counted server grabs, so
2165         other people can grab server over a GDK function that also does
2166         so.
2167
2168 Wed Jun 27 19:40:31 2001  Jonathan Blandford  <jrb@redhat.com>
2169
2170         * gtk/gtktreeviewcolumn.c
2171         (gtk_tree_view_column_pack_start_cell_renderer): New function to
2172         reflect that you can (hypothetically) pack cell renderers into a
2173         column.
2174         (gtk_tree_view_column_pack_end_cell_renderer): ditto.
2175         (gtk_tree_view_column_cell_is_visible): Move more functionality to
2176         the column.
2177         (gtk_tree_view_column_cell_can_focus): Move more functionality to
2178         the column.
2179
2180         * gtk/gtktreeview.c: Move to use new column-packing code.
2181         (gtk_tree_view_real_expand_row): remove totally braindead code.
2182         (gtk_tree_view_real_collapse_row): ditto.
2183
2184 2001-06-27  Kjartan Maraas  <kmaraas@gnome.org>
2185
2186         * gtk/gtktreeviewcolumn.c: Fix a typo.
2187         
2188 2001-06-26  Joel Becker  <jlbec@evilplan.org>
2189
2190         * gdk-pixbuf/gdk-pixbuf-csource.c: remove '#include "x"' line
2191           at the end of the file
2192
2193 2001-06-26  Havoc Pennington  <hp@redhat.com>
2194
2195         * gtk/gtkwindow.c (gtk_window_set_policy): forgot a notification
2196
2197 2001-06-26  Havoc Pennington  <hp@redhat.com>
2198
2199         * gtk/gtkwindow.c (gtk_window_class_init): add "resizable"
2200         property
2201
2202 Tue Jun 26 12:59:28 2001  Jonathan Blandford  <jrb@redhat.com>
2203
2204         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_set_model): fix
2205         stupid missing statement
2206
2207         * gtk/gtktreeview.c (gtk_tree_view_set_destroy_count_func): New
2208         private function for ATK.  It notifies you of how many _visible_
2209         children are deleted when a node is deleted.  Should be used by
2210         atk only.
2211
2212 Tue Jun 26 11:06:34 2001  Owen Taylor  <otaylor@redhat.com>
2213
2214         * gtk/gtkclist.c gtk/gtkentry.c gtk/gtkspinbutton.c:
2215         Use new pango_context_get_metrics() to fix problems
2216         with font lists in descriptions. (#56184, reported by
2217         Jonas Borgström)
2218
2219 Tue Jun 26 10:04:30 2001  Tim Janik  <timj@gtk.org>
2220
2221         * gtk/gtkiconfactory.c:
2222         * gtk/gtkitemfactory.c: use gdk_pixbuf_new_from_stream(). fixed up
2223         item factory so inlined pixbufs actually work.
2224
2225 2001-06-25  Havoc Pennington  <hp@redhat.com>
2226
2227         * gtk/gtktreeviewcolumn.h, gtk/gtktreeviewcolumn.c:
2228         s/RESIZEABLE/RESIZABLE/
2229
2230         * gtk/gtkwindow.c, gtk/gtkwindow.h: s/resizeable/resizable/
2231
2232 2001-06-25  Alexander Larsson  <alexl@redhat.com>
2233
2234         * configure.in:
2235         Added --enable-fbmanager. This is some experimental code
2236         that lets several GtkFB apps coordinate their access to the
2237         framebuffer.
2238         
2239         * acconfig.h:
2240         Added ENABLE_FB_MANAGER.
2241
2242         * gdk/linux-fb/Makefile.am:
2243         Added gdkfbmanager and gdkfbswitch.
2244
2245         * gdk/linux-fb/gdkkeyboard-fb.c:
2246         * gdk/linux-fb/gdkmouse-fb.c:
2247         * gdk/linux-fb/gdkprivate-fb.h:
2248         Split device init and open so that
2249         they can be opened and closed while switched
2250         away.
2251
2252         * gdk/linux-fb/gdkmain-fb.c:
2253         Add the basic manager communication.
2254
2255         * gdk/linux-fb/gdkrender-fb.c:
2256         Don't update to the shadow fb if we're
2257         blocked by the fb manager.
2258
2259 Sun Jun 24 22:15:16 2001  Owen Taylor  <otaylor@redhat.com>
2260
2261         * docs/Changes-2.0.txt: Add note about child property
2262         changes.
2263
2264 Sun Jun 24 21:34:32 2001  Owen Taylor  <otaylor@redhat.com>
2265
2266         * gtk/gtkenums.h gtk/gtkiconfactory.c: Add a special size for
2267         drag-and-drop GTK_ICON_SIZE_DND (Default to 32x32)
2268
2269         * gtk/gtkdnd.c (gtk_drag_dest_set_target_list): Fix problem
2270         with un'reffing wrong list reported by Jeff Franks.
2271
2272         * gtk/gtkdnd.[ch] (_gtk_drag_{source,}dest_handle_event): _prefix.
2273
2274         * gtk/gtkdnd.c (gtk_drag_set_icon_default): Use GTK_STOCK_DND
2275         for the default icon. Remove inline XPM.
2276
2277         * gtk/gtkstock.h gtk/gtkiconfactory.c:
2278         Add GTK_STOCK_DND GTK_STOCK_DND_MULTIPLE (Currently, stock_new
2279         is used for GTK_STOCK_DND, but it is a bit too small.)
2280
2281         * gtk/stock-icons/stock_dnd_multiple.png
2282         gtk/stock-icons/Makefile.am: New stock icon moved from gnome-libs.
2283
2284         * gtk/gtkdnd.c (gtk_drag_source_event_cb): Only return
2285         TRUE when starting a drag. In other cases, we are
2286         just observing. (#52995)
2287
2288         * gtk/gtkdnd.[ch] (gtk_drag_set_icon_{stock,pixbuf}): Add 
2289         function to set the icon for a drag from a GdkPixbuf
2290         or stock ID.
2291
2292         * gtk/gtkdnd.[ch] (gtk_drag_source_set_icon_{stock,pixbuf}): 
2293         Likewise, for drag sources.
2294
2295         * gtk/gtkdnd.h: Deprecate gtk_drag_set_default_icon.
2296         (Now should be done using the stock system.)
2297
2298 Sun Jun 24 12:06:47 2001  Owen Taylor  <otaylor@redhat.com>
2299
2300         * gtk/gtktextview.[ch] (gtk_text_view_set_text_window_size): 
2301         Removed - didn't work and not particularly useful anyways
2302         if it did. 
2303
2304 Sun Jun 24 11:29:35 2001  Owen Taylor  <otaylor@redhat.com>
2305
2306         * gdk/x11/gdkimage-x11.c (gdk_image_new): Fix stupid error
2307         introduced last night that was making things decidedly not work.
2308
2309         * gtk/*.[ch]: Patch from Kristian Rietveld adding 80 getters
2310         so that we have getter/setter pairing everywhere it makes
2311         sense. (#55767)
2312
2313         * gtk/gtkradiobutton.[ch] gtk/gtktoolbar.c tests/testgtk.:
2314         Rename gtk_radio_button_group to gtk_radio_button_get_group, add a
2315         deprecated compat macro. (#55516)
2316
2317         * gtk/gtklabel.[ch]: Add functions
2318         gtk_label_set/get_use_underline(), gtk_label_set/get_use_markup(),
2319         gtk_label_set_label(), which mirror the property API for GtkLabel.
2320         Make gtk_label_get_attributes() only reflect the attributes
2321         set by gtk_label_set_attributes.
2322
2323         * gtk/gtknotebook.c (gtk_notebook_set_current_page) gtk/gtkcompat.h: Rename
2324         from gtk_notebook_set_page().
2325
2326 Sat Jun 23 18:02:46 2001  Owen Taylor  <otaylor@redhat.com>
2327
2328         * configure.in: Fix tests for XShm.h.
2329
2330         * gdk/x11/gdkimage-x11.c: Cleanup error handling in
2331         gdk_image_new() by use of goto, properly use g_object_unref().
2332
2333 Sat Jun 23 22:03:20 2001  Tim Janik  <timj@gtk.org>
2334
2335         * gdk/x11/gdkimage-x11.c (gdk_image_init): disabled g_free (image)
2336         calls, as GdkImage is an object. these should be g_obejct_unref()
2337         instead but that won't work because of the g_error() statement
2338         in gdk_x11_image_destroy(). so for now, i did s/g_free/LEAK_IMAGE/
2339         to spot these places.
2340
2341 Sat Jun 23 10:27:53 2001  Owen Taylor  <otaylor@redhat.com>
2342
2343         * modules/input/gtkimcontextxim.c: Fixup some problems with 
2344         text length handling in error cases.
2345
2346         * gtk/gtkwidget.c (gtk_widget_size_allocate): Reorder
2347         a bit to make test actually warn on attempt to allocation
2348         a negative size. (#56101, Matthias Clasen)
2349
2350 Fri Jun 22 14:06:08 2001  Jonathan Blandford  <jrb@redhat.com>
2351
2352         * gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): Fix bug
2353         noticed by Brian Cameron.
2354         (gtk_tree_view_real_expand_row): Fix bug noticed by Brian
2355         Cameron.
2356
2357 2001-06-22  Hans Breuer  <hans@breuer.org>
2358
2359         * gdk/gdk.def : updated externals
2360
2361         * gdk/win32/gdkdrawable-win32.c : corrected some casts
2362         in GDK_NOTEs
2363
2364         * gdk/win32/gdkevents-win32.c : use _gdk_windowing_window_get_offsets
2365         to translate coordinates to the internal > 16 bit system
2366         Try to handle WM_WINDOWPOSCHANGED to get better performance for
2367         when moving/resizing
2368
2369         * gdk/win32/gdkkeys-win32.c : implement gdk_keymap_get_default ()
2370         and gdk_keymap_get_direction (). The latter is untested for
2371         the RTL case
2372
2373         * gtk/gtk.def : updated externals
2374
2375         * gtk/gtkmain.c : gtk_get_default_language () should reurn the result
2376         from pango_language_from_string (), not an already freed pointer
2377
2378         * gtk/stock-icons/stock_menu_sort_ascending.png : PNGs need to be 
2379         binary (-kb) to be useable on windoze
2380  
2381 2001-06-21  Alexander Larsson  <alexl@redhat.com>
2382
2383         * gdk/linux-fb/gdkfont-fb.c (gdk_font_from_description): 
2384         Update to new PangoLanguage changes.
2385         
2386         * gtk/gtkwindow-decorate.c:
2387         * gtk/gtkwindow.[ch]:
2388         Added setting argument to gtk_window_set_has_frame ()
2389         
2390 Thu Jun 21 13:42:01 2001  Owen Taylor  <otaylor@redhat.com>
2391
2392         * gdk/x11/gdkkeys-x11.c (gdk_keymap_get_direction): Handle
2393         the case without XKB properly.
2394
2395         * gtk/gtkrc.c (gtk_rc_set_default_files): Remove
2396         unused gtk_rc_auto_parse variable.
2397
2398         * gtk/gtkrc.[ch] gtk/gtkstyle.c docs/Changes-2.0.txt:
2399         Remove gtk_rc_set_image_loader(), gtk_rc_load_image(), no
2400         longer needed with GdkPixbuf.
2401
2402         * gtk/gtkrc.c (_gtk_rc_init): Make private.
2403
2404 Fri Jun 15 16:26:12 2001  Owen Taylor  <otaylor@redhat.com>
2405
2406         * gtk/gtkentry.h: Mark deprecated functions with
2407         GTK_DISABLE_DEPRECATED.
2408
2409 Mon Jun 11 18:15:16 2001  Owen Taylor  <otaylor@redhat.com>
2410
2411         * gdk/gdk.h: Add missing gdk_rectangle_get_type() prototype.
2412
2413         * gtk/gtk[hv]scale.c: Include math.h, stdlib.h
2414
2415         * gdk/gdkpango.h gtk/gtkclist.c gtk/gtkentry.c gtk/gtkmain.[ch]
2416           gtk/gtkspinbutton.c gtk/gtkstyle.c gtk/gtktextbuffer.c
2417           gtk/gtktextdisplay.c gtk/gtktextiter.[ch]
2418           gtk/gtktextlayout.c gtk/gtktexttag.[ch] gtk/gtkwidget.c: Adapt
2419           to recent changes in Pango.
2420
2421         * tests/testgtk.c: Set language tags with gtk_label_set_markup()
2422           to test whether the basic engine honors them.
2423
2424 Thu Jun 21 02:13:40 2001  Tim Janik  <timj@gtk.org>
2425
2426         * gtk/gtkcontainer.[hc]: added gtk_container_child_set_property() and
2427         gtk_container_child_get_property().
2428
2429 Wed Jun 20 19:19:15 2001  Jonathan Blandford  <jrb@redhat.com>
2430
2431         * gtk/gtktreeview.c (gtk_tree_view_move_cursor_up_down): clean up
2432         (gtk_tree_view_move_cursor_page_up_down): implement.
2433
2434 Wed Jun 20 05:32:05 2001  Tim Janik  <timj@gtk.org>
2435
2436         * gtk/gtkspinbutton.c: make maximum digits compile time configurable
2437         via MAX_DIGITS and up to 20. 5 was just ridiculously small.
2438         don't use automatic fixed size buffer for printf-ing floats, doubles
2439         can expand to really _huge_ strings, use g_strdup_printf() instead.
2440
2441 Wed Jun 20 04:28:24 2001  Tim Janik  <timj@gtk.org>
2442
2443         * gtk/gtkrange.c (gtk_range_class_init): hum, "adjustment" was a
2444         construct property in 1.2 and still needs to be.
2445
2446         * gtk/gtkwidget.c: "composite_child" is not a settable property.
2447
2448 Tue Jun 19 19:13:19 2001  Jonathan Blandford  <jrb@redhat.com>
2449
2450         * gtk/gtkliststore.c (gtk_list_store_clear): 
2451         * gtk/gtktreestore.c (gtk_tree_store_clear): New functions to
2452         clear a model.
2453
2454 Mon Jun 18 02:00:49 2001  Tim Janik  <timj@gtk.org>
2455
2456         * gtk/gtkwidget.c (gtk_widget_get_property): fix PROP_EVENTS.
2457
2458         * gtk/Makefile.am:
2459         * gtk/gtk.h: disabled GtkPacker compilation.
2460
2461         * gtk/gtkarg.[hc], gtk/gtkargcollector.c: got rid of these.
2462
2463         * gtk/gtknotebook.c:
2464         * gtk/gtktable.c:
2465         * gtk/gtkbox.c: ported this over to child properties.
2466
2467         * gtk/gtksettings.c: fetch class properties via
2468         g_object_class_list_properties().
2469
2470         * gtk/gtkcontainer.[hc]: implemented child properties, got rid of the
2471         child arg interface. use gobjectnotifyqueue.c for child property
2472         notification.
2473
2474         * gtk/gtkwidget.[hc]: provide necessary means for container child
2475         properties, i.e. ::child_notify signal,
2476         gtk_widget_freeze_child_notify(),
2477         gtk_widget_child_notify(),
2478         gtk_widget_thaw_child_notify().
2479
2480         * tests/testgtk.c: removed inferior property handling code, for
2481         property editing, a generic module should be used, and GLE
2482         coincidentally fullfills that purpose.
2483
2484         * docs/reference/Makefile.am: disabled gtk docs building, gtk-doc
2485         needs to be adapted to g_object_class_list_properties() before this
2486         builds again.
2487
2488 Mon Jun 18 20:06:10 2001  Jonathan Blandford  <jrb@redhat.com>
2489
2490         * gtk/gtktreeview.c (gtk_tree_view_row_expanded): New function to
2491         test if a node is expanded.
2492
2493 Mon Jun 18 19:41:38 2001  Jonathan Blandford  <jrb@redhat.com>
2494
2495         * gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): Fix bug
2496         where collapsing a selected row would result in the cursor/anchor
2497         getting screwed up.
2498
2499 Fri Jun 15 18:53:48 2001  Jonathan Blandford  <jrb@redhat.com>
2500
2501         * gtk/gtktreesortable.c (gtk_tree_sortable_set_sort_func): Rename
2502         gtk_tree_sortable_sort_column_id_set_func.  It's much shorter now.
2503         * gtk/gtktreeview.c (gtk_tree_view_sort_iter_changed): WOOO!!!
2504         Now I can really reorder/sort all Store widgets.  treesorttest
2505         seems to just work now.
2506         * gtk/gtklistview.c (gtk_list_store_iter_changed): Whoops.
2507         testtreesort worked through a big coincidence all this time.
2508         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): Nasty bug fix in nasty
2509         code.
2510         * tests/testtreecolumns.c: Big 'ol warning at the top letting
2511         people know that this code should never ever ever be copied.
2512
2513 2001-06-15  Jonas Borgström  <jonas@codefactory.se>
2514
2515         * gtk/gtkwindow.h: Fixed a small typo, it should be
2516         GTK_WINDOW_GROUP_GET_CLASS and not GTK_WINDOW_GET_CLASS
2517         on line 134.
2518
2519 2001-06-14  Havoc Pennington  <hp@redhat.com>
2520
2521         Docs fixups, and:
2522         
2523         * gtk/gtkcompat.h: remove GTK_DISABLE_COMPAT_H, replace with
2524         GTK_DISABLE_DEPRECATED
2525
2526 Thu Jun 14 19:21:27 2001  Jonathan Blandford  <jrb@redhat.com>
2527
2528         * gtk/gtktreestore.c (gtk_tree_store_sort_helper): Whoops.  Forgot
2529         this a couple months ago.  Now GtkTreeStore sort of sorts.  I'll
2530         finish it off tonight, though it basically works now when it's a
2531         list.  Also, I have a sinking feeling neither GtkTreeStore or
2532         GtkListStore actually resort when adding a new item.  I'll look
2533         into it.
2534
2535 2001-06-14  Havoc Pennington  <hp@redhat.com>
2536
2537         * demos/gtk-demo/main.c (load_file): fix bug identified by
2538         warnings I just added to gtktextbuffer
2539
2540 2001-06-14  Havoc Pennington  <hp@redhat.com>
2541
2542         * gtk/gtkwindow.c (window_group_cleanup_grabs): fix other typo
2543
2544         * gtk/gtkwidget.c (gtk_widget_propagate_state): fix typo
2545
2546         * gtk/gtktextbtree.c: don't leak node data all over the place.
2547
2548         * demos/gtk-demo/main.c (main): create fontify tags for the right
2549         buffer
2550
2551         * gtk/gtktextbuffer.c, gtk/gtktexttagtable.c: enhance docs
2552         to mention tags in the same table can't have the same name,
2553         suggested by Skip Montanaro
2554
2555 2001-06-11  Havoc Pennington  <hp@redhat.com>
2556
2557         * gtk/gtktexttagtable.c (gtk_text_tag_table_add): improve warning 
2558         for trying to add two tags with same name to the tag table
2559
2560         * demos/gtk-demo/main.c (main): fix colors ;-)
2561
2562 `Fri Jun  8 17:56:52 2001  Owen Taylor  <otaylor@redhat.com>
2563
2564         * gtk/gtkwindow.[ch] gtk/gtkmain.c: Add a GtkWindowGroup struct
2565         that allows grouping together multiple windows so that grabs
2566         within that set of windows only affect those windows.
2567
2568         * gtk/gtkmain.c gtk/gtkwidget.[ch]: Add a "grab_notify"
2569         signal for notification when a widget becomes shadowed
2570         by a grab or is no longer shadowed by a grab.
2571
2572         * gtk/gtkwidget.c (gtk_widget_propagate_state)
2573           gtk/gtkmain.c: (gtk_widget_grab_add): Don't allow
2574         insenstive widgets to maintain a grab.
2575
2576 2001-06-14  Alexander Larsson  <alexl@redhat.com>
2577
2578         * docs/README.linux-fb:
2579         Add some example config files that can be used with the URW fonts.
2580         
2581         * gdk/linux-fb/gdkvisual-fb.c (gdk_visual_init): 
2582         Set up the color ramps for DirectColor mode.
2583
2584 2001-06-11  Havoc Pennington  <hp@redhat.com>
2585
2586         * Release 1.3.6
2587          
2588 2001-06-13  Alexander Larsson  <alla@lysator.liu.se>
2589
2590         * gdk/linux-fb/gdkwindow-fb.c:
2591         Unify shaped window code and make it repaint the area that used
2592         to be part of the shape, but isn't anymore.
2593
2594 2001-06-11  Havoc Pennington  <hp@redhat.com>
2595
2596         * NEWS: Updates
2597
2598         * configure.in (GTK_MINOR_VERSION): bump version to 1.3.6
2599
2600         * gtk/Makefile.am: glib_genmarshal already contains top_builddir
2601         
2602 2001-06-13  Alexander Larsson  <alla@lysator.liu.se>
2603
2604         * gdk/linux-fb/gdkdnd-fb.c (gdk_drag_status):
2605         Don't pass on GDK_ACTION_DEFAULT. The Xdnd code
2606         passes zero instead, so do we.
2607         
2608 2001-06-13  Alexander Larsson  <alla@lysator.liu.se>
2609
2610         * gdk/linux-fb/gdkgc-fb.c (gdk_gc_copy):
2611         Deep copy dash_list too.
2612         (_gdk_fb_gc_new): Set default cap_style before
2613         setting values.
2614
2615 2001-06-12  Alexander Larsson  <alla@lysator.liu.se>
2616
2617         * gdk/linux-fb/gdkkeyboard-fb.c (gdk_keymap_get_default,
2618         gdk_keymap_get_direction): New functions.
2619
2620 Tue Jun 12 12:41:27 2001  Jonathan Blandford  <jrb@redhat.com>
2621
2622         * gtk/gtktreemodel.h (GTK_TREE_MODEL_LIST_ONLY): further justify
2623         gtk_tree_model_get_flags by adding a second flag for atk.
2624
2625         * gtk/gtktreemodel.c: make cursor behavior interact better with
2626         mouse presses.
2627
2628 Mon Jun 11 12:43:08 2001  Jonathan Blandford  <jrb@redhat.com>
2629
2630         * gtk/gtktreeview.c (gtk_tree_view_class_init): changed
2631         expand_row/collapse_row to be 2 signals each -- test_expand_row
2632         and row_expanded as well as test_collapse_row and row_collapsed.
2633
2634 2001-06-10  Anders Carlsson  <andersca@codefactory.se>
2635
2636         * demos/gtk-demo/stock_browser.c (do_stock_browser): Update
2637         signal name to be changed instead of selection_changed.
2638
2639 2001-06-08  Havoc Pennington  <hp@redhat.com>
2640
2641         * gtk/gtkentry.c (gtk_entry_class_init): add read-only
2642         "scroll_offset" property for notification when the layout offsets
2643         may have changed
2644         (gtk_entry_adjust_scroll): add notify for scroll_offset
2645         (gtk_entry_layout_index_to_text_index): function to compensate for
2646         preedit string when doing coordinate stuff on the entry's layout
2647         (gtk_entry_text_index_to_layout_index): inverse function
2648         (gtk_entry_get_layout_offsets): hook to get current position of
2649         the layout      
2650         (gtk_entry_get_layout): hook to get the layout itself.
2651
2652         * gtk/gtklabel.c (gtk_label_get_layout): new function
2653
2654 Fri Jun  8 19:49:29 2001  Jonathan Blandford  <jrb@redhat.com>
2655
2656         * gtk/gtktreeview.c (gtk_tree_view_real_select_cursor_row): New
2657         keybinding.
2658         (gtk_tree_view_focus): Fix merge conflict.
2659
2660 Fri Jun  8 18:41:30 2001  Jonathan Blandford  <jrb@redhat.com>
2661
2662         * gtk/gtktreeview.c (gtk_tree_view_set_cursor): new function to
2663         clean up cursor handling.
2664
2665 2001-06-08  Havoc Pennington  <hp@redhat.com>
2666
2667         * gtk/gtktextbuffer.c (gtk_text_buffer_get_start_iter): added this
2668         function
2669
2670         * gtk/gtktextview.c (gtk_text_view_get_default_attributes): added
2671         this function
2672
2673 2001-06-08  Alex Larsson  <alexl@redhat.com>
2674
2675         * gtk/gtkcompat.h.in:
2676         Added compat macros for all old GTK_TYPE_GDK_xxx types.
2677         Fixes bug #52892
2678
2679 2001-06-08  Havoc Pennington  <hp@redhat.com>
2680         
2681         * gtk/gtkhsv.h (struct _GtkHSVClass): had GtkContainerClass as
2682         parent still
2683
2684 2001-06-08  Havoc Pennington  <hp@redhat.com>
2685
2686         * gtk/gtktextbuffer.c (gtk_text_buffer_remove_all_tags): geez,
2687         don't call g_list funcs on GSList
2688
2689         * gtk/gtkwidget.c (gtk_widget_child_focus): replaces
2690         gtk_container_focus(), since some widgets have focusable locations
2691         which are not other widgets. These widgets should not have to be 
2692         containers just to manage the focus. For example, GtkHSV is
2693         currently a container for no good reason. Also, this cleans
2694         up the "if (is_container && is_sensitive && is_drawable)
2695         container_focus ()" mess in widget implementations.
2696
2697         * gtk/gtkcontainer.c (gtk_container_focus): deprecate this
2698         function, and have it just call gtk_widget_child_focus().
2699
2700         * gtk/gtkhsv.c: derive from widget not container
2701         
2702         Throughout: fix to reflect GtkContainer::focus change
2703         
2704 Fri Jun  8 12:38:49 2001  Jonathan Blandford  <jrb@redhat.com>
2705
2706         * gtk/gtktable.c (gtk_table_resize): warn if row/cols are out of
2707         range.  Fix bug #55921
2708
2709         * gtk/gtkliststore.c (gtk_list_store_new_with_types): fix doc bug
2710         (#55920).
2711
2712 Fri Jun  8 12:03:07 2001  Owen Taylor  <otaylor@redhat.com>
2713
2714         * gdk/gdkkeys.[ch]: Add a direction-changed signal,
2715         and gdk_keymap_get_current_direction().
2716
2717         * gdk/x11/gdkevents-x11.c gdk/x11/gdkkeys-x11.c
2718           gdk/x11/gdkmain-x11.c gdk/x11/gdkprivate-x11.h: Track
2719         the current locked group, use it to set the keymap
2720         direction.
2721
2722         * gtk/gtksettings.c: Add a new gtk-split-cursor setting
2723         to determine whether we draw a split cursor or use
2724         a jumping cursor based on the current direction.
2725
2726         * gtk/gtkentry.c gtk/gtktextview.c gtk/gtktextlayout.[ch]:
2727         Obey the split cursor setting. 
2728
2729 Fri Jun  8 11:57:50 2001  Owen Taylor  <otaylor@redhat.com>
2730
2731         * gtk/gtkimmulticontext.c (activate_cb): Only activate
2732         when toggling on, not when toggling off... (#55906)
2733
2734 Wed Jun  6 10:37:07 2001  Owen Taylor  <otaylor@redhat.com>
2735
2736         * gtk/gtkwidget.c (gtk_widget_set_double_buffered): 
2737         s/gdk_window_begin_paint/gdk_window_begin_paint_region/
2738         in docs. (#55812, Vitaly Tishkov)
2739
2740 2001-06-08  Anders Carlsson  <andersca@codefactory.se>
2741
2742         * demos/gtk-demo/main.c (create_tree): Changed signal name from
2743         selection_changed to changed in signal connection to GtkTreeSelection,
2744         also used g_signal_connectc since GtkTreeSelection is now a GObject.
2745
2746 Thu Jun  7 18:25:42 2001  Jonathan Blandford  <jrb@redhat.com>
2747
2748         * gtk/gtktreeselection.c: Now it's a GObject instead of a
2749         GtkObject.  The GtkTreeSelection::selection_changed signal is now
2750         the GtkTreeSelection::changed signal.
2751
2752         * gtk/gtktreeview.c: Modified to deal with new GtkTreeSelection
2753         object.
2754
2755         * tests/gtktree*.c: Modified to deal with new GtkTreeSelection
2756         object.
2757
2758 2001-06-07  Havoc Pennington  <hp@redhat.com>
2759
2760         * gtk/Makefile.am: fix glib-mkenums and glib-genmarshal again
2761
2762 2001-06-07  Havoc Pennington  <hp@redhat.com>
2763         
2764         * gtk/Makefile.am: fixups for glib-mkenums and glib-genmarshal
2765         (not tested yet because with absolute path to srcdir I can't build
2766         atk, but it was broken anyway so this may help) 
2767
2768 2001-06-07  Havoc Pennington  <hp@redhat.com>
2769
2770         * configure.in: output m4macros/Makefile
2771         
2772 Wed Jun  6 21:59:16 2001  Jonathan Blandford  <jrb@redhat.com>
2773
2774         * gtk/gtktreeview.c (gtk_tree_view_size_allocate): hook up arrow
2775         buttons.  Fixes #55460 reported by matthiasc@poet.de.
2776
2777 Wed Jun  6 21:18:54 2001  Jonathan Blandford  <jrb@redhat.com>
2778
2779         * gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): centralize
2780         expansion/collapsing so it only happens in one place.
2781         (gtk_tree_view_real_expand_row): ditto.
2782
2783 2001-06-07  Havoc Pennington  <hp@redhat.com>
2784
2785         * tests/Makefile.am: add missing -I flag
2786
2787         * gtk/Makefile.am: use @GLIB_MKENUMS@, @GLIB_GENMARSHAL@, etc.
2788
2789         * configure.in: use pkg-config to see if GModule is
2790         supported; fix to properly turn on included loaders 
2791         when GModule isn't supported; don't use AC_CHECK_LIB 
2792         when libs are not installed yet
2793
2794         * autogen.sh: add support for AUTOGEN_SUBDIR_MODE
2795
2796         * Makefile.am (SUBDIRS): add m4macros subdir
2797
2798         * gtk/Makefile.am: $(srcdir)/foo targets must be $(srcdir)/foo in
2799         dependencies also.
2800
2801 Wed Jun  6 19:31:11 2001  Jonathan Blandford  <jrb@redhat.com>
2802
2803         * gtk/gtktreeview.c (gtk_tree_view_set_model): fix silly bug
2804         reported by "Padraig O'Briain" <Padraig.Obriain@Sun.COM>.
2805
2806 Wed Jun  6 20:01:38 2001  Jonathan Blandford  <jrb@redhat.com>
2807
2808         * gtk/gtktreeview.c
2809         (gtk_tree_view_real_expand_collapse_cursor_row): Handle key
2810         bindings to expand and collapse rows.
2811         (gtk_tree_view_real_select_cursor_parent): New key binding.
2812         (gtk_tree_view_real_toggle_cursor_row): New key binding.
2813
2814         * gtk/gtkmarshal.list: new
2815         marshaller. (VOID__BOOLEAN_BOOLEAN_BOOLEAN)
2816
2817 2001-06-06  Havoc Pennington  <hp@redhat.com>
2818
2819         * gtk/gtkrange.c (gtk_range_class_init): add "inverted" property
2820
2821         * gtk/gtkscale.c (gtk_scale_class_init): Change Page Up and Page
2822         Down to move visually rather than logically, since it confuses 
2823         people. Add -/+ and Ctrl--/+ bindings for logical movement.
2824
2825 2001-06-06  Alex Larsson  <alexl@redhat.com>
2826
2827         * gdk/linux-fb/gdkmain-fb.c (_gdk_windowing_init_check):
2828         Fix up error messages.
2829
2830 Wed Jun  6 10:34:42 2001  Owen Taylor  <otaylor@redhat.com>
2831
2832         * gtk/gtktooltips.h: Include gtkwidget.h 
2833         (#55798, Karl Nelson)
2834
2835         * gdk/x11/gdkwindow-x11.c (utf8_is_latin1): 0xff is
2836         a valid latin-1 character. (Marc Lehmann, #35467)
2837
2838         * gdk/x11/gdkwindow-x11.c: Fix minor typo in comment. 
2839         (Marc Lehmann, #35467)
2840         
2841 2001-06-05  Alex Larsson  <alexl@redhat.com>
2842
2843         * demos/gtk-demo/appwindow.c (do_appwindow):
2844         Don't swap the order of the args to gtk_widget_destroyed.
2845
2846         * tests/testgtk.c (destroy_properties):
2847         Don't crash when the properties window is destroyed.
2848
2849         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_new_from_stock):
2850         Use with_mnemonics to handle the case of stock items with
2851         underscores in them.
2852
2853 2001-06-05  Havoc Pennington  <hp@redhat.com>
2854
2855         * gtk/gtktextiter.c (gtk_text_iter_order): rename from 
2856         gtk_text_iter_reorder
2857
2858 2001-06-05  Havoc Pennington  <hp@redhat.com>
2859
2860         * gtk/gtktoolbar.c (gtk_toolbar_remove_space): new function
2861
2862 2001-06-05  Havoc Pennington  <hp@redhat.com>
2863
2864         * gtk/gtkspinbutton.c (gtk_spin_button_set_range): clamp the value 
2865         to the range that was set
2866
2867         * gtk/gtkrange.c: add value_changed signal, primarily 
2868         intended for use with GtkScale
2869         (gtk_range_set_increments): new function
2870         (gtk_range_set_range): new function with weird name
2871         (gtk_range_set_value): new function
2872         (gtk_range_get_value): new function
2873
2874         * gtk/gtkspinbutton.c (gtk_spin_button_get_value): rename 
2875         from gtk_spin_button_get_value_as_float(). Compat #define
2876         added for get_value_as_float.
2877
2878         * gtk/gtkhscale.c (gtk_hscale_new_with_range): new function
2879
2880         * gtk/gtkvscale.c (gtk_vscale_new_with_range): new function
2881
2882 Tue Jun  5 14:57:18 2001  Jonathan Blandford  <jrb@redhat.com>
2883
2884         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_get_size): Fix bug #55573
2885
2886 Mon Jun  4 12:41:25 2001  Owen Taylor  <otaylor@redhat.com>
2887
2888         * gtk/gtkwidget.h: Deprecate gtk_widget_set().
2889
2890         * tests/testgtk.c (create_tooltips): Remove usage of
2891         gtk_widget_set().
2892
2893 2001-06-05  Havoc Pennington  <hp@redhat.com>
2894
2895         * gtk/gtkcolorsel.c: Use new mnemonic convenience functions
2896
2897         Applying patch from Jeff Franks, with function docs added.
2898         
2899         * gtk/gtkcheckbutton.c (gtk_check_button_new_with_mnemonic):
2900         remove call to set_mnemonic_widget, change docs a bit.  
2901
2902         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_new_with_mnemonic):
2903         new function
2904
2905         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_new_with_mnemonic):
2906         new function
2907
2908         * gtk/gtkmenuitem.c (gtk_menu_item_new_with_mnemonic): new function
2909
2910         * gtk/gtkradiobutton.c (gtk_radio_button_new_with_mnemonic): new
2911         function
2912         (gtk_radio_button_new_with_mnemonic_from_widget): new function
2913
2914         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_new_with_mnemonic):
2915         new function
2916
2917         * gtk/gtktogglebutton.c (gtk_toggle_button_new_with_mnemonic): new
2918         function        
2919
2920         * gtk/gtklabel.c (gtk_label_new_with_mnemonic): Improve docs on 
2921         auto-selection of mnemonic widget.
2922
2923 Mon Jun  4 15:05:24 2001  Jonathan Blandford  <jrb@redhat.com>
2924
2925         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_max_width):
2926         Fix segfault found by Vitaly Tishkov <tvv@sparc.spb.su>.
2927         (gtk_tree_view_column_set_min_width): ditto.
2928
2929 Tue Jun  5 11:04:06 2001  Owen Taylor  <otaylor@redhat.com>
2930
2931         * gdk/gdkpixmap.h (GDK_PIXMAP_GET_CLASS): 
2932         s/GdkPixmapClass/GdkPixmapObjectClass/. (#51890, Jeff Franks)
2933
2934 Mon Jun  4 12:50:11 2001  Owen Taylor  <otaylor@redhat.com>
2935
2936         * gtk/gtkctree.c (gtk_ctree_insert_gnode): Add a missing
2937         gtk_clist_thaw().
2938
2939 2001-06-04  Havoc Pennington  <hp@pobox.com>
2940
2941         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Ignore 
2942         releases for buttons 6, 7
2943
2944 2001-06-04  Havoc Pennington  <hp@redhat.com>
2945
2946         * gtk/gtkseparatormenuitem.h: Fix a search-and-replace screwup
2947         (s/CHECK/SEPARATOR/ gone awry). Patch from Jeff Franks, bug
2948         #55562
2949
2950 2001-06-04  Havoc Pennington  <hp@redhat.com>
2951
2952         * gtk/gtktextview.c (gtk_text_view_size_request): handle case
2953         where text_view->layout == NULL by assuming its size is 0, 
2954         i.e. same as if we haven't done any reflow. Reported by 
2955         Hidetoshi Tajima #55448 
2956
2957 2001-06-04  Havoc Pennington  <hp@redhat.com>
2958
2959         * gdk/x11/gdkevents-x11.c (gdk_event_translate): support button 6
2960         and 7 for scroll left/right, from Thomas Broyer
2961
2962 2001-05-10  Havoc Pennington  <hp@redhat.com>
2963
2964         * gtk/gtksettings.c (gtk_settings_get_property): Handle case where
2965         we need to parse the xsetting as if it were an RC file string.
2966
2967         * gtk/gtkcolorsel.c (gtk_color_selection_class_init): load initial
2968         value of palette from settings, not from static variable
2969
2970         * gdk/x11/gdkevents-x11.c: add color palette, toolbar mode to
2971         xsettings translation table
2972
2973         * gtk/gtktoolbar.c (gtk_toolbar_new): Remove arguments, because 
2974         hardcoding the toolbar style conflicts with new customizable 
2975         toolbar style philosophy
2976         (gtk_toolbar_class_init): add settings for default toolbar style;
2977         these are used unless the app specifically forces a toolbar style
2978
2979         * gtk/gtksettings.c (settings_install_property_parser): only
2980         return at the start if we warn and parser == NULL
2981
2982         * gtk/gtkcolorsel.c (gtk_color_selection_finalize): disconnect the
2983         palette changed handler so we don't notify dead color selections
2984
2985         * gtk/gtkstyle.c (gtk_default_draw_shadow): handle
2986         xthickness/ythickness of 0 or 1 properly 
2987         (gtk_default_draw_resize_grip): clear the background behind the
2988         resize grips, and align to bottom right if we square the 
2989         area to be drawn.
2990
2991         * gtk/gtkstatusbar.c (gtk_statusbar_init): set horizontal usize on 
2992         statusbar label to 1, so it doesn't make toplevels resize oddly
2993         (gtk_statusbar_size_request): add grip size to request
2994         (gtk_statusbar_size_allocate): hack so the hbox still works with 
2995         the grip size in the request
2996
2997         * gtk/gtktoolbar.c (gtk_toolbar_show_all): override to fix 
2998         bug where showing all on a toplevel makes the toolbar 
2999         button text appear despite the toolbar mode
3000
3001         * gtk/gtkmenubar.c: add internal padding style property
3002
3003         * gtk/gtktoolbar.c: Add internal padding style property; add
3004         shadow type style property
3005
3006         * gtk/gtkmenubar.c (gtk_menu_bar_paint): paint box with widget
3007         state; and put Container::border_width outside the frame
3008
3009         * gtk/gtktextview.c: don't draw focus rectangle if we're in
3010         interior focus mode, we just use blinking cursor
3011
3012 2001-06-04  Havoc Pennington  <hp@redhat.com>
3013
3014         * configure.in: Make gdk-pixbuf have same version number as GTK
3015
3016 2001-06-04  Havoc Pennington  <hp@redhat.com>
3017
3018         * gtk/gtkspinbutton.c: Get rid of stupid g_return_if_fail on 
3019         digits greater than 6. If there actually are limits (which there
3020         likely aren't), should clamp to them not warn.
3021         (gtk_spin_button_new_with_range): don't take log of 0
3022         (gtk_spin_button_size_request): use digits to compute size
3023         request, rather than step increment.
3024
3025         * tests/testgtk.c (create_spins): test larger values of digits
3026         
3027         * gtk/gtkfontsel.c (gtk_font_selection_init): scroll to selected
3028         font on map not expose, so we don't get weirdness during scrolling
3029
3030 2001-06-04  Havoc Pennington  <hp@redhat.com>
3031
3032         * gtk/gtkclist.c (vadjustment_value_changed): Apply fix from
3033         Sam Solon, bug #54577, update value even if not drawable.
3034
3035 2001-06-04  Havoc Pennington  <hp@redhat.com>
3036
3037         * gtk/gtkrange.c (gtk_range_scroll_event): change SCROLL_RIGHT to
3038         SCROLL_LEFT, reported by Thomas Broyer.
3039
3040 2001-06-04  Havoc Pennington  <hp@redhat.com>
3041
3042         * gtk/gtkrange.c (gtk_range_adjustment_value_changed): 
3043         Process updates immediately, to prevent funny lag effect
3044         when scrolling, at some mild potential efficiency cost.
3045
3046 2001-06-04  Havoc Pennington  <hp@redhat.com>
3047
3048         * gtk/gtkrange.c (gtk_range_button_press): on middle click, center
3049         slider on the click.
3050
3051 2001-06-03  Havoc Pennington  <hp@pobox.com>
3052
3053         * gtk/gtkstyle.c (gtk_default_draw_slider): make this special-case
3054         hscale/vscale details, so we can use it for scrollbar as well.
3055
3056         * tests/testgtk.c (reformat_value): honor digits from GtkScale
3057
3058         * gtk/gtkenums.h (GtkTroughType): Remove this enum
3059         (GtkScrollType): add START and END from GtkTroughType
3060
3061         * gtk/gtkstyle.c (gtk_default_draw_slider): was not properly using
3062         its x/y arguments
3063
3064         * gtk/gtkrange.h, gtk/gtkrange.c, gtk/gtkscrollbar.h,
3065         gtk/gtkscrollbar.c, gtk/gtkscale.h, gtk/gtkscale.c,
3066         gtk/gtkhscrollbar.h, gtk/gtkhscrollbar.c, gtk/gtkvscrollbar.h,
3067         gtk/gtkvscrollbar.c, gtk/gtkhscale.h, gtk/gtkhscale.c,
3068         gtk/gtkvscale.h, gtk/gtkvscale.c: Rewrite GtkRange and subclasses.
3069
3070         Notable changes in the process:
3071          
3072         - stepper_size style property is the height for vertical 
3073           ranges, width for horizontal; the other dimension matches
3074           the trough size
3075         - add ability to do NeXT-style steppers (and several other styles
3076           that don't make any sense)
3077         - added min_slider_length, fixed_slider_length properties to
3078           GtkScrollbar
3079         - cleaned some private (or at least useless) functions out of
3080           gtkscale.h    
3081         - moved bindings to GtkScale from subclasses, even arrow keys,
3082           since blind users don't know scale orientation.
3083         - change move_slider action signal to use new GtkScrollType,
3084           remove GtkTroughType argument
3085         - digits rounds the values a range will input to the given 
3086           number of decimals, but will not try to force adjustment 
3087           values set by other controllers. That is, we no longer
3088           modify adjustment->value inside a value_changed handler.
3089         - added getters for GtkScale setters
3090         - middle-click begins a slider drag
3091         
3092 Fri Jun  1 18:54:47 2001  Jonathan Blandford  <jrb@redhat.com>
3093
3094         * gtk/gtktreeview.c: (gtk_tree_view_focus): Initial stab at
3095         getting the focus code to work.
3096         (gtk_tree_view_class_init): Add a bunch of keybindings.
3097
3098         * gtk/gtktreeviewcolumn.c
3099         (gtk_tree_view_column_set_cell_data_func):
3100         s/GtkCellDataFunc/GtkTreeCellDataFunc.
3101         (_gtk_tree_view_column_set_tree_view): Use "notify::model" instead
3102         of "properties_changed" to help justify the death of the latter
3103         signal. (-:
3104
3105         * tests/testtreefocus.c (main): Let some columns be focussable to
3106         test focus better.
3107
3108 2001-06-01  Havoc Pennington  <hp@redhat.com>
3109
3110         * gtk/gtkentry.c (gtk_entry_commit_cb): implement overwrite mode
3111         
3112         * gtk/gtktextview.c (gtk_text_view_commit_handler): don't
3113         overwrite in overwrite mode if we already deleted the selection
3114         and replaced it with new text.  
3115
3116         * gtk/gtklabel.c (gtk_label_select_region_index): if you set the
3117         selection to an empty range, clear the clipboard if we owned it.
3118         (gtk_label_set_selectable): give up selection if we become
3119         unselectable.
3120         (gtk_label_state_changed): override state changed to unselect text
3121         when insensitive
3122         (get_text_callback): add paranoia check that indexes aren't
3123         outside of label->text
3124         (gtk_label_select_region): make -1 for start_offset mean "end of
3125         label," for consistency with GtkEditable
3126
3127         * gtk/gtkmessagedialog.c (gtk_message_dialog_new): honor
3128         GTK_DIALOG_NO_SEPARATOR flag
3129
3130 Fri Jun  1 11:47:11 2001  Owen Taylor  <otaylor@redhat.com>
3131
3132         * gtk/gtkcombo.c (gtk_combo_set_use_arrows_always): Fix 
3133         notifications on non-existant "enable_arrow_keys".
3134         (#53753, Skip Montanaro)
3135
3136 Fri Jun  1 11:31:55 2001  Owen Taylor  <otaylor@redhat.com>
3137
3138         * gdk/gdkrectangle.c (gdk_rectangle_get_type): Add 
3139         GDK_TYPE_RECTANGLE.
3140
3141         * gtk/gtkwidget.c (gtk_widget_class_init): Fix type
3142         of allocation argument be GDK_TYPE_RECTANGLE.
3143
3144 Thu May 31 12:43:57 2001  Owen Taylor  <otaylor@redhat.com>
3145
3146         * gtk/gtkoptionmenu.c: Account for the fact that the border
3147         width is _outside_ the window. (Fixes #54585, bug found
3148         by Bastien Nocera.)
3149
3150 Wed May 30 15:56:30 2001  Owen Taylor  <otaylor@redhat.com>
3151
3152         * gtk/gtksettings.c (gtk_settings_get_property): Validate
3153         value from GDK settings against parameter spec.
3154
3155         * gdk/x11/gdkevents-x11.c (gdk_setting_get): Add assignments
3156         to temporary values and use g_value_transform(), since
3157         thinking that GValue was going to be easy or efficient
3158         to use was, of course, a mistake.
3159
3160         * gtk/gtksettings.c: Add cursor blink setting.
3161         
3162         * gdk/x11/gdkevents-x11.c: Add cursor blink X settings.
3163
3164         * gtk/gtkentry.c: Add cursor blinking.
3165
3166         * gtk/gtktextview.c (gtk_text_view_check_cursor_blink): Use
3167         cursor blink global settings.
3168
3169         * gtk/gtkentry.c (gtk_entry_button_press): Add notification
3170         for :text_position in places where it is missing.
3171
3172 Tue May 29 18:17:11 2001  Owen Taylor  <otaylor@redhat.com>
3173
3174         * autogen.sh (have_libtool): Fix GNU sedism (#55430)
3175
3176 Tue May 29 17:40:29 2001  Owen Taylor  <otaylor@redhat.com>
3177
3178         * configure.in (GTK_DEP_CFLAGS): Use $PKG_CONFIG,
3179         not pkg-config. (#51032)
3180
3181         * gdk/gdkproperty.h: Remove inappropriate G_GNUC_CONST
3182         (fixes #51952, James Henstridge)
3183         
3184 2001-05-27  Alexander Larsson  <alla@lysator.liu.se>
3185
3186         * gtk/gtkstock.h (GTK_STOCK_GO_UP):
3187         Rename to the more correct gtk-go-up.
3188
3189         * gtk/stock-icons/stock_menu_sort_ascending.png:
3190         Added new file.
3191         
3192         * gtk/stock-icons/stock_menu_sort_descending.png:
3193         Changed to show descending instead of ascending.
3194
3195         * gtk/gtkiconfactory.c:
3196         Added menu size icon to sort ascending.
3197
3198         * gtk/stock-icons/Makefile.am:
3199         Added stock_menu_sort_ascending.png.
3200         
3201         * gtk/gtkseparatormenuitem.c:
3202         Use correct typenames.
3203
3204 Sun May 20 20:07:35 2001  Tim Janik  <timj@gtk.org>
3205
3206         * gtk/gtksignal.[hc] (gtk_signal_connect_full): make hanlder id a
3207         gulong as in GSignal.
3208
3209 Fri May 25 19:04:17 2001  Jonathan Blandford  <jrb@redhat.com>
3210
3211         * gtk/gtktreeview.c (gtk_tree_view_calc_size): Remove almost all
3212         instances of GtkCellRenderer in code (all but dnd icon code).
3213         Virtualized in GtkTreeViewColumn.  Now I need to move focus in
3214         there, and I can do multiple Cells per column.
3215
3216         * gtk/gtktreeviewcolumn.c: Proxy all cell calls correctly
3217
3218         * gtk/gtktreemodel.c (gtk_tree_row_reference_new_proxy): fix bug
3219         when model was unreffed prior to removing the row reference.
3220
3221 2001-05-25  Havoc Pennington  <hp@redhat.com>
3222
3223         * gtk/gtkiconfactory.c: fix so that default icons are created if 
3224         you call gtk_stock_list_ids()
3225
3226         * demos/gtk-demo/stock_browser.c (create_model): sort stock items
3227         in list
3228
3229 2001-05-25  Havoc Pennington  <hp@redhat.com>
3230
3231         * gtk/gtkiconfactory.c (gtk_icon_set_get_sizes): get sizes an icon
3232         set can render without falling back to missing image icon
3233
3234         * gtk/gtktextview.c (gtk_text_view_size_request): request full
3235         size of text, instead of random values
3236
3237         * gtk/gtktreeview.c (gtk_tree_view_size_request): request full
3238         size of tree view, instead of random values
3239
3240         * gtk/gtkiconfactory.c (gtk_icon_set_render_icon): render fallback
3241         image in an appropriate size
3242
3243         * gtk/gtkstock.h: Rename the stock items including _BUTTON_,
3244         etc. not to include that. i.e. s/GTK_STOCK_BUTTON_OK/GTK_STOCK_OK/
3245
3246         Throughout: fix GTK_STOCK_BUTTON_ instances
3247         
3248         * gtk/gtkstock.h, gtk/gtkstock.c, gtk/gtkiconfactory.h,
3249         gtk/gtkiconfactory.c, gtk/stock-icons/Makefile.am:
3250         Add a bunch of new stock items/icons
3251
3252         * gtk/gtktreeview.c (gtk_tree_view_insert_column_with_data_func):
3253         new function, convenience for inserting columns with a data func
3254
3255         * gtk/gtkiconfactory.c: keep a list of all existing icon factories
3256         (_gtk_icon_factory_list_ids): use list of all factories to
3257         generate a list of all known IDs
3258
3259         * gtk/gtkstock.c (gtk_stock_list_ids): replace
3260         gtk_stock_list_items() with a function that returns all IDs known
3261         including those for GtkIconFactory.
3262
3263 2001-05-25  Hans Breuer  <hans@breuer.org>
3264
3265         * gdk/win32/gdkgc-win32.c : made fil mode GDK_STIPPLED actually
3266         work -> check boxes and radio buttons are drawn now, even on win9x.
3267         Improved line settings a bit, still no clue how to get really dotted
3268         lines on win9x, on NT it's PS_ALTERNATE.
3269
3270         * gdk/win32/gdkwindow-win32.c : use SafeAdjustWindowRect for 
3271         GDK_HINT_MIN_SIZE as well
3272
3273         * gdk/win32/makefile.am : added gdkkeys-win32.c to EXTRA_DIST
3274
3275         * gtk/gtk.def : updated
3276
3277         * gtk/gtktreeprivate.h : change column_drop_func to be a function
3278         pointer not a function pointer pointer
3279
3280         * tests/testdnd.c : include <stdlib.h> for putenv prototype
3281
3282         * tests/testsocket.c : made it compile on win32 again
3283
3284         * tests/makefile.msc : one more test-app uses prop-editor.obj
3285
3286 2001-05-22  Havoc Pennington  <hp@pobox.com>
3287
3288         * gtk/gtkbin.c (gtk_bin_get_child): New function
3289
3290 Wed May 23 20:07:53 2001  Owen Taylor  <otaylor@redhat.com>
3291
3292         * gtk/gtkimcontextsimple.c: Add Mode_Switch to list of keys
3293         to ignore when doing compose processing.
3294
3295 2001-05-22  Joe Shaw  <joe@ximian.com>
3296
3297         * gtk/gtktextiter.c (_gtk_text_btree_get_iter_at_last_toggle): 
3298         Simplify as suggested by Havoc. Just get the last iter and work
3299         backward to the tag instead of getting a line and working back from
3300         there. Fixes passing in an invalid offset to
3301         iter_init_from_byte_offset().
3302
3303 Tue May 22 16:25:27 2001  Jonathan Blandford  <jrb@redhat.com>
3304
3305         * gtk/gtktreeview*.h: 
3306         * gtk/gtkcell*.h:
3307         * gtk/gtk*store.h:
3308         Added patch from Jeff Franks <jcf@tpg.com.au> to add GET_CLASS
3309         macros to all objects.
3310
3311 Tue May 22 15:13:52 2001  Jonathan Blandford  <jrb@redhat.com>
3312
3313         * gtk/gtkcellrenderertext.c
3314         (gtk_cell_renderer_text_set_fixed_size): Evil function to deal
3315         with very large (TM) amounts of text.  May be moved to
3316         GtkCellRenderer in the future, though I'm not sure it wants to be
3317         this accessible.
3318
3319         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_update_button):
3320         More sanity brought to this class.  I like it.
3321
3322         * tests/testtreecolumns.c (ViewColumnModel): Amazingly scary test
3323         case.  Kids, don't try this at home.
3324
3325         * gtk/gtktreemodel.c (gtk_tree_model_get_iter_root): new
3326         convenience function.
3327
3328         * gtk/gtkwindow.c (gtk_window_set_geometry_hints): Fix typo in docs.
3329
3330 2001-05-21  Alexander Larsson  <alexl@redhat.com>
3331
3332         * gtk/gtkfontsel.c:
3333         Added properties. Based on patch by Lee Mallabone.
3334
3335         * gtk/gtkruler.c:
3336         * gtk/gtkhruler.c:
3337         * gtk/gtkvruler.c:
3338         * gtk/gtktext.c:
3339         * gtk/gtktextview.c:
3340         Converted GtkArg to GParam. Based on patches by John Margaglione.
3341
3342         * tests/Makefile.am:
3343         * tests/testtext.c:
3344         Add a property editor to testtext.
3345         
3346 Mon May 21 11:29:21 2001  Owen Taylor  <otaylor@redhat.com>
3347
3348         * gtk/gtk{h,v,}paned.c: Only show the separator if 
3349
3350         * configure.in: Fixed reversed conditional causing all image
3351         libraries to be linked in.
3352
3353 2001-05-21  Joe Shaw  <joe@ximian.com>
3354
3355         * gtk/gtklayout.c (gtk_text_layout_get_lines): Remove the assertion
3356         that top_y needs to be >= 0.
3357
3358 2001-05-11  Havoc Pennington  <hp@pobox.com>
3359         
3360         * gdk/x11/gdkmain-x11.c: Improve error messages for X errors and
3361         losing connection to the X server.
3362
3363 Sun May 20 13:59:20 2001  Owen Taylor  <otaylor@redhat.com>
3364
3365         * configure.in: Start checks for X from pangox/pangoxft
3366         CFLAGS to avoid duplicate libraries.
3367
3368         * gdk/Makefile.am (LDFLAGS): Remove extra -lm.
3369
3370         * configure.in (GDK_PIXBUF_PACKAGES): Fix GDK_PIXBUF_PACKAGES
3371         to include gobject.
3372         
3373 2001-05-18  Alexander Larsson  <alexl@redhat.com>
3374
3375         * gtk/gtkspinbutton.c:
3376         Convert GtkArgs to GParams. Based on patch by John Margaglione.
3377         Also do size request reasonable for MAXDOUBLE. Previously it printed
3378         the limits to a buffer and overran it. Instead do it using log10() and
3379         limit the width to 10 digits.
3380         
3381         * gtk/gtkwidget.c (gtk_widget_get_property):
3382         Correctly handle setting the parent property to NULL.
3383
3384 Fri May 18 15:26:26 2001  Owen Taylor  <otaylor@redhat.com>
3385
3386         * gtk/gtktextview.c (gtk_text_view_style_set): Reset 
3387         style attributes even if the widget isn't realized.
3388
3389         * demos/gtk-demo/main.c: Use a slightly smaller font.
3390
3391 Fri May 18 14:25:20 2001  Owen Taylor  <otaylor@redhat.com>
3392
3393         * gtk/gtkcontainer.c: Remove reallocate-redraws property.
3394         This is something that only a widget writer would ever want
3395         to change.
3396
3397         * gtk/gtksignal.c: Handle G_SIGNAL_TYPE_STATIC_SCOPE for
3398         gtk_signal_emit_by_name().
3399
3400         * gtk/gtkviewport.c: Fix some warnings.
3401
3402         * gtk/gtkwidget.c gtk/gtksizegroup.c: Add "size group" facility
3403         allowing the requisitions of multiple widgets to be grouped
3404         together.
3405
3406         * tests/testgtk.c: Add GtkSizeGroup test
3407
3408         * demos/gtk-demo/sizegroup.c: Add GtkSizeGroup demo.
3409
3410         * demos/gtk-demo/main.c demos/gtk-demo/pixbufs.c: Fix some
3411         warnings.
3412
3413         * configure.in: Switch to using AM_GLIB_GNU_GETTEXT.
3414
3415 2001-04-28  Martin Baulig  <baulig@suse.de>
3416
3417         * gtk/gtkimagemenuitem.[ch]: Renamed gtk_image_menu_item_add_icon()
3418         to gtk_image_menu_item_set_icon() and made it work if there's already
3419         an image.
3420         (gtk_image_menu_item_new): This function doesn't take any arguments anymore.
3421         (gtk_image_menu_item_new_with_label): New function.
3422
3423 Thu May 17 16:20:04 2001  Jonathan Blandford  <jrb@redhat.com>
3424
3425         * demos/gtk-demo/main.c (fontify): It's the worlds ugliest
3426         highlighting code!!!!  The result is okay so long as you don't try
3427         to stress it.  It also highlights a bug in the TextView so it's in
3428         an unproportional font right now until it's fixed.
3429
3430         *demos/gtk-demo/*.c: Clean up code a bit to make it
3431         ugly-parser(TM) friendly. (-:
3432
3433 2001-05-17  Joe Shaw  <joe@ximian.com>
3434
3435         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Remove the assertions
3436         that x_offset and y_offset must be >= 0. Clip the cursor being drawn
3437         if it is only partially onscreen.
3438
3439 Thu May 17 17:10:13 2001  Owen Taylor  <otaylor@redhat.com>
3440
3441         * gtk/gtkentry.c: Make logical motion and deletion by graphemes, 
3442         not by characters.
3443
3444         * gtk/gtkentry.c: Handle "trailing" returns from Pango when they
3445         are not zero or one; that is, when graphemes of multiple characters
3446         are involved.
3447
3448         * gtk/gtktextlayout.c (line_display_index_to_iter): Remove unnecessary
3449         FIXME.
3450
3451 2001-05-17  Alexander Larsson  <alla@lysator.liu.se>
3452         
3453         * gtk/gtkbbox.c:
3454         Add properties, based on patch by Lee Mallabone.
3455
3456         * gtk/gtknotebook.c:
3457         * gtk/gtktoolbar.c:
3458         Convert from GtkArg to GParam, based on patch by John Margaglione.
3459         
3460         * gtk/gtkhscale.c:
3461         * gtk/gtkvscale.c:
3462         * gtk/gtkhscrollbar.c:
3463         * gtk/gtkvscrollbar.c:
3464         * gtk/gtkrange.c:
3465         Move adjustment property to GtkRange.
3466
3467         * gtk/gtklabel.c:
3468         Setup mnemonics on property changes
3469
3470         * gtk/gtkwidget.c (gtk_widget_get_property):
3471         GdkExtensionMode is an enum, not a flag. Set it with
3472         g_value_set_enum ().
3473
3474         * tests/prop-editor.c:
3475         Better propery editor.
3476
3477         * tests/testgtk.c:
3478         Add new property test. Pass zero to the property editor to
3479         get properties from all derived types.
3480         
3481 Sun May 13 12:01:12 2001  Owen Taylor  <otaylor@redhat.com>
3482
3483         * autogen.sh (have_automake): Require libtool-1.4,
3484         automake-1.4p1.
3485
3486         * acinclude.m4: Remove libtool macros.
3487
3488         * gdk-pixbuf/Makefile.am: Add dependencies to loade
3489         modules.
3490
3491         * gdk/Makefile.am: Add dependency on libgdk_pixbuf.la
3492         for libgdk.
3493
3494         * gtk/Makefile.am: Add dependency on libgdk_pixbuf.la
3495         libgdk.la for libgtk.
3496
3497         * modules/input/Makefile.am: Make modules have full
3498         dependencies.
3499
3500 Wed May 16 14:06:01 2001  Jonathan Blandford  <jrb@redhat.com>
3501
3502         * gtk/gtktreemodel.c (gtk_tree_path_new_from_string): fix bug
3503         #54699 where paths weren't being checked for correctness.
3504
3505 Tue May 15 20:13:24 2001  Jonathan Blandford  <jrb@redhat.com>
3506
3507         * gtk/gtktreeviewcolumn.c: You can now set all sorts of properties
3508         in any order you wan, whether or not the column is added to the
3509         tree, or the tree is realized.  Yay!
3510
3511         * gtk/gtktreeviewcolumn.c
3512         (gtk_tree_view_column_setup_sort_column_id_callback): handle
3513         sorting columns a lot saner
3514
3515         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_reorderable):
3516         new function to actually set wether or not a column is
3517         reorderable.
3518
3519         * gtk/gtktreeview.c (gtk_tree_view_unrealize): Only destroy things
3520         if we have 'em.
3521
3522         * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_set_tree_view):
3523         Fix nasty bug where we were showing the button just before
3524         realizing it.  As a result, the parent window was
3525         tree_view->window instead of tree_view->priv->header_window.
3526
3527         * gtk/gtktreeview.c (gtk_tree_view_set_reorderable): new property
3528         to let you easily reorder a list or tree.
3529
3530 2001-05-15  Alexander Larsson  <alla@lysator.liu.se>
3531
3532         * gtk/gtkpacker.c: Apply patch from John Margaglione that converts
3533         from args to properties.
3534
3535 Tue May 15 10:11:59 2001  Owen Taylor  <otaylor@redhat.com>
3536
3537         * gtk/gtkpreview.c: Apply patch from John Margaglione converting
3538         from args to properties. (#51957)
3539
3540         * gtk/gtkscale.c (gtk_scale_class_init): Move install property
3541         calls to after ->set_property call.
3542
3543 Mon May 14 14:56:21 2001  Owen Taylor  <otaylor@redhat.com>
3544
3545         * tests/prop-editor.c: Block against redundant changes.
3546
3547         * gtk/gtkpaned.c gtk/gtk[hv]paned.c: Add position, position_set
3548         properties.
3549
3550 Sun May 13 18:40:04 2001  Owen Taylor  <otaylor@redhat.com>
3551
3552         * gdk/gdkpixmap.h: Remove creative formatting.
3553
3554 Thu May 10 19:22:28 2001  Owen Taylor  <otaylor@redhat.com>
3555
3556         * gtk/gtktogglebutton.c:  Patch from John Margaglione converting to
3557         property API. (#51669)
3558
3559         * gtk/gtkscale.c: Patch from John Margaglione converting to
3560         property API. (#51891)
3561
3562         * gtk/gtkaccellabel.c: Applied patch from Lee Mallabone, converting
3563         to property API. (#50985)
3564
3565 Fri May 11 20:13:44 2001  Tim Janik  <timj@gtk.org>
3566
3567         * gtk/gtkmain.c (gtk_main_do_event): remember widget's double
3568         buffering state across expose event, so we still call end_paint().
3569
3570 2001-05-11  Alexander Larsson  <alexl@redhat.com>
3571
3572         * gtk/gtkhsv.c (paint_triangle):
3573         Expose the ring in the triangle at the correct place when
3574         exposing just a part of the triangle.
3575
3576         * gtk/gtkwindow-decorate.c (gtk_decorated_window_focus_change):
3577         Return FALSE, or window focusing will not work.
3578
3579 2001-05-11  Havoc Pennington  <hp@pobox.com>
3580
3581         * gtk/gtkimage.c (gtk_image_new_from_stock): docs, fixes bug
3582         #54144
3583
3584         * gtk/gtkcolorsel.c (gtk_color_selection_new): docs, fixes
3585         bug #54330
3586
3587 Fri May 11 02:53:57 2001  Tim Janik  <timj@gtk.org>
3588
3589         * gtk/gtktogglebutton.c (gtk_toggle_button_expose): don't
3590         propagate exposes to NULL child.
3591
3592         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed): guard
3593         against not having one of the scrollbars.
3594
3595         * gtk/gtklabel.c (gtk_label_setup_mnemonic): clean up after us,
3596         we don't keep a mnemonic window if we have no mnemonic installed.
3597
3598 Fri May 11 01:05:00 2001  Tim Janik  <timj@gtk.org>
3599
3600         * gtk/gtktypeutils.h: grum, gtk_type_class() is not GNUC_CONST
3601         it has the _important_ side effect of initializing a class.
3602
3603 2001-05-10  Alexander Larsson  <alexl@redhat.com>
3604
3605         * gdk/linux-fb/gdkprivate-fb.h:
3606         Make sure you can compile out the implementation/wrapper assert
3607         macros.
3608
3609         * gdk/linux-fb/gdkdrawable-fb2.c:
3610         Check implementation/wrappers, initialize type for pixmap dummys.
3611
3612         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image):
3613         Hide the cursor if reading from the screen.
3614
3615         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic):
3616         Fix sign bug in tiling code.
3617
3618         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_clear_area):
3619         Handle background pixmaps.
3620
3621 Wed May  9 15:27:22 2001  Jonathan Blandford  <jrb@redhat.com>
3622
3623         * gtk/gtktreeview.c (gtk_tree_view_set_column_drag_function): New
3624         function to let user control where columns are dragged.
3625
3626         * gtk/gtktreeview.c (gtk_tree_view_key_press): Cancel drags if
3627         Escape is pressed.
3628
3629 Wed May  9 09:08:44 2001  Jonathan Blandford  <jrb@redhat.com>
3630
3631         * gtk/gtktreeview.c (gtk_tree_view_class_init): New
3632         "columns_changed" signal.
3633         (gtk_tree_view_motion_draw_column_motion_arrow): Change column
3634         motion code to draw arrows to the side if indicator is outside the
3635         widget.
3636         (gtk_tree_view_map_expanded_rows): Implement.
3637
3638 2001-05-07  Alexander Larsson  <alexl@redhat.com>
3639
3640         * demos/testpixbuf-save.c: 
3641         * demos/testpixbuf-drawable.c:
3642         Include gdkfb.h on linux-fb.
3643
3644 2001-05-07  Alexander Larsson  <alexl@redhat.com>
3645
3646         * gdk/linux-fb/gdkdnd-fb.c (get_toplevel_window_at):
3647         New function for getting toplevel window at position.
3648         (gdk_drag_find_window): Use get_toplevel_window () instead
3649         of gdk_window_get_pointer(). (gdk_drag_status): Use
3650         correct context for getting window.
3651
3652         * gdk/linux-fb/gdkproperty-fb.c (gdk_atom_name):
3653         g_strdup the atom name.
3654
3655         * gdk/linux-fb/gdkwindow-fb.c:
3656         Costmetic fix.
3657
3658         * gtk/gtkdnd.c (gtk_drag_source_handle_event):
3659         Add code for changing cursor on linux-fb backend (same as
3660         win32).
3661
3662 2001-05-07  Federico Mena Quintero  <federico@ximian.com>
3663
3664         * gtk/gtkwindow.c (gtk_window_focus): Test for bin->child being
3665         present before doing anything with it.  Patch from HÃ¥vard KvÃ¥len
3666         <havardk@netcom.no>.  Fixes Ximian bugzilla #2492 (OK, the bug
3667         report was not for the development branch of GTK+, but it applies
3668         anyways).
3669
3670 2001-05-04  Havoc Pennington  <hp@redhat.com>
3671
3672         * configure.in: fix some shell typos
3673
3674         * gtk/gtkcolorsel.c (gtk_color_selection_destroy): warning fix
3675
3676         * gtk/gtkimage.c: handle animations
3677
3678         * gtk/gtkcheckbutton.c (gtk_check_button_size_request): request
3679         border_width * 2, not just border_width
3680
3681         * gtk/gtkscale.c: add "format_value" signal to allow people
3682         to override the way values are drawn.
3683         (gtk_scale_get_value_size): fix width/height mistake,
3684         and compute size from actual displayed text, not 
3685         from made-up text.
3686
3687         * gtk/gtktexttag.c (gtk_text_tag_class_init): fix return type in 
3688         signal registration
3689
3690         * tests/testtext.c: Add "Remove all tags" menu item for testing
3691
3692         * gtk/gtktextbuffer.c (gtk_text_buffer_remove_all_tags): implement
3693
3694         * demos/gtk-demo/main.c (main): add hack so we can find modules
3695         without installing gtk
3696
3697         * demos/gtk-demo/textview.c (insert_text): demo font scaling
3698
3699         * gtk/gtkcellrenderertext.c: Add "scale" property (font scaling
3700         factor)
3701         (gtk_cell_renderer_text_set_property): remove some bogus
3702         g_object_notify
3703
3704         * gtk/gtktexttag.c: add "scale" property which is a font scaling
3705         factor
3706
3707         * gtk/gtktextlayout.c (add_text_attrs): add font scale attribute 
3708         to layout
3709
3710         * gtk/gtktextiter.c (gtk_text_iter_is_start): rename from
3711         gtk_text_iter_is_first
3712
3713 2001-01-06  Hans Breuer  <hans@breuer.org>
3714
3715         * gdk/gdk.def : updated exports
3716
3717         * gdk/win32/makefile.msc : -DGDK_ENABLE_BROKEN otherwise
3718         gdk won't compile anymore
3719  
3720         * gdk/win32/gdkevents-win32.c : initialize ret_val when
3721         processing GDK_FILTER functions, initialize event.key->hardware_keycode.
3722         Improved gdk_flush () to not only do pending drawing operations
3723         but also process all currently pending events. This should make
3724         the behaviour more similar to the X11 version.  
3725
3726         * gdk/win32/gdkgc-win32.c (predraw_set_background) : a background
3727         option needs to be set even if there is no GDK_GC_BACKGROUND.
3728         (gdk_win32_hdc_get) : use predraw_set_background () independent
3729         of value_mask. This allows to draw dashed lines leaving the original
3730         background intact.
3731
3732         * gdk/win32/gdkimage-win32.c (gdk_image_new_bitamp) : free data
3733         after processing, because we can't reuse it as the X11 version does.
3734
3735         * gtk/gtk.def : updated exports
3736
3737         * gtk/makefile.msc.in : added ATK, removed all test apps. (I
3738         would like to get rid of this file again, and use straight
3739         makefile.msc again, as the other Gtk+ subdirs do)
3740
3741         * test/makefile.msc (new file) : build the test apps here
3742
3743 2001-05-05  ERDI Gergo  <cactus@cactus.rulez.org>
3744
3745         * gdk/gdkpango.c (gdk_pango_get_item_properties): Peek
3746         strike-through setting
3747         (gdk_draw_layout_line_with_colors): Render strike-through
3748
3749 Sat May  5 10:06:24 2001  Owen Taylor  <otaylor@redhat.com>
3750
3751         * Release 1.3.5
3752
3753         * configure.in (GTK_MICRO_VERSION): Up to 1.3.5
3754
3755         * NEWS: Updated
3756
3757         * demos/gtk-demo/Makefile.am (EXTRA_DIST): Fix minor
3758         Makefile breakage.
3759
3760 Sat May  5 09:18:30 2001  Owen Taylor  <otaylor@redhat.com>
3761
3762         * demos/gtk-demo/images.c (progressive_timeout): Fix
3763         typo in filename.
3764
3765         * gtk/gtktreeview.c (gtk_tree_view_row_activated): Comment
3766         out FIXME warning; just too annoying.
3767
3768 2001-05-04  Alex Larsson  <alla@lysator.liu.se>
3769
3770         * gdk/linux-fb/gdkcolor-fb.c:
3771         Better error messages.
3772
3773         * gdk/linux-fb/gdkpixmap-fb.c (gdk_pixmap_new):
3774         Initialize abs_x and abs_y.
3775         
3776         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic):
3777         Correct handling of stipple offset.
3778
3779         * gdk/linux-fb/gdkvisual-fb.c (gdk_visual_init):
3780         Treat directcolor framebuffers as truecolor.
3781         
3782 Thu May  3 14:13:49 2001  Owen Taylor  <otaylor@redhat.com>
3783
3784         * INSTALL.in HACKING gtk/gtkaccessible.[ch] gtk/gtk.c: Add
3785         dependency on Atk for accessibility support.
3786
3787         * configure.in **/Makefile.am: Major reworking of substituted
3788         variables for CFLAGS/LIBS to make a lot more sane and 
3789         keep the the compile/link lines a bit shorter.
3790
3791         * gdk/x11/gdkkeys-x11.c: Fix #endif with trailing stuff.
3792
3793 Thu May  3 08:10:54 2001  Owen Taylor  <otaylor@redhat.com>
3794
3795         * gtk/gtktexttag.c (gtk_text_tag_class_init): Fix return
3796         value to be G_TYPE_BOOLEAN, not G_TYPE_INT, also,
3797         use _gtk_boolean_handled_accumulator.
3798
3799 Thu May  3 07:00:09 2001  Owen Taylor  <otaylor@redhat.com>
3800
3801         * gtk/gtktextview.c: Patch from Juan Pablo Mendoza Mendoza
3802         to fix things so clicking inside selection leaves cursor
3803         at point where clicked. (#50324)
3804
3805         * gtk/gtksettings.c (gtk_settings_class_init): Restore
3806         sane value for default double click time.
3807
3808         * tests/testtext.c (test_init): Really path to input modules.
3809
3810 2001-05-03  Sven Neumann  <sven@convergence.de>
3811
3812         * demos/testpixbuf-save.c: include target-specific headers as
3813         done in testpixbuf-drawable.c
3814
3815 Wed May  2 20:36:38 2001  Owen Taylor  <otaylor@redhat.com>
3816
3817         * gtk/gtkentry.c (gtk_entry_real_insert_text): Reduce
3818         new_text_length appropriately when we run into the 
3819         size limit for the entry. (#53445, reported by Jeff Franks)
3820
3821         * tests/testgtk.c (create_entry): Remove most of the
3822         property toggle buttons. Replace with a "Props" button
3823         that brings up a property editor.
3824
3825         * tests/prop-editor.[ch] test/testtreeview.c tests/Makefile.am:
3826         Split the property editor code out for reuse, improve.
3827
3828 Wed May  2 17:26:22 2001  Owen Taylor  <otaylor@redhat.com>
3829
3830         * gdk/x11/gdkevents-x11.c gdk/x11/gdkwindow-x11.c: Always
3831         trap errors around calls to XSetInputFocus since we have
3832         no way of knowing reliably whether we are viewable or
3833         not. (#53947)
3834
3835 Tue May  1 09:21:23 2001  Jonathan Blandford  <jrb@redhat.com>
3836
3837         * gtk/gtktreeview.c (gtk_tree_view_button_release_drag_column):
3838         fix bug in dropping columns.  Moving columns now basically works
3839         modula some fine tuning.
3840
3841 Tue May  1 19:09:21 2001  Jonathan Blandford  <jrb@redhat.com>
3842
3843         * gtk/gtktreeview.c (gtk_tree_view_horizontal_autoscroll): Add
3844         autoscroll support.  It mostly works, but could use some fine
3845         tuning.
3846         * gtk/gtktreeview.c (gtk_tree_view_button_release_drag_column):
3847         Actually move the column.
3848
3849 Mon Apr 30 20:29:27 2001  Owen Taylor  <otaylor@redhat.com>
3850
3851         * gtk/gtkbutton.c gtk/gtkcheckbutton.c gtk/gtkoptionmenu.c 
3852           gtk/gtkspinbutton.c gtk/gtkstyle.c gtk/gtkwidget.c:
3853           New default theme! A slighly improved version of the 2.0 Raleigh
3854           theme, with Windows-esque focus/drawing default. 
3855           (GtkWidget::interior_focus defaults to TRUE.)
3856
3857         * gtk/gtkstyle.[ch]: Add a text_aa color halfway between text and base.
3858
3859 2001-04-30  Havoc Pennington  <hp@pobox.com>
3860
3861         * tests/testtext.c (line_numbers_expose): fix to work with
3862         gtk_paint_layout change
3863
3864 Mon Apr 30 19:18:07 2001  Owen Taylor  <otaylor@redhat.com>
3865
3866         * gtk/gtkstyle.[ch] gtk/gtkaccellabel.c gtk/gtkcellrenderertext.c
3867           gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c gtk/gtkprogressbar.c
3868           gtk/gtkvruler.c gtk/gtkvscale.c: Add an extra parameter
3869           use_text to gtk_paint_label() to deal with style->bg[] vs style->text[].
3870
3871         * gtk/gtkbbox.c gtk/gtkdialog.c: Tweak padding some to deal
3872           with GtkWidget::interior_focus = TRUE better.
3873
3874         * gtk/gtkbutton.c: Switch ::default_spacing to ::default_border,
3875         ::default_outside_border for more flexibility.
3876
3877         * gtk/gtkwidget.c (gtk_widget_style_get_valist): Remove 
3878         G_VALUE_NO_COPY_CONTENTS, to correspond with the recent
3879         change that had to be made with g_object_get.
3880
3881 Sun Apr 29 20:13:40 2001  Jonathan Blandford  <jrb@redhat.com>
3882
3883         * gtk/gtktreeview.c (gtk_tree_view_get_columns): new function.
3884         (gtk_tree_view_move_column_after): Clean up interface. 
3885
3886 Sun Apr 29 03:02:02 2001  Tim Janik  <timj@gtk.org>
3887
3888         * gtk/gtkpacker.h:
3889         * gtk/gtkenums.h: moved GtkAnchorType and GtkSideType from gtkpacker.h
3890          to gtkenum.h.
3891
3892         * gtk/gtkmain.c (gtk_main_do_event): silence compiler (GDK_SETTING not
3893         handled in switch).
3894
3895         * gtk/Makefile.am:
3896         (gtk.defs): generate enum portions with  glib-mkenums.
3897         (gtktypebuiltins_evals.c): generate this with glib-mkenums.
3898         got rid of makeenums.pl and makeenums.awk in distributed tarballs.
3899         
3900         * gtk/gtkaccelgroup.c (gtk_accel_group_add): refined havocs warning
3901         addition.
3902
3903         * docs/Changes-2.0.txt: keep a note on signal handlers now
3904         not getting emitted during the emission they were connected within.
3905
3906 2001-04-28  Havoc Pennington  <hp@pobox.com>
3907
3908         * gtk/gtkcolorsel.c (palette_new): fix bug in tooltip
3909
3910 2001-04-24  Havoc Pennington  <hp@redhat.com>
3911
3912         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_previous_line): 
3913         (gtk_text_layout_move_iter_to_next_line): fix these two for
3914         invisible text, lots of other stuff still hosed.
3915
3916         * gtk/gtkcolorsel.c (gtk_color_selection_set_change_palette_hook):
3917         new function, replaces the get/set palette stuff. This function 
3918         is intended for use by libgnomeui which should set the hook to a
3919         thing which sets the palette in GConf, and we need the
3920         GConf-to-xsettings proxy which will result in the change being
3921         propagated back to the GTK app.
3922
3923         * gtk/gtkaccelgroup.c (gtk_accel_group_add): add note to warning 
3924         about unusable signals that it may be because the signal has 
3925         parameters.
3926
3927         * gtk/gtkwidget.c (gtk_widget_modify_style): always copy the
3928         style, otherwise gtkrc.c won't know to create a new GtkStyle for
3929         it.
3930         (gtk_widget_modify_color_component): call
3931         gtk_widget_modify_style() so the rc style will get copied.
3932         (gtk_widget_modify_font): ditto
3933
3934         * gtk/gtkrc.c: make a couple variables static
3935
3936         * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): hide
3937         help button by default, since it does nothing
3938
3939         * gtk/gtkcolorsel.c: add tooltips, work on key navigation, fool
3940         around with UI
3941
3942         * gtk/gtkentry.c (gtk_entry_realize): request enter/leave notify
3943         so we can have tooltips
3944
3945         * gtk/gtkhsv.c (gtk_hsv_realize): request enter/leave notify so we
3946         can have tooltips
3947
3948         * gdk/gdkimage.h: mark gdk_image_new_bitmap with
3949         GDK_ENABLE_BROKEN, because its memory behavior is completely
3950         hosed.
3951
3952         * gtk/gtknotebook.c: remove key press handler, replace with
3953         binding set, add numeric keypad support
3954
3955         * gtk/gtktextview.c (gtk_text_view_class_init): accept KP_Delete
3956
3957         * gtk/gtktext.c (gtk_text_key_press): add a bunch of KP keysyms
3958
3959         * gtk/gtkentry.c (gtk_entry_class_init): accept GDK_KP_Delete in
3960         addition to plain Delete
3961
3962         * gtk/gtktextview.c (gtk_text_view_key_press_event): accept
3963         GDK_KP_Enter in addition to GDK_Return
3964
3965         * gtk/gtkfontsel.c (gtk_font_selection_size_key_press): connect to
3966         activate on entry instead of key press
3967         (gtk_font_selection_on_clist_key_press): get
3968         rid of this signal handler, not needed with new font sel.
3969
3970         * gtk/gtkfilesel.c (gtk_file_selection_key_press): remove a
3971         no-longer-needed emit_stop_by_name(), just return TRUE
3972
3973         * gtk/gtkhscrollbar.c, gtk/gtkvscrollbar.c: remove keybindings
3974         cruft, this widget is no longer focusable.
3975
3976         * gtk/gtkrange.h, gtk/gtkrange.c, gtk/gtkvscale.c,
3977         gtk/gtkhscale.c: Get rid of trough_keys virtual function, add
3978         move_slider action signal, add binding set for vscale/hscale, in
3979         the process support numeric keypad
3980
3981         * gtk/gtkentry.c (gtk_entry_class_init): Add keypad bindings; 
3982         make GDK_Return and GDK_KP_Enter activate the entry via 
3983         binding set, instead of hardcoded.
3984
3985 Fri Apr 27 20:27:21 2001  Jonathan Blandford  <jrb@redhat.com>
3986
3987         * gtk/gtktreeview.[hc]: Massive reorder/cleanup of a lot of the
3988         code.  Some documentation added.
3989
3990 2001-04-27  Havoc Pennington  <hp@redhat.com>
3991
3992         * gtk/gtkcombo.c (gtk_combo_popup_button_press): fix warning
3993
3994         * gtk/gtkmessagedialog.c (gtk_message_dialog_init): make messages selectable
3995
3996         * gtk/gtkentry.c (gtk_entry_real_insert_text): don't strip
3997         line/para separators
3998         (gtk_entry_create_layout): set single paragraph mode on the layout
3999
4000         * gtk/gtkbutton.c (gtk_button_new_from_stock): don't put much
4001         spacing between the image and label; instead, inside a button box 
4002         the button will get extra space that will go there, but if people 
4003         configure button box for 0 chubbiness, then there's no spacing.
4004
4005         * gtk/gtkbbox.c (gtk_button_box_class_init): Make child ipadding
4006         and min/max size style properties, so people can tune their
4007         chubbiness.
4008
4009         * tests/testgtk.c (make_toolbar): remove calls to removed toolbar
4010         functions
4011
4012         * gtk/gtktoolbar.c (gtk_toolbar_class_init): Make space_size,
4013         space_style, and button_relief into style properties, remove
4014         functions for setting them
4015         
4016         * gtk/gtkmenu.c (gtk_menu_key_press): handle menu bar accel to pop 
4017         it back down
4018
4019         * gtk/gtkoptionmenu.c (gtk_option_menu_get_props): free boxed
4020         types from gtk_widget_style_get
4021
4022         * gtk/gtkmenubar.c (gtk_menu_bar_set_shadow_type): Remove, replace
4023         with a style property.
4024
4025         * gdk/x11/gdkevents-x11.c: namespace the settings
4026
4027         * gtk/gtkmenubar.c: Add F10 accelerator to move between menubars.
4028
4029         * gtk/gtksettings.c (gtk_settings_class_init): remove code with
4030         side effects from inside g_assert(), so that G_DISABLE_ASSERT can
4031         be used. Also, translate doc strings for settings. Also, namespace
4032         the double-click-time property. Also, remove bell properties crap.
4033
4034 2001-04-27  Sven Neumann  <sven@gimp.org>
4035
4036         * Makefile.am: before creating links, check if pkg-config files
4037         exist for the default target. Otherwise link to the pkg-config files
4038         that got installed with this build.
4039
4040 Thu Apr 26 19:11:46 2001  Jonathan Blandford  <jrb@redhat.com>
4041
4042         * gtk/gtktreeview.c (gtk_tree_view_motion): clean up column
4043         dragging code.  Revealed some (potential) GdkWindow bugs.
4044
4045         * gdk/x11/gdkwindow-x11.c (gdk_window_reparent): add
4046         _gdk_window_init_position to the end of reparent to fix the case
4047         of reparenting when new_x != old_x and new_y != old_y.
4048
4049 Thu Apr 26 10:54:50 2001  Owen Taylor  <otaylor@redhat.com>
4050
4051         * gtk/gtkentry.c (strstr_len): Fix optimization that
4052         was correct for the use here, but completely incorrect
4053         in general.
4054
4055 Thu Apr 26 10:40:41 2001  Owen Taylor  <otaylor@redhat.com>
4056
4057         * gtk/gtkwindow.h: Remove deprecation of gtk_window_set_default_size()
4058         until patch adding gtk_window_set_size() is recommitted. 
4059
4060         * **Makefile.am configure.in gdk/x11/gdkim-11.c
4061           gtk/gtkmain.c gtk/gtkimmulticontext.c gtk/gtkmain.c
4062           gtk/gtkrc.c: Remove all traces of -DX_LOCALE support.
4063           (#10784)
4064
4065 Wed Apr 25 12:16:36 2001  Owen Taylor  <otaylor@redhat.com>
4066
4067         * gdk/X11/gdkevents-x11.c (gdk_event_translate): Test for 
4068         window == NULL in a number of cases.
4069
4070         * tests/testdnd.c: Set module path for gdk-pixbuf.
4071
4072 Thu Apr 19 16:11:07 2001  Owen Taylor  <otaylor@redhat.com>
4073
4074         * gtk/Makefile.am xembed.h: File containing #defines
4075         for XEMBED protocol.
4076
4077         * gtk/gtkplug.[ch] gtk/gtksocket.[ch]: 
4078
4079         - Change protocol from old plug/socket specific protocol
4080           to XEMBED draft
4081         - Various fixes to work with GTK+-2.0
4082
4083         Still quite a bit of work to do here to handle initiation
4084         from the socket side (as specified by XEMBED), to handle
4085         the more advanced features of XEMBED, and to figure out
4086         a good way to handle same-app embedding with less overhead
4087         than using full XEMBED.
4088
4089 Wed Apr 18 16:04:28 2001  Owen Taylor  <otaylor@redhat.com>
4090
4091         * gtk/gtkwindow.[ch] (gtk_window_real_set_focus): Keep
4092         track of whether the toplevel has the focus; only send
4093         focus-in events to the focus widget when the window
4094         actually has the focus.
4095
4096 2001-04-25  Havoc Pennington  <hp@pobox.com>
4097
4098         * gtk/gtkwindow.h: set_decorations_hint and set_functions_hint
4099         were still in the header
4100
4101 2001-04-24  Alexander Larsson  <alexl@redhat.com>
4102
4103         * gtk/gtkclist.[ch]:
4104         * gtk/gtkctree.c:
4105         When there is a row highlighted for D'n'D it must alse
4106         be painted hightlighted on exposes. Otherwise exposes from
4107         the icon being dragged will mess up the hightlight.
4108
4109         * gtk/gtkfontsel.c:
4110         Don't recenter selected font when exposing the font family
4111         clist. This means you can now actually scroll the font family
4112         list.
4113
4114         * gtk/gtknotebook.c:
4115         Fix focus movement on scrolling tabs that are placed on the left
4116         and right.
4117
4118 2001-04-21  Havoc Pennington  <hp@pobox.com>
4119
4120         * gtk/gtktextdisplay.c (gtk_text_layout_draw): handle 0-height
4121         empty/invisible lines.
4122
4123         * gtk/gtktextiter.c (gtk_text_iter_set_visible_line_offset)
4124         (gtk_text_iter_set_visible_line_index): new functions to set
4125         indexes excluding invisible text
4126
4127         * gtk/gtktextlayout.c (line_display_iter_to_index): get visible 
4128         index
4129
4130         * gtk/gtktextiter.c (gtk_text_iter_get_visible_line_index)
4131         (gtk_text_iter_get_visible_line_offset): new functions to 
4132         get indexes excluding invisible text
4133
4134         * gtk/gtkmessagedialog.c (gtk_message_dialog_init): strip out a
4135         bunch of extra padding that served no purpose
4136
4137         * gtk/gtkdialog.c: Make all the spacings configurable via style
4138         properties, for chubbiness configuration in themes
4139
4140         * tests/testtext.c: fix path to the immodules.
4141         
4142 Mon Apr 23 18:57:03 2001  Jonathan Blandford  <jrb@redhat.com>
4143
4144         * gtk/gtksocket.c (gtk_socket_filter_func): add missing '}' that
4145         got munched by #endif.
4146
4147         * gtk/Makefile.am (gtk_plug_c_sources): add missing '\'
4148
4149         * gtk/gtktreeview.c: Refactored code to clean up a number of
4150         events.
4151
4152         * gtk/gtktreemodel.c (gtk_tree_path_compare): Switched return
4153         values to make consistent with other functions.  Spotted by Jeff
4154         Franks <jcf@tpg.com.au>.
4155
4156         * gtk/gtktreeview.h (struct _GtkTreeViewClass): Fixes to signal
4157         declaration spotted by Jeff Franks <jcf@tpg.com.au>.
4158
4159 2001-04-23  Sven Neumann  <sven@gimp.org>
4160
4161         * gtk/Makefile.am
4162         * gtk/gtkplug.c
4163         * gtk/gtksocket.c: on request of Owen, reverted my last change 
4164         and exclude gtkplug.c/gtksocket.c from the build for non-X11 targets
4165
4166 2001-04-23  Sven Neumann  <sven@gimp.org>
4167
4168         * gtk/gtkplug.c: put into #ifdef GDK_WINDOWING_X11 to make GTK+
4169         compile for non-X11 targets again
4170
4171 2001-04-20  Alexander Larsson  <alexl@redhat.com>
4172
4173         * gtk/gtkcolorsel.[ch]:
4174         API Change. Take GdkColor arguments instead of gdouble *.
4175         Leave the old gtk_color_selection_set_color for compatibility,
4176         but marked deprecated.
4177         Do correct rounding when converting RGB <-> HSV.
4178         
4179         * gtk/gtkcolorseldialog.c:
4180         * tests/testgtk.c:
4181         Use new GtkColorSelection API.
4182
4183         * gtk/gtkhsv.c:
4184         Fix problem selecting colors in triangle when Hue is 330.
4185         Fix some black dots around the HSB triangle.
4186         
4187         * gtk/gtkfilesel.c:
4188         return FALSE from the focus_in_event handler to fix focus problems.
4189
4190 2001-04-18  Havoc Pennington  <hp@redhat.com>
4191
4192         * gtk/gtkwindow.c (gtk_window_class_init): add signals and binding
4193         set, so keybindings are configurable    
4194         (gtk_window_activate_default): Change to activate the focus widget
4195         instead if there's a focus widget, to be consistent with the
4196         behavior that previously existed in key_press_event
4197
4198 2001-04-18  Havoc Pennington  <hp@redhat.com>
4199
4200         * gdk/gdkkeyuni.c: Handle numeric keypad keysyms; bug #50201
4201
4202 2001-04-18  Havoc Pennington  <hp@redhat.com>
4203
4204         Close bug #50615:
4205         
4206         * gtk/gtkstyle.c (gtk_default_draw_layout): Use text_gc to draw
4207         the layout
4208
4209         * gtk/gtktext.c: Use base/text instead of bg/fg throughout
4210
4211         * gtk/gtkentry.c: Use base/text instead of bg/fg throughout
4212
4213         * gtk/gtktextdisplay.c: Use base/text instead of bg/fg throughout
4214         
4215         * gtk/gtkstyle.c (gtk_style_init): make GTK_STATE_SELECTED default
4216         to blue for base, in addition to bg
4217         
4218 2001-04-18  Havoc Pennington  <hp@redhat.com>
4219
4220         * tests/testgtk.c (create_image): allow shrinking the image window
4221         to test that we clip to allocation.
4222
4223         * gtk/gtkimage.c (gtk_image_expose): clip to allocation,
4224         #9845
4225
4226         * gtk/gtkenums.h: move GtkWrapMode in here, #50472
4227
4228 Wed Apr 18 14:23:14 2001  Owen Taylor  <otaylor@redhat.com>
4229
4230         * gdk/x11/gdkimage-x11.c (gdk_image_new): Try changing
4231         mode on shm segments to 0600. We'll see who complains.
4232
4233         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Call
4234         _gdk_windowing_window_destroy() AFTER recursing through
4235         children.
4236
4237         * tests/Makefile.am (noinst_PROGRAMS): Build testsocket,
4238         testsocket_child on X.
4239
4240         * tests/testsocket[_child].c: Fix uses of
4241         gtk_window_get_default_accel_group().
4242
4243         [ Merge patch from Ramiro Estrugo  <ramiro@eazel.com> from gtk-1-2 ]
4244
4245         * gdk/gdkimage.c: (gdk_image_get):
4246         Deal with the possibility that XGetImage() might return NULL.
4247         Allocate the GdkImagePrivate structure only after XGetImage()
4248         succeeds in order not to dereference a NULL ximage pointer.  This
4249         prevents a core dump when XGetImage() fails - which is unlikely,
4250         but can happen due to race conditions accessing the geometries of
4251         drawables.  An x error will still be triggered, but the gdk image
4252         wrapper at least wont seg fault.
4253         
4254 2001-04-18  Havoc Pennington  <hp@redhat.com>
4255
4256         * gtk/gtkimage.c: fix to properly queue resizes when the image is
4257         set
4258
4259         * gtk/gtktextview.c (gtk_text_view_do_popup): desensitize Paste
4260         if the insertion point isn't editable
4261
4262         * demos/gtk-demo/images.c: Added a GtkImage demo
4263
4264         * demos/gtk-demo/drawingarea.c: drawing area demo
4265         
4266         * demos/gtk-demo/menus.c (create_menu): cleanups
4267
4268 Wed Apr 18 12:15:52 2001  Owen Taylor  <otaylor@redhat.com>
4269
4270         * gdk/x11/gdkwindow-x11.c gdk/x11/gdkwindow-x11.h 
4271           gdk/x11/gdkevents-x11.c: Introduce an extra child
4272         of toplevel windows that serves to hold the focus to
4273         avoid events being delivered to embedded windows.
4274
4275         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Introduce
4276         some extra variables to clean up code and reduce the
4277         number of casts.
4278
4279         * gdk/x11/gdkwindow-x11.h (struct _GdkXPositionInfo): Use
4280         guint for 1 bit bit fields, not gboolean.
4281
4282 Wed Apr 18 10:04:23 2001  Owen Taylor  <otaylor@redhat.com>
4283
4284         * gtk/gtktooltips.c (gtk_tooltips_paint_window): Return FALSE,
4285         not TRUE. (Fixes #52925)
4286
4287 Tue Apr 17 18:05:34 2001  Owen Taylor  <otaylor@redhat.com>
4288
4289         * Released 1.3.4
4290
4291         * NEWS: Updated
4292
4293         * gtk/gtktextview.c (gtk_text_view_class_init): Fix to not
4294         use GTK_TYPE_ENUM.
4295
4296 Tue Apr 17 13:47:12 2001  Owen Taylor  <otaylor@redhat.com>
4297
4298         * configure.in: Don't put -lgthread in GLIB_LIBS, GLIB_DEPLIBS
4299
4300         * gtk/gtktypeutils.h gtk/gtksignals.h: Restore proper parameter
4301         names to compatibility #defines so docs work.
4302
4303         * gtk/gtkenums.h: Remove GtkMenuFactoryType
4304
4305         * gtk/gtkwindow.c gtk/gtkdnd.c: Docs cleanups.
4306
4307         * configure.in: Don't include -lgthread in GLIB_LIBS, GLIB_DEPLIBS
4308
4309         * tests/testgtkrc: No magenta cursors, please.
4310
4311         * README.in INSTALL.in HACKING README.cvs-commits: Updated.
4312
4313         * gtk/gtkenums.h (enum): Remove left over GtkMenuFactoryType.
4314         
4315 Mon Apr 16 14:38:41 2001  Owen Taylor  <otaylor@redhat.com>
4316
4317         * gtk/gtklist.c gtk/gtklistitem.c: Remove explicit pointer
4318         grabs, since they are no longer necessary.
4319
4320         * gtk/gtkcombo.c (gtk_combo_popup_button_press): Fix #52926
4321         by signal_connect() and call gtk_button_pressed() rather
4322         than signal_connect_after().
4323
4324         * tests/testgtk.c: Restore radio menu items to combos 
4325         since they'll look OK with Raleigh, and it is easier
4326         than finishing the process of removing them that was
4327         started earlier.
4328
4329 2001-04-16  Hans Breuer  <hans@breuer.org>
4330
4331         * gdk/gdk.def :
4332         * gtk/gtk.def : added all exports required to link PyGtk 0.7.1
4333
4334         * gdk/gdkfont.h : #define GDK_TYPE gdk_font_get_type ()
4335         we are interested in the functions return value not the function address
4336         * gdk/gdkvisual.h : same for GDK_TYPE_VISUAL
4337
4338         * gtk/makefile.msc.in : reflect movement of GDK_TYPEs from gtk to gdk
4339
4340 2001-04-14  Hans Breuer  <hans@breuer.org>
4341
4342         * gdk/gdk.def :
4343         * gdk/makefile.msc : updated
4344
4345         * gdk/win32/gdkdrawable.win32 (gdk_win32_draw_rectangle) : if modus is 
4346         "fill with tile" do so with new helper function gdk_win32_draw_tiles 
4347         (the testgtk::text backgound pixmap is drawn again)
4348         Changed SetTextAlign before pango_win32_render to TA_BASELINE to reflect 
4349         Win32 Pango change
4350         * gdk/win32/gdkprivate-win32.h : prototype for gdk_win32_draw_tiles
4351
4352         * gdk/win32/gdkproperty-win32.c : first implementation of gdk_setting_get
4353         Not sure if the returned settings have the right unit, because I couldn't
4354         find any docs for the X version ...
4355
4356         * gtk/gtk.def :
4357         * gtk/makefile.msc.in : updated
4358
4359 Thu Apr 12 17:41:17 2001  Owen Taylor  <otaylor@redhat.com>
4360
4361         * gtk-2.0.m4: Fix up to refer to GTK+, not to GLib; fix some
4362         wording problems. (Compared to version from Johannes Stezenbach to
4363         check correctness.)
4364
4365 Thu Apr 12 21:04:26 2001  Tim Janik  <timj@gtk.org>
4366
4367         * gtk/gtktreeview.c (_gtk_tree_view_column_start_drag): get
4368         this to compile.
4369
4370 2001-04-12  Anders Carlsson  <andersca@codefactory.se>
4371
4372         * gtk/gtkcellrenderertextpixbuf.c (gtk_cell_renderer_text_pixbuf_class_init): It's pixbuf_pos,
4373         not pixbufpos.
4374
4375         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render): Fix small typo.
4376
4377         * gtk/gtkcellrenderer.c (gtk_cell_renderer_get_property): xpad and ypad
4378         are unsigned insts, therefore use g_value_set_uint.
4379         (gtk_cell_renderer_set_property): Likewise, use g_value_get_uint.
4380
4381 Sun Apr  8 05:36:06 2001  Jonathan Blandford  <jrb@redhat.com>
4382
4383         * gtk/gtktextview.c (gtk_text_view_class_init): fix a fixme.
4384
4385         * gtk/gtkcellrendertoggle.c: change GTK_TYPE_POINTER to
4386         GTK_TYPE_STRING.
4387
4388         * gtk/gtktreeview.c: New functions to allow initial column
4389         dragging work.
4390
4391         * gtk/gtktreeviewcolumn.c: Initial column dragging support.
4392
4393         * tests/testtreefocus.c: give dave some love.
4394
4395         * tests/testtreesort.c: Modify test to check really long samples.
4396
4397 2001-04-11  Alexander Larsson  <alexl@redhat.com>
4398
4399         * gtk-2.0.m4: Pass pkg-config options
4400         before the other args so it works even if
4401         POSIXLY_CORRECT is set.
4402
4403 Mon Apr  9 19:02:07 2001  Tim Janik  <timj@gtk.org>
4404
4405         * configure.in (GTK_MICRO_VERSION): increment version to 1.3.4 (binary
4406         0, interface 0).
4407
4408 2001-04-04  Denis Oliver Kropp  <dok@convergence.de>
4409
4410         * gtk/gtkcalendar.c (gtk_calendar_button_press):
4411         check for action_func != NULL
4412
4413 2001-04-04  Sven Neumann  <sven@gimp.org>
4414
4415         * tests/testgtk.c (test_init): corrected path to gtk.immodules
4416
4417 Wed Apr  4 09:18:18 2001  Tim Janik  <timj@gtk.org>
4418
4419         * Released Gtk+-1.3.3.
4420
4421 Wed Apr  4 07:42:23 2001  Tim Janik  <timj@gtk.org>
4422
4423         * gdk/Makefile.am (EXTRA_DIST): add makeenums.pl to EXTRA_DIST.
4424
4425 Wed Apr  4 04:13:18 2001  Tim Janik  <timj@gtk.org>
4426
4427         * gtk/stock-icons/Makefile.am: stay in builddir and read/write
4428         files to/from source dir. (if we don't stay in builddir, we
4429         can't reach make-inline-pixbuf.
4430
4431         * gdk/Makefile.am (gdkenumtypes.c): add $(srcdir) to mekeenums.pl
4432         deps.
4433
4434         * configure.in (GTK_MICRO_VERSION): up and away (1.3.3 bin/interface
4435         ages 0).
4436
4437 Tue Apr  3 15:04:45 2001  Jonathan Blandford  <jrb@redhat.com>
4438
4439         * gtk/gtktreemodelsort.h:  removed set_sort_column, as it was
4440         moved to the GtkTreeSortable interface.
4441
4442         * gtk/gtktreeselection.c (gtk_tree_selection_selected_foreach):
4443         Make more efficient (fixes #50262).
4444
4445 Tue Apr  3 13:55:37 2001  Owen Taylor  <otaylor@redhat.com>
4446
4447         * NEWS: Updated.
4448
4449         * configure.in: Remove support for uninstalled glib.
4450
4451         * gtk/gtkdnd.c (gtk_drag_highlight_expose): Return FALSE as
4452         so as not to stop emission.
4453
4454         * gtk-config-2.0.in: Exit with an error message that gtk-config-2.0
4455         is no longer supported.
4456
4457         * Makefile.am gtk/Makefile.am tests/*: Moved all tests
4458         into tests, change build order to build modules before
4459         gtk/.
4460
4461         * modules/input/Makefile.am: Move gtk-query-immodules-2.0 invocation
4462         to here.
4463
4464 Tue Apr  3 13:52:57 2001  Tim Janik  <timj@gtk.org>
4465
4466         * gtk/gtkitemfactory.[hc]: changed gtk_item_factory_dump_items()
4467         and gtk_item_factory_dump_rc() GtkPatternSpec argument to
4468         GPatternSpec. this is actually unlikely to cause breakage in
4469         third-party apps since except for gle, pretty much ever caller
4470         passes NULL here.
4471
4472         * gtk/gtkbindings.[hc]: removed gtk_pattern_*() API.
4473
4474         * *.c: use g_pattern_*() API.
4475
4476         * docs/Changes-2.0.txt: GtkPatternSpec->GPatternSpec updates.
4477
4478         * gtk/gtkstyle.c (gtk_default_draw_resize_grip): assert unhandled
4479         directions aren't passed in.
4480
4481         * gtk/gtksettings.[hc] (_gtk_settings_parse_convert): export conversion
4482         functionality to be usable from gtkstyle.c as well, give precedence
4483         for conversion to user-supplied parsers.
4484         s/_gtk_rc_property_parser_for_type/_gtk_rc_property_parser_from_type/;
4485
4486         * gtk/gtkstyle.c (_gtk_style_peek_property_value): use
4487         _gtk_settings_parse_convert() for rcporperty value conversion.
4488
4489 2001-04-03  Alexander Larsson  <alexl@redhat.com>
4490
4491         * gdk/linux-fb/gdkevents-fb.c:
4492         Add empty gdk_setting_get().
4493
4494 Tue Apr  3 05:09:07 2001  Tim Janik  <timj@gtk.org>
4495
4496         * gtk/gtkmain.c (_gtk_boolean_handled_accumulator): use more elaborate
4497         variable names.
4498         
4499         * gtk/makeenums.pl: touch this so enum files get remade.
4500
4501 Mon Apr  2 19:36:57 2001  Jonathan Blandford  <jrb@redhat.com>
4502
4503         * gtk/gtktreestore.c (gtk_tree_store_init):  Bug fix to make trees
4504         work again when not sorted.
4505
4506         * gtk/gtktreeview.c (gtk_tree_view_class_init): Add "collapse_row"
4507         and "expand_row" signal, closing bug 52578.
4508
4509         * gtk/gtktreeview.c (gtk_tree_view_expand_row): Add signal
4510         support.
4511
4512         * gtk/gtktreeview.c (gtk_tree_view_collapse_row): Add signal
4513         support.
4514
4515 Mon Apr  2 18:18:07 2001  Owen Taylor  <otaylor@redhat.com>
4516
4517         * gdk/gdkevents.h: Add GdkEventSetting event for notification
4518         of changes to system settings, gdk_setting_get() to retrieve
4519         a single system setting.
4520
4521         * gdk/x11/gdkevents-x11.c: Bridge gdk_setting_get() and GdkEventSetting
4522         to the draft XSETTINGS mechanism.
4523
4524         * gdk/x11/xsettings-{common,client}.[ch]: Sample-implementation of
4525         XSETTINGS.
4526
4527         * gtk/gtkmain.c gtk/gtksettings.[ch]: Propagate notification
4528         of GDK settings changes to the GtkSettings object.
4529
4530         * gdk/gdkevents.[ch] gdk/gtk/gtksettings.c: Hook up the
4531         double-click-timeout property to GDK.
4532
4533         * gdk/gdkcolor.[ch] gdk/gdkvisual.h gdk/gdkevent.[ch] gdk/gdkfont.[ch]:
4534         Define GDK boxed types here.
4535
4536         * gdk/Makefile.am gdk/makeenums.pl: Generate source files
4537         gdk/gdkenumtypes.[ch] for enum definitions.
4538
4539         * gtk/gtkcompat.h: Add defines for GTK_TYPE_GDK_*
4540         * gtk/gtk-boxed.defs: Comment out GDK types
4541         * gtk/gtktypeutils.h: Remove GDK types
4542         * gtk/Makefile.am: No longer scan GDK headers for enumerataions
4543
4544 Mon Apr  2 16:41:08 2001  Owen Taylor  <otaylor@redhat.com>
4545
4546         * Applied patch from Ron Steinke to add signal accumulators
4547         so that signals with the convention 'TRUE return means
4548         handled' stop emission on a TRUE return.
4549
4550         * gtk/gtkmain.[ch]: Add private accumulator 
4551         _gtk_boolean_handled_accumulator, used throughout GTK+.
4552         
4553         * gtk/gtkspinbutton.c: Add accumulator for ::output.
4554
4555         * gtk/gtktipsquery.c: Add accumulator for ::widget_selected
4556         
4557         * gtk/gtkwidget.c: Add accumulators for event signals,
4558         ::drag_motion, ::drag_drop. Use _gtk_boolean_handled_accumator
4559         for ::mnemonic-activate.
4560
4561         * gtk/gtkwindow.c: Add accumulator for ::frame_event
4562
4563 Mon Apr  2 16:24:21 2001  Owen Taylor  <otaylor@redhat.com>
4564
4565         * gtk/gtkwidget.c: Add missing include.
4566
4567 Mon Apr  2 16:56:15 2001  Jonathan Blandford  <jrb@redhat.com>
4568
4569         * gtk/gtkmarshal.list (VOID:BOXED,BOXED,BOXED,BOXED): new
4570         marshaller.
4571
4572         * gtk/gtktreemodel.c (gtk_tree_model_range_changed): change
4573         "changed" signal to "range_changed".
4574
4575         * gtk/gtktreeview.c (gtk_tree_view_set_model): fix small bug where
4576         removing a tree from one model would remove all trees from that
4577         model.
4578         * gtk/gtktreeview.c (gtk_tree_view_range_changed): use range
4579         changed signal instead.
4580
4581 Mon Apr  2 16:13:58 2001  Owen Taylor  <otaylor@redhat.com>
4582
4583         * gtk/gtkinvisible.c (gtk_invisible_style_set): Avoid
4584         chaining up to parent impl, since we have a INPUT_ONLY
4585         window.
4586
4587         * gtk/gtkentry.[ch]: Add a cursor_color property to set the
4588         foreground color for the cursor.
4589
4590 Mon Apr  2 15:06:13 2001  Owen Taylor  <otaylor@redhat.com>
4591
4592         * gtk/gtkstyle.c (_gtk_style_peek_property_value): Reference 
4593         param spec when caching property values, since we unref it
4594         later when we free the style.
4595
4596         * gtk/gtkoptionmenu.c (gtk_option_menu_get_props): Dont' free
4597         values since they are retrieved with G_VALUE_NO_COPY_CONTENTS.
4598
4599 Mon Apr  2 10:47:57 2001  Owen Taylor  <otaylor@redhat.com>
4600
4601         * gtk/gtkwidget.c (gtk_widget_class_init): Fix 
4602         G_VALUE_NO_COPY_CONTENTS instead of G_SIGNAL_TYPE_STATIC_SCOPE
4603         stupidity.
4604
4605 Mon Apr  2 00:51:11 2001  Owen Taylor  <otaylor@redhat.com>
4606
4607         [ First pass at adding style properties. Still needs some definite
4608         fine-tuning. ]
4609
4610         * gtk/gtkbutton.c: Add ::default_spacing style property.
4611          
4612         * gtk/gtkcheckbutton.[ch] gtkradiobutton.c: Add ::indicator_size,
4613         ::indicator_spacing style properties.
4614
4615         * gtk/gtkoptionmenu.c: Add ::indicator_size, ::indicator_spacing
4616         style properties.
4617
4618         * gtk/gtk{,h,v}paned.[ch]: Make handle_size a style property
4619         rather than a normal property.
4620
4621         * gtk/gtkwidget.c: Add an ::interior_focus style property to
4622         draw focus inside buttons, in the Windows/Java Metal/etc. style.
4623
4624         * gtk/gtkbutton.c gtk/gtkcheckbutton.c gtk/gtktogglenbutton.c:
4625         Honor ::interior_focus.
4626         
4627         * gtk/gtkentry.c: Don't draw focus at all when ::interior_focus is 
4628         TRUE.
4629
4630         * gtk/gtkrange.[ch] gtk/gtk{h,v}scrollbar.c gtk/gtk{h,v}scale.c:
4631         Add ::slider_width, ::trough_border, ::stepper_size,
4632         ::stepper_spacing style properties.
4633
4634         * gtk/gtkscale.[ch] Add ::slider-length style property.
4635
4636 2001-04-02 Alexander Larsson   <alexl@redhat.com>
4637
4638         * gdk/linux-fb/gdkwindow-fb.c:
4639         Add gdk_window_begin_resize_drag and gdk_window_begin_move_drag. Remove some
4640         warnings that were spewed on startup.
4641
4642         * gtk/gtkwindow-decorate.c:
4643         gtk_window_reposition -> _gtk_window_reposition
4644
4645 Sun Apr  1 21:37:22 2001  Owen Taylor  <otaylor@redhat.com>
4646
4647         * gtk/gtkwidget.[ch] gtk/gtktypeutils.c gtk/gtk-boxed.defs:
4648         Add boxed type for GtkRequistion. Use it for ::size-request.
4649
4650         * gtk/gtkstyle.[ch] gtk/gtktypeutils.c gtk/gtk-boxed.defs:
4651         Add a new GtkBorder structure useful for geometry properties
4652         for widgets. Add corresponding GTK_TYPE_BORDER.
4653         
4654         * gtk/gtkwidget.c (gtk_widget_class_install_style_property):
4655         Support automatic parser selection like
4656         gtk_settings_install_property_parser().
4657
4658         * gtk/gtksettings.c (_gtk_rc_property_select_parser): Export
4659         functionality for use by gtk_widget_class_install_style_property.
4660         Support GTK_TYPE_BORDER, GTK_TYPE_REQUISITION.
4661
4662 Sun Apr  1 20:48:59 2001  Owen Taylor  <otaylor@redhat.com>
4663
4664         * gtk/gtkentry.c (gtk_entry_class_init): Make invisible-char
4665         g_param_spec_unichar(). 
4666
4667 Sun Apr  1 23:41:37 2001  Tim Janik  <timj@gtk.org>
4668
4669         * gdk/x11/gdkwindow-x11.c (gdk_window_focus): raise window for non
4670         _NET window managers.
4671
4672         * gtk/gtkmenufactory.[hc]: cvs removed those files now.
4673
4674 Sun Apr  1 08:00:13 2001  Tim Janik  <timj@gtk.org>
4675
4676         * gtk/gtkwidget.[hc]: got rid of gtk_widget_popup(), a function that
4677         bad needs to be nuked, not just deprecated.
4678
4679         * gtk/gtktooltips.c (gtk_tooltips_draw_tips): don't use 
4680         gtk_widget_popup().
4681
4682         * gtk/*.[hc]: s/activate_mnemonic/mnemonic_activate/g;
4683         
4684         * gtk/gtkmenufactory.[hc]: removed this long-standingly deprecated
4685         widget.
4686         
4687         * docs/Changes-2.0.txt: updates.
4688         
4689 Sun Apr  1 01:02:54 2001  Jonathan Blandford  <jrb@redhat.com>
4690
4691         * gtk/gtktreestore.c (gtk_tree_store_sort_iter_changed):
4692         for (i = 0; i < 100; i ++)
4693           g_print ("I will confirm it compile before committing\n");
4694
4695 Sun Apr  1 00:52:06 2001  Jonathan Blandford  <jrb@redhat.com>
4696
4697         * gtk/gtktreestore.c: Initial work on implementing the
4698         GtkTreeSortable interface.  Basicaly a big cut'n'paste job.
4699
4700 Sun Apr  1 03:28:14 2001  Tim Janik  <timj@gtk.org>
4701
4702         * gtk/gtkwidget.c: fixed a bunch of notifications, added
4703         reference counts around emissions where the widget is used afterwards.
4704         added freeze/thaws around multiple properties being notified.
4705         (_gtk_widget_get_aux_info): cleanups.
4706         
4707         * gtk/gtksettings.c (gtk_settings_install_property): provide
4708         default parsing functions for gdkcolor, enums and flags.
4709
4710         * gtk/gtkwindow.[hc]: partially reverted patch from havoc,
4711         applied by owen.
4712         backed out gtk_window_get_location(), gtk_window_set_location(),
4713         gtk_window_get_size() and gtk_window_set_size(), these
4714         have to be sorted out wrg x/y/width/height/default_with/default_height
4715         properties.
4716         kept a flag in GtkWindowGeometryInfo to handle user
4717         resetting default sizes.
4718         cleaned up ZVT comments.
4719         bunch of assorted bug fixes, notification fixes.
4720         (_gtk_window_reposition): make this a really internal function.
4721         
4722         * gtk/testgtk.c: fixups.
4723         
4724 2001-03-31  Hans Breuer  <hans@breuer.org>
4725
4726         * config.h.win32.in : disable USE_MMX for msvc build cause
4727         the assembler doesn't fit and is out of my scope. Disable
4728         USE_GMODULE for msvc build as wel. The right way to share
4729         binaries on win32 would be to use libtiff.dll etc. To reduce
4730         installation hassles IMO it's better to include all fileformats
4731         builtin to gdk-pixbuf
4732
4733         * gdk-pixbuf/makefile.msc : new file
4734
4735         * gdk/gdk.def : updated
4736
4737         * gdk/win32/gdkevents-win32.c : don't erase the background if
4738         .no_bg is set. It improves the scrolling (e.g. of testgtk main
4739         buttons
4740         * gdk/win32/gdkgeometry-win32.c : added comment about the above
4741
4742         * gdk/win32/gdkwindow-win32.c : added three new functions like
4743         the X version. Only one is implemented, because the other two
4744         "gdk_window_begin_(resize|move)_drag" got no docs and appear to
4745         be default behaviour on win32 anyway ...
4746
4747         * gtk/gtk.def : updated
4748
4749         * gtk/makefile.msc.in : update for new files, use glib-genmarshal
4750         from where it was built and add an additional rule to automagically
4751         build gtkmarshal.[hc]
4752
4753         * gtk/gtkfilesel.c (open_new_dir) : don't increase n_entries
4754         before array access for the current entry isn't finished
4755
4756         * gtk/gtktreeitem.c (gtk_tree_item_subtree_button_click) :
4757         use g_return_val_if_fail
4758
4759         * gtk/testgtk.c (window_controls) : don't use the *wrong* size
4760         for the static array, but let the compiler calculate it. It
4761         makes me wonder if gcc isn't capable to catch bugs like this ...
4762
4763 2001-03-31  James Henstridge  <james@daa.com.au>
4764
4765         * gtk/gtkwidget.c (gtk_widget_size_adjust): fix use of magic
4766         constant "-1" in the aux info structure.
4767
4768 2001-03-30  Alexander Larsson  <alexl@redhat.com>
4769
4770         * gtk/gtkbutton.c (gtk_button_get_property):
4771         * gtk/gtklabel.c:
4772         Remove leaks.
4773         
4774         * gtk/gtkcontainer.c:
4775         * gtk/gtkhscale.c:
4776         * gtk/gtkhscrollbar.c:
4777         * gtk/gtklayout.c:
4778         * gtk/gtkmisc.c:
4779         * gtk/gtkprogress.c:
4780         * gtk/gtkprogressbar.c:
4781         * gtk/gtkrange.c:
4782         * gtk/gtktable.c:
4783         * gtk/gtkviewport.c:
4784         * gtk/gtkvscale.c:
4785         * gtk/gtkvscrollbar.c:
4786         * gtk/gtkwidget.c:
4787         Property patches, based on patches from John Margaglione and Lee Mallabone.
4788
4789 Thu Mar 29 21:20:38 2001  Mike Kestner  <mkestner@ameritech.net>
4790
4791         * gtk/gtkspinbutton.c : added value_changed signal which proxies for the
4792         adjustment. Cleaned redundant preconditions (spin != NULL). Added
4793         inline API function docs.
4794         (gtk_spin_button_new_with_range): New convenience constructor.
4795         (gtk_spin_button_set_increments): New adjustment helper.
4796         (gtk_spin_button_set_range): New adjustment helper.
4797
4798         * gtk/testgtk.c : added test of the new convenince constructor and
4799         value_changed signals.
4800
4801 Thu Mar 29 20:20:38 2001  Jonathan Blandford  <jrb@redhat.com>
4802
4803         * gtk/gtktreemodel.c (gtk_tree_row_ref_reordered_callback): Now we
4804         listen to the reorder signal.
4805
4806 Wed Mar 28 20:30:26 2001  Owen Taylor  <otaylor@redhat.com>
4807
4808         * gtk/gtkwidget.[ch] (_gtk_widget_get_aux_info): Add private function
4809         to get the aux info structure fo the widget.
4810
4811         * gtk/gtklabel.c gtk/gtkscrolledwindow.c gtk/gtkwindow.c: Use
4812         above function.
4813
4814         [ Patch from  Havoc Pennington  <hp@redhat.com> ]
4815
4816         * gdk/x11/gdkwindow-x11.c (gdk_window_get_frame_extents): function
4817         to get the size of the window manager frame, basically the same
4818         code that gdk_window_get_root_origin() had
4819         (gdk_window_get_root_origin): use gdk_window_get_frame_extents()
4820
4821         * gtk/gtkwindow.c (gtk_window_set_default_size): use
4822         gdk_window_resize() if the window is realized and resizeable
4823
4824         * gdk/x11/gdkwindow-x11.c (gdk_window_set_geometry_hints): fix
4825         typo so that setting gravity works
4826
4827         * gtk/gtkwindow.c (gtk_window_move_resize): don't ever use
4828         allocation if auto_shrink is on, even if the default size
4829         has not changed.
4830
4831         * gtk/gtkwidget.c (gtk_widget_render_icon): remove bogus
4832         g_return_if_fail
4833
4834 Thu Mar 29 16:29:12 2001  Jonathan Blandford  <jrb@redhat.com>
4835
4836         * gtk/gtkliststore.c (gtk_list_store_iter_changed): Massive
4837         reordering/sorting work.  Now pretty much works.
4838
4839         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): Lots of work to make
4840         reorder mostly work.  Still need to get the parity correct.
4841
4842         * gtk/gtktreeviewcolumn.c: Listen for "model" property changed
4843         signal, so I can listen for the sort_column_changed signal so I
4844         can change my "sort_indicator" property.  Cool.
4845
4846 Wed Mar 28 00:03:10 2001  Owen Taylor  <otaylor@redhat.com>
4847
4848         [ Patch from Havoc Pennington, hp@redhat.com ]
4849
4850         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c:
4851         Add functions gdk_window_begin_resize_drag/begin_move_drag
4852         to start resizing or moving a toplevel window. This
4853         is done either using the _NET_WM_MOVERESIZE protocol,
4854         or, if that isn't present, by emulation.
4855
4856         * gtk/gtkwindow.[ch]: Add functions gtk_begin_move/resize_drag
4857         to export the above to GTK+-land.
4858
4859         * gtk/gtkstyle.[ch]: Add ->draw_resize_grip() paint func.
4860         
4861         * gtk/gtkwindow.c gdk/gdkwindow.[ch] (gdk_window_constrain_size):
4862         Move this function into gdkwindow, since we need it
4863         when implementing fallback resizing.
4864
4865         * gdk/x11/gdkwindow-x11.c: gdk_window_set_geometry_hints.
4866         Fix typo when setting gravity.
4867
4868         * gtk/gtkstatusbar.[ch] (gtk_statusbar_set_has_resize_grip):
4869         Add an optional (but on by default) resize grip for resizing 
4870         the parent window.
4871
4872 01-03-29  Alexander Larsson  <alexl@redhat.com>
4873
4874         * gtk/gtktooltips.c (gtk_tooltips_event_handler):
4875         Don't return TRUE from the event handler, that blocks all
4876         event signals on the tooltip widget. Now you can press buttons
4877         in toolbars again.
4878
4879 Wed Mar 28 19:20:43 2001  Owen Taylor  <otaylor@redhat.com>
4880
4881         * gtk/testtext.c (create_buffer): Add missing NULL on
4882         valist.
4883
4884         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_class_init): Fix
4885         c-n-p problem with INCONSISTENT property.
4886
4887         [ Patch from Havoc Pennington  <hp@redhat.com> ]
4888
4889         * gtk/gtkentry.h (struct _GtkEntryClass): add same populate_popup
4890         hook.
4891
4892         * gtk/gtktextview.h (struct _GtkTextViewClass): add populate_popup
4893         signal as a hook for extending the default popup menu
4894
4895         * gtk/gtkimmulticontext.c (gtk_im_multicontext_append_menuitems):
4896         use radio menu items for the input method menuitems
4897
4898         * gtk/gtkimcontextsimple.c (check_hex): do better validation of 
4899         inserted unicode from Ctrl-Shift-hex input method
4900
4901         * gtk/gtktextbtree.c (_gtk_text_btree_insert): remove utf8
4902         validatation here, already done at GtkTextBuffer level.
4903
4904         * gtk/gtkwidget.c (gtk_widget_class_init): add binding set, add
4905         popup_menu run action signal and Shift+F10 and Menu keybindings.
4906
4907         * gtk/gtkentry.c: implement a default handler for popup_menu
4908
4909         * gtk/gtktextview.c: implement a default handler for popup_menu
4910
4911         * gtk/gtkmenu.c (gtk_menu_popup): select first item if popup is
4912         from a key event
4913         
4914         * gtk/gtklabel.c: remove "trailer" cruft
4915
4916 Wed Mar 28 17:27:12 2001  Jonathan Blandford  <jrb@redhat.com>
4917
4918         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): new function to
4919         handle reordering of trees.  Seems to mostly work w/ the exception
4920         of the parity flag.
4921
4922         * gtk/gtktreeview.c (gtk_tree_view_reordered): handle "reordered"
4923         signal.
4924
4925 Wed Mar 28 21:12:37 2001  Tim Janik  <timj@gtk.org>
4926
4927         * gtk/gtkwidget.h: c++ fixes.
4928
4929 Sun Mar 25 15:51:28 2001  Owen Taylor  <otaylor@redhat.com>
4930
4931         * gtk/gtksettings.c (gtk_settings_init): Fix use of uninitialized
4932         memory.
4933
4934 Tue Mar 27 22:36:07 2001  Owen Taylor  <otaylor@redhat.com>
4935
4936         * gtk/gtkwidget.h gtk/gtkrange.h: Apply patch from 
4937         Nils Barth fixing event return values. (#51041)
4938
4939         * gtk/gtkwidget.c: Fix some return values for default
4940         functions.
4941
4942         * gtk/gtk[vh]scrollbar.c gtk/gtk[vh]range.c: Fix
4943         return values for trough_keys functions.
4944
4945         * gtk/gtkwidget.h (struct _GtkWidgetClass): Fix return
4946         value for add_accelerator (shoudl have been a void
4947         return.)
4948
4949         * gtk/gtkcellrenderer.[ch]: gtkcellrenderertoggle.h:
4950         Fix return type of EVENT.
4951
4952         * gtk/gtkmarshal.list gtk/gtktexttag.c: Make EVENT
4953         signal return a boolean.
4954
4955 Tue Mar 27 22:07:44 2001  Jonathan Blandford  <jrb@redhat.com>
4956
4957         * gtk/gtkliststore.c (gtk_list_store_sort): Fix arguments to
4958         reordered signal.
4959
4960         * tests/testtreesort.c (main): fix spelling.
4961
4962 Tue Mar 27 20:55:29 2001  Jonathan Blandford  <jrb@redhat.com>
4963
4964         * gtk/gtkliststore.c: More work on implementing sortable
4965         interface.
4966
4967 Mon Mar 26 15:48:45 2001  Owen Taylor  <otaylor@redhat.com>
4968
4969         * gtk/gtkwindow.c (gtk_window_list_toplevels): Don't
4970         reference the widgets in the resulting list. (#11821)
4971         This makes this consistent with gtk_container_children.
4972
4973         * gtk/gtkwindow.c gtk/gtkwidget.c: Fix up the two
4974         uses of gtk_window_list_toplevels.
4975
4976 Mon Mar 26 15:26:17 2001  Owen Taylor  <otaylor@redhat.com>
4977
4978         * gtk/gtkimcontext.c (gtk_im_context_set_use_preedit): Add
4979         a virtual function to set whether the IM context should use 
4980         the preedit string. (#51922)
4981         
4982 Mon Mar 26 14:42:59 2001  Owen Taylor  <otaylor@redhat.com>
4983
4984         * gdk/gdkpango.h: Remove stale FIXME comment.
4985
4986 2001-03-26  Alexander Larsson  <alla@lysator.liu.se>
4987
4988         * gtk/gtkfilesel.c (gtk_file_selection_get_filename):
4989         Fixed bug that returned NULL if a filename was selected.
4990
4991 2001-03-24  Havoc Pennington  <hp@pobox.com>
4992
4993         * gtk/gtkthemes.c (gtk_theme_engine_load): improve error message
4994         to contain the word "theme"
4995
4996 2001-03-24  Havoc Pennington  <hp@pobox.com>
4997
4998         * gtk/gtkhsv.c (gtk_hsv_move): make motion around the ring much
4999         slower but finer-grained
5000         (gtk_hsv_focus): get initial focus on the ring or triangle 
5001         according to tab direction
5002
5003         * gtk/testgtk.c (main): get rid of weird sleep(1) on exit
5004
5005 2001-03-23  Havoc Pennington  <hp@pobox.com>
5006
5007         * gtk/gtkhsv.c: make this somewhat key-navigable
5008
5009         * gtk/gtkfontsel.c: mnemonics
5010
5011         * gtk/gtkgamma.c: mnemonics
5012
5013         * gtk/gtkcolorsel.c: add mnemonics to labels
5014
5015 2001-03-22  Havoc Pennington  <hp@pobox.com>
5016
5017         Applied big patch from Seth Lytle to fix event handler return
5018         values, slightly modified.
5019
5020         * gtk/gtkcalendar.c (gtk_calendar_button_press): return TRUE if
5021         handled.
5022         (gtk_calendar_key_press): return TRUE for GDK_space triggers
5023         select_day
5024
5025         * gtk/gtkclist.c (gtk_clist_button_press): return TRUE if handled
5026         (gtk_clist_button_release): return TRUE if handled
5027
5028         * gtk/gtkcolorsel.c (mouse_release):
5029         (palette_activate): 
5030         (palette_press): 
5031         (palette_new): 
5032         (mouse_press): 
5033         (get_screen_color): 
5034         fixed return type (void to gboolean), return TRUE,
5035         added GTK_SIGNAL_FUNC cast
5036
5037         * gtk/gtkcombo.c (gtk_combo_popup_button_press): fixed return type
5038         (void to gboolean), and return TRUE
5039         (gtk_combo_button_release): changed return value to TRUE after
5040         gtk_grab_add on combo->popwin
5041
5042         * gtk/gtkctree.c (gtk_ctree_button_press): return TRUE if triggers a
5043         collapse or expand
5044
5045         * gtk/gtkcurve.c (gtk_curve_graph_events): return TRUE for
5046         button/motion
5047
5048         * gtk/gtkdnd.c (gtk_drag_source_event_cb): return TRUE for button
5049         press/release and motion that trigger act
5050
5051         * gtk/gtkentry.c (gtk_entry_button_release): return TRUE
5052
5053         * gtk/gtkfontsel.c (gtk_font_selection_size_key_press): return TRUE
5054         for GDK_Return
5055         
5056         * gtk/gtklist.c (gtk_list_button_press): return TRUE mostly
5057         (gtk_list_button_release): return TRUE if selection
5058
5059         * gtk/gtklistitem.c (gtk_list_item_button_press): return TRUE on
5060         press
5061
5062         * gtk/gtkmenushell.c (gtk_menu_shell_button_press):
5063         (gtk_menu_shell_button_release): chain parent_menu_shell retval
5064
5065         * gtk/gtknotebook.c (gtk_notebook_button_press): return FALSE if
5066         nothing triggered
5067         (gtk_notebook_button_release): return TRUE if we do anything
5068
5069         * gtk/gtkspinbutton.c (gtk_spin_button_button_press): 
5070         (gtk_spin_button_button_release): return TRUE or chained retval
5071
5072         * gtk/gtktext.c (gtk_text_button_press): 
5073         (gtk_text_button_release): return TRUE
5074         (gtk_text_key_press): remove redundant retval code
5075         
5076         * gtk/gtktreeitem.c (gtk_tree_item_button_press): return TRUE if button
5077         and sensitive
5078         (gtk_tree_item_subtree_button_click): changed type to gint, and return
5079         TRUE if sensitive
5080
5081         * gtk/gtktooltips.c (gtk_tooltips_event_handler): deactivate implies 
5082         return TRUE
5083
5084 2001-03-23  Havoc Pennington  <hp@redhat.com>
5085
5086         * gtk/testgtk.c: fix warnings
5087
5088         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): fix return value
5089
5090         * gtk/gtktextview.c: fix warnings
5091
5092         * gtk/gtktext.c (find_cursor_at_line): fix warning
5093
5094         * gtk/gtkselection.c (gtk_selection_notify): fix warning 
5095
5096         * gtk/gtkitemfactory.c (gtk_item_factory_menu_pos): fix signature
5097         of this function
5098
5099         * gtk/gtkimmulticontext.c (gtk_im_multicontext_append_menuitems):
5100         fix warning
5101
5102         * gtk/gtkhandlebox.c (gtk_handle_box_style_set): fix warning
5103
5104         * gtk/gtkfontsel.c: fix warning
5105
5106         * gtk/gtkcolorsel.c: fix warnings
5107
5108 2001-03-23  Havoc Pennington  <hp@redhat.com>
5109
5110         * gtk/gtkhandlebox.c: Apply property patch from Lee Mallabone
5111
5112         * gtk/gtkbox.c: Apply property patch from Lee Mallabone
5113
5114         * gtk/gtkcheckmenuitem.c: Apply property patch from Lee Mallabone,
5115         and deprecated gtk_check_menu_item_set_show_toggle().
5116         
5117         * gtk/gtkbutton.c: Apply property patch from Lee Mallabone
5118
5119         * gtk/gtkfilesel.c: Apply property patch from Lee Mallabone
5120
5121         * gtk/gtkframe.c: Apply property patch from Lee Mallabone
5122
5123 2001-03-23  Havoc Pennington  <hp@redhat.com>
5124
5125         * gtk/gtktoolbar.c, gtk/gtkimcontext.c, gtk/gtklabel.c: fix up
5126         some docs
5127
5128 Fri Mar 23 16:13:43 2001  Jonathan Blandford  <jrb@redhat.com>
5129
5130         * gtk/gtktreeviewcolumn.h (GtkCellDataFunc): Forgot to namespace
5131         this.
5132
5133         * gtk/gtktreestore.c (gtk_tree_store_set_value): change from
5134         set_cell to set_value
5135
5136         * gtk/gtkliststore.c (gtk_list_store_set_value): change from
5137         set_cell to set_value
5138
5139 Thu Mar 22 19:27:34 2001  Jonathan Blandford  <jrb@redhat.com>
5140
5141         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
5142         fix braino.
5143         * gtk/gtktreesortable.[ch]: New interface to add cleanup sortable
5144         support.
5145
5146         * gtk/gtktreeview.c: Addition of initial sortable support.
5147
5148         * gtk/gtktreestore.c: Addition of initial sortable support.
5149
5150         * gtk/gtkliststore.c: Addition of initial sortable support.
5151
5152         * gtk/gtkmarshal.list: yet another marshaller.
5153
5154         * gtk/gtktreedatallist.[ch]: shared code between the store models
5155         for handling sorting headers.
5156
5157 2001-03-22  Havoc Pennington  <hp@redhat.com>
5158
5159         * gtk/gtkcontainer.c (gtk_container_set_focus_chain): 
5160         (gtk_container_unset_focus_chain): Add ability to override the 
5161         focus chain for a container explicitly
5162
5163 Thu Mar 22 13:01:44 2001  Tim Janik  <timj@gtk.org>
5164
5165         * gtk/gtklabel.[hc]: some cleanups, fixed mnemonic_widget handling,
5166         added PROP_MNEMONIC_WIDGET.
5167
5168         * gtk/gtkwindow.c (gtk_window_activate_mnemonic): 
5169         (gtk_window_remove_mnemonic): 
5170         (gtk_window_add_mnemonic): fixed assertions.
5171         (gtk_window_activate_mnemonic): constrain modifier checks to those
5172         permitted by gtk_accelerator_get_default_mod_mask().
5173         got rid of gtk_window_get_default_accel_group().
5174
5175         * gtk/gtkwidget.c (gtk_widget_real_activate_mnemonic): handle non
5176         activatable widgets either by focussing or a warning.
5177         added a signal accumulator to ::activate_mnemonic which stops the
5178         emission once a handler returned TRUE.
5179
5180 2001-03-22  Havoc Pennington  <hp@pobox.com>
5181
5182         * gtk/gtktoolbar.c (gtk_toolbar_insert_stock): handle mnemonics in
5183         the stock item label
5184
5185         * gtk/gtklabel.c: s/@gtk_func/gtk_func()/ in docs
5186
5187         * gtk/gtkstock.c (builtin_items): add mnemonics where missing
5188
5189         * demos/gtk-demo/*.c: Add mnemonics all over the place
5190
5191         * gtk/gtklabel.h: mark parse_uline deprecated
5192
5193 2001-03-21  Alexander Larsson  <alexl@redhat.com>
5194
5195         * gtk/gtkitemfactory.[ch]:
5196         Add support for stock and normal imagemenuitems.
5197         
5198         * gtk/testgtk.c:
5199         Add some tests for mnemonics, stock toolbars, stock
5200         and image menuitems in itemfactory and gdk_window_scroll.
5201
5202 2001-03-21  Alexander Larsson  <alexl@redhat.com>
5203
5204         * gtk/gtkbutton.[ch]:
5205         * gtk/gtkdialog.c:
5206         Renamed gtk_button_new_stock() to gtk_button_new_from_stock() and
5207         removed accel_group argument. Renamed gtk_button_new_accel() to
5208         gtk_button_new_with_mnemonic() and removed accel_group argument.
5209
5210         * gtk/gtkcheckbutton.[ch]:
5211         New function gtk_check_button_new_with_mnemonic().
5212
5213         * gtk/gtkentry.c:
5214         Override activate_mnemonic and just grab focus.
5215
5216         * gtk/gtkitemfactory.c:
5217         Don't add menu uline accel group, instead use mnemonics support.
5218
5219         * gtk/gtklabel.[ch]:
5220         New support for mnemonics.
5221
5222         * gtk/gtkmarshal.list:
5223         Needed BOOLEAN:BOOLEAN for activate_mnemonic.
5224
5225         * gtk/gtkmenu.[c]:
5226         * gtkmenushell.c:
5227         Use mnemonics instead of accel groups for uline
5228         support in menu items.
5229         Removed gtk_menu_get_uline_accel_group() and
5230         gtk_menu_ensure_uline_accel_group().
5231
5232         * gtk/gtkmenuitem.c:
5233         Override activate_mnemonic to handle switching between
5234         menu items if there are collisions.
5235         
5236         * gtk/gtknotebook.c:
5237         Connect to activate_mnemonic on the tab_label, so that
5238         activating it switches to that notebook page.
5239
5240         * gtk/gtkwidget.[ch]:
5241         Add activate_mnemonic signal. New function
5242         gtk_widget_activate_mnemonic() to emit it.
5243         Default implementation does activate/grab_focus.
5244
5245         * gtk/gtkwindow.[ch]:
5246         Add support for mnemonics in windows.
5247         New functions:
5248         gtk_window_add_mnemonic, gtk_window_remove_mnemonic,
5249         gtk_window_activate_mnemonic, gtk_window_set_mnemonic_modifier
5250
5251         * gtk/testgtk.c:
5252         Update to function name changes.
5253         
5254 2001-03-21  Alexander Larsson  <alexl@redhat.com>
5255
5256         * gtk/gtkimagemenuitem.[c]:
5257         Add gtk_image_menu_item_new_from_stock()
5258
5259 Tue Mar 20 15:00:43 2001  Jonathan Blandford  <jrb@redhat.com>
5260
5261         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
5262         Fix buglet in meeting.
5263
5264 2001-03-19  Havoc Pennington  <hp@redhat.com>
5265
5266         * gtk/gtkiconfactory.c: Make GtkIconSource an opaque datatype, and
5267         add a bunch of accessor functions. This is because we have
5268         reasonable expectations of extending what fields it contains in
5269         the future.
5270
5271         * gtk/gtkstyle.c (gtk_default_render_icon): adapt to icon source
5272         changes
5273
5274         * gtk/gtkrc.c (gtk_rc_parse_icon_source): fix to use new
5275         GtkIconSource   
5276
5277 Mon Mar 19 15:53:36 2001  Owen Taylor  <otaylor@redhat.com>
5278
5279         * gtk/gtkitemfactory.c gtk/testgtk.c: Handle quoting of / with \; properly
5280         handle __ in paths, quote " and \n in gtk_item_factory_dump_items().
5281
5282         * gtk/gtkadjustment.[ch] gtk/gtkclist.c gtk/gtkhruler.c gtk/gtklayout.c 
5283           gtk/gtklist.c gtk/gtkprogress.[ch] gtk/gtkprogressbar.[ch] gtk/gtkrange.[ch]
5284           gtk/gtkruler.[ch] gtk/gtkscale.c gtk/gtkscrolledwindow.c gtk/gtkspinbutton.[ch]
5285           gtk/gtktext.c gtk/gtktextview.c gtk/gtkvruler.c gtk/testgtk.c:
5286         Change float to double everywhere with the exception of 0<->1.0 alignment
5287         and GtkCurve.
5288
5289 2001-03-19  Tor Lillqvist  <tml@iki.fi>
5290
5291         * gdk/win32/gdkdrawable-win32.c
5292         * gdk/win32/gdkimage-win32.c: Use correct casts in debugging
5293         output.
5294
5295         * demos/testpixbuf-drawable.c: If GDK_WINDOWING_WIN32, include
5296         gdkwin32.h.
5297
5298 2001-03-18  Tor Lillqvist  <tml@iki.fi>
5299
5300         * gdk/win32/gdkevents-win32.c (print_window_state): New function.
5301         print_event_state, print_event): Use preprocessor macro to make
5302         code more compact. Print also GDK_WINDOW_STATE events.
5303         (synthesize_crossing_events): Remove the old #ifdeffed-out code.
5304         
5305         * gtk/gtk.def
5306         * gtk/makefile.mingw.in: Update.
5307
5308         * gtk/gtkmain.h: Check for G_PLATFORM_WIN32, not only G_OS_WIN32,
5309         to catch also Cygwin.
5310
5311 Sun Mar 18 01:15:30 2001  Tim Janik  <timj@gtk.org>
5312
5313         * gtk/gtkspinbutton.[hc]: added rc-style argument
5314         GtkSpinButton::shadow_type.
5315         removed spin_button->shadow_type, gtk_spin_button_set_shadow_type()
5316         and ARG_SHADOW_TYPE as it doesn' make much sense to try to override
5317         rc-style settings.
5318
5319         * gtk/gtkfixed.c: removed gtk_fixed_paint() (was unused).
5320
5321         * gtk/gtkwidget.c: quark cleanups.
5322
5323         * gtk/gtkrc.[hc]: added gtk_rc_scanner_new() to create an rc-file
5324         scanner with appropriate configuration, renamed GtkRcStyleClass.clone
5325         to create_rc_style() (we don't do cloning in standard OO sense).
5326         added per rc style properties.
5327         
5328         * gtk/gtkstyle.[hc]: added code to retrive pspec conformant rc-style
5329         property values and for caching those. some cleanups.
5330         
5331         * gtk/Makefile.am: -DG_DISABLE_CONST_RETURNS.
5332         
5333         * gtk/gtksettings.[hc]: new file for global rc-file properties
5334         (at least currently, should get extended to support X properties
5335         and other communication mechanisms).
5336         
5337         * gtk/gtkwidget.[hc]: added style property support:
5338         (gtk_widget_class_install_style_property_parser): install style
5339         property pspec with parser function for rc-file values other
5340         than LONG, DOUBLE or STRING.
5341         (gtk_widget_class_install_style_property): same as above without
5342         parser (parsers are going to be needed quite infrequently).
5343         (gtk_widget_style_get_property): retrive style property value.
5344         (gtk_widget_style_get_valist): same as above with varargs support,
5345         has NOCOPY semantics.
5346         (gtk_widget_style_get): wrapper around gtk_widget_style_get_valist().
5347
5348 Fri Mar 16 18:24:53 2001  Jonathan Blandford  <jrb@redhat.com>
5349
5350         * demos/gtk-demo/main.c (row_activated_cb): modified to use
5351         "row_activated" signal.
5352
5353         * gtk/gtktreeview.c (gtk_tree_view_row_activated): oh, the
5354         stupidity.  Lets actually pass in the row with this signal...
5355
5356 Fri Mar 16 18:01:17 2001  Jonathan Blandford  <jrb@redhat.com>
5357
5358         * gtk/gtktreeviewcolumn.[ch]: s/GTK_TREE_COLUMN/GTK_TREE_VIEW_COLUMN
5359
5360         * gtk/gtktreeview.c (gtk_tree_view_row_activated): New signal.
5361
5362         * gtk/gtktreeview.c (gtk_tree_view_destroy): moved pretty much
5363         everything into the ::destroy function, and freed a lot more.
5364
5365 2001-03-16  Havoc Pennington  <hp@redhat.com>
5366
5367         * gtk/gtkwidget.h (struct _GtkWidgetAuxInfo): change to use gint
5368         instead of gint16, to avoid overflow issues, since sizes > 16-bit
5369         are now allowed.
5370
5371 2001-03-16  Havoc Pennington  <hp@redhat.com>
5372
5373         * Applied patch from Nils Barth (bug # 51041) to 
5374         replace "gint" with "gboolean" and 0/1 with TRUE/FALSE
5375         in various places.
5376
5377 2001-03-15  Havoc Pennington  <hp@redhat.com>
5378         
5379         * gtk/gtktextbuffer.c (gtk_text_buffer_create_tag): add varargs 
5380         for properties to set on the tag.
5381
5382         * gtk/testtext.c: fixups to reflect create_tag change
5383         
5384         * gtk/gtktexttag.c (gtk_text_tag_set_property):
5385         background/foreground stipple are objects, not boxed.
5386
5387         * demos/gtk-demo/textview.c: intellihancing
5388
5389 Fri Mar 16 11:38:42 2001  Jonathan Blandford  <jrb@redhat.com>
5390
5391         * gtk/gtktreeview.c (gtk_tree_view_set_model): Fixed some
5392         braindeadness spotted by Jamie Strachan <frostfreek@yahoo.com>.
5393
5394 2001-03-16  Alexander Larsson  <alexl@redhat.com>
5395
5396         * gdk/x11/gdkgeometry-x11.c (_gdk_window_process_expose):
5397         Fix sign error with queued region translations.
5398
5399 2001-03-15  HideToshi Tajima  <tajima@happy>
5400
5401         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_set_cursor_location): 
5402         * gtk/gtkimmulticontext.c (gtk_im_multicontext_set_cursor_location):
5403         * gtk/gtkentry.c (update_im_cursor_location): 
5404         * gtk/gtkimcontext.c (gtk_im_context_set_cursor_location):
5405         * gtk/gtkimcontext.h (struct _GtkIMContextClass): rename
5406         set_cursor_pos to set_cursor_location in GtkInputContext class
5407
5408 Thu Mar 15 18:22:44 2001  Jonathan Blandford  <jrb@redhat.com>
5409
5410         * gtk/gtkcellrenderer.h: Changed prototype to allow for getting
5411         the location of the cell relative to its area.
5412         * gtk/gtkcell*: modified for above change
5413         * gtk/gtktreeview.c: modified for above change.
5414
5415 Wed Mar 14 13:58:32 2001  Jonathan Blandford  <jrb@redhat.com>
5416
5417         * gtk/gtktreeview.c (gtk_tree_view_set_model): Ref the model.
5418          (gtk_tree_view_finalize): actually unref the model.  Thanks to
5419         Jamie Strachan <frostfreek@yahoo.com> for noticing this error.
5420
5421 2001-03-14  Havoc Pennington  <hp@redhat.com>
5422
5423         * gtk/gtkdata.h, gtk/gtkdata.c: Delete.
5424         
5425         * gtk/gtk.h: remove gtkdata.h
5426
5427         * gtk/Makefile.am: remove gtkdata
5428         
5429         * gtk/gtktext.c (gtk_text_set_adjustments): connect to "destroy"
5430         not "disconnect" on the adjustments.
5431         
5432         * gtk/gtktooltips.h, gtk/gtktooltips.c: derive from GtkObject not
5433         GtkData
5434
5435         * gtk/gtkadjustment.h, gtk/gtkadjustment.c: derive from GtkObject
5436         not GtkData
5437
5438         * configure.in: handle case where X render exists, but Pango lacks
5439         Xft support.
5440
5441 2001-03-15 Alexander Larsson  <alexl@redhat.com>
5442
5443         * gtk/gtktoolbar.[ch]:
5444         New functions gtk_toolbar_set_icon_size and gtk_toolbar_insert_stock
5445         to add stock items to toolbars.
5446
5447         * gtk/Makefile.am:
5448         Remove ../gdk/gdkim.h from gdk_headers.
5449
5450 2001-03-15  Sven Neumann  <sven@gimp.org>
5451
5452         * gdk/gdkim.h: removed
5453         
5454         * gdk/gdkprivate.h
5455         * gdk/x11/gdkim-x11.c: do not include gdkim.h 
5456
5457 2001-03-14  HideToshi Tajima  <tajima@happy.sunsoft.eng.sun.com>
5458
5459         * gtk/gtkimmulticontext.c (gtk_im_multicontext_set_cursor_pos):
5460         * gtk/gtkimcontext.c (gtk_im_context_set_cursor_pos):
5461         * gtk/gtkimcontext.h (struct _GtkIMContextClass): add
5462         set_cursor_pos() virtual method
5463
5464         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_class_init):
5465         (gtk_im_context_xim_set_cursor_pos): add implementation for
5466         set_cursor_pos() method
5467
5468         * gtk/gtkentry.c (recompute_idle_func): set current cursor
5469         position to input methods
5470
5471 Mon Mar 12 21:02:08 2001  Jonathan Blandford  <jrb@redhat.com>
5472
5473         * gtk/gtktreeview.c (gtk_tree_view_header_focus): Fix up focus
5474         code a lot.
5475
5476         * gtk/gtktreedatalist.c (_gtk_tree_data_list_free): use
5477         g_mem_chunk.
5478         (_gtk_tree_data_list_alloc): use g_mem_chunk.
5479         (_gtk_tree_data_list_node_to_value): Fix to switch on
5480         G_TYPE_FUNDAMENTAL.
5481         (_gtk_tree_data_list_value_to_node): Fix to switch on
5482         G_TYPE_FUNDAMENTAL.
5483         (_gtk_tree_data_list_node_copy): Fix to switch on
5484         G_TYPE_FUNDAMENTAL.
5485
5486 2001-03-12  Havoc Pennington  <hp@redhat.com>
5487
5488         * gtk/gtkwindow.c (gtk_window_class_init): Patch from John Margaglione 
5489         to convert to new property API. Also, change default_width and
5490         default_height get_property to return 0 as the flag value for
5491         "unset"; -1 is not a valid value for these fields.
5492
5493 2001-03-12  Havoc Pennington  <hp@redhat.com>
5494
5495         * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: Switch to using an
5496         enum with registration for icon sizes, instead of strings.
5497
5498         * gtkimage.h, gtkimage.c, gtkstyle.h, gtkstyle.c, gtkwidget.h, 
5499         gtkwidget.c: Fix to reflect GtkIconSize
5500         
5501 2001-03-12  Alexander Larsson  <alexl@redhat.com>
5502
5503         Make GtkFB compile and link.
5504         
5505         * gdk/linux-fb/gdkdrawable-fb2.c:
5506         window->mapped to GDK_WINDOW_IS_MAPPED(). 
5507         
5508         * gdk/linux-fb/gdkwindow-fb.c:
5509         window->mapped to GDK_WINDOW_IS_MAPPED(). 
5510         Added gdk_window_shape_combine_region.
5511         Added assorted placeholders for unimplemented new GdkWindow API calls.
5512
5513 2001-03-12  Alexander Larsson  <alexl@redhat.com>
5514
5515         * gtk/gtkfilesel.c:
5516         Add more test when converting filenames from/to utf-8.
5517         Don't allow entering text in the filename entry which isn't allowed in
5518         a filename. Just beep instead.
5519
5520 2001-03-12  Alexander Larsson  <alexl@redhat.com>
5521
5522         * gtk/gtkclist.c:
5523         Scroll using gdk_window_scroll(). Don't wait for exposes.
5524         Move the column headers in an order that makes them flash less.
5525
5526 2001-03-10  Hans Breuer  <hans@breuer.org>
5527
5528         * gdk/gdk.def : updated
5529
5530         * gdk/win32/gdkgc-win32.c : pixmaps are visible again, due
5531         to offseting the clip_mask at the right place
5532
5533         * gdk/win32/gdkwindow-win32.c : don't create background brushes
5534         for all the gdkClasses, especially not for the input_only case.
5535         Otherwise flickering wont be avoidable, because we don't get
5536         WM_ERASEBKGND message for these windows.
5537
5538         * gdk/win32/gdkevents-win32.c : initialize event->expose.region
5539         and fixed massive redraw problems apparently triggered by Alexanders 
5540         recent change. Not fully understood the GDK_EXPOSE / WM_PAINT handling
5541         but it seems to work quite well :-)
5542
5543         * gdk/win32/gdkprivate-win32.h : added _gdk_window_process_expose
5544         prototype
5545
5546 Sat Mar 10 12:15:31 2001  Jonathan Blandford  <jrb@redhat.com>
5547
5548         * gtk/gtktreestore.c (gtk_tree_store_set_cell): Fix a stupid typo.
5549         (gtk_list_store_set_cell): Fix a stupid typo.
5550
5551 Fri Mar  9 20:36:21 2001  Jonathan Blandford  <jrb@redhat.com>
5552
5553         * gtk/gtktreeselection.c (gtk_tree_selection_select_all): Make
5554         select_all not work if you're in SINGLE mode (it doesn't make that
5555         much sense, anyway.)
5556
5557         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_to_value):
5558         handle types more sanely.
5559         (_gtk_tree_data_list_value_to_node): handle types more sanely.
5560         (_gtk_tree_data_list_node_copy): handle types more sanely.
5561
5562         * gtk/gtkliststore.c (gtk_list_store_set_cell): fix to work with
5563         GValue better. Converts the type as well.
5564
5565         * gtk/gtktreestore.c (gtk_tree_store_set_cell): fix to work with
5566         GValue better. Converts the type as well.
5567
5568 Wed Mar  7 20:47:41 2001  Owen Taylor  <otaylor@redhat.com>
5569
5570         * gtk/gtktext.c gtk/gtkoldeditable.[ch] gdk/gdk.[ch]
5571         gdk/Makefile.am gdk/x11/Makefile.am gdk/x11/gdkevents-x11.c 
5572         gdk/x11/gdkglobals-x11.c gdk/x11/gdkprivate-x11.c
5573         gdk/x11/gdkx.h gdk/x11/gdkim-x11.c: Remove old XIM code.
5574
5575         * gdk/win32/gdkim-win32.c gdk/linux-fb/gdkim-fb.c: Remove
5576         gdk_im/gdk_ic.
5577
5578 2001-03-09  Hans Breuer  <hans@breuer.org>
5579
5580         * gdk/gdk.def : updated
5581
5582         * gdk/win32/gdkevents-win32.c : don't ask input_only windows
5583         for their palette
5584
5585         * gdk/win32/gdkgeometry-win32.c : reflect GdkWindowObject::mapped
5586         removing
5587
5588         * gdk/win32/gdkwindow-win32.c : reflect GdkWindowObject::mapped
5589         removing and implemented Havoc's GdkWindow state functions; 
5590         stick/unstick only as no-op, cause I don't know how to emulate 
5591         on win32 ...
5592
5593         * gtk/gtk.def : updated
5594
5595         * gtk/gtkbox.c (gtk_box_get_spacing) : use g_return_val_if_fail ()
5596
5597         * gtk/gtktypeutils.c : #include <string.h>
5598
5599         * gtk/gtkwindow.h : declare gtk_window_set_decorated ()
5600
5601 Fri Mar  9 09:31:55 2001  Tim Janik  <timj@gtk.org>
5602
5603         * gtk/gtkwidget.c (gtk_widget_class_init): fixed signals with
5604         GDK_TYPE_DRAG_CONTEXT, it needs to be marshaled as an object,
5605         not a boxed.
5606
5607 2001-03-09  Alexander Larsson  <alexl@redhat.com>
5608
5609         * docs/Changes-2.0.txt:
5610         Document expose event->region change and that gtk_widget_event
5611         doesn't allow passing expose events.
5612
5613         * gdk/gdkevents.h:
5614         Add region to expose event.
5615         
5616         * gdk/gdkevents.c:
5617         Handle event->region in gdk_event_copy() and gdk_event_free().
5618
5619         * gdk/gdkwindow.c (gdk_window_process_updates_internal):
5620         Generate expose_event->region when creating expose events.
5621
5622         * gdk/x11/gdkevents-x11.c:
5623         Generate expose events with regions when translating X events.
5624
5625         * gtk/gtkcontainer.[ch]:
5626         Default expose handler that propagates expose events to NO_WINDOW
5627         children. New function gtk_container_propagate_expose()
5628
5629         * gtk/gtkwidget.[ch]:
5630         Moved gtk_widget_event implementation to gtk_widget_event_internal.
5631         gtk_widget_event calls gtk_widget_event_internal but doesn't allow
5632         expose events. New function gtk_widget_send_expose() to send expose
5633         events. New function gtk_widget_region_intersect() to calculate
5634         window/region intersections.
5635         
5636         * gtk/gtkmain.c (gtk_main_do_event):
5637         Use gdk_window_begin_paint_region() instead of gdk_window_begin_paint_rect().
5638         Use gtk_widget_send_expose() to send expose events.
5639         
5640         * gtk/gtkbin.c:
5641         * gtk/gtkbox.c:
5642         * gtk/gtkfixed.c:
5643         * gtk/gtkimagemenuitem.c:
5644         * gtk/gtklist.c:
5645         * gtk/gtkpacker.c:
5646         * gtk/gtktable.c:
5647         * gtk/gtktree.c:
5648         Remove expose handler, using the default container implementation
5649         instead.
5650         
5651         * gtk/gtkbutton.c:
5652         * gtk/gtkcheckbutton.c:
5653         * gtk/gtkeventbox.c:
5654         * gtk/gtkfixed.c:
5655         * gtk/gtkhandlebox.c:
5656         * gtk/gtklayout.c:
5657         * gtk/gtklistitem.c:
5658         * gtk/gtkmenu.c:
5659         * gtk/gtkmenubar.c:
5660         * gtk/gtkmenuitem.c:
5661         * gtk/gtknotebook.c:
5662         * gtk/gtkoptionmenu.c:
5663         * gtk/gtkpaned.c:
5664         * gtk/gtkscrolledwindow.c:
5665         * gtk/gtktogglebutton.c:
5666         * gtk/gtktoolbar.c:
5667         * gtk/gtktreeitem.c:
5668         * gtk/gtkviewport.c:
5669         Chain expose handler to parent class handler. Use
5670         gtk_container_propagate_expose() to propagate exposes.
5671
5672         * gtk/gtkclist.c (check_exposures):
5673         * gtk/gtktext.c (process_exposes):
5674         Use gtk_widget_send_expose instead of gtk_widget_event.
5675
5676 Thu Mar  8 19:40:28 2001  Jonathan Blandford  <jrb@redhat.com>
5677
5678         * gtk/gtktreeview.c (gtk_tree_view_destroy): Add destroy function.
5679
5680 Thu Mar  8 19:18:27 2001  Jonathan Blandford  <jrb@redhat.com>
5681
5682         * gtk/gtktreeview.c (gtk_tree_view_unref_tree_helper): Actually
5683         unref the nodes.   Fixes bug #50058.
5684
5685         * gtk/gtktreemodel.c (gtk_tree_model_ref_node): change
5686         "::ref_iter" to "::ref_node".
5687         (gtk_tree_model_unref_node): change "::unref_iter" to
5688         "::unref_node". Fixes bug #50064.
5689
5690 Thu Mar  8 17:40:09 2001  Jonathan Blandford  <jrb@redhat.com>
5691
5692         * gtk/gtktreeview.c (gtk_tree_view_create_row_drag_icon): add
5693         support for invisible cells.
5694          (gtk_tree_view_bin_expose): ditto
5695
5696 Thu Mar  8 16:36:00 2001  Jonathan Blandford  <jrb@redhat.com>
5697
5698         * gtk/gtktreemodel.c (gtk_tree_model_get_type): add prerequesite
5699         on gobjects.
5700
5701         * tests/testtreefocus.c (main): New test file.
5702
5703         * tests/testtreeview.c: update to latest glib changes.
5704
5705         * tests/testtreecolumns.c: update to latest glib changes.
5706
5707 Thu Mar  8 18:13:20 2001  Tim Janik  <timj@gtk.org>
5708
5709         * gtk/testgtk.c: re-enabled event watcher emission hooks.
5710
5711 Thu Mar  8 16:51:21 2001  Tim Janik  <timj@gtk.org>
5712
5713         * *.c: added accumulator data argument to g_signal_newc()
5714         functions.
5715
5716         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_set_model): 
5717         * gtk/gtktreeview.c (gtk_tree_view_setup_model): 
5718         * gtk/treestoretest.c (make_window):
5719         s/g_signal_connect/g_signal_connectc/.
5720
5721         * gtk/gtktextbuffer.c: completed signal arg fixups,
5722         they also needed G_SIGNAL_TYPE_STATIC_SCOPE flag.
5723
5724 Thu Mar  8 00:02:30 2001  Owen Taylor  <otaylor@redhat.com>
5725
5726         * gtk/gtkwidget.[ch] (gtk_widget_get_name): Make
5727         G_CONST_RETURN.
5728
5729         * gtk/gtkwidget.[ch] gtk/gtkprivate.h: Add a 
5730         ::hierarchy-changed signal when a widget changes
5731         from anchored to unanchored or vice versa.
5732         (anchored means 
5733          gtk_widget_get_ancestor (widget, GTK_TYPE_WINDOW) != NULL.)
5734         Use a private flag to keep track of this efficiently.
5735
5736 2001-03-07  Havoc Pennington  <hp@redhat.com>
5737
5738         * gtk/testgtk.c (create_spins): uglify so that size request gets
5739         tested.
5740
5741         * gtk/gtkspinbutton.c (gtk_spin_button_size_request): Base size
5742         request on values for upper/lower, completes #6152
5743
5744 Wed Mar  7 20:07:22 2001  Owen Taylor  <otaylor@redhat.com>
5745
5746         * Makefile.am: Remove gtk-config-2.0 again.
5747         (Grrrr, pkg-config. And stops make loops.)
5748
5749 Thu Mar  8 00:18:29 2001  Tim Janik  <timj@gtk.org>
5750
5751         * gtk/gtksignal.[hc]: removed old emission hook API.
5752         
5753         * docs/Changes-2.0.txt: fixed sections.
5754         
5755         * gtk/gtktextbuffer.c: signal arg fixups.
5756
5757 2001-03-07  Havoc Pennington  <hp@redhat.com>
5758
5759         * gtk/gtktextview.c (invalidated_handler): use PRIORITY_VALIDATE
5760
5761         * gtk/gtktextview.h (GTK_TEXT_VIEW_PRIORITY_VALIDATE): add this
5762         here, bug #50368; changed to be GDK_PRIORITY_REDRAW + 5, instead
5763         of GDK_PRIORITY_REDRAW + 1, so you can insert stuff in between the
5764         validation and the redraw which is higher priority than the
5765         validation.
5766
5767 2001-03-07  Havoc Pennington  <hp@redhat.com>
5768
5769         * gtk/gtkentry.c (gtk_entry_get_property): remove trailer
5770         (gtk_entry_set_property): remove trailer
5771
5772         * gtk/gtkentry.c (gtk_entry_set_width_chars): 
5773         (gtk_entry_get_width_chars): new functions, to set size request to 
5774         a given number of characters
5775
5776         * gtk/testgtk.c (create_dialog): beef up the dialog test slightly
5777
5778         * gtk/gtkdialog.c (gtk_dialog_set_has_separator): new function
5779         (gtk_dialog_get_has_separator): new function
5780         (run_delete_handler): fix to not emit "response" signal
5781         because we already did in the delete event handler installed
5782         at dialog creation time.
5783         
5784         * gtk/gtkdialog.h: add a has_separator property,
5785         add GTK_DIALOG_NO_SEPARATOR flag
5786
5787 2001-03-07  Havoc Pennington  <hp@redhat.com>
5788
5789         * gtk/gtkwindow.c (gtk_window_set_decorated): new function, turns
5790         off decorations for a window.
5791
5792         * demos/gtk-demo/button_box.c (create_bbox): adapt to button box
5793         changes
5794
5795         * gtk/gtklabel.c (gtk_label_get_layout_offsets): new function 
5796         to get location of PangoLayout inside the label, closes #51198
5797
5798         * gtk/testgtk.c (create_bbox): fix up button box usage
5799
5800         * gtk/testcalendar.c (create_calendar): fix up button box usage
5801
5802         * gtk/gtkfilesel.c (gtk_file_selection_init): fixup buttonbox usage
5803
5804         * gtk/gtkdialog.c (gtk_dialog_init): fixup buttonbox usage
5805
5806         * gtk/gtkhbbox.h: deprecations
5807
5808         * gtk/gtkvbbox.h: deprecations
5809
5810         * gtk/gtkbox.c (gtk_box_get_spacing): new function, used to
5811         emulate deprecated gtk_button_box_get_spacing
5812
5813         * gtk/gtkbbox.h: deprecate some useless functions, remove entirely 
5814         the "set global default" functions
5815         (struct _GtkButtonBox): remove "spacing" field, use the one from 
5816         GtkBox base class
5817
5818         * gtk/gtkbbox.c (_gtk_button_box_child_requisition): rename with uscore
5819
5820         * gtk/gtkiconfactory.c (gtk_icon_set_render_icon): If we fail to
5821         render the icon, return the missing image icon.
5822
5823         * gtk/gtkimage.c (gtk_image_set_from_file): fall back to missing
5824         image icon if the load fails.   
5825
5826         * gtk/gtkstock.h (GTK_STOCK_MISSING_IMAGE): Add stock icon for use
5827         when no image is found; should be the Netscape "missing image"
5828         icon eventually but for now is a random image
5829
5830         * gtk/gtkwindow.c (gtk_window_set_role): new function, sets the 
5831         role for the session manager
5832
5833         * gtk/testgtk.c (dnd_drop): remove use of GTK_WINDOW_DIALOG
5834
5835         * gtk/gtkcompat.h (GTK_WINDOW_DIALOG): compat #define
5836         GTK_WINDOW_DIALOG GTK_WINDOW_TOPLEVEL
5837
5838         * gtk/gtkenums.h (enum GtkWindowType): remove GTK_WINDOW_DIALOG
5839
5840 Wed Mar  7 13:24:57 2001  Tim Janik  <timj@gtk.org>
5841
5842         * gtk/*.c: marshaller fixes.
5843         
5844         * gtk/gtkmarshal.list: extreme cleanup.
5845
5846         * gtk/gtktreeview.c (gtk_tree_view_class_init): disable interface
5847         param spec for now.
5848
5849         * gtk/gtktexttag.c (gtk_text_tag_set_property): use g_value_get_boxed()
5850         where appliable.
5851
5852         * gtk/gtktypeutils.[hc]: updates to GLib API changes.
5853         special cased autogenerated boxed types from gtktypebuiltins_ids.c
5854         which are not reference counted:
5855         GtkSelectionData, GdkEvent, GdkColor, GtkTextIter, PangoTabArray,
5856         PangoFontDescription, GtkTreeIter and GtkTreePath.
5857
5858 Thu Mar  1 03:58:56 2001  Tim Janik  <timj@gtk.org>
5859
5860         * gtk/gtktreeselection.h: 
5861         * gtk/gtktreemodel.c:
5862         * gtk/gtktreedatalist.[hc]: fixed includes. no gobject/*
5863         file should be included directly, and gobject/gmarshal.h
5864         as well as gtk/gtkmarshal.h even can't be included directly.
5865
5866         * Makefile.am: grr, install gtk-config-2.0.
5867
5868         * gtk/testgtk.c:
5869         * gtk/simple.c:
5870         * gtk/gtkmenu.c:
5871         * gtk/gtkitemfactory.c: use g_object_connect() instead of
5872         passing "*signal*::*" args to gtk_widget_set().
5873         
5874         * gtk/gtktypeutils.[hc]: got rid of GTK_TYPE_SIGNAL.
5875         
5876         * gtk/*.c: removed trailer arg from property setters and getters.
5877         macro fixups.
5878
5879 2001-03-07  Alexander Larsson  <alexl@redhat.com>
5880
5881         * gtk/gtklabel.c (set_markup): Removed warning
5882
5883 Tue Mar  6 19:59:12 2001  Jonathan Blandford  <jrb@redhat.com>
5884
5885         * gtk/gtkcellrenderer.h (struct _GtkCellRenderer): Add visible
5886         field to allow you to hide cell renderers.
5887
5888         * gtk/gtkcellrenderer.c: Add support for invisible cells.
5889
5890         * gtk/gtktreeview.c: Add support for invisible cells.
5891
5892 Tue Mar  6 17:25:07 2001  Jonathan Blandford  <jrb@redhat.com>
5893
5894         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_button_clicked):
5895         Add "clicked" signal back to columns.
5896
5897         * ChangeLog: remove conflict markers.
5898
5899 Tue Mar  6 10:45:45 2001  Owen Taylor  <otaylor@redhat.com>
5900
5901         * gtk/gtkbutton.c: Add animation of activation by, on 
5902         activate, pressing the button, and adding a timeout that 
5903         releases the button after 250ms or on key release and
5904         emits ::clicked. (#51501)
5905
5906         * gtk/gtkdialog.c: Bit of a hack - for buttons in the
5907         action area, we connect to ::clicked instead of ::activate
5908         so the dialog stays up through the animation.
5909
5910 Mon Mar  5 16:38:15 2001  Owen Taylor  <otaylor@redhat.com>
5911
5912         * gtk/gtkmenushell.c (gtk_menu_shell_enter_notify): Only
5913         check the ignore_enter flag for the menu shell that
5914         the item is actually a child of, not for attached
5915         submenus. (#51536)
5916
5917 Tue Feb 27 02:16:14 2001  Owen Taylor  <otaylor@redhat.com>
5918
5919         * gtk/gtkmain.c (gtk_propagate_event): Only do special
5920         special key-press grab handling for widgets within
5921         GtkWindows. Otherwise, fall through to normal case.
5922
5923         This prevents key events being sent twice to GtkInvisible
5924         widgets, which can cause all sorts of mischief.
5925
5926 Fri Feb  2 13:20:12 2001  Owen Taylor  <otaylor@redhat.com>
5927
5928         * gtk/gtkmain.c (gtk_propagate_event): When a grab
5929         widget is in effect, give the grab widget a first
5930         crack at KEY_PRESS/RELEASE events. (#424)
5931
5932 2001-03-06  James Henstridge  <james@daa.com.au>
5933
5934         * gtk/gtkwidget.c (gtk_widget_class_init): set the class closure
5935         offset for the window_state_event to point at window_state_event
5936         rather than no_expose_event.
5937
5938 Mon Mar  5 19:10:15 2001  Jonathan Blandford  <jrb@redhat.com>
5939
5940         * gtk/gtkimmodule.h: fix busted /* comment */
5941
5942 Mon Mar  5 15:07:05 2001  Jonathan Blandford  <jrb@redhat.com>
5943
5944         * gtk/gtktreeview.c: Apply patch from John Margaglione to add
5945         object properties.
5946
5947 Mon Mar  5 14:55:19 2001  Jonathan Blandford  <jrb@redhat.com>
5948
5949         * gtk/gtkcellrenderertoggle.c: Apply patch from Lee Mallabone to
5950         add object properties.
5951
5952         * gtk/gtkcellrenderertextpixbuf.c: Apply patch from Lee Mallabone
5953         to add object properties.
5954
5955         * gtk/gtkcellrenderertext.c: Apply patch from Lee Mallabone to add
5956         object properties.
5957
5958         * gtk/gtkcellrendererpixbuf.c: Apply patch from Lee Mallabone to
5959         add object properties.
5960
5961         * gtk/gtkcellrenderer.c: Apply patch from Lee Mallabone to add
5962         object properties.
5963
5964 Mon Mar  5 14:38:54 2001  Jonathan Blandford  <jrb@redhat.com>
5965
5966         * gtk/gtktreemodel.c: renamed "child_toggled" to
5967         "has_child_toggled".
5968
5969         * gtk/gtktreeview.c: Handle removing columns better.  Updated to
5970         handle new signal name.
5971
5972         * gtk/gtktreestore.c: Updated to handle new signal name.
5973         * gtk/gtklisttore.c: Updated to handle new signal name.
5974         * gtk/gtktreemodelsort.c: Updated to handle new signal name.
5975
5976 2001-03-05  Alexander Larsson  <alexl@redhat.com>
5977
5978         * gtk/gtkmenu.c (gtk_menu_set_tearoff_state):
5979         Set GDK_WINDOW_TYPE_HINT_MENU on tearoff window.
5980
5981 2001-03-05  Michael Natterer  <mitch@gimp.org>
5982
5983         * gtk/gtklabel.c: Made the "parent_class" pointer static. The
5984         pixbuf-engine coincidentially also failed to make one of it's
5985         parent_class pointers static, causing overwriting of GtkLabel's
5986         parent_class pointer in pixbuf_style_class_init().
5987         (Will commit the fix to the pixbuf-engine too).
5988
5989 2001-03-05  Alexander Larsson  <alexl@redhat.com>
5990
5991         * gdk/gdkwindow.h:
5992         Added GdkWindowTypeHint type. Added modal_hint field to GdkWindindow.
5993         New functions gdk_window_set_type_hint, gdk_window_set_modal_hint and
5994         gdk_window_set_icon_list for net wmspec functionality.
5995
5996         * gdk/x11/gdkwindow-x11.c:
5997         Set _NEW_WM_STATE_MODAL from window->modal_hint in set_inital_hints.
5998         Implement gdk_window_set_type_hint, gdk_window_set_modal_hint and
5999         gdk_window_set_icon_list.
6000         Added gdk_wmspec_change_state helper function and used it in the code.
6001         Set _NET_WM_ICON_NAME in gdk_window_set_title and gdk_window_set_icon_name.
6002
6003         * gtk/gtkdialog.c (gtk_dialog_init):
6004         Set GDK_WINDOW_TYPE_HINT_DIALOG.
6005
6006         * gtk/gtkhandlebox.c (gtk_handle_box_realize):
6007         Set GDK_WINDOW_TYPE_HINT_TOOLBAR.
6008
6009         * gtk/gtkwindow.c:
6010         new function gtk_window_set_type_hint.
6011         On realize, set type hint and modal hint.
6012
6013         * gtk/gtkwindow.h:
6014         Added type_hint field and gtk_window_set_type_hint.
6015
6016 2001-03-05  Alexander Larsson  <alexl@redhat.com>
6017
6018         * gtk/gtklabel.[ch]:
6019         Convert from GtkArg to GParam (originally based on patch from Lee Mallabone).
6020         New function gtk_label_get_accel_keyval () to get the underline accelerator
6021         of the label. Setting the label pattern overrides other attributes.
6022
6023 Mon Mar  5 14:51:10 MET 2001  Sven Neumann  <sven@gimp.org>
6024
6025         * gtk/gtkrc.c: fixed compiler warnings by inserting some consts.
6026         Added missing initializers to gtk_rc_style_init().
6027
6028 Sun Mar 04  07:30:03 2001 CET Mikael Hermansson <mikeh@bahnhof.se>
6029
6030         * gtk/gtktextview.c: fixed bug #51097 about setting 
6031         gtk_text_view_set_border_window_size() if the widget is 
6032         already realized.
6033
6034 Sat Mar  3 16:59:16 2001  Owen Taylor  <otaylor@redhat.com>
6035
6036         * gdk/gdkpango.h gdk/x11/gdkwindow-x11.c: Doc fixes
6037
6038         * gdk/win32/gdkinput.c (gdk_device_get_axis): Remove doc
6039         comment. Won't do to have duplicated doc comments between
6040         the platform subdirs.
6041
6042 Sat Mar  3 16:26:33 2001  Owen Taylor  <otaylor@redhat.com>
6043
6044         * gdk/x11/gdkmain-x11.c gdk/x11/gdkkeys-x11.c 
6045           gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.c:
6046
6047         Detectable auto-repeat - make a repeating key generate
6048         press/press/press/release instead of press/release pairs.
6049
6050         If we have Xkb and XkbSetDectableAutoRepeat supports
6051         that, we do it that way. Otherwise, when we get
6052         a release event, we check ahead with XPending to see
6053         if the next key is a KeyPress with the same keycode
6054         and timestamp. (Not 100% reliable, but pretty close.)
6055           
6056 Tue Feb 27 02:16:14 2001  Owen Taylor  <otaylor@redhat.com>
6057         
6058         * gtk/gtkmain.c (gtk_propagate_event): Only do special
6059         special key-press grab handling for widgets within
6060         GtkWindows. Otherwise, fall through to normal case.
6061  
6062         This prevents key events being sent twice to GtkInvisible
6063         widgets, which can cause all sorts of mischief.
6064  
6065 Fri Feb  2 13:20:12 2001  Owen Taylor  <otaylor@redhat.com>
6066  
6067         * gtk/gtkmain.c (gtk_propagate_event): When a grab
6068         widget is in effect, give the grab widget a first
6069         crack at KEY_PRESS/RELEASE events. (#424)
6070  
6071 Sat Mar  3 15:39:49 2001  Owen Taylor  <otaylor@redhat.com>
6072
6073         * gtk/gtkentry.c (gtk_entry_button_press): Add shift-clicking
6074         to extend the selection. (Roughly based on patch
6075         from Jay Cox, #50939)
6076
6077         * gtk/gtkentry.c (gtk_entry_button_press): Fix triple-clicking
6078         to properly handle previous GDK_BUTTON_PRESS. 
6079         (Patch from Jay Cox, #50938)
6080
6081         * gtk/gtkentry.c (gtk_entry_real_delete_text): Move the
6082         '\0' back along with the deleted text. (#51148)
6083
6084 Mon Jan 22 14:31:29 2001  Owen Taylor  <otaylor@redhat.com>
6085
6086         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Unshift
6087         the group when extracting it from the X keyboard event.
6088
6089         * modules/input/Makefile.am modules/input/imipa.c: 
6090         Simple module for entering IPA. (Do we need a 
6091         gtk-stupid-input-tricks CVS module?)
6092
6093 Sat Mar  3 13:32:47 2001  Owen Taylor  <otaylor@redhat.com>
6094
6095         * gtk/gtkimmodule.c (gtk_im_module_init): Remove spurious
6096         const.
6097
6098         * gdk-pixbuf-2.0.pc.in gtk+-2.0.pc.in: Fix include path.
6099
6100         * gtk/gtkdialog.c (gtk_dialog_set_default_response): If there
6101         is no focus widget for the dialog currently, grab the focus as well
6102         as the default.
6103
6104         * gtk/gtkdialog.c (gtk_dialog_set_default_response): Get
6105         the action area's children to iterate through, not the
6106         dialog's children.
6107
6108 Sat Mar  3 13:21:27 2001  Owen Taylor  <otaylor@redhat.com>
6109
6110         * tests/Makefile.am tests/testsocket.c tests/testsocket_child.c:
6111         Add plug-socket tests. (Won't work worth a darn until I commit
6112         the rest of the plug-socket changes, but no reason these
6113         can't go into CVS now.)
6114
6115 2001-03-02  Havoc Pennington  <hp@redhat.com>
6116
6117         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_flush): use
6118         _gdk_region_get_xrectangles()
6119
6120         * gdk/x11/gdkmain-x11.c (_gdk_region_get_xrectangles): new function
6121
6122         * gtk/testgtk.c (create_shapes): add test for shape_combine_region
6123
6124         * gdk/x11/gdkwindow-x11.c (gdk_window_shape_combine_region): new
6125         function, contributed by Ron Steinke    
6126
6127         * gdk/x11/gdkevents-x11.c (gdk_wmspec_supported): rename
6128         gdk_net_wm_supports
6129
6130         * gdk/gdkregion-generic.c (gdk_region_get_rectangles): 
6131         New function, contributed by Ron Steinke
6132
6133         * gtk/gtkentry.c (gtk_entry_get_layout_offsets): New function, 
6134         used to line up the text in the entry when using the entry for
6135         editable sheet cell hacks
6136
6137         * gtk/testgtk.c (create_entry): test the activate_default setting
6138         on GtkEntry
6139
6140         * gtk/gtkentry.c (gtk_entry_set_activates_default): New function to 
6141         cause the entry to activate the default button for a dialog when 
6142         activated
6143         (gtk_entry_get_activates_default): new function
6144
6145 Wed Feb 28 19:10:43 2001  Owen Taylor  <otaylor@redhat.com>
6146
6147         * gtk/gtkclist.c (real_remove_row): Patch from ChiDeok
6148         Hwang to move call to sync_selection() up a few lines
6149         to before the row list is modified, to fix crash when
6150         removing rows in the undo_selection list.
6151
6152         (Test case provided by Daniel Elstner:
6153
6154         http://mail.gnome.org/archives/gtk-list/2001-February/msg00359.html)
6155
6156 Fri Feb 23 15:06:48 2001  Owen Taylor  <otaylor@redhat.com>
6157
6158         * gtk/gtktree.c (gtk_tree_class_init): Do the setting
6159         of tree->root_tree in parent_set rather than _map(), 
6160         fixing #50892 in a bit better manner.
6161
6162 Thu Feb 22 17:07:58 2001  Owen Taylor  <otaylor@redhat.com>
6163
6164         * gtk/gtkmenu.c (gtk_menu_popup): Don't flip cursor. (#50934)
6165
6166 Tue Feb  2 11:22:33 2001  Jody Goldberg <jgoldberg@home.com>
6167
6168         * gtk/gtkstyle.c : Remove duplicate fwd decl for
6169         gtk_default_draw_shadow.
6170
6171 ue Feb 20 11:40:58 2001  Owen Taylor  <otaylor@redhat.com>
6172
6173         * gdk/gdkimage.c (gdk_image_new): Remove excess 
6174         warning, make warnings more verbose, treat a error
6175         in shmat as permanent, and don't try again.
6176         (#51163, Ed Randall.)
6177
6178 Mon Feb 19 20:15:28 2001  Owen Taylor  <otaylor@redhat.com>
6179
6180         * gtk/gtkrange.c (gtk_range_timer_1st_time): Add an initial
6181         delay for the first click before starting to scroll.
6182         (based on #51026, gtk-enf-990512-0.patch, Eric Fisher)
6183
6184         * gtk/gtktext.c: GtkText should have I-beam cursor. 
6185         (based on gtk-enf-990513-1.patch, Eric Fisher.)
6186
6187 Mon Feb 19 16:42:19 2001  Owen Taylor  <otaylor@redhat.com>
6188
6189         * gtk/gtklayout.c (gtk_layout_allocate_child): Tiny
6190         cleanup to remove some references to unused
6191         ->xoffset, ->yoffset.
6192
6193 Mon Feb 19 14:20:36 2001  Owen Taylor  <otaylor@redhat.com>
6194
6195         * gdk/gdkrgb.c (gdk_rgb_convert_555_br): Fix incorrect
6196         mask. (#51039, fix from Martin Maierhofer)
6197
6198 Fri Feb 16 20:09:42 2001  Owen Taylor  <otaylor@redhat.com>
6199
6200         * gtk/gtkctree.c (gtk_ctree_class_init): Add bindings
6201         for unshifted + and shifted = for non-us keyboards.
6202         Make <Control>+ and <Control>- work as well as 
6203         <Control>KP_Plus, <Control>KP_Minus for recursive
6204         open/close.  (#2682, René Seindal)
6205
6206 Fri Feb 16 18:50:59 2001  Owen Taylor  <otaylor@redhat.com>
6207
6208         * gtk/gtkmenushell.c (gtk_real_menu_shell_cancel): Unset
6209         the active menu item before deactivating the menu,
6210         so gtk_menu_popdown doesn't change the history. (#50964)
6211         
6212 Fri Feb 16 15:55:22 2001  Owen Taylor  <otaylor@redhat.com>
6213
6214         * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): 
6215         draw lines with text_gc rather than black_gc.
6216         (Patch from Vlad Harchev <hvv hippo ru>, #50926)
6217
6218 Thu Mar  1 19:50:56 2001  Jonathan Blandford  <jrb@redhat.com>
6219
6220         * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_realize_button):
6221         Move handling of buttons fully in gtktreeviewcolumn.  This code is
6222         less interrelated then it was, but it still requires the
6223         GtkTreeView to map it.
6224
6225         * test/testtreecolumn.c: Now I can add a column to one view,
6226         remove it, add it to the another view, remove it, then re-add it
6227         to the first.  Nifty.
6228
6229 Thu Mar  1 13:14:27 GMT 2001  Tony Gale <gale@gtk.org>
6230
6231         * docs/tutorial/gtk-tut.sgml: Minor corrections
6232
6233 Wed Feb 28 16:36:46 2001  Jonathan Blandford  <jrb@redhat.com>
6234
6235         * gtk/gtktreemodel.c (gtk_tree_row_reference_*): Sanitize
6236         GtkRowReference.
6237
6238 2001-02-28  Havoc Pennington  <hp@redhat.com>
6239
6240         * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove draw_focus and
6241         draw_default
6242         (gtk_widget_draw_focus): remove this function; we could instead
6243         make it just gtk_widget_draw(), but in most cases I think the
6244         result would be broken user code, so think it's better to have
6245         that code not compile and get fixed
6246         (gtk_widget_draw_default): ditto
6247
6248         * gtk/gtkwidget.c: Add default handlers for focus_in_event and
6249         focus_out_event that set/unset GTK_HAS_FOCUS and call queue_draw
6250         
6251         * gtk/gtkwindow.c (gtk_window_set_default): just queue a draw when
6252         widgets lose/get the default, instead of calling draw_default
6253         
6254         * docs/Changes-2.0.txt: note about all this
6255
6256         Then fixed every widget in GTK, I won't list all the filenames.
6257
6258 Tue Feb 27 19:32:53 2001  Jonathan Blandford  <jrb@redhat.com>
6259
6260         * gtk/gtktreemodel.c (deleted_callback): Proxy out to
6261         _gtk_tree_row_reference_deleted.
6262         (inserted_callback): Proxy out to
6263         _gtk_tree_row_reference_inserted.
6264         (_gtk_tree_row_reference_new_from_view): Somewhat yukky hack to
6265         get around signal emission ordering problem.
6266
6267         * gtk/gtktreeselection.c (gtk_tree_selection_real_unselect_all):
6268         fix to work with SINGLE 
6269         (_gtk_tree_selection_internal_select_node): Major sanitization on
6270         selections.  SINGLE now seems to work.
6271
6272         * tests/Makefile.am: add testtreecolumn.c:
6273
6274         * tests/testtreecolumn.c: New test.  Mostly points out selection
6275         bugs currently, but will test columns later.
6276
6277         * gtk/gtkrbtree.c (_gtk_rbtree_remove_node): Fix really nasty
6278         selection bug.  I hate touching this code -- it's scary.
6279
6280 2001-02-26  Havoc Pennington  <hp@redhat.com>
6281
6282         * gtk/testgtk.c: test the window state stuff
6283
6284         * gtk/gtkwindow.c (gtk_window_present): new function, makes a
6285         window come to the user's attention as if it were just created
6286         (gtk_window_iconify): new function
6287         (gtk_window_deiconify): new function
6288         (gtk_window_stick): new function
6289         (gtk_window_unstick): new function
6290         (gtk_window_maximize): new function
6291         (gtk_window_unmaximize): new function
6292
6293         * gtk/gtkwidget.h, gtk/gtkwidget.c: add window_state_event signal
6294
6295         * gtk/gtkmain.c (gtk_main_do_event): handle GDK_WINDOW_STATE
6296
6297         * gdk/x11/gdkevents-x11.c: create window state events when
6298         appropriate
6299         (gdk_wmspec_supported): new function
6300
6301         * gdk/x11/gdkwindow-x11.c (gdk_window_iconify): handle
6302         iconification before showing the window
6303         (gdk_window_deiconify): new function
6304         (gdk_window_stick): new function
6305         (gdk_window_unstick): new function
6306         (gdk_window_maximize): new function
6307         (gdk_window_unmaximize): new function
6308
6309         * gdk/gdkwindow.c: store the window state in the window; 
6310         change to using the GDK_WINDOW_STATE_WITHDRAWN flag instead of
6311         window->mapped.
6312         (gdk_window_get_state): return the current window state
6313
6314         * gdk/gdkevents.c (gdk_event_get_time): handle GDK_WINDOW_STATE
6315         (gdk_event_get_state): handle GDK_WINDOW_STATE
6316         (gdk_synthesize_window_state): function to create the window state
6317         events
6318
6319         * gdk/gdkevents.h (struct _GdkEventWindowState): new type of
6320         event, for changes to "window state" such as maximized, sticky, 
6321         etc.
6322         
6323         * gdk/x11/gdkwindow-x11.c (gdk_window_focus): new function,
6324         focuses a window
6325
6326         * gdk/x11/gdkmain-x11.c (_gdk_wmspec_supported): new function, 
6327         finds out if we support a given WM spec hint
6328
6329 Tue Feb 27 13:37:38 GMT 2001  Tony Gale <gale@gtk.org>
6330
6331         * docs/faq/gtk-faq.sgml: New question re memory leaks.
6332
6333 2001-02-25  Hans Breuer  <hans@breuer.org>
6334
6335         * gdk/gdk.h : changed #ifdef GDK_DISBALE_DEPRECARED to #ifndef
6336         cause we want to loose those prototypes only in the latter case
6337
6338         * gdk/win32/gdkevents-win32.c : can't cast from GdkPixmap to
6339         GdkPixmapImplWin32 because it itsn't derived from it. Use the
6340         impl member variable instead
6341
6342         * gtk/gtk.def : updated
6343
6344         * gtk/gtklist.c : 
6345         * gtk/gtkmenus.c : include <string.h> for memset ()
6346
6347         * gtk/makefile.msc.in : updated and don't define GTK_COMPILATION
6348         for everthing built here, but for gtk-x.x.dll only. This solves
6349         problem of indifferent gtk type definitions
6350
6351 Sat Feb 24 20:11:39 2001  Jonathan Blandford  <jrb@redhat.com>
6352
6353         * gtk/gtkclipboard.h: actually put /* */ around #endif comment.
6354
6355 Fri Feb 23 17:50:13 2001  Jonathan Blandford  <jrb@redhat.com>
6356
6357         * gtk/gtktreeview.c (gtk_tree_view_bin_expose): Only draw the
6358         column that is exposed.
6359
6360         (_gtk_tree_view_update_size): Changed name from set_size, and
6361         changed function to do more work, and not force people calling it
6362         to figure out the size.  Simplifies a lot of code elsewhere.
6363
6364 2001-02-23  Alexander Larsson  <alexl@redhat.com>
6365
6366         * gdk/gdkpixmap.c (gdk_pixmap_colormap_new_from_pixbuf):
6367         return solid masks for xpms that have no transparent color.
6368         This makes the ..._create_from_xpm... API backwards
6369         compatible.
6370
6371 2001-02-23  Tor Lillqvist  <tml@iki.fi>
6372
6373         * README.win32: Update. Mention the gtk-1-3-win32-production
6374         branch.
6375
6376         * gdk/win32/bdfcursor.c: New file. A program that generates
6377         xcursors.h. Thanks to Stefan Ondrejicka.
6378
6379         * gdk/win32/xcursors.h: New file, contains the X cursor font in a
6380         compact format.
6381
6382         * gdk/win32/Makefile.am (EXTRA_DIST): Add new files.
6383
6384         * gdk/win32/gdkcursor-win32.c (_gdk_win32_data_to_wcursor): New
6385         function, uses xcursors.h.
6386         (gdk_cursor_new): Use _gdk_win32_data_to_wcursor to generate
6387         cursor from inline data instead of using LoadCursor() to generate
6388         it from a resource.
6389
6390         * gdk/win32/gdkevents-win32.c (gdk_event_translate): At button up
6391         event, must check the Windows message for mouse button state, as
6392         the GDK event state might not have been built if it is
6393         undelivered. Remove one goto.
6394
6395         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Call
6396         SetCursor() if the current cursor as returned by GetCursor() is
6397         the window's previous cursor. The ChildWindowFromPoint() test
6398         apparently didn't work correctly.
6399
6400         * gdk/win32/rc/*.cur: Remove.
6401
6402         * gdk/win32/rc/gdk.rc.in: Remove cursors.
6403
6404         * gdk/win32/rc/Makefile.am (EXTRA_DIST): Remove from here, too.
6405
6406         * gtk/makefile.{mingw,msc}.in: Updates.
6407
6408 Wed Feb 21 20:56:50 2001  Jonathan Blandford  <jrb@redhat.com>
6409
6410         * gtk/gtktreemodel.h: add functions for signal emission.
6411
6412         * gtk/gtktreestore.c: move to use above functions instead of
6413         g_signal_emit.
6414
6415         * gtk/gtkliststore.c: ditto
6416
6417 Wed Feb 21 15:41:34 2001  Jonathan Blandford  <jrb@redhat.com>
6418
6419         * gtk/gtktreestore.c: removed signals.  Moved to inherit from
6420         GObject instead of GtkObject.
6421
6422         * gtk/gtkliststore.c: ditto.
6423
6424         * gtk/gtktreemodelsort.c: ditto.
6425
6426         * gtk/gtktreemodel.c (gtk_tree_model_base_init): moved signals to
6427         GtkTreeModelIface, instead of in each model.
6428
6429 2001-02-21  Havoc Pennington  <hp@redhat.com>
6430
6431         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_child_anchor):
6432         unbreak this function
6433
6434         * gtk/gtkentry.c: apply patch from Lee Mallabone to add object 
6435         properties
6436
6437         * gtk/gtkcurve.c: apply patch from Lee Mallabone to add object
6438         properties
6439
6440         * gtk/gtkcombo.c: apply patch from Lee Mallabone to add object 
6441         properties
6442
6443         * gtk/gtkentry.c (gtk_entry_set_max_length): have this take -1 to
6444         mean unset the max length
6445
6446 Wed Feb 21 14:23:05 2001  Jonathan Blandford  <jrb@redhat.com>
6447
6448         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data_func):
6449         Changed name to be set_cell_data_func to make it clear what
6450         the functino does.  Close bug #51069.
6451
6452 Tue Feb 20 16:49:00 2001  Jonathan Blandford  <jrb@redhat.com>
6453
6454         * gtk/testgtk.c (main): Remove turning on of profiling malloc,
6455         have memory actually freed.  Keeps box running longer.
6456
6457 2001-02-21  Alexander Larsson  <alexl@redhat.com>
6458         
6459         * gtk/gtkseparatormenuitem.[ch]:
6460         Added new menu separator item. The drawing and size handling
6461         is still done in GtkMenuItem, but the API is a bit more sane.
6462         
6463         * gtk/Makefile.am:
6464         Add gtkseparatormenuitem.[ch].
6465
6466         * gtk/gtk.h:
6467         Add gtkseparatormenuitem.h.
6468         
6469         * gtk/gtkentry.c:
6470         * gtk/gtkmenufactory.c:
6471         * gtk/gtktextview.c:
6472         Use the new API for menu separators.
6473         
6474         * demos/gtk-demo/menus.c (create_menu):
6475         Add some GtkSeparatorMenuItem demo code.
6476
6477 2001-02-20  Havoc Pennington  <hp@redhat.com>
6478
6479         * gtk/gtkaspectframe.c: Convert to new property API, patch from 
6480         Lee Mallabone
6481
6482         * gtk/gtkarrow.c: Convert to new property API, patch from 
6483         Lee Mallabone
6484
6485 Tue Feb 20 14:26:41 2001  Jonathan Blandford  <jrb@redhat.com>
6486
6487         * tests/testtreeview.c (toggled_callback): fix to reflect change
6488         in GtkTreeModelStore.
6489
6490 Tue Feb 20 12:16:12 2001  Jonathan Blandford  <jrb@redhat.com>
6491
6492         * gtk/gtkiconfactory.c (gtk_icon_set_new_from_pixbuf): New
6493         function to create an icon set from a pixbuf.
6494
6495 2001-02-20  Alexander Larsson  <alexl@redhat.com>
6496
6497         * gtk/gtkcellrenderertext.[ch]:
6498         Add a "markup" property.
6499
6500         * gtk/treestoretest.c:
6501         Use the markup property, remove some leftover stuff from
6502         GtkTreeModelMapping.
6503
6504 2001-02-20  Alexander Larsson  <alexl@redhat.com>
6505
6506         * gtk/gtklabel.c (gtk_label_set_selectable):
6507         Queue a redraw if the selectable setting was changed.
6508
6509 2001-02-20  Alexander Larsson  <alexl@redhat.com>
6510
6511         * gdk/linux-fb/gdkgc-fb.c (gdk_gc_copy):
6512         Actually copy the whole gc, not just the public parts.
6513         
6514         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
6515         GDK_WINDOW_TEMP are not toplevel. Fixes selectable
6516         labels.
6517
6518 2001-02-19  Havoc Pennington  <hp@pobox.com>
6519
6520         * gdk/gdkwindow.c: docs
6521
6522         * gdk/gdkrgb.c: docs
6523
6524         * gdk/gdkregion-generic.c: docs
6525
6526         * gdk/gdkgc.c (gdk_gc_set_values): docs
6527
6528         * gdk/gdkdraw.c: docs
6529
6530         * gdk/gdkdrawable.h: deprecate drawable get/set data
6531
6532 Mon Feb 19 20:37:35 2001  Jonathan Blandford  <jrb@redhat.com>
6533
6534         * demos/gtk-demo/dialog.c: Add simple new demo.
6535
6536 2001-02-19  Havoc Pennington  <hp@redhat.com>
6537
6538         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): add
6539         insert_child_anchor signal, bug #50245
6540
6541         * gtk/gtktextbtree.c (_gtk_text_btree_insert_child_anchor): change
6542         from create_child_anchor, so the anchor is passed in
6543
6544         * gtk/gtktextchild.c (gtk_text_child_anchor_new): new function
6545         (_gtk_widget_segment_new): have the child anchor object passed in, 
6546         instead of creating it.
6547
6548         * gtk/gtktextbuffer.c (gtk_text_buffer_modified): rename
6549         to gtk_text_buffer_get_modified
6550
6551 2001-02-19  Havoc Pennington  <hp@redhat.com>
6552
6553         * gtk/gtktreemodel.c (gtk_tree_model_get_valist): hmm, someone
6554         changed GLib without fixing GTK
6555
6556         * gtk/gtkrange.h: Rename all the stupid implementation detail 
6557         functions to have an underscore in front. Most of them should 
6558         probably just go away, but for starters don't export them.
6559         Bug #50482
6560
6561 2001-02-19  Havoc Pennington  <hp@redhat.com>
6562
6563         * gdk/gdkcolor.h: test was backward, so deprecated functions were
6564         excluded by default
6565
6566         * gtk/gtkstyle.c (gtk_default_draw_diamond): draw etched in/out,
6567         clean up the old code a bit
6568
6569         * gtk/gtkradiobutton.c (gtk_radio_button_draw_indicator): draw
6570         inconsistent state
6571
6572         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_draw_indicator):
6573         draw inconsistent state
6574
6575         * gtk/testgtk.c (create_toggle_buttons): add test for inconsistent
6576         (create_menu): add inconsistent test
6577
6578         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_set_inconsistent):
6579         new function
6580         (gtk_check_menu_item_get_inconsistent): new function
6581         (gtk_real_check_menu_item_draw_indicator): draw the inconsistent
6582         state (using etched in for now)
6583
6584         * gtk/gtkcheckbutton.c (gtk_real_check_button_draw_indicator):
6585         draw inconsistent state
6586
6587         * gtk/gtktogglebutton.c (gtk_toggle_button_set_inconsistent): new
6588         function, used when the user has selected a range of stuff in
6589         different states
6590         (gtk_toggle_button_get_inconsistent): accessor for that
6591         (gtk_toggle_button_paint): draw inconsistent state (etched in?
6592         don't know what else to do)
6593
6594 2001-02-19  Hans Breuer <hans@breuer.org>
6595
6596         * gtk/gtk.def : updated exported symbols
6597
6598         * gtk/makefile.msc.in : updated
6599
6600         * gtk/gtkstyle.c (gtk_style_realize) : gets called without
6601         a colormap, when invoked from testgtk::entry. I'm not sure where
6602         the bug is, but g_return_if_fail (GDK_IS_COLORMAP (colormap));
6603         avoids immediate crashing ...
6604
6605         * gtk/gtkmain.c (check_setugid) : totally disabled on win32;
6606         any objections ?
6607
6608         * gtk/gtktreemodel.c : called G_VALUE_LCOPY with an extra
6609         0 parameter. At least msvc doesn't like macros with var args. 
6610         I simply removed the extra 0, was it a feature or a typo ?
6611
6612         * gtk/gtktreeviewcolumn.[hc] (gtk_tree_view_column_set_func) :
6613         removed the extra indirection from the GtkTreeViewColumnFunc parameter,
6614         because the value assignment to the internal struct wasn't working.
6615         I'm not absolutely sure. The problem could have been resolved by
6616         changing the "func" declartion in the struct, but was the pointer
6617         to the function pointer intended ?
6618
6619         * gtk+/gtk/gtktreedatalist.c : include gboxed.h
6620
6621         * gdk/gdk.def : updated exported symbols
6622
6623         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_image) :
6624         only use SetDIBitsToDevice if there is a palette at the drawable
6625         and the image is GDK_VISUAL_PSEUDO_COLOR
6626
6627         * gdk/win32/gdkkeys-win32.c : msvc still has no <unistd.h> ...
6628
6629         * gdk/win32/gdkwindow-win32.c : #include "gdk.h" /* gdk_rectangle_intersect */
6630
6631         * gdk/*/makefile.msc : updated
6632
6633 2001-02-19  Havoc Pennington  <hp@redhat.com>
6634
6635         * demos/gtk-demo/Makefile.am (INCLUDES): GDK_DISABLE_COMPAT_H,
6636         GDK_DISABLE_DEPRECATED (we need to merge those two #defines)
6637
6638         * gdk/x11/gdkmain-x11.c (gdk_key_repeat_disable): nuke
6639         (gdk_key_repeat_restore): nuke
6640
6641         * gdk/gdk.c (gdk_exit_func): #if 0 this for now, don't install it
6642         (gdk_init_check): no atexit func
6643
6644         * gdk/gdkrgb.h: mark some stuff deprecated
6645
6646         * gdk/gdkcolor.h: mark some stuff deprecated
6647         
6648         * gdk/gdk.h: deprecated gdk_exit, gdk_input_*
6649
6650         * gdk/gdkfont.h: bracket in GDK_DISABLE_DEPRECATED
6651
6652 2001-02-16  Havoc Pennington  <hp@redhat.com>
6653
6654         * gtk/gtkvscrollbar.c (gtk_vscrollbar_trough_keys): use the visual
6655         scroll steps.
6656
6657         * gtk/gtkvscale.c (gtk_vscale_trough_keys): use the visual scroll
6658         steps, and add Ctrl-arrow shortcuts for paging visually as with
6659         HScale, since Page Up and Page Down move logically.
6660
6661         * gtk/gtkenums.h (GtkScrollType): add GTK_SCROLL_STEP_UP,
6662         GTK_SCROLL_STEP_DOWN, etc. for visual scroll directions
6663         
6664         * gtk/gtkrange.c (gtk_range_key_press): handle the visual scroll
6665         steps
6666         (gtk_range_scroll): handle the visual steps
6667
6668         * gtk/gtklist.c (gtk_list_scroll_horizontal): handle the up/down
6669         scroll steps
6670
6671         * gtk/gtkhscale.c (gtk_hscale_trough_keys): use the visual scroll
6672         steps, not the logical ones.
6673
6674         * gtk/gtkclist.c (move_focus_row): handle the up/down scroll steps
6675         (scroll_vertical): handle up/down steps
6676
6677 2001-02-19 Alexander Larsson  <alexl@redhat.com>
6678
6679         * gdk/linux-fb/gdkimage-fb.c (gdk_image_new_bitmap):
6680         Copy data and free data with free().
6681
6682         * gdk-pixbuf/gdk-pixbuf.c:
6683         * gdk-pixbuf/io-jpeg.c:
6684         * gdk-pixbuf/io-png.c:
6685         Use g_try_malloc/g_free instead malloc/free.
6686         
6687         * gdk-pixbuf/test-gdk-pixbuf.c:
6688         Must... initialize... gobject...
6689         
6690         * gdk-pixbuf/pixops/timescale.c:
6691         * gtk/gtkcalendar.c:
6692         Use g_malloc instead of malloc.
6693         
6694 2001-02-19 Alexander Larsson  <alla@lysator.liu.se>
6695
6696         * gtk/testgtkrc:
6697         Comment out property assignments, these don't work yet.
6698
6699 2001-02-17  Havoc Pennington  <hp@pobox.com>
6700
6701         * gtk/gtkalignment.c (gtk_alignment_class_init): clean this up a
6702         bit.
6703
6704 2001-02-17  Havoc Pennington  <hp@pobox.com>
6705
6706         * gtk/gtklabel.c (gtk_label_ensure_layout): fix screwup with
6707         shadowed variables that had broken size request in some cases,
6708         leading to bogus tooltips (#50996)
6709
6710 2001-02-06  Jon K Hellan  <hellan@acm.org>
6711
6712         Implement fast browsing of tooltips, bug #50619
6713         
6714         * gtk/gtktooltips.h (struct _GtkTooltips): Add use_sticky_delay
6715         and last_popdown
6716         
6717         * gtk/gtktooltips.c (gtk_tooltips_init): Initialize sticky_delay,
6718         use_sticky_delay and last_popdown.
6719         (gtk_tooltips_draw_tips, gtk_tooltips_set_active_widget): Record
6720         time of popdown.
6721         (gtk_tooltips_set_active_widget): Unset sticky behaviour if widget
6722         is NULL.
6723         (gtk_tooltips_recently_shown): New static function.  Return true
6724         if < sticky_delay has elapsed since last popdown.
6725         (gtk_tooltips_event_handler): Display window after sticky_delay
6726         (presumably < normal delay) if < STICKY_REVERT_DELAY has elapsed
6727         since last popdown.
6728         
6729 2001-02-17  Havoc Pennington  <hp@pobox.com>
6730
6731         * gtk/gtktypeutils.h (GtkSignalFunc): change it to take (void)
6732         instead of (). #6394
6733
6734         * gtk/gtkprogressbar.c (gtk_progress_bar_get_text): Add
6735         G_CONST_RETURN, make it return by reference, #50473
6736         
6737 Sat Feb 17 06:47:27 2001  Tim Janik  <timj@gtk.org>
6738
6739         * gtk/gtkmenu.c (gtk_menu_motion_notify): default initialize the
6740         generated ENTER_NOTIFY event with 0, otherwise not explicitely
6741         setup fields contain garbage (e.g. subwindow, breaking
6742         gdk_drawable_ref() upon event copy).
6743         (gtk_menu_stop_navigating_submenu_cb): same here.
6744
6745         * gtk/gtklist.c (gtk_list_vertical_timeout): 
6746         * gtk/gtklist.c (gtk_list_horizontal_timeout): 
6747         * gtk/gtkclist.c (vertical_timeout): 
6748         * gtk/gtkclist.c (horizontal_timeout): change direct assignment
6749         default-zero-intialization for unions to memset(,0,), as unions are
6750         not fully default-zero-initialized by compilers (GdkEvent x = { 0, };
6751         has to become GdkEvent x; memset (&x, 0, sizeof (x)); )
6752
6753         * gtk/gtktreeview.c (gtk_tree_view_set_rows_drag_source): scratch
6754         g_closure_sink() warning.
6755
6756         * gtk/gtktreemodel.c (gtk_tree_model_get_valist): 
6757         * gtk/gtktreestore.c (gtk_tree_store_set_valist): 
6758         * gtk/gtkliststore.c (gtk_list_store_set_valist): 
6759         fix G_VALUE_COLLECT() and G_VALUE_LCOPY() calls.
6760         
6761 Fri Feb 16 17:49:59 2001  Jonathan Blandford  <jrb@redhat.com>
6762
6763         * gtk/gtktreestore.[hc], gtk/gtkliststore.[ch]: removed
6764         gtk_*_store_get, and moved to GtkTreeModel.
6765
6766         * gtk/gtktreemodel.h (gtk_tree_model_set{v,}): Added
6767
6768         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_finalize): added.
6769
6770         * gtk/Makefile.am: remove gtktreemodelmapping.[ch]
6771
6772         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_func): let you
6773         set the func.
6774
6775         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
6776         freeze/thaw notify between setting all the properties for a cell.
6777
6778         * gtk/gtk.h: remove gtktreemodelsimple.h, and gtktreemodelmapping.h
6779
6780 2001-02-15  Havoc Pennington  <hp@redhat.com>
6781
6782         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): convert
6783         the X coordinates so they're with respect to the line, rather than 
6784         with respect to the layout.
6785
6786         * gtk/gtkalignment.c: Convert to new property API, patch from Lee
6787         Mallabone
6788
6789         * gtk/testgtk.c (create_range_controls): add vscale tests, 
6790         and inverted test
6791
6792         * gtk/gtkrange.c (gtk_range_set_inverted): new function to fix 
6793         #50806
6794
6795         * gtk/gtkentry.c (gtk_entry_get_text): add G_CONST_RETURN
6796
6797         * gtk/gtktextiter.h (gtk_text_iter_is_last): rename 
6798         gtk_text_iter_is_end
6799
6800         * gtk/gtktextbuffer.h (gtk_text_buffer_get_last_iter):
6801         rename gtk_text_buffer_get_end_iter
6802
6803         * gtk/testgtk.c (create_labels): Add test for selectable
6804
6805         * gtk/gtkentry.c (gtk_entry_draw_text): Use new GDK API to draw
6806         the selection stuff. This code is kind of broken since it doesn't 
6807         use the theme engine.
6808
6809         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): 
6810         fix infinite loop and y offset problem
6811         (gdk_draw_layout_line_with_colors): fix foreground color handling
6812
6813         * gtk/gtklabel.h, gtk/gtklabel.c: Implement a "selectable" flag 
6814         that makes the label selectable.
6815         
6816         * gtk/gtklabel.c (gtk_label_style_set): recreate the label's
6817         layout when the style is set, since fonts etc. could have changed.      
6818
6819 Fri Feb 16 14:22:05 2001  Jonathan Blandford  <jrb@redhat.com>
6820
6821         * gtk/Makefile.am: Removed gtktreemodelsimple.[ch]
6822
6823         * gtk/gtktreemodelsimple.[ch]: removed.
6824
6825 2001-02-16  Alexander Larsson  <alexl@redhat.com>
6826
6827         * gtk/gtktreemodelmapping.[ch]:
6828         New files. Implement GtkTreeModelMapping.
6829         
6830         * gtk/Makefile.am:
6831         Add gtktreemodelmapping.[ch].
6832         
6833         * gtk/gtk.h:
6834         Add gtktreemodelmapping.h
6835
6836         * gtk/treestoretest.c:
6837         Test the GtkTreeModelMapping
6838
6839 Tue Feb 13 13:16:09 2001  Jonathan Blandford  <jrb@redhat.com>
6840
6841         * demos/gtk-demo/panes.c (create_pane_options): If we're going to
6842         have a demo, we might as well pass in real values.  Thanks to
6843         clahey for pointing this out.
6844
6845 2001-02-14  Havoc Pennington  <hp@pobox.com>
6846
6847         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_remove): add
6848         "static" to a private function
6849         (gtk_image_menu_item_class_init): remove destroy handler,
6850         add "image" object property
6851
6852 2001-02-13  Alexander Larsson  <alla@lysator.liu.se>
6853
6854         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_clip_region):
6855         Add a shortcut if the window and the current clip_region doesn't
6856         overlap. This is needed when there are a lot of windows in a
6857         window. The layout test in testgtk is a good test.
6858
6859         * gdk/linux-fb/gdkwindow-fb.c:
6860         Whitespace fix.
6861
6862 2001-02-13  Sven Neumann  <sven@convergence.de>
6863
6864         * demos/testanimation.c: replaced deprecated gtk_drawing_area_size
6865
6866 2001-02-13  Alexander Larsson  <alexl@redhat.com>
6867
6868         * gdk/linux-fb/gdkcursor-fb.c (gdk_fb_cursor_unhide):
6869         Don't reference last_cursor if it is null. Fixes crash when rotating
6870         the screen before having moved the mouse.
6871
6872         * gdk/linux-fb/gdkcc-fb.c: Zapp!
6873
6874         * gdk/linux-fb/Makefile.am: Don't compile gdkcc-fb.c
6875
6876         * gdk/linux-fb/gdkwindow-fb.c: Fix typo. width->height. Fixes redraw 
6877         when using 90 or 270 degrees rotation.
6878
6879 2001-02-12  Havoc Pennington  <hp@pobox.com>
6880
6881         * gdk/gdkpango.c (gdk_pango_get_gc): fix bug where 
6882         it always set the foreground, even if we were only using
6883         a stipple.
6884         (gdk_draw_layout_line_with_colors): new function, allow
6885         override colors
6886         (gdk_draw_layout_with_colors): new function, allow override
6887         colors
6888         (gdk_pango_layout_line_get_clip_region): function to get the clip
6889         region for a logical text range
6890         (gdk_pango_layout_get_clip_region): get the clip region for a
6891         logical text range
6892
6893         * gdk/x11/gdkcolor-x11.c: forward declare gdk_colormap_sync(),
6894         (gdk_colormap_new): fix call to gdk_colormap_sync() so it has 
6895         the right number of arguments.
6896
6897         * gtk/gtktextbtree.c (gtk_text_btree_node_check_consistency):
6898         enhance the function to check that node data corresponds to a 
6899         view still belonging to the tree.
6900
6901         * gtk/gtktreeview.c (gtk_tree_view_changed): we were leaking the 
6902         GtkTreePath
6903         (gtk_tree_view_inserted): ditto
6904         (gtk_tree_view_child_toggled): ditto
6905
6906         * gtk/gtktreemodel.c (gtk_tree_path_append_index): use realloc to
6907         simplify this code.
6908
6909         * gtk/gtkcellrenderertext.c (get_layout): fix leak of 
6910         a PangoAttrList
6911
6912         * demos/gtk-demo/main.c (load_file): Fix leak of a GString
6913
6914         * gtk/gtkentry.c (gtk_entry_realize): Fix leak of a GdkCursor
6915
6916         * gtk/gtkmenubar.c (gtk_menu_bar_size_request): consider toggle
6917         size in the size request 
6918         (gtk_menu_bar_size_allocate): consider toggle size here
6919
6920         * gtk/gtkimagemenuitem.h, gtkimagemenuitem.c: Menu item
6921         that displays a widget in the toggle slot
6922
6923         * gtk/testgtk.c: test GtkImageMenuItem
6924
6925         * gtk/Makefile.am, gtk/gtk.h: Add GtkImageMenuItem
6926         
6927         * gtk/gtkmenuitem.h: Use "gint" not "guint16" for toggle size
6928         request and allocation
6929
6930         * gtk/gtkmenu.c (gtk_menu_size_request): use gint not guint16
6931
6932         * gtk/gtkcheckmenuitem.c
6933         (gtk_check_menu_item_toggle_size_request): ditto
6934         
6935 Mon Feb 12 23:43:30 2001  Owen Taylor  <otaylor@redhat.com>
6936
6937         * gtk/Makefile.am (gdk_headers): Remove gdkcc.h 
6938         reference.
6939
6940         * configure.in gtk/gtkmain.c: Add checks for setuid/setgid,
6941         and refuse to initialize GTK+ if they fail.
6942
6943 Mon Feb 12 15:02:07 2001  Owen Taylor  <otaylor@redhat.com>
6944
6945         * configure.in: Add check for gtk-doc version.
6946
6947 Thu Feb  8 17:18:26 2001  Owen Taylor  <otaylor@redhat.com>
6948
6949         * gtk/gtklabel.c (gtk_label_size_request): Fix bug
6950         where the xpad/ypad was only being used on one side!
6951
6952 2001-02-11  Tor Lillqvist  <tml@iki.fi>
6953
6954         * gdk/win32/gdkcolor-win32.c (gdk_colormap_query_color): New
6955         function, copied from X11 version.
6956
6957         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Eliminate
6958         DestroyCursor failures. The reason for the problem (despite the
6959         inconsistent messages from GetLastError()) was that
6960         DestroyCursor() cannot be called while a cursor is set in a
6961         window. Set the new cursor first and then destroy the old one.
6962         Thanks to jpe@archaeopteryx.com.
6963
6964         * gdk/win32/gdkcc-win32.c: Remove.
6965
6966         * gdk/win32/Makefile.am: Remove from here, too.
6967         
6968         * gdk/gdk.def
6969         * gdk/makefile.mingw.in: Update. Godbye GdkColorContext.
6970
6971         * gtk/gtk.def
6972         * gtk/makefile.mingw.in: Updates.
6973
6974 2001-02-08  Havoc Pennington  <hp@redhat.com>
6975
6976         * gtk/gtkbin.c (gtk_bin_add): better error message if you try to
6977         add a widget to a bin that already has a child.
6978
6979         * gdk/gdkcc.h, gdk/gdkcc-x11.c: Remove GdkColorContext, #50512
6980
6981         * docs/Changes-2.0.txt: note that GdkColorContext is gone.
6982         
6983         * gdk/x11/Makefile.am (libgdk_x11_la_SOURCES): remove gdkcc-x11.c
6984
6985         * gdk/gdk.h: remove gdkcc.h
6986
6987         * gdk/Makefile.am (gdk_public_h_sources): remove gdkcc.h
6988
6989         * gtk/gtkpixmap.c (build_insensitive_pixmap): rewrite using
6990         GdkPixbuf, since the previous implementation was GdkColorContext
6991         dependent.
6992
6993         * gtk/testgtk.c (create_pixmap): add test for insensitive GtkPixmap
6994         
6995 Thu Feb  8 19:00:00 2001  Jonathan Blandford  <jrb@redhat.com>
6996
6997         * gtk/gtktreeview.c (TREE_VIEW_VERTICAL_SEPARATOR): moved back to
6998         a sane value!
6999
7000 2001-02-08  Havoc Pennington  <hp@redhat.com>
7001
7002         * gtk/gtkstyle.c (get_darkened_gc): let's darken colors, not
7003         lighten them.
7004
7005 2001-02-08  Havoc Pennington  <hp@redhat.com>
7006
7007         * gtk/gtktextview.c (gtk_text_view_destroy_layout): remove
7008         validation idle
7009
7010         * demos/gtk-demo/main.c (create_tree): adjust to changes in text
7011         cell renderer
7012
7013         * demos/pixbuf-demo.c (timeout): remove deprecated
7014         gtk_widget_draw
7015
7016         * demos/testpixbuf-save.c (main): remove deprecated
7017         gtk_drawing_area_size
7018
7019         * gtk/gtktreeview.c (gtk_tree_view_size_allocate): allocate
7020         buttons even if the model isn't setup. gtk_tree_view_check_dirty()
7021         at the start of the allocation.
7022         (gtk_tree_view_check_dirty): handle column->button == NULL, handle
7023         unsetup or NULL model.
7024
7025         * gtk/gtkstyle.c (gtk_default_draw_flat_box): drawing for the 
7026         even/odd/sorted cells in the tree view.
7027
7028         * gtk/gtktreeselection.c (gtk_tree_selection_real_unselect_all):
7029         bugfixes
7030
7031         * gtk/gtktreeview.c: assorted bugfixy stuff. Draw the row
7032         backgrounds with draw_flat_box using different detail for even/odd
7033         rows.
7034
7035         * gtk/gtkrbtree.c, gtkrbtree.h: Keep track of the parity of each
7036         row, so we can draw the alternating colors thing
7037
7038         * gtk/gtktexttag.c (gtk_text_tag_set_property): if we change a
7039         property from a synonym property, notify for the synonym.
7040         Also, nuke the background_gdk_set and foreground_gdk_set synonyms
7041         (gtk_text_tag_get_property): Always return the font, even if
7042         all its fields aren't set
7043
7044         * gtk/gtkcellrenderertext.h (struct _GtkCellRendererText): don't
7045         store the attr list; it leaves us with no way to change attributes
7046         in _render according to the render flags, and no way to implement
7047         get_property. Instead store all the specific text attributes. 
7048         Separate whether an attribute is enabled from its value. Sync all
7049         properties with GtkTextTag, make them all consistent, etc.
7050
7051         * gtk/gtkcellrenderer.h: Add a flag GTK_CELL_RENDERER_SORTED so
7052         renderers can highlight the sort row/column     
7053
7054         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_get_property): use
7055         accessor functions to get values; this has the side effect of
7056         showing up which accessor functions were missing. Added those.
7057
7058         * gtk/gtktreeviewcolumn.h: Replace set_justification with
7059         set_alignment, to be consistent with GtkLabel, GtkMisc
7060
7061         * gtk/gtktreeviewcolumn.c: Added code to display sort indicator
7062         arrow.
7063
7064         * gtk/Makefile.am (gtk_public_h_sources): add gtktreesortable.h
7065
7066         * gtk/gtktreesortable.h: updates in here
7067
7068 2001-02-07  Sven Neumann  <sven@convergence.de>
7069
7070         * gtk/gtkentry.c (gtk_entry_draw_text): convert area_height to 
7071         pango dimensions after painting the background. We used to draw
7072         gigantic flat boxes here.
7073
7074 Mon Feb  5 22:05:57 2001  Owen Taylor  <otaylor@redhat.com>
7075
7076         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Fix syntax
7077         error introduced with earlier commit) (pointed out by
7078         Ollie Lho)
7079
7080 Mon Feb  5 12:25:06 2001  Owen Taylor  <otaylor@redhat.com>
7081
7082         * gtk/gtkbutton.c: Remove calls to gtk_grab_add/gtk_grab_remove,
7083         which are no longer necessary.
7084
7085 Mon Feb  5 13:22:54 GMT 2001  Tony Gale <gale@gtk.org>
7086
7087         * docs/faq/gtk-faq.sgml: s/MISK/MISC/
7088
7089 2001-02-04  Tor Lillqvist  <tml@iki.fi>
7090
7091         * gdk/gdk.def
7092         * gdk/win32/gdkim-win32.c (gdk_ic_attr_new, gdk_ic_attr_destroy):
7093         Provide dummy implementations.
7094
7095 Sun Feb  4 07:55:17 2001  Tim Janik  <timj@gtk.org>
7096
7097         * gtk/gtksignal.h: removed gtk_signal_init() compat define.
7098
7099         * gtk/gtktypeutils.[hc]: gtk_tpye_init() take an additional argument
7100         GTypeDebugFlags debug_flags and pass it on to g_type_init ();
7101         deprecated this function.
7102
7103         * gdk/gdk.c (gdk_init_check): call g_type_init () with 0 as
7104         argument.
7105
7106 Sun Feb  4 07:45:45 2001  Tim Janik  <timj@gtk.org>
7107
7108         * gtk/gtkdebug.h: nuke GTK_DEBUG_OBJECTS and GTK_DEBUG_SIGNALS.
7109
7110 2001-02-03  Havoc Pennington  <hp@pobox.com>
7111
7112         * gtk/gtktextbtree.c (_gtk_text_btree_tag): Fix bug reported by
7113         Mikael Hermansson with patch from Mikael (if there was a toggle
7114         start one after the first character in the range, this function
7115         was broken). Bug #50380
7116
7117 Sat Feb  3 11:28:03 2001  Owen Taylor  <otaylor@redhat.com>
7118
7119         * configure.in: Remove confusing comment about X11.
7120
7121 Fri Feb  2 19:21:23 2001  Owen Taylor  <otaylor@redhat.com>
7122
7123         * gdk/gdkwindow.c (gdk_propagate_shapes): Surround additional
7124         regions with HAVE_SHAPE_EXT. (#50511, Eric Ding)
7125         
7126 Fri Feb  2 18:31:54 2001  Owen Taylor  <otaylor@redhat.com>
7127
7128         * gdk/x11/gdkimage-x11.c: Remove definition of _XOPEN_SOURCE, since
7129         it breaks things on BSD. If you want to compile GTK+ with
7130         -ansi -pedantic, you should supply CPP_FLAGS=_XOPEN_SOURCE 
7131         when configuring, since GTK+ simply can't be "pure ANSI" 
7132         in the header files it uses. (#8170, Greg Hudson)
7133
7134 2001-02-02  Havoc Pennington  <hp@redhat.com>
7135
7136         * gtk/gtkwindow.c: docs
7137
7138         * gtk/gtkwidget.c: docs
7139         (gtk_widget_set_colormap): add a reference to the colormap
7140         (gtk_widget_get_default_colormap): add a reference to the colormap
7141
7142         * gtk/gtktextbtree.c (gtk_text_mark_set_visible): docs
7143
7144         * gtk/gtktextiter.c: docs
7145
7146         * gtk/gtkmain.c (gtk_propagate_event): docs
7147
7148         * gtk/gtkpaned.c (gtk_paned_get_position): docs
7149         (gtk_paned_set_position): docs
7150
7151         * gtk/gtktreesortable.h (struct _GtkTreeSortableIface): Initial
7152         sort interface, no implementation yet.
7153
7154         * demos/testpixbuf.c (new_testrgb_window): replace
7155         gtk_drawing_area_size() with gtk_widget_set_usize()
7156
7157         * demos/testpixbuf-drawable.c (main): ditto
7158         
7159         * gtk/testgtk.c: remove use of GtkStatusbarMsg
7160
7161         * gtk/gtktextbuffer.c: docs
7162
7163         * gtk/gtkstock.c: docs
7164
7165         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_set_shadow_type): docs
7166
7167         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): docs
7168
7169         * gtk/gtklabel.c (gtk_label_set_markup_with_accel): fix docs
7170         
7171         * gtk/gtkimage.c: add some docs in here
7172         (gtk_image_size_request): change name of
7173         gtk_widget_render_stock_icon
7174         (gtk_image_get_icon_set): don't dup returned string
7175         (gtk_image_get_icon_set): don't dup returned string
7176
7177         * gtk/gtkwidget.c (gtk_widget_render_icon): rename from 
7178         gtk_widget_render_stock_icon(), more consistent with gtkstyle.h
7179         and gtkiconfactory.h functions
7180
7181         * gtk/gtkiconfactory.c: add some docs in here
7182
7183         * gtk/gtkmain.c (gtk_get_default_language): document
7184         (gtk_get_current_event): document
7185         (gtk_get_current_event_state): document
7186         (gtk_get_event_widget): document
7187
7188         * gtk/gtkentry.c (gtk_entry_set_invisible_char): document
7189
7190         * gtk/gtkcontainer.c: Add some documentation
7191         (gtk_container_add): give a more explanatory warning on adding an
7192         already-parented widget, this is kind of a FAQ and also a common
7193         typo that's easier to debug with a nice warning 
7194
7195         * gtk/gtkcellrenderertoggle.c
7196         (gtk_cell_renderer_toggle_get_active): remove, I was on crack
7197         adding this, it's useless
7198         (gtk_cell_renderer_toggle_set_active): remove
7199         (gtk_cell_renderer_toggle_get_radio): add
7200
7201         * gtk/gtkcellrenderer.c (gtk_cell_renderer_get_size): don't allow
7202         the NULL cell renderer, that doesn't make any sense to me. 
7203
7204         * demos/gtk-demo/Makefile.am (INCLUDES): -DGTK_DISABLE_DEPRECATED,
7205         demo code should never use deprecated features.
7206
7207         * demos/Makefile.am (INCLUDES): -DGTK_DISABLE_DEPRECATED, demo
7208         code should never use deprecated features.
7209
7210         * gtk/gtkwidget.h: Mark gtk_widget_draw, gtk_widget_queue_clear,
7211         gtk_widget_queue_clear_area deprecated
7212
7213         * gtk/gtklayout.h: mark gtk_layout_freeze/gtk_layout_thaw
7214         deprecated
7215
7216         * gtk/gtklabel.h: mark gtk_label_get() deprecated
7217
7218         * gtk/gtkimage.h: mark the legacy GtkImage functions that took 
7219         a GdkImage deprecated, replaced by new consistently-named
7220         functions       
7221
7222         * gtk/gtkmain.h: Mark gtk_exit() deprecated
7223
7224         * gtk/gtkdrawingarea.h: mark gtk_drawing_area_size deprecated
7225
7226         * gtk/gtkstyle.h: mark gtk_draw_string, gtk_paint_string 
7227         deprecated
7228
7229         * gtk/gtkstatusbar.h: Move GtkStatusbarMsg to the .c file, 
7230         so it won't appear in docs and confuse people.
7231
7232         * gtk/gtkprogressbar.h: Mark all the old methods deprecated
7233
7234         * gtk/gtkprogress.h: Mark all methods deprecated, mark the cast
7235         macros deprecated. (can't mark the type itself deprecated, since
7236         GtkProgressBar is not deprecated and we need the type decl to use
7237         GtkProgressBar)
7238
7239         * gtk/gtkpixmap.h: Mark deprecated
7240
7241         * gtk/gtkoldeditable.h: Mark deprecated
7242
7243         * gtk/gtklist.h: Mark deprecated
7244
7245         * gtk/gtklabel.h: delete "GtkLabelWord" typedef, not used 
7246         for anything anymore.
7247
7248         * gtk/gtkctree.h: Mark deprecated
7249
7250         * gtk/gtkclist.h: Mark deprecated
7251
7252         * gtk/gtkpreview.h: Mark deprecated
7253
7254         * gtk/gtkpacker.h: Mark deprecated
7255
7256         * gtk/gtktipsquery.h: Mark deprecated
7257
7258         * gtk/gtkinputdialog.h: Add comment that it will move out of GTK
7259
7260         * gtk/gtkvruler.h: Add comment that it will move out of GTK
7261
7262         * gtk/gtkhruler.h: Add comment that it will move out of GTK
7263
7264         * gtk/gtkruler.h: Add comment that it will move out of GTK
7265
7266         * gtk/gtkgamma.h: Add comment that it will move out of GTK
7267
7268         * gtk/gtkcurve.h: Add comment that it will move out of GTK
7269
7270 Fri Feb  2 17:16:09 2001  Owen Taylor  <otaylor@redhat.com>
7271
7272         * gdk/x11/gdkcolor-x11.c (gdk_colormap_sync): Make
7273         gdk_colormap_sync private since it was never exported
7274         in a header file.
7275
7276         * gdk/x11/gdkcolor-x11.c (gdk_colormap_new): Fill in
7277         colormap->colors[] for StaticGray, StaticColor colormaps.
7278
7279         * gdk/gdkpixbuf-drawable.c: Fix problems where image->bpp
7280         was being used as if it was image->bits_per_pixel.
7281
7282         * gdk/gdkimage.h, gdk/x11/gdkimage-x11.c: Save the bits-per-pixel
7283         for the image in the GdkImage structure since it isn't
7284         reconstructable, and we need it to handle packed types
7285
7286         * gdk/win32/gdkimage-win32.c: Set image->bits_per_pixel. (I'm making
7287         the assumption that on Win32 image->bits_per_pixel == image->depth,
7288         always.
7289
7290         * gdk/linux-fb/gdkimage-fb.c: Set image->bits_per_pixel.
7291
7292         * gdk/gdkrgb.c (gdk_rgb_select_conv): Exit with an informative
7293         warning message if no converter can be found. 
7294
7295 Fri Feb  2 15:09:51 2001  Owen Taylor  <otaylor@redhat.com>
7296
7297         * gtk/fnmatch.c (FOLD): Fix problem with passing signed
7298         chars to isupper() / tolower(). (#567)
7299
7300         * examples/packer/pack.c: Add GINT_TO_POINTER, GPOINTER_TO_INT
7301         to clear up 64-bit warnings. (#567)
7302
7303 Fri Feb  2 12:26:50 2001  Owen Taylor  <otaylor@redhat.com>
7304
7305         * gtk/gtkrc.c (gtk_rc_add_initial_default_files): Get rid of
7306         a bunch of g_strdup_printf("%s%s") in favor of g_strconcat().
7307
7308         * gtk/gtkrc.c Makefile.am: Use $(libdir), not $(exe_prefix),
7309         since some people set $(libdir) separately. (#1290, David Kaelbling)
7310
7311 Thu Feb  1 18:25:46 2001  Owen Taylor  <otaylor@redhat.com>
7312
7313         * gtk/gtkfilesel.c: If PATH_MAX and MAXPATHLEN are not
7314         defined, define MAXPATHLEN to 2048. (The Hurd doesn't have
7315         MAXPATHLEN, but the code here depends on a fixed value.)
7316         (#4524)
7317
7318 Wed Jan 31 22:01:04 2001  Owen Taylor  <otaylor@redhat.com>
7319
7320         * gtk/gtkhandlebox.c (gtk_handle_box_button_changed): Handle the case
7321         where child == NULL and handle_position == RIGHT or BOTTOM. (#8041g)
7322
7323 Wed Jan 31 21:20:39 2001  Owen Taylor  <otaylor@redhat.com>
7324
7325         * gtk/gtkctree.c (real_tree_move): If the node being moved isn't
7326         viewable there is no way that moving the node will cause the 
7327         focus row to become not viewable, so omit check on the visibility
7328         of new_sibling, which is irrelevant. (Fixes #8002, David Helder)
7329
7330 Wed Jan 31 20:38:17 2001  Owen Taylor  <otaylor@redhat.com>
7331
7332         * gtk/gtkentry.c (gtk_entry_commit_cb): Delete the current
7333         selection before inserting new text.
7334
7335 Wed Jan 31 18:49:33 2001  Owen Taylor  <otaylor@redhat.com>
7336
7337         * gtk/gtkoptionmenu.c (gtk_option_menu_item_state_changed_cb):
7338         Make the sensitivity of the reparented child track that of
7339         the original parent menu item. (#34218, David Hodson)
7340
7341         * gtk/gtkoptionmenu.c (gtk_option_menu_item_destroy_cb): Handle
7342         the case where the current item is destroyed properly.
7343
7344         * gtk/gtkoptionmenu.c: Some additional code cleanups and fix
7345         some edge cases with child-less menuitems.
7346         
7347 Wed Jan 31 17:16:13 2001  Owen Taylor  <otaylor@redhat.com>
7348
7349         * gtk/gtkcombo.c (gtk_combo_window_key_press): Make Return
7350         key pop down window. (#12074, Jon K Hellan)
7351
7352 Wed Jan 31 16:21:42 2001  Owen Taylor  <otaylor@redhat.com>
7353
7354         * gtk/gtklist.c (gtk_list_signal_item_toggle): Don't allow
7355         toggling of rows off in BROWSE or EXTENDED mode. (#12072, Jon K Hellan) 
7356         The solution here isn't perfect - you get an extraneous
7357         emission of "toggle", which could conceivably confuse an app,
7358         but better than the current situation. LXR search seems to
7359         indicate that no apps in GNOME CVS connect to "toggle".
7360
7361 Wed Jan 31 15:46:13 2001  Owen Taylor  <otaylor@redhat.com>
7362
7363         * gtk/Makefile.am (libgtkinclude_HEADERS): Move gtkcompat.h from
7364         gtk_public_h_sources to directly here to avoid warning when
7365         building srcdir != builddir. (#9656)
7366
7367 Tue Jan 30 19:49:02 2001  Owen Taylor  <otaylor@redhat.com>
7368
7369         * gtk/gtkrange.c: Patch from Kipp Hickman to make the event
7370         handlers in gtkrange.c return the proper values (TRUE == handled)
7371         (#10316).
7372
7373         This is just the tip of the iceberg, but gtkrange.c is the
7374         most common place where the propagation is problematical,
7375         and also a place where it is almost certainly safe to change
7376         this in the stable branch.
7377
7378         (You don't want right click popups on a range control or anything...)
7379
7380 Tue Jan 30 18:57:59 2001  Owen Taylor  <otaylor@redhat.com>
7381
7382         * gtk/gtktext.c (clear_focus_area): We need to clear the focus
7383         area on focus out, even if a background pixmap isn't set.
7384         (#13941)
7385         
7386 Tue Jan 30 18:24:10 2001  Owen Taylor  <otaylor@redhat.com>
7387
7388         * gtk/gtknotebook.c (gtk_notebook_set_shape): Fix from Sean Cunningham
7389         to deal with setting the shape properly when scrolling arrows are
7390         turned on, but not visible because there is sufficient space.
7391         (#13432)
7392
7393 Tue Jan 30 16:39:25 2001  Owen Taylor  <otaylor@redhat.com>
7394
7395         * gtk/gtkitemfactory.c (gtk_item_factory_delete_item): For menu
7396         items with submenus, destroy the item along with the submenu.
7397         (#7841, Brian Masney(?)) Also, handle paths of the form '<foo>/abcd...' 
7398         properly.
7399
7400         * gtk/testgtk.c (menu_items): Add a dummy branch that we delete
7401         later.
7402
7403 Tue Jan 30 15:51:25 2001  Owen Taylor  <otaylor@redhat.com>
7404
7405         * gtk/gtkwindow.c (gtk_window_real_set_focus): Fix a problem where
7406         the focus widget sometimes wasn't drawn with the default if there
7407         was no default widget.
7408
7409         * gtk/gtkstyle.c (gtk_style_real_unrealize): free colors,
7410         unreference pixmaps. 
7411
7412         * gtk/gtkstyle.c (gtk_style_realize): Reference colormap
7413         for some extra safety.
7414
7415 Mon Jan 29 19:00:01 2001  Owen Taylor  <otaylor@redhat.com>
7416
7417         * gtk/gtk{ctree.c,clist.c} (set_cell_contents): Handle setting
7418         the text of a cell to the old pointer value better, by
7419         copying the new text before freeing the old text. Some code
7420         cleanup. (#8079, Karl Nelson)
7421
7422 Mon Jan 29 16:50:19 2001  Owen Taylor  <otaylor@redhat.com>
7423
7424         * gtk/gtklabel.[ch] gtk/gtkframe.[ch]: Make gtk_label_get_text()
7425         gtk_frame_get_label() non strdup'ing, and G_CONST_RETURN.
7426
7427 Mon Jan 29 15:22:51 2001  Owen Taylor  <otaylor@redhat.com>
7428
7429         * gtk/gtkmenu.c (gtk_menu_remove): When removing an
7430         item from a menu, check to see if it matches 
7431         menu->old_active_menu_item, and if so, unref and clear
7432         old_active_menu_item (Patch from Pavel Cisler)
7433
7434         * gtk/gtkmenushell.c (gtk_menu_shell_remove): Unset 
7435         menu_shell->active_menu_item, if it is the child being
7436         removed. (Patch based on that of Gene Ragan, #50337)
7437
7438 2001-01-31  Alexander Larsson  <alla@lysator.liu.se>
7439
7440         * gdk/linux-fb/gdkselection-fb.c: 
7441         * gdk/linux-fb/gdkcolor-fb.c: 
7442         * gdk/linux-fb/gdkdrawable-fb2.c: 
7443         * gdk/linux-fb/gdkfont-fb.c: 
7444         * gdk/linux-fb/gdkim-fb.c: 
7445         * gdk/linux-fb/gdkinput.c: 
7446         * gdk/linux-fb/gdkkeyboard-fb.c: 
7447         * gdk/linux-fb/gdkmain-fb.c: 
7448         * gdk/linux-fb/gdkrender-fb.c: 
7449         A bunch of whitespace cleanup.
7450         
7451 2001-01-30  Havoc Pennington  <hp@pobox.com>
7452
7453         * gtk/gtktreeitem.h, gtk/gtktree.h, gtk/gtktext.h: bracket in 
7454         #ifdef GTK_ENABLE_BROKEN.
7455
7456         * gtk/gtktreeitem.c, gtk/gtktree.c, gtk/gtktext.c: #define
7457         GTK_ENABLE_BROKEN just before including the broken headers.
7458         
7459         * gtk/gtktypeutils.c: #define GTK_ENABLE_BROKEN, so we can get the
7460         deprecated types registered.
7461
7462         * gtk/testgtk.c, gtk/testselection.c: #define GTK_ENABLE_BROKEN,
7463         we have to test the broken stuff.
7464
7465         * docs/Changes-2.0.txt: explain GTK_ENABLE_BROKEN
7466         
7467 2001-01-30  Havoc Pennington  <hp@redhat.com>
7468
7469         * gtk/gtkliststore.c (gtk_list_store_insert_before): fix bug in
7470         here where prev pointer was set to the wrong thing
7471
7472         * gtk/gtktreemodel.c (gtk_tree_path_is_ancestor): new function
7473         (gtk_tree_path_is_descendant): new function
7474
7475         * gtk/gtkliststore.c (gtk_list_store_iter_n_children): return
7476         cached length
7477         (gtk_list_store_get_iter): don't modify iter if we can't get the
7478         path.
7479
7480         * gtk/gtkliststore.h (struct _GtkListStore): cache the length
7481         
7482         * gtk/gtktreednd.h: add virtual function row_drop_possible() to
7483         GtkTreeDragDest
7484
7485         * gtk/gtktreestore.c (copy_node_data): fix varargs type error that
7486         was causing segfault
7487
7488         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_copy): set next
7489         pointer to NULL
7490
7491         * gtk/gtktreestore.c (gtk_tree_store_append): fix memleak
7492
7493         * gtk/gtkliststore.c (gtk_list_store_iter_next): don't modify iter
7494         on returning FALSE
7495         (gtk_list_store_iter_children): ditto
7496         (gtk_list_store_iter_nth_child): ditto
7497         (gtk_list_store_iter_nth_child): ditto
7498         (gtk_list_store_iter_parent): ditto
7499
7500         * gtk/gtktreestore.c (gtk_tree_store_get_path): g_return_if_fail
7501         on iter->user_data != NULL instead of silently accepting it.
7502         (gtk_tree_store_iter_next): ditto. Also, don't modify iter unless
7503         we are returning TRUE.
7504         (gtk_tree_store_iter_children): ditto
7505         (gtk_tree_store_iter_nth_child): ditto
7506         (gtk_tree_store_iter_parent): ditto
7507         (gtk_tree_store_insert): remove handling of parent->user_data ==
7508         NULL, replace with parent == NULL       
7509
7510         * gtk/gtktreemodel.c (inserted_callback): put some fixes in here,
7511         and a comment explaining things
7512
7513         * gtk/gtktreestore.c: add GtkTreeDragSource/GtkTreeDragDest
7514         interface support to GtkTreeStore.
7515
7516         * gtk/gtktreemodel.c (gtk_tree_path_prev): didn't properly return
7517         FALSE if no prev, fix
7518
7519         * gtk/gtktreeview.c (set_source_row): use a row reference
7520         (set_dest_row): use a row reference
7521
7522 Sat Jan 27 15:52:02 2001  Jonathan Blandford  <jrb@redhat.com>
7523
7524         * gtk/gtktreeselection.c (gtk_tree_selection_unselect_iter): Fix
7525         stupid typo pointed out by Kristian Rietveld <kristian@planet.nl>.
7526         (gtk_tree_selection_select_iter): The same as above.
7527
7528 2001-01-26  Havoc Pennington  <hp@redhat.com>
7529
7530         * gtk/gtktreemodel.c, gtk/gtktreemodel.h: add GtkTreeRowReference
7531         which holds a handle to a specific row (particular set of values
7532         in the model, i.e. pointer-identity row).
7533
7534         * gtk/gtktreeview.c, gtk/gtktreeprivate.h, gtk/gtktreeselection.c:
7535         use GtkTreeRowReference for anchor, cursor, and drag_dest_row.
7536         Still need to use it for the src/dest row saved on the drag context.
7537
7538 2001-01-26  Havoc Pennington  <hp@redhat.com>
7539
7540         * gtk/gtktextlayout.c (convert_color): adapt to handle PangoColor
7541
7542         * gtk/gtktreeview.c (gtk_tree_view_widget_to_tree_coords): fix to
7543         not offset by TREE_VIEW_HEADER_HEIGHT
7544         (gtk_tree_view_tree_to_widget_coords): fix to not offset by
7545         TREE_VIEW_HEADER_HEIGHT
7546
7547         * configure.in (included_loaders): for me, --with-included-loaders
7548         generates the error "the specified loader yes does not exist",
7549         i.e. the arg defaults to "yes", so change test for value ""
7550         to test for value "yes", and include all loaders in that case.
7551
7552         * gtk/gtkrbtree.c (_gtk_rbtree_get_depth): new function
7553
7554         * gtk/gtktreeview.c (gtk_tree_view_get_cell_rect): fix to properly
7555         handle TREE_VIEW_VERTICAL_SEPARATOR
7556         (gtk_tree_view_bin_expose): fix to consider the row offset as
7557         pointing halfway into vertical separator.       
7558         (gtk_tree_view_draw_node_focus_rect): ditto
7559
7560         * gtk/gtkdebug.h, gtk/gtkmain.c (gtk_init_check): Add
7561         --gtk-debug=updates, which causes gdk_window_set_debug_updates
7562         (TRUE) to be called.
7563
7564         * gdk/gdkwindow.c (gdk_window_set_debug_updates): Allow enabling a
7565         debug mode where the invalid region is colored in on invalidate,
7566         so you can see the flicker and know whether your redraw code is 
7567         doing a good job.
7568
7569         * gtk/gtktreeview.c (gtk_tree_view_queue_draw_node): Work in 
7570         tree window coordinates (clip rect is in tree window coords)
7571
7572         * gtk/Makefile.am: add gtktreednd.[hc]
7573
7574         * gtk/gtkliststore.c: implement gtktreednd interfaces.
7575
7576         * gtk/gtktreednd.c, gtk/gtktreednd.h: New interface to support
7577         drag-and-drop data operations on a model (so we can set up tree
7578         drag-and-drop automatically)
7579
7580         * gtk/testgtk.c: Add a window to change sensitivity in the
7581         GtkLabel test; add a way to change the entry frame in GtkEntry
7582         test
7583
7584         * gtk/gtkentry.c (gtk_entry_set_has_frame): 
7585         (gtk_entry_get_has_frame): new functions to remove the frame
7586         around an entry
7587         (gtk_entry_size_request): shrink requisition if no frame
7588         (gtk_entry_draw_focus): don't draw frame if no frame
7589
7590         * gtk/gtkstyle.c (gtk_default_draw_check): draw custom look for
7591         checks inside a cell renderer
7592         (gtk_default_draw_option): ditto for options
7593
7594         * gtk/gtktreeviewcolumn.c (update_button_contents): add/remove
7595         children from the alignment, not the button
7596         (gtk_tree_view_column_init): ref/sink the column, to emulate
7597         GObject refcounting.
7598
7599         * gtk/gtkcellrenderer.c (gtk_cell_renderer_init): ref/sink
7600         
7601         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
7602         Use theme functions to draw the toggles 
7603
7604         * gdk/gdkpango.c (gdk_pango_get_gc): use GdkRGB to alloc colors
7605
7606         * gdk/gdkpango.h, gdk/gdkpango.c: Add GdkPangoAttrStipple and
7607         GdkPangoAttrEmbossed to use in rendering insensitive text
7608
7609         * gdk/gdkpango.c (gdk_draw_layout_line): render new properties
7610
7611         * gtk/gtkstyle.c (gtk_default_draw_layout): handle sensitivity
7612         using new GDK features
7613         
7614 2001-01-24  Alexander Larsson  <alexl@redhat.com>
7615
7616         * gtk/gtkimage.c:
7617         Splitted gtk_image_clear into gtk_image_clear() and
7618         gtk_image_reset(). Call gtk_image_clear() in ::destroy
7619         to avoid leaks.
7620
7621         * gtk/gtklabel.c (set_markup):
7622         Don't leak text.
7623
7624         * gtk/gtktextlayout.c:
7625         Always free display->shaped_objects.
7626
7627         * gtk/testgtk.c (create_clist):
7628         Don't leak custom style.
7629
7630 2001-01-23  Alexander Larsson  <alexl@redhat.com>
7631
7632         * gtk/gtkcolorsel.c (grab_color_at_mouse):
7633         Don't leak image. Simplify using gdk_colormap_query_color().
7634         (gtk_color_selection_init): Don't leak dropper_pixmap and mask.
7635
7636         * linux-fb/gdkcolor-fb.c:
7637         Implemented gdk_colormap_query_color.
7638
7639 2001-01-23  Alexander Larsson  <alexl@redhat.com>
7640
7641         * linux-fb/gdkcursor-fb.c:
7642         Don't leak built-in cursors.
7643
7644         * linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_polygon):
7645         Don't leak tmp_points.
7646
7647         * linux-fb/gdkfont-fb.c (gdk_font_from_description):
7648         Don't modify desc. Don't leak font if the PangoFont
7649         isn't found.
7650         
7651         * linux-fb/gdkgc-fb.c (gdk_fb_gc_finalize):
7652         Free dash_list.
7653
7654         * linux-fb/gdkkeyboard-fb.c (gdk_fb_handle_key):
7655         Don't leak string.
7656         
7657 2001-01-20  Havoc Pennington  <hp@pobox.com>
7658
7659         * gtk/gtktexttag.h (enum GtkWrapMode): rename member fields
7660         from GTK_WRAPMODE_WORD to GTK_WRAP_WORD, etc., seems nicer to 
7661         me, matches Pango
7662
7663 2001-01-22  Havoc Pennington  <hp@redhat.com>
7664
7665         * demos/testanimation.c: fix to reflect gdk-pixbuf changes
7666
7667         * demos/testpixbuf.c: fix to reflect gdk-pixbuf changes
7668
7669         * gtk/gdk-pixbuf-loader.c, gtk/gdk-pixbuf-loader.h: 
7670         Remove, move back to gdk-pixbuf
7671
7672         * gtk/gtktextiter.c, gtk/gtktextiter.h: add sentence equivalents
7673         to all the word functions
7674
7675         * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): return
7676         before doing anything on NULL layout or if we don't have the focus
7677
7678         * gtk/testtext.c (fill_example_buffer): "justification"
7679
7680         * gtk/gtktexttag.h, gtk/gtktexttag.c: change the tag attribute
7681         to be called "justification" not "justify"
7682
7683         * demos/gtk-demo/textview.c (create_tags): "justification"
7684         
7685         * gtk/gtktextlayout.c (set_para_values): Handle char-wise wrapping
7686
7687 2001-01-22  Alexander Larsson  <alexl@redhat.com>
7688
7689         * gdk/gdkwindow.c (gdk_window_invalidate_region):
7690         Don't leak visible_region. Use visible_region instead of region.
7691         
7692         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
7693         Don't do extra gdk_drawable_ref(). This is not X.
7694         (gdk_fb_window_find_focus, gdk_fb_change_focus): make sure
7695         gdk_fb_focused_window is ref:ed.
7696         (gdk_fb_window_send_crossing_events): Watch out for destroyed
7697         windows.
7698
7699 2001-01-22  Alexander Larsson  <alexl@redhat.com>
7700
7701         * gtk/gtkwindow-decorate.c (gtk_decorated_window_realize):
7702         Don't leak the PangoFontDescriptor.
7703
7704 Sun Jan 21 09:58:00 2001  Jonathan Blandford  <jrb@redhat.com>
7705
7706         * gtk/gtktreeview.c (gtk_tree_view_scroll_to_point): Make fail
7707         when not realized.
7708         (gtk_tree_view_scroll_to_cell): Make work when not realized.
7709         (gtk_tree_view_realize): add scroll_to support
7710         (gtk_tree_view_finalize): add a finalize method.  Populate.
7711         (gtk_tree_view_insert_column): ref and sink the column.
7712         (gtk_tree_view_append_column): ref and sink the column.
7713         (gtk_tree_view_queue_draw_node): New function to handle redrawing
7714         individual nodes.  Should make the code much more efficient, if
7715         actually used.
7716
7717 2001-01-19  Havoc Pennington  <hp@redhat.com>
7718
7719         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
7720         byte_offset variable was being used to mean both "offset into
7721         layout" and "offset into buffer line" which was no longer true
7722         with addition of preedit string; fix
7723
7724 2001-01-19  Havoc Pennington  <hp@redhat.com>
7725
7726         * demos/gtk-demo/main.c (button_press_event_cb): sync to tree changes
7727
7728         * gtk/gtkrbtree.c (_gtk_rbtree_node_find_offset): fix this
7729         function
7730
7731         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_widget):
7732         implement
7733
7734         * gtk/gtktreeview.c (gtk_tree_view_move_to): rename
7735         scroll_to_cell, matches TextView scroll functions better
7736         (gtk_tree_view_tree_to_widget_coords): new function
7737         (gtk_tree_view_widget_to_tree_coords): new function
7738         (gtk_tree_view_get_visible_rect): new function
7739         (gtk_tree_view_get_path_at_pos): accept negative coordinates
7740         (gtk_tree_view_draw_node_focus_rect): new function moved from
7741         draw_focus, also, use width of bin_window as width of the focus
7742         rect
7743         (gtk_tree_view_expand_row): fix bug where it didn't recognize
7744         already-expanded rows
7745         (gtk_tree_view_get_cell_rect): new function
7746         (gtk_tree_view_get_path_at_pos): return the click position
7747         relative to the passed-in cell
7748         (gtk_tree_view_set_expander_column): new function
7749
7750         * configure.in: remove gtk-config-2.0 chmod
7751
7752         * gtk/gtktextview.c (gtk_text_view_drag_motion): small cleanups,
7753         and properly handle drags with targets we don't understand
7754         (gtk_text_view_drag_end): don't stop scrolling, the source isn't
7755         scrolling anyway
7756         (gtk_text_view_drag_drop): stop scrolling here though, and set the
7757         mark invisible
7758
7759         * gtk/gtkdnd.c (gtk_drag_dest_find_target): export as a public
7760         function
7761         (gtk_drag_dest_get_target_list): new function
7762         (gtk_drag_dest_set_target_list): new function
7763         
7764         * gtk/gtktreeview.c: Add a bunch of drag-and-drop implementation
7765
7766         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): add fields
7767         related to drag-and-drop
7768
7769 2001-01-19  Alexander Larsson  <alexl@redhat.com>
7770
7771         * gdk/linux-fb/gdkprivate-fb.h:
7772         Define EMULATE_GDKFONT.
7773         Add extra pango_font stuff to GfkFontPrivate.
7774         
7775         * gdk/linux-fb/gdkdrawable-fb2.c:
7776         * gdk/linux-fb/gdkfont-fb.c:
7777         If EMULATE_GDKFONT defined, implement a slow lame GdkFont
7778         emulation using PangoFont.
7779
7780 2001-01-17  Havoc Pennington  <hp@pobox.com>
7781
7782         * gtk/gtkprogressbar.c, gtk/gtkprogressbar.h: Add "getters" for
7783         all the non-deprecated set_foo functions. Added missing object
7784         properties, and added g_object_notify() to setters. 
7785         Wrote docs.
7786         
7787 2001-01-18  Tor Lillqvist  <tml@iki.fi>
7788
7789         * gtk/gtkmain.c
7790         * gtk/gtkrc.c: (Win32) Use the new
7791         g_win32_get_package_installation_(sub)directory() functions.
7792
7793         * config.h.win32.in: New file.
7794         
7795         * config.h.win32: Removed.
7796
7797         * configure.in: Output config.h.win32.
7798
7799         * Makefile.am: Add it to EXTRA_DIST.
7800
7801         * gtk/gtk.def: Update.
7802
7803 Wed Jan 17 16:22:54 2001  Owen Taylor  <otaylor@redhat.com>
7804
7805         * gtk/gtklabel.c (gtk_label_size_request): Set the
7806         attributes onto the PangoLayout even if they are newly
7807         created from label->pattern.
7808
7809 Tue Jan  9 11:20:48 2001  Owen Taylor  <otaylor@redhat.com>
7810
7811         * gdk/x11/gdkdnd-x11.c: Remove unused variable.
7812
7813         * gtk/gtkdnd.c: Encapsulate storing and retrieving info
7814         structures in functions. Fixes bug where gtk_dataset_*
7815         was accidentally still being used in one place, causing
7816         every dest side event to be treated independently.
7817
7818         * gtk/gtkdnd.c: Remove last vestages of handling
7819         ::draw (fixes warning)
7820         
7821         * gtk/gtkentry.[ch]: Add drag and drop support.
7822
7823         * gtk/gtkdnd.[ch] gtk/gtktextview.c gtk/gtkentry.c: Add
7824         new function gtk_check_drag_threshhold() for checking
7825         to check if (dx,dy) has exceeded the threshhold for starting
7826         a drag and use it everywhere.
7827
7828 Mon Jan  8 11:58:05 2001  Owen Taylor  <otaylor@redhat.com>
7829
7830         * gtk+-2.0.pc.in gdk-pixbuf-2.0.pc.in (Cflags): Remove -I${includedir},
7831         add -I{includedir}/gtk-2.0.
7832
7833         * gtk/gtktreeview.[ch] gtktreemodelsort.[ch] gtknotebook.c
7834         gdk/gdk-pixbuf.h: Doc fixups.
7835         
7836         * gtk/gtkobject.h: Remove trailing , from enum
7837
7838 2001-01-17 Alexander Larsson <alexl@redhat.com> 
7839
7840         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_shadow_fb_draw_arc):
7841         Doh! Mixed up x and y.
7842
7843         * gdk/linux-fb/gdkglobals-fb.c:
7844         Removed gdk_fb_pointer_grab_window_events,
7845         added _gdk_fb_pointer_grab_owner_events and
7846         _gdk_fb_keyboard_grab_owner_events.
7847
7848         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab):
7849         Set all button mask if GDK_BUTTON_MOTION_MASK set. Send
7850         crossing events before grabbing. Set _gdk_fb_pointer_grab_owner_events.
7851         (gdk_fb_pointer_ungrab): Unset _gdk_fb_pointer_grab_owner_events
7852         Send crossing events after ungrab finished.
7853         (gdk_keyboard_grab): Set ..._owner_events
7854         (type_masks): Move out of function.
7855         (gdk_fb_other_event_window, gdk_fb_pointer_event_window,
7856         gdk_fb_keyboard_event_window): New functions, return the
7857         window an event should be targeted at. Handles grabs and
7858         event propagation. Can return NULL.
7859         (gdk_event_make): Remove event_mask checking. Now always
7860         returns an event.
7861                 
7862         * gdk/linux-fb/gdkkeyboard-fb.c:
7863         * gdk/linux-fb/gdkproperty-fb.c:
7864         * gdk/linux-fb/gdkselection-fb.c:
7865         Use new event_window/gdk_event_make() behaviour.
7866         
7867         * gdk/linux-fb/gdkmouse-fb.c:
7868         Use new event_window/gdk_event_make() behaviour.
7869         Only send motion events if in the same window.
7870         If grabbed, use cursor from window if sibling of grabbed
7871         window, and cursor from grabbed window otherwise.
7872
7873         * gdk/linux-fb/gdkprivate-fb.h:
7874         Update gdk_fb_window_send_crossing_events, gdk_event_make
7875         and grab varaible declarations. Add gdk_fb_*_event_window().
7876
7877         * gdk/linux-fb/gdkwindow-fb.c:
7878         Use new event_window/gdk_event_make() behaviour.
7879         Keep correct track of focus window.
7880         (gdk_window_set_events): Set all specific button motion masks
7881         if GDK_BUTTON_MOTION_MASK set.
7882
7883         * gtk/gtkdnd.c (gtk_drag_update):
7884         Free info->last_event if gdk_drag_motion returned FALSE.
7885
7886 2001-01-16  Tor Lillqvist  <tml@iki.fi>
7887
7888         * gdk/win32/gdkwindow-win32.c (gdk_window_show, gdk_window_hide):
7889         Eliminate redraws when input-only windows are shown or
7890         hidden. Thanks to jpe@archaeopteryx.com.
7891
7892 Tue Jan 16 13:13:13 GMT 2001  Tony Gale <gale@gtk.org>
7893
7894         * docs/faq/gtk-faq.sgml: FAQ update:
7895           - Update to bugzilla
7896           - Add GTK+ and security/SUID/SGID
7897           - Add DnD question
7898
7899 2001-01-16  Alexander Larsson  <alla@lysator.liu.se>
7900
7901         * gdk/linux-fb/gdkdnd-fb.c:
7902         Some cleanups.
7903         
7904 2001-01-15  Havoc Pennington  <hp@pobox.com>
7905
7906         * tests/testtreeview.c: add test stuff for CellRendererToggle
7907
7908         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_get_model): add this
7909         accessor
7910
7911         * gtk/gtkcellrenderertoggle.c: distinguish different event types,
7912         only toggle on button press (would do release like GtkButton, but
7913         we'd need implicit grab code for treeview cells)
7914
7915 2001-01-16  Tor Lillqvist  <tml@iki.fi>
7916
7917         * gdk/win32/gdkvisual-win32.c: Include <stdlib.h> for getenv().
7918
7919         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Don't use
7920         GDK_COLORMAP_PRIVATE_DATA on a potentially NULL GdkColormap.
7921
7922         * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Adapt calls
7923         to g_{locale,filename}_{to,from}_utf8 to match current API.
7924
7925         * gtk/makefile.msc.in (gtk_OBJECTS)
7926         * gtk/makefile.mingw.in (gtk_OBJECTS): Add gtkwindow-decorate.
7927
7928         * gtk/gtk.def: Update.
7929
7930 2001-01-15  Tor Lillqvist  <tml@iki.fi>
7931
7932         * gdk/win32/gdkevents-win32.c (synthesize_crossing_events): New
7933         implementaion that more closely mimics the events that an X server
7934         would generate. Especially, properly generate GDK_NOTIFY_VIRTUAL and
7935         GDK_NOTIFY_NONLINEAR_VIRTUAL crossing events. This makes buttons
7936         with nested preview widgets, for instance, more responsive when
7937         you move the mouse quickly into them.
7938         (find_window_for_pointer_event): Make it actually compile.
7939         (gdk_event_translate): Set send_event to the value of
7940         InSendMessage (). This doesn't really mean the same as X11's
7941         send_event flag, but is close enough, says jpe@archaeopteryx.com
7942
7943 2001-01-15  Alexander Larsson  <alexl@redhat.com>
7944
7945         * gdk/linux-fb/gdkdnd-fb.c:
7946         Implemented drag and drop.
7947         Seems to be mostly working. I sometimes get an assert from gtkdnd.c:2664
7948         when it tries to free and then copy the same event (info->last_event).
7949         I am not sure about why this happens, but will continue looking.
7950
7951 2001-01-15  Alexander Larsson  <alexl@redhat.com>
7952
7953         * gdk/linux-fb/gdkwindow-fb.c:
7954         Use gdk_window_invalidate_rect instead of
7955         gdk_window_invalidate_rect_clear to minimise flashing.
7956         When hiding windows you need to clear the root window though.
7957
7958 2001-01-15  Alexander Larsson  <alexl@redhat.com>
7959
7960         * gdk/linux-fb/gdkdrawable-fb2.c:
7961         For optization, add an full_shapes argument to gdk_fb_clip_region.
7962         If this is false, only the cliprects of the shapes are used.
7963
7964         * gdk/linux-fb/gdkprivate-fb.h:
7965         Export gdk_fb_window_peek_shape.
7966         Add full_shapes to gdk_fb_clip_region.
7967
7968         * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
7969         When moving a window, don't clear everything under the it, just the
7970         root window. Makes stuff faster and flash less.
7971         (gdk_window_get_pointer): Correctly handle offseted shapes, due to
7972         USE_CHILD_SHAPE. (gdk_fb_window_peek_shape): Return the correct
7973         offset of the shape.
7974         
7975
7976 2001-01-12  Havoc Pennington  <hp@redhat.com>
7977
7978         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): offset the 
7979         current invalid region, fixes redraw bug while scrolling the 
7980         text widget
7981
7982         * gtk/gtktextview.c, gtk/gtktextview.h:
7983         Rearrange the scrolling/validation/etc. code in a major way, 
7984         so it seems to make sense to me. Probably isn't genuinely that
7985         much better, but...
7986
7987         * gtk/gtktexttag.c (set_fg_color): fix name of property used for
7988         notifies
7989
7990         * gtk/gtktextmark.c (gtk_text_mark_get_left_gravity): new function
7991
7992 2001-01-12  Alexander Larsson  <alla@lysator.liu.se>
7993
7994         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_set_rotation):
7995         Hide mouse pointer while rotation. Show it afterwards.
7996
7997 2001-01-12  Alexander Larsson  <alexl@redhat.com>
7998
7999         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_clip_region): Take shaped
8000         windows in consideration when generating clip region.
8001
8002         * gdk/linux-fb/gdkfb.h:
8003         Huge HACK. Added GDK_FB_USE_CHILD_SHAPE.
8004
8005         * gdk/linux-fb/gdkprivate-fb.h:
8006         Add shape to GdkWindowFBDatat.
8007         exported gdk_fb_window_get_abs_shape().
8008         removed gdk_fb_draw_lines declaration.
8009
8010         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_impl_fb_init):
8011         Init shape to NULL. (gdk_fb_window_send_crossing_events): Don't
8012         send focus changes when there is a grabbed window.
8013         (gdk_window_get_pointer): Handle shaped windows.
8014         (gdk_fb_region_create_from_bitmap): Convert bitmap to region.
8015         (gdk_fb_window_peek_shape): Returns the shape for a window,
8016         handles GDK_FB_USE_CHILD_SHAPE.
8017         (gdk_fb_window_get_abs_shape): Returns the shape of the window,
8018         offseted to absolute positions. Handles GDK_FB_USE_CHILD_SHAPE.
8019         (gdk_window_shape_combine_mask): Implement.
8020
8021         * gtk/gtkwindow-decorate.c:
8022         HACK! Set GDK_FB_USE_CHILD_SHAPE on window->frame to make sure
8023         setting the shape of a window makes the window transparent.
8024
8025 2001-01-11  Havoc Pennington  <hp@redhat.com>
8026
8027         * gtk/gtktreemodelsimple.h: Oops, broke some macros
8028
8029 2001-01-10  Havoc Pennington  <hp@redhat.com>
8030
8031         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clear_attributes):
8032         add this function, bug 40251
8033
8034         * gtk/gtktreemodelsimple.h (GTK_TYPE_TREE_MODEL_SIMPLE): fix name
8035         of type macro   
8036
8037 2001-01-11  Alexander Larsson  <alexl@redhat.com>
8038
8039         * acconfig.h:
8040         Added ENABLE_SHADOW_FB
8041
8042         * configure.in:
8043         Added --disable-shadowfb
8044
8045         * gdk/linux-fb/gdkcursor-fb.c:
8046         Update shadowfb when updating cursor
8047
8048         * gdk/linux-fb/gdkdrawable-fb2.c:
8049         Added wrappers for shadowfb that calls  the normal drawable
8050         methods, but calls gdk_shadow_fb_update(bounding box) when
8051         GdkWindows are drawed to.
8052         Moved gdk_draw_glyphs implementation to _gdk_draw_glyphs
8053         which also returns the bounding box.
8054
8055         * gdk/linux-fb/gdkfb.h:
8056         Added GdkFBAngle type and gdk_fb_set_rotation declaration.
8057
8058         * gdk/linux-fb/gdkgeometry-fb.c:
8059         Update shadowfb when scrolling window.
8060
8061         * gdk/linux-fb/gdkglobals-fb.c:
8062         Add _gdk_fb_screen_angle.
8063         
8064         * gdk/linux-fb/gdkkeyboard-fb.c:
8065         Test code for screen rotation. Shift-F2 in the xlate driver
8066         rotates the screen.
8067
8068         * gdk/linux-fb/gdkmain-fb.c:
8069         Handle shadowfb. Add gdk_fb_set_rotation(). Remove CM and RP.
8070
8071         * gdk/linux-fb/gdkmouse-fb.c:
8072         Use fb_width/height instead of modeinfo.xres/yres.
8073
8074         * gdk/linux-fb/gdkprivate-fb.h:
8075         Added fb_men, fb_width, fb_height & fb_stride. When using
8076         shadow fb these can differ from the framebuffer stuff.
8077         Declarations for gdk_shadow_fb_update, gdk_shadow_fb_init,
8078         gdk_shadow_fb_stop_updates, gdk_fb_recompute_all,
8079         _gdk_fb_screen_angle. Removed CM, RP.
8080
8081         * gdk/linux-fb/gdkrender-fb.c:
8082         Added code for shadowfb handling and screen rotation using
8083         shadowfb.
8084
8085         * gdk/linux-fb/gdkwindow-fb.c:
8086         Use fb_mem, fb_stride, fb_width, fb_height.
8087         Added recompute_rowstride to reset the rowstride of all windows.
8088         Added gdk_fb_recompute_all() which recomputes rootwindow size,
8089         window abs positions and window rowstrides. Usefull when the
8090         rotation has changed.
8091
8092 Thu Jan 11 13:16:50 GMT 2001  Tony Gale <gale@gtk.org>
8093
8094         * docs/faq/gtk-faq.sgml: update to make web site updating easier
8095
8096 2001-01-10  Havoc Pennington  <hp@redhat.com>
8097
8098         * gtk/gtktreestore.c (gtk_tree_store_insert_before): handle case
8099         where sibling == iter
8100         (gtk_tree_store_insert_after): handle sibling == iter
8101         (gtk_tree_store_prepend): remove stamp checks
8102         (gtk_tree_store_insert_before): ditto
8103         (gtk_tree_store_append): ditto
8104         (gtk_tree_store_get_path): ditto
8105         (gtk_tree_store_get_value): ditto
8106         (gtk_tree_store_iter_has_child): ditto
8107         (gtk_tree_store_iter_n_children): ditto
8108         (gtk_tree_store_iter_nth_child): ditto
8109         (gtk_tree_store_insert_after): ditto
8110         (gtk_tree_store_is_ancestor): ditto
8111         (gtk_tree_store_iter_depth): ditto
8112         (gtk_tree_store_insert_before): assert that sibling's parent is
8113         the same as the passed-in parent
8114         (gtk_tree_store_insert_after): assert that sibling's parent is
8115         the same as the passed-in parent
8116
8117         
8118         * gtk/gtktreemodel.c (gtk_tree_model_get_first): new convenience 
8119         function to get the first iterator in a model
8120         
8121         * gtk/gtktreestore.c (gtk_tree_store_get_root_iter): remove,
8122         conventionally the "root" in this sense is just NULL afaict.
8123
8124         * gtk/gtkliststore.c (gtk_list_store_insert_before): handle case
8125         where sibling == iter
8126         (gtk_list_store_insert_after): handle case where sibling == iter
8127
8128         * tests/testtreeview.c (run_automated_tests): fairly lame basic
8129         automated tests for ListStore, TreeStore
8130
8131         * gtk/gtkliststore.c (gtk_list_store_remove): update tail pointer
8132         (gtk_list_store_insert): update tail pointer, and fix it to work
8133         (gtk_list_store_insert_before): update tail pointer, and fix it to work
8134         (gtk_list_store_append): use tail to be faster
8135         (gtk_list_store_prepend): fix it, update tail pointer
8136         (gtk_list_store_insert_after): fix it, update tail pointer
8137
8138         * gtk/gtkliststore.h (struct _GtkListStore): add tail pointer for 
8139         the list
8140
8141 2001-01-09  Havoc Pennington  <hp@redhat.com>
8142
8143         * gtk/gtklabel.c (gtk_label_expose): don't draw if label->layout
8144         is NULL due to a pending resize
8145
8146         * gtk/gtktreeview.c (gtk_tree_view_check_dirty): don't set the
8147         column width to values less than 1
8148
8149         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_width): clamp
8150         width to be between min/max width, and still set the width 
8151         even if autosize is turned on, so the tree view can use this 
8152         function in order to autosize.
8153         (gtk_tree_view_column_init): set initial width to 1 not 0
8154
8155         * gtk/gtktreeview.c (gtk_tree_view_size_request_buttons): use
8156         setter function to modify column width, so we get notification
8157         (gtk_tree_view_insert_iter_height): ditto
8158         (gtk_tree_view_calc_size): ditto
8159         (gtk_tree_view_check_dirty): ditto
8160
8161         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_class_init): Add
8162         properties to change all the interesting attributes of the tree
8163         view column.
8164         (gtk_tree_view_column_set_header_clickable): rename set_clickable
8165         (gtk_tree_view_column_get_clickable): add
8166         (gtk_tree_view_column_set_cell_renderer): don't unset the current
8167         attributes; assume a cell renderer with equivalent object
8168         properties has been swapped in. Do g_object_notify().
8169         (gtk_tree_view_column_set_visible): g_object_notify
8170         (gtk_tree_view_column_get_sizing): rename from get_col_type
8171         (gtk_tree_view_column_set_sizing): g_object_notify
8172         (gtk_tree_view_column_set_width): add g_object_notify
8173         (gtk_tree_view_column_set_min_width): ditto
8174         (gtk_tree_view_column_set_max_width): ditto
8175         (gtk_tree_view_column_set_title): ditto
8176         (gtk_tree_view_column_set_clickable): ditto
8177         (gtk_tree_view_column_set_widget): ditto
8178         (gtk_tree_view_column_set_justification): ditto
8179
8180 2001-01-09  Havoc Pennington  <hp@redhat.com>
8181
8182         * gtk/gtktreeview.c (gtk_tree_view_check_dirty): handle case where
8183         there are no rows in the model
8184
8185         * gtk/gtkliststore.c (gtk_list_store_iter_children): if parent is
8186         NULL, then return the start of the list
8187
8188         * gtk/gtktreeview.c (gtk_tree_view_setup_model): don't build tree
8189         if we can't get any rows from an empty model 
8190
8191         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): remove
8192         extraneous * after function pointer typedef usage
8193
8194         * Makefile.am: don't specify full path to cp and rm
8195
8196         * gtk/gtkcellrenderertextpixbuf.c
8197         (gtk_cell_renderer_text_pixbuf_get_size): check width/height !=
8198         NULL before dereferencing, fixes a segfault that happened from
8199         time to time
8200
8201         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render):
8202         use gdk_pixbuf_render_to_drawable_alpha() to get alpha channel,
8203         and reindent the function
8204         (gtk_cell_renderer_pixbuf_get_size): indentation
8205
8206         * gtk/gtkdialog.c (gtk_dialog_run): destroy main loop only after
8207         we quit it
8208         (gtk_dialog_add_buttons_valist): add g_return_if_fail
8209         (gtk_dialog_set_default_response): New function, to set default
8210         button
8211         (gtk_dialog_set_response_sensitive): New function, to set 
8212         sensitivity of buttons
8213
8214         * gtk/gtkcellrendererpixbuf.c
8215         (gtk_cell_renderer_pixbuf_get_property): allow getting a NULL pixbuf
8216         (gtk_cell_renderer_pixbuf_set_property): allow setting a NULL pixbuf
8217
8218         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_to_value):
8219         handle any G_TYPE_OBJECT subclass, not just the base class, and 
8220         also boxed types.
8221         (_gtk_tree_data_list_value_to_node): ditto
8222
8223         * gtk/gtkrbtree.c: Run _gtk_rbtree_test at strategic points if 
8224         --gtk-debug=tree
8225
8226         * gtk/gtkmain.c: add GTK_DEBUG_TREE
8227
8228         * gtk/gtkdebug.h: add GTK_DEBUG_TREE
8229
8230 2001-01-09  Tor Lillqvist  <tml@iki.fi>
8231
8232         * gdk/win32/gdkevents-win32.c: Implement better mouse
8233         capturing. Do use SetCapture(). Thanks to jpe@archaeopteryx.com.
8234         (find_window_for_pointer_event): New function.
8235         (gdk_event_translate): Use it when handling mouse events.
8236
8237 2001-01-09  Alexander Larsson  <alla@lysator.liu.se>
8238
8239         * configure.in:
8240         Added --with-included-loaders option
8241
8242         * gdk-pixbuf/Makefile.am:
8243         * gdk-pixbuf/gdk-pixbuf-io.c:
8244         Add support for including selected gdk-pixbuf loaders only.
8245
8246         * gtk/gtkwindow.c (gtk_window_set_frame_dimensions,
8247         gtk_window_set_has_frame):
8248         Added inline documentation.
8249
8250         * gdk/x11/gdkwindow-x11.c (gdk_window_get_decorations):
8251         * docs/reference/gdk/tmpl/windows.sgml:
8252         Added inline documentation.
8253
8254 Mon Jan  8 14:42:06 2001  Jonathan Blandford  <jrb@redhat.com>
8255
8256         * gtk/gtktreeview.c (gtk_tree_view_realize_buttons): Skip
8257         realizing buttons that have already been realized.
8258
8259 Mon Jan  8 14:06:29 2001  Jonathan Blandford  <jrb@redhat.com>
8260
8261         * tests/testtreeview.c (main): Show menu items before adding to
8262         option menu.
8263
8264         * gtk/gtktreeview.c (gtk_tree_view_set_model): Keep the columns
8265         around if we kill them.
8266
8267         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
8268         Return if we pass in a NULL model.
8269
8270 2001-01-08  Havoc Pennington  <hp@redhat.com>
8271
8272         * tests/testtreeview.c: hack on this some
8273
8274         * gtk/gtktreestore.c (gtk_tree_store_setv): rename
8275         gtk_tree_store_set_valist, v is for arrays, valist for varargs
8276         list
8277         (gtk_tree_store_getv): rename gtk_tree_store_get_valist
8278
8279         * gtk/gtkliststore.h: Add varargs set() and get() convenience
8280         functions
8281
8282 2001-01-08  Alexander Larsson  <alexl@redhat.com>
8283
8284         * gtk/gtkwindow-decorate.[hc]:
8285         * gtk/Makefile.am:
8286         New files. Contains an implementation of a minimal WM for
8287         linux-fb.
8288
8289         * gtk/gtkwindow.h:
8290         Add the possibility for GtkWindows to specify a frame. This
8291         is used for the window decoration code, but could concievably
8292         be used for X programs too (xmms style windows).
8293         GtkWindow->frame is the toplevel window if the window is framed.
8294         The signal frame_event gets all events that are targeted to
8295         GtkWindow->frame.
8296         (_gtk_window_constrain_size): Exported for usage by gtkwindow-decorate.c.
8297         
8298         * gtk/gtkwindow.c:
8299         Implement gtk_window_set_has_frame and gtk_window_set_frame_dimensions.
8300         Call out to gtkwindow-decorate.c for WM support in linx-fb.
8301
8302 2001-01-08  Alexander Larsson  <alexl@redhat.com>
8303
8304         * docs/README.linux-fb:
8305         Correct filename ~/.pangoft2_aliases
8306
8307         * gdk/gdkwindow.h:
8308         Added new function gdk_window_get_decorations.
8309
8310         * gdk/linux-fb/gdkfb.h:
8311         Removed _gdk_window_get_decorations declaration.
8312         Renamed _gdk_window_set_child_handler to
8313         gdk_fb_window_set_child_handler.
8314
8315         * gdk/linux-fb/gdkwindow-fb.c:
8316         Renamed _gdk_window_set_child_handler to
8317         gdk_fb_window_set_child_handler.
8318
8319         * gdk/x11/gdkwindow-x11.c:
8320         New function gdk_window_get_mwm_hints().
8321         Implemented gdk_window_get_decorations.
8322
8323         * docs/reference/gdk/tmpl/windows.sgml:
8324         * docs/reference/gdk/gdk-sections.txt:
8325         Added gdk_window_get_decorations docs.
8326         
8327 2001-01-08  Alexander Larsson  <alla@lysator.liu.se>
8328
8329         * gdk/linux-fb/gdkwindow-fb.c (_gdk_fb_window_find_focus,
8330         gdk_fb_window_find_focus, gdk_fb_send_focus_change,
8331         gdk_fb_window_send_crossing_events):
8332         Possibly send focus events when the mouse moves from one
8333         window to another.
8334
8335 2001-01-07  Tor Lillqvist  <tml@iki.fi>
8336
8337         * gdk/win32/gdkwindow-win32.c (gdk_window_set_title,
8338         gdk_window_new): Adapt calls to g_{locale,filename}_{to,from}_utf8
8339         to match current API.
8340
8341         * gdk/win32/gdkvisual-win32.c (gdk_visual_init): If a secret
8342         environment variable is set, don't call g_error when on a
8343         palettized (PseudoColor) display. Some people want to use GTK+ 
8344         in 256-colour mode even though works only partially.
8345
8346         * gdk/gdk.def
8347         * gtk/gtk.def
8348         * gtk/makefile.mingw.in: Update.
8349
8350 2001-01-05  Havoc Pennington  <hp@redhat.com>
8351
8352         * tests/testtreeview.c: hack on this a bit
8353
8354         * gtk/gtktextlayout.c (gtk_text_layout_class_init):
8355         s/GTK_RUN_LAST/G_SIGNAL_RUN_LAST
8356
8357         * gtk/gtktreemodelsimple.h (GTK_IS_TREE_MODEL_SIMPLE_CLASS): 
8358         was spelled incorrectly
8359         (GTK_IS_TREE_MODEL_SIMPLE): ditto
8360
8361         * gtk/gtktreeview.c (gtk_tree_view_set_headers_clickable): rename
8362         from gtk_tree_view_set_headers_active   
8363
8364         * gtk/gtktexttag.c:
8365         (gtk_text_tag_get_property): handle PROP_DIRECTION
8366         (gtk_text_tag_set_property): g_object_notify when we toggle the _set
8367         properties, bug 40235
8368
8369         * gtk/gtktextiter.c (gtk_text_iter_forward_to_delimiters): rename
8370         forward_to_line_end
8371
8372 Fri Jan  5 16:16:29 2001  Owen Taylor  <otaylor@redhat.com>
8373
8374         * gtk/{gtkcalender.c,gtkfilesel.c,gtkimcontext.c},
8375         modules/input/gtkimcontextxim.c: Adapt to new prototypes
8376         for unicode,locale,filename conversion functions.
8377
8378 2001-01-05  Havoc Pennington  <hp@redhat.com>
8379
8380         * gtk/gtktextiter.c (gtk_text_iter_ends_line): this function was
8381         broken if called on the first position in the buffer.
8382
8383         * gtk/gtktextlayout.c (line_display_index_to_iter): fix
8384         forward_to_delimiters to be called only if we aren't already at
8385         the delimiters.
8386
8387 2001-01-05  Havoc Pennington  <hp@redhat.com>
8388
8389         * demos/gtk-demo/main.c (create_tree): Oops, that didn't link. Fix.
8390
8391 2001-01-05  Alexander Larsson  <alexl@redhat.com>
8392
8393         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_drawable_finalize): free
8394         colormap in here. Sync from X port.
8395         (gdk_fb_set_colormap): allow the colormap to be NULL if you like.
8396         Sync from X port.
8397         (gdk_fb_clip_region): Comment out g_warning about empty clip region.
8398         This happens now and then, and i don't think it is a bug.
8399         (gdk_fb_draw_polygon): Correctly add extra point if startpoint
8400         != endpoint.
8401         (gdk_fb_draw_lines): Don't draw dashed lines if line_style is
8402         GDK_LINE_SOLID.
8403
8404         * gdk/linux-fb/gdkfont-fb.c: Return bogus GdkFont that has
8405         some of the fields filled in at least.
8406
8407         * gdk/linux-fb/miwideline.c: The widths argument to miLineArcI, and
8408         miLineArcD is no more, remove it from the function definition.
8409
8410 2001-01-04  Havoc Pennington  <hp@redhat.com>
8411
8412         * gtk/gtktreeselection.c (gtk_tree_selection_get_tree_view): add
8413         this
8414
8415         * gtk/gtktreemodel.h (struct _GtkTreeIter): rename fields to
8416         user_data instead of tree_node
8417
8418         * gtk/gtktreeprivate.h (TREE_VIEW_COLUMN_WIDTH): rename from
8419         TREE_VIEW_COLUMN_SIZE
8420
8421         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): rename
8422         "size" field to "width" finishes bug 40061
8423
8424         * gtk/gtkcellrenderer.h: Use GtkCellRendererState instead of guint
8425         for bitfields, bug 40268
8426
8427 2001-01-04  Havoc Pennington  <hp@redhat.com>
8428
8429         Rename some stuff:
8430         
8431         s/gtk_tree_view_column_set_size/gtk_tree_view_column_set_width/g;
8432
8433         s/GtkModelSimple/GtkTreeModelSimple/g;
8434         s/GTK_MODEL_SIMPLE/GTK_TREE_MODEL_SIMPLE/g;
8435         s/gtk_model_simple/gtk_tree_model_simple/g;
8436         s/gtkmodelsimple/gtktreemodelsimple/g;
8437
8438         s/gtk_tree_view_column_set_header_active/gtk_tree_view_column_set_header_clickable/g;
8439
8440         s/GtkTreeViewColumnType/GtkTreeViewColumnSizing/g;
8441         s/column_set_col_type/column_set_sizing/g;
8442
8443         s/GtkTreeSelectionType/GtkTreeSelectionMode/g;
8444         s/gtk_tree_selection_set_type/gtk_tree_selection_set_mode/g;
8445
8446         s/GtkCellRendererType/GtkCellRendererState/g;
8447         
8448         * gtk/gtkcellrenderertoggle.c: remove _ macro, include gtkintl.h
8449         (gtk_cell_renderer_toggle_class_init): change "state" property to
8450         "active", to match GtkToggleButton
8451         (gtk_cell_renderer_toggle_get_active): new function, bug
8452         40269
8453         (gtk_cell_renderer_toggle_set_active): new function
8454         (gtk_cell_renderer_toggle_set_property): route changes to toggle
8455         state through gtk_cell_renderer_set_active
8456
8457 Thu Jan  4 15:46:18 2001  Jonathan Blandford  <jrb@redhat.com>
8458
8459         * gtk/gtkmodelsimple.c: Changed a bunch of boxed types to pointers
8460         temporarily until they work again.  Brought up to date with
8461         changes in the model.
8462         * gtk/gtkmodelsimple.h: Brought up to date with changes in the
8463         model.
8464
8465 2001-01-04  Havoc Pennington  <hp@redhat.com>
8466
8467         * gtk/gtktextlayout.c (line_display_index_to_iter): if index is
8468         equal to the line length, then position iterator before paragraph 
8469         separators. Fixes crash reported by Mikael Hermansson when
8470         pressing left arrow from the start of a line.   
8471
8472         * gtk/gtktextiter.c (iter_set_from_byte_offset): Add g_error
8473         about byte indexes off the end
8474         (iter_set_from_char_offset): add g_error about char offsets
8475         off the end
8476
8477 2001-01-03  Havoc Pennington  <hp@redhat.com>
8478
8479         * gtk/gtktextbtree.c: Adapt to uscore-ification of gtktextiterprivate
8480
8481         * gtk/gtktextdisplay.c (gtk_text_layout_draw): remove use 
8482         of private functions; remove inclusion of private headers.
8483
8484         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_at_line): Add this 
8485         function, so we don't need private functions in gtktextdisplay.c
8486
8487         * gtk/gtktextiterprivate.h: underscore-ification
8488
8489         * gtk/gtkwidget.c: Clean up a bunch of docs that said "INTERNAL"
8490         to instead say "only useful to implement widgets"
8491
8492         * gtk/gtkenums.h (GtkMovementStep): Rename GTK_MOVEMENT_CHARS,
8493         GTK_MOVEMENT_POSITIONS to GTK_MOVEMENT_LOGICAL_POSITIONS,
8494         GTK_MOVEMENT_VISUAL_POSITIONS. Resolves bug 40249.
8495
8496         * gdk/x11/gdkwindow-x11.c (gdk_window_impl_x11_set_colormap):
8497         This function was completely broken
8498
8499         * gtk/testtext.c (line_numbers_expose): use gtk_paint_layout
8500
8501         * gtk/gtkvscale.c (gtk_vscale_draw_value): use gtk_paint_layout
8502
8503         * gtk/gtkvruler.c (gtk_vruler_draw_ticks): use gtk_paint_layout
8504
8505         * gtk/gtklabel.c (gtk_label_expose): use gtk_paint_layout
8506
8507         * gtk/gtkhscale.c (gtk_hscale_draw_value): use gtk_paint_layout
8508
8509         * gtk/gtkhruler.c (gtk_hruler_draw_ticks): use gtk_paint_layout
8510
8511         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_render): use
8512         gtk_paint_layout
8513
8514         * gtk/gtkaccellabel.c (gtk_accel_label_expose_event): use
8515         gtk_paint_layout
8516
8517         * gtk/gtkstyle.h: Add draw/paint expander to draw tree expanders.
8518         Progress on bug 40103. Add draw_layout to draw a PangoLayout.
8519         (struct _GtkStyleClass): Remove draw_cross, draw_oval, draw_ramp,
8520         which were not implemented.     
8521
8522         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): Add
8523         insert_pixbuf signal. Rename delete_text to delete_range since it
8524         also deletes pixbufs and child anchors. This almost closes bug
8525         40245 (still need to deal with child anchors)
8526
8527         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Add
8528         insert_pixbuf, change signal names as appropriate, change types of
8529         signals taking marks/tags to have the specific type, not just
8530         G_TYPE_OBJECT
8531         
8532         * gtk/gtkmain.c (gtk_get_current_event_state): Add this function; 
8533         closes bug 40051
8534
8535         * gtk/gtkoptionmenu.c (gtk_option_menu_set_history): clean up
8536         unnecessary remove_contents() call
8537         (gtk_option_menu_class_init): add a "changed" signal, closes
8538         bug 40039
8539         (gtk_option_menu_update_contents): emit "changed" if the 
8540         active menu item changes
8541
8542         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done): fix bad
8543         cast to GtkObject, reported by Jonas Borgstrom
8544         (gdk_pixbuf_loader_finalize): don't close the loader on finalize;
8545         we can't do stuff with side effects in finalize. Instead, spew a
8546         warning if the loader isn't closed.
8547
8548         * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_finalize): free
8549         colormap in here, non-X ports probably need to sync to this change
8550
8551         * gdk/x11/gdkdrawable-x11.c (gdk_x11_set_colormap): remove 
8552         assertion that colormap != NULL, you can set the colormap to NULL
8553         if you like.
8554         
8555         * Makefile.am: remove gtk-config-2.0
8556
8557         * configure.in: Use pkg-config to locate GLib. Remove
8558         separated-out GMODULE_LIBS, GMODULE_CFLAGS; these were not used,
8559         and the gmodule libs/cflags were in GLIB_LIBS GLIB_CFLAGS anyhow.
8560         Use pkg-config to locate Pango. Output correct Pango libs to
8561         gdk-2.0.pc.in. Fix test for FREETYPE_CONFIG (typo fix).
8562
8563         * Makefile.am (pkgconfig_DATA): install only target-specific pc
8564         files
8565         (install-data-local): symlink gtk+-2.0.pc and gdk-2.0.pc to the
8566         X11 pc files
8567
8568         * gtk+-2.0.pc.in (Requires): require the GDK for the current target
8569         unref from here
8570
8571 2001-01-03  Alexander Larsson  <alla@lysator.liu.se>
8572
8573         * configure.in:
8574         Change GTK_NO_CHECK_CASTS to G_DISABLE_CAST_CHECKS.
8575
8576 Tue Jan  2 16:23:05 2001  Owen Taylor  <otaylor@redhat.com>
8577
8578         * gtk/gtktextlayout.c
8579         (gtk_text_layout_move_iter_to_previous_line): Fix unitialized
8580         variable when moving back onto a single line.
8581
8582 2001-01-01  Havoc Pennington  <hp@redhat.com>
8583
8584         * gtk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
8585
8586         * gdk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
8587
8588         * configure.in (LIBTOOL_EXPORT_OPTIONS): define
8589         LIBTOOL_EXPORT_OPTIONS with options to control symbol export
8590
8591 2001-01-01  Havoc Pennington  <hp@redhat.com>
8592
8593         * gtk/gtktexttagprivate.h: uscore-prepend all the stuff in here.
8594
8595         * gtk/gtk-boxed.defs (GtkTextAttributes): Add boxed type for 
8596         GtkTextAttributes
8597
8598         * gtk/gtktexttag.c: Fix up GtkTextAttributes copying to close bug 
8599         #40246
8600         (gtk_text_attributes_copy_values): rename from 
8601         gtk_text_attributes_copy
8602         (gtk_text_attributes_copy): a more standard GTK copy function, 
8603         which returns a new object
8604
8605 2001-01-01  Havoc Pennington  <hp@redhat.com>
8606
8607         * gtk/gtktreeview.c: Adapt to GtkTreeSelection changes
8608         
8609         * gtk/gtktreeselection.c (_gtk_tree_selection_set_tree_view):
8610         don't fill in tree_view->priv->selection, kind of an unexpected
8611         side effect
8612
8613         * gtk/gtkcellrenderertext.c: Remove definition of _ and include
8614         gtkintl.h
8615         
8616         * gtk/gtkcellrenderer.c: Remove definition of _ and include
8617         gtkintl.h
8618         (gtk_cell_renderer_get_property): remove calls to g_value_init
8619
8620         * gtk/gtkcellrendererpixbuf.c: Remove definition of _ and include
8621         gtkintl.h
8622
8623         * gtk/gtkcellrenderertextpixbuf.c: Remove definition of _ macro
8624         and include gtkintl.h
8625         (gtk_cell_renderer_text_pixbuf_class_init): remove spaces from
8626         property names
8627
8628         * gtk/gtktreeselection.c (_gtk_tree_selection_new): rename, return
8629         GtkTreeSelection
8630         (_gtk_tree_selection_new_from_with_view): rename, return
8631         GtkTreeSelection
8632         (_gtk_tree_selection_set_tree_view): rename with uscore
8633         (gtk_tree_selection_get_selected): fill in the "model" out param
8634         first, so it gets filled in even if we return at the top of the 
8635         function
8636         (gtk_tree_selection_real_select_all): add a comment and an else{}
8637         to clarify this a bit
8638         (gtk_tree_selection_real_unselect_all): add the same else{}
8639
8640         * gtk/gtktreeselection.h: Rename new, new_with_tree_view, and
8641         set_tree_view to have underscore prefixes, move them to the
8642         private header, fix return type of new_with_tree_view
8643         (struct _GtkTreeSelection): mark struct
8644         fields private  
8645
8646         * gtk/gtktreemodel.c (gtk_tree_model_get_flags): return
8647         GtkTreeModelFlags, not a guint
8648         (gtk_tree_path_prev): return gboolean not gint
8649         (gtk_tree_path_up): return gboolean not gint
8650
8651         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): make get_flags
8652         return GtkTreeModelFlags, not a guint
8653
8654         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_finalize): check
8655         that child model is non-null before unrefing it
8656         (g_value_int_compare_func): make this a qsort compare func, not 
8657         a boolean predicate
8658
8659         * gtk/gtktreemodelsort.h: rename gtk_tree_model_set_sort_column,
8660         (add -umn to the end), and mark it unimplemented
8661         (gtk_tree_model_sort_resort): remove, this wasn't implemented, and 
8662         I don't see what it's for - doesn't the model always sort itself?
8663         (gtk_tree_model_sort_set_compare): this had the wrong signature
8664
8665         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_attributes):
8666         Fix the docs to say that it destructively replaces existing
8667         attributes (previously said that it added attributes).
8668         (gtk_tree_view_column_set_visible): canonicalize bool before
8669         equality testing. Also, check for realization before
8670         hiding/showing the tree_column->window; if this window could exist
8671         before realization, then it's busted and needs fixing, we can't 
8672         create GDK resources pre-realization. Also, remove
8673         superfluous queue_resize(), since set_size() does that for us.
8674         (gtk_tree_view_column_set_col_type): check realization before 
8675         using tree_column->window
8676
8677         * gtk/gtktreedatalist.c: fix filename in copyright notice
8678
8679 2000-12-31  Havoc Pennington  <hp@pobox.com>
8680
8681         * gtk/gtktextview.c: Rearrange all the
8682         scroll-while-dragging-or-selecting code to be different, not
8683         necessarily better. ;-)
8684         (gtk_text_view_scroll_to_mark): Change this
8685         function to take within_margin as a fraction instead of a pixel
8686         value, and to take alignment arguments (indicating where to align 
8687         the mark inside the visible area)
8688         
8689         * gtk/testtextbuffer.c (fill_buffer): fix bad cast of GtkTextTag
8690         to GtkObject
8691
8692         * gtk/gtktextiter.c (gtk_text_iter_set_line_offset): change
8693         behavior so that offsets past the end of the line are not 
8694         allowed, and an offset equal to the line length moves the iterator
8695         to the next line
8696         (gtk_text_iter_set_line_index): make parallel change
8697         (gtk_text_iter_get_bytes_in_line): add this function
8698         
8699         * gtk/gtktextbtree.c (_gtk_text_line_byte_locate): change handling
8700         of byte indexes off the end of the line; byte index at the end of
8701         the line now returns FALSE and doesn't fill in the requested
8702         values, byte index past the end of the line is an error.  Also,
8703         don't allow -1 offset anymore, since its meaning is unclear.
8704
8705         This change exposes some bug in visual cursor motion, where we
8706         end up with a huge invalid byte index; needs fixing. Symptom of 
8707         bug is a crash when you hit up arrow.
8708         
8709         (_gtk_text_line_char_locate): match the change to byte_locate
8710
8711         * gtk/gtktextiter.c (find_by_log_attrs): Handle iteration backward
8712         from start of line properly. fixes bug reported by Mikael
8713         Hermansson where backspace would delete all text before the
8714         cursor.
8715
8716 2000-12-30  Tor Lillqvist  <tml@iki.fi>
8717
8718         * gdk/win32/gdkwindow-win32.c
8719         (gdk_window_impl_win32_get_visible_region): New function, as in
8720         the X11 backend.
8721         (gdk_window_new, gdk_window_set_title): Use g_locale_from_utf8()
8722         instead of duplicating the same code here.
8723
8724         * gdk/win32/gdkwin32.h (GDK_COLORMAP_PRIVATE_DATA): Use
8725         GDK_COLORMAP macro.
8726
8727         * gdk/win32/gdkevents-win32.c (gdk_event_funcs): Use NULL as
8728         destroy function.
8729         (gdk_event_translate): Use GDK_COLORMAP_PRIVATE_DATA to correctly
8730         access that.
8731
8732         * gtk/gtk.def: Update.
8733
8734         * gtk/makefile.mingw.in: Use glib-genmarshal from $(GLIB)/gobject.
8735
8736 2000-12-30  Havoc Pennington  <hp@pobox.com>
8737
8738         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Set the system
8739         colormap on input only windows, to avoid special cases all over
8740         the code for these windows.
8741
8742 2000-12-26  Tor Lillqvist  <tml@iki.fi>
8743
8744         * gdk/win32/gdkvisual-win32.c (gdk_visual_init): Call g_error if
8745         we are on a palettized display ("PseudoColor" in X11), as the code
8746         for that doesn't work anyway, and never has.
8747
8748 2000-12-22  Alexander Larsson  <alexl@redhat.com>
8749
8750         * gdk/linux-fb/gdkkeyboard-fb.c (xlate_io):
8751         Don't use isprint() for chars > 255.
8752
8753 2000-12-21  Havoc Pennington  <hp@redhat.com>
8754
8755         * tests/testtreeview.c: more work
8756
8757 2000-12-21  Alexander Larsson  <alexl@redhat.com>
8758
8759         * docs/README.linux-fb:
8760         Update the docs to the new pangoft2 way.
8761
8762 2000-12-21  Alexander Larsson  <alexl@redhat.com>
8763
8764         * configure.in:
8765         For linux-fb get the pangoft2 cflags and libs. This needs a recent
8766         pango version.
8767         Remove modules/linux-fb/Makefile.
8768
8769         * gdk/linux-fb/gdkdrawable-fb2.c:
8770         Render glyphs using freetype.
8771
8772         * gdk/linux-fb/gdkfb.h:
8773         Add new fb-specific functions needed for managing windows.
8774
8775         * gdk/linux-fb/gdkmain-fb.c:
8776         Remove gdk_font_init/fini() calls.
8777
8778         * gdk/linux-fb/gdkpango-fb.c:
8779         Remove old implementation. Use pangoft2 instead.
8780
8781         * gdk/linux-fb/gdkprivate-fb.h:
8782         Remove PangoFBFont and related stuff.
8783
8784         * gdk/linux-fb/gdkwindow-fb.c:
8785         Implement drawable->get_visible_region.
8786         Implement support for _gdk_window_set_child_handler () and
8787         _gdk_window_get_decorations().
8788
8789         * modules/Makefile.am:
8790         Remove linux-fb subdir.
8791
8792         * modules/linux-fb/*:
8793         Removed all.
8794         
8795 2000-12-20  Jonathan Blandford  <jrb@redhat.com>
8796
8797         * gtk/gtkcellrenderer*.c (::get_property): remove g_value_init
8798         calls, as they are no longer needed.
8799
8800         * gtk/gtktreemodelsort.c: Fix up the comparison code.
8801         
8802         * gtk/gtktreemodel.h: Start work on ::reordered signal.  Need to
8803         figure out how to emit a signal on an interface.
8804
8805 2000-12-20  Havoc Pennington  <hp@redhat.com>
8806
8807         * tests: new directory to contain tests, gtk/test* should move
8808         here sometime (with appropriate on-cvs-server hackery)
8809
8810         * tests/testtreeview.c, tests/Makefile.am: a test
8811         
8812         * configure.in (AC_OUTPUT): add tests/Makefile
8813
8814         * gtk/gtktexttag.c (gtk_text_tag_get_property): Add "invisible"
8815         and "invisible_set" which were missing
8816
8817         * gtk/gtkrbtree.h: some cheesy indentation fix
8818         
8819 2000-12-20  Alexander Larsson  <alexl@redhat.com>
8820
8821         * gtk/gtkinvisible.c (gtk_invisible_realize):
8822         Attach the style to the window so that the style it is not
8823         leaked when unrealizing the window.
8824
8825 2000-12-18  Havoc Pennington  <hp@redhat.com>
8826
8827         * gtk/gtktextview.c (gtk_text_view_delete_from_cursor): do
8828         begin/end user action where appropriate
8829         (gtk_text_view_commit_handler): add begin/end user action
8830
8831         * gtk/gtktextbuffer.c: add begin/end user action signals, and
8832         bracket interactive operations with begin/end user action pair.
8833         
8834         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): remove
8835         "interactive" arg from insert_text and delete_text signals.
8836         Add begin_user_action, end_user_action signals
8837         (gtk_text_buffer_begin_user_action): 
8838         (gtk_text_buffer_end_user_action): New functions to delimit 
8839         a user-visible action
8840
8841         * gtk/gtkmarshal.list: update to reflect changes to gtktextbuffer
8842         signals.
8843         
8844 2000-12-18  Havoc Pennington  <hp@redhat.com>
8845
8846         * gdk/gdkevents.c (gdk_event_get_state): wow, that implementation
8847         was pretty non-working.
8848
8849         * gtk/testtext.c (fill_file_buffer): make this a bit more robust
8850         by passing the length to g_utf8_validate().
8851
8852 2000-12-16  Havoc Pennington  <hp@pobox.com>
8853
8854         * gtk/gdk-pixbuf-loader.h, gtk/gdk-pixbuf-loader.c: 
8855         Port to GObject, can go back in gdk-pixbuf after setting up 
8856         a gdk-pixbuf-marshal.h header over there.
8857
8858         * gtk/gtktreeview.c: s/SEPERATOR/SEPARATOR/g;
8859         (gtk_tree_view_class_init): specify GTK_TYPE_ADJUSTMENT for signal
8860         args
8861         (gtk_tree_view_init): don't unset GTK_NO_WINDOW, it shouldn't be
8862         set
8863         (gtk_tree_view_realize_buttons): don't gtk_widget_show() buttons
8864         here, do it when we create the buttons later
8865         (gtk_tree_view_realize_buttons): add some g_return_if_fail 
8866         (gtk_tree_view_map): paranoia checks that column->button is shown 
8867         and unmapped
8868         (gtk_tree_view_size_request): only request visible children.
8869         Move header size calculation in here, for cleanliness, and 
8870         to maintain invariants for child widgets if we eventually 
8871         let users set different children inside the buttons
8872         (gtk_tree_view_map_buttons): factor out code to map buttons,
8873         since it was being called several times
8874         (gtk_tree_view_size_allocate_buttons): move_resize the drag
8875         windows instead of just moving them; their height may change 
8876         if we allow random widgets in there, or the theme changes.
8877         (gtk_tree_view_size_allocate): move button size allocation 
8878         above emitting the scroll signals, to ensure a sane state when we
8879         hit user code
8880         (gtk_tree_view_button_release): remove queue_resize after
8881         tree_view_set_size(), set_size() will handle any resize queuing
8882         that's needed
8883         (gtk_tree_view_focus_in): just queue a draw, don't fool with
8884         draw_focus goo
8885         (gtk_tree_view_focus): use gtk_get_current_event() and
8886         gdk_event_get_state()
8887         (gtk_tree_view_deleted): don't queue_resize() after calling set_size()
8888         (gtk_tree_view_build_tree): fix a "if (foo); {}" bug - i.e. remove
8889         semicolon
8890         (gtk_tree_view_create_button): show the button here
8891         (gtk_tree_view_button_clicked): actually emit the clicked signal
8892         on the column
8893         (_gtk_tree_view_set_size): return right away if the size is
8894         unchanged, as a cheesy optimization
8895         (gtk_tree_view_setup_model): rename set_model_realized to 
8896         setup_model to match the flag that indicates whether we've 
8897         called it
8898         (gtk_tree_view_get_hadjustment): create adjustment if it doesn't
8899         exist, because set_scroll_adjustment does that and it shouldn't
8900         matter what order you call these in
8901         (gtk_tree_view_get_vadjustment): ditto
8902         (gtk_tree_view_set_headers_visible): canonicalize the bool, 
8903         for paranoia
8904         (gtk_tree_view_set_headers_visible): call
8905         gtk_tree_view_map_buttons() instead of using cut-and-paste code
8906         (gtk_tree_view_append_column): clarify whether the return value
8907         is the count of columns before or after, and do the increment 
8908         separately from the return statement so you can tell from the code.
8909         (gtk_tree_view_remove_column): ditto
8910         (gtk_tree_view_insert_column): ditto
8911         (gtk_tree_view_get_column): remove g_return_if_fail for columns
8912         outside the existing range, the docs say that outside-range
8913         columns are allowed, so we handle them as documented. (Presumably
8914         this allows a nice loop with column != NULL as test.)
8915         (gtk_tree_view_move_to): document what 0.0, 0.5, 1.0 alignments 
8916         mean (left/right/center etc.).
8917         (gtk_tree_view_collapse_all): only queue a draw if we're mapped
8918         (gtk_tree_view_expand_row): add docs
8919         (gtk_tree_view_collapse_row): add docs
8920
8921         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clicked): new
8922         function to emit the clicked signal on a column
8923         
8924         * gdk/gdkevents.c (gdk_event_get_state): new function, to get the
8925         state of an event
8926         (gdk_event_get_time): don't treat GDK_SCROLL 
8927         as a button event, remove default case from switch so gcc 
8928         will whine if we don't explicitly handle all event types
8929
8930         * gtk/gtktreeselection.h: added some FIXME 
8931         
8932         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): rename
8933         "columns" to "n_columns" and "column" to "columns" for clarity
8934
8935 2000-12-16  Havoc Pennington  <hp@pobox.com>
8936         
8937         * gtk/gtktextiter.c: General cleanup of the log attr iteration
8938         stuff. This should make e.g. the delete key work again in the
8939         text widget...
8940         (gtk_text_iter_forward_cursor_positions): handle negative count
8941         (gtk_text_iter_backward_cursor_positions): handle negative count
8942         (gtk_text_iter_forward_word_ends): handle negative count
8943         (gtk_text_iter_backward_word_starts): handle negative count
8944
8945         * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktexttag.h,
8946         gtk/gtktexttag.c, gtk/gtktexttagtable.h, gtk/gtktexttagtable.c, 
8947         gtk/gtktextbuffer.h, gtk/gtktextbuffer.c: Convert everything to 
8948         GObject. No doubt will cause breakage.
8949
8950         * demos/gtk-demo/textview.c: remove hacks around
8951         non-GObject-ification of the text objects
8952
8953         * demos/gtk-demo/main.c (main): use g_object_set() to manipulate 
8954         the text tag
8955         
8956 2000-12-14  Havoc Pennington  <hp@pobox.com>
8957
8958         * configure.in: only AC_DEFINE(HAVE_XFT) if we actually determined
8959         that we have Xrender
8960
8961 Thu Dec 14 20:22:31 2000  Owen Taylor  <otaylor@redhat.com>
8962
8963         * gdk/{gdkdrawable.[ch],gdkpixmap.c,gdkwindow.c,x11/gdkwindow.c}:
8964         Add two virtualized functions gdk_drawable_get_clip_region - to
8965         get the clip region when drawing.
8966         
8967         * gdk/gdkwindow.c (gdk_window_invalidate_rect): Rewrite to simple
8968         use invalidate_region.
8969
8970         * gdk/gdkwindow.c (gdk_window_invalidate_region): Clip to visible
8971         region.
8972
8973         * acconfig.h configure.in: Check for Xft. For now, assume
8974         that if Xft is found, Pango was compiled with Xft support
8975         as well.
8976
8977         * gdk/gdkcolor.h gdk/x11/gdkcolor-x11.c: Add 
8978         gdk_colormap_query_color().
8979         
8980         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_glyphs): Draw
8981         with Xft if appropriate.
8982
8983         * gdk/x11/gdkpango-x11.c (gdk_pango_context_get): Create
8984         a pangoxft context if we have XFT and the environment
8985         variable GD_USE_XFT is set.
8986         
8987         * gdk/x11/gdkx.h (struct _GdkGCX11): Cache the fg_pixel
8988         and also possibly an XftDraw structure.
8989
8990         * gtk/gtkfontsel.c: Handle the case where the font from the
8991         style doesn't match any of the fonts a bit better.
8992         
8993         * gtk/testgtk.c: Add tabs between directional segments for
8994         hebrew/arabic test. (Not really necessary, just a little
8995         prettier.)
8996
8997 2000-12-14  Havoc Pennington  <hp@redhat.com>
8998
8999         * gtk/testtext.c (fill_file_buffer): fix unicode validation when
9000         reading a file
9001
9002 2000-12-14  Havoc Pennington  <hp@redhat.com>
9003
9004         * gtk/gtktextbtree.c (_gtk_text_btree_validate_line): remove
9005         unused call to get_last_line()
9006
9007         * gtk/gtkobject.c (gtk_object_add_arg_type): add G_TYPE_POINTER
9008         here until boxed is working (and maybe after that - we should
9009         really not gratuitously break old code)
9010
9011         * gtk/gtktexttag.c (gtk_text_tag_class_init): add commented-out
9012         specific types for font_desc and tabs args, move them to
9013         GTK_TYPE_POINTER for now, waiting on g_param_spec_boxed() to get 
9014         fixed. Move GdkColor args to GTK_TYPE_POINTER also.
9015
9016         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): temporarily
9017         use GTK_TYPE_POINTER for signal signatures as a hack-around
9018
9019         * gtk/gtk-boxed.defs: Add boxed types for PangoFontDescription and
9020         PangoTabArray
9021
9022         * gtk/gtktextlayout.c (line_display_iter_to_index): 
9023         make static
9024         (line_display_index_to_iter): make static
9025
9026         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
9027         to marshal a string not a boxed
9028
9029         * gtk/gtkmarshal.list: add marshaller for GtkTextBuffer:insert_text
9030
9031         * gtk/testtext.c (fill_file_buffer): don't use g_utf8_next_char
9032         since the UTF-8 isn't validated yet
9033
9034         * gtk/gtktextsegment.c (char_segment_check_func): don't require
9035         lines to end in '\n'
9036         
9037         * gtk/gtktextview.c (gtk_text_view_move_cursor): update to use
9038         forward_to_delimiters, and grapheme boundaries
9039         (gtk_text_view_delete_from_cursor): properly handle non-newline
9040         delimiters, and grapheme boundaries
9041
9042         * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): rename
9043         to gtk_text_iter_forward_to_delimiters, and make it work properly
9044         if empty lines end with a character other than '\n'
9045
9046         * gtk/gtktextiter.h, gtk/gtktextiter.c: Add movement by cursor
9047         position
9048
9049 2000-12-15  Tor Lillqvist  <tml@iki.fi>
9050
9051         * gdk/makefile.{mingw.in,msc} (gdk_OBJECTS): Add gdkkeys.
9052
9053         * gtk/gtk.def
9054         * gdk/gdk.def: Update.
9055
9056         * gdk/win32/gdkmain-win32.c
9057         * gdk/win32/gdkkeys-win32.c: New file. Move some functions from
9058         gdkmain-win32.c here.
9059
9060         * gdk/win32/makefile.mingw.in (all): No need to make
9061         gdk-win32res.o here, the makefile one step up will call us to make
9062         it.
9063
9064         * gdk/win32/makefile.{mingw.in,msc} (gdk_win32_OBJECTS): Add
9065         gdkkeys-win32.
9066
9067         * gdk/win32/gdkcolor-win32.c: Silence gcc -Wall.
9068
9069         * gdk/win32/gdkevents-win32.c (gdk_events_init): Remove leftover
9070         call to g_source_add().
9071
9072         * gdk/win32/gdkgc-win32.c (BitmapToRegion): Plug memory
9073         leak. Thanks to Andreas Kemnade.
9074
9075 2000-12-13  Havoc Pennington  <hp@pobox.com>
9076
9077         * gtk/gtktextbtree.h: Remove double _ in front of some functions
9078
9079         * gtk/gtktext*.[hc]: update accordingly
9080         
9081 2000-12-13  Havoc Pennington  <hp@pobox.com>
9082
9083         * gtk/gtktextbtree.h: Put _ in front of every function in this 
9084         header file
9085
9086         * gtk/gtktext*.[hc]: update to reflect renamed btree functions
9087
9088 2000-12-13  Alex Larsson  <alexl@redhat.com>
9089
9090         * gdk/linux-fb/gdkmouse-fb.c (mouse_devs):
9091         Add support for ps2 intellimouse.
9092
9093         * gdkkeyboard-fb.c:
9094         Move shift-F1 repaint handling to xlate handler only.
9095         
9096         * docs/README.linux-fb:
9097         Add imps2 to docs.
9098         Document the new refresh keys.
9099         
9100 Tue Dec 12 23:46:44 2000  Tim Janik  <timj@gtk.org>
9101
9102         * gtk/stock-icons/Makefile.am: doh, this was broken beyond believe.
9103
9104         * gtk/gtkbox.c: change property types from (u)long to (u)int for
9105         ::position and ::padding.
9106
9107         * gtk/gtkcontainer.c: make ::border_width an INT property.
9108
9109         * gtk/gtkpacker.c: make ::position an INT property.
9110
9111         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed):
9112         guard against NULL h/v scrollbars, since this is used at construction
9113         time.
9114
9115         * gtk/gtkclist.[hc]: nuked gtk_clist_construct(), implemented
9116         internal gtk_clist_constructor().
9117
9118         * gtk/gtkctree.[hc]: nuked gtk_ctree_construct(), implemented
9119         gtk_ctree_constructor().
9120
9121         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): property
9122         ::pulse_step should use ARG_PULSE_STEP, not ARG_FRACTION.
9123
9124         * docs/reference/Makefile.am: fun stuff, disabled docs generation
9125         again, gtk-scan.c needs to introspec paramspecs, not GtkAgs.
9126
9127         * gtk/gtkwidget.[hc]:
9128         removed gtk_widget_setv(), gtk_widget_getv(), gtk_widget_newv()
9129         and gtk_widget_get().
9130         (gtk_widget_new): use g_object_new_valist().
9131         (gtk_widget_set): use g_object_set_valist().
9132
9133         * gtk/gtkobject.[hc]:
9134         removed gtk_object_arg_get_info(), gtk_object_getv(),
9135         gtk_object_query_args(), gtk_object_newv(),
9136         gtk_object_class_add_signals(),
9137         gtk_object_class_user_signal_new(),
9138         gtk_object_class_user_signal_newv(),
9139         gtk_object_arg_set(), gtk_object_arg_get(),
9140         gtk_object_args_collect(),
9141         gtk_object_default_construct(),
9142         gtk_object_constructed(),
9143         GTK_CONSTRUCTED and GTK_OBJECT_CONSTRUCTED().
9144         removed nsignals, signals and n_args members from GtkObjectClass.
9145         (gtk_object_new): use g_object_new_valist().
9146         (gtk_object_set): use g_object_set_valist().
9147         (gtk_object_get): use g_object_get_valist().
9148         
9149         * gtk/gtkcompat.h: define gtk_object_default_construct().
9150         
9151         * gtk/gtktypeutils.c (gtk_type_new): create constructed objects via
9152         g_object_new().
9153
9154         * gtk/*.c: removed gtk_object_class_add_signals() from class_init()
9155         fucntions, cleaned up method assignments (make sure your structures
9156         are setup properly before calling out). removed all GTK_CONSTRUCTED
9157         hacks ;)
9158
9159 Tue Dec 12 11:52:16 2000  Owen Taylor  <otaylor@redhat.com>
9160
9161         * gtk/gtkclist.c (gtk_clist_optimal_column_width): Fix 
9162         off-by-one error in checks. (Dave Lambert)
9163
9164 2000-12-12  Alexander Larsson  <alexl@redhat.com>
9165
9166         * gdk/linux-fb/gdkkeyboard-fb.c (xlate_close, raw_close):
9167         Don't free gdk_fb_keyboard twice.
9168
9169 Tue Dec 12 08:24:42 2000  Tim Janik  <timj@gtk.org>
9170
9171         * gtk/testgtk.c:
9172         (create_tooltips): 
9173         (create_statusbar): get rid of object_signal:: GtkObject argument uses,
9174         use GObject swapped_signal:: properties instead.
9175
9176         * gtk/gtkcellrenderertoggle.c: 
9177         * gtk/gtkcellrenderertextpixbuf.c: 
9178         * gtk/gtkcellrenderertext.c: 
9179         * gtk/gtkcellrendererpixbuf.c: 
9180         * gtk/gtkcellrenderer.c:
9181         * gtk/gtktreeviewcolumn.c: s/[sg]et_param/[sg]et_property/, fixed
9182         missing warnings for invalid property ids, install properties
9183         with g_object_class_install_property() now.
9184         
9185         * gtk/gtksignal.c:
9186         (gtk_signal_emit): let g_signal_emit_valist() collect the values for us.
9187         
9188 Wed Oct 25 14:17:43 2000  Owen Taylor  <otaylor@redhat.com>
9189         
9190         * gtk/gtkwidget.[ch] (gtk_widget_is_focus): Add a function
9191         to determine if a window is the focus widget within
9192         its toplevel.
9193
9194         * gtk/gtkcontainer.[ch]: Fix the return type of ::focus
9195         to be boolean.
9196
9197         * gtk/gtkcontainer.c (gtk_container_real_focus): Move handling 
9198         of the case where the container CAN_FOCUS to here instead
9199         of having it in each individual move-the-focus place.
9200
9201         * gtk/gtkcontainer.c: Rewrite handling of left-right and up-down
9202         focusing to be geometric in a much more obvious sense. Arrowing
9203         around is still non-intuitive because it isn't perfect and
9204         because entries, etc, grab the arrow keys, but it at least
9205         usually will do what you expect now.
9206         
9207         * gtk/gtknotebook.[ch]: Many cleanups. Moved docs inline in this
9208         file.
9209
9210         * gtk/gtknotebook.c: Change tabs to be a single item in
9211         the focus chain. Make movement of focus on tabs with arrow
9212         keys wrap around.
9213         
9214         * gtk/gtknotebook.c (gtk_notebook_find_child): Add
9215         CHECK_FIND_CHILD macro to give informative error messages
9216         instead of silent returns.
9217
9218         * gtk/gtknotebook.c (gtk_notebook_init): Set the RECEIVES_DEFAULT 
9219         flag since we handle GdkReturn on the tabs.
9220
9221         * gtk/gtknotebook.c (gtk_notebook_expose_tabs): Invalidate
9222         windows rather than sending expose events directly.
9223
9224         * gtk/gtknotebook.[ch] docs/Changes-2.0.txt: Move structure 
9225         definition for GtkNotebookPage into .c file, since it is private.
9226
9227         * gtk/testgtk.c (create_notebook): Add option for 
9228         testing borderless notebook.
9229
9230         * gtk/testgtk.c (page_switch): Removed egregious poking
9231         around in GTK+ internals.
9232
9233         * docs/widget-system.txt: Remove references to GTK_REDRAW_PENDING.
9234
9235         * gtk/gtkclist.[ch]: Remove key press handler, handle focusing
9236         properly through gtk_clist_focus. Make the title headers a
9237         single item in the tab-focus chain, and make left-right wrap
9238         around.
9239
9240         * gtk/gtkwindow.c (gtk_window_focus): Add a custom
9241         focus method so that wrapping around works properly.
9242
9243         * gtk/gtktreeview.c: Remove calls to gtk_container_set_focus_child() - 
9244         that is handled for the widget now. 
9245
9246 Mon Dec 11 11:41:12 2000  Owen Taylor  <otaylor@redhat.com>
9247
9248         * gtk/gtkinvisible.c (gtk_invisible_init): Flag invisible
9249         widgets as TOPLEVEL.
9250
9251         * gtk/gtkwidget.c (gtk_widget_queue_resize): Don't assume
9252         TOPLEVEL widgets are containers.
9253
9254         * gtk/gtkinvisible.h: Remove useless include.
9255
9256 2000-12-11  Havoc Pennington  <hp@redhat.com>
9257
9258         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): 
9259         Handle chopping off \r\n and 0x2029 in addition to \n before
9260         passing to PangoLayout
9261
9262         * gtk/gtkimcontextsimple.c
9263         (gtk_im_context_simple_get_preedit_string): 
9264         return an empty string if no match is pending
9265
9266         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): add
9267         assertion that the returned preedit string was sane
9268
9269         * gtk/gtktext*.[hc], gtk/testtext.c, gtk/testtextbuffer.c:
9270         s/gtk_text_iter_next_char/gtk_text_iter_forward_char/g;
9271         s/gtk_text_iter_prev_char/gtk_text_iter_backward_char/g;
9272
9273 Mon Dec 11 10:02:26 2000  Owen Taylor  <otaylor@redhat.com>
9274
9275         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_finalize): 
9276         Fix up finalizer to chain to its parent.
9277
9278 2000-12-11  Alexander Larsson  <alexl@redhat.com>
9279
9280         * docs/README.linux-fb (GDK_KEYBOARD_TYPE):
9281         Clearified the difference between the keyboard types. Wrote a note
9282         about the magic sysrq key to get out of raw mode.
9283
9284 2000-12-09  James Henstridge  <james@daa.com.au>
9285
9286         * gdk/linux-fb/gdkmouse-fb.c (GdkFBMouseDevice): add prot struct
9287         member to hold masks for detecting the start of a protocol packet.
9288         (mouse_devs): add packet start masks for ps2 and ms device types.
9289         Left the mask for fidmour blank, as I have no idea what it should
9290         be.
9291         (handle_mouse_io): skip bytes until we get to the start of a
9292         packet.  My Logitech mouse seems to be passing an extra NULL pad
9293         byte, and GPM does a similar thing here.
9294         (gdk_fb_mouse_ms_open): changed error message to not say psaux, as
9295         this is the ms mouse driver.
9296         (gdk_fb_mouse_ms_packet): fix up button handling, which was
9297         completely broken except for button1.  It was checking the wrong
9298         bit in the packet for the status of the right mouse button, and
9299         wrongly assuming right == button2 rather than 3.  I fixed that and
9300         also added support for middle button (button2).
9301
9302 2000-12-08  Havoc Pennington  <hp@redhat.com>
9303
9304         * gtk/gtktextbtree.c (gtk_text_btree_insert): fix breakage here
9305         that cause a segfault on text insertion
9306
9307         * gtk/gtktextchild.c (gtk_text_child_anchor_queue_resize): fix 
9308         warning
9309
9310         * gtk/gtktextiter.c (test_log_attrs): use
9311         _gtk_text_buffer_get_line_log_attrs to speed things up a bit
9312
9313         * gtk/gtktextbuffer.c (_gtk_text_buffer_get_line_log_attrs): 
9314         Get log attrs for a line, using a cache stored on the buffer
9315         
9316         * gtk/gtkcolorsel.h (GTK_COLOR_SELECTION_GET_CLASS): fix typo,
9317         reported by Jeff Franks
9318
9319 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
9320
9321         * gdk/linux-fb/gdkmouse-fb.c (gdk_fb_mouse_ms_open):
9322         /dev/ttyS0 -> /dev/mouse
9323
9324 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
9325
9326         * gdk/linux-fb/gdkfont-fb.c (gdk_fontset_load):
9327         Added dummy gdk_fontset_load.
9328
9329 2000-12-08  Alexander Larsson  <alexl@redhat.com>
9330
9331         * docs/README.linux-fb:
9332         * docs/Makefile.am:
9333         Initial GtkFB docs.
9334         
9335         * gdk/linux-fb/Makefile.am:
9336         Define GDK_DATA_PREFIX.
9337
9338         * gdk/linux-fb/gdkmain-fb.c:
9339         Fix typo.
9340         Change default display to /dev/fb0.
9341
9342         * gdk/linux-fb/gdkpango-fb.c:
9343         Add $(prefix)/share/fonts/ to font path.
9344         
9345 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
9346
9347         * gdk/linux-fb/gdkkeyboard-fb.c:
9348         New file containing the abstracted keyboard driver. Most code
9349         taken from gdkinput-ps2.c
9350
9351         * gdk/linux-fb/gdkinput-ps2.c:
9352         Removed file.
9353         
9354         * gdk/linux-fb/Makefile.am:
9355         Added gdkkeyboard-fb.c, removed gdkinput-ps2.c.
9356
9357         * gdk/linux-fb/gdkcolor-fb.c:
9358         display->fb was renamed to display->fb_fd.
9359
9360         * gdk/linux-fb/gdkcursor-fb.c:
9361         gdk_mouse_get_info -> gdk_fb_mouse_get_info
9362
9363         * gdk/linux-fb/gdkinput.c:
9364         Moved gdk_input_init here from gdkinput-ps2.c
9365
9366         * gdk/linux-fb/gdkmain-fb.c:
9367         display->fb was renamed to display->fb_fd.
9368         Now the tty and the console is opened here instead
9369         of in the keyboard driver. Also check GDK_VT to see what
9370         tty to open.
9371         Move gdk_beep () here from gdkinput-ps2.c
9372         gdk_mouse_get_info -> gdk_fb_mouse_get_info
9373
9374         * gdk/linux-fb/gdkmouse-fb.c:
9375         Add header.
9376         gdk_mouse_get_info -> gdk_fb_mouse_get_info
9377         Return correct keyboard modifiers.
9378         GDK_MOUSETYPE -> GDK_MOUSE_TYPE for consistancy
9379
9380         * gdk/linux-fb/gdkprivate-fb.h:
9381         Add tty and vt info to display.
9382         Add orignal modeinfo storage to display
9383         Update global functions
9384
9385         * gdk/linux-fb/gdkwindow-fb.c:
9386         Added gdk_fb_window_find_focus().
9387         gdk_mouse_get_info -> gdk_fb_mouse_get_info
9388
9389 2000-12-07  Havoc Pennington  <hp@pobox.com>
9390
9391         * gdk/x11/gdkkeys-x11.c (gdk_keymap_lookup_key): fix name of 
9392         function, noticed by Alex
9393
9394 2000-12-06  Elliot Lee  <sopwith@redhat.com>
9395
9396         * configure.in: Detect freetype properly
9397
9398         * modules/basic/Makefile.am, gdk/linux-fb/Makefile.am: Make use of
9399         above.
9400
9401 2000-12-06  Alexander Larsson  <alexl@redhat.com>
9402
9403         * gdk/linux-fb/Makefile.am:
9404         Add gdkmouse-fb.c
9405         
9406         * gdk/linux-fb/gdkmouse-fb.c:
9407         New file. Abstracted the mouse drivers a bit.
9408
9409         * gdk/linux-fb/gdkcursor-fb.c:
9410         The cursor hide/show functions was moved here from gdkinput-ps2.c.
9411
9412         * gdk/linux-fb/gdkinput-ps2.c:
9413         Removed old mouse handling code. Moved cursor handling code
9414         to gdkcursor-fb.c, moved gdk_fb_window_send_crossing_events() to
9415         gdkwindow-fb.c. gdk_input_get_mouseinfo was renamed to
9416         gdk_mouse_get_info.
9417
9418         * gdk/linux-fb/gdkmain-fb.c:
9419         Pass NULL pointers for x,y in gdk_mouse_get_info call.
9420
9421         * gdk/linux-fb/gdkprivate-fb.h:
9422         Removed public gdk_fb_find_common_ancestor, added and renamed
9423         functions for the new mouse handling code.
9424
9425         * gdk/linux-fb/gdkwindow-fb.c:
9426         Moved gdk_fb_window_send_crossing_events here. added global
9427         variable gdk_fb_window_containing_pointer. made
9428         gdk_fb_find_common_ancestor static. gdk_input_get_mouseinfo was
9429         renamed to gdk_mouse_get_info.
9430
9431 2000-12-06  Alexander Larsson  <alexl@redhat.com>
9432
9433         * gdk/linux-fb/gdkevents-fb.c:
9434         Update to match latest gmain/gsource changes.
9435
9436         * gdk/linux-fb/gdkinput-ps2.c:
9437         Bogus gdk_keymap_get_entries_for_keycode implementation so that
9438         it links. Will be implemented later.
9439
9440 2000-12-03  Havoc Pennington  <hp@pobox.com>
9441
9442         * gdk/Makefile.am: add gdkkeys.[hc]
9443
9444         * gdk/gdkkeys.h, gdk/gdkkeys.c: Move all the keyval stuff to these
9445         files from gdk.h, gdk.c; add GdkKeymap type and operations on it.
9446
9447         * acconfig.h, configure.in: add checks and command line options
9448         for XKB
9449
9450         * gdk/x11/gdkkeys-x11.c: Implement the above functions
9451         
9452         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Put the keycode
9453         and group in the key event
9454
9455         * gdk/gdkevents.h (struct _GdkEventKey): Add a hardware_keycode
9456         field with the low-level hardware key code, and a group
9457         field with the keyboard group
9458
9459         * gdk/x11/gdkprivate-x11.h: include config.h for HAVE_XKB,
9460         and declare a couple globals used for keymap handling
9461         
9462         * gtk/gtkimcontextsimple.c: Implement ISO 14755 input method,
9463         hold down Shift-Control and type a hex number to get a Unicode 
9464         character corresponding to the hex number
9465         (gtk_im_context_simple_get_preedit_string): Fix cursor position
9466         (return bytes not chars)
9467
9468 2000-12-05  Elliot Lee  <sopwith@redhat.com>
9469
9470         * gdk/gdkcolor.h: Make GdkColor specify element sizes
9471         to avoid waste on 64-bit platforms.
9472
9473 Tue Dec  5 15:49:31 2000  Owen Taylor  <otaylor@redhat.com>
9474
9475         * INSTALL: Fix link to PNG home, remove reference
9476         to fribidi.
9477
9478         * gdk/x11/gdkevents-x11.c: Fix up for new GMain API.
9479         
9480         * gdk/win32/gdkevents-win32.c: Fix up for new GMain API. (Not
9481         tested.)
9482
9483         * gtk/gtkcheckmenuitem.c: Permanently turn on
9484         always_show_toggle.
9485
9486         * gtk/gtkclist.c (gtk_clist_get_pixtext): Allow mask to 
9487         be NULL. (Vladimir Klebanov, #26545)
9488
9489         * gtk/gtkspinbutton.c (gtk_spin_button_insert_text): Fix 
9490         some signed/unsigned comparison problems. (#6510,
9491         David Kaelbling)
9492
9493         * gtk/gtkwidget.[ch] (gtk_widget_is_ancestor): Change
9494         return type to boolean (Oskar Liljeblad, #18648)
9495
9496 2000-12-05  Alexander Larsson  <alexl@redhat.com>
9497
9498         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_display_new):
9499         Remove bogus colormap setting.
9500
9501 2000-12-05  Alexander Larsson  <alexl@redhat.com>
9502
9503         * gdk/linux-fb/gdkcolor-fb.c:
9504         More complete colormap handling. Now GdkRGB work in 8 bpp modes.
9505
9506         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_image):
9507         Must set colormap.
9508         
9509 Tue Dec  5 13:17:53 GMT 2000  Tony Gale <gale@gtk.org>
9510
9511         * docs/tutorial/gtk-tut.sgml: DND updates
9512
9513 2000-12-05  Alexander Larsson  <alla@lysator.liu.se>
9514
9515         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
9516         Remove old debug g_warning().
9517         (gdk_fb_draw_drawable): The src argument can be either a wrapper
9518         or an implementation, just pass the implementation to draw_drawable_2.
9519         
9520         * gdk/linux-fb/gdkprivate-fb.h:
9521         Added GDK_IS_DRAWABLE_IMPL_FBDATA()
9522
9523         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
9524         clear and invalidate area when window is destroyed.
9525         (send_map_events): Remove old commented out code.
9526
9527 2000-12-05  Alexander Larsson  <alexl@redhat.com>
9528
9529         * gdk/linux-fb/gdkpango-fb.c:
9530         Use italic instead of oblique in font aliases.
9531         
9532         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic,
9533         _gdk_fb_gc_calc_state): Support GDK_XOR, add g_warning for
9534         other unsupported functions.
9535
9536 2000-12-04  Havoc Pennington  <hp@redhat.com>
9537
9538         * gtk/gtkpaned.c (gtk_paned_expose): fix this to be sane
9539
9540         * gtk/gtkvpaned.c (gtk_vpaned_expose): Add an expose handler
9541
9542         * gtk/gtkhpaned.c (gtk_hpaned_expose): Add an expose handler
9543
9544         * gtk/gtknotebook.c (gtk_notebook_draw_tab): put in a temporary 
9545         hack to avoid infinite loops (synthetic expose event) - 
9546         Owen has more appropriate fixes in a branch he'll check in later.
9547
9548         * gtk/gtktextiter.c (gtk_text_iter_ends_line): handle paragraph
9549         separator, CR, and CRLF as line ends
9550
9551         * gtk/gtktextbtree.c (gtk_text_btree_insert): on insertion, break
9552         into lines using pango_find_paragraph_boundary(); other bits of
9553         the widget are still going to be broken if the boundary isn't '\n'
9554         though
9555
9556 2000-12-04  Alexander Larsson  <alexl@redhat.com>
9557
9558         * gdk/linux-fb/gdkfont-fb.c (gdk_text_width): Divide size by 2, not
9559         multiply.
9560
9561         * gdk/linux-fb/gdkpango-fb.c:
9562         Copied some 26.6 scaling macros from pango to clean up the rounding.
9563         (pango_fb_font_get_glyph_info): Correct sign on x value.
9564
9565         * gdk/linux-fb/gdkprivate-fb.h:
9566         Removed unreferenced external functions.
9567
9568         * modules/linux-fb/Makefile.am: Use ` instead of '.
9569
9570         * modules/linux-fb/basic.c:
9571         Remove dead code. In particular the dummy lang engine which broke all
9572         pango layouts in GtkFB. Don't include tables-big.i anymore.
9573
9574         * modules/linux-fb/tables-big.i:
9575         Upgrade to latest version from pango. Left for reference, basic_ranges
9576         moved to basic.c.
9577         
9578 2000-12-04  Havoc Pennington  <hp@redhat.com>
9579
9580         Fix bugs Alex found:
9581         
9582         * gtk/gtktooltips.c (gtk_tooltips_force_window): nuke connection
9583         to "draw"
9584
9585         * gtk/gtkdnd.c (gtk_drag_highlight): nuke connection to "draw"
9586
9587         * gtk/gtkcolorsel.c (palette_new): nuke connection to "draw"
9588
9589         * gtk/gtklistitem.c (gtk_list_item_expose): Put the old _draw() 
9590         implementation in here, apparently the expose() implementation was
9591         dead code.
9592
9593 2000-12-04  Alexander Larsson  <alexl@redhat.com>
9594
9595         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
9596         Return positive descent.
9597
9598 2000-12-02  Havoc Pennington  <hp@pobox.com>
9599
9600         * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove "draw" virtual
9601         method and signal
9602         
9603         * gtk/gtkwidget.c (gtk_widget_draw): Now just queues a draw then
9604         calls gdk_window_process_updates() to push the exposes through
9605         (gtk_widget_class_init): No more draw signal, no
9606         gtk_widget_real_draw()  
9607         
9608         * gtk/gtkbin.c (gtk_bin_draw): remove
9609
9610         * gtk/gtkbox.c (gtk_box_draw): remove
9611
9612         * gtk/gtkbutton.c (gtk_button_draw): remove
9613
9614         * gtk/gtkcalendar.c (gtk_calendar_draw): remove
9615
9616         * gtk/gtkcheckbutton.c (gtk_check_button_draw): remove
9617
9618         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_draw): remove
9619
9620         * gtk/gtkclist.c (gtk_clist_draw): remove
9621
9622         * gtk/gtkentry.c (gtk_entry_draw): remove
9623
9624         * gtk/gtkeventbox.c (gtk_event_box_draw): remove
9625
9626         * gtk/gtkfixed.c (gtk_fixed_draw): remove
9627
9628         * gtk/gtkframe.c (gtk_frame_draw): remove
9629
9630         * gtk/gtkhandlebox.c (gtk_handle_box_draw): remove
9631
9632         * gtk/gtkhpaned.c (gtk_hpaned_draw): remove
9633
9634         * gtk/gtklayout.c (gtk_layout_draw): remove
9635
9636         * gtk/gtklist.c (gtk_list_draw): remove
9637
9638         * gtk/gtklistitem.c (gtk_list_item_draw): remove
9639
9640         * gtk/gtkmenu.c (gtk_menu_draw): remove
9641
9642         * gtk/gtkmenubar.c (gtk_menu_bar_draw): remove
9643
9644         * gtk/gtkmenuitem.c (gtk_menu_item_draw): remove
9645
9646         * gtk/gtknotebook.c (gtk_notebook_draw): remove
9647
9648         * gtk/gtkoptionmenu.c (gtk_option_menu_draw): remove
9649
9650         * gtk/gtkpacker.c (gtk_packer_draw): remove
9651
9652         * gtk/gtkrange.c (gtk_range_draw): remove
9653
9654         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_draw): remove
9655
9656         * gtk/gtkspinbutton.c (gtk_spin_button_draw): remove
9657
9658         * gtk/gtktable.c (gtk_table_draw): remove
9659
9660         * gtk/gtktearoffmenuitem.c (gtk_tearoff_menu_item_draw): remove
9661
9662         * gtk/gtktext.c (gtk_text_draw): remove
9663
9664         * gtk/gtktextview.c (gtk_text_view_draw): remove
9665
9666         * gtk/gtktogglebutton.c (gtk_toggle_button_draw): remove
9667
9668         * gtk/gtktoolbar.c (gtk_toolbar_draw): remove
9669
9670         * gtk/gtktree.c (gtk_tree_draw): remove
9671
9672         * gtk/gtktreeitem.c (gtk_tree_item_draw): remove
9673
9674         * gtk/gtktreeview.c (gtk_tree_view_draw): remove
9675
9676         * gtk/gtkviewport.c (gtk_viewport_draw): remove
9677
9678         * gtk/gtkvpaned.c (gtk_vpaned_draw): remove
9679
9680         * gtk/gtkvscale.c (gtk_vscale_draw): remove
9681
9682         * gtk/gtkwindow.c (gtk_window_draw): remove
9683
9684 2000-20-01  Anders Carlsson  <andersca@gnu.org>
9685
9686         * gtk/gtktogglebutton.c (gtk_toggle_button_draw): Fix bug when
9687         a GtkToggleButton is both insensitive and active, it was being
9688         drawn by the GtkButton draw handler which doesn't check the
9689         state. Now it's calling gtk_toggle_button_paint instead.
9690         
9691 2000-12-01  Havoc Pennington  <hp@redhat.com>
9692
9693         * gtk/gtktextdisplay.c (gtk_text_layout_draw): don't create
9694         dangling pointers to the appearance attributes from the 
9695         line display
9696
9697         * gdk/gdkdraw.c (gdk_drawable_get_image): allow negative
9698         width/height to mean "full width/height of drawable"
9699
9700         * gtk/gtktextview.h, gtk/gtktextview.c: Implement double/triple
9701         click to select word/line
9702         
9703         * gtk/gtktextiter.c (test_log_attrs): include paragraph delimiters 
9704         when getting log attrs. Get a slice, so that pixmaps and stuff
9705         are properly handled.
9706
9707         * gtk/gtktextbuffer.c (paste): Fix pasting to work properly if you
9708         paste into the selection (replaces selection now, previously
9709         crashed or added to selection). Reveals longstanding btree bug -
9710         select multiple lines, middle-click on the selection, boom. This
9711         isn't related to my changes though.
9712
9713         * gtk/gtkentry.c (gtk_entry_move_forward_word): Update to reflect
9714         PangoLogAttrs changes
9715         (gtk_entry_move_backward_word): ditto
9716
9717         * gtk/gtktextlayout.h, gtk/gtktextlayout.c: Make the iter motion
9718         functions return bool whether the iter moved onto a
9719         dereferenceable position.
9720  
9721         * gtk/gtktextview.h, gtk/gtktextview.c: Add a bunch of public
9722         functions for motion in terms of display lines.
9723
9724         * gtk/gtktextmark.c (gtk_text_mark_get_buffer): Add function to
9725         get the buffer a mark is inside
9726         
9727 2000-12-01  Alexander Larsson  <alexl@redhat.com>
9728
9729         * gdk/linux-fb/Makefile.am:
9730         * modules/linux-fb/Makefile.am:
9731         Freetype 2 final uses freetype-config
9732
9733         * gdk/linux-fb/gdkpango-fb.c:
9734         Upgrade to use Freetype 2 final.
9735         More flexible support for font aliases, this also fixes a bug with
9736         GtkFontSelector, as the aliases must be visible in the font/family list,
9737         or GtkFontSelector reads uninitialized memory.
9738
9739 2000-11-30 Hidetoshi Tajima  <tajima@eng.sun.com>
9740
9741         * modules/input/gtkimcontextxim.c (setup_im): Add NULL argument to
9742         XGetIMValues to properly terminate variable argument list, and do
9743         NULL return check for ic_values and xim_styles.
9744
9745         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset):
9746         Restore preedit state after XmbResetIC().
9747         
9748         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_get_ic):
9749         XvaCreateNestedList() should take XvaNestedList, but not
9750         XvaNestedList*.
9751
9752         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset,
9753         preedit_draw_callback, preedit_caret_callback): Match
9754         "preedit-changed" signal name to "preedit_changed" to be
9755         consistent to the spec.
9756
9757         * gtk/gtkimcontextsimple.c (check_table):
9758         Match "preedit-changed" to "preedit_changed" to be consistent
9759         to the spec.
9760
9761 Thu Nov 30 23:03:04 2000  Owen Taylor  <otaylor@redhat.com>
9762
9763         * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Properly handle
9764         gc->clip_region == NULL>
9765
9766 2000-11-30  Tor Lillqvist  <tml@iki.fi>
9767
9768         Changes by Hans Breuer:
9769         
9770         * gdk/win32/gdkwindow-win32.c (gdk_window_set_geometry_hints):
9771         Dont't use negative width and height as max_hints. This fixes
9772         Owen's recent testgtk changes for win32.
9773
9774         * gdk/win32/gdkgc-win32.c (gdk_win32_hdc_get,
9775         gdk_win32_hdc_release): These are exported and may be called with
9776         other drawable types than our GdkDrawableImplWin32 (?).
9777
9778         * gdk/gdkwindow.c: Backing store appears to work on Windows now,
9779         so always #define USE_BACKING_STORE.
9780
9781         * gtk/gtktextdisplay.c (render_layout_line): Use g_print instead
9782         of printf for debugging output.
9783
9784         * gtk/gtktextlayout.c (allocate_child_widgets): Ditto.
9785         
9786         * gtk/gtktextview.c (gtk_text_view_child_allocated): Ditto.
9787
9788         * gtk/gtkmain.h (GTKMAIN_C_VAR): Win32 fix for dllimport
9789         declaration.
9790
9791         * gtk/gtktexttypes.h: Ditto.
9792
9793         * gtk/gtklabel.c (gtk_label_set_markup_with_accel): Return a value
9794         (GDK_VoidSymbol) also if in case of arg check failure.
9795
9796         * gtk/gtkimcontextsimple.c
9797         (gtk_im_context_simple_get_preedit_string): Don't assign cursor
9798         position to the pointer, but to the variable it points to.
9799
9800         * gtk/makefile.msc.in (DEFINES): Define GTK_VERSION.
9801
9802         * gtk/gtk.def: Updates.
9803
9804 2000-11-29  Elliot Lee  <sopwith@redhat.com>
9805
9806         * gtk/gtkmodelsimple.c: Inherits from GTK_TYPE_OBJECT, not
9807         GTK_TYPE_TREE_MODEL.
9808
9809 2000-11-29  Alexander Larsson  <alexl@redhat.com>
9810
9811         * gdk/linux-fb/gdkfont-fb.c (gdk_font_from_description):
9812         Set the size of the font from the description.
9813         (gdk_text_width): Gross hack that calculates the width
9814         of text by text_length * size/2. This is necessary because
9815         GtkLabel does some ugly gtk_string_width call to calculate
9816         an good size.
9817         (linux-fb/gdkprivate-fb.h): Removed unused field FT_Face.
9818
9819 Wed Nov 29 13:39:19 GMT 2000  Tony Gale <gale@gtk.org>
9820
9821         * docs/tutorial/gtk-tut.sgml: DND updates
9822
9823 2000-11-29  Alexander Larsson  <alexl@redhat.com>
9824
9825         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_clear_area):
9826         If you pass width or height == 0 to gdk_window_clear_area they
9827         should be calculated from the window size.
9828
9829 2000-11-29  Alexander Larsson  <alexl@redhat.com>
9830
9831         * gdk/linux-fb/gdkinput-ps2.c (move_pointer): If there is
9832         a grab, but no grab-cursor, use the cursor from the grabbed
9833         window. (gdk_fb_window_send_crossing_events): Send normal
9834         enter/leave notifications if grab and owner_events == TRUE.
9835
9836 2000-11-29  Alexander Larsson  <alexl@redhat.com>
9837
9838         * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
9839         Do implicit button grabs, even if the window doesn't
9840         want the event.
9841         (gdk_fb_window_send_crossing_events): If there is a
9842         grab, only the grabbed window gets normal enter/leave
9843         notifications. On ungrab go from grabbed window to current.
9844         Don't send any notification to b when propagating from c -> b.
9845         If setting a grab on window, don't set prev_window.
9846         (handle_mouse_input): Send enter/leave events to the window the
9847         mouse is over, not the grabbed one.
9848         
9849 2000-11-28  Elliot Lee  <sopwith@redhat.com>
9850
9851         * gdk/gdkregion-generic.c: Zap warning.
9852         * modules/input/Makefile.am: Only build im-xim if USE_X11 is enabled
9853         * gtk/gtkrc.c: s/strcpy/memcpy/ to save a few nanoseconds.
9854
9855 2000-11-28  Alexander Larsson  <alla@lysator.liu.se>
9856
9857         * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
9858         The cursor should be hidden if it is part of either the
9859         source or destination region. Not only if it is in both.
9860         (gdk_window_set_transient_for): Silence warnings.
9861
9862 2000-11-28  Alexander Larsson  <alexl@redhat.com>
9863
9864         * gdk/linux-fb/mifillarc.c (miFillArcSliceSetup):
9865         The default mode in X is Pie Arcs, therefore that is
9866         what Gtk+ uses.
9867
9868 2000-11-28  Alexander Larsson  <alexl@redhat.com>
9869
9870         * gdk/linux-fb/gdkinput-ps2.c:
9871         Implement correct EnterNotify/LeaveNotify:
9872         (gdk_fb_window_send_crossing_events): New function that sends
9873         all GdkCrossingEvents from the last mouse-window to the specified
9874         destination.
9875         (gdk_fb_window_visibility_crossing): Removed function.
9876         (handle_mouse_input): Use gdk_fb_window_send_crossing_events()
9877         (send_button_event, gdk_fb_cursor_reset): Use gdk_window_at_pointer
9878         instead of gdk_window_get_pointer() for better readability.
9879
9880         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab,
9881         gdk_fb_pointer_ungrab): Use gdk_fb_window_send_crossing_events.
9882
9883         * gdk/linux-fb/gdkprivate-fb.h:
9884         removed gdk_fb_window_visibility_crossing, added
9885         gdk_fb_window_send_crossing_events and gdk_fb_find_common_ancestor.
9886
9887         gdk/linux-fb/gdkwindow-fb.c (gdk_fb_find_common_ancestor):
9888         New function that finds the least common ancestor of two windows.
9889         (gdk_window_show, gdk_window_hide):
9890         Use gdk_fb_window_send_crossing_events.
9891         (gdk_fb_window_move_resize): Send configure events to toplevel
9892         windows. Use gdk_fb_window_send_crossing_events.
9893
9894 2000-11-27  Havoc Pennington  <hp@redhat.com>
9895
9896         * gtk/gtkprivate.h (enum): Remove a trailing comma
9897
9898 2000-11-27  Federico Mena Quintero  <federico@helixcode.com>
9899
9900         * gtk/gtkspinbutton.c (gtk_spin_button_set_adjustment): Connect to
9901         the "changed" callback of the adjustment.  We need to redraw the
9902         spin button's arrows when the adjustment's range changes.
9903         (adjustment_changed_cb): Draw the arrows.
9904         (gtk_spin_button_value_changed): Draw the arrows.
9905
9906 2000-11-23  Alexander Larsson  <alexl@redhat.com>
9907
9908         * gdk/linux-fb/gdkselection-fb.c:
9909         Initial selection implementation.
9910
9911         * gtk/gtkselection.c:
9912         if GDK_WINDOWING_FB defined, include linux-fb/gdkfb.h and look up
9913         requestor in gtk_selection_request.
9914         
9915         * gdk/linux-fb/gdkfb.h, gdk/linux-fb/gdkglobals-fb.c:
9916         Added gdk_selection_property atom.
9917
9918         * gdk/linux-fb/gdkprivate-fb.h:
9919         Export _gdk_selection_window_destroyed.
9920         Removed mask_off_x/y from GdkCursorPrivateFB.
9921         Removed hbearing, added top, left to PangoFBGlyphInfo.
9922
9923         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
9924         Call _gdk_selection_window_destroyed
9925         (_gdk_windowing_window_init): Don't call gdk_cursor_new() before
9926         the root window has been created.
9927         (static_dx_hack, static_dy_hack, compare_draw_rects,
9928         gdk_fb_window_move_resize): Remove unnecessary sort of rectangles
9929         in region. They are already sorted. Instead just traverse them in
9930         reverse if draw_direction < 0.
9931         
9932         * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
9933         Double-clicks must be sent after the normal button_press.
9934         (gdk_fb_cursor_unhide): Remove usage of mask_off_x/y. Clean up.
9935         
9936         * gdk/linux-fb/gdkgeometry-fb.c (gdk_window_scroll):
9937         Pass _gdk_fb_screen_gc instead of NULL.
9938
9939         * gdk/linux-fb/gdkmain-fb.c (_gdk_windowing_init_check):
9940         Initialize gdk_selection_property.
9941         (gdk_event_make): Remove unused code.
9942
9943         * gdk/linux-fb/gdkcursor-fb.c:
9944         Make the pixmap for the cursor the same size as the mask. Also remove
9945         the mask_off_x/y fields in GdkCursorPrivateFB and combine
9946         _gdk_cursor_new_from_pixmap() and gdk_cursor_new_from_pixmap()
9947         Now the whole cursor is visible.
9948
9949         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
9950         Fix bug where xdest+height instead of ydest+height was used
9951         to calculate if the source and dest overlapped. This fixes the
9952         redraw bug when the main window in testgtk was scrolled when
9953         partially covered by a tall window.
9954         Copy rectangles in region in order depending on draw_direction.
9955         Also moved the draw_direction flipping of start_y and end_y into
9956         the gc functions, as this might not be what all of them want.
9957         (gdk_fb_draw_lines): Support dashed lines.
9958         (gdk_fb_draw_glyphs): Clean up glyph placement. Also fix positioning
9959         so that the text is positioned correctly (was 1 pixel high).
9960
9961         gdk/linux-fb/gdkgc-fb.c:
9962         Initialize cap_style to GTK_CAP_BUTT. This fixes a problem where
9963         all lines were drawn a pixel to short. Also checked the default of
9964         the rest of the values, and they're the same as X now.
9965
9966         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_glyph_info):
9967         Clean up pixel positioning of the glyphs. Just use bgy->top and
9968         bgy->left. Also used PANGO_PIXEL where appropriate and added 0.5
9969         to all divisions to get correct rounding behaviour.
9970
9971         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_draw_drawable_generic,
9972         gdk_fb_draw_drawable_memmove, gdk_fb_draw_drawable_aa_24):
9973         Moved start_y/end_y flip into draw_drawable implementations.
9974         Flip also x rendering when draw_direction < 0.
9975         Remove unneccesary multiply with draw_direction.
9976
9977 Wed Nov 22 14:11:19 GMT 2000  Tony Gale <gale@gtk.org>
9978
9979         * docs/tutorial/gtk-tut.sgml:
9980           - get rid of gtk_toggle_button_toggled FUD
9981           - start DND section - needs work - based on:
9982                 http://wolfpack.twu.net/docs/gtkdnd/
9983
9984 2000-11-22  Alexander Larsson  <alexl@redhat.com>
9985
9986         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
9987         Correct calculation of font metrics. Now GtkEntrys have sane
9988         size.
9989
9990 2000-11-22  Alexander Larsson  <alexl@redhat.com>
9991
9992         * gdk/gdktypes.h:
9993         Add new type GdkSpan
9994         
9995         * docs/reference/gdk/gdk-sections.txt,
9996         docs/reference/gdk/tmpl/regions.sgml, gdk/gdkregion-generic.c,
9997         gdk/gdkregion.h:
9998         Implement and document gdk_region_spans_intersect_foreach.
9999
10000         * gdk/linux-fb/Makefile.am, gdk/linux-fb/gdkrender-fb.c:
10001         Add new file gdkrender-fb.c which contains all core
10002         rendering code.
10003         Add gdk_fb_fill_rectangle_generic (old rectangle code) and
10004         gdk_fb_fill_rectangle_simple_16, gdk_fb_fill_rectangle_simple_32
10005         (optimized rectangle fillers).
10006
10007         * gdk/linux-fb/gdkdrawable-fb2.c:
10008         Move all rendering code to gdkrender-fb.c.
10009         Change from using GdkRectangles and GdkSegments for spans to GdkSpan.
10010         Use the new span intersection functions in gdk_fb_fill_spans.
10011         gdk_fb_draw_rectangle() clips filled rectangles and calls
10012         gc->fill_rectangle with the result.
10013         gdk_fb_fill_spans() gets extra argument "sorted".
10014
10015         * gdk/linux-fb/gdkevents-fb.c:
10016         Remove unused includes and defines.
10017         New function gdk_fb_get_time() to get correct time for events.
10018
10019         * gdk/linux-fb/gdkinput-ps2.c:
10020         Use gdk method of generating multiple-clicks (gdk_event_button_generate)
10021         Make sure to set the time of all events.
10022
10023         * gdk/linux-fb/gdkmain-fb.c:
10024         Use gdk_fb_get_time ().
10025
10026         * gdk/linux-fb/gdkprivate-fb.h:
10027         New virtual GC calls: fill_span & fill_rectangle.
10028         Export gdk_fb_get_time().
10029         gdk_fb_fill_spans() gets extra argument "sorted".
10030
10031         * gdk/linux-fb/mi*.c:
10032         Use GdkSpan instead of GdkRectangle.
10033         Pass correct sorted to gdk_fb_fill_spans. (sorted value taken
10034         from XFree 4 source)
10035         
10036 2000-11-22    <jrb@redhat.com>
10037
10038         * gtk/gtktreeview.c (gtk_tree_view_calc_size): It's amazing what
10039         reversing the order in an if statement will do.  Doing so managed
10040         to make the treemodelsort half work.  Other half will follow after
10041         I get the insert function fully fixed.
10042
10043 2000-11-21  Elliot Lee  <sopwith@redhat.com>
10044         * gtk/gtkmenushell.h: GdkEventButton->button can occupy significantly
10045         more than 2 bits. Besides, I need to implement an evil hack. :)
10046
10047 Tue Nov 21 14:17:51 GMT 2000  Tony Gale <gale@gtk.org>
10048
10049         * docs/tutorial/gtk-tut.sgml: minor corrections
10050
10051 2000-11-20  Jonathan Blandford <jrb@redhat.com>
10052         * gtk/gtktreemodelsort.h: Add convertion functions to let you
10053           convert to and from relative path's and iters.
10054
10055         * gtk/treestoretest.c: move to having a sorted/unsorted view.  Start
10056           testing sorting functions a bit better.  Currently broken -- will
10057           fix in morning.
10058
10059 2000-11-20  Havoc Pennington  <hp@redhat.com>
10060
10061         * gtk/gtkwidget.c: Documented a bunch of functions in here
10062         (gtk_widget_realize): Warn if you try to realize
10063         a widget with no parent that isn't a toplevel
10064         (gtk_widget_intersect): return a gboolean
10065
10066 2000-11-20  Havoc Pennington  <hp@redhat.com>
10067
10068         * gtk/gtktextview.c, gtk/gtktextlayout.c, gtk/gtktextchild.c,
10069         gtk/testtext.c: Semi-finish widget embedding. Need guffaw
10070         scrolling to be implemented in GDK to finish. Also, right now
10071         we just size_allocate all children on every layout change,
10072         which is pretty lame. Test commented out of testtext.c, 
10073         until it works better.
10074
10075 2000-11-20  Alexander Larsson  <alla@lysator.liu.se>
10076
10077         * gdk/linux-fb/gdkdrawable-fb2.c:
10078         Removed unused arguments from gdk_fb_drawable_get_pixel().
10079
10080         * gdk/linux-fb/gdkinput-ps2.c (handle_input_ps2):
10081         Renamed fidur specific mouse packet data in MouseDevice to
10082         generic. Used it in ps2 mouse handling code to avoid blocking
10083         reads.
10084
10085 Sat Nov 18 18:00:17 2000  Jonathan Blandford  <jrb@redhat.com>
10086
10087         * demos/gtk-demo/main.c: Changed to have the list become
10088         non-italic when the demo window is destroyed through an external
10089         event (like a close button).  Doing so found three bugs in the
10090         widget.
10091
10092         * demos/gtk-demo/*.c (do_*): Changed to return the toplevel window.
10093
10094         * gtk/gtkliststore.c (gtk_list_store_set_cell): emit "change" when
10095         we actually set the cell.
10096
10097         * gtk/gtktreestore.c (gtk_tree_store_set_cell): ditto
10098
10099         * gtk/gtktreeselection.c (gtk_tree_selection_real_select_node):
10100         free a leaked path.  Thanks memprof.
10101
10102 Sat Nov 18 11:58:17 2000  Owen Taylor  <otaylor@redhat.com>
10103
10104         * gdk/gdkrgb.c (gdk_rgb_allocate_images): Fix 
10105         off-by-one error when destroying allocated segments
10106         on failure. (Elliot)
10107
10108 Sat Nov 18 11:45:09 2000  Owen Taylor  <otaylor@redhat.com>
10109
10110         * gtk/gtkcalendar.c: Patch from ChiDeok Hwang to fix
10111         memleaks found by Evan Martin.
10112
10113 Fri Nov 17 20:14:20 2000  Owen Taylor  <otaylor@redhat.com>
10114
10115         * Released 1.3.2
10116         
10117         * NEWS: Updates for 1.3.2
10118
10119 2000-11-17  Tor Lillqvist  <tml@iki.fi>
10120
10121         * gdk/gdkevents.h: Add comment that GdkXEvent isn't only for XEvent,
10122         but in general for window system specific events.
10123
10124         * gtk/gtk.def
10125         * gtk/makefile.mingw.in
10126         * gtk/makefile.msc.in: Update.
10127         
10128         * gtk/gtktexttypes.h: Mark variables for export/import from DLL.
10129
10130 Thu Nov 16 16:11:39 2000  Owen Taylor  <otaylor@redhat.com>
10131
10132         * gtk/Makefile.am (EXTRA_DIST): Do not, in any circumstances,
10133         distribute gtk.immodules.
10134
10135         * gtk/Makefile.am (install-data-local): Don't install the
10136         gtk.immodules file created for the uninstalled modules;
10137         instead run gtk-query-immodules after install
10138
10139 Wed Nov 15 21:51:31 2000  Owen Taylor  <otaylor@redhat.com>
10140
10141         * modules/input/Makefile.am (im_xim_la_LDFLAGS): Point
10142         -rpath to the right install location.
10143
10144         * modules/input/Makefile.am (im_inuktitut_la_LDFLAGS): Remove
10145         -export-dynamic.
10146
10147         * gtk/gtkthemes.c (gtk_theme_engine_get): Set engine->name
10148         properly.
10149
10150 2000-11-15  Havoc Pennington  <hp@pobox.com>
10151
10152         * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): Apply
10153         patch from Mikael Hermansson to temporarily stop blinking while
10154         the user is using the keyboard to type or navigate. 
10155
10156         Also, when blinking, stay on for longer than we stay off. Also,
10157         return from start_cursor_blink if !cursor_visible, to save
10158         checking that flag all over the place before we call
10159         start_cursor_blink.
10160
10161 Thu Nov 16 01:25:51 2000  Robert Brady  <robert@suse.co.uk>
10162
10163         * gtk/gtkrc.*: Remove the locale-specific gtkrc's, as they
10164         only contain a "fontset" line, which is now ignored.
10165
10166         * gtk/gtkentry.c (gtk_entry_button_release): Make 
10167         double-click-to-select-word work.
10168         
10169 Wed Nov 15 20:16:54 2000  Owen Taylor  <otaylor@redhat.com>
10170
10171         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): 
10172         Don't move back one char when we are actually at the end of the 
10173         paragraph.
10174
10175 2000-11-15  Robert Brady  <robert@suse.co.uk>
10176
10177         * modules/input/iminuktitut.c (inuktitut_compose_seqs): 
10178         'o' < 'p'.
10179         
10180         * gtk/gtkmain.c: s/CODSET/CODESET/, include <libintl.h> for
10181         bind_textdomain_codeset.
10182
10183         (gtk_init_check): Make the warning about translating default:LTR
10184         sterner.
10185         
10186 Wed Nov 15 18:39:40 2000  Owen Taylor  <otaylor@redhat.com>
10187
10188         * **/Makefile.am : remove unecessary rules for win32-specific
10189         config-substituted targets. If you want these rules, use
10190         --enable-maintainer-mode (called automatically by autogen.sh).
10191         Stops a lot of unneccessary make-time warnings.
10192
10193         * gtk/gtktext{layout,display}.c: Factor in total width as
10194         well as screen when figuring alignment for word-wrap as well as
10195         no wrap; this is necessary to handle lines that cannot be wrapped
10196         at all.
10197
10198 2000-11-15  Havoc Pennington  <hp@redhat.com>
10199
10200         * gtk/testtext.c: Implement essential color cycling feature
10201
10202 2000-11-15  Havoc Pennington  <hp@redhat.com>
10203
10204         * gtk/gtktextview.c (changed_handler): Invalidate the side windows
10205         when we invalidate the main window.
10206
10207         * gtk/testtext.c (create_view): Get rid of text_changed_callback,
10208         GtkTextView will now invalidate the side windows for us when text
10209         changes.
10210
10211 Wed Nov 15 16:02:20 2000  Owen Taylor  <otaylor@redhat.com>
10212
10213         * gtk/gtktextview.c (changed_handler): Call scroll_calc_now()
10214         unconditionally, since we may need to update the horizontal
10215         scrollbars even if the height didn't change.
10216
10217         * gtk/gtktextlayout.c (add_preedit_attrs): Always get
10218         the extra attrs, since some of them affect size.
10219
10220         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Factor in
10221         x_offset correctly.
10222
10223 2000-11-15  Havoc Pennington  <hp@redhat.com>
10224
10225         * gtk/gtktextlayout.c (set_para_values): If indent is negative,
10226         don't move the first line out into the margin, instead move the
10227         whole paragraph in order to make space for the first line within 
10228         the margin
10229
10230 2000-11-15  Havoc Pennington  <hp@redhat.com>
10231
10232         * gtk/gtktextview.c (changed_handler): offset redraw rect by
10233         xoffset in addition to yoffset, so horizontal scrolling doesn't
10234         break redraws
10235
10236 2000-11-15  Havoc Pennington  <hp@redhat.com>
10237
10238         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Remove extra pixel
10239         from the cursor
10240         (render_layout_line): fix reversed test that caused weird
10241         underlines to get drawn
10242
10243 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
10244
10245         * gdk/linux-fb/gdkprivate-fb.h:
10246         Fix debug macros.
10247         
10248 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
10249
10250         * gdk/linux-fb/gdkprivate-fb.h:
10251         Added virtual functions set_pixel, get_color,
10252         fill_span and draw_drawable to the GC.
10253         Added global _gdk_fb_screen_gc to use instead of
10254         NULL when drawing to the screen.
10255         Added _gdk_fb_gc_calc_state() prototype.
10256
10257         * gdk/linux-fb/gdkgc-fb.c:
10258         Call _gdk_fb_gc_calc_state() on any gc state change.
10259
10260         * gdk/linux-fb/gdkglobals-fb.c:
10261         Add _gdk_fb_screen_gc
10262                 
10263         * gdk/linux-fb/gdkdrawable-fb2.c:
10264         _gdk_fb_gc_calc_state() calculates best functions
10265         for the GC state and depth.
10266         Moved bpp specialized code to separate functions.
10267         Added optimized 24 bpp AA draw_drawable.
10268
10269         * gdk/linux-fb/gdkevents-fb.c:
10270         Silence gcc warning.
10271
10272         * gdk/linux-fb/gdkimage-fb.c:
10273         Use _gdk_fb_screen_gc
10274
10275         * gdk/linux-fb/gdkwindow-fb.c:
10276         Init and use _gdk_fb_screen_gc
10277
10278         * gdk/linux-fb/mitypes.h:
10279         Remove unused types.
10280
10281 2000-11-14  Havoc Pennington  <hp@pobox.com>
10282
10283         * gtk/gtktextlayout.c (add_cursor): use PANGO_PIXELS() to convert
10284         to pixels
10285
10286 2000-11-14  Havoc Pennington  <hp@pobox.com>
10287
10288         * gtk/testtextbuffer.c (fill_buffer): change "offset" to "rise"
10289
10290         * gtk/gtktexttypes.h (GTK_TEXT_UNKNOWN_CHAR): Add macro for
10291         unknown char, no real reason we were using a variable. 
10292         Remove gtk_text_unknown_char variable. Fix all the text widget
10293         files accordingly.
10294
10295         * gtk/gtktexttypes.c: Change "unknown character" to 0xFFFC, 
10296         since the Unicode spec seems to prefer that character for our
10297         purposes.
10298
10299 Wed Nov 15 02:18:01 2000  Robert Brady  <robert@suse.co.uk>
10300
10301         * gtk/gtkrc.c (gtk_rc_get_im_module_file): The return 
10302         value of g_getenv() isn't freeable, so g_strdup it.
10303
10304         * modules/input/inuktitut.c: Inuktitut input method.
10305
10306         * modules/input/Makefile.am: Build this.
10307         
10308 2000-11-14  Elliot Lee  <sopwith@redhat.com>
10309
10310         * gtk/Makefile.am: Install gtk.immodules, needed for operation
10311         of gtk programs.
10312
10313 Tue Nov 14 20:13:06 2000  Owen Taylor  <otaylor@redhat.com>
10314
10315         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): Fix
10316         reversed > that was causing Home to go to end of previous line.
10317
10318         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_filter_keypress): Ignore
10319         modified-keypresses (leave for bindings.)
10320
10321         * modules/input/Makefile.am: Remove useless -export-dynamic
10322         from module LDFLAGS.
10323
10324 2000-11-14  Havoc Pennington  <hp@redhat.com>
10325
10326         * gdk/gdkpango.c (gdk_draw_layout_line): Draw underlines one pixel
10327         higher.
10328
10329         * gtk/gtktextdisplay.c (render_layout_line): Take rise into
10330         account. Also, render rise, underline, background, etc. for
10331         pixbufs as well as text. Also, draw underlines one pixel higher.
10332
10333         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): Add a
10334         PangoAttribute for the rise, so it gets drawn properly. Also,
10335         add the GtkTextAppearance attribute for pixbuf/widget segments
10336         as well; we should go ahead and have rise, underline, background,
10337         stipple work for those
10338
10339         * gtk/gtktexttag.c: Rename "offset" property to "rise" to match
10340         Pango
10341
10342 2000-11-15  Tor Lillqvist  <tml@iki.fi>
10343
10344         * gtk/makefile.{mingw,msc}.in (gtk_OBJECTS): Add new objects.
10345
10346         * gtk/gtk.def: Update.
10347
10348         * gtk/gtkrc.c: Can't check for G_OS_WIN32 until glib.h has been
10349         included.
10350         (gtk_rc_get_im_module_file): Use run-time installation directory
10351         on Win32.
10352
10353         * gdk/win32/rc/gdk.rc: Remove.
10354         * gdk/win32/rc/gdk.rc.in: New file.
10355         * gdk/win32/rc/Makefile.am: New file
10356         * gdk/win32/Makefile.am: Corresponding changes.
10357
10358         * gtk/gtk.rc: Remove.
10359         * gtk/gtk-win32.rc.in: New file.
10360         * gtk/Makefile.am: Corresponding changes.
10361
10362         * configure.in: Corresponding changes.
10363
10364         * gtk/gtkcompat.h.win32: Remove, useless. A distribution already
10365         has a built gtkcompat.h. Developers using CVS code on Win32 can
10366         hand-edit it from gtkcompat.h.in.
10367
10368         * gtk/makefile.{mingw,msc}.in: Correspondingly don't try to make
10369         gtkcompat.h from gtkcompat.h.win32.
10370
10371 2000-11-14  Havoc Pennington  <hp@redhat.com>
10372
10373         * gtk/gtktextview.c (gtk_text_view_drag_motion): Fix drag-and-drop
10374         to default to GDK_ACTION_MOVE if the drag is within a single
10375         widget. Defaults to GDK_ACTION_COPY between widgets.
10376
10377 Mon Nov 13 14:43:48 2000  Owen Taylor  <otaylor@redhat.com>
10378
10379         * demos/Makefile.am (test-inline-pixbufs.h): Fix srcdir != builddir
10380
10381         * gtk/Makefile.am (INCLUDES): Add -I$(builddir)/gtk
10382
10383         * gtk/stock-icons/Makefile.am (gtkstockpixbufs.h): Handles
10384         srcdir != builddir
10385
10386         * modules/input/Makefile.am (INCLUDES): add $(top_srcdir)/gdk
10387
10388         * configure.in (GTK_VERSION): Up to 1.3.2
10389
10390         * modules/input/Makefile.am (im_xim_la_SOURCES): Add 
10391         gtkimcontextxim.h
10392
10393         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): Add
10394         missing doc comment.
10395
10396 2000-11-14  Alexander Larsson  <alexl@redhat.com>
10397
10398         * modules/linux-fb/basic.c:
10399         Use the glib iconv wrappers.
10400
10401 2000-11-13  Havoc Pennington  <hp@pobox.com>
10402
10403         * demos/gtk-demo/textview.c: spiff up the demo a bit; reveals
10404         still more bugs.
10405
10406         * gtk/gtktextview.c (gtk_text_view_value_changed): don't try to
10407         scroll the GdkWindows before realization.
10408
10409 2000-11-13  Havoc Pennington  <hp@redhat.com>
10410
10411         * gtk/gtktextdisplay.c (gtk_text_render_state_update): fix bug 
10412         where GC didn't always get updated properly
10413
10414         * demos/gtk-demo/textview.c (create_tags): Use subattributes
10415         of fonts instead of setting the entire font
10416
10417         * gtk/testtext.c (fill_example_buffer): Use "size" instead of
10418         setting entire font
10419
10420         * gtk/gtkdialog.c (gtk_dialog_add_button): Fix some warnings
10421
10422         * gtk/gtktexttag.h, gtk/gtktexttag.c: Explode font_desc into 
10423         a bunch of individually-settable font attributes. You can still 
10424         use the "font" and "font_desc" args, they just set all the font
10425         attributes at once.
10426
10427 2000-11-13 Elliot Lee <sopwith@redhat.com>
10428
10429         * gdk/gdk.h: Add a couple of missing G_GNUC_CONST's.
10430
10431 Mon Nov 13 14:29:32 2000  Jonathan Blandford  <jrb@redhat.com>
10432
10433         * gtk/gtktreemodel.c (gtk_tree_path_copy): confirm path != NULL
10434         * gtk/gtktreemodel.c (gtk_tree_path_free): ditto
10435
10436         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): make
10437         work better.
10438
10439 2000-11-13  Havoc Pennington  <hp@redhat.com>
10440
10441         * gtk/gtkimmodule.c (gtk_im_module_init): Free the filename of 
10442         the module file.
10443
10444         * gtk/gtktexttag.c (gtk_text_attributes_copy): fix memory leak of
10445         dest->language
10446
10447         * gtk/testtext.c: Test pixels above/below/inside paragraphs
10448         settings
10449
10450         * gtk/gtktextview.c: Implement object args and setters/getters for
10451         all the aspects of the GtkTextAttributes that are not set from
10452         GtkWidget attributes. This is spacing, justification, margins,
10453         etc.
10454
10455         (gtk_text_view_set_arg)
10456         (gtk_text_view_get_arg): implement get/set for editable, wrap mode
10457         args
10458         (gtk_text_view_class_init): Add args for justify, left_margin,
10459         right_margin, indent, and tabs
10460         
10461
10462         * gtk/gtktextlayout.c (set_para_values): fix to display indent
10463         attribute properly
10464
10465         * gtk/gtktexttag.c: Remove left_wrapped_line_margin attribute, 
10466         replace with indent attribute
10467
10468         * gtk/gtktextlayout.c (set_para_values): multiply indent by
10469         PANGO_SCALE
10470
10471         * gtk/gtktextdisplay.c (render_para): Use PangoLayoutIter,
10472         rearranging code to do that
10473         (gtk_text_layout_draw): Pass in the y for the whole LineDisplay,
10474         i.e. don't subtract the top_margin first, just to keep
10475         all margin-futzing in one place.
10476
10477         * gdk/gdkpango.c (gdk_draw_layout): Use PangoLayoutIter
10478
10479         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Remove
10480         special case of last line, Pango now handles this itself.
10481         (gtk_text_layout_get_iter_at_pixel): Fix incorrect clamp of the 
10482         Y coordinate
10483         (gtk_text_layout_move_iter_to_x): port to use PangoLayoutIter
10484         (find_display_line_above): wasn't moving the byte index as it
10485         iterated over lines, so always returned byte 0. Also, port to use
10486         PangoLayoutIter.
10487         (find_display_line_below): same problem as
10488         find_display_line_above. Also, port to use PangoLayoutIter.
10489
10490 2000-11-13  Alexander Larsson  <alexl@redhat.com>
10491
10492         * gdk/linux-fb/*.[ch]:
10493         Massive reindent to gtk+ standard. My hands hurt.
10494
10495         * gdk/linux-fb/gdkcolor-fb.c:
10496         Move GdkColorPrivateFB from inherited to windowing_data
10497
10498         * gdk/linux-fb/gdkcursor-fb.c:
10499         _gdk_cursor_new_from_pixmap made static
10500
10501         * gdk/linux-fb/gdkdnd-fb.c:
10502         GdkDragContextPrivate moved to windowing_data
10503
10504         * gdk/linux-fb/gdkdrawable-fb2.c:
10505         Removed endian.h, use glib endianness macros instead
10506         Some cleanups in the usage of GDK_DRAWABLE_FBDATA
10507         and GDK_DRAWABLE_IMPL_FBDATA
10508
10509         * gdk/linux-fb/gdkfont-fb.c:
10510         Add empty gdk_font_load(). Needed for linking of Gtk+.
10511
10512         * gdk/linux-fb/gdkimage-fb.c:
10513         Removed endian.h, use glib endianness macros instead
10514         Moved GdkImagePrivateFB to windowing_data
10515         gdk_image_new_bitmap didn't always allocate enough
10516         memory.
10517
10518         * gdk/linux-fb/gdkinput-ps2.c:
10519         Added semi-working support for MS serial mice.
10520
10521         * gdk/linux-fb/gdkprivate-fb.h:
10522         s/GdkWindowPrivate/GdkWindowObject/
10523         Removed GdkWindowPrivate typedef
10524         s/GDK_DRAWABLE_P/GDK_DRAWABLE_FBDATA/
10525         Removed GDK_DRAWABLE_P
10526         Move GdkColorPrivateFB from inherited to windowing_data
10527         Moved GdkImagePrivateFB to windowing_data
10528
10529         * gdk/linux-fb/gdkvisual-fb.c:
10530         Removed some unused debug code.
10531
10532         * gdk/linux-fb/gdkwindow-fb.c:
10533         Use stock cursors instead of including X headers.
10534         s/GdkWindowPrivate/GdkWindowObject/
10535
10536         * gdk/linux-fb/mitypes.h:
10537         Removed unused types.
10538
10539         * modules/linux-fb/basic.c:
10540         Use the pango fribidi wrappers.
10541
10542 2000-11-13  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
10543
10544         * gdk/linux-fb/gdkcolor-fb.c, gdk/nanox/gdkmain-nanox.c,
10545         gdk/win32/gdkcolor-win32.c, gdk/win32/gdkwin32id.c,
10546         gdk/x11/gdkcolor-x11.c, gdk/x11/gdkvisual-x11.c, gdk/x11/gdkxid.c,
10547         gtk/gtkgc.c, gtk/gtkrc.c, gtk/gtktext.c: GCompareFunc ->
10548         GEqualFunc where applicable.
10549         
10550         * gdk/linux-fb/gdkpango-fb.c: pango_font_description_compare ->
10551         pango_font_description_equal as changed in pango.
10552         
10553         * gdk/nanox/gdkmain-nanox.c: gdk_xid_compare -> gdk_xid_equal.
10554
10555         * gdk/win32/gdkcolor-win32.c: gdk_colormap_cmp -> gdk_colormap_equal.
10556
10557         * gdk/win32/gdkwin32id.c: gdk_handle_compare -> gdk_handle_equal.
10558
10559         * gdk/x11/gdkcolor-x11.c: gdk_colormap_cmp -> gdk_colormap_equal.
10560
10561         * gdk/x11/gdkvisual-x11.c: gdk_visual_compare -> gdk_visual_equal.
10562
10563         * gdk/x11/gdkxid.c: gdk_xid_compare -> gdk_xid_equal.
10564
10565         * gtk/gtkgc.c: gtk_gc_key_compare -> gtk_gc_key_equal and
10566         gtk_gc_drawable_compare -> gtk_gc_drawable_equal.
10567
10568         * gtk/gtkrc.c: gtk_rc_style_compare -> gtk_rc_style_equal and
10569         gtk_rc_styles_compare -> gtk_rc_styles_equal.
10570
10571 2000-11-12  Havoc Pennington  <hp@pobox.com>
10572
10573         * demos/gtk-demo/Makefile.am (democodedir): change demo install
10574         dir to datadir/gtk+-2.0/demo
10575
10576         * demos/gtk-demo/textview.c: Text widget demo; reveals all 
10577         sorts of text widget and Pango font bugs. Urgh.
10578
10579         * demos/gtk-demo/Makefile.am (demos): Add textview.c
10580
10581         * demos/gtk-demo/main.c (create_tree): Add instructions at top of
10582         tree that you should double click to see the demo. Fix 
10583         types of variables to reflect changed return values from 
10584         GtkTreeStore and GtkTreeViewColumn constructors.
10585
10586         * gtk/gtktextbuffer.c (gtk_text_buffer_new): ref/sink the
10587         newly-created buffer to prepare for GObject semantics
10588
10589         * gtk/testtext.c: don't leak the buffer with GObject semantics
10590
10591         * gtk/testtextbuffer.c: ditto
10592         
10593 2000-11-12  Havoc Pennington  <hp@pobox.com>
10594
10595         Rename this testgtk to gtk-demo to avoid confusion, and 
10596         install it so people can use it as a supplement to 
10597         the documentation.
10598         
10599         * demos/gtk-demo: Moved from demos/testgtk
10600
10601         * demos/testgtk: Removed
10602
10603         * configure.in: make Makefile in gtk-demo
10604         
10605         * demos/gtk-demo/Makefile.am: Install sample source to 
10606         datadir/gtk-demo (maybe there's a better place?), and 
10607         rename the binary to gtk-demo
10608         
10609         * demos/gtk-demo/main.c (load_file): Load installed sample
10610         source if source isn't found in pwd.
10611
10612 2000-11-09  Havoc Pennington  <hp@pobox.com>
10613
10614         * gtk/gtkentry.c (gtk_entry_class_init): Add an "invisible_char" 
10615         argument to set the char displayed when visibility == FALSE
10616         (gtk_entry_create_layout): If !entry->visible, replace 
10617         all chars with the "invisible char"
10618
10619         * gtk/testgtk.c: Test the invisible_char deal
10620         
10621 Mon Nov 13 02:16:33 2000  Robert Brady  <robert@suse.co.uk>
10622
10623         * gtk/gtkstyle.c (gtk_style_init): Fall back to "fixed" if we
10624         can't get a native font in the right encoding.
10625
10626 Mon Nov 13 00:09:29 2000  Robert Brady  <robert@suse.co.uk>
10627
10628         * configure.in: Chinese .pos have been renamed to zh_CN and zh_TW
10629         respectively.
10630
10631 Sun Nov 12 19:11:42 2000  Owen Taylor  <otaylor@redhat.com>
10632
10633         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_next_line):
10634         Fix warning when moving between paragraphs.
10635
10636         * gtk/gtkentry.[ch]: Change move => move_cursor, 
10637         delete => delete_from_cursor, insert => insert_at_cursor
10638
10639 Sun Nov 12 22:52:51 2000  Robert Brady  <robert@suse.co.uk>
10640
10641         * modules/input/imviqr.c: A vietnamese VIQR-based input method.
10642
10643         * modules/input/imthai-broken.c: A Thai input method for use if
10644         Thai keys are really generating Latin1 keysyms.
10645
10646         * modules/input/Makefile.am: Build these.
10647
10648 Sun Nov 12 22:15:35 2000  Robert Brady  <robert@suse.co.uk>
10649
10650         * gtk/gtkfileselection.c, gdk/win32/gdkfont-win32.c: 
10651         g_filename_{to,from}_utf8 now takes an extra parameter.
10652
10653         * gtk/gtkcalendar.c (gtk_calendar_init): Convert output of
10654         strftime into UTF-8.
10655
10656         (column_from_x, gtk_calendar_paint_day_names): Support RTL
10657         calendars.
10658
10659         (gtk_calendar_paint_day_names): Draw day names in the right 
10660         place.
10661         
10662 Sun Nov 12 14:10:09 2000  Owen Taylor  <otaylor@redhat.com>
10663
10664         * gdk/x11/gdkselection-x11.c (gdk_utf8_to_compound_text): Fix
10665         problem with using result of g_get_charset() backwards -
10666         pointed out by Mikael Hermansson <mikeh@bahnhof.se>.
10667
10668         * gtk/gtkwindow.c (gtk_window_compute_hints): Support
10669         negative min_width/height and max_width/height to
10670         mean "requisition"; this allows setting a window
10671         to be user-resizable in only one direction easily.
10672
10673         * gtk/testgtk.c (create_main_window): Remove hard-coded
10674         usize - set a default size in the vertical direction.
10675
10676 Sun Nov 12 13:33:01 2000  Owen Taylor  <otaylor@redhat.com>
10677
10678         * gtk/gtkrange.c: Add some missing casts. Support 
10679         2 and 3 button clicks on the arrows to mean 
10680         "move by pages" and "jump to end". (Like gtkspinbutton)
10681
10682 2000-11-12 Hans Breuer <Hans@Breuer.Org>
10683
10684         * gdk/win32/makefile.msc : reflect build module changes
10685
10686         * gdk/win32/gdkcursor-win32.c : can't cast to impl type directly
10687         from GdkPixmap*, cast implementation member instead.
10688
10689         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_drawable) : The
10690         passed in drawable is of type GdkDrawableImplWin32, the GdkPixmap *src 
10691         maybe either GdkDrawable or GdkDrawableImpl. Corrected all casts, add
10692         more Gdi functions return value checking. 
10693         (gdk_win32_draw_image) : use IMAGE_PRIVATE_DATA to get on the
10694         GdkImagePrivateWin32 *.
10695
10696         * gdk/win32/gdkevents-win32.c : Disable the SetCapture call to make
10697         menus useable again. Add #pragma message to keep reminded on this issue.
10698         (gdk_event_translate) : don't generate GDK_EXPOSE events for InputOnly
10699         windows. This allows to enable backing store on Win32!
10700
10701         * gdk/win32/gdkimage-win32.c (_gdk_win32_get_image) : the passed
10702         in drawable is of impl type. Correct specific type checks appropriate.
10703  
10704         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_create_from_data) : check 
10705         GDK_WINDOW_DESTROYED before allocating new resources.
10706
10707         * gdk/win32/gdkselection-win32.c : Handle GDK_WINDOW_DESTROYED case
10708
10709         * gdk/win32/gdkwindow-win32.c : more Gdi return value checking,
10710         (gdk_window_foreign_new) initialize parent handle.
10711         (gdk_window_destroy_notify) add GDK_IS_WINDOW check
10712
10713         * gdk/win32/gdkgeometry-win32.c (_gdk_window_move_resize_child) :
10714         Let the GDI invalidate the window on MoveWindow call to fix scrolling
10715         problems (e.g. main buttons in testgtk). 
10716
10717 Sat Nov 11 23:07:30 2000  Owen Taylor  <otaylor@redhat.com>
10718
10719         * gtk/gtkentry.c (gtk_entry_key_press): Call 
10720         gtk_widget_activate for GDK_Return.
10721
10722         * gtk/gtkentry.c (gtk_entry_preedit_changed_cb): Fix handling
10723         of preedit cursor position.
10724
10725 Sun Nov  5 04:24:53 2000  Owen Taylor  <otaylor@redhat.com>
10726
10727         * gtk/gtkcellrenderertextpixbuf.c: Make parent_class
10728         static.
10729
10730 Tue Sep 19 10:54:22 2000  Owen Taylor  <otaylor@redhat.com>
10731
10732         * modules/input/{gtkimcontextxim.[ch],imxim.c}: Rip
10733         out support for multiple locales; that simple doesn't
10734         work reliably with current Xlib
10735
10736         * gtk/gtkimcontext*.[ch] gtk/gtkimmulticontext.[ch]
10737         gtk/gtktextlayout.[ch] gtk/gtktextview.c gtk/gtkentry.c: 
10738         Add support for positioning the cursor within the preedit string.
10739
10740 Mon Sep 18 23:56:32 2000  Owen Taylor  <otaylor@redhat.com>
10741
10742         * modules/input/{imxim.c,gtkimcontextxim.[ch]}: Start
10743         at XIM input method module.
10744
10745         * gtk/gtktextview.c: Check for bindings after passing
10746         events to im context filter.
10747
10748 Mon Sep 18 11:50:51 2000  Owen Taylor  <otaylor@redhat.com>
10749
10750         * gtk/gtktextlayout.c (add_preedit_attrs): Handle
10751         empty attribute lists properly.
10752
10753 Sun Sep 17 10:08:16 2000  Owen Taylor  <otaylor@redhat.com>
10754
10755         * gtk/queryimmodules.c (main): Return non-zero exit
10756         status if errors were encountered querying any
10757         modules.
10758
10759         * modules/input/Makefile.am (moduledir): remove
10760         leftover bin program target.
10761
10762         * docs/make-todo: Fix typo in error message.
10763
10764 Sat Sep 16 14:04:30 2000  Owen Taylor  <otaylor@redhat.com>
10765
10766         * configure.in: Add modules/input/Makefile
10767
10768 Sat Sep 16 14:01:52 2000  Owen Taylor  <otaylor@redhat.com>
10769
10770         * gtk/gtk.h: include gtkmodule.h gtkoldeditable.h,
10771         don't include gtkthemes.h.
10772
10773         * gtk/testgtk.c gtk/testtext.c: Set environment variables
10774         to point
10775
10776         * gtk/Makefile.am: Add new .c and .h files, build 
10777         gtk-query-immodules and use it to create a gtk.immodules
10778         file for use of test programs.
10779
10780         * gtk/gtkpreview.c: remove extra blank line.
10781
10782 Sat Sep 16 13:21:04 2000  Owen Taylor  <otaylor@redhat.com>
10783
10784         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_add_table): 
10785         Add the ability to add extra tables beyond the default
10786         one, and also the ability to have compose sequences 
10787         that are prefixes of other compose sequences. 
10788
10789         * gtk/gtkimcontextsimple.c: Export a preedit string which
10790         consists of possible candidates for keystrokes that have
10791         been entered but not yet committed.
10792
10793         * gtk/gtkimcontext.[ch] gtk/immulticontext.[ch]
10794         gtk/gtkimcontextsimple.[ch]: add gtk_im_context_reset()
10795
10796         * gtk/gtkmulticontext.[ch] (gtk_im_multicontext_append_menuitems): 
10797         Add a function to add input-method switching menu items
10798         to a menu.
10799
10800         * gtk/gtkimmulticontext.[ch]: Properly handly set_client_window
10801         when switching input methods.
10802
10803         * gtk/gtkimcontextsimple.[ch]: Change the format of
10804         the compose table to allow compose tables of different
10805         lengths / sequence.
10806
10807 Sat Sep 16 13:05:48 2000  Owen Taylor  <otaylor@redhat.com>
10808
10809         * gtk/gtkimmodule.[ch]: Support routines for loading
10810         GtkIMContext implementations dynamically at runtime.
10811
10812         * modules/input/imcyrillic-translit.c: A sample input
10813         method (based on GtkIMContextSimple with an extra table),
10814         which demonstrates preedit strings and the module
10815         system for input modules
10816
10817         * gtk/queryimmodules.c: Program to query the available
10818         input modules and write the results into a file.
10819          
10820         * gtk/gtkrc.[ch] (gtk_rc_get_im_module_file): Add
10821         extra config options "im_module_file" (cache file for
10822         input method modules), and "im_module_path" - path
10823         to look for modules when generating cache file.
10824
10825         This doesn't scale.
10826
10827 Sat Sep 16 13:09:06 2000  Owen Taylor  <otaylor@redhat.com>
10828
10829         * gtk/gtkthemes.[ch] gtk/gtkmodule.[ch]: Move most of the 
10830         generic code from gtkthemes into a new abstraction
10831         GtkModule which has the logic for implementing
10832         a loadable module which implements a number of 
10833         GObject types.
10834
10835 Sat Sep 16 13:07:13 2000  Owen Taylor  <otaylor@redhat.com>
10836
10837         * gtk/gtkeditable.[ch]: Convert GtkEditable from
10838         a class into an interface  
10839         
10840         * gtk/gtkoldeditable.[ch]: Move the old editable
10841         implementation into here, so legacy widgets can
10842         still rely on the implemenation. GtkOldEditable
10843         exports GtkEditable. Make selection handling
10844         code use new text conversion functions (and
10845         handle UTF-8 as a side-effect). Use GtkClipboard
10846         for CLIPBOARD.
10847
10848         * gtk/gtktext.[ch] gtk/gtkcombo.c gtk/gtkspinbutton.c:
10849         Adopt to match above changes.
10850
10851         * gtk/gtkentry.[ch]: Implement GtkEditable directly,
10852         avoid GtkOldEditable implementation. Restructure
10853         to reduce number of places that modify state directly.
10854         Move to GtkBindingSet. Display the preedit string.
10855         Queue recomputation of PangoLayout and scroll position
10856         to improve effiency of doing complex changes naively.
10857         Add a menu with cut/copy/paste and input method selection.
10858
10859 Thu Sep 14 22:11:05 2000  Owen Taylor  <otaylor@redhat.com>
10860
10861         * gtk/gtktextlayout.[ch]: Add gtk_text_layout_set_preedit_string()
10862         to set preedit string and attributes; display preedit string by
10863         inserting string and attributes at cursor when creating the
10864         GtkTextLineDisplay.
10865
10866         * gtk/gtktextlayout.c: Move all conversions between byte
10867         positions in PangoLayout and GtkTextIter into new functions
10868         line_display_iter_to_index/index_to_iter that properly
10869         handle the preedit string.
10870
10871         * gtk/gtktextmark.[ch]: Restore gtk_text_mark_get_name, modify
10872         it to return const char * (eventually will end up
10873         as GCONST char *, most likely.)
10874
10875         * gtk/gtktextview.[ch]: Handle the preedit string, call
10876         gtk_im_context_reset() as necessary, add a menu to switch
10877         input methods.
10878         
10879         * gtk/gtktextlayout.[ch]: Remove useless
10880         gtk_text_layout_get_log_attrs() function.
10881
10882 2000-11-11  Tor Lillqvist  <tml@iki.fi>
10883
10884         * gdk/gdk.def
10885         * gtk/gtk.def: Update.
10886
10887         * gdk/win32/*.c: Add last argument to g_type_register_static()
10888         calls.
10889
10890         * gdk/win32/gdkwindow-win32.c: Silence gcc -Wall.
10891
10892         * gdk/win32/gdkevents-win32.c: Handle MSH_MOUSEWHEEL messages
10893         generated by older wheel mouse drivers. Get the correct y
10894         coordinate from WM_MOUSEWHEEL messages.
10895
10896         * gdk/win32/gdkgc-win32.c (gdk_win32_cap_style_to_string,
10897         gdk_win32_fill_style_to_string, gdk_win32_function_to_string,
10898         gdk_win32_join_style_to_string, gdk_win32_line_style_to_string):
10899         Debugging functions.
10900
10901         * gdk/win32/gdkprivate-win32.h: Declare them.
10902
10903         * gdk/win32/gdkinput-win32.h: Add declaration for
10904         gdk_input_window_destroy().
10905
10906         * gtk/makefile.mingw.in: Pass -DGTK_VERSION. Add gtktreemodel.o.
10907
10908 Fri Nov 10 19:06:41 2000  Jonathan Blandford  <jrb@redhat.com>
10909
10910         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): New
10911         function to help handle keeping things in sync.
10912
10913 Fri Nov 10 12:10:34 2000  Jonathan Blandford  <jrb@redhat.com>
10914
10915         * gtk/gtkliststore.c (gtk_model_simple_class_init): use the new
10916         BOXED marshallers.
10917
10918         * gtk/gtkliststore.c (gtk_list_store_get_column_type): Add this.
10919         (gtk_list_store_class_init): use the new BOXED marshallers.
10920
10921         * gtk/gtktreestore.c (gtk_tree_store_new_with_types): change
10922         new_with_values to new_with_types.
10923         (gtk_tree_store_get_column_type): add this.
10924         (gtk_tree_store_class_init): use the new BOXED marshallers.
10925
10926         * gtk/gtkmarshal.list: Added a number of BOXED marshallers to
10927         mirror some POINTER marshallers.
10928
10929 Thu Nov  9 11:23:22 2000  Jonathan Blandford  <jrb@redhat.com>
10930
10931         * gtk/gtktreemodel.h (struct _GtkTreeIter): added more fields to
10932         allow more interesting iterators.  Also, made the lifecycle of
10933         iterators more explicit.
10934
10935         * gtk/gtktreemodelsort.[ch]: New model for sorting.
10936
10937         * gtk/gtk-boxed.defs (GtkTreeIter, GtkTreePath): Added two boxed
10938         types.
10939
10940 2000-11-09  Alexander Larsson  <alexl@redhat.com>
10941
10942         * demos/testgtk/menus.c:
10943         Changes to make the new testgtk compile after
10944         gtk_menu_append was removed.
10945
10946         * gdk/linux-fb/gdkdrawable-fb2.c
10947         (gdk_fb_get_depth, gdk_fb_get_visual,
10948         gdk_drawable_impl_fb_class_init): Implement
10949         these drawable functions. Now GtkImages work again.
10950
10951         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Change prototype.
10952
10953         * gdk/linux-fb/gdkprivate-fb.h (_gdk_fb_get_image): Change prototype.
10954         
10955         * gdk/linux-fb/gdkmain-fb.c (fb_modes_parse_mode,
10956         gdk_fb_setup_mode_from_name, gdk_fb_set_mode, gdk_fb_display_new);
10957         Parse /etc/fb.modes, use the environment variables GDK_DISPLAY_MODE,
10958         GDK_DISPLAY_DEPTH, GDK_DISPLAY_WIDTH, GDK_DISPLAY_HEIGHT.
10959
10960 2000-11-08  Havoc Pennington  <hp@pobox.com>
10961
10962         * gtk/gtktexttag.c (gtk_text_tag_class_init): Add visible and
10963         visible_set args, don't know where these had gone, I thought they
10964         used to be there
10965
10966         * gtk/testtext.c: Add a menu item to apply invisibility tag;
10967         now we can test the feature and see that it's totally broken.
10968
10969 2000-11-08  Havoc Pennington  <hp@pobox.com>
10970
10971         Make DND copy pixbufs and tags when source and target share a 
10972         tag table.
10973         
10974         * gtk/gtktextview.c (gtk_text_view_drag_data_get): provide the
10975         in-process GTK_TEXT_BUFFER_CONTENTS target
10976         (gtk_text_view_drag_data_received): Paste from
10977         GTK_TEXT_BUFFER_CONTENTS if we receive it.
10978
10979 2000-11-08  Alexander Larsson  <alexl@redhat.com>
10980
10981         * docs/Changes-2.0.txt: Add note about GtkMenuPositionFunc
10982         API changes.
10983
10984         * gtk/gtkmenu.c: Add support for scrolling menus.
10985         Remove gtk_menu_append/prepend/insert, these have been moved to
10986         gtkcompat.h as #defines.
10987
10988         * gtk/gtkcompat.h.in:
10989         Add compatibility #defines for gtk_menu_append/prepend/insert
10990
10991         * gtk/gtkmenu.h: Add data needed for scrolling menus.
10992         GtkMenuPositionFunc gets an extra argument push_in.
10993         gtk_menu_append/prepend/insert removed.
10994         
10995         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu): Change menu
10996         positioning behaviour to fit to scrolling menus.
10997
10998         * gtk/gtkmenuitem.c (gtk_menu_item_forall): Don't recurse
10999         into menuitem->submeny. That is wrong, and broke torn
11000         off submenus of torn off menus, since they were unrealized
11001         when the first menu was unrealized.
11002
11003         * gtk/gtkmenushell.[ch]: Virtualize gtk_menu_shell_insert() and
11004         gtk_menu_shell_select_item() since these need to be overridden in
11005         GtkMenu.
11006
11007         * gtk/gtkoptionmenu.c (gtk_opttion_menu_position): Change menu
11008         positioning behaviour to fit to scrolling menus.
11009         (gtk_option_menu_key_press, gtk_option_menu_button_press): Select
11010         the current item so that it is prelighted when the menu pops up.
11011         This is a workaround to the fact that the menu doesn't get the
11012         initial enter event (due to grabs).
11013
11014         * gtk/gtkfilesel.c, gtk/gtkinputdialog.c, gtk/testgtk.c:
11015         s/gtk_menu_append/gtk_menu_shell_append/
11016
11017         * gtk/gtknotebook.c:
11018         s/gtk_menu_insert/gtk_menu_shell_insert/
11019
11020         * gtk/testgtk.c (create_menu, create_menus):
11021         Create the first menu with 50 items so that menu scrolling
11022         can be tested.
11023         
11024         
11025         Patch from Jonathan Blandford  <jrb@redhat.com>
11026
11027         * gtk/gtkmenuitem.[ch] (gtk_menu_item_toggle_size_request): new
11028         system to handle size requests.  First, we ask what the size of
11029         the toggle is.  Then, when allocating the size, we allocate the
11030         toggle_size first.  This way we can have multiple menu-item
11031         classes w/o needing a seperate class for each.
11032
11033         * gtk/gtkmenu.c (gtk_menu_size_request): Actually use the new system.
11034         * gtk/gtkmenu.c (gtk_menu_size_allocate): Use the new system.
11035
11036         * gtk/gtkcheckmenuitem.c
11037         (gtk_check_menu_item_toggle_size_request): New function to handle
11038         the toggle size-request.
11039
11040 2000-11-07  Havoc Pennington  <hp@redhat.com>
11041
11042         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location):
11043         Half-ass somewhat fix this function, so that scrolling to the
11044         insertion point works. Pango hacking is in the future to really
11045         fix it.
11046
11047         * gtk/gtktextview.c (gtk_text_view_drag_data_get): Don't calculate
11048         length of data, no longer used.
11049
11050         * gtk/gtktextbuffer.c (gtk_text_buffer_finalize): move destroy
11051         method contents in here, get rid of destroy method
11052         (gtk_text_buffer_insert_range): Fix some g_return_if_fail checks
11053         that were backward. Remove debug spew.
11054         (cut_or_copy): Make the clipboard work with insert_range to
11055         preserve tags and pixbufs, not just the primary selection.
11056
11057 2000-11-07  Havoc Pennington  <hp@redhat.com>
11058
11059         * gtk/gtktextmark.c (gtk_text_mark_is_visible): rename 
11060         to gtk_text_mark_get_visible
11061
11062         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): fix
11063         bug that was generating an invalid iterator
11064
11065         * gtk/gtktextiter.c (gtk_text_iter_get_offset): move call to
11066         ensure_char_offsets() in front of code placing the iter in an
11067         invalid state.
11068
11069         * gtk/gtktextbuffer.c (gtk_text_buffer_paste_primary):
11070         make override_location arg const
11071         (paste): Replace the selection if we paste into the 
11072         current selection
11073
11074         * gtk/gtkselection.h: Remove "GtkSelectioData"
11075         (struct _GtkSelectionData): move the definition here.
11076
11077         * gtk/gtktextbuffer.c (gtk_text_buffer_update_primary_selection):
11078         Export the GTK_TEXT_BUFFER_CONTENTS target for in-process copies
11079
11080         * gtk/gtktextiter.c (gtk_text_iter_get_tags): New function
11081
11082         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_range): implement
11083         (gtk_text_buffer_insert_range_interactive): implement
11084         (gtk_text_buffer_get_tags): Remove, replaced by
11085         gtk_text_iter_get_tags()
11086
11087         * gtk/gtktextiter.c (gtk_text_iter_forward_search): Add a search
11088         limit parameter, to avoid infinite linear scan.
11089         (gtk_text_iter_backward_search): Add search limit
11090         (gtk_text_iter_forward_find_char): Add search limit
11091         (gtk_text_iter_backward_find_char): Add search limit
11092
11093 2000-11-07  Alexander Larsson  <alla@lysator.liu.se>
11094
11095         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
11096         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkimage-fb.c,
11097         gdk/linux-fb/gdkpango-fb.c, gdk/linux-fb/gdkpixmap-fb.c,
11098         gdk/linux-fb/gdkwindow-fb.c:
11099         use g_object_new() instead of g_type_create_instance() which
11100         is a private function for fundamental type implementations.
11101
11102         * gdk/linux-fb/gdkinput-ps2.c:
11103         Use MEDIUMRAW instead of RAW keycodes. Remove keyboard state-table
11104         instead just store the current modifier state. Add a (somewhat broken)
11105         keyboard input parser for XLATE mode too, if we couldn't use MEDIUMRAW.
11106         Rename exported function gdk_input_ps2_get_mouseinfo to
11107         gdk_input_get_mouseinfo.
11108
11109         * gdk/linux-fb/gdkmain-fb.c, gdk/linux-fb/gdkprivate-fb.h,
11110         gdk/linux-fb/gdkwindow-fb.c:
11111         gdk_input_ps2_get_mouseinfo was renamed to gdk_input_get_mouseinfo.
11112         
11113
11114 2000-11-02  Havoc Pennington  <hp@redhat.com>
11115
11116         * gtk/gtkfilesel.h, gtk/gtkfilesel.c: Derive from GtkDialog, and
11117         use stock buttons. Should be 100% source compatible, appropriate
11118         filesel fields now point to dialog->vbox and dialog->action_area.
11119         On the bizarre side, dialog->action_area and filesel->action_area
11120         are not the same widget.
11121         (gtk_file_selection_init): Put some padding around the selection
11122         entry, so it isn't touching the GtkDialog separator.    
11123
11124         * gtk/gtkfontsel.h, gtk/gtkfontsel.c: Derive from GtkDialog, 
11125         use stock buttons, etc. Should also be source compatible.
11126         Set the dialog default title in _init not _new().
11127         
11128         * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): 
11129         Use stock buttons; don't put a button box inside the existing
11130         dialog button box. Don't bother with push/pop colormap anymore.
11131
11132         * gtk/gtkdialog.h (GtkResponseType): Add a bunch of more 
11133         specific GTK_RESPONSE_* values. This is clearer than ACCEPT/REJECT
11134         for message dialog, and necessary for the font selection and color
11135         selection with help and apply buttons.
11136         
11137         * gtk/gtkdialog.c (gtk_dialog_add_button): Return a pointer 
11138         to the created button widget. Set GTK_CAN_DEFAULT on the button.
11139         (gtk_dialog_init): Default to GTK_BUTTONBOX_END, put less spacing
11140         between buttons, put less padding around the action area.
11141         (gtk_dialog_run): Exit on unmap rather than on destroy. 
11142         This will also exit the loop if the widget is hidden.
11143         (gtk_dialog_delete_event_handler): Use GTK_RESPONSE_DELETE_EVENT
11144         instead of GTK_RESPONSE_NONE; since we're already adding a bunch
11145         of GTK_RESPONSE_* stuff, this seems cleaner, and lets you 
11146         special-case delete event.
11147
11148         * gtk/gtktexttagtable.c, gtk/gtktextview.c: Fix doc comment
11149         formatting
11150         
11151 Sun Nov  5 05:32:39 2000  Tim Janik  <timj@gtk.org>
11152
11153         * gtk/testgtk.c (uposition_stop_configure): provide a toggle
11154         button to temporarily disable position recording in the
11155         "saved position" test.
11156
11157 Sat Nov  4 05:37:17 2000  Tim Janik  <timj@gtk.org>
11158
11159         * gtk/gtkthemes.c: added compat code that temporarily implements
11160         GtkThemeEnginePlugin as a GObject exporting GTypePlugin. this is
11161         going to be revamped by owen's upcoming GtkModule patches, but
11162         untill then people want gtk to build, right? ;)
11163
11164 2000-11-04  Havoc Pennington  <hp@pobox.com>
11165
11166         * gtk/gtkenums.h: remove trailing comma from GtkDeleteType member
11167         list
11168
11169         * docs/Changes-2.0.txt: Add note about
11170         gtk_container_get_toplevels()
11171
11172         * gtk/gtktextview.h: formatting
11173         
11174         * gtk/gtktextview.c: don't start descriptions with "Returns",
11175         confuses gtk-doc
11176
11177 Sat Nov  4 10:12:27 2000  Owen Taylor  <otaylor@redhat.com>
11178
11179         * autogen.sh: When doing sanity checking on ACLOCAL_FLAGS,
11180         look for glib-2.0.m4 not glib.m4. (Ali Abdin)
11181
11182 2000-11-03  Havoc Pennington  <hp@redhat.com>
11183
11184         * gtk/gtktexttagtable.c: Docs
11185         (gtk_text_tag_table_size): return a signed int
11186
11187         * gtk/gtktexttag.c: s/tkxt/text/g; write documentation
11188         (gtk_text_tag_event): make the event_object a GObject
11189
11190         * gtk/gtktextview.c: Write API docs for all functions.
11191
11192         * gtk/gtktextview.h: add GTK_TEXT_WINDOW_PRIVATE as return value
11193         for gtk_text_view_get_window_type() called on one of the private
11194         windows.
11195
11196         * gtk/gtktextview.c: Instead of accessing text_view->buffer
11197         directly, call get_buffer() which demand-creates a default
11198         buffer. So gtk_text_view_new() can be used to create a view with a
11199         default buffer in it, if you just want an empty text box users can
11200         put data in. Useful for GUI builders also.
11201
11202 2000-11-03  Pablo Saratxaga <pablo@mandrakesoft.com>
11203
11204         * gtk/gtkrc.zh_TW.*: moved gtkrc.zh_TW.Big5 to gtkrc.zh_TW.big5;
11205         the charset encodign portion MUST be in lowercase.
11206         * gtk/gtkrc.az: added file for Azeri language
11207
11208 2000-11-03  Havoc Pennington  <hp@redhat.com>
11209
11210         Get widgets working on the btree/buffer side. Display of them 
11211         still doesn't work.
11212         
11213         * gtk/gtktextview.c: start implementing child widget stuff
11214
11215         * gtk/gtktextiter.c (gtk_text_iter_get_child_anchor): new function
11216
11217         * gtk/gtktextlayout.c: handle embedded widgets
11218
11219         * gtk/gtktextdisplay.c: handle embedded widgets
11220
11221         * gtk/gtktextchild.c: Implement all the child anchor goo
11222
11223         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor): New
11224         function
11225
11226         * gtk/gtktextbtree.c: Add child anchor table to the btree struct
11227         (insert_pixbuf_or_widget_segment): abstract out common portions of 
11228         creating a child anchor or a pixbuf segment.
11229         (gtk_text_btree_create_child_anchor): new function
11230         (gtk_text_btree_unregister_child_anchor): new function
11231
11232         * gtk/gtkmarshal.list: added VOID:OBJECT,INT,INT for the
11233         allocate_child signal on GtkTextLayout
11234
11235         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): fix bogus return
11236         values
11237         (gtk_text_iter_get_child_anchor): new function
11238
11239         * gtk/gtktextbuffer.c (gtk_text_buffer_real_changed): Add a
11240         default handler for the changed signal, which calls
11241         gtk_text_buffer_set_modified(), instead of just always emitting
11242         changed then calling set_modified() manually. I guess this is
11243         maybe more flexible. It seems logical.
11244
11245 Fri Nov  3 08:58:38 2000  Tim Janik  <timj@gtk.org>
11246
11247         * gtk/gtkobject.c: _g_signal_handlers_destroy() is prefixed with '_'
11248         now.
11249
11250         * gtk/gtksignal.c: use g_signal_connect_closure_by_id() now.
11251
11252 Thu Nov  2 14:10:51 2000  Owen Taylor  <otaylor@redhat.com>
11253
11254         * gdk/x11/gdkdnd-x11.c: Fix a bunch of functions that should have
11255         been marked static.
11256
11257 2000-11-02  Havoc Pennington  <hp@redhat.com>
11258
11259         * gtk/testgtk.c (create_labels): had a test backward
11260
11261         * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Copy the client-side GC
11262         fields, so the dest GC ends up with the correct clip origin, 
11263         etc. Fixes a bug where colored labels didn't redraw 
11264         properly.
11265
11266 2000-11-02  Alexander Larsson  <alexl@redhat.com>
11267
11268         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
11269         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkpango-fb.c,
11270         gdk/linux-fb/gdkpixmap-fb.c, gdk/linux-fb/gdkwindow-fb.c:
11271         Add last argument to t_type_register_static call.
11272         
11273         * gdk/linux-fb/gdkdrawable-fb2.c:
11274         Add last argument to t_type_register_static call.
11275         export the get_image drawable virtual function.
11276
11277         * gdk/linux-fb/gdkimage-fb.c:
11278         Add last argument to t_type_register_static call.
11279         rename gtk_image_get to _gdk_fb_get_image and
11280         export it for use by gdkdrawable-fb2.
11281
11282         * gdk/linux-fb/gdkprivate-fb.h:
11283         export _gdk_fb_get_image.
11284
11285         * gdk/linux-fb/gdkselection-fb.c:
11286         Add new api call stubs.
11287
11288         * gtk/Makefile.am:
11289         Missing ( in linux-fb part.
11290
11291         * modules/linux-fb/Makefile.am:
11292         Must link with gdk_pixbuf or get unresolved symbol.
11293
11294 2000-11-01  Havoc Pennington  <hp@pobox.com>
11295
11296         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Use 
11297         GTK_TYPE_TEXT_ITER and BOXED marshallers
11298
11299         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): ditto
11300
11301         * gtk/gtktexttag.c (gtk_text_tag_class_init): ditto
11302         
11303         * gtk/gtk-boxed.defs: add GtkTextIter
11304
11305         * gtk/gtkmarshal.list: Add marshallers for text widget that 
11306         properly use OBJECT and BOXED
11307
11308 2000-11-01  Havoc Pennington  <hp@redhat.com>
11309
11310         * gtk/testgtk.c (create_labels): Test set_markup_with_accel()
11311
11312         * gtk/gtklabel.c (set_markup): Convert the unichar to a GDK keyval
11313         before returning it. 
11314         
11315 2000-11-01  Havoc Pennington  <hp@redhat.com>
11316
11317         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
11318         Clip the rectangle to be rendered to the drawable, since
11319         get_from_drawable() requires a region within the drawable
11320
11321 2000-11-01  Havoc Pennington  <hp@redhat.com>
11322
11323         * gtk/gtkimage.c (gtk_image_expose): Um, don't randomly subtract 4
11324         from coordinates.
11325
11326 Wed Oct 25 20:10:57 2000  Owen Taylor  <otaylor@redhat.com>
11327
11328         * gdk/gdkevents.c (gdk_event_copy): Only ref the window if
11329         it isn't NULL.
11330
11331 2000-11-01  Havoc Pennington  <hp@pobox.com>
11332
11333         * gtk/gtklabel.c (gtk_label_set_attributes): Set a PangoAttrList
11334         on a label
11335         (gtk_label_finalize): unref the attr list if any.
11336
11337         * gtk/testgtk.c (create_get_image): close test on second click
11338         (make_message_dialog): close dialog if it exists
11339
11340         * gdk/gdkpango.c (gdk_draw_layout): Handle rise attribute
11341
11342         * gdk-2.0.pc.in (Requires): Make it require gdk-pixbuf-2.0 not
11343         gdk-pixbuf
11344
11345         * gtk/gtklabel.c (gtk_label_set_markup): new function to set label
11346         from Pango markup format
11347         (gtk_label_set_markup_with_accel): ditto but with accelerator
11348         parsing
11349
11350         * gtk/gtkimage.c (gtk_image_expose): reformatting.
11351
11352         * gdk/gdkpixbuf-drawable.c (gdk_pixbuf_get_from_drawable): Hack to
11353         reflect current state of GDK - use gdk_drawable_get_colormap, etc.
11354         Check GDK_IS_WINDOW() not !GDK_IS_PIXMAP() to decide whether to 
11355         call gdk_window_get_origin().
11356
11357         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
11358         implement GDK_PIXBUF_ALPHA_FULL
11359         
11360 Wed Nov  1 03:43:42 2000  Tim Janik  <timj@gtk.org>
11361
11362         * gtk/gtksignal.c (gtk_signal_compat_matched): make use of
11363         g_signal_handlers_block_matched, g_signal_handlers_unblock_matched and
11364         g_signal_handlers_disconnect_matched to block/unblock and disconnect
11365         multiple handlers respectively, instead of only treating the
11366         first handler found (bug reported by owen).
11367
11368 Mon Oct 30 19:23:50 2000  Jonathan Blandford  <jrb@redhat.com>
11369
11370         * gtk/gtktreeview.c (gtk_tree_view_expand_row): New function.
11371
11372         * gtk/gtktreeview.c (gtk_tree_view_collapse_row): New function.
11373
11374         * gtk/gtktreeview.c, gtk/gtktreemodel.c, gtk/gtktreeselection.c
11375         gtk/gtktreestore.h, gtk/gtktreeview.h, gtk/gtktreeviewcolumn.c,
11376         gtk/gtktreeviewcolumn.h: Fixed inline docs.
11377
11378         * docs/reference/gtk/tree_widget.sgml: Proto intro to the tree
11379         widget.  Needs writing someday.
11380
11381         * docs/reference/gtk/tmpl/gtktree*sgml: Added the tree widget to
11382         the docs.
11383
11384 2000-10-30  Havoc Pennington  <hp@redhat.com>
11385
11386         * gtk/gtktextview.h, gtk/gtktextview.c:
11387         Rename delete_at_cursor delete_from_cursor, and 
11388         move to move_cursor.
11389
11390 2000-10-30  Havoc Pennington  <hp@redhat.com>
11391
11392         * gtktextbtree.c, gtktextbtree.h, gtktextbuffer.c,
11393         gtktextbuffer.h, gtktextchild.c, gtktextchild.h,
11394         gtktextchildprivate.h, gtktextdisplay.c, gtktextdisplay.h,
11395         gtktextiter.c, gtktextiter.h, gtktextiterprivate.h,
11396         gtktextlayout.c, gtktextlayout.h, gtktextmark.c, gtktextmark.h,
11397         gtktextmarkprivate.h, gtktextsegment.c, gtktextsegment.h,
11398         gtktexttag.c, gtktexttag.h, gtktexttagprivate.h,
11399         gtktexttagtable.c, gtktexttagtable.h, gtktexttypes.c,
11400         gtktexttypes.h, gtktextview.c, gtktextview.h:
11401
11402         Massive reindentation and reformatting. Arg alignment and comments
11403         still need fixing in various places.
11404
11405 2000-10-30  Havoc Pennington  <hp@redhat.com>
11406
11407         * gtk/gtktextview.h, gtk/gtktextview.c: Change run action signals
11408         to be named insert_at_cursor and delete_at_cursor so C++ can
11409         handle them.
11410
11411 2000-10-28  Tor Lillqvist  <tml@iki.fi>
11412
11413         * gtk/gtkrc.c (gtk_rc_append_default_module_path): Make sure not
11414         to get a double directory separator in case the home directory
11415         ends with one. This would cause trouble especially on Windows,
11416         where the path will be confused with the syntax for an an UNC
11417         (network share) path \\server\share\path.
11418         (gtk_rc_add_initial_default_files): Ditto.
11419
11420 Sat Oct 28 02:33:09 2000  Robert Brady  <robert@suse.co.uk>
11421
11422         * gtk/gtkmarshal.list: add new marshallers for GtkTextView.
11423
11424         * gtk/gtktextview.c: Use correct marshallers.
11425
11426 Fri Oct 27 17:56:26 2000  Jonathan Blandford  <jrb@redhat.com>
11427
11428         * gtk/gtkliststore.c: Not sure how this ever worked.  Fixed it to
11429         use new iter stuff, and added all the appropriate signals et al.
11430
11431         * gtk/gtktreedatalist.h: s/gtk/_gtk to further reinforce that this
11432         code is internal to gtk only.
11433
11434 2000-10-28  Tor Lillqvist  <tml@iki.fi>
11435
11436         * gtk/gtk.def
11437         * gtk/makefile.{mingw,msc}.in: Adjust to Tim's changes. Use
11438         glib-genmarshal etc.
11439
11440 Fri Oct 27 20:15:00 2000  Tim Janik  <timj@gtk.org>
11441
11442         * gtk/Makefile.am: added dependancies for testtextbuffer which broke
11443         parallel builds.
11444
11445 Fri Oct 27 18:51:44 2000  Tim Janik  <timj@gtk.org>
11446
11447         * gtk/gtksignal.[hc]: adapt to GSignal signature changes.
11448
11449 2000-10-27  Robert Brady  <robert@suse.co.uk>
11450
11451         * configure.in (ALL_LINGUAS): Add en@IPA (English, phonetic), 
11452         en_GB (British), ia (Interlingua).
11453
11454 2000-10-26  Havoc Pennington  <hp@redhat.com>
11455
11456         * gtk/gtktextiter.c (my_strrstr): fix constness warning
11457
11458         Fixed output of:
11459         nm -g -l .libs/libgtk-x11-1.3.so | grep ' T ' | grep -v gtk_ | grep -v GTK_
11460         
11461         * gtk/gtktextsegment.c (char_segment_new): rename
11462         (_char_segment_new_from_two_strings): rename
11463         (_toggle_segment_new): rename
11464         
11465         * gtk/gtkclipboard.c (ensure_clipboard_widget): make this static
11466         (make_clipboard_widget): make it static
11467         (text_get_func): static
11468         (text_clear_func): static
11469
11470         * gtk/gtkcolorsel.c (adjustment_changed): make this function
11471         static
11472         (hex_changed): make it static
11473         (hsv_changed): make it static
11474         (opacity_entry_changed): make it static
11475
11476         * gtk/gtktextbtree.c (change_node_toggle_count): rename with _gtk
11477         (toggle_segment_check_func): rename with _gtk
11478
11479         * gtk/gtktextchild.c (_pixbuf_segment_new): rename with _gtk
11480         (_widget_segment_new): rename
11481         (_widget_segment_add): rename
11482         (_widget_segment_remove): rename
11483         (_widget_segment_ref): rename
11484         (_widget_segment_unref): rename
11485
11486         * gtk/gtktextmark.c (_mark_segment_new): Rename
11487         _gtk_mark_segment_new   
11488
11489 2000-10-26  Havoc Pennington  <hp@redhat.com>
11490
11491         * gtk/gtkmarshal.list: add new marshallers used by the text widget
11492         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
11493         types
11494
11495         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): fix
11496         marshaller types
11497
11498         * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktextdisplay.h,
11499         gtk/gtktextdisplay.c: We need to preserve Tk copyrights and
11500         license on these files.
11501
11502         * gtk/gtktextiter.c (gtk_text_iter_backward_search): Make this
11503         work.
11504
11505         * gtk/gtktextbtree.c (gtk_text_btree_new): init stamps to 
11506         runtime random number different for each tree, instead of 
11507         a constant I made up.
11508
11509 Thu Oct 26 07:36:16 2000  Tim Janik  <timj@gtk.org>
11510
11511         * gtk/Makefile.am: buncha cleanups, kludged build sources
11512         dependencies with a Makefile: oldest-source-stamp dependancy
11513         for the moment. automake is really fighting us here, with
11514         intentionally not allowing user-defined rules or dependancies
11515         prior to it's -include $(DEP_FILES) statement. sucks rocks!
11516
11517         * gtk/Makefile.am: added gtktextlayout.h and gtktextdisplay.h
11518         to public headers. tehy have a comment stating that they are
11519         "semi-public" aren't included by gtk.h and if enums popup there,
11520         they can be /*< skip >*/-ed.
11521
11522         * gtk/gtktextlayout.h: 
11523         * gtk/gtktextdisplay.h: indentation fixes, comment fixes,
11524         added LGPL... <SIGH>
11525
11526 Wed Oct 25 20:40:25 2000  Jonathan Blandford  <jrb@redhat.com>
11527
11528         * gtk/gtktreemodel.h: Got rid of GtkTreeNode, and changed it to
11529         GtkTreeIter.  Added iterators everywhere.
11530
11531         * gtk/gtktreeviewcolumn.c: Changed to use the iterators.
11532
11533         * gtk/gtktreeviewselection.c: Changed to use the iterators.
11534
11535         * gtk/gtktreestore.c: Changed to use the iterators.
11536
11537         * gtk/gtkliststore.c: Commented out the code.  Will convert to
11538         iterators tomorrow.
11539
11540         * gtk/gtkmodelsimple.c: Commented out the code.  Will convert to
11541         iterators tomorrow.
11542
11543         * gtk/treestoretest.c: Changed to use iterators.
11544
11545         * demos/testgtk/main.c: Moved to use the new iterator system.
11546
11547 Thu Oct 26 02:10:32 2000  Tim Janik  <timj@gtk.org>
11548
11549         * gtk/Makefile.am: invoke maketypes.awk with LC_ALL=C to avoid
11550         localization misbehaviour.
11551
11552         * gtk/gtk-boxed.defs: nuked "boxed" type GtkCTreeNode, since it's
11553         a useless type without copy/free.
11554
11555         * gtk/gtkctree.c (gtk_ctree_class_init): use GTK_TYPE_POINTER instead
11556         of GTK_TYPE_CTREE_NODE.
11557
11558 Thu Oct 26 00:51:52 2000  Tim Janik  <timj@gtk.org>
11559
11560         * gtk/gtksignal.c:
11561         (gtk_signal_emitv): use g_value_set_static_{string|boxed} where
11562         applicable.
11563
11564         * gtk/gtk-boxed.defs (GtkSelectionData): specify
11565         gtk_selection_data_copy and gtk_selection_data_free
11566         do GtkSelectionData work as params in signals.
11567
11568 Wed Oct 25 20:47:41 2000  Tim Janik  <timj@gtk.org>
11569
11570         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init): urg, removed
11571         implementation of gtk_marshal_VOID__INT_INT_INT_INT. if people do that,
11572         couldn't they at least give it a non-standard name?
11573         
11574         * gtk/gtktextlayout.c: arg! yet another implementation of
11575         gtk_marshal_VOID__INT_INT_INT_INT(), is this a conspiracy?
11576
11577         * gtk/gtktextbuffer.c: gotcha! captured a vagabonding
11578         gtk_marshal_VOID__INT_POINTER_INT() implementation, braught it back
11579         home. now i know this _is_ a conspiracy.
11580
11581         * gtk/gtkwidget.c (gtk_widget_class_init): marshaller fixups for
11582         ::state-changed.
11583
11584         * gtk/gtkaccelgroup.c (gtk_accel_group_create_remove): 
11585         (gtk_accel_group_create_add): marshaller signature fixups.
11586
11587         * gtk/gtklistitem.c (gtk_list_item_class_init): signal creation fixups,
11588         pass in GTK_TYPE_SCROLL_TYPE instead of GTK_TYPE_ENUM.
11589
11590         * gtk/gtkobject.[hc]: removed GTK_CONNECTED flag, it's not valid
11591         anymore.
11592
11593 Tue Oct 24 23:59:21 2000  Tim Janik  <timj@gtk.org>
11594
11595         * docs/reference/Makefile.am: disabled SUBDIRS for the moment, since
11596         due to the signal system changes, it wouldn't build currently. to
11597         be fixed soon.
11598
11599         * docs/Changes-2.0.txt: GtkSignal/GSignal updates.
11600
11601         * gtk/gtkwidget.c: ::direction_changed takes an enum as argument,
11602         so it needs gtk_marshal_VOID__ENUM() instead of
11603         gtk_marshal_NONE__UINT().
11604
11605         * gdk/gdk*.c: adapted type registration functions.
11606
11607         * gtk/gtkbindings.c:
11608         * gtk/gtkaccelgroup.c: operate on GSignalQuery, GtkSignalQuery is
11609         gone.
11610
11611         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType.
11612
11613         * gtk/gtkobject.c:
11614         (gtk_object_destroy):
11615         (gtk_object_shutdown): fixed recursion guards. basically we have to
11616         catch the case where any of GObject.shutdown() or gtk_object_destroy()
11617         is called during ::destroy, and avoid recursion there.
11618
11619         * gtk/gtktypeutils.c:
11620         * gtk/maketypes.awk: awk-script hackup to provide gtk_type_init() with
11621         boxed_copy/boxed_free. this needs a more general solution based on a
11622         publically installed code-generator utility.
11623
11624         * gtk/gtktypeutils.[hc]: compat aliased GTK_TYPE_BOXED to G_TYPE_BOXED,
11625         glib's gobject has support for that now.
11626         define GtkSignalMarshaller in terms of GSignalCMarshaller.
11627
11628 Mon Oct 23 09:36:42 2000  Tim Janik  <timj@gtk.org>
11629
11630         * gtk/gtksignal.[hc]:
11631         * gtk/gtkmarshal.[hc]:
11632         * gtk/Makefile.am: generate marshallers with glib-genmarshal and don't
11633         compile gtkmarshal.c on its own anymore, just include it in gtksignal.c.
11634         removed #include <gtkmarshal.h>s all over the place, gtksignal.h takes
11635         care of that.
11636
11637         * *.c: marshaller name fixups.
11638
11639         * gtk/gtkmarshal.list: added a comment briefing the format.
11640
11641 Sun Oct 22 23:14:39 2000  Tim Janik  <timj@gtk.org>
11642
11643         * gtk/gtksignal.[hc]: nuked old implementation. we mostly have
11644         compatibility macros here now. more specifically, most of
11645         the API is preserved (yes, _most_, nonwithstanding the
11646         following exceptions listed, the API is stil lHUGE ;)
11647         things that got removed completely:
11648         GtkSignalQuery, gtk_signal_query(), gtk_signal_n_emissions(),
11649         gtk_signal_n_emissions_by_name(), gtk_signal_handlers_destroy(),
11650         gtk_signal_set_funcs(), gtk_signal_handler_pending_by_id(),
11651         gtk_signal_add_emission_hook(), gtk_signal_add_emission_hook_full(),
11652         gtk_signal_remove_emission_hook().
11653         non-functional functions variants:
11654         gtk_signal_add_emission_hook(), gtk_signal_remove_emission_hook().
11655         the GtkCallbackMarshal argument to gtk_signal_connect_full() is
11656         not supported anymore.
11657         (gtk_signal_compat_matched): new internal function to aid
11658         implementation of the compatibility macros, it  provides
11659         functionality to block/unblock/disconnect handlers based
11660         on func/data.
11661
11662         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType,
11663
11664         * *.c: adaptions to new type registration API signatures.
11665
11666 Fri Oct 20 15:26:33 2000  Tim Janik  <timj@gtk.org>
11667
11668         * gtk/gtktypeutils.[hc]: removed G_TYPE_GTK_POINTER cludge.
11669
11670 2000-10-25  Robert Brady  <robert@suse.co.uk>
11671
11672         * gdk/x11/gdkproperty-x11.c (gdk_property_get, gdk_property_change,
11673         gdk_property_delete): If window == NULL, assume the root window.
11674         (restoring the behaviour that was in 1.2).
11675         
11676         * gtk/testtext.c (save_buffer): Allow creation of new files when
11677         saving.
11678
11679         (fill_file_buffer): Don't die if a UTF-8 sequence is split across
11680         calls to read().
11681
11682 2000-10-25  Tor Lillqvist  <tml@iki.fi>
11683
11684         * gdk/gdkwindow.c: Include x11/gdkx.h only when building for X11.
11685
11686         * gdk/win32/gdkdrawable-win32.c
11687         * gdk/win32/gdkimage-win32.c
11688         * gdk/win32/gdkprivate-win32.h: Corresponding changes as in the
11689         X11 backend.
11690
11691         * gdk/win32/gdkcc-win32.c
11692         * gdk/win32/gdkcolor-win32.c
11693         * gdk/win32/gdkfont-win32.c
11694         * gdk/win32/gdkinput-win32.c
11695         * gdk/win32/gdkmain-win32.c
11696         * gdk/win32/gdkproperty-win32.c: Silence gcc -Wall.
11697
11698 2000-10-24  Havoc Pennington  <hp@redhat.com>
11699
11700         * gtk/gtktextview.c (gtk_text_view_scroll_to_mark_adjusted): make
11701         it a static function
11702
11703         * gtk/gtktextbtree.c (gtk_text_btree_tag): Gee, maybe we should
11704         redraw text when a tag is applied to it.
11705
11706         * gtk/gtktexttag.c (gtk_text_tag_affects_size)
11707         (gtk_text_tag_affects_nonsize_appearance): private functions to
11708         see if a tag requires various kinds of redraw/layout to be queued
11709         up.
11710
11711         * gtk/gtktexttag.h (struct _GtkTextTag): Remove relief crackrock
11712
11713         * gtk/testtext.c (fill_example_buffer): Put the cursor 
11714         at the start of the buffer, so search works by default
11715
11716         * gtk/gtktextiter.c (lines_match): init match_start always
11717
11718         * gtk/gtktextbuffer.c (gtk_text_buffer_get_iter_at_line_index): New
11719         function, get iter at a line + a byte index
11720
11721         * gtk/gtktextiter.c (gtk_text_iter_set_line_index): New function,
11722         to set byte position within a line
11723         (gtk_text_iter_check): remove leftover G_BREAKPOINT thing
11724
11725 2000-10-23  Havoc Pennington  <hp@redhat.com>
11726
11727         * gtk/testtext.c: Re-enable the "find" dialog
11728
11729         * gtk/testgtk.c: Add test for gdk_drawable_get_image
11730         
11731         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix bug where
11732         the arguments to gdk_draw_drawable were in the wrong order
11733         (gdk_window_paint_init_bg): This function was ignoring the
11734         init_region, instead of clipping to it, so the entire backing
11735         pixmap was cleared on every begin_paint()
11736         (gdk_window_begin_paint_region): Hmm, the same list-walking bug
11737         was in here again, the loop kept using the same GtkWindowPaint
11738         over and over.
11739         (gdk_window_begin_paint_region): Fix a bug where we had two
11740         x_offset instead of x_offset and y_offset
11741
11742         * gdk/gdkdraw.c (gdk_drawable_get_image): get composite drawable
11743         before we get the image.
11744         (gdk_draw_drawable): get the composite before we draw the drawable.
11745         (gdk_drawable_real_get_composite_drawable): default
11746         get_composite_drawable implementation that returns the drawable 
11747         itself
11748
11749         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Add
11750         get_composite_drawable virtual function
11751
11752         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix a cheesy
11753         list-walking bug
11754
11755         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable): Add a hack to
11756         make this work if the source drawable is a GdkDrawableImplX11
11757         instead of a public drawable type. This is really broken; the
11758         problem is that GdkDrawable needs a virtual method get_xid(), but
11759         of course that doesn't work in practice. Enter RTTI.
11760
11761         Also, improve mismatched depth message.
11762
11763         * gdk/gdkpixmap.c (gdk_pixmap_get_image): Implement get_image for
11764         GdkPixmap
11765
11766         * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_class_init):
11767         install _gdk_x11_get_image as our implementation of get_image
11768         
11769         * gdk/x11/gdkimage-x11.c (gdk_image_get): Rename to
11770         _gdk_x11_get_image and export for use in gdkdrawable-x11.c
11771
11772         * gdk/gdkimage.c (gdk_image_get): Make this just a wrapper around
11773         gdk_drawable_get_image
11774
11775         * gdk/gdkdraw.c (gdk_drawable_get_image): call virtual get_image
11776
11777         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Virtualize
11778         get_image
11779
11780         * gtk/gtktreestore.c (gtk_tree_store_get_node): remove weird
11781         trailing semicolon after for loop
11782
11783 Mon Oct 23 12:07:57 2000  Owen Taylor  <otaylor@redhat.com>
11784
11785         * gtk/gtkwidget.c (gtk_widget_set_style_internal): Fix problem
11786         where font_desc for widget's context lagged widget's font_desc by
11787         one step.
11788
11789 2000-10-22  Tor Lillqvist  <tml@iki.fi>
11790
11791         * gdk/win32/gdkgc-win32.c
11792         * gdk/win32/gdkimage-win32.c: Remove gcc -Wall warnings.
11793
11794         * gtk/makefile.mingw.in
11795         * gtk/gtk.def: Updates.
11796
11797         * gtk/testgtk.c: sleep() is called _sleep in MS's C
11798         library.
11799
11800         * gtk/gtkimcontextsimple.c: Include <stdlib.h> for bsearch().
11801
11802         * gtk/makefile.msc: Remove
11803
11804         * gtk/makefile.msc.in: New file, like makefile.mingw.in.
11805
11806         * gtk/Makefile.am: Add it.
11807
11808         * configure.in: Generate it.
11809
11810         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor)
11811         * gtk/gtktextbtree.c (gtk_text_line_char_to_byte): Return
11812         something even if not implemented, to satisfy picky MSVC.
11813
11814         Patches by Hans Breuer:
11815         
11816         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_glyphs): Call
11817         SetBkMode() and SetTextAlign() before calling
11818         pango_win32_render().
11819
11820         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_values_to_win32values):
11821         Set hcliprgn to NULL after destroying it.
11822         (gdk_gc_set_clip_rectangle): Delete hcliprgn and set to NULL.
11823
11824         * gdk/win32/gdkgeometry-win32.c
11825         (_gdk_windowing_window_queue_antiexpose): More effective
11826         implementation.
11827
11828         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_new): Use drawable's
11829         depth as default, not the visual's.
11830
11831         * gdk/win32/gdkwindow-win32.c (gdk_window_set_title): Guard
11832         against empty title.
11833
11834         * gdk/win32/gdkprivate-win32.h: Define a helper macro,
11835         IMAGE_PRIVATE_DATA.
11836
11837         * gdk/win32/gdkimage-win32.c: Use it.
11838
11839 2000-10-22  Robert Brady  <robert@suse.co.uk>
11840
11841         * configure.in: Check for bind_textdomain_codeset
11842
11843         * gtk/gtkmain.c (gtk_init_check): If bind_textdomain_codeset 
11844         present, make use of it.
11845
11846         Add a translatable string "default:LTR" which, if translated
11847         to "default:RTL", will cause the default direction to be
11848         Right-to-Left.
11849
11850         * gtk/gtkrange.h, gtk/gtkrange.c: Take into account the widget 
11851         direction if marked as flippable.
11852
11853         * gtk/gtkhscale.c: Mark widget as flippable.
11854         
11855 2000-10-04  Havoc Pennington  <hp@redhat.com>
11856
11857         * gtk/testgtk.c (create_buttons): create some stock buttons
11858         with the default accel group
11859         (create_image): test some new GtkImage features
11860         (make_message_dialog): test GtkMessageDialog
11861         (create_modal_window): fix someone's bizzarro indentation
11862
11863         * gtk/gtkwindow.h, gtk/gtkwindow.c: Implement 
11864         GTK_WIN_POS_CENTER_ON_PARENT. 
11865         Add "destroy with parent" setting, which means the window goes
11866         away with its transient parent.
11867         (gtk_window_get_default_accel_group): get the default accel group
11868         for the window.
11869         (gtk_window_set_destroy_with_parent): set/unset destroy with
11870         parent flag
11871         (gtk_window_read_rcfiles): invalidate icon set caches
11872         after reloading rcfiles 
11873
11874         * gtk/gtkenums.h (GtkWindowPosition): add
11875         GTK_WIN_POS_CENTER_ON_PARENT, which centers a dialog 
11876         on its parent window when the dialog is mapped for the first time.
11877
11878         * gtk/gtkmessagedialog.h, gtk/gtkmessagedialog.c: Add 
11879         a simple message dialog class
11880         
11881         * gtk/gtkdialog.c (gtk_dialog_init): Connect delete event 
11882         handler to emit response signal, and maybe later it would
11883         honor a hide_on_delete flag - though that isn't there yet.
11884         Set border width on the vbox to 2, so we get some padding.      
11885         Use a button box for the action area.
11886         (gtk_dialog_key_press): synthesize a delete event if Esc
11887         is pressed and the GtkWidget key press handler didn't 
11888         handle the escape key.
11889         (gtk_dialog_new_with_buttons): new function creates a dialog
11890         with some default buttons in it.
11891         (gtk_dialog_add_action_widget): add an activatable widget
11892         as a button in the dialog - you can also add a non-activatable
11893         widget by accessing the action area directly.
11894         (gtk_dialog_add_button): add a simple button - stock ID or 
11895         label - to the action area
11896         (gtk_dialog_response): emit response signal
11897         (gtk_dialog_run): block waiting for the dialog, return 
11898         the response. Override normal delete_event behavior, so that 
11899         delete_event does nothing inside gtk_dialog_run().
11900
11901         * gtk/gtkdialog.h, gtk/gtkdialog.c: Add "response" signal
11902         emitted when an action widget is clicked or the dialog gets
11903         delete_event
11904
11905         * gtk/gtk.h: add gtkmessagedialog.h
11906
11907         * gtk/Makefile.am: add gtkmessagedialog.[hc]
11908
11909 2000-10-18  Havoc Pennington  <hp@redhat.com>
11910
11911         * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): Fix a bug 
11912         where any number of empty lines would get skipped
11913
11914         * gtk/gtktextiter.h: Remove padding from GtkTextIter; live on the
11915         edge.
11916
11917         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): enhance the
11918         warning about invalid iterators (explain more thoroughly)
11919         (gtk_text_iter_in_region): rename gtk_text_iter_in_range
11920
11921         * gtk/gtktextview.c (FOCUS_EDGE_WIDTH): Make focus rectangle less
11922         big
11923
11924         * demos/*.c: Add error handling
11925
11926         * gtk/gtktextbuffer.c: don't modify const iterators
11927
11928         * gtk/gdk-pixbuf-loader.c: Add full error handling here
11929
11930         * gtk/gtkimage.c (gtk_image_set_from_file): ignore errors
11931         on file load
11932
11933         * gtk/gtkiconfactory.c: Update to reflect addition of error
11934         handling to gdk-pixbuf loaders
11935
11936 Wed Oct 18 11:14:05 2000  Owen Taylor  <otaylor@redhat.com>     
11937
11938         * configure.in demos/Makefile.am demos/testgtk/*: Start of work to
11939         move to new modularized testgtk.
11940
11941 2000-10-17  Jonathan Blandford  <jrb@redhat.com>
11942
11943         * gtk/gtktreeview.c: Draw the arrows correctly.
11944
11945         * gtk/gtktreemodel.c: Added user docs.
11946
11947         * gtk/gtk.h: remove gtktreedatalist.h.
11948
11949         * gtk/gtktreestore.c (gtk_tree_store_get_type): Get the correct
11950         parent when generating my type.
11951
11952         * gtk/gtkmarshal.list: Added four more marshallers: INT:NONE,
11953         POINTER:NONE, POINTER:POINTER, and POINTER:POINTER,INT.
11954
11955 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
11956
11957         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): Move
11958         GtkTreeModel from object to interface.
11959
11960 2000-10-16  Havoc Pennington  <hp@redhat.com>
11961
11962         * gtk/gtktreeviewcolumn.c: #include gtklabel.h, fixing 
11963         compilation
11964
11965 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
11966
11967         * gtk/gtktreeselection.c: Add API documentation to all public
11968         functions.
11969
11970         * gtk/gtktreeviewcolumn.c: Added API documentation to all public
11971         functions.
11972
11973 2000-10-15  Jonathan Blandford  <jrb@redhat.com>
11974
11975         * gtk/gtktreeview.c (gtk_tree_view_insert_column): New function
11976         proposed by Guy Harris <gharris@flashcom.net>.  Also, added API
11977         docs to all public functions.
11978
11979         * gtk/gtktreeview.c, gtk/gtktreeview.h, gtk/gtktreestore.h,
11980         gtk/gtktreestore.c, gtk/gtkliststore.h, gtk/gtkliststore.c,
11981         gtk/gtkmodelsimple.c, gtk/gtkmodelsimple.h, gtk/gtktreedatalist.c,
11982         gtk/gtktreemodel.h, gtk/gtktreeselection.c,
11983         gtk/gtktreeselection.h: Fix GtkTreeNode *node ->GtkTreeNode node
11984         issue.
11985
11986 2000-10-14  Robert Brady  <robert@suse.co.uk>
11987
11988         * configure.in: Added "fa" (Persian) to ALL_LINGUAS.
11989
11990 2000-10-12  Jonathan Blandford  <jrb@redhat.com>
11991
11992         * gtk/gtktreedatalist.[ch] (gtk_tree_data_list_value_to_node): Added
11993         values other then G_TYPE_STRING.
11994         * gtk/gtktreeselection.c: Minor commenting updates.
11995         * gtk/gtktreeview.c: Format updates.
11996
11997 2000-10-09  Tor Lillqvist  <tml@iki.fi>
11998
11999         * README.win32: Update.
12000
12001         * gdk/win32/gdkgeometry-win32.c (gdk_window_clip_changed): Add two
12002         lines that had been deleted by mistake (?).
12003
12004         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Handle
12005         also the case fg==white and bg==black (but still not randomly
12006         coloured cursors). Thanks to Wolfgang Sourdeau.
12007
12008         * gdk/win32/*.c: Silence gcc -Wall.
12009
12010         * gtk/gtk.def: Add missing entry points.
12011
12012         Fixes by Hans Breuer:
12013
12014         * gdk/makefile.msc
12015         * gdk/win32/makefile.msc: Update.
12016
12017         * gdk/testgdk.c: If compiling with debugging (with _DEBUG defined,
12018         some MSVC thing, presumably), cause breakpoint on failures. Add
12019         GDK_NOR case. Call g_log_set_always_fatal.
12020
12021         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_insert): Handle
12022         should be pased by reference.
12023         
12024         * gdk/win32/gdkprivate-win32.h: Correct declaration accordingly.
12025         
12026         * gdk/win32/*.c: Correct calls to gdk_win32_handle_table_insert.
12027
12028         * gdk/win32/gdkevents-win32.c
12029         * gdk/win32/gdkwindow-win32.c: Handle WM_CREATE.
12030
12031         * gdk/win32/gdkgc-win32.c: Fix mixups of drawable and
12032         implementation object.
12033
12034         * gdk/win32/gdkimage-win32.c (gdk_image_get): Handle drawables,
12035         not just windows.
12036         
12037         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_impl_win32_finalize):
12038         Use the wrapper object.
12039         
12040 2000-10-06  Havoc Pennington  <hp@redhat.com>
12041
12042         * Makefile.am (SRC_SUBDIRS): contrib subdir
12043
12044         * gdk/gdkpixbuf.h: Move GdkPixbufAlphaMode to gdk-pixbuf library,
12045         so it can be used in Xlib version
12046
12047         * demos/testpixbuf.c (update_timeout): error checking from 1.0
12048         tree
12049
12050         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_get_pixbuf): Sync
12051         change from 1.0 tree that returns first frame of animation
12052         if the loaded file is an animation.
12053
12054         * contrib: add new directory to hold stuff that comes with GTK+
12055         but isn't really part of GTK+ (for now, gdk-pixbuf-xlib)
12056         
12057         * configure.in: add contrib/*
12058
12059 2000-10-05  Havoc Pennington  <hp@redhat.com>
12060
12061         * demos/testpixbuf-save.c: add pixbuf save test
12062
12063         * demos/Makefile.am: add testpixbuf-save.c
12064
12065 2000-10-05  Jonathan Blandford  <jrb@redhat.com>
12066
12067         * gtk/gtktree.h (GTK_TREE_SELECTION): Replaced with
12068         GTK_TREE_SELECTION_OLD to prevent conflict with gtktreeselection.c
12069         * gtk/testgtk.c: s/GTK_TREE_SELECTION/GTK_TREE_SELECTION_OLD/
12070         * gtk/gtktreeselection.[ch]: Replaced
12071         "node_selected"/"node_unselected" signal with "selection_changed"
12072         signal.
12073
12074 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
12075
12076         * gtk/gtk{tree,cell}?*.[ch]: Checked in initial draft of the new
12077         tree widget.
12078
12079 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
12080
12081         * gdk/gdkwindow.c (gdk_window_draw_arc): Fix obvious bug in circle
12082         drawing.
12083
12084 Wed Oct  4 15:52:15 2000 Owen Taylor  <otaylor@redhat.com>
12085
12086         * gdk/x11/gdkselection-x11.c (_gdk_selection_window_destroyed):
12087         Move list pointer forwards before removing item from
12088         list. (Crash reported by Salmaso Raffaele)
12089
12090         * gdk/gdkwindow.h: Remove spurious trailing ,
12091
12092         * gdk/Makefile.am (LDFLAGS): You can't do interlibrary
12093         dependencies on uninstalled libraries, sorry folks.
12094
12095 2000-10-04  Havoc Pennington  <hp@redhat.com>
12096
12097         * gtk/gtkstock.h, gtk/gtkstock.c, gtk/gtkiconfactory.h,
12098         gtk/gtkiconfactory.c: Fix copyrights    
12099
12100         * demos/testpixbuf.c: add inline pixbuf test
12101         
12102 Mon Sep 25 15:05:17 2000  Owen Taylor  <otaylor@redhat.com>
12103
12104         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c (gdk_window_iconify):
12105         Add gdk_window_iconify.
12106
12107         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c
12108         (gdk_window_set_geometry_hints): Add win_gravity
12109         to geometry structure.
12110
12111         * gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter):
12112         Implement _NET_WM_PING.
12113
12114         * gdk/x11/gdkmain-x11.c (_gdk_windowing_init_check):
12115         Set _NET_WM_PID on the client leader.
12116
12117         * gdk/x11/gdkwindow-x11.c (gdk_window_set_icon_name):
12118         Handle UTF-8 better.
12119
12120         * gdk/x11/gdkwindow-x11.c (gdk_window_set_title): Handle
12121         UTF-8 better, set _NET_WM_NAME as well. Only set
12122         icon name if it hasn't previously been explicitely 
12123         set.
12124
12125 2000-10-03  Havoc Pennington  <hp@redhat.com>
12126
12127         * gtk/testtextbuffer.c: clean up trailing whitespace,
12128         add extensive tests for tag toggle iteration.
12129         
12130         * gtk/gtktextiter.c (MAX_LINEAR_SCAN): decrease linear scan 
12131         distance
12132
12133         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
12134         optimize case where the tag root is on level 1
12135         (gtk_text_line_previous_could_contain_tag): attempt to implement
12136         (gtk_text_line_next_could_contain_tag): Abstract out node_compare
12137         functionality
12138
12139         * gtk/gtktextiter.c (gtk_text_iter_backward_to_tag_toggle):
12140         Implement this, though not very efficiently.
12141
12142         * gtk/gtktextiterprivate.h: reformat
12143
12144         * gtk/gtktextiter.c (gtk_text_iter_get_char): return 0 on the end
12145         iterator
12146
12147         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_interactive): Fix
12148         this to properly revalidate the iterators.
12149
12150         * gtk/gtktextview.c (gtk_text_view_delete): fix control-K to work
12151         properly at the end of the line (and therefore on empty lines)
12152
12153         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Gee,
12154         maybe we should return a value...
12155
12156 2000-10-03  Tor Lillqvist  <tml@iki.fi>
12157
12158         * config.h.win32: Guard definition of alloca(). glib.h now handles
12159         that.
12160
12161         * gdk/gdk.def
12162         * gtk/gtk.def: Add new entry points.
12163
12164         Changes just to make GTK+ build without errors on Win32. No hope
12165         of it working in its current state, though...:
12166         
12167         * gdk/win32/gdkselection-win32.c: Remove gcc -Wall warnings.  Add
12168         some functions from the X11 backend, just to make GTK+ build.
12169
12170         * gdk/makefile.mingw.in
12171         * gtk/makefile.mingw.in: Use correct gdk_pixbuf version
12172         number. Add new object files.
12173
12174         * gtk/gtkclipboard.c: Include gdkwin32.h on Win32. Use
12175         GetMessageTime to get timestamp (where on X11 uses
12176         gdk_x11_get_server_time()).
12177
12178 2000-10-02  Havoc Pennington  <hp@pobox.com>
12179
12180         * gtk/gtktextview.c: text_window_* weren't static and should have
12181         been.
12182         Start work on child widgets; not yet complete, syncing to 
12183         office computer.
12184
12185         * gtk/gtktextchild.h: change this to contain a public interface,
12186         starting work on child interfaces.
12187         * gtk/gtktextchildprivate.h: move private interfaces here
12188
12189         * gtk/Makefile.am: update to reflect gtktextchildprivate.h
12190
12191         * gtk/gtktextview.h, gtk/gtktextview.c, gtk/gtktextbuffer.h,
12192         gtk/gtktextbuffer.c, gtk/gtktextiter.h, gtk/gtk/textiter.c, 
12193         gtk/gtktextmark.c: copyright notices
12194
12195         * gtk/gtktextmarkprivate.h: reformat, and put _ in front of
12196         internal functions      
12197
12198         * gtk/gtktextchild.c (_pixbuf_segment_new): put _ in front of
12199         internal function
12200
12201         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
12202         Reformatting    
12203
12204 2000-09-30  Havoc Pennington  <hp@pobox.com>
12205
12206         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Handle
12207         NULL start/end pointers
12208
12209         * gtk/gtktextbuffer.c: Write some docs
12210         (gtk_text_buffer_get_selection_bounds): Allow start/end to be
12211         NULL, so you can just check whether there's a selection.        
12212
12213         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): No need to 
12214         cleanup_line or segments_changed ourselves, it gets done 
12215         in unlink_segment
12216
12217         * gtk/gtktextmark.h:
12218         s/gtk_text_mark_deleted/gtk_text_mark_get_deleted/
12219         
12220         * gtk/gtktextsegment.h: Clean up some indentation and naming mess
12221
12222         * gtk/gtktextmark.c: delete some more old Tk cruft
12223
12224         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_mark): add ref to
12225         mark before removing it, so we can emit MARK_DELETED with a valid
12226         pointer.
12227         (gtk_text_buffer_mark_set): hold ref across signal emission
12228
12229         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): improve
12230         whining about attempts to delete special marks
12231
12232         * gtk/gtktextbuffer.c (_gtk_text_buffer_spew): Prepend with
12233         underscore, since it's internal.
12234
12235         * gtk/gtktextbuffer.h: Remove find_string prototype, this is 
12236         now implemented in terms of iterators in gtktextiter.h
12237
12238         * gtk/gtktextbuffer.c (gtk_text_buffer_set_text): 
12239         New function, destructively sets contents of buffer. Also 
12240         a convenient way to clear the buffer by setting text to ""
12241
12242         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): reformat
12243         multiline string literal
12244
12245         * gtk/testtext.c (text_changed_callback): Redraw line numbers if
12246         text changes.
12247
12248         * gtk/gtktextiter.c (forward_char): Return FALSE if new location 
12249         is not dereferenceable
12250         (gtk_text_iter_forward_lines): fix return value
12251
12252 2000-09-29  Havoc Pennington  <hp@redhat.com>
12253
12254         * gtk/gtktexttag.c (gtk_text_tag_set_priority): fix indentation
12255
12256         * gtk/gtktextview.c: Implement drag thresholding; change functions 
12257         that set border window size to have nicer name
12258         (gtk_text_view_mark_set_handler):  Fix this to have the 
12259         right signature.
12260
12261         * gtk/testtextbuffer.c (fill_buffer): Update with pixbuf changes
12262
12263         * gtk/testtext.c: Update with API changes, put line numbers on 
12264         both sides.
12265         
12266         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): Replace get_pixmap
12267         with this
12268
12269         * gtk/gtktextchild.h, gtk/gtktextchild.c: replace all pixmap with
12270         pixbuf; delete a big block of #if 0 Tk code
12271
12272         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_pixbuf): Replace 
12273         insert_pixmap with insert_pixbuf
12274
12275 2000-09-29  Martin Baulig  <baulig@suse.de>
12276
12277         * gdk-pixbuf.pc.in: Renamed to gdb-pixbuf-2.0.pc.in to avoid
12278         confusion with the GdkPixbuf of the GNOME 1.x platform.
12279
12280 2000-09-29  Havoc Pennington  <hp@pobox.com>
12281
12282         * gtk/gtktextview.c: Implement the side windows.
12283
12284         * gtk/testtext.c: Implement simple line numbering in the 
12285         left side window; seems to make scrolling sloooow. Oops.
12286         Also, cursor blink is for some reason causing redraws
12287         of the line numbers. Should investigate...
12288
12289 2000-09-28  Havoc Pennington  <hp@redhat.com>
12290
12291         * gtk/gtktextview.c: Set up infrastructure to deal with lots of 
12292         scrolling child windows, and draw focus rectangle properly.
12293         
12294         (gtk_text_view_buffer_to_window_coords):
12295         Coordinate transformation to deal with all these freaking windows
12296         and offsets
12297         (gtk_text_view_window_to_buffer_coords): transform the other way
12298
12299         * gtk/testtext.c (create_buffer): Update to match Pango API change
12300
12301         * gtk/gtktexttagtable.c (gtk_text_tag_table_foreach): Go over the
12302         anonymous tags
12303         (foreach_unref): don't emit remove signal from finalize, just
12304         set tag's parent to NULL
12305
12306 2000-09-26  Havoc Pennington  <hp@redhat.com>
12307
12308         * gtk/gtkiconfactory.c (gtk_icon_set_clear): remove
12309         Fix some warnings       
12310
12311 2000-09-26  Havoc Pennington  <hp@redhat.com>
12312
12313         * gtk/Makefile.am (gtk_private_h_sources): Move more text widget
12314         headers into the private header list
12315
12316         * Makefile.am (pkgconfig_DATA): install pkg-config files
12317
12318         * configure.in: add pkg-config files
12319
12320         * gdk-2.0.pc.in, gdk-pixbuf.pc.in, gtk+-2.0.pc.in: pkg-config files
12321
12322         * gtk/gtkwindow.c (gtk_window_read_rcfiles): Invalidate
12323         outstanding icon caches on theme change.
12324
12325         * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: New icon system. Three 
12326         important types:
12327
12328         (GtkIconSource): Specification for creating a pixbuf 
12329         appropriate for a direction/state/size triplet from 
12330         a source pixbuf or filename
12331
12332         (GtkIconSet): List of GtkIconSource objects that are used to
12333         create the "same" icon (e.g. an OK button icon), and cache for
12334         rendered icons
12335
12336         (GtkIconFactory): Hash from stock ID to GtkIconSet; used to look
12337         up the icon set for a given stock ID.  GTK maintains a stack of
12338         GtkIconFactory to search, and applications or libraries can add
12339         additional icon factories on top of the stack
12340         
12341         * gtk/gtkrc.h, gtk/gtkrc.c: When loading an RcStyle, parse 
12342         the set of GtkIconSource specified for a given stock ID into 
12343         a GtkIconSet, and put the GtkIconSet into a GtkIconFactory for the 
12344         RcStyle, under the specified stock ID.
12345
12346         * gtk/gtkstyle.h, gtk/gtkstyle.c: Add a virtual function
12347         render_icon used to derive a GdkPixbuf from a GtkIconSource.
12348         This allows people to theme how prelight, insensitive, etc. are
12349         done.
12350
12351         (gtk_style_lookup_icon_set): Look up a stock ID in the list of
12352         icon factories for a style, and return the resulting 
12353         icon set if any.
12354
12355         (gtk_style_render_icon): Render an icon using the render_icon 
12356         method in the GtkStyleClass.
12357
12358         * gtk/gtkwidget.h, gtk/gtkwidget.c (gtk_widget_render_icon): 
12359         Use the style for a given widget to look up a stock ID, get the
12360         icon set, and render an icon using the render_icon method 
12361         of the style
12362
12363         * gtk/gtkstock.h, gtk/gtkstock.c: Header with the GtkStockItem type
12364         (contains information about a stock item), the built-in stock item
12365         IDs, and functions to add/lookup stock items.
12366
12367         * gtk/stock-icons/*: Stock icons that come with GTK
12368
12369         * gtk/gtkbutton.h, gtk/gtkbutton.c (gtk_button_new_stock): Returns
12370         a button based on a GtkStockItem
12371         (gtk_button_new_accel): Takes a uline string and accel group, and
12372         installs the accelerator.
12373
12374         * gtk/gtkimage.h, gtk/gtkimage.c: Make this into a generic
12375         image-display widget.
12376
12377 2000-09-25  Havoc Pennington  <hp@redhat.com>
12378
12379         * gtk/gtktexttypes.c: Remove Latin1 conversion stuff
12380
12381         * gtk/gtktextbtree.c (gtk_text_btree_node_remove_data): 
12382         Fix a bug when removing node data, we didn't properly 
12383         re-splice the linked list after removing the data.
12384
12385         * gtk/gtktextview.c (gtk_text_view_key_press_event): Pass through 
12386         GDK_Tab as literal tab, Ctrl-Tab to tab to focus widget
12387
12388         * gtk/gtktextbuffer.c (selection_received): fix g_convert usage
12389
12390         * gtk/gtktextlayout.c (set_para_values): Set tab array 
12391         for the layout from the GtkTextTag.
12392
12393         * gtk/gtktexttypes.h: delete tab and search cruft, 
12394         remove g_convert() in favor of GLib version
12395
12396         * gtk/gtktexttypes.c: remove tab implementation from here,
12397         move to Pango
12398
12399         * gtk/gtktexttag.h, gtk/gtktexttag.c: Implement 
12400         tab stuff using new PangoTabArray from Pango
12401
12402         * gtk/gtktexttag.c (gtk_text_attributes_fill_from_tags): Remove
12403         unused border_width stuff
12404
12405 Thu Sep 14 12:21:12 2000  Owen Taylor  <otaylor@redhat.com>
12406
12407         * gtk/gtktexttypes.[ch]: Remove g_convert (moved to
12408         glib) and now useless utf_to_latin1() latin1_to_utf()
12409
12410         * gtk/gtktextview.[ch]: Change ::move_insert and
12411         ::delete_text action signals to ::move and ::delete;
12412         create the signals with the right enumeration type,
12413         not GTK_TYPE_ENUM so that bindings work. Add C-d, M-d,
12414         C-v bindings, change Home, End to move to beginning/end
12415         of line, Add C-Home C-End to move to beginning/end
12416         of buffer. Change ::cut_text to ::cut_clipboard, etc;
12417         combine ::scroll_text into ::move; use new GtkSelectionData
12418         functions to simplify DND text handling.
12419         
12420         * gtk/gtkenums.h gtk/gtktextview.h: Move movement,
12421         deletion enumerations here, rename enumeration values to 
12422         be consistently plural.
12423
12424         * gtk/gtktextbuffer.c: Use new clipboard interfaces
12425         for cut/copy/paste and primary selection.
12426
12427         * gtk/gtktextbuffer.[ch]: Remove excess time and
12428         'interactive' arguments from cut/copy/paste;
12429         rename cut to cut_clipboard, etc; remove
12430         gtk_text_buffer_get_clipboard_contents().
12431
12432         * gtk/gtktextlayout.[ch]: Add 
12433         gtk_text_layout_move_iter_to_line_end() to move the iter to 
12434         line ends.
12435
12436         * gtk/gtkselection.[ch] (gtk_selection_data_set/get_text):
12437         Functions to set or get a UTF-8 string on the selection
12438         data.
12439
12440         * gtk/gtkclipboard.[ch]: New, simplified selection handling
12441         interfaces.
12442
12443         * gtk/gtkinvisible.c (gtk_invisible_new): Realize newly
12444         created widgets - one of these is useless if we don't.
12445
12446         * gtk/gtkselection.[ch] (gtk_selection_clear_targets): Export
12447         a public function clear all targets registered for the
12448         widget.
12449
12450         * gtk/gtkselection.c (gtk_selection_owner_set) docs/Changes-2.0.txt:
12451         Never call gtk_widget_realize() - that was just asking
12452         for bizarre side-effects.
12453
12454         * gtk/gtkselection.c (gtk_selection_owner_set): Call
12455         gdk_selection_owner_set even if the widget is the
12456         same so that we reliably update the timestamp on
12457         the server.
12458
12459         * gdk/x11/gdkevents-x11.c gdk/x11/gdkx.h: Add a 
12460         gdk_x11_get_server_time() function.
12461         
12462         * gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.h
12463         gdk/x11/gdkselection-x11.c gdk/x11/gdkwindow-x11.h:
12464         Add some tricky filtering on serial numbers for
12465         selection clear events to fix up long-standard
12466         race condition FIXME's in gtkselection.c.
12467
12468         * gdk/gdkproperty.h gdk/x11/gdkselection-x11.h: Add
12469         routines to convert from utf8 to compound text or
12470         STRING and from a text property to UTF-8.
12471
12472         * gtk/gtkmain.[ch] (gtk_get_current_event_time): Add 
12473         a convenience function gdk_get_current_event_time().
12474
12475         * gtk/gtkselection.c (gtk_selection_data_copy/free): Copy
12476         and free selection_data->data properly
12477
12478 Sat Sep  9 10:23:53 2000  Owen Taylor  <otaylor@redhat.com>
12479
12480         * gtk/gtkthemes.c: Remove some unecessary includes.
12481
12482 2000-09-08  Jonathan Blandford  <jrb@redhat.com>
12483
12484         * gtk/gtktextdisplay.c
12485         * gtk/gtktextlayout.c
12486         * gtk/gtktexttag.c
12487         * gtk/gtktexttag.h
12488         * gtk/testtext.c: Change the overstrike property to strikethrough,
12489         to closer match pango.
12490
12491 Fri Sep  8 14:28:00 2000  Owen Taylor  <otaylor@redhat.com>
12492
12493         * gtk/gtktextview.c: Fix up visibility so that focus,
12494         cursor_visible and blink interact properly.  Reenable cursor blink
12495         which had been roughly disabled. Make blink and focus
12496         properly per-view.
12497
12498         * gtk/gtktextlayout.[ch] (gtk_text_layout_set_cursor_visible):
12499         Add a flag for whether to display insertion cursor and
12500         a function to set the flag.
12501
12502         * gtk/gtktextlayout.c (gtk_text_layout_get_line_yrange): Change
12503         get_line_y() to get_line_yrange(), to be a bit more generally
12504         useful.
12505
12506 Thu Sep 07 20:54:33 2000  George Lebl <jirka@5z.com>
12507
12508         * gtk/gtkmenu.c:  in gtk_menu_set_submenu_navigation_region
12509           do stop_navigating_submenu, to clear last timeout properly.
12510           Also in gtk_menu_motion_notify move ignore_enter above
12511           the conditional to make it always happen as suggested by Owen
12512
12513 2000-09-07  Tor Lillqvist  <tml@iki.fi>
12514
12515         * gdk/win32/makefile.mingw.in: Use -Wall. Add gdkpango-win32.o
12516
12517         * gdk/win32/gdkwin32.h: Add more definitions missing from the free
12518         w32api headers.
12519
12520         * gdk/win32/gdkprivate-win32.h: Add a couple of missing
12521         declarations.
12522
12523         * gdk/win32/gdkdrawable-win32.c: Remove gcc -Wall warnings.
12524         (gdk_win32_get_colormap): A line had been deleted by mistake.
12525
12526         * gdk/win32/gdkevents-win32.c: Remove lint (gcc -Wall) here, too.
12527         (gdk_event_translate): Handle more virtual keycodes to be able to
12528         generate GDK events for Control-comma, Control-period, etc.
12529
12530         * gtk/gtk.def: Add some missing entry points.
12531
12532 Thu Sep  7 11:47:02 2000  Owen Taylor  <otaylor@redhat.com>
12533
12534         * gtk/gtktextbuffer.c gtk/gtkimcontext.c gtk/gtkwidget.c:
12535         Doc comment fixing. (Mostly non-matching parameter names.)
12536
12537         * gtk/gtkcalendar.c gtk/gtklist.c gtk/gtknotebook.c: Modify
12538         comments a little to avoid looking like a doc comment.
12539
12540         * gtk/gtkspinbutton.h (GTK_INPUT_ERROR): Change INPUT_ERROR to
12541         GTK_INPUT_ERROR. (Should the mechanism for erros in spin button
12542         conversions be changed to GError?)
12543
12544         * gtk/gtkcolorsel.c (GTK_CUSTOM_PALETTE_WIDTH/HEIGHT): 
12545         Move private #defines into .c file.
12546
12547         * gtk/gtktexttag.c (gtk_text_tag_class_init): Alphabetize
12548         order of argument addition, remove duplicates.
12549
12550         * gtk/gtkaspectframe.h (struct _GtkAspectFrameClass):
12551         parent class is FrameClass, not BinClass.
12552
12553         * gtk/gtk.h: Add gtkinvisible, which was missing.
12554         (It's occasionalyl useful for client apps, if seldom.)
12555
12556         * gdk/gdktypes.h: Remove obsolete GDK_CORE_POINTER
12557         #define.
12558
12559 Wed Sep  6 09:53:15 2000  Owen Taylor  <otaylor@redhat.com>
12560
12561         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Use X-space
12562         coordinates when creating window, instead of GDK-space
12563         coordinates. (Avoid BadValue on too large windows.)
12564
12565 2000-09-05  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
12566
12567         * configure.in (use_mmx_asm): Remove conftest* after use along the
12568         lines of AC_TRY_COMPILE.        
12569         
12570         * gtk/gtkrc.c (gtk_rc_parse_file): Use g_path_get_dirname instead
12571         of g_dirname, which is deprecated.
12572         (gtk_rc_parse_any): Removed calls to
12573         g_scanner_{freeze,thaw}_symbol_table, which are deprecated.
12574
12575         * gtk/gtkbindings.c (binding_entry_new, binding_entry_destroy):
12576         Removed calls to g_hash_table_{freeze,thaw}, as they are
12577         deprecated now.
12578
12579         * gtk/testtext.c (buffer_pretty_name): Use g_path_get_basename
12580         instead of g_basename.
12581         
12582 2000-09-04 Elliot Lee <sopwith@redhat.com>
12583         
12584         * gdk/gdkpixbuf.h: Put text after #endif inside a comment to avoid
12585         ANSI warning.
12586
12587 Sun Sep 03 00:47:08 2000  George Lebl <jirka@5z.com>
12588
12589         * gtk/gtkwidget.h:  Add some documenting comments about 
12590           GTK_CAN_DEFAULT, GTK_HAS_DEFAULT and GTK_RECEIVES_DEFAULT
12591           just as owen said on irc.
12592
12593         * gtk/gtkwindow.c (gtk_window_set_default):  Don't blindly
12594           set HAS_DEFAULT.  Only set it if there isn't another window
12595           holding it (a focus window which RECEIVES_DEFAULT) and only unset
12596           it if the widget is not the focused window with RECEIVES_DEFAULT.
12597           This fixes weird double default bugs in dialogs which has things
12598           call gtk_window_set_default at times.
12599
12600 Fri Sep  1 22:39:07 2000  Owen Taylor  <otaylor@redhat.com>
12601
12602         * gtk/gtkmenu.[ch] TODO.xml: Apply patch from
12603         Nils Barth and David Santiago to improve submenu
12604         navigation. The patch does this by creating a triangular
12605         region from the point where the pointer leaves the
12606         menu to the submenu.  While the pointer is in
12607         that region and a timeout has not expired, events 
12608         that would cause the active submenu to change are
12609         ignored.
12610
12611 Fri Sep  1 15:34:46 2000  Owen Taylor  <otaylor@redhat.com>
12612
12613         * gdk/x11/gdkwindow-x11.c (gdk_window_move): Fix bug where
12614         moving a toplevel window immediately after sizing it would
12615         result in it being sized back to the old size since 
12616         impl->width, impl->height aren't updated until we hear
12617         back from the server. There is still a (longstanding) bug
12618         here that gdk_window_get_size() will give the wrong size
12619         until we do hear back.
12620
12621 2000-08-31  Havoc Pennington  <hp@redhat.com>
12622
12623         * gtk/gtktextiter.h, gtk/gtktextiter.c, gtk/gtktextlayout.h, 
12624         gtk/gtktextlayout.c, gtk/gtktexttag.h, gtk/gtktexttag.c, 
12625         gtk/gtktexttagprivate.h, gtk/gtktextview.c:
12626         Rename GtkTextStyleValues to GtkTextAttributes
12627
12628 2000-08-31  Havoc Pennington  <hp@pobox.com>
12629
12630         * gtk/gtktextbtree.c (GtkTextBTree): cache end line, 
12631         for rapid testing whether an iterator is the end iterator
12632         (gtk_text_btree_new): init end line cache
12633         (gtk_text_line_is_last): use fast cached line to 
12634         see if we're the last line.
12635         (get_last_line): use cached line here too, should 
12636         speed up some random unrelated code.
12637         
12638 2000-08-30  Havoc Pennington  <hp@pobox.com>
12639
12640         * gtk/gtkmarshal.list: Add marshallers for changed GtkTextBuffer
12641         signals.
12642
12643         * gtk/gtktextbuffer.h: Add "interactive" arg to insert_text and
12644         delete_text signals. This allows the signals to be used for
12645         implementing undo.
12646
12647         * gtk/gtktextbuffer.c: Change signal handler signatures; 
12648         provide "interactive" argument when emitting insert_text or
12649         delete_text signal.
12650         
12651 2000-08-30  Havoc Pennington  <hp@pobox.com>
12652
12653         * gtk/gtktextbuffer.c: Docs
12654
12655 Fri Aug 25 12:16:15 2000  Owen Taylor  <otaylor@redhat.com>
12656
12657         * gdk/x11/gdkimage-x11.c: remove GDK_IMAGE_SHARED_PIXMAP
12658         from switch statements, since Tor removed the enumeration
12659         value.
12660         
12661         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
12662         s/GDK_IS_WINDOW/GDK_IS_DRAWABLE/.
12663
12664 2000-08-29 Elliot Lee <sopwith@redhat.com>
12665         * */*.h: Use G_GNUC_CONST.
12666
12667 2000-08-27  Havoc Pennington  <hp@pobox.com>
12668
12669         * gtk/gtktextiter.c, gtk/gtktextiter.h: wrote lots of API docs,
12670         minor indentation fixes, inserted some FIXME about stuff I
12671         realized was broken while documenting it.
12672         (gtk_text_iter_get_pixmap): allow out params to be NULL, following
12673         GTK convention  
12674
12675 Tue Aug 22 12:33:24 2000  Owen Taylor  <otaylor@redhat.com>
12676
12677         * gtk/testgtk.c (create_styles): Fix double free of
12678         font desc.
12679
12680 Mon Aug 21 22:39:18 2000  Owen Taylor  <otaylor@redhat.com>
12681
12682         * gtk/gtkwidget.[ch]: Add gtk_widget_modify_{fg,bg,text,base,font}.
12683         
12684         * gtk/testgtk.c (create_styles): Add a test for modifying
12685         the style through gtk_widget_modify_*.
12686
12687         * gtk/gtkwidget.c (gtk_widget_get_modifier_style): Add
12688         a function to get the current modifier style.
12689
12690         * gtk/gtkwidget.c (gtk_widget_modify_style): Make a copy
12691         of the passed in GtkRcStyle instead of ref'ing it.
12692
12693         * gtk/gtkrc.[ch]: Add gtk_rc_style_copy().
12694
12695 2000-08-20  Tor Lillqvist  <tml@iki.fi>
12696
12697         * gdk/gdkimage.h
12698         * gdk/win32/gdkimage-win32.c: No need any longer on Win32 for the
12699         shared memory image+pixmap GdkImage type, or
12700         gdk_image_bitmap_new(). They were used in the gdk_imlib port, but
12701         I am dropping that.
12702
12703         * gtk/gtkmain.h: On Win32, use a #define to map gtk_init() to
12704         actually call gtk_init_abi_check(), passing also
12705         sizeof(GtkWindow). Ditto for gtk_init_check(). 
12706
12707         * gtk/gtk.def
12708         * gtk/gtkmain.c: (gtk_init_abi_check, gtk_init_check_abi_check):
12709         New functions, used to check that the GTK+-using code has been
12710         compiled using the correct compiler and switches. In particular,
12711         with gcc one has to use the -fnative-struct switch as GTK+ is
12712         compiled with that.
12713
12714 Fri Aug 18 17:27:46 2000  Owen Taylor  <otaylor@redhat.com>
12715
12716         * gtk/gtkclist.c (gtk_clist_merge): Don't leave dangling
12717         ->prev fields when merging lists. (Found simultaneously
12718         by Pawel Salek and Jakub Jelinek)
12719
12720 2000-08-12  Tor Lillqvist  <tml@iki.fi>
12721
12722         * gdk/gdk.def
12723         * gtk/gtk.def: Add missing entries.
12724
12725         * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Use
12726         OUT_TT_ONLY_PRECIS, try to get a TrueType font.
12727
12728         * gdk/win32/gdkinput-win32.c (gdk_device_get_state): New
12729         function. Dummy implementation at this point.
12730
12731         * gtk/makefile.mingw.in: Fix typo. Add testtext and testtextbuffer
12732         rules. Undefine GTK_COMPILATION when compiling the test programs.
12733         
12734         * gtk/gtkdebug.h: Mark gtk_debug_flags for export/import.
12735
12736 2000-08-11  Tor Lillqvist  <tml@iki.fi>
12737
12738         * gtk/gtkfilesel.c: Add more calls to g_filename_{to,from}_utf8()
12739         to convert back and forth from UTF-8 and the "system" (or "current
12740         locale") charset when necessary. Indentation/spacing cleanup.
12741
12742 2000-08-10  Havoc Pennington  <hp@redhat.com>
12743
12744         * Makefile.am (snapshot): Change the format of the snapshot
12745         version to match glib
12746
12747         * gdk/win32/Makefile.am (EXTRA_DIST): remove gdkinputprivate.h
12748         from EXTRA_DIST since it doesn't seem to exist
12749
12750 2000-08-10  Tor Lillqvist  <tml@iki.fi>
12751
12752         * gtk/gtkfilesel.c (open_new_dir): Use the "system codepage"
12753         version of the directory name (not the UTF-8 one) when building
12754         the path name to stat().
12755
12756 2000-08-03  Elliot Lee  <sopwith@redhat.com>
12757
12758         * gdk/gdkpango.c (gdk_draw_layout_line): Don't shape runs with a
12759         PANGO_ATTR_SHAPE set.
12760
12761 Thu Aug  3 09:17:06 2000  Owen Taylor  <otaylor@redhat.com>
12762
12763         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Applied patch from
12764         Peter Osterlund to simplify the code while keeping the
12765         functionality the same.
12766
12767 Wed Aug  2 14:57:38 2000  Owen Taylor  <otaylor@redhat.com>
12768
12769         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Move
12770         is_viewable() test further inside the function, since removing the 
12771         window from the redraw list without clearing ->update_area
12772         was also very broken.
12773
12774 2000-08-02  Tor Lillqvist  <tml@iki.fi>
12775
12776         * configure.in: Check for <unistd.h>.
12777
12778 2000-08-01  Martin Baulig  <baulig@suse.de>
12779
12780         * gtk/gtkmain.c (gtk_init_check): Use g_message() and not g_warning()
12781         to display the message that this is a development version of GTK+.
12782
12783 Mon Jul 31 18:37:36 2000  Owen Taylor  <otaylor@redhat.com>
12784
12785         * gtk/gtkentry.c (entry_adjust_scroll): Fix problem where computation
12786         was depending on widget->allocation instead of the width of text_area,
12787         which was incorrect for subclasses like GtkSpinButton.
12788
12789         * gdk/gdkpango.c (gdk_draw_layout): Fix a couple of typos
12790         with width == 1 tests that should be width == -1.
12791
12792 Mon Jul 31 16:45:48 2000  Owen Taylor  <otaylor@redhat.com>
12793
12794         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Replace broken, 
12795         (broken, Elliot, every single window blank on X) custom code with call
12796         to gdk_window_is_viewable() which a) prevents code duplicate and
12797         b) works. 
12798
12799 2000-07-31  Elliot Lee  <sopwith@redhat.com>
12800
12801         * gtk/gtkcolorsel.c: We really do need to include gdkfb.h in order
12802         to get the GDK_PARENT_ROOT() macro to work.
12803         * gtk/gtkmarshal.list: Add NONE:STRING,POINTER
12804         * gdk/gdkwindow.c: Don't send expose events, or invalidate pieces
12805         of, windows that aren't shown.
12806         * gdk/linux-fb: Redraw-when-menu-hidden solved, plus a bunch of
12807         pointer grab stuff.
12808
12809 Mon Jul 31 13:53:16 BST 2000  Tony Gale <gale@gtk.org>
12810
12811         * docs/gtkfaq.sgml docs/gtk-faq.sgml:
12812           s/gtk_main_iteration/g_main_iteration/
12813
12814           Did this already in change:
12815                 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
12816           don't know how it got reverted.
12817
12818 2000-07-31  Stanislav Brabec  <utx@penguin.cz>
12819
12820         * gdk/gdk.c: #ifdef G_ENABLE_DEBUG around gdk_arg_debug_cb and
12821         gdk_arg_no_debug_cb to fix compilation problem with --disable-debug.
12822
12823         * gdk/Makefile.am: Link gdk against actually compiled gdk_pixbuf-1.3,
12824         not gdk_pixbuf.
12825
12826 2000-07-30  Pablo Saratxaga <pablo@mandrakesoft.com>
12827
12828         * configure.in,po/{sp,sr}.po: Added Serbian files
12829
12830 2000-07-30  Tor Lillqvist  <tml@iki.fi>
12831
12832         * gdk/Makefile.am: Add makefile.mingw.in to EXTRA_DIST.
12833
12834         * gdk/win32/gdkevents-win32.c (gdk_events_init, gdk_events_queue):
12835         Remove the g_pipe_readable_msg stuff. Not needed with new GLib
12836         GIOChannel implementation.
12837
12838         * gdk/win32/gdkinput.c
12839         * gdk/win32/gdkpango-win32.c: Update license name here, too.
12840
12841         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_lookup): Fix
12842         definition to match prototype.
12843
12844         * gtk/makefile.mingw.in: Add libiconv CFLAGS and LIBS.
12845
12846 2000-07-27  Elliot Lee  <sopwith@redhat.com>
12847
12848         * gtk/gdk-pixbuf-loader.[ch]: Add gdk_pixbuf_loader_new_with_type
12849         function, to allow handling image formats that cannot be detected
12850         by looking at content alone.
12851
12852 Thu Jul 27 13:13:21 BST 2000  Tony Gale <gale@gtk.org>
12853
12854         * docs/tutorial/*.gif *.jpg *.eps
12855           Update these to the same look-n-feel.
12856           Why does including images in DocBook suck so badly?
12857
12858 Thu Jul 27 05:06:29 2000  Tim Janik  <timj@gtk.org>
12859
12860         * gtk/gtktable.c: applied patch from Phil Thompson
12861         <phil@river-bank.demon.co.uk> that enables space settings for
12862         the last row/columns as well.
12863
12864 Wed Jul 26 12:59:31 2000  Tim Janik  <timj@gtk.org>
12865
12866         * *.[hc]: applied patch from Andreas Persenius <ndap@swipnet.se> that
12867         updates the license headers to the GNU Lesser General Public License,
12868         as well as updating the copyright year to 2000.
12869
12870 2000-07-26  Robert Brady  <rwb197@zepler.org>
12871
12872         * configure.in: Cause GETTEXT_PACKAGE to be consistent in config.h
12873           and po/Makefile, was installing and looking for them under gtk20
12874           and gtk2 respectively.
12875
12876 2000-07-25  Havoc Pennington  <hp@redhat.com>
12877
12878         * gtk/testtext.c: Comment out some stuff that depends on the rest
12879         of my patches.
12880
12881 2000-07-25  Havoc Pennington  <hp@redhat.com>
12882
12883         * gtk/gtkmarshal.list: Add NONE:POINTER,POINTER,INT for the text
12884         buffer
12885
12886 2000-07-25  Havoc Pennington  <hp@redhat.com>
12887
12888         * gtk/testtext.c, gtk/testtextbuffer.c: update to reflect text
12889         widget changes.
12890
12891         * gtk/gtktextview.h: To be consistent with usage of "line"
12892         throughout the API to mean "newline-terminated thingy", change
12893         MOVEMENT_LINE to be MOVEMENT_WRAPPED_LINE, and MOVEMENT_PARAGRAPH
12894         to MOVEMENT_LINE.
12895
12896         (GtkTextView): Add flags for default editability, and whether to
12897         show the cursor. Add functions to get/set that. Add 
12898
12899         (gtk_text_view_get_iter_location): new function
12900
12901         * gtk/gtktexttypes.h: Move GtkTextLine typedef from here to
12902         gtktextlayout.h
12903         (g_convert): Add g_convert temporarily, will go in glib in a bit
12904         
12905         * gtk/gtktexttagtable.h: include gtktexttag.h, and define
12906         GtkTextTagTableForeach instead of brokenly using GHFunc.
12907         Change gtk_text_tag_table_foreach() so it doesn't use GHFunc.
12908
12909         * gtk/gtktexttagprivate.h: Remove GtkTextStyleValues from here,
12910         moved to public header.
12911
12912         * gtk/gtktexttag.h: Rename the "elide" attribute of tags to
12913         "invisible", since "elide" was a bad name.
12914         (gtk_text_tag_get_priority): Added
12915
12916         (GtkTextStyleValues): put this in public header, along with
12917         functions to use it.
12918
12919         * gtk/gtktextmarkprivate.h: Include more headers, since we no
12920         longer include gtktextbtree.h.
12921
12922         * gtk/gtktextmark.h: Add gtk_text_mark_ref, gtk_text_mark_unref,
12923         gtk_text_mark_deleted
12924
12925         * gtk/gtktextlayout.h: Don't include the "really private" headers,
12926         only buffer/iter. Forward declare GtkTextLIne and GtkTextLineData
12927         to make this possible. Now we only need to install
12928         gtktextlayout.h, not gtktextbtree.h and gtktext*private.h.
12929         (However the Makefile.am isn't changed yet because of the
12930         logistics of merging gtk-hp-patches piecemeal)
12931
12932         * gtk/gtktextiterprivate.h: include btree header, so it compiles;
12933         rename gtk_text_iter_get_line to gtk_text_iter_get_text_line since
12934         gtk_text_iter_get_line is now used in the public API for a
12935         different purpose.
12936
12937         * gtk/gtktextiter.h: Clean up function names to be more
12938         consistent. Always call char offset "offset" and byte index
12939         "index". A "line" is always a line number. 
12940
12941         (gtk_text_iter_is_last): new function, more efficient than 
12942         the existing way to check
12943         (gtk_text_iter_is_first): new function, also more efficient
12944
12945         (gtk_text_iter_up_lines, gtk_text_iter_down_lines): Remove these
12946
12947         (gtk_text_iter_next_char, gtk_text_iter_prev_char): Renamed from 
12948         gtk_text_iter_forward_char, etc.
12949
12950         (gtk_text_iter_forward_to_tag_toggle): Renamed from
12951         forward_find_tag_toggle, since this isn't a linear search
12952
12953         (GtkTextCharPredicate): rename from GtkTextViewCharPredicate
12954
12955         (gtk_text_iter_forward_search, gtk_text_iter_backward_search): 
12956         New functions, search for a buffer substring.
12957
12958         * gtk/gtktextbuffer.h: Add fields to store whether a paste is
12959         interactive and default editable (since we need to store that info
12960         until we receive the selection data).
12961
12962         Remove all the _at_char and at_line etc. versions of functions;
12963         only have iterator versions.
12964
12965         Add _interactive() versions of functions, that consider the
12966         editability of text. (FIXME add interactive flag to the 
12967         insert/delete signals per Darin's suggestion)
12968
12969         (gtk_text_buffer_get_tag_table): new function, demand-creates the
12970         tag table if necessary
12971
12972         Remove declaration of gtk_text_buffer_get_iter_from_string
12973
12974         (_gtk_text_buffer_get_btree): private/internal function, added.
12975         
12976
12977         * gtk/gtktextbtree.h: Remove forward decl of GtkTextLineData.
12978         (gtk_text_line_is_last): new function
12979
12980 2000-07-25  Havoc Pennington  <hp@redhat.com>
12981
12982         * gtk/gtkprogressbar.h: Implement new sane, 5-function API for
12983         using GtkProgressBar. See Changes-2.0.txt for details.
12984
12985         * gtk/gtkprogressbar.c: Add object arguments "fraction" and
12986         "pulse_step" which are the equivalent of
12987         gtk_progress_bar_set_pulse_step and gtk_progress_bar_set_fraction.
12988         Implement new API.
12989         
12990         * gtk/gtkprogress.h (struct _GtkProgress): Add a field
12991         (use_text_format) to mark whether text set on the progress bar is
12992         a format string. Deprecate entire GtkProgress interface.
12993
12994         * gtk/gtkprogress.c (gtk_progress_init): init use_text_format to TRUE
12995         (gtk_progress_build_string): make this a no-op if use_text_format
12996         is FALSE
12997
12998         * docs/Changes-2.0.txt: Describe progress bar changes.
12999
13000 2000-07-25  Tor Lillqvist  <tml@iki.fi>
13001
13002         * Makefile.am: Include the build directory.
13003
13004         * configure.in: Generate build/Makefile, build/win32/Makefile,
13005         gdk/, gdk/win32/, and gtk/makefile.mingw.
13006
13007         * config.h.win32: Add USE_GMODULE and USE_MMX for gdk-pixbuf.
13008         Add GETTEXT_PACKAGE.
13009         
13010         * gdk/gdk.def
13011         * gtk/gtk.def: Updates.
13012
13013         * gdk/gdkfont.h
13014         * gdk/gdkpixmap.h: Remove temporary Win32-only functions, we don't
13015         need them any longer.
13016
13017         * gdk/gdkinput.h: Mark gdk_core_pointer for export/import.
13018
13019         * gdk/makefile.mingw.in: Define GDK_COMPILATION. Link with
13020         PANGOWIN32_LIBS and gdk_pixbuf.
13021
13022         * gdk/win32: Compiles, but no doubt doesn't work at all.
13023
13024         * gdk/win32/makefile.mingw.in: Define GDK_COMPILATION. 
13025
13026         * gdk/win32/gdkinput.c: New file, temporarily.
13027         
13028         * gdk/win32/gdkinput-win32.h: New file
13029
13030         * gdk/win32/gdkinputprivate.h: Remove.
13031
13032         * gdk/win32/gdkpango-win32.c: New file.
13033
13034         * gtk/makefile.mingw.in: New file
13035
13036         * gtk/makefile.cygwin: Removed
13037         
13038         * gtk/Makefile.am: Update accordingly.
13039
13040         * gtk/gtkrc.[ch] (gtk_win32_get_installation_directory): Renamed and
13041         made externally visible.
13042
13043         * gtk/gtkmain.c: Use it.
13044         
13045         * gtk/gtktextdisplay.c: No need to include pangox.h, pango.h
13046         is enough.
13047
13048         * gtk/gtktypeutils.c: Mark glib_debug_objects for import.
13049
13050 2000-07-24 Elliot Lee <sopwith@redhat.com>
13051         * gdk/gdkprivate.h: Remove gdk_*_lookup() defines, since they are defined by the
13052         individual backends already.
13053         * gdk/gdkregion-generic.h, gdk/gdktypes.h: Put gdkregionbox & gdksegment back together
13054         again. Yes, there really is a good reason for this, if you are using the gdkregion
13055         internals, and if you're not, why do you care?
13056         * gdk/gdkwindow.c: Fix inverted condition
13057         * gdk/linux-fb: Compiles (for me - it will not work elsewhere most likely).
13058         * gtk/gtkcolorsel.c, gtk/gtkwindow.c: Add include for linux-fb
13059         * gtk/gtkrange.c: Redraw trough when moving.
13060         * gtk/gtktypeutils.c: Fix warning by adding const cast.
13061         * modules/linux-fb/basic.c: Fix unknown glyph retrieval.
13062
13063 2000-07-23  Tor Lillqvist  <tml@iki.fi>
13064
13065         * configure.in: Check for mkstemp and sigsetjmp. Output
13066         gdk-pixbuf/makefile.mingw and gdk-pixbuf/pixops/makefile.mingw.
13067
13068         More work on GDK for Win32. Still in an intermediate state.
13069
13070         * gdk/makefile.cygwin
13071         * gdk/win32/makefile.cygwin: Removed.
13072         
13073         * gdk/makefile.mingw.in
13074         * gdk/win32/makefile.mingw.in: New files.
13075
13076         * gdk/Makefile.am
13077         * gdk/win32/Makefile.am: Generate and distribute them.
13078
13079         * gdk/win32/gdkwindow-win32.h
13080         * gdk/win32/gdkdrawable-win32.h
13081         * gdk/win32/gdkpixmap-win32.h: New files.
13082
13083         * gdk/win32/gdkcolor-win32.c
13084         * gdk/win32/gdkcursor-win32.c
13085         * gdk/win32/gdkdrawable-win32.c
13086         * gdk/win32/gdkgc-win32.c
13087         * gdk/win32/gdkimage-win32.c
13088         * gdk/win32/gdkprivate-win32.h
13089         * gdk/win32/gdkwin32.h: Update data structures. Cosmetics:
13090         Rename fields and variables called xcursor, xid, etc (these names
13091         were leftovers from the X11 backend) to hcursor, hwnd, hbitmap etc.
13092
13093 Sat Jul 22 17:41:26 2000  Owen Taylor  <otaylor@redhat.com>
13094
13095         * gtk/gtkentry.[ch]: Fix some problems with vertical
13096         alignment.
13097
13098         * gtk/gtkentry.c (gtk_entry_find_position): Fix 
13099         char/byte confusion.
13100
13101 Sat Jul 22 11:16:05 2000  Owen Taylor  <otaylor@redhat.com>
13102
13103         * gtk/gtktextview.c (changed_handler): Fix bug where
13104         redraw wasn't being done properly when height of
13105         dirty region changed.
13106
13107         * demos/Makefile.am: Remove various references to
13108         -lgmodule
13109
13110 Fri Jul 21 15:28:13 2000  Owen Taylor  <otaylor@redhat.com>
13111
13112         * gtk/gtktextlayout.[ch], gtk/gtktextdisplay.c: Use new
13113         PangoAttrShape to reserve space for pixmaps, add 
13114         GSList *pixmaps to GtkTextLineDisplay, draw the pixmaps
13115         in the display functions.
13116         
13117         * gtk/testgtk.c (create_layout): Set some more exotic
13118         scrolled window options
13119
13120         * gtk/gtkscrolledwindow.[ch] (gtk_scrolled_window_set_shadow_type):
13121         Add function to set the shadow type of a window, to allow
13122         putting a shadow around widgets such as GtkLayout or GnomeCanvas
13123         which don't draw their own frame.
13124
13125 Fri Jul 21 16:34:42 BST 2000  Tony Gale <gale@gtk.org>
13126
13127         * docs/tutorial/package-db-tutorial.sh: New file for
13128           packaging DocBook format tutorial
13129
13130 Fri Jul 21 14:23:51 BST 2000  Tony Gale <gale@gtk.org>
13131
13132         * docs/tutorial/gtk-tut.sgml: Minor updates
13133
13134         * docs/tutorial/*.jpg *.eps: Screenshots for tutorial
13135
13136 2000-07-19  Tor Lillqvist  <tml@iki.fi>
13137
13138         * gtk/gtksignal.c: Fix C++ comment.
13139
13140         * gtk/gtkimmulticontext.c
13141         * gtk/gtktextbtree.c: Remove gccisms: Don't use __FUNCTION__,
13142         don't return value from void functions.
13143
13144         * gtk/gtk.def: Add gtk_rc_style_unref.
13145
13146 2000-07-19  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
13147
13148         * gdk-pixbuf/gdk-pixbuf.h, gtk/gtkhsv.h, gtk/gtktextbtree.h,
13149         gtk/gtktextbuffer.h, gtk/gtktextchild.h, gtk/gtktextdisplay.h,
13150         gtk/gtktextiter.h, gtk/gtktextiterprivate.h, gtk/gtktextlayout.h,
13151         gtk/gtktextmarkprivate.h, gtk/gtktextsegment.h, gtk/gtktexttag.h,
13152         gtk/gtktexttagtable.h, gtk/gtktexttypes.h, gtk/gtktextview.h,
13153         gtk/gtktypeutils.h: Include files outside of the extern "C"
13154         block. Makes some C++ compiler happy. Reported by Denis Vakatov
13155         <vakatov@peony.nlm.nih.gov>.
13156
13157 Wed Jul 19 14:07:57 BST 2000  Tony Gale <gale@gtk.org>
13158
13159         * docs/tutorial/gtk-tut.sgml: Yet more clean ups.
13160           Completes first pass. Hurrah!
13161
13162 Tue Jul 18 17:17:55 BST 2000  Tony Gale <gale@gtk.org>
13163
13164         * docs/tutorial/gtk-tut.sgml: More clean ups.
13165
13166 Mon Jul 17 18:52:38 2000  Owen Taylor  <otaylor@redhat.com>
13167
13168         * gtk/gtkentry.c (gtk_entry_draw_text): Restore code to
13169         paint the background of the text area which was accidentally
13170         removed at some point.
13171
13172         * gtk/gtkrc.[ch] gtk/gtkstyle.[ch] gtk/gtkthemes.[ch]: 
13173           
13174          - Move most of the functionality from the theme vtable
13175            into GtkRcStyleClass and GtkStyleClass. The moved
13176            vtable functions were changed a bit in the move to
13177            work better in their new home.
13178
13179          - Get rid of the engine and engine_data fields from
13180            GtkRcStyle and GtkStyle; instead the theme
13181            engine derives theme-specific subclasses of GtkRcStyle
13182            and GtkStyle
13183
13184          - Add extra dlsym() found entry point to themes,
13185            theme_create_rc_style().
13186
13187         * gtk/gtkstyle.c: Copy xthickness, ythickness fields
13188         in gtk_style_real_copy.
13189
13190         * gtk/themes.[ch]: add a function gtk_theme_engine_register_type()
13191         to register a type associated with an engine. (The engine
13192         won't be unloaded as there is an instance of the type.)
13193
13194
13195 Mon Jul 17 18:19:06 BST 2000  Tony Gale <gale@gtk.org>
13196
13197         * docs/tutorial/gtk-tut.sgml: Clean ups.
13198
13199 Mon Jul 17 13:59:29 BST 2000  Tony Gale <gale@gtk.org>
13200
13201         * docs/tutorial/gtk-tut.sgml: Initial DocBook version. Lots
13202           of cleaning up to do.
13203
13204 2000-07-15  Tor Lillqvist  <tml@iki.fi>
13205
13206         * gdk/testgdk.c: New file, quick hack to test backends for
13207         pixel-by-pixel correctness of the most simple graphic operations.
13208
13209 Fri Jul 14 20:30:25 2000  Owen Taylor  <otaylor@redhat.com>
13210
13211         * Really release 1.3.1
13212         
13213         * gtk-config-2.0.in gtk-2.0.m4: Fix up to correspond to new
13214         include structure.
13215
13216 Fri Jul 14 18:40:39 2000  Owen Taylor  <otaylor@redhat.com>
13217
13218         * Released 1.3.1
13219
13220 Fri Jul 14 16:21:26 2000  Owen Taylor  <otaylor@redhat.com>
13221
13222         * gtk/gtktextlayout.c: use FALSE for size_only most
13223         of the time when calling gtk_text_layout_get_line_display()
13224         to avoid causing double reshapes when a redraw follows
13225         immediately after.
13226
13227 Tue Jul 11 11:13:40 2000  Owen Taylor  <otaylor@redhat.com>
13228
13229         * gtk/gtkrange.c (gtk_range_default_[hv]slider_update): Invalidate
13230         appropriate region and gdk_window_process_updates() so trough
13231         updating doesn't lag behind the window being scrolled.
13232
13233         * gdk/gdkgc.c: Make parent_class pointer static.
13234          
13235 Sun Jul  9 21:31:23 2000  Owen Taylor  <otaylor@redhat.com>
13236
13237         * gdk/gdk-pixbuf.c gtk/gdk-pixbuf-loader.c gtk/gtktextview.c:
13238         include <string.h>.
13239          
13240         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Fix
13241         cut-and-paste error in computing memory offset for 4 channels.
13242
13243 Fri Jul 14 14:05:02 2000  Owen Taylor  <otaylor@redhat.com>
13244
13245         * gtk/gtkrc.c (gtk_rc_parse_pixmap_path_string): Remove
13246         gtk_rc_append_default_pixmap_path(), since it wasn't
13247         adding an interesting path and we don't have a meaningful
13248         default for this value.
13249
13250 Fri Jul 14 12:22:49 2000  Owen Taylor  <otaylor@redhat.com>
13251
13252         * configure.in Makefile.am gtk-config.m4 gtk.m4: Move
13253         gtk-config to gtk-config-2.0 move gtk_.m4 to
13254         gtk-2.0.m4
13255
13256         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
13257         gdk/Makefile.am demos/Makefile.am: Change 
13258         library names to libgtk-1.3.la, etc, so that we
13259         can distinguish gtk-1.2 and gtk-2.0 on the linkline.
13260
13261         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
13262         gdk/Makefile.am gdk/x11/Makfile.am
13263         Move include files into /usr/include/gtk-2.0, 
13264         /usr/lib/gtk-2.0/include/
13265          
13266         * autogen.sh acconfig.h configure.in gtk/gtkmain.c
13267         gtk/gtkintl.h: Change package for gettext from 
13268         gtk+ to gtk20. Put hack in autogen.sh to modify
13269         po/Makefile.in.in after gettextize to make this
13270         possible.
13271
13272         * gtk+.spec: Some updates, not tested.
13273
13274         * gdk-pixbuf/Makefile.am: Move loaders into
13275         $(libdir)/gtk-2.0/$(GTK_VERSION)/loaders.
13276
13277         * gtk/Makefile.am gtk/gtkrc.c: Move RC file locations
13278         $(sysconfdir)/gtk-2.0 ~/.gtkrc-2.0; theme subdir
13279         to THEMENAME/gtk-2.0/. Move engine directory  to
13280         $(libdir)/gtk-2.0/$(GTK_VERSION)/engines.
13281         
13282 2000-07-12  Tor Lillqvist  <tml@iki.fi>
13283
13284         Win32 changes, still doesn't build though.
13285
13286         * gdk/makefile.cygwin
13287         * gdk/win32/makefile.cygwin
13288         * gtk/makefile.cygwin: Updates.
13289
13290         * gdk/win32/gdkgc-win32.c (_gdk_win32_gc_new): Use the same
13291         default values for fg and bg pixel as X11 does (0 and 1), not
13292         black and white. Use PS_ENDCAP_FLAT and PS_JOIN_MITER by default.
13293         Use 0 for pen width by default (treated as 1 anyway later, but for
13294         apps that might check the value in the GdkGC).
13295         (gdk_win32_hdc_get, gdk_win32_hdc_release): New functions, public
13296         interface to gdk_gc_predraw and _postdraw.
13297
13298         * gdk/win32/gdkwin32.h
13299         * gdk/gdk.def: Add gdk_win32_hdc_{get,release}.
13300
13301         * gdk/win32/gdkcolor-win32.c (gdk_colormap_alloc1): Remove
13302         extraneous semicolon.
13303
13304         * gdk/win32/gdkdrawable-win32.c: Check also for pen_width == 0.
13305
13306         * gdk/win32/gdkimage-win32.c (gdk_image_new): Use the visual's depth,
13307         not the Win32 bitspixel value.
13308
13309         * gdk/win32/gdkcc-win32.c:
13310         * gdk/win32/gdkcolor-win32.c 
13311         * gdk/win32/gdkprivate-win32.h
13312         * gdk/win32/gdkwin32.h: Changes to make compilable, with new
13313         GDK object structure.
13314
13315 Tue Jul 11 20:59:35 2000  Tim Janik  <timj@gtk.org>
13316
13317         * docs/tutorial/gtk_tut_12.es.sgml (name): 
13318         * docs/tutorial/gtk_tut_it.sgml (name): 
13319         * docs/tutorial/gtk_tut_fr.sgml (name): 
13320         * docs/tutorial/gtk_tut.sgml (name): scratched notion of completely
13321         outdated email adress: s/timj@psynet.net/timj@gtk.org/.
13322
13323 Tue Jul 11 13:10:57 BST 2000  Tony Gale <gale@gtk.org>
13324
13325         * docs/faq/gtk-faq.sgml: Cleanup indenting and various
13326           small changes.
13327
13328 Tue Jul 11 08:04:58 2000  Tim Janik  <timj@gtk.org>
13329
13330         * gtk/gtktree.c (gtk_real_tree_select_child): eek, i've never seen
13331         a bug here, never been here and never fixed anything ;(
13332         (don't segfault if tree->root_tree is NULL, which happens prior
13333         to widget realization, but puke instead).
13334
13335 Tue Jul 11 06:38:42 2000  Tim Janik  <timj@gtk.org>
13336
13337         * gtk/gtkrc.h: add xthickness and ythickness to GtkRcStyle and
13338         add the necessary tokens.
13339
13340         * gtk/gtkrc.c (gtk_rc_style_init): properly initiality the rc style.
13341         (gtk_rc_style_to_style): copy thicknesses.
13342         (gtk_rc_init_style): apply thicknesses.
13343         (gtk_rc_parse_style): parse xthickness and ythickness.
13344
13345         * gdk/x11/gdkdnd-x11.c: silence compiler in switch() statements.
13346
13347         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): 
13348         (gdk_window_new): 
13349         (_gdk_windowing_window_init): 
13350         * gdk/x11/gdkpixmap-x11.c (gdk_pixmap_foreign_new): 
13351         (gdk_pixmap_create_from_data): 
13352         (gdk_bitmap_create_from_data): 
13353         (gdk_pixmap_new): 
13354         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
13355         (gdk_image_new): 
13356         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): 
13357         * gdk/x11/gdkdnd-x11.c (gdk_drag_context_new): 
13358         * gdk/x11/gdkcolor-x11.c (gdkx_colormap_get):
13359         (gdk_colormap_get_system): 
13360         (gdk_colormap_new): 
13361         * gdk/gdkwindow.c (gdk_window_init): 
13362         * gtk/gtkstyle.c (gtk_style_new):
13363         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done):
13364         * gdk/gdkpixmap.c (gdk_pixmap_init): 
13365         * gtk/gtkrc.c (gtk_rc_style_new):
13366         use g_object_new() instead of g_type_create_instance() which
13367         is a private function for fundamental type implementations.
13368
13369 Thu Jul  6 16:12:14 2000  Owen Taylor  <otaylor@redhat.com>
13370
13371         * configure.in: Add check for db2html
13372
13373 Thu Jul  6 14:53:05 2000  Owen Taylor  <otaylor@redhat.com>
13374
13375         * gtk/gtktypeutils.c (gtk_type_init): Add a temporary 
13376         hack to set glib_debug_objects based on gtk_debug_flags.
13377
13378 Thu Jul  6 14:12:13 2000  Owen Taylor  <otaylor@redhat.com>
13379
13380         * INSTALL.in: Update the Prerequisites section.
13381
13382         * Makefile.am demos/Makefile.am docs/Makefile.am
13383         docs/tutorial/Makefile.am gdk/x11/Makefile.am
13384         gdk/linux-fb/Makefile.am: Dist fixes
13385
13386 Thu Jul  6 12:26:03 2000  Owen Taylor  <otaylor@redhat.com>
13387
13388         * NEWS: 10,000 foot view of 1.3.1 changes.
13389
13390 Thu Jul  6 11:54:03 2000  Owen Taylor  <otaylor@redhat.com>
13391
13392         * gdk/gdk.h gdk/gdktypes.h gdk/linux-fb/gdkmain-fb.c
13393         gdk/nanox/gdkmain-nanox.c gdk/win32/gdkevents-win32.c
13394         gdk/win32/gdkinput-win32.c gdk/win32/gdkwin32.h
13395         gdk/x11/gdkmain-x11.c: 
13396
13397         Patch from George Lebl to add a GdkGrabStatus enumeration to use
13398         as a return value of gdk_*_grab(). Previously, we just
13399         returned the X11 values directly.
13400
13401 Thu Jul  6 11:27:44 2000  Owen Taylor  <otaylor@redhat.com>
13402
13403         * gdk/x11/Makefile.am: Patch from George Lebl to 
13404         install all the headers in the right place.
13405
13406 Tue Jul  4 13:13:01 BST 2000  Tony Gale <gale@gtk.org>
13407
13408         * docs/faq/gtk-faq.sgml: Add remaining sections. Completes
13409           initial conversion to DocBook.
13410
13411 2000-07-04  Tor Lillqvist  <tml@iki.fi>
13412
13413         * README.win32: Improve a bit.
13414
13415         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Handle also
13416         WM_SYSCHAR, and other changes to get handling of Alt+nnn or
13417         Alt+0nnn on the numpad (used to enter characters by numeric code
13418         from current DOS or ANSI codepage) working correctly, as in other
13419         Windows apps.
13420
13421         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Use
13422         same argument validity tests as in X11 version.
13423         (_gdk_cursor_destroy): Use DestroyCursor, not DestroyIcon.
13424
13425         * gdk/win32/gdkwin32.h: Add also WM_MOUSEWHEEL and CopyCursor
13426         definitions in case missing from headers.
13427
13428         * gdk/win32/gdkwindow-win32.c (gdk_win32_window_destroy): Also
13429         destroy the window-specific cursor.
13430         (RegisterGdkClass): Use the global gdk_ProgInstance instead of
13431         calling GetModuleHandle(NULL).
13432         (gdk_window_set_cursor): Reworked to always copy the passed cursor
13433         with CopyCursor before setting it as the window-specific
13434         cursor. It is OK for the caller to destroy the GdkCursor (and thus
13435         also its Windows cursor) after calling this function. Destroy any
13436         previous window-specific cursor.
13437
13438 Mon Jul  3 17:54:49 2000  Owen Taylor  <otaylor@redhat.com>
13439
13440         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): 
13441         font charset is iso8859-1, not iso-8859-1.
13442
13443 Mon Jul  3 17:08:14 2000  Owen Taylor  <otaylor@redhat.com>
13444
13445         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale):
13446         Use g_get_charset() instead of g_get_codeset().
13447
13448         * gtk/gtkframe.[ch] gtkframe.h gtk/gtktextmark.h: 
13449         Comment out some strdup'ing functions to keep timj
13450         happy until we finish fighting this out.
13451
13452 Mon Jul  3 14:24:16 2000  Owen Taylor  <otaylor@redhat.com>
13453
13454         * gtk/gtkwidget.c (gtk_widget_draw): Ignore calls with
13455         <= width or height.
13456
13457         * gtk/gtktable.c (gtk_table_attach): Fix missed merge
13458         from 1.2 for parent/child states.
13459
13460         * gdk/gdkgc.c (gdk_gc_set_rgb_fg/bg_color): Fix a couple
13461         of typos.
13462
13463         * gdk/gdkevents.[ch]: Remove press/xtilt/ytilt fields of
13464         event structures, replace with a generic axes field. Replace 
13465         deviceid/sourec with GdkDevice *device.
13466
13467         * gdk/gdkevents.[ch] (gdk_event_get_axis): Add function
13468         to extract particular axis use value from event. (Also
13469         can be used for normal X/Y.)
13470
13471         * gdk/gdkinput.h gdk/x11/gdkinput*: Major revision;
13472         allow for arbitrary number of axes, namespace everything
13473         as gdk_device_*. Replace guint32 deviceid with GdkDevice *
13474         everywhere.
13475
13476         * gdk/x11/{gdkmain-x11.c,gdkevent-x11.c,gdkinput*}: 
13477         Get rid of the gdk_input_vtable setup if favor of simply
13478         defining the functions in gdkinput-none/gxi/xfree.c in
13479         a similar fashion to the way that the port structure is 
13480         done.
13481
13482         * gtk/gtkdnd.c: Fix fields of synthesized button press event
13483         for new event structures. 
13484
13485         * gtk/gtkinputdialog.c gtk/testinput.c: Revise to match
13486         new device interfaces.
13487
13488 Sun Jul  2 18:19:50 2000  Owen Taylor  <otaylor@redhat.com>
13489
13490         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_layout): Add a 'text' argument to
13491         set the initial text.
13492
13493         * gtk/gtkaccellabel.c gtk/gtkcalendar.c gtk/gtkclist.c
13494         gtk/gtkentry.c gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c
13495         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvruler.c
13496         gtk/gtkvscale.c: Adapt to new argument of create_pango_layout().
13497
13498         * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
13499         pango_layout_set_font_description to simplify.
13500
13501 Sun Jul  2 17:43:41 2000  Owen Taylor  <otaylor@redhat.com>
13502
13503         * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
13504         pango_layout_set_font_description to simplify.
13505
13506 Sun Jul  2 17:06:40 2000  Owen Taylor  <otaylor@redhat.com>
13507
13508         * gtk/gtkcalendar.c gtk/gtkclist.c gtk/gtkctree.c gtk/gtkhscale.c
13509         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvscale.c gtk/gtkaccellabel.c: Use
13510         pango_layout_get_pixel_extents() to remove a large number of '/ PANGO_SCALE'.
13511
13512         * gtk/gtk[hv]ruler.c gtk/gtklabel.c: replace some / PANGO_SCALE with
13513         PANGO_PIXELS() macro.
13514
13515 Sun Jul  2 15:24:41 2000  Owen Taylor  <otaylor@redhat.com>
13516
13517         * gtk/gtkwidget.[ch] (gtk_widget_get_pango_context): Add new function
13518         that returns a PangoContext owned by the widget and updated to
13519         match future changes in the widget. Also, make 
13520         gtk_widget_create_pango_layout() use this context. If we ever
13521         add a ::changed signal to PangoContext, this will make things
13522         much more convenient. 
13523
13524         * gtk/gtkentry.c gtk/gtklabel.c: Call pango_layout_context_changed()
13525         in the appropriate places instead of destroying the layouts and
13526         creating new ones.
13527
13528         * gtk/gtkfontsel.[ch] gtk/gtkclist.c: Use gtk_widget_get_pango_context()
13529         in a few strategic places.
13530
13531 Sun Jul  2 14:37:58 2000  Owen Taylor  <otaylor@redhat.com>
13532
13533         * gtk/gtkoptionmenu.c (gtk_option_menu_size_request): Call 
13534         gtk_widget_size_request() on reparented child, if one. Otherwise,
13535         queue_resize() on the child never results in it getting size-requested
13536         at all.
13537
13538         * gtk/testgtk.c (build_option_menu): Remove silly radio-menu-items
13539         in option menus, so that (with luck) people won't copy it into
13540         their apps in the future.
13541
13542         * gtk/gtkoptionmenu.c: Connect ::size_request on the menu
13543         to gtk_option_menu_calc_size. This isn't perfect, but should fix
13544         a lot of problems with changing the size of the menu's menu
13545         items after adding it to the option menu.
13546
13547         * gtk/gtktexttag.c: Include gtkmain.h for gtk_get_default_language().
13548
13549         * gtk/gtkwidget.[ch]: Add a ::direction_changed that triggers when
13550         the text direction for a widget changes.
13551
13552         * gtk/gtk{entry.c,label.[ch],textview.[ch]} gtk/testgtk.c: Use
13553         ::direction_changed to get rid of various hacks.
13554
13555 Sun Jul  2 13:19:12 2000  Owen Taylor  <otaylor@redhat.com>
13556
13557         * docs/Changes-2.0.txt: Move Changes-1.4.txt to the appropriate
13558         name.
13559
13560 Sun Jul  2 13:06:26 2000  Owen Taylor  <otaylor@redhat.com>
13561
13562         * gdk/x11/gdkpixmap-x11.[ch] Changes-1.4.txt: Add a is_foreign
13563         flag to the structure. Do not call XFreePixmap on pixmaps created
13564         by gdk_pixmap_foreign_new().
13565
13566 Sun Jul  2 12:45:50 2000  Owen Taylor  <otaylor@redhat.com>
13567
13568         * gdk/gdkrgb.[ch]: Add gdk_rgb_find_color() to get a pixel
13569         value using GdkRGB functionality given GdkColormap and GdkColor.
13570         (name not final, waiting for inspiration.)
13571         
13572         * gdk/gdkgc.[ch] (gdk_gc_set_rgb_fg/bg_color): New functions to
13573         set the foreground/background of a GC using the GC's colormap
13574         and GdkRGB. (name not final, waiting for inspiration.)
13575
13576         * gdk/gdkcompat.h gdk/gdkrgb.c (gdk_rgb_get_colormap): Rename from 
13577         gdk_rgb_get_cmap(), put #define in gdkcompat.h.
13578
13579         * gtk/gtkwidget.[ch] gtkcompat.h: Make visuals for
13580         gtk_widget_get_visual(), gtk_widget_get_default_visual, etc,
13581         purely a function of the corresponding colormap. Make
13582         gtk_widget_set_visual(), etc, noop macros in gtkcompat.h.
13583
13584         * gdk/gdkpixmap.c gdk/x11/gdkpixmap-c11.c: Rewrite
13585         gdk_pixbuf_*create_from_xpm_* in terms of
13586         gdk_pixbuf_new_from_xpm_data(), move into platform independent
13587         code.
13588
13589         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Take
13590         advantage of the new draw_rgb_32_image_dithalign.
13591
13592         * gdk/gdkrgb.c (gdk_draw_rgb_32_image_dithalign): Added.
13593
13594         * gtk/gtkgc.c (gtk_gc_new): Set the appropriate colormap
13595         on each created GC.
13596
13597         * gdk/gdkgc.[ch]: Add gdk_gc_get/set_colormap.
13598
13599         * gdk/gdkgc.[ch]: Add a colormap field to the GdkGC structure
13600         which we initialize from the drawable when the GC is created,
13601         if the drawable has a colormap.
13602
13603         * gdk/x11/gdkgc-x11.c: include string.h for memset.
13604
13605         * gdk/x11/gdkinput-x11.c: include string.h for strlen, etc.
13606
13607         * gtk/gtklayout.[ch]: Remove unsed configure serial member.
13608
13609 Sat Jul  1 16:28:32 2000  Owen Taylor  <otaylor@redhat.com>
13610
13611         * gdk/x11/gdkevents-x11.c (gdk_event_translate): When
13612         actually returning expose events, make sure to set
13613         the count field properly.
13614
13615         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): Fix
13616         accidentally reintroced bug which always cleared
13617         the graphics_exposures value. 
13618
13619 Wed Jun 28 18:03:09 BST 2000  Tony Gale <gale@gtk.org>
13620
13621         * docs/faq/gtk-faq.sgml: Change DocBook layout slightly
13622
13623 Wed Jun 28 17:49:05 BST 2000  Tony Gale <gale@gtk.org>
13624
13625         * docs/faq/gtk-faq.sgml: Finish Section 6. Add Section 7.
13626
13627 Wed Jun 28 13:31:55 BST 2000  Tony Gale <gale@gtk.org>
13628
13629         * docs/faq/gtk-faq.sgml: Start of Section 6.
13630
13631 Mon Jun 26 19:37:04 2000  Owen Taylor  <otaylor@redhat.com>
13632
13633         * configure.in: Put 1.3.1 in warning message, not 1.3.0.
13634         
13635         (Fixes problem with drawing childless frames. Pointed out
13636         by and a first patch from Anders)
13637         
13638         * gtk/gtkframe.c (gtk_frame_compute_child_allocation): Always
13639         compute a child_allocation, even if we don't have a child.
13640
13641         * gtk/gtkaspectframe.c (gtk_aspect_frame_compute_child_allocation):
13642         Always chain to the parent's impl, even if we don't have a child.
13643
13644 Mon Jun 26 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
13645
13646         * gdk/gdkrgb.c: If possible, create only a single shm segment and
13647         use multiple parts of it instead of creating a bunch of separate
13648         segments, since the maximum number of segments per system is not
13649         large. (This might be worth backporting to GTK+-1.2.x if we make a
13650         new release )
13651
13652         * gdk/gdkrgb.c: Localize a bunch of variables into the GdkRgbInfo
13653         structure in preparation for per-colormap GdkRGB.
13654
13655         * gdk/x11/gdkimage-x11.c (gdk_image_new): Don't set gdk_use_xshm
13656         to False when we get EINVAL from shmget so that the caller of
13657         gdk_image_new can retry with a smaller segment size.
13658
13659 Mon Jun 26 13:01:16 BST 2000  Tony Gale <gale@gtk.org>
13660
13661         * docs/faq/gtk-faq.sgml: Add Sections 4 & 5.
13662
13663 Fri Jun 23 17:54:23 2000  Tim Janik  <timj@gtk.org>
13664
13665         * configure.in: make the current version number 1.3.1 (binary age 0,
13666         interface age 0).
13667         
13668         * gtkfeatures.h, gtkfeatures.h.in: dejavue, get rid of these *again*,
13669         gtkcompat.h is all we want.
13670
13671         * gtk/gtktypeutils.[hc]: define most of the primitive types in terms of
13672         GLib primitive types. fixed g_type_register_fundamental() argument
13673         ordering.
13674
13675         * gtk-config.in (lib_gtk): add -lgdk_pixbuf so third party code
13676         compiles.
13677
13678         * gdk-pixbuf-loader.[hc]: get rid of unistd.h include.
13679         object code cleanup, comment trigraph fixes, etc...
13680
13681 2000-06-23  Havoc Pennington  <hp@redhat.com>
13682
13683         * gtk/gtktextview.c (gtk_text_view_set_buffer): Use anonymous mark 
13684         instead of making up a bogus name for first_para_mark
13685
13686         * gtk/gtkstatusbar.h, gtk/gtkstatusbar.c: Allow 
13687         0 as a context ID
13688
13689 Thu Jun 22 17:43:51 BST 2000  Tony Gale <gale@gtk.org>
13690
13691         * docs/faq/gtk-faq.sgml: Change filename. Add Section 3.
13692
13693 2000-06-21  Havoc Pennington  <hp@pobox.com>
13694
13695         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Fix bug where
13696         we didn't check window->bg_pixmap != GDK_NO_BG.
13697
13698         * gtk/gdk-pixbuf-loader.c: Change to reflect GObject-ification of
13699         gdk-pixbuf
13700
13701 Thu Jun 22 14:02:19 BST 2000  Tony Gale <gale@gtk.org>
13702
13703         * docs/faq/gtk-faq.sgm: Move file to here.
13704           TODO: Update Makfile.am 
13705
13706 Thu Jun 22 13:41:09 BST 2000  Tony Gale <gale@gtk.org>
13707
13708         * docs/gtk-faq.sgm: Add Section 2
13709
13710 Thu Jun 22 08:43:45 BST 2000  Tony Gale <gale@gtk.org>
13711
13712         * docs/gtk-faq.sgm: New file. Start of DocBook
13713           version of the FAQ.
13714
13715 Wed Jun 21 23:04:17 2000  Owen Taylor  <otaylor@redhat.com>
13716
13717         * configure.in (GDK_PIXBUF_MAJOR): Define version
13718         numbers for GDK_PIXBUF_*, as they get substituted
13719         into a header file. Need to consider versioning
13720         for gdk-pixbuf more carefully later.
13721
13722 2000-06-21  Raja R Harinath  <harinath@cs.umn.edu>
13723
13724         Work with srcdir != builddir.   
13725         * demos/testanimation.c: Don't include "gdk-pixbuf.h".  Use
13726         <gtk/gdk-pixbuf-loader.h>, not "gtk-pixbuf/gdk-pixbuf-loader.h".
13727         * demos/testpixbuf.c: Likewise.
13728         * demos/testpixbuf-scale.c: Don't include "gdk-pixbuf.h".
13729         * demos/testpixbuf-drawable.c: Don't include "gdk-pixbuf.h".  Use
13730         <gdk/x11/gdkx.h>.
13731         * demos/pixbuf-demo.c: Use <gtk/gtk.h> not "gtk.h".  Don't include
13732         "gdk-pixbuf.h".
13733         * demos/Makefile.am (INCLUDES): Remove unneeded directories.
13734
13735 Wed Jun 21 19:45:02 2000  Owen Taylor  <otaylor@redhat.com>
13736
13737         * TODO.xml: Change 1.4 version numbers to 2.0.
13738
13739 Wed Jun 21 19:29:08 2000  Owen Taylor  <otaylor@redhat.com>
13740
13741         * gdk/gdkpixbuf-render.c gdk/gdkpixbuf-drawable.c: Indentation
13742         fixups to GTK+ standard.
13743
13744 Wed Jun 21 16:38:13 2000  Owen Taylor  <otaylor@redhat.com>
13745
13746         * gdk-pixbuf/* docs/reference/gdk-pixbuf/*: Welcome aboard,
13747         gdk-pixbuf.
13748
13749         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init):
13750         fixups for GObject.
13751
13752         * gdk/Makefile.am gdk/gdkpixbuf-render.[ch] gdk/gdkpixbuf.[ch]: Bits of 
13753         gdk-pixbuf with GDK dependencies moved into GDK.
13754         
13755         * gtk/Makefile.am gtk/gdk-pixbuf-loader.[ch]: Temporarily
13756         move gdk-pixbuf-loader here until GObject has signals.
13757
13758         * demos/: New directory of demos. Move demos from
13759         gdk-pixbuf here.
13760
13761         * demos/pixbuf-init.c: Small bit of code to check for
13762         loaders in ../gdk-pixbuf/.libs/gdk-pixbuf, and if found,
13763         set GDK_PIXBUF_MODULEDIR appropriately.
13764
13765         * gdk/gdkcompat.h: Remove GDK_DRAWABLE_PIXMAP compat
13766         define which no longer makes sense.
13767
13768 2000-06-21  Havoc Pennington  <hp@redhat.com>
13769
13770         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Use
13771         gtk_get_default_language
13772
13773         * gtk/gtkmain.h, gtk/gtkmain.c (gtk_get_default_language): 
13774         new function to get the default language
13775
13776         * gtk/gtktexttagprivate.h, gtk/gtktexttag.c, gtktextview.c: 
13777         s/gtk_text_view_style_values/gtk_text_style_values/
13778
13779         * gtk/gtktexttag.c, gtk/gtktexttag.h, gtk/gtktexttagprivate.h:
13780         Add a "language" field to tags.
13781
13782         (gtk_text_tag_set_arg): Fix bug in setting
13783         "bg_full_height_set" tag.
13784
13785 2000-06-21  Havoc Pennington  <hp@redhat.com>
13786
13787         * gtk/gtktextiter.h: Use gunichar instead of gint when appropriate
13788         in the interfaces
13789
13790         * gtk/gtktexttypes.c: Remove UTF functions, use glib 
13791         stuff instead when possible.
13792
13793         * gtk/gtktexttypes.h: Delete some unused constants
13794
13795         * gtktextbtree.c, gtktextiter.c, gtktextsegment.c, gtktextview.c,
13796         testtextbuffer.c: use glib instead of custom unicode routines
13797
13798 Wed Jun 21 12:50:58 2000  Owen Taylor  <otaylor@redhat.com>
13799
13800         * docs/es/: Removed mistakenly added generated sgml
13801
13802         * docs/{gdk.texi,gtk.texi,gdk.sgml} macros.texi texinfo.tex:
13803         Remove outdated info files.
13804
13805         * docs/gtk_tut* docs/package_tutorial.sh docs/tutorial:
13806         Moved tutorial files into subdir
13807
13808         * docs/gtkfaq.sgml docs/faq/gtkfaq.sgml: Move FAQ into
13809         subdir.
13810
13811         * docs/man/gtk_button.pod: Remove. (contents will be
13812         integrated into gtk-reference button page.)
13813
13814         * configure.in docs/Makefile.am docs/tutorial/Makefile.am
13815         docs/faq/Makefile.am: Adjust for new organization
13816
13817 2000-06-21 Christopher Blizzard  <blizzard@redhat.com>
13818
13819         * gdk/x11/Makefile.am (install-data-local): use $(mkinstalldirs)
13820         not $(MKINSTALLDIRS)
13821
13822 Wed Jun 21 12:24:28 2000  Owen Taylor  <otaylor@redhat.com>
13823
13824         * gtk/testgtk.c (create_text): Finish the job Elliot started
13825         of removing font setting test for text widget. (Since text widget
13826         and GdkFont are not deprecated, and cause portability problems.)
13827
13828 Wed Jun 21 11:41:43 2000  Owen Taylor  <otaylor@redhat.com>
13829
13830         * gtk/gtkentry.c gtk/gtkimcontextsimple.c gtk/gtklabel.c
13831         gtk/gtktexttypes.c gtk/testtext.c modules/linux-fb/basic.c:
13832         Remove use of libunicode in favor of new GLib functions.
13833
13834         * gtk/gtkcolorsel.c: Remove conditional includes for FB, win32,
13835         nano-x, framebuffer. The X11 include is just a hack until we get
13836         the necessary functions in gdkcolor.h, so there is no reason to
13837         add other includes of platforms.
13838
13839         * gtk/gtkwindow.c (gtk_window_compute_default_size): Revert 
13840         window bigger than the screen change.
13841
13842         * gtk/testgtk.c: Revert some random changes from Elliot
13843         that had no particular point and were causing testgtkrc
13844         not to function correctly.
13845         
13846         * gdk/gdkregion-generic.h: Revert change from Elliot. Just
13847         because GdkSegment and GdkRegionBox have the same fields,
13848         it doesn't mean that 'typedef GdkSegment GdkRegionBox'
13849         results in clearer code.
13850
13851         * gdk/x11/gdkinput-x11.c (gdk_input_common_select_events,
13852         gdk_input_translate_coordinates): Fix missed GdkObjectification
13853
13854 2000-06-18  Elliot Lee  <sopwith@redhat.com>
13855
13856         * gdk/Makefile.am, gdk/*/Makefile.am: Fix conditionality to work the "right" way.
13857         * gtk/gtk{plug,socket}.h: Missed commits from previous.
13858
13859 2000-06-20  Havoc Pennington  <hp@redhat.com>
13860
13861         * modules/linux-fb/Makefile.am: Make this compile
13862         without framebuffer enabled
13863
13864         * gdk/linux-fb/Makefile.am: Add conditional to not build
13865         framebuffer unless specified in configure
13866
13867         * gdk/gdkdraw.c (gdk_draw_drawable): Fix bug where I was getting
13868         the size of the target instead of source if -1 was passed for
13869         width/height
13870
13871         * gdk/x11/gdkgeometry-x11.c (gdk_window_compute_position): Fix 
13872         width/height confusion.
13873
13874 2000-06-19  Havoc Pennington  <hp@redhat.com>
13875
13876         * gdk/x11/gdkx.h (GDK_WINDOW_XWINDOW): change this to be
13877         GDK_DRAWABLE_XID. In the future, we probably want to make it
13878         faster with G_DISABLE_CHECKS turned on.
13879
13880 2000-06-14  Havoc Pennington  <hp@redhat.com>
13881
13882         * gdk/Makefile.am: add gdkpixmap.c
13883
13884         * gdk/gdk.c: s/gdk_window_init/_gdk_windowing_window_init/
13885         s/gdk_image_init/_gdk_windowing_image_init
13886
13887         * gdk/gdkcolor.c: make ref/unref compat wrappers for GObject
13888         ref/unref
13889
13890         * gdk/gdkcolor.h: make GdkColormap a GObject subclass
13891
13892         * gdk/gdkcompat.h: remove GdkWindowType compat, since
13893         GdkWindowType is now non-deprecated; 
13894         change gdk_window_get_type() compat to be
13895         gdk_window_get_window_type().
13896
13897         * gdk/gdkdnd.h: make GdkDragContext a GObject.
13898
13899         * gdk/gdkdraw.c, gdk/gdkdraw.h: Convert GdkDrawable to a pure
13900         virtual GObject. Make all functions call into the vtable.
13901         Move gdk_image_put() guts in here. Remove GdkDrawableType
13902         and gdk_drawable_get_type(), these are now GdkWindow-specific.
13903         draw_image, get_depth, get_size, set_colormap, get_colormap,
13904         get_visual added to the vtable.
13905         
13906         * gdk/gdkgc.h, gdk/gdkgc.c: Convert GdkGC to a pure virtual 
13907         GObject. Virtualize everything. 
13908         (gdk_gc_new_with_values): remove check for destroyed window,
13909         because now GdkWindow::create_gc will check this.
13910         (gdk_gc_set_values): New function to set GC values, this 
13911         was already implemented but wasn't in the header
13912
13913         * gdk/gdkimage.h, gdk/gdkimage.c: Convert GdkImage to a GObject.
13914
13915         * gdk/gdkinternals.h: Remove _gdk_window_alloc(), remove
13916         _gdk_window_draw_image(), remove _gdk_windowing_window_class,
13917         remove _gdk_window_class; add _gdk_window_impl_get_type() and
13918         _gdk_pixmap_impl_get_type(). Rename gdk_window_init to
13919         _gdk_windowing_window_init, rename gdk_image_init to
13920         _gdk_windowing_image_init.
13921         
13922         * gdk/gdkpango.c: Reflect GObject-ification of PangoContext.
13923         (gdk_draw_layout): Remove check for destroyed window, 
13924         because all the drawable methods already check it.
13925         
13926         * gdk/gdkpixmap.h, gdk/gdkpixmap.c: Convert GdkPixmap to GObject.
13927         Add gdkpixmap.c which contains implementation of GdkDrawable
13928         virtual table (by chaining to a platform-specific implementation
13929         object).
13930         
13931         * gdk/gdkprivate.h: Remove GDK_IS_WINDOW, GDK_IS_PIXMAP, 
13932         GDK_DRAWABLE_DESTROYED. Add GDK_WINDOW_DESTROYED. Replace
13933         GDK_DRAWABLE_TYPE with GDK_WINDOW_TYPE. Remove GdkDrawablePrivate,
13934         GdkWindowPrivate, GdkImageClass, GdkImagePrivate, GdkGCPrivate,
13935         GdkColormapPrivate. 
13936
13937         * gdk/gdktypes.h: #include <glib-object.h>
13938
13939         * gdk/gdkwindow.h, gdk/gdkwindow.c: Convert GdkWindow to GObject.
13940         Move most functionality to platform-specific implementation
13941         object. GdkWindow itself now handles the backing store, then
13942         chains to the platform-specific implementation.
13943         (gdk_window_get_window_type): return GdkWindowType of the window.
13944         (gdk_window_peek_children): New routine, returns the children of 
13945         a GdkWindow
13946         (gdk_window_get_children): Was in X11-specific code and did 
13947         XQueryTree. Changed to simply return a copy of window->children; 
13948         so it can go in cross-platform code.
13949         
13950         * gdk/x11/Makefile.am: fix broken MKINSTALLDIRS path
13951
13952         * gdk/x11/gdkcolor-x11.c: implement X-specific parts of 
13953         GdkColormap; just changed to use the new private data instead
13954         of casting to GdkColormapPrivate.
13955
13956         * gdk/x11/gdkcursor-x11.c: added a couple typechecks to 
13957         gdk_cursor_new().
13958
13959         * gdk/x11/gdkdnd-x11.c: Change the way we access private fields 
13960         (private data member in the GObject). 
13961         (xdnd_manager_source_filter): Function had broken 
13962         error handling, fix it (use gdk_error_trap_push).
13963
13964         * gdk/x11/gdkdrawable-x11.c: This file now implements
13965         a base class for GdkWindowImplX11/GdkPixmapImplX11. This 
13966         base class is purely for the convenience of the X port,
13967         and not part of the interface to cross-platform GDK.
13968
13969         * gdk/x11/gdkevents-x11.c: Reflect various renamings.
13970         
13971         * gdk/x11/gdkgc-x11.c: Implement a subclass of GdkGC that's
13972         specific to X, and returned by the create_gc virtual method
13973         of GdkDrawableImplX11. 
13974         (gdk_x11_gc_set_dashes): Change this to take an array of gint8
13975         rather than gchar, this was also changed in the GdkGC vtable.
13976         (gdk_x11_gc_values_to_xvalues): If GdkGCValues is NULL, or the
13977         mask is 0, return immediately, instead of checking every flag.
13978         This is faster, and keeps us from segfaulting if values is NULL
13979         and the mask contains some nonzero flags.
13980
13981         * gdk/x11/gdkgeometry-x11.c: deal with all the rearranging of
13982         GdkWindow.
13983
13984         * gdk/x11/gdkglobals-x11.c: change type of grab window, since 
13985         GdkWindowPrivate is gone.
13986
13987         * gdk/x11/gdkim-x11.c: rename things that got renamed.
13988
13989         * gdk/x11/gdkimage-x11.c: implement in terms of GObject, and 
13990         remove the image_put stuff that got transferred to GdkDrawable.
13991         
13992         * gdk/x11/gdkinput.c: renamings
13993
13994         * gdk/x11/gdkmain-x11.c: #include <pango/pangox.h>
13995
13996         * gdk/x11/gdkpixmap-x11.c: GObject conversion
13997
13998         * gdk/x11/gdkprivate-x11.h: indentation fixes
13999
14000         * gdk/x11/gdkproperty-x11.c: renamings
14001
14002         * gdk/x11/gdkselection-x11.c: renamings
14003
14004         * gdk/x11/gdkwindow-x11.c: Restructuring and renaming; this now 
14005         implements the platform-specific "impl" object.
14006         Moved gdk_window_get_children to gdk/gdkwindow.c
14007
14008         * gdk/x11/gdkx.h: Remove all the private structs and private datas
14009         that no longer exist. Add declaration of GdkGCX11 object here.
14010         Fix all the macros to still work. 
14011
14012         * gtk/gtk-boxed.defs: Remove GtkStyle, GdkColormap, GdkWindow,
14013         GdkDragContext from the boxed types since they are now GObjects.
14014
14015         * gtk/gtkstyle.h, gtk/gtkstyle.c: Converted GtkStyle to a GObject,
14016         moved xthickness/ythickness into the instance. GtkStyleClass
14017         functions are now in the standard vtable for GtkStyle, so you have
14018         to create a GObject subclass to write a theme engine.
14019         (gtk_style_copy): fixed a leaked PangoFontDescription
14020         (gtk_style_init): renamed gtk_style_realize, so gtk_style_init
14021         can be the standard GObject function.
14022         
14023         * Throughout GTK:
14024         s/style->klass->[xy]thickness/style->[xy]thickness
14025         s/pango_layout_unref/g_object_unref/
14026
14027         * gtk/gtkrc.h, gtk/gtkrc.c: Converted GtkRcStyle to a GObject.
14028         
14029         * gtk/gtksocket.c: Use gdk_window_get_user_data() instead of 
14030         accessing GDK internals.
14031
14032         * gtk/gtkwidget.c: Use gdk_window_peek_children() instead of 
14033         accessing GDK internals.
14034
14035 2000-06-18  Elliot Lee  <sopwith@redhat.com>
14036
14037         * gtk/gtkwindow.c: Don't allow creation of a window bigger than the screen.
14038
14039         * gtk/gtkrange.c: Fix the mega-jumpy-with-lagged-events scrollbar
14040         problem by calculating event position relative to the trough
14041         rather than the slider.
14042         * gtk/gtkdnd.c, gtk/gtkcolorsel.c: Include FB headers if appropriate.
14043
14044         * gdk/gdkgc.h: Add GDK_NOR.
14045
14046         * configure.in, Makefile.am: Add modules top level dir
14047         * configure.in: Only use pangox library if building x11 target.
14048         * gdk/gdkdnd.h: Add GDK_DRAG_PROTO_LOCAL enum for future intra-app use.
14049
14050 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
14051
14052         * gtk/gtkcolorsel.c: Change private class member to be named
14053         private_data throughout the file.
14054
14055         * gtk/gtkcolorsel.h (struct _GtkColorSelection): Change private to
14056         private_data to avoid clashing with keyword.
14057
14058 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
14059
14060         * gdk/gdkdnd.h: Add comment to remove warning.
14061
14062 Sun Jun 18 15:35:35 2000  Pablo Saratxaga <pablo@mandrakesoft.com>
14063
14064         * gtk/gtkrc.cp1251,gtk/Makefile.am: the cp1251 is also used by
14065         Byelorussian language; changed the Makefile and file names 
14066         to reflect that.
14067
14068 Mon Jun 12 16:58:40 2000  Owen Taylor  <otaylor@redhat.com>
14069
14070         * gtk/gtkwindow.c (gtk_window_unmap): Call gdk_window_withdraw
14071         rather than gdk_window_hide; this makes things work
14072         correctly if the window is programmatically hidden while
14073         iconified.
14074
14075 Sun Jun 11 12:46:19 2000  Owen Taylor  <otaylor@redhat.com>
14076
14077         * gtk/gtkdnd.c (gtk_drag_set_default_icon): Fix
14078         cut and paste typo where wrong pixmap was being
14079         unref'ed. (Pointed out by a friend of KUSANO Takayuki.)
14080
14081 Sun Jun 11 10:22:36 2000  Owen Taylor  <otaylor@redhat.com>
14082
14083         * gtk/gtkselection.c (gtk_selection_bytes_per_item):
14084         Add helper function to compute format / bytes 
14085         relationship. Use in a couple places to fix up
14086         errors which assume 8 * format.
14087
14088         * gtk/gtkselection.c (gtk_selection_request): Use 32
14089         rather than 8 * sizeof (GdkAtom), to work correctly
14090         on Alpha.
14091
14092 Thu Jun  8 21:54:51 2000 Christopher Blizzard  <blizzard@redhat.com>
14093
14094         * gtk/Makefile.am (DEPS): deps include libgtk-x11.la, not
14095         libgtk.la
14096         (LDADDS): include libgtk-x11.la and libgdk-x11.la, not the non-x11
14097         versions
14098
14099         * gtk/gtklabel.c (gtk_label_get_text): Make sure that the error
14100         checking macros return NULL since the function has a return value.
14101
14102 Wed Jun  7 15:44:42 2000  Owen Taylor  <otaylor@redhat.com>
14103
14104         * gtk/Makefile.am (LDFLAGS): Add missing backslash that was keeping
14105         GTK+ from building at all.
14106
14107         * gdk/Makefile.am (gdk_c_sources): Fix up some indentation issues.
14108
14109 Mon Jun  5 19:32:53 CEST 2000 Paolo Molaro <lupus@linuxcare.com>
14110
14111         * configure.in, gtk-config.in, gdk/Makefile.am, gdk/*/Makefile.am,
14112         gtk/Makefile.am: make it possible to configure gtk for different
14113         targets on the same platform. The library name is now 
14114         libgtk-$target-$version.so. gtk-config accepts a --target x11|nanox|linux-fb
14115         flag. Only the x11 target compiles right now.
14116         * gdk/gdkregion-generic.h, gdk/gdkregion-generic.c, gdk/gdkpoly-generic.h,
14117         gdk/gdkpolyreg-generic.c: move generic region code in the main GDK dir.
14118         * gdk/nanox/gdk*generic*: delete generic region code.
14119         * gdk/linux-fb/gdk*generic*: delete generic region code.
14120         * README.nanox: update information.
14121         
14122 Tue Jun  6 10:53:59 2000  Owen Taylor  <otaylor@redhat.com>
14123
14124         * gtk/gtktoolbar.c (gtk_toolbar_prepend_widget): Fix to
14125         prepend not append. (Pointed out by Brett Hall.)
14126
14127 Tue Jun  6 01:59:57 2000  Owen Taylor  <otaylor@redhat.com>
14128
14129         * gtk/gtkentry.c (gtk_entry_finalize): Unref the entry's layout.
14130
14131 Mon Jun  5 16:00:09 2000  Owen Taylor  <otaylor@redhat.com>
14132
14133         * gdk/gdk.c (gdk_init_check): Add call to g_type_init() - we'll
14134         need this later, and this makes sure that the atexit for
14135         glib gets called after that for GDK, so atexits are
14136         properly ordered for object leak checking.
14137
14138         * gdk/gdk.c (gdk_exit_func): Call gdk_windowing_exit().
14139
14140         * gdk/x11/gdkmain-x11.c (gdk_windowing_exit): Call 
14141         pango_x_shutdown_display()
14142
14143         * gtk/simple.c (main): Close window on destroy.
14144
14145 Mon Jun  5 11:50:02 2000  Owen Taylor  <otaylor@redhat.com>
14146
14147         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): We need
14148         to treat initial creation different from setting with 
14149         regards to the graphics-exposures parameter, so add a parameter
14150         indicating whether this is initial or not.
14151
14152 Mon Jun  5 13:29:31 2000  Owen Taylor  <otaylor@redhat.com>
14153
14154         * gdk/x11/gdkevents-x11.c: Hack gdk_event_get_graphics_expose()
14155         to sort of work by adding an extra return_exposes arg
14156         to gdk_event_translate() - it might be better to simply
14157         deprecate the function altogether and force people to rewrite
14158         without it. gdk_window_scroll() handles most of it, and where
14159         gdk_window_scroll() doesn't work, simply redrawing more does.
14160
14161         * gtk/gtkwidget.c (gtk_widget_set_default_direction): Fix up
14162         assertion.
14163
14164         * gtk-config.in: Include PANGO_CFLAGS/LIBS.
14165
14166         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Remove a 
14167         bunch of pretty much useless /* Print debugging info */ comments 
14168         which had drifted away from the code they were commenting.
14169
14170 2000-06-02  Havoc Pennington  <hp@pobox.com>
14171
14172         * gtk/testtextbuffer.c: Test program to make sure GtkTextBuffer
14173         is in working order.
14174         
14175         * gtk/testtext.c: Change to reflect anonymous mark API
14176
14177         * gtk/gtktextview.c: Convert from mark names to GtkTextMark*.
14178
14179         * gtk/gtktexttag.h (struct _GtkTextTag): remove the affects_size
14180         field, which was unused.
14181
14182         * gtk/gtktextmarkprivate.h (GTK_IS_TEXT_MARK): add this macro,
14183         saves some typing.
14184
14185         * gtk/gtktextbuffer.c: Switch from mark names to GtkTextMark*   
14186
14187         * gtk/gtktextbtree.c (gtk_text_btree_new): set the not_deleteable
14188         flag on the insertion point and selection bound
14189
14190         Throughout, use GtkTextMark instead of GtkTextLineSegment, and 
14191         make mark-manipulation functions take a GtkTextMark* instead of a
14192         mark name.
14193         
14194         * gtk/gtktextmarkprivate.h: Add a "not_deleteable" flag to 
14195         GtkTextMarkBody; will be used to detect attempts to delete
14196         the permanent marks (insert and selection bound)
14197
14198         * gtk/Makefile.am (noinst_PROGRAMS): add testtextbuffer 
14199
14200 Fri Jun  2 12:56:01 2000  Owen Taylor  <otaylor@redhat.com>
14201
14202         * gtk/gtkwidget.c (gtk_widget_init): Initialize DOUBLE_BUFFERED
14203         flag to on.
14204
14205         * gtk/gtkwidget.c (gtk_widget_draw) gtk/gtkmain.c (gtk_main_do_event): 
14206         Honor DOUBLE_BUFFRED_FLAG
14207
14208         * gtk/gtkwidget.c (gtk_widget_set_double_buffered): Add a
14209         function to set the DOUBLE_BUFFERED flag.
14210
14211         * gtk/gtkwidget.h: Add GTK_DOUBLE_BUFFERED flag to indicate whether
14212         or not exposes done on the widget should be double-buffered.
14213
14214         * gtk/gtkenums.h (GtkTextDirection): Reverse order of enumerations
14215         to be what would be expected. (Fixes problem with a
14216         g_return_if_fail() validating a TextDirection enumeration)
14217
14218 Thu Jun  1 23:05:13 2000  Owen Taylor  <otaylor@redhat.com>
14219
14220         * gtk/gtkwidget.c: Remove all references to 
14221         offscreen flag which was no longer used.
14222
14223         * gtk/gtkprivate.h (enum): Remove unused flags and compress.
14224
14225         * gtk/gtkframe.c (gtk_frame_set_label_widget): Check
14226         for non-null label_widget->parent.
14227
14228         * gtk/gtkentry.c: Get rid of code to deal with PangoAttribute 
14229         which no longer was used.
14230
14231         * gdk/gdkpango.c (gdk_pango_context_get_info): make static.
14232
14233         * gdk/gdkpango.c (gdk_draw_layout[_line]): Add checks
14234         for null arguments.
14235
14236         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): add
14237         check for destroyed windows.
14238
14239 Thu Jun  1 13:48:45 2000  Owen Taylor  <otaylor@redhat.com>
14240
14241         * gtk/gtkimmulticontext.c: Add a finalize method and unref
14242         the slave context there.
14243
14244         * gtk/gtkinvisible.[ch]: Make reference counting behavior
14245         identical to GtkWindow.
14246
14247 Thu Jun  1 01:54:11 2000  Owen Taylor  <otaylor@redhat.com>
14248
14249         * Makefile.am gdk/gdkpango.c: Copy the layout render function from
14250         pangox to here, so we can write them independent of rendering
14251         system, using GDK primitives.
14252
14253         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c
14254         gdk/x11/gdkdrawable-x11.c: Remove draw_layout() from the vtable,
14255         since we have a rendering-system independent implementation in
14256         terms of draw_glyphs().
14257         
14258         * gdk/gdkpango.c gdkdrawable.h (gdk_draw_layout_line): New
14259         function to render a single line.
14260
14261         * gdk/x11/gdkpango.c: Move the guts of this file mostly
14262         into ../gdkpango.c, which simplifies things, since we
14263         don't have to deal with raw X gc's.
14264
14265 Fri May 19 04:28:16 2000  Owen Taylor  <otaylor@redhat.com>
14266
14267         * gtk/gtktextlayout.[ch]: Add get_log_attrs() function to
14268         get the logical attributes for a given GtkTextLine.
14269
14270 Tue May 30 16:05:39 2000  Owen Taylor  <otaylor@redhat.com>
14271
14272         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Track
14273         g_locale_get_codeset() to g_get_codeset() change.
14274
14275 Tue May 30 15:03:19 2000  Owen Taylor  <otaylor@redhat.com>
14276
14277         * gtk/testcalendar.c (calendar_font_selection_ok): Use font
14278         descriptions.
14279
14280         * gtk/gtkentry.c (gtk_entry_draw_text): Center text within
14281         the entry.
14282
14283         * gtk/gtkfontsel.c (gtk_font_selection_dialog_init): Start of
14284         redoing (vastly simplifying) for Pango. Still needs quite
14285         a bit of work. (Size selection is currently poor. List of 
14286         predefined sizes is not a good idea, since all of these
14287         sizes won't necessarily be distinct.)
14288
14289 Tue May 30 13:50:19 2000  Owen Taylor  <otaylor@redhat.com>
14290
14291         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Handle
14292         CODESET results for LANG=C.
14293
14294 Mon May 29 15:49:10 2000  Owen Taylor  <otaylor@redhat.com>
14295
14296         * gtk/gtkrc.[ch]: Add a 'font_name' declaration to RC
14297         which takes a stringized pango font description;
14298         ignore the older 'font' and 'fontset' declarations.
14299
14300         * gtk/gtkstyle.c gtk/gtkrc.c: Fill in the style->font
14301         field with a GdkFont derived via gdk_font_from_description(),
14302         for compatibility. (Should we just remove it entirely?
14303         Probably too much compatibility breakage, but people
14304         should be migrating to the new Pango stuff as quickly
14305         as possible.)
14306
14307 Mon May 29 15:47:41 2000  Owen Taylor  <otaylor@redhat.com>
14308
14309         * gtk/gtkentry.c gtk/gtkclist.c: s/pango_font_unref/g_object_unref/.
14310
14311 Mon May 29 15:44:46 2000  Owen Taylor  <otaylor@redhat.com>
14312
14313         * gtk/gtkcalender.c: Roughly pango-ized. Really needs 
14314         redoing; there are some bugs in size allocation right
14315         now, the semi-existant distinction between header / day
14316         fonts was removed, but, with Pango, could actually
14317         be made functional in a nice way.
14318         
14319         * gtk/testcalender: Move calender from examples into this
14320         directory as a test program. (We really need to restrcture
14321         testgtk into a whole directory full of tests for every
14322         widget or functionality group, separated into multiple .c
14323         files.)
14324
14325 Mon May 29 15:19:56 2000  Owen Taylor  <otaylor@redhat.com>
14326
14327         * gtk/testgtk.c (file_exists): Fix stupid typo that
14328         was keeping RC file from being loaded.
14329
14330         * gtk/testgtkrc gtk/testgtkrc2: Test new pango-ized
14331         RC file font code.
14332
14333 Mon May 29 14:31:27 2000  Owen Taylor  <otaylor@redhat.com>
14334
14335         * gdk/gdkfont.h gdk/x11/gdkfont-x11.c (gdk_font_from_description):
14336         Add function to load a GdkFont from a PangoFontDescription.
14337
14338 2000-05-29  Tor Lillqvist  <tml@iki.fi>
14339
14340         * gdk/win32/gdkevents-win32.c (gdk_WindowProc): The local "event"
14341         variable should be of type GdkEventPrivate.
14342
14343 Fri May 26 17:16:40 2000  Owen Taylor  <otaylor@redhat.com>
14344
14345         * gtk/frame.[ch] gtkaspectframe.c: Make frame widgets able
14346         to have any widget for the label, use a GtkLabel widget
14347         to display the text. (Based partially on a patch from
14348         Anders Carlson.)
14349
14350         (Quite a bit of code reorganization - strip 90% of the
14351         guts out of gtkaspectframe and add a single virtual
14352         func to GtkFrameClass - compute_child_allocation.)
14353
14354 Fri May 26 12:00:02 2000  Owen Taylor  <otaylor@redhat.com>
14355
14356         * gtk/gtkctree.c gtk/gtkclist.[ch]: Pangoized.
14357         (Removed clist->row_center_offset field because caching
14358         it wasn't saving time or code, added private function
14359         _gtk_clist_create_cell_layout()).
14360
14361 Wed May 24 15:59:37 2000  Owen Taylor  <otaylor@redhat.com>
14362
14363         * gtk/gtkaccellabel.c: Pangoized.
14364
14365         * gtk/[hv]ruler.c: Pangoized
14366
14367 Mon May 22 19:23:59 2000  Owen Taylor  <otaylor@redhat.com>
14368
14369         * gtk/gtkfilesel.c (gtk_file_selection_init):
14370         Use gtk_clist_set_column_auto_resize() to remove need
14371         need for manual column width computations.
14372
14373 Mon May 22 18:50:26 2000  Owen Taylor  <otaylor@redhat.com>
14374
14375         * gtk/gtktooltips.[ch]: Replace custom drawing with a GtkLabel, 
14376         ensuring Pango correctness, and considerably simplifying the
14377         code.
14378         
14379         * gtk/gtklabel.c gtk[hv]scale.c: 1000 => PANGO_SCALE.
14380
14381         * gtk/gtklabel.c (gtk_label_size_request): Fixed incorrect
14382         getting of numbers of lines.
14383
14384         * gtk/gtklabel.c (gtk_label_size_request): Set the requisition
14385         to the actual requested width of the lable, not to the wrap
14386         width we set.
14387
14388         * gtk/gtktextchild.h: Remove extraneous include of gtk/gtk.h.
14389
14390         * gtk/gtktextbtree.c gtk/gtktextbuffer.c gtk/gtktextlayout.c
14391           gtk/gtktextview.c gtk/gtktextview.[ch]: Fix up includes.
14392
14393         * gtk/gtktextview.c: Fix structure inheritance.
14394
14395         * gtk/gtkprogressbar.c: Pangoize.
14396
14397 Mon May 22 15:47:30 2000  Owen Taylor  <otaylor@redhat.com>
14398
14399         * gtk/gtktextview.c (gtk_text_view_get_first_para_iter): Encapsulate
14400         in a function.
14401
14402         * gtk/gtktextlayout.c (find_display_line_above): Fixed
14403         bug with computing line tops.
14404
14405         * gtk/gtktextview.c (changed_handler): Fix < , <= confusion.
14406
14407 Thu May 18 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
14408
14409         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Fix up the x_offset
14410         and y_offset coordinates to do what we need now. (The offset between
14411         buffer and layout coordinates has been reintroduced, but is a 
14412         bit different than before.)
14413
14414         * gtk/gtktextview.[ch]: No longer inherit from GtkLayout; instead
14415         handle the adjustments ourselves, and scroll as necessary using
14416         the new gdk_window_scroll().
14417         
14418         The advantage of this is that when we are incrementally revalidating,
14419         we are essentially rearranging things around the visible portion
14420         of the screen. With the old setup, the visible portion of the
14421         screen was moved around in the layout, so scrolling and redrawing
14422         to track that caused jumping of the display. Since we now
14423         control the scrolling ourselves, we can suppress this and
14424         only redraw when things actually change.
14425
14426 Thu May 18 18:47:25 2000  Owen Taylor  <otaylor@redhat.com>
14427
14428         * gtk/gtktextbtree.c (redisplay_mark): We need to invalidate
14429         the region not just redisplay it after-all, since we store the
14430         cursors in the LineDisplay. (Ugly interactions here between
14431         GtkLayout and GtkTextBTree here.)
14432         
14433         * gtk/gtktextbtree.c (redisplay_region): Fixed reversed comparison.
14434
14435 Thu May 18 18:43:21 2000  Owen Taylor  <otaylor@redhat.com>
14436
14437         * gdk/gdkwindow.h gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): 
14438         Added function to scroll contents of a window while keeping the
14439         window constant. Works by XCopyArea or guffaw-scrolling depending
14440         on the details of how the window is set up. (guffaw-scrolling
14441         still needs to be filled in.)
14442
14443 Wed May 17 22:36:53 2000  Owen Taylor  <otaylor@redhat.com>
14444
14445         * gtk/gtktextiter.c gtk/gtkmain.c: Add a debug key for the text widget,
14446         move the debugging that was tied to a global variable
14447         to that.
14448
14449         * gtk/gtkmarshal.list: Add NONE:INT,INT,INT
14450
14451         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.c: Keep a separate
14452         validated flag, in line data instead of setting height/width to
14453         -1. This allows us to perform operations with partially invalid
14454         buffer (using the old size for invalid lines) and thus to do
14455         incremental vaidation. Keep height/width aggregates up to date
14456         when deleting text and rebalancing the tree.
14457
14458         * gtk/gtktextbtree.[ch]: Add functions validate a line
14459         (gtk_text_btree_validate_line), and to validate up
14460         to a number of pixels (gtk_text_btree_validate).
14461
14462         * gtk/gtktextlayout.[ch]: Add an ::invalidated signal
14463         that indicates that something is changed and a revalidation
14464         pass is needed. Change ::need_repaint to ::changed, and
14465         make it take old and new yranges instead of a rectangle.
14466
14467         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.[ch]: Move
14468         the line_data_destroy() function from 
14469         gtk_text_btree_add_view() to a virtual function in 
14470         GtkTextLayout
14471
14472         * gtk/gtktextbtree.[ch]: Remove gtk_text_btree_get_damage_range(),
14473         since we are handling partial repaints in a different fashion
14474         now.
14475
14476         * gtk/gtktextbtree.[ch]: Only repaint the changed portion
14477         of the selection instead of queueing a repaint on the
14478         entire widget.
14479
14480         * gtk/gtktextbuffer.[ch] gtk/gtktextbtree.[ch]: Move
14481         get_selection_bounds() down to btree, make the function
14482         in buffer a wrapper around the btree function.
14483
14484         * gtk/gtktextlayout.[ch]: Add functions to check if the
14485         layout is valid and to recompute either a range of pixels
14486         aroudn a line or a certain total number of pixels.
14487
14488         * gtk/gtktextlayout.[ch]: Cache a single line display;
14489         now that we only redraw the needed portions, the hit rate
14490         for this cache is quite high.
14491         
14492         * gtk/gtktextview.[ch]: Keep track of the first paragraph
14493         on the screen so that when re-laying-out the buffer, we can
14494         keep the same place. This requires connecting to ::value_changed
14495         on the adjustments
14496
14497         * gtk/gtktextview.[ch]: Add idle functions to revalidate
14498         the buffer after we receive an ::invalidated signal.
14499         
14500 Wed May 17 22:10:47 2000  Owen Taylor  <otaylor@redhat.com>
14501
14502         * gtk/gtklayout.c (gtk_layout_size_allocate): Set upper
14503         to max of allocation and layout size, not just to the
14504         layout size.
14505
14506         * gtk/gtk[hv]scrollbar.c (gtk_[hv]scrollbar_calc_slider_size): 
14507         Invalidate window so it gets redrawn properly.
14508
14509         * gdk/gdkwindow.c (gdk_window_invalidate_rect): Allow rect == NULL
14510         to mean the entire window.
14511
14512         * gdk/gdkevents.h: Move definition for GDK_PRIORITY_REDRAW
14513         into public header.
14514
14515 Mon May 15 14:51:31 2000  Owen Taylor  <otaylor@redhat.com>
14516
14517         * gtk/gtktextmark.c (gtk_text_mark_get_name): Add function
14518         to get the name of a mark.
14519
14520         * gtk/gtktextlayout.c (gtk_text_layout_get_line_at_y): Add a function
14521         to find the paragraph from a y position.
14522
14523 Thu May 11 12:57:20 2000  Owen Taylor  <otaylor@redhat.com>
14524
14525         * gtk/gtktextbtree.c (gtk_text_btree_node_invalidate_upward): Valid
14526         nodes have width/height >= 0, not > 0.
14527
14528 Tue May  9 21:29:06 2000  Owen Taylor  <otaylor@redhat.com>
14529
14530         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c (gtk_text_layout_get_line_display):
14531         Add a size_only flag, so when we only need the size, we don't create
14532         useless appearance attributes.
14533
14534         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Remove
14535         duplicate setting of font description.
14536
14537         * gtk/gtkscale.c: Use PANGO_SCALE instead of 1000 
14538
14539 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
14540
14541         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
14542         EXTRA_DIST. It does not work well when the file that
14543         everything depends on is not in the tarball.
14544
14545 Wed Apr 26 00:56:14 2000  Owen Taylor  <otaylor@redhat.com>
14546
14547         * gtk/testgtk.c: Some hacks and fixes so that it basically
14548         works when not sitting in the GTK+ build tree.
14549
14550 2000-05-03  Havoc Pennington  <hp@redhat.com>
14551
14552         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
14553         Properly determine the ordering of the tag root and the current
14554         line within the tree. Previous algorithm only worked if the tag
14555         root's immediate parent was the common root of both the current
14556         line and the tag root.
14557
14558 Wed Apr 26 00:43:00 2000  Owen Taylor  <otaylor@redhat.com>
14559
14560         * gtk/gtktextlayout.c (set_para_values): Fix some bugs in
14561         alignment.
14562
14563         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Track
14564         the widget text directional dynamically.
14565
14566         * gtk/gtktextview.[ch]: Added functions to get and set default
14567         wrap mode.
14568
14569 Tue Apr 25 23:47:38 2000  Owen Taylor  <otaylor@redhat.com>
14570
14571         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Fix bug
14572         in cursor location computation.
14573
14574 Tue Apr 25 23:22:59 2000  Owen Taylor  <otaylor@redhat.com>
14575
14576         * gtk/gtklayout.c (gtk_layout_set_size): Clamp hadjustment/
14577         vadjusment values properly when layout gets smaller.
14578
14579         * gtk/gtktextview.c (need_repaint_handler): Areas being
14580         passed in are far completely inaccurate, and sometimes
14581         too small, so, for now, just queue a redraw on the
14582         whole visible region.
14583
14584 2000-04-25  Havoc Pennington  <hp@redhat.com>
14585
14586         * gtk/gtktextbtree.c (summary_destroy): new function to 
14587         destroy tag summary nodes
14588         (gtk_text_line_next_could_contain_tag): this function was 
14589         totally broken if the line passed in wasn't below the tag
14590         root. Fix it.
14591         (gtk_text_btree_first_could_contain_tag): In the tag == NULL 
14592         "wildcard" case, we have to do a linear scan. Blah.
14593         (gtk_text_btree_last_could_contain_tag): In tag == NULL case,
14594         we have to do the linear scan
14595         (tag_removed_cb): When a tag is removed from the tag table, 
14596         remove the GtkTextTagInfo node from the btree.
14597         (gtk_text_btree_spew): Implement the spew function, for 
14598         our debugging pleasure.
14599
14600 Tue Apr 25 19:40:18 2000  Owen Taylor  <otaylor@redhat.com>
14601
14602         * gtk/gtktextlayout.c (gtk_text_layout_set_buffer): Fix
14603         a problem with referring to the wrong buffer.
14604
14605         * gtk/gtkentry.c: Fix focus-in/focus-out confusion.
14606
14607         * gtk/gtkrc.c gtk/gtkstyle.c: Moving setting default
14608         font description to gtk_style_new() - otherwise things
14609         don't work without a .gtkrc file.
14610
14611         * gtk/gtktextbuffer.c (gtk_text_buffer_new): Sink the
14612         tags table if we create it ourself, too.
14613
14614         * gdk/gdktypes.h (enum): Move GDK_RELEASE_MASK, since
14615         it was conflicting with XKB modifiers.
14616
14617         * gtk/gtktextview.[ch]: Add simple support for 
14618         GtkIMContext.
14619
14620 Mon Apr 24 19:34:18 2000  Owen Taylor  <otaylor@redhat.com>
14621
14622         * gtk/gtkentry.c (gtk_entry_move_cursor_visually): Fix problem
14623         with deletion from last commit.
14624
14625 Mon Apr 24 19:29:40 2000  Owen Taylor  <otaylor@redhat.com>
14626
14627         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Set the language
14628         in the context from the current locale.
14629         
14630         * gtk/gtkentry.c (gtk_entry_size_request): Use language from the
14631         context, not hardcoded value.
14632
14633         * gtk/gtkentry.c (gtk_entry_move_cursor): Make character movement visual,
14634         not logical.
14635
14636 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
14637
14638         * gtk/gtkentry.c gtk/gtktextdisplay.c: Don't handle selections as
14639         attributes - that doesn't handle partial-glyph selection
14640         properly. Instead use new pango_layout_line_get_x_ranges()
14641         functionality to draw the selection.
14642
14643         * gtk/gtkentry.c: Simplify code since pango_layout_line_index_to_x()
14644         now properly handles out-of-range coordinates.
14645
14646         * gtk/gtktextbuffer.c: Emit "mark_set" when the cursor is moved.
14647
14648         * gtk/gtktextiter.h gtk/gtktextiterprivate.h: Make gtk_text_iter_get_line_byte()
14649         public.
14650
14651         * gtk/gtktextlayout.[ch]: Properly set the direction in the PangoContext
14652         for paragraphs opposite to the base direction of the widget.
14653
14654         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c: Fixes for alignment.
14655
14656         * gtk/gtktextlayout.c: Don't split segments on marks, since that
14657         causes Arabic words to reshape as you cursor through.
14658
14659         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Implement virtual
14660         cursor position when moving vertically with the arrow keys and
14661         scrolling with page-up/page-down. (Arrow keys save only the X,
14662         scrolling saves both X and Y.)
14663
14664         This means you can line-up / line-down or page-up / page-down
14665         without losing your place, and also that moving vertically
14666         with the cursor keys keeps the same X position, not the same
14667         character count:
14668
14669         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Make vertical
14670         arrow keys move by display lines, not paragraphs.
14671
14672 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
14673
14674         * gtk/gtklayout.c: Make sure that the bin window is at least
14675         as big as the allocation. (Should we also make sure that the
14676         bin window is big enough to completely cover widget->window?)
14677
14678         * gtk/gtktextview.c (gtk_text_view_get_visible_rect): Add
14679         function to get the onscreen rectangle.
14680
14681         * gdk/x11/gdkwindow-x11.c (gdk_window_get_pointer): Correctly account
14682         for offsets in window coordinates.
14683
14684 Sun Apr 16 16:13:27 2000  Owen Taylor  <otaylor@redhat.com>
14685
14686         * gtk/gtkentry.c (gtk_entry_get_cursor_locations): Fix index/offset
14687         confusion.
14688
14689         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Set the default direction
14690         from the widget direction.
14691
14692         * gtk/gtktexttag.c gtk/gtktexttagprivate.h (gtk_text_tag_set_arg): 
14693         Add a "direction" attribute.
14694
14695         * gtk/gtktextview.c: global s/tkxt/text_view/.
14696
14697         * gtk/testtext.c: Added long block of text in Arabic, to test out
14698         the direction attributes. (Some problems with the shaping system
14699         for arabic become obvious - like the fact the cursor splits words
14700         into unjoined pieces.)
14701
14702 Fri Apr 14 12:54:34 2000  Owen Taylor  <otaylor@redhat.com>
14703
14704         * gtk/gtktextdisplay.c (render_layout): Add overstrike handling.
14705
14706         * gtk/gtktextlayout.c: Fix up alignment.
14707
14708         * gtk/testtext.c: Add some tests for centering, wrapping.
14709
14710 Fri Apr 14 09:26:22 2000  Owen Taylor  <otaylor@redhat.com>
14711
14712         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c gdk/x11/gdkdrawable-x11.c:
14713         Add a draw_glyphs() operation to the drawable vtable and gdk_draw_glyphs().
14714         If we wrote GTK+-specific layout-render function this could just replace
14715         the draw_layout() operation in the vtable.
14716
14717         * gtk/gtkentry.c: Move guts of gtk_entry_get_cursor_locations to 
14718         pango_layout_get_cursor_pos() and use that function.
14719
14720         * gtk/gtktextchild.[ch]: add gtk_ onto pixmap_segment_new(), since it
14721         is a non-static symbol.
14722
14723         * gtk/gtktextbtree.[ch]: Replace gtk_text_btree_find_line_data_by_y()
14724         with gtk_text_btree_find_line_by_y()
14725
14726         * gtk/gtktextdisplay.c: Rewrote for Pango - uses a custom layout
14727         renderer that handles GtkTextAppearance attributes.
14728
14729         * gtk/gtktexttag.[ch] gtk/gtktexttagprivate.h: 
14730
14731           - Move the values in the style that don't affect geometry into a
14732             GtkTextAppearance structure.
14733           - Change underline to take a PangoUnderline and "font" a string
14734             representation of a font description
14735           - Add a "font_desc" attribute which takes a FontDescription structure.
14736
14737         * gtk/gtktextlayout.[ch]:
14738
14739           - Get rid of the display-line list per each line. Instead, we
14740             generate, on demand, a GtkTextLineDisplay structure which]
14741             contains a PangoLayout * and other necesary information
14742             (offsets, cursor locations) for displaying a paragraph.
14743           - Get rid of the code to wrap lines, create display chunks,
14744             etc. Instead, we just go through a paragraph and convert
14745             it into the necessary inputs to a PangoLayout.
14746           - Implement a new attribute type, GtkTextAttrAppearance. This
14747             holds a GtkTextAppearance, and is used to pass colors, 
14748             stipple, etc, through from the layout to the display without
14749             having to use lots and lots of individual attributes.
14750           - Reimplement gtk_layout_get_iter_at_pixel() gtk_layout_get_iter_pos()
14751             in terms of PangoLayout functions.
14752         
14753         * gtk/gtktextview.c: 
14754          
14755           - Handle passing the necessary PangoContext to the layout
14756           - Some fixups in painting to deal with the automatic backing store
14757             and offsetting of GTK+-1.4
14758           - Add a style_set handler so that the default style reacts
14759             properly to theme changes.
14760         
14761         * gtk/gtktext?*.[ch]: Random code-style fixes.
14762
14763         * gtk/testtext.c: Substitute in languages that Pango handles now for Thai
14764
14765 Mon Apr 10 10:33:45 2000  Owen Taylor  <otaylor@redhat.com>
14766
14767         * gtk/gtktext?*.[ch]: Check in Havoc's port of the Tk text widget,
14768         in original form preparatory to Pango-ization and gdkimcontext-ization.
14769
14770 Thu Apr  6 19:25:39 2000  Owen Taylor  <otaylor@redhat.com>
14771
14772         * gtk/gtkimcontext.c: Move default implementations to real_* vfuncs,
14773         so that we can derive from gtkimcontext in language bindings properly.
14774
14775 Thu Apr  6 16:02:52 2000  Owen Taylor  <otaylor@redhat.com>
14776
14777         * gtk/gtkimcontextsimple.[ch]: Use gdk_keyval_to_unicode to gdk_unicode_to_keyval.
14778         Add a compose table including (almost) all the compose combinations
14779         from X. This is 6k of static, shared data as opposed to 50k or so of dynamic
14780         data in the XIM implementation.
14781
14782         * gdk/gdk.h gdk/gdkkeyuni.c gdk/win32/gdkevents-win32.c (gdk_keyval_to_unicode, gdk_unicode_to_keyval):
14783         Moved functions to convert keyvalues from and to unicode here from
14784         the win32 port and made them public.
14785
14786 Wed Apr  5 16:37:29 2000  Owen Taylor  <otaylor@redhat.com>
14787
14788         * gtk/gtkeditable.c (gtk_editable_insert_text): Allow new_text_length == -1.
14789
14790 Wed Apr  5 16:27:45 2000  Owen Taylor  <otaylor@redhat.com>
14791
14792         * gtk/gtkimcontext.[ch]: Base class for new input context system
14793
14794         * gtk/gtkimmulticontext.[ch]: Proxy input context that allows
14795         the real input context implementation to be loaded from modules
14796         and switched on the fly.
14797
14798         * gtk/gtkcontextsimple.[ch]: Simple implementation of an input
14799         context that just does direct keysymbol => unicode translation.
14800
14801         * gtk/gtkentry.[ch]: Start switching editing over to using
14802         GtkInputContext. (No handling of preedit yet.)
14803
14804 Wed Apr  5 15:48:41 2000  Owen Taylor  <otaylor@redhat.com>
14805
14806         * gtk/gtktypeutils.h (GTK_CHECK_GET_CLASS): Fix problem with one too
14807         many substitutions. (klass should not be subsituted.)
14808
14809 Wed Apr  5 00:18:14 2000  Owen Taylor  <otaylor@redhat.com>
14810
14811         * configure.in: Add checks for Pango
14812
14813         * configure.in docs/Makefile.am: Add test for sgml2html
14814         and allow 'make dist' without building html, but print out
14815         warnings in that case. (For making snapshots)
14816
14817         * gdk/Makefile.am gdk/x11/Makefile.am gtk/Makefile.am:
14818         Add Pango libraries and C flags
14819
14820         * gdk/gdkdraw.c gdk/gdkdrawable.h gdkwindow.c gdk/x11/gdkdrawable-x11.c:
14821         Add function (gdk_draw_layout) to draw a pango layout.
14822
14823         * gdk/gdkpango.h gdk/x11/gdkpango-x11.c: New file with functions
14824         for getting Pango contexts for GDK.
14825
14826         * gtk/gtkeditable.c: Get rid of dead code gtk_editable_parent_set()
14827
14828         * gtk/gtkentry.[ch]: Complete rewrite to use Pango, add bidirectional
14829         editing.
14830
14831         * gtk/gtkentry.c: Hack in simple Hebrew input with direct
14832         keysym => unicode translations. More languages can be added
14833         here, but real input-method support is needed.
14834
14835         * docs/Changes-1.4.txt: Added note about entry behavior.
14836         
14837         * gtk/gtkenums.h gtk/gtkwidget.[ch] testgtk.c gtkprivate.h: Add functions
14838         to set the reading direction for a widget and the global direction.
14839         Add test which allows toggling the global direction. Two private
14840         flags are used to store the direction. (GTK_DIRECTION_SET + GTK_DIRECTION_LTR)
14841
14842         * gtk/gtkcheckbutton.c gtk/gtkframe.c gtk/gtkhbbox.c gtk/gtkhbox.c
14843           gtk/gtkradiobutton.c gtk/gtkspinbutton.c gtk/gtktable.c 
14844
14845         * gtk/gtk[hv]scale.c gtk/gtkscale.[ch]: Draw numbers using Pango
14846
14847         * gtk/gtklabel.[ch]: Moved to Pango and considerably rewritten. Line breaking,
14848         underlining now handled by Pango.
14849
14850         * gtk/gtkstyle.[ch] gtk/gtkrc.[ch]: Add a PangoFontDescription
14851         to RCStyle and Style. (Having both this and the old font name and GdkFont 
14852         is temporary.)
14853
14854         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_{context,layout}): Added 
14855         convenience functions for creating contexts and layouts for widgets.
14856
14857         * gtk/testgtk.c: Enhance label tests with multilingual labels.
14858
14859 2000-05-29  Jonathan Blandford  <jrb@redhat.com>
14860
14861         * gtk/gtkclist.c (gtk_clist_column_titles_active): let you set the
14862         titles to be active, even if they aren't visible.
14863         (gtk_clist_column_titles_passive):  Ditto.
14864
14865 2000-05-21  Nils Barth  <nils_barth@post.harvard.edu>
14866
14867         * gtkmenu.c:
14868         * gtkmenu.h:
14869         * gtktypeutils.h: Spelling/grammar fixes in comments.
14870
14871 Tue May 23 12:25:07 CEST 2000 lupus <lupus@debian.org>
14872
14873         * gdk/nanox/*.h: add missing header files.
14874
14875 Fri May 19 11:52:59 2000  Tim Janik  <timj@gtk.org>
14876
14877         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set
14878         send_event to TRUE.
14879         (gtk_drawing_area_size): queue a resize.
14880
14881 Sun Mar 26 03:21:28 2000  Tim Janik  <timj@gtk.org>
14882
14883         * gtk/gtksignal.c (gtk_signal_handlers_destroy): when unref-ing
14884         the handlers, also invalidate them. bug nailed down by Karl Nelson
14885         <kenelson@ece.ucdavis.edu>.
14886
14887 Fri May 19 06:49:23 2000  Tim Janik  <timj@gtk.org>
14888
14889         * gtk/gtkfontsel.c (gtk_font_selection_get_font_name): handle
14890         "(nil)" foundries, patch from Grigorios Magklis.
14891
14892         * gtk/gtkfontsel.c (gtk_font_selection_load_font): don't crash
14893         on non-available fonts, based on a patch by Grigorios Magklis
14894         <maglis@cs.rochester.edu>.
14895
14896 2000-05-18  Elliot Lee  <sopwith@redhat.com>
14897
14898         * gdk/x11/gdkregion-generic.c: If a region does not have any
14899         rectangles, or if the specified rectangle is not in the region, then return GDK_OVERLAP_RECTANGLE_OUT
14900         instead of GDK_OVERLAP_RECTANGLE_IN.
14901
14902 2000-05-17  Jonathan Blandford  <jrb@redhat.com>
14903
14904         * gtk/gtklayout.c (gtk_layout_map): Remove references to
14905         OFFSCREEN, as it is no longer necessary.
14906
14907 Wed May 17 10:52:12 2000  Owen Taylor  <otaylor@redhat.com>
14908
14909         * gtk/gtkcolorsel.c: Patch from David Santiago
14910         <mrcooger@cyberverse.com> to change things so that the 
14911         indicator of the active palette entry is done independently,
14912         not via the focus, since it should always be visible.
14913
14914 2000-05-17  Tor Lillqvist  <tml@iki.fi>
14915
14916         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Plug same
14917         refcount leaks as in the X11 backend.
14918
14919         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Logging
14920         cosmetics.
14921
14922         * gdk/win32/gdkwindow-win32.c: Similar changes as in X11
14923         backend. Add _gdk_windowing_window_destroy().
14924
14925         * gtk/gtkcolorsel.c: Include correct backend-specific header.
14926         Don't use XColor unless on X11. (No GDK_VISUAL_STATIC_COLOR
14927         either, but these probably do exist on nanox?)
14928         
14929         * gtk/gtkhsv.c: Use G_PI (fresh from <glib.h>) instead of M_PI
14930         which isn't necessarily defined by <math.h>.
14931
14932         * gtk/gtkobject.c (gtk_object_init): Don't go up the class
14933         ancestry past GtkObject.
14934
14935         * gtk/gtktypeutils.h: Mark GTK_TYPE_IDENTIFIER for export/import
14936         from DLL on Win32.
14937
14938         * gtk/gtk.def: Update corresponding to recent changes.
14939
14940         * gtk/makefile.{cygwin,msc}: Updates.
14941
14942 Fri May 12 18:46:51 2000  Owen Taylor  <otaylor@redhat.com>
14943
14944         * docs/Changes-1.4.txt: A bit of editing.
14945
14946         * gdk/gdkwindow.c (_gdk_window_clear_update_area) 
14947         * gdk/x11/gdkwindow-x11.c (gdk_window_hide): Add a function
14948         to clear the update area for the window, and clear it
14949         when hiding a window.
14950
14951         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Ignore
14952         if window destroyed.
14953
14954         * gdk/gdkwindow.c (gdk_window_end_paint): Likewise.
14955
14956         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c gdk/gdkinternals.h: Move 
14957         gdk_window_destroy() to the generic code, since there was a lot of 
14958         window-system-independent logic it in. Add a function:
14959         
14960          _gdk_window_destroy() 
14961
14962         to the internal API to destroy a window without unreferencing it.
14963         Add a function:
14964
14965          _gdk_windowing_window_destroy()
14966
14967         That does the windowing-system-dependent part of destroying 
14968         the window.
14969
14970 Fri May 12 11:07:41 2000  Owen Taylor  <otaylor@redhat.com>
14971
14972         * gtk/testgtk.c: Fix various memory leaks of pixmaps.
14973
14974 Fri May 12 11:06:10 2000  Owen Taylor  <otaylor@redhat.com>
14975
14976         * gtk/gtkwidget.c docs/Changes-1.4.txt (gtk_widget_shape_combine_mask): 
14977         Make gtk_widget_shape_combine_mask() keep a reference count on
14978         the pixmap since it keeps it around.
14979
14980 Fri May 12 10:53:29 2000  Owen Taylor  <otaylor@redhat.com>
14981
14982         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix refcount
14983         leak.
14984
14985         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Fix refcount
14986         leak with event filters.
14987
14988 Thu May 11 14:29:44 2000  Owen Taylor  <otaylor@redhat.com>
14989
14990         * gtk/gtkdnd.c (gtk_drag_dest_set_internal): Remove the
14991         signal handlers with the right data arguments. (Fixes
14992         some warnings when a widget was repeatedly set as a drag
14993         destination.)
14994
14995         * gdk/x11/gdkdnd-x11.c (gdk_window_register_dnd): Set data on the
14996         window so we can avoid avoid setting the DND properties on the
14997         toplevel window repeatedly.
14998
14999 2000-05-13  Tor Lillqvist  <tml@iki.fi>
15000
15001         * gdk/win32/gdkwin32.h: Define more message types missing from
15002         mingw headers.
15003
15004         * gdk/win32/gdkevents-win32.c (gdk_event_translate): On WM_DESTROY
15005         call gdk_window_destroy_notify(). It was never called. This
15006         probably meant that the GdkWindow was never freed. Thanks Owen for
15007         noticing (!).
15008
15009         * gdk/win32/gdkwindow-win32.c (gdk_window_internal_destroy): Mark
15010         window as destroyed before calling DestroyWindow(). DestroyWindow()
15011         causes a call to the window procedure (gdk_WindowProc), which
15012         calls gdk_event_translate(), which calls
15013         gdk_window_destroy_notify(), which gets confused unless the window
15014         is set as destroyed.
15015
15016         * gdk/win32/gdkcolor-win32.c (gdk_win32_color_to_string): Rename
15017         this function to indicate it's win32 only. Put inside #ifdef
15018         G_ENABLE_DEBUG.
15019
15020         * gdk/win32/gdkevents-win32.c (gdk_win32_message_name): New
15021         debugging function. (gdk_event_translate:) Add a default branch
15022         that uses the above function to print debug messages with all
15023         Windows messages symbolically.
15024
15025         * gdk/win32/gdkprivate-win32.h: Declare it, and
15026         gdk_win32_color_to_string, but only if G_ENABLE_DEBUG.
15027
15028 Fri May 12 20:07:32 2000  Tim Janik  <timj@gtk.org>
15029
15030         * gtk/gtkcolorseldialog.c: don't include gtk/gtkintl.h in a
15031         public header file.
15032
15033 Fri May 12 17:13:32 2000  Tim Janik  <timj@gtk.org>
15034
15035         * docs/Changes-1.4.txt: documented necessary changes for 1.4 transition.
15036
15037         * gtk/gtktext.c: made the adjustments no-construct args, simply
15038         provide default adjustments.
15039         (gtk_text_destroy): release adjustments.
15040
15041         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): made the
15042         adjustment argument non-construct.
15043
15044         * gtk/gtkprogress.c (gtk_progress_destroy): release adjustment here,
15045         instead of in finalize.
15046         (gtk_progress_get_text_from_value): 
15047         (gtk_progress_get_current_text): 
15048         (gtk_progress_set_value): 
15049         (gtk_progress_get_percentage_from_value): 
15050         (gtk_progress_get_current_percentage): 
15051         (gtk_progress_set_percentage): 
15052         (gtk_progress_configure): ensure an adjustment is present.
15053
15054 Thu May 11 01:24:08 2000  Tim Janik  <timj@gtk.org>
15055
15056         * gtk/gtkcolorsel.[hc]:
15057         * gtk/gtkcolorseldialog.[hc]:
15058         * gtk/gtkhsv.[hc]: major code cleanups, destroy handlers need to chain
15059         their parent implementation, use bit fields for boolean values, don't
15060         create unused widgets, usage of glib types, braces go on their own
15061         lines, function argument alignment, #include directives etc. etc. etc..
15062
15063         * gtk/Makefile.am (gtk_public_h_sources): install gtkhsv.h.
15064
15065 Wed May 10 23:29:52 2000  Tim Janik  <timj@gtk.org>
15066
15067         * gtk/gtktoolbar.c (gtk_toolbar_destroy): don't unref a NULL tooltips.
15068
15069         * gtk/gtkfilesel.c (gtk_file_selection_destroy): don't free a cmpl_state
15070         of NULL.
15071
15072         * gtk/gtkcombo.c (gtk_combo_item_destroy): don't keep references
15073         to freed data.
15074         (gtk_combo_destroy): don't keep a pointer to a destroyed window.
15075
15076         * gtk/gtkmenu.c (gtk_menu_init): reset the menu's toplevel pointer
15077         to NULL when the toplevel is getting destroyed.
15078         (gtk_menu_set_tearoff_state): same here for the tearoff_window.
15079         (gtk_menu_destroy): 
15080         (gtk_menu_init): store the information of whether we have to
15081         readd the initial child ref_count during destruction in a new
15082         GtkMenu field needs_destruction_ref_count.
15083
15084         * gtk/gtkviewport.c: SHAME! ok this one is tricky, so i note it
15085         here, those reading: learn from my mistake! ;)
15086         in order for set_?adjustment to support a default adjustemnt if
15087         invoked with an adjustment pointer of NULL, the code read (pseudo):
15088         if (v->adjustment) unref (v->adjustment);
15089         if (!adjustment) adjustment = adjustment_new ();
15090         if (v->adjustment != adjustment) v->adjustment = ref (adjustment);
15091         now imagine the first unref to actually free the old adjustment and
15092         adjustment_new() creating a new adjustment from the very same memory
15093         portion. here, the latter comparision will unintendedly fail, and
15094         all hell breaks loose.
15095         (gtk_viewport_set_hadjustment):
15096         (gtk_viewport_set_vadjustment): reset viewport->?adjustment to NULL
15097         after unreferencing it.
15098
15099         * gtk/gtkcontainer.[hc]: removed toplevel registration
15100         functions: gtk_container_register_toplevel(),
15101         gtk_container_unregister_toplevel() and
15102         gtk_container_get_toplevels() which had wrong semantics
15103         anyways: it didn't reference and copy the list.
15104
15105         * gtk/gtkwindow.c: we take over the container toplevel registration
15106         bussiness now. windows are registered across multiple destructions,
15107         untill they are finalized. the initial implicit reference count
15108         users are holding on windows is removed with the first destruction
15109         though.
15110         (gtk_window_init): ref & sink and set has_user_ref_count, got
15111         rid of gtk_container_register_toplevel() call. add window to
15112         toplevel_list.
15113         (gtk_window_destroy): unref the window if has_user_ref_count
15114         is still set, got rid of call to
15115         gtk_container_unregister_toplevel().
15116         (gtk_window_finalize): remove window from toplevel list.
15117         (gtk_window_list_toplevels): new function to return a newly
15118         created list with referenced toplevels.
15119         (gtk_window_read_rcfiles): use gtk_window_list_toplevels().
15120
15121         * gtk/gtkhscale.c (gtk_hscale_class_init): made the GtkRange
15122         adjustment a non-construct arg.
15123         * gtk/gtkvscale.c (gtk_vscale_class_init): likewise.
15124         * gtk/gtkhscrollbar.c (gtk_vscrollbar_class_init): likewise.
15125         * gtk/gtkvscrollbar.c (gtk_vscrollbar_class_init): likewise.
15126
15127         * gtk/gtkrange.c: added some realized checks.
15128         (gtk_range_destroy): get rid of the h/v adjustments in the
15129         destroy handler instead of finalize. remove timer.
15130         (gtk_range_get_adjustment): demand create adjustment.
15131
15132         * gtk/gtkviewport.c: made h/v adjustment non-construct args.
15133         we simply create them on demand now and get rid of them in
15134         the destroy handler.
15135         (gtk_viewport_destroy): get rid of the h/v adjustments in the
15136         destroy handler instead of finalize.
15137         (gtk_viewport_get_hadjustment): 
15138         (gtk_viewport_get_vadjustment): 
15139         (gtk_viewport_size_allocate): demand create h/v adjustment
15140         if required.
15141
15142         * gtk/gtkwidget.c (gtk_widget_finalize): duplicate part of the
15143         gtk_widget_real_destroy () functionality.
15144         (gtk_widget_real_destroy): reinitialize with a new style, instead
15145         of setting widget->style to NULL.
15146
15147 Fri May  5 13:02:09 2000  Tim Janik  <timj@gtk.org>
15148
15149         * gtk/gtkcalendar.c:
15150         * gtk/gtkbutton.c: ported _get_type() implementation over to
15151         GType, either to preserve memchunks allocation facilities,
15152         or because Gtk+ 1.0 GtkTypeInfo was still being used.
15153
15154         * gtk/gtkobject.[hc]: derive from GObject. ported various functions
15155         over. prepare for ::destroy to be emitted multiple times.
15156         removed reference tracer magic. chain into GObjectClass.shutdown()
15157         to emit ::destroy signal.
15158
15159         * gtk/gtksignal.c: removed assumptions about GTK_TYPE_OBJECT being
15160         fundamental.
15161
15162         * gtk/gtkmain.c: removed gtk_object_post_arg_parsing_init()
15163         cludge.
15164
15165         * gtk/gtksocket.c:
15166         * gtk/gtkplug.c:
15167         * gtk/gtklayout.c:
15168         * gtk/gtklabel.c:
15169         * gtk/gtkargcollector.c:
15170         * gtk/gtkarg.c: various fixups to work with GTK_TYPE_OBJECT
15171         not being a fundamental anymore, and to work with the new
15172         type system (nuked fundamental type varargs clutter).
15173
15174         * gtk/*.c: install finalize handlers in the GObjectClass
15175         part of the class structure.
15176         changed direct GTK_OBJECT()->klass accesses to
15177         GTK_*_GET_CLASS().
15178         changed direct object_class->type accesses to GTK_CLASS_TYPE().
15179
15180         * gtktypeutils.[hc]: use the reserved fundamental ids provided by
15181         GType. made most of the GTK_*() type macros and Gtk* typedefs
15182         simple wrappers around macros and types provided by GType.
15183         most notably, a significant portion of the old API vanished:
15184         GTK_TYPE_MAKE(),
15185         GTK_TYPE_SEQNO(),
15186         GTK_TYPE_FLAT_FIRST, GTK_TYPE_FLAT_LAST,
15187         GTK_TYPE_STRUCTURED_FIRST, GTK_TYPE_STRUCTURED_LAST,
15188         GTK_TYPE_ARGS,
15189         GTK_TYPE_CALLBACK,
15190         GTK_TYPE_C_CALLBACK,
15191         GTK_TYPE_FOREIGN,
15192         GtkTypeQuery,
15193         gtk_type_query(),
15194         gtk_type_set_varargs_type(),
15195         gtk_type_get_varargs_type(),
15196         gtk_type_check_object_cast(),
15197         gtk_type_check_class_cast(),
15198         gtk_type_describe_tree(),
15199         gtk_type_describe_heritage(),
15200         gtk_type_free(),
15201         gtk_type_children_types(),
15202         gtk_type_set_chunk_alloc(),
15203         gtk_type_register_enum(),
15204         gtk_type_register_flags(),
15205         gtk_type_parent_class().
15206         replacements, where available are described in ../docs/Changes-1.4.txt.
15207         implemented compatibility functions for the remaining API.
15208
15209         * configure.in: depend on glib 1.3.1, use gobject module.
15210
15211 Thu May 11 12:39:50 2000  Owen Taylor  <otaylor@redhat.com>
15212
15213         * TODO.xml: Various updates to current status.
15214
15215 Wed May 10 20:25:04 2000  Owen Taylor  <otaylor@redhat.com>
15216
15217         * gtk.m4: Print out version when test succeeds.
15218
15219 Wed May 10 16:38:17 2000  Owen Taylor  <otaylor@redhat.com>
15220
15221         * gtk/Makefile.am docs/Changes-1.4.txt gtk/gtkcolorsel.[ch]
15222         gtk/gtkhsv.[ch]: Color selection dialog rewrite.
15223         
15224         (Original triangle color selector from Simon Budig
15225         <Simon.Budig@unix-ag.org>, Cleaned up and rewritten for GTK+ by
15226         from Jonathan, Havoc, and Federico. Merge into GTK+ done by David
15227         Santiago <mrcooger@cyberverse.com>)
15228
15229         * gtk/gtkcolorseldialog.[ch]: Split color selection dialog
15230         out into a separate widget.
15231
15232         * gtk/testgtk.c: Add some checkbuttons for toggling palette
15233         and opacity controls.
15234
15235 Wed May 10 16:08:09 2000  Owen Taylor  <otaylor@redhat.com>
15236
15237         * configure.in (GTK_LIBS_EXTRA): Remove references to gobject that 
15238         snuck in prematurely.
15239
15240 2000-05-07  Tor Lillqvist  <tml@iki.fi>
15241
15242         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Fix typo. I
15243         had deleted a ! operator by mistake, which caused
15244         GDK_SELECTION_CLEAR events never to be generated, which caused
15245         only the first copy to the clipboard from an gtkeditable to
15246         actually cause a copy to the Windows clipboard.
15247
15248 2000-05-06  Tor Lillqvist  <tml@iki.fi>
15249
15250         * gdk/win32/gdkdnd-win32.c: Enable shortcut resolution for gcc
15251         compilation, too. Current mingw gcc distributions include the
15252         necessary headers. Also the necessary IIDs are now in mingw
15253         headers/libraries, and own definitions unnecessary.
15254
15255         More hacking on OLE2 DND, still doesn't work though, and thus
15256         ifdeffed out.
15257
15258         * gdk/win32/gdkwindow-win32.c: Remove gdk_window_clear() from
15259         here, too.
15260
15261 Sat,  6 May 2000 13:31:34 +0200 Paolo Molaro <lupus@linuxcare.com>
15262
15263         * gdk/nanox/*: nano-X port work in progress.
15264         * gdk/simple.c: simple test for Gdk.
15265         * README.nanox: notes about the port: read this first!
15266         * gtk/gtk{dnd,plug,selection,window}.c: minimal changes to make gtk compile
15267         with nano-X.
15268
15269 Fri May  5 11:18:47 2000  Owen Taylor  <otaylor@redhat.com>
15270
15271         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c (gdk_window_clear): Move
15272         gdk_window_clear() into common code, implement in terms of
15273         gdk_window_clear_area(). (Fixes bug where gdk_window_clear() was
15274         not redirected to the backing rectangle.
15275
15276 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
15277
15278         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
15279         EXTRA_DIST. It does not work well when the file that
15280         everything depends on is not in the tarball.
15281
15282 Tue Apr 25 22:20:41 2000  Owen Taylor  <otaylor@redhat.com>
15283
15284         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix error
15285         with recursion where process_updates() is called from
15286         an expose handler. (GtkTextView is highly broken in
15287         doing this, but it should work, so it is a nice test
15288         case.)
15289
15290 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
15291
15292         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Gracefully
15293         handle the case where updates are queued during processing of
15294         updates.
15295
15296 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
15297
15298         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): We already assume
15299         window is on gdk_display - use that instead of segfaulting.
15300
15301 Thu May  4 02:04:46 2000  Tim Janik  <timj@gtk.org>
15302
15303         * configure.in (STRIP_DUMMY): some Make 3.79 $(strip ) versions are
15304         broken and require an empty arg, give it to them.
15305
15306 Fri Apr 28 19:34:32 2000  Tim Janik  <timj@gtk.org>
15307
15308         * gtk/gtklabel.h: indentation fixes.
15309
15310 2000-05-02  Tor Lillqvist  <tml@iki.fi>
15311
15312         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_arc): Don't try to
15313         draw too narrow or too low arcs, they seem to fail, at least with
15314         some display drivers.
15315
15316         * gdk/gdk.c (gdk_init_check): Use G_DIR_SEPARATOR.
15317
15318         Large changes to the Win32 backend, partially made necessary by
15319         the changes to the backend-independent internal
15320         structures. Attempts to implement similar backing store stuff as
15321         on X11. The current (CVS) version of the Win32 backend is *not* as
15322         stable as it was before the no-flicker branch was merged. A
15323         zipfile with that version is available from
15324         http://www.gimp.org/win32/. That should be use by "production"
15325         code until this CVS version is usable. (But note, the Win32
15326         backend has never been claimed to be "production quality".)
15327
15328         * README.win32: Add the above comment about versions.
15329
15330         * gdk/gdkwindow.c: Don't use backing store for now on Win32.
15331
15332         * gdk/gdk.def: Update.
15333
15334         * gdk/gdkfont.h: Declare temporary Win32-only functions. Will
15335         presumably be replaced by some more better mechanism as 1.4 gets
15336         closer to release shape.
15337
15338         * gdk/makefile.{cygwin,msc}: Update.
15339
15340         * gdk/win32/*.c: Correct inclusions of the backend-specific and
15341         internal headers. Change code according to changes in these. Use
15342         gdk_drawable_*, not gdk_window_* where necessary.
15343
15344         * gdk/win32/gdkdnd-win32.c: Use MISC selector for GDK_NOTE, not
15345         our old DND.
15346
15347         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_text): Don't try
15348         to interpret single characters as UTF-8. Thanks to Hans Breuer.
15349         Use correct function name in warning messages.
15350
15351         * gdk/win32/gdkevents-win32.c: Use correct parameter lists for the
15352         GSourceFuncs gdk_event_prepare and gdk_event_check.
15353         (gdk_event_get_graphics_expose): Do implement, use
15354         PeekMessage. Thanks to Hans Breuer.
15355         (event_mask_string): Debugging function to print an GdkEventMask.
15356         (gdk_pointer_grab): Use it.
15357
15358         * gdk/win32/gdkfont-win32.c: The Unicode subrange that the
15359         (old) book I used claimed was Hangul actually is CJK Unified
15360         Ideographs Extension A. Also, Hangul Syllables were missing.
15361         Improve logging.
15362
15363         * gdk/win32/gdkgc-win32.c: Largish changes.
15364
15365         * gdk/win32/gdkim-win32.c (gdk_set_locale): Use
15366         g_win32_getlocale() from GLib, and not setlocale() to get current
15367         locale name.
15368
15369         * gdk/win32/gdkprivate-win32.h
15370         * gdk/win32/gdkwin32.h: Move stuff from gdkprivate-win32.h to
15371         gdkwin32.h, similarily as in the X11 backend.
15372
15373         * gdk/win32/gdkwindow-win32.c (gdk_propagate_shapes): Bugfix,
15374         assignment was used instead of equals in if test. Thanks to Hans
15375         Breuer.
15376
15377         * gdk/win32/gdkgeometry-win32.c: New file, just a quick hack of
15378         the X11 version.
15379
15380         * gdk/win32/makefile.{cygwin,msc}
15381         * gtk/makefile.{cygwin,msc}: Updates. Better kludge to get the
15382         path to the Win32 headers that works also with the mingw compiler.
15383
15384         * gtk/gtkstyle.c: Include <string.h>.
15385
15386 2000-04-26  Havoc Pennington  <hp@redhat.com>
15387
15388         * gtk/gtklabel.c (gtk_label_get_text): Add this function,
15389         replacing the broken gtk_label_get ()
15390
15391 2000-04-15  Havoc Pennington  <hp@pobox.com>
15392
15393         * gdk/gdkdnd.h: clean up enum format, remove extra comma, 
15394         this keeps scanner scripts from getting confused.
15395
15396         * gdk/gdkdraw.c (gdk_drawable_get_data): This should return the
15397         data, rather than void
15398
15399 2000-04-15  Tor Lillqvist  <tml@iki.fi>
15400
15401         * gtk/gtkclist.c (gtk_clist_motion)
15402         * gtk/gtklist.c (gtk_list_motion_notify): If we get a motion event
15403         with is_hint FALSE, get x and y from the event. They used to be
15404         used uninitialised. The Win32 backend never sends motion events
15405         marked as hints. This for instance fixes the annoying file and
15406         font selector behaviour in the Win32 version.
15407
15408 2000-04-14  Tor Lillqvist  <tml@iki.fi>
15409
15410         * gtk/gtksignal.c: (Win32:) Export the gtk_private_signals and
15411         gtk_private_n_signals variables, they are used by some software,
15412         sigh.
15413
15414         * gtk/gtkrc.c (get_gtk_sysconf_directory): (Win32:) Fetch the
15415         installation directory from the Registry, where the installer
15416         should have put it.
15417
15418 Fri Apr  7 17:19:27 2000  Owen Taylor  <otaylor@redhat.com>
15419
15420         * gdk/x11/Makefile.am: Fix problem with installation directory for
15421         gdkx.h
15422
15423         * gtk/gtkmenuitem.c gtk/gtkmenushell.c: Patch from David Santiago
15424         <mrcooger@cyberverse.com> so that when selecting menus with the
15425         mouse, the first item will not be selected, but when selecting
15426         with an accelerator, or navigating left-right on a menubar with
15427         the menus popped up, the first item will be selected.
15428
15429 2000-04-05  Dan Damian  <dand@dnttm.ro>
15430
15431         * configure.in: Added "ro" to ALL_LINGUAS.
15432
15433 Wed Apr  5 00:08:36 2000  Owen Taylor  <otaylor@redhat.com>
15434
15435         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): Fix screwy
15436         indentation.
15437
15438         * Makefile.am (EXTRA_DIST): Fix typo.
15439
15440         * gdk[/x11]/Makefile.am (INCLUDES): Add $(top_builddir)/gdk
15441         to catch gdkconfig.h
15442
15443         * gtk/gtkitemfactory.c: Added FIXME.
15444
15445 2000-03-30  Jonathan Blandford  <jrb@redhat.com>
15446
15447         * gtk/gtkpaned.c (gtk_paned_get_position): oops.
15448         s/return_if_fail/return_val_if_fail/g and add a return value.
15449
15450 Mon Mar 27 20:56:14 2000  Owen Taylor  <otaylor@redhat.com>
15451
15452         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Fix up 
15453         merge slipup.
15454
15455         * gdk/gdkinput.h: Fix missing line from merge.
15456
15457 Mon Mar 27 20:39:49 2000  Owen Taylor  <otaylor@redhat.com>
15458
15459         * gdk/gdkcolor.c cursor.c gdkdraw.c gdkfont.c: Include gdkinternals.h
15460         instead of gdkprivate.h.
15461
15462 Sun Mar 12 15:19:24 2000  Owen Taylor  <otaylor@redhat.com>
15463
15464         * gtk/gtkinputdialog.h (struct _GtkInputDialogClass): Fix
15465         parent class to correctly be GtkDialogClass.
15466
15467 Thu Feb 24 23:58:21 2000  Owen Taylor  <otaylor@redhat.com>
15468
15469         * gdk/x11/gdkgeometry-x11.c: Don't worry about clipping of
15470         toplevel windows and their immediate children by their parents,
15471         since the size of toplevel windows is out of our immediate
15472         control and we don't get any real benefit from trying to track
15473         this size for clipping.
15474
15475         * gdk/gdkprivate.h (struct _GdkWindowPrivate) gdk/x11/gdkwindow-x11.c : Add a flag
15476         for input_only windows.
15477
15478         * gdk/gdkwindow.c gdk/x11/gdkgeometry-x11.c: Use the above flag
15479         to fix some hacks and make sure that we don't try to set the
15480         background of input only windows.
15481
15482 Thu Feb 24 18:11:46 2000  Owen Taylor  <otaylor@redhat.com>
15483
15484         * gdk/gdkinternals.h gdk/gdkprivate.h gdk/Makefile.am: Add a header file for
15485         the _really_ internal stuff, and leave gdkprivate.h for the fake private
15486         stuff that we've traditionally exposed.
15487
15488         * gdk/**.c: Use gdkinternals.h where appropriate.
15489
15490         * gdk/x11/gdkx.h gdk/x11/gdkprivate-x11.h gdk/x11/*.c: Make gdkx.h
15491         not include gdkprivate-x11.h, move all stuff of conceivable public
15492         interest into gdkx.h; keep all really private stuff in
15493         uninstalled header gdkprivate-x11.h.
15494
15495         * gdk/gdkdraw.c gdk/gdkwindow.c gdk/gdkinternals: Redirect all calls to
15496         image->image_put on windows through a new function _gdk_window_draw_image()
15497         to allow us to do backing store for images. (Sort of ugly)
15498
15499         * gdk/gdkgc.c gdk/gdkprivate.h: Cache the ts and clip origins for graphics
15500         contexts locally so that we can offset them properly when drawing 
15501         onto backing pixmaps.
15502
15503         * gdk/gdkinput.h: Reindented
15504
15505         * gdk/gdkprivate.h gdk/x11/gdkwindow-x11.c: Store the background
15506         pixmap or color for the window, so we can properly initialize
15507         our double-buffer pixmaps, and also so that we temporarily set
15508         a background of None while scrolling.
15509
15510         * gdk/gdkregion.h: Revise region boolean operators to have an
15511         interface that is actually convenient - switch from creating new
15512         regions on every op, to "methods" that modify existing regions
15513         (A = A OP B). 3 argument forms which allow dest == src, would also
15514         be possible, but the current interfaces seem to map nicely
15515         onto what needs to be done. (There is quite a lot of region
15516         code in GDK now.)
15517
15518         * gdk/gdkregion.h: Add constructor from rectangle and a copy
15519         operator.
15520
15521         * gdk/x11/{gdkregion-generic.[ch],gdkpolyreg-generic.c,
15522         gdkpoly-generic.h: Copy region code from Xlib, switch it over
15523         to 32 bit coordinates, modify it to be mostly GTK+ style
15524         and to have interfaces that match gdkregion.h.
15525
15526         * gdk/gdkwindow.c gdk/gdkprivate.h: Add facility for
15527         double-buffered drawing. gdk_window_begin_paint_{rect,region}()
15528         create a backing pixmap and redirect all drawing to
15529         that backing pixmap until a matching gdk_window_end_paint().
15530
15531         * gdk/gdkwindow.[ch] gdk/gdkinternals.h gdk/x11/gdkdrawable-x11.c:
15532         Create a special drawable class for GtkWindow's that 
15533         redirects the drawing to the backing pixmap as necessary
15534         and then calls the real operations in _gdk_windowing_window_class.
15535
15536         * gdk/gdkprivate.h gdk/gdkwindow.[ch] gdk/x11/gdkevents-x11.c:
15537         Store invalid region for each window. Generate expose events for invalid
15538         region in an idle. This replaces both the expose compression
15539         and the redrawing queuing in GTK+. It is both more efficient and
15540         simpler than either one individually and far more so then the
15541         combination.
15542
15543         * gdk/x11/gdkgeometry.c gdk/x11/gdkwindow.c gdk/x11/gdkprivate-x11.h:
15544         Emulate 32 bit coordinates for windows with 16 bit coordinates
15545         by offsetting drawing, guffaw scrolling techniques and
15546         mapping/unmapping child windows as necessary.
15547
15548         * gdk/gdkwindow.[ch] gdk/x11/gdkgeometry.c: Add anti-exposes,
15549         where, when invalid regions are processed, the region is stored,
15550         and if expose events come in that are detectably duplicate
15551         the processed exposes (by comparison of event serial numbers),
15552         the stored region is subtracted out of those exposes.
15553
15554         * gdk/x11/gdkgeometry.c: Temporarily unset backing pixmaps of
15555         regions newly exposed when scrolling or resizing windows.
15556         This, combined with forcing processesing of queued invalidated
15557         regions, gives nice flicker-free scrolling.
15558
15559         * gtk/gtklayout.c gtk/gtkviewport.c: Force processing of
15560         invalidated regions after every scroll.
15561
15562         * gtk/gtklayout.c: Vastly simplify using the new 32 bit coordinate
15563         emulation in GDK. Its, for all practical purposes just a
15564         GtkViewport/GtkFixed hybrid now.
15565
15566         * gdk/gdkdrawable-x11.c: Convert from GDK (32 bit) to X11
15567         (16-bit) structures as necessary instead of just casting.
15568
15569         * gdk/x11/gdkgc-x11.c gdk/x11/gdkx.h: Replace XSetRegion with code
15570         in terms of the structures from gdkregion-generic.c, using appropriate
15571         offsets from GDK to X11 coordinates. Cache clip mask and
15572         origin and ts origin locally and only flush to the server
15573         when drawing, to avoid constantly setting and resetting these
15574         values when offsetting GC's for scrolling and backing pixmaps.
15575
15576         * gdk/x11/gdkinput-x11.c: Fix leak of axes structures.
15577
15578         * gtk/gtkcontainer.c: Call process_all_updates at end
15579         of resizing to reduce flicker. (Avoids having redraw
15580         lag arbitrarily behind resize under some circumstances)
15581
15582         * gtk/gtkentry.c: Remove old backing store code, and simply take
15583         advantage of the new backing store capabilities of GDK.
15584
15585         * gtk/gtkmain.c: Simple implementation of widget backing
15586         store - simply push a paint while handling each expose.
15587         (Should really be configurable widget for widget.)
15588         
15589         * gtk/gtkwidget.c: Remove all the old complicated redraw
15590         code, and simply invalidate the GDK windows from
15591         gdk_window_queue_clear(), etc. (Sigh, so much carefully
15592         debugged complexity ... gone to the winds.)
15593
15594         Remove all the code for suppressing expose events while
15595         resizes are pending; this isn't needed since the invalid
15596         areas won't be processed until after the resizes are
15597         processed, since they are in a lower priority idle.
15598
15599 Thu Feb 24 15:37:41 2000  Owen Taylor  <otaylor@redhat.com>
15600
15601         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Set width
15602         and height of dest rectangle for non-intersecting rectangles.
15603
15604 Sun Feb 20 16:47:31 2000  Owen Taylor  <otaylor@redhat.com>
15605
15606         * gtk/gtkwidget.h: Make GtkAllocation just a typedef
15607         for GdkRectangle.
15608
15609 Sun Feb 20 11:27:00 2000  Owen Taylor  <otaylor@redhat.com>
15610
15611         * gdk/gdk{events,image,private,types,window}.h
15612          gdk/x11/gdkinputprivate.h: Change all coordinates
15613          from int16 to int. Also, Change width and height from
15614          unsigned to signed to avoid all the stupid C 
15615          signedness bugs.
15616
15617 Sat Feb 19 12:01:53 2000  Owen Taylor  <otaylor@redhat.com>
15618
15619         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable):
15620         Use gdk_drawable_get_depth instead of gdk_drawable_get_visual.
15621         Add some more detailed checking.
15622
15623         * gdk/gdkdraw.c gdk/gdkdrawable.h (gdk_drawable_get_depth):
15624         New function to retrieve the depth of a drawable.
15625
15626         * gdk/gdkprivate.h (struct _GdkDrawablePrivate): Add a depth
15627         field, reorder fields to save memory. 
15628
15629 Mon Dec 13 14:06:03 1999  Owen Taylor  <otaylor@redhat.com>
15630
15631         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): Draw a small portion
15632         of the background image instead of scaling the background down to
15633         a line.
15634
15635         * gtk/gtk[hv]scrollbar.c (gtk_hscrollbar_size_allocate): Removed mysterious
15636         which temporarily set slider to wrong size.
15637
15638         * gtk/gtkaspectframe.c gtkbin.c: Remove unecessary calls to
15639         queue_clear().
15640
15641 Wed Nov 17 18:36:05 1999  Owen Taylor  <otaylor@redhat.com>
15642
15643 2000-03-23  Jonathan Blandford  <jrb@redhat.com>
15644
15645         * gtk/gtkpaned.c (gtk_paned_get_position): add getter.
15646
15647 2000-03-17  Tor Lillqvist  <tml@iki.fi>
15648
15649         * gdk/win32/gdkevents-win32.c: Remove the #ifndef
15650         USE_DISPATCHMESSAGE sections, we do want to use DispatchMessage.
15651
15652         * gdk/win32/gdkfont-win32.c
15653         * gdk/win32/gdkproperty-win32.c
15654         * gdk/win32/gdkselection-win32.c
15655         * gdk/win32/gdkwindow-win32.c: Add const to some arguments that are
15656         now declared such.
15657
15658 Wed Mar 15 02:59:38 PST 2000 Manish Singh <yosh@gimp.org>
15659
15660         * gtk/gtkvpaned.c: removed stray gutter_size reference, a 1.2 relic
15661
15662 Mon Mar 13 18:37:55 2000  Owen Taylor  <otaylor@redhat.com>
15663
15664         * gdk/gdkdnd.c: Fix a bunch of cases where XGetWindowProperty()
15665         is called without trapping X errors.
15666
15667 Fri Feb 25 10:48:53 2000  Owen Taylor  <otaylor@redhat.com>
15668
15669         * gtk/gtkrc.*: Fix problem where stray '"' characters found their
15670         way into the fontset lists.
15671
15672 Tue Feb 22 08:52:52 2000  Tim Janik  <timj@gtk.org>
15673
15674         * gtk/gtkthemes.h: add extern "C" scope.
15675
15676 Mon Feb 21 20:16:42 2000  Lars Hamann  <lars@gtk.org>
15677
15678         * gtk/gtkclist.c: applied  patch from Guy Harris <guy@netapp.com>
15679         to make appends to the list constant. (gtk-guy-990901-0.patch)
15680
15681 Mon Feb 14 22:50:10 2000  Tim Janik  <timj@gtk.org>
15682
15683         * gtk/gtktypeutils.c (gtk_type_init): use g_str_hash() and g_str_equal()
15684         for the typename hash table.
15685
15686 Mon Feb 14 15:01:23 2000  Owen Taylor  <otaylor@redhat.com>
15687
15688         * gtk/gtkpaned.c (gtk_paned_compute_position): Add some sanity checks
15689         to make sure we never divide by zero. 
15690         (Problem pointed out by Michal Jaegermann <michal@ellpspace.math.ualberta.ca>)
15691
15692 Mon Feb 14 12:29:38 2000  Owen Taylor  <otaylor@redhat.com>
15693
15694         * gtk/gtkfontsel.c: Apply patch from
15695         SHIRASAKI Yasuhiro <yasuhiro@awa.tohoku.ac.jp> to make font selector work a little
15696         better with 2-byte fonts. (Load a fontset instead of a font for two byte fonts.)
15697
15698         Also, some cleanups in atom handling.
15699
15700 Sun Feb 13 08:02:21 2000  Tim Janik  <timj@gtk.org>
15701
15702         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
15703         not GtkWidget.
15704
15705 Fri Feb 11 02:19:32 2000  Tim Janik  <timj@gtk.org>
15706
15707         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): 
15708         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): 
15709         * gtk/gtkpaned.c (gtk_paned_compute_position): had to squeeze some
15710         more guint wrap-around bugs before going to bed.
15711
15712 Thu Feb 10 16:16:35 2000  Tim Janik  <timj@gtk.org>
15713
15714         * gtk/gtkspinbutton.c (gtk_spin_button_size_allocate): guard against
15715         guint wrap arounds in allocation.width.
15716
15717         * gtk/gtktable.c (gtk_table_size_allocate_pass1): repeat shrinking
15718         process untill we fit the allocation given.
15719
15720 Tue Feb  8 09:38:29 2000  Tim Janik  <timj@gtk.org>
15721
15722         * gtk/gtkwidget.c:
15723         (gtk_widget_unrealize): guard widget access with ref/unref
15724         around signal emission.
15725         (gtk_widget_hide): same here, but also check its destroyed
15726         state before queueing a resize.
15727
15728 Tue Feb  8 03:05:55 2000  Tim Janik  <timj@gtk.org>
15729
15730         * gtk/gtkstyle.c (gtk_style_new): use gtk_default_prelight_bg instead
15731         of gtk_default_insensitive_bg as insensitive base color.
15732
15733         * gtk/gtktext.c (gtk_text_style_set): set the background color according
15734         to the widget's state.
15735         (gtk_text_realize): same here.
15736         (gtk_text_state_changed): same here.
15737         (draw_bg_rect): compare background color against base[] from
15738         GTK_WIDGET_STATE (text) not GTK_STATE_NORMAL.
15739
15740 Mon Feb  7 04:01:55 2000  Tim Janik  <timj@gtk.org>
15741
15742         * gtk/gtkmain.c (gtk_main_do_event): ignore delete events when
15743         grabs are active, unless a delete event is send to the toplevel
15744         of the currently grab holding widget.
15745
15746 Sun Feb  6 10:13:15 2000  Owen Taylor  <otaylor@redhat.com>
15747
15748         * gtk/gtkctree.c (gtk_ctree_drag_data_received): Remove
15749         debugging g_print's.
15750
15751 Fri Feb  4 15:54:54 2000  Owen Taylor  <otaylor@redhat.com>
15752
15753         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_request): Don't
15754         ever make the scrolled-window requisition ever depend on the 
15755         visibility state of the scrollbars for the AUTOMATIC policy. 
15756         This breaks the GTK+ requisition model, and causes loops.
15757
15758 Fri Feb  4 15:09:12 2000  Owen Taylor  <otaylor@redhat.com>
15759
15760         * gtk/gtkstyle.c (gtk_style_new): Set the charset explicitely for
15761         the default font to avoid problems with XFree86-4.0 where the
15762         default charset is iso10646-1, not iso8859-1.
15763
15764 Thu Feb  3 14:58:48 PST 2000 Manish Singh <yosh@gimp.org>
15765
15766         * acinclude.m4
15767         * config.guess
15768         * config.sub
15769         * ltconfig
15770         * ltmain.sh: upgrade to libtool 1.3.4 (bugfix only release)
15771
15772         * gtk/Makefile.am: minor cosmetic consistency tweak
15773
15774 Thu Feb  3 14:46:01 2000  Owen Taylor  <otaylor@redhat.com>
15775
15776         * gtk/gtkmenushell.c (gtk_menu_shell_button_release): Set
15777         the activate_time to 0, so that we handle a quick
15778         press/release press/release properly and don't suppress
15779         the second release. (Red Hat bug #7545)
15780
15781 Wed Feb  2 22:25:17 2000  Tim Janik  <timj@gtk.org>
15782
15783         * gtk/gtkctree.c (row_delete):
15784         (gtk_ctree_node_set_row_data_full): fixed very evil reentrancy
15785         bugs with destruction notifier, *always* update internal
15786         structures *before* calling user code.
15787
15788 Sun Jan 30 20:10:52 2000  Lars Hamann  <lars@gtk.org>
15789
15790         A few more fixes for bug #5487, #2051, #2677.
15791         * gtk/gtkclist.c : 
15792         (gtk_clist_button_press):  Reset clist->anchor to -1 if event->type is
15793         not GDK_BUTTON_PRESS.
15794         (resync_selection): resync only if selection_mode is
15795         GTK_SELECTION_EXTENDED
15796         * gtk/gtkctree.c (resync_selection): same here
15797
15798 Sun Jan 30 12:29:20 2000  Owen Taylor  <otaylor@redhat.com>
15799
15800         * gdk/gdk.h gtk/gtkmenu.h: Removed duplicate prototypes for
15801         gdk_drag_get_selection() and gtk_menu_detach().
15802
15803         [ From Jeroen Ruigrok/Asmodai ]
15804
15805 Sat Jan 29 10:11:56 2000  Owen Taylor  <otaylor@redhat.com>
15806
15807         * gtk/gtknotebook.c (gtk_notebook_size_request): 
15808         page->tab_label can be NULL.
15809
15810 2000-01-25  Havoc Pennington  <hp@pobox.com>
15811         
15812         * gdk/gdkwindow.c (gdk_window_set_back_pixmap): parent_relative
15813         arg is boolean
15814
15815         * gdk/gdkselection.c (gdk_selection_owner_set): return boolean
15816
15817         * gdk/gdkrectangle.c (gdk_rectangle_intersect): return boolean
15818
15819         * gdk/gdkproperty.c (gdk_property_get): return boolean
15820
15821         * gdk/gdkinput.c (gdk_input_set_mode): return boolean
15822
15823         * gdk/gdkim.c (gdk_im_ready): return boolean
15824
15825         * gdk/gdkgc.c (gdk_gc_set_exposures): gboolean arg
15826
15827         * gdk/gdkfont.c (gdk_font_equal): return gboolean (mild
15828         glib clash, should fix glib)
15829
15830         * gdk/gdkevents.c (gdk_set_show_events): take gboolean arg
15831         (gdk_get_show_events): return gboolean, and canonicalize 
15832         to TRUE/FALSE
15833
15834         * gdk/gdkcolor.c (gdk_colormap_new): gboolean flag whether the
15835         colormap is private
15836         (gdk_colors_alloc): gboolean whether to be contiguous
15837         (gdk_color_equal): return gboolean since we are a predicate
15838         and not a qsort() (this looks semi-wrong due to glib breakage,
15839         IMO glib should be fixed)
15840         
15841         * gdk/gdk.c (gdk_set_use_xshm): take gboolean arg
15842         (gdk_get_use_xshm): return gboolean
15843         (gdk_pointer_is_grabbed): return gboolean
15844
15845         * gdk/gdk.h: Change prototypes to match all the above changes,
15846         and re-run egtk-format-protos as required.
15847
15848 Fri Jan 28 12:28:17 2000  Owen Taylor  <otaylor@redhat.com>
15849
15850         * gtk/gtkctree.c (resync_selection): 
15851         * gtk/gtkclist.c (resync_selection):
15852
15853         Return immediately if clist->drag_pos < 0. This is a workaround
15854         for the corrupt state that the clist gets into when a
15855         GDK_2BUTTON_PRESS occurs. See note in gtk_clist_button_press().
15856
15857         Bug #5487, #2051, #2677; fix suggested by David Helder and T. Alexander Popiel.
15858         
15859         * gtk/gtknotebook.c (gtk_notebook_size_request): Fix uninitialized
15860         variable from recent commit.
15861
15862 Thu Jan 27 15:22:09 2000  Owen Taylor  <otaylor@redhat.com>
15863
15864         * gtk/gtkdnd.c (gtk_drag_begin): Fix stupid typo in last commit.
15865
15866 Thu Jan 27 18:00:55 2000  Tim Janik  <timj@gtk.org>
15867
15868         * gtk/Makefile.am: prefix all autogenerated source that get build in
15869         $(srcdir) with $(srcdir)/, so make doesn't assume they got generted
15870         in builddir. since we subsequently cd into srcdir for autogeneration,
15871         the paths have to be stripped from the target file names, thusly we
15872         use $(@F) as target names now.
15873         put a comment about configure.in's --disable-rebuilds option,
15874         which can be used for non-writable source directories, for development
15875         setups though, srcdir has to be *writable*.
15876
15877 hu Jan 27 00:15:03 2000  Owen Taylor  <otaylor@redhat.com>
15878
15879         * gtk/gtkdnd.c (gtk_drag_begin gtk_drag_get_event_actions):
15880           Finish the job of allowing event to be NULL.
15881           (Fixes bug #4283, reported by Chris Blizzard)
15882
15883         * gtk/gtkentry.c (entry_adjust_scroll): When calculating
15884           things so that the cursor appears on screen, properly
15885           take into account INNER_BORDER.
15886           (Fixes bug #4754, reported by Antonio Campos)
15887
15888 Wed Jan 26 23:12:28 2000  Owen Taylor  <otaylor@redhat.com>
15889
15890         * gtk/gtknotebook.c (gtk_notebook_map): Don't
15891           show the tab_label unless it itself is visible.
15892
15893           gtk/gtknotebook.c (gtk_notebook_size_request):
15894           Do a better job of making sure that the visibility
15895           of the tab label corresponds to whether it should
15896           be mapped or not.
15897
15898 Wed Jan 26 21:17:03 2000  Owen Taylor  <otaylor@redhat.com>
15899
15900         * gtk/gtkoptionmenu.c (gtk_option_menu_position):
15901           Use the requisition, not the allocation, since the
15902           allocation has not necessarily been computed yet.
15903           (Pointed out by Eugene Osintsev)
15904
15905 Wed Jan 26 19:44:25 2000  Owen Taylor  <otaylor@redhat.com>
15906
15907         * gtk/gtkstyle.c (gtk_style_new): Dont' set
15908           style/base[GTK_STATE_INSENSITIVE] both to
15909           gtk_default_insensitive_bg!
15910           (Bug #2187, reported by Jonathan Blandford)
15911
15912         * gtk/gtkaccelgroup.c (gtk_accelerator_valid):
15913           Add Alt_L, Alt_R to list of invalid accelerators.
15914           (Bug #3736, reported by Vlad Harchev)
15915
15916 Wed Jan 26 19:01:56 2000  Owen Taylor  <otaylor@redhat.com>
15917
15918         * gtk/gtkfilesel.c (open_ref_dir): Fix several
15919         bugs which occured after an attempt to open 
15920         invalid home directory left cmpl_state->reference_dir == NULL.
15921
15922          - completion on files in home directory didn't work
15923          - completion on an empty string caused  segfault
15924
15925          (Bug #3678, reported by Steve Ratcliffe)
15926
15927         * gtk/gtkscale.c (gtk_scale_get_value_width): Fix
15928         cut and paste error that was causing scales to
15929         be incorrectly positioned.
15930         (Bug #2956,
15931          patch from Steve Ratcliffe <steve@parabola.demon.co.uk>)
15932
15933 2000-01-27  Shirasaki Yasuhiro  <yasuhiro@gnome.gr.jp>
15934
15935         * acinclude.m4 (AM_GTK_WITH_NLS): Add -lintl to libs
15936         when checking for dcgettext, if we've found we needed
15937         it for dgettext.
15938 +
15939 Wed Jan 26 18:06:07 2000  Owen Taylor  <otaylor@redhat.com>
15940
15941         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
15942         queue_clear on NO_WINDOW widgets during a reparent,
15943         since at that point the window and widget heirarchies
15944         are out of sync. This stops crashing in some cases
15945         (the scrolled window reparent test, for instance), and
15946         _probably_ won't cause drawing errors.
15947
15948         * gtk/testgtk.c: Make the reparenting-a-scrolled-window
15949         test do what it was supposed to do and be robust against
15950         window closings, etc. (Bug #2443)
15951
15952 Wed Jan 26 16:56:54 2000  Owen Taylor  <otaylor@redhat.com>
15953
15954         * gtk/gtkentry.c: Fix return values on mouse events.
15955         (Bug #2686, Sky <seb_sky@yahoo.com>)
15956
15957         * gtk/genmarshal.pl: Fix up handling of FOREIGN.
15958         (pointed out by George Lebl)
15959
15960         * gdk/gdkcolor.c (gdk_color_copy): Made const-safe.
15961         (From Ettore Perazzoli  <ettore@helixcode.com>)
15962  
15963 Mon Jan 24 10:44:48 2000  Owen Taylor  <otaylor@redhat.com>
15964
15965         * gtk/gtkcalendar.c (gtk_calendar_main_button): Handle
15966         clicks between rows or outside calender area correctly.
15967         (Patch from Damon Chaplin)
15968
15969         * gtk/gtkclist.c (gtk_clist_set_row_data_full): 
15970         * gtk/gtkctree.c (gtk_ctree_node_set_row_data_full): 
15971           Call destroy function when overwriting existing data. 
15972           (Pointed out by Damon Chaplin)
15973
15974 Tue Jan 25 09:55:41 2000  Owen Taylor  <otaylor@redhat.com>
15975
15976         * gdk/gdk.c: Remove useless #include of <X11/Xmu/WinUtil.h>,
15977           which was causing problems on various systems with Xmu.
15978           This hasn't been needed for a very long time.
15979           (Fixes #1185 3167)
15980
15981 Sun Jan 23 22:27:36 2000  Owen Taylor  <otaylor@redhat.com>
15982
15983         * gdk/gdki18n.h: Include <ctype.h> when defining
15984           gdk_isw* in terms of is* as a fallback.
15985           (Bug #4106 - Dan Winship <danw@MIT.EDU>)
15986
15987 Sun Jan 23 22:12:36 2000  Owen Taylor  <otaylor@redhat.com>
15988
15989         * gtk/gtkviewport.c (gtk_viewport_size_allocate): Don't
15990           realize the widget when it is size allocated!
15991           (old, old bug)
15992
15993         * gtk/gtkviewport.c (gtk_viewport_adjustment_value_changed):
15994           Removed unused call to gdk_window_get_size() that
15995           showed up when the above was fixed.
15996
15997 Sat Jan 22 15:44:30 2000  Owen Taylor  <otaylor@redhat.com>
15998
15999         * gtk/gtkwidget.c (gtk_widget_reparent): Correctly
16000           fix up widget->window when the widget is a
16001           NO_WINDOW container widget.
16002
16003 Sat Jan 22 12:40:48 2000  Owen Taylor  <otaylor@redhat.com>
16004
16005         * gdk/gdkpixmap.c (gdk_pixmap_seek_string): Rewrite
16006           to account for the fact that feof() does _not_ 
16007           return TRUE on errors, and thus avoid infinite loops
16008           when trying to use gdk_pixmap_create_from_xpm()
16009           on unreadable values.
16010
16011 Fri Jan 21 18:32:43 2000  Owen Taylor  <otaylor@redhat.com>
16012
16013         * gtk/gtkaspectframe.h (struct _GtkAspectFrame): s/gint/gboolean/.
16014
16015 Fri Jan 21 16:24:08 2000  Owen Taylor  <otaylor@redhat.com>
16016
16017         * gdk/gdkgc.c (gdk_gc_set_dashes): Change from
16018           gdk_gc_set_dashes to take gint8 instead of gchar to
16019           make it clearer that it is _not_ a NULL terminated string.
16020
16021         * gdk/gdk.h gdk/gdkfont.c gdk/gdkgc.c gdk/gdkselection.c
16022           gdk/gdkwindow.c gtk/gtkprogress.[ch] gtk/gtkthemes.[ch]
16023           gtk/gtktreeitem.[ch] gtk/gtkwidget.[ch]: Constify string
16024           arguments.
16025
16026 Thu Dec 30 04:51:05 1999  Tim Janik  <timj@gtk.org>
16027
16028         * gtk/gtkvscale.c (gtk_vscale_pos_background): 
16029         * gtk/gtkhscale.c (gtk_hscale_pos_background): when calculating the
16030         background size relative to our allocation, guard against small
16031         allocations, we may have not yet been size allocated.
16032
16033 Thu Dec  2 10:59:14 1999  Owen Taylor  <otaylor@redhat.com>
16034
16035         * gdk/gdkdnd.c (xdnd_check_dest): Allow version >= 3,
16036         not just version == 3. We implement all 3 + most of 4 - 
16037         (we don't support matching text/plain;charset=iso-8859-1
16038         to a dest that expects text/plain). We'll still advertise
16039         3 to be safe, but any client implementing version >= 3
16040         must interoperate with 3.
16041         
16042 Tue Mar 14 11:53:31 2000  Owen Taylor  <otaylor@redhat.com>
16043
16044         * gtk/gtktooltips.[ch] (struct _GtkTooltips): Remove foreground,
16045         background and gc members, add a warning in gtk_tooltips_set_color()
16046         indicating that this function is deprecated.
16047
16048 Thu Mar  9 22:10:56 GMT 2000  Tony Gale <gale@gtk.org>
16049
16050         * docs/gtkfaq.sgml: FAQ Update:
16051           - Minor cleanups (Emmanuel, me)
16052           - New questions:
16053                 I need to add a new signal to a GTK+ widget. Any idea? (timj)
16054                 How can I retrieve the text from a GtkMenuItem? (timj)
16055                 How do I validate/limit/filter the input to a GtkEntry? (me)
16056                 Memory does not seem to be released when I free the list
16057                         nodes I've allocated (timj)
16058
16059 2000-03-07  Tor Lillqvist  <tml@iki.fi>
16060
16061         * gdk/win32/gdkmain-win32.c: Internal GDK error reporting changes:
16062         (gdk_win32_gdi_failed) New function for reporting errors from GDI,
16063         for which it is no use to call GetLastError onWin9x.
16064         (gdk_other_api_failed) New function, for general error
16065         reporting without calling GetLastError.
16066         (gdk_win32_api_failed) OTOH, this function always calls
16067         GetLastError. (gdk_win32_last_error_string) Remove this function,
16068         GLib has the equivalent now.
16069
16070         * gdk/win32/gdkprivate-win32.h: Declare the above, and macros to
16071         call them with function name, file name and line number in the
16072         arguments.
16073
16074         * gdk/win32/*.c: Use the new macros for reporting errors from GDI
16075         functions.
16076         
16077         * gtk/gtk.def: Add some missing entry points.
16078
16079         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
16080         gtk_paned_set_gutter_size, which don't exist any longer, as void.
16081         
16082         Fixes by Hans Breuer:
16083
16084         * gdk/makefile.msc: Update for debugging.
16085
16086         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_dashes): Fake
16087         implementation, just use the PS_DASH, PS_DOT, PS_DASHDOT or
16088         PS_DASHDOTDOT or PS_DASH styles depending on the number of entries
16089         in the dash_list.
16090
16091         * gdk/win32/gdkwin32.h (GDK_FONT_XFONT): New macro, similar as in
16092         the x11 backend.
16093
16094         * gdk/win32/gdkprivate-win32.h (IS_WIN_NT): New macro.
16095
16096         * gtk/testgtk.c: Include config.h, guard inclusion of unistd.h.
16097
16098 2000-03-04  Tor Lillqvist  <tml@iki.fi>
16099
16100         * gdk/win32/gdkprivate-win32.h (struct _GdkWindowWin32Data): Store
16101         just pixel value of background colour.
16102
16103         * gdk/win32/gdkgc-win32.c (gdk_colormap_color): New function
16104         containing code snippet previously duplicated in a couple of
16105         places.
16106         
16107         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_points): Use
16108         gdk_colormap_color.
16109
16110         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Generate
16111         GDK_SCROLL events for WM_MOUSEWHEEL messages. Don't generate
16112         events for autorepeated Shift, Control and Alt keys. Use
16113         gdk_colormap_color.
16114
16115         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): If the
16116         pointer is inside the window the cursor of which we are setting,
16117         call SetCursor immediately.
16118
16119         * gdk/win32/makefile.cygwin
16120         * gtk/makefile.cygwin: If we don't have the build number stamp
16121         file, use zero.
16122
16123         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
16124         gtk_paned_set_gutter_size as empty.
16125
16126         * gtk/gtk.def: Remove gtk_paned_set_gutter_size.
16127         
16128 Tue Feb 29 13:10:00 GMT 2000  Tony Gale <gale@gtk.org>
16129
16130         * gdk/gdkwindow.h gdk/x11/gxid.c gtk/gtkclist.c gtk/gtkclist.h
16131           gtk/gtkctree.c gtk/gtkmenu.h gtk/gtkwidget.c gtk/testgtk.c
16132           docs/styles.txt docs/refcounting.txt docs/gtkfaq.sgml
16133           docs/gtk_tut.sgml docs/gtk.texi TODO:
16134
16135           Spelling/grammar fixes from Martin Buchholz <martin@xemacs.org>
16136
16137 Sat Feb 26 11:46:25 GMT 2000  Tony Gale <gale@gtk.org>
16138
16139         * gtk/gtkcalendar.c: Implement num_marked_dates,
16140           and don't emit mutiple day_selected signals on
16141           month_prev.
16142
16143 2000-02-25  Jonathan Blandford  <jrb@redhat.com>
16144
16145         * docs/make-todo (lineno): let title and logo be configurable so
16146         that GNOME can use this script too.
16147
16148         * TODO.xml: added logourl and a title
16149
16150 Fri Feb 25 11:12:00 2000  Owen Taylor  <otaylor@redhat.com>
16151
16152         * TODO.xml: Added some UI items, and an explanatory
16153         comment at the top of the file.
16154
16155 Thu Feb 24 09:07:28 2000  Tim Janik  <timj@gtk.org>
16156
16157         * TODO.xml: some updates, added abunch of new entries.
16158         a note for those fiddeling with this file, when done
16159         with it, invoke:
16160         $ ./docs/make-todo TODO.xml >/dev/null
16161         and correct output errors before comitting changes.
16162
16163 Wed Feb 23 22:59:50 2000  Owen Taylor  <otaylor@redhat.com>
16164
16165         * TODO.xml: Added XML-structured TODO file.
16166         * docs/make-todo: python script to turn TODO.xml into
16167           pretty XML output. 
16168
16169 2000-02-23  Jonathan Blandford  <jrb@redhat.com>
16170
16171         * gtk/gtkstyle.c (gtk_default_draw_handle): add a 'paned' mode to
16172         the function to let it draw the seven dots, instead of the old,
16173         much maligned, method.
16174         (draw_dot): New function to draw a dot.
16175
16176         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): changed allocation
16177         to draw the handle inside the border width as opposed to outside.
16178         Use paint function instead of gdk_draw_point.
16179
16180         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): changed allocation
16181         to draw the handle inside the border width as opposed to outside.
16182         Use paint function instead of gdk_draw_point.
16183
16184         * gtk/gtkfilesel.c (gtk_file_selection_update_history_menu):
16185         Change indenting to be more GTK like.
16186
16187 Wed Feb 23 10:54:14 GMT 2000  Tony Gale <gale@gtk.org>
16188
16189         * docs/gtk_tut.sgml: New section on GtkCalendar
16190         * examples/calendar: Update example code
16191
16192 Tue Feb 22 13:54:12 GMT 2000  Tony Gale <gale@gtk.org>
16193
16194         * docs/gtkfaq.sgml: FAQ Update
16195
16196 2000-02-19  Anders Carlsson  <andersca@gnu.org>
16197
16198         * gtk/gtkrange.c (gtk_range_scroll_event): Return TRUE
16199         to prevent the scroll event to be propagated upwards.
16200
16201 Fri Feb 18 14:37:29 2000  Owen Taylor  <otaylor@redhat.com>
16202
16203         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Remove
16204         OwnerGrabButtonMask from button entries for
16205         GDK_BUTTON_PRESS / GDK_BUTTON_RELEASE.
16206
16207         * gtk/gtklayout.c (gtk_layout_realize): Always add GDK_SCROLL
16208         to the event mask (which will result in button/press release
16209         being added to the event mask on Unix) so scrolling works
16210         for layouts in scroll windows.
16211
16212         * gdk/gdkevents.h (enum): Fix up GDK_ALL_EVENTS_MASK.
16213
16214         Patch from Anders Carlsson  <andersca@gnu.org> to add
16215         a scroll event.
16216
16217         * gtk/testgtk.c (scroll_test_scroll): Added an example of mouse wheel
16218         scrolling to the "Test Scrolling" part of testgtk.
16219  
16220         * gtk/gtkwidget.h (struct _GtkWidgetClass): Added scroll_event signal.
16221  
16222         * gtk/gtkwidget.c: Added "scroll_event" GTK+ signal and matched
16223         it against GDK_SCROLL.
16224  
16225         * gtk/gtkrange.c (gtk_range_scroll_event): Updated to use the new
16226         way of mouse wheel scrolling.
16227  
16228         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_scroll_event): Likewise.
16229  
16230         * gtk/gtkspinbutton.c (gtk_spin_button_scroll): Likewise.
16231  
16232         * gtk/gtkmain.c: Removed previous mouse wheel hack.
16233  
16234         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Added entry in
16235         gdk_event_mask_table.
16236  
16237         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Added 
16238         GdkEventScroll handler.
16239  
16240         * gdk/gdkevents.h: Added GdkEventScroll structure.
16241  
16242 Thu Feb 17 17:10:12 2000  Owen Taylor  <otaylor@redhat.com>
16243
16244         * gtk/gt{h,k,}vpaned.[ch]: Add patch from Jonathan Blandford
16245         and Anders Carlsson to change the Paned widgets so that they
16246         can be dragged from anywhere along the length. Also change
16247         the way that this is drawn to make this apparent.
16248
16249         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): Apply patch
16250         from George Lebl to check that option_menu->menu is present
16251         before getting history.
16252
16253 2000-02-14  Tor Lillqvist  <tml@iki.fi>
16254
16255         * gdk/gdkdraw.c (gdk_draw_segments): Move the test for no segments
16256         before the assertion for non-NULL segment list.
16257
16258         * gdk/win32/gdkgc-win32.c: (gdk_win32_gc_values_to_win32values):
16259         Seems that pattern brushes *must* be 8x8 pixels! At least on my
16260         machine, but it might be display driver dependent. Sigh, so make
16261         sure the stipple is that size. Does Windows suck or what?
16262
16263         * gdk/win32/gdkdrawable-win32.c: Improve error handling in a few
16264         places.
16265
16266 2000-02-13  Havoc Pennington  <hp@pobox.com>
16267
16268         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): init
16269         refcount to 1
16270         (gdk_cursor_new): init refcount to 1
16271
16272         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new): init refcount to 1
16273
16274 2000-02-13  Tor Lillqvist  <tml@iki.fi>
16275
16276         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Add an extra parameter
16277         so that we don't have to do unnecessary settings to the HDC.
16278
16279         * gdk/win32/gdkdrawable-win32.c
16280         * gdk/win32/gdkimage-win32.c: Corresponding changes to the calls of
16281         gdk_gc_predraw.
16282
16283         * gdk/win32/gdkdrawable-win32.c: Special-casing for GdkGCs where
16284         the fill style is GDK_OPAQUE_STIPPLED. In those cases we construct
16285         GDI paths, call WidenPath to get the outline of the stroken path,
16286         and then fill the outline (with the brush that was built from the
16287         stipple).
16288
16289         * gdk/win32/gdkgc-win32.c: Factor out common code from
16290         _gdk_win32_gc_new and gdk_win32_gc_set_values into
16291         gdk_win32_gc_values_to_win32values. Use correct colour for
16292         SetBkColor() (Until now the code actually used a random colour in
16293         the call to SetBkColor()... but that didn't show up as not many
16294         GDI APIs use the background colour. Pattern (opaque stippled)
16295         brushes do.)
16296
16297         * gdk/win32/gdkmain-win32.c (gdk_win32_last_error_string,
16298         gdk_win32_api_failed): New functions for error logging.
16299
16300         * gdk/win32/gdkprivate-win32.h: Declare them, and define a macro
16301         WIN32_API_FAILED to call them, passing function or file name and
16302         line number.
16303
16304         * gdk/win32/*.c: Use the WIN32_API_FAILED macro.
16305
16306         * gdk/win32/gdkprivate-win32.h: Store just the pixel values from
16307         GdkColor for foreground and background in GdkGCWin32Data.
16308
16309         * gdk/makefile.cygwin: Link in the resource object separately.
16310
16311         * gdk/win32/rc/gdk.rc
16312         * gtk/gtk.rc (New file)
16313         * gdk/win32/makefile.cygwin
16314         * gtk/makefile.cygwin: Update build number in DLLs automatically,
16315         as in GLib.
16316
16317 Sun Feb 13 08:54:45 2000  Tim Janik  <timj@gtk.org>
16318
16319         * gdk/gdkcursor.h (struct _GdkCursor): s/refcount/ref_count/.
16320         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): 
16321         * gdk/x11/gdkcursor-x11.c (_gdk_cursor_destroy): 
16322         * gdk/gdkcursor.c (gdk_cursor_ref): insert assertments for the
16323         parameters given and cursor->ref_count. coding style fixups.
16324
16325         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
16326         not GtkWidget.
16327         
16328         * gtk/*.h: applied patch from Mathieu Lacage <lacage@email.enst.fr> to
16329         fix up widget macros and add _GET_CLASS() variant.
16330         
16331         * gtk/*.c: some GtkType fixups.
16332
16333 2000-02-09  Tor Lillqvist  <tml@iki.fi>
16334
16335         * gdk/win32/gdkproperty-win32.c
16336         * gdk/x11/gdkproperty-x11.c: The assertions for GDK_IS_WINDOW
16337         were reversed.
16338
16339 2000-02-04  Tor Lillqvist  <tml@iki.fi>
16340
16341         * gdk/win32/gdkfont-win32.c (logfont_to_xlfd): Use
16342         g_filename_to_utf8 to convert the font names Windows gives us from
16343         whatever is the default codepage to UTF-8.
16344         (gdk_font_load_internal) Use g_filename_from_utf8 for conversion
16345         in the other direction.
16346
16347         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Fix cut&paste
16348         error in debugging output.
16349
16350 2000-02-02  Tor Lillqvist  <tml@iki.fi>
16351
16352         * gdk/win32/gdkwindow-win32.c (gdk_window_clear): Pass zero width
16353         and height parameters to gdk_window_clear_area(). Not minus one.
16354
16355 Wed Feb  2 11:58:05 2000  Owen Taylor  <otaylor@redhat.com>
16356
16357         * gtk/gtkdnd.c (gtk_drag_selection_received): Add some sanity
16358         checks if the widget passed to gtk_drag_get_data() was not the
16359         dest widget.
16360
16361 2000-02-01  Tor Lillqvist  <tml@iki.fi>
16362
16363         * gtk/gtkfilesel.c: Use the g_filename_to_utf8 and
16364         g_filename_from_utf8 functions (which were added a moment ago to
16365         GLib). Some cleanups: Use gbooleans. Use GStrings instead of fixed
16366         size buffers.
16367
16368         gtk_file_selection_get_filename returns the filename in the C
16369         runtime encoding. It calls g_filename_from_utf8, but copies the
16370         returned string to a static buffer, which is returned. I think
16371         this is better than returning the result from g_filename_from_utf8
16372         directly, which would mean all apps that use it would have to free
16373         the return value. Or should this function care about this issue at
16374         all? Maybe a new function with clearly defined semantics.
16375
16376         * gtk/gtkfilesel.h: Add comment about
16377         gtk_file_selection_get_filename returning the filename in the C
16378         runtime's encoding.
16379
16380         * README.win32
16381         * gdk/gdk.def
16382         * gdk/makefile.{cygwin,msc}
16383         * gtk/gtk.def: Updates.
16384
16385         * gdk/gdkcursor-win32.c: Initialise refcount.
16386
16387 2000-01-31  Yuan-Chung Cheng <platin@linux.org.tw>
16388
16389         * configure.in: Added "zh_CN.GB2312" to ALL_LINGUAS.
16390
16391 2000-01-30  Havoc Pennington  <hp@pobox.com>
16392
16393         * gtk/testgtk.c (set_cursor): use gdk_cursor_unref instead of
16394         destroy
16395
16396         * gdk/gdkimage.c (gdk_image_ref): image wasn't being returned
16397
16398         * gdk/gdkprivate.h: declare _gdk_cursor_destroy which is then 
16399         implemented in platform-specific code
16400
16401         * gdk/Makefile.am (gdk_c_sources): add gdkcursor.c
16402
16403         * gdk/x11/gdkcursor-x11.c (gdk_cursor_destroy): rename with an
16404         underscore in front
16405
16406         * gdk/win32/gdkcursor-win32.c (gdk_cursor_destroy):
16407         put an underscore in front
16408
16409         * gdk/gdkcursor.c: new file, implements
16410         gdk_cursor_ref/gdk_cursor_unref
16411
16412         * gdk/gdkcursor.h: Refcount GdkCursor
16413
16414         * gdk/gdkcompat.h (gdk_cursor_destroy): compat
16415
16416 2000-01-29  Tor Lillqvist  <tml@iki.fi>
16417
16418         * gdk/gdkwindow.h
16419         * gdk/gdkpixmap.h: Remove prototypes for renamed functions.
16420
16421 Tue Jan 25 11:43:21 2000  Owen Taylor  <otaylor@redhat.com>
16422
16423         * gtk/gtkinvisible.h (struct _GtkInvisible[Class]): Fix
16424         structures to properly inherit from GtkWidget not GtkBin.
16425
16426 Sun Jan 23 20:28:24 2000  Owen Taylor  <otaylor@redhat.com>
16427
16428         * gtk+.spec.in: Added lib/gtk+/include/* to %files
16429         (bug #5178 - Peter Wainright)
16430         
16431         * gtk/Makefile.am (gtk_public_h_sources): Add gtkcompat.h
16432         so that it will be installed.
16433         (bug #4889 - "david d `zoo' zuhn" <zoo@mnnr.org>)
16434
16435 Fri Jan 21 16:29:28 2000  Owen Taylor  <otaylor@redhat.com>
16436
16437         * gtk/gtkstyle.[ch] docs/Changes-1.4.txt: Make the @detail argument
16438         for the GtkStyleClass vtable const.
16439
16440         * gtk/gtkitemfactory.[ch] docs/Changes-1.4.txt: Make GtkPrintFunc
16441         take a const string argument like GtkTranslateFunc. This will
16442         require changes in use code.
16443
16444 2000-01-19  Tor Lillqvist  <tml@iki.fi>
16445
16446         * gdk/win32/gdkwindow-win32.c (gdk_window_clear_area): The correct
16447         semantics (to mimic the X11 backend, which just calls XClearArea)
16448         is to check for zero width (and height), and in that case use the
16449         window's width minus x (height minus y). This fixes for instance
16450         some redraw problems with gtkclist, which were easily noticeable
16451         in the gtk file selection widget.
16452
16453         (gdk_window_new): Don't set WS_EX_TOPMOST for dialog
16454         windows.
16455
16456 2000-01-13  Tor Lillqvist  <tml@iki.fi>
16457
16458         * configure.in
16459         * gdk/Makefile.am
16460         * gdk/x11/Makefile.am
16461         * gdk/win32/Makefile.am: Small fixes, thanks to Peter Wainwright
16462         (bug #5177).
16463         * gdk/win32/gdkcc-win32.c: Reintroduce, to be thrown
16464         out later.
16465
16466 2000-01-09  Tor Lillqvist  <tml@iki.fi>
16467
16468         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Ignore
16469         WM_MOVE for iconified or invisible windows. This fixes various
16470         problems when minimising windows. Thanks to Bernd Herd.
16471
16472 2000-01-05  Tor Lillqvist  <tml@iki.fi>
16473
16474         * gdk/gdkdraw.c (gdk_draw_lines): Fix copy&paste error: Call the
16475         backend's draw_lines method, not draw_points.
16476
16477 2000-01-02  Tor Lillqvist  <tml@iki.fi>
16478
16479         * gdk/win32/gdkevents-win32.c: Clean up some more leftovers from
16480         before Owen's reorganisation: Don't have queued_events and
16481         queued_tail statics in this file, but use gdk_queued_events and
16482         gdk_queued_tail. This makes exposure event compression work again.
16483
16484         (gdk_WindowProc): Comment out a posting of gdk_ping_msg, doesn't
16485         seem to be needed?
16486
16487 1999-12-30  Tor Lillqvist  <tml@iki.fi>
16488
16489         * gdk/gdk.c: If we don't HAVE_XCONVERTCASE we must #include
16490         gdkkeysyms.h to get the GDK_* keysym constants that are needed by
16491         gdk_keyval_convert_case(). Otherwise, gdk_keyval_convert_case()
16492         doesn't do anything.
16493
16494         * gdk/gdk.def: Add gdk_xid_table_insert.
16495
16496         * gdk/win32/gdkprivate-win32.h
16497         * gdk/win32/gdkevents-win32.c
16498         * gdk/win32/gdkinput-win32.c
16499         
16500         * gdk/win32/gdkwindow-win32.c: Remove the superfluous
16501         extension_events field in the GdkWindowWin32Data struct. Use only
16502         the extension_events field in GdkWindowPrivate. Previously one was
16503         set, and the other one tested, which broke tablet
16504         functionality. Thanks to Keishi Suenaga for pointing this out.
16505
16506 1999-12-18  Tor Lillqvist  <tml@iki.fi>
16507
16508         * gdk/win32/gdkfont-win32.c (gdk_text_size, gdk_text_extents):
16509         When handling a single character (text length == 1), don't handle
16510         it as if it was UTF-8.
16511
16512 1999-12-11  Tor Lillqvist  <tml@iki.fi>
16513
16514         * Makefile.am: Distribute README.win32.
16515         
16516         * gdk/Makefile.am
16517         * gdk/win32/Makefile.am: Distribute Win32 files.
16518
16519         * gdk/makefile.msc: New file.
16520
16521         * gdk/gdk.c (gdk_arg_context_parse): Fix gccism (no statement
16522         after label).
16523
16524         * gdk/gdkprivate.h: Must mark also gdk_error_warnings and
16525         gdk_error_code as GDKVAR, as they are referred outside GDK.
16526
16527         * gdk/win32/makefile.msc: Update.
16528
16529         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): More
16530         tweaks. Check only if at least one of those Unicode subrange bits
16531         we care for is set. If no code page bits are set, guess (wildly)
16532         based on the charset.
16533
16534         * gdk/win32/gdkinput-win32.c: Remove debugging leftover.
16535
16536         * gdk/win32/gdkwindow-win32.c (gdk_window_new): Assure title is
16537         non-NULL.
16538
16539         * gtk/gtkdnd.c
16540         * gtk/gtklayout.c
16541         * gtk/gtkplug.c
16542         * gtk/gtkselection.c
16543         * gtk/gtksocket.c
16544         * gtk/gtkwindow.c: Include x11/gdkx.h *or* win32/gdkwin32.c as
16545         appropriate. There must be a cleaner way to handle this?
16546
16547         * gtk/gtkrc.c: Must include windows.h on Win32.
16548
16549         * gtk/testgtk.c: No need to include gdkx.h.
16550
16551         * gtk/makefile.cygwin: Correct invokation of genmarshal.pl.
16552
16553 1999-12-07  Tor Lillqvist  <tml@iki.fi>
16554
16555         * gdk/win32/gdkfont-win32.c: Fix string measurement code. For now,
16556         the rbearing is set to the same as the width, but this should be
16557         fixed.
16558
16559 1999-12-06  Tor Lillqvist  <tml@iki.fi>
16560
16561         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): New
16562         function. If Windows doesn't tell us what Unicode subranges a font
16563         covers, guesstimate based on the codepages it covers. This will
16564         hopefully help those Windows versions or fonts that don't give us
16565         any useful Unicode subrange information with GetTextCharsetInfo.
16566         Call this function in gdk_font_load_internal.
16567
16568         * gdk/win32/{gdkdnd,gdkimage,gdkpixmap,gdkprivate}-win32.c: Misc
16569         minor changes.
16570
16571 Fri Dec  3 14:09:50 1999  Owen Taylor  <otaylor@redhat.com>
16572
16573         * gtk/gtkoptionmenu.[ch] (gtk_option_menu_get_history):
16574         New function, long needed.
16575
16576 Wed Dec  1 22:35:43 1999  Owen Taylor  <otaylor@redhat.com>
16577
16578         * gdk/gdkproperty.h x11/gdkproperty.c: Change 
16579         only_if_exists argument of gdk_atom_intern to
16580         bool.
16581
16582 1999-11-25  Tor Lillqvist  <tml@iki.fi>
16583
16584         * gdk/gdkgc.c (gdk_gc_set_ts_origin, gdk_gc_set_clip_origin): 
16585         Fix two copy&paste errors.
16586
16587         * gdk/makefile.cygwin: Also rebuild DLL when the static archive in
16588         win32 has changed.
16589
16590         * gdk/win32/gdkprivate-win32.h: Don't need CPINFO in the
16591         GdkWin32SingleFont struct.
16592
16593         * gdk/win32/gdkfont-win32.c: Some more debugging: Print Unicode
16594         subranges of loaded fonts. Clear font signature first, in case
16595         GetTextCharsetInfo fails. Pretend SYMBOL_CHARSET fonts have
16596         ASCII+Basic Latin (i.e. 0x40--0xFF) as they are single-byte.
16597
16598         * gdk/win32/gdkgc-win32.c: Improved logging. (gdk_gc_postdraw):
16599         Unoffset clip region.
16600
16601 1999-11-23  Tor Lillqvist  <tml@iki.fi>
16602
16603         * gdk/win32/gdkevents-win32.c (gdk_event_translate): set
16604         event->any.window before calling filter functions.
16605
16606 Fri Nov 19 10:34:41 1999  Owen Taylor  <otaylor@redhat.com>
16607
16608         * gtk/gtkgamma.h: Adapt cast macros to standard.
16609
16610 [ Merges from 1.2 ]
16611
16612 Tue Nov 16 10:15:54 1999  Owen Taylor  <otaylor@redhat.com>
16613
16614         * gtk/gtkitemfactory.c (gtk_item_factory_parse_path):
16615         If translation does not include a '/', use entire
16616         translation instead of crashing.
16617
16618 Sun Oct 31 22:21:11 1999  Tim Janik  <timj@gtk.org>
16619
16620         * docs/gtk_tut.sgml:
16621         s/gtk_accel_group_attach/gtk_window_add_accel_group/.
16622
16623 Sat Oct 30 09:09:09 1999  Owen Taylor  <otaylor@redhat.com>
16624
16625         * gtk/gtkselection.c (gtk_target_list_remove): Use
16626         g_list_remove_link, not g_list_remove.
16627
16628         [ From Geert Bevin <gbevin@thunderstorms.org> ]
16629         
16630 Sun Oct 24 07:41:40 1999  Tim Janik  <timj@gtk.org>
16631
16632         * gtk/gtkclist.c (real_undo_selection): commented out g_print()
16633         statement upon unselection (how the heck did that slip in?).
16634
16635 Sat Oct 23 03:03:08 1999  Tim Janik  <timj@gtk.org>
16636
16637         * gtk/gtktext.c (gtk_text_freeze): 
16638         (gtk_text_thaw): undraw/draw cursor here to avoid unnecessary scrolling
16639         in frozen state (and aparently crashes). patch provided by Anders
16640         Melchiorsen <and@kampsax.dtu.dk>.
16641
16642 Sat Oct 23 02:53:20 1999  Tim Janik  <timj@gtk.org>
16643
16644         * fix insensitive default/focus widget activation,
16645         reported by Matt Goodall <mgg@isotek.co.uk>.
16646
16647         * gtk/gtkwindow.c (gtk_window_key_press_event): 
16648         (gtk_window_activate_default):
16649         (gtk_window_activate_focus):
16650         return handled=FALSE for actiavtion of insensitive default
16651         widgets. return handled=TRUE for activation of insensitive
16652         focus widgets. don't activate in either case.
16653
16654 Tue Oct 19 09:55:08 1999  Owen Taylor  <otaylor@redhat.com>
16655
16656         * gtk-config.in (lib_gtk): Switch order of @x_cflags@
16657         and $glib_cflags to match library order and in the
16658         theory that an old version of GLib is more likely to
16659         be in the include directory for X then vice-versa.
16660         (Bug #2776)
16661
16662 Tue Oct 19 09:46:49 1999  Owen Taylor  <otaylor@redhat.com>
16663
16664         * gtk/gtkrc.c (gtk_rc_init): Always use LC_CTYPE 
16665         to determine the locale for fontsets, not LC_MESSAGES;
16666         the user may want English messages with a handling
16667         for non-English languages. (LC_CTYPE=ru_RU LC_MESSAGES=fr_FR
16668         will still be broken) (Bug #2891)
16669
16670 Tue Oct 19 20:36:42 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
16671
16672         * gtk/gtkrc.ko: Fixed the wrong number of "*"'s.
16673
16674 Tue Oct 19 12:15:13 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
16675
16676         * gtk/gtkrc.ko: Changed the Korean default fontset.
16677
16678 Fri Oct  8 02:32:47 1999  Owen Taylor  <otaylor@redhat.com>
16679
16680         * gtk/gtklayout.c (gtk_layout_adjustment_changed): Fix bug
16681         where when scrolling to the left or top double exposes
16682         were done, causing major slowdowns.
16683
16684 Thu Oct  7 18:31:55 1999  Owen Taylor  <otaylor@redhat.com>
16685
16686         * gtk/gtkrc.c (gtk_rc_init): Always normalize codeset
16687         names to lowercase and alphanumeric, before looking
16688         them up.
16689
16690         * gtk/Makefile.am: Install codeset variant gtkrc files
16691         with normalized names.
16692
16693 Thu Oct  7 22:52:42 1999  Tim Janik  <timj@gtk.org>
16694
16695         * gtk/gtkitemfactory.c (gtk_item_factory_popup_with_data): even
16696         popup menus when the menu is already visible, but its parent
16697         is still hidden, (happens after tornoff window got hidden).
16698
16699 Thu Oct  7 11:09:55 1999  Owen Taylor  <otaylor@redhat.com>
16700
16701         * gtk/Makefile.am (install-data-local): Fix
16702         a typo where gtkrc.vi_VN.tcvn5712 wasn't getting
16703         deleted, causing error messages on install.
16704
16705 Thu Oct  7 11:03:06 1999  Owen Taylor  <otaylor@redhat.com>
16706
16707         * gtk/gtk[hv]paned.c (gtk_{h,v}paned_draw): Redraw
16708         the handle as well, since we now sometimes ignore
16709         exposes on the handle while resizing.
16710
16711 Wed Oct  6 18:02:31 1999  Owen Taylor  <otaylor@redhat.com>
16712
16713         * gtk/gtkrc.c (gtk_rc_append_default_pixmap_path): Fix stupid
16714         extra g_free introduced in one of the last one or two 
16715         commits.
16716
16717 Wed Oct  6 16:38:36 1999  Owen Taylor  <otaylor@redhat.com>
16718
16719         * gtk/Makefile.am gtk/gtkrc*: Make naming of gtkrc files
16720         consistent, put each style that a gtkrc.* file creates
16721         in a unique namespace, remove old files before installing.
16722
16723 Wed Oct  6 14:31:16 1999  Owen Taylor  <otaylor@redhat.com>
16724
16725         * gtk/gtkrc.c (gtk_rc_init): Avoid leaking memory when
16726         gtk_rc_init is called multiple times. (Yes, people who
16727         do that have bugs in their code.)
16728
16729 Tue Oct  5 11:36:57 PDT 1999 Manish Singh <yosh@gimp.org>
16730
16731         * gtk/Makefile.am: listing gtkrc in gtkconf_DATA seems to barf.
16732         Remove it since it's generated by the Makefile anyway
16733
16734 Tue Oct  5 02:43:41 1999  Owen Taylor  <otaylor@redhat.com>
16735
16736         * gdk/gdkinputcommon.h (gdk_input_device_new): Free
16737         device->info.axes for core pointer.
16738
16739 Thu Sep 30 13:55:25 1999  Owen Taylor  <otaylor@redhat.com>
16740
16741         * gtk/testgtk.c (destroy_idle_test): Rename idle to 
16742         idle_id, to deal with obsolete, broken C libraries.
16743
16744 Mon Sep 27 02:50:15 1999  Owen Taylor  <otaylor@redhat.com>
16745
16746         * gtk/gtkvscale.c (gtk_vscale_draw): Don't add in
16747         allocation->x/y twice!
16748
16749         * gtk/gtkhscale.c: Make usage of gtk_hscale_pos_trough()
16750         consistent with gtk_vscale_pos_trough().
16751
16752 Sun Sep 26 19:44:34 1999  Owen Taylor  <otaylor@redhat.com>
16753
16754         * gtk/gtkcontainer.c (gtk_container_queue_resize): We may
16755         be queueing a resize on a toplevel container between
16756         the time we show it and when we map it. So, we need
16757         to test GTK_WIDGET_VISIBLE() for toplevels, and only
16758         use GTK_WIDGET_DRAWABLE() for child windows.
16759
16760 Thu Sep 23 16:41:03 1999  Owen Taylor  <otaylor@redhat.com>
16761
16762         * gtk/Makefile.am (LDADDS): Add GDK_WLIBS to LDADDS 
16763         (fixes bug #2144)
16764
16765 Fri Sep 24 00:51:45 1999  Tim Janik  <timj@gtk.org>
16766
16767         * gtk/gtkcontainer.c (gtk_container_queue_resize): check for
16768         container DRAWABLE (instead of VISIBLE), so we don't queue
16769         resizes on non-toplevel containers.
16770
16771 Sun Sep 19 18:13:31 1999  Owen Taylor  <otaylor@redhat.com>
16772
16773         * gtk/gtkselection.[ch]: Make the data argument
16774         const guchar *.
16775
16776 Sat Sep 18 21:27:40 1999  Owen Taylor  <otaylor@redhat.com>
16777
16778         * gtk/gtkwindow.c: Try to behave sensibly if 
16779         the focus widget is the window itself. (Should
16780         we allow this at all?)
16781
16782 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
16783
16784         * gtk/gtkwidget.c (gtk_widget_set_sensitive): 
16785         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): 
16786         * gtk/gtknotebook.c (gtk_notebook_set_show_border): 
16787         * gtk/gtkclist.c (gtk_notebook_set_show_border): make gboolean args
16788         in prototypes and implementations consistent (Tomas Ogren).
16789
16790         * gtk/gtklayout.c (gtk_layout_remove): unset GTK_IS_OFFSCREEN flag
16791         before the widget is unparented (reported by damon).
16792
16793         * gtk/gtkdnd.c: make the cursor and icon data _unsigned_ char,
16794         since we provide unsigned data anyways.
16795
16796 Thu Sep 16 21:32:01 1999  Owen Taylor  <otaylor@redhat.com>
16797
16798         * gtk/gtktooltips.c (gtk_tooltips_set_tip): Delay
16799         the call to gtk_tooltips_layout_text() until later.
16800
16801         * gtk/gtktooltips.c (gtk_tooltips_draw_tips):
16802         Call gtk_widget_ensure_style() before using the style.
16803
16804 Wed Sep 15 02:52:19 1999  Owen Taylor  <otaylor@redhat.com>
16805
16806         * gtk/gtkwidget.c (gtk_widget_event): Added workaround
16807         for old widgets that don't propagate draws to all
16808         children. (Namely gnome-dock for gnome-libs <= 1.0.16)
16809
16810 Tue Sep 14 19:22:19 1999  Tim Janik  <timj@gtk.org>
16811
16812         * gtk/gtkwidget.c (gtk_widget_queue_resize): don't queue the parent
16813         for a redraw but just the widget that requested the resize.
16814
16815 Tue Sep 14 18:29:47 1999  Tim Janik  <timj@gtk.org>
16816
16817         * gtk/gtkcontainer.c: added new widget level method
16818         gtk_container_set_reallocate_redraws() and a GtkContainer flag
16819         reallocate_redraws : 1 to reflect the setting, exported this through
16820         the argument system as a boolean ::reallocate_redraws.
16821
16822         * gtk/gtkwidget.c (gtk_widget_size_allocate): when queueing redraws
16823         on the widget because the allocation changes, do so as well for
16824         widget->parent if the parent has reallocate_redraws set to TRUE.
16825         with that containers requesting reallocation redraws get automatically
16826         redrawn if their children changed allocation (this unfortunately
16827         affects also other children that didn't change allocation, but we
16828         cannot work around that before 1.3).
16829
16830 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
16831
16832         * gtk/gtkwidget.c (gtk_widget_idle_draw): only emit ::draw if width
16833         _and_ height are >0 (not _or_).
16834
16835         * gtk/gtktable.c (gtk_table_remove): use gtk_widget_queue_resize()
16836         instead of gtk_container_queue_resize(), which is a core gtk internal
16837         function (must have been on crack when i queued that).
16838
16839         * gtk/gtkprivate.h: added new private flag GTK_FULLDRAW_PENDING, so
16840         we can check more reliably if we want to discard expose events.
16841         * gtk/gtkwidget.c: added setting/unsetting of the GTK_FULLDRAW_PENDING
16842         flag.
16843         
16844         * gtk/gtkwidget.c (gtk_widget_event): don't discard synthesized exposes,
16845         we simply trust these events. for deciding whether to discard exposes,
16846         check GTK_FULLDRAW_PENDING instead of RESIZE_PENDING.
16847         
16848 Mon Sep 13 15:01:21 1999  Owen Taylor  <otaylor@redhat.com>
16849
16850         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
16851         queues of areas that are completely off screen.
16852
16853         * gtk/gtkwidget.c (gtk_widget_idle_draw): Fix broken
16854         logic for handleboxes.
16855
16856         * gtk/gtkwidget.c (gtk_widget_queue_draw_data): Add santity
16857         check on width/height.
16858
16859 Mon Sep 13 02:22:47 1999  Tim Janik  <timj@gtk.org>
16860
16861         * gtk/Makefile.am: backed out Raja's recent VPATH build "improvements",
16862         we are fine with using $@ the way we do (if we actually encounter
16863         brokeness with $@ in VPATH builds because of additional path prefixes,
16864         we need to use $(@F) actually).
16865
16866 Mon Sep 13 01:34:53 1999  Tim Janik  <timj@gtk.org>
16867
16868         * gtk/gtksignal.c: renamed two variables, hopefully didn't introduce
16869         short lived bugs, that would allow language bindings to do surgeries
16870         to our guts.
16871
16872 Fri Sep 10 15:22:50 1999  Owen Taylor  <otaylor@redhat.com>
16873
16874         * gtk/gtkwindow.c (gtk_window_size_allocate): Fix typo
16875         where comparison was being done against an uninitialized
16876         value causing intermittant results depending on
16877         compiler flags. Also make it clearer that we aren't
16878         ever initializing the child as 0x0 (though this will
16879         be caught in gtk_widget_size_allocate())
16880
16881 Fri Sep 10 10:06:56 1999  Owen Taylor  <otaylor@redhat.com>
16882
16883         * gtk/gtkwindow.c (gtk_window_set_transient_for): Move
16884         gtk_window_unset_transient_for() call after we do checks
16885         involving the old transient parent.
16886         [ From Lance Capser <lmc@cyberhighway.net> ]
16887
16888 1999-09-07  Raja R Harinath  <harinath@cs.umn.edu>
16889
16890         * gtk/Makefile.am (gtk.defs): Go back to using `touch' to create
16891         an empty file.
16892
16893 Mon Sep  6 00:11:56 1999  Lars Hamann  <lars@gtk.org>
16894
16895         * gtk/gtkctree.c (gtk_ctree_is_ancestor): return FALSE if node has
16896         no children. (Reported by: Chris Rogers <gandalf@pobox.com>)
16897
16898 1999-09-03  Raja R Harinath  <harinath@cs.umn.edu>
16899
16900         * gtk/Makefile.am (gen_sources): Improve VPATH builds.
16901         `$@' is valid only in the build dir, not after we've done 
16902         `cd $srcdir'.  Also use `test -f' instead of less portable
16903         `test -e'.
16904
16905 Fri Sep  3 15:59:56 1999  Owen Taylor  <otaylor@redhat.com>
16906
16907         * gtk/gtktext.c (correct_cache_insert): Rewrite
16908          for simplicity, and hopefully correctness.
16909          (Fixes bug #1322, which was a segfault when
16910           on some insertions with the properties around
16911           the insertion set up just wrong.)
16912
16913         * gtk/gtktext.c (gtk_text_adjustment): When we receive
16914          a "changed" signal, clamp the new value to the adjustment
16915          bounds to avoid segfaulting if someone tries to change
16916          the adjustment to a bogus value. (Bug #1795)
16917
16918 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
16919
16920         * gtk/gtkmain.c: Ignore unexpected destroy notifies
16921         for children, for toplevel windows handle them
16922         like delete_event.
16923
16924         * gtk/gtkplug.c: Add an unrealize handler so that
16925         we unref plug->socket_window when we are done
16926         with it.
16927
16928 Fri Sep  3 14:52:54 1999  Owen Taylor  <otaylor@redhat.com>
16929
16930         * gtk/gtktext.c (clear_area): Fix stupid signedness
16931          problem that was causing background to sometimes
16932          be misaligned.
16933
16934 Fri Sep  3 12:26:33 1999  Owen Taylor  <otaylor@redhat.com>
16935
16936         [ Fixes pointed out by Ettore Perazzoli <ettore@comm2000.it> ]
16937         
16938         * gtk/gtkmenu.c (gtk_menu_position): Make
16939          sure we never position menus with negative x, y,
16940          since gtk_widget_set_uposition() can't handle that.
16941
16942         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu):
16943          Modify the positioning code a bit so that we always
16944          put the top-left corner onscreen. (This is for
16945          UI reasons, gtk_menu_position() now takes care of
16946          gtk_widet_set_uposition() brokeness.)
16947
16948 Fri Sep  3 03:06:30 1999  Tim Janik  <timj@gtk.org>
16949
16950         * gtk/Makefile.am: fixed up things for -jx, x > 1.
16951
16952 Sun Sep  5 08:48:51 1999  Owen Taylor  <otaylor@redhat.com>
16953
16954         * gtk/gtkwidget.c (gtk_widget_modify_style): Ref the
16955           RC style that is passed in. The lack of the ref
16956           before was a bug. If people worked around this
16957           bug, this will introduce a slight memory leak
16958           in their code. The code should typically look like:
16959
16960             rc_style = gtk_rc_style_new ();
16961             [...]
16962             gtk_widget_modify_style (widget, rc_style);
16963             gtk_rc_style_unref (rc_style);
16964
16965         * gtk/gtkwidget.c (gtk_widget_modify_style): Reset
16966           the style if it was already set.
16967
16968         * gtk/gtkwidget.c (gtk_widget_set_name): Only set the
16969           style if it was set before.
16970
16971 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
16972
16973         * gtk/testgtk.c (main): Add a check to see if we
16974           are being run from the correct directory and
16975           to quit nicely if we are not.
16976
16977         * gtk/gtkrc.c (gtk_rc_slist_remove_all): Make function
16978           static.
16979
16980 Thu Sep  2 23:00:03 1999  Tim Janik  <timj@gtk.org>
16981
16982         * gtk/gtkenums.h (GtkWindowPosition): added GTK_WIN_POS_CENTER_ALWAYS.
16983
16984         * gtk/gtkwindow.c:
16985         queue resizes unconditionally (gtk_widget_queue_resize will figure
16986         what to do if the window is not realized).
16987         (gtk_window_move_resize): only recenter the window
16988         for GTK_WIN_POS_CENTER_ALWAYS.
16989         (gtk_window_compute_reposition): handle GTK_WIN_POS_CENTER_ALWAYS in
16990         the same way as GTK_WIN_POS_CENTER.
16991
16992 Thu Sep  2 22:39:27 1999  Tim Janik  <timj@gtk.org>
16993
16994         * gtk/gtkwindow.c (gtk_window_reposition): check for the last position
16995         with (!(info->last_flags & GDK_HINT_POS)) instead of
16996         (!info->last_flags & GDK_HINT_POS).
16997
16998         * gtk/gtkwindow.c (gtk_window_move_resize): constrain new_width and
16999         new_height unconditionally, because we use these values even if
17000         !default_size_changed && !hints_changed.
17001         comented the (default_size_changed || hints_changed) case with
17002         respect to resize rejects from the window manager.
17003
17004         * gtk/gtkwindow.c (gtk_window_move_resize): save info->last values
17005         in the zvt condition hack, since this includes the window hints, set
17006         the hints after the handling_resize case.
17007
17008         * gtk/gtkwindow.c (gtk_window_show): constrain the default size that a
17009         window is initially shown with to the geometry.
17010
17011 Thu Sep  2 07:38:56 1999  Tim Janik  <timj@gtk.org>
17012
17013         * gtk/gtkwindow.c (gtk_window_move_resize):
17014         s/size_changed/default_size_changed/g so i know what's
17015         really going on (frying brain on smaller flame now).
17016
17017 Thu Sep  2 05:47:47 1999  Tim Janik  <timj@gtk.org>
17018
17019         * gtk/gtkwindow.c (gtk_window_move_resize): queue a new resize if
17020         we have size_changed upon handling_resize. this is a gross
17021         workaround for the broken zvt widget and should be removed in
17022         1.3 again (search for FIXME).
17023         Owen provided an accurate comment for this:
17024
17025         /* We could be here for two reasons
17026          *  1) We coincidentally got a resize while handling
17027          *     another resize.
17028          *  2) Our computation of size_changed was completely
17029          *     screwed up, probably because one of our children
17030          *     is broken. It's probably a zvt widget.
17031          *
17032          * For 1), we could just go ahead and ask for the
17033          * new size right now, but doing that for 2)
17034          * might well be fighting the user (and can even
17035          * trigger a loop). Since we really don't want to
17036          * do that, we requeue a resize in hopes that
17037          * by the time it gets handled, the child has seen
17038          * the light and is willing to go along with the
17039          * new size. (this happens for the zvt widget, since
17040          * the size_allocate() above will have stored the
17041          * requisition corresponding to the new size in the
17042          * zvt widget)
17043          *
17044          * This doesn't buy us anything for 1), but it shouldn't
17045          * hurt us too badly, since it is what would have
17046          * happened if we had gotten the configure event before
17047          * the new size had been set.
17048          */
17049
17050 Wed Sep  1 20:46:11 1999  Owen Taylor  <otaylor@redhat.com>
17051
17052         * gtk/gtkrc.c: deal properly with the fact that RC
17053           style lists may include rc styles more than once.
17054
17055         * gtk/gtkrc.c (gtk_rc_append_pixmap_path): Removed
17056           unused static function.
17057
17058         * gtk/gtkrc.c (gtk_rc_find_pixmap_in_path): Keep a
17059           stack of directories of RC files currently being
17060           parsed and implicitely add them to pixmap path.
17061           
17062           This fixes a bug where the directory would get
17063           appended then overwritten by pixmap_path declarations.
17064
17065           (bug #1462, from Peter Wainright <prw@wainpr.demon.co.uk>)
17066
17067         * gtk/gtkthemes.c (gtk_theme_engine_unref): Call
17068           theme's exit function. (Patch from Peter Wainwright,
17069           bug #1454)
17070
17071         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_destroy):
17072           Add a destroy() handler to take care of removing
17073           group for menu item. (Fixes bug #1197)
17074
17075         * gtk/gtkwidget.c (gtk_widget_size_request): Fixed thinko
17076           in warning message.
17077
17078 Wed Sep  1 21:27:42 1999  Tim Janik  <timj@gtk.org>
17079
17080         * gtk/gtkwindow.c (gtk_window_move_resize): don't require a server
17081         roundtrip to figure window's width and height, since we know that
17082         anyways from widget->allocation.
17083
17084 Wed Sep  1 12:37:44 1999  Owen Taylor  <otaylor@redhat.com>
17085
17086         * gtk/gtkwindow.c (gtk_window_move_resize): Compute
17087           the hints after we request the new size.
17088
17089 Wed Sep  1 10:38:37 1999  Owen Taylor  <otaylor@redhat.com>
17090
17091         * gtk/gtkwindow.c (gtk_window_compute_hints): Removed
17092           GTK_WIDGET_REALIZED() assertion - we can compute the
17093           hints before we are realized.
17094
17095         * gtk/gtkwindow.c (gtk_window_move_resize): Reorder
17096           hint changing so that we have a value of hints_changed
17097           when we decide whether to constrain the window size.
17098
17099         * gtk/gtkwindow.c (gtk_window_move_resize): Spelling fix.
17100
17101         * gtk/gtkwindow.c (gtk_window_constrain_size): cleanups,
17102         change back to G_MAXINT.
17103
17104 Wed Sep  1 06:54:59 1999  Tim Janik  <timj@gtk.org>
17105
17106         * gtk/gtkwindow.c (gtk_window_get_geometry_info): zero initialize
17107         new GtkWindowGeometryInfo, so fields like GdkGeometry geometry
17108         contain uncluttered values.
17109         (gtk_window_compute_hints): simply assert that window is realized
17110         and that geometry_info is valid, since we rely on this anyways.
17111         (gtk_window_constrain_size): major cleanups to the code.
17112         if (flags & GDK_HINT_BASE_SIZE) use geometry's base width and height
17113         for the base size, instead of the minimums. use 32767 as max width
17114         and height (like in gtkwindow.c) instead of G_MAXINT.
17115
17116 Wed Sep  1 04:41:25 1999  Tim Janik  <timj@gtk.org>
17117
17118         * cleaned up the GtkContainer.need_resize flag handling mess, we
17119         only need to force resize requests when we were prematurely
17120         realized, or our widget tree was modified when we were temporarily
17121         hidden. handling these cases directly upon showing the window (i.e.
17122         while the GdkWindow is still unmapped) avoids the need to wait for
17123         a configure event response and therefore makes the GUI more snappier
17124         and avoids blank windows during the roundtrip.
17125
17126         * gtk/gtkwidget.c:
17127         (gtk_widget_hide): 
17128         (gtk_widget_show): don't queue resizes on toplevels, they know how
17129         to deal with matters.
17130
17131         * gtk/gtkcontainer.c (gtk_container_queue_resize): set the ->need_resize
17132         flag directly for not visible resize containers and spare us unecessary
17133         signal emissions.
17134
17135         * gtk/gtkwindow.c:
17136         (gtk_window_realize): if we need to enforce premature size allocation,
17137         queue a container resize so we are correctly resized later on.
17138         (gtk_window_init):
17139         (gtk_window_size_request):
17140         don't freak around with the ->need_resize flag,
17141         gtk_container_queue_resize() will care about that.
17142         (gtk_window_show):
17143         handle initial resizing issues here, we can handle matters better in
17144         this place, especially since we know that our GdkWindow is still
17145         unmapped.
17146         (gtk_window_move_resize):
17147         don't care about ->need_resize at all.
17148         handle size changes properly that occoured while we waited for a
17149         configure event.
17150
17151 Tue Aug 31 15:58:46 1999  Owen Taylor  <otaylor@redhat.com>
17152
17153         * gtk/gtkwidget.c (gtk_widget_set_uposition):
17154         * gtk/gtkwindow.[hc] (gtk_window_reposition):
17155         Move the hint setting code from gtk_widget_set_uposition
17156         to here; set the hints so that we respect any previously
17157         set geometry hints.
17158
17159         * gtk/gtkwindow.c (gtk_window_compute_reposition): Don't
17160         change the window hints here or move the window here,
17161         let that happen in gtk_window_move_resize().
17162
17163 Tue Aug 31 06:58:52 1999  Tim Janik  <timj@gtk.org>
17164
17165         * gtk/gtkwidget.c (gtk_widget_event): when discarding exposes due
17166         to already queued resizes (and therefore redraws) on a widget, check
17167         its anchestry as well.
17168
17169         * gtk/gtkcontainer.c:
17170         (gtk_container_queue_resize): clear resize widgets for resize
17171         containers before aborting prematurely. this is especially important
17172         for toplevels which may need imemdiate processing or their resize
17173         handler to be queued.
17174         (gtk_container_dequeue_resize_handler): added new internal function for
17175         gtkwindow.c.
17176
17177         * gtk/gtkwindow.c (gtk_window_move_resize): if we are resizing due to a
17178         configure event, take possible changes in window position into account
17179         as well.
17180         if we request a new window size, queue up a resize handler that will
17181         last until the configure event response arrives.
17182         combined the ->need_resize case (initial show) with the general size
17183         (hints) changed case and added even more comments.
17184         if !auto_shrink, only revert to the old allocation if the new size
17185         is smaller than the current allocation.
17186
17187 Tue Aug 31 11:55:20 1999  Owen Taylor  <otaylor@redhat.com>
17188
17189         * gtk/gtkwindow.c (gtk_window_set_arg, gtk_window_set_policy,
17190                            gtk_window_set_geometry_hints
17191                            gtk_window_set_default_size):
17192         When hints are set, queue a resize so that the hints will
17193         be eventually reset on the toplevel.
17194
17195         * gtk/gtkwindow.c (gtk_window_show): Use
17196         gtk_window_compute_default_size(). Clear the need_resize flag
17197         on the initail map so that we don't unnecessarily trigger the
17198         resize code.
17199
17200         * gtk/gtkwindow.c (gtk_window_move_resize): Split apart
17201         into separate functions. Compare the hints we are setting
17202         with what we set last time so that we can accurately
17203         tell when we need to reset the hints.
17204
17205         * gtk/gtkwindow.c (gtk_window_compute_default_size): New
17206         function to figure out the size from requisition
17207         and default_size.
17208
17209         * gtk/gtkwindow.c (gtk_window_constrain_size): Function
17210         from fvwm to constrain a size to the geometry hints.
17211
17212         * gtk/gtkwindow.c (gtk_window_compare_hints): New function
17213         to compare two sets of geometry hints.
17214
17215         * gtk/gtkwindow.c (gtk_window_compute_hints): Renamed
17216         from gtk_window_set_hints(), just compute the hints,
17217         don't set them.
17218
17219         * gtk/gtkwindow.c (gtk_window_compute_reposition): Move
17220         code from gtk_window_move_resize() to separate function,
17221         rationalize a bit.
17222
17223 Tue Aug 31 13:05:03 1999  Owen Taylor  <otaylor@redhat.com>
17224
17225         * gtkrc.h: Move the ref_count member out of the GtkRcStyle
17226         structure into a new private structure.
17227
17228         * gtkrc.c: Split GtkRcStyle into public/private.
17229         In the private part, add a list of pointers to the
17230         RcStyle lists this RcStyle participates in.
17231
17232         * gtkrc.c: When a RcStyle is free, remove all
17233         lists referencing it from the 
17234         realized_style_ht hash, and free those lists.
17235         
17236         * gtk/gtkrc.c (gtk_rc_clear_styles): Don't call
17237         gtk_rc_init(), since that adds the default styles
17238         to the list of parsed RC files again.
17239
17240         * gtk/gtkrc.c: Use gtk_rc_style_find() consistently.
17241         
17242 Thu Aug 26 14:14:42 1999  Tim Janik  <timj@gtk.org>
17243
17244         * gtk/gtkwidget.c (gtk_widget_size_allocate): reactivated the sanity
17245         checks that ensure that a widget's allocation is at least 1 in width
17246         and height. (GNOME note: this doesn't affect old panel code anymore,
17247         because GtkSocket will request width and height of at least 1 since
17248         Fri Jul 23).
17249
17250         * gtk/gtkwindow.c (gtk_window_realize): if the widget hasn't been
17251         allocated yet (happens if the user realizes the window prematurely),
17252         size request and allocate it.
17253         (gtk_window_size_allocate): guard against guint underflows.
17254
17255 Wed Aug 25 19:01:36 1999  Lars Hamann  <lars@gtk.org>
17256
17257         * gtk/Makefile.am (gtk_built_sources): reordered stamp-gtk.defs
17258         in gtk_built_sources, so gtk.defs gets built prior to all other
17259         sources.
17260
17261 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
17262
17263         * gtk/Makefile.am:
17264         invoke indent on gtkmarshal.*. 
17265         rewrote source generation rules, use COPYING as oldest source tag for
17266         a piggyback rule to generate all sources from (don't touch it ;).
17267         major cleanups, strip spaces on build rules for GNU Make.
17268
17269         * gtk/genmarshal.pl: don't operate on hardcoded filenames but take
17270         source and target files from commandline arguments. don't invoke indent.
17271
17272 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
17273
17274         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
17275         notebook after switch to avoid drawing problems.
17276         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
17277         
17278         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
17279         show them instead. 
17280         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
17281
17282 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
17283
17284         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
17285         notebook after switch to avoid drawing problems.
17286         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
17287         
17288         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
17289         show them instead. 
17290         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
17291
17292 Wed Aug 18 09:20:10 1999  Tim Janik  <timj@gtk.org>
17293
17294         * gtk/gtkwindow.c:
17295         we use window->need_resize from configure_event now, to indicate that
17296         the gtkwindow should keep its allocation (e.g. because the user resized
17297         the window through window manager handles). resize_count is now reliably
17298         used to figure whether we got the allocation we requested from the
17299         window manager.
17300         configure events get queued as resizes now, the real stuff (size
17301         computation and allocation) now only goes on in gtk_window_move_resize().
17302         GtkWindow's requisition now contains its *real* requisition (like all
17303         other widgets), *not* taking usize into account.
17304         geometry_info->last_{width|height} is now updated from set_hints() only
17305         so it always contains the last hints we set for the window manager.
17306         made some event handlers return TRUE instead of FALSE.
17307         the overall code should be much more straight forward now, and the
17308         significant code portions are accompanied by comments now.
17309         (gtk_window_set_hints):
17310         removed requisition argument and made it
17311         fetch the requisition through gtk_widget_get_child_requisition.
17312         we also don't move the gdkwindow here anymore, gtk_window_move_resize()
17313         does that now.
17314         (gtk_window_show):
17315         ensure that the widget is realized before calling 
17316         gtk_container_check_resize() (and thus gtk_window_move_resize()), also
17317         ensure that we got properly size requested and allocated before
17318         realization.
17319         (gtk_window_configure_event):
17320         ignore plain window moves, or reallocate the widget tree through the
17321         resize queue otherwise.
17322         (gtk_window_move_resize):
17323         mostly rewrote this function to figure window manager hints more
17324         reliably, coalesce window moves and resizes to reduce configure events
17325         and do actuall size allocations.
17326
17327 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
17328
17329         * gtk/gtkwidget.c (gtk_widget_event): discard expose events for widgets
17330         that have a resize pending, because a redraw is already queued for them.
17331
17332         * gtk/gtkcontainer.c: removed ugly connect_to ::size_allocate signal
17333         hack to clear resize_widgets.
17334
17335         * gtk/gtkwidget.c (gtk_widget_size_allocate): call clear_resize_widgets
17336         for resize containers prior to size allocation. (this is also a bit
17337         ugly, but avoids side effects for stopped emissions and is thus more
17338         reliable).
17339         (gtk_widget_unparent): removed disconnect call for clear_resize_widgets.
17340
17341         * gtk/gtktooltips.c (gtk_tooltips_paint_window): renamed this
17342         function from gtk_tooltips_expose, as we connect to ::expose_event
17343         *and* ::draw now.
17344
17345 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
17346
17347         * gtk/gtkselection.c (gtk_target_list_ref): Added missing sanity
17348         checks.
17349         (gtk_target_list_unref): Likewise.
17350
17351         * gtk/gtkthemes.c (gtk_theme_engine_unref): Likewise.
17352
17353 Tue Aug 17 15:47:07 1999  Owen Taylor  <otaylor@redhat.com>
17354
17355         * gtk/gtkcolorsel.c (gtk_color_selection_draw_value_bar):
17356         guard against division by zero. (Fixes bug #1339)
17357
17358 Tue Aug 17 10:56:49 1999  Owen Taylor  <otaylor@redhat.com>
17359
17360         * gtk/gtkentry.c (gtk_move_{forward,backward}_word): 
17361         Prevent the trivial leak of information of allowing
17362         word motion when the entry is not visible.
17363
17364 Tue Aug 17 10:28:52 1999  Owen Taylor  <otaylor@redhat.com>
17365
17366         * gtk/gtkfilesel.c (gtk_file_selection_fileop_error): Propagate
17367         modality to error dialog as well as confirmation dialogs.
17368         (Bug #1803, reported by Rosanna Wing Sze Yuen)
17369
17370 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
17371
17372         * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): Honor
17373         tree->view_lines.
17374         (gtk-guy-990611-3.patch: Guy Harris <guy@netapp.com>)
17375
17376         * gtk/Makefile.am (install-data-local): Solaris apparently
17377         has various troubles with ln -f; use rm first instead.
17378         (gtk-guy-990611-2.patch: Guy Harris <guy@netapp.com>)
17379
17380 1999-07-30  Raja R Harinath  <harinath@cs.umn.edu>
17381
17382         * gtk/Makefile.am (stamp-m): Don't `mv' from builddir to srcdir,
17383         use `cp' followed by `rm' (the `rm' was already there).
17384
17385 July 30, 1999 Elliot Lee <sopwith@redhat.com>
17386         
17387         * configure.in: Fix autoconf warnings about cross compilation by
17388         trying to provide sane defaults for AC_TRY_RUN.
17389         * gtk/Makefile.am: If we refer to gtkmarshal.[ch] in $(srcdir),
17390         put them into $(srcdir) when generated. Also add a dependency of
17391         gtksignal.h on gtkmarshal.h for -j builds. 
17392         * gtk/gtk(dnd,style,gamma).c: Minor warning fixes.
17393
17394 Wed Jul 28 09:29:19 1999  Owen Taylor  <otaylor@redhat.com>
17395
17396         * gtk/gtkmain.c (gtk_main_iteration_do): Added missing
17397         GDK_THREADS_{LEAVE,ENTER} pair.
17398         (From Paul Fisher <pnfisher@redhat.com>)
17399
17400 Fri Jul 23 01:00:15 1999  Tim Janik  <timj@gtk.org>
17401
17402         * gtk/gtksocket.c (gtk_socket_size_request): asure that the requested
17403         width and height are always >0 (owen).
17404
17405 Fri Jul 23 00:00:47 1999  Tim Janik  <timj@gtk.org>
17406
17407         * gtk/gtkwidget.c (gtk_widget_size_allocate): backed out my recent
17408         change that assured that a widget's allocated with and height are
17409         always >1, since this breaks *buggy* panel code. unfortunately this
17410         back-breaks the gimp's color selector.
17411
17412         * gtk/gtkdrawingarea.c (gtk_drawing_area_size_allocate): asure that our
17413         allocation is always >0 in width and height, before sending the
17414         configure event; this is a *gross* hack to get the gimp back to work.
17415         
17416         * marked both cases with TODO-1.3
17417
17418 Wed Jul 21 15:47:39 1999  Owen Taylor  <otaylor@redhat.com>
17419
17420         * gtk/gtktext.c: Don't display wrap indicators when
17421         text is not editable and word wrap is on.
17422
17423 Wed Jul 21 08:21:40 1999  Tim Janik  <timj@gtk.org>
17424
17425         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): special case
17426         option menus here as they are not derived from menu shell, assure that
17427         the option menu has a menu we can add items to.
17428
17429 Tue Jul 20 23:29:48 1999  Tim Janik  <timj@gtk.org>
17430
17431         * gtk/gtknotebook.c (gtk_notebook_page_allocate): convert allocation->
17432         width/height to (gint) before calculations and check against < 0 to
17433         avoid guint wraparounds.
17434
17435 Sun Jul 18 00:35:49 1999  Tim Janik  <timj@gtk.org>
17436
17437         * gtk/gtkwidget.c (gtk_widget_size_allocate): ensure that the allocated
17438         width and height is never zero. sanity check both dimensions against
17439         32767 and issue a warning if the allocation is greater than that.
17440
17441 Wed Jul  7 15:03:30 1999  Owen Taylor  <otaylor@redhat.com>
17442
17443         * gtk/gtkmain.c (gtk_events_pending): Unlock around call
17444         to g_main_pending() as well.
17445
17446 Wed Jul  7 14:59:01 1999  Owen Taylor  <otaylor@redhat.com>
17447
17448         * gtk/gtkmain.c (gtk_main_iteration): Unlock around
17449         call to g_main_iteration() - since that will regrab
17450         GTK+ lock to process events.
17451
17452 Thu Jul  1 15:01:55 1999  Owen Taylor  <otaylor@redhat.com>
17453
17454         * gtk/gtkwindow.c
17455         - Regularize with the rest of GTK+ by making widget->requisition
17456           not reflect the set_usize()
17457         - Always recompute geometry hints, then check if they
17458           changed before sending them to the X server. The
17459           previous checks for changes would fail in a number
17460           of circumstances. 
17461
17462 Thu Jul  1 11:55:59 1999  Owen Taylor  <otaylor@redhat.com>
17463
17464         * gtk/gtkstyle.c: Include <stdlib.h> for strcmp().
17465
17466 Wed Jun 30 19:26:36 1999  Owen Taylor  <otaylor@redhat.com>
17467
17468         * gtk/gtkdnd.c:
17469         - Code cleanups
17470         - Instantaneously update on modifier key presses
17471         - Allow cancellation of the drag with Escape.
17472
17473 Tue Jun 29 17:04:09 1999  Owen Taylor  <otaylor@redhat.com>
17474
17475         * gtk/testgtk.c (create_handle_box): Set the policy
17476         to auto_shrink - otherwise the appearance is rather
17477         strange when flipping between horizontal and vertical.
17478
17479 Mon Jun 28 09:29:52 1999  Tim Janik  <timj@gtk.org>
17480
17481         * gtk/gtkwindow.c: add ::default_width and ::default_height arguments.
17482         (gtk_window_set_default_size): don't change a value if it's < 0.
17483         queue a resize.
17484
17485 Sun Jun 27 11:00:33 1999  Tim Janik  <timj@gtk.org>
17486
17487         * gtk/gtktext.c (gtk_text_insert): don't segfault on NULL inserts.
17488
17489 Mon Jun 28 12:08:25 1999  Owen Taylor  <otaylor@redhat.com>
17490
17491         * gtk/gtkfilesel.c (cmpl_completion_fullname): Don't
17492         add an extra "/" when concating "/" + filename.
17493         (From Matt Grossman <mattg@oz.net>)
17494
17495 Mon Jun 28 10:57:12 1999  Owen Taylor  <otaylor@redhat.com>
17496
17497         * gtk/gtkctree.c (draw_cell_pixmap): Reset clip mask
17498         for fg_gc if we set it for drawing pixmap.
17499
17500 Tue Jun 15 12:45:12 1999  Owen Taylor  <otaylor@redhat.com>
17501
17502         Fixes from Peter Wainwright <prw@wainpr.demon.co.uk>
17503         
17504         * gtk/gtkrc.c (gtk_rc_parse_engine): If rc_style->engine is
17505         already set, call old engine's destroy function and
17506         unref the old engine.
17507
17508 Thu Jun 10 17:59:38 1999  Tim Janik  <timj@gtk.org>
17509
17510         * gtk/gtkdrawingarea.c (gtk_drawing_area_size): queue a resize.
17511
17512 Wed Jun  9 15:13:16 1999  Tim Janik  <timj@gtk.org>
17513
17514         * gtk/gtkaccelgroup.h: mark certain functions as internal.
17515
17516 Wed Jun  9 13:48:28 1999  Tim Janik  <timj@gtk.org>
17517
17518         * gtk/gtkpreview.c (gtk_preview_set_expand): queue a resize if the
17519         expand behaviour changed.
17520
17521         * gtk/gtklabel.c (gtk_label_set_pattern):
17522         (gtk_label_set_justify):
17523         (gtk_label_set_line_wrap):
17524         don't bother invoking queue_clear, the reallocation does
17525         that for us, always free_words so the upcoming resize will
17526         relayout the label's contents.
17527
17528 Wed Jun  9 12:50:48 1999  Tim Janik  <timj@gtk.org>
17529
17530         * applied argument implementation patches from Elena Devdariani
17531         <elena@cogent.ca>.
17532
17533         * gtk/gtktoolbar.c: ::orientation, ::toolbar_style, ::space_size,
17534         ::space_style, ::relief
17535         * gtk/gtkruler.c: ::lower, ::upper, ::position, ::max_size
17536         * gtk/gtkpreview.c: ::expand
17537         * gtk/gtkpaned.c: ::handle_size, ::gutter_size
17538         * gtk/gtknotebook.c: ::homogeneous
17539         * gtk/gtklabel.c: ::wrap
17540         * gtk/gtklist.c: ::selection_mode
17541         * gtk/gtkhandlebox.c: ::handle_position, ::snap_edge
17542         * gtk/gtkcurve.c: ::curve_type, ::min_x, ::max_x, ::min_y, ::max_y
17543         * gtk/gtkcolorsel.c: ::update_policy, ::use_opacity
17544         * gtk/gtkclist.c: ::sort_type
17545         * gtk/gtkcheckmenuitem.c: ::active, ::show_toggle
17546         * gtk/gtkaspectframe.c: ::xalign, ::yalign, ::ratio, ::obey_child
17547
17548 Tue Jun  1 23:38:38 1999  Owen Taylor  <otaylor@redhat.com>
17549
17550         * gtk/gtkstyle.c: Removed ill-thought-out part of last
17551         comment.
17552
17553 Tue Jun  1 23:30:09 1999  Owen Taylor  <otaylor@redhat.com>
17554
17555         * gtk/gtkstyle.c (gtk_style_attach): Get the reference
17556         counting right when we have to attach a new style
17557         for a different visual. (Chi-Deok Hwang <cdhwang@sr.hei.co.kr>)
17558
17559         * gtk/gtkstyle.c: Documented the refcounting
17560         peculularities of gtk_style_attach.
17561
17562 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
17563
17564         * gtk/gtkwindow.c (gtk_window_new): added return if fail for invalid
17565         window types.
17566
17567         * examples/packer/pack.c (main): use GTK_WINDOW_TOPLEVEL instead
17568         of GTK_TOPLEVEL for creating the window.
17569
17570 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
17571
17572         * gtk/gtkmain.c (gtk_init_check): don't segfault when --gtk-module is
17573         the last argument (reported by Per Winkvist).
17574         
17575 Tue May 25 13:13:12 1999  Owen Taylor  <otaylor@redhat.com>
17576
17577         Fixes for invisible XOR lines (Frank Loemker
17578         <floemker@TechFak.Uni-Bielefeld.DE>)
17579         
17580         * gtk/gtkclist.c (gtk_clist_realize): Always use
17581         a non-zero pixel for GDK_XOR.
17582
17583         * gtk/gtkvpaned.c gtk/gtkhpaned.c: 
17584         Use GDK_INVERT instead of GDK_XOR.
17585
17586 Wed May 12 21:56:40 1999  Lars Hamann  <lars@gtk.org>
17587
17588         * gtk/gtkclist.c (adjust_adjustments): signal emit value_changed
17589         signals if h/voffsets differ from adjustment values.
17590         Reportet by Jerome Bolliet <bolliet@in2p3.fr>
17591
17592 Mon May 10 04:20:41 1999  Tim Janik  <timj@gtk.org>
17593
17594         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): propagate
17595         ::selection-done emissions up to the topmost menu shell.
17596
17597 Fri May  7 10:15:14 1999  Owen Taylor  <otaylor@redhat.com>
17598
17599         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): Unset
17600         the user data on the window before destroying it.
17601
17602         * gtk/gtknotebook.c (gtk_notebook_unrealize): Add an
17603         unrealize handler to take care of destroying 
17604         notebook->panel properly. 
17605         (Bug #1198 - Morten Welinder <terra@diku.dk>)
17606
17607         * gtk/gtktext.c (expand_scratch_buffer): Fix reversal
17608         of g_new and g_realloc to stop memory leak. (Actually,
17609         we could just use g_realloc(), but I'm not 100% sure
17610         that is portable).
17611         (Bug #1196 - Morten Welinder <terra@diku.dk>)
17612
17613 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
17614
17615         * gtk/gtkplug.h: Removed stray GtkPlugButton declaration.
17616
17617         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
17618         for fontsets.
17619
17620         * gtk/gtkbutton.c (gtkbutton_expose): Fix warning
17621         with bin/button confusion.
17622
17623 Thu May  6 04:53:26 1999  Tim Janik  <timj@gtk.org>
17624
17625         * gtk/testgtk.c: in the ItemFactory test, link radio items together,
17626         and show how preselection of radio items is done.
17627
17628 Sun May  2 13:31:14 1999  Tim Janik  <timj@gtk.org>
17629
17630         * gtk/gtktreeitem.c (gtk_tree_item_set_subtree): 
17631         * gtk/gtktree.c (gtk_tree_add) (gtk_tree_insert):
17632         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): 
17633         * gtk/gtkpaned.c (gtk_paned_pack2) (gtk_paned_pack1):
17634         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_add): 
17635         * gtk/gtktable.c (gtk_table_attach): 
17636         * gtk/gtklist.c (gtk_list_insert_items): 
17637         * gtk/gtkmenushell.c (gtk_menu_shell_insert): 
17638         * gtk/gtknotebook.c (gtk_notebook_insert_page_menu): 
17639         * gtk/gtkpacker.c (gtk_packer_add_defaults) (gtk_packer_add): 
17640         * gtk/gtkbin.c (gtk_bin_add): 
17641         * gtk/gtkbox.c (gtk_box_pack_start) (gtk_box_pack_end): 
17642         * gtk/gtkfixed.c (gtk_fixed_put): 
17643         * gtk/gtklayout.c (gtk_layout_put):
17644         general fixups to container_add logic. always realize child if
17645         child->parent is realized, only map the child and queue a resize
17646         if child and child->parent are both visible.
17647
17648 Fri Apr 30 09:02:28 1999  Tim Janik  <timj@gtk.org>
17649
17650         * gtk/gtkwidget.c (gtk_widget_real_unrealize): use gtk_container_forall
17651         instead of gtk_container_foreach to walk and unrealize children, so
17652         composite children get also unrealized.
17653         (gtk_widget_real_show): don't call gtk_widget_map() if we don't need to.
17654         (gtk_widget_map): assert that the widget is visible (basic constrain).
17655         (gtk_widget_real_map): assert that the widget is realized (basic
17656         constrain).
17657
17658 Fri Apr 29 00:53:20 1999  Tim Janik  <timj@gtk.org>
17659
17660         * gtk/gtkbindings.c (gtk_pattern_spec_init): plugged a memory leak.
17661
17662 Tue May  4 09:32:08 1999  Owen Taylor  <otaylor@redhat.com>
17663
17664         * gtk/Makefile.am gtk/gtkrc.iso-8859-2: Add a gtkrc
17665         file for iso-8859-2 locales.
17666
17667         * configure.in (ALL_LINGUAS): ALL_LINGUAS update.
17668
17669 Tue Apr 27 16:38:32 1999  Owen Taylor  <otaylor@redhat.com>
17670
17671         * gtk/Makefile.am: Fix typo of static_sources for static_SOURCES.
17672          (Pointed out by andy@rz.uni-karlsruhe.de and others).
17673          Remove some suspicious and useless lines. 
17674
17675 Tue May  4 08:44:08 1999  Owen Taylor  <otaylor@redhat.com>
17676
17677         * gtk/gtkclist.c (gtk_clist_draw, draw_rows): Use 
17678         width,height = 0, 0 to mean - here to edge of window,
17679         instead of -1, -1, since the former is all we support.
17680
17681 Tue May  4 08:34:43 1999  Owen Taylor  <otaylor@redhat.com>
17682
17683         * gtk/gtkmain.c (gtk_main): Correctly free list nodes
17684         when removing from quit_functions list.
17685
17686 Tue Apr 27 14:17:16 1999  Tim Janik  <timj@gtk.org>
17687
17688         * gtk/gtkpacker.c (gtk_packer_size_request): remove unused variable.
17689
17690 Tue Apr 27 18:23:35 1999  Owen Taylor  <otaylor@redhat.com>
17691
17692         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): 
17693          When redrawing characters on non-visible entry, use appropriate
17694          '*' character. (Bug #1130 - Jean-Marc Jacquet <jm@littleigloo.org>)
17695
17696 Tue Apr 27 01:31:40 1999  Lars Hamann  <lars@gtk.org>
17697
17698         * gtk/gtkclist.c (drag_dest_cell): compute destination cell
17699         from drag coordinates.
17700         (gtk_clist_drag_data_received) (gtk_clist_drag_motion):
17701         use drag_dest_cell.
17702
17703         * gtk/gtktree (drag_dest_cell)
17704         (gtk_ctree_drag_data_received) (gtk_ctree_drag_motion): likewise.
17705         (Bug #1129)
17706
17707 Wed Apr 21 21:26:11 1999  Tim Janik  <timj@gtk.org>
17708
17709         * gtk/gtkitemfactory.c (gtk_item_factory_init): properly initialize
17710         translate_* fields.
17711         (gtk_item_factory_finalize): invoke translate_notify independant from
17712         translate_data.
17713         (gtk_item_factory_set_translate_func): likewise.
17714         (gtk_item_factory_destroy): only remove ifactory pointer from those
17715         widgets that belong to us (stupid me).
17716
17717 Mon Apr 19 12:05:31 1999  Owen Taylor  <otaylor@redhat.com>
17718
17719         * gtk/gtkrc.c (gtk_rc_style_init): Fixed leak of
17720         rc_style list when lookup succeeeds.
17721
17722 Thu Apr 15 01:11:24 1999  Lars Hamann  <lars@gtk.org>
17723
17724         * gtk/gtkctree.c (resync_selection): 
17725         * gtk/gtkclist.c (resync_selection): fixed undo_selection bug.
17726         * gtk/gtkclist.c (gtk_clist_button_release): fixed resync_selection
17727         bug.
17728
17729 Fri Apr  9 19:22:19 1999  Owen Taylor  <otaylor@redhat.com>
17730
17731         * gtk/gtkcolorsel.c gtk/gtkdnd.c gtk/gtkmenuitem.c:
17732         Add some missing GDK_THREADS_ENTER()/LEAVE around
17733         timeouts. (Patches from Sebastian Wilhelmi <wilhelmi@ira.uka.de>)
17734
17735 Thu Apr  8 20:10:33 1999  Tim Janik  <timj@gtk.org>
17736
17737         * gtk/gtkentry.c (gtk_entry_key_press): use gtk_widget_activate()
17738         rather than emit_by_name.
17739
17740         * gtk/gtkeditable.c (gtk_editable_insert_text): keep a reference
17741         on the widget across multiple signal emissions.
17742         (gtk_editable_delete_text): same here.
17743         (gtk_editable_class_init): set widget_class->activate_signal after
17744         editable_signals[ACTIVATE] has been created.
17745
17746 Wed Apr  7 22:59:47 1999  Owen Taylor  <otaylor@redhat.com>
17747
17748         * gtk/gtkpaned.c (gtk_paned_set_position): Don't clamp
17749         position here prematurely -- we might not have the
17750         right ->min_position and ->max_position yet.
17751
17752 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
17753
17754         * gtk/gtkselection.c gdk/gdkselection.c: (gtk_selection_request):
17755         Add error traps so if the other end of the connection
17756         dies, we survive.
17757
17758         * gtk/gtkselection.c (gtk_selection_notify): Clean
17759         up properly when selection property retrieval fails.
17760         
17761         * gtk/gtkselection.c (gtk_selection_request): Correctly
17762         reject SelectionRequest notifies where the handler
17763         returns no data.
17764
17765 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
17766
17767         * gtk/gtkdnd.c (gtk_drag_dest_leave): Only unhighlight
17768         when we've previously highlighted.
17769
17770         * gtk/gtkdnd.c (gtk_drag_dest_handle_event): Don't
17771         emit two "drag_leave" signals for Motif drops.
17772
17773         * gtk/gtkdnd.c (gtk_drag_source_handle_event): Send
17774         back the correct status messages when dropping from
17775         Motif onto a proxy window that is rejecting the
17776         drop.
17777
17778 Sat Mar 27 23:32:13 1999  Tim Janik  <timj@gtk.org>
17779
17780         * gtk/gtkarg.[hc]: added functions from GLE, gtk_arg_reset() to free
17781         the value and reset type to GTK_TYPE_INVALID, and gtk_arg_values_equal()
17782         to compare two argument values. added gtk_arg_to_valueloc() to set a
17783         variable from an arg through its location (pointer).
17784
17785         * gtk/gtkobject.[hc]: implemented gtk_object_get() in terms of
17786         gtk_object_arg_get() and gtk_arg_to_valueloc(), floats are collected
17787         as gfloat*, uchars are collected as guchar*, ints are collected as
17788         gint*, etc...
17789
17790 Mon Mar 29 17:45:47 1999  Owen Taylor  <otaylor@redhat.com>
17791
17792         * gtk/gtkaccelgroup.c gtk/gtkgtkbindings.c:
17793         Include <string.h> instead of <strings.h>.
17794
17795         * gtk/gtkstyle.c: Fix double include of gtkthemes.h
17796         (actually, a lot more duplicate includes occur if
17797          you trace through the sequence of #include's)
17798         gtk-jbb-990320-0: John Bley, jbb6@acpub.duke.edu
17799         
17800 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
17801
17802         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
17803         gtk-a-higuti-990322-[0-3]
17804
17805         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
17806         that was causing -DX_LOCALE not to work.
17807
17808         * gtk/gtkrc.c (gtk_rc_init):
17809         X_LOCALE will never have LC_MESSAGES defined
17810
17811 Thu Mar 25 12:38:31 1999  Tim Janik  <timj@gtk.org>
17812
17813         * gtk/gtkrc.c (gtk_rc_append_default_module_path): get $HOME from
17814         g_get_home_dir() (gtk-pmc-990123-0.patch.gz).
17815
17816         * gtk/gtkwindow.c (gtk_window_key_press_event): feature keypad up/down/
17817         left/right as well (gtk-michael-980726-0.patch.gz).
17818
17819         * gtk/gtklabel.[hc]: bunch of miscellaneous cleanups, such as s/0/NULL/
17820         for pointer values, use gchar instead of char. fixed uline allocation
17821         leaks, changed the allocation pattern so we use G_ALLOC_AND_FREE mem
17822         chunks instead of G_ALLOC_ONLY.
17823         (gtk_label_size_request): always alter requisition as passed and leave
17824         widget->requisition alone.
17825         (gtk_label_set_text): allow NULL strings.
17826         (gtk_label_new): likewise.
17827
17828 Wed Mar 24 09:24:03 1999  Tim Janik  <timj@gtk.org>
17829
17830         * gtk/gtkdrawingarea.[hc]: type/macro fixups.
17831
17832 Mon Mar 22 05:51:34 1999  Tim Janik  <timj@gtk.org>
17833
17834         * gtk/gtkbin.c (gtk_bin_draw): only redraw children that are visible
17835         *and* mapped (i.e. drawable).
17836         (gtk_bin_expose): only send exposes to drawable children.
17837
17838         * gtk/gtkbox.c (gtk_box_draw): only redraw children that are drawable.
17839         (gtk_box_expose): only send exposes to drawable children.
17840
17841         * gtk/gtkhscale.c (gtk_hscale_draw): 
17842         * gtk/gtkvscale.c (gtk_vscale_draw):
17843         hm, this is an ugly one. we first compute the size of our trough area
17844         here (window relative) and then check intersection with the draw_area
17845         which is parent relative because we're a NO_WINDOW widget, so we need
17846         to offset the trough area by allocation.x and allocation.y before the
17847         check. (this must not be done for the background area though, since
17848         that's already computed parent relative).
17849
17850 Mon Mar 22 00:41:39 1999  Lars Hamann  <lars@gtk.org>
17851
17852         * gtk/gtkclist.c (gtk_clist_unrealize): unmap clist if neccessary,
17853         unrealize title buttons.
17854
17855 Fri Mar 19 00:00:22 1999  Lars Hamann  <lars@gtk.org>
17856
17857         * gtk/gtkclist.c (gtk_clist_column_title_passive)
17858         (gtk_clist_column_title_active): 
17859         only connect/disconnect to GtkWidgetClass::event to block mouse events.
17860
17861         * gtk/gtkclist.c (vertical_timeout) (horizontal_timeout): 
17862         zero initialize event, removed superfluous gdk_window_get_pointer call
17863
17864         * gtk/gtklist.c (gtk_list_vertical_timeout)
17865         (gtk_list_horizontal_timeout): removed superfluous
17866         gdk_window_get_pointer call
17867
17868 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
17869
17870         * plugging problems reported by "Bruce Mitchener, Jr."
17871         <bruce@puremagic.com> due to a purify session.
17872
17873         * gtk/gtkstyle.c:
17874         (gtk_style_ref): 
17875         (gtk_style_unref): assert ref_count to be > 0.
17876
17877         * gtk/gtkclist.c (gtk_clist_set_cell_style): { 0 } initilaize
17878         the requisition.
17879         (gtk_clist_set_shift): likewise.
17880
17881         * gtk/gtklayout.c: introduce gtk_layout_finalize() to unref the
17882         adjustments.
17883
17884         * gtk/gtklist.c (gtk_list_horizontal_timeout): zero initialize the
17885         event before sending it and set send_event to TRUE (which needs to
17886         be done for *all* synthesized events).
17887         (gtk_list_vertical_timeout): likewise.
17888
17889         * gtk/gtktipsquery.c (gtk_tips_query_destroy): plug small memory
17890         leaks.
17891
17892         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set send_event
17893         to TRUE when synthesizing events.
17894
17895 [ *** end of merges from 1.2 *** ]      
17896         
17897 1999-11-21  Tor Lillqvist  <tml@iki.fi>
17898
17899         * gdk/gdkconfig.h: Remove, as this is a file generated by configure
17900         (or copied from gdkconfig.h.win32 on Win32, sigh).
17901
17902         * gdk/gdkprivate.h: Mark gdk_parent_root for export from DLL.
17903
17904         * gdk/gdk.c (gdk_keyval_convert_case): Fix typo.
17905
17906         * gdk/gdkgc.c (gdk_gc_alloc): Remove duplicated line.
17907
17908         * gdk/gdkconfig.h.win32: New file.
17909
17910         * gdk/win32/makefile.cygwin: Build just a static archive here.
17911
17912         * gdk/makefile.cygwin: New file. Get the win32-specific stuff
17913         for the DLL from the static archive built above.
17914
17915         * gdk/gdk.def: Moved here from the win32 subdirectory.
17916
17917         * gdk/win32/*: Adapt for the changed private struct organisation.
17918
17919         * gtk/makefile.{cygwin,msc}: Get gdk library from ../gdk now.
17920
17921 Sun Nov 21 16:44:35 1999  Stefan Jeske  <stefan@gtk.org>
17922
17923         * gtk/gtkspinbutton.c (gtk_spin_button_button_press): Added support 
17924         for wheel mice (buttons 4 and 5).
17925
17926 1999-11-18  Tor Lillqvist  <tml@iki.fi>
17927
17928         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Also for truecolor
17929         drawables use just the pixel field in the foreground and
17930         background GdkColor of the GdkGC.
17931
17932         gdk_gc_set_{fore,back}ground() are called in the GIMP with
17933         GdkColors containing uninitialized (red,green,blue) fields, and
17934         just the pixel field filled in, and furthermore in the
17935         visual-dependent format as returned by gdk_rgb_xpixel_from_rgb().
17936         It thus turns out that we really don't need to have the full
17937         GdkColor for fg and bg in GdkGCWin32Data after all. Will change
17938         it later to have just the pixel values.
17939
17940 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
17941
17942         * docs/gtkfaq.sgml: s/gtk_main_iteration/g_main_iteration/
17943
17944 Sat Nov 13 22:30:29 GMT 1999 Tony Gale  <gale@gtk.org>
17945
17946         * docs/gtkfaq.sgml: threads example from Erik Mouw.
17947         New question on GtkLabel background colors.
17948
17949         * docs/gtk_tut.sgml:
17950           - Correct the example code callback
17951             function definitions.
17952           - Update the gtkdial example code, from Frans van Schaik.
17953           - Update setselection.c to current API.
17954
17955         * examples/Makefile examples/*/*.c: Update to code
17956         listed in tutorial.
17957
17958 1999-11-10  Tor Lillqvist  <tml@iki.fi>
17959
17960         * gdk/win32/gdkfont-win32.c: Fix a couple of bugs. The Unicode
17961         subrange table (from the "Developing International Software for
17962         WIndows 95 and Windows NT" book) was missing the Hangul syllable
17963         block... Get the loaded font's charset correctly.
17964
17965         (Note that this, and the other *-win32.c files, still really are
17966         the old ones, the win32 subdirectory is not ready for compilation
17967         yet after the reorg.)
17968
17969 Wed Nov 10 17:26:49 GMT 1999 Tony Gale  <gale@gtk.org>
17970
17971         * gtk/gtkclist.c: Fix off-by-one bug in parameter
17972         check.
17973
17974 Wed Nov 10 12:12:03 1999  Owen Taylor  <otaylor@redhat.com>
17975
17976         * gdk/x11/gdkinput-{x11,xfree}.c: Call XFreeDeviceState()
17977         on results of XQueryDeviceState().
17978
17979 Mon Nov  8 16:40:43 1999  Owen Taylor  <otaylor@redhat.com>
17980
17981         * gtk/gtkwidget.c: Substitute gdkx.h => gdkprivate.h since
17982         we need to accesss only ->children. We need an accessor
17983         for the children.
17984
17985         * gtk/gtkhandlebox.c gtk/testgtk.c: Substitute G
17986         DK_ROOT_PARENT() => NULL, in call to gtk_window_get_pointer()
17987         to get rid of gdkx.h include.
17988         
17989         * gtk/gtkctree.c: Get rid of #include <gdk/gdkx.h>
17990         and random references to 'None'.
17991
17992         * gtk/gtkclist.c gtk/gtkeditable.c gtk/gtkpreview.c
17993         Get rid of unused #include <gdk/gdkx.h>
17994
17995         * gtk/gtkrc.c gtk/gtkmain.c: Get rid of #include <gdk/gdkx.h>
17996         gdkx.h is _X_ specific stuff. GDK_WINDOWING comes from
17997         gdkconfig.h.
17998
17999 1999-11-08  Tor Lillqvist  <tml@iki.fi>
18000
18001         * gdk/win32/gdkdraw.c
18002         * gdk/win32/gdkfont.c
18003         * gdk/win32/gdkgc.c: Various minor cleanups and bugfixes
18004         following yesterday's changes. (Unrelated to Owen's reorg.)
18005
18006 Mon Nov  8 16:18:25 1999  Owen Taylor  <otaylor@redhat.com>
18007
18008         * gdk/x11/gdkinput-gxi.c: Add missing include,
18009           fix GdkWindowPrivate => GdkDrawablePrivate.
18010
18011         * gdk/x11/gdkinputprivate.h: include <X11/Xlib.h>.
18012
18013         * gdk/x11/Makefile.am (xinput_sources): Add missing
18014         backslash to fix building with --with-xinput=none
18015
18016 Mon Nov  8 14:47:04 1999  Owen Taylor  <otaylor@redhat.com>
18017
18018         Move all X specific code into the x11/ directory.
18019         Aside from shuffling things around, did the following:
18020
18021        * gdk/gdkprivate.h gdk/gdk.h gdk/x11/gdkmain-x11.h: Add
18022          gdk_arg_context_* - a simple argument parsing system
18023          in the style of popt.
18024
18025        * gdk/gdkdrawable.[ch] gdk/gdkprivate.h gdk/gdkwindow.[ch]
18026          gdk/x11/gdkprivate-x11.h:
18027          Remove X specific stuff from GdkDrawable and GdkWindowPrivate - 
18028          add ->klass and ->klass_data fields. The klass_data
18029          field points to an auxilliary structure that is
18030          windowing system dependent.
18031
18032        * gdk/gdkfont.c: Make most of the measurement functions
18033          simply wrappers around gdk_text_extents().
18034
18035        * gdk/gdkfont.c gdk/gdkprivate.h gdk/x11/gdkfont-x11.c: Add a 
18036          _gdk_font_strlen() function that hides the weird
18037          behavior in gtk+-1.[02] where a string is interpreted
18038          differently for 8-bit and 16-bit fonts.
18039
18040        * gdk/gdkevents.c: Add a new function gdk_event_button_generate()
18041          to store common code for synthesizing double/triple
18042          press events.
18043         
18044        * gdk/gdkgc.[ch]: Virtualize in the same way as gdkdrawable.h.
18045          Make all the function that modify an existing GC
18046          simply wrappers around gdk_gc_set_values().
18047          
18048        * gdk/gdkcc.[ch]: Moved into x11/ directory in preparation
18049          for throwing out later.
18050
18051        * gdk/gdkfont.c gdk/gdkimage.c gdk/gdkcolor.c: Change GdkFontPrivate,
18052          GdkImagePrivate and GdkColormapPrivate to have a
18053          windowing system dependent part (GdkFontPrivateX etc.)
18054          that "derives" from the system-independent part.
18055
18056        * configure.in gdk/x11/Makefile.in gdk/x11/gdkinput*.c:
18057          Got rid of the included-source-files for XInput in
18058          favor of automake conditionals. (Which didn't exist
18059          when XInput support was originally added.)
18060
18061        * gdk/gdkrgb.c: Remove the visual id from the debugging
18062          statements since that is X11 specific; print out
18063          type/depth info instead.
18064          
18065
18066 Wed Nov  3 18:14:49 1999  Owen Taylor  <otaylor@redhat.com>
18067
18068         * gdk/x11/gdkfont-x11.c (gdk_font_load): Ref fonts when
18069         loading duplicates of hashed fonts.
18070
18071         * gdk/gdk.c (gdk_keysym_convert_case): rename
18072         gdk_XConvertCase to gdk_keysym_convert_case, allow
18073         results to be NULL in the GTK+ style.
18074
18075         * gdk/gdkcompat.h: Started compatibility header
18076         for renames.
18077
18078 1999-11-07  Tor Lillqvist  <tml@iki.fi>
18079
18080         * gdk/win32/gdkprivate.h: New font private structures, related to
18081         fontsets.
18082
18083         * gdk/win32/gdkfont.c: New functions gdk_font_list_new() and
18084         gdk_font_list_free(). On X11, will just be wrappers to
18085         XListFonts() and XFreeFontNames(). On Win32, the code previously
18086         in gtkfontsel.c is now here.
18087
18088         New function gdk_font_xlfd_create(). On X11 will get the FONT
18089         property of the font (for GDK_FONT_FONTs), or call
18090         XBaseFontNameListOfFontSet (for GDK_FONT_FONTSETs), on Win32
18091         builds a XLFD style name from the font information in the LOGFONT
18092         struct(s).
18093
18094         New function gdk_font_xlfd_free(), which correspondingly frees the
18095         string returned by gdk_font_xlfd_create().
18096
18097         Implement fontsets on Win32. Add a function that iterates over a
18098         wide char string and calls a callback function for each substring
18099         of wide chars from the same Unicode subrange (and thus probably
18100         available in the same real font).
18101
18102         Improve the XLFD emulation a bit.
18103
18104         * gdk/win32/gdkim.c (gdk_nmbstowchar_ts): Small bugfix.
18105
18106         * gdk/win32/gdkevents.c: Workaround for suspected bug on Win2k
18107         Beta3, WM_IME_CHAR messages don't seem to contain the composed
18108         multi-byte char as with the Active IMM on Win9x. Oh well, handle
18109         WM_IME_COMPOSITION with GCS_RESULTSTR instead, use
18110         ImmGetCompositionStringW() to get the composed Unicode chars.
18111
18112         * gdk/win32/gdkgc.c
18113         * gdk/win32/gdkdraw.c: Changes needed because of the font private
18114         struct changes.
18115
18116         * gdk/win32/gdk.def: Add the new functions.
18117
18118 1999-11-04  Tor Lillqvist  <tml@iki.fi>
18119
18120         * config.h.win32: Don't define HAVE_DIMM_H if MSC, as you have to
18121         get the Platform SDK to get <dimm.h>.
18122
18123         * gdk/win32/gdkevents.c: More event handling fixes and
18124         simplification. Never generate motion events with is_hint true. We
18125         used to do that on bogus grounds earlier. Windows sends
18126         WM_MOUSEMOVE messages on button events even if the mouse hasn't
18127         moved, ignore these.
18128
18129         * gdk/win32/gdkfont.c: Load all fonts as (pretended) fontsets.
18130
18131         * gdk/win32/gdkglobals.c
18132         * gdk/win32/gdkprivate.h: Define a typedef for the pointer to
18133         the TrackMouseEvent function, and use it.
18134
18135         * gdk/win32/gdkwindow.c: Terminate widechar string with a zero
18136         char before calling WideCharToMultiByte in order to get a string
18137         for the window title.
18138
18139         * gdk/win32/gdkdnd.c: Some more random hacking, ifdeffed out.
18140
18141         * gdk/win32/gdk.def: Remove obsolete functions.
18142
18143         * gdk/win32/makefile.{cygwin,msc}: Remove gdkcompat.{o,obj}. Add
18144         /nodefaultlib and /defaultlib switches.
18145
18146         * gtk/gtkrc.c: s/gwin_getlocale/g_win32_getlocale/.
18147
18148 1999-10-31  Tor Lillqvist  <tml@iki.fi>
18149
18150         * gdk/gdkkeysyms.h: Add new keysyms from X11R6.4 (including
18151         EuroSign).
18152
18153         * gdk/gdktypes.h: Add note about wchar_t not necessarily being the
18154         same type as GdkWChar, especially on Win32.
18155
18156         * gdk/win32/*.c: Change gdk_root_parent to be a pointer.
18157
18158         * gdk/win32/*.c: Assume all strings are UTF-8. Convert to Unicode
18159         before passing to Windows GDI for drawing etc. Convert to the
18160         system default codepage before passing to Windows as window
18161         titles.
18162
18163         * gdk/win32/gdkprivate.h: Add more fields to GdkWindowPrivate to
18164         support changing input locale on the fly.
18165
18166         * gdk/win32/gdkevent.c: Support input language (keyboard locale)
18167         on-the-fly changes. Convert incoming characters from the current
18168         codepage to Unicode (and then to a UTF-8 multi-byte string) based
18169         on the current input language. Use keysym<->Unicode mapping tables
18170         and functions borrowed from xterm sources.
18171
18172         Support IMEs (Input Method Editors) for CJK languages. On non-CJK
18173         editions of Win9x, use the ActiveX-based Active IMM (Input Method
18174         Manager) if available. IMEs and the Active IMM are available under
18175         the disguise of Chinese, Korean and Japanese support for IE and
18176         Outlook Express from "Windows Update" for Win98. On Win2k, the CJK
18177         support is present in all editions (as long as you install it).
18178
18179         Call DispatchMessage from gdk_events_queue() (and thus
18180         gdk_WindowProc()), instead of duplicating the code in
18181         gdk_WindowProc().
18182
18183         Reworked the grab handling and propagation code, factored out
18184         duplicated code snippets into separate functions. Other cleanups,
18185         too.
18186
18187         * gdk/win32/surrogate-dimm.h: Provide just the bits we need from
18188         the <dimm.h> header describing the Active IMM.
18189
18190         * gdk/win32/gdkfont.c: Pretend to support fontsets, but so far
18191         just do the same as for "single" fonts.
18192
18193         * gdk/win32/gdk.c: Call CoInitialize() (COM initialisation) from
18194         gdk_init_check, and CoUninitialize() from gdk_exit_func. Handle
18195         the new keysyms from gdkkeysyms.h.
18196
18197         * gtk/gtkfontsel.c (Win32): Load the font for the preview as a
18198         fontset, so that gtkentry uses wide characters.
18199
18200         * gtk/gtkrc.c (Win32): Get the locale with gwin_getlocale(). Call
18201         GTk+'s system directory "gtk+", not "gtk".
18202
18203 Sat Oct 30 13:17:18 BST 1999 Tony Gale <gale@gtk.org>
18204
18205         * docs/gtkfaq.sgml: FAQ update
18206
18207 1999-10-21  Tor Lillqvist  <tml@iki.fi>
18208
18209         * gdk/win32/gdkprivate.h: Add more font private data.
18210
18211         * gdk/win32/gdkfont.c
18212         * gdk/win32/gdkdraw.c: Revamped handling of multi-byte charset
18213         fonts and strings. Now works much better. You still have to
18214         have a correct font selected, though. No fontset emulation yet.
18215
18216 1999-10-19  Tor Lillqvist  <tml@iki.fi>
18217
18218         * gtk/maketypes.awk: Use G_OS_WIN32.
18219
18220         * gtk/gtk.def: Add some missing entry points. Also some non-public
18221         ones, but PyGTK porter claims to need them.
18222
18223         * gtk/makefile.{cygwin,msc}: Drop some unneeded headers from the
18224         built-in type generation.
18225
18226 1999-10-14  Tor Lillqvist  <tml@iki.fi>
18227
18228         * gdk/win32/gdkdraw.c (gdk_draw_text_wc): Don't use TextOutW for
18229         GDK_FONT_FONT fonts (which is all we have for now, we don't
18230         emulate fontsets). The X11 version uses plain XDrawString in that
18231         case, too. The string passed to gdk_draw_text_wc seems to be in
18232         fact (at least, when used by gtkentry and gtktext) either in a
18233         single-byte charset, or a DBCS. Not Unicode.
18234
18235         This fixes the problem in gtkfontsel, where even if you had
18236         selected a font with a non-Latin1 charset (windows-greek, for
18237         instance), the preview still used Latin-1 glyphs.
18238
18239         * gdk/win32/gdkfont.c (gdk_text_width_wc): Similar change. Don't
18240         use GetTextExtentPoint32W, use GetTextExtentPoint32A.
18241         (gdk_font_load): Recognize the demibold etc weights, even if we
18242         don't have the corresponding constants in the headers.
18243         (gdk_font_hash_insert): Use same hash mechanism as in the X11
18244         version. Should save font resources a bit, when we don't have
18245         multiple HFONTs for the same font.
18246
18247         * gdk/win32/gdkprivate.h: Add the names field as in the X11
18248         version.
18249
18250 1999-10-11  ERDI Gergo  <cactus@cactus.rulez.org>
18251
18252         * gdk/gdk.c (gdk_beep): Modified the XBell call to use the default
18253         X values
18254
18255 1999-10-09  ERDI Gergo  <cactus@cactus.rulez.org>
18256
18257         * gtk/gtktoolbar.h, gtk/gtktoolbar.c: Added horizontal icon/text
18258         layout support (as mentioned on
18259         http://www.jcinteractive.com/gnome-ui/software/widgets/)
18260
18261 Wed Oct  6 12:46:17 PDT 1999 Manish Singh <yosh@gimp.org>
18262
18263         * gtk/fnmatch.c
18264         * gtk/gtkfilesel.c: s/G_HAVE_CYGWIN/G_WITH_CYGWIN/
18265
18266 1999-10-05  Jesus Bravo Alvarez  <jba@pobox.com>
18267
18268         * configure.in (ALL_LINGUAS): Added Galician (gl)
18269
18270 1999-10-05  Tor Lillqvist  <tml@iki.fi>
18271
18272         * gdk/win32/*.[ch]: Corresponding changes as in X11 backend.
18273
18274         * gdk/win32/gdkcompat.c: New file, actually provide an
18275         implementation for the deprecated functions. (Just temporarily.)
18276
18277         * gtk/gtkfilesel.c: Fix an #ifdef syntax botch.
18278
18279         * gtk/makefile.{cygwin,msc}: Update gdk_headers.
18280
18281         * gdk/win32/gdk.def gtk/gtk.def: Updates.
18282
18283 1999-10-05  Kjartan Maraas  <kmaraas@online.no>
18284
18285         * configure.in: Added "uk" to ALL_LINGUAS.
18286         
18287 Mon Oct  4 11:57:11 PDT 1999 Manish Singh <yosh@gimp.org>
18288
18289         * configure.in: correct checking for BeOS check
18290
18291         * gdk/gdktypes.h
18292         * gtk/fnmatch.c
18293         * gtk/gtkfilesel.c
18294         * gtk/gtkitemfactory.c
18295         * gtk/gtkmain.[ch]
18296         * gtk/gtkrc.c: use G_OS_WIN32 and G_HAVE_CYGWIN #defines
18297
18298 Mon Oct  4 16:16:53 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
18299
18300         * gtk/gtkrc.{bg,iso88591[345]}: add gtkrc files for some new charset
18301         encodings: iso-8859-13 (for Lithuanian), iso-8859-14 (used by celtic
18302         languages), iso-8859-15 (used in Estonia) and microsoft-cp1251 (used
18303         by Bulgarian). 
18304
18305 Sun Oct  3 18:13:44 1999  Owen Taylor  <otaylor@redhat.com>
18306
18307         * gtk/gtkwidget.c (gtk_reset_shapes_recurse): 
18308         Fix a reference to window_private->destroyed.   
18309
18310         * gtk/gtkplug.c (gtk_plug_realize): Fix up a direct
18311         (ugly) setting of an internal GdkWindow member to use
18312         a _slightly_ cleaner macro.
18313
18314         * gdk/gdkprivate.h: Split GdkWindowPrivate into
18315         GdkDrawablePrivate and GdkWindowPrivate.
18316         Add extra macros for accessing GDK_DRAWABLE_ components.
18317
18318         * *.[ch]: Massive adjustments for the above, use the
18319         new macros in a lot of places.
18320
18321 Sun Oct  3 15:16:24 1999  Owen Taylor  <otaylor@redhat.com>
18322
18323         * gdk/gdktypes.h: Make GdkDrawable the base type,
18324         not GdkWindow.
18325
18326 Sun Oct  3 15:08:44 1999  Owen Taylor  <otaylor@redhat.com>
18327
18328         * gdk/gdkdraw.c (gdk_drawable_get_data): Added new function.
18329
18330 Sun Oct  3 14:26:15 1999  Owen Taylor  <otaylor@redhat.com>
18331
18332         * gdk/gxid* gdk/x11/gxid*: Move files into x11 subdirectory.
18333
18334 Sun Oct  3 14:16:23 1999  Owen Taylor  <otaylor@redhat.com>
18335
18336         * gdk/gdkdrawable.h: Include gdk/gdkdrawable.h with
18337         gdk/ prefix. (Pointed out by chak@is.tsukuba.ac.jp)
18338
18339         * configure.in gdk/Makefile.am x11/: create x-specific subdirectory.
18340
18341         * docs/gtk-config.1: Now autogenerated.
18342         * docs/Changes-1.4.txt: started
18343         
18344 1999-10-03  Tor Lillqvist  <tml@iki.fi>
18345
18346         * gdk/gdkimage.h gdk/gdkpixmap.h: Change GDK_WINDOWING_WIN32 usage
18347         to #ifdef also here.
18348
18349         * gdk/win32/*.h gdk/win32/*.c: Make corresponding changes as those
18350         Owen did to the X11 backend.
18351
18352         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Fix it again, don't use
18353         ScrollWindowEx when blitting inside a window, it can't be correct
18354         in the general case.
18355
18356         * gdk/win32/gdkevents.c: Don't handle WM_SIZING, handling
18357         WM_GETMINMAXINFO is easier.
18358
18359         * gdk/win32/gdkimage.c (gdk_image_new): Create new image with
18360         depth equal to the bitspixel value, not the visual's depth.
18361
18362         * gdk/win32/gdkvisual.c (gdk_visual_init): Set the visual's depth
18363         to 24 even if the bitspixel value is 32.
18364
18365         * gdk/gdkrgb.c (gdk_rgb_select_conv): After the above change, no
18366         need to check for depth==32 when bpp==32, depth will always be 24.
18367
18368 Fri Oct  1 18:03:36 1999  Owen Taylor  <otaylor@redhat.com>
18369
18370         * docs/Changes-1.4.txt: Started
18371         
18372         * gtk/Makefile.am (gdk_headers): Include all the new headers.
18373
18374         * gdk/*.h gdk/*.c: Split gdk.h into lots of itty-bitty little pieces.
18375         
18376         * gdk/gdkprivate.h gdk/gdkcc.c: Moved GdkColorContext private
18377         into C file.
18378         
18379         * gdkinput.h gdkinputprivate.h - renamed the internal gdkinput
18380         header to gdkinputprivate.h.
18381
18382         * gdk/gdk.h gdk/gdk.c: Removed gdk_time* functions which have been
18383         unused since before 1.2.
18384
18385 1999-09-30  Tor Lillqvist  <tml@iki.fi>
18386
18387         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): On Win32,
18388         expand possible hex escapes in the font family (put there by
18389         logfont_to_xlfd if the font name isn't a legal XLFD font family,
18390         mainly if it contains slashes). (gtk_font_selection_create_xlfd):
18391         On Win32, add hex escapes here, too.
18392
18393 Wed Sep 29 19:55:35 1999  Owen Taylor  <otaylor@redhat.com>
18394
18395         * */*.[ch]: Changed from #if GDK_WINDOWING == GDK_WINDOWING_X11
18396         to #ifdef GDK_WINDOWING_X11.
18397
18398 [ Merges from gtk-1-2 ]
18399
18400 Wed Sep  8 07:13:29 1999  Tim Janik  <timj@gtk.org>
18401
18402         * configure.in: fixed "GNU Make" check to pass with new make version
18403         3.77.95.
18404
18405 Fri Sep  3 16:04:41 1999  Tim Janik  <timj@gtk.org>
18406
18407         * gtk-config.in (--version): don't echo @GTK_VERSION@, but
18408         @GTK_MAJOR_VERSION@.@GTK_MINOR_VERSION@.@GTK_MICRO_VERSION@, so the
18409         AM_PATH_GTK() macros don't get confused by the -pre1.
18410
18411 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
18412
18413         * configure.in (REBUILD): Change check for perl5
18414           to check explicitely for v >= 5.002. (5.001
18415           does not work with our scripts.)
18416
18417 Wed Aug 25 15:45:46 1999  Tim Janik  <timj@gtk.org>
18418
18419         * configure.in: evaluate $PERL for the perl version check. added
18420         --disable-rebuilds to give the user an option to completely disable
18421         any source autogeneration rules.
18422
18423 Mon Aug 23 23:16:14 1999  Tim Janik  <timj@gtk.org>
18424
18425         * configure.in: evaluate $ac_make when checking for GNU Make.
18426
18427 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
18428
18429         * docs/Makefile.am: added generation.txt.
18430
18431         * Makefile.am: require automake 1.4, build README from README.in and
18432         INSTALL from INSTALL.in in dist-hook.
18433         
18434         * README.in:
18435         * INSTALL.in: new files to autogenerate README and INSTALL from.
18436
18437         * configure.in: figure whether we have GNU Make
18438
18439         * docs/generation.txt: minor additions/corrections.
18440
18441 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
18442
18443         * docs/gtkfaq.sgml: FAQ Update
18444
18445 July 30, 1999 Elliot Lee <sopwith@redhat.com>
18446         
18447         * configure.in: Fix autoconf warnings about cross compilation by
18448         trying to provide sane defaults for AC_TRY_RUN.
18449
18450 Fri Jul 16 22:20:21 PDT 1999 Manish Singh <yosh@gimp.org>
18451
18452         * ltconfig
18453         * ltmain.sh: upgrade to libtool 1.3.3
18454
18455 Thu Jul  8 11:30:18 1999  Owen Taylor  <otaylor@redhat.com>
18456
18457         * INSTALL: Indicate that the --with-glib= configure
18458         time flag is unsupported.
18459
18460 Mon Jul  5 20:36:03 1999  Owen Taylor  <otaylor@redhat.com>
18461
18462         * docs/generation.txt: Added a file that gives
18463         documenation about the autogeneration process for
18464         various autogenerated files.
18465         
18466 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
18467
18468         * configure.in (LIBS): Look for libgmodule in the
18469         right location.
18470
18471 Thu Jun 17 13:57:31 1999  Owen Taylor  <otaylor@redhat.com>
18472
18473         * docs/gtk_tut.sgml: Removed references to
18474         code examples in my directory on gtk.org as
18475         they should all be in the tutorial now.
18476
18477         * docs/gtk_tut.sgml: Added sources for dial-test
18478         and scribble-xinput programs that were previously
18479         missing.
18480
18481 Fri Jun  4 00:08:59 1999  Owen Taylor  <otaylor@redhat.com>
18482
18483         * TODO: Added entry about menu keyboard navigation, removed
18484         some finished items.
18485
18486 Mon May 31 00:11:24 1999  Owen Taylor  <otaylor@redhat.com>
18487
18488         * acinclude.m4: Standardize on func_dgettext
18489         not func_gettext, so that the checks for dgettext
18490         actually are paid attention to.
18491
18492 Wed May  5 10:47:54 1999  Owen Taylor  <otaylor@redhat.com>
18493
18494         * configure.in (LIBS): Add $INTLLIBS into $LIBS
18495         directly, rather than repeating the checks for
18496         gettext.
18497
18498         * INSTALL: Added information about gettext and
18499         NLS support.
18500
18501         * acinclude.m4 (LIBM): Check for dgettext, not
18502         just gettext. This should hopefully fix things wrt
18503         systems with old versions of GNU gettext installed.
18504
18505 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
18506
18507         * configure.in (LIBS): Look for libgmodule in the
18508         right location.
18509
18510 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
18511
18512         * autogen.sh: add --enable-maintainer-mode
18513
18514         * configure.in: set ACLOCAL="$ACLOCAL $ACLOCAL_FLAGS"
18515
18516 Wed Mar 24 23:03:49 CST 1999 Shawn T. Amundson <amundson@gtk.org>
18517
18518         * docs/gtk-config.1.in:
18519           docs/Makefile.am:
18520           configure.in: gtk-config is now generated.
18521
18522         * docs/gtk-config.1: Removed, now generated.
18523
18524 Thu Sep 23 17:59:59 1999  Tim Janik  <timj@gtk.org>
18525
18526         * gdk/gdkevents.c (gdk_event_translate): grr, even if Gdk doesn't
18527         handle CreateNotify itself, still put out a debuging message for
18528         --gdk-debug=events. made the ReparentNotify debugging message more
18529         verbose.
18530         wrap xcoords translation for ConfigureEvents into an error trap,
18531         a destroy event may already be pending, and in that case, the
18532         actuall coordinate values are not at all critical.
18533
18534 Sat Sep 18 22:24:15 1999  Owen Taylor  <otaylor@redhat.com>
18535
18536         * gdk/gdkcc.c: Stop leaking the color_hash all over
18537         the place. Simplify and improve the logic.
18538
18539 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
18540
18541         * gdk/gdk.h, gdk/gdkcolor.c: make return types (gint or gboolean)
18542         for prototypes and function implementations consistent (reported
18543         by Tomas Ogren).
18544
18545 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
18546
18547         * gdk/gdkevents.c (gdk_event_translate): tell if expose events have
18548         send_event set in debugging output.
18549         (gdk_compress_exposures): default initialize the event so we don't
18550         operate on bogus values (namely send_event).
18551
18552 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
18553
18554         * gdk/gdkwindow.c: When we receive an unexpected
18555         destroy notify on one of our windows, don't just
18556         warn about it, also mark our windows as destroyed.
18557
18558 Sun Sep  5 08:10:53 1999  Owen Taylor  <otaylor@redhat.com>
18559
18560         * gdk/gdkfont.c (gdk_font_hash_insert): Add
18561           name => font and name => fontset hashes. The 
18562           name => fontset hash is a _big_ win since we
18563           weren't previously caching fontsets at all and loading
18564           fontsets is expensive. The name => font hash
18565           is less of a win, but it does save us from doing
18566           repeated XQueryFont calls on the same font.
18567
18568         * gdk/gdkprivate.h (struct _GdkFontPrivate): Add a names
18569           list so we can remove font/fontset from hash.
18570
18571 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
18572
18573         * gdk/gdkproperty.c (gdk_atom_intern): Remove useless
18574           and slightly confusing test. [ XInternAtom (,,TRUE)
18575           will never return None ].
18576
18577 Sat Sep  4 08:39:26 1999  Owen Taylor  <otaylor@redhat.com>
18578
18579         * gdk/gdkwindow.c (gdk_window_set_geometry_hints)
18580           gdk/gdkwindow.c (gdk_window_set_hints):
18581
18582         Don't omit setting the properties if flags == 0 -
18583         there may be an existing set of properties there
18584         already. (Very old bug. Would it be better to
18585         delete the property instead?)
18586
18587         * gdk/gdkselection.c (gdk_selection_property_get): Fix 
18588           spelling error in comment.
18589
18590 Wed Sep  1 14:05:30 1999  Owen Taylor  <otaylor@redhat.com>
18591
18592         * gdk/gdkimage.c (gdk_image_new): Use gdk_error_trap_push()
18593           to avoid stomping over gdk_error_warnings.
18594
18595         * gdk/gdkimage.c (gdk_image_new): compute image->bpp
18596           as (bits_per_pixel + 7) / 8. This gives the same
18597           result as before for multiples of 8, but actually
18598           a "reasonable" value for 1bit or 4bit displays.
18599
18600 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
18601
18602         * gdk/Makefile.am: minor cleanups, strip spaces on build rules for
18603         GNU Make.
18604
18605 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
18606
18607         * gdk/gdkevents.c (gdk_event_translate): give a debugging note when
18608         discarding configure events.
18609
18610 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
18611
18612         * gdk/gdkpixmap.c (gdk_pixmap_unref): g_return_if_fail() the
18613         refcount is greater than zero.
18614
18615         * gdk/gdkwindow.c (gdk_window_unref): Likewise.
18616
18617         * gdk/gdkfont.c (gdk_font_unref): Likewise.
18618
18619         * gdk/gdkgc.c (gdk_gc_unref): Likewise.
18620
18621         * gdk/gdkdnd.c (gdk_drag_context_unref): Likewise.
18622
18623 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
18624
18625         * gdk/gdkproperty.c (gdk_property_get): Fix assumption
18626         that format 32 => sizeof(item) == 4. It really is
18627         sizeof(long).
18628
18629 Tue Jun 29 23:02:42 1999  Owen Taylor  <otaylor@redhat.com>
18630
18631         * gdk/gdk.c (gdk_x_error / gdk_x_io_error): Don't
18632         core dump at all on X IO errors, only core dump
18633         if --enable-debug for X errors.
18634
18635 Thu Jun 24 17:06:23 1999  Tim Janik  <timj@gtk.org>
18636
18637         * gdk/gdkevents.c (gdk_event_translate): removed old ""Got event for
18638         unknown window:" message. disabled ConfigureNotify discarding code,
18639         because it led to events being processed out of order.
18640
18641 Thu Jun 24 12:22:02 1999  Tim Janik  <timj@gtk.org>
18642
18643         * gdk/gdkglobals.c: preinitialize gdk_error_code to 0.
18644
18645         * gdk/gdkevents.c (gdk_event_send_client_message_to_all_recurse): since
18646         we export this function, supress error warnings and don't reset the
18647         error code in the first half of this function.
18648
18649         * gdk/gdk.c (gdk_x_error): set gdk_error_code to the actuall X error
18650         code (instead of just -1) so gdk_error_trap_pop() reveals something
18651         actually informative about the error that happened.
18652
18653         * gdk/*.c:
18654         don't rely on gdk_error_code being -1 if an error occoured, but just
18655         gdk_error_code != 0.
18656
18657 Thu Jun 24 11:50:07 1999  Tim Janik  <timj@gtk.org>
18658
18659         * gdk/gdkevents.c (gdk_event_apply_filters): advance the filter list
18660         pointer *before* invoking the filter function, so we at least don't
18661         crash if a filter is removed that is currently executed. window filters
18662         *really* need to be made truely reentrant at some point.
18663
18664 Mon Jun 14 11:10:15 1999  Tim Janik  <timj@gtk.org>
18665
18666         * gdk/gdkevents.c (gdk_event_translate): print the atom name in the
18667         PropertyNotify debug messages.
18668
18669 Wed May  5 22:51:06 1999  Owen Taylor  <otaylor@redhat.com>
18670         
18671         Patch from Sung-Hyun Nam <namsh@lgic.co.kr>
18672         
18673         * gdk/gdkim.c: Fix cut-and-paste errors for 
18674         x/y and PreeditAttributes/StatusAttributes.
18675
18676 Wed May  5 22:24:21 1999  Owen Taylor  <otaylor@redhat.com>
18677
18678         * gdk/gdkwindow.c (gdk_window_set_geometry_hints): Change
18679         G_MAXINT to 2^16 to alleviate overflow problems in
18680         various window managers.
18681
18682 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
18683
18684         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
18685         for fontsets.
18686
18687 Wed May  5 12:42:01 1999  Owen Taylor  <otaylor@redhat.com>
18688
18689         * gdk/gdkwindow.c (gdk_window_set_geometry_hints):
18690         Initialize size_hints.x and size_hints.y because kwm
18691         brokenly pays attention to them.
18692         (Bug #1181 -  Lars Heete <hel@admin.de>)
18693
18694 Wed May  5 11:38:56 1999  Owen Taylor  <otaylor@redhat.com>
18695
18696         * gdk/gdkrgb.c (gdk_rgb_choose_visual): Free the 
18697         return value of gdk_list_visuals(). 
18698         (Bug #1193 - Morten Welinder <terra@diku.dk>)
18699
18700 Tue May  4 11:12:56 PDT 1999 Manish Singh <yosh@gimp.org>
18701
18702         * gdk/gdkim.c (gdk_im_real_open): cast the return value of
18703         XSetIMValues to (void *) when comparing to NULL, to workaround
18704         the problem of some compilers barfing since older X headers don't
18705         have the prototype for it.
18706
18707 Mon Apr 19 10:11:12 1999  Owen Taylor  <otaylor@redhat.com>
18708
18709         * gdk/gdkcolor.c (gdk_colormap_new): Fix memory leak
18710         for pseudocolor where colormap->colors was double
18711         allocated.
18712
18713         * gdk/gdkcolor.c (gdk_colormap_alloc1): Store the
18714         color value in the hash table with the pixel filled
18715         in so when we do later hash table lookups, the color
18716         value is correct.
18717         
18718 Sun May  2 15:29:45 PDT 1999 Manish Singh <yosh@gimp.org>
18719
18720         * gdk/gdkdraw.c (gdk_draw_lines): check private->destroyed before
18721         making the call
18722
18723 Tue Apr 27 11:17:35 1999  Owen Taylor  <otaylor@redhat.com>
18724
18725         * gdk/gdkdnd.c (xdnd_set_{targets,actions}): Fix leak
18726         pointed out by Morten Welinder <terra@diku.dk>.
18727
18728 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
18729
18730         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
18731           default filter from the list
18732
18733 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
18734
18735         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
18736           default filter from the list
18737
18738 Fri Apr 16 20:41:43 PDT 1999 Manish Singh <yosh@gimp.org>
18739
18740         * gdk/gdk.c: #include "gdkkeysyms.h" for gdk_XConvertCase #defines
18741
18742         * gtk/gtkfontsel.c (gtk_font_selection_create_xlfd): use
18743         g_strdup_printf instead of calcing the length separately
18744
18745 Tue Apr 13 02:49:33 1999  Owen Taylor  <otaylor@redhat.com>
18746
18747         * gdk/gdkwindow.c: removed some silly #ifdef HAVE_CONFIG
18748         that we don't do in many other places. (Fixing duplicate 
18749         #include of config.h)
18750
18751         * gdk/gdkevents.c: include gdkinput.h _after_ config.h.
18752         Otherwise, #ifndef XINPUT_NONE check in the latter
18753         doesn't work. (Bug #546)
18754
18755 Sun Apr 11 14:38:03 1999  Tim Janik  <timj@gtk.org>
18756
18757         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): check for color
18758         "None" case insensitive.
18759
18760 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
18761
18762         * gdk/gdkselection.c: 
18763         Add error traps so if the other end of the connection
18764         dies, we survive.
18765
18766 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
18767
18768         * gdk/gdkdnd.c (gdk_drag_motion): Separate out the
18769         dest_xid field into two fields - one for the window
18770         to send in messages, one to indicate the last looked
18771         up window for caching purposes. This is needed, so
18772         that Leave messages get the correct window.
18773
18774 Mon Apr  5 13:21:30 1999  Owen Taylor  <otaylor@redhat.com>
18775
18776         * gdk/gdkevents.c (gdk_event_check, gdk_event_prepare):
18777         Fix warning created by people mucking around
18778         with the gsource API.
18779
18780         * gdk/gdkevents.c (gdk_io_invoke, gdk_input_add_full):
18781         Change mapping between GIOCondition and GdkInputCondition
18782         to match the way the Linux kernel does it. This should
18783         fix problems where closed pipes were no longer signalling
18784         GDK_INPUT_READ on systems with a native poll().
18785
18786 Mon Apr  5 17:11:57 1999  Owen Taylor  <otaylor@redhat.com>
18787
18788         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): Check 
18789         explicitly for the string "None" - it is in the XPM
18790         spec and some servers treat unknown colors in odd ways
18791         (like asking the user!)
18792
18793 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
18794
18795         * gdk/gdkevents.c: made "->" into a "." of previous change so
18796         it compiles
18797
18798 Thu Apr  1 18:41:25 1999  Owen Taylor  <otaylor@redhat.com>
18799
18800         * gdk/gdkevents.c (gdk_compress_exposures): Set the
18801         window field of the event structure before calling
18802         user filters.
18803
18804 1999-03-31  Federico Mena Quintero  <federico@nuclecu.unam.mx>
18805
18806         * gdk/gdk.c (gdk_init_check): Use False as the last argument to
18807         XInternAtom() here.  This is a particularly Old And Nasty(tm) bug.
18808
18809 Mon Mar 29 17:31:52 1999  Owen Taylor  <otaylor@redhat.com>
18810
18811         * gdk/gdkim.c (gdk_mbstowcs): Free the value of the
18812         intermediate text property - prevents major memory
18813         leak when gdk_use_mb.
18814         gtk-d3august-990311-0: Bj|rn Augustsson <d3august@dtek.chalmers.se>
18815
18816 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
18817
18818         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
18819         gtk-a-higuti-990322-[0-3]
18820
18821         * gdk/gdkfont.c (gdk_text_extents_wc): Make  work when
18822         sizeof(wchar_t) != sizeof (GdkWChar)
18823
18824         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
18825         that was causing -DX_LOCALE not to work.
18826
18827         * gtk/gtkrc.c (gtk_rc_init):
18828         X_LOCALE will never have LC_MESSAGES defined
18829
18830         * gdk/gdk.c (gdk_init_check):
18831         Remove --xim-preedit and --xim-status from argv properly.
18832
18833         * gdk/gdkim.c (gdk_ic_real_new): Add a gdk_flush() so
18834         that the client window is present on the X server
18835         before we pass it to the input method.
18836
18837 Tue Mar  9 10:46:49 1999  Owen Taylor  <otaylor@redhat.com>
18838
18839         * gdk/gdkdnd.c (motif_find_drag_window): Fix bug where
18840         if --display is specified on the command line, than
18841         the drag window will not be created on that display.
18842         
18843 Tue Mar  9 10:38:24 1999  Owen Taylor  <otaylor@redhat.com>
18844
18845         * gdk/gdkproperty.c (gdk_atom_intern): Fixed bug where
18846         lookups with only_if_exists == TRUE were inserting
18847         bogus values into the atom cache.
18848
18849 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
18850
18851         * gdk/gdkselection.c (gdk_selection_property_get): first XFree(t),
18852         then reset it to NULL.
18853
18854         * gdk/gdkcolor.c:
18855         (gdk_colors_free): 
18856         (gdk_colormap_free_colors): use colormap->colors[in_pixels[i]] as the
18857         key for g_hash_table_remove() in both functions, this prevents us
18858         from accessing possibly uninitialized portions of a GdkColor structure
18859         where we are only interested in its pixel value.
18860
18861 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
18862
18863         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
18864         font hash table, if we have a GdkFontPrivate entry for this font
18865         already, simply increment its reference count, provided by Olaf Dietsche
18866         <olaf.dietsche+list.gtk@netcologne.de>.
18867
18868 1999-09-21  Tor Lillqvist  <tml@iki.fi>
18869
18870         * gdk/win32/gdk.c (gdk_exit_func): Delete the gdk_DC when exiting,
18871         just to be sure.
18872
18873         * gdk/win32/gdkvisual.c (gdk_visual_init): Remove a couple of
18874         unused variables, leftovers from the X11 version.
18875
18876         * gdk/win32/rc/*.cur: Better cursors provided by Bernd Herd.
18877
18878         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): Only
18879         downcase fields on X11.
18880
18881 Mon Sep 20 13:17:39 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
18882         
18883         * configure.in,po/pt_BR.po: added Portuguese Brazilian file from
18884         Alex Sandro Queiroz e Silva <asandro@lcg.dc.ufc.br>
18885
18886 1999-09-17  Tor Lillqvist  <tml@iki.fi>
18887
18888         * gdk/win32/gdk.def: Add gdk_threads_mutex.
18889
18890         * gtk/makefile.msc: Correct path to libintl.
18891
18892         Thanks to Tomi Ollila and Bernd Herd: Fix some inconsistencies in
18893         use of gint vs. int, and gint vs. gboolean in headers and
18894         definitions. Use GtkType for the *_get_type functions. Note that
18895         these changes preserve binary compatibility.
18896
18897         * gdk/gdk.c
18898         * gdk/win32/gdk.c
18899         * gdk/gdk.h: Fix inconsistencies: gint vs int.
18900
18901         * gtk/gtkmain.c
18902         * gtk/gtkclist.c
18903         * gtk/gtkmenufactory.c
18904         * gtk/gtknotebook.c
18905         * gtk/gtkwidget.c: Fix inconsistencies, also gint
18906         vs. gboolean.
18907
18908         * gtk/gtkcolorsel.[ch]
18909         * gtk/gtkcombo.[ch]
18910         * gtk/gtkdrawingarea.[ch]
18911         * gtk/gtkgamma.[ch]
18912         * gtk/gtkhandlebox.[ch]
18913         * gtk/gtkhpaned.[ch]
18914         * gtk/gtkhruler.[ch]
18915         * gtk/gtkplug.[ch]
18916         * gtk/gtkpreview.[ch]
18917         * gtk/gtkruler.[ch]
18918         * gtk/gtksocket.[ch]
18919         * gtk/gtkstatusbar.[ch]
18920         * gtk/gtktoolbar.[ch]
18921         * gtk/gtkvbbox.[ch]
18922         * gtk/gtkvpaned.[ch]
18923         * gtk/gtkvruler.[ch]: Always use type GtkType for the *_get_type
18924         functions.
18925
18926         * gtk/gtkgamma.h: Fix bug, missing () in call of
18927         gtk_gamma_curve_get_type() in GTK_GAMMA_CURVE_CLASS. 
18928
18929 1999-09-14  Tor Lillqvist  <tml@iki.fi>
18930
18931         * gdk/gdkcolor.c (gdk_colormap_new)
18932         * gdk/win32/gdkcolor.c (gdk_colormap_new): Fix memory leak:
18933         colormap->colors was allocated twice.
18934
18935         * gdk/win32/gdk.c: Remove some unused stuff.
18936
18937         * gdk/win32/gdkcolor.c (gdk_colormap_sync): Initialize all of the
18938         colormap.
18939
18940         * gtk/gtkfontsel.c (gtk_font_selection_dialog_get_type)
18941         * gtk/gtklabel.h (gtk_label_get_type)
18942         * gtk/gtktipsquery.c (gtk_tips_query_get_type)
18943         * gtk/gtktypeutils.h (gtk_type_name): : Use GtkType
18944         in a couple of places, not guint.
18945
18946 Fri Sep 10 21:31:00 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
18947
18948         * configure.in,po/et.po: added Estonian language file
18949
18950 Wed Sep  1 14:36:12 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
18951
18952         * configure.in,po/da.po: added Danish file
18953
18954 Sun Aug 29 13:38:59 BST 1999 Tony Gale <gale@gtk.org>
18955
18956         * docs/gtkfaq.sgml: Minor FAQ Update
18957
18958 Sat Aug 28 14:34:37 BST 1999 Tony Gale <gale@gtk.org>
18959
18960         * docs/gtkfaq.sgml: FAQ update
18961
18962 1999-08-27  Tor Lillqvist  <tml@iki.fi>
18963
18964         Win32: Philippe Colantoni <colanton@aris.ss.uci.edu> suggests a
18965         way to get window contents continually refreshed while resizing. I
18966         didn't like the effects myself, so it's not on by default.
18967
18968         * gdk/win32/gdkprivate.h: New flag variable
18969         gdk_event_func_from_window_proc, FALSE by default.
18970
18971         * gdk/win32/gdk.c (gdk_init_check): Set above flag if the
18972         environment variable GDK_EVENT_FUNC_FROM_WINDOW_PROC is set, or we
18973         are passed --gdk-event-func-from-window-proc.
18974
18975         * gdk/win32/gdkevents.c (gdk_WindowProc): If above flag is set,
18976         and we have am event_func, call it instead of enqueing the event.
18977
18978 1999-08-23  Tor Lillqvist  <tml@iki.fi>
18979
18980         * gdk/win32/gdkevents.c (gdk_event_translate): Fix from Simon
18981         Kelley: Set expose_count in GdkEventExposes correctly.
18982
18983         * gdk/win32/gdkwindow.c: Remove dead code (#ifdef
18984         MULTIPLE_WINDOW_CLASSES).
18985
18986         * gdk/win32/gdkdraw.c (gdk_draw_line): Workaround from Hans Breuer
18987         for bug in NT, apparently NT *does* draw the end pixel, too, in
18988         LineTo with a one-pixel pen, so we don't have to do it ourselves.
18989
18990 1999-08-21  Tor Lillqvist  <tml@iki.fi>
18991
18992         Improvements by Hans Breuer: 
18993
18994         * gdk/win32/gdkwindow.c (RegisterGdkClass): New function
18995
18996         * gdk/win32/gdkwindow.c (gdk_window_new): Use it. Don't set the
18997         CS_?REDRAW flags as they cause lots of (late) redraws when "show
18998         window contents while dragging" is turned on. Allocate at least
18999         one unique class for every GdkWindowType. If support for single
19000         window-specific icons is ever needed (eg. Dialog specific), every
19001         such window should get its own class.
19002
19003 1999-08-19  Tor Lillqvist  <tml@iki.fi>
19004
19005         * gdk/win32/gdkgc.c (gdk_gc_new_with_values): Fix a cut&paste
19006         error that caused crashes.
19007
19008 1999-08-17  Tor Lillqvist  <tml@iki.fi>
19009
19010         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): When blitting inside one
19011         window, use ScrollWindowEx, and call UpdateWindow. This prevents
19012         bugs when for instance part of the window was outside the
19013         display. Thanks to Philippe Colantoni for finding and fixing this.
19014
19015 1999-08-16  Tor Lillqvist  <tml@iki.fi>
19016
19017         * gdk/win32/gdkdraw.c (gdk_draw_arc): Fix start and end radial
19018         endpoint calculations which were totally wrong. (A little RTFMing
19019         helps a lot ;-)
19020
19021         * gtk/makefile.{cygwin,msc}: Use libintl extracted from glibc
19022         from a separate directory, not from gettext, because of licensing
19023         issues (we want to use the LGPL version).
19024
19025         * README.win32: Mention the intl from glibc vs from gettext issue.
19026
19027 1999-08-13  Tor Lillqvist  <tml@iki.fi>
19028
19029         * gdk/win32/gdkevents.c (gdk_event_translate): Fix a couple of bugs
19030         in the key event handling: Now AltGr chars work again. Also,
19031         now Alt-digits are passed up as well as Control-digits.
19032         Pass keypad plus and minus as normal plus and minus.
19033
19034 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
19035
19036         * docs/gtkfaq.sgml: FAQ Update
19037
19038 1999-07-25  Tor Lillqvist  <tml@iki.fi>
19039
19040         * README.win32
19041         * config.h.win32: Add HAVE_WINTAB. Undefine it if bulding without
19042         the Wintab SDK.
19043
19044         * gdk/win32/gdkinput.c: Hack some more. Still doesn't quite work
19045         OK, but getting closer. Guard against bogus tilt data from Wacom
19046         ArtPad II with the 3.40 driver. Add ifdefs for HAVE_WINTAB to
19047         enable easier building without Wintab.
19048
19049         * gdk/win32/gdkinput.h
19050         * gdk/win32/gdkevents.c 
19051         * gdk/win32/gdkwindow.c: Minor changes related related to above.
19052         
19053         * gdk/win32/gdkvisual.c: Simplify a lot, remove leftovers from X11
19054         code. As we have just one visual on Win32, no sense to have it in a
19055         table, and no need for the hash table.
19056
19057         * gdk/win32/rc/cursor*.cur: Edit some of the cursors a bit to look
19058         better on white background.
19059
19060 1999-07-21  Tor Lillqvist  <tml@iki.fi>
19061
19062         * README.win32: Update gcc build instructions. Mention gettext is
19063         GPL.
19064
19065         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Get correct
19066         supported cursor size with GetSystemMetrics.
19067
19068         * gdk/win32/gdkfont.c
19069         * gtk/gtkfontsel.c: Guard against some font weight and charset
19070         symbols being undefined (in mingw32 headers).
19071
19072         * gdk/win32/makefile.cygwin
19073         * gtk/makefile.cygwin
19074         * gtk/gtkthemes.c: No longer need to have differently named
19075         gcc-built DLLs when using gcc-2.95 and -fnative-struct.
19076
19077 hu Jul 15 13:33:15 BST 1999 Tony Gale <gale@gtk.org>
19078
19079         * docs/gtkfaq.sgml: Long awaited FAQ update.
19080
19081 1999-07-15  Tor Lillqvist  <tml@iki.fi>
19082
19083         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Implement
19084         it. Obscure bit manipulation needed.
19085
19086         * gdk/win32/gdkevents.c: Logging.
19087         
19088         * gtk/gtkthemes.c (gtk_theme_engine_get): (Win32) Use new DLL naming
19089         style (file name include compiler name) for theme engines.
19090
19091 1999-07-13  Tor Lillqvist  <tml@iki.fi>
19092
19093         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Less logging verbiage.
19094
19095         * gdk/win32/gdkevents.c: Fix long-standing bug in key
19096         events. The key.string wasn't zero-terminated, still we strdup'ed
19097         it in gdk_event_copy(). Synthesize crossing events for button
19098         events before possible propagation.
19099
19100         * gdk/win32/gdkwindow.c: Log gdk_window_set_title.
19101
19102         * gdk/win32/makefile.cygwin
19103         * gtk/makefile.cygwin: Use new DLL naming style for the
19104         GCC-compiled ones.
19105
19106         * gdk/win32/makefile.msc
19107         * gtk/makefile.msc: Cosmetics mostly.
19108
19109         * gtk/gtk.def: Add missing entry points.
19110
19111         * gtk/gtksocket.c: Add dummy gtk_socket_get_type() for Win32.
19112
19113 1999-07-09  Tor Lillqvist  <tml@iki.fi>
19114
19115         * gdk/win32/gdkdraw.c (gdk_draw_arc): Don't draw anything if width
19116         or height is zero. Don't print a warning if Pie or Arc fails, they
19117         always fail (?) for very narrow ellipses.
19118
19119         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Call InvalidateRgn for
19120         the part or the destination window corresponding to source area
19121         outside of the source drawable's boundary.
19122
19123         * gdk/win32/gdkdraw.c (gdk_draw_lines, gdk_draw_polygon): Don't do
19124         anything if less than two points.
19125
19126         * gdk/win32/gdkselection.c (gdk_selection_owner_get): Always
19127         return NULL. Gtk cut-and-paste inside a single program works
19128         better this way. (It always gets the clipboard contents from
19129         Windows, not from its own copy, which is cleared anyway. I can't
19130         say I fully understand what happens... Emulating the X selection
19131         and property stuff is a bit of a mess.)
19132
19133         * gdk/win32/gdkevents.c
19134         * gdk/win32/gdkproperty.c: A bit more verbose logging.
19135
19136         * gdk/win32/gdkregion.c: Fix some memory leaks (temporary regions
19137         that never got deleted). Revamp gdk_region_shrink.
19138
19139         * gdk/win32/gdkregion.c: Fix memory leak, delete temporary regions
19140         after use.
19141
19142         * gtk/gtk.def: Add some missing entry points.
19143
19144         * gtk/gtkrc.c: Strip trailing directory separator from pixmap path
19145         component.
19146
19147 1999-07-04  Tor Lillqvist  <tml@iki.fi>
19148
19149         * gdk/win32/gdkevents.c (gdk_event_translate): Handle
19150         Control-digits specially.
19151
19152 1999-07-03  Tor Lillqvist  <tml@iki.fi>
19153
19154         * gtk/makefile.{cygwin,msc}: New pthreads version. Use gettext.
19155
19156 1999-06-28  Tor Lillqvist  <tml@iki.fi>
19157
19158         * gdk/win32/gdkimage.c (gdk_image_get): bpl was set wrong for
19159         bitmaps, should be multiple of 4. (Thanks to Hans Breuer for
19160         finding this.)
19161
19162 1999-06-01  Jose H Mercado  <jmercado@mit.edu>
19163
19164         * gtk+.spec.in: Corrected some typos in files section.
19165         
19166 1999-06-15  Tor Lillqvist  <tml@iki.fi>
19167
19168         * README.win32: Mention using GNU gettext.
19169         * config.h.win32: Enable NLS stuff.
19170         * gtk/makefile.msc: Use GNU gettext.
19171         * gdk/win32/gdkdnd.c: Minor header reorg.
19172         * gdk/win32/{gdkevents,gdkwindow}.c: No semantic changes, mainly
19173         cosmetics.
19174         * gtk/gtkrc.c (Win32): Make get_gtk_sysconf_directory() public.
19175         * gtk/gtkmain.c (Win32): Use it in bindtextdomain() call.
19176
19177 Wed Jun  2 11:44:25 PDT 1999 Manish Singh <yosh@gimp.org>
19178
19179         * acinclude.m4
19180         * config.guess
19181         * config.status
19182         * ltconfig
19183         * ltmain.sh: upgrade to libtool 1.3.2 (BeOS changes merged)
19184
19185 1999-05-30  Tor Lillqvist  <tml@iki.fi>
19186
19187         * gdk/win32/gdkwindow.c: AdjustWindowRectEx2 renamed to
19188         SafeAdjustWindowRectEx. Don't override all calls to
19189         AdjustWindowRectEx by it, but use it only in two places: When
19190         creating a new top-level window and when moving a top-level
19191         window.
19192
19193         Use screen coordinate rectangle, not client rectangle, in
19194         gdk_window_move. Thus SafeAdjustWindowRectEx will do its job only
19195         when we try to place a window so that the decoration (mainly,
19196         title bar) isn't visible.
19197
19198         These changes fix the bug that showed up for instance as the
19199         GIMP's saved top-level windows moving right and down (by an amount
19200         equal to the window decoration) for each session. This bug showed
19201         up also in testgtk's "Saved Position".
19202
19203         gdk_window_resize also redone a bit.
19204
19205 1999-05-25  Tor Lillqvist  <tml@iki.fi>
19206
19207         * gtk/testgtkrc: Add (commented out) Windows-style theme
19208         include line.
19209
19210         * gdk/win32/gdk.def,gtk/gtk.def: Add some missing entry points.
19211
19212 1999-05-18  Tor Lillqvist  <tml@iki.fi>
19213
19214         * gdk/win32/makefile.{cygwin,msc}: Copy our gdkprivate.h and
19215         gdkx.h to a gdk subdirectory, so that applications can include
19216         these with <gdk/*.h> without trouble.
19217
19218         * gdk/win32/gdkimage.c (gdk_image_new_with_depth): Code simplified.
19219         (gdk_image_destroy): Plug resource leak, some GdkImages didn't
19220         have their bitmap destroyed.
19221
19222         * gdk/win32/gdk.def: Add gdk_root_parent.
19223
19224 Wed May 12 03:00:56 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
19225
19226         * configure.in
19227           gtk-config.in
19228           ltconfig
19229           ltmain.sh     
19230           gtk/Makefile.am: changes to compile nicely (with xlib) 
19231           on BeOS
19232
19233 Sat May  1 15:04:42 PDT 1999 Manish Singh <yosh@gimp.org>
19234
19235         * acinclude.m4
19236         * config.guess
19237         * config.sub
19238         * ltconfig
19239         * ltmain.sh: upgrade to libtool 1.3
19240
19241 Fri Apr 30 13:38:16 1999  Lars Hamann  <lars@gtk.org>
19242
19243         * gtk/gtkclist.c:
19244         * gtk/gtkctree.c: merges from gtk-1-2
19245
19246 1999-04-25  Tor Lillqvist  <tml@iki.fi>
19247
19248         Support added for building using a GNU toolchain on Win32,
19249         gcc -mno-cygwin (egcs-1.1.2) on cygwin-b20.1.
19250
19251         * gdk/win32/makefile.cygwin gtk/makefile.cygwin: New files.
19252         * config.h.win32: Changes for gcc.
19253         * gdk/gdkrectangle.c: Include gdk.h as <gdk/gdk.h>.
19254         * gdk/gdkcolor.c: config.h.win32 already defines strcasecmp.
19255         * gdk/win32/gdkconfig.h: Only the MS compiler has wctype.h.
19256         * gdk/win32/gdkdnd.c: Protect (unused) OLE2 stuff better.
19257         Protect shl stuff unavaiilable with mingw32 headers.
19258         * gdk/win32/gdkevents.c: Fix typo.
19259         * gdk/win32/gdkglobals.c: Use GDKVAR here also for gcc.
19260         * gdk/win32/gdkim.c: Use OEM code page for multibyte chars. (?)
19261         * gdk/win32/gdkinput.c: Use __try __except only with the MS compiler.
19262         * gdk/win32/gdkprivate.h: Make up for some stuff missing from
19263         the mingw32 headers.
19264         * gdk/win32/makefile.msc: Use latest Wintab kit and glib.
19265         * gtk/gtkfilesel.c: Include <glib.h> early, to get stat->_stat
19266         definition on Win32. Test for NATIVE_WIN32, not _MSC_VER.
19267         * gtk/gtkfontsel.c: Protect CHARSET redefinition on Win32.
19268         Test for NATIVE_WIN32, not _MSC_VER.
19269         * gtk/gtkmain.c: No use warning about developer version on Win32,
19270         there aren't any non-developer versions anyhow.
19271         * gtk/gtkrc.c: Test for NATIVE_WIN32, not _MSC_VER.
19272         * gtk/makefile.msc: Use pthread from another directory. Minor other
19273         changes. 
19274
19275 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
19276
19277         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
19278           default filter from the list
19279
19280 Mon Mar  8 12:52:53 1999  Owen Taylor  <otaylor@redhat.com>
19281
19282         * gtk/gtkwidget.c (gtk_widget_grab_default): Add a warning
19283          when gtk_widget_grab_default() is called for a widget that
19284          is not within a GtkWindow.
19285
19286 Sat Apr 10 13:52:54 BST 1999  Tony Gale <gale@gtk.org>
19287
19288         * docs/gtk_tut.sgml, examples/clist.c: use a
19289           scrolled window in the clist example. Minor
19290           tutorial fixes.
19291
19292 Fri Apr  2 09:19:20 BST 1999  Tony Gale <gale@gtk.org>
19293
19294         * docs/gtk_tut.sgml: Style check from David King
19295           <dking@youvegotmail.net>
19296
19297 1999-03-30  Pavel Machek  <pavel@artax.karlin.mff.cuni.cz>
19298
19299         * gtk/gtkfontsel.c (gtk_font_selection_get_fonts): Make code
19300         compile with unknown value of GDK_WINDOWING
19301
19302 1999-03-28  Raja R Harinath  <harinath@cs.umn.edu>
19303
19304         * gdk/Makefile.am (gdkconfig.h): Make sure `gdkconfig.h' exists
19305         after the rule is fired.
19306         (install-exec-local): Install gdkconfig.h only if the contents are
19307         different from the currently installed gdkconfig.h.
19308
19309 1999-03-26  Raja R Harinath  <harinath@cs.umn.edu>
19310
19311         * gdk/Makefile.am (configexecincludedir): Rename from 
19312         configincludedir so that gdkconfig.h will be installed 
19313         as part of `make install-exec'. 
19314
19315 Fri Mar 19 16:50:33 PST 1999 Manish Singh <yosh@gimp.org>
19316
19317         * acinclude.m4
19318         * config.guess
19319         * config.sub
19320         * ltconfig
19321         * ltmain.sh: upgrade to libtool 1.2f
19322
19323         * autogen.sh: libtool is not required to autogen gtk+
19324
19325         * acconfig.h: remove WITH_SYMBOL_UNDERSCORE (not explictly
19326         needed)
19327
19328 1999-03-18  Tor Lillqvist  <tml@iki.fi>
19329
19330         * gdk/gdktypes.h: Merge in Win32 version: Define macro GDKVAR for
19331         declaring gdk variables exported/imported from the DLL. New image
19332         type enum, GDK_IMAGE_SHARED_PIXMAP, for gdk_imlib. New drag and
19333         drop protocol enums, GDK_DRAG_PROTO_WIN32_DROPFILES and
19334         GDK_DRAG_PROTO_OLE2.
19335
19336         * gdk/gdk.h: Merge in Win32 version: Two new functions,
19337         gdk_pixmap_create_on_shared_image and gdk_image_bitmap_new. So far
19338         declared only for the Win32 version, but could be in the X11
19339         version as well. (Needed for a Xlib-less gdk_imlib.)
19340         gdk_color_hash should have only one parameter. Declare
19341         gdk_threads_mutex with GDKVAR.
19342         
19343         * gdk/gdkcolor.c (gdk_color_hash): A hash function should have
19344         just one parameter.
19345
19346         * gdk/gdkimage.c (gdk_image_get): Initialize bpp correctly. Bytes
19347         per pixel, not bits.
19348
19349         * gdk/gdkrgb.c: Mingle includes somewhat. (gdk_rgb_select_conv):
19350         Fetch bpp (which means bits-per-pixel here) from another place on
19351         Win32. Accept also depth==32 (which we might get on Win32) with
19352         bpp==32.
19353
19354         * gtk/{gtkclist,gtkctree,gtkdnd,gtkditable,gtkfontsel,
19355         gtkhandlebox,gtklayout,gtkmain,gtkplug,gtkpreview,gtkrc,
19356         gtkselection,gtksocket,gtkstyle,gtkwidget,gtkwindow}.c:
19357         Include gdx.h from "gdkx.h", not "gdk/gdkx.h", as gdkx.h will be
19358         in the backend-dependent directory, not in the common gdk
19359         directory.
19360
19361         * gtk/testgtk.c: Ditto. Also, don't use ../gdk path to gdk
19362         headers.
19363
19364 Wed Mar 17 05:06:49 1999  Tim Janik  <timj@gtk.org>
19365
19366         * gtk/gtkmain.c (gtk_init_check): tell people that they don't really
19367         want to use the Gtk+ devel version (which is true, and yes - even i am
19368         currently working with the 1.2.x branch). so everyone reading this, you
19369         probably want to issue
19370         cvs checkout -r glib-1-2 glib
19371         and
19372         cvs checkout -r gtk-1-2 gtk+
19373         as your next two comands.
19374
19375 Wed Mar 17 02:49:32 1999  Tim Janik  <timj@gtk.org>
19376
19377         * configure.in: build gtkcompat.h from gtkcompat.h.in instead of
19378         gtkfeatures.h from gtkfeatures.h.in, require GLib 1.3.0.
19379
19380         * gtk/gtkcompat.h.in: combined gtkcompat.h and gtkfeatures.in in this
19381         file. strongly deprecated the GTK_HAVE_* macros, we provide
19382         GTK_CHECK_VERSION() for people that need to check for certain
19383         Gtk+ versions.
19384
19385         * gtk/gtkcompat.h: removed this from CVS.
19386         * gtk/gtkfeatures.h.in: removed this from CVS, gtkfeatures.h was a bad
19387         idea right from the start, it just didn't seem like that back then.
19388
19389 Wed Mar 17 01:46:28 1999  Tim Janik  <timj@gtk.org>
19390
19391         * merges from gtk-1-2:
19392
19393 Tue Mar 16 17:43:33 1999  Tim Janik  <timj@gtk.org>
19394
19395         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc_string): ensure the
19396         item factory class has been created.
19397         (gtk_item_factory_parse_rc): likewise.
19398
19399         * gtk/gtkmenu.c:
19400         keep proper references for old_active_menu_item.
19401         (gtk_menu_reparent): unset the usize of the new parent,
19402         so the menu can sanely be size requested and we don't get nasty screen
19403         artefacts upon next reparentation.
19404         (gtk_menu_motion_notify): set send_event to TRUE if we synthesize an
19405         enter notify. only synthesize enter notifies if the pointer really is
19406         inside the event window.
19407         (gtk_menu_popdown): use gtk_menu_shell_deselect().
19408         (gtk_menu_popup): move the background setting stuff into
19409         gtk_menu_tearoff_bg_copy() so it can be called from other places as well.
19410
19411         * gtk/gtkmenushell.c (gtk_menu_shell_button_press): use
19412         gtk_menu_shell_select_item() to select the new item.
19413         (gtk_menu_shell_deselect): export this function, so gtkmenu.c can
19414         do the right thing for deselection as well.
19415
19416 Sat Mar 15 20:10:33 1999  Tim Janik  <timj@gtk.org>
19417
19418         * gtk/gtkwidget.[hc]:
19419         (gtk_widget_accelerators_locked): return whether a widget's accelerators
19420         are locked.
19421
19422         * gtk/gtkmenu.c (gtk_menu_key_press): don't remove or install new or
19423         existing accelerators if the widget's accelerators are locked.
19424
19425 Sat Mar 14 19:44:05 1999  Tim Janik  <timj@gtk.org>
19426
19427         * gtk/gtkitemfactory.[hc]: allow managing of foreign menu items.
19428
19429         * gtk/gtkmenu.c: truely forward key press and key release events to
19430         the menu widget from the toplevel or tearoff window. we can't simply
19431         connect to that, we need to stop further processing of the events as
19432         well.
19433
19434 Sat Mar 13 13:14:17 1999  Tim Janik  <timj@gtk.org>
19435
19436         * gtk/gtkmenu.c:
19437         (gtk_menu_key_press): pass event->keyval, event->state to
19438         gtk_accelerator_valid, instead of event->keyval twice.
19439         refuse to install single letter accelerators for menus that use
19440         single letter shortcuts.
19441
19442         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): use
19443         gtk_menu_ensure_uline_accel_group().
19444
19445         * gtk/gtkmenu.[hc]: added gtk_menu_ensure_uline_accel_group()
19446         which will always return an uline accel group, made
19447         gtk_menu_get_uline_accel_group() return NULL if the group isn't
19448         yet created.
19449
19450 Mon Mar 15 01:03:27 1999  Lars Hamann  <lars@gtk.org>
19451
19452         * gtk/gtkclist.h (struct _GtkCListColumn): added button_passive flag.
19453
19454         * gtk/gtkclist.c (gtk_clist_column_title_passive):
19455         Leave button sensitive, trap  button_press, button_release,
19456         motion_notify, enter_notify and leave_notify events instead.
19457         (gtk_clist_column_title_active): disconnect event handler.
19458         (gtk_clist_drag_data_get): fixed memory leak. Reported by
19459         Guillaume Laurent <glaurent@worldnet.fr>
19460
19461 Wed Mar 10 23:49:55 1999  Lars Hamann  <lars@gtk.org>
19462
19463         * gtk/gtklayout.c (gtk_layout_adjustment_changed): fixed a few
19464         width/height mixups.
19465
19466         * gtk/gtkctree.c (tree_delete): emit an tree_unselect_row signal
19467         if needed.
19468
19469 Wed Mar 10 00:11:32 1999  Tim Janik  <timj@gtk.org>
19470
19471         * gtk/testgtk.c (create_item_factory): unref the item factory after
19472         window's destruction.
19473
19474         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): keep a reference
19475         count on the menu shell around the menu item's activation, since the
19476         signal emission may cause menu shell destruction.
19477
19478         * gtk/gtkitemfactory.c:
19479         the previous code leaked one accel group per menu. we use
19480         gtk_menu_get_uline_accel_group() now to fix that, and with that
19481         also create the underline accelerator group of the menus only if
19482         required (i.e. an underline accelerator has been specified).
19483         (gtk_item_factory_construct):
19484         (gtk_item_factory_create_item): removed code that would create an
19485         extra accel group for the menu (and leak references).
19486         (gtk_item_factory_create_item): adapted the underline accelerator
19487         installation code to properly feature gtk_menu_get_uline_accel_group().
19488
19489         * gtk/gtkmenu.[hc]: added gtk_menu_get_accel_group() to retrive
19490         menu->accel_group, this may return NULL if the accelerator group
19491         hasn't been set yet.
19492         added gtk_menu_get_uline_accel_group() to retrive the underline
19493         accelerator group of the menu, this will be created on demand
19494         and proper care is taken about its reference count.
19495
19496         * gtk/gtkitemfactory.h:
19497         * gtk/gtkitemfactory.c:
19498         dumped the approach of keeping a widgets by action list on the
19499         factory since the factory<->widget destroy negotiation didn't work
19500         and would be hard to get going at all. instead we keep a list of
19501         GtkItemFactoryItem items on the factory (GtkItemFactoryItems are
19502         persistant throughout a program's life time).
19503         also, i removed the static const gchar *key_* variables, and made
19504         them inline strings (they weren't actually used anyways).
19505         (gtk_item_factory_add_item): update ifactory->items.
19506         (gtk_item_factory_destroy): destroy ifactory->items (and remove
19507         the item factory pointer from the remaining ifactory widgets).
19508         (gtk_item_factory_get_widget_by_action): walk the GtkItemFactoryItem
19509         list to find the widget.
19510         (gtk_item_factory_get_item): new function that works around
19511         gtk_item_factory_get_widget() limitations, this function will only
19512         return menu items, even for <Branch> entries.
19513
19514 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
19515
19516         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
19517         font hash table, if we have a GdkFontPrivate entry for this font
19518         already, simply increment its reference count, provided by Olaf Dietsche
19519         <olaf.dietsche+list.gtk@netcologne.de>.
19520
19521         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
19522         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
19523
19524 Sun Mar  7 06:13:29 1999  Tim Janik  <timj@gtk.org>
19525
19526         * gtk/gtkcontainer.c:
19527         (gtk_container_add_with_args):
19528         (gtk_container_addv):
19529         (gtk_container_add): before adding a child to a conatiner, make sure
19530         it is (default) constructed, this is neccessary because under certain
19531         circumstances the child will get relized and mapped immediatedly, in
19532         which case it has to be constructed already.
19533
19534 Mon Mar  1 17:58:21 1999  Tim Janik  <timj@gtk.org>
19535
19536         * gtk/gtksignal.c (gtk_signal_connect_by_type): count object_signal
19537         values > 1 as TRUE also.
19538
19539 1999-03-16  Tor Lillqvist  <tml@iki.fi>
19540
19541         * README.win32: New file.
19542                 
19543         * configure.in: Check for lstat.
19544
19545         * config.h.win32: Add non-definition of HAVE_LSTAT, just for
19546         completeness.
19547
19548         * gtk/gtkrc.c: If don't HAVE_LSTAT, use stat.
19549
19550         * gtk/gtk.def: Removed CRs.
19551
19552         * gtk/makefile.msc: Correct include path to Win32 GDK version (in
19553         ..\gdk\win32).
19554
19555         * gdk/win32/makefile.msc: Correct upwards relative paths.
19556         
19557 Mon Mar 15 03:38:34 1999  George Lebl  <jirka@5z.com>
19558
19559         * gtk/gtkdnd.c: (gtk_drag_highlight) swap the
19560           gtk_drag_highlight_expose and gtk_drag_highlight_paint since
19561           it was connecting a void function to expose_event and the int
19562           returning function to the draw signal
19563
19564 1999-03-14  Jeff Garzik  <jgarzik@pobox.com>
19565
19566         * configure.in:
19567         Use correct path to libgmodule.la when ref'ing uninstalled copy
19568         of glib.  (Already in stable branch, Bug #417)
19569
19570 1999-03-15  Tor Lillqvist  <tml@iki.fi>
19571
19572         Win32 merge and general portability stuff:
19573                 
19574         * acconfig.h,configure.in: Check for <sys/time.h>.
19575
19576         * gdk/win32: New directory (actually, been there for a while).
19577         
19578         * gtk/fnmatch.c: Include <glib.h> for G_DIR_SEPARATOR, WIN32 and
19579         NATIVE_WIN32, and use these. Always case fold on Win32. No
19580         backslashed escapes on native Win32.
19581
19582         * gtk/{gtk.def,makefile.msc}: New files.
19583
19584         * gtk/Makefile.am: Add above new files.
19585         
19586         * gtk/{gtkaccelgroup,gtkbindings}.c: Include <string.h>
19587         instead of <strings.h>.
19588
19589         * gtk/{gtkcalendar,gtkitemfactory,gtkpreview,gtkrc}.c: Include
19590         config.h. Protect inclusion of <sys/param.h>, <sys/time.h>, and
19591         <unistd.h> appropriately.
19592
19593         * gtk/gtkdnd.c: Merge in Win32 version (which doesn't do much).
19594         Use ABS() (from <glib.h>) instead of abs().
19595         
19596         * gtk/gtkfilesel.c: Moved Win32-specific includes after inclusion
19597         of gtk (and thus glib) headers, so that WIN32 will be
19598         defined. With MS C, include <direct.h> for mkdir prototype.
19599
19600         * gtk/gtkitemfactory.c (gtk_item_factory_callback_marshal): Add
19601         some casts, needed by MS C.
19602
19603         * gtk/{gtklayout,gtkplug}.c: Merge in Win32 version (which isn't
19604         implemented).
19605
19606         * gtk/gtkmain.c: Include gdk/gdkx.h for GDK_WINDOWING. Include
19607         <X11/Xlocale.h> only on X11 platform, otherwise <locale.h>.  Use
19608         G_SEARCHPATH_SEPARATOR_S and g_module_build_path.
19609
19610         * gtk/gtkmain.h: Mark variables for export/import on Win32.
19611                 
19612         * gtk/gtkrange.c (gtk_range_motion_notify): Set mods also in case
19613         the event is not a hint, or its window is not the slider. Needed
19614         on Win32, at least.
19615
19616         * gtk/gtkrc.c: Include config.h and gdk/gdkx.h. Use <locale.h>
19617         unless on X11. Skip \r chars, too. Use G_DIR_SEPARATOR and
19618         G_SEARCHPATH_SEPARATOR(_S). Use g_path_is_absolute. On Win32, use
19619         a subdirectory of the Windows directory as gtk system
19620         configuration directory.
19621
19622         * gtk/gtkselection.c: No chunks on Win32.
19623
19624         * gtk/gtksocket.c: Not implemented on Win32.
19625
19626         * gtk/gtkthemes.c (gtk_theme_engine_get): Use g_module_build_path.
19627
19628         * gtk/makeenums.h: Include gdkprivate.h after gdk.h.
19629
19630         * gtk/maketypes.awk: Declare variables with a macro that expands to
19631         necessary export/import magic in the case of Win32.
19632                 
19633         * gtk/testrgb.c: Use dynamically allocated buffer. Use GTimers.
19634
19635 1999-03-13  Raja R Harinath  <harinath@cs.umn.edu>
19636
19637         * configure.in (gdk_wc): Move widechar tests from `glib' to here,
19638         since those were meant only for gdki18n.h.  
19639         * gdk/gdki18n.h: Include gdkconfig.h and use GDK_* instead of G_*
19640         for widechar tests.
19641         * gtk/Makefile.am (INCLUDES): Add -I../gdk for gdkconfig.h.
19642
19643 1999-03-13  Tor Lillqvist  <tml@iki.fi>
19644
19645         * configure.in acconfig.h: Check for dirent.h and pwd.h. Generate
19646         gdk/gdkconfig.h using similar mechanism as GLib's glibconfig.h.
19647
19648         * gtk-config.in: Add @libdir/gtk+/include (where gdkconfig.h is
19649         installed) to CFLAGS.
19650
19651         * gdk/Makefile.am: Add rules for gdkconfig.h.
19652
19653         * gdk/gdktypes.h: Include gdkconfig.h. Define macros for windowing
19654         APIs.
19655
19656         * gdk/gdkfontsel.c: Don't include Xlib.h, it gets included via
19657         gdkx.h anyway when compiling for X11.
19658         (gtk_font_selection_create_xlfd): Use g_strdup_printf. (In
19659         general): Merge in Win32 version.
19660         
19661         * gtk/gtkfilesel.c: Use g_get_current_dir(). Merge in Win32
19662         version: Use G_DIR_SEPARATOR, g_path_is_absolute, no tilde
19663         expansion (if we don't have HAVE_PWD_H), allow for drive
19664         letters. UNC paths (\\server\share\...) are not handled yet.  Also,
19665         included code from Craig Setera's port to Win32 (the one that uses
19666         X11, and the cygwin dll), even if it probably will be abandoned.
19667
19668         * gtk/gtkfilesel.c: Don't append a * to the pattern to complete if
19669         the user entered one herself.  This way one can complete *.h and
19670         don't get matches on any .help files, for instance.
19671         
19672 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
19673
19674         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
19675         font hash table, if we have a GdkFontPrivate entry for this font
19676         already, simply increment its reference count, provided by Olaf Dietsche
19677         <olaf.dietsche+list.gtk@netcologne.de>.
19678
19679         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
19680         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
19681
19682 1999-03-09  Federico Mena Quintero  <federico@nuclecu.unam.mx>
19683
19684         * gtk/gtkstyle.c (gtk_default_draw_handle): Significantly reduced
19685         the number of calls to gdk_draw_point() (and thus to X) by
19686         clipping the points by hand.
19687
19688         * gtk/gtkhandlebox.c (draw_textured_frame): Actually make use of
19689         the clip parameter.
19690         (gtk_handle_box_paint): Only paint the handle if the expose area
19691         intersects it.
19692
19693 Sun Mar  7 18:46:37 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
19694
19695         * gtk/gtkmain.c (add_dll_suffix): Add this function (OS/2 ver.)
19696
19697 Sun Mar  7 11:43:34 1999  ape@spacetec.no  (Asbjorn Pettersen)
19698
19699         * gtk/gtkthemes.c (gtk_theme_engine_get): Add OS/2 changes.
19700         Added function gen_8_3_dll_name(gchar *name, gchar *fullname).
19701
19702 Fri Mar  5 09:12:24 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
19703
19704         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc): Open file in
19705          textmode (O_TEXT) for OS/2 version.
19706
19707 Sun Feb 28 16:46:02 1999  Stefan Jeske  <stefan@gtk.org>
19708
19709         * gtk/gtkspinbutton.[c,h] gtk/testgtk.c: Added two new signals to 
19710         GtkSpinButton, "input" and "output", to make the output more flexible.
19711         The user has to provide a mapping between adjustment->value and the
19712         output string (and vice versa, if the spin button is editable). 
19713         See testgtk for examples.
19714
19715 Sat Feb 27 01:18:47 1999  Tim Janik  <timj@gtk.org>
19716
19717         * ChangeLog: moved old ChangeLog to ChangeLog.pre-1-2, and started
19718         new one.
19719         
19720         * configure.in: set gtk+ version to 1.3.0.