]> Pileus Git - ~andy/gtk/blob - ChangeLog.pre-2-8
add some lame code to handle G_MININT, fixes #57424
[~andy/gtk] / ChangeLog.pre-2-8
1 2001-09-07  Havoc Pennington  <hp@redhat.com>
2
3         * gtk/gtktextiter.c: add some lame code to handle G_MININT, fixes 
4         #57424
5
6 Fri Sep  7 18:17:47 2001  Owen Taylor  <otaylor@redhat.com>
7
8         * gdk/gdk.h gdk/x11/gdkmain-x11.c: Deprecate gdk_set/get_use_xshm, 
9         make gdk_set_use_xshm a noop. Remove --no-xshm command line
10         option. If we aren't autodetecting properly, we need
11         to fix the problem, or at least make it an environment
12         variable setting, to avoid problems with propagating
13         to embedded children, plugins, etc.
14
15         * gdk/gdkcolor.h: Deprecate gdk_colormap_get_system_size().
16
17         * gdk/gdkpixbuf-render.c gdk/gdkpixbuf.h
18         (gdk_pixbuf_render_pixmap_and_mask_for_colormap):
19         New function to render a pixmap and mask for a particular colormap.
20
21         * gtk/gtkwindow.c (get_pixmap_and_mask): Change to use
22         gdk_pixbuf_render_pixmap_and_mask_for_colormap () instead
23         of internal implementation of the same.
24
25 2001-09-07  Havoc Pennington  <hp@redhat.com>
26
27         * gtk/gtktextlayout.c (gtk_text_layout_get_lines): remove some
28         debug code that seems to have caused a breakpoint in valid cases
29         
30         * gtk/gtktextbtree.c (_gtk_text_btree_add_view): set the prev
31         pointer on the first view when adding the second view, fixes
32         crash when closing gtk-demo text test with active selection
33
34         * gtk/gtktextbuffer.c
35         (gtk_text_buffer_remove_selection_clipboard): don't leave dead
36         clipboards in the list of clipboards - probably fixes #59836
37
38 Fri Sep  7 11:51:44 2001  Owen Taylor  <otaylor@redhat.com>
39
40       Make gdkx.h the only installed header from gdk/x11.
41       All structures in gdk/x11 are opaque.
42
43         * gdk/x11/Makefile.am gdk/x11/gdkx.h gdk/x11/gdkprivate-x11.h:
44         Don't install gdk{drawable,pixmap,window}-x11.h.
45
46         * gdk/x11/{gdkcolormap-x11.c, gdkfont-x11.c, gdkx.h, gdkvisual-x11.c: 
47         Move GdkColormapPrivateX11, GdkFontPrivateX GdkImagePrivateX11, 
48         GdkVisualClass into C files.
49
50         * gdk/gdkpixmap-x11.[ch]: Make gdk_pixmap_impl_get_type() static.
51
52         * gdk/x11/{gdkcolor-x11.c, gdkcursor-x11.c, gdkdrawable-x11.c,
53         gdkfont-x11.c, gdkgc-x11.c, gdkx.h, gdkimage-x11,gdkvisual-x11.c}
54         Add public functions to replace previously exported direct
55         structure access.
56         gdk_x11_colormap_get_{xdisplay,xcolormap} 
57         gdk_x11_cursor_get_{xdisplay,xcursor},
58         gdk_x11_drawable_get_{xdisplay,xcursor,gdk_x11_visual_get_xvisual, 
59         gdk_x11_font_get_{xdisplay,xfont}, gdk_x11_image_get_{xdisplay,ximage},
60         gdk_x11_gc_get_{xdisplay,ximage}
61         
62         * gdk/gdkprivate.h gdk/gdkinternals.h: Move GdkColorInfo,
63         GdkEventFilter, GdkClientFilter, GdkFontPrivate to gdkinternals.
64
65       Fix a number of variables and functions that were exported
66       "accidentally" from GDK.
67
68         * gdk/**.[ch]: gdk => _gdk for gdk_visual_init,
69         gdk_events_init, gdk_input_init, gdk_dnd_init, gdk_image_exit, 
70         gdk_input_exit, gdk_windowing_exit, gdk_event_func, gdk_event_data,
71         gdk_event_notify, gdk_queued_events, gdk_queued_tail,
72         gdk_event_new, gdk_events_queue, gdk_events_unqueue,
73         gdk_event_queue_find_first, gdk_event_queue_remove_link,
74         gdk_event_queue_append, gdk_event_button_generate,
75         gdk_debug_flags, gdk_default_filters, gdk_parent_root.
76
77         * gdk/x11/{gdkevents-x11.c, gdkglobals-x11.c, gdkimage-x11.c, 
78            gdkmain-x11.c, gdkprivate-x11.h, gdk/x11/gdkwindow-x11.c}:
79         gdk => _gdk for gdk_event_mask_table, gkd_nevent_masks, 
80         gdk_wm_window_protocols, gdk_leader_window, gdk_xgrab_window,
81         gdk_use_xshm, gdk_input_ignore_core.
82
83         * gdk/x11/xsettings-common.h (xsettings_list_insert): Add
84         #defines to namespace functions into the private _gdk_ 
85         namespace.
86
87         * gdk/gdkwindow.[ch] gdk/x11/gdkx.h: Add gdk_get_default_root_window ()
88         to replace gdk_parent_root exported variable. Adjust and
89         deprecate GDK_ROOT_PARENT().
90
91         * demos/{testpixbuf-drawable.c,testpixbuf-save.c}: Fix
92         GDK_ROOT_PARENT usage, remove includes of port-specific
93         headers.
94
95         * gdk/{win32,x11,fb}/gdkinput*.[ch]: s/gdk/_gdk/ for 
96         _gdk_input_gxid_host, _gdk_input_gxid_port, _gdk_input_ignore_core, 
97         gdk_input_devices, _gdk_input_windows, gdk_init_input_core.
98
99         * gdk/x11/{gdkevents-x11.,c gdkglobals-x11.c, gdkmain-x11.c}
100         docs/Changes-2.0.txt: Remove gdk_wm_protocols, 
101         gdk_wm_delete_window functions, gdk_wm_take_focus, 
102         use gdk_atom_intern() instead.
103
104         * gdk/linux-fb/{gdkselection-fb.c, gdkmain-fb.c, gdkprivatefb.h}
105           gdk/win32/{gdkselection-win32.c, gdkmgdkwin32.h, gdkprivate-win32.h} 
106           gdk/x11/{gdkselection-x11.c gdkx.h, gtkprivate-x11.h}
107           gtk/gtkselection.c 
108         Unexport gdk_selection_property, just use 
109         gdk_atom_intern ("GDK_SELECTION").
110
111         * gdk/x11/{gdkprivate-x11.h,gdkdrawable-x11h,gdkgc-x11.c,gdkx.h}: 
112         Unexport gdk_drawable_impl_x11_get_type, gdk_gc_x11_get_type, 
113         GDK_GC_X11 cast macros, GdkGCX11 structures, GdkCursorPrivate, 
114         GdkVisualprivate, gdk_x11_gc_flush.
115
116       Make a number of public exports of variables into functions
117       to increase encapsulation.
118
119         * gdk/gdkinternals.h gdk/gdkinput.h gdk/gdkevents.h 
120         gdk/linux-fb/gdkmouse-fb.c: gdk_core_pointer => _gdk_core_pointer, 
121         move to gdkinternals.h. Add gdk_device_get_core_pointer ().     
122
123         * gdk/gdkprivate.h gdk/gdkpango.c gdk/gdkinternals.h
124         docs/Changes-2.0.txt: Unexport gdk_parent_root, gdk_error_code, 
125         gdk_error_warnings.
126
127         * gdk/x11/{gdkcolormap-x11.c, gdkmain-x11.c, gdkx.h}
128           docs/Changes-2.0.txt: 
129         s/gdk_screen/_gdk_screen/, add gdk_x11_get_default_screen()
130         s/gdk_root_window/_gdk_root_window/, add gdk_x11_get_default_root_xwindow()
131         Add gdk_x11_get_default_xdisplay().
132
133         * gdk/gdk.h gdk/gdk.c linux-fb/gdkfb.h linux-fb/gdkglobals-fb.c 
134         win32/gdkwin32.h x11/gdkglobals-x11.c gdk/x11/gdkmain-x11.c 
135         gdk/x11/gdkx.h: gdk/gdk.def: Add gdk_get/set_program_class, 
136         Don't export gdk_progclass, move --class command line
137         option and handling to common portion of GDK.
138
139       Miscellaneous fixes:
140
141         * gdk/x11/gdkwindow-x11.c (gdk_window_set_icon_list): Fix
142         g_return_val_if_fail that should have been g_return_if_fail.
143
144         * gdk/gdkinternals.h gdk/gdkprivate.h: Move
145         gdk_synthesize_window_state() to the semi-public gdkprivate.h.
146
147         * gtk/gtkdnd.c (_gtk_drag_source_handle_event): Remove uneeded
148         X11 dependency.
149
150         * gdk/linux-fb/gdkmain-fb.c gdk/win32/gdkmain-win32.c gdk/TODO: 
151         Remove unused gdk_key_repeat_disable/restore.
152
153         * linux-fb/gdkglobals-fb.c win32/gdkglobals-win32.c 
154         x11/gdkglobals-x11.c x11/gdkprivate-x11.h gdk/gdk.def:
155         Remove unused gdk_null_window_warnings variable.
156
157         * gdk/Makefile.am (DIST_SUBDIRS) nanox/*: cvs remove nanox;
158         it can be retrieved from the repository; it is too far
159         from functional to be worth having people check out;
160         it would be easier to start from scratch, I suspect.
161
162         * gdk/x11/gdkpixmap-x11.c: Fix lvalue usage of GDK_PIXMAP_XID().
163
164         * gdk/x11/gdkkeys-x11.c gdk/gdkrgb.c gdk/gdkwindow.c 
165         gdk/x11/gdkpango-x11.c gdk/x11/gdkselection-x11.c: 
166         Fix some accidentally global variables and unused global variables.
167
168         * gdk/x11/gdkkeys-x11.c gdk/gdkrgb.c gdk/gdkwindow.c 
169         gdk/x11/gdkpango-x11.c gdk/x11/gdkselection-x11.c: 
170         Fix some accidentally global variables and unused global variables.
171
172       Add some space for future expansion to multihead.
173
174         * gdk/gdkdrawable.h: Add four reserved function pointers
175         for future expansion of GdkDrawableClass.
176
177         * gtk/gtkwindow.h gtk/gtkinvisible.h: Add reserved pointer
178         where we can put a GdkScreen * later.
179
180 2001-09-07  Havoc Pennington  <hp@redhat.com>
181
182         * gtk/gtktextview.c (gtk_text_view_flush_scroll): update
183         adjustments after validating destination yrange; fixes #53918
184         (This may cause other issues, but I hope it won't)
185         
186 2001-09-05  Havoc Pennington  <hp@redhat.com>
187
188         * gtk/gtktextbtree.c (_gtk_text_btree_delete): when merging end
189         line into start line, update the character counts in parent nodes; 
190         caused a bug when end and start line had different parent nodes.
191
192 2001-08-30  Havoc Pennington  <hp@redhat.com>
193         
194         * gtk/gtktexttag.c (_gtk_text_attributes_fill_from_tags): add
195         assertion that tag is in a table
196
197 Fri Sep  7 12:48:56 2001  Matthias Clasen  <matthiasc@poet.de>
198
199         * gdk/x11/gdkkeys-x11.c (get_direction): Don't call
200         g_strcasecmp on NULL strings. (#59058)
201
202 2001-09-06  Alex Larsson  <alexl@redhat.com>
203
204         * gtk/gtkbin.c:
205         * gtk/gtkfontsel.c:
206         * gtk/gtkspinbutton.c:
207         * gtk/gtktipsquery.c:
208         Use GtkType/GType instead of uint.
209
210 Tue Sep  4 18:13:43 2001  Jonathan Blandford  <jrb@redhat.com>
211
212         * gtk/gtkliststore.c (gtk_list_store_init): fix initial val for
213         sort column.
214
215         * gtk/gtktreestore.c (gtk_list_store_init): ditto
216
217         * gtk/gtktreesortable.c: add docs.
218
219 Tue Sep  4 09:37:19 2001  Owen Taylor  <otaylor@redhat.com>
220
221         * Version 1.3.7
222
223         * configure.in docs/Makefile.am docs/gtk-config.1.in: Remove 
224         docs for gtk-config
225
226         * modules/input/Makefile.am (install-data-local): Don't
227         run gtk-query-immodules if DESTDIR is set.
228
229         * NEWS: Various additions.
230
231 Tue Sep  4 03:12:25 2001  Tim Janik  <timj@gtk.org>
232
233         * NEWS: updates for 1.3.7 release.
234
235 Mon Sep  3 18:03:56 2001  Jonathan Blandford  <jrb@redhat.com>
236
237         * gtk/gtktreestore.c (gtk_tree_store_set_default_sort_func):
238         handle default sort feature
239
240         * gtk/gtktreesortable.c (gtk_tree_sortable_set_default_sort_func):
241         new function to handle default sort.
242         (gtk_tree_sortable_has_default_sort_func): check if default sort
243         is set.
244
245         * gtk/gtkliststore.c (gtk_list_store_set_default_sort_func): 
246         handle default sort feature
247
248 Sun Sep  2 20:32:36 2001  Jonathan Blandford  <jrb@redhat.com>
249
250         * gtk/gtktreeview.c (gtk_tree_view_scroll_to_cell): patch from
251         vishnu@pobox.com (Joshua N Pritikin) to fix math and an assertion,
252         #59731
253
254 Sun Sep  2 17:38:42 2001  Jonathan Blandford  <jrb@redhat.com>
255
256         * gtk/gtktreeview.c (gtk_tree_view_deleted): Patch from
257         vishnu@pobox.com (Joshua N Pritikin) to emit signal at the correct
258         time, #59727
259
260         * gtk/gtkbutton.c (gtk_button_update_state): Get depressed
261         correctly.
262
263 Sun Sep  2 21:41:21 2001  Owen Taylor  <otaylor@redhat.com>
264
265         * gdk/x11/gdkkeys-x11.c (update_keymaps): Set current serial
266         so that we don't eternally update the keymap after we
267         get a change notification.
268
269         * gtk/gtkmenuitem.c (gtk_menu_item_set_right_justified): Fix
270         incorrect cast.
271
272 Sun Sep  2 23:27:16 2001  Kristian Rietveld  <kristian@planet.nl>
273
274         * gtk/gtktreemodelsort.[ch]: much changes in an attempt to make
275         it working. It mostly works now, although there're still a few issues
276         to be worked out.
277
278         * tests/testtreesort.c (main): changes to have a better test
279         application for the GtkTreeModelSort.
280
281 Sun Sep  2 23:19:07 2001  Kristian Rietveld  <kristian@planet.nl>
282
283         * gtk/gtktreeview.c (gtk_tree_view_search_iter): code cleaup,
284         fix for bug #59222.
285
286         * gtk/gtktreeview.c (gtk_tree_view_search_equal_func): add
287         gpointer search_data argument to function definition and
288         prototype, to match GtkTreeViewSearchEqualFunc typedef.
289
290 Sat Sep  1 21:57:27 2001  Kristian Rietveld  <kristian@planet.nl>
291
292         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): add warnings
293         per jrb's request.
294
295 Fri Aug 31 20:01:23 2001  Jonathan Blandford  <jrb@redhat.com>
296
297         * gtk/gtktreeview.c (gtk_tree_view_search_iter): pass in user data.
298
299         * gtk/gtktreeview.c (gtk_tree_view_destroy): destroy search_data.
300
301 Wed Aug 29 20:40:58 2001  Owen Taylor  <otaylor@redhat.com>
302
303         * gtk/gtktextbuffer.[ch] (gtk_text_buffer_add/remove_selection_clipboard): 
304         Instead of always mirroring the selection to a single PRIMARY
305         selection, allow it to be mirrored to any number of clipboards.
306
307         * gtk/gtktextbuffer.[ch] (gtk_text_buffer_paste_primary): Remove, 
308         just use gtk_text_buffer_paste_clipboard with the appropriate clipboard.
309
310         * gtk/gtktextbuffer.[ch] (gtk_text_buffer_cut/copy/paste_clipboard): Add a
311         GtkClipboard argument, and for paste_clipboard, the
312         @override_location argument from @paste_primary.
313
314         * gtk/gtktextview.c: Adapt to above change.
315         
316 2001-08-30  Havoc Pennington  <hp@redhat.com>
317
318         * gtk/gtktextview.c (invalidated_handler): put validate idle at
319         resize - 2 just for flexibility
320
321 2001-08-30  Havoc Pennington  <hp@redhat.com>
322
323         * gtk/gtktextdisplay.c (render_layout_line): handle NULL shaped
324         object from the empty-child-anchor case by drawing a little box.
325         
326         * gtk/gtktextlayout.c (add_child_attrs): Still set shape attribute
327         if the child anchor has no anchored widgets - fixes #59328.
328
329         Also, remove bizarre deletion of preedit string that seems to have
330         gotten in here somehow.
331
332 2001-08-30  Havoc Pennington  <hp@redhat.com>
333
334         * gtk/gtktextview.c (gtk_text_view_check_cursor_blink): apply fix
335         to #58420 from Hidetoshi Tajima and Matthias Clasen
336
337 Wed Aug 29 17:28:04 2001  Jonathan Blandford  <jrb@redhat.com>
338
339         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
340         change color when the GtkTreeView loses focus.
341
342         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_render):
343         ditto.
344         
345         * gtk/gtkstyle.c (gtk_default_draw_flat_box): ditto
346
347 2001-08-28  Havoc Pennington  <hp@pobox.com>
348
349         * gtk/gtkwindow.c (gtk_window_set_icon_list): fix g_object_notify
350
351 2001-08-28  Havoc Pennington  <hp@pobox.com>
352
353         * demos/gtk-demo/main.c (setup_default_icon): add default icon
354
355         * gtk/gtkradiobutton.c (gtk_radio_button_new_with_mnemonic):
356         warning fix
357         (gtk_radio_button_new_with_label): warning fix
358
359         * gtk/gtkdnd.c: used some random GtkImage private structs, 
360         update to reflect GtkImage changes
361
362         * gdk/x11/gdkwindow-x11.c (gdk_window_set_icon_list): don't check
363         whether the hint is supported, just always set the icon. A task
364         list might want to use it even if the WM doesn't, and the WM may
365         change over time. Also, XDeleteProperty() if list == NULL.
366
367         * gtk/gtkwindow.c (gtk_window_set_icon_list)
368         (gtk_window_get_icon_list)
369         (gtk_window_set_icon)
370         (gtk_window_get_icon)
371         (gtk_window_set_default_icon_list)
372         (gtk_window_get_default_icon_list):
373         new functions
374
375         * gtk/gtk-boxed.defs (GtkIconSet): add GtkIconSet
376
377         * gtk/gtkimage.c: Implement property support, bug #59408
378
379         * gtk/gtkcontainer.c (gtk_container_add): make the warning message
380         on reparent-without-removing-first a bit more helpful.
381         Let's just destroy this FAQ.
382
383 Tue Aug 28 21:37:11 2001  Matthias Clasen  <matthiasc@poet.de>
384
385         * demos/gtk-demo/appwindow.c (do_appwindow): Use g_signal_connect_object
386         instead of gtk_signal_connect, to avoid warnings at destruction time. (#58161)
387
388 Tue Aug 28 21:00:44 2001  Matthias Clasen  <matthiasc@poet.de>
389
390         * gtk/gtkprogressbar.c (gtk_progress_bar_set_text): Move the setting
391         of use_text_format to the end of the function. (#56447)
392
393 Tue Aug 28 20:06:07 2001  Matthias Clasen  <matthiasc@poet.de>
394
395         * demos/testpixbuf.c (update_timeout): Use gdk_pixbuf_loader_get_pixbuf
396         only in response to an area_prepared signal.
397
398 2001-08-28  Alex Larsson  <alexl@redhat.com>
399
400         * gtk/gtkwidget.c (gtk_widget_class_init):
401         Make unrealize GTK_RUN_LAST.
402
403 Mon Aug 27 22:00:41 2001 Manish Singh <yosh@gimp.org>
404
405         * gtk/gtkradiobutton.c: fix silly cut'n'paste error,
406         with_label and with_mnemonic should create radio buttons, not
407         check buttons
408
409 Mon Aug 27 15:28:56 2001  Jonathan Blandford  <jrb@redhat.com>
410
411         * tests/testtreefocus.c (main): Fix to use GtkSelectionMode.
412         * tests/treestoretest.c (make_window): ditto
413         * demos/gtk-demo/main.c (create_tree): ditto
414         * demos/gtk-demo/stock_browser.c (do_stock_browser): ditto.
415
416 Mon Aug 27 15:18:14 2001  Jonathan Blandford  <jrb@redhat.com>
417
418         * gtk/gtktreeselection.c (gtk_tree_selection_set_mode): Use the
419         GTK selection types rather than GtkTreeSelectionMode.
420
421         * docs/Changes-2.0: Add comment about selection change.
422
423 Mon Aug 27 14:21:30 2001  Jonathan Blandford  <jrb@redhat.com>
424
425         * gtk/gtkenums.h (GtkSelectionMode): deprecate
426         GTK_SELECTION_EXTENDED.
427
428         * gtk/gtkclist.c: Remove old GTK_SELECTION_MULTIPLE behavior.
429         Make GTK_SELECTION_EXTENDED be GTK_SELECTION_MULTIPLE.
430
431         * gtk/gtkctree.c: ditto
432
433         * gtk/gtklist.c: ditto
434
435         * gtk/gtktree.c: ditto
436
437 Mon Aug 27 14:18:12 2001  Owen Taylor  <otaylor@redhat.com>
438
439         * gtk/gtkmenubar.h (gtk_menu_bar_prepend): Fix a cuple
440         of typos in compat macros. (#59624, Skip Montaro)
441
442 Sun Aug 26 20:00:00 2001  Owen Taylor  <otaylor@redhat.com>
443
444         * configure.in acinclude.m4: Use autoconf 2.13/2.50 compat
445         macro.
446
447          (patch from ERDI Gergo  <cactus@cactus.rulez.org>, #58920)
448  
449         * gtk/gtkmenuitem.c (gtk_menu_item_set_right_justified): Change
450         interface to be a standard setter from gtk_menu_item_right_justify.
451         (gtk_menu_item_get_right_justified): a getter to go with the setter
452
453         * gtk/gtkmenuitem.h: Add a deprecated compat macro for
454         gtk_menu_item_right_justify.
455
456         * demos/gtk-demo/menus.c tests/testgtk.c: Switch to 
457         gtk_menu_item_set_right_justified.
458  
459 2001-08-27  Jens Finke <jens@gnome.org>
460
461         * gtk+.spec.in: Updated to match gpp requirements, reworked the
462         files section to make it work with 1.3.x releases.
463
464 2001-08-26  Alexander Larsson  <alla@lysator.liu.se>
465
466         * gtk/gtkbutton.[ch]:
467         Add properties for labels, mnemonics and stock items.
468         Added C accessor functions for the properties.
469         Removed deprecated button->child.
470
471         * gtk/gtkradiobutton.c:
472         * gtk/gtktogglebutton.c:
473         Update to use the functions in GtkButton.
474
475         * gtk/gtkcheckbutton.c:
476         Update to use the functions in GtkButton.
477         Changed size allocation of child. Now only gets as much
478         space as it requests.
479
480         * gtk/gtkclist.c:
481         Don't use GtkButton->child
482
483         * gtk/gtklabel.c:
484         Fixed typo in docs
485         
486 2001-08-26  Alexander Larsson  <alla@lysator.liu.se>
487
488         * tests/testgtk.c:
489         * tests/Makefile.am:
490         Ressurect the properties test.
491         I don't care if it is inferior, I just want to test my property code.
492
493 2001-08-25  Chema Celorio  <chema@celorio.com>
494
495         * gtk/gtktable.c (gtk_table_set_child_property): pass ->nrows to
496         gtk_table_resize as the first argument for CHILD_PROP_RIGHT_ATTACH
497         and CHILD_PROP_LEFT_ATTACH v.s. using ->ncols
498
499 2001-08-24  Havoc Pennington  <hp@pobox.com>
500
501         * gtk/gtkcompat.h: remove gtk_menu_* compat defines; 
502         these are already in gtkmenu.h, and the copies
503         here were broken.
504
505         Also, change GTK_DISABLE_COMPAT_H to GTK_DISABLE_DEPRECATED
506
507         * gdk/gdkpixbuf-drawable.c (gdk_pixbuf_get_from_image):
508         special-case bitmaps to allow no colormap
509         (bitmap1): implement no-colormap bitmap-getting
510         (bitmap1a): implement no-colormap bitmap-getting to pixbuf with
511         alpha
512         (rgb8): indentation
513         (rgb1a, rgb1): change the way we read the data out of the image, 
514         old way didn't seem to work quite right.
515
516         I'm pretty sure a lot of the rgbconvert code is still broken.
517         
518         * gtk/gtkwindow.c (gtk_window_move_resize): move hints comparison
519         above position constraint (I really intended to do this before,
520         don't know what's up with that)
521         (gtk_XParseGeometry): shut up gcc
522
523         * gdk/gdkpixbuf-drawable.c (rgb1a): fix bug where "x1" was used
524         and "0" should have been. remove the attempted 4-bytes-at-once
525         optimization, it was totally broken.
526
527 Sat Aug 25 19:02:39 2001  Owen Taylor  <otaylor@redhat.com>
528
529         * gtk/gtkbutton.[ch] gtk/gtktogglebutton.c: Add optional movement
530         on push to buttons (based on patch from Soeren Sandmann, #54720)
531
532           - Add child_displacement_x/y style properties to control how far the
533             child moves when the button is depressed.
534
535           - Add non-exported function _gtk_button_set_depressed to clean
536             up the handling of the in/out shadow and separate it frmo
537             widget->state.
538
539           - Lots of code cleanup and simplification of state handling
540             for GtkButton/GtkToggleButton.
541  
542         * tests/testgtkrc: Set the x/y displacement to 1 to provide a test
543         of button movement. testgtk + testgtkrc == test ugly GTK+, as always.   
544
545 Fri Aug 24 23:09:05 2001  Owen Taylor  <otaylor@redhat.com>
546
547         * gtk/gtkimage.[ch] docs/Changes-2.0.txt: Break compatibility 
548         and make gtk_image_new() take no arguments. The compiler will
549         catch it, and it is vastly more useful than having
550         gtk_image_new() be a deprecated alias for gtk_image_new_from_image().  
551
552         * gtk/gtkmenu.c (gtk_menu_set_property): Apply patch
553         to add tearoff-title property (#51319, Lee Mallabone)
554
555 Fri Aug 24 22:12:32 2001  Owen Taylor  <otaylor@redhat.com>
556
557         * gtk/gtkmenuitem.[ch]: Remove unused and useless function
558         gtk_menu_item_configure(). (#58925)
559
560 Fri Aug 24 16:03:45 2001  Jonathan Blandford  <jrb@redhat.com>
561
562         * gtk/gtktreeview.c (gtk_tree_view_scroll_to_cell): Add
563         "use_align" to give people the option to just make a cell visible.
564
565         * gtk/gtktreeview.c (gtk_tree_view_scroll_to_point): fix bug where
566         we were scrolling past the end of the tree.
567
568         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_pack_start):
569         rename gtk_tree_view_column_pack_start_cell_renderer to
570         gtk_tree_view_column_pack_start.  Same for pack_end, and clear.
571
572 Fri Aug 24 12:02:08 2001  Owen Taylor  <otaylor@redhat.com>
573
574         * gtk/gtktextbuffer.c (gtk_text_buffer_new): Remove
575         a stray g_object_ref() left over from gtk_object_ref/sink.
576         (Pointed out by Josh Pritikin.)
577
578 Thu Aug 23 19:33:54 2001  Owen Taylor  <otaylor@redhat.com>
579
580         * gtk/gtkcontainer.[ch]: Rename gtk_container_children()
581         to gtk_container_get_children. Added deprecated compatibility
582         macro. (Suggested by Vitaly Tishkov, #59051)
583
584         * gtk/gtktoolbar.c gtkdialog.c: Fix gtk_container_children()
585         calls.
586
587 Thu Aug 23 19:10:01 2001  Owen Taylor  <otaylor@redhat.com>
588
589         * gtk/gtkmenubar.h (gtk_menu_bar_insert): Deprecate 
590         gtk_menu_bar_append/prepend/insert, forgot to do this
591         when we deprecated gtk_menu_append/prepend/insert.
592
593         * gtk/gtkmenu.h (gtk_menu_insert): Add casts to deprecated
594         compat macros.
595
596         * gtk/gtkmenu.c: Fix problem with static gtk_menu_insert() being
597         renamed by compat macro.
598
599         * gtk/gtkfontsel.h: Deprecated gtk_font_selection_get_font(),
600         gtk_font_selection_dialog_get_font(). (Suggested by
601         Vitaly Tishkov, #59383)
602
603 Thu Aug 23 18:23:31 2001  Owen Taylor  <otaylor@redhat.com>
604
605         * gtk/gtktexttag.c (gtk_text_tag_table_get_size): 
606         Rename from gtk_text_tag_table_size(). (#59366)
607
608 Thu Aug 23 20:01:41 2001  Kristian Rietveld  <kristian@planet.nl>
609
610         * gtk/gtktreemodelsort.[ch], gtk/gtktreesortable.[ch],
611         gtk/gtktreestore.[ch], gtk/gtktreeviewcolumn.[ch],
612         gtk/gtkliststore.[ch]: use GtkSortType instead of GtkTreeSortOrder.
613         (#59173).
614
615 Thu Aug 23 16:26:47 2001  Tim Janik  <timj@gtk.org>
616
617         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_finalize): 
618         * gtk/gtktextmark.c (gtk_text_mark_finalize): chain parent class
619         handlers, pointed out by Joshua N Pritikin <vishnu@pobox.com>.
620
621 Wed Aug 22 19:15:39 2001  Owen Taylor  <otaylor@redhat.com>
622
623         [ Patch from Sebastian Wilhelmi, 52790 ]
624
625         * gtk/gtkversion.h.in gtk/gtk.h: New file replacing gtkcompat.h
626
627         * gdk/gdkcompat.h gdk/gdk*.h gtk/gtkcompat.h.in gtk/gtk*.h: 
628         Move compatibility macros from g[dt]kcompat.h to within 
629         #ifndef G[DT]K_DISABLE_DEPRECATED in each file.
630
631         * gdk/gdk-pixbuf-csource.c: Fix up include of gtkcompat.h.
632
633         * demos/Makefile.am demos/gtk-demo/Makefile.am 
634           docs/reference/gdk-pixbuf/Makefile.am modules/input/Makefile.am
635           tests/Makefile.am: Remove references to -G[DT]K_DISABLE_DEPRECATED.
636
637         * demos/{pixbuf-demo.c,testpixbuf-drawable.c,testpixbuf-save.c,
638                  testpixbuf.c}: Fix usages of deprecated functions.
639
640 Wed Aug 22 19:03:27 2001  Jonathan Blandford  <jrb@redhat.com>
641
642         * gtk/gtktreeview.c (gtk_tree_view_set_model): clean up selection
643         when changing models.
644
645 Wed Aug 22 18:25:46 2001  Jonathan Blandford  <jrb@redhat.com>
646
647         * gtk/gtktreeview.c: Fix selection.  I think it's all dandy now.
648         We check the current event for modifiers rather than try to trap
649         all presses.
650
651 2001-08-22  Anders Carlsson  <andersca@gnu.org>
652
653         * gtk/gtkliststore.h (GTK_LIST_STORE_CLASS): Fix a small typo.
654         It's LIST_STORE, not LISTSTORE.
655
656 Tue Aug 21 12:43:29 2001  Owen Taylor  <otaylor@redhat.com>
657
658         * gtk/gtk.h: Remove commented out gtkpacker reference.
659
660 2001-08-21  Matthias Clasen  <matthiasc@waldgeist.poet.de>
661
662         * configure.in (all_loaders): Add tga loader, 
663         patch by Nicola Girardi. (#56067)
664
665 Tue Aug 21 02:57:13 2001  Jonathan Blandford  <jrb@redhat.com>
666
667         * gtk/gtktreeview.c (gtk_tree_view_button_press): Fix up selection
668         a little.  More needs to be done tomorrow.
669
670 Tue Aug 21 00:45:55 2001  Jonathan Blandford  <jrb@redhat.com>
671
672         * gtk/gtktreeview.c (gtk_tree_view_destroy): Grr... Get it right.
673
674 Mon Aug 20 23:48:18 2001  Jonathan Blandford  <jrb@redhat.com>
675
676         * gtk/gtktreeview.c (gtk_tree_view_get_cell_area): Fix bug
677         reported by Kristian Rietveld <kristian@planet.nl> to handle row
678         == NULL.
679         (gtk_tree_view_destroy): Fix bug reported by Kristian Rietveld
680         <kristian@planet.nl> to change destroy order.
681
682 Mon Aug 20 11:39:44 2001  Jonathan Blandford  <jrb@redhat.com>
683
684         * gtk/gtktreeselection.c (gtk_tree_selection_class_init): Use
685         correct marshaller.
686
687 Sun Aug 19 03:22:59 2001  Jonathan Blandford  <jrb@redhat.com>
688
689         * gtk/gtkliststore.c: Fix up warnings, #58928.
690
691         * gtk/gtktreeselection.h: Change signal prototype, #58647
692
693         * gtk/gtktreeview.c (_gdk_tree_view_find_node): Make more robust,
694         #59221.
695
696         * gtk/gtkstyle.c: Actually prelight arrow, #50981
697         
698 2001-08-18  Hans Breuer  <hans@breuer.org>
699
700         * gdk/gdk.def : updated externals
701
702         * gdk/win32/gdkselection-win32.c : returning TRUE with gdk_selection_set
703         is required to get (at least) visible in entry fields. Some selections
704         are really handled now - even on win32 - but copying via middle
705         mouse button into a different app needs to wait ... 
706
707         * gdk/win32/gdkdnd-win32.c : implemented inter-app drag&drop
708         mostly by stealling code from gdkdnd-fb.c. Thanks to who ever wrote it!
709
710         * gdk/win32/gdkevents-win32.c : some tweaking to get better expose
711         handling. I'm not sure if it is better now, but at least not worse
712
713         * gdk/win32/gdkgeometry-win32.c : replaced every call to MoveWindow
714         with SetWindowPos () which allows more fine-tuning backing-store wise
715
716         * gdk/win32/gdkwindow-win32.c : allow unraised gdk_window_show ().
717         Also changed move/resize to be more like the X version.
718
719         * gtk/gtk.def : updated externals
720
721 2001-08-19  Sven Neumann  <sven@gimp.org>
722
723         * gtk/gtktooltips.c
724         * tests/testtreesort.c
725         * tests/treestoretest.c: inserted some casts to get rid of compiler
726         warnings.
727
728 Sun Aug 19 01:44:44 2001  Jonathan Blandford  <jrb@redhat.com>>
729
730         * gtk/gtktreeviewcolumn.c
731         (gtk_tree_view_column_pack_{start,end}_cell_renderer): sink cell.
732
733         * gtk/gtktreeview.c (gtk_tree_view_insert_column): sink column.
734         (_gtk_tree_view_find_node): If *node is NULL,
735         *tree should be NULL too.
736
737         * demos/gtk-demo/stock_browser.c (do_stock_browser): don't unref
738         column/renderers.
739         * tests/testtreecolumns.c: ditto
740         * tests/testtreefocus.c: ditto
741         * tests/testtreesort.c: ditto
742         * tests/testtreeview.c: ditto
743         * tests/treestoretest.c: ditto
744
745 Sat Aug 18 04:34:31 2001  Jonathan Blandford  <jrb@redhat.com>
746
747         * gtk/gtkcellrenderer.c (gtk_cell_renderer_class_init): 2 new
748         signals; is_expander/is_expanded.
749
750         * gtk/gtlcellrendererpixbuf.c: Allow other expanded and closed
751         pixbufs.
752
753         * gtk/gtktreeview.c: set above properties.
754
755 Sat Aug 18 23:01:33 2001  Owen Taylor  <otaylor@redhat.com>
756
757         * gtk/gtkwidget.h: Really remove set_default_style().
758
759         * docs/Changes-2.0.txt: added a note about
760         gtk_widget_push/pop/set_default_style.
761
762 2001-08-18  Havoc Pennington  <hp@pobox.com>
763
764         * gtk/gtkwindow.c (gtk_window_move_resize): constrain position on
765         hints_changed in addition to the other cases.
766         (gtk_window_move_resize): include last position from configure
767         notify in debug spew
768
769 2001-08-18  James Henstridge  <james@daa.com.au>
770
771         * gtk/gtkaccelgroup.c (gtk_accel_group_object_destroy): use the
772         second argument to the weak ref notify, cleaning up some uglyness.
773         (gtk_accel_group_attach): remove and add the weak notifier when
774         changing the accel groups slist.
775         (gtk_accel_group_detach): same here.
776
777 2001-08-17  Darin Adler  <darin@bentspoon.com>
778
779         * gtk/gtktreeview.c: (gtk_tree_view_search_equal_func): Add
780         missing parameters to utf8 functions to make it compile.
781
782 Fri Aug 17 19:30:14 2001  Jonathan Blandford  <jrb@redhat.com>
783
784         * gtk/gtktreeprivate.h:
785         * gtk/gtktreeview.c: (gtk_tree_view_class_init),
786         (gtk_tree_view_init), (gtk_tree_view_set_property),
787         (gtk_tree_view_get_property), (gtk_tree_view_destroy),
788         (gtk_tree_view_key_press), (gtk_tree_view_leave_notify),
789         (gtk_tree_view_focus_out), (gtk_tree_view_set_model),
790         (gtk_tree_view_set_destroy_count_func),
791         (gtk_tree_view_set_enable_search),
792         (gtk_tree_view_get_enable_search),
793         (gtk_tree_view_get_search_column),
794         (gtk_tree_view_set_search_column),
795         (gtk_tree_view_get_search_equal_func),
796         (gtk_tree_view_set_search_equal_func),
797         (gtk_tree_view_search_dialog_destroy),
798         (gtk_tree_view_search_position_func),
799         (gtk_tree_view_interactive_search),
800         (gtk_tree_view_search_delete_event),
801         (gtk_tree_view_search_button_press_event),
802         (gtk_tree_view_search_key_press_event),
803         (gtk_tree_view_search_move), (gtk_tree_view_search_equal_func),
804         (gtk_tree_view_search_iter), (gtk_tree_view_search_init):
805         * gtk/gtktreeview.h:
806         Add heavily modified patch from Kristian Rietveld to handle
807         interactive searching.
808
809 Fri Aug 17 17:30:34 2001  Tim Janik  <timj@gtk.org>
810
811         * gtk/gtktreemodel.c (gtk_tree_path_new_from_string): const correct
812         string parameter.
813
814         * gtk/gtkoptionmenu.c (gtk_option_menu_set_menu): connect to
815         GtkMenuShell::selection_done, now that we have it, instead of 
816         ::deactivate so we're not tearing the menu apart and notify
817         the user prematurely.
818
819 Thu Aug 16 05:22:01 2001  Tim Janik  <timj@gtk.org>
820
821         * gtk/gtkwindow.c (gtk_window_move_resize): if we actually move our
822         window, clear window->need_default_position to avoid infinite loops.
823         some comment fixups and GTK_RESIZE_IMMEDIATE fixups.
824
825 Wed Aug 15 12:36:55 2001  Tim Janik  <timj@gtk.org>
826
827         * gtk/gtktreeview.c (gtk_tree_view_set_model): move all model setup
828         code into this place. get rid of GTK_TREE_VIEW_MODEL_SETUP usage.
829         (gtk_tree_view_set_property): don't cast possible NULL objects.
830         (gtk_tree_view_destroy): reset the model to NULL.
831
832         * gtk/gtktreeselection.c (gtk_tree_selection_finalize): chain
833         parent_class handler.
834
835 2001-08-17  Matthias Clasen  <matthiasc@waldgeist.poet.de>
836
837         * gtk/demos/gtk-demo/*: Remove all uses of deprecated functions.
838
839 2001-08-17  Anders Carlsson  <andersca@gnu.org>
840
841         * gtk/gtkstyle.c (create_expander_affine): Divide with floating
842         point numbers so that the result will be floating point.
843
844 2001-08-16  Matthias Clasen  <matthiasc@waldgeist.poet.de>
845
846         * tests/testgtk.c (create_handle_box): 
847         (create_toolbar): Replace gtk_window_set_policy calls by
848         gtk_window_set_resizable.
849
850 2001-08-16  Jakub Steiner <jimmac@ximian.com>
851
852         * gtk/stock-icons/dialog_info.png: new style bulb
853         * gtk/stock-icons/dialog_error.png: maybe a little drastic ;)
854         * gtk/stock-icons/dialog_warning.png: need a hand?
855         * gtk/stock-icons/stock_add.png, stock_remove.png: I hope 
856           the aa border gets chopped off ok
857         * gtk/stock-icons/stock_colorselector.png: using the new hand
858         * gtk/stock-icons/stock_dnd_multiple.png: I'm not totally sure what 
859           this one is for, but the old icon was butt ugly.
860         * gtk/stock-icons/stock*_insert_image.png: not sure if it belongs here
861         * gtk/stock-icons/stock*_insert_object.png: "
862         * gtk/stock-icons/stock_index.png: using new hand icon
863         * gtk/stock-icons/stock*_new.png: the document template being used 
864           elsewhere too
865         * gtk/stock-icons/stock*_print*.png: new print and print preview 
866           icons (panel/menu)  
867         * gtk/stock-icons/stock*_save*.png, stock*_revert.png: new save/revert 
868           icons based on Tuomas' floppy image.
869         * gtk/stock-icons/stock*_search*.png: search and s'n'r icons for panel/menu
870         * gtk/stock-icons/stock*_stop.png: replacing the old 'x' button
871         * gtk/stock-icons/stock*_trash.png: based on Tuomas' trash icon
872         * gtk/stock-icons/stock*_undelete.png: "
873         * gtk/stock-icons/stock_preferences.png: I have a version with a 
874           document base if the sliders are no good.
875         * gtk/stock-icons/stock_properties.png: properties 
876         
877
878         * gtk/stock-icons/stock*_copy.png, stock*_cut.png, stock*_paste.png: Tuomas' 
879           (tigert@ximian.com) clipboard icons
880         * gtk/stock-icons/stock_{up,down,left,right}_arrow.png: tigert's new arrows
881         * gtk/stock-icons/stock*_{undo,redo}.png: tigert's undo/redo icons.
882         * gtk/stock-icons/stock_open.png: shaded open icon by Tuomas. we should make it a
883           little bigger IMHO
884
885 2001-08-16  Sven Neumann  <sven@gimp.org>
886
887         * gtk/gtkbox.c (gtk_box_class_init): removed unused widget_class.
888
889 2001-08-15  Padraig O'Briain  <padraig.obriain@sun.com>
890
891         * gtk/gtkcellrenderertext.c:
892         Avoid warning when specifying NULL for "attributes" property
893
894 2001-08-15  Matthias Clasen  <matthiasc@waldgeist.poet.de>
895
896         * docs/debugging.txt: Add a warning about --enable-debug=no,
897         some editorial changes.
898
899 2001-08-13  Matthias Clasen  <matthiasc@waldgeist.poet.de>
900
901         * gtk/docs/debugging.txt, gdk/gdk.c, gdk/gdkinternals.h, 
902         gdk/x11/gdkmain-x11.c, gtk/gtkdebug.h, gtk/gtkmain.c: Update 
903         debugging info, remove unused debug flags. (#58330)
904
905 Mon Aug 13 13:17:32 2001  Jonathan Blandford  <jrb@redhat.com>
906
907         * gtk/gtktreeselection.c (gtk_tree_selection_select_all): 
908         (gtk_tree_selection_select_all): Remove strict checking for rows.
909
910 2001-08-13  Matthias Clasen  <matthiasc@waldgeist.poet.de>
911         
912         * gtk/gtktooltips.c (gtk_tooltips_set_tip, gtk_tooltips_draw_tips): 
913         Don't remove the tooltip window when the tip text changes. (#15891)
914
915 Sun Aug 12 12:02:09 2001  Owen Taylor  <otaylor@redhat.com>
916
917         * gtk/Makefile.am ($(srcdir)/gtkmarshal.c): Remove extra
918         $(srcdir).
919
920 Sun Aug 12 10:39:12 2001  Owen Taylor  <otaylor@redhat.com>
921
922         * Makefile.am (EXTRA_DIST): Fix problem with trying to
923         dist files from intl/, which is no longer there.
924
925 2001-08-11  Hans Breuer  <hans@breuer.org>
926
927         * gtk/gtkalignment.c, gtk/gtkarrow.c, gtk/gtkaspectframe.c,
928           gtk/gtkcellrenderer.c, gtk/gtkcellrenderertext.c, 
929           gtk/gtkcombo.c, gtk/gtkcurve.c, gtk/gtkfontsel.c, 
930           gtk/gtklayout.c, gtk/gtkmisc.c, gtk/gtkpacker.c, 
931           gtk/gtkprogress.c, gtk/gtkruler.c,, gtk/gtksettings.c,
932           gtk/gtkspinbutton.c, gtk/gtktexttag.c : coalescing property notifies
933
934         * gtk/gtkclist.c, gtk/gtktipsquery.c, gtk/gtktexttag.c,
935           gtk/gtkwidget.c : added G_SIGNAL_TYPE_STATIC_SCOPE to all
936         GDK_TYPE_EVENT signals
937
938         * gtk/gtkalignment.c : removed 'direct allocation bug',
939         which Tim discovered while reading the patch
940
941 Sat Aug 11 14:32:14 2001  Owen Taylor  <otaylor@redhat.com>
942
943         * gtk/gtkwidget.h (gtk_widget_set_default_visual): Add some
944         compat macros for push/pop/set_visual that were supposed
945         to be added a long time ago, but got dropped. 
946
947 Fri Aug 10 16:55:53 2001  Tim Janik  <timj@gtk.org>
948
949         * gtk/gtkwindow.c (gtk_window_set_policy): coalesce multiple
950         property notifies.
951
952 2001-08-07  Havoc Pennington  <hp@pobox.com>
953
954         * gtk/gtkfilesel.c (open_ref_dir): fix a typo.
955
956         * gtk/gtkplug.c (gtk_plug_init): remove setting of auto_shrink;
957         some fixage is needed here, but nothing simple. Owen understands
958         it. ;-)
959
960         * gtk/gtkwindow.h, gtk/gtkwindow.c: Rework code and API for window
961         sizing and positioning.  Also, fix bug in compute_geometry_hints
962         (width/height confusion for setting min size). 
963         (gtk_window_move): new function
964         (gtk_window_resize): new function
965         (gtk_window_get_size): new function
966         (gtk_window_get_position): new function
967         (gtk_window_parse_geometry): new function
968         
969         * gtk/gtkwidget.c (gtk_widget_set_size_request): new function
970         (gtk_widget_get_size_request): new function
971         (gtk_widget_get_usize): delete, that was a short-lived function
972         ;-)
973         (gtk_widget_set_usize): deprecate
974         (gtk_widget_set_uposition): deprecate, make it a trivial 
975         gtk_window_move() wrapper
976         (gtk_widget_class_init): remove x/y/width/height properties,
977         add width_request height_request
978         
979         * demos/*: update to avoid deprecated functions
980         
981         * gtk/gtklayout.c: add x/y child properties
982
983         * gtk/gtkfixed.c: add x/y child properties, and get rid of 
984         uses of "gint16"
985
986         * tests/testgtk.c (create_window_sizing): lots of tweaks to window
987         sizing test
988
989         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Ensure that
990         configure events on toplevel windows are always in root window
991         coordinates, following ICCCM spec that all synthetic events 
992         are in root window coords already, while real events are 
993         in parent window coords. Previously the code assumed that 
994         coords of 0,0 were parent window coords, which was 
995         really broken.
996   
997         * gtk/gtkcontainer.c (gtk_container_get_focus_chain): fix
998         warning
999  
1000         * gdk/gdkwindow.h (GdkWindowHints): add GDK_HINT_USER_POS 
1001         and GDK_HINT_USER_SIZE so we can set USSize and USPosition 
1002         hints in gtk_window_parse_geometry()
1003  
1004         * gdk/x11/gdkwindow-x11.c (gdk_window_set_geometry_hints): support
1005         new USER_POS USER_SIZE hints    
1006
1007 2001-08-09  Matthias Clasen  <matthiasc@waldgeist.poet.de>
1008
1009         * tests/prop-editor.c (properties_from_type): Use 
1010         g_object_class_list_properties to get the param specs 
1011         for a given type. (#58609)
1012
1013 2001-08-09  Matthias Clasen  <matthiasc@waldgeist.poet.de>
1014
1015         * gtk/gtkstyle.c (gtk_style_real_unrealize): Don't forget to
1016         free the text_aa parts. (#57549)
1017
1018 2001-08-09  Matthias Clasen  <matthiasc@waldgeist.poet.de>
1019
1020         * gdk/gdkgc.c (gdk_gc_set_rgb_bg_color): Set the background color,
1021         not the foreground color. (#57621)
1022
1023 2001-08-09  Alexander Larsson <alexl@redhat.com>
1024
1025         * gdk/win32/gdkfont-win32.c:
1026         Update to the new pango win32 api.
1027
1028 2001-08-08  HideToshi Tajima  <tajima@eng.sun.com>
1029
1030         * gtk/gtkclipboard.c (request_text_received_func): ask apps for
1031         COMPOUND_TEXT instead of TEXT
1032         * gdk/x11/gdkselection-x11.c (gdk_utf8_to_compound_text): correctly
1033         interpret the return value of g_string_to_compound_text()
1034         (#55152)
1035
1036 2001-08-08  Matthias Clasen  <matthiasc@waldgeist.poet.de>
1037
1038         * gtk/gtktreestore.c (gtk_tree_store_iter_n_children): Don't
1039         fail if iter is NULL. (#58347)
1040
1041 2001-08-07  Matthias Clasen  <matthiasc@waldgeist.poet.de>
1042
1043         * gtk/gtktextdisplay.c (render_para, gtk_text_layout_draw): Fix
1044         some off-by-one issues, fixing selection of line-ends. (#50323)
1045
1046 2001-08-07  Matthias Clasen  <matthiasc@waldgeist.poet.de>
1047
1048         * gtk/gtkhsv.c (gtk_hsv_map, gtk_hsv_unmap): Reinstate these
1049         functions in order to make mouse operation work again in the
1050         color wheel. (#58604)
1051
1052 2001-08-07  James Henstridge  <james@daa.com.au>
1053
1054         * gtk/gtkaccellabel.c (gtk_accel_label_set_accel_object): refetch
1055         the accelerator when the accel object is changed.  Fixes bug
1056         #58628.
1057
1058 2001-08-06  HideToshi Tajima  <tajima@eng.sun.com>
1059
1060         * modules/input/gtkimcontextxim.c (mb_to_utf8), xim_text_to_utf8):
1061         Skip g_convert when to_codeset and from_codeset are both 'UTF-8'
1062         (gnome bugzilla #58202)
1063
1064 2001-08-06  Havoc Pennington  <hp@pobox.com>
1065  
1066         * gdk/x11/gdkimage-x11.c (_gdk_x11_get_image): The whole 
1067         GDK_IS_WINDOW() branch of this was a bit screwed up, because 
1068         it was expecting a GdkWindow, not a GdkWindowImplX11.
1069  
1070         Also, we were getting the window rect in screen coords 
1071         and the screen rect in window coords then intersecting 
1072         them; instead, get window rect in window coords.
1073  
1074         Finally, there were codepaths that resulted in a stuck server grab
1075         (when the window was fully onscreen, or on gdk_image_new()
1076         failure); make the server ungrab thing a bit more
1077         robust/consistent.
1078
1079 2001-08-06  Sven Neumann  <sven@gimp.org>
1080
1081         * gdk/gdkpango.c (gdk_pango_context_destroy): 
1082         check if info->colormap != NULL before unref'ing it. It might have
1083         been set to NULL using gdk_pango_context_set_colormap().
1084
1085 Sun Aug  5 11:24:27 2001  Owen Taylor  <otaylor@redhat.com>
1086
1087         * gtk/gtkcolorsel.c (gtk_color_selection_set_current_alpha): 
1088         Fix conversion from float to int so that we don't get
1089         skew in the int => float => int roundtrip. 
1090         (#58120, reported by Vitaly Tishkov). Also fix problem
1091         where if no alpha was set, the returned alpha
1092         from (say) set_current_alpha() was returned as 1, not 65535.
1093
1094 Sun Aug  5 09:48:08 2001  Owen Taylor  <otaylor@redhat.com>
1095
1096         * gtk/gtklist.c (gtk_list_clear_items): Fix
1097         problem with selecting a new focus child.
1098
1099         * gtk/gtklist.c (gtk_list_clear_items): Clear 
1100         list->undo/list_focus_child after unparenting
1101         child, since unparenting the child can result
1102         in list->last_focus_child being set. (#58024)
1103
1104         * Makefile.am (SUBDIRS): Add target specific pc
1105         files to DISTCLEANFILES.
1106
1107         * gtk/Makefile.am: add @GTK_DEBUG_FLAGS@
1108         (58327, Matthias Clasen)
1109
1110 Sat Aug  4 19:28:21 2001  Owen Taylor  <otaylor@redhat.com>
1111
1112         * tests/testgtk.c: Patch from Hans (with various modifications),
1113         to add the ability to use testgtk as a rough-and-ready
1114         benchmark. Try, 'testgtk --bench all:5' (if you want decent
1115         numbers, run without a window manager)
1116
1117 2001-08-04 Alexander Larsson <alexl@redhat.com>
1118
1119         * gdk/win32/gdkinput.c:
1120         Add #ifdef HAVE_WINTAB around wintab.h include.
1121
1122         * gtk/gtk.def:
1123         Removed marshals that have been moved to glib.
1124         Commented out plug and socket. They didn't compile for me 
1125         on win32.
1126
1127 2001-08-04  Hans Breuer  <hans@breuer.org>
1128
1129         * gtk/stocks-icons/makefile.msc : new file
1130         * gtk/makefile.msc.in : use it
1131
1132         * gtk/gtkstyle.c : not all platforms do provide M_PI and
1133         friends, but luckily there is G_PI
1134
1135         * gtk/gtk.def : updated
1136
1137         * gdk/win32/gdkwindow.c (gdk_window_new) : don't make all TEMP 
1138         windows WS_POPUP, but only those without a parent. This fixes the 
1139         mis-alignment between the selectable (temp, input only) window and 
1140         the window text of GtkLabel.
1141
1142         (gdk_window_show) : respect private->state when actually showing
1143         the window.
1144
1145         (gdk_window_set_transient_for) : Implementation from Wolfgang 
1146         Sourdeau <wolfgang@contre.com> ported to 2.0 and added some 
1147         error handling. Should fix #50586.
1148
1149         * gdk/win32/gdkevents-win32.c : beautify log output
1150
1151 2001-08-04  Michael Natterer  <mitch@gimp.org>
1152
1153         * gtk/gtkitemfactory.c (gtk_item_factory_create_item):
1154         Need to show the image after adding it to the GtkImageMenuItem.
1155         This used to work without in testgtk because of the
1156         gtk_widget_show_all() at the end of the function.
1157         (Closes #54978).
1158
1159 Tue Jul 31 22:59:33 2001  Tim Janik  <timj@gtk.org>
1160
1161         * gtk/gtknotebook.c (gtk_notebook_get_child_property): 
1162         (gtk_notebook_set_child_property): fix finding of child's page,
1163         since we have to validly deal with labels and menus here as well.
1164         (gtk_notebook_get_child_property): fix warning.
1165         (gtk_notebook_class_init): property tab_pack is of type
1166         GTK_TYPE_PACK_TYPE (enum) not boolean.
1167         (gtk_notebook_find_child): don't always warn, we might be looking
1168         for a label or menu child.
1169         (gtk_notebook_map): fix mapping of panel.
1170
1171         * gtk/gtkwidget.c (gtk_widget_set_child_visible): always constrain
1172         widget's mapped state, regardless of the value being set equals
1173         old settings, since things like REALIZED(parent) or MAPPED(parent)
1174         may have changed since the old value was set. make it an error to
1175         invoke this function on a toplevel widget.
1176
1177 2001-07-31  Darin Adler  <darin@bentspoon.com>
1178
1179         * gdk/gdkprivate.h:
1180         * gdk/x11/gdkx.h:
1181         Put all mentions of GdkFont inside #ifndef GDK_DISABLE_DEPRECATED.
1182
1183         * demos/gtk-demo/menus.c: (do_menus): Cast to G_OBJECT, not
1184         GTK_OBJECT.
1185
1186 Tue Jul 31 15:34:57 2001  Jonathan Blandford  <jrb@redhat.com>
1187
1188         * gtk/gtktreeview.c (gtk_tree_view_remove_column): Whoops.  Stupid
1189         scoping error pointed out by matthiasc@poet.de.
1190
1191 2001-07-31  Sven Neumann  <sven@gimp.org>
1192
1193         * demos/gtk-demo/appwindow.c
1194         * demos/gtk-demo/item_factory.c
1195         * tests/testgtk.c: gtk_accel_group_attach() takes a GObject.
1196
1197 Mon Jul 30 10:49:16 PDT 2001 Suresh Chandrasekharan <suresh.chandrasekharan@sun.com>
1198
1199         * gtk/gtksignal.h (gtk_signal_handler_pending): corrected the wrong
1200         argument order for g_signal_has_handler_pending.
1201
1202 Sun Jul 29 17:14:01 2001  Tim Janik  <timj@gtk.org>
1203
1204         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc): use g_file_test()
1205         instead of long deprecated g_scanner_stat_mode().
1206
1207 2001-07-29  Hans Breuer  <hans@breuer.org>
1208
1209         * gdk/makefile.msc : build in the backend dir after
1210         auto-generating files
1211
1212         * gdk/win32/gdkfont-win32.c (gdk_font_load) : reimplement
1213         with code from win32-production-branch.
1214
1215         *  gdk/win32/gdkwindow-win32.c : set the private->destroyed flag
1216         before calling DestroyWindow, which indirectly calls 
1217         gdk_window_destroy_notify ()
1218
1219         (performance patch merged from win32-production-branch)
1220         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_segments): 
1221         Use PatBlt() instead of LineTo() when possible (solid single-pixel pen, 
1222         R2_COPYPEN rop). It is claimed to be much faster.
1223
1224 Fri Jul 27 11:31:15 2001  Jonathan Blandford  <jrb@redhat.com>
1225
1226         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_get_property):
1227         add an "attributes" property to the text renderer for ATK.
1228
1229 2001-07-26  Alex Larsson  <alexl@redhat.com>
1230
1231         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image):
1232         Initialize image->bits_per_pixel from the drawable, not from
1233         the root window.
1234
1235         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_get_depth):
1236         Fix cast. argument is an IMPL already.
1237
1238 2001-07-15  James Henstridge  <james@daa.com.au>
1239
1240         * gtk/gtkwindow.c (gtk_window_add_accel_group): cast to GObject.
1241         (gtk_window_remove_accel_group): same here.
1242         (gtk_window_key_press_event): same here.
1243
1244         * gtk/gtkwidget.c (gtk_widget_add_accelerator): cast to GObject.
1245         (gtk_widget_remove_accelerator): same here.
1246         (gtk_widget_remove_accelerators): same here.
1247
1248         * gtk/gtkplug.c (gtk_plug_accel_entries_changed): same here.
1249
1250         * gtk/gtkmenushell.c (gtk_menu_shell_key_press): cast to GObject
1251         instead of GtkObject.
1252
1253         * gtk/gtkmenu.c (gtk_menu_key_press): update since GtkAccelGroup
1254         now takes GObjects.
1255
1256         * gtk/gtkitemfactory.c (gtk_item_factory_propagate_accelerator):
1257         pass a GObject to gtk_accel_group_entries_from_object.
1258         (gtk_item_factory_create_item): s/accel_widget/accel_object/
1259
1260         * gtk/gtk-boxed.defs: remove GtkAccelGroup boxed def.
1261
1262         * gtk/gtkaccellabel.c: convert to handle GObject accel objects.
1263
1264         * gtk/gtkaccellabel.h: fix header to reflect that arbitrary
1265         GObjects can have accelerators set now.  Add compatibility
1266         defines.
1267
1268         * gtk/gtkmarshal.list: add missing marshallers.
1269
1270         * gtk/gtkaccelgroup.[ch]: convert to a GObject, and allow setting
1271         accelerators on plain GObjects.  gtk_accel_group_object_destroy
1272         has been converted into a weak reference, and
1273         gtk_accel_group_delete_entries is now a destroy notify for that
1274         piece of data.
1275
1276 2001-07-23  Ron Steinke  <rsteinke@w-link.net>
1277
1278         * gdk/gdkdraw.c: Added a check on the colormap depth to
1279         gdk_drawable_set_colormap()
1280         * gdk/x11/gdkimage-x11.c: combination of Matthias Clasen's
1281         patch to fix colorsel and my patch to fix gdk_drawable_get_image()
1282         for pixmaps without visuals (more specifically, bitmaps)
1283         * gdk/x11/gdkpixmap-x11.c: Fixed gdk_pixmap_new() so it
1284         doesn't set a colormap with the wrong depth
1285
1286
1287 2001-07-22  Anders Carlsson  <andersca@gnome.org>
1288
1289         * gtk/gtktreeview.c (gtk_tree_view_class_init): Replace the
1290         expander_height and expander_width properties with a single
1291         property, expander_size.
1292         (gtk_tree_view_init): Set the tab_offset to expander_size
1293         plus some padding.
1294         (gtk_tree_view_unrealize): Remove the expand/collapse
1295         timeout if it exists.
1296         (coords_are_over_arrow): Fix a small bug.
1297         (gtk_tree_view_motion_draw_column_motion_arrow): Use
1298         expander_size.
1299         (gtk_tree_view_draw_focus): Use "treeview" instead of
1300         "add-mode" as detail when drawing the focus.
1301         (gtk_tree_view_bin_expose): Use "treeview-drop-indicator"
1302         instead of "add-mode" as detail when drawing the focus.
1303         (gtk_tree_view_deleted): If we have a node currently being
1304         expanded or collapsed, remove the timeout and set the node 
1305         to NULL.
1306         (gtk_tree_view_queue_draw_arrow): New function that just
1307         redraws the arrow of a node.
1308         (gtk_tree_view_draw_arrow): Use expander_size instead of
1309         expander_width/expander_height, also pass a different
1310         expander_style to gtk_paint_expander depending on the 
1311         state of the node being drawn.
1312         (expand_collapse_timeout): New function for expanding 
1313         or collapsing a node depending on the previous state.
1314         (gtk_tree_view_real_expand_row): Add timeout and set 
1315         correct state for node being expanded.
1316         (gtk_tree_view_real_collapse_row): Add timeout and set
1317         correct state for node being collapsed.
1318
1319         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): Add
1320         information about the node currently being expanded or
1321         collapsed, and also a timeout id.
1322
1323         * gtk/gtkstyle.h (struct _GtkStyleClass): Replace is_open
1324         with expander_style for draw_expander.
1325
1326         * gtk/gtkstyle.c (gtk_draw_expander): Replace is_open with
1327         expander_style.
1328         (create_expander_affine): New function for creating an 
1329         expander affine.
1330         (apply_affine_on_point): New function for applying an 
1331         affine to a point.
1332         (gtk_default_draw_expander): Modified to take expander_style
1333         instead of is_open, and to draw the rectangle rotated differently
1334         depending on the expander style.
1335         (gtk_paint_expander): Replace is_open with expander_style.
1336
1337         * gtk/gtkrbtree.h: Add expander states to GtkRBNodeColor.
1338
1339         * gtk/gtkenums.h: Add expander style enum.
1340
1341 2001-07-21  Jonas Borgström  <jonas@codefactory.se>
1342
1343         * gtk/gtktreemodel.c (gtk_tree_model_foreach): Check the return
1344         value from gtk_tree_model_get_iter, the model might be empty.
1345
1346 2001-07-20  Hans Breuer  <hans@breuer.org>
1347
1348         * gdk/win32/gdkinput-win32.c : gdk_device_get_history moved to
1349         gdk/gdkinput.c like the other backends
1350
1351         * gdk/win32/gdkinput-win32.h :
1352         * gdk/win32/gdkinput.c :
1353         * gdk/win32/gdkvisual-win32.c :
1354         * gdk/win32/gdkwin32.h : mechanical adaption to GdkDevice and
1355         GdkVisual GObjectification. UNTESTED for pen-devices because
1356         I simply have none.
1357
1358         * gdk/gdk.def :
1359         * gtk/gtk.def : updated externals
1360
1361         * gtk/gtkiconfactory.c :
1362         * gtk/gtkoldeditable.c : GError *error needs to be initialized (= NULL) 
1363         before passing &error to functions to avoid strange crashes
1364         
1365         * gtk/gtkcontainer.c (gtk_container_real_set_focus_child) : is static
1366
1367         * gtk/gtkwidget.c (gtk_widget_get_child_visible): use g_return_val_if_fail
1368
1369         * gtk/makefile.msc.in : updated
1370
1371 Thu Jul 19 15:35:32 2001  Owen Taylor  <otaylor@redhat.com>
1372
1373         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_set_vadjustment):
1374         Add property support. (#51858)
1375
1376 Thu Jul 19 14:56:33 2001  Owen Taylor  <otaylor@redhat.com>
1377
1378         * gtk/gtkaccellabel.c (gtk_accel_label_class_init) 
1379         * gtk/gtkinputdialog.c (gtk_input_dialog_set_key):
1380         Use Shift/Ctrl instead of Shft/Ctl. (#53807)
1381
1382 Thu Jul 19 11:41:00 2001  Owen Taylor  <otaylor@redhat.com>
1383
1384         * gtk/gtkcolorsel.c: Add propery support (roughly
1385         based on patch from Lee Mallabone, #51014)
1386
1387         * gtk/gtkcolorsel.h: Mark gtk_color_selection_set_update_policy as
1388         deprecated, since we already g_warning() on it.
1389
1390 Thu Jul 19 14:24:34 2001  Owen Taylor  <otaylor@redhat.com>
1391
1392         * gtk/gtkentry.c (gtk_entry_set_positions): Fix
1393         typo that sometimes caused selection not to work properly.
1394
1395         * gtk/gtkentry.c (gtk_entry_grab_focus): Select text in
1396         entry when tabbing in. (#57743)
1397         
1398         * gtk/gtkentry.c (gtk_entry_motion_notify): If the
1399         user drags up above or down below the entry, move
1400         to the end or the beginning of the entry. (Suggestion
1401         from Jay Cox, #50940)
1402
1403         * gtk/gtkentry.c (gtk_entry_move_cursor): If we have
1404         a current selection, then when moving by chars or
1405         words, move to the end of the selection rather than
1406         from entry->current_pos. (Suggestion from Jay Cox,
1407         #50942)
1408         
1409 Thu Jul 19 12:14:28 2001  Owen Taylor  <otaylor@redhat.com>
1410
1411         * gtk/gtkwindow.c (gtk_window_set_decorated): Actualy
1412         set window->decorated. (Patch from Hidetoshi Tajima,
1413         #55846)
1414
1415 Sat Jul  7 02:50:14 2001  Owen Taylor  <otaylor@redhat.com>
1416
1417         * gtk/gtkwidget.c (gtk_widget_set_parent): Enforce
1418         the widget/child realization/mapping invariants.
1419
1420         * gtk/gtkwidget.[ch] gtk/gtkprivate.h: Add functions 
1421         gtk_widget_[get/set]_child_visible() to control
1422         whether visible children of a mapped window are
1423         mapped.
1424
1425         * docs/widget_system.txt: Updated for changes in
1426         container contract, and addition of GTK_CHILD_VISIBLE.
1427
1428         * gtk/gtkcontainer.c: Add generic map()/unmap()
1429         functions that work for almost all containers.
1430
1431         * gtk/gtknotebook.c gtk/gtkpacker.c: Use 
1432         gtk_widget_set_child_visible() where necessary.
1433
1434         * gtk/*.c: Remove excess map(), unmap(), and 
1435         realization/mapping invariant enforcing code
1436         from many containers.
1437
1438 Wed Jul 18 19:51:45 2001  Owen Taylor  <otaylor@redhat.com>
1439
1440         * gtk/gtktextview.c (gtk_text_view_set_attributes_from_style): 
1441         Get the foreground color from 'text', nor 'fg'. (#57568)
1442
1443 Wed Jul 18 19:28:46 2001  Owen Taylor  <otaylor@redhat.com>
1444
1445         * gtk/*.c: Patch from Matthias Clasen to remove remove
1446         all instances of g_return_if_fail (foo != NULL); that are
1447         immediately before a g_return_if_fail (GTK_IS_FOO (foo));
1448         since the second check catches the NULL anyways.
1449
1450 Wed Jul 18 18:23:05 2001  Owen Taylor  <otaylor@redhat.com>
1451
1452         * gtk/gtkbutton.c gtk/gtkentry.c gtk/gtkmenu.c gtk/gtktextview.c
1453         gtktreeview.c: Fix idles and timeouts to be properly surrounded by 
1454         GDK_THREADS_ENTER()/LEAVE() pairs.
1455
1456         * gtk/gtkdialog.c gtk/gtkclipboard.c: Surround calls
1457         to g_main_loop_run() with GDK_THREADS_LEAVE()/ENTER()
1458         pairs. (Problem found by M. Meeks)
1459
1460 2001-07-18  Darin Adler  <darin@bentspoon.com>
1461
1462         * gtk/gtkiconfactory.c: (gtk_icon_size_register): Reorder code so
1463         that we don't get a g_warning message every time we register a new
1464         icon size.
1465
1466         * gdk/x11/gdkcolor-x11.c: (gdk_colormap_alloc1): Fix warning by
1467         using pixel variable of the correct type.
1468         
1469 Fri Jul 13 15:33:32 2001  Owen Taylor  <otaylor@redhat.com>
1470
1471         * gdk/gdkwindow.[ch]: Add a function gdk_window_get_internal_paint_info(),
1472         so that using X functions on a GdkWindow is possible, if
1473         a little hairy.
1474
1475         * gdk/gdkgc.c (gdk_gc_offset): Add a function to offset the clip
1476         and ts_origin of a GC, so that external parties can offset/restore
1477         a GC, when using gdk_window_get_internal_paint_info().
1478
1479 2001-07-17  Darin Adler  <darin@bentspoon.com>
1480
1481         * .cvsignore: Ignore the sgml directory made by gtkdoc.
1482         * demos/pixbuf-demo.c: (main): Use gtk_window_set_resizable
1483         instead of the deprecated gtk_window_set_policy.
1484         * demos/testpixbuf-scale.c: Add missing <stdlib.h> include.
1485         * gdk/gdkkeys.c: (gdk_keymap_class_init): Remove empty finalize
1486         function to get rid of warning and some code too.
1487         * gdk/x11/gdkfont-x11.c: (gdk_font_charset_for_locale): Add
1488         missing const.
1489         * gdk/x11/gdkmain-x11.c: (_gdk_windowing_init_check): Remove
1490         unused local.
1491         * gdk/x11/gdkpango-x11.c: (gdk_pango_context_get): Add missing
1492         const.
1493         * gdk/x11/gdkselection-x11.c: (gdk_text_property_to_utf8_list),
1494         (gdk_utf8_to_compound_text): Add missing const.
1495         * gtk/gtkimage.c: (gtk_image_expose): Remove unused local.
1496         * gtk/gtkmenubar.c: (gtk_menu_bar_hierarchy_changed): Add missing
1497         cast and get rid of an unnecessary one.
1498         * gtk/gtksettings.c: (gtk_settings_notify): Remove unused local.
1499         * gtk/gtkstatusbar.c: (gtk_statusbar_size_allocate): Remove unused
1500         local.
1501         * gtk/gtktreemodelsort.c: (gtk_tree_model_sort_build_level):
1502         Remove unused local.
1503         * modules/input/gtkimcontextxim.c: (gtk_im_context_xim_new): Add
1504         missing const.
1505         * tests/testsocket.c: (add_child): Add cast so the printf format
1506         doesn't make us implicitly depend on what integer type
1507         gtk_socket_get_id returns.
1508         * tests/testtextbuffer.c: Add missing const.
1509         * tests/testtreefocus.c: (main): Remove unused local.
1510         * tests/treestoretest.c: (iter_remove): Remove unused local.
1511         (uppercase_value): Remove unused function.
1512         (make_window): Add statement to quiet the compiler's uninitialized
1513         variable warning.
1514
1515 Sat Jul 14 12:47:35 2001  Tim Janik  <timj@gtk.org>
1516
1517         * gtk/gtkrange.c:
1518         (second_timeout): 
1519         (initial_timeout): 
1520         (update_timeout): add GDK_THREADS_ENTER/GDK_THREADS_LEAVE.
1521         (gtk_range_calc_layout): compute the new layout based on an
1522         adjustment->value being passed in as argument.
1523         (gtk_range_button_press): for button2 slider warps, first recalc
1524         the layout, then adjust the value. also, use update_slider_position()
1525         for adjusting the value, so we keep pixel quantisation at which we
1526         usually operate (upon motion or button releases). the reason for this
1527         is that, we can't change the adjustment upon button2 presses to a non
1528         quantised value and upon button2 release re-quantise the value since
1529         that'd alter the value even if we didn't get any motion events (causing
1530         unexpected scroll area warps upon release and/or slider pixel-jitter).
1531         (gtk_range_motion_notify): update the slider position from queried
1532         coordinates, not event coordinates.
1533
1534 Fri Jul 13 09:47:52 2001  Tim Janik  <timj@gtk.org>
1535
1536         * gtk/gtkstyle.c (gtk_default_draw_focus): fix line style resetting,
1537         the default gc values are: width=0, CapBut, JoinMiter.
1538
1539 2001-07-13  Anders Carlsson  <andersca@codefactory.se>
1540
1541         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render): Take
1542         into account the xpad and ypad when calculating the width and the
1543         height of the pixbuf cel.
1544
1545 Thu Jul 12 18:29:40 2001  Owen Taylor  <otaylor@redhat.com>
1546
1547         * gtk/gtkradiomenuitem.[ch] (gtk_radio_menu_item_group): 
1548         Rename to gtk_radio_menu_item_get_group(), add deprecated
1549         alias. (#57044)
1550
1551         * gtk/gtkfilesel.c: Indentation fix.
1552
1553 Thu Jul 12 17:33:00 2001  Owen Taylor  <otaylor@redhat.com>
1554
1555         * gtk/gtkbbox.h gtk/gtkcompat.h: Patch from Mathias 
1556         Hasselmann to fix warnings in compat macros. 
1557         (#56773)
1558
1559         * gtk/gtkmenubar.c (gtk_menu_bar_hierarchy_changed): Fix 
1560         stupid wrong cast added in last patch.
1561
1562 Thu Jul 12 16:51:34 2001  Owen Taylor  <otaylor@redhat.com>
1563
1564         * gtk/gtkwidget.c: Replace a couple of inappropriate calls to 
1565         GTK_WIDGET_HAS_FOCUS() with gtk_widget_is_focus(). (#57067)
1566
1567 Thu Jul 12 14:06:19 2001  Owen Taylor  <otaylor@redhat.com>
1568
1569         * gtk/gtkmenubar.c (gtk_menu_bar_hierarchy_changed): Add
1570         missing cast.
1571
1572         * gtk/gtkcontainer.c (gtk_container_get_focus_chain): Fix
1573         NULL/FALSE return value confusion.
1574
1575         * gtk/gtkrange.c (coord_to_value): Fix division-by-zero
1576         problem when scrollbar completely fills range. (Patch
1577         from  Matthias Clasen, #57047)
1578
1579 Thu Jul 12 13:53:28 2001  Owen Taylor  <otaylor@redhat.com>
1580
1581         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Properly
1582         clean up when handling events for move-resize emulation.
1583         (Problem traced down by Matthias Clasen, #57271)
1584
1585 Thu Jul 12 13:43:27 2001  Owen Taylor  <otaylor@redhat.com>
1586
1587         * gtk/gtkclist.c gtk/gtkcolorsel.c gtk/gtkcombo.c
1588           gtk/gtkctree.c gtk/gtkcurve.c gtk/gtkentry.c
1589           gtk/gtkfontsel.c gtk/gtkhandlebox.c 
1590           gtk/gtkimcontextsimple.c gtk/gtkmain.c gtk/gtkmenu.c
1591           gtk/gtkmenuitem.c gtk/gtkoptionmenu.c gtk/gtkpixmap.c
1592           gtk/gtkselection.c gtk/gtktextdisplay.c gtk/gtktextview.c
1593           gtk/gtktooltips.c gtk/gtkwidget.c gtk/gtkwindow.c:
1594         Formatting fixes from multihead brnach. [ mostly foo(bar) => foo (bar) ]
1595
1596 2001-07-09  Peter Williams  <peterw@ximian.com>
1597
1598         * gtk/Makefile.am ($(srcdir)/stamp-gtk.defs): Add a cd $(srcdir)
1599         for when srcdir != builddir
1600
1601 Mon Jul  9 12:50:51 2001  Jonathan Blandford  <jrb@redhat.com>
1602
1603         * gtk/gtktreemodel.c: remove gtk_tree_model_get_first in favor of
1604         gtk_tree_model_get_iter_root.
1605
1606         * gtk/gtkliststore.c: Add a bunch of g_return statements.
1607         (gtk_list_store_iter_n_children): Fix up.
1608
1609         * gtk/gtktreestore.c: Add a bunch of g_return statements.
1610
1611 Fri Jul  6 15:38:33 2001  Owen Taylor  <otaylor@redhat.com>
1612
1613         * gtk/gtkwidget.c (gtk_widget_class_init):
1614         G_SIGNAL_TYPE_STATIC_SCOPE GtkSelectionData to
1615         restore some workingness.
1616
1617         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Fix 
1618         handle of window type for input-only windows.
1619
1620 Thu Jul  5 21:53:46 2001  Owen Taylor  <otaylor@redhat.com>
1621
1622         * gtk/gtkbbox.[ch] gtk/gtkbox.[ch] gtk/gtk[hv]bbox.c:
1623         Patch from Gregory Merchan to add 
1624         gtk_button_box_set_secondary(), which separates
1625         the child into a separate group from the normal
1626         buttons. (#56331)
1627
1628         * gtk/gtkdialog.c: Make help buttons secondary by
1629         default.
1630
1631         * gtk/gtkbbox.c: Added a child property "secondary".
1632
1633         * gtk/testgtk.c: Turn on the help button for the 
1634         color selector to check that it properly appears
1635         as secondary.
1636
1637 Mon Jul  2 01:09:37 2001  Owen Taylor  <otaylor@redhat.com>
1638  
1639         * gdk/gdkwindow.[ch] gdk/gdkinternals.h gdk/x11/gdkwindow-x11.c
1640         gdk/linux-fb/gdkwindow-fb.c gdk/x11/gdkwindow-x11.c gdk/gdk:
1641         Add gdk_set_pointer_hooks() to allow pointer-querying to
1642         be hooked by an event record/playback system like GERD.
1643         (#56914)
1644         
1645 Thu Jul  5 08:57:07 2001  Owen Taylor  <otaylor@redhat.com>
1646
1647         * gtk/gtkwidget.c (gtk_widget_reset_rc_style): Pass
1648         in the right value of initial_emission to
1649         gtk_widget_set_style_internal (#57091)
1650
1651 Wed Jul  4 23:17:04 2001  Owen Taylor  <otaylor@redhat.com>
1652
1653         * gtk/gtkdnd.c (gtk_drag_dest_hierarchy_changed):
1654         Make compile.
1655
1656         * gtk/gtkwidget.c (gtk_widget_reset_rc_style): Fix problem
1657         with calling gtk_widget_set_style_internal() with
1658         the old style, not the new style. (#56989)
1659
1660 Wed Jul  4 22:35:40 2001  Owen Taylor  <otaylor@redhat.com>
1661
1662         * gtk/gtklabel.c gtk/gtkmenubar.c gtk/gtktreeviewcolumn.c
1663           gtk/gtkwidget.c:
1664         Check GTK_WIDGET_TOPLEVEL(gtk_widget_get_toplevel (widget)),
1665         not GTK_WIDGET_GET_ANCESTOR ... see 
1666         http://mail.gnome.org/archives/gtk-devel-list/2001-July/msg00072.html.
1667         Indicate the best practice in the docs for gtk_widget_get_toplevel().
1668
1669         * gtk/gtkwidget.[ch]: Expose a private _gtk_widget_hierarchy_changed(),
1670         so GtkPlug can give the correct signals when transforming
1671         from a child to a toplevel.
1672         
1673         * gtk/gtkdnd.c (gtk_drag_dest_hierarchy_changed): Handle
1674         reparentation correctly.
1675
1676         * gtk/gtkwidget.c (gtk_widget_propagate_hierarchy_changed):
1677         Propagate the previous_toplevel argument down properly.
1678
1679         * gtk/gtklabel.c (gtk_label_finalize): Fix unrefing
1680         of wrong atr list.
1681
1682         * gtk/gtkplug.[ch]: Add an "embedded" signal.
1683
1684         * gtk/gtksocket.[ch]: Add "child_added", "child_removed"
1685         signals.
1686
1687         * gtk/gtkplug.[ch] gtk/gtksocket.[ch]: Add 
1688         functions gtk_plug_get_id(), gtk_socket_get_id(),
1689         to avoid the user having to worry about realization,
1690         and gdkx.h.
1691
1692         * tests/testsocket.c: Extend to try out the new signals
1693         and gtk_plug/socket_get_id().
1694
1695         * gtk/gtklabel.c (gtk_label_set_pattern_internal): Fix
1696         setting of underline attributes.
1697
1698         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Ignore
1699         DestroyNotify events from SubstructureNotifyMask
1700
1701         * gdk/x11/gdkwindow-x11.c (gdk_window_reparent):
1702         Switch GDK_WINDOW_TYPE (window) as needed.
1703
1704         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Clean up,
1705         allow creation of toplevel windows as children of
1706         foreign windows.
1707
1708         * gtk/gtkplug.c: Remove hacks involving changing private
1709         fields of GdkWindow.
1710
1711         * gtk/gtkplug.[ch] gtk/gtksocket.c: Work to make 
1712         exactly the same signals and notification
1713         be emitted for local embedding as for inter-process
1714         embedding.
1715
1716 2001-07-04  James Henstridge  <james@daa.com.au>
1717
1718         * gtk/gtkliststore.h: add missing gtk_list_store_newv prototype.
1719
1720 Mon Jul  2 16:53:25 2001  Owen Taylor  <otaylor@redhat.com>
1721
1722         * gtk/xembed.h gtk/gtkplug.c gtk/gtksocket.c: For
1723         XEMBED embedding add a _XEMBED_INFO property to the
1724         client with version number and a "mapped" flags.
1725         Use the mapped flag instead of the racy MapRequestEvent
1726
1727         * gtk/gtksocket.c: Clean up the gtk_socket_steal()
1728         code to reliably set things (when the child is a passive
1729         embedder participating in the XEMBED protocol) intead
1730         of just being a hack for embedding non-participating
1731         programs. Fix various bugs and race conditions.
1732         
1733         * gtk/gtksocket.[ch] gtk/gtkplug.[ch]: Make local embedding
1734         work by simply making the GtkSocket the gtk parent
1735         of the GtkPlug. Set a flag in this case and make
1736         the GtkPlug work like a normal container by overriding
1737         methods such as check_resize and "chaining past" GtkWindow
1738         to GtkBin.
1739
1740         * gtk/gtkentry.c (gtk_entry_real_activate)
1741           gtk/gtkmain.c (gtk_propagate_event): 
1742         Eliminate use of gtk_widget_get_ancestor (widget, GTK_TYPE_WINDOW).
1743         
1744         * gtk/gtkwidget.c (gtk_widget_get_toplevel,
1745         gtk_widget_get_ancestor):
1746         Explain why gtk_widget_get_ancestor (widget, GTK_TYPE_WINDOW)
1747         might not give the expected result and recommend
1748         an alternative.
1749
1750         * tests/testsocket.c tests/testsocket_child.c
1751         tests/testsocket_common.c tests/Makefile.am: Extended
1752         to test different type of adding plugs to sockets
1753         (local,active,passive), and to test mapping/unmapping
1754         the plug.
1755
1756         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Don't
1757         mark the window as destroyed until after we
1758         called _gdk_windowing_window_destroy().
1759         (_gdk_windowing_window_destroy() may use GDK functions
1760         on the window.)
1761
1762         * gdk/x11/gdkinput.c: Remove the check for finalization - 
1763         devices can be finalized under some circumnstances.
1764  
1765         * gdk/x11/gdkinput-x11.c (gdk_input_device_new): Fix 
1766         small problem with GDK_TYPE_DEVICE.
1767  
1768 2001-07-02  Havoc Pennington  <hp@pobox.com>
1769
1770         * gdk/x11/gdkwindow-x11.c (gdk_wmspec_change_state): fix to 
1771         use constants not atoms.
1772
1773 2001-07-02  James Henstridge  <james@daa.com.au>
1774
1775         * gtk/gtktextview.c (gtk_text_view_class_init): same here for
1776         PANGO_TYPE_TAB_ARRAY.
1777
1778         * gtk/gtktexttag.c (gtk_text_tag_class_init): same here, but also
1779         for PANGO_TYPE_TAB_ARRAY.
1780
1781         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_class_init):
1782         s/GTK_TYPE_PANGO_FONT_DESCRIPTION/PANGO_TYPE_FONT_DESCRIPTION/
1783
1784         * gtk/gtk-boxed.defs: move all the boxed definitions to the top of
1785         the file.  Remove Pango types from defs -- they are now defined in
1786         libpango.
1787
1788 Mon Jul  2 06:35:10 2001  Tim Janik  <timj@gtk.org>
1789
1790         * gdk/gdkkeys.c (gdk_keymap_class_init): s/signal_newc/signal_new/
1791
1792         * gtk/gtkobject.c (gtk_object_destroy): invoke
1793         g_object_run_dispose().
1794
1795         * gtk/gtkwindow.c: 
1796         * gtk/gtkwidget.c: 
1797         * gtk/gtkobject.c:
1798         * gtk/gtklist.c: s/shutdown/dispose/ for the GObject
1799         method.
1800
1801 Sat Jun 30 20:44:48 2001  Owen Taylor  <otaylor@redhat.com>
1802
1803         * gtk/gtktypeutils.c (gtk_type_class): Remove
1804         change check for GTK_TYPE_OBJECT derivation to
1805         G_TYPE_OBJECTS - it's Tim-approved to use this 
1806         for arbitary objects.
1807
1808         * gtk/gtkwindow.c gtk/gtkcontainer.[ch]: underscore
1809         prefix gtk_container_dequeue_resize_handler().
1810
1811         * gtk/gtkwidget.[ch]: Add a previous_toplevel argument
1812         to the hierarachy_changed signal, since you otherwise
1813         have to always keep that around.
1814
1815         * gtk/gtkmenubar.c gtk/gtklabel.c gtk/gtksocket.c: Adapt
1816         for extra argument to hierarchy_changed.
1817
1818 Tue Jun 26 19:39:03 2001  Owen Taylor  <otaylor@redhat.com>
1819
1820         * gtk/gtkwidget.c (gtk_widget_set_style): Allow %NULL
1821         for style to mean "revert to default style"
1822
1823         * gtk/gtkwidget.[ch] (gtk_widget_set_rc_style,
1824           gtk_widget_restore_default_style): Make this functions
1825         deprecated aliases for gtk_widget_set_style (widget, NULL).
1826
1827         * gtk/gtkwidget.[ch]: Remove:
1828            gtk_widget_set_default_style ()
1829            gtk_widget_push_style ()
1830            gtk_widget_pop_style ()
1831         These functions interact are overriden by RC files, and
1832         thus virtually useless, and complicated.
1833
1834 Fri Jun 22 18:49:48 2001  Owen Taylor  <otaylor@redhat.com>
1835
1836         * gtk/gtkrc.c: Add a GtkRcContext structure to hold 
1837         most of the previous global variables in gtkrc.c. This is
1838         in preparation for multi-head, since each screen can
1839         have different GtkSettings and RC information.
1840
1841         * gtk/gtkrc.[ch]: 
1842
1843         * gtk/gtkrc.h (struct _GtkRcStyleClass): Add a
1844         GtkSettings parameter to GtkRcStyle::parse.
1845
1846         * gdk/x11/gdkevents-x11.c gtk/gtksettings.c gtk/gtkrc.c: 
1847         Add two new settings gtk-theme-name, gtk-key-theme-name,
1848         for RC files that are loaded by name after reading
1849         the default RC files.
1850         
1851         * gtk/gtkrc.c: Allow priorities for styles, as wll as
1852         bindings.
1853
1854         * gtk/gtkenums.h gtk/gtkrc.c: Add GTK_PATH_PRIO_THEME,
1855         and use it by default for RC files loaded via 
1856         gtk-theme-name, gtk-key-theme-name.
1857
1858         * gtk/gtkiconfactory.c (gtk_icon_source_set_filename)
1859         gtk/gtkrc.c (gtk_rc_parse_pixmap_path_string) 
1860         tests/testgtkrc: Require pathnames to be absolute.
1861
1862         * gtk/gtkrc.c gtk/gtkiconfactory.c: Look up the full filename for
1863         the source when parsing, since the operation of looking up a
1864         pixmap from an RC file depends on the parsing context.
1865
1866         * gtk/gtkrc.c (gtk_rc_context_reparse_all): Automatically
1867         reset RC styles on all widgets when files are reparsed.
1868
1869         * tests/testgtk.c (create_rc_file) 
1870           gtk/gtkwindow.c (gtk_window_read_rcfiles): 
1871         Simplify, now that gtk_rc_reparse_all() resets styles on
1872         all widgets itself.
1873
1874         * gtk/gtkmain.c (gtk_get_default_language): Fix broken
1875         return value.
1876
1877         * gtk/gtksettings.[ch] (gtk_settings_install_property[_ch]): Remove
1878         GtkSettings argument.
1879
1880         * gtk/gtksettings.[ch] (gtk_settings_get_default): Rename from
1881         gtk_settings_get_global().
1882
1883         * gtk/gtkwidget.[ch]: Add a function gtk_widget_Get_settings()
1884         to get the appropriate GtkSettings for a widget. (For now,
1885         just gets the default GtkSetttings.) 
1886
1887         * gtk/gtkcolorsel.c gtk/gtkentry.c gtk/gtkmenu.c gtk/gtkmenubar.c
1888           gtk/gtktextview.c gtk/gtktoolbar.c: Fixes for GtkSettings
1889         changes.
1890
1891         * gtk/gtkrc.[ch]: Add gtk_rc_get_style_by_paths() to allow
1892         getting a style for a path without actually having a widget.
1893         (Allows using a style for a subpart of a widget, for
1894         example.)
1895
1896         * gtk/gtkrc.[ch]: Add gtk_rc_reparse_all_for_setting() to allow forcing
1897         the RC files to be reloaded for just one GtkSettings
1898         (not sure how useful this really is.)
1899
1900         * gtk/gtkrc.h: Deprecate
1901         gtk_rc_add_widget_name/widget_class/class_style
1902
1903 2001-06-30  Alex Larsson  <alexl@redhat.com>
1904
1905         * gdk/linux-fb/gdkinput-none.c:
1906         * gdk/linux-fb/gdkinput.c:
1907         * gdk/linux-fb/gdkinputprivate.h:
1908         Convert GdkDevice to a GObject.
1909
1910         * linux-fb/gdkprivate-fb.h:
1911         * linux-fb/gdkvisual-fb.c:
1912         Convert GdkVisual to a GObject.
1913
1914 2001-06-29  Alex Larsson  <alexl@redhat.com>
1915
1916         * gdk/gdkvisual.h:
1917         * gdk/gdkcolor.c:
1918         * gdk/x11/gdkx.h:
1919         * gdk/x11/gdkvisual-x11.c:
1920         Convert GdkVisual to a GObject.
1921
1922         * gdk/gdkinput.h:
1923         * gdk/gdkevents.c:
1924         * gdk/x11/gdkinputprivate.h:
1925         * gdk/x11/gdkinput-gxi.c:
1926         * gdk/x11/gdkinput-none.c:
1927         * gdk/x11/gdkinput-x11.c:
1928         * gdk/x11/gdkinput-xfree.c:
1929         * gdk/x11/gdkinput.c:
1930         Convert GdkDevice to a GObject.
1931
1932 Fri Jun 29 22:13:28 2001  Jonathan Blandford  <jrb@redhat.com>
1933
1934         * gtk/gtktreestore.c (gtk_tree_store_new): changed new_with_types
1935         to just plain new, fixing the number of columns, and column types
1936         at creation time.
1937
1938         * gtk/gtkliststore.c (gtk_list_store_new): ditto.
1939
1940         * gtk/gtkcellrenderertext.c
1941         (gtk_cell_renderer_text_set_fixed_height_from_font): FIX the
1942         height to a specific font.
1943
1944         * gtk/gtktreeview.c (gtk_tree_view_is_expander_column): fix brokenness.
1945
1946         * tests/*c: change to work with new store models.
1947
1948 2001-06-29  Havoc Pennington  <hp@redhat.com>
1949
1950        * Throughout: fixes to compile with G_DISABLE_COMPAT
1951         (s/g_signal_connectc/g_signal_connect/,
1952         s/g_signal_newc/g_signal_new/,
1953         s/g_signal_disconnect_by_func/g_signal_handlers_disconnect_by_func/)
1954
1955 Fri Jun 29 03:14:16 2001  Jonathan Blandford  <jrb@webwynk.net>
1956
1957         * gtk/gtktreeselection.c (gtk_tree_selection_selected_foreach):
1958         add path argument to selection callbacks.
1959
1960 Fri Jun 29 00:13:34 2001  Jonathan Blandford  <jrb@redhat.com>
1961
1962         * gtk/gtktreemodel.c (gtk_tree_model_foreach): New function to
1963         walk through a model in a depth first manner, with the option to
1964         break out.
1965
1966 Fri Jun  8 18:52:10 2001  Jonathan Blandford  <jrb@redhat.com>
1967
1968         * gtk/gtktreeview.[hc]: Patch Thomas Broyer from
1969         <tbroyer@ltgt.net>. Expander arrows are now attached to a specific
1970         column and follow it when draged, rather than a location in the
1971         view. "expander_column" property and drawing functions changed
1972         accordingly.  Fixes bug #55942.
1973
1974         (gtk_tree_view_{set,get}_expander_column): Now works with a
1975         GtkTreeViewColumn* instead of int.
1976
1977 Thu Jun 28 22:53:18 2001  Owen Taylor  <otaylor@redhat.com>
1978
1979         *  gdk/gdk.c gtk/gtktypeutils.c: Fix args to g_type_init(). 
1980
1981 2001-06-28  Havoc Pennington  <hp@pobox.com>
1982
1983         * gdk/x11/gdkimage-x11.c (_gdk_x11_get_image): Clip the retrieved
1984         image data to the screen, using a server grab to avoid race
1985         conditions.
1986
1987         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): remove 
1988         check for NULL return from gtk_image_new_from_stock(), it never
1989         returns NULL.
1990         (gtk_item_factory_create_item): fix bug where we parsed the stock
1991         ID as an inline pixbuf
1992
1993         * gtk/gtktext.c (gtk_text_key_press): numeric keypad support
1994
1995         * gtk/gtkspinbutton.c (gtk_spin_button_key_press): numeric keypad
1996         support (should be using binding set here)
1997
1998         * gtk/gtkoptionmenu.c (gtk_option_menu_key_press): numeric keypad
1999         support (should be using binding set here)
2000
2001         * gtk/gtkmenushell.c (gtk_menu_shell_class_init): numeric keypad 
2002         support
2003
2004         * gtk/gtkmenu.c (gtk_menu_class_init): numeric keypad support
2005
2006         * gtk/gtkmenubar.c (gtk_menu_bar_class_init): numeric keypad
2007
2008         * gtk/gtklistitem.c (gtk_list_item_class_init): numeric keypad
2009
2010         * gtk/gtkimcontextsimple.c
2011         (gtk_im_context_simple_filter_keypress): keypad
2012
2013         * gtk/gtkfilesel.c (gtk_file_selection_key_press): keypad 
2014
2015         * gtk/gtkentry.c (gtk_entry_class_init): numeric keypad fixes
2016
2017         * gtk/gtkctree.c (gtk_ctree_class_init): numeric keypad support
2018
2019         * gtk/gtkcolorsel.c (palette_activate): keypad support (of course,
2020         should be binding-setted)
2021
2022         * gtk/gtkwindow.c (gtk_window_class_init): numeric keypad fixes
2023
2024         * gtk/gtkclist.c (gtk_clist_class_init): numeric keypad fixes
2025
2026         * gtk/gtkcalendar.c: numeric keypad fixes
2027
2028         * gtk/gtktextview.c (gtk_text_view_class_init): numeric keypad
2029         support
2030
2031         * gdk/gdkwindow.c (gdk_window_get_clip_region): fix infinite loop
2032         screwup
2033
2034         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha): 
2035         clip the render area to the drawable's clip region in advance,
2036         so we don't get data from the server that we don't need.
2037
2038         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
2039         check return value of gdk_pixbuf_get_from_drawable(), fall back 
2040         to bilevel alpha if we can't get the pixbuf to composite against.
2041
2042         * gdk/gdkdraw.c (gdk_drawable_get_image): set the image colormap
2043
2044         * gdk/gdkimage.c (gdk_image_get_colormap): add
2045         gdk_image_set_colormap, gdk_image_get_colormap
2046
2047         * gdk/gdkpixbuf-drawable.c (rgbconvert): Change all converters to
2048         take a region of the image, instead of converting the entire
2049         image.
2050
2051         * gtk/gtkwidget.h (struct _GtkWidgetClass): add show_help
2052         keybinding signal. Add default bindings for it. Add default
2053         handler for show_help that shows the tooltip for the widget.
2054
2055         * gtk/gtkdialog.c (gtk_dialog_class_init): add binding set and
2056         "close" keybinding signal, remove key press handler.
2057
2058         * gtk/gtktooltips.c (gtk_tooltips_set_colors): Just remove this,
2059         it's not our usual practice to leave a deprecated function around
2060         with a runtime warning, plus we don't want it to appear in docs,
2061         plus if we make them yellow no one will want to change them
2062         anyhow.
2063
2064 Thu Jun 28 23:53:31 2001  Tim Janik  <timj@gtk.org>
2065
2066         * gtk/gtkwidget.c (gtk_widget_hide): !GTK_OBJECT_DESTROYED() ->
2067         GTK_WIDGET_REALIZE() for resize queueing.
2068
2069         * gtk/gtkmain.c (gtk_main_do_event): !GTK_OBJECT_DESTROYED() ->
2070         GTK_WIDGET_REALIZE() for post event delivery destruction upon
2071         GDK_DESTROY.
2072         
2073         * gtk/gtkwidget.c: added GtkWidget::event-after notification signal, to
2074         sompensate for former (pre-2.0) connect_after() facility.
2075         (gtk_widget_send_expose): 
2076         (gtk_widget_event): assert the widget is realized, since event delivery
2077         to non-realized widgets is essentially a bug. event handlers should
2078         be able to unconditionally rely on widget->window (unless they
2079         emit events on their own which can trigger widget destruction).
2080         (gtk_widget_event_internal): removed old outdated GTK_OBJECT_DESTROYED()
2081         logic. event delivery happens as follows:
2082         a) emission of GtkWidget::event (RUN_LAST handler). returns was_handled.
2083         b) if !was_handled in (a) and the widget is still realized, emit event-
2084            specific signal (RUN_LAST handler). returns was_handled.
2085         c) emission of GtkWidget::event-after for notification if the widget is
2086            still realized (regardless of was_handled from previous stages, no
2087            class handler). no return value.
2088         d) was_handled gets passed on to caller, to determine further
2089            propagation. if the widget got unrealized meanwhile, was_handled
2090            is returned as TRUE.
2091
2092         * gdk/gdkevents.[hc]: added gdk_event_get_root_coords() and
2093         gdk_event_get_coords().
2094
2095 Thu Jun 28 17:18:41 2001  Tim Janik  <timj@gtk.org>
2096
2097         * configure.in (GTK_MICRO_VERSION): up version to 1.3.7, interface
2098         age 0, binary age 0. depend on glib 1.3.7.
2099
2100         * gtk/gtkcontainer.c: remove g_signal_handlers_disconnect_by_func() hack.
2101
2102         * gtk/gtkmenubar.c: same here.
2103         
2104         * gtk/gtkcontainer.c (gtk_container_focus_tab): fix param-spec retrival.
2105
2106         * gtk/gtkcolorsel.c (gtk_color_selection_init): fix connect_data() usage.
2107
2108         * gtk/gtkentry.c (gtk_entry_focus_in): same here.
2109         
2110         * gtk/gtkmenubar.c (add_to_window): likewise.
2111         
2112         * gtk/gtktextbtree.c: and here...
2113         
2114         * gtk/gtktextview.c (gtk_text_view_ensure_layout): same thing.
2115         
2116         * gtk/gtktoolbar.c (gtk_toolbar_init): once more.
2117         
2118         * gtk/gtktreemodel.c (connect_ref_callbacks): and another time.
2119         
2120         * gtk/gtktreeviewcolumn.c:
2121         (_gtk_tree_view_column_set_tree_view): yet again.
2122
2123         * demos/gtk-demo/images.c (progressive_timeout): demonstrate
2124         signal connections without g_signal_connect_data().
2125         
2126         * demos/gtk-demo/stock_browser.c (do_stock_browser): second
2127         demo of the matter.
2128         
2129         * demos/testpixbuf.c (main): running out of equality phrases for the
2130         ChangeLog, but had to adapt connections here as well.
2131         
2132         * demos/testanimation.c (progressive_timeout): and for the fun of it,
2133         tackled this the same way.
2134         
2135         * tests/testtext.c (create_view): ok, it's becoming a pain at this
2136         point, but had enough enery for one more fix.
2137
2138         * tests/testtreecolumns.c (main): stand up man, do your work!
2139
2140         * tests/testtreeview.c (set_columns_type): ok, this is the last file i
2141         fix, either that's been all of it or CVS gtk is broken yet again.
2142         
2143 2001-06-29  James Henstridge  <james@daa.com.au>
2144
2145         The following changes correspond to bug #56812
2146
2147         * gdk/gdkinput.h, gdk/gdkevents.c (GDK_TYPE_DEVICE): register type
2148         code for GdkDevice.
2149
2150         * gdk/gdkcursor.[ch] (GDK_TYPE_CURSOR): register type code for
2151         GdkCursor.
2152
2153 2001-06-19  Havoc Pennington  <hp@pobox.com>
2154
2155         * gdk/x11/gdkwindow-x11.c (gdk_window_show_unraised): new function
2156         for mapping a window without fooling with stacking order, but
2157         updating the "withdrawn" flag
2158
2159         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Do event
2160         filtering as soon as possible, moving move resize and wmspec_check
2161         handling after the event filter.  Make default filter apply to all
2162         events, not just those with no GdkWindow wrapped around the X
2163         window. Fix a FIXME about how the window could be a pixmap using 
2164         RTTI; this of course assumes GDK_IS_WINDOW() is optimized. 
2165
2166         Also, be robust against events not on a known GdkWindow.
2167
2168         * gdk/x11/gdkmain-x11.c (gdk_x11_grab_server,
2169         gdk_x11_ungrab_server): export reference-counted server grabs, so
2170         other people can grab server over a GDK function that also does
2171         so.
2172
2173 Wed Jun 27 19:40:31 2001  Jonathan Blandford  <jrb@redhat.com>
2174
2175         * gtk/gtktreeviewcolumn.c
2176         (gtk_tree_view_column_pack_start_cell_renderer): New function to
2177         reflect that you can (hypothetically) pack cell renderers into a
2178         column.
2179         (gtk_tree_view_column_pack_end_cell_renderer): ditto.
2180         (gtk_tree_view_column_cell_is_visible): Move more functionality to
2181         the column.
2182         (gtk_tree_view_column_cell_can_focus): Move more functionality to
2183         the column.
2184
2185         * gtk/gtktreeview.c: Move to use new column-packing code.
2186         (gtk_tree_view_real_expand_row): remove totally braindead code.
2187         (gtk_tree_view_real_collapse_row): ditto.
2188
2189 2001-06-27  Kjartan Maraas  <kmaraas@gnome.org>
2190
2191         * gtk/gtktreeviewcolumn.c: Fix a typo.
2192         
2193 2001-06-26  Joel Becker  <jlbec@evilplan.org>
2194
2195         * gdk-pixbuf/gdk-pixbuf-csource.c: remove '#include "x"' line
2196           at the end of the file
2197
2198 2001-06-26  Havoc Pennington  <hp@redhat.com>
2199
2200         * gtk/gtkwindow.c (gtk_window_set_policy): forgot a notification
2201
2202 2001-06-26  Havoc Pennington  <hp@redhat.com>
2203
2204         * gtk/gtkwindow.c (gtk_window_class_init): add "resizable"
2205         property
2206
2207 Tue Jun 26 12:59:28 2001  Jonathan Blandford  <jrb@redhat.com>
2208
2209         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_set_model): fix
2210         stupid missing statement
2211
2212         * gtk/gtktreeview.c (gtk_tree_view_set_destroy_count_func): New
2213         private function for ATK.  It notifies you of how many _visible_
2214         children are deleted when a node is deleted.  Should be used by
2215         atk only.
2216
2217 Tue Jun 26 11:06:34 2001  Owen Taylor  <otaylor@redhat.com>
2218
2219         * gtk/gtkclist.c gtk/gtkentry.c gtk/gtkspinbutton.c:
2220         Use new pango_context_get_metrics() to fix problems
2221         with font lists in descriptions. (#56184, reported by
2222         Jonas Borgström)
2223
2224 Tue Jun 26 10:04:30 2001  Tim Janik  <timj@gtk.org>
2225
2226         * gtk/gtkiconfactory.c:
2227         * gtk/gtkitemfactory.c: use gdk_pixbuf_new_from_stream(). fixed up
2228         item factory so inlined pixbufs actually work.
2229
2230 2001-06-25  Havoc Pennington  <hp@redhat.com>
2231
2232         * gtk/gtktreeviewcolumn.h, gtk/gtktreeviewcolumn.c:
2233         s/RESIZEABLE/RESIZABLE/
2234
2235         * gtk/gtkwindow.c, gtk/gtkwindow.h: s/resizeable/resizable/
2236
2237 2001-06-25  Alexander Larsson  <alexl@redhat.com>
2238
2239         * configure.in:
2240         Added --enable-fbmanager. This is some experimental code
2241         that lets several GtkFB apps coordinate their access to the
2242         framebuffer.
2243         
2244         * acconfig.h:
2245         Added ENABLE_FB_MANAGER.
2246
2247         * gdk/linux-fb/Makefile.am:
2248         Added gdkfbmanager and gdkfbswitch.
2249
2250         * gdk/linux-fb/gdkkeyboard-fb.c:
2251         * gdk/linux-fb/gdkmouse-fb.c:
2252         * gdk/linux-fb/gdkprivate-fb.h:
2253         Split device init and open so that
2254         they can be opened and closed while switched
2255         away.
2256
2257         * gdk/linux-fb/gdkmain-fb.c:
2258         Add the basic manager communication.
2259
2260         * gdk/linux-fb/gdkrender-fb.c:
2261         Don't update to the shadow fb if we're
2262         blocked by the fb manager.
2263
2264 Sun Jun 24 22:15:16 2001  Owen Taylor  <otaylor@redhat.com>
2265
2266         * docs/Changes-2.0.txt: Add note about child property
2267         changes.
2268
2269 Sun Jun 24 21:34:32 2001  Owen Taylor  <otaylor@redhat.com>
2270
2271         * gtk/gtkenums.h gtk/gtkiconfactory.c: Add a special size for
2272         drag-and-drop GTK_ICON_SIZE_DND (Default to 32x32)
2273
2274         * gtk/gtkdnd.c (gtk_drag_dest_set_target_list): Fix problem
2275         with un'reffing wrong list reported by Jeff Franks.
2276
2277         * gtk/gtkdnd.[ch] (_gtk_drag_{source,}dest_handle_event): _prefix.
2278
2279         * gtk/gtkdnd.c (gtk_drag_set_icon_default): Use GTK_STOCK_DND
2280         for the default icon. Remove inline XPM.
2281
2282         * gtk/gtkstock.h gtk/gtkiconfactory.c:
2283         Add GTK_STOCK_DND GTK_STOCK_DND_MULTIPLE (Currently, stock_new
2284         is used for GTK_STOCK_DND, but it is a bit too small.)
2285
2286         * gtk/stock-icons/stock_dnd_multiple.png
2287         gtk/stock-icons/Makefile.am: New stock icon moved from gnome-libs.
2288
2289         * gtk/gtkdnd.c (gtk_drag_source_event_cb): Only return
2290         TRUE when starting a drag. In other cases, we are
2291         just observing. (#52995)
2292
2293         * gtk/gtkdnd.[ch] (gtk_drag_set_icon_{stock,pixbuf}): Add 
2294         function to set the icon for a drag from a GdkPixbuf
2295         or stock ID.
2296
2297         * gtk/gtkdnd.[ch] (gtk_drag_source_set_icon_{stock,pixbuf}): 
2298         Likewise, for drag sources.
2299
2300         * gtk/gtkdnd.h: Deprecate gtk_drag_set_default_icon.
2301         (Now should be done using the stock system.)
2302
2303 Sun Jun 24 12:06:47 2001  Owen Taylor  <otaylor@redhat.com>
2304
2305         * gtk/gtktextview.[ch] (gtk_text_view_set_text_window_size): 
2306         Removed - didn't work and not particularly useful anyways
2307         if it did. 
2308
2309 Sun Jun 24 11:29:35 2001  Owen Taylor  <otaylor@redhat.com>
2310
2311         * gdk/x11/gdkimage-x11.c (gdk_image_new): Fix stupid error
2312         introduced last night that was making things decidedly not work.
2313
2314         * gtk/*.[ch]: Patch from Kristian Rietveld adding 80 getters
2315         so that we have getter/setter pairing everywhere it makes
2316         sense. (#55767)
2317
2318         * gtk/gtkradiobutton.[ch] gtk/gtktoolbar.c tests/testgtk.:
2319         Rename gtk_radio_button_group to gtk_radio_button_get_group, add a
2320         deprecated compat macro. (#55516)
2321
2322         * gtk/gtklabel.[ch]: Add functions
2323         gtk_label_set/get_use_underline(), gtk_label_set/get_use_markup(),
2324         gtk_label_set_label(), which mirror the property API for GtkLabel.
2325         Make gtk_label_get_attributes() only reflect the attributes
2326         set by gtk_label_set_attributes.
2327
2328         * gtk/gtknotebook.c (gtk_notebook_set_current_page) gtk/gtkcompat.h: Rename
2329         from gtk_notebook_set_page().
2330
2331 Sat Jun 23 18:02:46 2001  Owen Taylor  <otaylor@redhat.com>
2332
2333         * configure.in: Fix tests for XShm.h.
2334
2335         * gdk/x11/gdkimage-x11.c: Cleanup error handling in
2336         gdk_image_new() by use of goto, properly use g_object_unref().
2337
2338 Sat Jun 23 22:03:20 2001  Tim Janik  <timj@gtk.org>
2339
2340         * gdk/x11/gdkimage-x11.c (gdk_image_init): disabled g_free (image)
2341         calls, as GdkImage is an object. these should be g_obejct_unref()
2342         instead but that won't work because of the g_error() statement
2343         in gdk_x11_image_destroy(). so for now, i did s/g_free/LEAK_IMAGE/
2344         to spot these places.
2345
2346 Sat Jun 23 10:27:53 2001  Owen Taylor  <otaylor@redhat.com>
2347
2348         * modules/input/gtkimcontextxim.c: Fixup some problems with 
2349         text length handling in error cases.
2350
2351         * gtk/gtkwidget.c (gtk_widget_size_allocate): Reorder
2352         a bit to make test actually warn on attempt to allocation
2353         a negative size. (#56101, Matthias Clasen)
2354
2355 Fri Jun 22 14:06:08 2001  Jonathan Blandford  <jrb@redhat.com>
2356
2357         * gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): Fix bug
2358         noticed by Brian Cameron.
2359         (gtk_tree_view_real_expand_row): Fix bug noticed by Brian
2360         Cameron.
2361
2362 2001-06-22  Hans Breuer  <hans@breuer.org>
2363
2364         * gdk/gdk.def : updated externals
2365
2366         * gdk/win32/gdkdrawable-win32.c : corrected some casts
2367         in GDK_NOTEs
2368
2369         * gdk/win32/gdkevents-win32.c : use _gdk_windowing_window_get_offsets
2370         to translate coordinates to the internal > 16 bit system
2371         Try to handle WM_WINDOWPOSCHANGED to get better performance for
2372         when moving/resizing
2373
2374         * gdk/win32/gdkkeys-win32.c : implement gdk_keymap_get_default ()
2375         and gdk_keymap_get_direction (). The latter is untested for
2376         the RTL case
2377
2378         * gtk/gtk.def : updated externals
2379
2380         * gtk/gtkmain.c : gtk_get_default_language () should reurn the result
2381         from pango_language_from_string (), not an already freed pointer
2382
2383         * gtk/stock-icons/stock_menu_sort_ascending.png : PNGs need to be 
2384         binary (-kb) to be useable on windoze
2385  
2386 2001-06-21  Alexander Larsson  <alexl@redhat.com>
2387
2388         * gdk/linux-fb/gdkfont-fb.c (gdk_font_from_description): 
2389         Update to new PangoLanguage changes.
2390         
2391         * gtk/gtkwindow-decorate.c:
2392         * gtk/gtkwindow.[ch]:
2393         Added setting argument to gtk_window_set_has_frame ()
2394         
2395 Thu Jun 21 13:42:01 2001  Owen Taylor  <otaylor@redhat.com>
2396
2397         * gdk/x11/gdkkeys-x11.c (gdk_keymap_get_direction): Handle
2398         the case without XKB properly.
2399
2400         * gtk/gtkrc.c (gtk_rc_set_default_files): Remove
2401         unused gtk_rc_auto_parse variable.
2402
2403         * gtk/gtkrc.[ch] gtk/gtkstyle.c docs/Changes-2.0.txt:
2404         Remove gtk_rc_set_image_loader(), gtk_rc_load_image(), no
2405         longer needed with GdkPixbuf.
2406
2407         * gtk/gtkrc.c (_gtk_rc_init): Make private.
2408
2409 Fri Jun 15 16:26:12 2001  Owen Taylor  <otaylor@redhat.com>
2410
2411         * gtk/gtkentry.h: Mark deprecated functions with
2412         GTK_DISABLE_DEPRECATED.
2413
2414 Mon Jun 11 18:15:16 2001  Owen Taylor  <otaylor@redhat.com>
2415
2416         * gdk/gdk.h: Add missing gdk_rectangle_get_type() prototype.
2417
2418         * gtk/gtk[hv]scale.c: Include math.h, stdlib.h
2419
2420         * gdk/gdkpango.h gtk/gtkclist.c gtk/gtkentry.c gtk/gtkmain.[ch]
2421           gtk/gtkspinbutton.c gtk/gtkstyle.c gtk/gtktextbuffer.c
2422           gtk/gtktextdisplay.c gtk/gtktextiter.[ch]
2423           gtk/gtktextlayout.c gtk/gtktexttag.[ch] gtk/gtkwidget.c: Adapt
2424           to recent changes in Pango.
2425
2426         * tests/testgtk.c: Set language tags with gtk_label_set_markup()
2427           to test whether the basic engine honors them.
2428
2429 Thu Jun 21 02:13:40 2001  Tim Janik  <timj@gtk.org>
2430
2431         * gtk/gtkcontainer.[hc]: added gtk_container_child_set_property() and
2432         gtk_container_child_get_property().
2433
2434 Wed Jun 20 19:19:15 2001  Jonathan Blandford  <jrb@redhat.com>
2435
2436         * gtk/gtktreeview.c (gtk_tree_view_move_cursor_up_down): clean up
2437         (gtk_tree_view_move_cursor_page_up_down): implement.
2438
2439 Wed Jun 20 05:32:05 2001  Tim Janik  <timj@gtk.org>
2440
2441         * gtk/gtkspinbutton.c: make maximum digits compile time configurable
2442         via MAX_DIGITS and up to 20. 5 was just ridiculously small.
2443         don't use automatic fixed size buffer for printf-ing floats, doubles
2444         can expand to really _huge_ strings, use g_strdup_printf() instead.
2445
2446 Wed Jun 20 04:28:24 2001  Tim Janik  <timj@gtk.org>
2447
2448         * gtk/gtkrange.c (gtk_range_class_init): hum, "adjustment" was a
2449         construct property in 1.2 and still needs to be.
2450
2451         * gtk/gtkwidget.c: "composite_child" is not a settable property.
2452
2453 Tue Jun 19 19:13:19 2001  Jonathan Blandford  <jrb@redhat.com>
2454
2455         * gtk/gtkliststore.c (gtk_list_store_clear): 
2456         * gtk/gtktreestore.c (gtk_tree_store_clear): New functions to
2457         clear a model.
2458
2459 Mon Jun 18 02:00:49 2001  Tim Janik  <timj@gtk.org>
2460
2461         * gtk/gtkwidget.c (gtk_widget_get_property): fix PROP_EVENTS.
2462
2463         * gtk/Makefile.am:
2464         * gtk/gtk.h: disabled GtkPacker compilation.
2465
2466         * gtk/gtkarg.[hc], gtk/gtkargcollector.c: got rid of these.
2467
2468         * gtk/gtknotebook.c:
2469         * gtk/gtktable.c:
2470         * gtk/gtkbox.c: ported this over to child properties.
2471
2472         * gtk/gtksettings.c: fetch class properties via
2473         g_object_class_list_properties().
2474
2475         * gtk/gtkcontainer.[hc]: implemented child properties, got rid of the
2476         child arg interface. use gobjectnotifyqueue.c for child property
2477         notification.
2478
2479         * gtk/gtkwidget.[hc]: provide necessary means for container child
2480         properties, i.e. ::child_notify signal,
2481         gtk_widget_freeze_child_notify(),
2482         gtk_widget_child_notify(),
2483         gtk_widget_thaw_child_notify().
2484
2485         * tests/testgtk.c: removed inferior property handling code, for
2486         property editing, a generic module should be used, and GLE
2487         coincidentally fullfills that purpose.
2488
2489         * docs/reference/Makefile.am: disabled gtk docs building, gtk-doc
2490         needs to be adapted to g_object_class_list_properties() before this
2491         builds again.
2492
2493 Mon Jun 18 20:06:10 2001  Jonathan Blandford  <jrb@redhat.com>
2494
2495         * gtk/gtktreeview.c (gtk_tree_view_row_expanded): New function to
2496         test if a node is expanded.
2497
2498 Mon Jun 18 19:41:38 2001  Jonathan Blandford  <jrb@redhat.com>
2499
2500         * gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): Fix bug
2501         where collapsing a selected row would result in the cursor/anchor
2502         getting screwed up.
2503
2504 Fri Jun 15 18:53:48 2001  Jonathan Blandford  <jrb@redhat.com>
2505
2506         * gtk/gtktreesortable.c (gtk_tree_sortable_set_sort_func): Rename
2507         gtk_tree_sortable_sort_column_id_set_func.  It's much shorter now.
2508         * gtk/gtktreeview.c (gtk_tree_view_sort_iter_changed): WOOO!!!
2509         Now I can really reorder/sort all Store widgets.  treesorttest
2510         seems to just work now.
2511         * gtk/gtklistview.c (gtk_list_store_iter_changed): Whoops.
2512         testtreesort worked through a big coincidence all this time.
2513         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): Nasty bug fix in nasty
2514         code.
2515         * tests/testtreecolumns.c: Big 'ol warning at the top letting
2516         people know that this code should never ever ever be copied.
2517
2518 2001-06-15  Jonas Borgström  <jonas@codefactory.se>
2519
2520         * gtk/gtkwindow.h: Fixed a small typo, it should be
2521         GTK_WINDOW_GROUP_GET_CLASS and not GTK_WINDOW_GET_CLASS
2522         on line 134.
2523
2524 2001-06-14  Havoc Pennington  <hp@redhat.com>
2525
2526         Docs fixups, and:
2527         
2528         * gtk/gtkcompat.h: remove GTK_DISABLE_COMPAT_H, replace with
2529         GTK_DISABLE_DEPRECATED
2530
2531 Thu Jun 14 19:21:27 2001  Jonathan Blandford  <jrb@redhat.com>
2532
2533         * gtk/gtktreestore.c (gtk_tree_store_sort_helper): Whoops.  Forgot
2534         this a couple months ago.  Now GtkTreeStore sort of sorts.  I'll
2535         finish it off tonight, though it basically works now when it's a
2536         list.  Also, I have a sinking feeling neither GtkTreeStore or
2537         GtkListStore actually resort when adding a new item.  I'll look
2538         into it.
2539
2540 2001-06-14  Havoc Pennington  <hp@redhat.com>
2541
2542         * demos/gtk-demo/main.c (load_file): fix bug identified by
2543         warnings I just added to gtktextbuffer
2544
2545 2001-06-14  Havoc Pennington  <hp@redhat.com>
2546
2547         * gtk/gtkwindow.c (window_group_cleanup_grabs): fix other typo
2548
2549         * gtk/gtkwidget.c (gtk_widget_propagate_state): fix typo
2550
2551         * gtk/gtktextbtree.c: don't leak node data all over the place.
2552
2553         * demos/gtk-demo/main.c (main): create fontify tags for the right
2554         buffer
2555
2556         * gtk/gtktextbuffer.c, gtk/gtktexttagtable.c: enhance docs
2557         to mention tags in the same table can't have the same name,
2558         suggested by Skip Montanaro
2559
2560 2001-06-11  Havoc Pennington  <hp@redhat.com>
2561
2562         * gtk/gtktexttagtable.c (gtk_text_tag_table_add): improve warning 
2563         for trying to add two tags with same name to the tag table
2564
2565         * demos/gtk-demo/main.c (main): fix colors ;-)
2566
2567 `Fri Jun  8 17:56:52 2001  Owen Taylor  <otaylor@redhat.com>
2568
2569         * gtk/gtkwindow.[ch] gtk/gtkmain.c: Add a GtkWindowGroup struct
2570         that allows grouping together multiple windows so that grabs
2571         within that set of windows only affect those windows.
2572
2573         * gtk/gtkmain.c gtk/gtkwidget.[ch]: Add a "grab_notify"
2574         signal for notification when a widget becomes shadowed
2575         by a grab or is no longer shadowed by a grab.
2576
2577         * gtk/gtkwidget.c (gtk_widget_propagate_state)
2578           gtk/gtkmain.c: (gtk_widget_grab_add): Don't allow
2579         insenstive widgets to maintain a grab.
2580
2581 2001-06-14  Alexander Larsson  <alexl@redhat.com>
2582
2583         * docs/README.linux-fb:
2584         Add some example config files that can be used with the URW fonts.
2585         
2586         * gdk/linux-fb/gdkvisual-fb.c (gdk_visual_init): 
2587         Set up the color ramps for DirectColor mode.
2588
2589 2001-06-11  Havoc Pennington  <hp@redhat.com>
2590
2591         * Release 1.3.6
2592          
2593 2001-06-13  Alexander Larsson  <alla@lysator.liu.se>
2594
2595         * gdk/linux-fb/gdkwindow-fb.c:
2596         Unify shaped window code and make it repaint the area that used
2597         to be part of the shape, but isn't anymore.
2598
2599 2001-06-11  Havoc Pennington  <hp@redhat.com>
2600
2601         * NEWS: Updates
2602
2603         * configure.in (GTK_MINOR_VERSION): bump version to 1.3.6
2604
2605         * gtk/Makefile.am: glib_genmarshal already contains top_builddir
2606         
2607 2001-06-13  Alexander Larsson  <alla@lysator.liu.se>
2608
2609         * gdk/linux-fb/gdkdnd-fb.c (gdk_drag_status):
2610         Don't pass on GDK_ACTION_DEFAULT. The Xdnd code
2611         passes zero instead, so do we.
2612         
2613 2001-06-13  Alexander Larsson  <alla@lysator.liu.se>
2614
2615         * gdk/linux-fb/gdkgc-fb.c (gdk_gc_copy):
2616         Deep copy dash_list too.
2617         (_gdk_fb_gc_new): Set default cap_style before
2618         setting values.
2619
2620 2001-06-12  Alexander Larsson  <alla@lysator.liu.se>
2621
2622         * gdk/linux-fb/gdkkeyboard-fb.c (gdk_keymap_get_default,
2623         gdk_keymap_get_direction): New functions.
2624
2625 Tue Jun 12 12:41:27 2001  Jonathan Blandford  <jrb@redhat.com>
2626
2627         * gtk/gtktreemodel.h (GTK_TREE_MODEL_LIST_ONLY): further justify
2628         gtk_tree_model_get_flags by adding a second flag for atk.
2629
2630         * gtk/gtktreemodel.c: make cursor behavior interact better with
2631         mouse presses.
2632
2633 Mon Jun 11 12:43:08 2001  Jonathan Blandford  <jrb@redhat.com>
2634
2635         * gtk/gtktreeview.c (gtk_tree_view_class_init): changed
2636         expand_row/collapse_row to be 2 signals each -- test_expand_row
2637         and row_expanded as well as test_collapse_row and row_collapsed.
2638
2639 2001-06-10  Anders Carlsson  <andersca@codefactory.se>
2640
2641         * demos/gtk-demo/stock_browser.c (do_stock_browser): Update
2642         signal name to be changed instead of selection_changed.
2643
2644 2001-06-08  Havoc Pennington  <hp@redhat.com>
2645
2646         * gtk/gtkentry.c (gtk_entry_class_init): add read-only
2647         "scroll_offset" property for notification when the layout offsets
2648         may have changed
2649         (gtk_entry_adjust_scroll): add notify for scroll_offset
2650         (gtk_entry_layout_index_to_text_index): function to compensate for
2651         preedit string when doing coordinate stuff on the entry's layout
2652         (gtk_entry_text_index_to_layout_index): inverse function
2653         (gtk_entry_get_layout_offsets): hook to get current position of
2654         the layout      
2655         (gtk_entry_get_layout): hook to get the layout itself.
2656
2657         * gtk/gtklabel.c (gtk_label_get_layout): new function
2658
2659 Fri Jun  8 19:49:29 2001  Jonathan Blandford  <jrb@redhat.com>
2660
2661         * gtk/gtktreeview.c (gtk_tree_view_real_select_cursor_row): New
2662         keybinding.
2663         (gtk_tree_view_focus): Fix merge conflict.
2664
2665 Fri Jun  8 18:41:30 2001  Jonathan Blandford  <jrb@redhat.com>
2666
2667         * gtk/gtktreeview.c (gtk_tree_view_set_cursor): new function to
2668         clean up cursor handling.
2669
2670 2001-06-08  Havoc Pennington  <hp@redhat.com>
2671
2672         * gtk/gtktextbuffer.c (gtk_text_buffer_get_start_iter): added this
2673         function
2674
2675         * gtk/gtktextview.c (gtk_text_view_get_default_attributes): added
2676         this function
2677
2678 2001-06-08  Alex Larsson  <alexl@redhat.com>
2679
2680         * gtk/gtkcompat.h.in:
2681         Added compat macros for all old GTK_TYPE_GDK_xxx types.
2682         Fixes bug #52892
2683
2684 2001-06-08  Havoc Pennington  <hp@redhat.com>
2685         
2686         * gtk/gtkhsv.h (struct _GtkHSVClass): had GtkContainerClass as
2687         parent still
2688
2689 2001-06-08  Havoc Pennington  <hp@redhat.com>
2690
2691         * gtk/gtktextbuffer.c (gtk_text_buffer_remove_all_tags): geez,
2692         don't call g_list funcs on GSList
2693
2694         * gtk/gtkwidget.c (gtk_widget_child_focus): replaces
2695         gtk_container_focus(), since some widgets have focusable locations
2696         which are not other widgets. These widgets should not have to be 
2697         containers just to manage the focus. For example, GtkHSV is
2698         currently a container for no good reason. Also, this cleans
2699         up the "if (is_container && is_sensitive && is_drawable)
2700         container_focus ()" mess in widget implementations.
2701
2702         * gtk/gtkcontainer.c (gtk_container_focus): deprecate this
2703         function, and have it just call gtk_widget_child_focus().
2704
2705         * gtk/gtkhsv.c: derive from widget not container
2706         
2707         Throughout: fix to reflect GtkContainer::focus change
2708         
2709 Fri Jun  8 12:38:49 2001  Jonathan Blandford  <jrb@redhat.com>
2710
2711         * gtk/gtktable.c (gtk_table_resize): warn if row/cols are out of
2712         range.  Fix bug #55921
2713
2714         * gtk/gtkliststore.c (gtk_list_store_new_with_types): fix doc bug
2715         (#55920).
2716
2717 Fri Jun  8 12:03:07 2001  Owen Taylor  <otaylor@redhat.com>
2718
2719         * gdk/gdkkeys.[ch]: Add a direction-changed signal,
2720         and gdk_keymap_get_current_direction().
2721
2722         * gdk/x11/gdkevents-x11.c gdk/x11/gdkkeys-x11.c
2723           gdk/x11/gdkmain-x11.c gdk/x11/gdkprivate-x11.h: Track
2724         the current locked group, use it to set the keymap
2725         direction.
2726
2727         * gtk/gtksettings.c: Add a new gtk-split-cursor setting
2728         to determine whether we draw a split cursor or use
2729         a jumping cursor based on the current direction.
2730
2731         * gtk/gtkentry.c gtk/gtktextview.c gtk/gtktextlayout.[ch]:
2732         Obey the split cursor setting. 
2733
2734 Fri Jun  8 11:57:50 2001  Owen Taylor  <otaylor@redhat.com>
2735
2736         * gtk/gtkimmulticontext.c (activate_cb): Only activate
2737         when toggling on, not when toggling off... (#55906)
2738
2739 Wed Jun  6 10:37:07 2001  Owen Taylor  <otaylor@redhat.com>
2740
2741         * gtk/gtkwidget.c (gtk_widget_set_double_buffered): 
2742         s/gdk_window_begin_paint/gdk_window_begin_paint_region/
2743         in docs. (#55812, Vitaly Tishkov)
2744
2745 2001-06-08  Anders Carlsson  <andersca@codefactory.se>
2746
2747         * demos/gtk-demo/main.c (create_tree): Changed signal name from
2748         selection_changed to changed in signal connection to GtkTreeSelection,
2749         also used g_signal_connectc since GtkTreeSelection is now a GObject.
2750
2751 Thu Jun  7 18:25:42 2001  Jonathan Blandford  <jrb@redhat.com>
2752
2753         * gtk/gtktreeselection.c: Now it's a GObject instead of a
2754         GtkObject.  The GtkTreeSelection::selection_changed signal is now
2755         the GtkTreeSelection::changed signal.
2756
2757         * gtk/gtktreeview.c: Modified to deal with new GtkTreeSelection
2758         object.
2759
2760         * tests/gtktree*.c: Modified to deal with new GtkTreeSelection
2761         object.
2762
2763 2001-06-07  Havoc Pennington  <hp@redhat.com>
2764
2765         * gtk/Makefile.am: fix glib-mkenums and glib-genmarshal again
2766
2767 2001-06-07  Havoc Pennington  <hp@redhat.com>
2768         
2769         * gtk/Makefile.am: fixups for glib-mkenums and glib-genmarshal
2770         (not tested yet because with absolute path to srcdir I can't build
2771         atk, but it was broken anyway so this may help) 
2772
2773 2001-06-07  Havoc Pennington  <hp@redhat.com>
2774
2775         * configure.in: output m4macros/Makefile
2776         
2777 Wed Jun  6 21:59:16 2001  Jonathan Blandford  <jrb@redhat.com>
2778
2779         * gtk/gtktreeview.c (gtk_tree_view_size_allocate): hook up arrow
2780         buttons.  Fixes #55460 reported by matthiasc@poet.de.
2781
2782 Wed Jun  6 21:18:54 2001  Jonathan Blandford  <jrb@redhat.com>
2783
2784         * gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): centralize
2785         expansion/collapsing so it only happens in one place.
2786         (gtk_tree_view_real_expand_row): ditto.
2787
2788 2001-06-07  Havoc Pennington  <hp@redhat.com>
2789
2790         * tests/Makefile.am: add missing -I flag
2791
2792         * gtk/Makefile.am: use @GLIB_MKENUMS@, @GLIB_GENMARSHAL@, etc.
2793
2794         * configure.in: use pkg-config to see if GModule is
2795         supported; fix to properly turn on included loaders 
2796         when GModule isn't supported; don't use AC_CHECK_LIB 
2797         when libs are not installed yet
2798
2799         * autogen.sh: add support for AUTOGEN_SUBDIR_MODE
2800
2801         * Makefile.am (SUBDIRS): add m4macros subdir
2802
2803         * gtk/Makefile.am: $(srcdir)/foo targets must be $(srcdir)/foo in
2804         dependencies also.
2805
2806 Wed Jun  6 19:31:11 2001  Jonathan Blandford  <jrb@redhat.com>
2807
2808         * gtk/gtktreeview.c (gtk_tree_view_set_model): fix silly bug
2809         reported by "Padraig O'Briain" <Padraig.Obriain@Sun.COM>.
2810
2811 Wed Jun  6 20:01:38 2001  Jonathan Blandford  <jrb@redhat.com>
2812
2813         * gtk/gtktreeview.c
2814         (gtk_tree_view_real_expand_collapse_cursor_row): Handle key
2815         bindings to expand and collapse rows.
2816         (gtk_tree_view_real_select_cursor_parent): New key binding.
2817         (gtk_tree_view_real_toggle_cursor_row): New key binding.
2818
2819         * gtk/gtkmarshal.list: new
2820         marshaller. (VOID__BOOLEAN_BOOLEAN_BOOLEAN)
2821
2822 2001-06-06  Havoc Pennington  <hp@redhat.com>
2823
2824         * gtk/gtkrange.c (gtk_range_class_init): add "inverted" property
2825
2826         * gtk/gtkscale.c (gtk_scale_class_init): Change Page Up and Page
2827         Down to move visually rather than logically, since it confuses 
2828         people. Add -/+ and Ctrl--/+ bindings for logical movement.
2829
2830 2001-06-06  Alex Larsson  <alexl@redhat.com>
2831
2832         * gdk/linux-fb/gdkmain-fb.c (_gdk_windowing_init_check):
2833         Fix up error messages.
2834
2835 Wed Jun  6 10:34:42 2001  Owen Taylor  <otaylor@redhat.com>
2836
2837         * gtk/gtktooltips.h: Include gtkwidget.h 
2838         (#55798, Karl Nelson)
2839
2840         * gdk/x11/gdkwindow-x11.c (utf8_is_latin1): 0xff is
2841         a valid latin-1 character. (Marc Lehmann, #35467)
2842
2843         * gdk/x11/gdkwindow-x11.c: Fix minor typo in comment. 
2844         (Marc Lehmann, #35467)
2845         
2846 2001-06-05  Alex Larsson  <alexl@redhat.com>
2847
2848         * demos/gtk-demo/appwindow.c (do_appwindow):
2849         Don't swap the order of the args to gtk_widget_destroyed.
2850
2851         * tests/testgtk.c (destroy_properties):
2852         Don't crash when the properties window is destroyed.
2853
2854         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_new_from_stock):
2855         Use with_mnemonics to handle the case of stock items with
2856         underscores in them.
2857
2858 2001-06-05  Havoc Pennington  <hp@redhat.com>
2859
2860         * gtk/gtktextiter.c (gtk_text_iter_order): rename from 
2861         gtk_text_iter_reorder
2862
2863 2001-06-05  Havoc Pennington  <hp@redhat.com>
2864
2865         * gtk/gtktoolbar.c (gtk_toolbar_remove_space): new function
2866
2867 2001-06-05  Havoc Pennington  <hp@redhat.com>
2868
2869         * gtk/gtkspinbutton.c (gtk_spin_button_set_range): clamp the value 
2870         to the range that was set
2871
2872         * gtk/gtkrange.c: add value_changed signal, primarily 
2873         intended for use with GtkScale
2874         (gtk_range_set_increments): new function
2875         (gtk_range_set_range): new function with weird name
2876         (gtk_range_set_value): new function
2877         (gtk_range_get_value): new function
2878
2879         * gtk/gtkspinbutton.c (gtk_spin_button_get_value): rename 
2880         from gtk_spin_button_get_value_as_float(). Compat #define
2881         added for get_value_as_float.
2882
2883         * gtk/gtkhscale.c (gtk_hscale_new_with_range): new function
2884
2885         * gtk/gtkvscale.c (gtk_vscale_new_with_range): new function
2886
2887 Tue Jun  5 14:57:18 2001  Jonathan Blandford  <jrb@redhat.com>
2888
2889         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_get_size): Fix bug #55573
2890
2891 Mon Jun  4 12:41:25 2001  Owen Taylor  <otaylor@redhat.com>
2892
2893         * gtk/gtkwidget.h: Deprecate gtk_widget_set().
2894
2895         * tests/testgtk.c (create_tooltips): Remove usage of
2896         gtk_widget_set().
2897
2898 2001-06-05  Havoc Pennington  <hp@redhat.com>
2899
2900         * gtk/gtkcolorsel.c: Use new mnemonic convenience functions
2901
2902         Applying patch from Jeff Franks, with function docs added.
2903         
2904         * gtk/gtkcheckbutton.c (gtk_check_button_new_with_mnemonic):
2905         remove call to set_mnemonic_widget, change docs a bit.  
2906
2907         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_new_with_mnemonic):
2908         new function
2909
2910         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_new_with_mnemonic):
2911         new function
2912
2913         * gtk/gtkmenuitem.c (gtk_menu_item_new_with_mnemonic): new function
2914
2915         * gtk/gtkradiobutton.c (gtk_radio_button_new_with_mnemonic): new
2916         function
2917         (gtk_radio_button_new_with_mnemonic_from_widget): new function
2918
2919         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_new_with_mnemonic):
2920         new function
2921
2922         * gtk/gtktogglebutton.c (gtk_toggle_button_new_with_mnemonic): new
2923         function        
2924
2925         * gtk/gtklabel.c (gtk_label_new_with_mnemonic): Improve docs on 
2926         auto-selection of mnemonic widget.
2927
2928 Mon Jun  4 15:05:24 2001  Jonathan Blandford  <jrb@redhat.com>
2929
2930         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_max_width):
2931         Fix segfault found by Vitaly Tishkov <tvv@sparc.spb.su>.
2932         (gtk_tree_view_column_set_min_width): ditto.
2933
2934 Tue Jun  5 11:04:06 2001  Owen Taylor  <otaylor@redhat.com>
2935
2936         * gdk/gdkpixmap.h (GDK_PIXMAP_GET_CLASS): 
2937         s/GdkPixmapClass/GdkPixmapObjectClass/. (#51890, Jeff Franks)
2938
2939 Mon Jun  4 12:50:11 2001  Owen Taylor  <otaylor@redhat.com>
2940
2941         * gtk/gtkctree.c (gtk_ctree_insert_gnode): Add a missing
2942         gtk_clist_thaw().
2943
2944 2001-06-04  Havoc Pennington  <hp@pobox.com>
2945
2946         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Ignore 
2947         releases for buttons 6, 7
2948
2949 2001-06-04  Havoc Pennington  <hp@redhat.com>
2950
2951         * gtk/gtkseparatormenuitem.h: Fix a search-and-replace screwup
2952         (s/CHECK/SEPARATOR/ gone awry). Patch from Jeff Franks, bug
2953         #55562
2954
2955 2001-06-04  Havoc Pennington  <hp@redhat.com>
2956
2957         * gtk/gtktextview.c (gtk_text_view_size_request): handle case
2958         where text_view->layout == NULL by assuming its size is 0, 
2959         i.e. same as if we haven't done any reflow. Reported by 
2960         Hidetoshi Tajima #55448 
2961
2962 2001-06-04  Havoc Pennington  <hp@redhat.com>
2963
2964         * gdk/x11/gdkevents-x11.c (gdk_event_translate): support button 6
2965         and 7 for scroll left/right, from Thomas Broyer
2966
2967 2001-05-10  Havoc Pennington  <hp@redhat.com>
2968
2969         * gtk/gtksettings.c (gtk_settings_get_property): Handle case where
2970         we need to parse the xsetting as if it were an RC file string.
2971
2972         * gtk/gtkcolorsel.c (gtk_color_selection_class_init): load initial
2973         value of palette from settings, not from static variable
2974
2975         * gdk/x11/gdkevents-x11.c: add color palette, toolbar mode to
2976         xsettings translation table
2977
2978         * gtk/gtktoolbar.c (gtk_toolbar_new): Remove arguments, because 
2979         hardcoding the toolbar style conflicts with new customizable 
2980         toolbar style philosophy
2981         (gtk_toolbar_class_init): add settings for default toolbar style;
2982         these are used unless the app specifically forces a toolbar style
2983
2984         * gtk/gtksettings.c (settings_install_property_parser): only
2985         return at the start if we warn and parser == NULL
2986
2987         * gtk/gtkcolorsel.c (gtk_color_selection_finalize): disconnect the
2988         palette changed handler so we don't notify dead color selections
2989
2990         * gtk/gtkstyle.c (gtk_default_draw_shadow): handle
2991         xthickness/ythickness of 0 or 1 properly 
2992         (gtk_default_draw_resize_grip): clear the background behind the
2993         resize grips, and align to bottom right if we square the 
2994         area to be drawn.
2995
2996         * gtk/gtkstatusbar.c (gtk_statusbar_init): set horizontal usize on 
2997         statusbar label to 1, so it doesn't make toplevels resize oddly
2998         (gtk_statusbar_size_request): add grip size to request
2999         (gtk_statusbar_size_allocate): hack so the hbox still works with 
3000         the grip size in the request
3001
3002         * gtk/gtktoolbar.c (gtk_toolbar_show_all): override to fix 
3003         bug where showing all on a toplevel makes the toolbar 
3004         button text appear despite the toolbar mode
3005
3006         * gtk/gtkmenubar.c: add internal padding style property
3007
3008         * gtk/gtktoolbar.c: Add internal padding style property; add
3009         shadow type style property
3010
3011         * gtk/gtkmenubar.c (gtk_menu_bar_paint): paint box with widget
3012         state; and put Container::border_width outside the frame
3013
3014         * gtk/gtktextview.c: don't draw focus rectangle if we're in
3015         interior focus mode, we just use blinking cursor
3016
3017 2001-06-04  Havoc Pennington  <hp@redhat.com>
3018
3019         * configure.in: Make gdk-pixbuf have same version number as GTK
3020
3021 2001-06-04  Havoc Pennington  <hp@redhat.com>
3022
3023         * gtk/gtkspinbutton.c: Get rid of stupid g_return_if_fail on 
3024         digits greater than 6. If there actually are limits (which there
3025         likely aren't), should clamp to them not warn.
3026         (gtk_spin_button_new_with_range): don't take log of 0
3027         (gtk_spin_button_size_request): use digits to compute size
3028         request, rather than step increment.
3029
3030         * tests/testgtk.c (create_spins): test larger values of digits
3031         
3032         * gtk/gtkfontsel.c (gtk_font_selection_init): scroll to selected
3033         font on map not expose, so we don't get weirdness during scrolling
3034
3035 2001-06-04  Havoc Pennington  <hp@redhat.com>
3036
3037         * gtk/gtkclist.c (vadjustment_value_changed): Apply fix from
3038         Sam Solon, bug #54577, update value even if not drawable.
3039
3040 2001-06-04  Havoc Pennington  <hp@redhat.com>
3041
3042         * gtk/gtkrange.c (gtk_range_scroll_event): change SCROLL_RIGHT to
3043         SCROLL_LEFT, reported by Thomas Broyer.
3044
3045 2001-06-04  Havoc Pennington  <hp@redhat.com>
3046
3047         * gtk/gtkrange.c (gtk_range_adjustment_value_changed): 
3048         Process updates immediately, to prevent funny lag effect
3049         when scrolling, at some mild potential efficiency cost.
3050
3051 2001-06-04  Havoc Pennington  <hp@redhat.com>
3052
3053         * gtk/gtkrange.c (gtk_range_button_press): on middle click, center
3054         slider on the click.
3055
3056 2001-06-03  Havoc Pennington  <hp@pobox.com>
3057
3058         * gtk/gtkstyle.c (gtk_default_draw_slider): make this special-case
3059         hscale/vscale details, so we can use it for scrollbar as well.
3060
3061         * tests/testgtk.c (reformat_value): honor digits from GtkScale
3062
3063         * gtk/gtkenums.h (GtkTroughType): Remove this enum
3064         (GtkScrollType): add START and END from GtkTroughType
3065
3066         * gtk/gtkstyle.c (gtk_default_draw_slider): was not properly using
3067         its x/y arguments
3068
3069         * gtk/gtkrange.h, gtk/gtkrange.c, gtk/gtkscrollbar.h,
3070         gtk/gtkscrollbar.c, gtk/gtkscale.h, gtk/gtkscale.c,
3071         gtk/gtkhscrollbar.h, gtk/gtkhscrollbar.c, gtk/gtkvscrollbar.h,
3072         gtk/gtkvscrollbar.c, gtk/gtkhscale.h, gtk/gtkhscale.c,
3073         gtk/gtkvscale.h, gtk/gtkvscale.c: Rewrite GtkRange and subclasses.
3074
3075         Notable changes in the process:
3076          
3077         - stepper_size style property is the height for vertical 
3078           ranges, width for horizontal; the other dimension matches
3079           the trough size
3080         - add ability to do NeXT-style steppers (and several other styles
3081           that don't make any sense)
3082         - added min_slider_length, fixed_slider_length properties to
3083           GtkScrollbar
3084         - cleaned some private (or at least useless) functions out of
3085           gtkscale.h    
3086         - moved bindings to GtkScale from subclasses, even arrow keys,
3087           since blind users don't know scale orientation.
3088         - change move_slider action signal to use new GtkScrollType,
3089           remove GtkTroughType argument
3090         - digits rounds the values a range will input to the given 
3091           number of decimals, but will not try to force adjustment 
3092           values set by other controllers. That is, we no longer
3093           modify adjustment->value inside a value_changed handler.
3094         - added getters for GtkScale setters
3095         - middle-click begins a slider drag
3096         
3097 Fri Jun  1 18:54:47 2001  Jonathan Blandford  <jrb@redhat.com>
3098
3099         * gtk/gtktreeview.c: (gtk_tree_view_focus): Initial stab at
3100         getting the focus code to work.
3101         (gtk_tree_view_class_init): Add a bunch of keybindings.
3102
3103         * gtk/gtktreeviewcolumn.c
3104         (gtk_tree_view_column_set_cell_data_func):
3105         s/GtkCellDataFunc/GtkTreeCellDataFunc.
3106         (_gtk_tree_view_column_set_tree_view): Use "notify::model" instead
3107         of "properties_changed" to help justify the death of the latter
3108         signal. (-:
3109
3110         * tests/testtreefocus.c (main): Let some columns be focussable to
3111         test focus better.
3112
3113 2001-06-01  Havoc Pennington  <hp@redhat.com>
3114
3115         * gtk/gtkentry.c (gtk_entry_commit_cb): implement overwrite mode
3116         
3117         * gtk/gtktextview.c (gtk_text_view_commit_handler): don't
3118         overwrite in overwrite mode if we already deleted the selection
3119         and replaced it with new text.  
3120
3121         * gtk/gtklabel.c (gtk_label_select_region_index): if you set the
3122         selection to an empty range, clear the clipboard if we owned it.
3123         (gtk_label_set_selectable): give up selection if we become
3124         unselectable.
3125         (gtk_label_state_changed): override state changed to unselect text
3126         when insensitive
3127         (get_text_callback): add paranoia check that indexes aren't
3128         outside of label->text
3129         (gtk_label_select_region): make -1 for start_offset mean "end of
3130         label," for consistency with GtkEditable
3131
3132         * gtk/gtkmessagedialog.c (gtk_message_dialog_new): honor
3133         GTK_DIALOG_NO_SEPARATOR flag
3134
3135 Fri Jun  1 11:47:11 2001  Owen Taylor  <otaylor@redhat.com>
3136
3137         * gtk/gtkcombo.c (gtk_combo_set_use_arrows_always): Fix 
3138         notifications on non-existant "enable_arrow_keys".
3139         (#53753, Skip Montanaro)
3140
3141 Fri Jun  1 11:31:55 2001  Owen Taylor  <otaylor@redhat.com>
3142
3143         * gdk/gdkrectangle.c (gdk_rectangle_get_type): Add 
3144         GDK_TYPE_RECTANGLE.
3145
3146         * gtk/gtkwidget.c (gtk_widget_class_init): Fix type
3147         of allocation argument be GDK_TYPE_RECTANGLE.
3148
3149 Thu May 31 12:43:57 2001  Owen Taylor  <otaylor@redhat.com>
3150
3151         * gtk/gtkoptionmenu.c: Account for the fact that the border
3152         width is _outside_ the window. (Fixes #54585, bug found
3153         by Bastien Nocera.)
3154
3155 Wed May 30 15:56:30 2001  Owen Taylor  <otaylor@redhat.com>
3156
3157         * gtk/gtksettings.c (gtk_settings_get_property): Validate
3158         value from GDK settings against parameter spec.
3159
3160         * gdk/x11/gdkevents-x11.c (gdk_setting_get): Add assignments
3161         to temporary values and use g_value_transform(), since
3162         thinking that GValue was going to be easy or efficient
3163         to use was, of course, a mistake.
3164
3165         * gtk/gtksettings.c: Add cursor blink setting.
3166         
3167         * gdk/x11/gdkevents-x11.c: Add cursor blink X settings.
3168
3169         * gtk/gtkentry.c: Add cursor blinking.
3170
3171         * gtk/gtktextview.c (gtk_text_view_check_cursor_blink): Use
3172         cursor blink global settings.
3173
3174         * gtk/gtkentry.c (gtk_entry_button_press): Add notification
3175         for :text_position in places where it is missing.
3176
3177 Tue May 29 18:17:11 2001  Owen Taylor  <otaylor@redhat.com>
3178
3179         * autogen.sh (have_libtool): Fix GNU sedism (#55430)
3180
3181 Tue May 29 17:40:29 2001  Owen Taylor  <otaylor@redhat.com>
3182
3183         * configure.in (GTK_DEP_CFLAGS): Use $PKG_CONFIG,
3184         not pkg-config. (#51032)
3185
3186         * gdk/gdkproperty.h: Remove inappropriate G_GNUC_CONST
3187         (fixes #51952, James Henstridge)
3188         
3189 2001-05-27  Alexander Larsson  <alla@lysator.liu.se>
3190
3191         * gtk/gtkstock.h (GTK_STOCK_GO_UP):
3192         Rename to the more correct gtk-go-up.
3193
3194         * gtk/stock-icons/stock_menu_sort_ascending.png:
3195         Added new file.
3196         
3197         * gtk/stock-icons/stock_menu_sort_descending.png:
3198         Changed to show descending instead of ascending.
3199
3200         * gtk/gtkiconfactory.c:
3201         Added menu size icon to sort ascending.
3202
3203         * gtk/stock-icons/Makefile.am:
3204         Added stock_menu_sort_ascending.png.
3205         
3206         * gtk/gtkseparatormenuitem.c:
3207         Use correct typenames.
3208
3209 Sun May 20 20:07:35 2001  Tim Janik  <timj@gtk.org>
3210
3211         * gtk/gtksignal.[hc] (gtk_signal_connect_full): make hanlder id a
3212         gulong as in GSignal.
3213
3214 Fri May 25 19:04:17 2001  Jonathan Blandford  <jrb@redhat.com>
3215
3216         * gtk/gtktreeview.c (gtk_tree_view_calc_size): Remove almost all
3217         instances of GtkCellRenderer in code (all but dnd icon code).
3218         Virtualized in GtkTreeViewColumn.  Now I need to move focus in
3219         there, and I can do multiple Cells per column.
3220
3221         * gtk/gtktreeviewcolumn.c: Proxy all cell calls correctly
3222
3223         * gtk/gtktreemodel.c (gtk_tree_row_reference_new_proxy): fix bug
3224         when model was unreffed prior to removing the row reference.
3225
3226 2001-05-25  Havoc Pennington  <hp@redhat.com>
3227
3228         * gtk/gtkiconfactory.c: fix so that default icons are created if 
3229         you call gtk_stock_list_ids()
3230
3231         * demos/gtk-demo/stock_browser.c (create_model): sort stock items
3232         in list
3233
3234 2001-05-25  Havoc Pennington  <hp@redhat.com>
3235
3236         * gtk/gtkiconfactory.c (gtk_icon_set_get_sizes): get sizes an icon
3237         set can render without falling back to missing image icon
3238
3239         * gtk/gtktextview.c (gtk_text_view_size_request): request full
3240         size of text, instead of random values
3241
3242         * gtk/gtktreeview.c (gtk_tree_view_size_request): request full
3243         size of tree view, instead of random values
3244
3245         * gtk/gtkiconfactory.c (gtk_icon_set_render_icon): render fallback
3246         image in an appropriate size
3247
3248         * gtk/gtkstock.h: Rename the stock items including _BUTTON_,
3249         etc. not to include that. i.e. s/GTK_STOCK_BUTTON_OK/GTK_STOCK_OK/
3250
3251         Throughout: fix GTK_STOCK_BUTTON_ instances
3252         
3253         * gtk/gtkstock.h, gtk/gtkstock.c, gtk/gtkiconfactory.h,
3254         gtk/gtkiconfactory.c, gtk/stock-icons/Makefile.am:
3255         Add a bunch of new stock items/icons
3256
3257         * gtk/gtktreeview.c (gtk_tree_view_insert_column_with_data_func):
3258         new function, convenience for inserting columns with a data func
3259
3260         * gtk/gtkiconfactory.c: keep a list of all existing icon factories
3261         (_gtk_icon_factory_list_ids): use list of all factories to
3262         generate a list of all known IDs
3263
3264         * gtk/gtkstock.c (gtk_stock_list_ids): replace
3265         gtk_stock_list_items() with a function that returns all IDs known
3266         including those for GtkIconFactory.
3267
3268 2001-05-25  Hans Breuer  <hans@breuer.org>
3269
3270         * gdk/win32/gdkgc-win32.c : made fil mode GDK_STIPPLED actually
3271         work -> check boxes and radio buttons are drawn now, even on win9x.
3272         Improved line settings a bit, still no clue how to get really dotted
3273         lines on win9x, on NT it's PS_ALTERNATE.
3274
3275         * gdk/win32/gdkwindow-win32.c : use SafeAdjustWindowRect for 
3276         GDK_HINT_MIN_SIZE as well
3277
3278         * gdk/win32/makefile.am : added gdkkeys-win32.c to EXTRA_DIST
3279
3280         * gtk/gtk.def : updated
3281
3282         * gtk/gtktreeprivate.h : change column_drop_func to be a function
3283         pointer not a function pointer pointer
3284
3285         * tests/testdnd.c : include <stdlib.h> for putenv prototype
3286
3287         * tests/testsocket.c : made it compile on win32 again
3288
3289         * tests/makefile.msc : one more test-app uses prop-editor.obj
3290
3291 2001-05-22  Havoc Pennington  <hp@pobox.com>
3292
3293         * gtk/gtkbin.c (gtk_bin_get_child): New function
3294
3295 Wed May 23 20:07:53 2001  Owen Taylor  <otaylor@redhat.com>
3296
3297         * gtk/gtkimcontextsimple.c: Add Mode_Switch to list of keys
3298         to ignore when doing compose processing.
3299
3300 2001-05-22  Joe Shaw  <joe@ximian.com>
3301
3302         * gtk/gtktextiter.c (_gtk_text_btree_get_iter_at_last_toggle): 
3303         Simplify as suggested by Havoc. Just get the last iter and work
3304         backward to the tag instead of getting a line and working back from
3305         there. Fixes passing in an invalid offset to
3306         iter_init_from_byte_offset().
3307
3308 Tue May 22 16:25:27 2001  Jonathan Blandford  <jrb@redhat.com>
3309
3310         * gtk/gtktreeview*.h: 
3311         * gtk/gtkcell*.h:
3312         * gtk/gtk*store.h:
3313         Added patch from Jeff Franks <jcf@tpg.com.au> to add GET_CLASS
3314         macros to all objects.
3315
3316 Tue May 22 15:13:52 2001  Jonathan Blandford  <jrb@redhat.com>
3317
3318         * gtk/gtkcellrenderertext.c
3319         (gtk_cell_renderer_text_set_fixed_size): Evil function to deal
3320         with very large (TM) amounts of text.  May be moved to
3321         GtkCellRenderer in the future, though I'm not sure it wants to be
3322         this accessible.
3323
3324         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_update_button):
3325         More sanity brought to this class.  I like it.
3326
3327         * tests/testtreecolumns.c (ViewColumnModel): Amazingly scary test
3328         case.  Kids, don't try this at home.
3329
3330         * gtk/gtktreemodel.c (gtk_tree_model_get_iter_root): new
3331         convenience function.
3332
3333         * gtk/gtkwindow.c (gtk_window_set_geometry_hints): Fix typo in docs.
3334
3335 2001-05-21  Alexander Larsson  <alexl@redhat.com>
3336
3337         * gtk/gtkfontsel.c:
3338         Added properties. Based on patch by Lee Mallabone.
3339
3340         * gtk/gtkruler.c:
3341         * gtk/gtkhruler.c:
3342         * gtk/gtkvruler.c:
3343         * gtk/gtktext.c:
3344         * gtk/gtktextview.c:
3345         Converted GtkArg to GParam. Based on patches by John Margaglione.
3346
3347         * tests/Makefile.am:
3348         * tests/testtext.c:
3349         Add a property editor to testtext.
3350         
3351 Mon May 21 11:29:21 2001  Owen Taylor  <otaylor@redhat.com>
3352
3353         * gtk/gtk{h,v,}paned.c: Only show the separator if 
3354
3355         * configure.in: Fixed reversed conditional causing all image
3356         libraries to be linked in.
3357
3358 2001-05-21  Joe Shaw  <joe@ximian.com>
3359
3360         * gtk/gtklayout.c (gtk_text_layout_get_lines): Remove the assertion
3361         that top_y needs to be >= 0.
3362
3363 2001-05-11  Havoc Pennington  <hp@pobox.com>
3364         
3365         * gdk/x11/gdkmain-x11.c: Improve error messages for X errors and
3366         losing connection to the X server.
3367
3368 Sun May 20 13:59:20 2001  Owen Taylor  <otaylor@redhat.com>
3369
3370         * configure.in: Start checks for X from pangox/pangoxft
3371         CFLAGS to avoid duplicate libraries.
3372
3373         * gdk/Makefile.am (LDFLAGS): Remove extra -lm.
3374
3375         * configure.in (GDK_PIXBUF_PACKAGES): Fix GDK_PIXBUF_PACKAGES
3376         to include gobject.
3377         
3378 2001-05-18  Alexander Larsson  <alexl@redhat.com>
3379
3380         * gtk/gtkspinbutton.c:
3381         Convert GtkArgs to GParams. Based on patch by John Margaglione.
3382         Also do size request reasonable for MAXDOUBLE. Previously it printed
3383         the limits to a buffer and overran it. Instead do it using log10() and
3384         limit the width to 10 digits.
3385         
3386         * gtk/gtkwidget.c (gtk_widget_get_property):
3387         Correctly handle setting the parent property to NULL.
3388
3389 Fri May 18 15:26:26 2001  Owen Taylor  <otaylor@redhat.com>
3390
3391         * gtk/gtktextview.c (gtk_text_view_style_set): Reset 
3392         style attributes even if the widget isn't realized.
3393
3394         * demos/gtk-demo/main.c: Use a slightly smaller font.
3395
3396 Fri May 18 14:25:20 2001  Owen Taylor  <otaylor@redhat.com>
3397
3398         * gtk/gtkcontainer.c: Remove reallocate-redraws property.
3399         This is something that only a widget writer would ever want
3400         to change.
3401
3402         * gtk/gtksignal.c: Handle G_SIGNAL_TYPE_STATIC_SCOPE for
3403         gtk_signal_emit_by_name().
3404
3405         * gtk/gtkviewport.c: Fix some warnings.
3406
3407         * gtk/gtkwidget.c gtk/gtksizegroup.c: Add "size group" facility
3408         allowing the requisitions of multiple widgets to be grouped
3409         together.
3410
3411         * tests/testgtk.c: Add GtkSizeGroup test
3412
3413         * demos/gtk-demo/sizegroup.c: Add GtkSizeGroup demo.
3414
3415         * demos/gtk-demo/main.c demos/gtk-demo/pixbufs.c: Fix some
3416         warnings.
3417
3418         * configure.in: Switch to using AM_GLIB_GNU_GETTEXT.
3419
3420 2001-04-28  Martin Baulig  <baulig@suse.de>
3421
3422         * gtk/gtkimagemenuitem.[ch]: Renamed gtk_image_menu_item_add_icon()
3423         to gtk_image_menu_item_set_icon() and made it work if there's already
3424         an image.
3425         (gtk_image_menu_item_new): This function doesn't take any arguments anymore.
3426         (gtk_image_menu_item_new_with_label): New function.
3427
3428 Thu May 17 16:20:04 2001  Jonathan Blandford  <jrb@redhat.com>
3429
3430         * demos/gtk-demo/main.c (fontify): It's the worlds ugliest
3431         highlighting code!!!!  The result is okay so long as you don't try
3432         to stress it.  It also highlights a bug in the TextView so it's in
3433         an unproportional font right now until it's fixed.
3434
3435         *demos/gtk-demo/*.c: Clean up code a bit to make it
3436         ugly-parser(TM) friendly. (-:
3437
3438 2001-05-17  Joe Shaw  <joe@ximian.com>
3439
3440         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Remove the assertions
3441         that x_offset and y_offset must be >= 0. Clip the cursor being drawn
3442         if it is only partially onscreen.
3443
3444 Thu May 17 17:10:13 2001  Owen Taylor  <otaylor@redhat.com>
3445
3446         * gtk/gtkentry.c: Make logical motion and deletion by graphemes, 
3447         not by characters.
3448
3449         * gtk/gtkentry.c: Handle "trailing" returns from Pango when they
3450         are not zero or one; that is, when graphemes of multiple characters
3451         are involved.
3452
3453         * gtk/gtktextlayout.c (line_display_index_to_iter): Remove unnecessary
3454         FIXME.
3455
3456 2001-05-17  Alexander Larsson  <alla@lysator.liu.se>
3457         
3458         * gtk/gtkbbox.c:
3459         Add properties, based on patch by Lee Mallabone.
3460
3461         * gtk/gtknotebook.c:
3462         * gtk/gtktoolbar.c:
3463         Convert from GtkArg to GParam, based on patch by John Margaglione.
3464         
3465         * gtk/gtkhscale.c:
3466         * gtk/gtkvscale.c:
3467         * gtk/gtkhscrollbar.c:
3468         * gtk/gtkvscrollbar.c:
3469         * gtk/gtkrange.c:
3470         Move adjustment property to GtkRange.
3471
3472         * gtk/gtklabel.c:
3473         Setup mnemonics on property changes
3474
3475         * gtk/gtkwidget.c (gtk_widget_get_property):
3476         GdkExtensionMode is an enum, not a flag. Set it with
3477         g_value_set_enum ().
3478
3479         * tests/prop-editor.c:
3480         Better propery editor.
3481
3482         * tests/testgtk.c:
3483         Add new property test. Pass zero to the property editor to
3484         get properties from all derived types.
3485         
3486 Sun May 13 12:01:12 2001  Owen Taylor  <otaylor@redhat.com>
3487
3488         * autogen.sh (have_automake): Require libtool-1.4,
3489         automake-1.4p1.
3490
3491         * acinclude.m4: Remove libtool macros.
3492
3493         * gdk-pixbuf/Makefile.am: Add dependencies to loade
3494         modules.
3495
3496         * gdk/Makefile.am: Add dependency on libgdk_pixbuf.la
3497         for libgdk.
3498
3499         * gtk/Makefile.am: Add dependency on libgdk_pixbuf.la
3500         libgdk.la for libgtk.
3501
3502         * modules/input/Makefile.am: Make modules have full
3503         dependencies.
3504
3505 Wed May 16 14:06:01 2001  Jonathan Blandford  <jrb@redhat.com>
3506
3507         * gtk/gtktreemodel.c (gtk_tree_path_new_from_string): fix bug
3508         #54699 where paths weren't being checked for correctness.
3509
3510 Tue May 15 20:13:24 2001  Jonathan Blandford  <jrb@redhat.com>
3511
3512         * gtk/gtktreeviewcolumn.c: You can now set all sorts of properties
3513         in any order you wan, whether or not the column is added to the
3514         tree, or the tree is realized.  Yay!
3515
3516         * gtk/gtktreeviewcolumn.c
3517         (gtk_tree_view_column_setup_sort_column_id_callback): handle
3518         sorting columns a lot saner
3519
3520         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_reorderable):
3521         new function to actually set wether or not a column is
3522         reorderable.
3523
3524         * gtk/gtktreeview.c (gtk_tree_view_unrealize): Only destroy things
3525         if we have 'em.
3526
3527         * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_set_tree_view):
3528         Fix nasty bug where we were showing the button just before
3529         realizing it.  As a result, the parent window was
3530         tree_view->window instead of tree_view->priv->header_window.
3531
3532         * gtk/gtktreeview.c (gtk_tree_view_set_reorderable): new property
3533         to let you easily reorder a list or tree.
3534
3535 2001-05-15  Alexander Larsson  <alla@lysator.liu.se>
3536
3537         * gtk/gtkpacker.c: Apply patch from John Margaglione that converts
3538         from args to properties.
3539
3540 Tue May 15 10:11:59 2001  Owen Taylor  <otaylor@redhat.com>
3541
3542         * gtk/gtkpreview.c: Apply patch from John Margaglione converting
3543         from args to properties. (#51957)
3544
3545         * gtk/gtkscale.c (gtk_scale_class_init): Move install property
3546         calls to after ->set_property call.
3547
3548 Mon May 14 14:56:21 2001  Owen Taylor  <otaylor@redhat.com>
3549
3550         * tests/prop-editor.c: Block against redundant changes.
3551
3552         * gtk/gtkpaned.c gtk/gtk[hv]paned.c: Add position, position_set
3553         properties.
3554
3555 Sun May 13 18:40:04 2001  Owen Taylor  <otaylor@redhat.com>
3556
3557         * gdk/gdkpixmap.h: Remove creative formatting.
3558
3559 Thu May 10 19:22:28 2001  Owen Taylor  <otaylor@redhat.com>
3560
3561         * gtk/gtktogglebutton.c:  Patch from John Margaglione converting to
3562         property API. (#51669)
3563
3564         * gtk/gtkscale.c: Patch from John Margaglione converting to
3565         property API. (#51891)
3566
3567         * gtk/gtkaccellabel.c: Applied patch from Lee Mallabone, converting
3568         to property API. (#50985)
3569
3570 Fri May 11 20:13:44 2001  Tim Janik  <timj@gtk.org>
3571
3572         * gtk/gtkmain.c (gtk_main_do_event): remember widget's double
3573         buffering state across expose event, so we still call end_paint().
3574
3575 2001-05-11  Alexander Larsson  <alexl@redhat.com>
3576
3577         * gtk/gtkhsv.c (paint_triangle):
3578         Expose the ring in the triangle at the correct place when
3579         exposing just a part of the triangle.
3580
3581         * gtk/gtkwindow-decorate.c (gtk_decorated_window_focus_change):
3582         Return FALSE, or window focusing will not work.
3583
3584 2001-05-11  Havoc Pennington  <hp@pobox.com>
3585
3586         * gtk/gtkimage.c (gtk_image_new_from_stock): docs, fixes bug
3587         #54144
3588
3589         * gtk/gtkcolorsel.c (gtk_color_selection_new): docs, fixes
3590         bug #54330
3591
3592 Fri May 11 02:53:57 2001  Tim Janik  <timj@gtk.org>
3593
3594         * gtk/gtktogglebutton.c (gtk_toggle_button_expose): don't
3595         propagate exposes to NULL child.
3596
3597         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed): guard
3598         against not having one of the scrollbars.
3599
3600         * gtk/gtklabel.c (gtk_label_setup_mnemonic): clean up after us,
3601         we don't keep a mnemonic window if we have no mnemonic installed.
3602
3603 Fri May 11 01:05:00 2001  Tim Janik  <timj@gtk.org>
3604
3605         * gtk/gtktypeutils.h: grum, gtk_type_class() is not GNUC_CONST
3606         it has the _important_ side effect of initializing a class.
3607
3608 2001-05-10  Alexander Larsson  <alexl@redhat.com>
3609
3610         * gdk/linux-fb/gdkprivate-fb.h:
3611         Make sure you can compile out the implementation/wrapper assert
3612         macros.
3613
3614         * gdk/linux-fb/gdkdrawable-fb2.c:
3615         Check implementation/wrappers, initialize type for pixmap dummys.
3616
3617         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image):
3618         Hide the cursor if reading from the screen.
3619
3620         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic):
3621         Fix sign bug in tiling code.
3622
3623         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_clear_area):
3624         Handle background pixmaps.
3625
3626 Wed May  9 15:27:22 2001  Jonathan Blandford  <jrb@redhat.com>
3627
3628         * gtk/gtktreeview.c (gtk_tree_view_set_column_drag_function): New
3629         function to let user control where columns are dragged.
3630
3631         * gtk/gtktreeview.c (gtk_tree_view_key_press): Cancel drags if
3632         Escape is pressed.
3633
3634 Wed May  9 09:08:44 2001  Jonathan Blandford  <jrb@redhat.com>
3635
3636         * gtk/gtktreeview.c (gtk_tree_view_class_init): New
3637         "columns_changed" signal.
3638         (gtk_tree_view_motion_draw_column_motion_arrow): Change column
3639         motion code to draw arrows to the side if indicator is outside the
3640         widget.
3641         (gtk_tree_view_map_expanded_rows): Implement.
3642
3643 2001-05-07  Alexander Larsson  <alexl@redhat.com>
3644
3645         * demos/testpixbuf-save.c: 
3646         * demos/testpixbuf-drawable.c:
3647         Include gdkfb.h on linux-fb.
3648
3649 2001-05-07  Alexander Larsson  <alexl@redhat.com>
3650
3651         * gdk/linux-fb/gdkdnd-fb.c (get_toplevel_window_at):
3652         New function for getting toplevel window at position.
3653         (gdk_drag_find_window): Use get_toplevel_window () instead
3654         of gdk_window_get_pointer(). (gdk_drag_status): Use
3655         correct context for getting window.
3656
3657         * gdk/linux-fb/gdkproperty-fb.c (gdk_atom_name):
3658         g_strdup the atom name.
3659
3660         * gdk/linux-fb/gdkwindow-fb.c:
3661         Costmetic fix.
3662
3663         * gtk/gtkdnd.c (gtk_drag_source_handle_event):
3664         Add code for changing cursor on linux-fb backend (same as
3665         win32).
3666
3667 2001-05-07  Federico Mena Quintero  <federico@ximian.com>
3668
3669         * gtk/gtkwindow.c (gtk_window_focus): Test for bin->child being
3670         present before doing anything with it.  Patch from HÃ¥vard KvÃ¥len
3671         <havardk@netcom.no>.  Fixes Ximian bugzilla #2492 (OK, the bug
3672         report was not for the development branch of GTK+, but it applies
3673         anyways).
3674
3675 2001-05-04  Havoc Pennington  <hp@redhat.com>
3676
3677         * configure.in: fix some shell typos
3678
3679         * gtk/gtkcolorsel.c (gtk_color_selection_destroy): warning fix
3680
3681         * gtk/gtkimage.c: handle animations
3682
3683         * gtk/gtkcheckbutton.c (gtk_check_button_size_request): request
3684         border_width * 2, not just border_width
3685
3686         * gtk/gtkscale.c: add "format_value" signal to allow people
3687         to override the way values are drawn.
3688         (gtk_scale_get_value_size): fix width/height mistake,
3689         and compute size from actual displayed text, not 
3690         from made-up text.
3691
3692         * gtk/gtktexttag.c (gtk_text_tag_class_init): fix return type in 
3693         signal registration
3694
3695         * tests/testtext.c: Add "Remove all tags" menu item for testing
3696
3697         * gtk/gtktextbuffer.c (gtk_text_buffer_remove_all_tags): implement
3698
3699         * demos/gtk-demo/main.c (main): add hack so we can find modules
3700         without installing gtk
3701
3702         * demos/gtk-demo/textview.c (insert_text): demo font scaling
3703
3704         * gtk/gtkcellrenderertext.c: Add "scale" property (font scaling
3705         factor)
3706         (gtk_cell_renderer_text_set_property): remove some bogus
3707         g_object_notify
3708
3709         * gtk/gtktexttag.c: add "scale" property which is a font scaling
3710         factor
3711
3712         * gtk/gtktextlayout.c (add_text_attrs): add font scale attribute 
3713         to layout
3714
3715         * gtk/gtktextiter.c (gtk_text_iter_is_start): rename from
3716         gtk_text_iter_is_first
3717
3718 2001-01-06  Hans Breuer  <hans@breuer.org>
3719
3720         * gdk/gdk.def : updated exports
3721
3722         * gdk/win32/makefile.msc : -DGDK_ENABLE_BROKEN otherwise
3723         gdk won't compile anymore
3724  
3725         * gdk/win32/gdkevents-win32.c : initialize ret_val when
3726         processing GDK_FILTER functions, initialize event.key->hardware_keycode.
3727         Improved gdk_flush () to not only do pending drawing operations
3728         but also process all currently pending events. This should make
3729         the behaviour more similar to the X11 version.  
3730
3731         * gdk/win32/gdkgc-win32.c (predraw_set_background) : a background
3732         option needs to be set even if there is no GDK_GC_BACKGROUND.
3733         (gdk_win32_hdc_get) : use predraw_set_background () independent
3734         of value_mask. This allows to draw dashed lines leaving the original
3735         background intact.
3736
3737         * gdk/win32/gdkimage-win32.c (gdk_image_new_bitamp) : free data
3738         after processing, because we can't reuse it as the X11 version does.
3739
3740         * gtk/gtk.def : updated exports
3741
3742         * gtk/makefile.msc.in : added ATK, removed all test apps. (I
3743         would like to get rid of this file again, and use straight
3744         makefile.msc again, as the other Gtk+ subdirs do)
3745
3746         * test/makefile.msc (new file) : build the test apps here
3747
3748 2001-05-05  ERDI Gergo  <cactus@cactus.rulez.org>
3749
3750         * gdk/gdkpango.c (gdk_pango_get_item_properties): Peek
3751         strike-through setting
3752         (gdk_draw_layout_line_with_colors): Render strike-through
3753
3754 Sat May  5 10:06:24 2001  Owen Taylor  <otaylor@redhat.com>
3755
3756         * Release 1.3.5
3757
3758         * configure.in (GTK_MICRO_VERSION): Up to 1.3.5
3759
3760         * NEWS: Updated
3761
3762         * demos/gtk-demo/Makefile.am (EXTRA_DIST): Fix minor
3763         Makefile breakage.
3764
3765 Sat May  5 09:18:30 2001  Owen Taylor  <otaylor@redhat.com>
3766
3767         * demos/gtk-demo/images.c (progressive_timeout): Fix
3768         typo in filename.
3769
3770         * gtk/gtktreeview.c (gtk_tree_view_row_activated): Comment
3771         out FIXME warning; just too annoying.
3772
3773 2001-05-04  Alex Larsson  <alla@lysator.liu.se>
3774
3775         * gdk/linux-fb/gdkcolor-fb.c:
3776         Better error messages.
3777
3778         * gdk/linux-fb/gdkpixmap-fb.c (gdk_pixmap_new):
3779         Initialize abs_x and abs_y.
3780         
3781         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic):
3782         Correct handling of stipple offset.
3783
3784         * gdk/linux-fb/gdkvisual-fb.c (gdk_visual_init):
3785         Treat directcolor framebuffers as truecolor.
3786         
3787 Thu May  3 14:13:49 2001  Owen Taylor  <otaylor@redhat.com>
3788
3789         * INSTALL.in HACKING gtk/gtkaccessible.[ch] gtk/gtk.c: Add
3790         dependency on Atk for accessibility support.
3791
3792         * configure.in **/Makefile.am: Major reworking of substituted
3793         variables for CFLAGS/LIBS to make a lot more sane and 
3794         keep the the compile/link lines a bit shorter.
3795
3796         * gdk/x11/gdkkeys-x11.c: Fix #endif with trailing stuff.
3797
3798 Thu May  3 08:10:54 2001  Owen Taylor  <otaylor@redhat.com>
3799
3800         * gtk/gtktexttag.c (gtk_text_tag_class_init): Fix return
3801         value to be G_TYPE_BOOLEAN, not G_TYPE_INT, also,
3802         use _gtk_boolean_handled_accumulator.
3803
3804 Thu May  3 07:00:09 2001  Owen Taylor  <otaylor@redhat.com>
3805
3806         * gtk/gtktextview.c: Patch from Juan Pablo Mendoza Mendoza
3807         to fix things so clicking inside selection leaves cursor
3808         at point where clicked. (#50324)
3809
3810         * gtk/gtksettings.c (gtk_settings_class_init): Restore
3811         sane value for default double click time.
3812
3813         * tests/testtext.c (test_init): Really path to input modules.
3814
3815 2001-05-03  Sven Neumann  <sven@convergence.de>
3816
3817         * demos/testpixbuf-save.c: include target-specific headers as
3818         done in testpixbuf-drawable.c
3819
3820 Wed May  2 20:36:38 2001  Owen Taylor  <otaylor@redhat.com>
3821
3822         * gtk/gtkentry.c (gtk_entry_real_insert_text): Reduce
3823         new_text_length appropriately when we run into the 
3824         size limit for the entry. (#53445, reported by Jeff Franks)
3825
3826         * tests/testgtk.c (create_entry): Remove most of the
3827         property toggle buttons. Replace with a "Props" button
3828         that brings up a property editor.
3829
3830         * tests/prop-editor.[ch] test/testtreeview.c tests/Makefile.am:
3831         Split the property editor code out for reuse, improve.
3832
3833 Wed May  2 17:26:22 2001  Owen Taylor  <otaylor@redhat.com>
3834
3835         * gdk/x11/gdkevents-x11.c gdk/x11/gdkwindow-x11.c: Always
3836         trap errors around calls to XSetInputFocus since we have
3837         no way of knowing reliably whether we are viewable or
3838         not. (#53947)
3839
3840 Tue May  1 09:21:23 2001  Jonathan Blandford  <jrb@redhat.com>
3841
3842         * gtk/gtktreeview.c (gtk_tree_view_button_release_drag_column):
3843         fix bug in dropping columns.  Moving columns now basically works
3844         modula some fine tuning.
3845
3846 Tue May  1 19:09:21 2001  Jonathan Blandford  <jrb@redhat.com>
3847
3848         * gtk/gtktreeview.c (gtk_tree_view_horizontal_autoscroll): Add
3849         autoscroll support.  It mostly works, but could use some fine
3850         tuning.
3851         * gtk/gtktreeview.c (gtk_tree_view_button_release_drag_column):
3852         Actually move the column.
3853
3854 Mon Apr 30 20:29:27 2001  Owen Taylor  <otaylor@redhat.com>
3855
3856         * gtk/gtkbutton.c gtk/gtkcheckbutton.c gtk/gtkoptionmenu.c 
3857           gtk/gtkspinbutton.c gtk/gtkstyle.c gtk/gtkwidget.c:
3858           New default theme! A slighly improved version of the 2.0 Raleigh
3859           theme, with Windows-esque focus/drawing default. 
3860           (GtkWidget::interior_focus defaults to TRUE.)
3861
3862         * gtk/gtkstyle.[ch]: Add a text_aa color halfway between text and base.
3863
3864 2001-04-30  Havoc Pennington  <hp@pobox.com>
3865
3866         * tests/testtext.c (line_numbers_expose): fix to work with
3867         gtk_paint_layout change
3868
3869 Mon Apr 30 19:18:07 2001  Owen Taylor  <otaylor@redhat.com>
3870
3871         * gtk/gtkstyle.[ch] gtk/gtkaccellabel.c gtk/gtkcellrenderertext.c
3872           gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c gtk/gtkprogressbar.c
3873           gtk/gtkvruler.c gtk/gtkvscale.c: Add an extra parameter
3874           use_text to gtk_paint_label() to deal with style->bg[] vs style->text[].
3875
3876         * gtk/gtkbbox.c gtk/gtkdialog.c: Tweak padding some to deal
3877           with GtkWidget::interior_focus = TRUE better.
3878
3879         * gtk/gtkbutton.c: Switch ::default_spacing to ::default_border,
3880         ::default_outside_border for more flexibility.
3881
3882         * gtk/gtkwidget.c (gtk_widget_style_get_valist): Remove 
3883         G_VALUE_NO_COPY_CONTENTS, to correspond with the recent
3884         change that had to be made with g_object_get.
3885
3886 Sun Apr 29 20:13:40 2001  Jonathan Blandford  <jrb@redhat.com>
3887
3888         * gtk/gtktreeview.c (gtk_tree_view_get_columns): new function.
3889         (gtk_tree_view_move_column_after): Clean up interface. 
3890
3891 Sun Apr 29 03:02:02 2001  Tim Janik  <timj@gtk.org>
3892
3893         * gtk/gtkpacker.h:
3894         * gtk/gtkenums.h: moved GtkAnchorType and GtkSideType from gtkpacker.h
3895          to gtkenum.h.
3896
3897         * gtk/gtkmain.c (gtk_main_do_event): silence compiler (GDK_SETTING not
3898         handled in switch).
3899
3900         * gtk/Makefile.am:
3901         (gtk.defs): generate enum portions with  glib-mkenums.
3902         (gtktypebuiltins_evals.c): generate this with glib-mkenums.
3903         got rid of makeenums.pl and makeenums.awk in distributed tarballs.
3904         
3905         * gtk/gtkaccelgroup.c (gtk_accel_group_add): refined havocs warning
3906         addition.
3907
3908         * docs/Changes-2.0.txt: keep a note on signal handlers now
3909         not getting emitted during the emission they were connected within.
3910
3911 2001-04-28  Havoc Pennington  <hp@pobox.com>
3912
3913         * gtk/gtkcolorsel.c (palette_new): fix bug in tooltip
3914
3915 2001-04-24  Havoc Pennington  <hp@redhat.com>
3916
3917         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_previous_line): 
3918         (gtk_text_layout_move_iter_to_next_line): fix these two for
3919         invisible text, lots of other stuff still hosed.
3920
3921         * gtk/gtkcolorsel.c (gtk_color_selection_set_change_palette_hook):
3922         new function, replaces the get/set palette stuff. This function 
3923         is intended for use by libgnomeui which should set the hook to a
3924         thing which sets the palette in GConf, and we need the
3925         GConf-to-xsettings proxy which will result in the change being
3926         propagated back to the GTK app.
3927
3928         * gtk/gtkaccelgroup.c (gtk_accel_group_add): add note to warning 
3929         about unusable signals that it may be because the signal has 
3930         parameters.
3931
3932         * gtk/gtkwidget.c (gtk_widget_modify_style): always copy the
3933         style, otherwise gtkrc.c won't know to create a new GtkStyle for
3934         it.
3935         (gtk_widget_modify_color_component): call
3936         gtk_widget_modify_style() so the rc style will get copied.
3937         (gtk_widget_modify_font): ditto
3938
3939         * gtk/gtkrc.c: make a couple variables static
3940
3941         * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): hide
3942         help button by default, since it does nothing
3943
3944         * gtk/gtkcolorsel.c: add tooltips, work on key navigation, fool
3945         around with UI
3946
3947         * gtk/gtkentry.c (gtk_entry_realize): request enter/leave notify
3948         so we can have tooltips
3949
3950         * gtk/gtkhsv.c (gtk_hsv_realize): request enter/leave notify so we
3951         can have tooltips
3952
3953         * gdk/gdkimage.h: mark gdk_image_new_bitmap with
3954         GDK_ENABLE_BROKEN, because its memory behavior is completely
3955         hosed.
3956
3957         * gtk/gtknotebook.c: remove key press handler, replace with
3958         binding set, add numeric keypad support
3959
3960         * gtk/gtktextview.c (gtk_text_view_class_init): accept KP_Delete
3961
3962         * gtk/gtktext.c (gtk_text_key_press): add a bunch of KP keysyms
3963
3964         * gtk/gtkentry.c (gtk_entry_class_init): accept GDK_KP_Delete in
3965         addition to plain Delete
3966
3967         * gtk/gtktextview.c (gtk_text_view_key_press_event): accept
3968         GDK_KP_Enter in addition to GDK_Return
3969
3970         * gtk/gtkfontsel.c (gtk_font_selection_size_key_press): connect to
3971         activate on entry instead of key press
3972         (gtk_font_selection_on_clist_key_press): get
3973         rid of this signal handler, not needed with new font sel.
3974
3975         * gtk/gtkfilesel.c (gtk_file_selection_key_press): remove a
3976         no-longer-needed emit_stop_by_name(), just return TRUE
3977
3978         * gtk/gtkhscrollbar.c, gtk/gtkvscrollbar.c: remove keybindings
3979         cruft, this widget is no longer focusable.
3980
3981         * gtk/gtkrange.h, gtk/gtkrange.c, gtk/gtkvscale.c,
3982         gtk/gtkhscale.c: Get rid of trough_keys virtual function, add
3983         move_slider action signal, add binding set for vscale/hscale, in
3984         the process support numeric keypad
3985
3986         * gtk/gtkentry.c (gtk_entry_class_init): Add keypad bindings; 
3987         make GDK_Return and GDK_KP_Enter activate the entry via 
3988         binding set, instead of hardcoded.
3989
3990 Fri Apr 27 20:27:21 2001  Jonathan Blandford  <jrb@redhat.com>
3991
3992         * gtk/gtktreeview.[hc]: Massive reorder/cleanup of a lot of the
3993         code.  Some documentation added.
3994
3995 2001-04-27  Havoc Pennington  <hp@redhat.com>
3996
3997         * gtk/gtkcombo.c (gtk_combo_popup_button_press): fix warning
3998
3999         * gtk/gtkmessagedialog.c (gtk_message_dialog_init): make messages selectable
4000
4001         * gtk/gtkentry.c (gtk_entry_real_insert_text): don't strip
4002         line/para separators
4003         (gtk_entry_create_layout): set single paragraph mode on the layout
4004
4005         * gtk/gtkbutton.c (gtk_button_new_from_stock): don't put much
4006         spacing between the image and label; instead, inside a button box 
4007         the button will get extra space that will go there, but if people 
4008         configure button box for 0 chubbiness, then there's no spacing.
4009
4010         * gtk/gtkbbox.c (gtk_button_box_class_init): Make child ipadding
4011         and min/max size style properties, so people can tune their
4012         chubbiness.
4013
4014         * tests/testgtk.c (make_toolbar): remove calls to removed toolbar
4015         functions
4016
4017         * gtk/gtktoolbar.c (gtk_toolbar_class_init): Make space_size,
4018         space_style, and button_relief into style properties, remove
4019         functions for setting them
4020         
4021         * gtk/gtkmenu.c (gtk_menu_key_press): handle menu bar accel to pop 
4022         it back down
4023
4024         * gtk/gtkoptionmenu.c (gtk_option_menu_get_props): free boxed
4025         types from gtk_widget_style_get
4026
4027         * gtk/gtkmenubar.c (gtk_menu_bar_set_shadow_type): Remove, replace
4028         with a style property.
4029
4030         * gdk/x11/gdkevents-x11.c: namespace the settings
4031
4032         * gtk/gtkmenubar.c: Add F10 accelerator to move between menubars.
4033
4034         * gtk/gtksettings.c (gtk_settings_class_init): remove code with
4035         side effects from inside g_assert(), so that G_DISABLE_ASSERT can
4036         be used. Also, translate doc strings for settings. Also, namespace
4037         the double-click-time property. Also, remove bell properties crap.
4038
4039 2001-04-27  Sven Neumann  <sven@gimp.org>
4040
4041         * Makefile.am: before creating links, check if pkg-config files
4042         exist for the default target. Otherwise link to the pkg-config files
4043         that got installed with this build.
4044
4045 Thu Apr 26 19:11:46 2001  Jonathan Blandford  <jrb@redhat.com>
4046
4047         * gtk/gtktreeview.c (gtk_tree_view_motion): clean up column
4048         dragging code.  Revealed some (potential) GdkWindow bugs.
4049
4050         * gdk/x11/gdkwindow-x11.c (gdk_window_reparent): add
4051         _gdk_window_init_position to the end of reparent to fix the case
4052         of reparenting when new_x != old_x and new_y != old_y.
4053
4054 Thu Apr 26 10:54:50 2001  Owen Taylor  <otaylor@redhat.com>
4055
4056         * gtk/gtkentry.c (strstr_len): Fix optimization that
4057         was correct for the use here, but completely incorrect
4058         in general.
4059
4060 Thu Apr 26 10:40:41 2001  Owen Taylor  <otaylor@redhat.com>
4061
4062         * gtk/gtkwindow.h: Remove deprecation of gtk_window_set_default_size()
4063         until patch adding gtk_window_set_size() is recommitted. 
4064
4065         * **Makefile.am configure.in gdk/x11/gdkim-11.c
4066           gtk/gtkmain.c gtk/gtkimmulticontext.c gtk/gtkmain.c
4067           gtk/gtkrc.c: Remove all traces of -DX_LOCALE support.
4068           (#10784)
4069
4070 Wed Apr 25 12:16:36 2001  Owen Taylor  <otaylor@redhat.com>
4071
4072         * gdk/X11/gdkevents-x11.c (gdk_event_translate): Test for 
4073         window == NULL in a number of cases.
4074
4075         * tests/testdnd.c: Set module path for gdk-pixbuf.
4076
4077 Thu Apr 19 16:11:07 2001  Owen Taylor  <otaylor@redhat.com>
4078
4079         * gtk/Makefile.am xembed.h: File containing #defines
4080         for XEMBED protocol.
4081
4082         * gtk/gtkplug.[ch] gtk/gtksocket.[ch]: 
4083
4084         - Change protocol from old plug/socket specific protocol
4085           to XEMBED draft
4086         - Various fixes to work with GTK+-2.0
4087
4088         Still quite a bit of work to do here to handle initiation
4089         from the socket side (as specified by XEMBED), to handle
4090         the more advanced features of XEMBED, and to figure out
4091         a good way to handle same-app embedding with less overhead
4092         than using full XEMBED.
4093
4094 Wed Apr 18 16:04:28 2001  Owen Taylor  <otaylor@redhat.com>
4095
4096         * gtk/gtkwindow.[ch] (gtk_window_real_set_focus): Keep
4097         track of whether the toplevel has the focus; only send
4098         focus-in events to the focus widget when the window
4099         actually has the focus.
4100
4101 2001-04-25  Havoc Pennington  <hp@pobox.com>
4102
4103         * gtk/gtkwindow.h: set_decorations_hint and set_functions_hint
4104         were still in the header
4105
4106 2001-04-24  Alexander Larsson  <alexl@redhat.com>
4107
4108         * gtk/gtkclist.[ch]:
4109         * gtk/gtkctree.c:
4110         When there is a row highlighted for D'n'D it must alse
4111         be painted hightlighted on exposes. Otherwise exposes from
4112         the icon being dragged will mess up the hightlight.
4113
4114         * gtk/gtkfontsel.c:
4115         Don't recenter selected font when exposing the font family
4116         clist. This means you can now actually scroll the font family
4117         list.
4118
4119         * gtk/gtknotebook.c:
4120         Fix focus movement on scrolling tabs that are placed on the left
4121         and right.
4122
4123 2001-04-21  Havoc Pennington  <hp@pobox.com>
4124
4125         * gtk/gtktextdisplay.c (gtk_text_layout_draw): handle 0-height
4126         empty/invisible lines.
4127
4128         * gtk/gtktextiter.c (gtk_text_iter_set_visible_line_offset)
4129         (gtk_text_iter_set_visible_line_index): new functions to set
4130         indexes excluding invisible text
4131
4132         * gtk/gtktextlayout.c (line_display_iter_to_index): get visible 
4133         index
4134
4135         * gtk/gtktextiter.c (gtk_text_iter_get_visible_line_index)
4136         (gtk_text_iter_get_visible_line_offset): new functions to 
4137         get indexes excluding invisible text
4138
4139         * gtk/gtkmessagedialog.c (gtk_message_dialog_init): strip out a
4140         bunch of extra padding that served no purpose
4141
4142         * gtk/gtkdialog.c: Make all the spacings configurable via style
4143         properties, for chubbiness configuration in themes
4144
4145         * tests/testtext.c: fix path to the immodules.
4146         
4147 Mon Apr 23 18:57:03 2001  Jonathan Blandford  <jrb@redhat.com>
4148
4149         * gtk/gtksocket.c (gtk_socket_filter_func): add missing '}' that
4150         got munched by #endif.
4151
4152         * gtk/Makefile.am (gtk_plug_c_sources): add missing '\'
4153
4154         * gtk/gtktreeview.c: Refactored code to clean up a number of
4155         events.
4156
4157         * gtk/gtktreemodel.c (gtk_tree_path_compare): Switched return
4158         values to make consistent with other functions.  Spotted by Jeff
4159         Franks <jcf@tpg.com.au>.
4160
4161         * gtk/gtktreeview.h (struct _GtkTreeViewClass): Fixes to signal
4162         declaration spotted by Jeff Franks <jcf@tpg.com.au>.
4163
4164 2001-04-23  Sven Neumann  <sven@gimp.org>
4165
4166         * gtk/Makefile.am
4167         * gtk/gtkplug.c
4168         * gtk/gtksocket.c: on request of Owen, reverted my last change 
4169         and exclude gtkplug.c/gtksocket.c from the build for non-X11 targets
4170
4171 2001-04-23  Sven Neumann  <sven@gimp.org>
4172
4173         * gtk/gtkplug.c: put into #ifdef GDK_WINDOWING_X11 to make GTK+
4174         compile for non-X11 targets again
4175
4176 2001-04-20  Alexander Larsson  <alexl@redhat.com>
4177
4178         * gtk/gtkcolorsel.[ch]:
4179         API Change. Take GdkColor arguments instead of gdouble *.
4180         Leave the old gtk_color_selection_set_color for compatibility,
4181         but marked deprecated.
4182         Do correct rounding when converting RGB <-> HSV.
4183         
4184         * gtk/gtkcolorseldialog.c:
4185         * tests/testgtk.c:
4186         Use new GtkColorSelection API.
4187
4188         * gtk/gtkhsv.c:
4189         Fix problem selecting colors in triangle when Hue is 330.
4190         Fix some black dots around the HSB triangle.
4191         
4192         * gtk/gtkfilesel.c:
4193         return FALSE from the focus_in_event handler to fix focus problems.
4194
4195 2001-04-18  Havoc Pennington  <hp@redhat.com>
4196
4197         * gtk/gtkwindow.c (gtk_window_class_init): add signals and binding
4198         set, so keybindings are configurable    
4199         (gtk_window_activate_default): Change to activate the focus widget
4200         instead if there's a focus widget, to be consistent with the
4201         behavior that previously existed in key_press_event
4202
4203 2001-04-18  Havoc Pennington  <hp@redhat.com>
4204
4205         * gdk/gdkkeyuni.c: Handle numeric keypad keysyms; bug #50201
4206
4207 2001-04-18  Havoc Pennington  <hp@redhat.com>
4208
4209         Close bug #50615:
4210         
4211         * gtk/gtkstyle.c (gtk_default_draw_layout): Use text_gc to draw
4212         the layout
4213
4214         * gtk/gtktext.c: Use base/text instead of bg/fg throughout
4215
4216         * gtk/gtkentry.c: Use base/text instead of bg/fg throughout
4217
4218         * gtk/gtktextdisplay.c: Use base/text instead of bg/fg throughout
4219         
4220         * gtk/gtkstyle.c (gtk_style_init): make GTK_STATE_SELECTED default
4221         to blue for base, in addition to bg
4222         
4223 2001-04-18  Havoc Pennington  <hp@redhat.com>
4224
4225         * tests/testgtk.c (create_image): allow shrinking the image window
4226         to test that we clip to allocation.
4227
4228         * gtk/gtkimage.c (gtk_image_expose): clip to allocation,
4229         #9845
4230
4231         * gtk/gtkenums.h: move GtkWrapMode in here, #50472
4232
4233 Wed Apr 18 14:23:14 2001  Owen Taylor  <otaylor@redhat.com>
4234
4235         * gdk/x11/gdkimage-x11.c (gdk_image_new): Try changing
4236         mode on shm segments to 0600. We'll see who complains.
4237
4238         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Call
4239         _gdk_windowing_window_destroy() AFTER recursing through
4240         children.
4241
4242         * tests/Makefile.am (noinst_PROGRAMS): Build testsocket,
4243         testsocket_child on X.
4244
4245         * tests/testsocket[_child].c: Fix uses of
4246         gtk_window_get_default_accel_group().
4247
4248         [ Merge patch from Ramiro Estrugo  <ramiro@eazel.com> from gtk-1-2 ]
4249
4250         * gdk/gdkimage.c: (gdk_image_get):
4251         Deal with the possibility that XGetImage() might return NULL.
4252         Allocate the GdkImagePrivate structure only after XGetImage()
4253         succeeds in order not to dereference a NULL ximage pointer.  This
4254         prevents a core dump when XGetImage() fails - which is unlikely,
4255         but can happen due to race conditions accessing the geometries of
4256         drawables.  An x error will still be triggered, but the gdk image
4257         wrapper at least wont seg fault.
4258         
4259 2001-04-18  Havoc Pennington  <hp@redhat.com>
4260
4261         * gtk/gtkimage.c: fix to properly queue resizes when the image is
4262         set
4263
4264         * gtk/gtktextview.c (gtk_text_view_do_popup): desensitize Paste
4265         if the insertion point isn't editable
4266
4267         * demos/gtk-demo/images.c: Added a GtkImage demo
4268
4269         * demos/gtk-demo/drawingarea.c: drawing area demo
4270         
4271         * demos/gtk-demo/menus.c (create_menu): cleanups
4272
4273 Wed Apr 18 12:15:52 2001  Owen Taylor  <otaylor@redhat.com>
4274
4275         * gdk/x11/gdkwindow-x11.c gdk/x11/gdkwindow-x11.h 
4276           gdk/x11/gdkevents-x11.c: Introduce an extra child
4277         of toplevel windows that serves to hold the focus to
4278         avoid events being delivered to embedded windows.
4279
4280         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Introduce
4281         some extra variables to clean up code and reduce the
4282         number of casts.
4283
4284         * gdk/x11/gdkwindow-x11.h (struct _GdkXPositionInfo): Use
4285         guint for 1 bit bit fields, not gboolean.
4286
4287 Wed Apr 18 10:04:23 2001  Owen Taylor  <otaylor@redhat.com>
4288
4289         * gtk/gtktooltips.c (gtk_tooltips_paint_window): Return FALSE,
4290         not TRUE. (Fixes #52925)
4291
4292 Tue Apr 17 18:05:34 2001  Owen Taylor  <otaylor@redhat.com>
4293
4294         * Released 1.3.4
4295
4296         * NEWS: Updated
4297
4298         * gtk/gtktextview.c (gtk_text_view_class_init): Fix to not
4299         use GTK_TYPE_ENUM.
4300
4301 Tue Apr 17 13:47:12 2001  Owen Taylor  <otaylor@redhat.com>
4302
4303         * configure.in: Don't put -lgthread in GLIB_LIBS, GLIB_DEPLIBS
4304
4305         * gtk/gtktypeutils.h gtk/gtksignals.h: Restore proper parameter
4306         names to compatibility #defines so docs work.
4307
4308         * gtk/gtkenums.h: Remove GtkMenuFactoryType
4309
4310         * gtk/gtkwindow.c gtk/gtkdnd.c: Docs cleanups.
4311
4312         * configure.in: Don't include -lgthread in GLIB_LIBS, GLIB_DEPLIBS
4313
4314         * tests/testgtkrc: No magenta cursors, please.
4315
4316         * README.in INSTALL.in HACKING README.cvs-commits: Updated.
4317
4318         * gtk/gtkenums.h (enum): Remove left over GtkMenuFactoryType.
4319         
4320 Mon Apr 16 14:38:41 2001  Owen Taylor  <otaylor@redhat.com>
4321
4322         * gtk/gtklist.c gtk/gtklistitem.c: Remove explicit pointer
4323         grabs, since they are no longer necessary.
4324
4325         * gtk/gtkcombo.c (gtk_combo_popup_button_press): Fix #52926
4326         by signal_connect() and call gtk_button_pressed() rather
4327         than signal_connect_after().
4328
4329         * tests/testgtk.c: Restore radio menu items to combos 
4330         since they'll look OK with Raleigh, and it is easier
4331         than finishing the process of removing them that was
4332         started earlier.
4333
4334 2001-04-16  Hans Breuer  <hans@breuer.org>
4335
4336         * gdk/gdk.def :
4337         * gtk/gtk.def : added all exports required to link PyGtk 0.7.1
4338
4339         * gdk/gdkfont.h : #define GDK_TYPE gdk_font_get_type ()
4340         we are interested in the functions return value not the function address
4341         * gdk/gdkvisual.h : same for GDK_TYPE_VISUAL
4342
4343         * gtk/makefile.msc.in : reflect movement of GDK_TYPEs from gtk to gdk
4344
4345 2001-04-14  Hans Breuer  <hans@breuer.org>
4346
4347         * gdk/gdk.def :
4348         * gdk/makefile.msc : updated
4349
4350         * gdk/win32/gdkdrawable.win32 (gdk_win32_draw_rectangle) : if modus is 
4351         "fill with tile" do so with new helper function gdk_win32_draw_tiles 
4352         (the testgtk::text backgound pixmap is drawn again)
4353         Changed SetTextAlign before pango_win32_render to TA_BASELINE to reflect 
4354         Win32 Pango change
4355         * gdk/win32/gdkprivate-win32.h : prototype for gdk_win32_draw_tiles
4356
4357         * gdk/win32/gdkproperty-win32.c : first implementation of gdk_setting_get
4358         Not sure if the returned settings have the right unit, because I couldn't
4359         find any docs for the X version ...
4360
4361         * gtk/gtk.def :
4362         * gtk/makefile.msc.in : updated
4363
4364 Thu Apr 12 17:41:17 2001  Owen Taylor  <otaylor@redhat.com>
4365
4366         * gtk-2.0.m4: Fix up to refer to GTK+, not to GLib; fix some
4367         wording problems. (Compared to version from Johannes Stezenbach to
4368         check correctness.)
4369
4370 Thu Apr 12 21:04:26 2001  Tim Janik  <timj@gtk.org>
4371
4372         * gtk/gtktreeview.c (_gtk_tree_view_column_start_drag): get
4373         this to compile.
4374
4375 2001-04-12  Anders Carlsson  <andersca@codefactory.se>
4376
4377         * gtk/gtkcellrenderertextpixbuf.c (gtk_cell_renderer_text_pixbuf_class_init): It's pixbuf_pos,
4378         not pixbufpos.
4379
4380         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render): Fix small typo.
4381
4382         * gtk/gtkcellrenderer.c (gtk_cell_renderer_get_property): xpad and ypad
4383         are unsigned insts, therefore use g_value_set_uint.
4384         (gtk_cell_renderer_set_property): Likewise, use g_value_get_uint.
4385
4386 Sun Apr  8 05:36:06 2001  Jonathan Blandford  <jrb@redhat.com>
4387
4388         * gtk/gtktextview.c (gtk_text_view_class_init): fix a fixme.
4389
4390         * gtk/gtkcellrendertoggle.c: change GTK_TYPE_POINTER to
4391         GTK_TYPE_STRING.
4392
4393         * gtk/gtktreeview.c: New functions to allow initial column
4394         dragging work.
4395
4396         * gtk/gtktreeviewcolumn.c: Initial column dragging support.
4397
4398         * tests/testtreefocus.c: give dave some love.
4399
4400         * tests/testtreesort.c: Modify test to check really long samples.
4401
4402 2001-04-11  Alexander Larsson  <alexl@redhat.com>
4403
4404         * gtk-2.0.m4: Pass pkg-config options
4405         before the other args so it works even if
4406         POSIXLY_CORRECT is set.
4407
4408 Mon Apr  9 19:02:07 2001  Tim Janik  <timj@gtk.org>
4409
4410         * configure.in (GTK_MICRO_VERSION): increment version to 1.3.4 (binary
4411         0, interface 0).
4412
4413 2001-04-04  Denis Oliver Kropp  <dok@convergence.de>
4414
4415         * gtk/gtkcalendar.c (gtk_calendar_button_press):
4416         check for action_func != NULL
4417
4418 2001-04-04  Sven Neumann  <sven@gimp.org>
4419
4420         * tests/testgtk.c (test_init): corrected path to gtk.immodules
4421
4422 Wed Apr  4 09:18:18 2001  Tim Janik  <timj@gtk.org>
4423
4424         * Released Gtk+-1.3.3.
4425
4426 Wed Apr  4 07:42:23 2001  Tim Janik  <timj@gtk.org>
4427
4428         * gdk/Makefile.am (EXTRA_DIST): add makeenums.pl to EXTRA_DIST.
4429
4430 Wed Apr  4 04:13:18 2001  Tim Janik  <timj@gtk.org>
4431
4432         * gtk/stock-icons/Makefile.am: stay in builddir and read/write
4433         files to/from source dir. (if we don't stay in builddir, we
4434         can't reach make-inline-pixbuf.
4435
4436         * gdk/Makefile.am (gdkenumtypes.c): add $(srcdir) to mekeenums.pl
4437         deps.
4438
4439         * configure.in (GTK_MICRO_VERSION): up and away (1.3.3 bin/interface
4440         ages 0).
4441
4442 Tue Apr  3 15:04:45 2001  Jonathan Blandford  <jrb@redhat.com>
4443
4444         * gtk/gtktreemodelsort.h:  removed set_sort_column, as it was
4445         moved to the GtkTreeSortable interface.
4446
4447         * gtk/gtktreeselection.c (gtk_tree_selection_selected_foreach):
4448         Make more efficient (fixes #50262).
4449
4450 Tue Apr  3 13:55:37 2001  Owen Taylor  <otaylor@redhat.com>
4451
4452         * NEWS: Updated.
4453
4454         * configure.in: Remove support for uninstalled glib.
4455
4456         * gtk/gtkdnd.c (gtk_drag_highlight_expose): Return FALSE as
4457         so as not to stop emission.
4458
4459         * gtk-config-2.0.in: Exit with an error message that gtk-config-2.0
4460         is no longer supported.
4461
4462         * Makefile.am gtk/Makefile.am tests/*: Moved all tests
4463         into tests, change build order to build modules before
4464         gtk/.
4465
4466         * modules/input/Makefile.am: Move gtk-query-immodules-2.0 invocation
4467         to here.
4468
4469 Tue Apr  3 13:52:57 2001  Tim Janik  <timj@gtk.org>
4470
4471         * gtk/gtkitemfactory.[hc]: changed gtk_item_factory_dump_items()
4472         and gtk_item_factory_dump_rc() GtkPatternSpec argument to
4473         GPatternSpec. this is actually unlikely to cause breakage in
4474         third-party apps since except for gle, pretty much ever caller
4475         passes NULL here.
4476
4477         * gtk/gtkbindings.[hc]: removed gtk_pattern_*() API.
4478
4479         * *.c: use g_pattern_*() API.
4480
4481         * docs/Changes-2.0.txt: GtkPatternSpec->GPatternSpec updates.
4482
4483         * gtk/gtkstyle.c (gtk_default_draw_resize_grip): assert unhandled
4484         directions aren't passed in.
4485
4486         * gtk/gtksettings.[hc] (_gtk_settings_parse_convert): export conversion
4487         functionality to be usable from gtkstyle.c as well, give precedence
4488         for conversion to user-supplied parsers.
4489         s/_gtk_rc_property_parser_for_type/_gtk_rc_property_parser_from_type/;
4490
4491         * gtk/gtkstyle.c (_gtk_style_peek_property_value): use
4492         _gtk_settings_parse_convert() for rcporperty value conversion.
4493
4494 2001-04-03  Alexander Larsson  <alexl@redhat.com>
4495
4496         * gdk/linux-fb/gdkevents-fb.c:
4497         Add empty gdk_setting_get().
4498
4499 Tue Apr  3 05:09:07 2001  Tim Janik  <timj@gtk.org>
4500
4501         * gtk/gtkmain.c (_gtk_boolean_handled_accumulator): use more elaborate
4502         variable names.
4503         
4504         * gtk/makeenums.pl: touch this so enum files get remade.
4505
4506 Mon Apr  2 19:36:57 2001  Jonathan Blandford  <jrb@redhat.com>
4507
4508         * gtk/gtktreestore.c (gtk_tree_store_init):  Bug fix to make trees
4509         work again when not sorted.
4510
4511         * gtk/gtktreeview.c (gtk_tree_view_class_init): Add "collapse_row"
4512         and "expand_row" signal, closing bug 52578.
4513
4514         * gtk/gtktreeview.c (gtk_tree_view_expand_row): Add signal
4515         support.
4516
4517         * gtk/gtktreeview.c (gtk_tree_view_collapse_row): Add signal
4518         support.
4519
4520 Mon Apr  2 18:18:07 2001  Owen Taylor  <otaylor@redhat.com>
4521
4522         * gdk/gdkevents.h: Add GdkEventSetting event for notification
4523         of changes to system settings, gdk_setting_get() to retrieve
4524         a single system setting.
4525
4526         * gdk/x11/gdkevents-x11.c: Bridge gdk_setting_get() and GdkEventSetting
4527         to the draft XSETTINGS mechanism.
4528
4529         * gdk/x11/xsettings-{common,client}.[ch]: Sample-implementation of
4530         XSETTINGS.
4531
4532         * gtk/gtkmain.c gtk/gtksettings.[ch]: Propagate notification
4533         of GDK settings changes to the GtkSettings object.
4534
4535         * gdk/gdkevents.[ch] gdk/gtk/gtksettings.c: Hook up the
4536         double-click-timeout property to GDK.
4537
4538         * gdk/gdkcolor.[ch] gdk/gdkvisual.h gdk/gdkevent.[ch] gdk/gdkfont.[ch]:
4539         Define GDK boxed types here.
4540
4541         * gdk/Makefile.am gdk/makeenums.pl: Generate source files
4542         gdk/gdkenumtypes.[ch] for enum definitions.
4543
4544         * gtk/gtkcompat.h: Add defines for GTK_TYPE_GDK_*
4545         * gtk/gtk-boxed.defs: Comment out GDK types
4546         * gtk/gtktypeutils.h: Remove GDK types
4547         * gtk/Makefile.am: No longer scan GDK headers for enumerataions
4548
4549 Mon Apr  2 16:41:08 2001  Owen Taylor  <otaylor@redhat.com>
4550
4551         * Applied patch from Ron Steinke to add signal accumulators
4552         so that signals with the convention 'TRUE return means
4553         handled' stop emission on a TRUE return.
4554
4555         * gtk/gtkmain.[ch]: Add private accumulator 
4556         _gtk_boolean_handled_accumulator, used throughout GTK+.
4557         
4558         * gtk/gtkspinbutton.c: Add accumulator for ::output.
4559
4560         * gtk/gtktipsquery.c: Add accumulator for ::widget_selected
4561         
4562         * gtk/gtkwidget.c: Add accumulators for event signals,
4563         ::drag_motion, ::drag_drop. Use _gtk_boolean_handled_accumator
4564         for ::mnemonic-activate.
4565
4566         * gtk/gtkwindow.c: Add accumulator for ::frame_event
4567
4568 Mon Apr  2 16:24:21 2001  Owen Taylor  <otaylor@redhat.com>
4569
4570         * gtk/gtkwidget.c: Add missing include.
4571
4572 Mon Apr  2 16:56:15 2001  Jonathan Blandford  <jrb@redhat.com>
4573
4574         * gtk/gtkmarshal.list (VOID:BOXED,BOXED,BOXED,BOXED): new
4575         marshaller.
4576
4577         * gtk/gtktreemodel.c (gtk_tree_model_range_changed): change
4578         "changed" signal to "range_changed".
4579
4580         * gtk/gtktreeview.c (gtk_tree_view_set_model): fix small bug where
4581         removing a tree from one model would remove all trees from that
4582         model.
4583         * gtk/gtktreeview.c (gtk_tree_view_range_changed): use range
4584         changed signal instead.
4585
4586 Mon Apr  2 16:13:58 2001  Owen Taylor  <otaylor@redhat.com>
4587
4588         * gtk/gtkinvisible.c (gtk_invisible_style_set): Avoid
4589         chaining up to parent impl, since we have a INPUT_ONLY
4590         window.
4591
4592         * gtk/gtkentry.[ch]: Add a cursor_color property to set the
4593         foreground color for the cursor.
4594
4595 Mon Apr  2 15:06:13 2001  Owen Taylor  <otaylor@redhat.com>
4596
4597         * gtk/gtkstyle.c (_gtk_style_peek_property_value): Reference 
4598         param spec when caching property values, since we unref it
4599         later when we free the style.
4600
4601         * gtk/gtkoptionmenu.c (gtk_option_menu_get_props): Dont' free
4602         values since they are retrieved with G_VALUE_NO_COPY_CONTENTS.
4603
4604 Mon Apr  2 10:47:57 2001  Owen Taylor  <otaylor@redhat.com>
4605
4606         * gtk/gtkwidget.c (gtk_widget_class_init): Fix 
4607         G_VALUE_NO_COPY_CONTENTS instead of G_SIGNAL_TYPE_STATIC_SCOPE
4608         stupidity.
4609
4610 Mon Apr  2 00:51:11 2001  Owen Taylor  <otaylor@redhat.com>
4611
4612         [ First pass at adding style properties. Still needs some definite
4613         fine-tuning. ]
4614
4615         * gtk/gtkbutton.c: Add ::default_spacing style property.
4616          
4617         * gtk/gtkcheckbutton.[ch] gtkradiobutton.c: Add ::indicator_size,
4618         ::indicator_spacing style properties.
4619
4620         * gtk/gtkoptionmenu.c: Add ::indicator_size, ::indicator_spacing
4621         style properties.
4622
4623         * gtk/gtk{,h,v}paned.[ch]: Make handle_size a style property
4624         rather than a normal property.
4625
4626         * gtk/gtkwidget.c: Add an ::interior_focus style property to
4627         draw focus inside buttons, in the Windows/Java Metal/etc. style.
4628
4629         * gtk/gtkbutton.c gtk/gtkcheckbutton.c gtk/gtktogglenbutton.c:
4630         Honor ::interior_focus.
4631         
4632         * gtk/gtkentry.c: Don't draw focus at all when ::interior_focus is 
4633         TRUE.
4634
4635         * gtk/gtkrange.[ch] gtk/gtk{h,v}scrollbar.c gtk/gtk{h,v}scale.c:
4636         Add ::slider_width, ::trough_border, ::stepper_size,
4637         ::stepper_spacing style properties.
4638
4639         * gtk/gtkscale.[ch] Add ::slider-length style property.
4640
4641 2001-04-02 Alexander Larsson   <alexl@redhat.com>
4642
4643         * gdk/linux-fb/gdkwindow-fb.c:
4644         Add gdk_window_begin_resize_drag and gdk_window_begin_move_drag. Remove some
4645         warnings that were spewed on startup.
4646
4647         * gtk/gtkwindow-decorate.c:
4648         gtk_window_reposition -> _gtk_window_reposition
4649
4650 Sun Apr  1 21:37:22 2001  Owen Taylor  <otaylor@redhat.com>
4651
4652         * gtk/gtkwidget.[ch] gtk/gtktypeutils.c gtk/gtk-boxed.defs:
4653         Add boxed type for GtkRequistion. Use it for ::size-request.
4654
4655         * gtk/gtkstyle.[ch] gtk/gtktypeutils.c gtk/gtk-boxed.defs:
4656         Add a new GtkBorder structure useful for geometry properties
4657         for widgets. Add corresponding GTK_TYPE_BORDER.
4658         
4659         * gtk/gtkwidget.c (gtk_widget_class_install_style_property):
4660         Support automatic parser selection like
4661         gtk_settings_install_property_parser().
4662
4663         * gtk/gtksettings.c (_gtk_rc_property_select_parser): Export
4664         functionality for use by gtk_widget_class_install_style_property.
4665         Support GTK_TYPE_BORDER, GTK_TYPE_REQUISITION.
4666
4667 Sun Apr  1 20:48:59 2001  Owen Taylor  <otaylor@redhat.com>
4668
4669         * gtk/gtkentry.c (gtk_entry_class_init): Make invisible-char
4670         g_param_spec_unichar(). 
4671
4672 Sun Apr  1 23:41:37 2001  Tim Janik  <timj@gtk.org>
4673
4674         * gdk/x11/gdkwindow-x11.c (gdk_window_focus): raise window for non
4675         _NET window managers.
4676
4677         * gtk/gtkmenufactory.[hc]: cvs removed those files now.
4678
4679 Sun Apr  1 08:00:13 2001  Tim Janik  <timj@gtk.org>
4680
4681         * gtk/gtkwidget.[hc]: got rid of gtk_widget_popup(), a function that
4682         bad needs to be nuked, not just deprecated.
4683
4684         * gtk/gtktooltips.c (gtk_tooltips_draw_tips): don't use 
4685         gtk_widget_popup().
4686
4687         * gtk/*.[hc]: s/activate_mnemonic/mnemonic_activate/g;
4688         
4689         * gtk/gtkmenufactory.[hc]: removed this long-standingly deprecated
4690         widget.
4691         
4692         * docs/Changes-2.0.txt: updates.
4693         
4694 Sun Apr  1 01:02:54 2001  Jonathan Blandford  <jrb@redhat.com>
4695
4696         * gtk/gtktreestore.c (gtk_tree_store_sort_iter_changed):
4697         for (i = 0; i < 100; i ++)
4698           g_print ("I will confirm it compile before committing\n");
4699
4700 Sun Apr  1 00:52:06 2001  Jonathan Blandford  <jrb@redhat.com>
4701
4702         * gtk/gtktreestore.c: Initial work on implementing the
4703         GtkTreeSortable interface.  Basicaly a big cut'n'paste job.
4704
4705 Sun Apr  1 03:28:14 2001  Tim Janik  <timj@gtk.org>
4706
4707         * gtk/gtkwidget.c: fixed a bunch of notifications, added
4708         reference counts around emissions where the widget is used afterwards.
4709         added freeze/thaws around multiple properties being notified.
4710         (_gtk_widget_get_aux_info): cleanups.
4711         
4712         * gtk/gtksettings.c (gtk_settings_install_property): provide
4713         default parsing functions for gdkcolor, enums and flags.
4714
4715         * gtk/gtkwindow.[hc]: partially reverted patch from havoc,
4716         applied by owen.
4717         backed out gtk_window_get_location(), gtk_window_set_location(),
4718         gtk_window_get_size() and gtk_window_set_size(), these
4719         have to be sorted out wrg x/y/width/height/default_with/default_height
4720         properties.
4721         kept a flag in GtkWindowGeometryInfo to handle user
4722         resetting default sizes.
4723         cleaned up ZVT comments.
4724         bunch of assorted bug fixes, notification fixes.
4725         (_gtk_window_reposition): make this a really internal function.
4726         
4727         * gtk/testgtk.c: fixups.
4728         
4729 2001-03-31  Hans Breuer  <hans@breuer.org>
4730
4731         * config.h.win32.in : disable USE_MMX for msvc build cause
4732         the assembler doesn't fit and is out of my scope. Disable
4733         USE_GMODULE for msvc build as wel. The right way to share
4734         binaries on win32 would be to use libtiff.dll etc. To reduce
4735         installation hassles IMO it's better to include all fileformats
4736         builtin to gdk-pixbuf
4737
4738         * gdk-pixbuf/makefile.msc : new file
4739
4740         * gdk/gdk.def : updated
4741
4742         * gdk/win32/gdkevents-win32.c : don't erase the background if
4743         .no_bg is set. It improves the scrolling (e.g. of testgtk main
4744         buttons
4745         * gdk/win32/gdkgeometry-win32.c : added comment about the above
4746
4747         * gdk/win32/gdkwindow-win32.c : added three new functions like
4748         the X version. Only one is implemented, because the other two
4749         "gdk_window_begin_(resize|move)_drag" got no docs and appear to
4750         be default behaviour on win32 anyway ...
4751
4752         * gtk/gtk.def : updated
4753
4754         * gtk/makefile.msc.in : update for new files, use glib-genmarshal
4755         from where it was built and add an additional rule to automagically
4756         build gtkmarshal.[hc]
4757
4758         * gtk/gtkfilesel.c (open_new_dir) : don't increase n_entries
4759         before array access for the current entry isn't finished
4760
4761         * gtk/gtktreeitem.c (gtk_tree_item_subtree_button_click) :
4762         use g_return_val_if_fail
4763
4764         * gtk/testgtk.c (window_controls) : don't use the *wrong* size
4765         for the static array, but let the compiler calculate it. It
4766         makes me wonder if gcc isn't capable to catch bugs like this ...
4767
4768 2001-03-31  James Henstridge  <james@daa.com.au>
4769
4770         * gtk/gtkwidget.c (gtk_widget_size_adjust): fix use of magic
4771         constant "-1" in the aux info structure.
4772
4773 2001-03-30  Alexander Larsson  <alexl@redhat.com>
4774
4775         * gtk/gtkbutton.c (gtk_button_get_property):
4776         * gtk/gtklabel.c:
4777         Remove leaks.
4778         
4779         * gtk/gtkcontainer.c:
4780         * gtk/gtkhscale.c:
4781         * gtk/gtkhscrollbar.c:
4782         * gtk/gtklayout.c:
4783         * gtk/gtkmisc.c:
4784         * gtk/gtkprogress.c:
4785         * gtk/gtkprogressbar.c:
4786         * gtk/gtkrange.c:
4787         * gtk/gtktable.c:
4788         * gtk/gtkviewport.c:
4789         * gtk/gtkvscale.c:
4790         * gtk/gtkvscrollbar.c:
4791         * gtk/gtkwidget.c:
4792         Property patches, based on patches from John Margaglione and Lee Mallabone.
4793
4794 Thu Mar 29 21:20:38 2001  Mike Kestner  <mkestner@ameritech.net>
4795
4796         * gtk/gtkspinbutton.c : added value_changed signal which proxies for the
4797         adjustment. Cleaned redundant preconditions (spin != NULL). Added
4798         inline API function docs.
4799         (gtk_spin_button_new_with_range): New convenience constructor.
4800         (gtk_spin_button_set_increments): New adjustment helper.
4801         (gtk_spin_button_set_range): New adjustment helper.
4802
4803         * gtk/testgtk.c : added test of the new convenince constructor and
4804         value_changed signals.
4805
4806 Thu Mar 29 20:20:38 2001  Jonathan Blandford  <jrb@redhat.com>
4807
4808         * gtk/gtktreemodel.c (gtk_tree_row_ref_reordered_callback): Now we
4809         listen to the reorder signal.
4810
4811 Wed Mar 28 20:30:26 2001  Owen Taylor  <otaylor@redhat.com>
4812
4813         * gtk/gtkwidget.[ch] (_gtk_widget_get_aux_info): Add private function
4814         to get the aux info structure fo the widget.
4815
4816         * gtk/gtklabel.c gtk/gtkscrolledwindow.c gtk/gtkwindow.c: Use
4817         above function.
4818
4819         [ Patch from  Havoc Pennington  <hp@redhat.com> ]
4820
4821         * gdk/x11/gdkwindow-x11.c (gdk_window_get_frame_extents): function
4822         to get the size of the window manager frame, basically the same
4823         code that gdk_window_get_root_origin() had
4824         (gdk_window_get_root_origin): use gdk_window_get_frame_extents()
4825
4826         * gtk/gtkwindow.c (gtk_window_set_default_size): use
4827         gdk_window_resize() if the window is realized and resizeable
4828
4829         * gdk/x11/gdkwindow-x11.c (gdk_window_set_geometry_hints): fix
4830         typo so that setting gravity works
4831
4832         * gtk/gtkwindow.c (gtk_window_move_resize): don't ever use
4833         allocation if auto_shrink is on, even if the default size
4834         has not changed.
4835
4836         * gtk/gtkwidget.c (gtk_widget_render_icon): remove bogus
4837         g_return_if_fail
4838
4839 Thu Mar 29 16:29:12 2001  Jonathan Blandford  <jrb@redhat.com>
4840
4841         * gtk/gtkliststore.c (gtk_list_store_iter_changed): Massive
4842         reordering/sorting work.  Now pretty much works.
4843
4844         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): Lots of work to make
4845         reorder mostly work.  Still need to get the parity correct.
4846
4847         * gtk/gtktreeviewcolumn.c: Listen for "model" property changed
4848         signal, so I can listen for the sort_column_changed signal so I
4849         can change my "sort_indicator" property.  Cool.
4850
4851 Wed Mar 28 00:03:10 2001  Owen Taylor  <otaylor@redhat.com>
4852
4853         [ Patch from Havoc Pennington, hp@redhat.com ]
4854
4855         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c:
4856         Add functions gdk_window_begin_resize_drag/begin_move_drag
4857         to start resizing or moving a toplevel window. This
4858         is done either using the _NET_WM_MOVERESIZE protocol,
4859         or, if that isn't present, by emulation.
4860
4861         * gtk/gtkwindow.[ch]: Add functions gtk_begin_move/resize_drag
4862         to export the above to GTK+-land.
4863
4864         * gtk/gtkstyle.[ch]: Add ->draw_resize_grip() paint func.
4865         
4866         * gtk/gtkwindow.c gdk/gdkwindow.[ch] (gdk_window_constrain_size):
4867         Move this function into gdkwindow, since we need it
4868         when implementing fallback resizing.
4869
4870         * gdk/x11/gdkwindow-x11.c: gdk_window_set_geometry_hints.
4871         Fix typo when setting gravity.
4872
4873         * gtk/gtkstatusbar.[ch] (gtk_statusbar_set_has_resize_grip):
4874         Add an optional (but on by default) resize grip for resizing 
4875         the parent window.
4876
4877 01-03-29  Alexander Larsson  <alexl@redhat.com>
4878
4879         * gtk/gtktooltips.c (gtk_tooltips_event_handler):
4880         Don't return TRUE from the event handler, that blocks all
4881         event signals on the tooltip widget. Now you can press buttons
4882         in toolbars again.
4883
4884 Wed Mar 28 19:20:43 2001  Owen Taylor  <otaylor@redhat.com>
4885
4886         * gtk/testtext.c (create_buffer): Add missing NULL on
4887         valist.
4888
4889         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_class_init): Fix
4890         c-n-p problem with INCONSISTENT property.
4891
4892         [ Patch from Havoc Pennington  <hp@redhat.com> ]
4893
4894         * gtk/gtkentry.h (struct _GtkEntryClass): add same populate_popup
4895         hook.
4896
4897         * gtk/gtktextview.h (struct _GtkTextViewClass): add populate_popup
4898         signal as a hook for extending the default popup menu
4899
4900         * gtk/gtkimmulticontext.c (gtk_im_multicontext_append_menuitems):
4901         use radio menu items for the input method menuitems
4902
4903         * gtk/gtkimcontextsimple.c (check_hex): do better validation of 
4904         inserted unicode from Ctrl-Shift-hex input method
4905
4906         * gtk/gtktextbtree.c (_gtk_text_btree_insert): remove utf8
4907         validatation here, already done at GtkTextBuffer level.
4908
4909         * gtk/gtkwidget.c (gtk_widget_class_init): add binding set, add
4910         popup_menu run action signal and Shift+F10 and Menu keybindings.
4911
4912         * gtk/gtkentry.c: implement a default handler for popup_menu
4913
4914         * gtk/gtktextview.c: implement a default handler for popup_menu
4915
4916         * gtk/gtkmenu.c (gtk_menu_popup): select first item if popup is
4917         from a key event
4918         
4919         * gtk/gtklabel.c: remove "trailer" cruft
4920
4921 Wed Mar 28 17:27:12 2001  Jonathan Blandford  <jrb@redhat.com>
4922
4923         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): new function to
4924         handle reordering of trees.  Seems to mostly work w/ the exception
4925         of the parity flag.
4926
4927         * gtk/gtktreeview.c (gtk_tree_view_reordered): handle "reordered"
4928         signal.
4929
4930 Wed Mar 28 21:12:37 2001  Tim Janik  <timj@gtk.org>
4931
4932         * gtk/gtkwidget.h: c++ fixes.
4933
4934 Sun Mar 25 15:51:28 2001  Owen Taylor  <otaylor@redhat.com>
4935
4936         * gtk/gtksettings.c (gtk_settings_init): Fix use of uninitialized
4937         memory.
4938
4939 Tue Mar 27 22:36:07 2001  Owen Taylor  <otaylor@redhat.com>
4940
4941         * gtk/gtkwidget.h gtk/gtkrange.h: Apply patch from 
4942         Nils Barth fixing event return values. (#51041)
4943
4944         * gtk/gtkwidget.c: Fix some return values for default
4945         functions.
4946
4947         * gtk/gtk[vh]scrollbar.c gtk/gtk[vh]range.c: Fix
4948         return values for trough_keys functions.
4949
4950         * gtk/gtkwidget.h (struct _GtkWidgetClass): Fix return
4951         value for add_accelerator (shoudl have been a void
4952         return.)
4953
4954         * gtk/gtkcellrenderer.[ch]: gtkcellrenderertoggle.h:
4955         Fix return type of EVENT.
4956
4957         * gtk/gtkmarshal.list gtk/gtktexttag.c: Make EVENT
4958         signal return a boolean.
4959
4960 Tue Mar 27 22:07:44 2001  Jonathan Blandford  <jrb@redhat.com>
4961
4962         * gtk/gtkliststore.c (gtk_list_store_sort): Fix arguments to
4963         reordered signal.
4964
4965         * tests/testtreesort.c (main): fix spelling.
4966
4967 Tue Mar 27 20:55:29 2001  Jonathan Blandford  <jrb@redhat.com>
4968
4969         * gtk/gtkliststore.c: More work on implementing sortable
4970         interface.
4971
4972 Mon Mar 26 15:48:45 2001  Owen Taylor  <otaylor@redhat.com>
4973
4974         * gtk/gtkwindow.c (gtk_window_list_toplevels): Don't
4975         reference the widgets in the resulting list. (#11821)
4976         This makes this consistent with gtk_container_children.
4977
4978         * gtk/gtkwindow.c gtk/gtkwidget.c: Fix up the two
4979         uses of gtk_window_list_toplevels.
4980
4981 Mon Mar 26 15:26:17 2001  Owen Taylor  <otaylor@redhat.com>
4982
4983         * gtk/gtkimcontext.c (gtk_im_context_set_use_preedit): Add
4984         a virtual function to set whether the IM context should use 
4985         the preedit string. (#51922)
4986         
4987 Mon Mar 26 14:42:59 2001  Owen Taylor  <otaylor@redhat.com>
4988
4989         * gdk/gdkpango.h: Remove stale FIXME comment.
4990
4991 2001-03-26  Alexander Larsson  <alla@lysator.liu.se>
4992
4993         * gtk/gtkfilesel.c (gtk_file_selection_get_filename):
4994         Fixed bug that returned NULL if a filename was selected.
4995
4996 2001-03-24  Havoc Pennington  <hp@pobox.com>
4997
4998         * gtk/gtkthemes.c (gtk_theme_engine_load): improve error message
4999         to contain the word "theme"
5000
5001 2001-03-24  Havoc Pennington  <hp@pobox.com>
5002
5003         * gtk/gtkhsv.c (gtk_hsv_move): make motion around the ring much
5004         slower but finer-grained
5005         (gtk_hsv_focus): get initial focus on the ring or triangle 
5006         according to tab direction
5007
5008         * gtk/testgtk.c (main): get rid of weird sleep(1) on exit
5009
5010 2001-03-23  Havoc Pennington  <hp@pobox.com>
5011
5012         * gtk/gtkhsv.c: make this somewhat key-navigable
5013
5014         * gtk/gtkfontsel.c: mnemonics
5015
5016         * gtk/gtkgamma.c: mnemonics
5017
5018         * gtk/gtkcolorsel.c: add mnemonics to labels
5019
5020 2001-03-22  Havoc Pennington  <hp@pobox.com>
5021
5022         Applied big patch from Seth Lytle to fix event handler return
5023         values, slightly modified.
5024
5025         * gtk/gtkcalendar.c (gtk_calendar_button_press): return TRUE if
5026         handled.
5027         (gtk_calendar_key_press): return TRUE for GDK_space triggers
5028         select_day
5029
5030         * gtk/gtkclist.c (gtk_clist_button_press): return TRUE if handled
5031         (gtk_clist_button_release): return TRUE if handled
5032
5033         * gtk/gtkcolorsel.c (mouse_release):
5034         (palette_activate): 
5035         (palette_press): 
5036         (palette_new): 
5037         (mouse_press): 
5038         (get_screen_color): 
5039         fixed return type (void to gboolean), return TRUE,
5040         added GTK_SIGNAL_FUNC cast
5041
5042         * gtk/gtkcombo.c (gtk_combo_popup_button_press): fixed return type
5043         (void to gboolean), and return TRUE
5044         (gtk_combo_button_release): changed return value to TRUE after
5045         gtk_grab_add on combo->popwin
5046
5047         * gtk/gtkctree.c (gtk_ctree_button_press): return TRUE if triggers a
5048         collapse or expand
5049
5050         * gtk/gtkcurve.c (gtk_curve_graph_events): return TRUE for
5051         button/motion
5052
5053         * gtk/gtkdnd.c (gtk_drag_source_event_cb): return TRUE for button
5054         press/release and motion that trigger act
5055
5056         * gtk/gtkentry.c (gtk_entry_button_release): return TRUE
5057
5058         * gtk/gtkfontsel.c (gtk_font_selection_size_key_press): return TRUE
5059         for GDK_Return
5060         
5061         * gtk/gtklist.c (gtk_list_button_press): return TRUE mostly
5062         (gtk_list_button_release): return TRUE if selection
5063
5064         * gtk/gtklistitem.c (gtk_list_item_button_press): return TRUE on
5065         press
5066
5067         * gtk/gtkmenushell.c (gtk_menu_shell_button_press):
5068         (gtk_menu_shell_button_release): chain parent_menu_shell retval
5069
5070         * gtk/gtknotebook.c (gtk_notebook_button_press): return FALSE if
5071         nothing triggered
5072         (gtk_notebook_button_release): return TRUE if we do anything
5073
5074         * gtk/gtkspinbutton.c (gtk_spin_button_button_press): 
5075         (gtk_spin_button_button_release): return TRUE or chained retval
5076
5077         * gtk/gtktext.c (gtk_text_button_press): 
5078         (gtk_text_button_release): return TRUE
5079         (gtk_text_key_press): remove redundant retval code
5080         
5081         * gtk/gtktreeitem.c (gtk_tree_item_button_press): return TRUE if button
5082         and sensitive
5083         (gtk_tree_item_subtree_button_click): changed type to gint, and return
5084         TRUE if sensitive
5085
5086         * gtk/gtktooltips.c (gtk_tooltips_event_handler): deactivate implies 
5087         return TRUE
5088
5089 2001-03-23  Havoc Pennington  <hp@redhat.com>
5090
5091         * gtk/testgtk.c: fix warnings
5092
5093         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): fix return value
5094
5095         * gtk/gtktextview.c: fix warnings
5096
5097         * gtk/gtktext.c (find_cursor_at_line): fix warning
5098
5099         * gtk/gtkselection.c (gtk_selection_notify): fix warning 
5100
5101         * gtk/gtkitemfactory.c (gtk_item_factory_menu_pos): fix signature
5102         of this function
5103
5104         * gtk/gtkimmulticontext.c (gtk_im_multicontext_append_menuitems):
5105         fix warning
5106
5107         * gtk/gtkhandlebox.c (gtk_handle_box_style_set): fix warning
5108
5109         * gtk/gtkfontsel.c: fix warning
5110
5111         * gtk/gtkcolorsel.c: fix warnings
5112
5113 2001-03-23  Havoc Pennington  <hp@redhat.com>
5114
5115         * gtk/gtkhandlebox.c: Apply property patch from Lee Mallabone
5116
5117         * gtk/gtkbox.c: Apply property patch from Lee Mallabone
5118
5119         * gtk/gtkcheckmenuitem.c: Apply property patch from Lee Mallabone,
5120         and deprecated gtk_check_menu_item_set_show_toggle().
5121         
5122         * gtk/gtkbutton.c: Apply property patch from Lee Mallabone
5123
5124         * gtk/gtkfilesel.c: Apply property patch from Lee Mallabone
5125
5126         * gtk/gtkframe.c: Apply property patch from Lee Mallabone
5127
5128 2001-03-23  Havoc Pennington  <hp@redhat.com>
5129
5130         * gtk/gtktoolbar.c, gtk/gtkimcontext.c, gtk/gtklabel.c: fix up
5131         some docs
5132
5133 Fri Mar 23 16:13:43 2001  Jonathan Blandford  <jrb@redhat.com>
5134
5135         * gtk/gtktreeviewcolumn.h (GtkCellDataFunc): Forgot to namespace
5136         this.
5137
5138         * gtk/gtktreestore.c (gtk_tree_store_set_value): change from
5139         set_cell to set_value
5140
5141         * gtk/gtkliststore.c (gtk_list_store_set_value): change from
5142         set_cell to set_value
5143
5144 Thu Mar 22 19:27:34 2001  Jonathan Blandford  <jrb@redhat.com>
5145
5146         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
5147         fix braino.
5148         * gtk/gtktreesortable.[ch]: New interface to add cleanup sortable
5149         support.
5150
5151         * gtk/gtktreeview.c: Addition of initial sortable support.
5152
5153         * gtk/gtktreestore.c: Addition of initial sortable support.
5154
5155         * gtk/gtkliststore.c: Addition of initial sortable support.
5156
5157         * gtk/gtkmarshal.list: yet another marshaller.
5158
5159         * gtk/gtktreedatallist.[ch]: shared code between the store models
5160         for handling sorting headers.
5161
5162 2001-03-22  Havoc Pennington  <hp@redhat.com>
5163
5164         * gtk/gtkcontainer.c (gtk_container_set_focus_chain): 
5165         (gtk_container_unset_focus_chain): Add ability to override the 
5166         focus chain for a container explicitly
5167
5168 Thu Mar 22 13:01:44 2001  Tim Janik  <timj@gtk.org>
5169
5170         * gtk/gtklabel.[hc]: some cleanups, fixed mnemonic_widget handling,
5171         added PROP_MNEMONIC_WIDGET.
5172
5173         * gtk/gtkwindow.c (gtk_window_activate_mnemonic): 
5174         (gtk_window_remove_mnemonic): 
5175         (gtk_window_add_mnemonic): fixed assertions.
5176         (gtk_window_activate_mnemonic): constrain modifier checks to those
5177         permitted by gtk_accelerator_get_default_mod_mask().
5178         got rid of gtk_window_get_default_accel_group().
5179
5180         * gtk/gtkwidget.c (gtk_widget_real_activate_mnemonic): handle non
5181         activatable widgets either by focussing or a warning.
5182         added a signal accumulator to ::activate_mnemonic which stops the
5183         emission once a handler returned TRUE.
5184
5185 2001-03-22  Havoc Pennington  <hp@pobox.com>
5186
5187         * gtk/gtktoolbar.c (gtk_toolbar_insert_stock): handle mnemonics in
5188         the stock item label
5189
5190         * gtk/gtklabel.c: s/@gtk_func/gtk_func()/ in docs
5191
5192         * gtk/gtkstock.c (builtin_items): add mnemonics where missing
5193
5194         * demos/gtk-demo/*.c: Add mnemonics all over the place
5195
5196         * gtk/gtklabel.h: mark parse_uline deprecated
5197
5198 2001-03-21  Alexander Larsson  <alexl@redhat.com>
5199
5200         * gtk/gtkitemfactory.[ch]:
5201         Add support for stock and normal imagemenuitems.
5202         
5203         * gtk/testgtk.c:
5204         Add some tests for mnemonics, stock toolbars, stock
5205         and image menuitems in itemfactory and gdk_window_scroll.
5206
5207 2001-03-21  Alexander Larsson  <alexl@redhat.com>
5208
5209         * gtk/gtkbutton.[ch]:
5210         * gtk/gtkdialog.c:
5211         Renamed gtk_button_new_stock() to gtk_button_new_from_stock() and
5212         removed accel_group argument. Renamed gtk_button_new_accel() to
5213         gtk_button_new_with_mnemonic() and removed accel_group argument.
5214
5215         * gtk/gtkcheckbutton.[ch]:
5216         New function gtk_check_button_new_with_mnemonic().
5217
5218         * gtk/gtkentry.c:
5219         Override activate_mnemonic and just grab focus.
5220
5221         * gtk/gtkitemfactory.c:
5222         Don't add menu uline accel group, instead use mnemonics support.
5223
5224         * gtk/gtklabel.[ch]:
5225         New support for mnemonics.
5226
5227         * gtk/gtkmarshal.list:
5228         Needed BOOLEAN:BOOLEAN for activate_mnemonic.
5229
5230         * gtk/gtkmenu.[c]:
5231         * gtkmenushell.c:
5232         Use mnemonics instead of accel groups for uline
5233         support in menu items.
5234         Removed gtk_menu_get_uline_accel_group() and
5235         gtk_menu_ensure_uline_accel_group().
5236
5237         * gtk/gtkmenuitem.c:
5238         Override activate_mnemonic to handle switching between
5239         menu items if there are collisions.
5240         
5241         * gtk/gtknotebook.c:
5242         Connect to activate_mnemonic on the tab_label, so that
5243         activating it switches to that notebook page.
5244
5245         * gtk/gtkwidget.[ch]:
5246         Add activate_mnemonic signal. New function
5247         gtk_widget_activate_mnemonic() to emit it.
5248         Default implementation does activate/grab_focus.
5249
5250         * gtk/gtkwindow.[ch]:
5251         Add support for mnemonics in windows.
5252         New functions:
5253         gtk_window_add_mnemonic, gtk_window_remove_mnemonic,
5254         gtk_window_activate_mnemonic, gtk_window_set_mnemonic_modifier
5255
5256         * gtk/testgtk.c:
5257         Update to function name changes.
5258         
5259 2001-03-21  Alexander Larsson  <alexl@redhat.com>
5260
5261         * gtk/gtkimagemenuitem.[c]:
5262         Add gtk_image_menu_item_new_from_stock()
5263
5264 Tue Mar 20 15:00:43 2001  Jonathan Blandford  <jrb@redhat.com>
5265
5266         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
5267         Fix buglet in meeting.
5268
5269 2001-03-19  Havoc Pennington  <hp@redhat.com>
5270
5271         * gtk/gtkiconfactory.c: Make GtkIconSource an opaque datatype, and
5272         add a bunch of accessor functions. This is because we have
5273         reasonable expectations of extending what fields it contains in
5274         the future.
5275
5276         * gtk/gtkstyle.c (gtk_default_render_icon): adapt to icon source
5277         changes
5278
5279         * gtk/gtkrc.c (gtk_rc_parse_icon_source): fix to use new
5280         GtkIconSource   
5281
5282 Mon Mar 19 15:53:36 2001  Owen Taylor  <otaylor@redhat.com>
5283
5284         * gtk/gtkitemfactory.c gtk/testgtk.c: Handle quoting of / with \; properly
5285         handle __ in paths, quote " and \n in gtk_item_factory_dump_items().
5286
5287         * gtk/gtkadjustment.[ch] gtk/gtkclist.c gtk/gtkhruler.c gtk/gtklayout.c 
5288           gtk/gtklist.c gtk/gtkprogress.[ch] gtk/gtkprogressbar.[ch] gtk/gtkrange.[ch]
5289           gtk/gtkruler.[ch] gtk/gtkscale.c gtk/gtkscrolledwindow.c gtk/gtkspinbutton.[ch]
5290           gtk/gtktext.c gtk/gtktextview.c gtk/gtkvruler.c gtk/testgtk.c:
5291         Change float to double everywhere with the exception of 0<->1.0 alignment
5292         and GtkCurve.
5293
5294 2001-03-19  Tor Lillqvist  <tml@iki.fi>
5295
5296         * gdk/win32/gdkdrawable-win32.c
5297         * gdk/win32/gdkimage-win32.c: Use correct casts in debugging
5298         output.
5299
5300         * demos/testpixbuf-drawable.c: If GDK_WINDOWING_WIN32, include
5301         gdkwin32.h.
5302
5303 2001-03-18  Tor Lillqvist  <tml@iki.fi>
5304
5305         * gdk/win32/gdkevents-win32.c (print_window_state): New function.
5306         print_event_state, print_event): Use preprocessor macro to make
5307         code more compact. Print also GDK_WINDOW_STATE events.
5308         (synthesize_crossing_events): Remove the old #ifdeffed-out code.
5309         
5310         * gtk/gtk.def
5311         * gtk/makefile.mingw.in: Update.
5312
5313         * gtk/gtkmain.h: Check for G_PLATFORM_WIN32, not only G_OS_WIN32,
5314         to catch also Cygwin.
5315
5316 Sun Mar 18 01:15:30 2001  Tim Janik  <timj@gtk.org>
5317
5318         * gtk/gtkspinbutton.[hc]: added rc-style argument
5319         GtkSpinButton::shadow_type.
5320         removed spin_button->shadow_type, gtk_spin_button_set_shadow_type()
5321         and ARG_SHADOW_TYPE as it doesn' make much sense to try to override
5322         rc-style settings.
5323
5324         * gtk/gtkfixed.c: removed gtk_fixed_paint() (was unused).
5325
5326         * gtk/gtkwidget.c: quark cleanups.
5327
5328         * gtk/gtkrc.[hc]: added gtk_rc_scanner_new() to create an rc-file
5329         scanner with appropriate configuration, renamed GtkRcStyleClass.clone
5330         to create_rc_style() (we don't do cloning in standard OO sense).
5331         added per rc style properties.
5332         
5333         * gtk/gtkstyle.[hc]: added code to retrive pspec conformant rc-style
5334         property values and for caching those. some cleanups.
5335         
5336         * gtk/Makefile.am: -DG_DISABLE_CONST_RETURNS.
5337         
5338         * gtk/gtksettings.[hc]: new file for global rc-file properties
5339         (at least currently, should get extended to support X properties
5340         and other communication mechanisms).
5341         
5342         * gtk/gtkwidget.[hc]: added style property support:
5343         (gtk_widget_class_install_style_property_parser): install style
5344         property pspec with parser function for rc-file values other
5345         than LONG, DOUBLE or STRING.
5346         (gtk_widget_class_install_style_property): same as above without
5347         parser (parsers are going to be needed quite infrequently).
5348         (gtk_widget_style_get_property): retrive style property value.
5349         (gtk_widget_style_get_valist): same as above with varargs support,
5350         has NOCOPY semantics.
5351         (gtk_widget_style_get): wrapper around gtk_widget_style_get_valist().
5352
5353 Fri Mar 16 18:24:53 2001  Jonathan Blandford  <jrb@redhat.com>
5354
5355         * demos/gtk-demo/main.c (row_activated_cb): modified to use
5356         "row_activated" signal.
5357
5358         * gtk/gtktreeview.c (gtk_tree_view_row_activated): oh, the
5359         stupidity.  Lets actually pass in the row with this signal...
5360
5361 Fri Mar 16 18:01:17 2001  Jonathan Blandford  <jrb@redhat.com>
5362
5363         * gtk/gtktreeviewcolumn.[ch]: s/GTK_TREE_COLUMN/GTK_TREE_VIEW_COLUMN
5364
5365         * gtk/gtktreeview.c (gtk_tree_view_row_activated): New signal.
5366
5367         * gtk/gtktreeview.c (gtk_tree_view_destroy): moved pretty much
5368         everything into the ::destroy function, and freed a lot more.
5369
5370 2001-03-16  Havoc Pennington  <hp@redhat.com>
5371
5372         * gtk/gtkwidget.h (struct _GtkWidgetAuxInfo): change to use gint
5373         instead of gint16, to avoid overflow issues, since sizes > 16-bit
5374         are now allowed.
5375
5376 2001-03-16  Havoc Pennington  <hp@redhat.com>
5377
5378         * Applied patch from Nils Barth (bug # 51041) to 
5379         replace "gint" with "gboolean" and 0/1 with TRUE/FALSE
5380         in various places.
5381
5382 2001-03-15  Havoc Pennington  <hp@redhat.com>
5383         
5384         * gtk/gtktextbuffer.c (gtk_text_buffer_create_tag): add varargs 
5385         for properties to set on the tag.
5386
5387         * gtk/testtext.c: fixups to reflect create_tag change
5388         
5389         * gtk/gtktexttag.c (gtk_text_tag_set_property):
5390         background/foreground stipple are objects, not boxed.
5391
5392         * demos/gtk-demo/textview.c: intellihancing
5393
5394 Fri Mar 16 11:38:42 2001  Jonathan Blandford  <jrb@redhat.com>
5395
5396         * gtk/gtktreeview.c (gtk_tree_view_set_model): Fixed some
5397         braindeadness spotted by Jamie Strachan <frostfreek@yahoo.com>.
5398
5399 2001-03-16  Alexander Larsson  <alexl@redhat.com>
5400
5401         * gdk/x11/gdkgeometry-x11.c (_gdk_window_process_expose):
5402         Fix sign error with queued region translations.
5403
5404 2001-03-15  HideToshi Tajima  <tajima@happy>
5405
5406         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_set_cursor_location): 
5407         * gtk/gtkimmulticontext.c (gtk_im_multicontext_set_cursor_location):
5408         * gtk/gtkentry.c (update_im_cursor_location): 
5409         * gtk/gtkimcontext.c (gtk_im_context_set_cursor_location):
5410         * gtk/gtkimcontext.h (struct _GtkIMContextClass): rename
5411         set_cursor_pos to set_cursor_location in GtkInputContext class
5412
5413 Thu Mar 15 18:22:44 2001  Jonathan Blandford  <jrb@redhat.com>
5414
5415         * gtk/gtkcellrenderer.h: Changed prototype to allow for getting
5416         the location of the cell relative to its area.
5417         * gtk/gtkcell*: modified for above change
5418         * gtk/gtktreeview.c: modified for above change.
5419
5420 Wed Mar 14 13:58:32 2001  Jonathan Blandford  <jrb@redhat.com>
5421
5422         * gtk/gtktreeview.c (gtk_tree_view_set_model): Ref the model.
5423          (gtk_tree_view_finalize): actually unref the model.  Thanks to
5424         Jamie Strachan <frostfreek@yahoo.com> for noticing this error.
5425
5426 2001-03-14  Havoc Pennington  <hp@redhat.com>
5427
5428         * gtk/gtkdata.h, gtk/gtkdata.c: Delete.
5429         
5430         * gtk/gtk.h: remove gtkdata.h
5431
5432         * gtk/Makefile.am: remove gtkdata
5433         
5434         * gtk/gtktext.c (gtk_text_set_adjustments): connect to "destroy"
5435         not "disconnect" on the adjustments.
5436         
5437         * gtk/gtktooltips.h, gtk/gtktooltips.c: derive from GtkObject not
5438         GtkData
5439
5440         * gtk/gtkadjustment.h, gtk/gtkadjustment.c: derive from GtkObject
5441         not GtkData
5442
5443         * configure.in: handle case where X render exists, but Pango lacks
5444         Xft support.
5445
5446 2001-03-15 Alexander Larsson  <alexl@redhat.com>
5447
5448         * gtk/gtktoolbar.[ch]:
5449         New functions gtk_toolbar_set_icon_size and gtk_toolbar_insert_stock
5450         to add stock items to toolbars.
5451
5452         * gtk/Makefile.am:
5453         Remove ../gdk/gdkim.h from gdk_headers.
5454
5455 2001-03-15  Sven Neumann  <sven@gimp.org>
5456
5457         * gdk/gdkim.h: removed
5458         
5459         * gdk/gdkprivate.h
5460         * gdk/x11/gdkim-x11.c: do not include gdkim.h 
5461
5462 2001-03-14  HideToshi Tajima  <tajima@happy.sunsoft.eng.sun.com>
5463
5464         * gtk/gtkimmulticontext.c (gtk_im_multicontext_set_cursor_pos):
5465         * gtk/gtkimcontext.c (gtk_im_context_set_cursor_pos):
5466         * gtk/gtkimcontext.h (struct _GtkIMContextClass): add
5467         set_cursor_pos() virtual method
5468
5469         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_class_init):
5470         (gtk_im_context_xim_set_cursor_pos): add implementation for
5471         set_cursor_pos() method
5472
5473         * gtk/gtkentry.c (recompute_idle_func): set current cursor
5474         position to input methods
5475
5476 Mon Mar 12 21:02:08 2001  Jonathan Blandford  <jrb@redhat.com>
5477
5478         * gtk/gtktreeview.c (gtk_tree_view_header_focus): Fix up focus
5479         code a lot.
5480
5481         * gtk/gtktreedatalist.c (_gtk_tree_data_list_free): use
5482         g_mem_chunk.
5483         (_gtk_tree_data_list_alloc): use g_mem_chunk.
5484         (_gtk_tree_data_list_node_to_value): Fix to switch on
5485         G_TYPE_FUNDAMENTAL.
5486         (_gtk_tree_data_list_value_to_node): Fix to switch on
5487         G_TYPE_FUNDAMENTAL.
5488         (_gtk_tree_data_list_node_copy): Fix to switch on
5489         G_TYPE_FUNDAMENTAL.
5490
5491 2001-03-12  Havoc Pennington  <hp@redhat.com>
5492
5493         * gtk/gtkwindow.c (gtk_window_class_init): Patch from John Margaglione 
5494         to convert to new property API. Also, change default_width and
5495         default_height get_property to return 0 as the flag value for
5496         "unset"; -1 is not a valid value for these fields.
5497
5498 2001-03-12  Havoc Pennington  <hp@redhat.com>
5499
5500         * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: Switch to using an
5501         enum with registration for icon sizes, instead of strings.
5502
5503         * gtkimage.h, gtkimage.c, gtkstyle.h, gtkstyle.c, gtkwidget.h, 
5504         gtkwidget.c: Fix to reflect GtkIconSize
5505         
5506 2001-03-12  Alexander Larsson  <alexl@redhat.com>
5507
5508         Make GtkFB compile and link.
5509         
5510         * gdk/linux-fb/gdkdrawable-fb2.c:
5511         window->mapped to GDK_WINDOW_IS_MAPPED(). 
5512         
5513         * gdk/linux-fb/gdkwindow-fb.c:
5514         window->mapped to GDK_WINDOW_IS_MAPPED(). 
5515         Added gdk_window_shape_combine_region.
5516         Added assorted placeholders for unimplemented new GdkWindow API calls.
5517
5518 2001-03-12  Alexander Larsson  <alexl@redhat.com>
5519
5520         * gtk/gtkfilesel.c:
5521         Add more test when converting filenames from/to utf-8.
5522         Don't allow entering text in the filename entry which isn't allowed in
5523         a filename. Just beep instead.
5524
5525 2001-03-12  Alexander Larsson  <alexl@redhat.com>
5526
5527         * gtk/gtkclist.c:
5528         Scroll using gdk_window_scroll(). Don't wait for exposes.
5529         Move the column headers in an order that makes them flash less.
5530
5531 2001-03-10  Hans Breuer  <hans@breuer.org>
5532
5533         * gdk/gdk.def : updated
5534
5535         * gdk/win32/gdkgc-win32.c : pixmaps are visible again, due
5536         to offseting the clip_mask at the right place
5537
5538         * gdk/win32/gdkwindow-win32.c : don't create background brushes
5539         for all the gdkClasses, especially not for the input_only case.
5540         Otherwise flickering wont be avoidable, because we don't get
5541         WM_ERASEBKGND message for these windows.
5542
5543         * gdk/win32/gdkevents-win32.c : initialize event->expose.region
5544         and fixed massive redraw problems apparently triggered by Alexanders 
5545         recent change. Not fully understood the GDK_EXPOSE / WM_PAINT handling
5546         but it seems to work quite well :-)
5547
5548         * gdk/win32/gdkprivate-win32.h : added _gdk_window_process_expose
5549         prototype
5550
5551 Sat Mar 10 12:15:31 2001  Jonathan Blandford  <jrb@redhat.com>
5552
5553         * gtk/gtktreestore.c (gtk_tree_store_set_cell): Fix a stupid typo.
5554         (gtk_list_store_set_cell): Fix a stupid typo.
5555
5556 Fri Mar  9 20:36:21 2001  Jonathan Blandford  <jrb@redhat.com>
5557
5558         * gtk/gtktreeselection.c (gtk_tree_selection_select_all): Make
5559         select_all not work if you're in SINGLE mode (it doesn't make that
5560         much sense, anyway.)
5561
5562         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_to_value):
5563         handle types more sanely.
5564         (_gtk_tree_data_list_value_to_node): handle types more sanely.
5565         (_gtk_tree_data_list_node_copy): handle types more sanely.
5566
5567         * gtk/gtkliststore.c (gtk_list_store_set_cell): fix to work with
5568         GValue better. Converts the type as well.
5569
5570         * gtk/gtktreestore.c (gtk_tree_store_set_cell): fix to work with
5571         GValue better. Converts the type as well.
5572
5573 Wed Mar  7 20:47:41 2001  Owen Taylor  <otaylor@redhat.com>
5574
5575         * gtk/gtktext.c gtk/gtkoldeditable.[ch] gdk/gdk.[ch]
5576         gdk/Makefile.am gdk/x11/Makefile.am gdk/x11/gdkevents-x11.c 
5577         gdk/x11/gdkglobals-x11.c gdk/x11/gdkprivate-x11.c
5578         gdk/x11/gdkx.h gdk/x11/gdkim-x11.c: Remove old XIM code.
5579
5580         * gdk/win32/gdkim-win32.c gdk/linux-fb/gdkim-fb.c: Remove
5581         gdk_im/gdk_ic.
5582
5583 2001-03-09  Hans Breuer  <hans@breuer.org>
5584
5585         * gdk/gdk.def : updated
5586
5587         * gdk/win32/gdkevents-win32.c : don't ask input_only windows
5588         for their palette
5589
5590         * gdk/win32/gdkgeometry-win32.c : reflect GdkWindowObject::mapped
5591         removing
5592
5593         * gdk/win32/gdkwindow-win32.c : reflect GdkWindowObject::mapped
5594         removing and implemented Havoc's GdkWindow state functions; 
5595         stick/unstick only as no-op, cause I don't know how to emulate 
5596         on win32 ...
5597
5598         * gtk/gtk.def : updated
5599
5600         * gtk/gtkbox.c (gtk_box_get_spacing) : use g_return_val_if_fail ()
5601
5602         * gtk/gtktypeutils.c : #include <string.h>
5603
5604         * gtk/gtkwindow.h : declare gtk_window_set_decorated ()
5605
5606 Fri Mar  9 09:31:55 2001  Tim Janik  <timj@gtk.org>
5607
5608         * gtk/gtkwidget.c (gtk_widget_class_init): fixed signals with
5609         GDK_TYPE_DRAG_CONTEXT, it needs to be marshaled as an object,
5610         not a boxed.
5611
5612 2001-03-09  Alexander Larsson  <alexl@redhat.com>
5613
5614         * docs/Changes-2.0.txt:
5615         Document expose event->region change and that gtk_widget_event
5616         doesn't allow passing expose events.
5617
5618         * gdk/gdkevents.h:
5619         Add region to expose event.
5620         
5621         * gdk/gdkevents.c:
5622         Handle event->region in gdk_event_copy() and gdk_event_free().
5623
5624         * gdk/gdkwindow.c (gdk_window_process_updates_internal):
5625         Generate expose_event->region when creating expose events.
5626
5627         * gdk/x11/gdkevents-x11.c:
5628         Generate expose events with regions when translating X events.
5629
5630         * gtk/gtkcontainer.[ch]:
5631         Default expose handler that propagates expose events to NO_WINDOW
5632         children. New function gtk_container_propagate_expose()
5633
5634         * gtk/gtkwidget.[ch]:
5635         Moved gtk_widget_event implementation to gtk_widget_event_internal.
5636         gtk_widget_event calls gtk_widget_event_internal but doesn't allow
5637         expose events. New function gtk_widget_send_expose() to send expose
5638         events. New function gtk_widget_region_intersect() to calculate
5639         window/region intersections.
5640         
5641         * gtk/gtkmain.c (gtk_main_do_event):
5642         Use gdk_window_begin_paint_region() instead of gdk_window_begin_paint_rect().
5643         Use gtk_widget_send_expose() to send expose events.
5644         
5645         * gtk/gtkbin.c:
5646         * gtk/gtkbox.c:
5647         * gtk/gtkfixed.c:
5648         * gtk/gtkimagemenuitem.c:
5649         * gtk/gtklist.c:
5650         * gtk/gtkpacker.c:
5651         * gtk/gtktable.c:
5652         * gtk/gtktree.c:
5653         Remove expose handler, using the default container implementation
5654         instead.
5655         
5656         * gtk/gtkbutton.c:
5657         * gtk/gtkcheckbutton.c:
5658         * gtk/gtkeventbox.c:
5659         * gtk/gtkfixed.c:
5660         * gtk/gtkhandlebox.c:
5661         * gtk/gtklayout.c:
5662         * gtk/gtklistitem.c:
5663         * gtk/gtkmenu.c:
5664         * gtk/gtkmenubar.c:
5665         * gtk/gtkmenuitem.c:
5666         * gtk/gtknotebook.c:
5667         * gtk/gtkoptionmenu.c:
5668         * gtk/gtkpaned.c:
5669         * gtk/gtkscrolledwindow.c:
5670         * gtk/gtktogglebutton.c:
5671         * gtk/gtktoolbar.c:
5672         * gtk/gtktreeitem.c:
5673         * gtk/gtkviewport.c:
5674         Chain expose handler to parent class handler. Use
5675         gtk_container_propagate_expose() to propagate exposes.
5676
5677         * gtk/gtkclist.c (check_exposures):
5678         * gtk/gtktext.c (process_exposes):
5679         Use gtk_widget_send_expose instead of gtk_widget_event.
5680
5681 Thu Mar  8 19:40:28 2001  Jonathan Blandford  <jrb@redhat.com>
5682
5683         * gtk/gtktreeview.c (gtk_tree_view_destroy): Add destroy function.
5684
5685 Thu Mar  8 19:18:27 2001  Jonathan Blandford  <jrb@redhat.com>
5686
5687         * gtk/gtktreeview.c (gtk_tree_view_unref_tree_helper): Actually
5688         unref the nodes.   Fixes bug #50058.
5689
5690         * gtk/gtktreemodel.c (gtk_tree_model_ref_node): change
5691         "::ref_iter" to "::ref_node".
5692         (gtk_tree_model_unref_node): change "::unref_iter" to
5693         "::unref_node". Fixes bug #50064.
5694
5695 Thu Mar  8 17:40:09 2001  Jonathan Blandford  <jrb@redhat.com>
5696
5697         * gtk/gtktreeview.c (gtk_tree_view_create_row_drag_icon): add
5698         support for invisible cells.
5699          (gtk_tree_view_bin_expose): ditto
5700
5701 Thu Mar  8 16:36:00 2001  Jonathan Blandford  <jrb@redhat.com>
5702
5703         * gtk/gtktreemodel.c (gtk_tree_model_get_type): add prerequesite
5704         on gobjects.
5705
5706         * tests/testtreefocus.c (main): New test file.
5707
5708         * tests/testtreeview.c: update to latest glib changes.
5709
5710         * tests/testtreecolumns.c: update to latest glib changes.
5711
5712 Thu Mar  8 18:13:20 2001  Tim Janik  <timj@gtk.org>
5713
5714         * gtk/testgtk.c: re-enabled event watcher emission hooks.
5715
5716 Thu Mar  8 16:51:21 2001  Tim Janik  <timj@gtk.org>
5717
5718         * *.c: added accumulator data argument to g_signal_newc()
5719         functions.
5720
5721         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_set_model): 
5722         * gtk/gtktreeview.c (gtk_tree_view_setup_model): 
5723         * gtk/treestoretest.c (make_window):
5724         s/g_signal_connect/g_signal_connectc/.
5725
5726         * gtk/gtktextbuffer.c: completed signal arg fixups,
5727         they also needed G_SIGNAL_TYPE_STATIC_SCOPE flag.
5728
5729 Thu Mar  8 00:02:30 2001  Owen Taylor  <otaylor@redhat.com>
5730
5731         * gtk/gtkwidget.[ch] (gtk_widget_get_name): Make
5732         G_CONST_RETURN.
5733
5734         * gtk/gtkwidget.[ch] gtk/gtkprivate.h: Add a 
5735         ::hierarchy-changed signal when a widget changes
5736         from anchored to unanchored or vice versa.
5737         (anchored means 
5738          gtk_widget_get_ancestor (widget, GTK_TYPE_WINDOW) != NULL.)
5739         Use a private flag to keep track of this efficiently.
5740
5741 2001-03-07  Havoc Pennington  <hp@redhat.com>
5742
5743         * gtk/testgtk.c (create_spins): uglify so that size request gets
5744         tested.
5745
5746         * gtk/gtkspinbutton.c (gtk_spin_button_size_request): Base size
5747         request on values for upper/lower, completes #6152
5748
5749 Wed Mar  7 20:07:22 2001  Owen Taylor  <otaylor@redhat.com>
5750
5751         * Makefile.am: Remove gtk-config-2.0 again.
5752         (Grrrr, pkg-config. And stops make loops.)
5753
5754 Thu Mar  8 00:18:29 2001  Tim Janik  <timj@gtk.org>
5755
5756         * gtk/gtksignal.[hc]: removed old emission hook API.
5757         
5758         * docs/Changes-2.0.txt: fixed sections.
5759         
5760         * gtk/gtktextbuffer.c: signal arg fixups.
5761
5762 2001-03-07  Havoc Pennington  <hp@redhat.com>
5763
5764         * gtk/gtktextview.c (invalidated_handler): use PRIORITY_VALIDATE
5765
5766         * gtk/gtktextview.h (GTK_TEXT_VIEW_PRIORITY_VALIDATE): add this
5767         here, bug #50368; changed to be GDK_PRIORITY_REDRAW + 5, instead
5768         of GDK_PRIORITY_REDRAW + 1, so you can insert stuff in between the
5769         validation and the redraw which is higher priority than the
5770         validation.
5771
5772 2001-03-07  Havoc Pennington  <hp@redhat.com>
5773
5774         * gtk/gtkentry.c (gtk_entry_get_property): remove trailer
5775         (gtk_entry_set_property): remove trailer
5776
5777         * gtk/gtkentry.c (gtk_entry_set_width_chars): 
5778         (gtk_entry_get_width_chars): new functions, to set size request to 
5779         a given number of characters
5780
5781         * gtk/testgtk.c (create_dialog): beef up the dialog test slightly
5782
5783         * gtk/gtkdialog.c (gtk_dialog_set_has_separator): new function
5784         (gtk_dialog_get_has_separator): new function
5785         (run_delete_handler): fix to not emit "response" signal
5786         because we already did in the delete event handler installed
5787         at dialog creation time.
5788         
5789         * gtk/gtkdialog.h: add a has_separator property,
5790         add GTK_DIALOG_NO_SEPARATOR flag
5791
5792 2001-03-07  Havoc Pennington  <hp@redhat.com>
5793
5794         * gtk/gtkwindow.c (gtk_window_set_decorated): new function, turns
5795         off decorations for a window.
5796
5797         * demos/gtk-demo/button_box.c (create_bbox): adapt to button box
5798         changes
5799
5800         * gtk/gtklabel.c (gtk_label_get_layout_offsets): new function 
5801         to get location of PangoLayout inside the label, closes #51198
5802
5803         * gtk/testgtk.c (create_bbox): fix up button box usage
5804
5805         * gtk/testcalendar.c (create_calendar): fix up button box usage
5806
5807         * gtk/gtkfilesel.c (gtk_file_selection_init): fixup buttonbox usage
5808
5809         * gtk/gtkdialog.c (gtk_dialog_init): fixup buttonbox usage
5810
5811         * gtk/gtkhbbox.h: deprecations
5812
5813         * gtk/gtkvbbox.h: deprecations
5814
5815         * gtk/gtkbox.c (gtk_box_get_spacing): new function, used to
5816         emulate deprecated gtk_button_box_get_spacing
5817
5818         * gtk/gtkbbox.h: deprecate some useless functions, remove entirely 
5819         the "set global default" functions
5820         (struct _GtkButtonBox): remove "spacing" field, use the one from 
5821         GtkBox base class
5822
5823         * gtk/gtkbbox.c (_gtk_button_box_child_requisition): rename with uscore
5824
5825         * gtk/gtkiconfactory.c (gtk_icon_set_render_icon): If we fail to
5826         render the icon, return the missing image icon.
5827
5828         * gtk/gtkimage.c (gtk_image_set_from_file): fall back to missing
5829         image icon if the load fails.   
5830
5831         * gtk/gtkstock.h (GTK_STOCK_MISSING_IMAGE): Add stock icon for use
5832         when no image is found; should be the Netscape "missing image"
5833         icon eventually but for now is a random image
5834
5835         * gtk/gtkwindow.c (gtk_window_set_role): new function, sets the 
5836         role for the session manager
5837
5838         * gtk/testgtk.c (dnd_drop): remove use of GTK_WINDOW_DIALOG
5839
5840         * gtk/gtkcompat.h (GTK_WINDOW_DIALOG): compat #define
5841         GTK_WINDOW_DIALOG GTK_WINDOW_TOPLEVEL
5842
5843         * gtk/gtkenums.h (enum GtkWindowType): remove GTK_WINDOW_DIALOG
5844
5845 Wed Mar  7 13:24:57 2001  Tim Janik  <timj@gtk.org>
5846
5847         * gtk/*.c: marshaller fixes.
5848         
5849         * gtk/gtkmarshal.list: extreme cleanup.
5850
5851         * gtk/gtktreeview.c (gtk_tree_view_class_init): disable interface
5852         param spec for now.
5853
5854         * gtk/gtktexttag.c (gtk_text_tag_set_property): use g_value_get_boxed()
5855         where appliable.
5856
5857         * gtk/gtktypeutils.[hc]: updates to GLib API changes.
5858         special cased autogenerated boxed types from gtktypebuiltins_ids.c
5859         which are not reference counted:
5860         GtkSelectionData, GdkEvent, GdkColor, GtkTextIter, PangoTabArray,
5861         PangoFontDescription, GtkTreeIter and GtkTreePath.
5862
5863 Thu Mar  1 03:58:56 2001  Tim Janik  <timj@gtk.org>
5864
5865         * gtk/gtktreeselection.h: 
5866         * gtk/gtktreemodel.c:
5867         * gtk/gtktreedatalist.[hc]: fixed includes. no gobject/*
5868         file should be included directly, and gobject/gmarshal.h
5869         as well as gtk/gtkmarshal.h even can't be included directly.
5870
5871         * Makefile.am: grr, install gtk-config-2.0.
5872
5873         * gtk/testgtk.c:
5874         * gtk/simple.c:
5875         * gtk/gtkmenu.c:
5876         * gtk/gtkitemfactory.c: use g_object_connect() instead of
5877         passing "*signal*::*" args to gtk_widget_set().
5878         
5879         * gtk/gtktypeutils.[hc]: got rid of GTK_TYPE_SIGNAL.
5880         
5881         * gtk/*.c: removed trailer arg from property setters and getters.
5882         macro fixups.
5883
5884 2001-03-07  Alexander Larsson  <alexl@redhat.com>
5885
5886         * gtk/gtklabel.c (set_markup): Removed warning
5887
5888 Tue Mar  6 19:59:12 2001  Jonathan Blandford  <jrb@redhat.com>
5889
5890         * gtk/gtkcellrenderer.h (struct _GtkCellRenderer): Add visible
5891         field to allow you to hide cell renderers.
5892
5893         * gtk/gtkcellrenderer.c: Add support for invisible cells.
5894
5895         * gtk/gtktreeview.c: Add support for invisible cells.
5896
5897 Tue Mar  6 17:25:07 2001  Jonathan Blandford  <jrb@redhat.com>
5898
5899         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_button_clicked):
5900         Add "clicked" signal back to columns.
5901
5902         * ChangeLog: remove conflict markers.
5903
5904 Tue Mar  6 10:45:45 2001  Owen Taylor  <otaylor@redhat.com>
5905
5906         * gtk/gtkbutton.c: Add animation of activation by, on 
5907         activate, pressing the button, and adding a timeout that 
5908         releases the button after 250ms or on key release and
5909         emits ::clicked. (#51501)
5910
5911         * gtk/gtkdialog.c: Bit of a hack - for buttons in the
5912         action area, we connect to ::clicked instead of ::activate
5913         so the dialog stays up through the animation.
5914
5915 Mon Mar  5 16:38:15 2001  Owen Taylor  <otaylor@redhat.com>
5916
5917         * gtk/gtkmenushell.c (gtk_menu_shell_enter_notify): Only
5918         check the ignore_enter flag for the menu shell that
5919         the item is actually a child of, not for attached
5920         submenus. (#51536)
5921
5922 Tue Feb 27 02:16:14 2001  Owen Taylor  <otaylor@redhat.com>
5923
5924         * gtk/gtkmain.c (gtk_propagate_event): Only do special
5925         special key-press grab handling for widgets within
5926         GtkWindows. Otherwise, fall through to normal case.
5927
5928         This prevents key events being sent twice to GtkInvisible
5929         widgets, which can cause all sorts of mischief.
5930
5931 Fri Feb  2 13:20:12 2001  Owen Taylor  <otaylor@redhat.com>
5932
5933         * gtk/gtkmain.c (gtk_propagate_event): When a grab
5934         widget is in effect, give the grab widget a first
5935         crack at KEY_PRESS/RELEASE events. (#424)
5936
5937 2001-03-06  James Henstridge  <james@daa.com.au>
5938
5939         * gtk/gtkwidget.c (gtk_widget_class_init): set the class closure
5940         offset for the window_state_event to point at window_state_event
5941         rather than no_expose_event.
5942
5943 Mon Mar  5 19:10:15 2001  Jonathan Blandford  <jrb@redhat.com>
5944
5945         * gtk/gtkimmodule.h: fix busted /* comment */
5946
5947 Mon Mar  5 15:07:05 2001  Jonathan Blandford  <jrb@redhat.com>
5948
5949         * gtk/gtktreeview.c: Apply patch from John Margaglione to add
5950         object properties.
5951
5952 Mon Mar  5 14:55:19 2001  Jonathan Blandford  <jrb@redhat.com>
5953
5954         * gtk/gtkcellrenderertoggle.c: Apply patch from Lee Mallabone to
5955         add object properties.
5956
5957         * gtk/gtkcellrenderertextpixbuf.c: Apply patch from Lee Mallabone
5958         to add object properties.
5959
5960         * gtk/gtkcellrenderertext.c: Apply patch from Lee Mallabone to add
5961         object properties.
5962
5963         * gtk/gtkcellrendererpixbuf.c: Apply patch from Lee Mallabone to
5964         add object properties.
5965
5966         * gtk/gtkcellrenderer.c: Apply patch from Lee Mallabone to add
5967         object properties.
5968
5969 Mon Mar  5 14:38:54 2001  Jonathan Blandford  <jrb@redhat.com>
5970
5971         * gtk/gtktreemodel.c: renamed "child_toggled" to
5972         "has_child_toggled".
5973
5974         * gtk/gtktreeview.c: Handle removing columns better.  Updated to
5975         handle new signal name.
5976
5977         * gtk/gtktreestore.c: Updated to handle new signal name.
5978         * gtk/gtklisttore.c: Updated to handle new signal name.
5979         * gtk/gtktreemodelsort.c: Updated to handle new signal name.
5980
5981 2001-03-05  Alexander Larsson  <alexl@redhat.com>
5982
5983         * gtk/gtkmenu.c (gtk_menu_set_tearoff_state):
5984         Set GDK_WINDOW_TYPE_HINT_MENU on tearoff window.
5985
5986 2001-03-05  Michael Natterer  <mitch@gimp.org>
5987
5988         * gtk/gtklabel.c: Made the "parent_class" pointer static. The
5989         pixbuf-engine coincidentially also failed to make one of it's
5990         parent_class pointers static, causing overwriting of GtkLabel's
5991         parent_class pointer in pixbuf_style_class_init().
5992         (Will commit the fix to the pixbuf-engine too).
5993
5994 2001-03-05  Alexander Larsson  <alexl@redhat.com>
5995
5996         * gdk/gdkwindow.h:
5997         Added GdkWindowTypeHint type. Added modal_hint field to GdkWindindow.
5998         New functions gdk_window_set_type_hint, gdk_window_set_modal_hint and
5999         gdk_window_set_icon_list for net wmspec functionality.
6000
6001         * gdk/x11/gdkwindow-x11.c:
6002         Set _NEW_WM_STATE_MODAL from window->modal_hint in set_inital_hints.
6003         Implement gdk_window_set_type_hint, gdk_window_set_modal_hint and
6004         gdk_window_set_icon_list.
6005         Added gdk_wmspec_change_state helper function and used it in the code.
6006         Set _NET_WM_ICON_NAME in gdk_window_set_title and gdk_window_set_icon_name.
6007
6008         * gtk/gtkdialog.c (gtk_dialog_init):
6009         Set GDK_WINDOW_TYPE_HINT_DIALOG.
6010
6011         * gtk/gtkhandlebox.c (gtk_handle_box_realize):
6012         Set GDK_WINDOW_TYPE_HINT_TOOLBAR.
6013
6014         * gtk/gtkwindow.c:
6015         new function gtk_window_set_type_hint.
6016         On realize, set type hint and modal hint.
6017
6018         * gtk/gtkwindow.h:
6019         Added type_hint field and gtk_window_set_type_hint.
6020
6021 2001-03-05  Alexander Larsson  <alexl@redhat.com>
6022
6023         * gtk/gtklabel.[ch]:
6024         Convert from GtkArg to GParam (originally based on patch from Lee Mallabone).
6025         New function gtk_label_get_accel_keyval () to get the underline accelerator
6026         of the label. Setting the label pattern overrides other attributes.
6027
6028 Mon Mar  5 14:51:10 MET 2001  Sven Neumann  <sven@gimp.org>
6029
6030         * gtk/gtkrc.c: fixed compiler warnings by inserting some consts.
6031         Added missing initializers to gtk_rc_style_init().
6032
6033 Sun Mar 04  07:30:03 2001 CET Mikael Hermansson <mikeh@bahnhof.se>
6034
6035         * gtk/gtktextview.c: fixed bug #51097 about setting 
6036         gtk_text_view_set_border_window_size() if the widget is 
6037         already realized.
6038
6039 Sat Mar  3 16:59:16 2001  Owen Taylor  <otaylor@redhat.com>
6040
6041         * gdk/gdkpango.h gdk/x11/gdkwindow-x11.c: Doc fixes
6042
6043         * gdk/win32/gdkinput.c (gdk_device_get_axis): Remove doc
6044         comment. Won't do to have duplicated doc comments between
6045         the platform subdirs.
6046
6047 Sat Mar  3 16:26:33 2001  Owen Taylor  <otaylor@redhat.com>
6048
6049         * gdk/x11/gdkmain-x11.c gdk/x11/gdkkeys-x11.c 
6050           gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.c:
6051
6052         Detectable auto-repeat - make a repeating key generate
6053         press/press/press/release instead of press/release pairs.
6054
6055         If we have Xkb and XkbSetDectableAutoRepeat supports
6056         that, we do it that way. Otherwise, when we get
6057         a release event, we check ahead with XPending to see
6058         if the next key is a KeyPress with the same keycode
6059         and timestamp. (Not 100% reliable, but pretty close.)
6060           
6061 Tue Feb 27 02:16:14 2001  Owen Taylor  <otaylor@redhat.com>
6062         
6063         * gtk/gtkmain.c (gtk_propagate_event): Only do special
6064         special key-press grab handling for widgets within
6065         GtkWindows. Otherwise, fall through to normal case.
6066  
6067         This prevents key events being sent twice to GtkInvisible
6068         widgets, which can cause all sorts of mischief.
6069  
6070 Fri Feb  2 13:20:12 2001  Owen Taylor  <otaylor@redhat.com>
6071  
6072         * gtk/gtkmain.c (gtk_propagate_event): When a grab
6073         widget is in effect, give the grab widget a first
6074         crack at KEY_PRESS/RELEASE events. (#424)
6075  
6076 Sat Mar  3 15:39:49 2001  Owen Taylor  <otaylor@redhat.com>
6077
6078         * gtk/gtkentry.c (gtk_entry_button_press): Add shift-clicking
6079         to extend the selection. (Roughly based on patch
6080         from Jay Cox, #50939)
6081
6082         * gtk/gtkentry.c (gtk_entry_button_press): Fix triple-clicking
6083         to properly handle previous GDK_BUTTON_PRESS. 
6084         (Patch from Jay Cox, #50938)
6085
6086         * gtk/gtkentry.c (gtk_entry_real_delete_text): Move the
6087         '\0' back along with the deleted text. (#51148)
6088
6089 Mon Jan 22 14:31:29 2001  Owen Taylor  <otaylor@redhat.com>
6090
6091         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Unshift
6092         the group when extracting it from the X keyboard event.
6093
6094         * modules/input/Makefile.am modules/input/imipa.c: 
6095         Simple module for entering IPA. (Do we need a 
6096         gtk-stupid-input-tricks CVS module?)
6097
6098 Sat Mar  3 13:32:47 2001  Owen Taylor  <otaylor@redhat.com>
6099
6100         * gtk/gtkimmodule.c (gtk_im_module_init): Remove spurious
6101         const.
6102
6103         * gdk-pixbuf-2.0.pc.in gtk+-2.0.pc.in: Fix include path.
6104
6105         * gtk/gtkdialog.c (gtk_dialog_set_default_response): If there
6106         is no focus widget for the dialog currently, grab the focus as well
6107         as the default.
6108
6109         * gtk/gtkdialog.c (gtk_dialog_set_default_response): Get
6110         the action area's children to iterate through, not the
6111         dialog's children.
6112
6113 Sat Mar  3 13:21:27 2001  Owen Taylor  <otaylor@redhat.com>
6114
6115         * tests/Makefile.am tests/testsocket.c tests/testsocket_child.c:
6116         Add plug-socket tests. (Won't work worth a darn until I commit
6117         the rest of the plug-socket changes, but no reason these
6118         can't go into CVS now.)
6119
6120 2001-03-02  Havoc Pennington  <hp@redhat.com>
6121
6122         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_flush): use
6123         _gdk_region_get_xrectangles()
6124
6125         * gdk/x11/gdkmain-x11.c (_gdk_region_get_xrectangles): new function
6126
6127         * gtk/testgtk.c (create_shapes): add test for shape_combine_region
6128
6129         * gdk/x11/gdkwindow-x11.c (gdk_window_shape_combine_region): new
6130         function, contributed by Ron Steinke    
6131
6132         * gdk/x11/gdkevents-x11.c (gdk_wmspec_supported): rename
6133         gdk_net_wm_supports
6134
6135         * gdk/gdkregion-generic.c (gdk_region_get_rectangles): 
6136         New function, contributed by Ron Steinke
6137
6138         * gtk/gtkentry.c (gtk_entry_get_layout_offsets): New function, 
6139         used to line up the text in the entry when using the entry for
6140         editable sheet cell hacks
6141
6142         * gtk/testgtk.c (create_entry): test the activate_default setting
6143         on GtkEntry
6144
6145         * gtk/gtkentry.c (gtk_entry_set_activates_default): New function to 
6146         cause the entry to activate the default button for a dialog when 
6147         activated
6148         (gtk_entry_get_activates_default): new function
6149
6150 Wed Feb 28 19:10:43 2001  Owen Taylor  <otaylor@redhat.com>
6151
6152         * gtk/gtkclist.c (real_remove_row): Patch from ChiDeok
6153         Hwang to move call to sync_selection() up a few lines
6154         to before the row list is modified, to fix crash when
6155         removing rows in the undo_selection list.
6156
6157         (Test case provided by Daniel Elstner:
6158
6159         http://mail.gnome.org/archives/gtk-list/2001-February/msg00359.html)
6160
6161 Fri Feb 23 15:06:48 2001  Owen Taylor  <otaylor@redhat.com>
6162
6163         * gtk/gtktree.c (gtk_tree_class_init): Do the setting
6164         of tree->root_tree in parent_set rather than _map(), 
6165         fixing #50892 in a bit better manner.
6166
6167 Thu Feb 22 17:07:58 2001  Owen Taylor  <otaylor@redhat.com>
6168
6169         * gtk/gtkmenu.c (gtk_menu_popup): Don't flip cursor. (#50934)
6170
6171 Tue Feb  2 11:22:33 2001  Jody Goldberg <jgoldberg@home.com>
6172
6173         * gtk/gtkstyle.c : Remove duplicate fwd decl for
6174         gtk_default_draw_shadow.
6175
6176 ue Feb 20 11:40:58 2001  Owen Taylor  <otaylor@redhat.com>
6177
6178         * gdk/gdkimage.c (gdk_image_new): Remove excess 
6179         warning, make warnings more verbose, treat a error
6180         in shmat as permanent, and don't try again.
6181         (#51163, Ed Randall.)
6182
6183 Mon Feb 19 20:15:28 2001  Owen Taylor  <otaylor@redhat.com>
6184
6185         * gtk/gtkrange.c (gtk_range_timer_1st_time): Add an initial
6186         delay for the first click before starting to scroll.
6187         (based on #51026, gtk-enf-990512-0.patch, Eric Fisher)
6188
6189         * gtk/gtktext.c: GtkText should have I-beam cursor. 
6190         (based on gtk-enf-990513-1.patch, Eric Fisher.)
6191
6192 Mon Feb 19 16:42:19 2001  Owen Taylor  <otaylor@redhat.com>
6193
6194         * gtk/gtklayout.c (gtk_layout_allocate_child): Tiny
6195         cleanup to remove some references to unused
6196         ->xoffset, ->yoffset.
6197
6198 Mon Feb 19 14:20:36 2001  Owen Taylor  <otaylor@redhat.com>
6199
6200         * gdk/gdkrgb.c (gdk_rgb_convert_555_br): Fix incorrect
6201         mask. (#51039, fix from Martin Maierhofer)
6202
6203 Fri Feb 16 20:09:42 2001  Owen Taylor  <otaylor@redhat.com>
6204
6205         * gtk/gtkctree.c (gtk_ctree_class_init): Add bindings
6206         for unshifted + and shifted = for non-us keyboards.
6207         Make <Control>+ and <Control>- work as well as 
6208         <Control>KP_Plus, <Control>KP_Minus for recursive
6209         open/close.  (#2682, René Seindal)
6210
6211 Fri Feb 16 18:50:59 2001  Owen Taylor  <otaylor@redhat.com>
6212
6213         * gtk/gtkmenushell.c (gtk_real_menu_shell_cancel): Unset
6214         the active menu item before deactivating the menu,
6215         so gtk_menu_popdown doesn't change the history. (#50964)
6216         
6217 Fri Feb 16 15:55:22 2001  Owen Taylor  <otaylor@redhat.com>
6218
6219         * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): 
6220         draw lines with text_gc rather than black_gc.
6221         (Patch from Vlad Harchev <hvv hippo ru>, #50926)
6222
6223 Thu Mar  1 19:50:56 2001  Jonathan Blandford  <jrb@redhat.com>
6224
6225         * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_realize_button):
6226         Move handling of buttons fully in gtktreeviewcolumn.  This code is
6227         less interrelated then it was, but it still requires the
6228         GtkTreeView to map it.
6229
6230         * test/testtreecolumn.c: Now I can add a column to one view,
6231         remove it, add it to the another view, remove it, then re-add it
6232         to the first.  Nifty.
6233
6234 Thu Mar  1 13:14:27 GMT 2001  Tony Gale <gale@gtk.org>
6235
6236         * docs/tutorial/gtk-tut.sgml: Minor corrections
6237
6238 Wed Feb 28 16:36:46 2001  Jonathan Blandford  <jrb@redhat.com>
6239
6240         * gtk/gtktreemodel.c (gtk_tree_row_reference_*): Sanitize
6241         GtkRowReference.
6242
6243 2001-02-28  Havoc Pennington  <hp@redhat.com>
6244
6245         * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove draw_focus and
6246         draw_default
6247         (gtk_widget_draw_focus): remove this function; we could instead
6248         make it just gtk_widget_draw(), but in most cases I think the
6249         result would be broken user code, so think it's better to have
6250         that code not compile and get fixed
6251         (gtk_widget_draw_default): ditto
6252
6253         * gtk/gtkwidget.c: Add default handlers for focus_in_event and
6254         focus_out_event that set/unset GTK_HAS_FOCUS and call queue_draw
6255         
6256         * gtk/gtkwindow.c (gtk_window_set_default): just queue a draw when
6257         widgets lose/get the default, instead of calling draw_default
6258         
6259         * docs/Changes-2.0.txt: note about all this
6260
6261         Then fixed every widget in GTK, I won't list all the filenames.
6262
6263 Tue Feb 27 19:32:53 2001  Jonathan Blandford  <jrb@redhat.com>
6264
6265         * gtk/gtktreemodel.c (deleted_callback): Proxy out to
6266         _gtk_tree_row_reference_deleted.
6267         (inserted_callback): Proxy out to
6268         _gtk_tree_row_reference_inserted.
6269         (_gtk_tree_row_reference_new_from_view): Somewhat yukky hack to
6270         get around signal emission ordering problem.
6271
6272         * gtk/gtktreeselection.c (gtk_tree_selection_real_unselect_all):
6273         fix to work with SINGLE 
6274         (_gtk_tree_selection_internal_select_node): Major sanitization on
6275         selections.  SINGLE now seems to work.
6276
6277         * tests/Makefile.am: add testtreecolumn.c:
6278
6279         * tests/testtreecolumn.c: New test.  Mostly points out selection
6280         bugs currently, but will test columns later.
6281
6282         * gtk/gtkrbtree.c (_gtk_rbtree_remove_node): Fix really nasty
6283         selection bug.  I hate touching this code -- it's scary.
6284
6285 2001-02-26  Havoc Pennington  <hp@redhat.com>
6286
6287         * gtk/testgtk.c: test the window state stuff
6288
6289         * gtk/gtkwindow.c (gtk_window_present): new function, makes a
6290         window come to the user's attention as if it were just created
6291         (gtk_window_iconify): new function
6292         (gtk_window_deiconify): new function
6293         (gtk_window_stick): new function
6294         (gtk_window_unstick): new function
6295         (gtk_window_maximize): new function
6296         (gtk_window_unmaximize): new function
6297
6298         * gtk/gtkwidget.h, gtk/gtkwidget.c: add window_state_event signal
6299
6300         * gtk/gtkmain.c (gtk_main_do_event): handle GDK_WINDOW_STATE
6301
6302         * gdk/x11/gdkevents-x11.c: create window state events when
6303         appropriate
6304         (gdk_wmspec_supported): new function
6305
6306         * gdk/x11/gdkwindow-x11.c (gdk_window_iconify): handle
6307         iconification before showing the window
6308         (gdk_window_deiconify): new function
6309         (gdk_window_stick): new function
6310         (gdk_window_unstick): new function
6311         (gdk_window_maximize): new function
6312         (gdk_window_unmaximize): new function
6313
6314         * gdk/gdkwindow.c: store the window state in the window; 
6315         change to using the GDK_WINDOW_STATE_WITHDRAWN flag instead of
6316         window->mapped.
6317         (gdk_window_get_state): return the current window state
6318
6319         * gdk/gdkevents.c (gdk_event_get_time): handle GDK_WINDOW_STATE
6320         (gdk_event_get_state): handle GDK_WINDOW_STATE
6321         (gdk_synthesize_window_state): function to create the window state
6322         events
6323
6324         * gdk/gdkevents.h (struct _GdkEventWindowState): new type of
6325         event, for changes to "window state" such as maximized, sticky, 
6326         etc.
6327         
6328         * gdk/x11/gdkwindow-x11.c (gdk_window_focus): new function,
6329         focuses a window
6330
6331         * gdk/x11/gdkmain-x11.c (_gdk_wmspec_supported): new function, 
6332         finds out if we support a given WM spec hint
6333
6334 Tue Feb 27 13:37:38 GMT 2001  Tony Gale <gale@gtk.org>
6335
6336         * docs/faq/gtk-faq.sgml: New question re memory leaks.
6337
6338 2001-02-25  Hans Breuer  <hans@breuer.org>
6339
6340         * gdk/gdk.h : changed #ifdef GDK_DISBALE_DEPRECARED to #ifndef
6341         cause we want to loose those prototypes only in the latter case
6342
6343         * gdk/win32/gdkevents-win32.c : can't cast from GdkPixmap to
6344         GdkPixmapImplWin32 because it itsn't derived from it. Use the
6345         impl member variable instead
6346
6347         * gtk/gtk.def : updated
6348
6349         * gtk/gtklist.c : 
6350         * gtk/gtkmenus.c : include <string.h> for memset ()
6351
6352         * gtk/makefile.msc.in : updated and don't define GTK_COMPILATION
6353         for everthing built here, but for gtk-x.x.dll only. This solves
6354         problem of indifferent gtk type definitions
6355
6356 Sat Feb 24 20:11:39 2001  Jonathan Blandford  <jrb@redhat.com>
6357
6358         * gtk/gtkclipboard.h: actually put /* */ around #endif comment.
6359
6360 Fri Feb 23 17:50:13 2001  Jonathan Blandford  <jrb@redhat.com>
6361
6362         * gtk/gtktreeview.c (gtk_tree_view_bin_expose): Only draw the
6363         column that is exposed.
6364
6365         (_gtk_tree_view_update_size): Changed name from set_size, and
6366         changed function to do more work, and not force people calling it
6367         to figure out the size.  Simplifies a lot of code elsewhere.
6368
6369 2001-02-23  Alexander Larsson  <alexl@redhat.com>
6370
6371         * gdk/gdkpixmap.c (gdk_pixmap_colormap_new_from_pixbuf):
6372         return solid masks for xpms that have no transparent color.
6373         This makes the ..._create_from_xpm... API backwards
6374         compatible.
6375
6376 2001-02-23  Tor Lillqvist  <tml@iki.fi>
6377
6378         * README.win32: Update. Mention the gtk-1-3-win32-production
6379         branch.
6380
6381         * gdk/win32/bdfcursor.c: New file. A program that generates
6382         xcursors.h. Thanks to Stefan Ondrejicka.
6383
6384         * gdk/win32/xcursors.h: New file, contains the X cursor font in a
6385         compact format.
6386
6387         * gdk/win32/Makefile.am (EXTRA_DIST): Add new files.
6388
6389         * gdk/win32/gdkcursor-win32.c (_gdk_win32_data_to_wcursor): New
6390         function, uses xcursors.h.
6391         (gdk_cursor_new): Use _gdk_win32_data_to_wcursor to generate
6392         cursor from inline data instead of using LoadCursor() to generate
6393         it from a resource.
6394
6395         * gdk/win32/gdkevents-win32.c (gdk_event_translate): At button up
6396         event, must check the Windows message for mouse button state, as
6397         the GDK event state might not have been built if it is
6398         undelivered. Remove one goto.
6399
6400         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Call
6401         SetCursor() if the current cursor as returned by GetCursor() is
6402         the window's previous cursor. The ChildWindowFromPoint() test
6403         apparently didn't work correctly.
6404
6405         * gdk/win32/rc/*.cur: Remove.
6406
6407         * gdk/win32/rc/gdk.rc.in: Remove cursors.
6408
6409         * gdk/win32/rc/Makefile.am (EXTRA_DIST): Remove from here, too.
6410
6411         * gtk/makefile.{mingw,msc}.in: Updates.
6412
6413 Wed Feb 21 20:56:50 2001  Jonathan Blandford  <jrb@redhat.com>
6414
6415         * gtk/gtktreemodel.h: add functions for signal emission.
6416
6417         * gtk/gtktreestore.c: move to use above functions instead of
6418         g_signal_emit.
6419
6420         * gtk/gtkliststore.c: ditto
6421
6422 Wed Feb 21 15:41:34 2001  Jonathan Blandford  <jrb@redhat.com>
6423
6424         * gtk/gtktreestore.c: removed signals.  Moved to inherit from
6425         GObject instead of GtkObject.
6426
6427         * gtk/gtkliststore.c: ditto.
6428
6429         * gtk/gtktreemodelsort.c: ditto.
6430
6431         * gtk/gtktreemodel.c (gtk_tree_model_base_init): moved signals to
6432         GtkTreeModelIface, instead of in each model.
6433
6434 2001-02-21  Havoc Pennington  <hp@redhat.com>
6435
6436         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_child_anchor):
6437         unbreak this function
6438
6439         * gtk/gtkentry.c: apply patch from Lee Mallabone to add object 
6440         properties
6441
6442         * gtk/gtkcurve.c: apply patch from Lee Mallabone to add object
6443         properties
6444
6445         * gtk/gtkcombo.c: apply patch from Lee Mallabone to add object 
6446         properties
6447
6448         * gtk/gtkentry.c (gtk_entry_set_max_length): have this take -1 to
6449         mean unset the max length
6450
6451 Wed Feb 21 14:23:05 2001  Jonathan Blandford  <jrb@redhat.com>
6452
6453         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data_func):
6454         Changed name to be set_cell_data_func to make it clear what
6455         the functino does.  Close bug #51069.
6456
6457 Tue Feb 20 16:49:00 2001  Jonathan Blandford  <jrb@redhat.com>
6458
6459         * gtk/testgtk.c (main): Remove turning on of profiling malloc,
6460         have memory actually freed.  Keeps box running longer.
6461
6462 2001-02-21  Alexander Larsson  <alexl@redhat.com>
6463         
6464         * gtk/gtkseparatormenuitem.[ch]:
6465         Added new menu separator item. The drawing and size handling
6466         is still done in GtkMenuItem, but the API is a bit more sane.
6467         
6468         * gtk/Makefile.am:
6469         Add gtkseparatormenuitem.[ch].
6470
6471         * gtk/gtk.h:
6472         Add gtkseparatormenuitem.h.
6473         
6474         * gtk/gtkentry.c:
6475         * gtk/gtkmenufactory.c:
6476         * gtk/gtktextview.c:
6477         Use the new API for menu separators.
6478         
6479         * demos/gtk-demo/menus.c (create_menu):
6480         Add some GtkSeparatorMenuItem demo code.
6481
6482 2001-02-20  Havoc Pennington  <hp@redhat.com>
6483
6484         * gtk/gtkaspectframe.c: Convert to new property API, patch from 
6485         Lee Mallabone
6486
6487         * gtk/gtkarrow.c: Convert to new property API, patch from 
6488         Lee Mallabone
6489
6490 Tue Feb 20 14:26:41 2001  Jonathan Blandford  <jrb@redhat.com>
6491
6492         * tests/testtreeview.c (toggled_callback): fix to reflect change
6493         in GtkTreeModelStore.
6494
6495 Tue Feb 20 12:16:12 2001  Jonathan Blandford  <jrb@redhat.com>
6496
6497         * gtk/gtkiconfactory.c (gtk_icon_set_new_from_pixbuf): New
6498         function to create an icon set from a pixbuf.
6499
6500 2001-02-20  Alexander Larsson  <alexl@redhat.com>
6501
6502         * gtk/gtkcellrenderertext.[ch]:
6503         Add a "markup" property.
6504
6505         * gtk/treestoretest.c:
6506         Use the markup property, remove some leftover stuff from
6507         GtkTreeModelMapping.
6508
6509 2001-02-20  Alexander Larsson  <alexl@redhat.com>
6510
6511         * gtk/gtklabel.c (gtk_label_set_selectable):
6512         Queue a redraw if the selectable setting was changed.
6513
6514 2001-02-20  Alexander Larsson  <alexl@redhat.com>
6515
6516         * gdk/linux-fb/gdkgc-fb.c (gdk_gc_copy):
6517         Actually copy the whole gc, not just the public parts.
6518         
6519         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
6520         GDK_WINDOW_TEMP are not toplevel. Fixes selectable
6521         labels.
6522
6523 2001-02-19  Havoc Pennington  <hp@pobox.com>
6524
6525         * gdk/gdkwindow.c: docs
6526
6527         * gdk/gdkrgb.c: docs
6528
6529         * gdk/gdkregion-generic.c: docs
6530
6531         * gdk/gdkgc.c (gdk_gc_set_values): docs
6532
6533         * gdk/gdkdraw.c: docs
6534
6535         * gdk/gdkdrawable.h: deprecate drawable get/set data
6536
6537 Mon Feb 19 20:37:35 2001  Jonathan Blandford  <jrb@redhat.com>
6538
6539         * demos/gtk-demo/dialog.c: Add simple new demo.
6540
6541 2001-02-19  Havoc Pennington  <hp@redhat.com>
6542
6543         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): add
6544         insert_child_anchor signal, bug #50245
6545
6546         * gtk/gtktextbtree.c (_gtk_text_btree_insert_child_anchor): change
6547         from create_child_anchor, so the anchor is passed in
6548
6549         * gtk/gtktextchild.c (gtk_text_child_anchor_new): new function
6550         (_gtk_widget_segment_new): have the child anchor object passed in, 
6551         instead of creating it.
6552
6553         * gtk/gtktextbuffer.c (gtk_text_buffer_modified): rename
6554         to gtk_text_buffer_get_modified
6555
6556 2001-02-19  Havoc Pennington  <hp@redhat.com>
6557
6558         * gtk/gtktreemodel.c (gtk_tree_model_get_valist): hmm, someone
6559         changed GLib without fixing GTK
6560
6561         * gtk/gtkrange.h: Rename all the stupid implementation detail 
6562         functions to have an underscore in front. Most of them should 
6563         probably just go away, but for starters don't export them.
6564         Bug #50482
6565
6566 2001-02-19  Havoc Pennington  <hp@redhat.com>
6567
6568         * gdk/gdkcolor.h: test was backward, so deprecated functions were
6569         excluded by default
6570
6571         * gtk/gtkstyle.c (gtk_default_draw_diamond): draw etched in/out,
6572         clean up the old code a bit
6573
6574         * gtk/gtkradiobutton.c (gtk_radio_button_draw_indicator): draw
6575         inconsistent state
6576
6577         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_draw_indicator):
6578         draw inconsistent state
6579
6580         * gtk/testgtk.c (create_toggle_buttons): add test for inconsistent
6581         (create_menu): add inconsistent test
6582
6583         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_set_inconsistent):
6584         new function
6585         (gtk_check_menu_item_get_inconsistent): new function
6586         (gtk_real_check_menu_item_draw_indicator): draw the inconsistent
6587         state (using etched in for now)
6588
6589         * gtk/gtkcheckbutton.c (gtk_real_check_button_draw_indicator):
6590         draw inconsistent state
6591
6592         * gtk/gtktogglebutton.c (gtk_toggle_button_set_inconsistent): new
6593         function, used when the user has selected a range of stuff in
6594         different states
6595         (gtk_toggle_button_get_inconsistent): accessor for that
6596         (gtk_toggle_button_paint): draw inconsistent state (etched in?
6597         don't know what else to do)
6598
6599 2001-02-19  Hans Breuer <hans@breuer.org>
6600
6601         * gtk/gtk.def : updated exported symbols
6602
6603         * gtk/makefile.msc.in : updated
6604
6605         * gtk/gtkstyle.c (gtk_style_realize) : gets called without
6606         a colormap, when invoked from testgtk::entry. I'm not sure where
6607         the bug is, but g_return_if_fail (GDK_IS_COLORMAP (colormap));
6608         avoids immediate crashing ...
6609
6610         * gtk/gtkmain.c (check_setugid) : totally disabled on win32;
6611         any objections ?
6612
6613         * gtk/gtktreemodel.c : called G_VALUE_LCOPY with an extra
6614         0 parameter. At least msvc doesn't like macros with var args. 
6615         I simply removed the extra 0, was it a feature or a typo ?
6616
6617         * gtk/gtktreeviewcolumn.[hc] (gtk_tree_view_column_set_func) :
6618         removed the extra indirection from the GtkTreeViewColumnFunc parameter,
6619         because the value assignment to the internal struct wasn't working.
6620         I'm not absolutely sure. The problem could have been resolved by
6621         changing the "func" declartion in the struct, but was the pointer
6622         to the function pointer intended ?
6623
6624         * gtk+/gtk/gtktreedatalist.c : include gboxed.h
6625
6626         * gdk/gdk.def : updated exported symbols
6627
6628         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_image) :
6629         only use SetDIBitsToDevice if there is a palette at the drawable
6630         and the image is GDK_VISUAL_PSEUDO_COLOR
6631
6632         * gdk/win32/gdkkeys-win32.c : msvc still has no <unistd.h> ...
6633
6634         * gdk/win32/gdkwindow-win32.c : #include "gdk.h" /* gdk_rectangle_intersect */
6635
6636         * gdk/*/makefile.msc : updated
6637
6638 2001-02-19  Havoc Pennington  <hp@redhat.com>
6639
6640         * demos/gtk-demo/Makefile.am (INCLUDES): GDK_DISABLE_COMPAT_H,
6641         GDK_DISABLE_DEPRECATED (we need to merge those two #defines)
6642
6643         * gdk/x11/gdkmain-x11.c (gdk_key_repeat_disable): nuke
6644         (gdk_key_repeat_restore): nuke
6645
6646         * gdk/gdk.c (gdk_exit_func): #if 0 this for now, don't install it
6647         (gdk_init_check): no atexit func
6648
6649         * gdk/gdkrgb.h: mark some stuff deprecated
6650
6651         * gdk/gdkcolor.h: mark some stuff deprecated
6652         
6653         * gdk/gdk.h: deprecated gdk_exit, gdk_input_*
6654
6655         * gdk/gdkfont.h: bracket in GDK_DISABLE_DEPRECATED
6656
6657 2001-02-16  Havoc Pennington  <hp@redhat.com>
6658
6659         * gtk/gtkvscrollbar.c (gtk_vscrollbar_trough_keys): use the visual
6660         scroll steps.
6661
6662         * gtk/gtkvscale.c (gtk_vscale_trough_keys): use the visual scroll
6663         steps, and add Ctrl-arrow shortcuts for paging visually as with
6664         HScale, since Page Up and Page Down move logically.
6665
6666         * gtk/gtkenums.h (GtkScrollType): add GTK_SCROLL_STEP_UP,
6667         GTK_SCROLL_STEP_DOWN, etc. for visual scroll directions
6668         
6669         * gtk/gtkrange.c (gtk_range_key_press): handle the visual scroll
6670         steps
6671         (gtk_range_scroll): handle the visual steps
6672
6673         * gtk/gtklist.c (gtk_list_scroll_horizontal): handle the up/down
6674         scroll steps
6675
6676         * gtk/gtkhscale.c (gtk_hscale_trough_keys): use the visual scroll
6677         steps, not the logical ones.
6678
6679         * gtk/gtkclist.c (move_focus_row): handle the up/down scroll steps
6680         (scroll_vertical): handle up/down steps
6681
6682 2001-02-19 Alexander Larsson  <alexl@redhat.com>
6683
6684         * gdk/linux-fb/gdkimage-fb.c (gdk_image_new_bitmap):
6685         Copy data and free data with free().
6686
6687         * gdk-pixbuf/gdk-pixbuf.c:
6688         * gdk-pixbuf/io-jpeg.c:
6689         * gdk-pixbuf/io-png.c:
6690         Use g_try_malloc/g_free instead malloc/free.
6691         
6692         * gdk-pixbuf/test-gdk-pixbuf.c:
6693         Must... initialize... gobject...
6694         
6695         * gdk-pixbuf/pixops/timescale.c:
6696         * gtk/gtkcalendar.c:
6697         Use g_malloc instead of malloc.
6698         
6699 2001-02-19 Alexander Larsson  <alla@lysator.liu.se>
6700
6701         * gtk/testgtkrc:
6702         Comment out property assignments, these don't work yet.
6703
6704 2001-02-17  Havoc Pennington  <hp@pobox.com>
6705
6706         * gtk/gtkalignment.c (gtk_alignment_class_init): clean this up a
6707         bit.
6708
6709 2001-02-17  Havoc Pennington  <hp@pobox.com>
6710
6711         * gtk/gtklabel.c (gtk_label_ensure_layout): fix screwup with
6712         shadowed variables that had broken size request in some cases,
6713         leading to bogus tooltips (#50996)
6714
6715 2001-02-06  Jon K Hellan  <hellan@acm.org>
6716
6717         Implement fast browsing of tooltips, bug #50619
6718         
6719         * gtk/gtktooltips.h (struct _GtkTooltips): Add use_sticky_delay
6720         and last_popdown
6721         
6722         * gtk/gtktooltips.c (gtk_tooltips_init): Initialize sticky_delay,
6723         use_sticky_delay and last_popdown.
6724         (gtk_tooltips_draw_tips, gtk_tooltips_set_active_widget): Record
6725         time of popdown.
6726         (gtk_tooltips_set_active_widget): Unset sticky behaviour if widget
6727         is NULL.
6728         (gtk_tooltips_recently_shown): New static function.  Return true
6729         if < sticky_delay has elapsed since last popdown.
6730         (gtk_tooltips_event_handler): Display window after sticky_delay
6731         (presumably < normal delay) if < STICKY_REVERT_DELAY has elapsed
6732         since last popdown.
6733         
6734 2001-02-17  Havoc Pennington  <hp@pobox.com>
6735
6736         * gtk/gtktypeutils.h (GtkSignalFunc): change it to take (void)
6737         instead of (). #6394
6738
6739         * gtk/gtkprogressbar.c (gtk_progress_bar_get_text): Add
6740         G_CONST_RETURN, make it return by reference, #50473
6741         
6742 Sat Feb 17 06:47:27 2001  Tim Janik  <timj@gtk.org>
6743
6744         * gtk/gtkmenu.c (gtk_menu_motion_notify): default initialize the
6745         generated ENTER_NOTIFY event with 0, otherwise not explicitely
6746         setup fields contain garbage (e.g. subwindow, breaking
6747         gdk_drawable_ref() upon event copy).
6748         (gtk_menu_stop_navigating_submenu_cb): same here.
6749
6750         * gtk/gtklist.c (gtk_list_vertical_timeout): 
6751         * gtk/gtklist.c (gtk_list_horizontal_timeout): 
6752         * gtk/gtkclist.c (vertical_timeout): 
6753         * gtk/gtkclist.c (horizontal_timeout): change direct assignment
6754         default-zero-intialization for unions to memset(,0,), as unions are
6755         not fully default-zero-initialized by compilers (GdkEvent x = { 0, };
6756         has to become GdkEvent x; memset (&x, 0, sizeof (x)); )
6757
6758         * gtk/gtktreeview.c (gtk_tree_view_set_rows_drag_source): scratch
6759         g_closure_sink() warning.
6760
6761         * gtk/gtktreemodel.c (gtk_tree_model_get_valist): 
6762         * gtk/gtktreestore.c (gtk_tree_store_set_valist): 
6763         * gtk/gtkliststore.c (gtk_list_store_set_valist): 
6764         fix G_VALUE_COLLECT() and G_VALUE_LCOPY() calls.
6765         
6766 Fri Feb 16 17:49:59 2001  Jonathan Blandford  <jrb@redhat.com>
6767
6768         * gtk/gtktreestore.[hc], gtk/gtkliststore.[ch]: removed
6769         gtk_*_store_get, and moved to GtkTreeModel.
6770
6771         * gtk/gtktreemodel.h (gtk_tree_model_set{v,}): Added
6772
6773         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_finalize): added.
6774
6775         * gtk/Makefile.am: remove gtktreemodelmapping.[ch]
6776
6777         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_func): let you
6778         set the func.
6779
6780         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
6781         freeze/thaw notify between setting all the properties for a cell.
6782
6783         * gtk/gtk.h: remove gtktreemodelsimple.h, and gtktreemodelmapping.h
6784
6785 2001-02-15  Havoc Pennington  <hp@redhat.com>
6786
6787         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): convert
6788         the X coordinates so they're with respect to the line, rather than 
6789         with respect to the layout.
6790
6791         * gtk/gtkalignment.c: Convert to new property API, patch from Lee
6792         Mallabone
6793
6794         * gtk/testgtk.c (create_range_controls): add vscale tests, 
6795         and inverted test
6796
6797         * gtk/gtkrange.c (gtk_range_set_inverted): new function to fix 
6798         #50806
6799
6800         * gtk/gtkentry.c (gtk_entry_get_text): add G_CONST_RETURN
6801
6802         * gtk/gtktextiter.h (gtk_text_iter_is_last): rename 
6803         gtk_text_iter_is_end
6804
6805         * gtk/gtktextbuffer.h (gtk_text_buffer_get_last_iter):
6806         rename gtk_text_buffer_get_end_iter
6807
6808         * gtk/testgtk.c (create_labels): Add test for selectable
6809
6810         * gtk/gtkentry.c (gtk_entry_draw_text): Use new GDK API to draw
6811         the selection stuff. This code is kind of broken since it doesn't 
6812         use the theme engine.
6813
6814         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): 
6815         fix infinite loop and y offset problem
6816         (gdk_draw_layout_line_with_colors): fix foreground color handling
6817
6818         * gtk/gtklabel.h, gtk/gtklabel.c: Implement a "selectable" flag 
6819         that makes the label selectable.
6820         
6821         * gtk/gtklabel.c (gtk_label_style_set): recreate the label's
6822         layout when the style is set, since fonts etc. could have changed.      
6823
6824 Fri Feb 16 14:22:05 2001  Jonathan Blandford  <jrb@redhat.com>
6825
6826         * gtk/Makefile.am: Removed gtktreemodelsimple.[ch]
6827
6828         * gtk/gtktreemodelsimple.[ch]: removed.
6829
6830 2001-02-16  Alexander Larsson  <alexl@redhat.com>
6831
6832         * gtk/gtktreemodelmapping.[ch]:
6833         New files. Implement GtkTreeModelMapping.
6834         
6835         * gtk/Makefile.am:
6836         Add gtktreemodelmapping.[ch].
6837         
6838         * gtk/gtk.h:
6839         Add gtktreemodelmapping.h
6840
6841         * gtk/treestoretest.c:
6842         Test the GtkTreeModelMapping
6843
6844 Tue Feb 13 13:16:09 2001  Jonathan Blandford  <jrb@redhat.com>
6845
6846         * demos/gtk-demo/panes.c (create_pane_options): If we're going to
6847         have a demo, we might as well pass in real values.  Thanks to
6848         clahey for pointing this out.
6849
6850 2001-02-14  Havoc Pennington  <hp@pobox.com>
6851
6852         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_remove): add
6853         "static" to a private function
6854         (gtk_image_menu_item_class_init): remove destroy handler,
6855         add "image" object property
6856
6857 2001-02-13  Alexander Larsson  <alla@lysator.liu.se>
6858
6859         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_clip_region):
6860         Add a shortcut if the window and the current clip_region doesn't
6861         overlap. This is needed when there are a lot of windows in a
6862         window. The layout test in testgtk is a good test.
6863
6864         * gdk/linux-fb/gdkwindow-fb.c:
6865         Whitespace fix.
6866
6867 2001-02-13  Sven Neumann  <sven@convergence.de>
6868
6869         * demos/testanimation.c: replaced deprecated gtk_drawing_area_size
6870
6871 2001-02-13  Alexander Larsson  <alexl@redhat.com>
6872
6873         * gdk/linux-fb/gdkcursor-fb.c (gdk_fb_cursor_unhide):
6874         Don't reference last_cursor if it is null. Fixes crash when rotating
6875         the screen before having moved the mouse.
6876
6877         * gdk/linux-fb/gdkcc-fb.c: Zapp!
6878
6879         * gdk/linux-fb/Makefile.am: Don't compile gdkcc-fb.c
6880
6881         * gdk/linux-fb/gdkwindow-fb.c: Fix typo. width->height. Fixes redraw 
6882         when using 90 or 270 degrees rotation.
6883
6884 2001-02-12  Havoc Pennington  <hp@pobox.com>
6885
6886         * gdk/gdkpango.c (gdk_pango_get_gc): fix bug where 
6887         it always set the foreground, even if we were only using
6888         a stipple.
6889         (gdk_draw_layout_line_with_colors): new function, allow
6890         override colors
6891         (gdk_draw_layout_with_colors): new function, allow override
6892         colors
6893         (gdk_pango_layout_line_get_clip_region): function to get the clip
6894         region for a logical text range
6895         (gdk_pango_layout_get_clip_region): get the clip region for a
6896         logical text range
6897
6898         * gdk/x11/gdkcolor-x11.c: forward declare gdk_colormap_sync(),
6899         (gdk_colormap_new): fix call to gdk_colormap_sync() so it has 
6900         the right number of arguments.
6901
6902         * gtk/gtktextbtree.c (gtk_text_btree_node_check_consistency):
6903         enhance the function to check that node data corresponds to a 
6904         view still belonging to the tree.
6905
6906         * gtk/gtktreeview.c (gtk_tree_view_changed): we were leaking the 
6907         GtkTreePath
6908         (gtk_tree_view_inserted): ditto
6909         (gtk_tree_view_child_toggled): ditto
6910
6911         * gtk/gtktreemodel.c (gtk_tree_path_append_index): use realloc to
6912         simplify this code.
6913
6914         * gtk/gtkcellrenderertext.c (get_layout): fix leak of 
6915         a PangoAttrList
6916
6917         * demos/gtk-demo/main.c (load_file): Fix leak of a GString
6918
6919         * gtk/gtkentry.c (gtk_entry_realize): Fix leak of a GdkCursor
6920
6921         * gtk/gtkmenubar.c (gtk_menu_bar_size_request): consider toggle
6922         size in the size request 
6923         (gtk_menu_bar_size_allocate): consider toggle size here
6924
6925         * gtk/gtkimagemenuitem.h, gtkimagemenuitem.c: Menu item
6926         that displays a widget in the toggle slot
6927
6928         * gtk/testgtk.c: test GtkImageMenuItem
6929
6930         * gtk/Makefile.am, gtk/gtk.h: Add GtkImageMenuItem
6931         
6932         * gtk/gtkmenuitem.h: Use "gint" not "guint16" for toggle size
6933         request and allocation
6934
6935         * gtk/gtkmenu.c (gtk_menu_size_request): use gint not guint16
6936
6937         * gtk/gtkcheckmenuitem.c
6938         (gtk_check_menu_item_toggle_size_request): ditto
6939         
6940 Mon Feb 12 23:43:30 2001  Owen Taylor  <otaylor@redhat.com>
6941
6942         * gtk/Makefile.am (gdk_headers): Remove gdkcc.h 
6943         reference.
6944
6945         * configure.in gtk/gtkmain.c: Add checks for setuid/setgid,
6946         and refuse to initialize GTK+ if they fail.
6947
6948 Mon Feb 12 15:02:07 2001  Owen Taylor  <otaylor@redhat.com>
6949
6950         * configure.in: Add check for gtk-doc version.
6951
6952 Thu Feb  8 17:18:26 2001  Owen Taylor  <otaylor@redhat.com>
6953
6954         * gtk/gtklabel.c (gtk_label_size_request): Fix bug
6955         where the xpad/ypad was only being used on one side!
6956
6957 2001-02-11  Tor Lillqvist  <tml@iki.fi>
6958
6959         * gdk/win32/gdkcolor-win32.c (gdk_colormap_query_color): New
6960         function, copied from X11 version.
6961
6962         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Eliminate
6963         DestroyCursor failures. The reason for the problem (despite the
6964         inconsistent messages from GetLastError()) was that
6965         DestroyCursor() cannot be called while a cursor is set in a
6966         window. Set the new cursor first and then destroy the old one.
6967         Thanks to jpe@archaeopteryx.com.
6968
6969         * gdk/win32/gdkcc-win32.c: Remove.
6970
6971         * gdk/win32/Makefile.am: Remove from here, too.
6972         
6973         * gdk/gdk.def
6974         * gdk/makefile.mingw.in: Update. Godbye GdkColorContext.
6975
6976         * gtk/gtk.def
6977         * gtk/makefile.mingw.in: Updates.
6978
6979 2001-02-08  Havoc Pennington  <hp@redhat.com>
6980
6981         * gtk/gtkbin.c (gtk_bin_add): better error message if you try to
6982         add a widget to a bin that already has a child.
6983
6984         * gdk/gdkcc.h, gdk/gdkcc-x11.c: Remove GdkColorContext, #50512
6985
6986         * docs/Changes-2.0.txt: note that GdkColorContext is gone.
6987         
6988         * gdk/x11/Makefile.am (libgdk_x11_la_SOURCES): remove gdkcc-x11.c
6989
6990         * gdk/gdk.h: remove gdkcc.h
6991
6992         * gdk/Makefile.am (gdk_public_h_sources): remove gdkcc.h
6993
6994         * gtk/gtkpixmap.c (build_insensitive_pixmap): rewrite using
6995         GdkPixbuf, since the previous implementation was GdkColorContext
6996         dependent.
6997
6998         * gtk/testgtk.c (create_pixmap): add test for insensitive GtkPixmap
6999         
7000 Thu Feb  8 19:00:00 2001  Jonathan Blandford  <jrb@redhat.com>
7001
7002         * gtk/gtktreeview.c (TREE_VIEW_VERTICAL_SEPARATOR): moved back to
7003         a sane value!
7004
7005 2001-02-08  Havoc Pennington  <hp@redhat.com>
7006
7007         * gtk/gtkstyle.c (get_darkened_gc): let's darken colors, not
7008         lighten them.
7009
7010 2001-02-08  Havoc Pennington  <hp@redhat.com>
7011
7012         * gtk/gtktextview.c (gtk_text_view_destroy_layout): remove
7013         validation idle
7014
7015         * demos/gtk-demo/main.c (create_tree): adjust to changes in text
7016         cell renderer
7017
7018         * demos/pixbuf-demo.c (timeout): remove deprecated
7019         gtk_widget_draw
7020
7021         * demos/testpixbuf-save.c (main): remove deprecated
7022         gtk_drawing_area_size
7023
7024         * gtk/gtktreeview.c (gtk_tree_view_size_allocate): allocate
7025         buttons even if the model isn't setup. gtk_tree_view_check_dirty()
7026         at the start of the allocation.
7027         (gtk_tree_view_check_dirty): handle column->button == NULL, handle
7028         unsetup or NULL model.
7029
7030         * gtk/gtkstyle.c (gtk_default_draw_flat_box): drawing for the 
7031         even/odd/sorted cells in the tree view.
7032
7033         * gtk/gtktreeselection.c (gtk_tree_selection_real_unselect_all):
7034         bugfixes
7035
7036         * gtk/gtktreeview.c: assorted bugfixy stuff. Draw the row
7037         backgrounds with draw_flat_box using different detail for even/odd
7038         rows.
7039
7040         * gtk/gtkrbtree.c, gtkrbtree.h: Keep track of the parity of each
7041         row, so we can draw the alternating colors thing
7042
7043         * gtk/gtktexttag.c (gtk_text_tag_set_property): if we change a
7044         property from a synonym property, notify for the synonym.
7045         Also, nuke the background_gdk_set and foreground_gdk_set synonyms
7046         (gtk_text_tag_get_property): Always return the font, even if
7047         all its fields aren't set
7048
7049         * gtk/gtkcellrenderertext.h (struct _GtkCellRendererText): don't
7050         store the attr list; it leaves us with no way to change attributes
7051         in _render according to the render flags, and no way to implement
7052         get_property. Instead store all the specific text attributes. 
7053         Separate whether an attribute is enabled from its value. Sync all
7054         properties with GtkTextTag, make them all consistent, etc.
7055
7056         * gtk/gtkcellrenderer.h: Add a flag GTK_CELL_RENDERER_SORTED so
7057         renderers can highlight the sort row/column     
7058
7059         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_get_property): use
7060         accessor functions to get values; this has the side effect of
7061         showing up which accessor functions were missing. Added those.
7062
7063         * gtk/gtktreeviewcolumn.h: Replace set_justification with
7064         set_alignment, to be consistent with GtkLabel, GtkMisc
7065
7066         * gtk/gtktreeviewcolumn.c: Added code to display sort indicator
7067         arrow.
7068
7069         * gtk/Makefile.am (gtk_public_h_sources): add gtktreesortable.h
7070
7071         * gtk/gtktreesortable.h: updates in here
7072
7073 2001-02-07  Sven Neumann  <sven@convergence.de>
7074
7075         * gtk/gtkentry.c (gtk_entry_draw_text): convert area_height to 
7076         pango dimensions after painting the background. We used to draw
7077         gigantic flat boxes here.
7078
7079 Mon Feb  5 22:05:57 2001  Owen Taylor  <otaylor@redhat.com>
7080
7081         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Fix syntax
7082         error introduced with earlier commit) (pointed out by
7083         Ollie Lho)
7084
7085 Mon Feb  5 12:25:06 2001  Owen Taylor  <otaylor@redhat.com>
7086
7087         * gtk/gtkbutton.c: Remove calls to gtk_grab_add/gtk_grab_remove,
7088         which are no longer necessary.
7089
7090 Mon Feb  5 13:22:54 GMT 2001  Tony Gale <gale@gtk.org>
7091
7092         * docs/faq/gtk-faq.sgml: s/MISK/MISC/
7093
7094 2001-02-04  Tor Lillqvist  <tml@iki.fi>
7095
7096         * gdk/gdk.def
7097         * gdk/win32/gdkim-win32.c (gdk_ic_attr_new, gdk_ic_attr_destroy):
7098         Provide dummy implementations.
7099
7100 Sun Feb  4 07:55:17 2001  Tim Janik  <timj@gtk.org>
7101
7102         * gtk/gtksignal.h: removed gtk_signal_init() compat define.
7103
7104         * gtk/gtktypeutils.[hc]: gtk_tpye_init() take an additional argument
7105         GTypeDebugFlags debug_flags and pass it on to g_type_init ();
7106         deprecated this function.
7107
7108         * gdk/gdk.c (gdk_init_check): call g_type_init () with 0 as
7109         argument.
7110
7111 Sun Feb  4 07:45:45 2001  Tim Janik  <timj@gtk.org>
7112
7113         * gtk/gtkdebug.h: nuke GTK_DEBUG_OBJECTS and GTK_DEBUG_SIGNALS.
7114
7115 2001-02-03  Havoc Pennington  <hp@pobox.com>
7116
7117         * gtk/gtktextbtree.c (_gtk_text_btree_tag): Fix bug reported by
7118         Mikael Hermansson with patch from Mikael (if there was a toggle
7119         start one after the first character in the range, this function
7120         was broken). Bug #50380
7121
7122 Sat Feb  3 11:28:03 2001  Owen Taylor  <otaylor@redhat.com>
7123
7124         * configure.in: Remove confusing comment about X11.
7125
7126 Fri Feb  2 19:21:23 2001  Owen Taylor  <otaylor@redhat.com>
7127
7128         * gdk/gdkwindow.c (gdk_propagate_shapes): Surround additional
7129         regions with HAVE_SHAPE_EXT. (#50511, Eric Ding)
7130         
7131 Fri Feb  2 18:31:54 2001  Owen Taylor  <otaylor@redhat.com>
7132
7133         * gdk/x11/gdkimage-x11.c: Remove definition of _XOPEN_SOURCE, since
7134         it breaks things on BSD. If you want to compile GTK+ with
7135         -ansi -pedantic, you should supply CPP_FLAGS=_XOPEN_SOURCE 
7136         when configuring, since GTK+ simply can't be "pure ANSI" 
7137         in the header files it uses. (#8170, Greg Hudson)
7138
7139 2001-02-02  Havoc Pennington  <hp@redhat.com>
7140
7141         * gtk/gtkwindow.c: docs
7142
7143         * gtk/gtkwidget.c: docs
7144         (gtk_widget_set_colormap): add a reference to the colormap
7145         (gtk_widget_get_default_colormap): add a reference to the colormap
7146
7147         * gtk/gtktextbtree.c (gtk_text_mark_set_visible): docs
7148
7149         * gtk/gtktextiter.c: docs
7150
7151         * gtk/gtkmain.c (gtk_propagate_event): docs
7152
7153         * gtk/gtkpaned.c (gtk_paned_get_position): docs
7154         (gtk_paned_set_position): docs
7155
7156         * gtk/gtktreesortable.h (struct _GtkTreeSortableIface): Initial
7157         sort interface, no implementation yet.
7158
7159         * demos/testpixbuf.c (new_testrgb_window): replace
7160         gtk_drawing_area_size() with gtk_widget_set_usize()
7161
7162         * demos/testpixbuf-drawable.c (main): ditto
7163         
7164         * gtk/testgtk.c: remove use of GtkStatusbarMsg
7165
7166         * gtk/gtktextbuffer.c: docs
7167
7168         * gtk/gtkstock.c: docs
7169
7170         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_set_shadow_type): docs
7171
7172         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): docs
7173
7174         * gtk/gtklabel.c (gtk_label_set_markup_with_accel): fix docs
7175         
7176         * gtk/gtkimage.c: add some docs in here
7177         (gtk_image_size_request): change name of
7178         gtk_widget_render_stock_icon
7179         (gtk_image_get_icon_set): don't dup returned string
7180         (gtk_image_get_icon_set): don't dup returned string
7181
7182         * gtk/gtkwidget.c (gtk_widget_render_icon): rename from 
7183         gtk_widget_render_stock_icon(), more consistent with gtkstyle.h
7184         and gtkiconfactory.h functions
7185
7186         * gtk/gtkiconfactory.c: add some docs in here
7187
7188         * gtk/gtkmain.c (gtk_get_default_language): document
7189         (gtk_get_current_event): document
7190         (gtk_get_current_event_state): document
7191         (gtk_get_event_widget): document
7192
7193         * gtk/gtkentry.c (gtk_entry_set_invisible_char): document
7194
7195         * gtk/gtkcontainer.c: Add some documentation
7196         (gtk_container_add): give a more explanatory warning on adding an
7197         already-parented widget, this is kind of a FAQ and also a common
7198         typo that's easier to debug with a nice warning 
7199
7200         * gtk/gtkcellrenderertoggle.c
7201         (gtk_cell_renderer_toggle_get_active): remove, I was on crack
7202         adding this, it's useless
7203         (gtk_cell_renderer_toggle_set_active): remove
7204         (gtk_cell_renderer_toggle_get_radio): add
7205
7206         * gtk/gtkcellrenderer.c (gtk_cell_renderer_get_size): don't allow
7207         the NULL cell renderer, that doesn't make any sense to me. 
7208
7209         * demos/gtk-demo/Makefile.am (INCLUDES): -DGTK_DISABLE_DEPRECATED,
7210         demo code should never use deprecated features.
7211
7212         * demos/Makefile.am (INCLUDES): -DGTK_DISABLE_DEPRECATED, demo
7213         code should never use deprecated features.
7214
7215         * gtk/gtkwidget.h: Mark gtk_widget_draw, gtk_widget_queue_clear,
7216         gtk_widget_queue_clear_area deprecated
7217
7218         * gtk/gtklayout.h: mark gtk_layout_freeze/gtk_layout_thaw
7219         deprecated
7220
7221         * gtk/gtklabel.h: mark gtk_label_get() deprecated
7222
7223         * gtk/gtkimage.h: mark the legacy GtkImage functions that took 
7224         a GdkImage deprecated, replaced by new consistently-named
7225         functions       
7226
7227         * gtk/gtkmain.h: Mark gtk_exit() deprecated
7228
7229         * gtk/gtkdrawingarea.h: mark gtk_drawing_area_size deprecated
7230
7231         * gtk/gtkstyle.h: mark gtk_draw_string, gtk_paint_string 
7232         deprecated
7233
7234         * gtk/gtkstatusbar.h: Move GtkStatusbarMsg to the .c file, 
7235         so it won't appear in docs and confuse people.
7236
7237         * gtk/gtkprogressbar.h: Mark all the old methods deprecated
7238
7239         * gtk/gtkprogress.h: Mark all methods deprecated, mark the cast
7240         macros deprecated. (can't mark the type itself deprecated, since
7241         GtkProgressBar is not deprecated and we need the type decl to use
7242         GtkProgressBar)
7243
7244         * gtk/gtkpixmap.h: Mark deprecated
7245
7246         * gtk/gtkoldeditable.h: Mark deprecated
7247
7248         * gtk/gtklist.h: Mark deprecated
7249
7250         * gtk/gtklabel.h: delete "GtkLabelWord" typedef, not used 
7251         for anything anymore.
7252
7253         * gtk/gtkctree.h: Mark deprecated
7254
7255         * gtk/gtkclist.h: Mark deprecated
7256
7257         * gtk/gtkpreview.h: Mark deprecated
7258
7259         * gtk/gtkpacker.h: Mark deprecated
7260
7261         * gtk/gtktipsquery.h: Mark deprecated
7262
7263         * gtk/gtkinputdialog.h: Add comment that it will move out of GTK
7264
7265         * gtk/gtkvruler.h: Add comment that it will move out of GTK
7266
7267         * gtk/gtkhruler.h: Add comment that it will move out of GTK
7268
7269         * gtk/gtkruler.h: Add comment that it will move out of GTK
7270
7271         * gtk/gtkgamma.h: Add comment that it will move out of GTK
7272
7273         * gtk/gtkcurve.h: Add comment that it will move out of GTK
7274
7275 Fri Feb  2 17:16:09 2001  Owen Taylor  <otaylor@redhat.com>
7276
7277         * gdk/x11/gdkcolor-x11.c (gdk_colormap_sync): Make
7278         gdk_colormap_sync private since it was never exported
7279         in a header file.
7280
7281         * gdk/x11/gdkcolor-x11.c (gdk_colormap_new): Fill in
7282         colormap->colors[] for StaticGray, StaticColor colormaps.
7283
7284         * gdk/gdkpixbuf-drawable.c: Fix problems where image->bpp
7285         was being used as if it was image->bits_per_pixel.
7286
7287         * gdk/gdkimage.h, gdk/x11/gdkimage-x11.c: Save the bits-per-pixel
7288         for the image in the GdkImage structure since it isn't
7289         reconstructable, and we need it to handle packed types
7290
7291         * gdk/win32/gdkimage-win32.c: Set image->bits_per_pixel. (I'm making
7292         the assumption that on Win32 image->bits_per_pixel == image->depth,
7293         always.
7294
7295         * gdk/linux-fb/gdkimage-fb.c: Set image->bits_per_pixel.
7296
7297         * gdk/gdkrgb.c (gdk_rgb_select_conv): Exit with an informative
7298         warning message if no converter can be found. 
7299
7300 Fri Feb  2 15:09:51 2001  Owen Taylor  <otaylor@redhat.com>
7301
7302         * gtk/fnmatch.c (FOLD): Fix problem with passing signed
7303         chars to isupper() / tolower(). (#567)
7304
7305         * examples/packer/pack.c: Add GINT_TO_POINTER, GPOINTER_TO_INT
7306         to clear up 64-bit warnings. (#567)
7307
7308 Fri Feb  2 12:26:50 2001  Owen Taylor  <otaylor@redhat.com>
7309
7310         * gtk/gtkrc.c (gtk_rc_add_initial_default_files): Get rid of
7311         a bunch of g_strdup_printf("%s%s") in favor of g_strconcat().
7312
7313         * gtk/gtkrc.c Makefile.am: Use $(libdir), not $(exe_prefix),
7314         since some people set $(libdir) separately. (#1290, David Kaelbling)
7315
7316 Thu Feb  1 18:25:46 2001  Owen Taylor  <otaylor@redhat.com>
7317
7318         * gtk/gtkfilesel.c: If PATH_MAX and MAXPATHLEN are not
7319         defined, define MAXPATHLEN to 2048. (The Hurd doesn't have
7320         MAXPATHLEN, but the code here depends on a fixed value.)
7321         (#4524)
7322
7323 Wed Jan 31 22:01:04 2001  Owen Taylor  <otaylor@redhat.com>
7324
7325         * gtk/gtkhandlebox.c (gtk_handle_box_button_changed): Handle the case
7326         where child == NULL and handle_position == RIGHT or BOTTOM. (#8041g)
7327
7328 Wed Jan 31 21:20:39 2001  Owen Taylor  <otaylor@redhat.com>
7329
7330         * gtk/gtkctree.c (real_tree_move): If the node being moved isn't
7331         viewable there is no way that moving the node will cause the 
7332         focus row to become not viewable, so omit check on the visibility
7333         of new_sibling, which is irrelevant. (Fixes #8002, David Helder)
7334
7335 Wed Jan 31 20:38:17 2001  Owen Taylor  <otaylor@redhat.com>
7336
7337         * gtk/gtkentry.c (gtk_entry_commit_cb): Delete the current
7338         selection before inserting new text.
7339
7340 Wed Jan 31 18:49:33 2001  Owen Taylor  <otaylor@redhat.com>
7341
7342         * gtk/gtkoptionmenu.c (gtk_option_menu_item_state_changed_cb):
7343         Make the sensitivity of the reparented child track that of
7344         the original parent menu item. (#34218, David Hodson)
7345
7346         * gtk/gtkoptionmenu.c (gtk_option_menu_item_destroy_cb): Handle
7347         the case where the current item is destroyed properly.
7348
7349         * gtk/gtkoptionmenu.c: Some additional code cleanups and fix
7350         some edge cases with child-less menuitems.
7351         
7352 Wed Jan 31 17:16:13 2001  Owen Taylor  <otaylor@redhat.com>
7353
7354         * gtk/gtkcombo.c (gtk_combo_window_key_press): Make Return
7355         key pop down window. (#12074, Jon K Hellan)
7356
7357 Wed Jan 31 16:21:42 2001  Owen Taylor  <otaylor@redhat.com>
7358
7359         * gtk/gtklist.c (gtk_list_signal_item_toggle): Don't allow
7360         toggling of rows off in BROWSE or EXTENDED mode. (#12072, Jon K Hellan) 
7361         The solution here isn't perfect - you get an extraneous
7362         emission of "toggle", which could conceivably confuse an app,
7363         but better than the current situation. LXR search seems to
7364         indicate that no apps in GNOME CVS connect to "toggle".
7365
7366 Wed Jan 31 15:46:13 2001  Owen Taylor  <otaylor@redhat.com>
7367
7368         * gtk/Makefile.am (libgtkinclude_HEADERS): Move gtkcompat.h from
7369         gtk_public_h_sources to directly here to avoid warning when
7370         building srcdir != builddir. (#9656)
7371
7372 Tue Jan 30 19:49:02 2001  Owen Taylor  <otaylor@redhat.com>
7373
7374         * gtk/gtkrange.c: Patch from Kipp Hickman to make the event
7375         handlers in gtkrange.c return the proper values (TRUE == handled)
7376         (#10316).
7377
7378         This is just the tip of the iceberg, but gtkrange.c is the
7379         most common place where the propagation is problematical,
7380         and also a place where it is almost certainly safe to change
7381         this in the stable branch.
7382
7383         (You don't want right click popups on a range control or anything...)
7384
7385 Tue Jan 30 18:57:59 2001  Owen Taylor  <otaylor@redhat.com>
7386
7387         * gtk/gtktext.c (clear_focus_area): We need to clear the focus
7388         area on focus out, even if a background pixmap isn't set.
7389         (#13941)
7390         
7391 Tue Jan 30 18:24:10 2001  Owen Taylor  <otaylor@redhat.com>
7392
7393         * gtk/gtknotebook.c (gtk_notebook_set_shape): Fix from Sean Cunningham
7394         to deal with setting the shape properly when scrolling arrows are
7395         turned on, but not visible because there is sufficient space.
7396         (#13432)
7397
7398 Tue Jan 30 16:39:25 2001  Owen Taylor  <otaylor@redhat.com>
7399
7400         * gtk/gtkitemfactory.c (gtk_item_factory_delete_item): For menu
7401         items with submenus, destroy the item along with the submenu.
7402         (#7841, Brian Masney(?)) Also, handle paths of the form '<foo>/abcd...' 
7403         properly.
7404
7405         * gtk/testgtk.c (menu_items): Add a dummy branch that we delete
7406         later.
7407
7408 Tue Jan 30 15:51:25 2001  Owen Taylor  <otaylor@redhat.com>
7409
7410         * gtk/gtkwindow.c (gtk_window_real_set_focus): Fix a problem where
7411         the focus widget sometimes wasn't drawn with the default if there
7412         was no default widget.
7413
7414         * gtk/gtkstyle.c (gtk_style_real_unrealize): free colors,
7415         unreference pixmaps. 
7416
7417         * gtk/gtkstyle.c (gtk_style_realize): Reference colormap
7418         for some extra safety.
7419
7420 Mon Jan 29 19:00:01 2001  Owen Taylor  <otaylor@redhat.com>
7421
7422         * gtk/gtk{ctree.c,clist.c} (set_cell_contents): Handle setting
7423         the text of a cell to the old pointer value better, by
7424         copying the new text before freeing the old text. Some code
7425         cleanup. (#8079, Karl Nelson)
7426
7427 Mon Jan 29 16:50:19 2001  Owen Taylor  <otaylor@redhat.com>
7428
7429         * gtk/gtklabel.[ch] gtk/gtkframe.[ch]: Make gtk_label_get_text()
7430         gtk_frame_get_label() non strdup'ing, and G_CONST_RETURN.
7431
7432 Mon Jan 29 15:22:51 2001  Owen Taylor  <otaylor@redhat.com>
7433
7434         * gtk/gtkmenu.c (gtk_menu_remove): When removing an
7435         item from a menu, check to see if it matches 
7436         menu->old_active_menu_item, and if so, unref and clear
7437         old_active_menu_item (Patch from Pavel Cisler)
7438
7439         * gtk/gtkmenushell.c (gtk_menu_shell_remove): Unset 
7440         menu_shell->active_menu_item, if it is the child being
7441         removed. (Patch based on that of Gene Ragan, #50337)
7442
7443 2001-01-31  Alexander Larsson  <alla@lysator.liu.se>
7444
7445         * gdk/linux-fb/gdkselection-fb.c: 
7446         * gdk/linux-fb/gdkcolor-fb.c: 
7447         * gdk/linux-fb/gdkdrawable-fb2.c: 
7448         * gdk/linux-fb/gdkfont-fb.c: 
7449         * gdk/linux-fb/gdkim-fb.c: 
7450         * gdk/linux-fb/gdkinput.c: 
7451         * gdk/linux-fb/gdkkeyboard-fb.c: 
7452         * gdk/linux-fb/gdkmain-fb.c: 
7453         * gdk/linux-fb/gdkrender-fb.c: 
7454         A bunch of whitespace cleanup.
7455         
7456 2001-01-30  Havoc Pennington  <hp@pobox.com>
7457
7458         * gtk/gtktreeitem.h, gtk/gtktree.h, gtk/gtktext.h: bracket in 
7459         #ifdef GTK_ENABLE_BROKEN.
7460
7461         * gtk/gtktreeitem.c, gtk/gtktree.c, gtk/gtktext.c: #define
7462         GTK_ENABLE_BROKEN just before including the broken headers.
7463         
7464         * gtk/gtktypeutils.c: #define GTK_ENABLE_BROKEN, so we can get the
7465         deprecated types registered.
7466
7467         * gtk/testgtk.c, gtk/testselection.c: #define GTK_ENABLE_BROKEN,
7468         we have to test the broken stuff.
7469
7470         * docs/Changes-2.0.txt: explain GTK_ENABLE_BROKEN
7471         
7472 2001-01-30  Havoc Pennington  <hp@redhat.com>
7473
7474         * gtk/gtkliststore.c (gtk_list_store_insert_before): fix bug in
7475         here where prev pointer was set to the wrong thing
7476
7477         * gtk/gtktreemodel.c (gtk_tree_path_is_ancestor): new function
7478         (gtk_tree_path_is_descendant): new function
7479
7480         * gtk/gtkliststore.c (gtk_list_store_iter_n_children): return
7481         cached length
7482         (gtk_list_store_get_iter): don't modify iter if we can't get the
7483         path.
7484
7485         * gtk/gtkliststore.h (struct _GtkListStore): cache the length
7486         
7487         * gtk/gtktreednd.h: add virtual function row_drop_possible() to
7488         GtkTreeDragDest
7489
7490         * gtk/gtktreestore.c (copy_node_data): fix varargs type error that
7491         was causing segfault
7492
7493         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_copy): set next
7494         pointer to NULL
7495
7496         * gtk/gtktreestore.c (gtk_tree_store_append): fix memleak
7497
7498         * gtk/gtkliststore.c (gtk_list_store_iter_next): don't modify iter
7499         on returning FALSE
7500         (gtk_list_store_iter_children): ditto
7501         (gtk_list_store_iter_nth_child): ditto
7502         (gtk_list_store_iter_nth_child): ditto
7503         (gtk_list_store_iter_parent): ditto
7504
7505         * gtk/gtktreestore.c (gtk_tree_store_get_path): g_return_if_fail
7506         on iter->user_data != NULL instead of silently accepting it.
7507         (gtk_tree_store_iter_next): ditto. Also, don't modify iter unless
7508         we are returning TRUE.
7509         (gtk_tree_store_iter_children): ditto
7510         (gtk_tree_store_iter_nth_child): ditto
7511         (gtk_tree_store_iter_parent): ditto
7512         (gtk_tree_store_insert): remove handling of parent->user_data ==
7513         NULL, replace with parent == NULL       
7514
7515         * gtk/gtktreemodel.c (inserted_callback): put some fixes in here,
7516         and a comment explaining things
7517
7518         * gtk/gtktreestore.c: add GtkTreeDragSource/GtkTreeDragDest
7519         interface support to GtkTreeStore.
7520
7521         * gtk/gtktreemodel.c (gtk_tree_path_prev): didn't properly return
7522         FALSE if no prev, fix
7523
7524         * gtk/gtktreeview.c (set_source_row): use a row reference
7525         (set_dest_row): use a row reference
7526
7527 Sat Jan 27 15:52:02 2001  Jonathan Blandford  <jrb@redhat.com>
7528
7529         * gtk/gtktreeselection.c (gtk_tree_selection_unselect_iter): Fix
7530         stupid typo pointed out by Kristian Rietveld <kristian@planet.nl>.
7531         (gtk_tree_selection_select_iter): The same as above.
7532
7533 2001-01-26  Havoc Pennington  <hp@redhat.com>
7534
7535         * gtk/gtktreemodel.c, gtk/gtktreemodel.h: add GtkTreeRowReference
7536         which holds a handle to a specific row (particular set of values
7537         in the model, i.e. pointer-identity row).
7538
7539         * gtk/gtktreeview.c, gtk/gtktreeprivate.h, gtk/gtktreeselection.c:
7540         use GtkTreeRowReference for anchor, cursor, and drag_dest_row.
7541         Still need to use it for the src/dest row saved on the drag context.
7542
7543 2001-01-26  Havoc Pennington  <hp@redhat.com>
7544
7545         * gtk/gtktextlayout.c (convert_color): adapt to handle PangoColor
7546
7547         * gtk/gtktreeview.c (gtk_tree_view_widget_to_tree_coords): fix to
7548         not offset by TREE_VIEW_HEADER_HEIGHT
7549         (gtk_tree_view_tree_to_widget_coords): fix to not offset by
7550         TREE_VIEW_HEADER_HEIGHT
7551
7552         * configure.in (included_loaders): for me, --with-included-loaders
7553         generates the error "the specified loader yes does not exist",
7554         i.e. the arg defaults to "yes", so change test for value ""
7555         to test for value "yes", and include all loaders in that case.
7556
7557         * gtk/gtkrbtree.c (_gtk_rbtree_get_depth): new function
7558
7559         * gtk/gtktreeview.c (gtk_tree_view_get_cell_rect): fix to properly
7560         handle TREE_VIEW_VERTICAL_SEPARATOR
7561         (gtk_tree_view_bin_expose): fix to consider the row offset as
7562         pointing halfway into vertical separator.       
7563         (gtk_tree_view_draw_node_focus_rect): ditto
7564
7565         * gtk/gtkdebug.h, gtk/gtkmain.c (gtk_init_check): Add
7566         --gtk-debug=updates, which causes gdk_window_set_debug_updates
7567         (TRUE) to be called.
7568
7569         * gdk/gdkwindow.c (gdk_window_set_debug_updates): Allow enabling a
7570         debug mode where the invalid region is colored in on invalidate,
7571         so you can see the flicker and know whether your redraw code is 
7572         doing a good job.
7573
7574         * gtk/gtktreeview.c (gtk_tree_view_queue_draw_node): Work in 
7575         tree window coordinates (clip rect is in tree window coords)
7576
7577         * gtk/Makefile.am: add gtktreednd.[hc]
7578
7579         * gtk/gtkliststore.c: implement gtktreednd interfaces.
7580
7581         * gtk/gtktreednd.c, gtk/gtktreednd.h: New interface to support
7582         drag-and-drop data operations on a model (so we can set up tree
7583         drag-and-drop automatically)
7584
7585         * gtk/testgtk.c: Add a window to change sensitivity in the
7586         GtkLabel test; add a way to change the entry frame in GtkEntry
7587         test
7588
7589         * gtk/gtkentry.c (gtk_entry_set_has_frame): 
7590         (gtk_entry_get_has_frame): new functions to remove the frame
7591         around an entry
7592         (gtk_entry_size_request): shrink requisition if no frame
7593         (gtk_entry_draw_focus): don't draw frame if no frame
7594
7595         * gtk/gtkstyle.c (gtk_default_draw_check): draw custom look for
7596         checks inside a cell renderer
7597         (gtk_default_draw_option): ditto for options
7598
7599         * gtk/gtktreeviewcolumn.c (update_button_contents): add/remove
7600         children from the alignment, not the button
7601         (gtk_tree_view_column_init): ref/sink the column, to emulate
7602         GObject refcounting.
7603
7604         * gtk/gtkcellrenderer.c (gtk_cell_renderer_init): ref/sink
7605         
7606         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
7607         Use theme functions to draw the toggles 
7608
7609         * gdk/gdkpango.c (gdk_pango_get_gc): use GdkRGB to alloc colors
7610
7611         * gdk/gdkpango.h, gdk/gdkpango.c: Add GdkPangoAttrStipple and
7612         GdkPangoAttrEmbossed to use in rendering insensitive text
7613
7614         * gdk/gdkpango.c (gdk_draw_layout_line): render new properties
7615
7616         * gtk/gtkstyle.c (gtk_default_draw_layout): handle sensitivity
7617         using new GDK features
7618         
7619 2001-01-24  Alexander Larsson  <alexl@redhat.com>
7620
7621         * gtk/gtkimage.c:
7622         Splitted gtk_image_clear into gtk_image_clear() and
7623         gtk_image_reset(). Call gtk_image_clear() in ::destroy
7624         to avoid leaks.
7625
7626         * gtk/gtklabel.c (set_markup):
7627         Don't leak text.
7628
7629         * gtk/gtktextlayout.c:
7630         Always free display->shaped_objects.
7631
7632         * gtk/testgtk.c (create_clist):
7633         Don't leak custom style.
7634
7635 2001-01-23  Alexander Larsson  <alexl@redhat.com>
7636
7637         * gtk/gtkcolorsel.c (grab_color_at_mouse):
7638         Don't leak image. Simplify using gdk_colormap_query_color().
7639         (gtk_color_selection_init): Don't leak dropper_pixmap and mask.
7640
7641         * linux-fb/gdkcolor-fb.c:
7642         Implemented gdk_colormap_query_color.
7643
7644 2001-01-23  Alexander Larsson  <alexl@redhat.com>
7645
7646         * linux-fb/gdkcursor-fb.c:
7647         Don't leak built-in cursors.
7648
7649         * linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_polygon):
7650         Don't leak tmp_points.
7651
7652         * linux-fb/gdkfont-fb.c (gdk_font_from_description):
7653         Don't modify desc. Don't leak font if the PangoFont
7654         isn't found.
7655         
7656         * linux-fb/gdkgc-fb.c (gdk_fb_gc_finalize):
7657         Free dash_list.
7658
7659         * linux-fb/gdkkeyboard-fb.c (gdk_fb_handle_key):
7660         Don't leak string.
7661         
7662 2001-01-20  Havoc Pennington  <hp@pobox.com>
7663
7664         * gtk/gtktexttag.h (enum GtkWrapMode): rename member fields
7665         from GTK_WRAPMODE_WORD to GTK_WRAP_WORD, etc., seems nicer to 
7666         me, matches Pango
7667
7668 2001-01-22  Havoc Pennington  <hp@redhat.com>
7669
7670         * demos/testanimation.c: fix to reflect gdk-pixbuf changes
7671
7672         * demos/testpixbuf.c: fix to reflect gdk-pixbuf changes
7673
7674         * gtk/gdk-pixbuf-loader.c, gtk/gdk-pixbuf-loader.h: 
7675         Remove, move back to gdk-pixbuf
7676
7677         * gtk/gtktextiter.c, gtk/gtktextiter.h: add sentence equivalents
7678         to all the word functions
7679
7680         * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): return
7681         before doing anything on NULL layout or if we don't have the focus
7682
7683         * gtk/testtext.c (fill_example_buffer): "justification"
7684
7685         * gtk/gtktexttag.h, gtk/gtktexttag.c: change the tag attribute
7686         to be called "justification" not "justify"
7687
7688         * demos/gtk-demo/textview.c (create_tags): "justification"
7689         
7690         * gtk/gtktextlayout.c (set_para_values): Handle char-wise wrapping
7691
7692 2001-01-22  Alexander Larsson  <alexl@redhat.com>
7693
7694         * gdk/gdkwindow.c (gdk_window_invalidate_region):
7695         Don't leak visible_region. Use visible_region instead of region.
7696         
7697         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
7698         Don't do extra gdk_drawable_ref(). This is not X.
7699         (gdk_fb_window_find_focus, gdk_fb_change_focus): make sure
7700         gdk_fb_focused_window is ref:ed.
7701         (gdk_fb_window_send_crossing_events): Watch out for destroyed
7702         windows.
7703
7704 2001-01-22  Alexander Larsson  <alexl@redhat.com>
7705
7706         * gtk/gtkwindow-decorate.c (gtk_decorated_window_realize):
7707         Don't leak the PangoFontDescriptor.
7708
7709 Sun Jan 21 09:58:00 2001  Jonathan Blandford  <jrb@redhat.com>
7710
7711         * gtk/gtktreeview.c (gtk_tree_view_scroll_to_point): Make fail
7712         when not realized.
7713         (gtk_tree_view_scroll_to_cell): Make work when not realized.
7714         (gtk_tree_view_realize): add scroll_to support
7715         (gtk_tree_view_finalize): add a finalize method.  Populate.
7716         (gtk_tree_view_insert_column): ref and sink the column.
7717         (gtk_tree_view_append_column): ref and sink the column.
7718         (gtk_tree_view_queue_draw_node): New function to handle redrawing
7719         individual nodes.  Should make the code much more efficient, if
7720         actually used.
7721
7722 2001-01-19  Havoc Pennington  <hp@redhat.com>
7723
7724         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
7725         byte_offset variable was being used to mean both "offset into
7726         layout" and "offset into buffer line" which was no longer true
7727         with addition of preedit string; fix
7728
7729 2001-01-19  Havoc Pennington  <hp@redhat.com>
7730
7731         * demos/gtk-demo/main.c (button_press_event_cb): sync to tree changes
7732
7733         * gtk/gtkrbtree.c (_gtk_rbtree_node_find_offset): fix this
7734         function
7735
7736         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_widget):
7737         implement
7738
7739         * gtk/gtktreeview.c (gtk_tree_view_move_to): rename
7740         scroll_to_cell, matches TextView scroll functions better
7741         (gtk_tree_view_tree_to_widget_coords): new function
7742         (gtk_tree_view_widget_to_tree_coords): new function
7743         (gtk_tree_view_get_visible_rect): new function
7744         (gtk_tree_view_get_path_at_pos): accept negative coordinates
7745         (gtk_tree_view_draw_node_focus_rect): new function moved from
7746         draw_focus, also, use width of bin_window as width of the focus
7747         rect
7748         (gtk_tree_view_expand_row): fix bug where it didn't recognize
7749         already-expanded rows
7750         (gtk_tree_view_get_cell_rect): new function
7751         (gtk_tree_view_get_path_at_pos): return the click position
7752         relative to the passed-in cell
7753         (gtk_tree_view_set_expander_column): new function
7754
7755         * configure.in: remove gtk-config-2.0 chmod
7756
7757         * gtk/gtktextview.c (gtk_text_view_drag_motion): small cleanups,
7758         and properly handle drags with targets we don't understand
7759         (gtk_text_view_drag_end): don't stop scrolling, the source isn't
7760         scrolling anyway
7761         (gtk_text_view_drag_drop): stop scrolling here though, and set the
7762         mark invisible
7763
7764         * gtk/gtkdnd.c (gtk_drag_dest_find_target): export as a public
7765         function
7766         (gtk_drag_dest_get_target_list): new function
7767         (gtk_drag_dest_set_target_list): new function
7768         
7769         * gtk/gtktreeview.c: Add a bunch of drag-and-drop implementation
7770
7771         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): add fields
7772         related to drag-and-drop
7773
7774 2001-01-19  Alexander Larsson  <alexl@redhat.com>
7775
7776         * gdk/linux-fb/gdkprivate-fb.h:
7777         Define EMULATE_GDKFONT.
7778         Add extra pango_font stuff to GfkFontPrivate.
7779         
7780         * gdk/linux-fb/gdkdrawable-fb2.c:
7781         * gdk/linux-fb/gdkfont-fb.c:
7782         If EMULATE_GDKFONT defined, implement a slow lame GdkFont
7783         emulation using PangoFont.
7784
7785 2001-01-17  Havoc Pennington  <hp@pobox.com>
7786
7787         * gtk/gtkprogressbar.c, gtk/gtkprogressbar.h: Add "getters" for
7788         all the non-deprecated set_foo functions. Added missing object
7789         properties, and added g_object_notify() to setters. 
7790         Wrote docs.
7791         
7792 2001-01-18  Tor Lillqvist  <tml@iki.fi>
7793
7794         * gtk/gtkmain.c
7795         * gtk/gtkrc.c: (Win32) Use the new
7796         g_win32_get_package_installation_(sub)directory() functions.
7797
7798         * config.h.win32.in: New file.
7799         
7800         * config.h.win32: Removed.
7801
7802         * configure.in: Output config.h.win32.
7803
7804         * Makefile.am: Add it to EXTRA_DIST.
7805
7806         * gtk/gtk.def: Update.
7807
7808 Wed Jan 17 16:22:54 2001  Owen Taylor  <otaylor@redhat.com>
7809
7810         * gtk/gtklabel.c (gtk_label_size_request): Set the
7811         attributes onto the PangoLayout even if they are newly
7812         created from label->pattern.
7813
7814 Tue Jan  9 11:20:48 2001  Owen Taylor  <otaylor@redhat.com>
7815
7816         * gdk/x11/gdkdnd-x11.c: Remove unused variable.
7817
7818         * gtk/gtkdnd.c: Encapsulate storing and retrieving info
7819         structures in functions. Fixes bug where gtk_dataset_*
7820         was accidentally still being used in one place, causing
7821         every dest side event to be treated independently.
7822
7823         * gtk/gtkdnd.c: Remove last vestages of handling
7824         ::draw (fixes warning)
7825         
7826         * gtk/gtkentry.[ch]: Add drag and drop support.
7827
7828         * gtk/gtkdnd.[ch] gtk/gtktextview.c gtk/gtkentry.c: Add
7829         new function gtk_check_drag_threshhold() for checking
7830         to check if (dx,dy) has exceeded the threshhold for starting
7831         a drag and use it everywhere.
7832
7833 Mon Jan  8 11:58:05 2001  Owen Taylor  <otaylor@redhat.com>
7834
7835         * gtk+-2.0.pc.in gdk-pixbuf-2.0.pc.in (Cflags): Remove -I${includedir},
7836         add -I{includedir}/gtk-2.0.
7837
7838         * gtk/gtktreeview.[ch] gtktreemodelsort.[ch] gtknotebook.c
7839         gdk/gdk-pixbuf.h: Doc fixups.
7840         
7841         * gtk/gtkobject.h: Remove trailing , from enum
7842
7843 2001-01-17 Alexander Larsson <alexl@redhat.com> 
7844
7845         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_shadow_fb_draw_arc):
7846         Doh! Mixed up x and y.
7847
7848         * gdk/linux-fb/gdkglobals-fb.c:
7849         Removed gdk_fb_pointer_grab_window_events,
7850         added _gdk_fb_pointer_grab_owner_events and
7851         _gdk_fb_keyboard_grab_owner_events.
7852
7853         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab):
7854         Set all button mask if GDK_BUTTON_MOTION_MASK set. Send
7855         crossing events before grabbing. Set _gdk_fb_pointer_grab_owner_events.
7856         (gdk_fb_pointer_ungrab): Unset _gdk_fb_pointer_grab_owner_events
7857         Send crossing events after ungrab finished.
7858         (gdk_keyboard_grab): Set ..._owner_events
7859         (type_masks): Move out of function.
7860         (gdk_fb_other_event_window, gdk_fb_pointer_event_window,
7861         gdk_fb_keyboard_event_window): New functions, return the
7862         window an event should be targeted at. Handles grabs and
7863         event propagation. Can return NULL.
7864         (gdk_event_make): Remove event_mask checking. Now always
7865         returns an event.
7866                 
7867         * gdk/linux-fb/gdkkeyboard-fb.c:
7868         * gdk/linux-fb/gdkproperty-fb.c:
7869         * gdk/linux-fb/gdkselection-fb.c:
7870         Use new event_window/gdk_event_make() behaviour.
7871         
7872         * gdk/linux-fb/gdkmouse-fb.c:
7873         Use new event_window/gdk_event_make() behaviour.
7874         Only send motion events if in the same window.
7875         If grabbed, use cursor from window if sibling of grabbed
7876         window, and cursor from grabbed window otherwise.
7877
7878         * gdk/linux-fb/gdkprivate-fb.h:
7879         Update gdk_fb_window_send_crossing_events, gdk_event_make
7880         and grab varaible declarations. Add gdk_fb_*_event_window().
7881
7882         * gdk/linux-fb/gdkwindow-fb.c:
7883         Use new event_window/gdk_event_make() behaviour.
7884         Keep correct track of focus window.
7885         (gdk_window_set_events): Set all specific button motion masks
7886         if GDK_BUTTON_MOTION_MASK set.
7887
7888         * gtk/gtkdnd.c (gtk_drag_update):
7889         Free info->last_event if gdk_drag_motion returned FALSE.
7890
7891 2001-01-16  Tor Lillqvist  <tml@iki.fi>
7892
7893         * gdk/win32/gdkwindow-win32.c (gdk_window_show, gdk_window_hide):
7894         Eliminate redraws when input-only windows are shown or
7895         hidden. Thanks to jpe@archaeopteryx.com.
7896
7897 Tue Jan 16 13:13:13 GMT 2001  Tony Gale <gale@gtk.org>
7898
7899         * docs/faq/gtk-faq.sgml: FAQ update:
7900           - Update to bugzilla
7901           - Add GTK+ and security/SUID/SGID
7902           - Add DnD question
7903
7904 2001-01-16  Alexander Larsson  <alla@lysator.liu.se>
7905
7906         * gdk/linux-fb/gdkdnd-fb.c:
7907         Some cleanups.
7908         
7909 2001-01-15  Havoc Pennington  <hp@pobox.com>
7910
7911         * tests/testtreeview.c: add test stuff for CellRendererToggle
7912
7913         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_get_model): add this
7914         accessor
7915
7916         * gtk/gtkcellrenderertoggle.c: distinguish different event types,
7917         only toggle on button press (would do release like GtkButton, but
7918         we'd need implicit grab code for treeview cells)
7919
7920 2001-01-16  Tor Lillqvist  <tml@iki.fi>
7921
7922         * gdk/win32/gdkvisual-win32.c: Include <stdlib.h> for getenv().
7923
7924         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Don't use
7925         GDK_COLORMAP_PRIVATE_DATA on a potentially NULL GdkColormap.
7926
7927         * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Adapt calls
7928         to g_{locale,filename}_{to,from}_utf8 to match current API.
7929
7930         * gtk/makefile.msc.in (gtk_OBJECTS)
7931         * gtk/makefile.mingw.in (gtk_OBJECTS): Add gtkwindow-decorate.
7932
7933         * gtk/gtk.def: Update.
7934
7935 2001-01-15  Tor Lillqvist  <tml@iki.fi>
7936
7937         * gdk/win32/gdkevents-win32.c (synthesize_crossing_events): New
7938         implementaion that more closely mimics the events that an X server
7939         would generate. Especially, properly generate GDK_NOTIFY_VIRTUAL and
7940         GDK_NOTIFY_NONLINEAR_VIRTUAL crossing events. This makes buttons
7941         with nested preview widgets, for instance, more responsive when
7942         you move the mouse quickly into them.
7943         (find_window_for_pointer_event): Make it actually compile.
7944         (gdk_event_translate): Set send_event to the value of
7945         InSendMessage (). This doesn't really mean the same as X11's
7946         send_event flag, but is close enough, says jpe@archaeopteryx.com
7947
7948 2001-01-15  Alexander Larsson  <alexl@redhat.com>
7949
7950         * gdk/linux-fb/gdkdnd-fb.c:
7951         Implemented drag and drop.
7952         Seems to be mostly working. I sometimes get an assert from gtkdnd.c:2664
7953         when it tries to free and then copy the same event (info->last_event).
7954         I am not sure about why this happens, but will continue looking.
7955
7956 2001-01-15  Alexander Larsson  <alexl@redhat.com>
7957
7958         * gdk/linux-fb/gdkwindow-fb.c:
7959         Use gdk_window_invalidate_rect instead of
7960         gdk_window_invalidate_rect_clear to minimise flashing.
7961         When hiding windows you need to clear the root window though.
7962
7963 2001-01-15  Alexander Larsson  <alexl@redhat.com>
7964
7965         * gdk/linux-fb/gdkdrawable-fb2.c:
7966         For optization, add an full_shapes argument to gdk_fb_clip_region.
7967         If this is false, only the cliprects of the shapes are used.
7968
7969         * gdk/linux-fb/gdkprivate-fb.h:
7970         Export gdk_fb_window_peek_shape.
7971         Add full_shapes to gdk_fb_clip_region.
7972
7973         * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
7974         When moving a window, don't clear everything under the it, just the
7975         root window. Makes stuff faster and flash less.
7976         (gdk_window_get_pointer): Correctly handle offseted shapes, due to
7977         USE_CHILD_SHAPE. (gdk_fb_window_peek_shape): Return the correct
7978         offset of the shape.
7979         
7980
7981 2001-01-12  Havoc Pennington  <hp@redhat.com>
7982
7983         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): offset the 
7984         current invalid region, fixes redraw bug while scrolling the 
7985         text widget
7986
7987         * gtk/gtktextview.c, gtk/gtktextview.h:
7988         Rearrange the scrolling/validation/etc. code in a major way, 
7989         so it seems to make sense to me. Probably isn't genuinely that
7990         much better, but...
7991
7992         * gtk/gtktexttag.c (set_fg_color): fix name of property used for
7993         notifies
7994
7995         * gtk/gtktextmark.c (gtk_text_mark_get_left_gravity): new function
7996
7997 2001-01-12  Alexander Larsson  <alla@lysator.liu.se>
7998
7999         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_set_rotation):
8000         Hide mouse pointer while rotation. Show it afterwards.
8001
8002 2001-01-12  Alexander Larsson  <alexl@redhat.com>
8003
8004         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_clip_region): Take shaped
8005         windows in consideration when generating clip region.
8006
8007         * gdk/linux-fb/gdkfb.h:
8008         Huge HACK. Added GDK_FB_USE_CHILD_SHAPE.
8009
8010         * gdk/linux-fb/gdkprivate-fb.h:
8011         Add shape to GdkWindowFBDatat.
8012         exported gdk_fb_window_get_abs_shape().
8013         removed gdk_fb_draw_lines declaration.
8014
8015         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_impl_fb_init):
8016         Init shape to NULL. (gdk_fb_window_send_crossing_events): Don't
8017         send focus changes when there is a grabbed window.
8018         (gdk_window_get_pointer): Handle shaped windows.
8019         (gdk_fb_region_create_from_bitmap): Convert bitmap to region.
8020         (gdk_fb_window_peek_shape): Returns the shape for a window,
8021         handles GDK_FB_USE_CHILD_SHAPE.
8022         (gdk_fb_window_get_abs_shape): Returns the shape of the window,
8023         offseted to absolute positions. Handles GDK_FB_USE_CHILD_SHAPE.
8024         (gdk_window_shape_combine_mask): Implement.
8025
8026         * gtk/gtkwindow-decorate.c:
8027         HACK! Set GDK_FB_USE_CHILD_SHAPE on window->frame to make sure
8028         setting the shape of a window makes the window transparent.
8029
8030 2001-01-11  Havoc Pennington  <hp@redhat.com>
8031
8032         * gtk/gtktreemodelsimple.h: Oops, broke some macros
8033
8034 2001-01-10  Havoc Pennington  <hp@redhat.com>
8035
8036         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clear_attributes):
8037         add this function, bug 40251
8038
8039         * gtk/gtktreemodelsimple.h (GTK_TYPE_TREE_MODEL_SIMPLE): fix name
8040         of type macro   
8041
8042 2001-01-11  Alexander Larsson  <alexl@redhat.com>
8043
8044         * acconfig.h:
8045         Added ENABLE_SHADOW_FB
8046
8047         * configure.in:
8048         Added --disable-shadowfb
8049
8050         * gdk/linux-fb/gdkcursor-fb.c:
8051         Update shadowfb when updating cursor
8052
8053         * gdk/linux-fb/gdkdrawable-fb2.c:
8054         Added wrappers for shadowfb that calls  the normal drawable
8055         methods, but calls gdk_shadow_fb_update(bounding box) when
8056         GdkWindows are drawed to.
8057         Moved gdk_draw_glyphs implementation to _gdk_draw_glyphs
8058         which also returns the bounding box.
8059
8060         * gdk/linux-fb/gdkfb.h:
8061         Added GdkFBAngle type and gdk_fb_set_rotation declaration.
8062
8063         * gdk/linux-fb/gdkgeometry-fb.c:
8064         Update shadowfb when scrolling window.
8065
8066         * gdk/linux-fb/gdkglobals-fb.c:
8067         Add _gdk_fb_screen_angle.
8068         
8069         * gdk/linux-fb/gdkkeyboard-fb.c:
8070         Test code for screen rotation. Shift-F2 in the xlate driver
8071         rotates the screen.
8072
8073         * gdk/linux-fb/gdkmain-fb.c:
8074         Handle shadowfb. Add gdk_fb_set_rotation(). Remove CM and RP.
8075
8076         * gdk/linux-fb/gdkmouse-fb.c:
8077         Use fb_width/height instead of modeinfo.xres/yres.
8078
8079         * gdk/linux-fb/gdkprivate-fb.h:
8080         Added fb_men, fb_width, fb_height & fb_stride. When using
8081         shadow fb these can differ from the framebuffer stuff.
8082         Declarations for gdk_shadow_fb_update, gdk_shadow_fb_init,
8083         gdk_shadow_fb_stop_updates, gdk_fb_recompute_all,
8084         _gdk_fb_screen_angle. Removed CM, RP.
8085
8086         * gdk/linux-fb/gdkrender-fb.c:
8087         Added code for shadowfb handling and screen rotation using
8088         shadowfb.
8089
8090         * gdk/linux-fb/gdkwindow-fb.c:
8091         Use fb_mem, fb_stride, fb_width, fb_height.
8092         Added recompute_rowstride to reset the rowstride of all windows.
8093         Added gdk_fb_recompute_all() which recomputes rootwindow size,
8094         window abs positions and window rowstrides. Usefull when the
8095         rotation has changed.
8096
8097 Thu Jan 11 13:16:50 GMT 2001  Tony Gale <gale@gtk.org>
8098
8099         * docs/faq/gtk-faq.sgml: update to make web site updating easier
8100
8101 2001-01-10  Havoc Pennington  <hp@redhat.com>
8102
8103         * gtk/gtktreestore.c (gtk_tree_store_insert_before): handle case
8104         where sibling == iter
8105         (gtk_tree_store_insert_after): handle sibling == iter
8106         (gtk_tree_store_prepend): remove stamp checks
8107         (gtk_tree_store_insert_before): ditto
8108         (gtk_tree_store_append): ditto
8109         (gtk_tree_store_get_path): ditto
8110         (gtk_tree_store_get_value): ditto
8111         (gtk_tree_store_iter_has_child): ditto
8112         (gtk_tree_store_iter_n_children): ditto
8113         (gtk_tree_store_iter_nth_child): ditto
8114         (gtk_tree_store_insert_after): ditto
8115         (gtk_tree_store_is_ancestor): ditto
8116         (gtk_tree_store_iter_depth): ditto
8117         (gtk_tree_store_insert_before): assert that sibling's parent is
8118         the same as the passed-in parent
8119         (gtk_tree_store_insert_after): assert that sibling's parent is
8120         the same as the passed-in parent
8121
8122         
8123         * gtk/gtktreemodel.c (gtk_tree_model_get_first): new convenience 
8124         function to get the first iterator in a model
8125         
8126         * gtk/gtktreestore.c (gtk_tree_store_get_root_iter): remove,
8127         conventionally the "root" in this sense is just NULL afaict.
8128
8129         * gtk/gtkliststore.c (gtk_list_store_insert_before): handle case
8130         where sibling == iter
8131         (gtk_list_store_insert_after): handle case where sibling == iter
8132
8133         * tests/testtreeview.c (run_automated_tests): fairly lame basic
8134         automated tests for ListStore, TreeStore
8135
8136         * gtk/gtkliststore.c (gtk_list_store_remove): update tail pointer
8137         (gtk_list_store_insert): update tail pointer, and fix it to work
8138         (gtk_list_store_insert_before): update tail pointer, and fix it to work
8139         (gtk_list_store_append): use tail to be faster
8140         (gtk_list_store_prepend): fix it, update tail pointer
8141         (gtk_list_store_insert_after): fix it, update tail pointer
8142
8143         * gtk/gtkliststore.h (struct _GtkListStore): add tail pointer for 
8144         the list
8145
8146 2001-01-09  Havoc Pennington  <hp@redhat.com>
8147
8148         * gtk/gtklabel.c (gtk_label_expose): don't draw if label->layout
8149         is NULL due to a pending resize
8150
8151         * gtk/gtktreeview.c (gtk_tree_view_check_dirty): don't set the
8152         column width to values less than 1
8153
8154         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_width): clamp
8155         width to be between min/max width, and still set the width 
8156         even if autosize is turned on, so the tree view can use this 
8157         function in order to autosize.
8158         (gtk_tree_view_column_init): set initial width to 1 not 0
8159
8160         * gtk/gtktreeview.c (gtk_tree_view_size_request_buttons): use
8161         setter function to modify column width, so we get notification
8162         (gtk_tree_view_insert_iter_height): ditto
8163         (gtk_tree_view_calc_size): ditto
8164         (gtk_tree_view_check_dirty): ditto
8165
8166         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_class_init): Add
8167         properties to change all the interesting attributes of the tree
8168         view column.
8169         (gtk_tree_view_column_set_header_clickable): rename set_clickable
8170         (gtk_tree_view_column_get_clickable): add
8171         (gtk_tree_view_column_set_cell_renderer): don't unset the current
8172         attributes; assume a cell renderer with equivalent object
8173         properties has been swapped in. Do g_object_notify().
8174         (gtk_tree_view_column_set_visible): g_object_notify
8175         (gtk_tree_view_column_get_sizing): rename from get_col_type
8176         (gtk_tree_view_column_set_sizing): g_object_notify
8177         (gtk_tree_view_column_set_width): add g_object_notify
8178         (gtk_tree_view_column_set_min_width): ditto
8179         (gtk_tree_view_column_set_max_width): ditto
8180         (gtk_tree_view_column_set_title): ditto
8181         (gtk_tree_view_column_set_clickable): ditto
8182         (gtk_tree_view_column_set_widget): ditto
8183         (gtk_tree_view_column_set_justification): ditto
8184
8185 2001-01-09  Havoc Pennington  <hp@redhat.com>
8186
8187         * gtk/gtktreeview.c (gtk_tree_view_check_dirty): handle case where
8188         there are no rows in the model
8189
8190         * gtk/gtkliststore.c (gtk_list_store_iter_children): if parent is
8191         NULL, then return the start of the list
8192
8193         * gtk/gtktreeview.c (gtk_tree_view_setup_model): don't build tree
8194         if we can't get any rows from an empty model 
8195
8196         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): remove
8197         extraneous * after function pointer typedef usage
8198
8199         * Makefile.am: don't specify full path to cp and rm
8200
8201         * gtk/gtkcellrenderertextpixbuf.c
8202         (gtk_cell_renderer_text_pixbuf_get_size): check width/height !=
8203         NULL before dereferencing, fixes a segfault that happened from
8204         time to time
8205
8206         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render):
8207         use gdk_pixbuf_render_to_drawable_alpha() to get alpha channel,
8208         and reindent the function
8209         (gtk_cell_renderer_pixbuf_get_size): indentation
8210
8211         * gtk/gtkdialog.c (gtk_dialog_run): destroy main loop only after
8212         we quit it
8213         (gtk_dialog_add_buttons_valist): add g_return_if_fail
8214         (gtk_dialog_set_default_response): New function, to set default
8215         button
8216         (gtk_dialog_set_response_sensitive): New function, to set 
8217         sensitivity of buttons
8218
8219         * gtk/gtkcellrendererpixbuf.c
8220         (gtk_cell_renderer_pixbuf_get_property): allow getting a NULL pixbuf
8221         (gtk_cell_renderer_pixbuf_set_property): allow setting a NULL pixbuf
8222
8223         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_to_value):
8224         handle any G_TYPE_OBJECT subclass, not just the base class, and 
8225         also boxed types.
8226         (_gtk_tree_data_list_value_to_node): ditto
8227
8228         * gtk/gtkrbtree.c: Run _gtk_rbtree_test at strategic points if 
8229         --gtk-debug=tree
8230
8231         * gtk/gtkmain.c: add GTK_DEBUG_TREE
8232
8233         * gtk/gtkdebug.h: add GTK_DEBUG_TREE
8234
8235 2001-01-09  Tor Lillqvist  <tml@iki.fi>
8236
8237         * gdk/win32/gdkevents-win32.c: Implement better mouse
8238         capturing. Do use SetCapture(). Thanks to jpe@archaeopteryx.com.
8239         (find_window_for_pointer_event): New function.
8240         (gdk_event_translate): Use it when handling mouse events.
8241
8242 2001-01-09  Alexander Larsson  <alla@lysator.liu.se>
8243
8244         * configure.in:
8245         Added --with-included-loaders option
8246
8247         * gdk-pixbuf/Makefile.am:
8248         * gdk-pixbuf/gdk-pixbuf-io.c:
8249         Add support for including selected gdk-pixbuf loaders only.
8250
8251         * gtk/gtkwindow.c (gtk_window_set_frame_dimensions,
8252         gtk_window_set_has_frame):
8253         Added inline documentation.
8254
8255         * gdk/x11/gdkwindow-x11.c (gdk_window_get_decorations):
8256         * docs/reference/gdk/tmpl/windows.sgml:
8257         Added inline documentation.
8258
8259 Mon Jan  8 14:42:06 2001  Jonathan Blandford  <jrb@redhat.com>
8260
8261         * gtk/gtktreeview.c (gtk_tree_view_realize_buttons): Skip
8262         realizing buttons that have already been realized.
8263
8264 Mon Jan  8 14:06:29 2001  Jonathan Blandford  <jrb@redhat.com>
8265
8266         * tests/testtreeview.c (main): Show menu items before adding to
8267         option menu.
8268
8269         * gtk/gtktreeview.c (gtk_tree_view_set_model): Keep the columns
8270         around if we kill them.
8271
8272         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
8273         Return if we pass in a NULL model.
8274
8275 2001-01-08  Havoc Pennington  <hp@redhat.com>
8276
8277         * tests/testtreeview.c: hack on this some
8278
8279         * gtk/gtktreestore.c (gtk_tree_store_setv): rename
8280         gtk_tree_store_set_valist, v is for arrays, valist for varargs
8281         list
8282         (gtk_tree_store_getv): rename gtk_tree_store_get_valist
8283
8284         * gtk/gtkliststore.h: Add varargs set() and get() convenience
8285         functions
8286
8287 2001-01-08  Alexander Larsson  <alexl@redhat.com>
8288
8289         * gtk/gtkwindow-decorate.[hc]:
8290         * gtk/Makefile.am:
8291         New files. Contains an implementation of a minimal WM for
8292         linux-fb.
8293
8294         * gtk/gtkwindow.h:
8295         Add the possibility for GtkWindows to specify a frame. This
8296         is used for the window decoration code, but could concievably
8297         be used for X programs too (xmms style windows).
8298         GtkWindow->frame is the toplevel window if the window is framed.
8299         The signal frame_event gets all events that are targeted to
8300         GtkWindow->frame.
8301         (_gtk_window_constrain_size): Exported for usage by gtkwindow-decorate.c.
8302         
8303         * gtk/gtkwindow.c:
8304         Implement gtk_window_set_has_frame and gtk_window_set_frame_dimensions.
8305         Call out to gtkwindow-decorate.c for WM support in linx-fb.
8306
8307 2001-01-08  Alexander Larsson  <alexl@redhat.com>
8308
8309         * docs/README.linux-fb:
8310         Correct filename ~/.pangoft2_aliases
8311
8312         * gdk/gdkwindow.h:
8313         Added new function gdk_window_get_decorations.
8314
8315         * gdk/linux-fb/gdkfb.h:
8316         Removed _gdk_window_get_decorations declaration.
8317         Renamed _gdk_window_set_child_handler to
8318         gdk_fb_window_set_child_handler.
8319
8320         * gdk/linux-fb/gdkwindow-fb.c:
8321         Renamed _gdk_window_set_child_handler to
8322         gdk_fb_window_set_child_handler.
8323
8324         * gdk/x11/gdkwindow-x11.c:
8325         New function gdk_window_get_mwm_hints().
8326         Implemented gdk_window_get_decorations.
8327
8328         * docs/reference/gdk/tmpl/windows.sgml:
8329         * docs/reference/gdk/gdk-sections.txt:
8330         Added gdk_window_get_decorations docs.
8331         
8332 2001-01-08  Alexander Larsson  <alla@lysator.liu.se>
8333
8334         * gdk/linux-fb/gdkwindow-fb.c (_gdk_fb_window_find_focus,
8335         gdk_fb_window_find_focus, gdk_fb_send_focus_change,
8336         gdk_fb_window_send_crossing_events):
8337         Possibly send focus events when the mouse moves from one
8338         window to another.
8339
8340 2001-01-07  Tor Lillqvist  <tml@iki.fi>
8341
8342         * gdk/win32/gdkwindow-win32.c (gdk_window_set_title,
8343         gdk_window_new): Adapt calls to g_{locale,filename}_{to,from}_utf8
8344         to match current API.
8345
8346         * gdk/win32/gdkvisual-win32.c (gdk_visual_init): If a secret
8347         environment variable is set, don't call g_error when on a
8348         palettized (PseudoColor) display. Some people want to use GTK+ 
8349         in 256-colour mode even though works only partially.
8350
8351         * gdk/gdk.def
8352         * gtk/gtk.def
8353         * gtk/makefile.mingw.in: Update.
8354
8355 2001-01-05  Havoc Pennington  <hp@redhat.com>
8356
8357         * tests/testtreeview.c: hack on this a bit
8358
8359         * gtk/gtktextlayout.c (gtk_text_layout_class_init):
8360         s/GTK_RUN_LAST/G_SIGNAL_RUN_LAST
8361
8362         * gtk/gtktreemodelsimple.h (GTK_IS_TREE_MODEL_SIMPLE_CLASS): 
8363         was spelled incorrectly
8364         (GTK_IS_TREE_MODEL_SIMPLE): ditto
8365
8366         * gtk/gtktreeview.c (gtk_tree_view_set_headers_clickable): rename
8367         from gtk_tree_view_set_headers_active   
8368
8369         * gtk/gtktexttag.c:
8370         (gtk_text_tag_get_property): handle PROP_DIRECTION
8371         (gtk_text_tag_set_property): g_object_notify when we toggle the _set
8372         properties, bug 40235
8373
8374         * gtk/gtktextiter.c (gtk_text_iter_forward_to_delimiters): rename
8375         forward_to_line_end
8376
8377 Fri Jan  5 16:16:29 2001  Owen Taylor  <otaylor@redhat.com>
8378
8379         * gtk/{gtkcalender.c,gtkfilesel.c,gtkimcontext.c},
8380         modules/input/gtkimcontextxim.c: Adapt to new prototypes
8381         for unicode,locale,filename conversion functions.
8382
8383 2001-01-05  Havoc Pennington  <hp@redhat.com>
8384
8385         * gtk/gtktextiter.c (gtk_text_iter_ends_line): this function was
8386         broken if called on the first position in the buffer.
8387
8388         * gtk/gtktextlayout.c (line_display_index_to_iter): fix
8389         forward_to_delimiters to be called only if we aren't already at
8390         the delimiters.
8391
8392 2001-01-05  Havoc Pennington  <hp@redhat.com>
8393
8394         * demos/gtk-demo/main.c (create_tree): Oops, that didn't link. Fix.
8395
8396 2001-01-05  Alexander Larsson  <alexl@redhat.com>
8397
8398         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_drawable_finalize): free
8399         colormap in here. Sync from X port.
8400         (gdk_fb_set_colormap): allow the colormap to be NULL if you like.
8401         Sync from X port.
8402         (gdk_fb_clip_region): Comment out g_warning about empty clip region.
8403         This happens now and then, and i don't think it is a bug.
8404         (gdk_fb_draw_polygon): Correctly add extra point if startpoint
8405         != endpoint.
8406         (gdk_fb_draw_lines): Don't draw dashed lines if line_style is
8407         GDK_LINE_SOLID.
8408
8409         * gdk/linux-fb/gdkfont-fb.c: Return bogus GdkFont that has
8410         some of the fields filled in at least.
8411
8412         * gdk/linux-fb/miwideline.c: The widths argument to miLineArcI, and
8413         miLineArcD is no more, remove it from the function definition.
8414
8415 2001-01-04  Havoc Pennington  <hp@redhat.com>
8416
8417         * gtk/gtktreeselection.c (gtk_tree_selection_get_tree_view): add
8418         this
8419
8420         * gtk/gtktreemodel.h (struct _GtkTreeIter): rename fields to
8421         user_data instead of tree_node
8422
8423         * gtk/gtktreeprivate.h (TREE_VIEW_COLUMN_WIDTH): rename from
8424         TREE_VIEW_COLUMN_SIZE
8425
8426         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): rename
8427         "size" field to "width" finishes bug 40061
8428
8429         * gtk/gtkcellrenderer.h: Use GtkCellRendererState instead of guint
8430         for bitfields, bug 40268
8431
8432 2001-01-04  Havoc Pennington  <hp@redhat.com>
8433
8434         Rename some stuff:
8435         
8436         s/gtk_tree_view_column_set_size/gtk_tree_view_column_set_width/g;
8437
8438         s/GtkModelSimple/GtkTreeModelSimple/g;
8439         s/GTK_MODEL_SIMPLE/GTK_TREE_MODEL_SIMPLE/g;
8440         s/gtk_model_simple/gtk_tree_model_simple/g;
8441         s/gtkmodelsimple/gtktreemodelsimple/g;
8442
8443         s/gtk_tree_view_column_set_header_active/gtk_tree_view_column_set_header_clickable/g;
8444
8445         s/GtkTreeViewColumnType/GtkTreeViewColumnSizing/g;
8446         s/column_set_col_type/column_set_sizing/g;
8447
8448         s/GtkTreeSelectionType/GtkTreeSelectionMode/g;
8449         s/gtk_tree_selection_set_type/gtk_tree_selection_set_mode/g;
8450
8451         s/GtkCellRendererType/GtkCellRendererState/g;
8452         
8453         * gtk/gtkcellrenderertoggle.c: remove _ macro, include gtkintl.h
8454         (gtk_cell_renderer_toggle_class_init): change "state" property to
8455         "active", to match GtkToggleButton
8456         (gtk_cell_renderer_toggle_get_active): new function, bug
8457         40269
8458         (gtk_cell_renderer_toggle_set_active): new function
8459         (gtk_cell_renderer_toggle_set_property): route changes to toggle
8460         state through gtk_cell_renderer_set_active
8461
8462 Thu Jan  4 15:46:18 2001  Jonathan Blandford  <jrb@redhat.com>
8463
8464         * gtk/gtkmodelsimple.c: Changed a bunch of boxed types to pointers
8465         temporarily until they work again.  Brought up to date with
8466         changes in the model.
8467         * gtk/gtkmodelsimple.h: Brought up to date with changes in the
8468         model.
8469
8470 2001-01-04  Havoc Pennington  <hp@redhat.com>
8471
8472         * gtk/gtktextlayout.c (line_display_index_to_iter): if index is
8473         equal to the line length, then position iterator before paragraph 
8474         separators. Fixes crash reported by Mikael Hermansson when
8475         pressing left arrow from the start of a line.   
8476
8477         * gtk/gtktextiter.c (iter_set_from_byte_offset): Add g_error
8478         about byte indexes off the end
8479         (iter_set_from_char_offset): add g_error about char offsets
8480         off the end
8481
8482 2001-01-03  Havoc Pennington  <hp@redhat.com>
8483
8484         * gtk/gtktextbtree.c: Adapt to uscore-ification of gtktextiterprivate
8485
8486         * gtk/gtktextdisplay.c (gtk_text_layout_draw): remove use 
8487         of private functions; remove inclusion of private headers.
8488
8489         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_at_line): Add this 
8490         function, so we don't need private functions in gtktextdisplay.c
8491
8492         * gtk/gtktextiterprivate.h: underscore-ification
8493
8494         * gtk/gtkwidget.c: Clean up a bunch of docs that said "INTERNAL"
8495         to instead say "only useful to implement widgets"
8496
8497         * gtk/gtkenums.h (GtkMovementStep): Rename GTK_MOVEMENT_CHARS,
8498         GTK_MOVEMENT_POSITIONS to GTK_MOVEMENT_LOGICAL_POSITIONS,
8499         GTK_MOVEMENT_VISUAL_POSITIONS. Resolves bug 40249.
8500
8501         * gdk/x11/gdkwindow-x11.c (gdk_window_impl_x11_set_colormap):
8502         This function was completely broken
8503
8504         * gtk/testtext.c (line_numbers_expose): use gtk_paint_layout
8505
8506         * gtk/gtkvscale.c (gtk_vscale_draw_value): use gtk_paint_layout
8507
8508         * gtk/gtkvruler.c (gtk_vruler_draw_ticks): use gtk_paint_layout
8509
8510         * gtk/gtklabel.c (gtk_label_expose): use gtk_paint_layout
8511
8512         * gtk/gtkhscale.c (gtk_hscale_draw_value): use gtk_paint_layout
8513
8514         * gtk/gtkhruler.c (gtk_hruler_draw_ticks): use gtk_paint_layout
8515
8516         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_render): use
8517         gtk_paint_layout
8518
8519         * gtk/gtkaccellabel.c (gtk_accel_label_expose_event): use
8520         gtk_paint_layout
8521
8522         * gtk/gtkstyle.h: Add draw/paint expander to draw tree expanders.
8523         Progress on bug 40103. Add draw_layout to draw a PangoLayout.
8524         (struct _GtkStyleClass): Remove draw_cross, draw_oval, draw_ramp,
8525         which were not implemented.     
8526
8527         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): Add
8528         insert_pixbuf signal. Rename delete_text to delete_range since it
8529         also deletes pixbufs and child anchors. This almost closes bug
8530         40245 (still need to deal with child anchors)
8531
8532         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Add
8533         insert_pixbuf, change signal names as appropriate, change types of
8534         signals taking marks/tags to have the specific type, not just
8535         G_TYPE_OBJECT
8536         
8537         * gtk/gtkmain.c (gtk_get_current_event_state): Add this function; 
8538         closes bug 40051
8539
8540         * gtk/gtkoptionmenu.c (gtk_option_menu_set_history): clean up
8541         unnecessary remove_contents() call
8542         (gtk_option_menu_class_init): add a "changed" signal, closes
8543         bug 40039
8544         (gtk_option_menu_update_contents): emit "changed" if the 
8545         active menu item changes
8546
8547         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done): fix bad
8548         cast to GtkObject, reported by Jonas Borgstrom
8549         (gdk_pixbuf_loader_finalize): don't close the loader on finalize;
8550         we can't do stuff with side effects in finalize. Instead, spew a
8551         warning if the loader isn't closed.
8552
8553         * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_finalize): free
8554         colormap in here, non-X ports probably need to sync to this change
8555
8556         * gdk/x11/gdkdrawable-x11.c (gdk_x11_set_colormap): remove 
8557         assertion that colormap != NULL, you can set the colormap to NULL
8558         if you like.
8559         
8560         * Makefile.am: remove gtk-config-2.0
8561
8562         * configure.in: Use pkg-config to locate GLib. Remove
8563         separated-out GMODULE_LIBS, GMODULE_CFLAGS; these were not used,
8564         and the gmodule libs/cflags were in GLIB_LIBS GLIB_CFLAGS anyhow.
8565         Use pkg-config to locate Pango. Output correct Pango libs to
8566         gdk-2.0.pc.in. Fix test for FREETYPE_CONFIG (typo fix).
8567
8568         * Makefile.am (pkgconfig_DATA): install only target-specific pc
8569         files
8570         (install-data-local): symlink gtk+-2.0.pc and gdk-2.0.pc to the
8571         X11 pc files
8572
8573         * gtk+-2.0.pc.in (Requires): require the GDK for the current target
8574         unref from here
8575
8576 2001-01-03  Alexander Larsson  <alla@lysator.liu.se>
8577
8578         * configure.in:
8579         Change GTK_NO_CHECK_CASTS to G_DISABLE_CAST_CHECKS.
8580
8581 Tue Jan  2 16:23:05 2001  Owen Taylor  <otaylor@redhat.com>
8582
8583         * gtk/gtktextlayout.c
8584         (gtk_text_layout_move_iter_to_previous_line): Fix unitialized
8585         variable when moving back onto a single line.
8586
8587 2001-01-01  Havoc Pennington  <hp@redhat.com>
8588
8589         * gtk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
8590
8591         * gdk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
8592
8593         * configure.in (LIBTOOL_EXPORT_OPTIONS): define
8594         LIBTOOL_EXPORT_OPTIONS with options to control symbol export
8595
8596 2001-01-01  Havoc Pennington  <hp@redhat.com>
8597
8598         * gtk/gtktexttagprivate.h: uscore-prepend all the stuff in here.
8599
8600         * gtk/gtk-boxed.defs (GtkTextAttributes): Add boxed type for 
8601         GtkTextAttributes
8602
8603         * gtk/gtktexttag.c: Fix up GtkTextAttributes copying to close bug 
8604         #40246
8605         (gtk_text_attributes_copy_values): rename from 
8606         gtk_text_attributes_copy
8607         (gtk_text_attributes_copy): a more standard GTK copy function, 
8608         which returns a new object
8609
8610 2001-01-01  Havoc Pennington  <hp@redhat.com>
8611
8612         * gtk/gtktreeview.c: Adapt to GtkTreeSelection changes
8613         
8614         * gtk/gtktreeselection.c (_gtk_tree_selection_set_tree_view):
8615         don't fill in tree_view->priv->selection, kind of an unexpected
8616         side effect
8617
8618         * gtk/gtkcellrenderertext.c: Remove definition of _ and include
8619         gtkintl.h
8620         
8621         * gtk/gtkcellrenderer.c: Remove definition of _ and include
8622         gtkintl.h
8623         (gtk_cell_renderer_get_property): remove calls to g_value_init
8624
8625         * gtk/gtkcellrendererpixbuf.c: Remove definition of _ and include
8626         gtkintl.h
8627
8628         * gtk/gtkcellrenderertextpixbuf.c: Remove definition of _ macro
8629         and include gtkintl.h
8630         (gtk_cell_renderer_text_pixbuf_class_init): remove spaces from
8631         property names
8632
8633         * gtk/gtktreeselection.c (_gtk_tree_selection_new): rename, return
8634         GtkTreeSelection
8635         (_gtk_tree_selection_new_from_with_view): rename, return
8636         GtkTreeSelection
8637         (_gtk_tree_selection_set_tree_view): rename with uscore
8638         (gtk_tree_selection_get_selected): fill in the "model" out param
8639         first, so it gets filled in even if we return at the top of the 
8640         function
8641         (gtk_tree_selection_real_select_all): add a comment and an else{}
8642         to clarify this a bit
8643         (gtk_tree_selection_real_unselect_all): add the same else{}
8644
8645         * gtk/gtktreeselection.h: Rename new, new_with_tree_view, and
8646         set_tree_view to have underscore prefixes, move them to the
8647         private header, fix return type of new_with_tree_view
8648         (struct _GtkTreeSelection): mark struct
8649         fields private  
8650
8651         * gtk/gtktreemodel.c (gtk_tree_model_get_flags): return
8652         GtkTreeModelFlags, not a guint
8653         (gtk_tree_path_prev): return gboolean not gint
8654         (gtk_tree_path_up): return gboolean not gint
8655
8656         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): make get_flags
8657         return GtkTreeModelFlags, not a guint
8658
8659         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_finalize): check
8660         that child model is non-null before unrefing it
8661         (g_value_int_compare_func): make this a qsort compare func, not 
8662         a boolean predicate
8663
8664         * gtk/gtktreemodelsort.h: rename gtk_tree_model_set_sort_column,
8665         (add -umn to the end), and mark it unimplemented
8666         (gtk_tree_model_sort_resort): remove, this wasn't implemented, and 
8667         I don't see what it's for - doesn't the model always sort itself?
8668         (gtk_tree_model_sort_set_compare): this had the wrong signature
8669
8670         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_attributes):
8671         Fix the docs to say that it destructively replaces existing
8672         attributes (previously said that it added attributes).
8673         (gtk_tree_view_column_set_visible): canonicalize bool before
8674         equality testing. Also, check for realization before
8675         hiding/showing the tree_column->window; if this window could exist
8676         before realization, then it's busted and needs fixing, we can't 
8677         create GDK resources pre-realization. Also, remove
8678         superfluous queue_resize(), since set_size() does that for us.
8679         (gtk_tree_view_column_set_col_type): check realization before 
8680         using tree_column->window
8681
8682         * gtk/gtktreedatalist.c: fix filename in copyright notice
8683
8684 2000-12-31  Havoc Pennington  <hp@pobox.com>
8685
8686         * gtk/gtktextview.c: Rearrange all the
8687         scroll-while-dragging-or-selecting code to be different, not
8688         necessarily better. ;-)
8689         (gtk_text_view_scroll_to_mark): Change this
8690         function to take within_margin as a fraction instead of a pixel
8691         value, and to take alignment arguments (indicating where to align 
8692         the mark inside the visible area)
8693         
8694         * gtk/testtextbuffer.c (fill_buffer): fix bad cast of GtkTextTag
8695         to GtkObject
8696
8697         * gtk/gtktextiter.c (gtk_text_iter_set_line_offset): change
8698         behavior so that offsets past the end of the line are not 
8699         allowed, and an offset equal to the line length moves the iterator
8700         to the next line
8701         (gtk_text_iter_set_line_index): make parallel change
8702         (gtk_text_iter_get_bytes_in_line): add this function
8703         
8704         * gtk/gtktextbtree.c (_gtk_text_line_byte_locate): change handling
8705         of byte indexes off the end of the line; byte index at the end of
8706         the line now returns FALSE and doesn't fill in the requested
8707         values, byte index past the end of the line is an error.  Also,
8708         don't allow -1 offset anymore, since its meaning is unclear.
8709
8710         This change exposes some bug in visual cursor motion, where we
8711         end up with a huge invalid byte index; needs fixing. Symptom of 
8712         bug is a crash when you hit up arrow.
8713         
8714         (_gtk_text_line_char_locate): match the change to byte_locate
8715
8716         * gtk/gtktextiter.c (find_by_log_attrs): Handle iteration backward
8717         from start of line properly. fixes bug reported by Mikael
8718         Hermansson where backspace would delete all text before the
8719         cursor.
8720
8721 2000-12-30  Tor Lillqvist  <tml@iki.fi>
8722
8723         * gdk/win32/gdkwindow-win32.c
8724         (gdk_window_impl_win32_get_visible_region): New function, as in
8725         the X11 backend.
8726         (gdk_window_new, gdk_window_set_title): Use g_locale_from_utf8()
8727         instead of duplicating the same code here.
8728
8729         * gdk/win32/gdkwin32.h (GDK_COLORMAP_PRIVATE_DATA): Use
8730         GDK_COLORMAP macro.
8731
8732         * gdk/win32/gdkevents-win32.c (gdk_event_funcs): Use NULL as
8733         destroy function.
8734         (gdk_event_translate): Use GDK_COLORMAP_PRIVATE_DATA to correctly
8735         access that.
8736
8737         * gtk/gtk.def: Update.
8738
8739         * gtk/makefile.mingw.in: Use glib-genmarshal from $(GLIB)/gobject.
8740
8741 2000-12-30  Havoc Pennington  <hp@pobox.com>
8742
8743         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Set the system
8744         colormap on input only windows, to avoid special cases all over
8745         the code for these windows.
8746
8747 2000-12-26  Tor Lillqvist  <tml@iki.fi>
8748
8749         * gdk/win32/gdkvisual-win32.c (gdk_visual_init): Call g_error if
8750         we are on a palettized display ("PseudoColor" in X11), as the code
8751         for that doesn't work anyway, and never has.
8752
8753 2000-12-22  Alexander Larsson  <alexl@redhat.com>
8754
8755         * gdk/linux-fb/gdkkeyboard-fb.c (xlate_io):
8756         Don't use isprint() for chars > 255.
8757
8758 2000-12-21  Havoc Pennington  <hp@redhat.com>
8759
8760         * tests/testtreeview.c: more work
8761
8762 2000-12-21  Alexander Larsson  <alexl@redhat.com>
8763
8764         * docs/README.linux-fb:
8765         Update the docs to the new pangoft2 way.
8766
8767 2000-12-21  Alexander Larsson  <alexl@redhat.com>
8768
8769         * configure.in:
8770         For linux-fb get the pangoft2 cflags and libs. This needs a recent
8771         pango version.
8772         Remove modules/linux-fb/Makefile.
8773
8774         * gdk/linux-fb/gdkdrawable-fb2.c:
8775         Render glyphs using freetype.
8776
8777         * gdk/linux-fb/gdkfb.h:
8778         Add new fb-specific functions needed for managing windows.
8779
8780         * gdk/linux-fb/gdkmain-fb.c:
8781         Remove gdk_font_init/fini() calls.
8782
8783         * gdk/linux-fb/gdkpango-fb.c:
8784         Remove old implementation. Use pangoft2 instead.
8785
8786         * gdk/linux-fb/gdkprivate-fb.h:
8787         Remove PangoFBFont and related stuff.
8788
8789         * gdk/linux-fb/gdkwindow-fb.c:
8790         Implement drawable->get_visible_region.
8791         Implement support for _gdk_window_set_child_handler () and
8792         _gdk_window_get_decorations().
8793
8794         * modules/Makefile.am:
8795         Remove linux-fb subdir.
8796
8797         * modules/linux-fb/*:
8798         Removed all.
8799         
8800 2000-12-20  Jonathan Blandford  <jrb@redhat.com>
8801
8802         * gtk/gtkcellrenderer*.c (::get_property): remove g_value_init
8803         calls, as they are no longer needed.
8804
8805         * gtk/gtktreemodelsort.c: Fix up the comparison code.
8806         
8807         * gtk/gtktreemodel.h: Start work on ::reordered signal.  Need to
8808         figure out how to emit a signal on an interface.
8809
8810 2000-12-20  Havoc Pennington  <hp@redhat.com>
8811
8812         * tests: new directory to contain tests, gtk/test* should move
8813         here sometime (with appropriate on-cvs-server hackery)
8814
8815         * tests/testtreeview.c, tests/Makefile.am: a test
8816         
8817         * configure.in (AC_OUTPUT): add tests/Makefile
8818
8819         * gtk/gtktexttag.c (gtk_text_tag_get_property): Add "invisible"
8820         and "invisible_set" which were missing
8821
8822         * gtk/gtkrbtree.h: some cheesy indentation fix
8823         
8824 2000-12-20  Alexander Larsson  <alexl@redhat.com>
8825
8826         * gtk/gtkinvisible.c (gtk_invisible_realize):
8827         Attach the style to the window so that the style it is not
8828         leaked when unrealizing the window.
8829
8830 2000-12-18  Havoc Pennington  <hp@redhat.com>
8831
8832         * gtk/gtktextview.c (gtk_text_view_delete_from_cursor): do
8833         begin/end user action where appropriate
8834         (gtk_text_view_commit_handler): add begin/end user action
8835
8836         * gtk/gtktextbuffer.c: add begin/end user action signals, and
8837         bracket interactive operations with begin/end user action pair.
8838         
8839         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): remove
8840         "interactive" arg from insert_text and delete_text signals.
8841         Add begin_user_action, end_user_action signals
8842         (gtk_text_buffer_begin_user_action): 
8843         (gtk_text_buffer_end_user_action): New functions to delimit 
8844         a user-visible action
8845
8846         * gtk/gtkmarshal.list: update to reflect changes to gtktextbuffer
8847         signals.
8848         
8849 2000-12-18  Havoc Pennington  <hp@redhat.com>
8850
8851         * gdk/gdkevents.c (gdk_event_get_state): wow, that implementation
8852         was pretty non-working.
8853
8854         * gtk/testtext.c (fill_file_buffer): make this a bit more robust
8855         by passing the length to g_utf8_validate().
8856
8857 2000-12-16  Havoc Pennington  <hp@pobox.com>
8858
8859         * gtk/gdk-pixbuf-loader.h, gtk/gdk-pixbuf-loader.c: 
8860         Port to GObject, can go back in gdk-pixbuf after setting up 
8861         a gdk-pixbuf-marshal.h header over there.
8862
8863         * gtk/gtktreeview.c: s/SEPERATOR/SEPARATOR/g;
8864         (gtk_tree_view_class_init): specify GTK_TYPE_ADJUSTMENT for signal
8865         args
8866         (gtk_tree_view_init): don't unset GTK_NO_WINDOW, it shouldn't be
8867         set
8868         (gtk_tree_view_realize_buttons): don't gtk_widget_show() buttons
8869         here, do it when we create the buttons later
8870         (gtk_tree_view_realize_buttons): add some g_return_if_fail 
8871         (gtk_tree_view_map): paranoia checks that column->button is shown 
8872         and unmapped
8873         (gtk_tree_view_size_request): only request visible children.
8874         Move header size calculation in here, for cleanliness, and 
8875         to maintain invariants for child widgets if we eventually 
8876         let users set different children inside the buttons
8877         (gtk_tree_view_map_buttons): factor out code to map buttons,
8878         since it was being called several times
8879         (gtk_tree_view_size_allocate_buttons): move_resize the drag
8880         windows instead of just moving them; their height may change 
8881         if we allow random widgets in there, or the theme changes.
8882         (gtk_tree_view_size_allocate): move button size allocation 
8883         above emitting the scroll signals, to ensure a sane state when we
8884         hit user code
8885         (gtk_tree_view_button_release): remove queue_resize after
8886         tree_view_set_size(), set_size() will handle any resize queuing
8887         that's needed
8888         (gtk_tree_view_focus_in): just queue a draw, don't fool with
8889         draw_focus goo
8890         (gtk_tree_view_focus): use gtk_get_current_event() and
8891         gdk_event_get_state()
8892         (gtk_tree_view_deleted): don't queue_resize() after calling set_size()
8893         (gtk_tree_view_build_tree): fix a "if (foo); {}" bug - i.e. remove
8894         semicolon
8895         (gtk_tree_view_create_button): show the button here
8896         (gtk_tree_view_button_clicked): actually emit the clicked signal
8897         on the column
8898         (_gtk_tree_view_set_size): return right away if the size is
8899         unchanged, as a cheesy optimization
8900         (gtk_tree_view_setup_model): rename set_model_realized to 
8901         setup_model to match the flag that indicates whether we've 
8902         called it
8903         (gtk_tree_view_get_hadjustment): create adjustment if it doesn't
8904         exist, because set_scroll_adjustment does that and it shouldn't
8905         matter what order you call these in
8906         (gtk_tree_view_get_vadjustment): ditto
8907         (gtk_tree_view_set_headers_visible): canonicalize the bool, 
8908         for paranoia
8909         (gtk_tree_view_set_headers_visible): call
8910         gtk_tree_view_map_buttons() instead of using cut-and-paste code
8911         (gtk_tree_view_append_column): clarify whether the return value
8912         is the count of columns before or after, and do the increment 
8913         separately from the return statement so you can tell from the code.
8914         (gtk_tree_view_remove_column): ditto
8915         (gtk_tree_view_insert_column): ditto
8916         (gtk_tree_view_get_column): remove g_return_if_fail for columns
8917         outside the existing range, the docs say that outside-range
8918         columns are allowed, so we handle them as documented. (Presumably
8919         this allows a nice loop with column != NULL as test.)
8920         (gtk_tree_view_move_to): document what 0.0, 0.5, 1.0 alignments 
8921         mean (left/right/center etc.).
8922         (gtk_tree_view_collapse_all): only queue a draw if we're mapped
8923         (gtk_tree_view_expand_row): add docs
8924         (gtk_tree_view_collapse_row): add docs
8925
8926         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clicked): new
8927         function to emit the clicked signal on a column
8928         
8929         * gdk/gdkevents.c (gdk_event_get_state): new function, to get the
8930         state of an event
8931         (gdk_event_get_time): don't treat GDK_SCROLL 
8932         as a button event, remove default case from switch so gcc 
8933         will whine if we don't explicitly handle all event types
8934
8935         * gtk/gtktreeselection.h: added some FIXME 
8936         
8937         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): rename
8938         "columns" to "n_columns" and "column" to "columns" for clarity
8939
8940 2000-12-16  Havoc Pennington  <hp@pobox.com>
8941         
8942         * gtk/gtktextiter.c: General cleanup of the log attr iteration
8943         stuff. This should make e.g. the delete key work again in the
8944         text widget...
8945         (gtk_text_iter_forward_cursor_positions): handle negative count
8946         (gtk_text_iter_backward_cursor_positions): handle negative count
8947         (gtk_text_iter_forward_word_ends): handle negative count
8948         (gtk_text_iter_backward_word_starts): handle negative count
8949
8950         * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktexttag.h,
8951         gtk/gtktexttag.c, gtk/gtktexttagtable.h, gtk/gtktexttagtable.c, 
8952         gtk/gtktextbuffer.h, gtk/gtktextbuffer.c: Convert everything to 
8953         GObject. No doubt will cause breakage.
8954
8955         * demos/gtk-demo/textview.c: remove hacks around
8956         non-GObject-ification of the text objects
8957
8958         * demos/gtk-demo/main.c (main): use g_object_set() to manipulate 
8959         the text tag
8960         
8961 2000-12-14  Havoc Pennington  <hp@pobox.com>
8962
8963         * configure.in: only AC_DEFINE(HAVE_XFT) if we actually determined
8964         that we have Xrender
8965
8966 Thu Dec 14 20:22:31 2000  Owen Taylor  <otaylor@redhat.com>
8967
8968         * gdk/{gdkdrawable.[ch],gdkpixmap.c,gdkwindow.c,x11/gdkwindow.c}:
8969         Add two virtualized functions gdk_drawable_get_clip_region - to
8970         get the clip region when drawing.
8971         
8972         * gdk/gdkwindow.c (gdk_window_invalidate_rect): Rewrite to simple
8973         use invalidate_region.
8974
8975         * gdk/gdkwindow.c (gdk_window_invalidate_region): Clip to visible
8976         region.
8977
8978         * acconfig.h configure.in: Check for Xft. For now, assume
8979         that if Xft is found, Pango was compiled with Xft support
8980         as well.
8981
8982         * gdk/gdkcolor.h gdk/x11/gdkcolor-x11.c: Add 
8983         gdk_colormap_query_color().
8984         
8985         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_glyphs): Draw
8986         with Xft if appropriate.
8987
8988         * gdk/x11/gdkpango-x11.c (gdk_pango_context_get): Create
8989         a pangoxft context if we have XFT and the environment
8990         variable GD_USE_XFT is set.
8991         
8992         * gdk/x11/gdkx.h (struct _GdkGCX11): Cache the fg_pixel
8993         and also possibly an XftDraw structure.
8994
8995         * gtk/gtkfontsel.c: Handle the case where the font from the
8996         style doesn't match any of the fonts a bit better.
8997         
8998         * gtk/testgtk.c: Add tabs between directional segments for
8999         hebrew/arabic test. (Not really necessary, just a little
9000         prettier.)
9001
9002 2000-12-14  Havoc Pennington  <hp@redhat.com>
9003
9004         * gtk/testtext.c (fill_file_buffer): fix unicode validation when
9005         reading a file
9006
9007 2000-12-14  Havoc Pennington  <hp@redhat.com>
9008
9009         * gtk/gtktextbtree.c (_gtk_text_btree_validate_line): remove
9010         unused call to get_last_line()
9011
9012         * gtk/gtkobject.c (gtk_object_add_arg_type): add G_TYPE_POINTER
9013         here until boxed is working (and maybe after that - we should
9014         really not gratuitously break old code)
9015
9016         * gtk/gtktexttag.c (gtk_text_tag_class_init): add commented-out
9017         specific types for font_desc and tabs args, move them to
9018         GTK_TYPE_POINTER for now, waiting on g_param_spec_boxed() to get 
9019         fixed. Move GdkColor args to GTK_TYPE_POINTER also.
9020
9021         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): temporarily
9022         use GTK_TYPE_POINTER for signal signatures as a hack-around
9023
9024         * gtk/gtk-boxed.defs: Add boxed types for PangoFontDescription and
9025         PangoTabArray
9026
9027         * gtk/gtktextlayout.c (line_display_iter_to_index): 
9028         make static
9029         (line_display_index_to_iter): make static
9030
9031         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
9032         to marshal a string not a boxed
9033
9034         * gtk/gtkmarshal.list: add marshaller for GtkTextBuffer:insert_text
9035
9036         * gtk/testtext.c (fill_file_buffer): don't use g_utf8_next_char
9037         since the UTF-8 isn't validated yet
9038
9039         * gtk/gtktextsegment.c (char_segment_check_func): don't require
9040         lines to end in '\n'
9041         
9042         * gtk/gtktextview.c (gtk_text_view_move_cursor): update to use
9043         forward_to_delimiters, and grapheme boundaries
9044         (gtk_text_view_delete_from_cursor): properly handle non-newline
9045         delimiters, and grapheme boundaries
9046
9047         * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): rename
9048         to gtk_text_iter_forward_to_delimiters, and make it work properly
9049         if empty lines end with a character other than '\n'
9050
9051         * gtk/gtktextiter.h, gtk/gtktextiter.c: Add movement by cursor
9052         position
9053
9054 2000-12-15  Tor Lillqvist  <tml@iki.fi>
9055
9056         * gdk/makefile.{mingw.in,msc} (gdk_OBJECTS): Add gdkkeys.
9057
9058         * gtk/gtk.def
9059         * gdk/gdk.def: Update.
9060
9061         * gdk/win32/gdkmain-win32.c
9062         * gdk/win32/gdkkeys-win32.c: New file. Move some functions from
9063         gdkmain-win32.c here.
9064
9065         * gdk/win32/makefile.mingw.in (all): No need to make
9066         gdk-win32res.o here, the makefile one step up will call us to make
9067         it.
9068
9069         * gdk/win32/makefile.{mingw.in,msc} (gdk_win32_OBJECTS): Add
9070         gdkkeys-win32.
9071
9072         * gdk/win32/gdkcolor-win32.c: Silence gcc -Wall.
9073
9074         * gdk/win32/gdkevents-win32.c (gdk_events_init): Remove leftover
9075         call to g_source_add().
9076
9077         * gdk/win32/gdkgc-win32.c (BitmapToRegion): Plug memory
9078         leak. Thanks to Andreas Kemnade.
9079
9080 2000-12-13  Havoc Pennington  <hp@pobox.com>
9081
9082         * gtk/gtktextbtree.h: Remove double _ in front of some functions
9083
9084         * gtk/gtktext*.[hc]: update accordingly
9085         
9086 2000-12-13  Havoc Pennington  <hp@pobox.com>
9087
9088         * gtk/gtktextbtree.h: Put _ in front of every function in this 
9089         header file
9090
9091         * gtk/gtktext*.[hc]: update to reflect renamed btree functions
9092
9093 2000-12-13  Alex Larsson  <alexl@redhat.com>
9094
9095         * gdk/linux-fb/gdkmouse-fb.c (mouse_devs):
9096         Add support for ps2 intellimouse.
9097
9098         * gdkkeyboard-fb.c:
9099         Move shift-F1 repaint handling to xlate handler only.
9100         
9101         * docs/README.linux-fb:
9102         Add imps2 to docs.
9103         Document the new refresh keys.
9104         
9105 Tue Dec 12 23:46:44 2000  Tim Janik  <timj@gtk.org>
9106
9107         * gtk/stock-icons/Makefile.am: doh, this was broken beyond believe.
9108
9109         * gtk/gtkbox.c: change property types from (u)long to (u)int for
9110         ::position and ::padding.
9111
9112         * gtk/gtkcontainer.c: make ::border_width an INT property.
9113
9114         * gtk/gtkpacker.c: make ::position an INT property.
9115
9116         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed):
9117         guard against NULL h/v scrollbars, since this is used at construction
9118         time.
9119
9120         * gtk/gtkclist.[hc]: nuked gtk_clist_construct(), implemented
9121         internal gtk_clist_constructor().
9122
9123         * gtk/gtkctree.[hc]: nuked gtk_ctree_construct(), implemented
9124         gtk_ctree_constructor().
9125
9126         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): property
9127         ::pulse_step should use ARG_PULSE_STEP, not ARG_FRACTION.
9128
9129         * docs/reference/Makefile.am: fun stuff, disabled docs generation
9130         again, gtk-scan.c needs to introspec paramspecs, not GtkAgs.
9131
9132         * gtk/gtkwidget.[hc]:
9133         removed gtk_widget_setv(), gtk_widget_getv(), gtk_widget_newv()
9134         and gtk_widget_get().
9135         (gtk_widget_new): use g_object_new_valist().
9136         (gtk_widget_set): use g_object_set_valist().
9137
9138         * gtk/gtkobject.[hc]:
9139         removed gtk_object_arg_get_info(), gtk_object_getv(),
9140         gtk_object_query_args(), gtk_object_newv(),
9141         gtk_object_class_add_signals(),
9142         gtk_object_class_user_signal_new(),
9143         gtk_object_class_user_signal_newv(),
9144         gtk_object_arg_set(), gtk_object_arg_get(),
9145         gtk_object_args_collect(),
9146         gtk_object_default_construct(),
9147         gtk_object_constructed(),
9148         GTK_CONSTRUCTED and GTK_OBJECT_CONSTRUCTED().
9149         removed nsignals, signals and n_args members from GtkObjectClass.
9150         (gtk_object_new): use g_object_new_valist().
9151         (gtk_object_set): use g_object_set_valist().
9152         (gtk_object_get): use g_object_get_valist().
9153         
9154         * gtk/gtkcompat.h: define gtk_object_default_construct().
9155         
9156         * gtk/gtktypeutils.c (gtk_type_new): create constructed objects via
9157         g_object_new().
9158
9159         * gtk/*.c: removed gtk_object_class_add_signals() from class_init()
9160         fucntions, cleaned up method assignments (make sure your structures
9161         are setup properly before calling out). removed all GTK_CONSTRUCTED
9162         hacks ;)
9163
9164 Tue Dec 12 11:52:16 2000  Owen Taylor  <otaylor@redhat.com>
9165
9166         * gtk/gtkclist.c (gtk_clist_optimal_column_width): Fix 
9167         off-by-one error in checks. (Dave Lambert)
9168
9169 2000-12-12  Alexander Larsson  <alexl@redhat.com>
9170
9171         * gdk/linux-fb/gdkkeyboard-fb.c (xlate_close, raw_close):
9172         Don't free gdk_fb_keyboard twice.
9173
9174 Tue Dec 12 08:24:42 2000  Tim Janik  <timj@gtk.org>
9175
9176         * gtk/testgtk.c:
9177         (create_tooltips): 
9178         (create_statusbar): get rid of object_signal:: GtkObject argument uses,
9179         use GObject swapped_signal:: properties instead.
9180
9181         * gtk/gtkcellrenderertoggle.c: 
9182         * gtk/gtkcellrenderertextpixbuf.c: 
9183         * gtk/gtkcellrenderertext.c: 
9184         * gtk/gtkcellrendererpixbuf.c: 
9185         * gtk/gtkcellrenderer.c:
9186         * gtk/gtktreeviewcolumn.c: s/[sg]et_param/[sg]et_property/, fixed
9187         missing warnings for invalid property ids, install properties
9188         with g_object_class_install_property() now.
9189         
9190         * gtk/gtksignal.c:
9191         (gtk_signal_emit): let g_signal_emit_valist() collect the values for us.
9192         
9193 Wed Oct 25 14:17:43 2000  Owen Taylor  <otaylor@redhat.com>
9194         
9195         * gtk/gtkwidget.[ch] (gtk_widget_is_focus): Add a function
9196         to determine if a window is the focus widget within
9197         its toplevel.
9198
9199         * gtk/gtkcontainer.[ch]: Fix the return type of ::focus
9200         to be boolean.
9201
9202         * gtk/gtkcontainer.c (gtk_container_real_focus): Move handling 
9203         of the case where the container CAN_FOCUS to here instead
9204         of having it in each individual move-the-focus place.
9205
9206         * gtk/gtkcontainer.c: Rewrite handling of left-right and up-down
9207         focusing to be geometric in a much more obvious sense. Arrowing
9208         around is still non-intuitive because it isn't perfect and
9209         because entries, etc, grab the arrow keys, but it at least
9210         usually will do what you expect now.
9211         
9212         * gtk/gtknotebook.[ch]: Many cleanups. Moved docs inline in this
9213         file.
9214
9215         * gtk/gtknotebook.c: Change tabs to be a single item in
9216         the focus chain. Make movement of focus on tabs with arrow
9217         keys wrap around.
9218         
9219         * gtk/gtknotebook.c (gtk_notebook_find_child): Add
9220         CHECK_FIND_CHILD macro to give informative error messages
9221         instead of silent returns.
9222
9223         * gtk/gtknotebook.c (gtk_notebook_init): Set the RECEIVES_DEFAULT 
9224         flag since we handle GdkReturn on the tabs.
9225
9226         * gtk/gtknotebook.c (gtk_notebook_expose_tabs): Invalidate
9227         windows rather than sending expose events directly.
9228
9229         * gtk/gtknotebook.[ch] docs/Changes-2.0.txt: Move structure 
9230         definition for GtkNotebookPage into .c file, since it is private.
9231
9232         * gtk/testgtk.c (create_notebook): Add option for 
9233         testing borderless notebook.
9234
9235         * gtk/testgtk.c (page_switch): Removed egregious poking
9236         around in GTK+ internals.
9237
9238         * docs/widget-system.txt: Remove references to GTK_REDRAW_PENDING.
9239
9240         * gtk/gtkclist.[ch]: Remove key press handler, handle focusing
9241         properly through gtk_clist_focus. Make the title headers a
9242         single item in the tab-focus chain, and make left-right wrap
9243         around.
9244
9245         * gtk/gtkwindow.c (gtk_window_focus): Add a custom
9246         focus method so that wrapping around works properly.
9247
9248         * gtk/gtktreeview.c: Remove calls to gtk_container_set_focus_child() - 
9249         that is handled for the widget now. 
9250
9251 Mon Dec 11 11:41:12 2000  Owen Taylor  <otaylor@redhat.com>
9252
9253         * gtk/gtkinvisible.c (gtk_invisible_init): Flag invisible
9254         widgets as TOPLEVEL.
9255
9256         * gtk/gtkwidget.c (gtk_widget_queue_resize): Don't assume
9257         TOPLEVEL widgets are containers.
9258
9259         * gtk/gtkinvisible.h: Remove useless include.
9260
9261 2000-12-11  Havoc Pennington  <hp@redhat.com>
9262
9263         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): 
9264         Handle chopping off \r\n and 0x2029 in addition to \n before
9265         passing to PangoLayout
9266
9267         * gtk/gtkimcontextsimple.c
9268         (gtk_im_context_simple_get_preedit_string): 
9269         return an empty string if no match is pending
9270
9271         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): add
9272         assertion that the returned preedit string was sane
9273
9274         * gtk/gtktext*.[hc], gtk/testtext.c, gtk/testtextbuffer.c:
9275         s/gtk_text_iter_next_char/gtk_text_iter_forward_char/g;
9276         s/gtk_text_iter_prev_char/gtk_text_iter_backward_char/g;
9277
9278 Mon Dec 11 10:02:26 2000  Owen Taylor  <otaylor@redhat.com>
9279
9280         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_finalize): 
9281         Fix up finalizer to chain to its parent.
9282
9283 2000-12-11  Alexander Larsson  <alexl@redhat.com>
9284
9285         * docs/README.linux-fb (GDK_KEYBOARD_TYPE):
9286         Clearified the difference between the keyboard types. Wrote a note
9287         about the magic sysrq key to get out of raw mode.
9288
9289 2000-12-09  James Henstridge  <james@daa.com.au>
9290
9291         * gdk/linux-fb/gdkmouse-fb.c (GdkFBMouseDevice): add prot struct
9292         member to hold masks for detecting the start of a protocol packet.
9293         (mouse_devs): add packet start masks for ps2 and ms device types.
9294         Left the mask for fidmour blank, as I have no idea what it should
9295         be.
9296         (handle_mouse_io): skip bytes until we get to the start of a
9297         packet.  My Logitech mouse seems to be passing an extra NULL pad
9298         byte, and GPM does a similar thing here.
9299         (gdk_fb_mouse_ms_open): changed error message to not say psaux, as
9300         this is the ms mouse driver.
9301         (gdk_fb_mouse_ms_packet): fix up button handling, which was
9302         completely broken except for button1.  It was checking the wrong
9303         bit in the packet for the status of the right mouse button, and
9304         wrongly assuming right == button2 rather than 3.  I fixed that and
9305         also added support for middle button (button2).
9306
9307 2000-12-08  Havoc Pennington  <hp@redhat.com>
9308
9309         * gtk/gtktextbtree.c (gtk_text_btree_insert): fix breakage here
9310         that cause a segfault on text insertion
9311
9312         * gtk/gtktextchild.c (gtk_text_child_anchor_queue_resize): fix 
9313         warning
9314
9315         * gtk/gtktextiter.c (test_log_attrs): use
9316         _gtk_text_buffer_get_line_log_attrs to speed things up a bit
9317
9318         * gtk/gtktextbuffer.c (_gtk_text_buffer_get_line_log_attrs): 
9319         Get log attrs for a line, using a cache stored on the buffer
9320         
9321         * gtk/gtkcolorsel.h (GTK_COLOR_SELECTION_GET_CLASS): fix typo,
9322         reported by Jeff Franks
9323
9324 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
9325
9326         * gdk/linux-fb/gdkmouse-fb.c (gdk_fb_mouse_ms_open):
9327         /dev/ttyS0 -> /dev/mouse
9328
9329 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
9330
9331         * gdk/linux-fb/gdkfont-fb.c (gdk_fontset_load):
9332         Added dummy gdk_fontset_load.
9333
9334 2000-12-08  Alexander Larsson  <alexl@redhat.com>
9335
9336         * docs/README.linux-fb:
9337         * docs/Makefile.am:
9338         Initial GtkFB docs.
9339         
9340         * gdk/linux-fb/Makefile.am:
9341         Define GDK_DATA_PREFIX.
9342
9343         * gdk/linux-fb/gdkmain-fb.c:
9344         Fix typo.
9345         Change default display to /dev/fb0.
9346
9347         * gdk/linux-fb/gdkpango-fb.c:
9348         Add $(prefix)/share/fonts/ to font path.
9349         
9350 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
9351
9352         * gdk/linux-fb/gdkkeyboard-fb.c:
9353         New file containing the abstracted keyboard driver. Most code
9354         taken from gdkinput-ps2.c
9355
9356         * gdk/linux-fb/gdkinput-ps2.c:
9357         Removed file.
9358         
9359         * gdk/linux-fb/Makefile.am:
9360         Added gdkkeyboard-fb.c, removed gdkinput-ps2.c.
9361
9362         * gdk/linux-fb/gdkcolor-fb.c:
9363         display->fb was renamed to display->fb_fd.
9364
9365         * gdk/linux-fb/gdkcursor-fb.c:
9366         gdk_mouse_get_info -> gdk_fb_mouse_get_info
9367
9368         * gdk/linux-fb/gdkinput.c:
9369         Moved gdk_input_init here from gdkinput-ps2.c
9370
9371         * gdk/linux-fb/gdkmain-fb.c:
9372         display->fb was renamed to display->fb_fd.
9373         Now the tty and the console is opened here instead
9374         of in the keyboard driver. Also check GDK_VT to see what
9375         tty to open.
9376         Move gdk_beep () here from gdkinput-ps2.c
9377         gdk_mouse_get_info -> gdk_fb_mouse_get_info
9378
9379         * gdk/linux-fb/gdkmouse-fb.c:
9380         Add header.
9381         gdk_mouse_get_info -> gdk_fb_mouse_get_info
9382         Return correct keyboard modifiers.
9383         GDK_MOUSETYPE -> GDK_MOUSE_TYPE for consistancy
9384
9385         * gdk/linux-fb/gdkprivate-fb.h:
9386         Add tty and vt info to display.
9387         Add orignal modeinfo storage to display
9388         Update global functions
9389
9390         * gdk/linux-fb/gdkwindow-fb.c:
9391         Added gdk_fb_window_find_focus().
9392         gdk_mouse_get_info -> gdk_fb_mouse_get_info
9393
9394 2000-12-07  Havoc Pennington  <hp@pobox.com>
9395
9396         * gdk/x11/gdkkeys-x11.c (gdk_keymap_lookup_key): fix name of 
9397         function, noticed by Alex
9398
9399 2000-12-06  Elliot Lee  <sopwith@redhat.com>
9400
9401         * configure.in: Detect freetype properly
9402
9403         * modules/basic/Makefile.am, gdk/linux-fb/Makefile.am: Make use of
9404         above.
9405
9406 2000-12-06  Alexander Larsson  <alexl@redhat.com>
9407
9408         * gdk/linux-fb/Makefile.am:
9409         Add gdkmouse-fb.c
9410         
9411         * gdk/linux-fb/gdkmouse-fb.c:
9412         New file. Abstracted the mouse drivers a bit.
9413
9414         * gdk/linux-fb/gdkcursor-fb.c:
9415         The cursor hide/show functions was moved here from gdkinput-ps2.c.
9416
9417         * gdk/linux-fb/gdkinput-ps2.c:
9418         Removed old mouse handling code. Moved cursor handling code
9419         to gdkcursor-fb.c, moved gdk_fb_window_send_crossing_events() to
9420         gdkwindow-fb.c. gdk_input_get_mouseinfo was renamed to
9421         gdk_mouse_get_info.
9422
9423         * gdk/linux-fb/gdkmain-fb.c:
9424         Pass NULL pointers for x,y in gdk_mouse_get_info call.
9425
9426         * gdk/linux-fb/gdkprivate-fb.h:
9427         Removed public gdk_fb_find_common_ancestor, added and renamed
9428         functions for the new mouse handling code.
9429
9430         * gdk/linux-fb/gdkwindow-fb.c:
9431         Moved gdk_fb_window_send_crossing_events here. added global
9432         variable gdk_fb_window_containing_pointer. made
9433         gdk_fb_find_common_ancestor static. gdk_input_get_mouseinfo was
9434         renamed to gdk_mouse_get_info.
9435
9436 2000-12-06  Alexander Larsson  <alexl@redhat.com>
9437
9438         * gdk/linux-fb/gdkevents-fb.c:
9439         Update to match latest gmain/gsource changes.
9440
9441         * gdk/linux-fb/gdkinput-ps2.c:
9442         Bogus gdk_keymap_get_entries_for_keycode implementation so that
9443         it links. Will be implemented later.
9444
9445 2000-12-03  Havoc Pennington  <hp@pobox.com>
9446
9447         * gdk/Makefile.am: add gdkkeys.[hc]
9448
9449         * gdk/gdkkeys.h, gdk/gdkkeys.c: Move all the keyval stuff to these
9450         files from gdk.h, gdk.c; add GdkKeymap type and operations on it.
9451
9452         * acconfig.h, configure.in: add checks and command line options
9453         for XKB
9454
9455         * gdk/x11/gdkkeys-x11.c: Implement the above functions
9456         
9457         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Put the keycode
9458         and group in the key event
9459
9460         * gdk/gdkevents.h (struct _GdkEventKey): Add a hardware_keycode
9461         field with the low-level hardware key code, and a group
9462         field with the keyboard group
9463
9464         * gdk/x11/gdkprivate-x11.h: include config.h for HAVE_XKB,
9465         and declare a couple globals used for keymap handling
9466         
9467         * gtk/gtkimcontextsimple.c: Implement ISO 14755 input method,
9468         hold down Shift-Control and type a hex number to get a Unicode 
9469         character corresponding to the hex number
9470         (gtk_im_context_simple_get_preedit_string): Fix cursor position
9471         (return bytes not chars)
9472
9473 2000-12-05  Elliot Lee  <sopwith@redhat.com>
9474
9475         * gdk/gdkcolor.h: Make GdkColor specify element sizes
9476         to avoid waste on 64-bit platforms.
9477
9478 Tue Dec  5 15:49:31 2000  Owen Taylor  <otaylor@redhat.com>
9479
9480         * INSTALL: Fix link to PNG home, remove reference
9481         to fribidi.
9482
9483         * gdk/x11/gdkevents-x11.c: Fix up for new GMain API.
9484         
9485         * gdk/win32/gdkevents-win32.c: Fix up for new GMain API. (Not
9486         tested.)
9487
9488         * gtk/gtkcheckmenuitem.c: Permanently turn on
9489         always_show_toggle.
9490
9491         * gtk/gtkclist.c (gtk_clist_get_pixtext): Allow mask to 
9492         be NULL. (Vladimir Klebanov, #26545)
9493
9494         * gtk/gtkspinbutton.c (gtk_spin_button_insert_text): Fix 
9495         some signed/unsigned comparison problems. (#6510,
9496         David Kaelbling)
9497
9498         * gtk/gtkwidget.[ch] (gtk_widget_is_ancestor): Change
9499         return type to boolean (Oskar Liljeblad, #18648)
9500
9501 2000-12-05  Alexander Larsson  <alexl@redhat.com>
9502
9503         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_display_new):
9504         Remove bogus colormap setting.
9505
9506 2000-12-05  Alexander Larsson  <alexl@redhat.com>
9507
9508         * gdk/linux-fb/gdkcolor-fb.c:
9509         More complete colormap handling. Now GdkRGB work in 8 bpp modes.
9510
9511         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_image):
9512         Must set colormap.
9513         
9514 Tue Dec  5 13:17:53 GMT 2000  Tony Gale <gale@gtk.org>
9515
9516         * docs/tutorial/gtk-tut.sgml: DND updates
9517
9518 2000-12-05  Alexander Larsson  <alla@lysator.liu.se>
9519
9520         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
9521         Remove old debug g_warning().
9522         (gdk_fb_draw_drawable): The src argument can be either a wrapper
9523         or an implementation, just pass the implementation to draw_drawable_2.
9524         
9525         * gdk/linux-fb/gdkprivate-fb.h:
9526         Added GDK_IS_DRAWABLE_IMPL_FBDATA()
9527
9528         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
9529         clear and invalidate area when window is destroyed.
9530         (send_map_events): Remove old commented out code.
9531
9532 2000-12-05  Alexander Larsson  <alexl@redhat.com>
9533
9534         * gdk/linux-fb/gdkpango-fb.c:
9535         Use italic instead of oblique in font aliases.
9536         
9537         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic,
9538         _gdk_fb_gc_calc_state): Support GDK_XOR, add g_warning for
9539         other unsupported functions.
9540
9541 2000-12-04  Havoc Pennington  <hp@redhat.com>
9542
9543         * gtk/gtkpaned.c (gtk_paned_expose): fix this to be sane
9544
9545         * gtk/gtkvpaned.c (gtk_vpaned_expose): Add an expose handler
9546
9547         * gtk/gtkhpaned.c (gtk_hpaned_expose): Add an expose handler
9548
9549         * gtk/gtknotebook.c (gtk_notebook_draw_tab): put in a temporary 
9550         hack to avoid infinite loops (synthetic expose event) - 
9551         Owen has more appropriate fixes in a branch he'll check in later.
9552
9553         * gtk/gtktextiter.c (gtk_text_iter_ends_line): handle paragraph
9554         separator, CR, and CRLF as line ends
9555
9556         * gtk/gtktextbtree.c (gtk_text_btree_insert): on insertion, break
9557         into lines using pango_find_paragraph_boundary(); other bits of
9558         the widget are still going to be broken if the boundary isn't '\n'
9559         though
9560
9561 2000-12-04  Alexander Larsson  <alexl@redhat.com>
9562
9563         * gdk/linux-fb/gdkfont-fb.c (gdk_text_width): Divide size by 2, not
9564         multiply.
9565
9566         * gdk/linux-fb/gdkpango-fb.c:
9567         Copied some 26.6 scaling macros from pango to clean up the rounding.
9568         (pango_fb_font_get_glyph_info): Correct sign on x value.
9569
9570         * gdk/linux-fb/gdkprivate-fb.h:
9571         Removed unreferenced external functions.
9572
9573         * modules/linux-fb/Makefile.am: Use ` instead of '.
9574
9575         * modules/linux-fb/basic.c:
9576         Remove dead code. In particular the dummy lang engine which broke all
9577         pango layouts in GtkFB. Don't include tables-big.i anymore.
9578
9579         * modules/linux-fb/tables-big.i:
9580         Upgrade to latest version from pango. Left for reference, basic_ranges
9581         moved to basic.c.
9582         
9583 2000-12-04  Havoc Pennington  <hp@redhat.com>
9584
9585         Fix bugs Alex found:
9586         
9587         * gtk/gtktooltips.c (gtk_tooltips_force_window): nuke connection
9588         to "draw"
9589
9590         * gtk/gtkdnd.c (gtk_drag_highlight): nuke connection to "draw"
9591
9592         * gtk/gtkcolorsel.c (palette_new): nuke connection to "draw"
9593
9594         * gtk/gtklistitem.c (gtk_list_item_expose): Put the old _draw() 
9595         implementation in here, apparently the expose() implementation was
9596         dead code.
9597
9598 2000-12-04  Alexander Larsson  <alexl@redhat.com>
9599
9600         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
9601         Return positive descent.
9602
9603 2000-12-02  Havoc Pennington  <hp@pobox.com>
9604
9605         * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove "draw" virtual
9606         method and signal
9607         
9608         * gtk/gtkwidget.c (gtk_widget_draw): Now just queues a draw then
9609         calls gdk_window_process_updates() to push the exposes through
9610         (gtk_widget_class_init): No more draw signal, no
9611         gtk_widget_real_draw()  
9612         
9613         * gtk/gtkbin.c (gtk_bin_draw): remove
9614
9615         * gtk/gtkbox.c (gtk_box_draw): remove
9616
9617         * gtk/gtkbutton.c (gtk_button_draw): remove
9618
9619         * gtk/gtkcalendar.c (gtk_calendar_draw): remove
9620
9621         * gtk/gtkcheckbutton.c (gtk_check_button_draw): remove
9622
9623         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_draw): remove
9624
9625         * gtk/gtkclist.c (gtk_clist_draw): remove
9626
9627         * gtk/gtkentry.c (gtk_entry_draw): remove
9628
9629         * gtk/gtkeventbox.c (gtk_event_box_draw): remove
9630
9631         * gtk/gtkfixed.c (gtk_fixed_draw): remove
9632
9633         * gtk/gtkframe.c (gtk_frame_draw): remove
9634
9635         * gtk/gtkhandlebox.c (gtk_handle_box_draw): remove
9636
9637         * gtk/gtkhpaned.c (gtk_hpaned_draw): remove
9638
9639         * gtk/gtklayout.c (gtk_layout_draw): remove
9640
9641         * gtk/gtklist.c (gtk_list_draw): remove
9642
9643         * gtk/gtklistitem.c (gtk_list_item_draw): remove
9644
9645         * gtk/gtkmenu.c (gtk_menu_draw): remove
9646
9647         * gtk/gtkmenubar.c (gtk_menu_bar_draw): remove
9648
9649         * gtk/gtkmenuitem.c (gtk_menu_item_draw): remove
9650
9651         * gtk/gtknotebook.c (gtk_notebook_draw): remove
9652
9653         * gtk/gtkoptionmenu.c (gtk_option_menu_draw): remove
9654
9655         * gtk/gtkpacker.c (gtk_packer_draw): remove
9656
9657         * gtk/gtkrange.c (gtk_range_draw): remove
9658
9659         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_draw): remove
9660
9661         * gtk/gtkspinbutton.c (gtk_spin_button_draw): remove
9662
9663         * gtk/gtktable.c (gtk_table_draw): remove
9664
9665         * gtk/gtktearoffmenuitem.c (gtk_tearoff_menu_item_draw): remove
9666
9667         * gtk/gtktext.c (gtk_text_draw): remove
9668
9669         * gtk/gtktextview.c (gtk_text_view_draw): remove
9670
9671         * gtk/gtktogglebutton.c (gtk_toggle_button_draw): remove
9672
9673         * gtk/gtktoolbar.c (gtk_toolbar_draw): remove
9674
9675         * gtk/gtktree.c (gtk_tree_draw): remove
9676
9677         * gtk/gtktreeitem.c (gtk_tree_item_draw): remove
9678
9679         * gtk/gtktreeview.c (gtk_tree_view_draw): remove
9680
9681         * gtk/gtkviewport.c (gtk_viewport_draw): remove
9682
9683         * gtk/gtkvpaned.c (gtk_vpaned_draw): remove
9684
9685         * gtk/gtkvscale.c (gtk_vscale_draw): remove
9686
9687         * gtk/gtkwindow.c (gtk_window_draw): remove
9688
9689 2000-20-01  Anders Carlsson  <andersca@gnu.org>
9690
9691         * gtk/gtktogglebutton.c (gtk_toggle_button_draw): Fix bug when
9692         a GtkToggleButton is both insensitive and active, it was being
9693         drawn by the GtkButton draw handler which doesn't check the
9694         state. Now it's calling gtk_toggle_button_paint instead.
9695         
9696 2000-12-01  Havoc Pennington  <hp@redhat.com>
9697
9698         * gtk/gtktextdisplay.c (gtk_text_layout_draw): don't create
9699         dangling pointers to the appearance attributes from the 
9700         line display
9701
9702         * gdk/gdkdraw.c (gdk_drawable_get_image): allow negative
9703         width/height to mean "full width/height of drawable"
9704
9705         * gtk/gtktextview.h, gtk/gtktextview.c: Implement double/triple
9706         click to select word/line
9707         
9708         * gtk/gtktextiter.c (test_log_attrs): include paragraph delimiters 
9709         when getting log attrs. Get a slice, so that pixmaps and stuff
9710         are properly handled.
9711
9712         * gtk/gtktextbuffer.c (paste): Fix pasting to work properly if you
9713         paste into the selection (replaces selection now, previously
9714         crashed or added to selection). Reveals longstanding btree bug -
9715         select multiple lines, middle-click on the selection, boom. This
9716         isn't related to my changes though.
9717
9718         * gtk/gtkentry.c (gtk_entry_move_forward_word): Update to reflect
9719         PangoLogAttrs changes
9720         (gtk_entry_move_backward_word): ditto
9721
9722         * gtk/gtktextlayout.h, gtk/gtktextlayout.c: Make the iter motion
9723         functions return bool whether the iter moved onto a
9724         dereferenceable position.
9725  
9726         * gtk/gtktextview.h, gtk/gtktextview.c: Add a bunch of public
9727         functions for motion in terms of display lines.
9728
9729         * gtk/gtktextmark.c (gtk_text_mark_get_buffer): Add function to
9730         get the buffer a mark is inside
9731         
9732 2000-12-01  Alexander Larsson  <alexl@redhat.com>
9733
9734         * gdk/linux-fb/Makefile.am:
9735         * modules/linux-fb/Makefile.am:
9736         Freetype 2 final uses freetype-config
9737
9738         * gdk/linux-fb/gdkpango-fb.c:
9739         Upgrade to use Freetype 2 final.
9740         More flexible support for font aliases, this also fixes a bug with
9741         GtkFontSelector, as the aliases must be visible in the font/family list,
9742         or GtkFontSelector reads uninitialized memory.
9743
9744 2000-11-30 Hidetoshi Tajima  <tajima@eng.sun.com>
9745
9746         * modules/input/gtkimcontextxim.c (setup_im): Add NULL argument to
9747         XGetIMValues to properly terminate variable argument list, and do
9748         NULL return check for ic_values and xim_styles.
9749
9750         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset):
9751         Restore preedit state after XmbResetIC().
9752         
9753         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_get_ic):
9754         XvaCreateNestedList() should take XvaNestedList, but not
9755         XvaNestedList*.
9756
9757         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset,
9758         preedit_draw_callback, preedit_caret_callback): Match
9759         "preedit-changed" signal name to "preedit_changed" to be
9760         consistent to the spec.
9761
9762         * gtk/gtkimcontextsimple.c (check_table):
9763         Match "preedit-changed" to "preedit_changed" to be consistent
9764         to the spec.
9765
9766 Thu Nov 30 23:03:04 2000  Owen Taylor  <otaylor@redhat.com>
9767
9768         * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Properly handle
9769         gc->clip_region == NULL>
9770
9771 2000-11-30  Tor Lillqvist  <tml@iki.fi>
9772
9773         Changes by Hans Breuer:
9774         
9775         * gdk/win32/gdkwindow-win32.c (gdk_window_set_geometry_hints):
9776         Dont't use negative width and height as max_hints. This fixes
9777         Owen's recent testgtk changes for win32.
9778
9779         * gdk/win32/gdkgc-win32.c (gdk_win32_hdc_get,
9780         gdk_win32_hdc_release): These are exported and may be called with
9781         other drawable types than our GdkDrawableImplWin32 (?).
9782
9783         * gdk/gdkwindow.c: Backing store appears to work on Windows now,
9784         so always #define USE_BACKING_STORE.
9785
9786         * gtk/gtktextdisplay.c (render_layout_line): Use g_print instead
9787         of printf for debugging output.
9788
9789         * gtk/gtktextlayout.c (allocate_child_widgets): Ditto.
9790         
9791         * gtk/gtktextview.c (gtk_text_view_child_allocated): Ditto.
9792
9793         * gtk/gtkmain.h (GTKMAIN_C_VAR): Win32 fix for dllimport
9794         declaration.
9795
9796         * gtk/gtktexttypes.h: Ditto.
9797
9798         * gtk/gtklabel.c (gtk_label_set_markup_with_accel): Return a value
9799         (GDK_VoidSymbol) also if in case of arg check failure.
9800
9801         * gtk/gtkimcontextsimple.c
9802         (gtk_im_context_simple_get_preedit_string): Don't assign cursor
9803         position to the pointer, but to the variable it points to.
9804
9805         * gtk/makefile.msc.in (DEFINES): Define GTK_VERSION.
9806
9807         * gtk/gtk.def: Updates.
9808
9809 2000-11-29  Elliot Lee  <sopwith@redhat.com>
9810
9811         * gtk/gtkmodelsimple.c: Inherits from GTK_TYPE_OBJECT, not
9812         GTK_TYPE_TREE_MODEL.
9813
9814 2000-11-29  Alexander Larsson  <alexl@redhat.com>
9815
9816         * gdk/linux-fb/gdkfont-fb.c (gdk_font_from_description):
9817         Set the size of the font from the description.
9818         (gdk_text_width): Gross hack that calculates the width
9819         of text by text_length * size/2. This is necessary because
9820         GtkLabel does some ugly gtk_string_width call to calculate
9821         an good size.
9822         (linux-fb/gdkprivate-fb.h): Removed unused field FT_Face.
9823
9824 Wed Nov 29 13:39:19 GMT 2000  Tony Gale <gale@gtk.org>
9825
9826         * docs/tutorial/gtk-tut.sgml: DND updates
9827
9828 2000-11-29  Alexander Larsson  <alexl@redhat.com>
9829
9830         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_clear_area):
9831         If you pass width or height == 0 to gdk_window_clear_area they
9832         should be calculated from the window size.
9833
9834 2000-11-29  Alexander Larsson  <alexl@redhat.com>
9835
9836         * gdk/linux-fb/gdkinput-ps2.c (move_pointer): If there is
9837         a grab, but no grab-cursor, use the cursor from the grabbed
9838         window. (gdk_fb_window_send_crossing_events): Send normal
9839         enter/leave notifications if grab and owner_events == TRUE.
9840
9841 2000-11-29  Alexander Larsson  <alexl@redhat.com>
9842
9843         * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
9844         Do implicit button grabs, even if the window doesn't
9845         want the event.
9846         (gdk_fb_window_send_crossing_events): If there is a
9847         grab, only the grabbed window gets normal enter/leave
9848         notifications. On ungrab go from grabbed window to current.
9849         Don't send any notification to b when propagating from c -> b.
9850         If setting a grab on window, don't set prev_window.
9851         (handle_mouse_input): Send enter/leave events to the window the
9852         mouse is over, not the grabbed one.
9853         
9854 2000-11-28  Elliot Lee  <sopwith@redhat.com>
9855
9856         * gdk/gdkregion-generic.c: Zap warning.
9857         * modules/input/Makefile.am: Only build im-xim if USE_X11 is enabled
9858         * gtk/gtkrc.c: s/strcpy/memcpy/ to save a few nanoseconds.
9859
9860 2000-11-28  Alexander Larsson  <alla@lysator.liu.se>
9861
9862         * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
9863         The cursor should be hidden if it is part of either the
9864         source or destination region. Not only if it is in both.
9865         (gdk_window_set_transient_for): Silence warnings.
9866
9867 2000-11-28  Alexander Larsson  <alexl@redhat.com>
9868
9869         * gdk/linux-fb/mifillarc.c (miFillArcSliceSetup):
9870         The default mode in X is Pie Arcs, therefore that is
9871         what Gtk+ uses.
9872
9873 2000-11-28  Alexander Larsson  <alexl@redhat.com>
9874
9875         * gdk/linux-fb/gdkinput-ps2.c:
9876         Implement correct EnterNotify/LeaveNotify:
9877         (gdk_fb_window_send_crossing_events): New function that sends
9878         all GdkCrossingEvents from the last mouse-window to the specified
9879         destination.
9880         (gdk_fb_window_visibility_crossing): Removed function.
9881         (handle_mouse_input): Use gdk_fb_window_send_crossing_events()
9882         (send_button_event, gdk_fb_cursor_reset): Use gdk_window_at_pointer
9883         instead of gdk_window_get_pointer() for better readability.
9884
9885         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab,
9886         gdk_fb_pointer_ungrab): Use gdk_fb_window_send_crossing_events.
9887
9888         * gdk/linux-fb/gdkprivate-fb.h:
9889         removed gdk_fb_window_visibility_crossing, added
9890         gdk_fb_window_send_crossing_events and gdk_fb_find_common_ancestor.
9891
9892         gdk/linux-fb/gdkwindow-fb.c (gdk_fb_find_common_ancestor):
9893         New function that finds the least common ancestor of two windows.
9894         (gdk_window_show, gdk_window_hide):
9895         Use gdk_fb_window_send_crossing_events.
9896         (gdk_fb_window_move_resize): Send configure events to toplevel
9897         windows. Use gdk_fb_window_send_crossing_events.
9898
9899 2000-11-27  Havoc Pennington  <hp@redhat.com>
9900
9901         * gtk/gtkprivate.h (enum): Remove a trailing comma
9902
9903 2000-11-27  Federico Mena Quintero  <federico@helixcode.com>
9904
9905         * gtk/gtkspinbutton.c (gtk_spin_button_set_adjustment): Connect to
9906         the "changed" callback of the adjustment.  We need to redraw the
9907         spin button's arrows when the adjustment's range changes.
9908         (adjustment_changed_cb): Draw the arrows.
9909         (gtk_spin_button_value_changed): Draw the arrows.
9910
9911 2000-11-23  Alexander Larsson  <alexl@redhat.com>
9912
9913         * gdk/linux-fb/gdkselection-fb.c:
9914         Initial selection implementation.
9915
9916         * gtk/gtkselection.c:
9917         if GDK_WINDOWING_FB defined, include linux-fb/gdkfb.h and look up
9918         requestor in gtk_selection_request.
9919         
9920         * gdk/linux-fb/gdkfb.h, gdk/linux-fb/gdkglobals-fb.c:
9921         Added gdk_selection_property atom.
9922
9923         * gdk/linux-fb/gdkprivate-fb.h:
9924         Export _gdk_selection_window_destroyed.
9925         Removed mask_off_x/y from GdkCursorPrivateFB.
9926         Removed hbearing, added top, left to PangoFBGlyphInfo.
9927
9928         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
9929         Call _gdk_selection_window_destroyed
9930         (_gdk_windowing_window_init): Don't call gdk_cursor_new() before
9931         the root window has been created.
9932         (static_dx_hack, static_dy_hack, compare_draw_rects,
9933         gdk_fb_window_move_resize): Remove unnecessary sort of rectangles
9934         in region. They are already sorted. Instead just traverse them in
9935         reverse if draw_direction < 0.
9936         
9937         * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
9938         Double-clicks must be sent after the normal button_press.
9939         (gdk_fb_cursor_unhide): Remove usage of mask_off_x/y. Clean up.
9940         
9941         * gdk/linux-fb/gdkgeometry-fb.c (gdk_window_scroll):
9942         Pass _gdk_fb_screen_gc instead of NULL.
9943
9944         * gdk/linux-fb/gdkmain-fb.c (_gdk_windowing_init_check):
9945         Initialize gdk_selection_property.
9946         (gdk_event_make): Remove unused code.
9947
9948         * gdk/linux-fb/gdkcursor-fb.c:
9949         Make the pixmap for the cursor the same size as the mask. Also remove
9950         the mask_off_x/y fields in GdkCursorPrivateFB and combine
9951         _gdk_cursor_new_from_pixmap() and gdk_cursor_new_from_pixmap()
9952         Now the whole cursor is visible.
9953
9954         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
9955         Fix bug where xdest+height instead of ydest+height was used
9956         to calculate if the source and dest overlapped. This fixes the
9957         redraw bug when the main window in testgtk was scrolled when
9958         partially covered by a tall window.
9959         Copy rectangles in region in order depending on draw_direction.
9960         Also moved the draw_direction flipping of start_y and end_y into
9961         the gc functions, as this might not be what all of them want.
9962         (gdk_fb_draw_lines): Support dashed lines.
9963         (gdk_fb_draw_glyphs): Clean up glyph placement. Also fix positioning
9964         so that the text is positioned correctly (was 1 pixel high).
9965
9966         gdk/linux-fb/gdkgc-fb.c:
9967         Initialize cap_style to GTK_CAP_BUTT. This fixes a problem where
9968         all lines were drawn a pixel to short. Also checked the default of
9969         the rest of the values, and they're the same as X now.
9970
9971         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_glyph_info):
9972         Clean up pixel positioning of the glyphs. Just use bgy->top and
9973         bgy->left. Also used PANGO_PIXEL where appropriate and added 0.5
9974         to all divisions to get correct rounding behaviour.
9975
9976         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_draw_drawable_generic,
9977         gdk_fb_draw_drawable_memmove, gdk_fb_draw_drawable_aa_24):
9978         Moved start_y/end_y flip into draw_drawable implementations.
9979         Flip also x rendering when draw_direction < 0.
9980         Remove unneccesary multiply with draw_direction.
9981
9982 Wed Nov 22 14:11:19 GMT 2000  Tony Gale <gale@gtk.org>
9983
9984         * docs/tutorial/gtk-tut.sgml:
9985           - get rid of gtk_toggle_button_toggled FUD
9986           - start DND section - needs work - based on:
9987                 http://wolfpack.twu.net/docs/gtkdnd/
9988
9989 2000-11-22  Alexander Larsson  <alexl@redhat.com>
9990
9991         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
9992         Correct calculation of font metrics. Now GtkEntrys have sane
9993         size.
9994
9995 2000-11-22  Alexander Larsson  <alexl@redhat.com>
9996
9997         * gdk/gdktypes.h:
9998         Add new type GdkSpan
9999         
10000         * docs/reference/gdk/gdk-sections.txt,
10001         docs/reference/gdk/tmpl/regions.sgml, gdk/gdkregion-generic.c,
10002         gdk/gdkregion.h:
10003         Implement and document gdk_region_spans_intersect_foreach.
10004
10005         * gdk/linux-fb/Makefile.am, gdk/linux-fb/gdkrender-fb.c:
10006         Add new file gdkrender-fb.c which contains all core
10007         rendering code.
10008         Add gdk_fb_fill_rectangle_generic (old rectangle code) and
10009         gdk_fb_fill_rectangle_simple_16, gdk_fb_fill_rectangle_simple_32
10010         (optimized rectangle fillers).
10011
10012         * gdk/linux-fb/gdkdrawable-fb2.c:
10013         Move all rendering code to gdkrender-fb.c.
10014         Change from using GdkRectangles and GdkSegments for spans to GdkSpan.
10015         Use the new span intersection functions in gdk_fb_fill_spans.
10016         gdk_fb_draw_rectangle() clips filled rectangles and calls
10017         gc->fill_rectangle with the result.
10018         gdk_fb_fill_spans() gets extra argument "sorted".
10019
10020         * gdk/linux-fb/gdkevents-fb.c:
10021         Remove unused includes and defines.
10022         New function gdk_fb_get_time() to get correct time for events.
10023
10024         * gdk/linux-fb/gdkinput-ps2.c:
10025         Use gdk method of generating multiple-clicks (gdk_event_button_generate)
10026         Make sure to set the time of all events.
10027
10028         * gdk/linux-fb/gdkmain-fb.c:
10029         Use gdk_fb_get_time ().
10030
10031         * gdk/linux-fb/gdkprivate-fb.h:
10032         New virtual GC calls: fill_span & fill_rectangle.
10033         Export gdk_fb_get_time().
10034         gdk_fb_fill_spans() gets extra argument "sorted".
10035
10036         * gdk/linux-fb/mi*.c:
10037         Use GdkSpan instead of GdkRectangle.
10038         Pass correct sorted to gdk_fb_fill_spans. (sorted value taken
10039         from XFree 4 source)
10040         
10041 2000-11-22    <jrb@redhat.com>
10042
10043         * gtk/gtktreeview.c (gtk_tree_view_calc_size): It's amazing what
10044         reversing the order in an if statement will do.  Doing so managed
10045         to make the treemodelsort half work.  Other half will follow after
10046         I get the insert function fully fixed.
10047
10048 2000-11-21  Elliot Lee  <sopwith@redhat.com>
10049         * gtk/gtkmenushell.h: GdkEventButton->button can occupy significantly
10050         more than 2 bits. Besides, I need to implement an evil hack. :)
10051
10052 Tue Nov 21 14:17:51 GMT 2000  Tony Gale <gale@gtk.org>
10053
10054         * docs/tutorial/gtk-tut.sgml: minor corrections
10055
10056 2000-11-20  Jonathan Blandford <jrb@redhat.com>
10057         * gtk/gtktreemodelsort.h: Add convertion functions to let you
10058           convert to and from relative path's and iters.
10059
10060         * gtk/treestoretest.c: move to having a sorted/unsorted view.  Start
10061           testing sorting functions a bit better.  Currently broken -- will
10062           fix in morning.
10063
10064 2000-11-20  Havoc Pennington  <hp@redhat.com>
10065
10066         * gtk/gtkwidget.c: Documented a bunch of functions in here
10067         (gtk_widget_realize): Warn if you try to realize
10068         a widget with no parent that isn't a toplevel
10069         (gtk_widget_intersect): return a gboolean
10070
10071 2000-11-20  Havoc Pennington  <hp@redhat.com>
10072
10073         * gtk/gtktextview.c, gtk/gtktextlayout.c, gtk/gtktextchild.c,
10074         gtk/testtext.c: Semi-finish widget embedding. Need guffaw
10075         scrolling to be implemented in GDK to finish. Also, right now
10076         we just size_allocate all children on every layout change,
10077         which is pretty lame. Test commented out of testtext.c, 
10078         until it works better.
10079
10080 2000-11-20  Alexander Larsson  <alla@lysator.liu.se>
10081
10082         * gdk/linux-fb/gdkdrawable-fb2.c:
10083         Removed unused arguments from gdk_fb_drawable_get_pixel().
10084
10085         * gdk/linux-fb/gdkinput-ps2.c (handle_input_ps2):
10086         Renamed fidur specific mouse packet data in MouseDevice to
10087         generic. Used it in ps2 mouse handling code to avoid blocking
10088         reads.
10089
10090 Sat Nov 18 18:00:17 2000  Jonathan Blandford  <jrb@redhat.com>
10091
10092         * demos/gtk-demo/main.c: Changed to have the list become
10093         non-italic when the demo window is destroyed through an external
10094         event (like a close button).  Doing so found three bugs in the
10095         widget.
10096
10097         * demos/gtk-demo/*.c (do_*): Changed to return the toplevel window.
10098
10099         * gtk/gtkliststore.c (gtk_list_store_set_cell): emit "change" when
10100         we actually set the cell.
10101
10102         * gtk/gtktreestore.c (gtk_tree_store_set_cell): ditto
10103
10104         * gtk/gtktreeselection.c (gtk_tree_selection_real_select_node):
10105         free a leaked path.  Thanks memprof.
10106
10107 Sat Nov 18 11:58:17 2000  Owen Taylor  <otaylor@redhat.com>
10108
10109         * gdk/gdkrgb.c (gdk_rgb_allocate_images): Fix 
10110         off-by-one error when destroying allocated segments
10111         on failure. (Elliot)
10112
10113 Sat Nov 18 11:45:09 2000  Owen Taylor  <otaylor@redhat.com>
10114
10115         * gtk/gtkcalendar.c: Patch from ChiDeok Hwang to fix
10116         memleaks found by Evan Martin.
10117
10118 Fri Nov 17 20:14:20 2000  Owen Taylor  <otaylor@redhat.com>
10119
10120         * Released 1.3.2
10121         
10122         * NEWS: Updates for 1.3.2
10123
10124 2000-11-17  Tor Lillqvist  <tml@iki.fi>
10125
10126         * gdk/gdkevents.h: Add comment that GdkXEvent isn't only for XEvent,
10127         but in general for window system specific events.
10128
10129         * gtk/gtk.def
10130         * gtk/makefile.mingw.in
10131         * gtk/makefile.msc.in: Update.
10132         
10133         * gtk/gtktexttypes.h: Mark variables for export/import from DLL.
10134
10135 Thu Nov 16 16:11:39 2000  Owen Taylor  <otaylor@redhat.com>
10136
10137         * gtk/Makefile.am (EXTRA_DIST): Do not, in any circumstances,
10138         distribute gtk.immodules.
10139
10140         * gtk/Makefile.am (install-data-local): Don't install the
10141         gtk.immodules file created for the uninstalled modules;
10142         instead run gtk-query-immodules after install
10143
10144 Wed Nov 15 21:51:31 2000  Owen Taylor  <otaylor@redhat.com>
10145
10146         * modules/input/Makefile.am (im_xim_la_LDFLAGS): Point
10147         -rpath to the right install location.
10148
10149         * modules/input/Makefile.am (im_inuktitut_la_LDFLAGS): Remove
10150         -export-dynamic.
10151
10152         * gtk/gtkthemes.c (gtk_theme_engine_get): Set engine->name
10153         properly.
10154
10155 2000-11-15  Havoc Pennington  <hp@pobox.com>
10156
10157         * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): Apply
10158         patch from Mikael Hermansson to temporarily stop blinking while
10159         the user is using the keyboard to type or navigate. 
10160
10161         Also, when blinking, stay on for longer than we stay off. Also,
10162         return from start_cursor_blink if !cursor_visible, to save
10163         checking that flag all over the place before we call
10164         start_cursor_blink.
10165
10166 Thu Nov 16 01:25:51 2000  Robert Brady  <robert@suse.co.uk>
10167
10168         * gtk/gtkrc.*: Remove the locale-specific gtkrc's, as they
10169         only contain a "fontset" line, which is now ignored.
10170
10171         * gtk/gtkentry.c (gtk_entry_button_release): Make 
10172         double-click-to-select-word work.
10173         
10174 Wed Nov 15 20:16:54 2000  Owen Taylor  <otaylor@redhat.com>
10175
10176         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): 
10177         Don't move back one char when we are actually at the end of the 
10178         paragraph.
10179
10180 2000-11-15  Robert Brady  <robert@suse.co.uk>
10181
10182         * modules/input/iminuktitut.c (inuktitut_compose_seqs): 
10183         'o' < 'p'.
10184         
10185         * gtk/gtkmain.c: s/CODSET/CODESET/, include <libintl.h> for
10186         bind_textdomain_codeset.
10187
10188         (gtk_init_check): Make the warning about translating default:LTR
10189         sterner.
10190         
10191 Wed Nov 15 18:39:40 2000  Owen Taylor  <otaylor@redhat.com>
10192
10193         * **/Makefile.am : remove unecessary rules for win32-specific
10194         config-substituted targets. If you want these rules, use
10195         --enable-maintainer-mode (called automatically by autogen.sh).
10196         Stops a lot of unneccessary make-time warnings.
10197
10198         * gtk/gtktext{layout,display}.c: Factor in total width as
10199         well as screen when figuring alignment for word-wrap as well as
10200         no wrap; this is necessary to handle lines that cannot be wrapped
10201         at all.
10202
10203 2000-11-15  Havoc Pennington  <hp@redhat.com>
10204
10205         * gtk/testtext.c: Implement essential color cycling feature
10206
10207 2000-11-15  Havoc Pennington  <hp@redhat.com>
10208
10209         * gtk/gtktextview.c (changed_handler): Invalidate the side windows
10210         when we invalidate the main window.
10211
10212         * gtk/testtext.c (create_view): Get rid of text_changed_callback,
10213         GtkTextView will now invalidate the side windows for us when text
10214         changes.
10215
10216 Wed Nov 15 16:02:20 2000  Owen Taylor  <otaylor@redhat.com>
10217
10218         * gtk/gtktextview.c (changed_handler): Call scroll_calc_now()
10219         unconditionally, since we may need to update the horizontal
10220         scrollbars even if the height didn't change.
10221
10222         * gtk/gtktextlayout.c (add_preedit_attrs): Always get
10223         the extra attrs, since some of them affect size.
10224
10225         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Factor in
10226         x_offset correctly.
10227
10228 2000-11-15  Havoc Pennington  <hp@redhat.com>
10229
10230         * gtk/gtktextlayout.c (set_para_values): If indent is negative,
10231         don't move the first line out into the margin, instead move the
10232         whole paragraph in order to make space for the first line within 
10233         the margin
10234
10235 2000-11-15  Havoc Pennington  <hp@redhat.com>
10236
10237         * gtk/gtktextview.c (changed_handler): offset redraw rect by
10238         xoffset in addition to yoffset, so horizontal scrolling doesn't
10239         break redraws
10240
10241 2000-11-15  Havoc Pennington  <hp@redhat.com>
10242
10243         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Remove extra pixel
10244         from the cursor
10245         (render_layout_line): fix reversed test that caused weird
10246         underlines to get drawn
10247
10248 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
10249
10250         * gdk/linux-fb/gdkprivate-fb.h:
10251         Fix debug macros.
10252         
10253 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
10254
10255         * gdk/linux-fb/gdkprivate-fb.h:
10256         Added virtual functions set_pixel, get_color,
10257         fill_span and draw_drawable to the GC.
10258         Added global _gdk_fb_screen_gc to use instead of
10259         NULL when drawing to the screen.
10260         Added _gdk_fb_gc_calc_state() prototype.
10261
10262         * gdk/linux-fb/gdkgc-fb.c:
10263         Call _gdk_fb_gc_calc_state() on any gc state change.
10264
10265         * gdk/linux-fb/gdkglobals-fb.c:
10266         Add _gdk_fb_screen_gc
10267                 
10268         * gdk/linux-fb/gdkdrawable-fb2.c:
10269         _gdk_fb_gc_calc_state() calculates best functions
10270         for the GC state and depth.
10271         Moved bpp specialized code to separate functions.
10272         Added optimized 24 bpp AA draw_drawable.
10273
10274         * gdk/linux-fb/gdkevents-fb.c:
10275         Silence gcc warning.
10276
10277         * gdk/linux-fb/gdkimage-fb.c:
10278         Use _gdk_fb_screen_gc
10279
10280         * gdk/linux-fb/gdkwindow-fb.c:
10281         Init and use _gdk_fb_screen_gc
10282
10283         * gdk/linux-fb/mitypes.h:
10284         Remove unused types.
10285
10286 2000-11-14  Havoc Pennington  <hp@pobox.com>
10287
10288         * gtk/gtktextlayout.c (add_cursor): use PANGO_PIXELS() to convert
10289         to pixels
10290
10291 2000-11-14  Havoc Pennington  <hp@pobox.com>
10292
10293         * gtk/testtextbuffer.c (fill_buffer): change "offset" to "rise"
10294
10295         * gtk/gtktexttypes.h (GTK_TEXT_UNKNOWN_CHAR): Add macro for
10296         unknown char, no real reason we were using a variable. 
10297         Remove gtk_text_unknown_char variable. Fix all the text widget
10298         files accordingly.
10299
10300         * gtk/gtktexttypes.c: Change "unknown character" to 0xFFFC, 
10301         since the Unicode spec seems to prefer that character for our
10302         purposes.
10303
10304 Wed Nov 15 02:18:01 2000  Robert Brady  <robert@suse.co.uk>
10305
10306         * gtk/gtkrc.c (gtk_rc_get_im_module_file): The return 
10307         value of g_getenv() isn't freeable, so g_strdup it.
10308
10309         * modules/input/inuktitut.c: Inuktitut input method.
10310
10311         * modules/input/Makefile.am: Build this.
10312         
10313 2000-11-14  Elliot Lee  <sopwith@redhat.com>
10314
10315         * gtk/Makefile.am: Install gtk.immodules, needed for operation
10316         of gtk programs.
10317
10318 Tue Nov 14 20:13:06 2000  Owen Taylor  <otaylor@redhat.com>
10319
10320         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): Fix
10321         reversed > that was causing Home to go to end of previous line.
10322
10323         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_filter_keypress): Ignore
10324         modified-keypresses (leave for bindings.)
10325
10326         * modules/input/Makefile.am: Remove useless -export-dynamic
10327         from module LDFLAGS.
10328
10329 2000-11-14  Havoc Pennington  <hp@redhat.com>
10330
10331         * gdk/gdkpango.c (gdk_draw_layout_line): Draw underlines one pixel
10332         higher.
10333
10334         * gtk/gtktextdisplay.c (render_layout_line): Take rise into
10335         account. Also, render rise, underline, background, etc. for
10336         pixbufs as well as text. Also, draw underlines one pixel higher.
10337
10338         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): Add a
10339         PangoAttribute for the rise, so it gets drawn properly. Also,
10340         add the GtkTextAppearance attribute for pixbuf/widget segments
10341         as well; we should go ahead and have rise, underline, background,
10342         stipple work for those
10343
10344         * gtk/gtktexttag.c: Rename "offset" property to "rise" to match
10345         Pango
10346
10347 2000-11-15  Tor Lillqvist  <tml@iki.fi>
10348
10349         * gtk/makefile.{mingw,msc}.in (gtk_OBJECTS): Add new objects.
10350
10351         * gtk/gtk.def: Update.
10352
10353         * gtk/gtkrc.c: Can't check for G_OS_WIN32 until glib.h has been
10354         included.
10355         (gtk_rc_get_im_module_file): Use run-time installation directory
10356         on Win32.
10357
10358         * gdk/win32/rc/gdk.rc: Remove.
10359         * gdk/win32/rc/gdk.rc.in: New file.
10360         * gdk/win32/rc/Makefile.am: New file
10361         * gdk/win32/Makefile.am: Corresponding changes.
10362
10363         * gtk/gtk.rc: Remove.
10364         * gtk/gtk-win32.rc.in: New file.
10365         * gtk/Makefile.am: Corresponding changes.
10366
10367         * configure.in: Corresponding changes.
10368
10369         * gtk/gtkcompat.h.win32: Remove, useless. A distribution already
10370         has a built gtkcompat.h. Developers using CVS code on Win32 can
10371         hand-edit it from gtkcompat.h.in.
10372
10373         * gtk/makefile.{mingw,msc}.in: Correspondingly don't try to make
10374         gtkcompat.h from gtkcompat.h.win32.
10375
10376 2000-11-14  Havoc Pennington  <hp@redhat.com>
10377
10378         * gtk/gtktextview.c (gtk_text_view_drag_motion): Fix drag-and-drop
10379         to default to GDK_ACTION_MOVE if the drag is within a single
10380         widget. Defaults to GDK_ACTION_COPY between widgets.
10381
10382 Mon Nov 13 14:43:48 2000  Owen Taylor  <otaylor@redhat.com>
10383
10384         * demos/Makefile.am (test-inline-pixbufs.h): Fix srcdir != builddir
10385
10386         * gtk/Makefile.am (INCLUDES): Add -I$(builddir)/gtk
10387
10388         * gtk/stock-icons/Makefile.am (gtkstockpixbufs.h): Handles
10389         srcdir != builddir
10390
10391         * modules/input/Makefile.am (INCLUDES): add $(top_srcdir)/gdk
10392
10393         * configure.in (GTK_VERSION): Up to 1.3.2
10394
10395         * modules/input/Makefile.am (im_xim_la_SOURCES): Add 
10396         gtkimcontextxim.h
10397
10398         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): Add
10399         missing doc comment.
10400
10401 2000-11-14  Alexander Larsson  <alexl@redhat.com>
10402
10403         * modules/linux-fb/basic.c:
10404         Use the glib iconv wrappers.
10405
10406 2000-11-13  Havoc Pennington  <hp@pobox.com>
10407
10408         * demos/gtk-demo/textview.c: spiff up the demo a bit; reveals
10409         still more bugs.
10410
10411         * gtk/gtktextview.c (gtk_text_view_value_changed): don't try to
10412         scroll the GdkWindows before realization.
10413
10414 2000-11-13  Havoc Pennington  <hp@redhat.com>
10415
10416         * gtk/gtktextdisplay.c (gtk_text_render_state_update): fix bug 
10417         where GC didn't always get updated properly
10418
10419         * demos/gtk-demo/textview.c (create_tags): Use subattributes
10420         of fonts instead of setting the entire font
10421
10422         * gtk/testtext.c (fill_example_buffer): Use "size" instead of
10423         setting entire font
10424
10425         * gtk/gtkdialog.c (gtk_dialog_add_button): Fix some warnings
10426
10427         * gtk/gtktexttag.h, gtk/gtktexttag.c: Explode font_desc into 
10428         a bunch of individually-settable font attributes. You can still 
10429         use the "font" and "font_desc" args, they just set all the font
10430         attributes at once.
10431
10432 2000-11-13 Elliot Lee <sopwith@redhat.com>
10433
10434         * gdk/gdk.h: Add a couple of missing G_GNUC_CONST's.
10435
10436 Mon Nov 13 14:29:32 2000  Jonathan Blandford  <jrb@redhat.com>
10437
10438         * gtk/gtktreemodel.c (gtk_tree_path_copy): confirm path != NULL
10439         * gtk/gtktreemodel.c (gtk_tree_path_free): ditto
10440
10441         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): make
10442         work better.
10443
10444 2000-11-13  Havoc Pennington  <hp@redhat.com>
10445
10446         * gtk/gtkimmodule.c (gtk_im_module_init): Free the filename of 
10447         the module file.
10448
10449         * gtk/gtktexttag.c (gtk_text_attributes_copy): fix memory leak of
10450         dest->language
10451
10452         * gtk/testtext.c: Test pixels above/below/inside paragraphs
10453         settings
10454
10455         * gtk/gtktextview.c: Implement object args and setters/getters for
10456         all the aspects of the GtkTextAttributes that are not set from
10457         GtkWidget attributes. This is spacing, justification, margins,
10458         etc.
10459
10460         (gtk_text_view_set_arg)
10461         (gtk_text_view_get_arg): implement get/set for editable, wrap mode
10462         args
10463         (gtk_text_view_class_init): Add args for justify, left_margin,
10464         right_margin, indent, and tabs
10465         
10466
10467         * gtk/gtktextlayout.c (set_para_values): fix to display indent
10468         attribute properly
10469
10470         * gtk/gtktexttag.c: Remove left_wrapped_line_margin attribute, 
10471         replace with indent attribute
10472
10473         * gtk/gtktextlayout.c (set_para_values): multiply indent by
10474         PANGO_SCALE
10475
10476         * gtk/gtktextdisplay.c (render_para): Use PangoLayoutIter,
10477         rearranging code to do that
10478         (gtk_text_layout_draw): Pass in the y for the whole LineDisplay,
10479         i.e. don't subtract the top_margin first, just to keep
10480         all margin-futzing in one place.
10481
10482         * gdk/gdkpango.c (gdk_draw_layout): Use PangoLayoutIter
10483
10484         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Remove
10485         special case of last line, Pango now handles this itself.
10486         (gtk_text_layout_get_iter_at_pixel): Fix incorrect clamp of the 
10487         Y coordinate
10488         (gtk_text_layout_move_iter_to_x): port to use PangoLayoutIter
10489         (find_display_line_above): wasn't moving the byte index as it
10490         iterated over lines, so always returned byte 0. Also, port to use
10491         PangoLayoutIter.
10492         (find_display_line_below): same problem as
10493         find_display_line_above. Also, port to use PangoLayoutIter.
10494
10495 2000-11-13  Alexander Larsson  <alexl@redhat.com>
10496
10497         * gdk/linux-fb/*.[ch]:
10498         Massive reindent to gtk+ standard. My hands hurt.
10499
10500         * gdk/linux-fb/gdkcolor-fb.c:
10501         Move GdkColorPrivateFB from inherited to windowing_data
10502
10503         * gdk/linux-fb/gdkcursor-fb.c:
10504         _gdk_cursor_new_from_pixmap made static
10505
10506         * gdk/linux-fb/gdkdnd-fb.c:
10507         GdkDragContextPrivate moved to windowing_data
10508
10509         * gdk/linux-fb/gdkdrawable-fb2.c:
10510         Removed endian.h, use glib endianness macros instead
10511         Some cleanups in the usage of GDK_DRAWABLE_FBDATA
10512         and GDK_DRAWABLE_IMPL_FBDATA
10513
10514         * gdk/linux-fb/gdkfont-fb.c:
10515         Add empty gdk_font_load(). Needed for linking of Gtk+.
10516
10517         * gdk/linux-fb/gdkimage-fb.c:
10518         Removed endian.h, use glib endianness macros instead
10519         Moved GdkImagePrivateFB to windowing_data
10520         gdk_image_new_bitmap didn't always allocate enough
10521         memory.
10522
10523         * gdk/linux-fb/gdkinput-ps2.c:
10524         Added semi-working support for MS serial mice.
10525
10526         * gdk/linux-fb/gdkprivate-fb.h:
10527         s/GdkWindowPrivate/GdkWindowObject/
10528         Removed GdkWindowPrivate typedef
10529         s/GDK_DRAWABLE_P/GDK_DRAWABLE_FBDATA/
10530         Removed GDK_DRAWABLE_P
10531         Move GdkColorPrivateFB from inherited to windowing_data
10532         Moved GdkImagePrivateFB to windowing_data
10533
10534         * gdk/linux-fb/gdkvisual-fb.c:
10535         Removed some unused debug code.
10536
10537         * gdk/linux-fb/gdkwindow-fb.c:
10538         Use stock cursors instead of including X headers.
10539         s/GdkWindowPrivate/GdkWindowObject/
10540
10541         * gdk/linux-fb/mitypes.h:
10542         Removed unused types.
10543
10544         * modules/linux-fb/basic.c:
10545         Use the pango fribidi wrappers.
10546
10547 2000-11-13  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
10548
10549         * gdk/linux-fb/gdkcolor-fb.c, gdk/nanox/gdkmain-nanox.c,
10550         gdk/win32/gdkcolor-win32.c, gdk/win32/gdkwin32id.c,
10551         gdk/x11/gdkcolor-x11.c, gdk/x11/gdkvisual-x11.c, gdk/x11/gdkxid.c,
10552         gtk/gtkgc.c, gtk/gtkrc.c, gtk/gtktext.c: GCompareFunc ->
10553         GEqualFunc where applicable.
10554         
10555         * gdk/linux-fb/gdkpango-fb.c: pango_font_description_compare ->
10556         pango_font_description_equal as changed in pango.
10557         
10558         * gdk/nanox/gdkmain-nanox.c: gdk_xid_compare -> gdk_xid_equal.
10559
10560         * gdk/win32/gdkcolor-win32.c: gdk_colormap_cmp -> gdk_colormap_equal.
10561
10562         * gdk/win32/gdkwin32id.c: gdk_handle_compare -> gdk_handle_equal.
10563
10564         * gdk/x11/gdkcolor-x11.c: gdk_colormap_cmp -> gdk_colormap_equal.
10565
10566         * gdk/x11/gdkvisual-x11.c: gdk_visual_compare -> gdk_visual_equal.
10567
10568         * gdk/x11/gdkxid.c: gdk_xid_compare -> gdk_xid_equal.
10569
10570         * gtk/gtkgc.c: gtk_gc_key_compare -> gtk_gc_key_equal and
10571         gtk_gc_drawable_compare -> gtk_gc_drawable_equal.
10572
10573         * gtk/gtkrc.c: gtk_rc_style_compare -> gtk_rc_style_equal and
10574         gtk_rc_styles_compare -> gtk_rc_styles_equal.
10575
10576 2000-11-12  Havoc Pennington  <hp@pobox.com>
10577
10578         * demos/gtk-demo/Makefile.am (democodedir): change demo install
10579         dir to datadir/gtk+-2.0/demo
10580
10581         * demos/gtk-demo/textview.c: Text widget demo; reveals all 
10582         sorts of text widget and Pango font bugs. Urgh.
10583
10584         * demos/gtk-demo/Makefile.am (demos): Add textview.c
10585
10586         * demos/gtk-demo/main.c (create_tree): Add instructions at top of
10587         tree that you should double click to see the demo. Fix 
10588         types of variables to reflect changed return values from 
10589         GtkTreeStore and GtkTreeViewColumn constructors.
10590
10591         * gtk/gtktextbuffer.c (gtk_text_buffer_new): ref/sink the
10592         newly-created buffer to prepare for GObject semantics
10593
10594         * gtk/testtext.c: don't leak the buffer with GObject semantics
10595
10596         * gtk/testtextbuffer.c: ditto
10597         
10598 2000-11-12  Havoc Pennington  <hp@pobox.com>
10599
10600         Rename this testgtk to gtk-demo to avoid confusion, and 
10601         install it so people can use it as a supplement to 
10602         the documentation.
10603         
10604         * demos/gtk-demo: Moved from demos/testgtk
10605
10606         * demos/testgtk: Removed
10607
10608         * configure.in: make Makefile in gtk-demo
10609         
10610         * demos/gtk-demo/Makefile.am: Install sample source to 
10611         datadir/gtk-demo (maybe there's a better place?), and 
10612         rename the binary to gtk-demo
10613         
10614         * demos/gtk-demo/main.c (load_file): Load installed sample
10615         source if source isn't found in pwd.
10616
10617 2000-11-09  Havoc Pennington  <hp@pobox.com>
10618
10619         * gtk/gtkentry.c (gtk_entry_class_init): Add an "invisible_char" 
10620         argument to set the char displayed when visibility == FALSE
10621         (gtk_entry_create_layout): If !entry->visible, replace 
10622         all chars with the "invisible char"
10623
10624         * gtk/testgtk.c: Test the invisible_char deal
10625         
10626 Mon Nov 13 02:16:33 2000  Robert Brady  <robert@suse.co.uk>
10627
10628         * gtk/gtkstyle.c (gtk_style_init): Fall back to "fixed" if we
10629         can't get a native font in the right encoding.
10630
10631 Mon Nov 13 00:09:29 2000  Robert Brady  <robert@suse.co.uk>
10632
10633         * configure.in: Chinese .pos have been renamed to zh_CN and zh_TW
10634         respectively.
10635
10636 Sun Nov 12 19:11:42 2000  Owen Taylor  <otaylor@redhat.com>
10637
10638         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_next_line):
10639         Fix warning when moving between paragraphs.
10640
10641         * gtk/gtkentry.[ch]: Change move => move_cursor, 
10642         delete => delete_from_cursor, insert => insert_at_cursor
10643
10644 Sun Nov 12 22:52:51 2000  Robert Brady  <robert@suse.co.uk>
10645
10646         * modules/input/imviqr.c: A vietnamese VIQR-based input method.
10647
10648         * modules/input/imthai-broken.c: A Thai input method for use if
10649         Thai keys are really generating Latin1 keysyms.
10650
10651         * modules/input/Makefile.am: Build these.
10652
10653 Sun Nov 12 22:15:35 2000  Robert Brady  <robert@suse.co.uk>
10654
10655         * gtk/gtkfileselection.c, gdk/win32/gdkfont-win32.c: 
10656         g_filename_{to,from}_utf8 now takes an extra parameter.
10657
10658         * gtk/gtkcalendar.c (gtk_calendar_init): Convert output of
10659         strftime into UTF-8.
10660
10661         (column_from_x, gtk_calendar_paint_day_names): Support RTL
10662         calendars.
10663
10664         (gtk_calendar_paint_day_names): Draw day names in the right 
10665         place.
10666         
10667 Sun Nov 12 14:10:09 2000  Owen Taylor  <otaylor@redhat.com>
10668
10669         * gdk/x11/gdkselection-x11.c (gdk_utf8_to_compound_text): Fix
10670         problem with using result of g_get_charset() backwards -
10671         pointed out by Mikael Hermansson <mikeh@bahnhof.se>.
10672
10673         * gtk/gtkwindow.c (gtk_window_compute_hints): Support
10674         negative min_width/height and max_width/height to
10675         mean "requisition"; this allows setting a window
10676         to be user-resizable in only one direction easily.
10677
10678         * gtk/testgtk.c (create_main_window): Remove hard-coded
10679         usize - set a default size in the vertical direction.
10680
10681 Sun Nov 12 13:33:01 2000  Owen Taylor  <otaylor@redhat.com>
10682
10683         * gtk/gtkrange.c: Add some missing casts. Support 
10684         2 and 3 button clicks on the arrows to mean 
10685         "move by pages" and "jump to end". (Like gtkspinbutton)
10686
10687 2000-11-12 Hans Breuer <Hans@Breuer.Org>
10688
10689         * gdk/win32/makefile.msc : reflect build module changes
10690
10691         * gdk/win32/gdkcursor-win32.c : can't cast to impl type directly
10692         from GdkPixmap*, cast implementation member instead.
10693
10694         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_drawable) : The
10695         passed in drawable is of type GdkDrawableImplWin32, the GdkPixmap *src 
10696         maybe either GdkDrawable or GdkDrawableImpl. Corrected all casts, add
10697         more Gdi functions return value checking. 
10698         (gdk_win32_draw_image) : use IMAGE_PRIVATE_DATA to get on the
10699         GdkImagePrivateWin32 *.
10700
10701         * gdk/win32/gdkevents-win32.c : Disable the SetCapture call to make
10702         menus useable again. Add #pragma message to keep reminded on this issue.
10703         (gdk_event_translate) : don't generate GDK_EXPOSE events for InputOnly
10704         windows. This allows to enable backing store on Win32!
10705
10706         * gdk/win32/gdkimage-win32.c (_gdk_win32_get_image) : the passed
10707         in drawable is of impl type. Correct specific type checks appropriate.
10708  
10709         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_create_from_data) : check 
10710         GDK_WINDOW_DESTROYED before allocating new resources.
10711
10712         * gdk/win32/gdkselection-win32.c : Handle GDK_WINDOW_DESTROYED case
10713
10714         * gdk/win32/gdkwindow-win32.c : more Gdi return value checking,
10715         (gdk_window_foreign_new) initialize parent handle.
10716         (gdk_window_destroy_notify) add GDK_IS_WINDOW check
10717
10718         * gdk/win32/gdkgeometry-win32.c (_gdk_window_move_resize_child) :
10719         Let the GDI invalidate the window on MoveWindow call to fix scrolling
10720         problems (e.g. main buttons in testgtk). 
10721
10722 Sat Nov 11 23:07:30 2000  Owen Taylor  <otaylor@redhat.com>
10723
10724         * gtk/gtkentry.c (gtk_entry_key_press): Call 
10725         gtk_widget_activate for GDK_Return.
10726
10727         * gtk/gtkentry.c (gtk_entry_preedit_changed_cb): Fix handling
10728         of preedit cursor position.
10729
10730 Sun Nov  5 04:24:53 2000  Owen Taylor  <otaylor@redhat.com>
10731
10732         * gtk/gtkcellrenderertextpixbuf.c: Make parent_class
10733         static.
10734
10735 Tue Sep 19 10:54:22 2000  Owen Taylor  <otaylor@redhat.com>
10736
10737         * modules/input/{gtkimcontextxim.[ch],imxim.c}: Rip
10738         out support for multiple locales; that simple doesn't
10739         work reliably with current Xlib
10740
10741         * gtk/gtkimcontext*.[ch] gtk/gtkimmulticontext.[ch]
10742         gtk/gtktextlayout.[ch] gtk/gtktextview.c gtk/gtkentry.c: 
10743         Add support for positioning the cursor within the preedit string.
10744
10745 Mon Sep 18 23:56:32 2000  Owen Taylor  <otaylor@redhat.com>
10746
10747         * modules/input/{imxim.c,gtkimcontextxim.[ch]}: Start
10748         at XIM input method module.
10749
10750         * gtk/gtktextview.c: Check for bindings after passing
10751         events to im context filter.
10752
10753 Mon Sep 18 11:50:51 2000  Owen Taylor  <otaylor@redhat.com>
10754
10755         * gtk/gtktextlayout.c (add_preedit_attrs): Handle
10756         empty attribute lists properly.
10757
10758 Sun Sep 17 10:08:16 2000  Owen Taylor  <otaylor@redhat.com>
10759
10760         * gtk/queryimmodules.c (main): Return non-zero exit
10761         status if errors were encountered querying any
10762         modules.
10763
10764         * modules/input/Makefile.am (moduledir): remove
10765         leftover bin program target.
10766
10767         * docs/make-todo: Fix typo in error message.
10768
10769 Sat Sep 16 14:04:30 2000  Owen Taylor  <otaylor@redhat.com>
10770
10771         * configure.in: Add modules/input/Makefile
10772
10773 Sat Sep 16 14:01:52 2000  Owen Taylor  <otaylor@redhat.com>
10774
10775         * gtk/gtk.h: include gtkmodule.h gtkoldeditable.h,
10776         don't include gtkthemes.h.
10777
10778         * gtk/testgtk.c gtk/testtext.c: Set environment variables
10779         to point
10780
10781         * gtk/Makefile.am: Add new .c and .h files, build 
10782         gtk-query-immodules and use it to create a gtk.immodules
10783         file for use of test programs.
10784
10785         * gtk/gtkpreview.c: remove extra blank line.
10786
10787 Sat Sep 16 13:21:04 2000  Owen Taylor  <otaylor@redhat.com>
10788
10789         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_add_table): 
10790         Add the ability to add extra tables beyond the default
10791         one, and also the ability to have compose sequences 
10792         that are prefixes of other compose sequences. 
10793
10794         * gtk/gtkimcontextsimple.c: Export a preedit string which
10795         consists of possible candidates for keystrokes that have
10796         been entered but not yet committed.
10797
10798         * gtk/gtkimcontext.[ch] gtk/immulticontext.[ch]
10799         gtk/gtkimcontextsimple.[ch]: add gtk_im_context_reset()
10800
10801         * gtk/gtkmulticontext.[ch] (gtk_im_multicontext_append_menuitems): 
10802         Add a function to add input-method switching menu items
10803         to a menu.
10804
10805         * gtk/gtkimmulticontext.[ch]: Properly handly set_client_window
10806         when switching input methods.
10807
10808         * gtk/gtkimcontextsimple.[ch]: Change the format of
10809         the compose table to allow compose tables of different
10810         lengths / sequence.
10811
10812 Sat Sep 16 13:05:48 2000  Owen Taylor  <otaylor@redhat.com>
10813
10814         * gtk/gtkimmodule.[ch]: Support routines for loading
10815         GtkIMContext implementations dynamically at runtime.
10816
10817         * modules/input/imcyrillic-translit.c: A sample input
10818         method (based on GtkIMContextSimple with an extra table),
10819         which demonstrates preedit strings and the module
10820         system for input modules
10821
10822         * gtk/queryimmodules.c: Program to query the available
10823         input modules and write the results into a file.
10824          
10825         * gtk/gtkrc.[ch] (gtk_rc_get_im_module_file): Add
10826         extra config options "im_module_file" (cache file for
10827         input method modules), and "im_module_path" - path
10828         to look for modules when generating cache file.
10829
10830         This doesn't scale.
10831
10832 Sat Sep 16 13:09:06 2000  Owen Taylor  <otaylor@redhat.com>
10833
10834         * gtk/gtkthemes.[ch] gtk/gtkmodule.[ch]: Move most of the 
10835         generic code from gtkthemes into a new abstraction
10836         GtkModule which has the logic for implementing
10837         a loadable module which implements a number of 
10838         GObject types.
10839
10840 Sat Sep 16 13:07:13 2000  Owen Taylor  <otaylor@redhat.com>
10841
10842         * gtk/gtkeditable.[ch]: Convert GtkEditable from
10843         a class into an interface  
10844         
10845         * gtk/gtkoldeditable.[ch]: Move the old editable
10846         implementation into here, so legacy widgets can
10847         still rely on the implemenation. GtkOldEditable
10848         exports GtkEditable. Make selection handling
10849         code use new text conversion functions (and
10850         handle UTF-8 as a side-effect). Use GtkClipboard
10851         for CLIPBOARD.
10852
10853         * gtk/gtktext.[ch] gtk/gtkcombo.c gtk/gtkspinbutton.c:
10854         Adopt to match above changes.
10855
10856         * gtk/gtkentry.[ch]: Implement GtkEditable directly,
10857         avoid GtkOldEditable implementation. Restructure
10858         to reduce number of places that modify state directly.
10859         Move to GtkBindingSet. Display the preedit string.
10860         Queue recomputation of PangoLayout and scroll position
10861         to improve effiency of doing complex changes naively.
10862         Add a menu with cut/copy/paste and input method selection.
10863
10864 Thu Sep 14 22:11:05 2000  Owen Taylor  <otaylor@redhat.com>
10865
10866         * gtk/gtktextlayout.[ch]: Add gtk_text_layout_set_preedit_string()
10867         to set preedit string and attributes; display preedit string by
10868         inserting string and attributes at cursor when creating the
10869         GtkTextLineDisplay.
10870
10871         * gtk/gtktextlayout.c: Move all conversions between byte
10872         positions in PangoLayout and GtkTextIter into new functions
10873         line_display_iter_to_index/index_to_iter that properly
10874         handle the preedit string.
10875
10876         * gtk/gtktextmark.[ch]: Restore gtk_text_mark_get_name, modify
10877         it to return const char * (eventually will end up
10878         as GCONST char *, most likely.)
10879
10880         * gtk/gtktextview.[ch]: Handle the preedit string, call
10881         gtk_im_context_reset() as necessary, add a menu to switch
10882         input methods.
10883         
10884         * gtk/gtktextlayout.[ch]: Remove useless
10885         gtk_text_layout_get_log_attrs() function.
10886
10887 2000-11-11  Tor Lillqvist  <tml@iki.fi>
10888
10889         * gdk/gdk.def
10890         * gtk/gtk.def: Update.
10891
10892         * gdk/win32/*.c: Add last argument to g_type_register_static()
10893         calls.
10894
10895         * gdk/win32/gdkwindow-win32.c: Silence gcc -Wall.
10896
10897         * gdk/win32/gdkevents-win32.c: Handle MSH_MOUSEWHEEL messages
10898         generated by older wheel mouse drivers. Get the correct y
10899         coordinate from WM_MOUSEWHEEL messages.
10900
10901         * gdk/win32/gdkgc-win32.c (gdk_win32_cap_style_to_string,
10902         gdk_win32_fill_style_to_string, gdk_win32_function_to_string,
10903         gdk_win32_join_style_to_string, gdk_win32_line_style_to_string):
10904         Debugging functions.
10905
10906         * gdk/win32/gdkprivate-win32.h: Declare them.
10907
10908         * gdk/win32/gdkinput-win32.h: Add declaration for
10909         gdk_input_window_destroy().
10910
10911         * gtk/makefile.mingw.in: Pass -DGTK_VERSION. Add gtktreemodel.o.
10912
10913 Fri Nov 10 19:06:41 2000  Jonathan Blandford  <jrb@redhat.com>
10914
10915         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): New
10916         function to help handle keeping things in sync.
10917
10918 Fri Nov 10 12:10:34 2000  Jonathan Blandford  <jrb@redhat.com>
10919
10920         * gtk/gtkliststore.c (gtk_model_simple_class_init): use the new
10921         BOXED marshallers.
10922
10923         * gtk/gtkliststore.c (gtk_list_store_get_column_type): Add this.
10924         (gtk_list_store_class_init): use the new BOXED marshallers.
10925
10926         * gtk/gtktreestore.c (gtk_tree_store_new_with_types): change
10927         new_with_values to new_with_types.
10928         (gtk_tree_store_get_column_type): add this.
10929         (gtk_tree_store_class_init): use the new BOXED marshallers.
10930
10931         * gtk/gtkmarshal.list: Added a number of BOXED marshallers to
10932         mirror some POINTER marshallers.
10933
10934 Thu Nov  9 11:23:22 2000  Jonathan Blandford  <jrb@redhat.com>
10935
10936         * gtk/gtktreemodel.h (struct _GtkTreeIter): added more fields to
10937         allow more interesting iterators.  Also, made the lifecycle of
10938         iterators more explicit.
10939
10940         * gtk/gtktreemodelsort.[ch]: New model for sorting.
10941
10942         * gtk/gtk-boxed.defs (GtkTreeIter, GtkTreePath): Added two boxed
10943         types.
10944
10945 2000-11-09  Alexander Larsson  <alexl@redhat.com>
10946
10947         * demos/testgtk/menus.c:
10948         Changes to make the new testgtk compile after
10949         gtk_menu_append was removed.
10950
10951         * gdk/linux-fb/gdkdrawable-fb2.c
10952         (gdk_fb_get_depth, gdk_fb_get_visual,
10953         gdk_drawable_impl_fb_class_init): Implement
10954         these drawable functions. Now GtkImages work again.
10955
10956         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Change prototype.
10957
10958         * gdk/linux-fb/gdkprivate-fb.h (_gdk_fb_get_image): Change prototype.
10959         
10960         * gdk/linux-fb/gdkmain-fb.c (fb_modes_parse_mode,
10961         gdk_fb_setup_mode_from_name, gdk_fb_set_mode, gdk_fb_display_new);
10962         Parse /etc/fb.modes, use the environment variables GDK_DISPLAY_MODE,
10963         GDK_DISPLAY_DEPTH, GDK_DISPLAY_WIDTH, GDK_DISPLAY_HEIGHT.
10964
10965 2000-11-08  Havoc Pennington  <hp@pobox.com>
10966
10967         * gtk/gtktexttag.c (gtk_text_tag_class_init): Add visible and
10968         visible_set args, don't know where these had gone, I thought they
10969         used to be there
10970
10971         * gtk/testtext.c: Add a menu item to apply invisibility tag;
10972         now we can test the feature and see that it's totally broken.
10973
10974 2000-11-08  Havoc Pennington  <hp@pobox.com>
10975
10976         Make DND copy pixbufs and tags when source and target share a 
10977         tag table.
10978         
10979         * gtk/gtktextview.c (gtk_text_view_drag_data_get): provide the
10980         in-process GTK_TEXT_BUFFER_CONTENTS target
10981         (gtk_text_view_drag_data_received): Paste from
10982         GTK_TEXT_BUFFER_CONTENTS if we receive it.
10983
10984 2000-11-08  Alexander Larsson  <alexl@redhat.com>
10985
10986         * docs/Changes-2.0.txt: Add note about GtkMenuPositionFunc
10987         API changes.
10988
10989         * gtk/gtkmenu.c: Add support for scrolling menus.
10990         Remove gtk_menu_append/prepend/insert, these have been moved to
10991         gtkcompat.h as #defines.
10992
10993         * gtk/gtkcompat.h.in:
10994         Add compatibility #defines for gtk_menu_append/prepend/insert
10995
10996         * gtk/gtkmenu.h: Add data needed for scrolling menus.
10997         GtkMenuPositionFunc gets an extra argument push_in.
10998         gtk_menu_append/prepend/insert removed.
10999         
11000         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu): Change menu
11001         positioning behaviour to fit to scrolling menus.
11002
11003         * gtk/gtkmenuitem.c (gtk_menu_item_forall): Don't recurse
11004         into menuitem->submeny. That is wrong, and broke torn
11005         off submenus of torn off menus, since they were unrealized
11006         when the first menu was unrealized.
11007
11008         * gtk/gtkmenushell.[ch]: Virtualize gtk_menu_shell_insert() and
11009         gtk_menu_shell_select_item() since these need to be overridden in
11010         GtkMenu.
11011
11012         * gtk/gtkoptionmenu.c (gtk_opttion_menu_position): Change menu
11013         positioning behaviour to fit to scrolling menus.
11014         (gtk_option_menu_key_press, gtk_option_menu_button_press): Select
11015         the current item so that it is prelighted when the menu pops up.
11016         This is a workaround to the fact that the menu doesn't get the
11017         initial enter event (due to grabs).
11018
11019         * gtk/gtkfilesel.c, gtk/gtkinputdialog.c, gtk/testgtk.c:
11020         s/gtk_menu_append/gtk_menu_shell_append/
11021
11022         * gtk/gtknotebook.c:
11023         s/gtk_menu_insert/gtk_menu_shell_insert/
11024
11025         * gtk/testgtk.c (create_menu, create_menus):
11026         Create the first menu with 50 items so that menu scrolling
11027         can be tested.
11028         
11029         
11030         Patch from Jonathan Blandford  <jrb@redhat.com>
11031
11032         * gtk/gtkmenuitem.[ch] (gtk_menu_item_toggle_size_request): new
11033         system to handle size requests.  First, we ask what the size of
11034         the toggle is.  Then, when allocating the size, we allocate the
11035         toggle_size first.  This way we can have multiple menu-item
11036         classes w/o needing a seperate class for each.
11037
11038         * gtk/gtkmenu.c (gtk_menu_size_request): Actually use the new system.
11039         * gtk/gtkmenu.c (gtk_menu_size_allocate): Use the new system.
11040
11041         * gtk/gtkcheckmenuitem.c
11042         (gtk_check_menu_item_toggle_size_request): New function to handle
11043         the toggle size-request.
11044
11045 2000-11-07  Havoc Pennington  <hp@redhat.com>
11046
11047         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location):
11048         Half-ass somewhat fix this function, so that scrolling to the
11049         insertion point works. Pango hacking is in the future to really
11050         fix it.
11051
11052         * gtk/gtktextview.c (gtk_text_view_drag_data_get): Don't calculate
11053         length of data, no longer used.
11054
11055         * gtk/gtktextbuffer.c (gtk_text_buffer_finalize): move destroy
11056         method contents in here, get rid of destroy method
11057         (gtk_text_buffer_insert_range): Fix some g_return_if_fail checks
11058         that were backward. Remove debug spew.
11059         (cut_or_copy): Make the clipboard work with insert_range to
11060         preserve tags and pixbufs, not just the primary selection.
11061
11062 2000-11-07  Havoc Pennington  <hp@redhat.com>
11063
11064         * gtk/gtktextmark.c (gtk_text_mark_is_visible): rename 
11065         to gtk_text_mark_get_visible
11066
11067         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): fix
11068         bug that was generating an invalid iterator
11069
11070         * gtk/gtktextiter.c (gtk_text_iter_get_offset): move call to
11071         ensure_char_offsets() in front of code placing the iter in an
11072         invalid state.
11073
11074         * gtk/gtktextbuffer.c (gtk_text_buffer_paste_primary):
11075         make override_location arg const
11076         (paste): Replace the selection if we paste into the 
11077         current selection
11078
11079         * gtk/gtkselection.h: Remove "GtkSelectioData"
11080         (struct _GtkSelectionData): move the definition here.
11081
11082         * gtk/gtktextbuffer.c (gtk_text_buffer_update_primary_selection):
11083         Export the GTK_TEXT_BUFFER_CONTENTS target for in-process copies
11084
11085         * gtk/gtktextiter.c (gtk_text_iter_get_tags): New function
11086
11087         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_range): implement
11088         (gtk_text_buffer_insert_range_interactive): implement
11089         (gtk_text_buffer_get_tags): Remove, replaced by
11090         gtk_text_iter_get_tags()
11091
11092         * gtk/gtktextiter.c (gtk_text_iter_forward_search): Add a search
11093         limit parameter, to avoid infinite linear scan.
11094         (gtk_text_iter_backward_search): Add search limit
11095         (gtk_text_iter_forward_find_char): Add search limit
11096         (gtk_text_iter_backward_find_char): Add search limit
11097
11098 2000-11-07  Alexander Larsson  <alla@lysator.liu.se>
11099
11100         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
11101         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkimage-fb.c,
11102         gdk/linux-fb/gdkpango-fb.c, gdk/linux-fb/gdkpixmap-fb.c,
11103         gdk/linux-fb/gdkwindow-fb.c:
11104         use g_object_new() instead of g_type_create_instance() which
11105         is a private function for fundamental type implementations.
11106
11107         * gdk/linux-fb/gdkinput-ps2.c:
11108         Use MEDIUMRAW instead of RAW keycodes. Remove keyboard state-table
11109         instead just store the current modifier state. Add a (somewhat broken)
11110         keyboard input parser for XLATE mode too, if we couldn't use MEDIUMRAW.
11111         Rename exported function gdk_input_ps2_get_mouseinfo to
11112         gdk_input_get_mouseinfo.
11113
11114         * gdk/linux-fb/gdkmain-fb.c, gdk/linux-fb/gdkprivate-fb.h,
11115         gdk/linux-fb/gdkwindow-fb.c:
11116         gdk_input_ps2_get_mouseinfo was renamed to gdk_input_get_mouseinfo.
11117         
11118
11119 2000-11-02  Havoc Pennington  <hp@redhat.com>
11120
11121         * gtk/gtkfilesel.h, gtk/gtkfilesel.c: Derive from GtkDialog, and
11122         use stock buttons. Should be 100% source compatible, appropriate
11123         filesel fields now point to dialog->vbox and dialog->action_area.
11124         On the bizarre side, dialog->action_area and filesel->action_area
11125         are not the same widget.
11126         (gtk_file_selection_init): Put some padding around the selection
11127         entry, so it isn't touching the GtkDialog separator.    
11128
11129         * gtk/gtkfontsel.h, gtk/gtkfontsel.c: Derive from GtkDialog, 
11130         use stock buttons, etc. Should also be source compatible.
11131         Set the dialog default title in _init not _new().
11132         
11133         * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): 
11134         Use stock buttons; don't put a button box inside the existing
11135         dialog button box. Don't bother with push/pop colormap anymore.
11136
11137         * gtk/gtkdialog.h (GtkResponseType): Add a bunch of more 
11138         specific GTK_RESPONSE_* values. This is clearer than ACCEPT/REJECT
11139         for message dialog, and necessary for the font selection and color
11140         selection with help and apply buttons.
11141         
11142         * gtk/gtkdialog.c (gtk_dialog_add_button): Return a pointer 
11143         to the created button widget. Set GTK_CAN_DEFAULT on the button.
11144         (gtk_dialog_init): Default to GTK_BUTTONBOX_END, put less spacing
11145         between buttons, put less padding around the action area.
11146         (gtk_dialog_run): Exit on unmap rather than on destroy. 
11147         This will also exit the loop if the widget is hidden.
11148         (gtk_dialog_delete_event_handler): Use GTK_RESPONSE_DELETE_EVENT
11149         instead of GTK_RESPONSE_NONE; since we're already adding a bunch
11150         of GTK_RESPONSE_* stuff, this seems cleaner, and lets you 
11151         special-case delete event.
11152
11153         * gtk/gtktexttagtable.c, gtk/gtktextview.c: Fix doc comment
11154         formatting
11155         
11156 Sun Nov  5 05:32:39 2000  Tim Janik  <timj@gtk.org>
11157
11158         * gtk/testgtk.c (uposition_stop_configure): provide a toggle
11159         button to temporarily disable position recording in the
11160         "saved position" test.
11161
11162 Sat Nov  4 05:37:17 2000  Tim Janik  <timj@gtk.org>
11163
11164         * gtk/gtkthemes.c: added compat code that temporarily implements
11165         GtkThemeEnginePlugin as a GObject exporting GTypePlugin. this is
11166         going to be revamped by owen's upcoming GtkModule patches, but
11167         untill then people want gtk to build, right? ;)
11168
11169 2000-11-04  Havoc Pennington  <hp@pobox.com>
11170
11171         * gtk/gtkenums.h: remove trailing comma from GtkDeleteType member
11172         list
11173
11174         * docs/Changes-2.0.txt: Add note about
11175         gtk_container_get_toplevels()
11176
11177         * gtk/gtktextview.h: formatting
11178         
11179         * gtk/gtktextview.c: don't start descriptions with "Returns",
11180         confuses gtk-doc
11181
11182 Sat Nov  4 10:12:27 2000  Owen Taylor  <otaylor@redhat.com>
11183
11184         * autogen.sh: When doing sanity checking on ACLOCAL_FLAGS,
11185         look for glib-2.0.m4 not glib.m4. (Ali Abdin)
11186
11187 2000-11-03  Havoc Pennington  <hp@redhat.com>
11188
11189         * gtk/gtktexttagtable.c: Docs
11190         (gtk_text_tag_table_size): return a signed int
11191
11192         * gtk/gtktexttag.c: s/tkxt/text/g; write documentation
11193         (gtk_text_tag_event): make the event_object a GObject
11194
11195         * gtk/gtktextview.c: Write API docs for all functions.
11196
11197         * gtk/gtktextview.h: add GTK_TEXT_WINDOW_PRIVATE as return value
11198         for gtk_text_view_get_window_type() called on one of the private
11199         windows.
11200
11201         * gtk/gtktextview.c: Instead of accessing text_view->buffer
11202         directly, call get_buffer() which demand-creates a default
11203         buffer. So gtk_text_view_new() can be used to create a view with a
11204         default buffer in it, if you just want an empty text box users can
11205         put data in. Useful for GUI builders also.
11206
11207 2000-11-03  Pablo Saratxaga <pablo@mandrakesoft.com>
11208
11209         * gtk/gtkrc.zh_TW.*: moved gtkrc.zh_TW.Big5 to gtkrc.zh_TW.big5;
11210         the charset encodign portion MUST be in lowercase.
11211         * gtk/gtkrc.az: added file for Azeri language
11212
11213 2000-11-03  Havoc Pennington  <hp@redhat.com>
11214
11215         Get widgets working on the btree/buffer side. Display of them 
11216         still doesn't work.
11217         
11218         * gtk/gtktextview.c: start implementing child widget stuff
11219
11220         * gtk/gtktextiter.c (gtk_text_iter_get_child_anchor): new function
11221
11222         * gtk/gtktextlayout.c: handle embedded widgets
11223
11224         * gtk/gtktextdisplay.c: handle embedded widgets
11225
11226         * gtk/gtktextchild.c: Implement all the child anchor goo
11227
11228         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor): New
11229         function
11230
11231         * gtk/gtktextbtree.c: Add child anchor table to the btree struct
11232         (insert_pixbuf_or_widget_segment): abstract out common portions of 
11233         creating a child anchor or a pixbuf segment.
11234         (gtk_text_btree_create_child_anchor): new function
11235         (gtk_text_btree_unregister_child_anchor): new function
11236
11237         * gtk/gtkmarshal.list: added VOID:OBJECT,INT,INT for the
11238         allocate_child signal on GtkTextLayout
11239
11240         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): fix bogus return
11241         values
11242         (gtk_text_iter_get_child_anchor): new function
11243
11244         * gtk/gtktextbuffer.c (gtk_text_buffer_real_changed): Add a
11245         default handler for the changed signal, which calls
11246         gtk_text_buffer_set_modified(), instead of just always emitting
11247         changed then calling set_modified() manually. I guess this is
11248         maybe more flexible. It seems logical.
11249
11250 Fri Nov  3 08:58:38 2000  Tim Janik  <timj@gtk.org>
11251
11252         * gtk/gtkobject.c: _g_signal_handlers_destroy() is prefixed with '_'
11253         now.
11254
11255         * gtk/gtksignal.c: use g_signal_connect_closure_by_id() now.
11256
11257 Thu Nov  2 14:10:51 2000  Owen Taylor  <otaylor@redhat.com>
11258
11259         * gdk/x11/gdkdnd-x11.c: Fix a bunch of functions that should have
11260         been marked static.
11261
11262 2000-11-02  Havoc Pennington  <hp@redhat.com>
11263
11264         * gtk/testgtk.c (create_labels): had a test backward
11265
11266         * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Copy the client-side GC
11267         fields, so the dest GC ends up with the correct clip origin, 
11268         etc. Fixes a bug where colored labels didn't redraw 
11269         properly.
11270
11271 2000-11-02  Alexander Larsson  <alexl@redhat.com>
11272
11273         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
11274         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkpango-fb.c,
11275         gdk/linux-fb/gdkpixmap-fb.c, gdk/linux-fb/gdkwindow-fb.c:
11276         Add last argument to t_type_register_static call.
11277         
11278         * gdk/linux-fb/gdkdrawable-fb2.c:
11279         Add last argument to t_type_register_static call.
11280         export the get_image drawable virtual function.
11281
11282         * gdk/linux-fb/gdkimage-fb.c:
11283         Add last argument to t_type_register_static call.
11284         rename gtk_image_get to _gdk_fb_get_image and
11285         export it for use by gdkdrawable-fb2.
11286
11287         * gdk/linux-fb/gdkprivate-fb.h:
11288         export _gdk_fb_get_image.
11289
11290         * gdk/linux-fb/gdkselection-fb.c:
11291         Add new api call stubs.
11292
11293         * gtk/Makefile.am:
11294         Missing ( in linux-fb part.
11295
11296         * modules/linux-fb/Makefile.am:
11297         Must link with gdk_pixbuf or get unresolved symbol.
11298
11299 2000-11-01  Havoc Pennington  <hp@pobox.com>
11300
11301         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Use 
11302         GTK_TYPE_TEXT_ITER and BOXED marshallers
11303
11304         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): ditto
11305
11306         * gtk/gtktexttag.c (gtk_text_tag_class_init): ditto
11307         
11308         * gtk/gtk-boxed.defs: add GtkTextIter
11309
11310         * gtk/gtkmarshal.list: Add marshallers for text widget that 
11311         properly use OBJECT and BOXED
11312
11313 2000-11-01  Havoc Pennington  <hp@redhat.com>
11314
11315         * gtk/testgtk.c (create_labels): Test set_markup_with_accel()
11316
11317         * gtk/gtklabel.c (set_markup): Convert the unichar to a GDK keyval
11318         before returning it. 
11319         
11320 2000-11-01  Havoc Pennington  <hp@redhat.com>
11321
11322         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
11323         Clip the rectangle to be rendered to the drawable, since
11324         get_from_drawable() requires a region within the drawable
11325
11326 2000-11-01  Havoc Pennington  <hp@redhat.com>
11327
11328         * gtk/gtkimage.c (gtk_image_expose): Um, don't randomly subtract 4
11329         from coordinates.
11330
11331 Wed Oct 25 20:10:57 2000  Owen Taylor  <otaylor@redhat.com>
11332
11333         * gdk/gdkevents.c (gdk_event_copy): Only ref the window if
11334         it isn't NULL.
11335
11336 2000-11-01  Havoc Pennington  <hp@pobox.com>
11337
11338         * gtk/gtklabel.c (gtk_label_set_attributes): Set a PangoAttrList
11339         on a label
11340         (gtk_label_finalize): unref the attr list if any.
11341
11342         * gtk/testgtk.c (create_get_image): close test on second click
11343         (make_message_dialog): close dialog if it exists
11344
11345         * gdk/gdkpango.c (gdk_draw_layout): Handle rise attribute
11346
11347         * gdk-2.0.pc.in (Requires): Make it require gdk-pixbuf-2.0 not
11348         gdk-pixbuf
11349
11350         * gtk/gtklabel.c (gtk_label_set_markup): new function to set label
11351         from Pango markup format
11352         (gtk_label_set_markup_with_accel): ditto but with accelerator
11353         parsing
11354
11355         * gtk/gtkimage.c (gtk_image_expose): reformatting.
11356
11357         * gdk/gdkpixbuf-drawable.c (gdk_pixbuf_get_from_drawable): Hack to
11358         reflect current state of GDK - use gdk_drawable_get_colormap, etc.
11359         Check GDK_IS_WINDOW() not !GDK_IS_PIXMAP() to decide whether to 
11360         call gdk_window_get_origin().
11361
11362         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
11363         implement GDK_PIXBUF_ALPHA_FULL
11364         
11365 Wed Nov  1 03:43:42 2000  Tim Janik  <timj@gtk.org>
11366
11367         * gtk/gtksignal.c (gtk_signal_compat_matched): make use of
11368         g_signal_handlers_block_matched, g_signal_handlers_unblock_matched and
11369         g_signal_handlers_disconnect_matched to block/unblock and disconnect
11370         multiple handlers respectively, instead of only treating the
11371         first handler found (bug reported by owen).
11372
11373 Mon Oct 30 19:23:50 2000  Jonathan Blandford  <jrb@redhat.com>
11374
11375         * gtk/gtktreeview.c (gtk_tree_view_expand_row): New function.
11376
11377         * gtk/gtktreeview.c (gtk_tree_view_collapse_row): New function.
11378
11379         * gtk/gtktreeview.c, gtk/gtktreemodel.c, gtk/gtktreeselection.c
11380         gtk/gtktreestore.h, gtk/gtktreeview.h, gtk/gtktreeviewcolumn.c,
11381         gtk/gtktreeviewcolumn.h: Fixed inline docs.
11382
11383         * docs/reference/gtk/tree_widget.sgml: Proto intro to the tree
11384         widget.  Needs writing someday.
11385
11386         * docs/reference/gtk/tmpl/gtktree*sgml: Added the tree widget to
11387         the docs.
11388
11389 2000-10-30  Havoc Pennington  <hp@redhat.com>
11390
11391         * gtk/gtktextview.h, gtk/gtktextview.c:
11392         Rename delete_at_cursor delete_from_cursor, and 
11393         move to move_cursor.
11394
11395 2000-10-30  Havoc Pennington  <hp@redhat.com>
11396
11397         * gtktextbtree.c, gtktextbtree.h, gtktextbuffer.c,
11398         gtktextbuffer.h, gtktextchild.c, gtktextchild.h,
11399         gtktextchildprivate.h, gtktextdisplay.c, gtktextdisplay.h,
11400         gtktextiter.c, gtktextiter.h, gtktextiterprivate.h,
11401         gtktextlayout.c, gtktextlayout.h, gtktextmark.c, gtktextmark.h,
11402         gtktextmarkprivate.h, gtktextsegment.c, gtktextsegment.h,
11403         gtktexttag.c, gtktexttag.h, gtktexttagprivate.h,
11404         gtktexttagtable.c, gtktexttagtable.h, gtktexttypes.c,
11405         gtktexttypes.h, gtktextview.c, gtktextview.h:
11406
11407         Massive reindentation and reformatting. Arg alignment and comments
11408         still need fixing in various places.
11409
11410 2000-10-30  Havoc Pennington  <hp@redhat.com>
11411
11412         * gtk/gtktextview.h, gtk/gtktextview.c: Change run action signals
11413         to be named insert_at_cursor and delete_at_cursor so C++ can
11414         handle them.
11415
11416 2000-10-28  Tor Lillqvist  <tml@iki.fi>
11417
11418         * gtk/gtkrc.c (gtk_rc_append_default_module_path): Make sure not
11419         to get a double directory separator in case the home directory
11420         ends with one. This would cause trouble especially on Windows,
11421         where the path will be confused with the syntax for an an UNC
11422         (network share) path \\server\share\path.
11423         (gtk_rc_add_initial_default_files): Ditto.
11424
11425 Sat Oct 28 02:33:09 2000  Robert Brady  <robert@suse.co.uk>
11426
11427         * gtk/gtkmarshal.list: add new marshallers for GtkTextView.
11428
11429         * gtk/gtktextview.c: Use correct marshallers.
11430
11431 Fri Oct 27 17:56:26 2000  Jonathan Blandford  <jrb@redhat.com>
11432
11433         * gtk/gtkliststore.c: Not sure how this ever worked.  Fixed it to
11434         use new iter stuff, and added all the appropriate signals et al.
11435
11436         * gtk/gtktreedatalist.h: s/gtk/_gtk to further reinforce that this
11437         code is internal to gtk only.
11438
11439 2000-10-28  Tor Lillqvist  <tml@iki.fi>
11440
11441         * gtk/gtk.def
11442         * gtk/makefile.{mingw,msc}.in: Adjust to Tim's changes. Use
11443         glib-genmarshal etc.
11444
11445 Fri Oct 27 20:15:00 2000  Tim Janik  <timj@gtk.org>
11446
11447         * gtk/Makefile.am: added dependancies for testtextbuffer which broke
11448         parallel builds.
11449
11450 Fri Oct 27 18:51:44 2000  Tim Janik  <timj@gtk.org>
11451
11452         * gtk/gtksignal.[hc]: adapt to GSignal signature changes.
11453
11454 2000-10-27  Robert Brady  <robert@suse.co.uk>
11455
11456         * configure.in (ALL_LINGUAS): Add en@IPA (English, phonetic), 
11457         en_GB (British), ia (Interlingua).
11458
11459 2000-10-26  Havoc Pennington  <hp@redhat.com>
11460
11461         * gtk/gtktextiter.c (my_strrstr): fix constness warning
11462
11463         Fixed output of:
11464         nm -g -l .libs/libgtk-x11-1.3.so | grep ' T ' | grep -v gtk_ | grep -v GTK_
11465         
11466         * gtk/gtktextsegment.c (char_segment_new): rename
11467         (_char_segment_new_from_two_strings): rename
11468         (_toggle_segment_new): rename
11469         
11470         * gtk/gtkclipboard.c (ensure_clipboard_widget): make this static
11471         (make_clipboard_widget): make it static
11472         (text_get_func): static
11473         (text_clear_func): static
11474
11475         * gtk/gtkcolorsel.c (adjustment_changed): make this function
11476         static
11477         (hex_changed): make it static
11478         (hsv_changed): make it static
11479         (opacity_entry_changed): make it static
11480
11481         * gtk/gtktextbtree.c (change_node_toggle_count): rename with _gtk
11482         (toggle_segment_check_func): rename with _gtk
11483
11484         * gtk/gtktextchild.c (_pixbuf_segment_new): rename with _gtk
11485         (_widget_segment_new): rename
11486         (_widget_segment_add): rename
11487         (_widget_segment_remove): rename
11488         (_widget_segment_ref): rename
11489         (_widget_segment_unref): rename
11490
11491         * gtk/gtktextmark.c (_mark_segment_new): Rename
11492         _gtk_mark_segment_new   
11493
11494 2000-10-26  Havoc Pennington  <hp@redhat.com>
11495
11496         * gtk/gtkmarshal.list: add new marshallers used by the text widget
11497         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
11498         types
11499
11500         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): fix
11501         marshaller types
11502
11503         * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktextdisplay.h,
11504         gtk/gtktextdisplay.c: We need to preserve Tk copyrights and
11505         license on these files.
11506
11507         * gtk/gtktextiter.c (gtk_text_iter_backward_search): Make this
11508         work.
11509
11510         * gtk/gtktextbtree.c (gtk_text_btree_new): init stamps to 
11511         runtime random number different for each tree, instead of 
11512         a constant I made up.
11513
11514 Thu Oct 26 07:36:16 2000  Tim Janik  <timj@gtk.org>
11515
11516         * gtk/Makefile.am: buncha cleanups, kludged build sources
11517         dependencies with a Makefile: oldest-source-stamp dependancy
11518         for the moment. automake is really fighting us here, with
11519         intentionally not allowing user-defined rules or dependancies
11520         prior to it's -include $(DEP_FILES) statement. sucks rocks!
11521
11522         * gtk/Makefile.am: added gtktextlayout.h and gtktextdisplay.h
11523         to public headers. tehy have a comment stating that they are
11524         "semi-public" aren't included by gtk.h and if enums popup there,
11525         they can be /*< skip >*/-ed.
11526
11527         * gtk/gtktextlayout.h: 
11528         * gtk/gtktextdisplay.h: indentation fixes, comment fixes,
11529         added LGPL... <SIGH>
11530
11531 Wed Oct 25 20:40:25 2000  Jonathan Blandford  <jrb@redhat.com>
11532
11533         * gtk/gtktreemodel.h: Got rid of GtkTreeNode, and changed it to
11534         GtkTreeIter.  Added iterators everywhere.
11535
11536         * gtk/gtktreeviewcolumn.c: Changed to use the iterators.
11537
11538         * gtk/gtktreeviewselection.c: Changed to use the iterators.
11539
11540         * gtk/gtktreestore.c: Changed to use the iterators.
11541
11542         * gtk/gtkliststore.c: Commented out the code.  Will convert to
11543         iterators tomorrow.
11544
11545         * gtk/gtkmodelsimple.c: Commented out the code.  Will convert to
11546         iterators tomorrow.
11547
11548         * gtk/treestoretest.c: Changed to use iterators.
11549
11550         * demos/testgtk/main.c: Moved to use the new iterator system.
11551
11552 Thu Oct 26 02:10:32 2000  Tim Janik  <timj@gtk.org>
11553
11554         * gtk/Makefile.am: invoke maketypes.awk with LC_ALL=C to avoid
11555         localization misbehaviour.
11556
11557         * gtk/gtk-boxed.defs: nuked "boxed" type GtkCTreeNode, since it's
11558         a useless type without copy/free.
11559
11560         * gtk/gtkctree.c (gtk_ctree_class_init): use GTK_TYPE_POINTER instead
11561         of GTK_TYPE_CTREE_NODE.
11562
11563 Thu Oct 26 00:51:52 2000  Tim Janik  <timj@gtk.org>
11564
11565         * gtk/gtksignal.c:
11566         (gtk_signal_emitv): use g_value_set_static_{string|boxed} where
11567         applicable.
11568
11569         * gtk/gtk-boxed.defs (GtkSelectionData): specify
11570         gtk_selection_data_copy and gtk_selection_data_free
11571         do GtkSelectionData work as params in signals.
11572
11573 Wed Oct 25 20:47:41 2000  Tim Janik  <timj@gtk.org>
11574
11575         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init): urg, removed
11576         implementation of gtk_marshal_VOID__INT_INT_INT_INT. if people do that,
11577         couldn't they at least give it a non-standard name?
11578         
11579         * gtk/gtktextlayout.c: arg! yet another implementation of
11580         gtk_marshal_VOID__INT_INT_INT_INT(), is this a conspiracy?
11581
11582         * gtk/gtktextbuffer.c: gotcha! captured a vagabonding
11583         gtk_marshal_VOID__INT_POINTER_INT() implementation, braught it back
11584         home. now i know this _is_ a conspiracy.
11585
11586         * gtk/gtkwidget.c (gtk_widget_class_init): marshaller fixups for
11587         ::state-changed.
11588
11589         * gtk/gtkaccelgroup.c (gtk_accel_group_create_remove): 
11590         (gtk_accel_group_create_add): marshaller signature fixups.
11591
11592         * gtk/gtklistitem.c (gtk_list_item_class_init): signal creation fixups,
11593         pass in GTK_TYPE_SCROLL_TYPE instead of GTK_TYPE_ENUM.
11594
11595         * gtk/gtkobject.[hc]: removed GTK_CONNECTED flag, it's not valid
11596         anymore.
11597
11598 Tue Oct 24 23:59:21 2000  Tim Janik  <timj@gtk.org>
11599
11600         * docs/reference/Makefile.am: disabled SUBDIRS for the moment, since
11601         due to the signal system changes, it wouldn't build currently. to
11602         be fixed soon.
11603
11604         * docs/Changes-2.0.txt: GtkSignal/GSignal updates.
11605
11606         * gtk/gtkwidget.c: ::direction_changed takes an enum as argument,
11607         so it needs gtk_marshal_VOID__ENUM() instead of
11608         gtk_marshal_NONE__UINT().
11609
11610         * gdk/gdk*.c: adapted type registration functions.
11611
11612         * gtk/gtkbindings.c:
11613         * gtk/gtkaccelgroup.c: operate on GSignalQuery, GtkSignalQuery is
11614         gone.
11615
11616         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType.
11617
11618         * gtk/gtkobject.c:
11619         (gtk_object_destroy):
11620         (gtk_object_shutdown): fixed recursion guards. basically we have to
11621         catch the case where any of GObject.shutdown() or gtk_object_destroy()
11622         is called during ::destroy, and avoid recursion there.
11623
11624         * gtk/gtktypeutils.c:
11625         * gtk/maketypes.awk: awk-script hackup to provide gtk_type_init() with
11626         boxed_copy/boxed_free. this needs a more general solution based on a
11627         publically installed code-generator utility.
11628
11629         * gtk/gtktypeutils.[hc]: compat aliased GTK_TYPE_BOXED to G_TYPE_BOXED,
11630         glib's gobject has support for that now.
11631         define GtkSignalMarshaller in terms of GSignalCMarshaller.
11632
11633 Mon Oct 23 09:36:42 2000  Tim Janik  <timj@gtk.org>
11634
11635         * gtk/gtksignal.[hc]:
11636         * gtk/gtkmarshal.[hc]:
11637         * gtk/Makefile.am: generate marshallers with glib-genmarshal and don't
11638         compile gtkmarshal.c on its own anymore, just include it in gtksignal.c.
11639         removed #include <gtkmarshal.h>s all over the place, gtksignal.h takes
11640         care of that.
11641
11642         * *.c: marshaller name fixups.
11643
11644         * gtk/gtkmarshal.list: added a comment briefing the format.
11645
11646 Sun Oct 22 23:14:39 2000  Tim Janik  <timj@gtk.org>
11647
11648         * gtk/gtksignal.[hc]: nuked old implementation. we mostly have
11649         compatibility macros here now. more specifically, most of
11650         the API is preserved (yes, _most_, nonwithstanding the
11651         following exceptions listed, the API is stil lHUGE ;)
11652         things that got removed completely:
11653         GtkSignalQuery, gtk_signal_query(), gtk_signal_n_emissions(),
11654         gtk_signal_n_emissions_by_name(), gtk_signal_handlers_destroy(),
11655         gtk_signal_set_funcs(), gtk_signal_handler_pending_by_id(),
11656         gtk_signal_add_emission_hook(), gtk_signal_add_emission_hook_full(),
11657         gtk_signal_remove_emission_hook().
11658         non-functional functions variants:
11659         gtk_signal_add_emission_hook(), gtk_signal_remove_emission_hook().
11660         the GtkCallbackMarshal argument to gtk_signal_connect_full() is
11661         not supported anymore.
11662         (gtk_signal_compat_matched): new internal function to aid
11663         implementation of the compatibility macros, it  provides
11664         functionality to block/unblock/disconnect handlers based
11665         on func/data.
11666
11667         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType,
11668
11669         * *.c: adaptions to new type registration API signatures.
11670
11671 Fri Oct 20 15:26:33 2000  Tim Janik  <timj@gtk.org>
11672
11673         * gtk/gtktypeutils.[hc]: removed G_TYPE_GTK_POINTER cludge.
11674
11675 2000-10-25  Robert Brady  <robert@suse.co.uk>
11676
11677         * gdk/x11/gdkproperty-x11.c (gdk_property_get, gdk_property_change,
11678         gdk_property_delete): If window == NULL, assume the root window.
11679         (restoring the behaviour that was in 1.2).
11680         
11681         * gtk/testtext.c (save_buffer): Allow creation of new files when
11682         saving.
11683
11684         (fill_file_buffer): Don't die if a UTF-8 sequence is split across
11685         calls to read().
11686
11687 2000-10-25  Tor Lillqvist  <tml@iki.fi>
11688
11689         * gdk/gdkwindow.c: Include x11/gdkx.h only when building for X11.
11690
11691         * gdk/win32/gdkdrawable-win32.c
11692         * gdk/win32/gdkimage-win32.c
11693         * gdk/win32/gdkprivate-win32.h: Corresponding changes as in the
11694         X11 backend.
11695
11696         * gdk/win32/gdkcc-win32.c
11697         * gdk/win32/gdkcolor-win32.c
11698         * gdk/win32/gdkfont-win32.c
11699         * gdk/win32/gdkinput-win32.c
11700         * gdk/win32/gdkmain-win32.c
11701         * gdk/win32/gdkproperty-win32.c: Silence gcc -Wall.
11702
11703 2000-10-24  Havoc Pennington  <hp@redhat.com>
11704
11705         * gtk/gtktextview.c (gtk_text_view_scroll_to_mark_adjusted): make
11706         it a static function
11707
11708         * gtk/gtktextbtree.c (gtk_text_btree_tag): Gee, maybe we should
11709         redraw text when a tag is applied to it.
11710
11711         * gtk/gtktexttag.c (gtk_text_tag_affects_size)
11712         (gtk_text_tag_affects_nonsize_appearance): private functions to
11713         see if a tag requires various kinds of redraw/layout to be queued
11714         up.
11715
11716         * gtk/gtktexttag.h (struct _GtkTextTag): Remove relief crackrock
11717
11718         * gtk/testtext.c (fill_example_buffer): Put the cursor 
11719         at the start of the buffer, so search works by default
11720
11721         * gtk/gtktextiter.c (lines_match): init match_start always
11722
11723         * gtk/gtktextbuffer.c (gtk_text_buffer_get_iter_at_line_index): New
11724         function, get iter at a line + a byte index
11725
11726         * gtk/gtktextiter.c (gtk_text_iter_set_line_index): New function,
11727         to set byte position within a line
11728         (gtk_text_iter_check): remove leftover G_BREAKPOINT thing
11729
11730 2000-10-23  Havoc Pennington  <hp@redhat.com>
11731
11732         * gtk/testtext.c: Re-enable the "find" dialog
11733
11734         * gtk/testgtk.c: Add test for gdk_drawable_get_image
11735         
11736         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix bug where
11737         the arguments to gdk_draw_drawable were in the wrong order
11738         (gdk_window_paint_init_bg): This function was ignoring the
11739         init_region, instead of clipping to it, so the entire backing
11740         pixmap was cleared on every begin_paint()
11741         (gdk_window_begin_paint_region): Hmm, the same list-walking bug
11742         was in here again, the loop kept using the same GtkWindowPaint
11743         over and over.
11744         (gdk_window_begin_paint_region): Fix a bug where we had two
11745         x_offset instead of x_offset and y_offset
11746
11747         * gdk/gdkdraw.c (gdk_drawable_get_image): get composite drawable
11748         before we get the image.
11749         (gdk_draw_drawable): get the composite before we draw the drawable.
11750         (gdk_drawable_real_get_composite_drawable): default
11751         get_composite_drawable implementation that returns the drawable 
11752         itself
11753
11754         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Add
11755         get_composite_drawable virtual function
11756
11757         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix a cheesy
11758         list-walking bug
11759
11760         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable): Add a hack to
11761         make this work if the source drawable is a GdkDrawableImplX11
11762         instead of a public drawable type. This is really broken; the
11763         problem is that GdkDrawable needs a virtual method get_xid(), but
11764         of course that doesn't work in practice. Enter RTTI.
11765
11766         Also, improve mismatched depth message.
11767
11768         * gdk/gdkpixmap.c (gdk_pixmap_get_image): Implement get_image for
11769         GdkPixmap
11770
11771         * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_class_init):
11772         install _gdk_x11_get_image as our implementation of get_image
11773         
11774         * gdk/x11/gdkimage-x11.c (gdk_image_get): Rename to
11775         _gdk_x11_get_image and export for use in gdkdrawable-x11.c
11776
11777         * gdk/gdkimage.c (gdk_image_get): Make this just a wrapper around
11778         gdk_drawable_get_image
11779
11780         * gdk/gdkdraw.c (gdk_drawable_get_image): call virtual get_image
11781
11782         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Virtualize
11783         get_image
11784
11785         * gtk/gtktreestore.c (gtk_tree_store_get_node): remove weird
11786         trailing semicolon after for loop
11787
11788 Mon Oct 23 12:07:57 2000  Owen Taylor  <otaylor@redhat.com>
11789
11790         * gtk/gtkwidget.c (gtk_widget_set_style_internal): Fix problem
11791         where font_desc for widget's context lagged widget's font_desc by
11792         one step.
11793
11794 2000-10-22  Tor Lillqvist  <tml@iki.fi>
11795
11796         * gdk/win32/gdkgc-win32.c
11797         * gdk/win32/gdkimage-win32.c: Remove gcc -Wall warnings.
11798
11799         * gtk/makefile.mingw.in
11800         * gtk/gtk.def: Updates.
11801
11802         * gtk/testgtk.c: sleep() is called _sleep in MS's C
11803         library.
11804
11805         * gtk/gtkimcontextsimple.c: Include <stdlib.h> for bsearch().
11806
11807         * gtk/makefile.msc: Remove
11808
11809         * gtk/makefile.msc.in: New file, like makefile.mingw.in.
11810
11811         * gtk/Makefile.am: Add it.
11812
11813         * configure.in: Generate it.
11814
11815         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor)
11816         * gtk/gtktextbtree.c (gtk_text_line_char_to_byte): Return
11817         something even if not implemented, to satisfy picky MSVC.
11818
11819         Patches by Hans Breuer:
11820         
11821         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_glyphs): Call
11822         SetBkMode() and SetTextAlign() before calling
11823         pango_win32_render().
11824
11825         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_values_to_win32values):
11826         Set hcliprgn to NULL after destroying it.
11827         (gdk_gc_set_clip_rectangle): Delete hcliprgn and set to NULL.
11828
11829         * gdk/win32/gdkgeometry-win32.c
11830         (_gdk_windowing_window_queue_antiexpose): More effective
11831         implementation.
11832
11833         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_new): Use drawable's
11834         depth as default, not the visual's.
11835
11836         * gdk/win32/gdkwindow-win32.c (gdk_window_set_title): Guard
11837         against empty title.
11838
11839         * gdk/win32/gdkprivate-win32.h: Define a helper macro,
11840         IMAGE_PRIVATE_DATA.
11841
11842         * gdk/win32/gdkimage-win32.c: Use it.
11843
11844 2000-10-22  Robert Brady  <robert@suse.co.uk>
11845
11846         * configure.in: Check for bind_textdomain_codeset
11847
11848         * gtk/gtkmain.c (gtk_init_check): If bind_textdomain_codeset 
11849         present, make use of it.
11850
11851         Add a translatable string "default:LTR" which, if translated
11852         to "default:RTL", will cause the default direction to be
11853         Right-to-Left.
11854
11855         * gtk/gtkrange.h, gtk/gtkrange.c: Take into account the widget 
11856         direction if marked as flippable.
11857
11858         * gtk/gtkhscale.c: Mark widget as flippable.
11859         
11860 2000-10-04  Havoc Pennington  <hp@redhat.com>
11861
11862         * gtk/testgtk.c (create_buttons): create some stock buttons
11863         with the default accel group
11864         (create_image): test some new GtkImage features
11865         (make_message_dialog): test GtkMessageDialog
11866         (create_modal_window): fix someone's bizzarro indentation
11867
11868         * gtk/gtkwindow.h, gtk/gtkwindow.c: Implement 
11869         GTK_WIN_POS_CENTER_ON_PARENT. 
11870         Add "destroy with parent" setting, which means the window goes
11871         away with its transient parent.
11872         (gtk_window_get_default_accel_group): get the default accel group
11873         for the window.
11874         (gtk_window_set_destroy_with_parent): set/unset destroy with
11875         parent flag
11876         (gtk_window_read_rcfiles): invalidate icon set caches
11877         after reloading rcfiles 
11878
11879         * gtk/gtkenums.h (GtkWindowPosition): add
11880         GTK_WIN_POS_CENTER_ON_PARENT, which centers a dialog 
11881         on its parent window when the dialog is mapped for the first time.
11882
11883         * gtk/gtkmessagedialog.h, gtk/gtkmessagedialog.c: Add 
11884         a simple message dialog class
11885         
11886         * gtk/gtkdialog.c (gtk_dialog_init): Connect delete event 
11887         handler to emit response signal, and maybe later it would
11888         honor a hide_on_delete flag - though that isn't there yet.
11889         Set border width on the vbox to 2, so we get some padding.      
11890         Use a button box for the action area.
11891         (gtk_dialog_key_press): synthesize a delete event if Esc
11892         is pressed and the GtkWidget key press handler didn't 
11893         handle the escape key.
11894         (gtk_dialog_new_with_buttons): new function creates a dialog
11895         with some default buttons in it.
11896         (gtk_dialog_add_action_widget): add an activatable widget
11897         as a button in the dialog - you can also add a non-activatable
11898         widget by accessing the action area directly.
11899         (gtk_dialog_add_button): add a simple button - stock ID or 
11900         label - to the action area
11901         (gtk_dialog_response): emit response signal
11902         (gtk_dialog_run): block waiting for the dialog, return 
11903         the response. Override normal delete_event behavior, so that 
11904         delete_event does nothing inside gtk_dialog_run().
11905
11906         * gtk/gtkdialog.h, gtk/gtkdialog.c: Add "response" signal
11907         emitted when an action widget is clicked or the dialog gets
11908         delete_event
11909
11910         * gtk/gtk.h: add gtkmessagedialog.h
11911
11912         * gtk/Makefile.am: add gtkmessagedialog.[hc]
11913
11914 2000-10-18  Havoc Pennington  <hp@redhat.com>
11915
11916         * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): Fix a bug 
11917         where any number of empty lines would get skipped
11918
11919         * gtk/gtktextiter.h: Remove padding from GtkTextIter; live on the
11920         edge.
11921
11922         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): enhance the
11923         warning about invalid iterators (explain more thoroughly)
11924         (gtk_text_iter_in_region): rename gtk_text_iter_in_range
11925
11926         * gtk/gtktextview.c (FOCUS_EDGE_WIDTH): Make focus rectangle less
11927         big
11928
11929         * demos/*.c: Add error handling
11930
11931         * gtk/gtktextbuffer.c: don't modify const iterators
11932
11933         * gtk/gdk-pixbuf-loader.c: Add full error handling here
11934
11935         * gtk/gtkimage.c (gtk_image_set_from_file): ignore errors
11936         on file load
11937
11938         * gtk/gtkiconfactory.c: Update to reflect addition of error
11939         handling to gdk-pixbuf loaders
11940
11941 Wed Oct 18 11:14:05 2000  Owen Taylor  <otaylor@redhat.com>     
11942
11943         * configure.in demos/Makefile.am demos/testgtk/*: Start of work to
11944         move to new modularized testgtk.
11945
11946 2000-10-17  Jonathan Blandford  <jrb@redhat.com>
11947
11948         * gtk/gtktreeview.c: Draw the arrows correctly.
11949
11950         * gtk/gtktreemodel.c: Added user docs.
11951
11952         * gtk/gtk.h: remove gtktreedatalist.h.
11953
11954         * gtk/gtktreestore.c (gtk_tree_store_get_type): Get the correct
11955         parent when generating my type.
11956
11957         * gtk/gtkmarshal.list: Added four more marshallers: INT:NONE,
11958         POINTER:NONE, POINTER:POINTER, and POINTER:POINTER,INT.
11959
11960 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
11961
11962         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): Move
11963         GtkTreeModel from object to interface.
11964
11965 2000-10-16  Havoc Pennington  <hp@redhat.com>
11966
11967         * gtk/gtktreeviewcolumn.c: #include gtklabel.h, fixing 
11968         compilation
11969
11970 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
11971
11972         * gtk/gtktreeselection.c: Add API documentation to all public
11973         functions.
11974
11975         * gtk/gtktreeviewcolumn.c: Added API documentation to all public
11976         functions.
11977
11978 2000-10-15  Jonathan Blandford  <jrb@redhat.com>
11979
11980         * gtk/gtktreeview.c (gtk_tree_view_insert_column): New function
11981         proposed by Guy Harris <gharris@flashcom.net>.  Also, added API
11982         docs to all public functions.
11983
11984         * gtk/gtktreeview.c, gtk/gtktreeview.h, gtk/gtktreestore.h,
11985         gtk/gtktreestore.c, gtk/gtkliststore.h, gtk/gtkliststore.c,
11986         gtk/gtkmodelsimple.c, gtk/gtkmodelsimple.h, gtk/gtktreedatalist.c,
11987         gtk/gtktreemodel.h, gtk/gtktreeselection.c,
11988         gtk/gtktreeselection.h: Fix GtkTreeNode *node ->GtkTreeNode node
11989         issue.
11990
11991 2000-10-14  Robert Brady  <robert@suse.co.uk>
11992
11993         * configure.in: Added "fa" (Persian) to ALL_LINGUAS.
11994
11995 2000-10-12  Jonathan Blandford  <jrb@redhat.com>
11996
11997         * gtk/gtktreedatalist.[ch] (gtk_tree_data_list_value_to_node): Added
11998         values other then G_TYPE_STRING.
11999         * gtk/gtktreeselection.c: Minor commenting updates.
12000         * gtk/gtktreeview.c: Format updates.
12001
12002 2000-10-09  Tor Lillqvist  <tml@iki.fi>
12003
12004         * README.win32: Update.
12005
12006         * gdk/win32/gdkgeometry-win32.c (gdk_window_clip_changed): Add two
12007         lines that had been deleted by mistake (?).
12008
12009         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Handle
12010         also the case fg==white and bg==black (but still not randomly
12011         coloured cursors). Thanks to Wolfgang Sourdeau.
12012
12013         * gdk/win32/*.c: Silence gcc -Wall.
12014
12015         * gtk/gtk.def: Add missing entry points.
12016
12017         Fixes by Hans Breuer:
12018
12019         * gdk/makefile.msc
12020         * gdk/win32/makefile.msc: Update.
12021
12022         * gdk/testgdk.c: If compiling with debugging (with _DEBUG defined,
12023         some MSVC thing, presumably), cause breakpoint on failures. Add
12024         GDK_NOR case. Call g_log_set_always_fatal.
12025
12026         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_insert): Handle
12027         should be pased by reference.
12028         
12029         * gdk/win32/gdkprivate-win32.h: Correct declaration accordingly.
12030         
12031         * gdk/win32/*.c: Correct calls to gdk_win32_handle_table_insert.
12032
12033         * gdk/win32/gdkevents-win32.c
12034         * gdk/win32/gdkwindow-win32.c: Handle WM_CREATE.
12035
12036         * gdk/win32/gdkgc-win32.c: Fix mixups of drawable and
12037         implementation object.
12038
12039         * gdk/win32/gdkimage-win32.c (gdk_image_get): Handle drawables,
12040         not just windows.
12041         
12042         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_impl_win32_finalize):
12043         Use the wrapper object.
12044         
12045 2000-10-06  Havoc Pennington  <hp@redhat.com>
12046
12047         * Makefile.am (SRC_SUBDIRS): contrib subdir
12048
12049         * gdk/gdkpixbuf.h: Move GdkPixbufAlphaMode to gdk-pixbuf library,
12050         so it can be used in Xlib version
12051
12052         * demos/testpixbuf.c (update_timeout): error checking from 1.0
12053         tree
12054
12055         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_get_pixbuf): Sync
12056         change from 1.0 tree that returns first frame of animation
12057         if the loaded file is an animation.
12058
12059         * contrib: add new directory to hold stuff that comes with GTK+
12060         but isn't really part of GTK+ (for now, gdk-pixbuf-xlib)
12061         
12062         * configure.in: add contrib/*
12063
12064 2000-10-05  Havoc Pennington  <hp@redhat.com>
12065
12066         * demos/testpixbuf-save.c: add pixbuf save test
12067
12068         * demos/Makefile.am: add testpixbuf-save.c
12069
12070 2000-10-05  Jonathan Blandford  <jrb@redhat.com>
12071
12072         * gtk/gtktree.h (GTK_TREE_SELECTION): Replaced with
12073         GTK_TREE_SELECTION_OLD to prevent conflict with gtktreeselection.c
12074         * gtk/testgtk.c: s/GTK_TREE_SELECTION/GTK_TREE_SELECTION_OLD/
12075         * gtk/gtktreeselection.[ch]: Replaced
12076         "node_selected"/"node_unselected" signal with "selection_changed"
12077         signal.
12078
12079 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
12080
12081         * gtk/gtk{tree,cell}?*.[ch]: Checked in initial draft of the new
12082         tree widget.
12083
12084 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
12085
12086         * gdk/gdkwindow.c (gdk_window_draw_arc): Fix obvious bug in circle
12087         drawing.
12088
12089 Wed Oct  4 15:52:15 2000 Owen Taylor  <otaylor@redhat.com>
12090
12091         * gdk/x11/gdkselection-x11.c (_gdk_selection_window_destroyed):
12092         Move list pointer forwards before removing item from
12093         list. (Crash reported by Salmaso Raffaele)
12094
12095         * gdk/gdkwindow.h: Remove spurious trailing ,
12096
12097         * gdk/Makefile.am (LDFLAGS): You can't do interlibrary
12098         dependencies on uninstalled libraries, sorry folks.
12099
12100 2000-10-04  Havoc Pennington  <hp@redhat.com>
12101
12102         * gtk/gtkstock.h, gtk/gtkstock.c, gtk/gtkiconfactory.h,
12103         gtk/gtkiconfactory.c: Fix copyrights    
12104
12105         * demos/testpixbuf.c: add inline pixbuf test
12106         
12107 Mon Sep 25 15:05:17 2000  Owen Taylor  <otaylor@redhat.com>
12108
12109         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c (gdk_window_iconify):
12110         Add gdk_window_iconify.
12111
12112         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c
12113         (gdk_window_set_geometry_hints): Add win_gravity
12114         to geometry structure.
12115
12116         * gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter):
12117         Implement _NET_WM_PING.
12118
12119         * gdk/x11/gdkmain-x11.c (_gdk_windowing_init_check):
12120         Set _NET_WM_PID on the client leader.
12121
12122         * gdk/x11/gdkwindow-x11.c (gdk_window_set_icon_name):
12123         Handle UTF-8 better.
12124
12125         * gdk/x11/gdkwindow-x11.c (gdk_window_set_title): Handle
12126         UTF-8 better, set _NET_WM_NAME as well. Only set
12127         icon name if it hasn't previously been explicitely 
12128         set.
12129
12130 2000-10-03  Havoc Pennington  <hp@redhat.com>
12131
12132         * gtk/testtextbuffer.c: clean up trailing whitespace,
12133         add extensive tests for tag toggle iteration.
12134         
12135         * gtk/gtktextiter.c (MAX_LINEAR_SCAN): decrease linear scan 
12136         distance
12137
12138         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
12139         optimize case where the tag root is on level 1
12140         (gtk_text_line_previous_could_contain_tag): attempt to implement
12141         (gtk_text_line_next_could_contain_tag): Abstract out node_compare
12142         functionality
12143
12144         * gtk/gtktextiter.c (gtk_text_iter_backward_to_tag_toggle):
12145         Implement this, though not very efficiently.
12146
12147         * gtk/gtktextiterprivate.h: reformat
12148
12149         * gtk/gtktextiter.c (gtk_text_iter_get_char): return 0 on the end
12150         iterator
12151
12152         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_interactive): Fix
12153         this to properly revalidate the iterators.
12154
12155         * gtk/gtktextview.c (gtk_text_view_delete): fix control-K to work
12156         properly at the end of the line (and therefore on empty lines)
12157
12158         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Gee,
12159         maybe we should return a value...
12160
12161 2000-10-03  Tor Lillqvist  <tml@iki.fi>
12162
12163         * config.h.win32: Guard definition of alloca(). glib.h now handles
12164         that.
12165
12166         * gdk/gdk.def
12167         * gtk/gtk.def: Add new entry points.
12168
12169         Changes just to make GTK+ build without errors on Win32. No hope
12170         of it working in its current state, though...:
12171         
12172         * gdk/win32/gdkselection-win32.c: Remove gcc -Wall warnings.  Add
12173         some functions from the X11 backend, just to make GTK+ build.
12174
12175         * gdk/makefile.mingw.in
12176         * gtk/makefile.mingw.in: Use correct gdk_pixbuf version
12177         number. Add new object files.
12178
12179         * gtk/gtkclipboard.c: Include gdkwin32.h on Win32. Use
12180         GetMessageTime to get timestamp (where on X11 uses
12181         gdk_x11_get_server_time()).
12182
12183 2000-10-02  Havoc Pennington  <hp@pobox.com>
12184
12185         * gtk/gtktextview.c: text_window_* weren't static and should have
12186         been.
12187         Start work on child widgets; not yet complete, syncing to 
12188         office computer.
12189
12190         * gtk/gtktextchild.h: change this to contain a public interface,
12191         starting work on child interfaces.
12192         * gtk/gtktextchildprivate.h: move private interfaces here
12193
12194         * gtk/Makefile.am: update to reflect gtktextchildprivate.h
12195
12196         * gtk/gtktextview.h, gtk/gtktextview.c, gtk/gtktextbuffer.h,
12197         gtk/gtktextbuffer.c, gtk/gtktextiter.h, gtk/gtk/textiter.c, 
12198         gtk/gtktextmark.c: copyright notices
12199
12200         * gtk/gtktextmarkprivate.h: reformat, and put _ in front of
12201         internal functions      
12202
12203         * gtk/gtktextchild.c (_pixbuf_segment_new): put _ in front of
12204         internal function
12205
12206         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
12207         Reformatting    
12208
12209 2000-09-30  Havoc Pennington  <hp@pobox.com>
12210
12211         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Handle
12212         NULL start/end pointers
12213
12214         * gtk/gtktextbuffer.c: Write some docs
12215         (gtk_text_buffer_get_selection_bounds): Allow start/end to be
12216         NULL, so you can just check whether there's a selection.        
12217
12218         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): No need to 
12219         cleanup_line or segments_changed ourselves, it gets done 
12220         in unlink_segment
12221
12222         * gtk/gtktextmark.h:
12223         s/gtk_text_mark_deleted/gtk_text_mark_get_deleted/
12224         
12225         * gtk/gtktextsegment.h: Clean up some indentation and naming mess
12226
12227         * gtk/gtktextmark.c: delete some more old Tk cruft
12228
12229         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_mark): add ref to
12230         mark before removing it, so we can emit MARK_DELETED with a valid
12231         pointer.
12232         (gtk_text_buffer_mark_set): hold ref across signal emission
12233
12234         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): improve
12235         whining about attempts to delete special marks
12236
12237         * gtk/gtktextbuffer.c (_gtk_text_buffer_spew): Prepend with
12238         underscore, since it's internal.
12239
12240         * gtk/gtktextbuffer.h: Remove find_string prototype, this is 
12241         now implemented in terms of iterators in gtktextiter.h
12242
12243         * gtk/gtktextbuffer.c (gtk_text_buffer_set_text): 
12244         New function, destructively sets contents of buffer. Also 
12245         a convenient way to clear the buffer by setting text to ""
12246
12247         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): reformat
12248         multiline string literal
12249
12250         * gtk/testtext.c (text_changed_callback): Redraw line numbers if
12251         text changes.
12252
12253         * gtk/gtktextiter.c (forward_char): Return FALSE if new location 
12254         is not dereferenceable
12255         (gtk_text_iter_forward_lines): fix return value
12256
12257 2000-09-29  Havoc Pennington  <hp@redhat.com>
12258
12259         * gtk/gtktexttag.c (gtk_text_tag_set_priority): fix indentation
12260
12261         * gtk/gtktextview.c: Implement drag thresholding; change functions 
12262         that set border window size to have nicer name
12263         (gtk_text_view_mark_set_handler):  Fix this to have the 
12264         right signature.
12265
12266         * gtk/testtextbuffer.c (fill_buffer): Update with pixbuf changes
12267
12268         * gtk/testtext.c: Update with API changes, put line numbers on 
12269         both sides.
12270         
12271         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): Replace get_pixmap
12272         with this
12273
12274         * gtk/gtktextchild.h, gtk/gtktextchild.c: replace all pixmap with
12275         pixbuf; delete a big block of #if 0 Tk code
12276
12277         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_pixbuf): Replace 
12278         insert_pixmap with insert_pixbuf
12279
12280 2000-09-29  Martin Baulig  <baulig@suse.de>
12281
12282         * gdk-pixbuf.pc.in: Renamed to gdb-pixbuf-2.0.pc.in to avoid
12283         confusion with the GdkPixbuf of the GNOME 1.x platform.
12284
12285 2000-09-29  Havoc Pennington  <hp@pobox.com>
12286
12287         * gtk/gtktextview.c: Implement the side windows.
12288
12289         * gtk/testtext.c: Implement simple line numbering in the 
12290         left side window; seems to make scrolling sloooow. Oops.
12291         Also, cursor blink is for some reason causing redraws
12292         of the line numbers. Should investigate...
12293
12294 2000-09-28  Havoc Pennington  <hp@redhat.com>
12295
12296         * gtk/gtktextview.c: Set up infrastructure to deal with lots of 
12297         scrolling child windows, and draw focus rectangle properly.
12298         
12299         (gtk_text_view_buffer_to_window_coords):
12300         Coordinate transformation to deal with all these freaking windows
12301         and offsets
12302         (gtk_text_view_window_to_buffer_coords): transform the other way
12303
12304         * gtk/testtext.c (create_buffer): Update to match Pango API change
12305
12306         * gtk/gtktexttagtable.c (gtk_text_tag_table_foreach): Go over the
12307         anonymous tags
12308         (foreach_unref): don't emit remove signal from finalize, just
12309         set tag's parent to NULL
12310
12311 2000-09-26  Havoc Pennington  <hp@redhat.com>
12312
12313         * gtk/gtkiconfactory.c (gtk_icon_set_clear): remove
12314         Fix some warnings       
12315
12316 2000-09-26  Havoc Pennington  <hp@redhat.com>
12317
12318         * gtk/Makefile.am (gtk_private_h_sources): Move more text widget
12319         headers into the private header list
12320
12321         * Makefile.am (pkgconfig_DATA): install pkg-config files
12322
12323         * configure.in: add pkg-config files
12324
12325         * gdk-2.0.pc.in, gdk-pixbuf.pc.in, gtk+-2.0.pc.in: pkg-config files
12326
12327         * gtk/gtkwindow.c (gtk_window_read_rcfiles): Invalidate
12328         outstanding icon caches on theme change.
12329
12330         * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: New icon system. Three 
12331         important types:
12332
12333         (GtkIconSource): Specification for creating a pixbuf 
12334         appropriate for a direction/state/size triplet from 
12335         a source pixbuf or filename
12336
12337         (GtkIconSet): List of GtkIconSource objects that are used to
12338         create the "same" icon (e.g. an OK button icon), and cache for
12339         rendered icons
12340
12341         (GtkIconFactory): Hash from stock ID to GtkIconSet; used to look
12342         up the icon set for a given stock ID.  GTK maintains a stack of
12343         GtkIconFactory to search, and applications or libraries can add
12344         additional icon factories on top of the stack
12345         
12346         * gtk/gtkrc.h, gtk/gtkrc.c: When loading an RcStyle, parse 
12347         the set of GtkIconSource specified for a given stock ID into 
12348         a GtkIconSet, and put the GtkIconSet into a GtkIconFactory for the 
12349         RcStyle, under the specified stock ID.
12350
12351         * gtk/gtkstyle.h, gtk/gtkstyle.c: Add a virtual function
12352         render_icon used to derive a GdkPixbuf from a GtkIconSource.
12353         This allows people to theme how prelight, insensitive, etc. are
12354         done.
12355
12356         (gtk_style_lookup_icon_set): Look up a stock ID in the list of
12357         icon factories for a style, and return the resulting 
12358         icon set if any.
12359
12360         (gtk_style_render_icon): Render an icon using the render_icon 
12361         method in the GtkStyleClass.
12362
12363         * gtk/gtkwidget.h, gtk/gtkwidget.c (gtk_widget_render_icon): 
12364         Use the style for a given widget to look up a stock ID, get the
12365         icon set, and render an icon using the render_icon method 
12366         of the style
12367
12368         * gtk/gtkstock.h, gtk/gtkstock.c: Header with the GtkStockItem type
12369         (contains information about a stock item), the built-in stock item
12370         IDs, and functions to add/lookup stock items.
12371
12372         * gtk/stock-icons/*: Stock icons that come with GTK
12373
12374         * gtk/gtkbutton.h, gtk/gtkbutton.c (gtk_button_new_stock): Returns
12375         a button based on a GtkStockItem
12376         (gtk_button_new_accel): Takes a uline string and accel group, and
12377         installs the accelerator.
12378
12379         * gtk/gtkimage.h, gtk/gtkimage.c: Make this into a generic
12380         image-display widget.
12381
12382 2000-09-25  Havoc Pennington  <hp@redhat.com>
12383
12384         * gtk/gtktexttypes.c: Remove Latin1 conversion stuff
12385
12386         * gtk/gtktextbtree.c (gtk_text_btree_node_remove_data): 
12387         Fix a bug when removing node data, we didn't properly 
12388         re-splice the linked list after removing the data.
12389
12390         * gtk/gtktextview.c (gtk_text_view_key_press_event): Pass through 
12391         GDK_Tab as literal tab, Ctrl-Tab to tab to focus widget
12392
12393         * gtk/gtktextbuffer.c (selection_received): fix g_convert usage
12394
12395         * gtk/gtktextlayout.c (set_para_values): Set tab array 
12396         for the layout from the GtkTextTag.
12397
12398         * gtk/gtktexttypes.h: delete tab and search cruft, 
12399         remove g_convert() in favor of GLib version
12400
12401         * gtk/gtktexttypes.c: remove tab implementation from here,
12402         move to Pango
12403
12404         * gtk/gtktexttag.h, gtk/gtktexttag.c: Implement 
12405         tab stuff using new PangoTabArray from Pango
12406
12407         * gtk/gtktexttag.c (gtk_text_attributes_fill_from_tags): Remove
12408         unused border_width stuff
12409
12410 Thu Sep 14 12:21:12 2000  Owen Taylor  <otaylor@redhat.com>
12411
12412         * gtk/gtktexttypes.[ch]: Remove g_convert (moved to
12413         glib) and now useless utf_to_latin1() latin1_to_utf()
12414
12415         * gtk/gtktextview.[ch]: Change ::move_insert and
12416         ::delete_text action signals to ::move and ::delete;
12417         create the signals with the right enumeration type,
12418         not GTK_TYPE_ENUM so that bindings work. Add C-d, M-d,
12419         C-v bindings, change Home, End to move to beginning/end
12420         of line, Add C-Home C-End to move to beginning/end
12421         of buffer. Change ::cut_text to ::cut_clipboard, etc;
12422         combine ::scroll_text into ::move; use new GtkSelectionData
12423         functions to simplify DND text handling.
12424         
12425         * gtk/gtkenums.h gtk/gtktextview.h: Move movement,
12426         deletion enumerations here, rename enumeration values to 
12427         be consistently plural.
12428
12429         * gtk/gtktextbuffer.c: Use new clipboard interfaces
12430         for cut/copy/paste and primary selection.
12431
12432         * gtk/gtktextbuffer.[ch]: Remove excess time and
12433         'interactive' arguments from cut/copy/paste;
12434         rename cut to cut_clipboard, etc; remove
12435         gtk_text_buffer_get_clipboard_contents().
12436
12437         * gtk/gtktextlayout.[ch]: Add 
12438         gtk_text_layout_move_iter_to_line_end() to move the iter to 
12439         line ends.
12440
12441         * gtk/gtkselection.[ch] (gtk_selection_data_set/get_text):
12442         Functions to set or get a UTF-8 string on the selection
12443         data.
12444
12445         * gtk/gtkclipboard.[ch]: New, simplified selection handling
12446         interfaces.
12447
12448         * gtk/gtkinvisible.c (gtk_invisible_new): Realize newly
12449         created widgets - one of these is useless if we don't.
12450
12451         * gtk/gtkselection.[ch] (gtk_selection_clear_targets): Export
12452         a public function clear all targets registered for the
12453         widget.
12454
12455         * gtk/gtkselection.c (gtk_selection_owner_set) docs/Changes-2.0.txt:
12456         Never call gtk_widget_realize() - that was just asking
12457         for bizarre side-effects.
12458
12459         * gtk/gtkselection.c (gtk_selection_owner_set): Call
12460         gdk_selection_owner_set even if the widget is the
12461         same so that we reliably update the timestamp on
12462         the server.
12463
12464         * gdk/x11/gdkevents-x11.c gdk/x11/gdkx.h: Add a 
12465         gdk_x11_get_server_time() function.
12466         
12467         * gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.h
12468         gdk/x11/gdkselection-x11.c gdk/x11/gdkwindow-x11.h:
12469         Add some tricky filtering on serial numbers for
12470         selection clear events to fix up long-standard
12471         race condition FIXME's in gtkselection.c.
12472
12473         * gdk/gdkproperty.h gdk/x11/gdkselection-x11.h: Add
12474         routines to convert from utf8 to compound text or
12475         STRING and from a text property to UTF-8.
12476
12477         * gtk/gtkmain.[ch] (gtk_get_current_event_time): Add 
12478         a convenience function gdk_get_current_event_time().
12479
12480         * gtk/gtkselection.c (gtk_selection_data_copy/free): Copy
12481         and free selection_data->data properly
12482
12483 Sat Sep  9 10:23:53 2000  Owen Taylor  <otaylor@redhat.com>
12484
12485         * gtk/gtkthemes.c: Remove some unecessary includes.
12486
12487 2000-09-08  Jonathan Blandford  <jrb@redhat.com>
12488
12489         * gtk/gtktextdisplay.c
12490         * gtk/gtktextlayout.c
12491         * gtk/gtktexttag.c
12492         * gtk/gtktexttag.h
12493         * gtk/testtext.c: Change the overstrike property to strikethrough,
12494         to closer match pango.
12495
12496 Fri Sep  8 14:28:00 2000  Owen Taylor  <otaylor@redhat.com>
12497
12498         * gtk/gtktextview.c: Fix up visibility so that focus,
12499         cursor_visible and blink interact properly.  Reenable cursor blink
12500         which had been roughly disabled. Make blink and focus
12501         properly per-view.
12502
12503         * gtk/gtktextlayout.[ch] (gtk_text_layout_set_cursor_visible):
12504         Add a flag for whether to display insertion cursor and
12505         a function to set the flag.
12506
12507         * gtk/gtktextlayout.c (gtk_text_layout_get_line_yrange): Change
12508         get_line_y() to get_line_yrange(), to be a bit more generally
12509         useful.
12510
12511 Thu Sep 07 20:54:33 2000  George Lebl <jirka@5z.com>
12512
12513         * gtk/gtkmenu.c:  in gtk_menu_set_submenu_navigation_region
12514           do stop_navigating_submenu, to clear last timeout properly.
12515           Also in gtk_menu_motion_notify move ignore_enter above
12516           the conditional to make it always happen as suggested by Owen
12517
12518 2000-09-07  Tor Lillqvist  <tml@iki.fi>
12519
12520         * gdk/win32/makefile.mingw.in: Use -Wall. Add gdkpango-win32.o
12521
12522         * gdk/win32/gdkwin32.h: Add more definitions missing from the free
12523         w32api headers.
12524
12525         * gdk/win32/gdkprivate-win32.h: Add a couple of missing
12526         declarations.
12527
12528         * gdk/win32/gdkdrawable-win32.c: Remove gcc -Wall warnings.
12529         (gdk_win32_get_colormap): A line had been deleted by mistake.
12530
12531         * gdk/win32/gdkevents-win32.c: Remove lint (gcc -Wall) here, too.
12532         (gdk_event_translate): Handle more virtual keycodes to be able to
12533         generate GDK events for Control-comma, Control-period, etc.
12534
12535         * gtk/gtk.def: Add some missing entry points.
12536
12537 Thu Sep  7 11:47:02 2000  Owen Taylor  <otaylor@redhat.com>
12538
12539         * gtk/gtktextbuffer.c gtk/gtkimcontext.c gtk/gtkwidget.c:
12540         Doc comment fixing. (Mostly non-matching parameter names.)
12541
12542         * gtk/gtkcalendar.c gtk/gtklist.c gtk/gtknotebook.c: Modify
12543         comments a little to avoid looking like a doc comment.
12544
12545         * gtk/gtkspinbutton.h (GTK_INPUT_ERROR): Change INPUT_ERROR to
12546         GTK_INPUT_ERROR. (Should the mechanism for erros in spin button
12547         conversions be changed to GError?)
12548
12549         * gtk/gtkcolorsel.c (GTK_CUSTOM_PALETTE_WIDTH/HEIGHT): 
12550         Move private #defines into .c file.
12551
12552         * gtk/gtktexttag.c (gtk_text_tag_class_init): Alphabetize
12553         order of argument addition, remove duplicates.
12554
12555         * gtk/gtkaspectframe.h (struct _GtkAspectFrameClass):
12556         parent class is FrameClass, not BinClass.
12557
12558         * gtk/gtk.h: Add gtkinvisible, which was missing.
12559         (It's occasionalyl useful for client apps, if seldom.)
12560
12561         * gdk/gdktypes.h: Remove obsolete GDK_CORE_POINTER
12562         #define.
12563
12564 Wed Sep  6 09:53:15 2000  Owen Taylor  <otaylor@redhat.com>
12565
12566         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Use X-space
12567         coordinates when creating window, instead of GDK-space
12568         coordinates. (Avoid BadValue on too large windows.)
12569
12570 2000-09-05  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
12571
12572         * configure.in (use_mmx_asm): Remove conftest* after use along the
12573         lines of AC_TRY_COMPILE.        
12574         
12575         * gtk/gtkrc.c (gtk_rc_parse_file): Use g_path_get_dirname instead
12576         of g_dirname, which is deprecated.
12577         (gtk_rc_parse_any): Removed calls to
12578         g_scanner_{freeze,thaw}_symbol_table, which are deprecated.
12579
12580         * gtk/gtkbindings.c (binding_entry_new, binding_entry_destroy):
12581         Removed calls to g_hash_table_{freeze,thaw}, as they are
12582         deprecated now.
12583
12584         * gtk/testtext.c (buffer_pretty_name): Use g_path_get_basename
12585         instead of g_basename.
12586         
12587 2000-09-04 Elliot Lee <sopwith@redhat.com>
12588         
12589         * gdk/gdkpixbuf.h: Put text after #endif inside a comment to avoid
12590         ANSI warning.
12591
12592 Sun Sep 03 00:47:08 2000  George Lebl <jirka@5z.com>
12593
12594         * gtk/gtkwidget.h:  Add some documenting comments about 
12595           GTK_CAN_DEFAULT, GTK_HAS_DEFAULT and GTK_RECEIVES_DEFAULT
12596           just as owen said on irc.
12597
12598         * gtk/gtkwindow.c (gtk_window_set_default):  Don't blindly
12599           set HAS_DEFAULT.  Only set it if there isn't another window
12600           holding it (a focus window which RECEIVES_DEFAULT) and only unset
12601           it if the widget is not the focused window with RECEIVES_DEFAULT.
12602           This fixes weird double default bugs in dialogs which has things
12603           call gtk_window_set_default at times.
12604
12605 Fri Sep  1 22:39:07 2000  Owen Taylor  <otaylor@redhat.com>
12606
12607         * gtk/gtkmenu.[ch] TODO.xml: Apply patch from
12608         Nils Barth and David Santiago to improve submenu
12609         navigation. The patch does this by creating a triangular
12610         region from the point where the pointer leaves the
12611         menu to the submenu.  While the pointer is in
12612         that region and a timeout has not expired, events 
12613         that would cause the active submenu to change are
12614         ignored.
12615
12616 Fri Sep  1 15:34:46 2000  Owen Taylor  <otaylor@redhat.com>
12617
12618         * gdk/x11/gdkwindow-x11.c (gdk_window_move): Fix bug where
12619         moving a toplevel window immediately after sizing it would
12620         result in it being sized back to the old size since 
12621         impl->width, impl->height aren't updated until we hear
12622         back from the server. There is still a (longstanding) bug
12623         here that gdk_window_get_size() will give the wrong size
12624         until we do hear back.
12625
12626 2000-08-31  Havoc Pennington  <hp@redhat.com>
12627
12628         * gtk/gtktextiter.h, gtk/gtktextiter.c, gtk/gtktextlayout.h, 
12629         gtk/gtktextlayout.c, gtk/gtktexttag.h, gtk/gtktexttag.c, 
12630         gtk/gtktexttagprivate.h, gtk/gtktextview.c:
12631         Rename GtkTextStyleValues to GtkTextAttributes
12632
12633 2000-08-31  Havoc Pennington  <hp@pobox.com>
12634
12635         * gtk/gtktextbtree.c (GtkTextBTree): cache end line, 
12636         for rapid testing whether an iterator is the end iterator
12637         (gtk_text_btree_new): init end line cache
12638         (gtk_text_line_is_last): use fast cached line to 
12639         see if we're the last line.
12640         (get_last_line): use cached line here too, should 
12641         speed up some random unrelated code.
12642         
12643 2000-08-30  Havoc Pennington  <hp@pobox.com>
12644
12645         * gtk/gtkmarshal.list: Add marshallers for changed GtkTextBuffer
12646         signals.
12647
12648         * gtk/gtktextbuffer.h: Add "interactive" arg to insert_text and
12649         delete_text signals. This allows the signals to be used for
12650         implementing undo.
12651
12652         * gtk/gtktextbuffer.c: Change signal handler signatures; 
12653         provide "interactive" argument when emitting insert_text or
12654         delete_text signal.
12655         
12656 2000-08-30  Havoc Pennington  <hp@pobox.com>
12657
12658         * gtk/gtktextbuffer.c: Docs
12659
12660 Fri Aug 25 12:16:15 2000  Owen Taylor  <otaylor@redhat.com>
12661
12662         * gdk/x11/gdkimage-x11.c: remove GDK_IMAGE_SHARED_PIXMAP
12663         from switch statements, since Tor removed the enumeration
12664         value.
12665         
12666         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
12667         s/GDK_IS_WINDOW/GDK_IS_DRAWABLE/.
12668
12669 2000-08-29 Elliot Lee <sopwith@redhat.com>
12670         * */*.h: Use G_GNUC_CONST.
12671
12672 2000-08-27  Havoc Pennington  <hp@pobox.com>
12673
12674         * gtk/gtktextiter.c, gtk/gtktextiter.h: wrote lots of API docs,
12675         minor indentation fixes, inserted some FIXME about stuff I
12676         realized was broken while documenting it.
12677         (gtk_text_iter_get_pixmap): allow out params to be NULL, following
12678         GTK convention  
12679
12680 Tue Aug 22 12:33:24 2000  Owen Taylor  <otaylor@redhat.com>
12681
12682         * gtk/testgtk.c (create_styles): Fix double free of
12683         font desc.
12684
12685 Mon Aug 21 22:39:18 2000  Owen Taylor  <otaylor@redhat.com>
12686
12687         * gtk/gtkwidget.[ch]: Add gtk_widget_modify_{fg,bg,text,base,font}.
12688         
12689         * gtk/testgtk.c (create_styles): Add a test for modifying
12690         the style through gtk_widget_modify_*.
12691
12692         * gtk/gtkwidget.c (gtk_widget_get_modifier_style): Add
12693         a function to get the current modifier style.
12694
12695         * gtk/gtkwidget.c (gtk_widget_modify_style): Make a copy
12696         of the passed in GtkRcStyle instead of ref'ing it.
12697
12698         * gtk/gtkrc.[ch]: Add gtk_rc_style_copy().
12699
12700 2000-08-20  Tor Lillqvist  <tml@iki.fi>
12701
12702         * gdk/gdkimage.h
12703         * gdk/win32/gdkimage-win32.c: No need any longer on Win32 for the
12704         shared memory image+pixmap GdkImage type, or
12705         gdk_image_bitmap_new(). They were used in the gdk_imlib port, but
12706         I am dropping that.
12707
12708         * gtk/gtkmain.h: On Win32, use a #define to map gtk_init() to
12709         actually call gtk_init_abi_check(), passing also
12710         sizeof(GtkWindow). Ditto for gtk_init_check(). 
12711
12712         * gtk/gtk.def
12713         * gtk/gtkmain.c: (gtk_init_abi_check, gtk_init_check_abi_check):
12714         New functions, used to check that the GTK+-using code has been
12715         compiled using the correct compiler and switches. In particular,
12716         with gcc one has to use the -fnative-struct switch as GTK+ is
12717         compiled with that.
12718
12719 Fri Aug 18 17:27:46 2000  Owen Taylor  <otaylor@redhat.com>
12720
12721         * gtk/gtkclist.c (gtk_clist_merge): Don't leave dangling
12722         ->prev fields when merging lists. (Found simultaneously
12723         by Pawel Salek and Jakub Jelinek)
12724
12725 2000-08-12  Tor Lillqvist  <tml@iki.fi>
12726
12727         * gdk/gdk.def
12728         * gtk/gtk.def: Add missing entries.
12729
12730         * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Use
12731         OUT_TT_ONLY_PRECIS, try to get a TrueType font.
12732
12733         * gdk/win32/gdkinput-win32.c (gdk_device_get_state): New
12734         function. Dummy implementation at this point.
12735
12736         * gtk/makefile.mingw.in: Fix typo. Add testtext and testtextbuffer
12737         rules. Undefine GTK_COMPILATION when compiling the test programs.
12738         
12739         * gtk/gtkdebug.h: Mark gtk_debug_flags for export/import.
12740
12741 2000-08-11  Tor Lillqvist  <tml@iki.fi>
12742
12743         * gtk/gtkfilesel.c: Add more calls to g_filename_{to,from}_utf8()
12744         to convert back and forth from UTF-8 and the "system" (or "current
12745         locale") charset when necessary. Indentation/spacing cleanup.
12746
12747 2000-08-10  Havoc Pennington  <hp@redhat.com>
12748
12749         * Makefile.am (snapshot): Change the format of the snapshot
12750         version to match glib
12751
12752         * gdk/win32/Makefile.am (EXTRA_DIST): remove gdkinputprivate.h
12753         from EXTRA_DIST since it doesn't seem to exist
12754
12755 2000-08-10  Tor Lillqvist  <tml@iki.fi>
12756
12757         * gtk/gtkfilesel.c (open_new_dir): Use the "system codepage"
12758         version of the directory name (not the UTF-8 one) when building
12759         the path name to stat().
12760
12761 2000-08-03  Elliot Lee  <sopwith@redhat.com>
12762
12763         * gdk/gdkpango.c (gdk_draw_layout_line): Don't shape runs with a
12764         PANGO_ATTR_SHAPE set.
12765
12766 Thu Aug  3 09:17:06 2000  Owen Taylor  <otaylor@redhat.com>
12767
12768         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Applied patch from
12769         Peter Osterlund to simplify the code while keeping the
12770         functionality the same.
12771
12772 Wed Aug  2 14:57:38 2000  Owen Taylor  <otaylor@redhat.com>
12773
12774         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Move
12775         is_viewable() test further inside the function, since removing the 
12776         window from the redraw list without clearing ->update_area
12777         was also very broken.
12778
12779 2000-08-02  Tor Lillqvist  <tml@iki.fi>
12780
12781         * configure.in: Check for <unistd.h>.
12782
12783 2000-08-01  Martin Baulig  <baulig@suse.de>
12784
12785         * gtk/gtkmain.c (gtk_init_check): Use g_message() and not g_warning()
12786         to display the message that this is a development version of GTK+.
12787
12788 Mon Jul 31 18:37:36 2000  Owen Taylor  <otaylor@redhat.com>
12789
12790         * gtk/gtkentry.c (entry_adjust_scroll): Fix problem where computation
12791         was depending on widget->allocation instead of the width of text_area,
12792         which was incorrect for subclasses like GtkSpinButton.
12793
12794         * gdk/gdkpango.c (gdk_draw_layout): Fix a couple of typos
12795         with width == 1 tests that should be width == -1.
12796
12797 Mon Jul 31 16:45:48 2000  Owen Taylor  <otaylor@redhat.com>
12798
12799         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Replace broken, 
12800         (broken, Elliot, every single window blank on X) custom code with call
12801         to gdk_window_is_viewable() which a) prevents code duplicate and
12802         b) works. 
12803
12804 2000-07-31  Elliot Lee  <sopwith@redhat.com>
12805
12806         * gtk/gtkcolorsel.c: We really do need to include gdkfb.h in order
12807         to get the GDK_PARENT_ROOT() macro to work.
12808         * gtk/gtkmarshal.list: Add NONE:STRING,POINTER
12809         * gdk/gdkwindow.c: Don't send expose events, or invalidate pieces
12810         of, windows that aren't shown.
12811         * gdk/linux-fb: Redraw-when-menu-hidden solved, plus a bunch of
12812         pointer grab stuff.
12813
12814 Mon Jul 31 13:53:16 BST 2000  Tony Gale <gale@gtk.org>
12815
12816         * docs/gtkfaq.sgml docs/gtk-faq.sgml:
12817           s/gtk_main_iteration/g_main_iteration/
12818
12819           Did this already in change:
12820                 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
12821           don't know how it got reverted.
12822
12823 2000-07-31  Stanislav Brabec  <utx@penguin.cz>
12824
12825         * gdk/gdk.c: #ifdef G_ENABLE_DEBUG around gdk_arg_debug_cb and
12826         gdk_arg_no_debug_cb to fix compilation problem with --disable-debug.
12827
12828         * gdk/Makefile.am: Link gdk against actually compiled gdk_pixbuf-1.3,
12829         not gdk_pixbuf.
12830
12831 2000-07-30  Pablo Saratxaga <pablo@mandrakesoft.com>
12832
12833         * configure.in,po/{sp,sr}.po: Added Serbian files
12834
12835 2000-07-30  Tor Lillqvist  <tml@iki.fi>
12836
12837         * gdk/Makefile.am: Add makefile.mingw.in to EXTRA_DIST.
12838
12839         * gdk/win32/gdkevents-win32.c (gdk_events_init, gdk_events_queue):
12840         Remove the g_pipe_readable_msg stuff. Not needed with new GLib
12841         GIOChannel implementation.
12842
12843         * gdk/win32/gdkinput.c
12844         * gdk/win32/gdkpango-win32.c: Update license name here, too.
12845
12846         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_lookup): Fix
12847         definition to match prototype.
12848
12849         * gtk/makefile.mingw.in: Add libiconv CFLAGS and LIBS.
12850
12851 2000-07-27  Elliot Lee  <sopwith@redhat.com>
12852
12853         * gtk/gdk-pixbuf-loader.[ch]: Add gdk_pixbuf_loader_new_with_type
12854         function, to allow handling image formats that cannot be detected
12855         by looking at content alone.
12856
12857 Thu Jul 27 13:13:21 BST 2000  Tony Gale <gale@gtk.org>
12858
12859         * docs/tutorial/*.gif *.jpg *.eps
12860           Update these to the same look-n-feel.
12861           Why does including images in DocBook suck so badly?
12862
12863 Thu Jul 27 05:06:29 2000  Tim Janik  <timj@gtk.org>
12864
12865         * gtk/gtktable.c: applied patch from Phil Thompson
12866         <phil@river-bank.demon.co.uk> that enables space settings for
12867         the last row/columns as well.
12868
12869 Wed Jul 26 12:59:31 2000  Tim Janik  <timj@gtk.org>
12870
12871         * *.[hc]: applied patch from Andreas Persenius <ndap@swipnet.se> that
12872         updates the license headers to the GNU Lesser General Public License,
12873         as well as updating the copyright year to 2000.
12874
12875 2000-07-26  Robert Brady  <rwb197@zepler.org>
12876
12877         * configure.in: Cause GETTEXT_PACKAGE to be consistent in config.h
12878           and po/Makefile, was installing and looking for them under gtk20
12879           and gtk2 respectively.
12880
12881 2000-07-25  Havoc Pennington  <hp@redhat.com>
12882
12883         * gtk/testtext.c: Comment out some stuff that depends on the rest
12884         of my patches.
12885
12886 2000-07-25  Havoc Pennington  <hp@redhat.com>
12887
12888         * gtk/gtkmarshal.list: Add NONE:POINTER,POINTER,INT for the text
12889         buffer
12890
12891 2000-07-25  Havoc Pennington  <hp@redhat.com>
12892
12893         * gtk/testtext.c, gtk/testtextbuffer.c: update to reflect text
12894         widget changes.
12895
12896         * gtk/gtktextview.h: To be consistent with usage of "line"
12897         throughout the API to mean "newline-terminated thingy", change
12898         MOVEMENT_LINE to be MOVEMENT_WRAPPED_LINE, and MOVEMENT_PARAGRAPH
12899         to MOVEMENT_LINE.
12900
12901         (GtkTextView): Add flags for default editability, and whether to
12902         show the cursor. Add functions to get/set that. Add 
12903
12904         (gtk_text_view_get_iter_location): new function
12905
12906         * gtk/gtktexttypes.h: Move GtkTextLine typedef from here to
12907         gtktextlayout.h
12908         (g_convert): Add g_convert temporarily, will go in glib in a bit
12909         
12910         * gtk/gtktexttagtable.h: include gtktexttag.h, and define
12911         GtkTextTagTableForeach instead of brokenly using GHFunc.
12912         Change gtk_text_tag_table_foreach() so it doesn't use GHFunc.
12913
12914         * gtk/gtktexttagprivate.h: Remove GtkTextStyleValues from here,
12915         moved to public header.
12916
12917         * gtk/gtktexttag.h: Rename the "elide" attribute of tags to
12918         "invisible", since "elide" was a bad name.
12919         (gtk_text_tag_get_priority): Added
12920
12921         (GtkTextStyleValues): put this in public header, along with
12922         functions to use it.
12923
12924         * gtk/gtktextmarkprivate.h: Include more headers, since we no
12925         longer include gtktextbtree.h.
12926
12927         * gtk/gtktextmark.h: Add gtk_text_mark_ref, gtk_text_mark_unref,
12928         gtk_text_mark_deleted
12929
12930         * gtk/gtktextlayout.h: Don't include the "really private" headers,
12931         only buffer/iter. Forward declare GtkTextLIne and GtkTextLineData
12932         to make this possible. Now we only need to install
12933         gtktextlayout.h, not gtktextbtree.h and gtktext*private.h.
12934         (However the Makefile.am isn't changed yet because of the
12935         logistics of merging gtk-hp-patches piecemeal)
12936
12937         * gtk/gtktextiterprivate.h: include btree header, so it compiles;
12938         rename gtk_text_iter_get_line to gtk_text_iter_get_text_line since
12939         gtk_text_iter_get_line is now used in the public API for a
12940         different purpose.
12941
12942         * gtk/gtktextiter.h: Clean up function names to be more
12943         consistent. Always call char offset "offset" and byte index
12944         "index". A "line" is always a line number. 
12945
12946         (gtk_text_iter_is_last): new function, more efficient than 
12947         the existing way to check
12948         (gtk_text_iter_is_first): new function, also more efficient
12949
12950         (gtk_text_iter_up_lines, gtk_text_iter_down_lines): Remove these
12951
12952         (gtk_text_iter_next_char, gtk_text_iter_prev_char): Renamed from 
12953         gtk_text_iter_forward_char, etc.
12954
12955         (gtk_text_iter_forward_to_tag_toggle): Renamed from
12956         forward_find_tag_toggle, since this isn't a linear search
12957
12958         (GtkTextCharPredicate): rename from GtkTextViewCharPredicate
12959
12960         (gtk_text_iter_forward_search, gtk_text_iter_backward_search): 
12961         New functions, search for a buffer substring.
12962
12963         * gtk/gtktextbuffer.h: Add fields to store whether a paste is
12964         interactive and default editable (since we need to store that info
12965         until we receive the selection data).
12966
12967         Remove all the _at_char and at_line etc. versions of functions;
12968         only have iterator versions.
12969
12970         Add _interactive() versions of functions, that consider the
12971         editability of text. (FIXME add interactive flag to the 
12972         insert/delete signals per Darin's suggestion)
12973
12974         (gtk_text_buffer_get_tag_table): new function, demand-creates the
12975         tag table if necessary
12976
12977         Remove declaration of gtk_text_buffer_get_iter_from_string
12978
12979         (_gtk_text_buffer_get_btree): private/internal function, added.
12980         
12981
12982         * gtk/gtktextbtree.h: Remove forward decl of GtkTextLineData.
12983         (gtk_text_line_is_last): new function
12984
12985 2000-07-25  Havoc Pennington  <hp@redhat.com>
12986
12987         * gtk/gtkprogressbar.h: Implement new sane, 5-function API for
12988         using GtkProgressBar. See Changes-2.0.txt for details.
12989
12990         * gtk/gtkprogressbar.c: Add object arguments "fraction" and
12991         "pulse_step" which are the equivalent of
12992         gtk_progress_bar_set_pulse_step and gtk_progress_bar_set_fraction.
12993         Implement new API.
12994         
12995         * gtk/gtkprogress.h (struct _GtkProgress): Add a field
12996         (use_text_format) to mark whether text set on the progress bar is
12997         a format string. Deprecate entire GtkProgress interface.
12998
12999         * gtk/gtkprogress.c (gtk_progress_init): init use_text_format to TRUE
13000         (gtk_progress_build_string): make this a no-op if use_text_format
13001         is FALSE
13002
13003         * docs/Changes-2.0.txt: Describe progress bar changes.
13004
13005 2000-07-25  Tor Lillqvist  <tml@iki.fi>
13006
13007         * Makefile.am: Include the build directory.
13008
13009         * configure.in: Generate build/Makefile, build/win32/Makefile,
13010         gdk/, gdk/win32/, and gtk/makefile.mingw.
13011
13012         * config.h.win32: Add USE_GMODULE and USE_MMX for gdk-pixbuf.
13013         Add GETTEXT_PACKAGE.
13014         
13015         * gdk/gdk.def
13016         * gtk/gtk.def: Updates.
13017
13018         * gdk/gdkfont.h
13019         * gdk/gdkpixmap.h: Remove temporary Win32-only functions, we don't
13020         need them any longer.
13021
13022         * gdk/gdkinput.h: Mark gdk_core_pointer for export/import.
13023
13024         * gdk/makefile.mingw.in: Define GDK_COMPILATION. Link with
13025         PANGOWIN32_LIBS and gdk_pixbuf.
13026
13027         * gdk/win32: Compiles, but no doubt doesn't work at all.
13028
13029         * gdk/win32/makefile.mingw.in: Define GDK_COMPILATION. 
13030
13031         * gdk/win32/gdkinput.c: New file, temporarily.
13032         
13033         * gdk/win32/gdkinput-win32.h: New file
13034
13035         * gdk/win32/gdkinputprivate.h: Remove.
13036
13037         * gdk/win32/gdkpango-win32.c: New file.
13038
13039         * gtk/makefile.mingw.in: New file
13040
13041         * gtk/makefile.cygwin: Removed
13042         
13043         * gtk/Makefile.am: Update accordingly.
13044
13045         * gtk/gtkrc.[ch] (gtk_win32_get_installation_directory): Renamed and
13046         made externally visible.
13047
13048         * gtk/gtkmain.c: Use it.
13049         
13050         * gtk/gtktextdisplay.c: No need to include pangox.h, pango.h
13051         is enough.
13052
13053         * gtk/gtktypeutils.c: Mark glib_debug_objects for import.
13054
13055 2000-07-24 Elliot Lee <sopwith@redhat.com>
13056         * gdk/gdkprivate.h: Remove gdk_*_lookup() defines, since they are defined by the
13057         individual backends already.
13058         * gdk/gdkregion-generic.h, gdk/gdktypes.h: Put gdkregionbox & gdksegment back together
13059         again. Yes, there really is a good reason for this, if you are using the gdkregion
13060         internals, and if you're not, why do you care?
13061         * gdk/gdkwindow.c: Fix inverted condition
13062         * gdk/linux-fb: Compiles (for me - it will not work elsewhere most likely).
13063         * gtk/gtkcolorsel.c, gtk/gtkwindow.c: Add include for linux-fb
13064         * gtk/gtkrange.c: Redraw trough when moving.
13065         * gtk/gtktypeutils.c: Fix warning by adding const cast.
13066         * modules/linux-fb/basic.c: Fix unknown glyph retrieval.
13067
13068 2000-07-23  Tor Lillqvist  <tml@iki.fi>
13069
13070         * configure.in: Check for mkstemp and sigsetjmp. Output
13071         gdk-pixbuf/makefile.mingw and gdk-pixbuf/pixops/makefile.mingw.
13072
13073         More work on GDK for Win32. Still in an intermediate state.
13074
13075         * gdk/makefile.cygwin
13076         * gdk/win32/makefile.cygwin: Removed.
13077         
13078         * gdk/makefile.mingw.in
13079         * gdk/win32/makefile.mingw.in: New files.
13080
13081         * gdk/Makefile.am
13082         * gdk/win32/Makefile.am: Generate and distribute them.
13083
13084         * gdk/win32/gdkwindow-win32.h
13085         * gdk/win32/gdkdrawable-win32.h
13086         * gdk/win32/gdkpixmap-win32.h: New files.
13087
13088         * gdk/win32/gdkcolor-win32.c
13089         * gdk/win32/gdkcursor-win32.c
13090         * gdk/win32/gdkdrawable-win32.c
13091         * gdk/win32/gdkgc-win32.c
13092         * gdk/win32/gdkimage-win32.c
13093         * gdk/win32/gdkprivate-win32.h
13094         * gdk/win32/gdkwin32.h: Update data structures. Cosmetics:
13095         Rename fields and variables called xcursor, xid, etc (these names
13096         were leftovers from the X11 backend) to hcursor, hwnd, hbitmap etc.
13097
13098 Sat Jul 22 17:41:26 2000  Owen Taylor  <otaylor@redhat.com>
13099
13100         * gtk/gtkentry.[ch]: Fix some problems with vertical
13101         alignment.
13102
13103         * gtk/gtkentry.c (gtk_entry_find_position): Fix 
13104         char/byte confusion.
13105
13106 Sat Jul 22 11:16:05 2000  Owen Taylor  <otaylor@redhat.com>
13107
13108         * gtk/gtktextview.c (changed_handler): Fix bug where
13109         redraw wasn't being done properly when height of
13110         dirty region changed.
13111
13112         * demos/Makefile.am: Remove various references to
13113         -lgmodule
13114
13115 Fri Jul 21 15:28:13 2000  Owen Taylor  <otaylor@redhat.com>
13116
13117         * gtk/gtktextlayout.[ch], gtk/gtktextdisplay.c: Use new
13118         PangoAttrShape to reserve space for pixmaps, add 
13119         GSList *pixmaps to GtkTextLineDisplay, draw the pixmaps
13120         in the display functions.
13121         
13122         * gtk/testgtk.c (create_layout): Set some more exotic
13123         scrolled window options
13124
13125         * gtk/gtkscrolledwindow.[ch] (gtk_scrolled_window_set_shadow_type):
13126         Add function to set the shadow type of a window, to allow
13127         putting a shadow around widgets such as GtkLayout or GnomeCanvas
13128         which don't draw their own frame.
13129
13130 Fri Jul 21 16:34:42 BST 2000  Tony Gale <gale@gtk.org>
13131
13132         * docs/tutorial/package-db-tutorial.sh: New file for
13133           packaging DocBook format tutorial
13134
13135 Fri Jul 21 14:23:51 BST 2000  Tony Gale <gale@gtk.org>
13136
13137         * docs/tutorial/gtk-tut.sgml: Minor updates
13138
13139         * docs/tutorial/*.jpg *.eps: Screenshots for tutorial
13140
13141 2000-07-19  Tor Lillqvist  <tml@iki.fi>
13142
13143         * gtk/gtksignal.c: Fix C++ comment.
13144
13145         * gtk/gtkimmulticontext.c
13146         * gtk/gtktextbtree.c: Remove gccisms: Don't use __FUNCTION__,
13147         don't return value from void functions.
13148
13149         * gtk/gtk.def: Add gtk_rc_style_unref.
13150
13151 2000-07-19  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
13152
13153         * gdk-pixbuf/gdk-pixbuf.h, gtk/gtkhsv.h, gtk/gtktextbtree.h,
13154         gtk/gtktextbuffer.h, gtk/gtktextchild.h, gtk/gtktextdisplay.h,
13155         gtk/gtktextiter.h, gtk/gtktextiterprivate.h, gtk/gtktextlayout.h,
13156         gtk/gtktextmarkprivate.h, gtk/gtktextsegment.h, gtk/gtktexttag.h,
13157         gtk/gtktexttagtable.h, gtk/gtktexttypes.h, gtk/gtktextview.h,
13158         gtk/gtktypeutils.h: Include files outside of the extern "C"
13159         block. Makes some C++ compiler happy. Reported by Denis Vakatov
13160         <vakatov@peony.nlm.nih.gov>.
13161
13162 Wed Jul 19 14:07:57 BST 2000  Tony Gale <gale@gtk.org>
13163
13164         * docs/tutorial/gtk-tut.sgml: Yet more clean ups.
13165           Completes first pass. Hurrah!
13166
13167 Tue Jul 18 17:17:55 BST 2000  Tony Gale <gale@gtk.org>
13168
13169         * docs/tutorial/gtk-tut.sgml: More clean ups.
13170
13171 Mon Jul 17 18:52:38 2000  Owen Taylor  <otaylor@redhat.com>
13172
13173         * gtk/gtkentry.c (gtk_entry_draw_text): Restore code to
13174         paint the background of the text area which was accidentally
13175         removed at some point.
13176
13177         * gtk/gtkrc.[ch] gtk/gtkstyle.[ch] gtk/gtkthemes.[ch]: 
13178           
13179          - Move most of the functionality from the theme vtable
13180            into GtkRcStyleClass and GtkStyleClass. The moved
13181            vtable functions were changed a bit in the move to
13182            work better in their new home.
13183
13184          - Get rid of the engine and engine_data fields from
13185            GtkRcStyle and GtkStyle; instead the theme
13186            engine derives theme-specific subclasses of GtkRcStyle
13187            and GtkStyle
13188
13189          - Add extra dlsym() found entry point to themes,
13190            theme_create_rc_style().
13191
13192         * gtk/gtkstyle.c: Copy xthickness, ythickness fields
13193         in gtk_style_real_copy.
13194
13195         * gtk/themes.[ch]: add a function gtk_theme_engine_register_type()
13196         to register a type associated with an engine. (The engine
13197         won't be unloaded as there is an instance of the type.)
13198
13199
13200 Mon Jul 17 18:19:06 BST 2000  Tony Gale <gale@gtk.org>
13201
13202         * docs/tutorial/gtk-tut.sgml: Clean ups.
13203
13204 Mon Jul 17 13:59:29 BST 2000  Tony Gale <gale@gtk.org>
13205
13206         * docs/tutorial/gtk-tut.sgml: Initial DocBook version. Lots
13207           of cleaning up to do.
13208
13209 2000-07-15  Tor Lillqvist  <tml@iki.fi>
13210
13211         * gdk/testgdk.c: New file, quick hack to test backends for
13212         pixel-by-pixel correctness of the most simple graphic operations.
13213
13214 Fri Jul 14 20:30:25 2000  Owen Taylor  <otaylor@redhat.com>
13215
13216         * Really release 1.3.1
13217         
13218         * gtk-config-2.0.in gtk-2.0.m4: Fix up to correspond to new
13219         include structure.
13220
13221 Fri Jul 14 18:40:39 2000  Owen Taylor  <otaylor@redhat.com>
13222
13223         * Released 1.3.1
13224
13225 Fri Jul 14 16:21:26 2000  Owen Taylor  <otaylor@redhat.com>
13226
13227         * gtk/gtktextlayout.c: use FALSE for size_only most
13228         of the time when calling gtk_text_layout_get_line_display()
13229         to avoid causing double reshapes when a redraw follows
13230         immediately after.
13231
13232 Tue Jul 11 11:13:40 2000  Owen Taylor  <otaylor@redhat.com>
13233
13234         * gtk/gtkrange.c (gtk_range_default_[hv]slider_update): Invalidate
13235         appropriate region and gdk_window_process_updates() so trough
13236         updating doesn't lag behind the window being scrolled.
13237
13238         * gdk/gdkgc.c: Make parent_class pointer static.
13239          
13240 Sun Jul  9 21:31:23 2000  Owen Taylor  <otaylor@redhat.com>
13241
13242         * gdk/gdk-pixbuf.c gtk/gdk-pixbuf-loader.c gtk/gtktextview.c:
13243         include <string.h>.
13244          
13245         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Fix
13246         cut-and-paste error in computing memory offset for 4 channels.
13247
13248 Fri Jul 14 14:05:02 2000  Owen Taylor  <otaylor@redhat.com>
13249
13250         * gtk/gtkrc.c (gtk_rc_parse_pixmap_path_string): Remove
13251         gtk_rc_append_default_pixmap_path(), since it wasn't
13252         adding an interesting path and we don't have a meaningful
13253         default for this value.
13254
13255 Fri Jul 14 12:22:49 2000  Owen Taylor  <otaylor@redhat.com>
13256
13257         * configure.in Makefile.am gtk-config.m4 gtk.m4: Move
13258         gtk-config to gtk-config-2.0 move gtk_.m4 to
13259         gtk-2.0.m4
13260
13261         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
13262         gdk/Makefile.am demos/Makefile.am: Change 
13263         library names to libgtk-1.3.la, etc, so that we
13264         can distinguish gtk-1.2 and gtk-2.0 on the linkline.
13265
13266         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
13267         gdk/Makefile.am gdk/x11/Makfile.am
13268         Move include files into /usr/include/gtk-2.0, 
13269         /usr/lib/gtk-2.0/include/
13270          
13271         * autogen.sh acconfig.h configure.in gtk/gtkmain.c
13272         gtk/gtkintl.h: Change package for gettext from 
13273         gtk+ to gtk20. Put hack in autogen.sh to modify
13274         po/Makefile.in.in after gettextize to make this
13275         possible.
13276
13277         * gtk+.spec: Some updates, not tested.
13278
13279         * gdk-pixbuf/Makefile.am: Move loaders into
13280         $(libdir)/gtk-2.0/$(GTK_VERSION)/loaders.
13281
13282         * gtk/Makefile.am gtk/gtkrc.c: Move RC file locations
13283         $(sysconfdir)/gtk-2.0 ~/.gtkrc-2.0; theme subdir
13284         to THEMENAME/gtk-2.0/. Move engine directory  to
13285         $(libdir)/gtk-2.0/$(GTK_VERSION)/engines.
13286         
13287 2000-07-12  Tor Lillqvist  <tml@iki.fi>
13288
13289         Win32 changes, still doesn't build though.
13290
13291         * gdk/makefile.cygwin
13292         * gdk/win32/makefile.cygwin
13293         * gtk/makefile.cygwin: Updates.
13294
13295         * gdk/win32/gdkgc-win32.c (_gdk_win32_gc_new): Use the same
13296         default values for fg and bg pixel as X11 does (0 and 1), not
13297         black and white. Use PS_ENDCAP_FLAT and PS_JOIN_MITER by default.
13298         Use 0 for pen width by default (treated as 1 anyway later, but for
13299         apps that might check the value in the GdkGC).
13300         (gdk_win32_hdc_get, gdk_win32_hdc_release): New functions, public
13301         interface to gdk_gc_predraw and _postdraw.
13302
13303         * gdk/win32/gdkwin32.h
13304         * gdk/gdk.def: Add gdk_win32_hdc_{get,release}.
13305
13306         * gdk/win32/gdkcolor-win32.c (gdk_colormap_alloc1): Remove
13307         extraneous semicolon.
13308
13309         * gdk/win32/gdkdrawable-win32.c: Check also for pen_width == 0.
13310
13311         * gdk/win32/gdkimage-win32.c (gdk_image_new): Use the visual's depth,
13312         not the Win32 bitspixel value.
13313
13314         * gdk/win32/gdkcc-win32.c:
13315         * gdk/win32/gdkcolor-win32.c 
13316         * gdk/win32/gdkprivate-win32.h
13317         * gdk/win32/gdkwin32.h: Changes to make compilable, with new
13318         GDK object structure.
13319
13320 Tue Jul 11 20:59:35 2000  Tim Janik  <timj@gtk.org>
13321
13322         * docs/tutorial/gtk_tut_12.es.sgml (name): 
13323         * docs/tutorial/gtk_tut_it.sgml (name): 
13324         * docs/tutorial/gtk_tut_fr.sgml (name): 
13325         * docs/tutorial/gtk_tut.sgml (name): scratched notion of completely
13326         outdated email adress: s/timj@psynet.net/timj@gtk.org/.
13327
13328 Tue Jul 11 13:10:57 BST 2000  Tony Gale <gale@gtk.org>
13329
13330         * docs/faq/gtk-faq.sgml: Cleanup indenting and various
13331           small changes.
13332
13333 Tue Jul 11 08:04:58 2000  Tim Janik  <timj@gtk.org>
13334
13335         * gtk/gtktree.c (gtk_real_tree_select_child): eek, i've never seen
13336         a bug here, never been here and never fixed anything ;(
13337         (don't segfault if tree->root_tree is NULL, which happens prior
13338         to widget realization, but puke instead).
13339
13340 Tue Jul 11 06:38:42 2000  Tim Janik  <timj@gtk.org>
13341
13342         * gtk/gtkrc.h: add xthickness and ythickness to GtkRcStyle and
13343         add the necessary tokens.
13344
13345         * gtk/gtkrc.c (gtk_rc_style_init): properly initiality the rc style.
13346         (gtk_rc_style_to_style): copy thicknesses.
13347         (gtk_rc_init_style): apply thicknesses.
13348         (gtk_rc_parse_style): parse xthickness and ythickness.
13349
13350         * gdk/x11/gdkdnd-x11.c: silence compiler in switch() statements.
13351
13352         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): 
13353         (gdk_window_new): 
13354         (_gdk_windowing_window_init): 
13355         * gdk/x11/gdkpixmap-x11.c (gdk_pixmap_foreign_new): 
13356         (gdk_pixmap_create_from_data): 
13357         (gdk_bitmap_create_from_data): 
13358         (gdk_pixmap_new): 
13359         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
13360         (gdk_image_new): 
13361         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): 
13362         * gdk/x11/gdkdnd-x11.c (gdk_drag_context_new): 
13363         * gdk/x11/gdkcolor-x11.c (gdkx_colormap_get):
13364         (gdk_colormap_get_system): 
13365         (gdk_colormap_new): 
13366         * gdk/gdkwindow.c (gdk_window_init): 
13367         * gtk/gtkstyle.c (gtk_style_new):
13368         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done):
13369         * gdk/gdkpixmap.c (gdk_pixmap_init): 
13370         * gtk/gtkrc.c (gtk_rc_style_new):
13371         use g_object_new() instead of g_type_create_instance() which
13372         is a private function for fundamental type implementations.
13373
13374 Thu Jul  6 16:12:14 2000  Owen Taylor  <otaylor@redhat.com>
13375
13376         * configure.in: Add check for db2html
13377
13378 Thu Jul  6 14:53:05 2000  Owen Taylor  <otaylor@redhat.com>
13379
13380         * gtk/gtktypeutils.c (gtk_type_init): Add a temporary 
13381         hack to set glib_debug_objects based on gtk_debug_flags.
13382
13383 Thu Jul  6 14:12:13 2000  Owen Taylor  <otaylor@redhat.com>
13384
13385         * INSTALL.in: Update the Prerequisites section.
13386
13387         * Makefile.am demos/Makefile.am docs/Makefile.am
13388         docs/tutorial/Makefile.am gdk/x11/Makefile.am
13389         gdk/linux-fb/Makefile.am: Dist fixes
13390
13391 Thu Jul  6 12:26:03 2000  Owen Taylor  <otaylor@redhat.com>
13392
13393         * NEWS: 10,000 foot view of 1.3.1 changes.
13394
13395 Thu Jul  6 11:54:03 2000  Owen Taylor  <otaylor@redhat.com>
13396
13397         * gdk/gdk.h gdk/gdktypes.h gdk/linux-fb/gdkmain-fb.c
13398         gdk/nanox/gdkmain-nanox.c gdk/win32/gdkevents-win32.c
13399         gdk/win32/gdkinput-win32.c gdk/win32/gdkwin32.h
13400         gdk/x11/gdkmain-x11.c: 
13401
13402         Patch from George Lebl to add a GdkGrabStatus enumeration to use
13403         as a return value of gdk_*_grab(). Previously, we just
13404         returned the X11 values directly.
13405
13406 Thu Jul  6 11:27:44 2000  Owen Taylor  <otaylor@redhat.com>
13407
13408         * gdk/x11/Makefile.am: Patch from George Lebl to 
13409         install all the headers in the right place.
13410
13411 Tue Jul  4 13:13:01 BST 2000  Tony Gale <gale@gtk.org>
13412
13413         * docs/faq/gtk-faq.sgml: Add remaining sections. Completes
13414           initial conversion to DocBook.
13415
13416 2000-07-04  Tor Lillqvist  <tml@iki.fi>
13417
13418         * README.win32: Improve a bit.
13419
13420         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Handle also
13421         WM_SYSCHAR, and other changes to get handling of Alt+nnn or
13422         Alt+0nnn on the numpad (used to enter characters by numeric code
13423         from current DOS or ANSI codepage) working correctly, as in other
13424         Windows apps.
13425
13426         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Use
13427         same argument validity tests as in X11 version.
13428         (_gdk_cursor_destroy): Use DestroyCursor, not DestroyIcon.
13429
13430         * gdk/win32/gdkwin32.h: Add also WM_MOUSEWHEEL and CopyCursor
13431         definitions in case missing from headers.
13432
13433         * gdk/win32/gdkwindow-win32.c (gdk_win32_window_destroy): Also
13434         destroy the window-specific cursor.
13435         (RegisterGdkClass): Use the global gdk_ProgInstance instead of
13436         calling GetModuleHandle(NULL).
13437         (gdk_window_set_cursor): Reworked to always copy the passed cursor
13438         with CopyCursor before setting it as the window-specific
13439         cursor. It is OK for the caller to destroy the GdkCursor (and thus
13440         also its Windows cursor) after calling this function. Destroy any
13441         previous window-specific cursor.
13442
13443 Mon Jul  3 17:54:49 2000  Owen Taylor  <otaylor@redhat.com>
13444
13445         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): 
13446         font charset is iso8859-1, not iso-8859-1.
13447
13448 Mon Jul  3 17:08:14 2000  Owen Taylor  <otaylor@redhat.com>
13449
13450         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale):
13451         Use g_get_charset() instead of g_get_codeset().
13452
13453         * gtk/gtkframe.[ch] gtkframe.h gtk/gtktextmark.h: 
13454         Comment out some strdup'ing functions to keep timj
13455         happy until we finish fighting this out.
13456
13457 Mon Jul  3 14:24:16 2000  Owen Taylor  <otaylor@redhat.com>
13458
13459         * gtk/gtkwidget.c (gtk_widget_draw): Ignore calls with
13460         <= width or height.
13461
13462         * gtk/gtktable.c (gtk_table_attach): Fix missed merge
13463         from 1.2 for parent/child states.
13464
13465         * gdk/gdkgc.c (gdk_gc_set_rgb_fg/bg_color): Fix a couple
13466         of typos.
13467
13468         * gdk/gdkevents.[ch]: Remove press/xtilt/ytilt fields of
13469         event structures, replace with a generic axes field. Replace 
13470         deviceid/sourec with GdkDevice *device.
13471
13472         * gdk/gdkevents.[ch] (gdk_event_get_axis): Add function
13473         to extract particular axis use value from event. (Also
13474         can be used for normal X/Y.)
13475
13476         * gdk/gdkinput.h gdk/x11/gdkinput*: Major revision;
13477         allow for arbitrary number of axes, namespace everything
13478         as gdk_device_*. Replace guint32 deviceid with GdkDevice *
13479         everywhere.
13480
13481         * gdk/x11/{gdkmain-x11.c,gdkevent-x11.c,gdkinput*}: 
13482         Get rid of the gdk_input_vtable setup if favor of simply
13483         defining the functions in gdkinput-none/gxi/xfree.c in
13484         a similar fashion to the way that the port structure is 
13485         done.
13486
13487         * gtk/gtkdnd.c: Fix fields of synthesized button press event
13488         for new event structures. 
13489
13490         * gtk/gtkinputdialog.c gtk/testinput.c: Revise to match
13491         new device interfaces.
13492
13493 Sun Jul  2 18:19:50 2000  Owen Taylor  <otaylor@redhat.com>
13494
13495         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_layout): Add a 'text' argument to
13496         set the initial text.
13497
13498         * gtk/gtkaccellabel.c gtk/gtkcalendar.c gtk/gtkclist.c
13499         gtk/gtkentry.c gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c
13500         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvruler.c
13501         gtk/gtkvscale.c: Adapt to new argument of create_pango_layout().
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:43:41 2000  Owen Taylor  <otaylor@redhat.com>
13507
13508         * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
13509         pango_layout_set_font_description to simplify.
13510
13511 Sun Jul  2 17:06:40 2000  Owen Taylor  <otaylor@redhat.com>
13512
13513         * gtk/gtkcalendar.c gtk/gtkclist.c gtk/gtkctree.c gtk/gtkhscale.c
13514         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvscale.c gtk/gtkaccellabel.c: Use
13515         pango_layout_get_pixel_extents() to remove a large number of '/ PANGO_SCALE'.
13516
13517         * gtk/gtk[hv]ruler.c gtk/gtklabel.c: replace some / PANGO_SCALE with
13518         PANGO_PIXELS() macro.
13519
13520 Sun Jul  2 15:24:41 2000  Owen Taylor  <otaylor@redhat.com>
13521
13522         * gtk/gtkwidget.[ch] (gtk_widget_get_pango_context): Add new function
13523         that returns a PangoContext owned by the widget and updated to
13524         match future changes in the widget. Also, make 
13525         gtk_widget_create_pango_layout() use this context. If we ever
13526         add a ::changed signal to PangoContext, this will make things
13527         much more convenient. 
13528
13529         * gtk/gtkentry.c gtk/gtklabel.c: Call pango_layout_context_changed()
13530         in the appropriate places instead of destroying the layouts and
13531         creating new ones.
13532
13533         * gtk/gtkfontsel.[ch] gtk/gtkclist.c: Use gtk_widget_get_pango_context()
13534         in a few strategic places.
13535
13536 Sun Jul  2 14:37:58 2000  Owen Taylor  <otaylor@redhat.com>
13537
13538         * gtk/gtkoptionmenu.c (gtk_option_menu_size_request): Call 
13539         gtk_widget_size_request() on reparented child, if one. Otherwise,
13540         queue_resize() on the child never results in it getting size-requested
13541         at all.
13542
13543         * gtk/testgtk.c (build_option_menu): Remove silly radio-menu-items
13544         in option menus, so that (with luck) people won't copy it into
13545         their apps in the future.
13546
13547         * gtk/gtkoptionmenu.c: Connect ::size_request on the menu
13548         to gtk_option_menu_calc_size. This isn't perfect, but should fix
13549         a lot of problems with changing the size of the menu's menu
13550         items after adding it to the option menu.
13551
13552         * gtk/gtktexttag.c: Include gtkmain.h for gtk_get_default_language().
13553
13554         * gtk/gtkwidget.[ch]: Add a ::direction_changed that triggers when
13555         the text direction for a widget changes.
13556
13557         * gtk/gtk{entry.c,label.[ch],textview.[ch]} gtk/testgtk.c: Use
13558         ::direction_changed to get rid of various hacks.
13559
13560 Sun Jul  2 13:19:12 2000  Owen Taylor  <otaylor@redhat.com>
13561
13562         * docs/Changes-2.0.txt: Move Changes-1.4.txt to the appropriate
13563         name.
13564
13565 Sun Jul  2 13:06:26 2000  Owen Taylor  <otaylor@redhat.com>
13566
13567         * gdk/x11/gdkpixmap-x11.[ch] Changes-1.4.txt: Add a is_foreign
13568         flag to the structure. Do not call XFreePixmap on pixmaps created
13569         by gdk_pixmap_foreign_new().
13570
13571 Sun Jul  2 12:45:50 2000  Owen Taylor  <otaylor@redhat.com>
13572
13573         * gdk/gdkrgb.[ch]: Add gdk_rgb_find_color() to get a pixel
13574         value using GdkRGB functionality given GdkColormap and GdkColor.
13575         (name not final, waiting for inspiration.)
13576         
13577         * gdk/gdkgc.[ch] (gdk_gc_set_rgb_fg/bg_color): New functions to
13578         set the foreground/background of a GC using the GC's colormap
13579         and GdkRGB. (name not final, waiting for inspiration.)
13580
13581         * gdk/gdkcompat.h gdk/gdkrgb.c (gdk_rgb_get_colormap): Rename from 
13582         gdk_rgb_get_cmap(), put #define in gdkcompat.h.
13583
13584         * gtk/gtkwidget.[ch] gtkcompat.h: Make visuals for
13585         gtk_widget_get_visual(), gtk_widget_get_default_visual, etc,
13586         purely a function of the corresponding colormap. Make
13587         gtk_widget_set_visual(), etc, noop macros in gtkcompat.h.
13588
13589         * gdk/gdkpixmap.c gdk/x11/gdkpixmap-c11.c: Rewrite
13590         gdk_pixbuf_*create_from_xpm_* in terms of
13591         gdk_pixbuf_new_from_xpm_data(), move into platform independent
13592         code.
13593
13594         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Take
13595         advantage of the new draw_rgb_32_image_dithalign.
13596
13597         * gdk/gdkrgb.c (gdk_draw_rgb_32_image_dithalign): Added.
13598
13599         * gtk/gtkgc.c (gtk_gc_new): Set the appropriate colormap
13600         on each created GC.
13601
13602         * gdk/gdkgc.[ch]: Add gdk_gc_get/set_colormap.
13603
13604         * gdk/gdkgc.[ch]: Add a colormap field to the GdkGC structure
13605         which we initialize from the drawable when the GC is created,
13606         if the drawable has a colormap.
13607
13608         * gdk/x11/gdkgc-x11.c: include string.h for memset.
13609
13610         * gdk/x11/gdkinput-x11.c: include string.h for strlen, etc.
13611
13612         * gtk/gtklayout.[ch]: Remove unsed configure serial member.
13613
13614 Sat Jul  1 16:28:32 2000  Owen Taylor  <otaylor@redhat.com>
13615
13616         * gdk/x11/gdkevents-x11.c (gdk_event_translate): When
13617         actually returning expose events, make sure to set
13618         the count field properly.
13619
13620         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): Fix
13621         accidentally reintroced bug which always cleared
13622         the graphics_exposures value. 
13623
13624 Wed Jun 28 18:03:09 BST 2000  Tony Gale <gale@gtk.org>
13625
13626         * docs/faq/gtk-faq.sgml: Change DocBook layout slightly
13627
13628 Wed Jun 28 17:49:05 BST 2000  Tony Gale <gale@gtk.org>
13629
13630         * docs/faq/gtk-faq.sgml: Finish Section 6. Add Section 7.
13631
13632 Wed Jun 28 13:31:55 BST 2000  Tony Gale <gale@gtk.org>
13633
13634         * docs/faq/gtk-faq.sgml: Start of Section 6.
13635
13636 Mon Jun 26 19:37:04 2000  Owen Taylor  <otaylor@redhat.com>
13637
13638         * configure.in: Put 1.3.1 in warning message, not 1.3.0.
13639         
13640         (Fixes problem with drawing childless frames. Pointed out
13641         by and a first patch from Anders)
13642         
13643         * gtk/gtkframe.c (gtk_frame_compute_child_allocation): Always
13644         compute a child_allocation, even if we don't have a child.
13645
13646         * gtk/gtkaspectframe.c (gtk_aspect_frame_compute_child_allocation):
13647         Always chain to the parent's impl, even if we don't have a child.
13648
13649 Mon Jun 26 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
13650
13651         * gdk/gdkrgb.c: If possible, create only a single shm segment and
13652         use multiple parts of it instead of creating a bunch of separate
13653         segments, since the maximum number of segments per system is not
13654         large. (This might be worth backporting to GTK+-1.2.x if we make a
13655         new release )
13656
13657         * gdk/gdkrgb.c: Localize a bunch of variables into the GdkRgbInfo
13658         structure in preparation for per-colormap GdkRGB.
13659
13660         * gdk/x11/gdkimage-x11.c (gdk_image_new): Don't set gdk_use_xshm
13661         to False when we get EINVAL from shmget so that the caller of
13662         gdk_image_new can retry with a smaller segment size.
13663
13664 Mon Jun 26 13:01:16 BST 2000  Tony Gale <gale@gtk.org>
13665
13666         * docs/faq/gtk-faq.sgml: Add Sections 4 & 5.
13667
13668 Fri Jun 23 17:54:23 2000  Tim Janik  <timj@gtk.org>
13669
13670         * configure.in: make the current version number 1.3.1 (binary age 0,
13671         interface age 0).
13672         
13673         * gtkfeatures.h, gtkfeatures.h.in: dejavue, get rid of these *again*,
13674         gtkcompat.h is all we want.
13675
13676         * gtk/gtktypeutils.[hc]: define most of the primitive types in terms of
13677         GLib primitive types. fixed g_type_register_fundamental() argument
13678         ordering.
13679
13680         * gtk-config.in (lib_gtk): add -lgdk_pixbuf so third party code
13681         compiles.
13682
13683         * gdk-pixbuf-loader.[hc]: get rid of unistd.h include.
13684         object code cleanup, comment trigraph fixes, etc...
13685
13686 2000-06-23  Havoc Pennington  <hp@redhat.com>
13687
13688         * gtk/gtktextview.c (gtk_text_view_set_buffer): Use anonymous mark 
13689         instead of making up a bogus name for first_para_mark
13690
13691         * gtk/gtkstatusbar.h, gtk/gtkstatusbar.c: Allow 
13692         0 as a context ID
13693
13694 Thu Jun 22 17:43:51 BST 2000  Tony Gale <gale@gtk.org>
13695
13696         * docs/faq/gtk-faq.sgml: Change filename. Add Section 3.
13697
13698 2000-06-21  Havoc Pennington  <hp@pobox.com>
13699
13700         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Fix bug where
13701         we didn't check window->bg_pixmap != GDK_NO_BG.
13702
13703         * gtk/gdk-pixbuf-loader.c: Change to reflect GObject-ification of
13704         gdk-pixbuf
13705
13706 Thu Jun 22 14:02:19 BST 2000  Tony Gale <gale@gtk.org>
13707
13708         * docs/faq/gtk-faq.sgm: Move file to here.
13709           TODO: Update Makfile.am 
13710
13711 Thu Jun 22 13:41:09 BST 2000  Tony Gale <gale@gtk.org>
13712
13713         * docs/gtk-faq.sgm: Add Section 2
13714
13715 Thu Jun 22 08:43:45 BST 2000  Tony Gale <gale@gtk.org>
13716
13717         * docs/gtk-faq.sgm: New file. Start of DocBook
13718           version of the FAQ.
13719
13720 Wed Jun 21 23:04:17 2000  Owen Taylor  <otaylor@redhat.com>
13721
13722         * configure.in (GDK_PIXBUF_MAJOR): Define version
13723         numbers for GDK_PIXBUF_*, as they get substituted
13724         into a header file. Need to consider versioning
13725         for gdk-pixbuf more carefully later.
13726
13727 2000-06-21  Raja R Harinath  <harinath@cs.umn.edu>
13728
13729         Work with srcdir != builddir.   
13730         * demos/testanimation.c: Don't include "gdk-pixbuf.h".  Use
13731         <gtk/gdk-pixbuf-loader.h>, not "gtk-pixbuf/gdk-pixbuf-loader.h".
13732         * demos/testpixbuf.c: Likewise.
13733         * demos/testpixbuf-scale.c: Don't include "gdk-pixbuf.h".
13734         * demos/testpixbuf-drawable.c: Don't include "gdk-pixbuf.h".  Use
13735         <gdk/x11/gdkx.h>.
13736         * demos/pixbuf-demo.c: Use <gtk/gtk.h> not "gtk.h".  Don't include
13737         "gdk-pixbuf.h".
13738         * demos/Makefile.am (INCLUDES): Remove unneeded directories.
13739
13740 Wed Jun 21 19:45:02 2000  Owen Taylor  <otaylor@redhat.com>
13741
13742         * TODO.xml: Change 1.4 version numbers to 2.0.
13743
13744 Wed Jun 21 19:29:08 2000  Owen Taylor  <otaylor@redhat.com>
13745
13746         * gdk/gdkpixbuf-render.c gdk/gdkpixbuf-drawable.c: Indentation
13747         fixups to GTK+ standard.
13748
13749 Wed Jun 21 16:38:13 2000  Owen Taylor  <otaylor@redhat.com>
13750
13751         * gdk-pixbuf/* docs/reference/gdk-pixbuf/*: Welcome aboard,
13752         gdk-pixbuf.
13753
13754         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init):
13755         fixups for GObject.
13756
13757         * gdk/Makefile.am gdk/gdkpixbuf-render.[ch] gdk/gdkpixbuf.[ch]: Bits of 
13758         gdk-pixbuf with GDK dependencies moved into GDK.
13759         
13760         * gtk/Makefile.am gtk/gdk-pixbuf-loader.[ch]: Temporarily
13761         move gdk-pixbuf-loader here until GObject has signals.
13762
13763         * demos/: New directory of demos. Move demos from
13764         gdk-pixbuf here.
13765
13766         * demos/pixbuf-init.c: Small bit of code to check for
13767         loaders in ../gdk-pixbuf/.libs/gdk-pixbuf, and if found,
13768         set GDK_PIXBUF_MODULEDIR appropriately.
13769
13770         * gdk/gdkcompat.h: Remove GDK_DRAWABLE_PIXMAP compat
13771         define which no longer makes sense.
13772
13773 2000-06-21  Havoc Pennington  <hp@redhat.com>
13774
13775         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Use
13776         gtk_get_default_language
13777
13778         * gtk/gtkmain.h, gtk/gtkmain.c (gtk_get_default_language): 
13779         new function to get the default language
13780
13781         * gtk/gtktexttagprivate.h, gtk/gtktexttag.c, gtktextview.c: 
13782         s/gtk_text_view_style_values/gtk_text_style_values/
13783
13784         * gtk/gtktexttag.c, gtk/gtktexttag.h, gtk/gtktexttagprivate.h:
13785         Add a "language" field to tags.
13786
13787         (gtk_text_tag_set_arg): Fix bug in setting
13788         "bg_full_height_set" tag.
13789
13790 2000-06-21  Havoc Pennington  <hp@redhat.com>
13791
13792         * gtk/gtktextiter.h: Use gunichar instead of gint when appropriate
13793         in the interfaces
13794
13795         * gtk/gtktexttypes.c: Remove UTF functions, use glib 
13796         stuff instead when possible.
13797
13798         * gtk/gtktexttypes.h: Delete some unused constants
13799
13800         * gtktextbtree.c, gtktextiter.c, gtktextsegment.c, gtktextview.c,
13801         testtextbuffer.c: use glib instead of custom unicode routines
13802
13803 Wed Jun 21 12:50:58 2000  Owen Taylor  <otaylor@redhat.com>
13804
13805         * docs/es/: Removed mistakenly added generated sgml
13806
13807         * docs/{gdk.texi,gtk.texi,gdk.sgml} macros.texi texinfo.tex:
13808         Remove outdated info files.
13809
13810         * docs/gtk_tut* docs/package_tutorial.sh docs/tutorial:
13811         Moved tutorial files into subdir
13812
13813         * docs/gtkfaq.sgml docs/faq/gtkfaq.sgml: Move FAQ into
13814         subdir.
13815
13816         * docs/man/gtk_button.pod: Remove. (contents will be
13817         integrated into gtk-reference button page.)
13818
13819         * configure.in docs/Makefile.am docs/tutorial/Makefile.am
13820         docs/faq/Makefile.am: Adjust for new organization
13821
13822 2000-06-21 Christopher Blizzard  <blizzard@redhat.com>
13823
13824         * gdk/x11/Makefile.am (install-data-local): use $(mkinstalldirs)
13825         not $(MKINSTALLDIRS)
13826
13827 Wed Jun 21 12:24:28 2000  Owen Taylor  <otaylor@redhat.com>
13828
13829         * gtk/testgtk.c (create_text): Finish the job Elliot started
13830         of removing font setting test for text widget. (Since text widget
13831         and GdkFont are not deprecated, and cause portability problems.)
13832
13833 Wed Jun 21 11:41:43 2000  Owen Taylor  <otaylor@redhat.com>
13834
13835         * gtk/gtkentry.c gtk/gtkimcontextsimple.c gtk/gtklabel.c
13836         gtk/gtktexttypes.c gtk/testtext.c modules/linux-fb/basic.c:
13837         Remove use of libunicode in favor of new GLib functions.
13838
13839         * gtk/gtkcolorsel.c: Remove conditional includes for FB, win32,
13840         nano-x, framebuffer. The X11 include is just a hack until we get
13841         the necessary functions in gdkcolor.h, so there is no reason to
13842         add other includes of platforms.
13843
13844         * gtk/gtkwindow.c (gtk_window_compute_default_size): Revert 
13845         window bigger than the screen change.
13846
13847         * gtk/testgtk.c: Revert some random changes from Elliot
13848         that had no particular point and were causing testgtkrc
13849         not to function correctly.
13850         
13851         * gdk/gdkregion-generic.h: Revert change from Elliot. Just
13852         because GdkSegment and GdkRegionBox have the same fields,
13853         it doesn't mean that 'typedef GdkSegment GdkRegionBox'
13854         results in clearer code.
13855
13856         * gdk/x11/gdkinput-x11.c (gdk_input_common_select_events,
13857         gdk_input_translate_coordinates): Fix missed GdkObjectification
13858
13859 2000-06-18  Elliot Lee  <sopwith@redhat.com>
13860
13861         * gdk/Makefile.am, gdk/*/Makefile.am: Fix conditionality to work the "right" way.
13862         * gtk/gtk{plug,socket}.h: Missed commits from previous.
13863
13864 2000-06-20  Havoc Pennington  <hp@redhat.com>
13865
13866         * modules/linux-fb/Makefile.am: Make this compile
13867         without framebuffer enabled
13868
13869         * gdk/linux-fb/Makefile.am: Add conditional to not build
13870         framebuffer unless specified in configure
13871
13872         * gdk/gdkdraw.c (gdk_draw_drawable): Fix bug where I was getting
13873         the size of the target instead of source if -1 was passed for
13874         width/height
13875
13876         * gdk/x11/gdkgeometry-x11.c (gdk_window_compute_position): Fix 
13877         width/height confusion.
13878
13879 2000-06-19  Havoc Pennington  <hp@redhat.com>
13880
13881         * gdk/x11/gdkx.h (GDK_WINDOW_XWINDOW): change this to be
13882         GDK_DRAWABLE_XID. In the future, we probably want to make it
13883         faster with G_DISABLE_CHECKS turned on.
13884
13885 2000-06-14  Havoc Pennington  <hp@redhat.com>
13886
13887         * gdk/Makefile.am: add gdkpixmap.c
13888
13889         * gdk/gdk.c: s/gdk_window_init/_gdk_windowing_window_init/
13890         s/gdk_image_init/_gdk_windowing_image_init
13891
13892         * gdk/gdkcolor.c: make ref/unref compat wrappers for GObject
13893         ref/unref
13894
13895         * gdk/gdkcolor.h: make GdkColormap a GObject subclass
13896
13897         * gdk/gdkcompat.h: remove GdkWindowType compat, since
13898         GdkWindowType is now non-deprecated; 
13899         change gdk_window_get_type() compat to be
13900         gdk_window_get_window_type().
13901
13902         * gdk/gdkdnd.h: make GdkDragContext a GObject.
13903
13904         * gdk/gdkdraw.c, gdk/gdkdraw.h: Convert GdkDrawable to a pure
13905         virtual GObject. Make all functions call into the vtable.
13906         Move gdk_image_put() guts in here. Remove GdkDrawableType
13907         and gdk_drawable_get_type(), these are now GdkWindow-specific.
13908         draw_image, get_depth, get_size, set_colormap, get_colormap,
13909         get_visual added to the vtable.
13910         
13911         * gdk/gdkgc.h, gdk/gdkgc.c: Convert GdkGC to a pure virtual 
13912         GObject. Virtualize everything. 
13913         (gdk_gc_new_with_values): remove check for destroyed window,
13914         because now GdkWindow::create_gc will check this.
13915         (gdk_gc_set_values): New function to set GC values, this 
13916         was already implemented but wasn't in the header
13917
13918         * gdk/gdkimage.h, gdk/gdkimage.c: Convert GdkImage to a GObject.
13919
13920         * gdk/gdkinternals.h: Remove _gdk_window_alloc(), remove
13921         _gdk_window_draw_image(), remove _gdk_windowing_window_class,
13922         remove _gdk_window_class; add _gdk_window_impl_get_type() and
13923         _gdk_pixmap_impl_get_type(). Rename gdk_window_init to
13924         _gdk_windowing_window_init, rename gdk_image_init to
13925         _gdk_windowing_image_init.
13926         
13927         * gdk/gdkpango.c: Reflect GObject-ification of PangoContext.
13928         (gdk_draw_layout): Remove check for destroyed window, 
13929         because all the drawable methods already check it.
13930         
13931         * gdk/gdkpixmap.h, gdk/gdkpixmap.c: Convert GdkPixmap to GObject.
13932         Add gdkpixmap.c which contains implementation of GdkDrawable
13933         virtual table (by chaining to a platform-specific implementation
13934         object).
13935         
13936         * gdk/gdkprivate.h: Remove GDK_IS_WINDOW, GDK_IS_PIXMAP, 
13937         GDK_DRAWABLE_DESTROYED. Add GDK_WINDOW_DESTROYED. Replace
13938         GDK_DRAWABLE_TYPE with GDK_WINDOW_TYPE. Remove GdkDrawablePrivate,
13939         GdkWindowPrivate, GdkImageClass, GdkImagePrivate, GdkGCPrivate,
13940         GdkColormapPrivate. 
13941
13942         * gdk/gdktypes.h: #include <glib-object.h>
13943
13944         * gdk/gdkwindow.h, gdk/gdkwindow.c: Convert GdkWindow to GObject.
13945         Move most functionality to platform-specific implementation
13946         object. GdkWindow itself now handles the backing store, then
13947         chains to the platform-specific implementation.
13948         (gdk_window_get_window_type): return GdkWindowType of the window.
13949         (gdk_window_peek_children): New routine, returns the children of 
13950         a GdkWindow
13951         (gdk_window_get_children): Was in X11-specific code and did 
13952         XQueryTree. Changed to simply return a copy of window->children; 
13953         so it can go in cross-platform code.
13954         
13955         * gdk/x11/Makefile.am: fix broken MKINSTALLDIRS path
13956
13957         * gdk/x11/gdkcolor-x11.c: implement X-specific parts of 
13958         GdkColormap; just changed to use the new private data instead
13959         of casting to GdkColormapPrivate.
13960
13961         * gdk/x11/gdkcursor-x11.c: added a couple typechecks to 
13962         gdk_cursor_new().
13963
13964         * gdk/x11/gdkdnd-x11.c: Change the way we access private fields 
13965         (private data member in the GObject). 
13966         (xdnd_manager_source_filter): Function had broken 
13967         error handling, fix it (use gdk_error_trap_push).
13968
13969         * gdk/x11/gdkdrawable-x11.c: This file now implements
13970         a base class for GdkWindowImplX11/GdkPixmapImplX11. This 
13971         base class is purely for the convenience of the X port,
13972         and not part of the interface to cross-platform GDK.
13973
13974         * gdk/x11/gdkevents-x11.c: Reflect various renamings.
13975         
13976         * gdk/x11/gdkgc-x11.c: Implement a subclass of GdkGC that's
13977         specific to X, and returned by the create_gc virtual method
13978         of GdkDrawableImplX11. 
13979         (gdk_x11_gc_set_dashes): Change this to take an array of gint8
13980         rather than gchar, this was also changed in the GdkGC vtable.
13981         (gdk_x11_gc_values_to_xvalues): If GdkGCValues is NULL, or the
13982         mask is 0, return immediately, instead of checking every flag.
13983         This is faster, and keeps us from segfaulting if values is NULL
13984         and the mask contains some nonzero flags.
13985
13986         * gdk/x11/gdkgeometry-x11.c: deal with all the rearranging of
13987         GdkWindow.
13988
13989         * gdk/x11/gdkglobals-x11.c: change type of grab window, since 
13990         GdkWindowPrivate is gone.
13991
13992         * gdk/x11/gdkim-x11.c: rename things that got renamed.
13993
13994         * gdk/x11/gdkimage-x11.c: implement in terms of GObject, and 
13995         remove the image_put stuff that got transferred to GdkDrawable.
13996         
13997         * gdk/x11/gdkinput.c: renamings
13998
13999         * gdk/x11/gdkmain-x11.c: #include <pango/pangox.h>
14000
14001         * gdk/x11/gdkpixmap-x11.c: GObject conversion
14002
14003         * gdk/x11/gdkprivate-x11.h: indentation fixes
14004
14005         * gdk/x11/gdkproperty-x11.c: renamings
14006
14007         * gdk/x11/gdkselection-x11.c: renamings
14008
14009         * gdk/x11/gdkwindow-x11.c: Restructuring and renaming; this now 
14010         implements the platform-specific "impl" object.
14011         Moved gdk_window_get_children to gdk/gdkwindow.c
14012
14013         * gdk/x11/gdkx.h: Remove all the private structs and private datas
14014         that no longer exist. Add declaration of GdkGCX11 object here.
14015         Fix all the macros to still work. 
14016
14017         * gtk/gtk-boxed.defs: Remove GtkStyle, GdkColormap, GdkWindow,
14018         GdkDragContext from the boxed types since they are now GObjects.
14019
14020         * gtk/gtkstyle.h, gtk/gtkstyle.c: Converted GtkStyle to a GObject,
14021         moved xthickness/ythickness into the instance. GtkStyleClass
14022         functions are now in the standard vtable for GtkStyle, so you have
14023         to create a GObject subclass to write a theme engine.
14024         (gtk_style_copy): fixed a leaked PangoFontDescription
14025         (gtk_style_init): renamed gtk_style_realize, so gtk_style_init
14026         can be the standard GObject function.
14027         
14028         * Throughout GTK:
14029         s/style->klass->[xy]thickness/style->[xy]thickness
14030         s/pango_layout_unref/g_object_unref/
14031
14032         * gtk/gtkrc.h, gtk/gtkrc.c: Converted GtkRcStyle to a GObject.
14033         
14034         * gtk/gtksocket.c: Use gdk_window_get_user_data() instead of 
14035         accessing GDK internals.
14036
14037         * gtk/gtkwidget.c: Use gdk_window_peek_children() instead of 
14038         accessing GDK internals.
14039
14040 2000-06-18  Elliot Lee  <sopwith@redhat.com>
14041
14042         * gtk/gtkwindow.c: Don't allow creation of a window bigger than the screen.
14043
14044         * gtk/gtkrange.c: Fix the mega-jumpy-with-lagged-events scrollbar
14045         problem by calculating event position relative to the trough
14046         rather than the slider.
14047         * gtk/gtkdnd.c, gtk/gtkcolorsel.c: Include FB headers if appropriate.
14048
14049         * gdk/gdkgc.h: Add GDK_NOR.
14050
14051         * configure.in, Makefile.am: Add modules top level dir
14052         * configure.in: Only use pangox library if building x11 target.
14053         * gdk/gdkdnd.h: Add GDK_DRAG_PROTO_LOCAL enum for future intra-app use.
14054
14055 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
14056
14057         * gtk/gtkcolorsel.c: Change private class member to be named
14058         private_data throughout the file.
14059
14060         * gtk/gtkcolorsel.h (struct _GtkColorSelection): Change private to
14061         private_data to avoid clashing with keyword.
14062
14063 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
14064
14065         * gdk/gdkdnd.h: Add comment to remove warning.
14066
14067 Sun Jun 18 15:35:35 2000  Pablo Saratxaga <pablo@mandrakesoft.com>
14068
14069         * gtk/gtkrc.cp1251,gtk/Makefile.am: the cp1251 is also used by
14070         Byelorussian language; changed the Makefile and file names 
14071         to reflect that.
14072
14073 Mon Jun 12 16:58:40 2000  Owen Taylor  <otaylor@redhat.com>
14074
14075         * gtk/gtkwindow.c (gtk_window_unmap): Call gdk_window_withdraw
14076         rather than gdk_window_hide; this makes things work
14077         correctly if the window is programmatically hidden while
14078         iconified.
14079
14080 Sun Jun 11 12:46:19 2000  Owen Taylor  <otaylor@redhat.com>
14081
14082         * gtk/gtkdnd.c (gtk_drag_set_default_icon): Fix
14083         cut and paste typo where wrong pixmap was being
14084         unref'ed. (Pointed out by a friend of KUSANO Takayuki.)
14085
14086 Sun Jun 11 10:22:36 2000  Owen Taylor  <otaylor@redhat.com>
14087
14088         * gtk/gtkselection.c (gtk_selection_bytes_per_item):
14089         Add helper function to compute format / bytes 
14090         relationship. Use in a couple places to fix up
14091         errors which assume 8 * format.
14092
14093         * gtk/gtkselection.c (gtk_selection_request): Use 32
14094         rather than 8 * sizeof (GdkAtom), to work correctly
14095         on Alpha.
14096
14097 Thu Jun  8 21:54:51 2000 Christopher Blizzard  <blizzard@redhat.com>
14098
14099         * gtk/Makefile.am (DEPS): deps include libgtk-x11.la, not
14100         libgtk.la
14101         (LDADDS): include libgtk-x11.la and libgdk-x11.la, not the non-x11
14102         versions
14103
14104         * gtk/gtklabel.c (gtk_label_get_text): Make sure that the error
14105         checking macros return NULL since the function has a return value.
14106
14107 Wed Jun  7 15:44:42 2000  Owen Taylor  <otaylor@redhat.com>
14108
14109         * gtk/Makefile.am (LDFLAGS): Add missing backslash that was keeping
14110         GTK+ from building at all.
14111
14112         * gdk/Makefile.am (gdk_c_sources): Fix up some indentation issues.
14113
14114 Mon Jun  5 19:32:53 CEST 2000 Paolo Molaro <lupus@linuxcare.com>
14115
14116         * configure.in, gtk-config.in, gdk/Makefile.am, gdk/*/Makefile.am,
14117         gtk/Makefile.am: make it possible to configure gtk for different
14118         targets on the same platform. The library name is now 
14119         libgtk-$target-$version.so. gtk-config accepts a --target x11|nanox|linux-fb
14120         flag. Only the x11 target compiles right now.
14121         * gdk/gdkregion-generic.h, gdk/gdkregion-generic.c, gdk/gdkpoly-generic.h,
14122         gdk/gdkpolyreg-generic.c: move generic region code in the main GDK dir.
14123         * gdk/nanox/gdk*generic*: delete generic region code.
14124         * gdk/linux-fb/gdk*generic*: delete generic region code.
14125         * README.nanox: update information.
14126         
14127 Tue Jun  6 10:53:59 2000  Owen Taylor  <otaylor@redhat.com>
14128
14129         * gtk/gtktoolbar.c (gtk_toolbar_prepend_widget): Fix to
14130         prepend not append. (Pointed out by Brett Hall.)
14131
14132 Tue Jun  6 01:59:57 2000  Owen Taylor  <otaylor@redhat.com>
14133
14134         * gtk/gtkentry.c (gtk_entry_finalize): Unref the entry's layout.
14135
14136 Mon Jun  5 16:00:09 2000  Owen Taylor  <otaylor@redhat.com>
14137
14138         * gdk/gdk.c (gdk_init_check): Add call to g_type_init() - we'll
14139         need this later, and this makes sure that the atexit for
14140         glib gets called after that for GDK, so atexits are
14141         properly ordered for object leak checking.
14142
14143         * gdk/gdk.c (gdk_exit_func): Call gdk_windowing_exit().
14144
14145         * gdk/x11/gdkmain-x11.c (gdk_windowing_exit): Call 
14146         pango_x_shutdown_display()
14147
14148         * gtk/simple.c (main): Close window on destroy.
14149
14150 Mon Jun  5 11:50:02 2000  Owen Taylor  <otaylor@redhat.com>
14151
14152         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): We need
14153         to treat initial creation different from setting with 
14154         regards to the graphics-exposures parameter, so add a parameter
14155         indicating whether this is initial or not.
14156
14157 Mon Jun  5 13:29:31 2000  Owen Taylor  <otaylor@redhat.com>
14158
14159         * gdk/x11/gdkevents-x11.c: Hack gdk_event_get_graphics_expose()
14160         to sort of work by adding an extra return_exposes arg
14161         to gdk_event_translate() - it might be better to simply
14162         deprecate the function altogether and force people to rewrite
14163         without it. gdk_window_scroll() handles most of it, and where
14164         gdk_window_scroll() doesn't work, simply redrawing more does.
14165
14166         * gtk/gtkwidget.c (gtk_widget_set_default_direction): Fix up
14167         assertion.
14168
14169         * gtk-config.in: Include PANGO_CFLAGS/LIBS.
14170
14171         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Remove a 
14172         bunch of pretty much useless /* Print debugging info */ comments 
14173         which had drifted away from the code they were commenting.
14174
14175 2000-06-02  Havoc Pennington  <hp@pobox.com>
14176
14177         * gtk/testtextbuffer.c: Test program to make sure GtkTextBuffer
14178         is in working order.
14179         
14180         * gtk/testtext.c: Change to reflect anonymous mark API
14181
14182         * gtk/gtktextview.c: Convert from mark names to GtkTextMark*.
14183
14184         * gtk/gtktexttag.h (struct _GtkTextTag): remove the affects_size
14185         field, which was unused.
14186
14187         * gtk/gtktextmarkprivate.h (GTK_IS_TEXT_MARK): add this macro,
14188         saves some typing.
14189
14190         * gtk/gtktextbuffer.c: Switch from mark names to GtkTextMark*   
14191
14192         * gtk/gtktextbtree.c (gtk_text_btree_new): set the not_deleteable
14193         flag on the insertion point and selection bound
14194
14195         Throughout, use GtkTextMark instead of GtkTextLineSegment, and 
14196         make mark-manipulation functions take a GtkTextMark* instead of a
14197         mark name.
14198         
14199         * gtk/gtktextmarkprivate.h: Add a "not_deleteable" flag to 
14200         GtkTextMarkBody; will be used to detect attempts to delete
14201         the permanent marks (insert and selection bound)
14202
14203         * gtk/Makefile.am (noinst_PROGRAMS): add testtextbuffer 
14204
14205 Fri Jun  2 12:56:01 2000  Owen Taylor  <otaylor@redhat.com>
14206
14207         * gtk/gtkwidget.c (gtk_widget_init): Initialize DOUBLE_BUFFERED
14208         flag to on.
14209
14210         * gtk/gtkwidget.c (gtk_widget_draw) gtk/gtkmain.c (gtk_main_do_event): 
14211         Honor DOUBLE_BUFFRED_FLAG
14212
14213         * gtk/gtkwidget.c (gtk_widget_set_double_buffered): Add a
14214         function to set the DOUBLE_BUFFERED flag.
14215
14216         * gtk/gtkwidget.h: Add GTK_DOUBLE_BUFFERED flag to indicate whether
14217         or not exposes done on the widget should be double-buffered.
14218
14219         * gtk/gtkenums.h (GtkTextDirection): Reverse order of enumerations
14220         to be what would be expected. (Fixes problem with a
14221         g_return_if_fail() validating a TextDirection enumeration)
14222
14223 Thu Jun  1 23:05:13 2000  Owen Taylor  <otaylor@redhat.com>
14224
14225         * gtk/gtkwidget.c: Remove all references to 
14226         offscreen flag which was no longer used.
14227
14228         * gtk/gtkprivate.h (enum): Remove unused flags and compress.
14229
14230         * gtk/gtkframe.c (gtk_frame_set_label_widget): Check
14231         for non-null label_widget->parent.
14232
14233         * gtk/gtkentry.c: Get rid of code to deal with PangoAttribute 
14234         which no longer was used.
14235
14236         * gdk/gdkpango.c (gdk_pango_context_get_info): make static.
14237
14238         * gdk/gdkpango.c (gdk_draw_layout[_line]): Add checks
14239         for null arguments.
14240
14241         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): add
14242         check for destroyed windows.
14243
14244 Thu Jun  1 13:48:45 2000  Owen Taylor  <otaylor@redhat.com>
14245
14246         * gtk/gtkimmulticontext.c: Add a finalize method and unref
14247         the slave context there.
14248
14249         * gtk/gtkinvisible.[ch]: Make reference counting behavior
14250         identical to GtkWindow.
14251
14252 Thu Jun  1 01:54:11 2000  Owen Taylor  <otaylor@redhat.com>
14253
14254         * Makefile.am gdk/gdkpango.c: Copy the layout render function from
14255         pangox to here, so we can write them independent of rendering
14256         system, using GDK primitives.
14257
14258         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c
14259         gdk/x11/gdkdrawable-x11.c: Remove draw_layout() from the vtable,
14260         since we have a rendering-system independent implementation in
14261         terms of draw_glyphs().
14262         
14263         * gdk/gdkpango.c gdkdrawable.h (gdk_draw_layout_line): New
14264         function to render a single line.
14265
14266         * gdk/x11/gdkpango.c: Move the guts of this file mostly
14267         into ../gdkpango.c, which simplifies things, since we
14268         don't have to deal with raw X gc's.
14269
14270 Fri May 19 04:28:16 2000  Owen Taylor  <otaylor@redhat.com>
14271
14272         * gtk/gtktextlayout.[ch]: Add get_log_attrs() function to
14273         get the logical attributes for a given GtkTextLine.
14274
14275 Tue May 30 16:05:39 2000  Owen Taylor  <otaylor@redhat.com>
14276
14277         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Track
14278         g_locale_get_codeset() to g_get_codeset() change.
14279
14280 Tue May 30 15:03:19 2000  Owen Taylor  <otaylor@redhat.com>
14281
14282         * gtk/testcalendar.c (calendar_font_selection_ok): Use font
14283         descriptions.
14284
14285         * gtk/gtkentry.c (gtk_entry_draw_text): Center text within
14286         the entry.
14287
14288         * gtk/gtkfontsel.c (gtk_font_selection_dialog_init): Start of
14289         redoing (vastly simplifying) for Pango. Still needs quite
14290         a bit of work. (Size selection is currently poor. List of 
14291         predefined sizes is not a good idea, since all of these
14292         sizes won't necessarily be distinct.)
14293
14294 Tue May 30 13:50:19 2000  Owen Taylor  <otaylor@redhat.com>
14295
14296         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Handle
14297         CODESET results for LANG=C.
14298
14299 Mon May 29 15:49:10 2000  Owen Taylor  <otaylor@redhat.com>
14300
14301         * gtk/gtkrc.[ch]: Add a 'font_name' declaration to RC
14302         which takes a stringized pango font description;
14303         ignore the older 'font' and 'fontset' declarations.
14304
14305         * gtk/gtkstyle.c gtk/gtkrc.c: Fill in the style->font
14306         field with a GdkFont derived via gdk_font_from_description(),
14307         for compatibility. (Should we just remove it entirely?
14308         Probably too much compatibility breakage, but people
14309         should be migrating to the new Pango stuff as quickly
14310         as possible.)
14311
14312 Mon May 29 15:47:41 2000  Owen Taylor  <otaylor@redhat.com>
14313
14314         * gtk/gtkentry.c gtk/gtkclist.c: s/pango_font_unref/g_object_unref/.
14315
14316 Mon May 29 15:44:46 2000  Owen Taylor  <otaylor@redhat.com>
14317
14318         * gtk/gtkcalender.c: Roughly pango-ized. Really needs 
14319         redoing; there are some bugs in size allocation right
14320         now, the semi-existant distinction between header / day
14321         fonts was removed, but, with Pango, could actually
14322         be made functional in a nice way.
14323         
14324         * gtk/testcalender: Move calender from examples into this
14325         directory as a test program. (We really need to restrcture
14326         testgtk into a whole directory full of tests for every
14327         widget or functionality group, separated into multiple .c
14328         files.)
14329
14330 Mon May 29 15:19:56 2000  Owen Taylor  <otaylor@redhat.com>
14331
14332         * gtk/testgtk.c (file_exists): Fix stupid typo that
14333         was keeping RC file from being loaded.
14334
14335         * gtk/testgtkrc gtk/testgtkrc2: Test new pango-ized
14336         RC file font code.
14337
14338 Mon May 29 14:31:27 2000  Owen Taylor  <otaylor@redhat.com>
14339
14340         * gdk/gdkfont.h gdk/x11/gdkfont-x11.c (gdk_font_from_description):
14341         Add function to load a GdkFont from a PangoFontDescription.
14342
14343 2000-05-29  Tor Lillqvist  <tml@iki.fi>
14344
14345         * gdk/win32/gdkevents-win32.c (gdk_WindowProc): The local "event"
14346         variable should be of type GdkEventPrivate.
14347
14348 Fri May 26 17:16:40 2000  Owen Taylor  <otaylor@redhat.com>
14349
14350         * gtk/frame.[ch] gtkaspectframe.c: Make frame widgets able
14351         to have any widget for the label, use a GtkLabel widget
14352         to display the text. (Based partially on a patch from
14353         Anders Carlson.)
14354
14355         (Quite a bit of code reorganization - strip 90% of the
14356         guts out of gtkaspectframe and add a single virtual
14357         func to GtkFrameClass - compute_child_allocation.)
14358
14359 Fri May 26 12:00:02 2000  Owen Taylor  <otaylor@redhat.com>
14360
14361         * gtk/gtkctree.c gtk/gtkclist.[ch]: Pangoized.
14362         (Removed clist->row_center_offset field because caching
14363         it wasn't saving time or code, added private function
14364         _gtk_clist_create_cell_layout()).
14365
14366 Wed May 24 15:59:37 2000  Owen Taylor  <otaylor@redhat.com>
14367
14368         * gtk/gtkaccellabel.c: Pangoized.
14369
14370         * gtk/[hv]ruler.c: Pangoized
14371
14372 Mon May 22 19:23:59 2000  Owen Taylor  <otaylor@redhat.com>
14373
14374         * gtk/gtkfilesel.c (gtk_file_selection_init):
14375         Use gtk_clist_set_column_auto_resize() to remove need
14376         need for manual column width computations.
14377
14378 Mon May 22 18:50:26 2000  Owen Taylor  <otaylor@redhat.com>
14379
14380         * gtk/gtktooltips.[ch]: Replace custom drawing with a GtkLabel, 
14381         ensuring Pango correctness, and considerably simplifying the
14382         code.
14383         
14384         * gtk/gtklabel.c gtk[hv]scale.c: 1000 => PANGO_SCALE.
14385
14386         * gtk/gtklabel.c (gtk_label_size_request): Fixed incorrect
14387         getting of numbers of lines.
14388
14389         * gtk/gtklabel.c (gtk_label_size_request): Set the requisition
14390         to the actual requested width of the lable, not to the wrap
14391         width we set.
14392
14393         * gtk/gtktextchild.h: Remove extraneous include of gtk/gtk.h.
14394
14395         * gtk/gtktextbtree.c gtk/gtktextbuffer.c gtk/gtktextlayout.c
14396           gtk/gtktextview.c gtk/gtktextview.[ch]: Fix up includes.
14397
14398         * gtk/gtktextview.c: Fix structure inheritance.
14399
14400         * gtk/gtkprogressbar.c: Pangoize.
14401
14402 Mon May 22 15:47:30 2000  Owen Taylor  <otaylor@redhat.com>
14403
14404         * gtk/gtktextview.c (gtk_text_view_get_first_para_iter): Encapsulate
14405         in a function.
14406
14407         * gtk/gtktextlayout.c (find_display_line_above): Fixed
14408         bug with computing line tops.
14409
14410         * gtk/gtktextview.c (changed_handler): Fix < , <= confusion.
14411
14412 Thu May 18 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
14413
14414         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Fix up the x_offset
14415         and y_offset coordinates to do what we need now. (The offset between
14416         buffer and layout coordinates has been reintroduced, but is a 
14417         bit different than before.)
14418
14419         * gtk/gtktextview.[ch]: No longer inherit from GtkLayout; instead
14420         handle the adjustments ourselves, and scroll as necessary using
14421         the new gdk_window_scroll().
14422         
14423         The advantage of this is that when we are incrementally revalidating,
14424         we are essentially rearranging things around the visible portion
14425         of the screen. With the old setup, the visible portion of the
14426         screen was moved around in the layout, so scrolling and redrawing
14427         to track that caused jumping of the display. Since we now
14428         control the scrolling ourselves, we can suppress this and
14429         only redraw when things actually change.
14430
14431 Thu May 18 18:47:25 2000  Owen Taylor  <otaylor@redhat.com>
14432
14433         * gtk/gtktextbtree.c (redisplay_mark): We need to invalidate
14434         the region not just redisplay it after-all, since we store the
14435         cursors in the LineDisplay. (Ugly interactions here between
14436         GtkLayout and GtkTextBTree here.)
14437         
14438         * gtk/gtktextbtree.c (redisplay_region): Fixed reversed comparison.
14439
14440 Thu May 18 18:43:21 2000  Owen Taylor  <otaylor@redhat.com>
14441
14442         * gdk/gdkwindow.h gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): 
14443         Added function to scroll contents of a window while keeping the
14444         window constant. Works by XCopyArea or guffaw-scrolling depending
14445         on the details of how the window is set up. (guffaw-scrolling
14446         still needs to be filled in.)
14447
14448 Wed May 17 22:36:53 2000  Owen Taylor  <otaylor@redhat.com>
14449
14450         * gtk/gtktextiter.c gtk/gtkmain.c: Add a debug key for the text widget,
14451         move the debugging that was tied to a global variable
14452         to that.
14453
14454         * gtk/gtkmarshal.list: Add NONE:INT,INT,INT
14455
14456         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.c: Keep a separate
14457         validated flag, in line data instead of setting height/width to
14458         -1. This allows us to perform operations with partially invalid
14459         buffer (using the old size for invalid lines) and thus to do
14460         incremental vaidation. Keep height/width aggregates up to date
14461         when deleting text and rebalancing the tree.
14462
14463         * gtk/gtktextbtree.[ch]: Add functions validate a line
14464         (gtk_text_btree_validate_line), and to validate up
14465         to a number of pixels (gtk_text_btree_validate).
14466
14467         * gtk/gtktextlayout.[ch]: Add an ::invalidated signal
14468         that indicates that something is changed and a revalidation
14469         pass is needed. Change ::need_repaint to ::changed, and
14470         make it take old and new yranges instead of a rectangle.
14471
14472         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.[ch]: Move
14473         the line_data_destroy() function from 
14474         gtk_text_btree_add_view() to a virtual function in 
14475         GtkTextLayout
14476
14477         * gtk/gtktextbtree.[ch]: Remove gtk_text_btree_get_damage_range(),
14478         since we are handling partial repaints in a different fashion
14479         now.
14480
14481         * gtk/gtktextbtree.[ch]: Only repaint the changed portion
14482         of the selection instead of queueing a repaint on the
14483         entire widget.
14484
14485         * gtk/gtktextbuffer.[ch] gtk/gtktextbtree.[ch]: Move
14486         get_selection_bounds() down to btree, make the function
14487         in buffer a wrapper around the btree function.
14488
14489         * gtk/gtktextlayout.[ch]: Add functions to check if the
14490         layout is valid and to recompute either a range of pixels
14491         aroudn a line or a certain total number of pixels.
14492
14493         * gtk/gtktextlayout.[ch]: Cache a single line display;
14494         now that we only redraw the needed portions, the hit rate
14495         for this cache is quite high.
14496         
14497         * gtk/gtktextview.[ch]: Keep track of the first paragraph
14498         on the screen so that when re-laying-out the buffer, we can
14499         keep the same place. This requires connecting to ::value_changed
14500         on the adjustments
14501
14502         * gtk/gtktextview.[ch]: Add idle functions to revalidate
14503         the buffer after we receive an ::invalidated signal.
14504         
14505 Wed May 17 22:10:47 2000  Owen Taylor  <otaylor@redhat.com>
14506
14507         * gtk/gtklayout.c (gtk_layout_size_allocate): Set upper
14508         to max of allocation and layout size, not just to the
14509         layout size.
14510
14511         * gtk/gtk[hv]scrollbar.c (gtk_[hv]scrollbar_calc_slider_size): 
14512         Invalidate window so it gets redrawn properly.
14513
14514         * gdk/gdkwindow.c (gdk_window_invalidate_rect): Allow rect == NULL
14515         to mean the entire window.
14516
14517         * gdk/gdkevents.h: Move definition for GDK_PRIORITY_REDRAW
14518         into public header.
14519
14520 Mon May 15 14:51:31 2000  Owen Taylor  <otaylor@redhat.com>
14521
14522         * gtk/gtktextmark.c (gtk_text_mark_get_name): Add function
14523         to get the name of a mark.
14524
14525         * gtk/gtktextlayout.c (gtk_text_layout_get_line_at_y): Add a function
14526         to find the paragraph from a y position.
14527
14528 Thu May 11 12:57:20 2000  Owen Taylor  <otaylor@redhat.com>
14529
14530         * gtk/gtktextbtree.c (gtk_text_btree_node_invalidate_upward): Valid
14531         nodes have width/height >= 0, not > 0.
14532
14533 Tue May  9 21:29:06 2000  Owen Taylor  <otaylor@redhat.com>
14534
14535         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c (gtk_text_layout_get_line_display):
14536         Add a size_only flag, so when we only need the size, we don't create
14537         useless appearance attributes.
14538
14539         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Remove
14540         duplicate setting of font description.
14541
14542         * gtk/gtkscale.c: Use PANGO_SCALE instead of 1000 
14543
14544 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
14545
14546         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
14547         EXTRA_DIST. It does not work well when the file that
14548         everything depends on is not in the tarball.
14549
14550 Wed Apr 26 00:56:14 2000  Owen Taylor  <otaylor@redhat.com>
14551
14552         * gtk/testgtk.c: Some hacks and fixes so that it basically
14553         works when not sitting in the GTK+ build tree.
14554
14555 2000-05-03  Havoc Pennington  <hp@redhat.com>
14556
14557         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
14558         Properly determine the ordering of the tag root and the current
14559         line within the tree. Previous algorithm only worked if the tag
14560         root's immediate parent was the common root of both the current
14561         line and the tag root.
14562
14563 Wed Apr 26 00:43:00 2000  Owen Taylor  <otaylor@redhat.com>
14564
14565         * gtk/gtktextlayout.c (set_para_values): Fix some bugs in
14566         alignment.
14567
14568         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Track
14569         the widget text directional dynamically.
14570
14571         * gtk/gtktextview.[ch]: Added functions to get and set default
14572         wrap mode.
14573
14574 Tue Apr 25 23:47:38 2000  Owen Taylor  <otaylor@redhat.com>
14575
14576         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Fix bug
14577         in cursor location computation.
14578
14579 Tue Apr 25 23:22:59 2000  Owen Taylor  <otaylor@redhat.com>
14580
14581         * gtk/gtklayout.c (gtk_layout_set_size): Clamp hadjustment/
14582         vadjusment values properly when layout gets smaller.
14583
14584         * gtk/gtktextview.c (need_repaint_handler): Areas being
14585         passed in are far completely inaccurate, and sometimes
14586         too small, so, for now, just queue a redraw on the
14587         whole visible region.
14588
14589 2000-04-25  Havoc Pennington  <hp@redhat.com>
14590
14591         * gtk/gtktextbtree.c (summary_destroy): new function to 
14592         destroy tag summary nodes
14593         (gtk_text_line_next_could_contain_tag): this function was 
14594         totally broken if the line passed in wasn't below the tag
14595         root. Fix it.
14596         (gtk_text_btree_first_could_contain_tag): In the tag == NULL 
14597         "wildcard" case, we have to do a linear scan. Blah.
14598         (gtk_text_btree_last_could_contain_tag): In tag == NULL case,
14599         we have to do the linear scan
14600         (tag_removed_cb): When a tag is removed from the tag table, 
14601         remove the GtkTextTagInfo node from the btree.
14602         (gtk_text_btree_spew): Implement the spew function, for 
14603         our debugging pleasure.
14604
14605 Tue Apr 25 19:40:18 2000  Owen Taylor  <otaylor@redhat.com>
14606
14607         * gtk/gtktextlayout.c (gtk_text_layout_set_buffer): Fix
14608         a problem with referring to the wrong buffer.
14609
14610         * gtk/gtkentry.c: Fix focus-in/focus-out confusion.
14611
14612         * gtk/gtkrc.c gtk/gtkstyle.c: Moving setting default
14613         font description to gtk_style_new() - otherwise things
14614         don't work without a .gtkrc file.
14615
14616         * gtk/gtktextbuffer.c (gtk_text_buffer_new): Sink the
14617         tags table if we create it ourself, too.
14618
14619         * gdk/gdktypes.h (enum): Move GDK_RELEASE_MASK, since
14620         it was conflicting with XKB modifiers.
14621
14622         * gtk/gtktextview.[ch]: Add simple support for 
14623         GtkIMContext.
14624
14625 Mon Apr 24 19:34:18 2000  Owen Taylor  <otaylor@redhat.com>
14626
14627         * gtk/gtkentry.c (gtk_entry_move_cursor_visually): Fix problem
14628         with deletion from last commit.
14629
14630 Mon Apr 24 19:29:40 2000  Owen Taylor  <otaylor@redhat.com>
14631
14632         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Set the language
14633         in the context from the current locale.
14634         
14635         * gtk/gtkentry.c (gtk_entry_size_request): Use language from the
14636         context, not hardcoded value.
14637
14638         * gtk/gtkentry.c (gtk_entry_move_cursor): Make character movement visual,
14639         not logical.
14640
14641 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
14642
14643         * gtk/gtkentry.c gtk/gtktextdisplay.c: Don't handle selections as
14644         attributes - that doesn't handle partial-glyph selection
14645         properly. Instead use new pango_layout_line_get_x_ranges()
14646         functionality to draw the selection.
14647
14648         * gtk/gtkentry.c: Simplify code since pango_layout_line_index_to_x()
14649         now properly handles out-of-range coordinates.
14650
14651         * gtk/gtktextbuffer.c: Emit "mark_set" when the cursor is moved.
14652
14653         * gtk/gtktextiter.h gtk/gtktextiterprivate.h: Make gtk_text_iter_get_line_byte()
14654         public.
14655
14656         * gtk/gtktextlayout.[ch]: Properly set the direction in the PangoContext
14657         for paragraphs opposite to the base direction of the widget.
14658
14659         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c: Fixes for alignment.
14660
14661         * gtk/gtktextlayout.c: Don't split segments on marks, since that
14662         causes Arabic words to reshape as you cursor through.
14663
14664         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Implement virtual
14665         cursor position when moving vertically with the arrow keys and
14666         scrolling with page-up/page-down. (Arrow keys save only the X,
14667         scrolling saves both X and Y.)
14668
14669         This means you can line-up / line-down or page-up / page-down
14670         without losing your place, and also that moving vertically
14671         with the cursor keys keeps the same X position, not the same
14672         character count:
14673
14674         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Make vertical
14675         arrow keys move by display lines, not paragraphs.
14676
14677 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
14678
14679         * gtk/gtklayout.c: Make sure that the bin window is at least
14680         as big as the allocation. (Should we also make sure that the
14681         bin window is big enough to completely cover widget->window?)
14682
14683         * gtk/gtktextview.c (gtk_text_view_get_visible_rect): Add
14684         function to get the onscreen rectangle.
14685
14686         * gdk/x11/gdkwindow-x11.c (gdk_window_get_pointer): Correctly account
14687         for offsets in window coordinates.
14688
14689 Sun Apr 16 16:13:27 2000  Owen Taylor  <otaylor@redhat.com>
14690
14691         * gtk/gtkentry.c (gtk_entry_get_cursor_locations): Fix index/offset
14692         confusion.
14693
14694         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Set the default direction
14695         from the widget direction.
14696
14697         * gtk/gtktexttag.c gtk/gtktexttagprivate.h (gtk_text_tag_set_arg): 
14698         Add a "direction" attribute.
14699
14700         * gtk/gtktextview.c: global s/tkxt/text_view/.
14701
14702         * gtk/testtext.c: Added long block of text in Arabic, to test out
14703         the direction attributes. (Some problems with the shaping system
14704         for arabic become obvious - like the fact the cursor splits words
14705         into unjoined pieces.)
14706
14707 Fri Apr 14 12:54:34 2000  Owen Taylor  <otaylor@redhat.com>
14708
14709         * gtk/gtktextdisplay.c (render_layout): Add overstrike handling.
14710
14711         * gtk/gtktextlayout.c: Fix up alignment.
14712
14713         * gtk/testtext.c: Add some tests for centering, wrapping.
14714
14715 Fri Apr 14 09:26:22 2000  Owen Taylor  <otaylor@redhat.com>
14716
14717         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c gdk/x11/gdkdrawable-x11.c:
14718         Add a draw_glyphs() operation to the drawable vtable and gdk_draw_glyphs().
14719         If we wrote GTK+-specific layout-render function this could just replace
14720         the draw_layout() operation in the vtable.
14721
14722         * gtk/gtkentry.c: Move guts of gtk_entry_get_cursor_locations to 
14723         pango_layout_get_cursor_pos() and use that function.
14724
14725         * gtk/gtktextchild.[ch]: add gtk_ onto pixmap_segment_new(), since it
14726         is a non-static symbol.
14727
14728         * gtk/gtktextbtree.[ch]: Replace gtk_text_btree_find_line_data_by_y()
14729         with gtk_text_btree_find_line_by_y()
14730
14731         * gtk/gtktextdisplay.c: Rewrote for Pango - uses a custom layout
14732         renderer that handles GtkTextAppearance attributes.
14733
14734         * gtk/gtktexttag.[ch] gtk/gtktexttagprivate.h: 
14735
14736           - Move the values in the style that don't affect geometry into a
14737             GtkTextAppearance structure.
14738           - Change underline to take a PangoUnderline and "font" a string
14739             representation of a font description
14740           - Add a "font_desc" attribute which takes a FontDescription structure.
14741
14742         * gtk/gtktextlayout.[ch]:
14743
14744           - Get rid of the display-line list per each line. Instead, we
14745             generate, on demand, a GtkTextLineDisplay structure which]
14746             contains a PangoLayout * and other necesary information
14747             (offsets, cursor locations) for displaying a paragraph.
14748           - Get rid of the code to wrap lines, create display chunks,
14749             etc. Instead, we just go through a paragraph and convert
14750             it into the necessary inputs to a PangoLayout.
14751           - Implement a new attribute type, GtkTextAttrAppearance. This
14752             holds a GtkTextAppearance, and is used to pass colors, 
14753             stipple, etc, through from the layout to the display without
14754             having to use lots and lots of individual attributes.
14755           - Reimplement gtk_layout_get_iter_at_pixel() gtk_layout_get_iter_pos()
14756             in terms of PangoLayout functions.
14757         
14758         * gtk/gtktextview.c: 
14759          
14760           - Handle passing the necessary PangoContext to the layout
14761           - Some fixups in painting to deal with the automatic backing store
14762             and offsetting of GTK+-1.4
14763           - Add a style_set handler so that the default style reacts
14764             properly to theme changes.
14765         
14766         * gtk/gtktext?*.[ch]: Random code-style fixes.
14767
14768         * gtk/testtext.c: Substitute in languages that Pango handles now for Thai
14769
14770 Mon Apr 10 10:33:45 2000  Owen Taylor  <otaylor@redhat.com>
14771
14772         * gtk/gtktext?*.[ch]: Check in Havoc's port of the Tk text widget,
14773         in original form preparatory to Pango-ization and gdkimcontext-ization.
14774
14775 Thu Apr  6 19:25:39 2000  Owen Taylor  <otaylor@redhat.com>
14776
14777         * gtk/gtkimcontext.c: Move default implementations to real_* vfuncs,
14778         so that we can derive from gtkimcontext in language bindings properly.
14779
14780 Thu Apr  6 16:02:52 2000  Owen Taylor  <otaylor@redhat.com>
14781
14782         * gtk/gtkimcontextsimple.[ch]: Use gdk_keyval_to_unicode to gdk_unicode_to_keyval.
14783         Add a compose table including (almost) all the compose combinations
14784         from X. This is 6k of static, shared data as opposed to 50k or so of dynamic
14785         data in the XIM implementation.
14786
14787         * gdk/gdk.h gdk/gdkkeyuni.c gdk/win32/gdkevents-win32.c (gdk_keyval_to_unicode, gdk_unicode_to_keyval):
14788         Moved functions to convert keyvalues from and to unicode here from
14789         the win32 port and made them public.
14790
14791 Wed Apr  5 16:37:29 2000  Owen Taylor  <otaylor@redhat.com>
14792
14793         * gtk/gtkeditable.c (gtk_editable_insert_text): Allow new_text_length == -1.
14794
14795 Wed Apr  5 16:27:45 2000  Owen Taylor  <otaylor@redhat.com>
14796
14797         * gtk/gtkimcontext.[ch]: Base class for new input context system
14798
14799         * gtk/gtkimmulticontext.[ch]: Proxy input context that allows
14800         the real input context implementation to be loaded from modules
14801         and switched on the fly.
14802
14803         * gtk/gtkcontextsimple.[ch]: Simple implementation of an input
14804         context that just does direct keysymbol => unicode translation.
14805
14806         * gtk/gtkentry.[ch]: Start switching editing over to using
14807         GtkInputContext. (No handling of preedit yet.)
14808
14809 Wed Apr  5 15:48:41 2000  Owen Taylor  <otaylor@redhat.com>
14810
14811         * gtk/gtktypeutils.h (GTK_CHECK_GET_CLASS): Fix problem with one too
14812         many substitutions. (klass should not be subsituted.)
14813
14814 Wed Apr  5 00:18:14 2000  Owen Taylor  <otaylor@redhat.com>
14815
14816         * configure.in: Add checks for Pango
14817
14818         * configure.in docs/Makefile.am: Add test for sgml2html
14819         and allow 'make dist' without building html, but print out
14820         warnings in that case. (For making snapshots)
14821
14822         * gdk/Makefile.am gdk/x11/Makefile.am gtk/Makefile.am:
14823         Add Pango libraries and C flags
14824
14825         * gdk/gdkdraw.c gdk/gdkdrawable.h gdkwindow.c gdk/x11/gdkdrawable-x11.c:
14826         Add function (gdk_draw_layout) to draw a pango layout.
14827
14828         * gdk/gdkpango.h gdk/x11/gdkpango-x11.c: New file with functions
14829         for getting Pango contexts for GDK.
14830
14831         * gtk/gtkeditable.c: Get rid of dead code gtk_editable_parent_set()
14832
14833         * gtk/gtkentry.[ch]: Complete rewrite to use Pango, add bidirectional
14834         editing.
14835
14836         * gtk/gtkentry.c: Hack in simple Hebrew input with direct
14837         keysym => unicode translations. More languages can be added
14838         here, but real input-method support is needed.
14839
14840         * docs/Changes-1.4.txt: Added note about entry behavior.
14841         
14842         * gtk/gtkenums.h gtk/gtkwidget.[ch] testgtk.c gtkprivate.h: Add functions
14843         to set the reading direction for a widget and the global direction.
14844         Add test which allows toggling the global direction. Two private
14845         flags are used to store the direction. (GTK_DIRECTION_SET + GTK_DIRECTION_LTR)
14846
14847         * gtk/gtkcheckbutton.c gtk/gtkframe.c gtk/gtkhbbox.c gtk/gtkhbox.c
14848           gtk/gtkradiobutton.c gtk/gtkspinbutton.c gtk/gtktable.c 
14849
14850         * gtk/gtk[hv]scale.c gtk/gtkscale.[ch]: Draw numbers using Pango
14851
14852         * gtk/gtklabel.[ch]: Moved to Pango and considerably rewritten. Line breaking,
14853         underlining now handled by Pango.
14854
14855         * gtk/gtkstyle.[ch] gtk/gtkrc.[ch]: Add a PangoFontDescription
14856         to RCStyle and Style. (Having both this and the old font name and GdkFont 
14857         is temporary.)
14858
14859         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_{context,layout}): Added 
14860         convenience functions for creating contexts and layouts for widgets.
14861
14862         * gtk/testgtk.c: Enhance label tests with multilingual labels.
14863
14864 2000-05-29  Jonathan Blandford  <jrb@redhat.com>
14865
14866         * gtk/gtkclist.c (gtk_clist_column_titles_active): let you set the
14867         titles to be active, even if they aren't visible.
14868         (gtk_clist_column_titles_passive):  Ditto.
14869
14870 2000-05-21  Nils Barth  <nils_barth@post.harvard.edu>
14871
14872         * gtkmenu.c:
14873         * gtkmenu.h:
14874         * gtktypeutils.h: Spelling/grammar fixes in comments.
14875
14876 Tue May 23 12:25:07 CEST 2000 lupus <lupus@debian.org>
14877
14878         * gdk/nanox/*.h: add missing header files.
14879
14880 Fri May 19 11:52:59 2000  Tim Janik  <timj@gtk.org>
14881
14882         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set
14883         send_event to TRUE.
14884         (gtk_drawing_area_size): queue a resize.
14885
14886 Sun Mar 26 03:21:28 2000  Tim Janik  <timj@gtk.org>
14887
14888         * gtk/gtksignal.c (gtk_signal_handlers_destroy): when unref-ing
14889         the handlers, also invalidate them. bug nailed down by Karl Nelson
14890         <kenelson@ece.ucdavis.edu>.
14891
14892 Fri May 19 06:49:23 2000  Tim Janik  <timj@gtk.org>
14893
14894         * gtk/gtkfontsel.c (gtk_font_selection_get_font_name): handle
14895         "(nil)" foundries, patch from Grigorios Magklis.
14896
14897         * gtk/gtkfontsel.c (gtk_font_selection_load_font): don't crash
14898         on non-available fonts, based on a patch by Grigorios Magklis
14899         <maglis@cs.rochester.edu>.
14900
14901 2000-05-18  Elliot Lee  <sopwith@redhat.com>
14902
14903         * gdk/x11/gdkregion-generic.c: If a region does not have any
14904         rectangles, or if the specified rectangle is not in the region, then return GDK_OVERLAP_RECTANGLE_OUT
14905         instead of GDK_OVERLAP_RECTANGLE_IN.
14906
14907 2000-05-17  Jonathan Blandford  <jrb@redhat.com>
14908
14909         * gtk/gtklayout.c (gtk_layout_map): Remove references to
14910         OFFSCREEN, as it is no longer necessary.
14911
14912 Wed May 17 10:52:12 2000  Owen Taylor  <otaylor@redhat.com>
14913
14914         * gtk/gtkcolorsel.c: Patch from David Santiago
14915         <mrcooger@cyberverse.com> to change things so that the 
14916         indicator of the active palette entry is done independently,
14917         not via the focus, since it should always be visible.
14918
14919 2000-05-17  Tor Lillqvist  <tml@iki.fi>
14920
14921         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Plug same
14922         refcount leaks as in the X11 backend.
14923
14924         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Logging
14925         cosmetics.
14926
14927         * gdk/win32/gdkwindow-win32.c: Similar changes as in X11
14928         backend. Add _gdk_windowing_window_destroy().
14929
14930         * gtk/gtkcolorsel.c: Include correct backend-specific header.
14931         Don't use XColor unless on X11. (No GDK_VISUAL_STATIC_COLOR
14932         either, but these probably do exist on nanox?)
14933         
14934         * gtk/gtkhsv.c: Use G_PI (fresh from <glib.h>) instead of M_PI
14935         which isn't necessarily defined by <math.h>.
14936
14937         * gtk/gtkobject.c (gtk_object_init): Don't go up the class
14938         ancestry past GtkObject.
14939
14940         * gtk/gtktypeutils.h: Mark GTK_TYPE_IDENTIFIER for export/import
14941         from DLL on Win32.
14942
14943         * gtk/gtk.def: Update corresponding to recent changes.
14944
14945         * gtk/makefile.{cygwin,msc}: Updates.
14946
14947 Fri May 12 18:46:51 2000  Owen Taylor  <otaylor@redhat.com>
14948
14949         * docs/Changes-1.4.txt: A bit of editing.
14950
14951         * gdk/gdkwindow.c (_gdk_window_clear_update_area) 
14952         * gdk/x11/gdkwindow-x11.c (gdk_window_hide): Add a function
14953         to clear the update area for the window, and clear it
14954         when hiding a window.
14955
14956         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Ignore
14957         if window destroyed.
14958
14959         * gdk/gdkwindow.c (gdk_window_end_paint): Likewise.
14960
14961         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c gdk/gdkinternals.h: Move 
14962         gdk_window_destroy() to the generic code, since there was a lot of 
14963         window-system-independent logic it in. Add a function:
14964         
14965          _gdk_window_destroy() 
14966
14967         to the internal API to destroy a window without unreferencing it.
14968         Add a function:
14969
14970          _gdk_windowing_window_destroy()
14971
14972         That does the windowing-system-dependent part of destroying 
14973         the window.
14974
14975 Fri May 12 11:07:41 2000  Owen Taylor  <otaylor@redhat.com>
14976
14977         * gtk/testgtk.c: Fix various memory leaks of pixmaps.
14978
14979 Fri May 12 11:06:10 2000  Owen Taylor  <otaylor@redhat.com>
14980
14981         * gtk/gtkwidget.c docs/Changes-1.4.txt (gtk_widget_shape_combine_mask): 
14982         Make gtk_widget_shape_combine_mask() keep a reference count on
14983         the pixmap since it keeps it around.
14984
14985 Fri May 12 10:53:29 2000  Owen Taylor  <otaylor@redhat.com>
14986
14987         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix refcount
14988         leak.
14989
14990         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Fix refcount
14991         leak with event filters.
14992
14993 Thu May 11 14:29:44 2000  Owen Taylor  <otaylor@redhat.com>
14994
14995         * gtk/gtkdnd.c (gtk_drag_dest_set_internal): Remove the
14996         signal handlers with the right data arguments. (Fixes
14997         some warnings when a widget was repeatedly set as a drag
14998         destination.)
14999
15000         * gdk/x11/gdkdnd-x11.c (gdk_window_register_dnd): Set data on the
15001         window so we can avoid avoid setting the DND properties on the
15002         toplevel window repeatedly.
15003
15004 2000-05-13  Tor Lillqvist  <tml@iki.fi>
15005
15006         * gdk/win32/gdkwin32.h: Define more message types missing from
15007         mingw headers.
15008
15009         * gdk/win32/gdkevents-win32.c (gdk_event_translate): On WM_DESTROY
15010         call gdk_window_destroy_notify(). It was never called. This
15011         probably meant that the GdkWindow was never freed. Thanks Owen for
15012         noticing (!).
15013
15014         * gdk/win32/gdkwindow-win32.c (gdk_window_internal_destroy): Mark
15015         window as destroyed before calling DestroyWindow(). DestroyWindow()
15016         causes a call to the window procedure (gdk_WindowProc), which
15017         calls gdk_event_translate(), which calls
15018         gdk_window_destroy_notify(), which gets confused unless the window
15019         is set as destroyed.
15020
15021         * gdk/win32/gdkcolor-win32.c (gdk_win32_color_to_string): Rename
15022         this function to indicate it's win32 only. Put inside #ifdef
15023         G_ENABLE_DEBUG.
15024
15025         * gdk/win32/gdkevents-win32.c (gdk_win32_message_name): New
15026         debugging function. (gdk_event_translate:) Add a default branch
15027         that uses the above function to print debug messages with all
15028         Windows messages symbolically.
15029
15030         * gdk/win32/gdkprivate-win32.h: Declare it, and
15031         gdk_win32_color_to_string, but only if G_ENABLE_DEBUG.
15032
15033 Fri May 12 20:07:32 2000  Tim Janik  <timj@gtk.org>
15034
15035         * gtk/gtkcolorseldialog.c: don't include gtk/gtkintl.h in a
15036         public header file.
15037
15038 Fri May 12 17:13:32 2000  Tim Janik  <timj@gtk.org>
15039
15040         * docs/Changes-1.4.txt: documented necessary changes for 1.4 transition.
15041
15042         * gtk/gtktext.c: made the adjustments no-construct args, simply
15043         provide default adjustments.
15044         (gtk_text_destroy): release adjustments.
15045
15046         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): made the
15047         adjustment argument non-construct.
15048
15049         * gtk/gtkprogress.c (gtk_progress_destroy): release adjustment here,
15050         instead of in finalize.
15051         (gtk_progress_get_text_from_value): 
15052         (gtk_progress_get_current_text): 
15053         (gtk_progress_set_value): 
15054         (gtk_progress_get_percentage_from_value): 
15055         (gtk_progress_get_current_percentage): 
15056         (gtk_progress_set_percentage): 
15057         (gtk_progress_configure): ensure an adjustment is present.
15058
15059 Thu May 11 01:24:08 2000  Tim Janik  <timj@gtk.org>
15060
15061         * gtk/gtkcolorsel.[hc]:
15062         * gtk/gtkcolorseldialog.[hc]:
15063         * gtk/gtkhsv.[hc]: major code cleanups, destroy handlers need to chain
15064         their parent implementation, use bit fields for boolean values, don't
15065         create unused widgets, usage of glib types, braces go on their own
15066         lines, function argument alignment, #include directives etc. etc. etc..
15067
15068         * gtk/Makefile.am (gtk_public_h_sources): install gtkhsv.h.
15069
15070 Wed May 10 23:29:52 2000  Tim Janik  <timj@gtk.org>
15071
15072         * gtk/gtktoolbar.c (gtk_toolbar_destroy): don't unref a NULL tooltips.
15073
15074         * gtk/gtkfilesel.c (gtk_file_selection_destroy): don't free a cmpl_state
15075         of NULL.
15076
15077         * gtk/gtkcombo.c (gtk_combo_item_destroy): don't keep references
15078         to freed data.
15079         (gtk_combo_destroy): don't keep a pointer to a destroyed window.
15080
15081         * gtk/gtkmenu.c (gtk_menu_init): reset the menu's toplevel pointer
15082         to NULL when the toplevel is getting destroyed.
15083         (gtk_menu_set_tearoff_state): same here for the tearoff_window.
15084         (gtk_menu_destroy): 
15085         (gtk_menu_init): store the information of whether we have to
15086         readd the initial child ref_count during destruction in a new
15087         GtkMenu field needs_destruction_ref_count.
15088
15089         * gtk/gtkviewport.c: SHAME! ok this one is tricky, so i note it
15090         here, those reading: learn from my mistake! ;)
15091         in order for set_?adjustment to support a default adjustemnt if
15092         invoked with an adjustment pointer of NULL, the code read (pseudo):
15093         if (v->adjustment) unref (v->adjustment);
15094         if (!adjustment) adjustment = adjustment_new ();
15095         if (v->adjustment != adjustment) v->adjustment = ref (adjustment);
15096         now imagine the first unref to actually free the old adjustment and
15097         adjustment_new() creating a new adjustment from the very same memory
15098         portion. here, the latter comparision will unintendedly fail, and
15099         all hell breaks loose.
15100         (gtk_viewport_set_hadjustment):
15101         (gtk_viewport_set_vadjustment): reset viewport->?adjustment to NULL
15102         after unreferencing it.
15103
15104         * gtk/gtkcontainer.[hc]: removed toplevel registration
15105         functions: gtk_container_register_toplevel(),
15106         gtk_container_unregister_toplevel() and
15107         gtk_container_get_toplevels() which had wrong semantics
15108         anyways: it didn't reference and copy the list.
15109
15110         * gtk/gtkwindow.c: we take over the container toplevel registration
15111         bussiness now. windows are registered across multiple destructions,
15112         untill they are finalized. the initial implicit reference count
15113         users are holding on windows is removed with the first destruction
15114         though.
15115         (gtk_window_init): ref & sink and set has_user_ref_count, got
15116         rid of gtk_container_register_toplevel() call. add window to
15117         toplevel_list.
15118         (gtk_window_destroy): unref the window if has_user_ref_count
15119         is still set, got rid of call to
15120         gtk_container_unregister_toplevel().
15121         (gtk_window_finalize): remove window from toplevel list.
15122         (gtk_window_list_toplevels): new function to return a newly
15123         created list with referenced toplevels.
15124         (gtk_window_read_rcfiles): use gtk_window_list_toplevels().
15125
15126         * gtk/gtkhscale.c (gtk_hscale_class_init): made the GtkRange
15127         adjustment a non-construct arg.
15128         * gtk/gtkvscale.c (gtk_vscale_class_init): likewise.
15129         * gtk/gtkhscrollbar.c (gtk_vscrollbar_class_init): likewise.
15130         * gtk/gtkvscrollbar.c (gtk_vscrollbar_class_init): likewise.
15131
15132         * gtk/gtkrange.c: added some realized checks.
15133         (gtk_range_destroy): get rid of the h/v adjustments in the
15134         destroy handler instead of finalize. remove timer.
15135         (gtk_range_get_adjustment): demand create adjustment.
15136
15137         * gtk/gtkviewport.c: made h/v adjustment non-construct args.
15138         we simply create them on demand now and get rid of them in
15139         the destroy handler.
15140         (gtk_viewport_destroy): get rid of the h/v adjustments in the
15141         destroy handler instead of finalize.
15142         (gtk_viewport_get_hadjustment): 
15143         (gtk_viewport_get_vadjustment): 
15144         (gtk_viewport_size_allocate): demand create h/v adjustment
15145         if required.
15146
15147         * gtk/gtkwidget.c (gtk_widget_finalize): duplicate part of the
15148         gtk_widget_real_destroy () functionality.
15149         (gtk_widget_real_destroy): reinitialize with a new style, instead
15150         of setting widget->style to NULL.
15151
15152 Fri May  5 13:02:09 2000  Tim Janik  <timj@gtk.org>
15153
15154         * gtk/gtkcalendar.c:
15155         * gtk/gtkbutton.c: ported _get_type() implementation over to
15156         GType, either to preserve memchunks allocation facilities,
15157         or because Gtk+ 1.0 GtkTypeInfo was still being used.
15158
15159         * gtk/gtkobject.[hc]: derive from GObject. ported various functions
15160         over. prepare for ::destroy to be emitted multiple times.
15161         removed reference tracer magic. chain into GObjectClass.shutdown()
15162         to emit ::destroy signal.
15163
15164         * gtk/gtksignal.c: removed assumptions about GTK_TYPE_OBJECT being
15165         fundamental.
15166
15167         * gtk/gtkmain.c: removed gtk_object_post_arg_parsing_init()
15168         cludge.
15169
15170         * gtk/gtksocket.c:
15171         * gtk/gtkplug.c:
15172         * gtk/gtklayout.c:
15173         * gtk/gtklabel.c:
15174         * gtk/gtkargcollector.c:
15175         * gtk/gtkarg.c: various fixups to work with GTK_TYPE_OBJECT
15176         not being a fundamental anymore, and to work with the new
15177         type system (nuked fundamental type varargs clutter).
15178
15179         * gtk/*.c: install finalize handlers in the GObjectClass
15180         part of the class structure.
15181         changed direct GTK_OBJECT()->klass accesses to
15182         GTK_*_GET_CLASS().
15183         changed direct object_class->type accesses to GTK_CLASS_TYPE().
15184
15185         * gtktypeutils.[hc]: use the reserved fundamental ids provided by
15186         GType. made most of the GTK_*() type macros and Gtk* typedefs
15187         simple wrappers around macros and types provided by GType.
15188         most notably, a significant portion of the old API vanished:
15189         GTK_TYPE_MAKE(),
15190         GTK_TYPE_SEQNO(),
15191         GTK_TYPE_FLAT_FIRST, GTK_TYPE_FLAT_LAST,
15192         GTK_TYPE_STRUCTURED_FIRST, GTK_TYPE_STRUCTURED_LAST,
15193         GTK_TYPE_ARGS,
15194         GTK_TYPE_CALLBACK,
15195         GTK_TYPE_C_CALLBACK,
15196         GTK_TYPE_FOREIGN,
15197         GtkTypeQuery,
15198         gtk_type_query(),
15199         gtk_type_set_varargs_type(),
15200         gtk_type_get_varargs_type(),
15201         gtk_type_check_object_cast(),
15202         gtk_type_check_class_cast(),
15203         gtk_type_describe_tree(),
15204         gtk_type_describe_heritage(),
15205         gtk_type_free(),
15206         gtk_type_children_types(),
15207         gtk_type_set_chunk_alloc(),
15208         gtk_type_register_enum(),
15209         gtk_type_register_flags(),
15210         gtk_type_parent_class().
15211         replacements, where available are described in ../docs/Changes-1.4.txt.
15212         implemented compatibility functions for the remaining API.
15213
15214         * configure.in: depend on glib 1.3.1, use gobject module.
15215
15216 Thu May 11 12:39:50 2000  Owen Taylor  <otaylor@redhat.com>
15217
15218         * TODO.xml: Various updates to current status.
15219
15220 Wed May 10 20:25:04 2000  Owen Taylor  <otaylor@redhat.com>
15221
15222         * gtk.m4: Print out version when test succeeds.
15223
15224 Wed May 10 16:38:17 2000  Owen Taylor  <otaylor@redhat.com>
15225
15226         * gtk/Makefile.am docs/Changes-1.4.txt gtk/gtkcolorsel.[ch]
15227         gtk/gtkhsv.[ch]: Color selection dialog rewrite.
15228         
15229         (Original triangle color selector from Simon Budig
15230         <Simon.Budig@unix-ag.org>, Cleaned up and rewritten for GTK+ by
15231         from Jonathan, Havoc, and Federico. Merge into GTK+ done by David
15232         Santiago <mrcooger@cyberverse.com>)
15233
15234         * gtk/gtkcolorseldialog.[ch]: Split color selection dialog
15235         out into a separate widget.
15236
15237         * gtk/testgtk.c: Add some checkbuttons for toggling palette
15238         and opacity controls.
15239
15240 Wed May 10 16:08:09 2000  Owen Taylor  <otaylor@redhat.com>
15241
15242         * configure.in (GTK_LIBS_EXTRA): Remove references to gobject that 
15243         snuck in prematurely.
15244
15245 2000-05-07  Tor Lillqvist  <tml@iki.fi>
15246
15247         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Fix typo. I
15248         had deleted a ! operator by mistake, which caused
15249         GDK_SELECTION_CLEAR events never to be generated, which caused
15250         only the first copy to the clipboard from an gtkeditable to
15251         actually cause a copy to the Windows clipboard.
15252
15253 2000-05-06  Tor Lillqvist  <tml@iki.fi>
15254
15255         * gdk/win32/gdkdnd-win32.c: Enable shortcut resolution for gcc
15256         compilation, too. Current mingw gcc distributions include the
15257         necessary headers. Also the necessary IIDs are now in mingw
15258         headers/libraries, and own definitions unnecessary.
15259
15260         More hacking on OLE2 DND, still doesn't work though, and thus
15261         ifdeffed out.
15262
15263         * gdk/win32/gdkwindow-win32.c: Remove gdk_window_clear() from
15264         here, too.
15265
15266 Sat,  6 May 2000 13:31:34 +0200 Paolo Molaro <lupus@linuxcare.com>
15267
15268         * gdk/nanox/*: nano-X port work in progress.
15269         * gdk/simple.c: simple test for Gdk.
15270         * README.nanox: notes about the port: read this first!
15271         * gtk/gtk{dnd,plug,selection,window}.c: minimal changes to make gtk compile
15272         with nano-X.
15273
15274 Fri May  5 11:18:47 2000  Owen Taylor  <otaylor@redhat.com>
15275
15276         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c (gdk_window_clear): Move
15277         gdk_window_clear() into common code, implement in terms of
15278         gdk_window_clear_area(). (Fixes bug where gdk_window_clear() was
15279         not redirected to the backing rectangle.
15280
15281 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
15282
15283         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
15284         EXTRA_DIST. It does not work well when the file that
15285         everything depends on is not in the tarball.
15286
15287 Tue Apr 25 22:20:41 2000  Owen Taylor  <otaylor@redhat.com>
15288
15289         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix error
15290         with recursion where process_updates() is called from
15291         an expose handler. (GtkTextView is highly broken in
15292         doing this, but it should work, so it is a nice test
15293         case.)
15294
15295 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
15296
15297         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Gracefully
15298         handle the case where updates are queued during processing of
15299         updates.
15300
15301 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
15302
15303         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): We already assume
15304         window is on gdk_display - use that instead of segfaulting.
15305
15306 Thu May  4 02:04:46 2000  Tim Janik  <timj@gtk.org>
15307
15308         * configure.in (STRIP_DUMMY): some Make 3.79 $(strip ) versions are
15309         broken and require an empty arg, give it to them.
15310
15311 Fri Apr 28 19:34:32 2000  Tim Janik  <timj@gtk.org>
15312
15313         * gtk/gtklabel.h: indentation fixes.
15314
15315 2000-05-02  Tor Lillqvist  <tml@iki.fi>
15316
15317         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_arc): Don't try to
15318         draw too narrow or too low arcs, they seem to fail, at least with
15319         some display drivers.
15320
15321         * gdk/gdk.c (gdk_init_check): Use G_DIR_SEPARATOR.
15322
15323         Large changes to the Win32 backend, partially made necessary by
15324         the changes to the backend-independent internal
15325         structures. Attempts to implement similar backing store stuff as
15326         on X11. The current (CVS) version of the Win32 backend is *not* as
15327         stable as it was before the no-flicker branch was merged. A
15328         zipfile with that version is available from
15329         http://www.gimp.org/win32/. That should be use by "production"
15330         code until this CVS version is usable. (But note, the Win32
15331         backend has never been claimed to be "production quality".)
15332
15333         * README.win32: Add the above comment about versions.
15334
15335         * gdk/gdkwindow.c: Don't use backing store for now on Win32.
15336
15337         * gdk/gdk.def: Update.
15338
15339         * gdk/gdkfont.h: Declare temporary Win32-only functions. Will
15340         presumably be replaced by some more better mechanism as 1.4 gets
15341         closer to release shape.
15342
15343         * gdk/makefile.{cygwin,msc}: Update.
15344
15345         * gdk/win32/*.c: Correct inclusions of the backend-specific and
15346         internal headers. Change code according to changes in these. Use
15347         gdk_drawable_*, not gdk_window_* where necessary.
15348
15349         * gdk/win32/gdkdnd-win32.c: Use MISC selector for GDK_NOTE, not
15350         our old DND.
15351
15352         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_text): Don't try
15353         to interpret single characters as UTF-8. Thanks to Hans Breuer.
15354         Use correct function name in warning messages.
15355
15356         * gdk/win32/gdkevents-win32.c: Use correct parameter lists for the
15357         GSourceFuncs gdk_event_prepare and gdk_event_check.
15358         (gdk_event_get_graphics_expose): Do implement, use
15359         PeekMessage. Thanks to Hans Breuer.
15360         (event_mask_string): Debugging function to print an GdkEventMask.
15361         (gdk_pointer_grab): Use it.
15362
15363         * gdk/win32/gdkfont-win32.c: The Unicode subrange that the
15364         (old) book I used claimed was Hangul actually is CJK Unified
15365         Ideographs Extension A. Also, Hangul Syllables were missing.
15366         Improve logging.
15367
15368         * gdk/win32/gdkgc-win32.c: Largish changes.
15369
15370         * gdk/win32/gdkim-win32.c (gdk_set_locale): Use
15371         g_win32_getlocale() from GLib, and not setlocale() to get current
15372         locale name.
15373
15374         * gdk/win32/gdkprivate-win32.h
15375         * gdk/win32/gdkwin32.h: Move stuff from gdkprivate-win32.h to
15376         gdkwin32.h, similarily as in the X11 backend.
15377
15378         * gdk/win32/gdkwindow-win32.c (gdk_propagate_shapes): Bugfix,
15379         assignment was used instead of equals in if test. Thanks to Hans
15380         Breuer.
15381
15382         * gdk/win32/gdkgeometry-win32.c: New file, just a quick hack of
15383         the X11 version.
15384
15385         * gdk/win32/makefile.{cygwin,msc}
15386         * gtk/makefile.{cygwin,msc}: Updates. Better kludge to get the
15387         path to the Win32 headers that works also with the mingw compiler.
15388
15389         * gtk/gtkstyle.c: Include <string.h>.
15390
15391 2000-04-26  Havoc Pennington  <hp@redhat.com>
15392
15393         * gtk/gtklabel.c (gtk_label_get_text): Add this function,
15394         replacing the broken gtk_label_get ()
15395
15396 2000-04-15  Havoc Pennington  <hp@pobox.com>
15397
15398         * gdk/gdkdnd.h: clean up enum format, remove extra comma, 
15399         this keeps scanner scripts from getting confused.
15400
15401         * gdk/gdkdraw.c (gdk_drawable_get_data): This should return the
15402         data, rather than void
15403
15404 2000-04-15  Tor Lillqvist  <tml@iki.fi>
15405
15406         * gtk/gtkclist.c (gtk_clist_motion)
15407         * gtk/gtklist.c (gtk_list_motion_notify): If we get a motion event
15408         with is_hint FALSE, get x and y from the event. They used to be
15409         used uninitialised. The Win32 backend never sends motion events
15410         marked as hints. This for instance fixes the annoying file and
15411         font selector behaviour in the Win32 version.
15412
15413 2000-04-14  Tor Lillqvist  <tml@iki.fi>
15414
15415         * gtk/gtksignal.c: (Win32:) Export the gtk_private_signals and
15416         gtk_private_n_signals variables, they are used by some software,
15417         sigh.
15418
15419         * gtk/gtkrc.c (get_gtk_sysconf_directory): (Win32:) Fetch the
15420         installation directory from the Registry, where the installer
15421         should have put it.
15422
15423 Fri Apr  7 17:19:27 2000  Owen Taylor  <otaylor@redhat.com>
15424
15425         * gdk/x11/Makefile.am: Fix problem with installation directory for
15426         gdkx.h
15427
15428         * gtk/gtkmenuitem.c gtk/gtkmenushell.c: Patch from David Santiago
15429         <mrcooger@cyberverse.com> so that when selecting menus with the
15430         mouse, the first item will not be selected, but when selecting
15431         with an accelerator, or navigating left-right on a menubar with
15432         the menus popped up, the first item will be selected.
15433
15434 2000-04-05  Dan Damian  <dand@dnttm.ro>
15435
15436         * configure.in: Added "ro" to ALL_LINGUAS.
15437
15438 Wed Apr  5 00:08:36 2000  Owen Taylor  <otaylor@redhat.com>
15439
15440         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): Fix screwy
15441         indentation.
15442
15443         * Makefile.am (EXTRA_DIST): Fix typo.
15444
15445         * gdk[/x11]/Makefile.am (INCLUDES): Add $(top_builddir)/gdk
15446         to catch gdkconfig.h
15447
15448         * gtk/gtkitemfactory.c: Added FIXME.
15449
15450 2000-03-30  Jonathan Blandford  <jrb@redhat.com>
15451
15452         * gtk/gtkpaned.c (gtk_paned_get_position): oops.
15453         s/return_if_fail/return_val_if_fail/g and add a return value.
15454
15455 Mon Mar 27 20:56:14 2000  Owen Taylor  <otaylor@redhat.com>
15456
15457         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Fix up 
15458         merge slipup.
15459
15460         * gdk/gdkinput.h: Fix missing line from merge.
15461
15462 Mon Mar 27 20:39:49 2000  Owen Taylor  <otaylor@redhat.com>
15463
15464         * gdk/gdkcolor.c cursor.c gdkdraw.c gdkfont.c: Include gdkinternals.h
15465         instead of gdkprivate.h.
15466
15467 Sun Mar 12 15:19:24 2000  Owen Taylor  <otaylor@redhat.com>
15468
15469         * gtk/gtkinputdialog.h (struct _GtkInputDialogClass): Fix
15470         parent class to correctly be GtkDialogClass.
15471
15472 Thu Feb 24 23:58:21 2000  Owen Taylor  <otaylor@redhat.com>
15473
15474         * gdk/x11/gdkgeometry-x11.c: Don't worry about clipping of
15475         toplevel windows and their immediate children by their parents,
15476         since the size of toplevel windows is out of our immediate
15477         control and we don't get any real benefit from trying to track
15478         this size for clipping.
15479
15480         * gdk/gdkprivate.h (struct _GdkWindowPrivate) gdk/x11/gdkwindow-x11.c : Add a flag
15481         for input_only windows.
15482
15483         * gdk/gdkwindow.c gdk/x11/gdkgeometry-x11.c: Use the above flag
15484         to fix some hacks and make sure that we don't try to set the
15485         background of input only windows.
15486
15487 Thu Feb 24 18:11:46 2000  Owen Taylor  <otaylor@redhat.com>
15488
15489         * gdk/gdkinternals.h gdk/gdkprivate.h gdk/Makefile.am: Add a header file for
15490         the _really_ internal stuff, and leave gdkprivate.h for the fake private
15491         stuff that we've traditionally exposed.
15492
15493         * gdk/**.c: Use gdkinternals.h where appropriate.
15494
15495         * gdk/x11/gdkx.h gdk/x11/gdkprivate-x11.h gdk/x11/*.c: Make gdkx.h
15496         not include gdkprivate-x11.h, move all stuff of conceivable public
15497         interest into gdkx.h; keep all really private stuff in
15498         uninstalled header gdkprivate-x11.h.
15499
15500         * gdk/gdkdraw.c gdk/gdkwindow.c gdk/gdkinternals: Redirect all calls to
15501         image->image_put on windows through a new function _gdk_window_draw_image()
15502         to allow us to do backing store for images. (Sort of ugly)
15503
15504         * gdk/gdkgc.c gdk/gdkprivate.h: Cache the ts and clip origins for graphics
15505         contexts locally so that we can offset them properly when drawing 
15506         onto backing pixmaps.
15507
15508         * gdk/gdkinput.h: Reindented
15509
15510         * gdk/gdkprivate.h gdk/x11/gdkwindow-x11.c: Store the background
15511         pixmap or color for the window, so we can properly initialize
15512         our double-buffer pixmaps, and also so that we temporarily set
15513         a background of None while scrolling.
15514
15515         * gdk/gdkregion.h: Revise region boolean operators to have an
15516         interface that is actually convenient - switch from creating new
15517         regions on every op, to "methods" that modify existing regions
15518         (A = A OP B). 3 argument forms which allow dest == src, would also
15519         be possible, but the current interfaces seem to map nicely
15520         onto what needs to be done. (There is quite a lot of region
15521         code in GDK now.)
15522
15523         * gdk/gdkregion.h: Add constructor from rectangle and a copy
15524         operator.
15525
15526         * gdk/x11/{gdkregion-generic.[ch],gdkpolyreg-generic.c,
15527         gdkpoly-generic.h: Copy region code from Xlib, switch it over
15528         to 32 bit coordinates, modify it to be mostly GTK+ style
15529         and to have interfaces that match gdkregion.h.
15530
15531         * gdk/gdkwindow.c gdk/gdkprivate.h: Add facility for
15532         double-buffered drawing. gdk_window_begin_paint_{rect,region}()
15533         create a backing pixmap and redirect all drawing to
15534         that backing pixmap until a matching gdk_window_end_paint().
15535
15536         * gdk/gdkwindow.[ch] gdk/gdkinternals.h gdk/x11/gdkdrawable-x11.c:
15537         Create a special drawable class for GtkWindow's that 
15538         redirects the drawing to the backing pixmap as necessary
15539         and then calls the real operations in _gdk_windowing_window_class.
15540
15541         * gdk/gdkprivate.h gdk/gdkwindow.[ch] gdk/x11/gdkevents-x11.c:
15542         Store invalid region for each window. Generate expose events for invalid
15543         region in an idle. This replaces both the expose compression
15544         and the redrawing queuing in GTK+. It is both more efficient and
15545         simpler than either one individually and far more so then the
15546         combination.
15547
15548         * gdk/x11/gdkgeometry.c gdk/x11/gdkwindow.c gdk/x11/gdkprivate-x11.h:
15549         Emulate 32 bit coordinates for windows with 16 bit coordinates
15550         by offsetting drawing, guffaw scrolling techniques and
15551         mapping/unmapping child windows as necessary.
15552
15553         * gdk/gdkwindow.[ch] gdk/x11/gdkgeometry.c: Add anti-exposes,
15554         where, when invalid regions are processed, the region is stored,
15555         and if expose events come in that are detectably duplicate
15556         the processed exposes (by comparison of event serial numbers),
15557         the stored region is subtracted out of those exposes.
15558
15559         * gdk/x11/gdkgeometry.c: Temporarily unset backing pixmaps of
15560         regions newly exposed when scrolling or resizing windows.
15561         This, combined with forcing processesing of queued invalidated
15562         regions, gives nice flicker-free scrolling.
15563
15564         * gtk/gtklayout.c gtk/gtkviewport.c: Force processing of
15565         invalidated regions after every scroll.
15566
15567         * gtk/gtklayout.c: Vastly simplify using the new 32 bit coordinate
15568         emulation in GDK. Its, for all practical purposes just a
15569         GtkViewport/GtkFixed hybrid now.
15570
15571         * gdk/gdkdrawable-x11.c: Convert from GDK (32 bit) to X11
15572         (16-bit) structures as necessary instead of just casting.
15573
15574         * gdk/x11/gdkgc-x11.c gdk/x11/gdkx.h: Replace XSetRegion with code
15575         in terms of the structures from gdkregion-generic.c, using appropriate
15576         offsets from GDK to X11 coordinates. Cache clip mask and
15577         origin and ts origin locally and only flush to the server
15578         when drawing, to avoid constantly setting and resetting these
15579         values when offsetting GC's for scrolling and backing pixmaps.
15580
15581         * gdk/x11/gdkinput-x11.c: Fix leak of axes structures.
15582
15583         * gtk/gtkcontainer.c: Call process_all_updates at end
15584         of resizing to reduce flicker. (Avoids having redraw
15585         lag arbitrarily behind resize under some circumstances)
15586
15587         * gtk/gtkentry.c: Remove old backing store code, and simply take
15588         advantage of the new backing store capabilities of GDK.
15589
15590         * gtk/gtkmain.c: Simple implementation of widget backing
15591         store - simply push a paint while handling each expose.
15592         (Should really be configurable widget for widget.)
15593         
15594         * gtk/gtkwidget.c: Remove all the old complicated redraw
15595         code, and simply invalidate the GDK windows from
15596         gdk_window_queue_clear(), etc. (Sigh, so much carefully
15597         debugged complexity ... gone to the winds.)
15598
15599         Remove all the code for suppressing expose events while
15600         resizes are pending; this isn't needed since the invalid
15601         areas won't be processed until after the resizes are
15602         processed, since they are in a lower priority idle.
15603
15604 Thu Feb 24 15:37:41 2000  Owen Taylor  <otaylor@redhat.com>
15605
15606         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Set width
15607         and height of dest rectangle for non-intersecting rectangles.
15608
15609 Sun Feb 20 16:47:31 2000  Owen Taylor  <otaylor@redhat.com>
15610
15611         * gtk/gtkwidget.h: Make GtkAllocation just a typedef
15612         for GdkRectangle.
15613
15614 Sun Feb 20 11:27:00 2000  Owen Taylor  <otaylor@redhat.com>
15615
15616         * gdk/gdk{events,image,private,types,window}.h
15617          gdk/x11/gdkinputprivate.h: Change all coordinates
15618          from int16 to int. Also, Change width and height from
15619          unsigned to signed to avoid all the stupid C 
15620          signedness bugs.
15621
15622 Sat Feb 19 12:01:53 2000  Owen Taylor  <otaylor@redhat.com>
15623
15624         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable):
15625         Use gdk_drawable_get_depth instead of gdk_drawable_get_visual.
15626         Add some more detailed checking.
15627
15628         * gdk/gdkdraw.c gdk/gdkdrawable.h (gdk_drawable_get_depth):
15629         New function to retrieve the depth of a drawable.
15630
15631         * gdk/gdkprivate.h (struct _GdkDrawablePrivate): Add a depth
15632         field, reorder fields to save memory. 
15633
15634 Mon Dec 13 14:06:03 1999  Owen Taylor  <otaylor@redhat.com>
15635
15636         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): Draw a small portion
15637         of the background image instead of scaling the background down to
15638         a line.
15639
15640         * gtk/gtk[hv]scrollbar.c (gtk_hscrollbar_size_allocate): Removed mysterious
15641         which temporarily set slider to wrong size.
15642
15643         * gtk/gtkaspectframe.c gtkbin.c: Remove unecessary calls to
15644         queue_clear().
15645
15646 Wed Nov 17 18:36:05 1999  Owen Taylor  <otaylor@redhat.com>
15647
15648 2000-03-23  Jonathan Blandford  <jrb@redhat.com>
15649
15650         * gtk/gtkpaned.c (gtk_paned_get_position): add getter.
15651
15652 2000-03-17  Tor Lillqvist  <tml@iki.fi>
15653
15654         * gdk/win32/gdkevents-win32.c: Remove the #ifndef
15655         USE_DISPATCHMESSAGE sections, we do want to use DispatchMessage.
15656
15657         * gdk/win32/gdkfont-win32.c
15658         * gdk/win32/gdkproperty-win32.c
15659         * gdk/win32/gdkselection-win32.c
15660         * gdk/win32/gdkwindow-win32.c: Add const to some arguments that are
15661         now declared such.
15662
15663 Wed Mar 15 02:59:38 PST 2000 Manish Singh <yosh@gimp.org>
15664
15665         * gtk/gtkvpaned.c: removed stray gutter_size reference, a 1.2 relic
15666
15667 Mon Mar 13 18:37:55 2000  Owen Taylor  <otaylor@redhat.com>
15668
15669         * gdk/gdkdnd.c: Fix a bunch of cases where XGetWindowProperty()
15670         is called without trapping X errors.
15671
15672 Fri Feb 25 10:48:53 2000  Owen Taylor  <otaylor@redhat.com>
15673
15674         * gtk/gtkrc.*: Fix problem where stray '"' characters found their
15675         way into the fontset lists.
15676
15677 Tue Feb 22 08:52:52 2000  Tim Janik  <timj@gtk.org>
15678
15679         * gtk/gtkthemes.h: add extern "C" scope.
15680
15681 Mon Feb 21 20:16:42 2000  Lars Hamann  <lars@gtk.org>
15682
15683         * gtk/gtkclist.c: applied  patch from Guy Harris <guy@netapp.com>
15684         to make appends to the list constant. (gtk-guy-990901-0.patch)
15685
15686 Mon Feb 14 22:50:10 2000  Tim Janik  <timj@gtk.org>
15687
15688         * gtk/gtktypeutils.c (gtk_type_init): use g_str_hash() and g_str_equal()
15689         for the typename hash table.
15690
15691 Mon Feb 14 15:01:23 2000  Owen Taylor  <otaylor@redhat.com>
15692
15693         * gtk/gtkpaned.c (gtk_paned_compute_position): Add some sanity checks
15694         to make sure we never divide by zero. 
15695         (Problem pointed out by Michal Jaegermann <michal@ellpspace.math.ualberta.ca>)
15696
15697 Mon Feb 14 12:29:38 2000  Owen Taylor  <otaylor@redhat.com>
15698
15699         * gtk/gtkfontsel.c: Apply patch from
15700         SHIRASAKI Yasuhiro <yasuhiro@awa.tohoku.ac.jp> to make font selector work a little
15701         better with 2-byte fonts. (Load a fontset instead of a font for two byte fonts.)
15702
15703         Also, some cleanups in atom handling.
15704
15705 Sun Feb 13 08:02:21 2000  Tim Janik  <timj@gtk.org>
15706
15707         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
15708         not GtkWidget.
15709
15710 Fri Feb 11 02:19:32 2000  Tim Janik  <timj@gtk.org>
15711
15712         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): 
15713         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): 
15714         * gtk/gtkpaned.c (gtk_paned_compute_position): had to squeeze some
15715         more guint wrap-around bugs before going to bed.
15716
15717 Thu Feb 10 16:16:35 2000  Tim Janik  <timj@gtk.org>
15718
15719         * gtk/gtkspinbutton.c (gtk_spin_button_size_allocate): guard against
15720         guint wrap arounds in allocation.width.
15721
15722         * gtk/gtktable.c (gtk_table_size_allocate_pass1): repeat shrinking
15723         process untill we fit the allocation given.
15724
15725 Tue Feb  8 09:38:29 2000  Tim Janik  <timj@gtk.org>
15726
15727         * gtk/gtkwidget.c:
15728         (gtk_widget_unrealize): guard widget access with ref/unref
15729         around signal emission.
15730         (gtk_widget_hide): same here, but also check its destroyed
15731         state before queueing a resize.
15732
15733 Tue Feb  8 03:05:55 2000  Tim Janik  <timj@gtk.org>
15734
15735         * gtk/gtkstyle.c (gtk_style_new): use gtk_default_prelight_bg instead
15736         of gtk_default_insensitive_bg as insensitive base color.
15737
15738         * gtk/gtktext.c (gtk_text_style_set): set the background color according
15739         to the widget's state.
15740         (gtk_text_realize): same here.
15741         (gtk_text_state_changed): same here.
15742         (draw_bg_rect): compare background color against base[] from
15743         GTK_WIDGET_STATE (text) not GTK_STATE_NORMAL.
15744
15745 Mon Feb  7 04:01:55 2000  Tim Janik  <timj@gtk.org>
15746
15747         * gtk/gtkmain.c (gtk_main_do_event): ignore delete events when
15748         grabs are active, unless a delete event is send to the toplevel
15749         of the currently grab holding widget.
15750
15751 Sun Feb  6 10:13:15 2000  Owen Taylor  <otaylor@redhat.com>
15752
15753         * gtk/gtkctree.c (gtk_ctree_drag_data_received): Remove
15754         debugging g_print's.
15755
15756 Fri Feb  4 15:54:54 2000  Owen Taylor  <otaylor@redhat.com>
15757
15758         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_request): Don't
15759         ever make the scrolled-window requisition ever depend on the 
15760         visibility state of the scrollbars for the AUTOMATIC policy. 
15761         This breaks the GTK+ requisition model, and causes loops.
15762
15763 Fri Feb  4 15:09:12 2000  Owen Taylor  <otaylor@redhat.com>
15764
15765         * gtk/gtkstyle.c (gtk_style_new): Set the charset explicitely for
15766         the default font to avoid problems with XFree86-4.0 where the
15767         default charset is iso10646-1, not iso8859-1.
15768
15769 Thu Feb  3 14:58:48 PST 2000 Manish Singh <yosh@gimp.org>
15770
15771         * acinclude.m4
15772         * config.guess
15773         * config.sub
15774         * ltconfig
15775         * ltmain.sh: upgrade to libtool 1.3.4 (bugfix only release)
15776
15777         * gtk/Makefile.am: minor cosmetic consistency tweak
15778
15779 Thu Feb  3 14:46:01 2000  Owen Taylor  <otaylor@redhat.com>
15780
15781         * gtk/gtkmenushell.c (gtk_menu_shell_button_release): Set
15782         the activate_time to 0, so that we handle a quick
15783         press/release press/release properly and don't suppress
15784         the second release. (Red Hat bug #7545)
15785
15786 Wed Feb  2 22:25:17 2000  Tim Janik  <timj@gtk.org>
15787
15788         * gtk/gtkctree.c (row_delete):
15789         (gtk_ctree_node_set_row_data_full): fixed very evil reentrancy
15790         bugs with destruction notifier, *always* update internal
15791         structures *before* calling user code.
15792
15793 Sun Jan 30 20:10:52 2000  Lars Hamann  <lars@gtk.org>
15794
15795         A few more fixes for bug #5487, #2051, #2677.
15796         * gtk/gtkclist.c : 
15797         (gtk_clist_button_press):  Reset clist->anchor to -1 if event->type is
15798         not GDK_BUTTON_PRESS.
15799         (resync_selection): resync only if selection_mode is
15800         GTK_SELECTION_EXTENDED
15801         * gtk/gtkctree.c (resync_selection): same here
15802
15803 Sun Jan 30 12:29:20 2000  Owen Taylor  <otaylor@redhat.com>
15804
15805         * gdk/gdk.h gtk/gtkmenu.h: Removed duplicate prototypes for
15806         gdk_drag_get_selection() and gtk_menu_detach().
15807
15808         [ From Jeroen Ruigrok/Asmodai ]
15809
15810 Sat Jan 29 10:11:56 2000  Owen Taylor  <otaylor@redhat.com>
15811
15812         * gtk/gtknotebook.c (gtk_notebook_size_request): 
15813         page->tab_label can be NULL.
15814
15815 2000-01-25  Havoc Pennington  <hp@pobox.com>
15816         
15817         * gdk/gdkwindow.c (gdk_window_set_back_pixmap): parent_relative
15818         arg is boolean
15819
15820         * gdk/gdkselection.c (gdk_selection_owner_set): return boolean
15821
15822         * gdk/gdkrectangle.c (gdk_rectangle_intersect): return boolean
15823
15824         * gdk/gdkproperty.c (gdk_property_get): return boolean
15825
15826         * gdk/gdkinput.c (gdk_input_set_mode): return boolean
15827
15828         * gdk/gdkim.c (gdk_im_ready): return boolean
15829
15830         * gdk/gdkgc.c (gdk_gc_set_exposures): gboolean arg
15831
15832         * gdk/gdkfont.c (gdk_font_equal): return gboolean (mild
15833         glib clash, should fix glib)
15834
15835         * gdk/gdkevents.c (gdk_set_show_events): take gboolean arg
15836         (gdk_get_show_events): return gboolean, and canonicalize 
15837         to TRUE/FALSE
15838
15839         * gdk/gdkcolor.c (gdk_colormap_new): gboolean flag whether the
15840         colormap is private
15841         (gdk_colors_alloc): gboolean whether to be contiguous
15842         (gdk_color_equal): return gboolean since we are a predicate
15843         and not a qsort() (this looks semi-wrong due to glib breakage,
15844         IMO glib should be fixed)
15845         
15846         * gdk/gdk.c (gdk_set_use_xshm): take gboolean arg
15847         (gdk_get_use_xshm): return gboolean
15848         (gdk_pointer_is_grabbed): return gboolean
15849
15850         * gdk/gdk.h: Change prototypes to match all the above changes,
15851         and re-run egtk-format-protos as required.
15852
15853 Fri Jan 28 12:28:17 2000  Owen Taylor  <otaylor@redhat.com>
15854
15855         * gtk/gtkctree.c (resync_selection): 
15856         * gtk/gtkclist.c (resync_selection):
15857
15858         Return immediately if clist->drag_pos < 0. This is a workaround
15859         for the corrupt state that the clist gets into when a
15860         GDK_2BUTTON_PRESS occurs. See note in gtk_clist_button_press().
15861
15862         Bug #5487, #2051, #2677; fix suggested by David Helder and T. Alexander Popiel.
15863         
15864         * gtk/gtknotebook.c (gtk_notebook_size_request): Fix uninitialized
15865         variable from recent commit.
15866
15867 Thu Jan 27 15:22:09 2000  Owen Taylor  <otaylor@redhat.com>
15868
15869         * gtk/gtkdnd.c (gtk_drag_begin): Fix stupid typo in last commit.
15870
15871 Thu Jan 27 18:00:55 2000  Tim Janik  <timj@gtk.org>
15872
15873         * gtk/Makefile.am: prefix all autogenerated source that get build in
15874         $(srcdir) with $(srcdir)/, so make doesn't assume they got generted
15875         in builddir. since we subsequently cd into srcdir for autogeneration,
15876         the paths have to be stripped from the target file names, thusly we
15877         use $(@F) as target names now.
15878         put a comment about configure.in's --disable-rebuilds option,
15879         which can be used for non-writable source directories, for development
15880         setups though, srcdir has to be *writable*.
15881
15882 hu Jan 27 00:15:03 2000  Owen Taylor  <otaylor@redhat.com>
15883
15884         * gtk/gtkdnd.c (gtk_drag_begin gtk_drag_get_event_actions):
15885           Finish the job of allowing event to be NULL.
15886           (Fixes bug #4283, reported by Chris Blizzard)
15887
15888         * gtk/gtkentry.c (entry_adjust_scroll): When calculating
15889           things so that the cursor appears on screen, properly
15890           take into account INNER_BORDER.
15891           (Fixes bug #4754, reported by Antonio Campos)
15892
15893 Wed Jan 26 23:12:28 2000  Owen Taylor  <otaylor@redhat.com>
15894
15895         * gtk/gtknotebook.c (gtk_notebook_map): Don't
15896           show the tab_label unless it itself is visible.
15897
15898           gtk/gtknotebook.c (gtk_notebook_size_request):
15899           Do a better job of making sure that the visibility
15900           of the tab label corresponds to whether it should
15901           be mapped or not.
15902
15903 Wed Jan 26 21:17:03 2000  Owen Taylor  <otaylor@redhat.com>
15904
15905         * gtk/gtkoptionmenu.c (gtk_option_menu_position):
15906           Use the requisition, not the allocation, since the
15907           allocation has not necessarily been computed yet.
15908           (Pointed out by Eugene Osintsev)
15909
15910 Wed Jan 26 19:44:25 2000  Owen Taylor  <otaylor@redhat.com>
15911
15912         * gtk/gtkstyle.c (gtk_style_new): Dont' set
15913           style/base[GTK_STATE_INSENSITIVE] both to
15914           gtk_default_insensitive_bg!
15915           (Bug #2187, reported by Jonathan Blandford)
15916
15917         * gtk/gtkaccelgroup.c (gtk_accelerator_valid):
15918           Add Alt_L, Alt_R to list of invalid accelerators.
15919           (Bug #3736, reported by Vlad Harchev)
15920
15921 Wed Jan 26 19:01:56 2000  Owen Taylor  <otaylor@redhat.com>
15922
15923         * gtk/gtkfilesel.c (open_ref_dir): Fix several
15924         bugs which occured after an attempt to open 
15925         invalid home directory left cmpl_state->reference_dir == NULL.
15926
15927          - completion on files in home directory didn't work
15928          - completion on an empty string caused  segfault
15929
15930          (Bug #3678, reported by Steve Ratcliffe)
15931
15932         * gtk/gtkscale.c (gtk_scale_get_value_width): Fix
15933         cut and paste error that was causing scales to
15934         be incorrectly positioned.
15935         (Bug #2956,
15936          patch from Steve Ratcliffe <steve@parabola.demon.co.uk>)
15937
15938 2000-01-27  Shirasaki Yasuhiro  <yasuhiro@gnome.gr.jp>
15939
15940         * acinclude.m4 (AM_GTK_WITH_NLS): Add -lintl to libs
15941         when checking for dcgettext, if we've found we needed
15942         it for dgettext.
15943 +
15944 Wed Jan 26 18:06:07 2000  Owen Taylor  <otaylor@redhat.com>
15945
15946         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
15947         queue_clear on NO_WINDOW widgets during a reparent,
15948         since at that point the window and widget heirarchies
15949         are out of sync. This stops crashing in some cases
15950         (the scrolled window reparent test, for instance), and
15951         _probably_ won't cause drawing errors.
15952
15953         * gtk/testgtk.c: Make the reparenting-a-scrolled-window
15954         test do what it was supposed to do and be robust against
15955         window closings, etc. (Bug #2443)
15956
15957 Wed Jan 26 16:56:54 2000  Owen Taylor  <otaylor@redhat.com>
15958
15959         * gtk/gtkentry.c: Fix return values on mouse events.
15960         (Bug #2686, Sky <seb_sky@yahoo.com>)
15961
15962         * gtk/genmarshal.pl: Fix up handling of FOREIGN.
15963         (pointed out by George Lebl)
15964
15965         * gdk/gdkcolor.c (gdk_color_copy): Made const-safe.
15966         (From Ettore Perazzoli  <ettore@helixcode.com>)
15967  
15968 Mon Jan 24 10:44:48 2000  Owen Taylor  <otaylor@redhat.com>
15969
15970         * gtk/gtkcalendar.c (gtk_calendar_main_button): Handle
15971         clicks between rows or outside calender area correctly.
15972         (Patch from Damon Chaplin)
15973
15974         * gtk/gtkclist.c (gtk_clist_set_row_data_full): 
15975         * gtk/gtkctree.c (gtk_ctree_node_set_row_data_full): 
15976           Call destroy function when overwriting existing data. 
15977           (Pointed out by Damon Chaplin)
15978
15979 Tue Jan 25 09:55:41 2000  Owen Taylor  <otaylor@redhat.com>
15980
15981         * gdk/gdk.c: Remove useless #include of <X11/Xmu/WinUtil.h>,
15982           which was causing problems on various systems with Xmu.
15983           This hasn't been needed for a very long time.
15984           (Fixes #1185 3167)
15985
15986 Sun Jan 23 22:27:36 2000  Owen Taylor  <otaylor@redhat.com>
15987
15988         * gdk/gdki18n.h: Include <ctype.h> when defining
15989           gdk_isw* in terms of is* as a fallback.
15990           (Bug #4106 - Dan Winship <danw@MIT.EDU>)
15991
15992 Sun Jan 23 22:12:36 2000  Owen Taylor  <otaylor@redhat.com>
15993
15994         * gtk/gtkviewport.c (gtk_viewport_size_allocate): Don't
15995           realize the widget when it is size allocated!
15996           (old, old bug)
15997
15998         * gtk/gtkviewport.c (gtk_viewport_adjustment_value_changed):
15999           Removed unused call to gdk_window_get_size() that
16000           showed up when the above was fixed.
16001
16002 Sat Jan 22 15:44:30 2000  Owen Taylor  <otaylor@redhat.com>
16003
16004         * gtk/gtkwidget.c (gtk_widget_reparent): Correctly
16005           fix up widget->window when the widget is a
16006           NO_WINDOW container widget.
16007
16008 Sat Jan 22 12:40:48 2000  Owen Taylor  <otaylor@redhat.com>
16009
16010         * gdk/gdkpixmap.c (gdk_pixmap_seek_string): Rewrite
16011           to account for the fact that feof() does _not_ 
16012           return TRUE on errors, and thus avoid infinite loops
16013           when trying to use gdk_pixmap_create_from_xpm()
16014           on unreadable values.
16015
16016 Fri Jan 21 18:32:43 2000  Owen Taylor  <otaylor@redhat.com>
16017
16018         * gtk/gtkaspectframe.h (struct _GtkAspectFrame): s/gint/gboolean/.
16019
16020 Fri Jan 21 16:24:08 2000  Owen Taylor  <otaylor@redhat.com>
16021
16022         * gdk/gdkgc.c (gdk_gc_set_dashes): Change from
16023           gdk_gc_set_dashes to take gint8 instead of gchar to
16024           make it clearer that it is _not_ a NULL terminated string.
16025
16026         * gdk/gdk.h gdk/gdkfont.c gdk/gdkgc.c gdk/gdkselection.c
16027           gdk/gdkwindow.c gtk/gtkprogress.[ch] gtk/gtkthemes.[ch]
16028           gtk/gtktreeitem.[ch] gtk/gtkwidget.[ch]: Constify string
16029           arguments.
16030
16031 Thu Dec 30 04:51:05 1999  Tim Janik  <timj@gtk.org>
16032
16033         * gtk/gtkvscale.c (gtk_vscale_pos_background): 
16034         * gtk/gtkhscale.c (gtk_hscale_pos_background): when calculating the
16035         background size relative to our allocation, guard against small
16036         allocations, we may have not yet been size allocated.
16037
16038 Thu Dec  2 10:59:14 1999  Owen Taylor  <otaylor@redhat.com>
16039
16040         * gdk/gdkdnd.c (xdnd_check_dest): Allow version >= 3,
16041         not just version == 3. We implement all 3 + most of 4 - 
16042         (we don't support matching text/plain;charset=iso-8859-1
16043         to a dest that expects text/plain). We'll still advertise
16044         3 to be safe, but any client implementing version >= 3
16045         must interoperate with 3.
16046         
16047 Tue Mar 14 11:53:31 2000  Owen Taylor  <otaylor@redhat.com>
16048
16049         * gtk/gtktooltips.[ch] (struct _GtkTooltips): Remove foreground,
16050         background and gc members, add a warning in gtk_tooltips_set_color()
16051         indicating that this function is deprecated.
16052
16053 Thu Mar  9 22:10:56 GMT 2000  Tony Gale <gale@gtk.org>
16054
16055         * docs/gtkfaq.sgml: FAQ Update:
16056           - Minor cleanups (Emmanuel, me)
16057           - New questions:
16058                 I need to add a new signal to a GTK+ widget. Any idea? (timj)
16059                 How can I retrieve the text from a GtkMenuItem? (timj)
16060                 How do I validate/limit/filter the input to a GtkEntry? (me)
16061                 Memory does not seem to be released when I free the list
16062                         nodes I've allocated (timj)
16063
16064 2000-03-07  Tor Lillqvist  <tml@iki.fi>
16065
16066         * gdk/win32/gdkmain-win32.c: Internal GDK error reporting changes:
16067         (gdk_win32_gdi_failed) New function for reporting errors from GDI,
16068         for which it is no use to call GetLastError onWin9x.
16069         (gdk_other_api_failed) New function, for general error
16070         reporting without calling GetLastError.
16071         (gdk_win32_api_failed) OTOH, this function always calls
16072         GetLastError. (gdk_win32_last_error_string) Remove this function,
16073         GLib has the equivalent now.
16074
16075         * gdk/win32/gdkprivate-win32.h: Declare the above, and macros to
16076         call them with function name, file name and line number in the
16077         arguments.
16078
16079         * gdk/win32/*.c: Use the new macros for reporting errors from GDI
16080         functions.
16081         
16082         * gtk/gtk.def: Add some missing entry points.
16083
16084         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
16085         gtk_paned_set_gutter_size, which don't exist any longer, as void.
16086         
16087         Fixes by Hans Breuer:
16088
16089         * gdk/makefile.msc: Update for debugging.
16090
16091         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_dashes): Fake
16092         implementation, just use the PS_DASH, PS_DOT, PS_DASHDOT or
16093         PS_DASHDOTDOT or PS_DASH styles depending on the number of entries
16094         in the dash_list.
16095
16096         * gdk/win32/gdkwin32.h (GDK_FONT_XFONT): New macro, similar as in
16097         the x11 backend.
16098
16099         * gdk/win32/gdkprivate-win32.h (IS_WIN_NT): New macro.
16100
16101         * gtk/testgtk.c: Include config.h, guard inclusion of unistd.h.
16102
16103 2000-03-04  Tor Lillqvist  <tml@iki.fi>
16104
16105         * gdk/win32/gdkprivate-win32.h (struct _GdkWindowWin32Data): Store
16106         just pixel value of background colour.
16107
16108         * gdk/win32/gdkgc-win32.c (gdk_colormap_color): New function
16109         containing code snippet previously duplicated in a couple of
16110         places.
16111         
16112         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_points): Use
16113         gdk_colormap_color.
16114
16115         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Generate
16116         GDK_SCROLL events for WM_MOUSEWHEEL messages. Don't generate
16117         events for autorepeated Shift, Control and Alt keys. Use
16118         gdk_colormap_color.
16119
16120         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): If the
16121         pointer is inside the window the cursor of which we are setting,
16122         call SetCursor immediately.
16123
16124         * gdk/win32/makefile.cygwin
16125         * gtk/makefile.cygwin: If we don't have the build number stamp
16126         file, use zero.
16127
16128         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
16129         gtk_paned_set_gutter_size as empty.
16130
16131         * gtk/gtk.def: Remove gtk_paned_set_gutter_size.
16132         
16133 Tue Feb 29 13:10:00 GMT 2000  Tony Gale <gale@gtk.org>
16134
16135         * gdk/gdkwindow.h gdk/x11/gxid.c gtk/gtkclist.c gtk/gtkclist.h
16136           gtk/gtkctree.c gtk/gtkmenu.h gtk/gtkwidget.c gtk/testgtk.c
16137           docs/styles.txt docs/refcounting.txt docs/gtkfaq.sgml
16138           docs/gtk_tut.sgml docs/gtk.texi TODO:
16139
16140           Spelling/grammar fixes from Martin Buchholz <martin@xemacs.org>
16141
16142 Sat Feb 26 11:46:25 GMT 2000  Tony Gale <gale@gtk.org>
16143
16144         * gtk/gtkcalendar.c: Implement num_marked_dates,
16145           and don't emit mutiple day_selected signals on
16146           month_prev.
16147
16148 2000-02-25  Jonathan Blandford  <jrb@redhat.com>
16149
16150         * docs/make-todo (lineno): let title and logo be configurable so
16151         that GNOME can use this script too.
16152
16153         * TODO.xml: added logourl and a title
16154
16155 Fri Feb 25 11:12:00 2000  Owen Taylor  <otaylor@redhat.com>
16156
16157         * TODO.xml: Added some UI items, and an explanatory
16158         comment at the top of the file.
16159
16160 Thu Feb 24 09:07:28 2000  Tim Janik  <timj@gtk.org>
16161
16162         * TODO.xml: some updates, added abunch of new entries.
16163         a note for those fiddeling with this file, when done
16164         with it, invoke:
16165         $ ./docs/make-todo TODO.xml >/dev/null
16166         and correct output errors before comitting changes.
16167
16168 Wed Feb 23 22:59:50 2000  Owen Taylor  <otaylor@redhat.com>
16169
16170         * TODO.xml: Added XML-structured TODO file.
16171         * docs/make-todo: python script to turn TODO.xml into
16172           pretty XML output. 
16173
16174 2000-02-23  Jonathan Blandford  <jrb@redhat.com>
16175
16176         * gtk/gtkstyle.c (gtk_default_draw_handle): add a 'paned' mode to
16177         the function to let it draw the seven dots, instead of the old,
16178         much maligned, method.
16179         (draw_dot): New function to draw a dot.
16180
16181         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): changed allocation
16182         to draw the handle inside the border width as opposed to outside.
16183         Use paint function instead of gdk_draw_point.
16184
16185         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): changed allocation
16186         to draw the handle inside the border width as opposed to outside.
16187         Use paint function instead of gdk_draw_point.
16188
16189         * gtk/gtkfilesel.c (gtk_file_selection_update_history_menu):
16190         Change indenting to be more GTK like.
16191
16192 Wed Feb 23 10:54:14 GMT 2000  Tony Gale <gale@gtk.org>
16193
16194         * docs/gtk_tut.sgml: New section on GtkCalendar
16195         * examples/calendar: Update example code
16196
16197 Tue Feb 22 13:54:12 GMT 2000  Tony Gale <gale@gtk.org>
16198
16199         * docs/gtkfaq.sgml: FAQ Update
16200
16201 2000-02-19  Anders Carlsson  <andersca@gnu.org>
16202
16203         * gtk/gtkrange.c (gtk_range_scroll_event): Return TRUE
16204         to prevent the scroll event to be propagated upwards.
16205
16206 Fri Feb 18 14:37:29 2000  Owen Taylor  <otaylor@redhat.com>
16207
16208         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Remove
16209         OwnerGrabButtonMask from button entries for
16210         GDK_BUTTON_PRESS / GDK_BUTTON_RELEASE.
16211
16212         * gtk/gtklayout.c (gtk_layout_realize): Always add GDK_SCROLL
16213         to the event mask (which will result in button/press release
16214         being added to the event mask on Unix) so scrolling works
16215         for layouts in scroll windows.
16216
16217         * gdk/gdkevents.h (enum): Fix up GDK_ALL_EVENTS_MASK.
16218
16219         Patch from Anders Carlsson  <andersca@gnu.org> to add
16220         a scroll event.
16221
16222         * gtk/testgtk.c (scroll_test_scroll): Added an example of mouse wheel
16223         scrolling to the "Test Scrolling" part of testgtk.
16224  
16225         * gtk/gtkwidget.h (struct _GtkWidgetClass): Added scroll_event signal.
16226  
16227         * gtk/gtkwidget.c: Added "scroll_event" GTK+ signal and matched
16228         it against GDK_SCROLL.
16229  
16230         * gtk/gtkrange.c (gtk_range_scroll_event): Updated to use the new
16231         way of mouse wheel scrolling.
16232  
16233         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_scroll_event): Likewise.
16234  
16235         * gtk/gtkspinbutton.c (gtk_spin_button_scroll): Likewise.
16236  
16237         * gtk/gtkmain.c: Removed previous mouse wheel hack.
16238  
16239         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Added entry in
16240         gdk_event_mask_table.
16241  
16242         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Added 
16243         GdkEventScroll handler.
16244  
16245         * gdk/gdkevents.h: Added GdkEventScroll structure.
16246  
16247 Thu Feb 17 17:10:12 2000  Owen Taylor  <otaylor@redhat.com>
16248
16249         * gtk/gt{h,k,}vpaned.[ch]: Add patch from Jonathan Blandford
16250         and Anders Carlsson to change the Paned widgets so that they
16251         can be dragged from anywhere along the length. Also change
16252         the way that this is drawn to make this apparent.
16253
16254         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): Apply patch
16255         from George Lebl to check that option_menu->menu is present
16256         before getting history.
16257
16258 2000-02-14  Tor Lillqvist  <tml@iki.fi>
16259
16260         * gdk/gdkdraw.c (gdk_draw_segments): Move the test for no segments
16261         before the assertion for non-NULL segment list.
16262
16263         * gdk/win32/gdkgc-win32.c: (gdk_win32_gc_values_to_win32values):
16264         Seems that pattern brushes *must* be 8x8 pixels! At least on my
16265         machine, but it might be display driver dependent. Sigh, so make
16266         sure the stipple is that size. Does Windows suck or what?
16267
16268         * gdk/win32/gdkdrawable-win32.c: Improve error handling in a few
16269         places.
16270
16271 2000-02-13  Havoc Pennington  <hp@pobox.com>
16272
16273         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): init
16274         refcount to 1
16275         (gdk_cursor_new): init refcount to 1
16276
16277         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new): init refcount to 1
16278
16279 2000-02-13  Tor Lillqvist  <tml@iki.fi>
16280
16281         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Add an extra parameter
16282         so that we don't have to do unnecessary settings to the HDC.
16283
16284         * gdk/win32/gdkdrawable-win32.c
16285         * gdk/win32/gdkimage-win32.c: Corresponding changes to the calls of
16286         gdk_gc_predraw.
16287
16288         * gdk/win32/gdkdrawable-win32.c: Special-casing for GdkGCs where
16289         the fill style is GDK_OPAQUE_STIPPLED. In those cases we construct
16290         GDI paths, call WidenPath to get the outline of the stroken path,
16291         and then fill the outline (with the brush that was built from the
16292         stipple).
16293
16294         * gdk/win32/gdkgc-win32.c: Factor out common code from
16295         _gdk_win32_gc_new and gdk_win32_gc_set_values into
16296         gdk_win32_gc_values_to_win32values. Use correct colour for
16297         SetBkColor() (Until now the code actually used a random colour in
16298         the call to SetBkColor()... but that didn't show up as not many
16299         GDI APIs use the background colour. Pattern (opaque stippled)
16300         brushes do.)
16301
16302         * gdk/win32/gdkmain-win32.c (gdk_win32_last_error_string,
16303         gdk_win32_api_failed): New functions for error logging.
16304
16305         * gdk/win32/gdkprivate-win32.h: Declare them, and define a macro
16306         WIN32_API_FAILED to call them, passing function or file name and
16307         line number.
16308
16309         * gdk/win32/*.c: Use the WIN32_API_FAILED macro.
16310
16311         * gdk/win32/gdkprivate-win32.h: Store just the pixel values from
16312         GdkColor for foreground and background in GdkGCWin32Data.
16313
16314         * gdk/makefile.cygwin: Link in the resource object separately.
16315
16316         * gdk/win32/rc/gdk.rc
16317         * gtk/gtk.rc (New file)
16318         * gdk/win32/makefile.cygwin
16319         * gtk/makefile.cygwin: Update build number in DLLs automatically,
16320         as in GLib.
16321
16322 Sun Feb 13 08:54:45 2000  Tim Janik  <timj@gtk.org>
16323
16324         * gdk/gdkcursor.h (struct _GdkCursor): s/refcount/ref_count/.
16325         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): 
16326         * gdk/x11/gdkcursor-x11.c (_gdk_cursor_destroy): 
16327         * gdk/gdkcursor.c (gdk_cursor_ref): insert assertments for the
16328         parameters given and cursor->ref_count. coding style fixups.
16329
16330         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
16331         not GtkWidget.
16332         
16333         * gtk/*.h: applied patch from Mathieu Lacage <lacage@email.enst.fr> to
16334         fix up widget macros and add _GET_CLASS() variant.
16335         
16336         * gtk/*.c: some GtkType fixups.
16337
16338 2000-02-09  Tor Lillqvist  <tml@iki.fi>
16339
16340         * gdk/win32/gdkproperty-win32.c
16341         * gdk/x11/gdkproperty-x11.c: The assertions for GDK_IS_WINDOW
16342         were reversed.
16343
16344 2000-02-04  Tor Lillqvist  <tml@iki.fi>
16345
16346         * gdk/win32/gdkfont-win32.c (logfont_to_xlfd): Use
16347         g_filename_to_utf8 to convert the font names Windows gives us from
16348         whatever is the default codepage to UTF-8.
16349         (gdk_font_load_internal) Use g_filename_from_utf8 for conversion
16350         in the other direction.
16351
16352         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Fix cut&paste
16353         error in debugging output.
16354
16355 2000-02-02  Tor Lillqvist  <tml@iki.fi>
16356
16357         * gdk/win32/gdkwindow-win32.c (gdk_window_clear): Pass zero width
16358         and height parameters to gdk_window_clear_area(). Not minus one.
16359
16360 Wed Feb  2 11:58:05 2000  Owen Taylor  <otaylor@redhat.com>
16361
16362         * gtk/gtkdnd.c (gtk_drag_selection_received): Add some sanity
16363         checks if the widget passed to gtk_drag_get_data() was not the
16364         dest widget.
16365
16366 2000-02-01  Tor Lillqvist  <tml@iki.fi>
16367
16368         * gtk/gtkfilesel.c: Use the g_filename_to_utf8 and
16369         g_filename_from_utf8 functions (which were added a moment ago to
16370         GLib). Some cleanups: Use gbooleans. Use GStrings instead of fixed
16371         size buffers.
16372
16373         gtk_file_selection_get_filename returns the filename in the C
16374         runtime encoding. It calls g_filename_from_utf8, but copies the
16375         returned string to a static buffer, which is returned. I think
16376         this is better than returning the result from g_filename_from_utf8
16377         directly, which would mean all apps that use it would have to free
16378         the return value. Or should this function care about this issue at
16379         all? Maybe a new function with clearly defined semantics.
16380
16381         * gtk/gtkfilesel.h: Add comment about
16382         gtk_file_selection_get_filename returning the filename in the C
16383         runtime's encoding.
16384
16385         * README.win32
16386         * gdk/gdk.def
16387         * gdk/makefile.{cygwin,msc}
16388         * gtk/gtk.def: Updates.
16389
16390         * gdk/gdkcursor-win32.c: Initialise refcount.
16391
16392 2000-01-31  Yuan-Chung Cheng <platin@linux.org.tw>
16393
16394         * configure.in: Added "zh_CN.GB2312" to ALL_LINGUAS.
16395
16396 2000-01-30  Havoc Pennington  <hp@pobox.com>
16397
16398         * gtk/testgtk.c (set_cursor): use gdk_cursor_unref instead of
16399         destroy
16400
16401         * gdk/gdkimage.c (gdk_image_ref): image wasn't being returned
16402
16403         * gdk/gdkprivate.h: declare _gdk_cursor_destroy which is then 
16404         implemented in platform-specific code
16405
16406         * gdk/Makefile.am (gdk_c_sources): add gdkcursor.c
16407
16408         * gdk/x11/gdkcursor-x11.c (gdk_cursor_destroy): rename with an
16409         underscore in front
16410
16411         * gdk/win32/gdkcursor-win32.c (gdk_cursor_destroy):
16412         put an underscore in front
16413
16414         * gdk/gdkcursor.c: new file, implements
16415         gdk_cursor_ref/gdk_cursor_unref
16416
16417         * gdk/gdkcursor.h: Refcount GdkCursor
16418
16419         * gdk/gdkcompat.h (gdk_cursor_destroy): compat
16420
16421 2000-01-29  Tor Lillqvist  <tml@iki.fi>
16422
16423         * gdk/gdkwindow.h
16424         * gdk/gdkpixmap.h: Remove prototypes for renamed functions.
16425
16426 Tue Jan 25 11:43:21 2000  Owen Taylor  <otaylor@redhat.com>
16427
16428         * gtk/gtkinvisible.h (struct _GtkInvisible[Class]): Fix
16429         structures to properly inherit from GtkWidget not GtkBin.
16430
16431 Sun Jan 23 20:28:24 2000  Owen Taylor  <otaylor@redhat.com>
16432
16433         * gtk+.spec.in: Added lib/gtk+/include/* to %files
16434         (bug #5178 - Peter Wainright)
16435         
16436         * gtk/Makefile.am (gtk_public_h_sources): Add gtkcompat.h
16437         so that it will be installed.
16438         (bug #4889 - "david d `zoo' zuhn" <zoo@mnnr.org>)
16439
16440 Fri Jan 21 16:29:28 2000  Owen Taylor  <otaylor@redhat.com>
16441
16442         * gtk/gtkstyle.[ch] docs/Changes-1.4.txt: Make the @detail argument
16443         for the GtkStyleClass vtable const.
16444
16445         * gtk/gtkitemfactory.[ch] docs/Changes-1.4.txt: Make GtkPrintFunc
16446         take a const string argument like GtkTranslateFunc. This will
16447         require changes in use code.
16448
16449 2000-01-19  Tor Lillqvist  <tml@iki.fi>
16450
16451         * gdk/win32/gdkwindow-win32.c (gdk_window_clear_area): The correct
16452         semantics (to mimic the X11 backend, which just calls XClearArea)
16453         is to check for zero width (and height), and in that case use the
16454         window's width minus x (height minus y). This fixes for instance
16455         some redraw problems with gtkclist, which were easily noticeable
16456         in the gtk file selection widget.
16457
16458         (gdk_window_new): Don't set WS_EX_TOPMOST for dialog
16459         windows.
16460
16461 2000-01-13  Tor Lillqvist  <tml@iki.fi>
16462
16463         * configure.in
16464         * gdk/Makefile.am
16465         * gdk/x11/Makefile.am
16466         * gdk/win32/Makefile.am: Small fixes, thanks to Peter Wainwright
16467         (bug #5177).
16468         * gdk/win32/gdkcc-win32.c: Reintroduce, to be thrown
16469         out later.
16470
16471 2000-01-09  Tor Lillqvist  <tml@iki.fi>
16472
16473         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Ignore
16474         WM_MOVE for iconified or invisible windows. This fixes various
16475         problems when minimising windows. Thanks to Bernd Herd.
16476
16477 2000-01-05  Tor Lillqvist  <tml@iki.fi>
16478
16479         * gdk/gdkdraw.c (gdk_draw_lines): Fix copy&paste error: Call the
16480         backend's draw_lines method, not draw_points.
16481
16482 2000-01-02  Tor Lillqvist  <tml@iki.fi>
16483
16484         * gdk/win32/gdkevents-win32.c: Clean up some more leftovers from
16485         before Owen's reorganisation: Don't have queued_events and
16486         queued_tail statics in this file, but use gdk_queued_events and
16487         gdk_queued_tail. This makes exposure event compression work again.
16488
16489         (gdk_WindowProc): Comment out a posting of gdk_ping_msg, doesn't
16490         seem to be needed?
16491
16492 1999-12-30  Tor Lillqvist  <tml@iki.fi>
16493
16494         * gdk/gdk.c: If we don't HAVE_XCONVERTCASE we must #include
16495         gdkkeysyms.h to get the GDK_* keysym constants that are needed by
16496         gdk_keyval_convert_case(). Otherwise, gdk_keyval_convert_case()
16497         doesn't do anything.
16498
16499         * gdk/gdk.def: Add gdk_xid_table_insert.
16500
16501         * gdk/win32/gdkprivate-win32.h
16502         * gdk/win32/gdkevents-win32.c
16503         * gdk/win32/gdkinput-win32.c
16504         
16505         * gdk/win32/gdkwindow-win32.c: Remove the superfluous
16506         extension_events field in the GdkWindowWin32Data struct. Use only
16507         the extension_events field in GdkWindowPrivate. Previously one was
16508         set, and the other one tested, which broke tablet
16509         functionality. Thanks to Keishi Suenaga for pointing this out.
16510
16511 1999-12-18  Tor Lillqvist  <tml@iki.fi>
16512
16513         * gdk/win32/gdkfont-win32.c (gdk_text_size, gdk_text_extents):
16514         When handling a single character (text length == 1), don't handle
16515         it as if it was UTF-8.
16516
16517 1999-12-11  Tor Lillqvist  <tml@iki.fi>
16518
16519         * Makefile.am: Distribute README.win32.
16520         
16521         * gdk/Makefile.am
16522         * gdk/win32/Makefile.am: Distribute Win32 files.
16523
16524         * gdk/makefile.msc: New file.
16525
16526         * gdk/gdk.c (gdk_arg_context_parse): Fix gccism (no statement
16527         after label).
16528
16529         * gdk/gdkprivate.h: Must mark also gdk_error_warnings and
16530         gdk_error_code as GDKVAR, as they are referred outside GDK.
16531
16532         * gdk/win32/makefile.msc: Update.
16533
16534         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): More
16535         tweaks. Check only if at least one of those Unicode subrange bits
16536         we care for is set. If no code page bits are set, guess (wildly)
16537         based on the charset.
16538
16539         * gdk/win32/gdkinput-win32.c: Remove debugging leftover.
16540
16541         * gdk/win32/gdkwindow-win32.c (gdk_window_new): Assure title is
16542         non-NULL.
16543
16544         * gtk/gtkdnd.c
16545         * gtk/gtklayout.c
16546         * gtk/gtkplug.c
16547         * gtk/gtkselection.c
16548         * gtk/gtksocket.c
16549         * gtk/gtkwindow.c: Include x11/gdkx.h *or* win32/gdkwin32.c as
16550         appropriate. There must be a cleaner way to handle this?
16551
16552         * gtk/gtkrc.c: Must include windows.h on Win32.
16553
16554         * gtk/testgtk.c: No need to include gdkx.h.
16555
16556         * gtk/makefile.cygwin: Correct invokation of genmarshal.pl.
16557
16558 1999-12-07  Tor Lillqvist  <tml@iki.fi>
16559
16560         * gdk/win32/gdkfont-win32.c: Fix string measurement code. For now,
16561         the rbearing is set to the same as the width, but this should be
16562         fixed.
16563
16564 1999-12-06  Tor Lillqvist  <tml@iki.fi>
16565
16566         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): New
16567         function. If Windows doesn't tell us what Unicode subranges a font
16568         covers, guesstimate based on the codepages it covers. This will
16569         hopefully help those Windows versions or fonts that don't give us
16570         any useful Unicode subrange information with GetTextCharsetInfo.
16571         Call this function in gdk_font_load_internal.
16572
16573         * gdk/win32/{gdkdnd,gdkimage,gdkpixmap,gdkprivate}-win32.c: Misc
16574         minor changes.
16575
16576 Fri Dec  3 14:09:50 1999  Owen Taylor  <otaylor@redhat.com>
16577
16578         * gtk/gtkoptionmenu.[ch] (gtk_option_menu_get_history):
16579         New function, long needed.
16580
16581 Wed Dec  1 22:35:43 1999  Owen Taylor  <otaylor@redhat.com>
16582
16583         * gdk/gdkproperty.h x11/gdkproperty.c: Change 
16584         only_if_exists argument of gdk_atom_intern to
16585         bool.
16586
16587 1999-11-25  Tor Lillqvist  <tml@iki.fi>
16588
16589         * gdk/gdkgc.c (gdk_gc_set_ts_origin, gdk_gc_set_clip_origin): 
16590         Fix two copy&paste errors.
16591
16592         * gdk/makefile.cygwin: Also rebuild DLL when the static archive in
16593         win32 has changed.
16594
16595         * gdk/win32/gdkprivate-win32.h: Don't need CPINFO in the
16596         GdkWin32SingleFont struct.
16597
16598         * gdk/win32/gdkfont-win32.c: Some more debugging: Print Unicode
16599         subranges of loaded fonts. Clear font signature first, in case
16600         GetTextCharsetInfo fails. Pretend SYMBOL_CHARSET fonts have
16601         ASCII+Basic Latin (i.e. 0x40--0xFF) as they are single-byte.
16602
16603         * gdk/win32/gdkgc-win32.c: Improved logging. (gdk_gc_postdraw):
16604         Unoffset clip region.
16605
16606 1999-11-23  Tor Lillqvist  <tml@iki.fi>
16607
16608         * gdk/win32/gdkevents-win32.c (gdk_event_translate): set
16609         event->any.window before calling filter functions.
16610
16611 Fri Nov 19 10:34:41 1999  Owen Taylor  <otaylor@redhat.com>
16612
16613         * gtk/gtkgamma.h: Adapt cast macros to standard.
16614
16615 [ Merges from 1.2 ]
16616
16617 Tue Nov 16 10:15:54 1999  Owen Taylor  <otaylor@redhat.com>
16618
16619         * gtk/gtkitemfactory.c (gtk_item_factory_parse_path):
16620         If translation does not include a '/', use entire
16621         translation instead of crashing.
16622
16623 Sun Oct 31 22:21:11 1999  Tim Janik  <timj@gtk.org>
16624
16625         * docs/gtk_tut.sgml:
16626         s/gtk_accel_group_attach/gtk_window_add_accel_group/.
16627
16628 Sat Oct 30 09:09:09 1999  Owen Taylor  <otaylor@redhat.com>
16629
16630         * gtk/gtkselection.c (gtk_target_list_remove): Use
16631         g_list_remove_link, not g_list_remove.
16632
16633         [ From Geert Bevin <gbevin@thunderstorms.org> ]
16634         
16635 Sun Oct 24 07:41:40 1999  Tim Janik  <timj@gtk.org>
16636
16637         * gtk/gtkclist.c (real_undo_selection): commented out g_print()
16638         statement upon unselection (how the heck did that slip in?).
16639
16640 Sat Oct 23 03:03:08 1999  Tim Janik  <timj@gtk.org>
16641
16642         * gtk/gtktext.c (gtk_text_freeze): 
16643         (gtk_text_thaw): undraw/draw cursor here to avoid unnecessary scrolling
16644         in frozen state (and aparently crashes). patch provided by Anders
16645         Melchiorsen <and@kampsax.dtu.dk>.
16646
16647 Sat Oct 23 02:53:20 1999  Tim Janik  <timj@gtk.org>
16648
16649         * fix insensitive default/focus widget activation,
16650         reported by Matt Goodall <mgg@isotek.co.uk>.
16651
16652         * gtk/gtkwindow.c (gtk_window_key_press_event): 
16653         (gtk_window_activate_default):
16654         (gtk_window_activate_focus):
16655         return handled=FALSE for actiavtion of insensitive default
16656         widgets. return handled=TRUE for activation of insensitive
16657         focus widgets. don't activate in either case.
16658
16659 Tue Oct 19 09:55:08 1999  Owen Taylor  <otaylor@redhat.com>
16660
16661         * gtk-config.in (lib_gtk): Switch order of @x_cflags@
16662         and $glib_cflags to match library order and in the
16663         theory that an old version of GLib is more likely to
16664         be in the include directory for X then vice-versa.
16665         (Bug #2776)
16666
16667 Tue Oct 19 09:46:49 1999  Owen Taylor  <otaylor@redhat.com>
16668
16669         * gtk/gtkrc.c (gtk_rc_init): Always use LC_CTYPE 
16670         to determine the locale for fontsets, not LC_MESSAGES;
16671         the user may want English messages with a handling
16672         for non-English languages. (LC_CTYPE=ru_RU LC_MESSAGES=fr_FR
16673         will still be broken) (Bug #2891)
16674
16675 Tue Oct 19 20:36:42 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
16676
16677         * gtk/gtkrc.ko: Fixed the wrong number of "*"'s.
16678
16679 Tue Oct 19 12:15:13 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
16680
16681         * gtk/gtkrc.ko: Changed the Korean default fontset.
16682
16683 Fri Oct  8 02:32:47 1999  Owen Taylor  <otaylor@redhat.com>
16684
16685         * gtk/gtklayout.c (gtk_layout_adjustment_changed): Fix bug
16686         where when scrolling to the left or top double exposes
16687         were done, causing major slowdowns.
16688
16689 Thu Oct  7 18:31:55 1999  Owen Taylor  <otaylor@redhat.com>
16690
16691         * gtk/gtkrc.c (gtk_rc_init): Always normalize codeset
16692         names to lowercase and alphanumeric, before looking
16693         them up.
16694
16695         * gtk/Makefile.am: Install codeset variant gtkrc files
16696         with normalized names.
16697
16698 Thu Oct  7 22:52:42 1999  Tim Janik  <timj@gtk.org>
16699
16700         * gtk/gtkitemfactory.c (gtk_item_factory_popup_with_data): even
16701         popup menus when the menu is already visible, but its parent
16702         is still hidden, (happens after tornoff window got hidden).
16703
16704 Thu Oct  7 11:09:55 1999  Owen Taylor  <otaylor@redhat.com>
16705
16706         * gtk/Makefile.am (install-data-local): Fix
16707         a typo where gtkrc.vi_VN.tcvn5712 wasn't getting
16708         deleted, causing error messages on install.
16709
16710 Thu Oct  7 11:03:06 1999  Owen Taylor  <otaylor@redhat.com>
16711
16712         * gtk/gtk[hv]paned.c (gtk_{h,v}paned_draw): Redraw
16713         the handle as well, since we now sometimes ignore
16714         exposes on the handle while resizing.
16715
16716 Wed Oct  6 18:02:31 1999  Owen Taylor  <otaylor@redhat.com>
16717
16718         * gtk/gtkrc.c (gtk_rc_append_default_pixmap_path): Fix stupid
16719         extra g_free introduced in one of the last one or two 
16720         commits.
16721
16722 Wed Oct  6 16:38:36 1999  Owen Taylor  <otaylor@redhat.com>
16723
16724         * gtk/Makefile.am gtk/gtkrc*: Make naming of gtkrc files
16725         consistent, put each style that a gtkrc.* file creates
16726         in a unique namespace, remove old files before installing.
16727
16728 Wed Oct  6 14:31:16 1999  Owen Taylor  <otaylor@redhat.com>
16729
16730         * gtk/gtkrc.c (gtk_rc_init): Avoid leaking memory when
16731         gtk_rc_init is called multiple times. (Yes, people who
16732         do that have bugs in their code.)
16733
16734 Tue Oct  5 11:36:57 PDT 1999 Manish Singh <yosh@gimp.org>
16735
16736         * gtk/Makefile.am: listing gtkrc in gtkconf_DATA seems to barf.
16737         Remove it since it's generated by the Makefile anyway
16738
16739 Tue Oct  5 02:43:41 1999  Owen Taylor  <otaylor@redhat.com>
16740
16741         * gdk/gdkinputcommon.h (gdk_input_device_new): Free
16742         device->info.axes for core pointer.
16743
16744 Thu Sep 30 13:55:25 1999  Owen Taylor  <otaylor@redhat.com>
16745
16746         * gtk/testgtk.c (destroy_idle_test): Rename idle to 
16747         idle_id, to deal with obsolete, broken C libraries.
16748
16749 Mon Sep 27 02:50:15 1999  Owen Taylor  <otaylor@redhat.com>
16750
16751         * gtk/gtkvscale.c (gtk_vscale_draw): Don't add in
16752         allocation->x/y twice!
16753
16754         * gtk/gtkhscale.c: Make usage of gtk_hscale_pos_trough()
16755         consistent with gtk_vscale_pos_trough().
16756
16757 Sun Sep 26 19:44:34 1999  Owen Taylor  <otaylor@redhat.com>
16758
16759         * gtk/gtkcontainer.c (gtk_container_queue_resize): We may
16760         be queueing a resize on a toplevel container between
16761         the time we show it and when we map it. So, we need
16762         to test GTK_WIDGET_VISIBLE() for toplevels, and only
16763         use GTK_WIDGET_DRAWABLE() for child windows.
16764
16765 Thu Sep 23 16:41:03 1999  Owen Taylor  <otaylor@redhat.com>
16766
16767         * gtk/Makefile.am (LDADDS): Add GDK_WLIBS to LDADDS 
16768         (fixes bug #2144)
16769
16770 Fri Sep 24 00:51:45 1999  Tim Janik  <timj@gtk.org>
16771
16772         * gtk/gtkcontainer.c (gtk_container_queue_resize): check for
16773         container DRAWABLE (instead of VISIBLE), so we don't queue
16774         resizes on non-toplevel containers.
16775
16776 Sun Sep 19 18:13:31 1999  Owen Taylor  <otaylor@redhat.com>
16777
16778         * gtk/gtkselection.[ch]: Make the data argument
16779         const guchar *.
16780
16781 Sat Sep 18 21:27:40 1999  Owen Taylor  <otaylor@redhat.com>
16782
16783         * gtk/gtkwindow.c: Try to behave sensibly if 
16784         the focus widget is the window itself. (Should
16785         we allow this at all?)
16786
16787 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
16788
16789         * gtk/gtkwidget.c (gtk_widget_set_sensitive): 
16790         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): 
16791         * gtk/gtknotebook.c (gtk_notebook_set_show_border): 
16792         * gtk/gtkclist.c (gtk_notebook_set_show_border): make gboolean args
16793         in prototypes and implementations consistent (Tomas Ogren).
16794
16795         * gtk/gtklayout.c (gtk_layout_remove): unset GTK_IS_OFFSCREEN flag
16796         before the widget is unparented (reported by damon).
16797
16798         * gtk/gtkdnd.c: make the cursor and icon data _unsigned_ char,
16799         since we provide unsigned data anyways.
16800
16801 Thu Sep 16 21:32:01 1999  Owen Taylor  <otaylor@redhat.com>
16802
16803         * gtk/gtktooltips.c (gtk_tooltips_set_tip): Delay
16804         the call to gtk_tooltips_layout_text() until later.
16805
16806         * gtk/gtktooltips.c (gtk_tooltips_draw_tips):
16807         Call gtk_widget_ensure_style() before using the style.
16808
16809 Wed Sep 15 02:52:19 1999  Owen Taylor  <otaylor@redhat.com>
16810
16811         * gtk/gtkwidget.c (gtk_widget_event): Added workaround
16812         for old widgets that don't propagate draws to all
16813         children. (Namely gnome-dock for gnome-libs <= 1.0.16)
16814
16815 Tue Sep 14 19:22:19 1999  Tim Janik  <timj@gtk.org>
16816
16817         * gtk/gtkwidget.c (gtk_widget_queue_resize): don't queue the parent
16818         for a redraw but just the widget that requested the resize.
16819
16820 Tue Sep 14 18:29:47 1999  Tim Janik  <timj@gtk.org>
16821
16822         * gtk/gtkcontainer.c: added new widget level method
16823         gtk_container_set_reallocate_redraws() and a GtkContainer flag
16824         reallocate_redraws : 1 to reflect the setting, exported this through
16825         the argument system as a boolean ::reallocate_redraws.
16826
16827         * gtk/gtkwidget.c (gtk_widget_size_allocate): when queueing redraws
16828         on the widget because the allocation changes, do so as well for
16829         widget->parent if the parent has reallocate_redraws set to TRUE.
16830         with that containers requesting reallocation redraws get automatically
16831         redrawn if their children changed allocation (this unfortunately
16832         affects also other children that didn't change allocation, but we
16833         cannot work around that before 1.3).
16834
16835 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
16836
16837         * gtk/gtkwidget.c (gtk_widget_idle_draw): only emit ::draw if width
16838         _and_ height are >0 (not _or_).
16839
16840         * gtk/gtktable.c (gtk_table_remove): use gtk_widget_queue_resize()
16841         instead of gtk_container_queue_resize(), which is a core gtk internal
16842         function (must have been on crack when i queued that).
16843
16844         * gtk/gtkprivate.h: added new private flag GTK_FULLDRAW_PENDING, so
16845         we can check more reliably if we want to discard expose events.
16846         * gtk/gtkwidget.c: added setting/unsetting of the GTK_FULLDRAW_PENDING
16847         flag.
16848         
16849         * gtk/gtkwidget.c (gtk_widget_event): don't discard synthesized exposes,
16850         we simply trust these events. for deciding whether to discard exposes,
16851         check GTK_FULLDRAW_PENDING instead of RESIZE_PENDING.
16852         
16853 Mon Sep 13 15:01:21 1999  Owen Taylor  <otaylor@redhat.com>
16854
16855         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
16856         queues of areas that are completely off screen.
16857
16858         * gtk/gtkwidget.c (gtk_widget_idle_draw): Fix broken
16859         logic for handleboxes.
16860
16861         * gtk/gtkwidget.c (gtk_widget_queue_draw_data): Add santity
16862         check on width/height.
16863
16864 Mon Sep 13 02:22:47 1999  Tim Janik  <timj@gtk.org>
16865
16866         * gtk/Makefile.am: backed out Raja's recent VPATH build "improvements",
16867         we are fine with using $@ the way we do (if we actually encounter
16868         brokeness with $@ in VPATH builds because of additional path prefixes,
16869         we need to use $(@F) actually).
16870
16871 Mon Sep 13 01:34:53 1999  Tim Janik  <timj@gtk.org>
16872
16873         * gtk/gtksignal.c: renamed two variables, hopefully didn't introduce
16874         short lived bugs, that would allow language bindings to do surgeries
16875         to our guts.
16876
16877 Fri Sep 10 15:22:50 1999  Owen Taylor  <otaylor@redhat.com>
16878
16879         * gtk/gtkwindow.c (gtk_window_size_allocate): Fix typo
16880         where comparison was being done against an uninitialized
16881         value causing intermittant results depending on
16882         compiler flags. Also make it clearer that we aren't
16883         ever initializing the child as 0x0 (though this will
16884         be caught in gtk_widget_size_allocate())
16885
16886 Fri Sep 10 10:06:56 1999  Owen Taylor  <otaylor@redhat.com>
16887
16888         * gtk/gtkwindow.c (gtk_window_set_transient_for): Move
16889         gtk_window_unset_transient_for() call after we do checks
16890         involving the old transient parent.
16891         [ From Lance Capser <lmc@cyberhighway.net> ]
16892
16893 1999-09-07  Raja R Harinath  <harinath@cs.umn.edu>
16894
16895         * gtk/Makefile.am (gtk.defs): Go back to using `touch' to create
16896         an empty file.
16897
16898 Mon Sep  6 00:11:56 1999  Lars Hamann  <lars@gtk.org>
16899
16900         * gtk/gtkctree.c (gtk_ctree_is_ancestor): return FALSE if node has
16901         no children. (Reported by: Chris Rogers <gandalf@pobox.com>)
16902
16903 1999-09-03  Raja R Harinath  <harinath@cs.umn.edu>
16904
16905         * gtk/Makefile.am (gen_sources): Improve VPATH builds.
16906         `$@' is valid only in the build dir, not after we've done 
16907         `cd $srcdir'.  Also use `test -f' instead of less portable
16908         `test -e'.
16909
16910 Fri Sep  3 15:59:56 1999  Owen Taylor  <otaylor@redhat.com>
16911
16912         * gtk/gtktext.c (correct_cache_insert): Rewrite
16913          for simplicity, and hopefully correctness.
16914          (Fixes bug #1322, which was a segfault when
16915           on some insertions with the properties around
16916           the insertion set up just wrong.)
16917
16918         * gtk/gtktext.c (gtk_text_adjustment): When we receive
16919          a "changed" signal, clamp the new value to the adjustment
16920          bounds to avoid segfaulting if someone tries to change
16921          the adjustment to a bogus value. (Bug #1795)
16922
16923 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
16924
16925         * gtk/gtkmain.c: Ignore unexpected destroy notifies
16926         for children, for toplevel windows handle them
16927         like delete_event.
16928
16929         * gtk/gtkplug.c: Add an unrealize handler so that
16930         we unref plug->socket_window when we are done
16931         with it.
16932
16933 Fri Sep  3 14:52:54 1999  Owen Taylor  <otaylor@redhat.com>
16934
16935         * gtk/gtktext.c (clear_area): Fix stupid signedness
16936          problem that was causing background to sometimes
16937          be misaligned.
16938
16939 Fri Sep  3 12:26:33 1999  Owen Taylor  <otaylor@redhat.com>
16940
16941         [ Fixes pointed out by Ettore Perazzoli <ettore@comm2000.it> ]
16942         
16943         * gtk/gtkmenu.c (gtk_menu_position): Make
16944          sure we never position menus with negative x, y,
16945          since gtk_widget_set_uposition() can't handle that.
16946
16947         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu):
16948          Modify the positioning code a bit so that we always
16949          put the top-left corner onscreen. (This is for
16950          UI reasons, gtk_menu_position() now takes care of
16951          gtk_widet_set_uposition() brokeness.)
16952
16953 Fri Sep  3 03:06:30 1999  Tim Janik  <timj@gtk.org>
16954
16955         * gtk/Makefile.am: fixed up things for -jx, x > 1.
16956
16957 Sun Sep  5 08:48:51 1999  Owen Taylor  <otaylor@redhat.com>
16958
16959         * gtk/gtkwidget.c (gtk_widget_modify_style): Ref the
16960           RC style that is passed in. The lack of the ref
16961           before was a bug. If people worked around this
16962           bug, this will introduce a slight memory leak
16963           in their code. The code should typically look like:
16964
16965             rc_style = gtk_rc_style_new ();
16966             [...]
16967             gtk_widget_modify_style (widget, rc_style);
16968             gtk_rc_style_unref (rc_style);
16969
16970         * gtk/gtkwidget.c (gtk_widget_modify_style): Reset
16971           the style if it was already set.
16972
16973         * gtk/gtkwidget.c (gtk_widget_set_name): Only set the
16974           style if it was set before.
16975
16976 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
16977
16978         * gtk/testgtk.c (main): Add a check to see if we
16979           are being run from the correct directory and
16980           to quit nicely if we are not.
16981
16982         * gtk/gtkrc.c (gtk_rc_slist_remove_all): Make function
16983           static.
16984
16985 Thu Sep  2 23:00:03 1999  Tim Janik  <timj@gtk.org>
16986
16987         * gtk/gtkenums.h (GtkWindowPosition): added GTK_WIN_POS_CENTER_ALWAYS.
16988
16989         * gtk/gtkwindow.c:
16990         queue resizes unconditionally (gtk_widget_queue_resize will figure
16991         what to do if the window is not realized).
16992         (gtk_window_move_resize): only recenter the window
16993         for GTK_WIN_POS_CENTER_ALWAYS.
16994         (gtk_window_compute_reposition): handle GTK_WIN_POS_CENTER_ALWAYS in
16995         the same way as GTK_WIN_POS_CENTER.
16996
16997 Thu Sep  2 22:39:27 1999  Tim Janik  <timj@gtk.org>
16998
16999         * gtk/gtkwindow.c (gtk_window_reposition): check for the last position
17000         with (!(info->last_flags & GDK_HINT_POS)) instead of
17001         (!info->last_flags & GDK_HINT_POS).
17002
17003         * gtk/gtkwindow.c (gtk_window_move_resize): constrain new_width and
17004         new_height unconditionally, because we use these values even if
17005         !default_size_changed && !hints_changed.
17006         comented the (default_size_changed || hints_changed) case with
17007         respect to resize rejects from the window manager.
17008
17009         * gtk/gtkwindow.c (gtk_window_move_resize): save info->last values
17010         in the zvt condition hack, since this includes the window hints, set
17011         the hints after the handling_resize case.
17012
17013         * gtk/gtkwindow.c (gtk_window_show): constrain the default size that a
17014         window is initially shown with to the geometry.
17015
17016 Thu Sep  2 07:38:56 1999  Tim Janik  <timj@gtk.org>
17017
17018         * gtk/gtkwindow.c (gtk_window_move_resize):
17019         s/size_changed/default_size_changed/g so i know what's
17020         really going on (frying brain on smaller flame now).
17021
17022 Thu Sep  2 05:47:47 1999  Tim Janik  <timj@gtk.org>
17023
17024         * gtk/gtkwindow.c (gtk_window_move_resize): queue a new resize if
17025         we have size_changed upon handling_resize. this is a gross
17026         workaround for the broken zvt widget and should be removed in
17027         1.3 again (search for FIXME).
17028         Owen provided an accurate comment for this:
17029
17030         /* We could be here for two reasons
17031          *  1) We coincidentally got a resize while handling
17032          *     another resize.
17033          *  2) Our computation of size_changed was completely
17034          *     screwed up, probably because one of our children
17035          *     is broken. It's probably a zvt widget.
17036          *
17037          * For 1), we could just go ahead and ask for the
17038          * new size right now, but doing that for 2)
17039          * might well be fighting the user (and can even
17040          * trigger a loop). Since we really don't want to
17041          * do that, we requeue a resize in hopes that
17042          * by the time it gets handled, the child has seen
17043          * the light and is willing to go along with the
17044          * new size. (this happens for the zvt widget, since
17045          * the size_allocate() above will have stored the
17046          * requisition corresponding to the new size in the
17047          * zvt widget)
17048          *
17049          * This doesn't buy us anything for 1), but it shouldn't
17050          * hurt us too badly, since it is what would have
17051          * happened if we had gotten the configure event before
17052          * the new size had been set.
17053          */
17054
17055 Wed Sep  1 20:46:11 1999  Owen Taylor  <otaylor@redhat.com>
17056
17057         * gtk/gtkrc.c: deal properly with the fact that RC
17058           style lists may include rc styles more than once.
17059
17060         * gtk/gtkrc.c (gtk_rc_append_pixmap_path): Removed
17061           unused static function.
17062
17063         * gtk/gtkrc.c (gtk_rc_find_pixmap_in_path): Keep a
17064           stack of directories of RC files currently being
17065           parsed and implicitely add them to pixmap path.
17066           
17067           This fixes a bug where the directory would get
17068           appended then overwritten by pixmap_path declarations.
17069
17070           (bug #1462, from Peter Wainright <prw@wainpr.demon.co.uk>)
17071
17072         * gtk/gtkthemes.c (gtk_theme_engine_unref): Call
17073           theme's exit function. (Patch from Peter Wainwright,
17074           bug #1454)
17075
17076         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_destroy):
17077           Add a destroy() handler to take care of removing
17078           group for menu item. (Fixes bug #1197)
17079
17080         * gtk/gtkwidget.c (gtk_widget_size_request): Fixed thinko
17081           in warning message.
17082
17083 Wed Sep  1 21:27:42 1999  Tim Janik  <timj@gtk.org>
17084
17085         * gtk/gtkwindow.c (gtk_window_move_resize): don't require a server
17086         roundtrip to figure window's width and height, since we know that
17087         anyways from widget->allocation.
17088
17089 Wed Sep  1 12:37:44 1999  Owen Taylor  <otaylor@redhat.com>
17090
17091         * gtk/gtkwindow.c (gtk_window_move_resize): Compute
17092           the hints after we request the new size.
17093
17094 Wed Sep  1 10:38:37 1999  Owen Taylor  <otaylor@redhat.com>
17095
17096         * gtk/gtkwindow.c (gtk_window_compute_hints): Removed
17097           GTK_WIDGET_REALIZED() assertion - we can compute the
17098           hints before we are realized.
17099
17100         * gtk/gtkwindow.c (gtk_window_move_resize): Reorder
17101           hint changing so that we have a value of hints_changed
17102           when we decide whether to constrain the window size.
17103
17104         * gtk/gtkwindow.c (gtk_window_move_resize): Spelling fix.
17105
17106         * gtk/gtkwindow.c (gtk_window_constrain_size): cleanups,
17107         change back to G_MAXINT.
17108
17109 Wed Sep  1 06:54:59 1999  Tim Janik  <timj@gtk.org>
17110
17111         * gtk/gtkwindow.c (gtk_window_get_geometry_info): zero initialize
17112         new GtkWindowGeometryInfo, so fields like GdkGeometry geometry
17113         contain uncluttered values.
17114         (gtk_window_compute_hints): simply assert that window is realized
17115         and that geometry_info is valid, since we rely on this anyways.
17116         (gtk_window_constrain_size): major cleanups to the code.
17117         if (flags & GDK_HINT_BASE_SIZE) use geometry's base width and height
17118         for the base size, instead of the minimums. use 32767 as max width
17119         and height (like in gtkwindow.c) instead of G_MAXINT.
17120
17121 Wed Sep  1 04:41:25 1999  Tim Janik  <timj@gtk.org>
17122
17123         * cleaned up the GtkContainer.need_resize flag handling mess, we
17124         only need to force resize requests when we were prematurely
17125         realized, or our widget tree was modified when we were temporarily
17126         hidden. handling these cases directly upon showing the window (i.e.
17127         while the GdkWindow is still unmapped) avoids the need to wait for
17128         a configure event response and therefore makes the GUI more snappier
17129         and avoids blank windows during the roundtrip.
17130
17131         * gtk/gtkwidget.c:
17132         (gtk_widget_hide): 
17133         (gtk_widget_show): don't queue resizes on toplevels, they know how
17134         to deal with matters.
17135
17136         * gtk/gtkcontainer.c (gtk_container_queue_resize): set the ->need_resize
17137         flag directly for not visible resize containers and spare us unecessary
17138         signal emissions.
17139
17140         * gtk/gtkwindow.c:
17141         (gtk_window_realize): if we need to enforce premature size allocation,
17142         queue a container resize so we are correctly resized later on.
17143         (gtk_window_init):
17144         (gtk_window_size_request):
17145         don't freak around with the ->need_resize flag,
17146         gtk_container_queue_resize() will care about that.
17147         (gtk_window_show):
17148         handle initial resizing issues here, we can handle matters better in
17149         this place, especially since we know that our GdkWindow is still
17150         unmapped.
17151         (gtk_window_move_resize):
17152         don't care about ->need_resize at all.
17153         handle size changes properly that occoured while we waited for a
17154         configure event.
17155
17156 Tue Aug 31 15:58:46 1999  Owen Taylor  <otaylor@redhat.com>
17157
17158         * gtk/gtkwidget.c (gtk_widget_set_uposition):
17159         * gtk/gtkwindow.[hc] (gtk_window_reposition):
17160         Move the hint setting code from gtk_widget_set_uposition
17161         to here; set the hints so that we respect any previously
17162         set geometry hints.
17163
17164         * gtk/gtkwindow.c (gtk_window_compute_reposition): Don't
17165         change the window hints here or move the window here,
17166         let that happen in gtk_window_move_resize().
17167
17168 Tue Aug 31 06:58:52 1999  Tim Janik  <timj@gtk.org>
17169
17170         * gtk/gtkwidget.c (gtk_widget_event): when discarding exposes due
17171         to already queued resizes (and therefore redraws) on a widget, check
17172         its anchestry as well.
17173
17174         * gtk/gtkcontainer.c:
17175         (gtk_container_queue_resize): clear resize widgets for resize
17176         containers before aborting prematurely. this is especially important
17177         for toplevels which may need imemdiate processing or their resize
17178         handler to be queued.
17179         (gtk_container_dequeue_resize_handler): added new internal function for
17180         gtkwindow.c.
17181
17182         * gtk/gtkwindow.c (gtk_window_move_resize): if we are resizing due to a
17183         configure event, take possible changes in window position into account
17184         as well.
17185         if we request a new window size, queue up a resize handler that will
17186         last until the configure event response arrives.
17187         combined the ->need_resize case (initial show) with the general size
17188         (hints) changed case and added even more comments.
17189         if !auto_shrink, only revert to the old allocation if the new size
17190         is smaller than the current allocation.
17191
17192 Tue Aug 31 11:55:20 1999  Owen Taylor  <otaylor@redhat.com>
17193
17194         * gtk/gtkwindow.c (gtk_window_set_arg, gtk_window_set_policy,
17195                            gtk_window_set_geometry_hints
17196                            gtk_window_set_default_size):
17197         When hints are set, queue a resize so that the hints will
17198         be eventually reset on the toplevel.
17199
17200         * gtk/gtkwindow.c (gtk_window_show): Use
17201         gtk_window_compute_default_size(). Clear the need_resize flag
17202         on the initail map so that we don't unnecessarily trigger the
17203         resize code.
17204
17205         * gtk/gtkwindow.c (gtk_window_move_resize): Split apart
17206         into separate functions. Compare the hints we are setting
17207         with what we set last time so that we can accurately
17208         tell when we need to reset the hints.
17209
17210         * gtk/gtkwindow.c (gtk_window_compute_default_size): New
17211         function to figure out the size from requisition
17212         and default_size.
17213
17214         * gtk/gtkwindow.c (gtk_window_constrain_size): Function
17215         from fvwm to constrain a size to the geometry hints.
17216
17217         * gtk/gtkwindow.c (gtk_window_compare_hints): New function
17218         to compare two sets of geometry hints.
17219
17220         * gtk/gtkwindow.c (gtk_window_compute_hints): Renamed
17221         from gtk_window_set_hints(), just compute the hints,
17222         don't set them.
17223
17224         * gtk/gtkwindow.c (gtk_window_compute_reposition): Move
17225         code from gtk_window_move_resize() to separate function,
17226         rationalize a bit.
17227
17228 Tue Aug 31 13:05:03 1999  Owen Taylor  <otaylor@redhat.com>
17229
17230         * gtkrc.h: Move the ref_count member out of the GtkRcStyle
17231         structure into a new private structure.
17232
17233         * gtkrc.c: Split GtkRcStyle into public/private.
17234         In the private part, add a list of pointers to the
17235         RcStyle lists this RcStyle participates in.
17236
17237         * gtkrc.c: When a RcStyle is free, remove all
17238         lists referencing it from the 
17239         realized_style_ht hash, and free those lists.
17240         
17241         * gtk/gtkrc.c (gtk_rc_clear_styles): Don't call
17242         gtk_rc_init(), since that adds the default styles
17243         to the list of parsed RC files again.
17244
17245         * gtk/gtkrc.c: Use gtk_rc_style_find() consistently.
17246         
17247 Thu Aug 26 14:14:42 1999  Tim Janik  <timj@gtk.org>
17248
17249         * gtk/gtkwidget.c (gtk_widget_size_allocate): reactivated the sanity
17250         checks that ensure that a widget's allocation is at least 1 in width
17251         and height. (GNOME note: this doesn't affect old panel code anymore,
17252         because GtkSocket will request width and height of at least 1 since
17253         Fri Jul 23).
17254
17255         * gtk/gtkwindow.c (gtk_window_realize): if the widget hasn't been
17256         allocated yet (happens if the user realizes the window prematurely),
17257         size request and allocate it.
17258         (gtk_window_size_allocate): guard against guint underflows.
17259
17260 Wed Aug 25 19:01:36 1999  Lars Hamann  <lars@gtk.org>
17261
17262         * gtk/Makefile.am (gtk_built_sources): reordered stamp-gtk.defs
17263         in gtk_built_sources, so gtk.defs gets built prior to all other
17264         sources.
17265
17266 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
17267
17268         * gtk/Makefile.am:
17269         invoke indent on gtkmarshal.*. 
17270         rewrote source generation rules, use COPYING as oldest source tag for
17271         a piggyback rule to generate all sources from (don't touch it ;).
17272         major cleanups, strip spaces on build rules for GNU Make.
17273
17274         * gtk/genmarshal.pl: don't operate on hardcoded filenames but take
17275         source and target files from commandline arguments. don't invoke indent.
17276
17277 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
17278
17279         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
17280         notebook after switch to avoid drawing problems.
17281         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
17282         
17283         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
17284         show them instead. 
17285         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
17286
17287 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
17288
17289         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
17290         notebook after switch to avoid drawing problems.
17291         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
17292         
17293         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
17294         show them instead. 
17295         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
17296
17297 Wed Aug 18 09:20:10 1999  Tim Janik  <timj@gtk.org>
17298
17299         * gtk/gtkwindow.c:
17300         we use window->need_resize from configure_event now, to indicate that
17301         the gtkwindow should keep its allocation (e.g. because the user resized
17302         the window through window manager handles). resize_count is now reliably
17303         used to figure whether we got the allocation we requested from the
17304         window manager.
17305         configure events get queued as resizes now, the real stuff (size
17306         computation and allocation) now only goes on in gtk_window_move_resize().
17307         GtkWindow's requisition now contains its *real* requisition (like all
17308         other widgets), *not* taking usize into account.
17309         geometry_info->last_{width|height} is now updated from set_hints() only
17310         so it always contains the last hints we set for the window manager.
17311         made some event handlers return TRUE instead of FALSE.
17312         the overall code should be much more straight forward now, and the
17313         significant code portions are accompanied by comments now.
17314         (gtk_window_set_hints):
17315         removed requisition argument and made it
17316         fetch the requisition through gtk_widget_get_child_requisition.
17317         we also don't move the gdkwindow here anymore, gtk_window_move_resize()
17318         does that now.
17319         (gtk_window_show):
17320         ensure that the widget is realized before calling 
17321         gtk_container_check_resize() (and thus gtk_window_move_resize()), also
17322         ensure that we got properly size requested and allocated before
17323         realization.
17324         (gtk_window_configure_event):
17325         ignore plain window moves, or reallocate the widget tree through the
17326         resize queue otherwise.
17327         (gtk_window_move_resize):
17328         mostly rewrote this function to figure window manager hints more
17329         reliably, coalesce window moves and resizes to reduce configure events
17330         and do actuall size allocations.
17331
17332 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
17333
17334         * gtk/gtkwidget.c (gtk_widget_event): discard expose events for widgets
17335         that have a resize pending, because a redraw is already queued for them.
17336
17337         * gtk/gtkcontainer.c: removed ugly connect_to ::size_allocate signal
17338         hack to clear resize_widgets.
17339
17340         * gtk/gtkwidget.c (gtk_widget_size_allocate): call clear_resize_widgets
17341         for resize containers prior to size allocation. (this is also a bit
17342         ugly, but avoids side effects for stopped emissions and is thus more
17343         reliable).
17344         (gtk_widget_unparent): removed disconnect call for clear_resize_widgets.
17345
17346         * gtk/gtktooltips.c (gtk_tooltips_paint_window): renamed this
17347         function from gtk_tooltips_expose, as we connect to ::expose_event
17348         *and* ::draw now.
17349
17350 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
17351
17352         * gtk/gtkselection.c (gtk_target_list_ref): Added missing sanity
17353         checks.
17354         (gtk_target_list_unref): Likewise.
17355
17356         * gtk/gtkthemes.c (gtk_theme_engine_unref): Likewise.
17357
17358 Tue Aug 17 15:47:07 1999  Owen Taylor  <otaylor@redhat.com>
17359
17360         * gtk/gtkcolorsel.c (gtk_color_selection_draw_value_bar):
17361         guard against division by zero. (Fixes bug #1339)
17362
17363 Tue Aug 17 10:56:49 1999  Owen Taylor  <otaylor@redhat.com>
17364
17365         * gtk/gtkentry.c (gtk_move_{forward,backward}_word): 
17366         Prevent the trivial leak of information of allowing
17367         word motion when the entry is not visible.
17368
17369 Tue Aug 17 10:28:52 1999  Owen Taylor  <otaylor@redhat.com>
17370
17371         * gtk/gtkfilesel.c (gtk_file_selection_fileop_error): Propagate
17372         modality to error dialog as well as confirmation dialogs.
17373         (Bug #1803, reported by Rosanna Wing Sze Yuen)
17374
17375 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
17376
17377         * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): Honor
17378         tree->view_lines.
17379         (gtk-guy-990611-3.patch: Guy Harris <guy@netapp.com>)
17380
17381         * gtk/Makefile.am (install-data-local): Solaris apparently
17382         has various troubles with ln -f; use rm first instead.
17383         (gtk-guy-990611-2.patch: Guy Harris <guy@netapp.com>)
17384
17385 1999-07-30  Raja R Harinath  <harinath@cs.umn.edu>
17386
17387         * gtk/Makefile.am (stamp-m): Don't `mv' from builddir to srcdir,
17388         use `cp' followed by `rm' (the `rm' was already there).
17389
17390 July 30, 1999 Elliot Lee <sopwith@redhat.com>
17391         
17392         * configure.in: Fix autoconf warnings about cross compilation by
17393         trying to provide sane defaults for AC_TRY_RUN.
17394         * gtk/Makefile.am: If we refer to gtkmarshal.[ch] in $(srcdir),
17395         put them into $(srcdir) when generated. Also add a dependency of
17396         gtksignal.h on gtkmarshal.h for -j builds. 
17397         * gtk/gtk(dnd,style,gamma).c: Minor warning fixes.
17398
17399 Wed Jul 28 09:29:19 1999  Owen Taylor  <otaylor@redhat.com>
17400
17401         * gtk/gtkmain.c (gtk_main_iteration_do): Added missing
17402         GDK_THREADS_{LEAVE,ENTER} pair.
17403         (From Paul Fisher <pnfisher@redhat.com>)
17404
17405 Fri Jul 23 01:00:15 1999  Tim Janik  <timj@gtk.org>
17406
17407         * gtk/gtksocket.c (gtk_socket_size_request): asure that the requested
17408         width and height are always >0 (owen).
17409
17410 Fri Jul 23 00:00:47 1999  Tim Janik  <timj@gtk.org>
17411
17412         * gtk/gtkwidget.c (gtk_widget_size_allocate): backed out my recent
17413         change that assured that a widget's allocated with and height are
17414         always >1, since this breaks *buggy* panel code. unfortunately this
17415         back-breaks the gimp's color selector.
17416
17417         * gtk/gtkdrawingarea.c (gtk_drawing_area_size_allocate): asure that our
17418         allocation is always >0 in width and height, before sending the
17419         configure event; this is a *gross* hack to get the gimp back to work.
17420         
17421         * marked both cases with TODO-1.3
17422
17423 Wed Jul 21 15:47:39 1999  Owen Taylor  <otaylor@redhat.com>
17424
17425         * gtk/gtktext.c: Don't display wrap indicators when
17426         text is not editable and word wrap is on.
17427
17428 Wed Jul 21 08:21:40 1999  Tim Janik  <timj@gtk.org>
17429
17430         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): special case
17431         option menus here as they are not derived from menu shell, assure that
17432         the option menu has a menu we can add items to.
17433
17434 Tue Jul 20 23:29:48 1999  Tim Janik  <timj@gtk.org>
17435
17436         * gtk/gtknotebook.c (gtk_notebook_page_allocate): convert allocation->
17437         width/height to (gint) before calculations and check against < 0 to
17438         avoid guint wraparounds.
17439
17440 Sun Jul 18 00:35:49 1999  Tim Janik  <timj@gtk.org>
17441
17442         * gtk/gtkwidget.c (gtk_widget_size_allocate): ensure that the allocated
17443         width and height is never zero. sanity check both dimensions against
17444         32767 and issue a warning if the allocation is greater than that.
17445
17446 Wed Jul  7 15:03:30 1999  Owen Taylor  <otaylor@redhat.com>
17447
17448         * gtk/gtkmain.c (gtk_events_pending): Unlock around call
17449         to g_main_pending() as well.
17450
17451 Wed Jul  7 14:59:01 1999  Owen Taylor  <otaylor@redhat.com>
17452
17453         * gtk/gtkmain.c (gtk_main_iteration): Unlock around
17454         call to g_main_iteration() - since that will regrab
17455         GTK+ lock to process events.
17456
17457 Thu Jul  1 15:01:55 1999  Owen Taylor  <otaylor@redhat.com>
17458
17459         * gtk/gtkwindow.c
17460         - Regularize with the rest of GTK+ by making widget->requisition
17461           not reflect the set_usize()
17462         - Always recompute geometry hints, then check if they
17463           changed before sending them to the X server. The
17464           previous checks for changes would fail in a number
17465           of circumstances. 
17466
17467 Thu Jul  1 11:55:59 1999  Owen Taylor  <otaylor@redhat.com>
17468
17469         * gtk/gtkstyle.c: Include <stdlib.h> for strcmp().
17470
17471 Wed Jun 30 19:26:36 1999  Owen Taylor  <otaylor@redhat.com>
17472
17473         * gtk/gtkdnd.c:
17474         - Code cleanups
17475         - Instantaneously update on modifier key presses
17476         - Allow cancellation of the drag with Escape.
17477
17478 Tue Jun 29 17:04:09 1999  Owen Taylor  <otaylor@redhat.com>
17479
17480         * gtk/testgtk.c (create_handle_box): Set the policy
17481         to auto_shrink - otherwise the appearance is rather
17482         strange when flipping between horizontal and vertical.
17483
17484 Mon Jun 28 09:29:52 1999  Tim Janik  <timj@gtk.org>
17485
17486         * gtk/gtkwindow.c: add ::default_width and ::default_height arguments.
17487         (gtk_window_set_default_size): don't change a value if it's < 0.
17488         queue a resize.
17489
17490 Sun Jun 27 11:00:33 1999  Tim Janik  <timj@gtk.org>
17491
17492         * gtk/gtktext.c (gtk_text_insert): don't segfault on NULL inserts.
17493
17494 Mon Jun 28 12:08:25 1999  Owen Taylor  <otaylor@redhat.com>
17495
17496         * gtk/gtkfilesel.c (cmpl_completion_fullname): Don't
17497         add an extra "/" when concating "/" + filename.
17498         (From Matt Grossman <mattg@oz.net>)
17499
17500 Mon Jun 28 10:57:12 1999  Owen Taylor  <otaylor@redhat.com>
17501
17502         * gtk/gtkctree.c (draw_cell_pixmap): Reset clip mask
17503         for fg_gc if we set it for drawing pixmap.
17504
17505 Tue Jun 15 12:45:12 1999  Owen Taylor  <otaylor@redhat.com>
17506
17507         Fixes from Peter Wainwright <prw@wainpr.demon.co.uk>
17508         
17509         * gtk/gtkrc.c (gtk_rc_parse_engine): If rc_style->engine is
17510         already set, call old engine's destroy function and
17511         unref the old engine.
17512
17513 Thu Jun 10 17:59:38 1999  Tim Janik  <timj@gtk.org>
17514
17515         * gtk/gtkdrawingarea.c (gtk_drawing_area_size): queue a resize.
17516
17517 Wed Jun  9 15:13:16 1999  Tim Janik  <timj@gtk.org>
17518
17519         * gtk/gtkaccelgroup.h: mark certain functions as internal.
17520
17521 Wed Jun  9 13:48:28 1999  Tim Janik  <timj@gtk.org>
17522
17523         * gtk/gtkpreview.c (gtk_preview_set_expand): queue a resize if the
17524         expand behaviour changed.
17525
17526         * gtk/gtklabel.c (gtk_label_set_pattern):
17527         (gtk_label_set_justify):
17528         (gtk_label_set_line_wrap):
17529         don't bother invoking queue_clear, the reallocation does
17530         that for us, always free_words so the upcoming resize will
17531         relayout the label's contents.
17532
17533 Wed Jun  9 12:50:48 1999  Tim Janik  <timj@gtk.org>
17534
17535         * applied argument implementation patches from Elena Devdariani
17536         <elena@cogent.ca>.
17537
17538         * gtk/gtktoolbar.c: ::orientation, ::toolbar_style, ::space_size,
17539         ::space_style, ::relief
17540         * gtk/gtkruler.c: ::lower, ::upper, ::position, ::max_size
17541         * gtk/gtkpreview.c: ::expand
17542         * gtk/gtkpaned.c: ::handle_size, ::gutter_size
17543         * gtk/gtknotebook.c: ::homogeneous
17544         * gtk/gtklabel.c: ::wrap
17545         * gtk/gtklist.c: ::selection_mode
17546         * gtk/gtkhandlebox.c: ::handle_position, ::snap_edge
17547         * gtk/gtkcurve.c: ::curve_type, ::min_x, ::max_x, ::min_y, ::max_y
17548         * gtk/gtkcolorsel.c: ::update_policy, ::use_opacity
17549         * gtk/gtkclist.c: ::sort_type
17550         * gtk/gtkcheckmenuitem.c: ::active, ::show_toggle
17551         * gtk/gtkaspectframe.c: ::xalign, ::yalign, ::ratio, ::obey_child
17552
17553 Tue Jun  1 23:38:38 1999  Owen Taylor  <otaylor@redhat.com>
17554
17555         * gtk/gtkstyle.c: Removed ill-thought-out part of last
17556         comment.
17557
17558 Tue Jun  1 23:30:09 1999  Owen Taylor  <otaylor@redhat.com>
17559
17560         * gtk/gtkstyle.c (gtk_style_attach): Get the reference
17561         counting right when we have to attach a new style
17562         for a different visual. (Chi-Deok Hwang <cdhwang@sr.hei.co.kr>)
17563
17564         * gtk/gtkstyle.c: Documented the refcounting
17565         peculularities of gtk_style_attach.
17566
17567 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
17568
17569         * gtk/gtkwindow.c (gtk_window_new): added return if fail for invalid
17570         window types.
17571
17572         * examples/packer/pack.c (main): use GTK_WINDOW_TOPLEVEL instead
17573         of GTK_TOPLEVEL for creating the window.
17574
17575 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
17576
17577         * gtk/gtkmain.c (gtk_init_check): don't segfault when --gtk-module is
17578         the last argument (reported by Per Winkvist).
17579         
17580 Tue May 25 13:13:12 1999  Owen Taylor  <otaylor@redhat.com>
17581
17582         Fixes for invisible XOR lines (Frank Loemker
17583         <floemker@TechFak.Uni-Bielefeld.DE>)
17584         
17585         * gtk/gtkclist.c (gtk_clist_realize): Always use
17586         a non-zero pixel for GDK_XOR.
17587
17588         * gtk/gtkvpaned.c gtk/gtkhpaned.c: 
17589         Use GDK_INVERT instead of GDK_XOR.
17590
17591 Wed May 12 21:56:40 1999  Lars Hamann  <lars@gtk.org>
17592
17593         * gtk/gtkclist.c (adjust_adjustments): signal emit value_changed
17594         signals if h/voffsets differ from adjustment values.
17595         Reportet by Jerome Bolliet <bolliet@in2p3.fr>
17596
17597 Mon May 10 04:20:41 1999  Tim Janik  <timj@gtk.org>
17598
17599         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): propagate
17600         ::selection-done emissions up to the topmost menu shell.
17601
17602 Fri May  7 10:15:14 1999  Owen Taylor  <otaylor@redhat.com>
17603
17604         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): Unset
17605         the user data on the window before destroying it.
17606
17607         * gtk/gtknotebook.c (gtk_notebook_unrealize): Add an
17608         unrealize handler to take care of destroying 
17609         notebook->panel properly. 
17610         (Bug #1198 - Morten Welinder <terra@diku.dk>)
17611
17612         * gtk/gtktext.c (expand_scratch_buffer): Fix reversal
17613         of g_new and g_realloc to stop memory leak. (Actually,
17614         we could just use g_realloc(), but I'm not 100% sure
17615         that is portable).
17616         (Bug #1196 - Morten Welinder <terra@diku.dk>)
17617
17618 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
17619
17620         * gtk/gtkplug.h: Removed stray GtkPlugButton declaration.
17621
17622         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
17623         for fontsets.
17624
17625         * gtk/gtkbutton.c (gtkbutton_expose): Fix warning
17626         with bin/button confusion.
17627
17628 Thu May  6 04:53:26 1999  Tim Janik  <timj@gtk.org>
17629
17630         * gtk/testgtk.c: in the ItemFactory test, link radio items together,
17631         and show how preselection of radio items is done.
17632
17633 Sun May  2 13:31:14 1999  Tim Janik  <timj@gtk.org>
17634
17635         * gtk/gtktreeitem.c (gtk_tree_item_set_subtree): 
17636         * gtk/gtktree.c (gtk_tree_add) (gtk_tree_insert):
17637         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): 
17638         * gtk/gtkpaned.c (gtk_paned_pack2) (gtk_paned_pack1):
17639         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_add): 
17640         * gtk/gtktable.c (gtk_table_attach): 
17641         * gtk/gtklist.c (gtk_list_insert_items): 
17642         * gtk/gtkmenushell.c (gtk_menu_shell_insert): 
17643         * gtk/gtknotebook.c (gtk_notebook_insert_page_menu): 
17644         * gtk/gtkpacker.c (gtk_packer_add_defaults) (gtk_packer_add): 
17645         * gtk/gtkbin.c (gtk_bin_add): 
17646         * gtk/gtkbox.c (gtk_box_pack_start) (gtk_box_pack_end): 
17647         * gtk/gtkfixed.c (gtk_fixed_put): 
17648         * gtk/gtklayout.c (gtk_layout_put):
17649         general fixups to container_add logic. always realize child if
17650         child->parent is realized, only map the child and queue a resize
17651         if child and child->parent are both visible.
17652
17653 Fri Apr 30 09:02:28 1999  Tim Janik  <timj@gtk.org>
17654
17655         * gtk/gtkwidget.c (gtk_widget_real_unrealize): use gtk_container_forall
17656         instead of gtk_container_foreach to walk and unrealize children, so
17657         composite children get also unrealized.
17658         (gtk_widget_real_show): don't call gtk_widget_map() if we don't need to.
17659         (gtk_widget_map): assert that the widget is visible (basic constrain).
17660         (gtk_widget_real_map): assert that the widget is realized (basic
17661         constrain).
17662
17663 Fri Apr 29 00:53:20 1999  Tim Janik  <timj@gtk.org>
17664
17665         * gtk/gtkbindings.c (gtk_pattern_spec_init): plugged a memory leak.
17666
17667 Tue May  4 09:32:08 1999  Owen Taylor  <otaylor@redhat.com>
17668
17669         * gtk/Makefile.am gtk/gtkrc.iso-8859-2: Add a gtkrc
17670         file for iso-8859-2 locales.
17671
17672         * configure.in (ALL_LINGUAS): ALL_LINGUAS update.
17673
17674 Tue Apr 27 16:38:32 1999  Owen Taylor  <otaylor@redhat.com>
17675
17676         * gtk/Makefile.am: Fix typo of static_sources for static_SOURCES.
17677          (Pointed out by andy@rz.uni-karlsruhe.de and others).
17678          Remove some suspicious and useless lines. 
17679
17680 Tue May  4 08:44:08 1999  Owen Taylor  <otaylor@redhat.com>
17681
17682         * gtk/gtkclist.c (gtk_clist_draw, draw_rows): Use 
17683         width,height = 0, 0 to mean - here to edge of window,
17684         instead of -1, -1, since the former is all we support.
17685
17686 Tue May  4 08:34:43 1999  Owen Taylor  <otaylor@redhat.com>
17687
17688         * gtk/gtkmain.c (gtk_main): Correctly free list nodes
17689         when removing from quit_functions list.
17690
17691 Tue Apr 27 14:17:16 1999  Tim Janik  <timj@gtk.org>
17692
17693         * gtk/gtkpacker.c (gtk_packer_size_request): remove unused variable.
17694
17695 Tue Apr 27 18:23:35 1999  Owen Taylor  <otaylor@redhat.com>
17696
17697         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): 
17698          When redrawing characters on non-visible entry, use appropriate
17699          '*' character. (Bug #1130 - Jean-Marc Jacquet <jm@littleigloo.org>)
17700
17701 Tue Apr 27 01:31:40 1999  Lars Hamann  <lars@gtk.org>
17702
17703         * gtk/gtkclist.c (drag_dest_cell): compute destination cell
17704         from drag coordinates.
17705         (gtk_clist_drag_data_received) (gtk_clist_drag_motion):
17706         use drag_dest_cell.
17707
17708         * gtk/gtktree (drag_dest_cell)
17709         (gtk_ctree_drag_data_received) (gtk_ctree_drag_motion): likewise.
17710         (Bug #1129)
17711
17712 Wed Apr 21 21:26:11 1999  Tim Janik  <timj@gtk.org>
17713
17714         * gtk/gtkitemfactory.c (gtk_item_factory_init): properly initialize
17715         translate_* fields.
17716         (gtk_item_factory_finalize): invoke translate_notify independant from
17717         translate_data.
17718         (gtk_item_factory_set_translate_func): likewise.
17719         (gtk_item_factory_destroy): only remove ifactory pointer from those
17720         widgets that belong to us (stupid me).
17721
17722 Mon Apr 19 12:05:31 1999  Owen Taylor  <otaylor@redhat.com>
17723
17724         * gtk/gtkrc.c (gtk_rc_style_init): Fixed leak of
17725         rc_style list when lookup succeeeds.
17726
17727 Thu Apr 15 01:11:24 1999  Lars Hamann  <lars@gtk.org>
17728
17729         * gtk/gtkctree.c (resync_selection): 
17730         * gtk/gtkclist.c (resync_selection): fixed undo_selection bug.
17731         * gtk/gtkclist.c (gtk_clist_button_release): fixed resync_selection
17732         bug.
17733
17734 Fri Apr  9 19:22:19 1999  Owen Taylor  <otaylor@redhat.com>
17735
17736         * gtk/gtkcolorsel.c gtk/gtkdnd.c gtk/gtkmenuitem.c:
17737         Add some missing GDK_THREADS_ENTER()/LEAVE around
17738         timeouts. (Patches from Sebastian Wilhelmi <wilhelmi@ira.uka.de>)
17739
17740 Thu Apr  8 20:10:33 1999  Tim Janik  <timj@gtk.org>
17741
17742         * gtk/gtkentry.c (gtk_entry_key_press): use gtk_widget_activate()
17743         rather than emit_by_name.
17744
17745         * gtk/gtkeditable.c (gtk_editable_insert_text): keep a reference
17746         on the widget across multiple signal emissions.
17747         (gtk_editable_delete_text): same here.
17748         (gtk_editable_class_init): set widget_class->activate_signal after
17749         editable_signals[ACTIVATE] has been created.
17750
17751 Wed Apr  7 22:59:47 1999  Owen Taylor  <otaylor@redhat.com>
17752
17753         * gtk/gtkpaned.c (gtk_paned_set_position): Don't clamp
17754         position here prematurely -- we might not have the
17755         right ->min_position and ->max_position yet.
17756
17757 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
17758
17759         * gtk/gtkselection.c gdk/gdkselection.c: (gtk_selection_request):
17760         Add error traps so if the other end of the connection
17761         dies, we survive.
17762
17763         * gtk/gtkselection.c (gtk_selection_notify): Clean
17764         up properly when selection property retrieval fails.
17765         
17766         * gtk/gtkselection.c (gtk_selection_request): Correctly
17767         reject SelectionRequest notifies where the handler
17768         returns no data.
17769
17770 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
17771
17772         * gtk/gtkdnd.c (gtk_drag_dest_leave): Only unhighlight
17773         when we've previously highlighted.
17774
17775         * gtk/gtkdnd.c (gtk_drag_dest_handle_event): Don't
17776         emit two "drag_leave" signals for Motif drops.
17777
17778         * gtk/gtkdnd.c (gtk_drag_source_handle_event): Send
17779         back the correct status messages when dropping from
17780         Motif onto a proxy window that is rejecting the
17781         drop.
17782
17783 Sat Mar 27 23:32:13 1999  Tim Janik  <timj@gtk.org>
17784
17785         * gtk/gtkarg.[hc]: added functions from GLE, gtk_arg_reset() to free
17786         the value and reset type to GTK_TYPE_INVALID, and gtk_arg_values_equal()
17787         to compare two argument values. added gtk_arg_to_valueloc() to set a
17788         variable from an arg through its location (pointer).
17789
17790         * gtk/gtkobject.[hc]: implemented gtk_object_get() in terms of
17791         gtk_object_arg_get() and gtk_arg_to_valueloc(), floats are collected
17792         as gfloat*, uchars are collected as guchar*, ints are collected as
17793         gint*, etc...
17794
17795 Mon Mar 29 17:45:47 1999  Owen Taylor  <otaylor@redhat.com>
17796
17797         * gtk/gtkaccelgroup.c gtk/gtkgtkbindings.c:
17798         Include <string.h> instead of <strings.h>.
17799
17800         * gtk/gtkstyle.c: Fix double include of gtkthemes.h
17801         (actually, a lot more duplicate includes occur if
17802          you trace through the sequence of #include's)
17803         gtk-jbb-990320-0: John Bley, jbb6@acpub.duke.edu
17804         
17805 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
17806
17807         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
17808         gtk-a-higuti-990322-[0-3]
17809
17810         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
17811         that was causing -DX_LOCALE not to work.
17812
17813         * gtk/gtkrc.c (gtk_rc_init):
17814         X_LOCALE will never have LC_MESSAGES defined
17815
17816 Thu Mar 25 12:38:31 1999  Tim Janik  <timj@gtk.org>
17817
17818         * gtk/gtkrc.c (gtk_rc_append_default_module_path): get $HOME from
17819         g_get_home_dir() (gtk-pmc-990123-0.patch.gz).
17820
17821         * gtk/gtkwindow.c (gtk_window_key_press_event): feature keypad up/down/
17822         left/right as well (gtk-michael-980726-0.patch.gz).
17823
17824         * gtk/gtklabel.[hc]: bunch of miscellaneous cleanups, such as s/0/NULL/
17825         for pointer values, use gchar instead of char. fixed uline allocation
17826         leaks, changed the allocation pattern so we use G_ALLOC_AND_FREE mem
17827         chunks instead of G_ALLOC_ONLY.
17828         (gtk_label_size_request): always alter requisition as passed and leave
17829         widget->requisition alone.
17830         (gtk_label_set_text): allow NULL strings.
17831         (gtk_label_new): likewise.
17832
17833 Wed Mar 24 09:24:03 1999  Tim Janik  <timj@gtk.org>
17834
17835         * gtk/gtkdrawingarea.[hc]: type/macro fixups.
17836
17837 Mon Mar 22 05:51:34 1999  Tim Janik  <timj@gtk.org>
17838
17839         * gtk/gtkbin.c (gtk_bin_draw): only redraw children that are visible
17840         *and* mapped (i.e. drawable).
17841         (gtk_bin_expose): only send exposes to drawable children.
17842
17843         * gtk/gtkbox.c (gtk_box_draw): only redraw children that are drawable.
17844         (gtk_box_expose): only send exposes to drawable children.
17845
17846         * gtk/gtkhscale.c (gtk_hscale_draw): 
17847         * gtk/gtkvscale.c (gtk_vscale_draw):
17848         hm, this is an ugly one. we first compute the size of our trough area
17849         here (window relative) and then check intersection with the draw_area
17850         which is parent relative because we're a NO_WINDOW widget, so we need
17851         to offset the trough area by allocation.x and allocation.y before the
17852         check. (this must not be done for the background area though, since
17853         that's already computed parent relative).
17854
17855 Mon Mar 22 00:41:39 1999  Lars Hamann  <lars@gtk.org>
17856
17857         * gtk/gtkclist.c (gtk_clist_unrealize): unmap clist if neccessary,
17858         unrealize title buttons.
17859
17860 Fri Mar 19 00:00:22 1999  Lars Hamann  <lars@gtk.org>
17861
17862         * gtk/gtkclist.c (gtk_clist_column_title_passive)
17863         (gtk_clist_column_title_active): 
17864         only connect/disconnect to GtkWidgetClass::event to block mouse events.
17865
17866         * gtk/gtkclist.c (vertical_timeout) (horizontal_timeout): 
17867         zero initialize event, removed superfluous gdk_window_get_pointer call
17868
17869         * gtk/gtklist.c (gtk_list_vertical_timeout)
17870         (gtk_list_horizontal_timeout): removed superfluous
17871         gdk_window_get_pointer call
17872
17873 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
17874
17875         * plugging problems reported by "Bruce Mitchener, Jr."
17876         <bruce@puremagic.com> due to a purify session.
17877
17878         * gtk/gtkstyle.c:
17879         (gtk_style_ref): 
17880         (gtk_style_unref): assert ref_count to be > 0.
17881
17882         * gtk/gtkclist.c (gtk_clist_set_cell_style): { 0 } initilaize
17883         the requisition.
17884         (gtk_clist_set_shift): likewise.
17885
17886         * gtk/gtklayout.c: introduce gtk_layout_finalize() to unref the
17887         adjustments.
17888
17889         * gtk/gtklist.c (gtk_list_horizontal_timeout): zero initialize the
17890         event before sending it and set send_event to TRUE (which needs to
17891         be done for *all* synthesized events).
17892         (gtk_list_vertical_timeout): likewise.
17893
17894         * gtk/gtktipsquery.c (gtk_tips_query_destroy): plug small memory
17895         leaks.
17896
17897         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set send_event
17898         to TRUE when synthesizing events.
17899
17900 [ *** end of merges from 1.2 *** ]      
17901         
17902 1999-11-21  Tor Lillqvist  <tml@iki.fi>
17903
17904         * gdk/gdkconfig.h: Remove, as this is a file generated by configure
17905         (or copied from gdkconfig.h.win32 on Win32, sigh).
17906
17907         * gdk/gdkprivate.h: Mark gdk_parent_root for export from DLL.
17908
17909         * gdk/gdk.c (gdk_keyval_convert_case): Fix typo.
17910
17911         * gdk/gdkgc.c (gdk_gc_alloc): Remove duplicated line.
17912
17913         * gdk/gdkconfig.h.win32: New file.
17914
17915         * gdk/win32/makefile.cygwin: Build just a static archive here.
17916
17917         * gdk/makefile.cygwin: New file. Get the win32-specific stuff
17918         for the DLL from the static archive built above.
17919
17920         * gdk/gdk.def: Moved here from the win32 subdirectory.
17921
17922         * gdk/win32/*: Adapt for the changed private struct organisation.
17923
17924         * gtk/makefile.{cygwin,msc}: Get gdk library from ../gdk now.
17925
17926 Sun Nov 21 16:44:35 1999  Stefan Jeske  <stefan@gtk.org>
17927
17928         * gtk/gtkspinbutton.c (gtk_spin_button_button_press): Added support 
17929         for wheel mice (buttons 4 and 5).
17930
17931 1999-11-18  Tor Lillqvist  <tml@iki.fi>
17932
17933         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Also for truecolor
17934         drawables use just the pixel field in the foreground and
17935         background GdkColor of the GdkGC.
17936
17937         gdk_gc_set_{fore,back}ground() are called in the GIMP with
17938         GdkColors containing uninitialized (red,green,blue) fields, and
17939         just the pixel field filled in, and furthermore in the
17940         visual-dependent format as returned by gdk_rgb_xpixel_from_rgb().
17941         It thus turns out that we really don't need to have the full
17942         GdkColor for fg and bg in GdkGCWin32Data after all. Will change
17943         it later to have just the pixel values.
17944
17945 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
17946
17947         * docs/gtkfaq.sgml: s/gtk_main_iteration/g_main_iteration/
17948
17949 Sat Nov 13 22:30:29 GMT 1999 Tony Gale  <gale@gtk.org>
17950
17951         * docs/gtkfaq.sgml: threads example from Erik Mouw.
17952         New question on GtkLabel background colors.
17953
17954         * docs/gtk_tut.sgml:
17955           - Correct the example code callback
17956             function definitions.
17957           - Update the gtkdial example code, from Frans van Schaik.
17958           - Update setselection.c to current API.
17959
17960         * examples/Makefile examples/*/*.c: Update to code
17961         listed in tutorial.
17962
17963 1999-11-10  Tor Lillqvist  <tml@iki.fi>
17964
17965         * gdk/win32/gdkfont-win32.c: Fix a couple of bugs. The Unicode
17966         subrange table (from the "Developing International Software for
17967         WIndows 95 and Windows NT" book) was missing the Hangul syllable
17968         block... Get the loaded font's charset correctly.
17969
17970         (Note that this, and the other *-win32.c files, still really are
17971         the old ones, the win32 subdirectory is not ready for compilation
17972         yet after the reorg.)
17973
17974 Wed Nov 10 17:26:49 GMT 1999 Tony Gale  <gale@gtk.org>
17975
17976         * gtk/gtkclist.c: Fix off-by-one bug in parameter
17977         check.
17978
17979 Wed Nov 10 12:12:03 1999  Owen Taylor  <otaylor@redhat.com>
17980
17981         * gdk/x11/gdkinput-{x11,xfree}.c: Call XFreeDeviceState()
17982         on results of XQueryDeviceState().
17983
17984 Mon Nov  8 16:40:43 1999  Owen Taylor  <otaylor@redhat.com>
17985
17986         * gtk/gtkwidget.c: Substitute gdkx.h => gdkprivate.h since
17987         we need to accesss only ->children. We need an accessor
17988         for the children.
17989
17990         * gtk/gtkhandlebox.c gtk/testgtk.c: Substitute G
17991         DK_ROOT_PARENT() => NULL, in call to gtk_window_get_pointer()
17992         to get rid of gdkx.h include.
17993         
17994         * gtk/gtkctree.c: Get rid of #include <gdk/gdkx.h>
17995         and random references to 'None'.
17996
17997         * gtk/gtkclist.c gtk/gtkeditable.c gtk/gtkpreview.c
17998         Get rid of unused #include <gdk/gdkx.h>
17999
18000         * gtk/gtkrc.c gtk/gtkmain.c: Get rid of #include <gdk/gdkx.h>
18001         gdkx.h is _X_ specific stuff. GDK_WINDOWING comes from
18002         gdkconfig.h.
18003
18004 1999-11-08  Tor Lillqvist  <tml@iki.fi>
18005
18006         * gdk/win32/gdkdraw.c
18007         * gdk/win32/gdkfont.c
18008         * gdk/win32/gdkgc.c: Various minor cleanups and bugfixes
18009         following yesterday's changes. (Unrelated to Owen's reorg.)
18010
18011 Mon Nov  8 16:18:25 1999  Owen Taylor  <otaylor@redhat.com>
18012
18013         * gdk/x11/gdkinput-gxi.c: Add missing include,
18014           fix GdkWindowPrivate => GdkDrawablePrivate.
18015
18016         * gdk/x11/gdkinputprivate.h: include <X11/Xlib.h>.
18017
18018         * gdk/x11/Makefile.am (xinput_sources): Add missing
18019         backslash to fix building with --with-xinput=none
18020
18021 Mon Nov  8 14:47:04 1999  Owen Taylor  <otaylor@redhat.com>
18022
18023         Move all X specific code into the x11/ directory.
18024         Aside from shuffling things around, did the following:
18025
18026        * gdk/gdkprivate.h gdk/gdk.h gdk/x11/gdkmain-x11.h: Add
18027          gdk_arg_context_* - a simple argument parsing system
18028          in the style of popt.
18029
18030        * gdk/gdkdrawable.[ch] gdk/gdkprivate.h gdk/gdkwindow.[ch]
18031          gdk/x11/gdkprivate-x11.h:
18032          Remove X specific stuff from GdkDrawable and GdkWindowPrivate - 
18033          add ->klass and ->klass_data fields. The klass_data
18034          field points to an auxilliary structure that is
18035          windowing system dependent.
18036
18037        * gdk/gdkfont.c: Make most of the measurement functions
18038          simply wrappers around gdk_text_extents().
18039
18040        * gdk/gdkfont.c gdk/gdkprivate.h gdk/x11/gdkfont-x11.c: Add a 
18041          _gdk_font_strlen() function that hides the weird
18042          behavior in gtk+-1.[02] where a string is interpreted
18043          differently for 8-bit and 16-bit fonts.
18044
18045        * gdk/gdkevents.c: Add a new function gdk_event_button_generate()
18046          to store common code for synthesizing double/triple
18047          press events.
18048         
18049        * gdk/gdkgc.[ch]: Virtualize in the same way as gdkdrawable.h.
18050          Make all the function that modify an existing GC
18051          simply wrappers around gdk_gc_set_values().
18052          
18053        * gdk/gdkcc.[ch]: Moved into x11/ directory in preparation
18054          for throwing out later.
18055
18056        * gdk/gdkfont.c gdk/gdkimage.c gdk/gdkcolor.c: Change GdkFontPrivate,
18057          GdkImagePrivate and GdkColormapPrivate to have a
18058          windowing system dependent part (GdkFontPrivateX etc.)
18059          that "derives" from the system-independent part.
18060
18061        * configure.in gdk/x11/Makefile.in gdk/x11/gdkinput*.c:
18062          Got rid of the included-source-files for XInput in
18063          favor of automake conditionals. (Which didn't exist
18064          when XInput support was originally added.)
18065
18066        * gdk/gdkrgb.c: Remove the visual id from the debugging
18067          statements since that is X11 specific; print out
18068          type/depth info instead.
18069          
18070
18071 Wed Nov  3 18:14:49 1999  Owen Taylor  <otaylor@redhat.com>
18072
18073         * gdk/x11/gdkfont-x11.c (gdk_font_load): Ref fonts when
18074         loading duplicates of hashed fonts.
18075
18076         * gdk/gdk.c (gdk_keysym_convert_case): rename
18077         gdk_XConvertCase to gdk_keysym_convert_case, allow
18078         results to be NULL in the GTK+ style.
18079
18080         * gdk/gdkcompat.h: Started compatibility header
18081         for renames.
18082
18083 1999-11-07  Tor Lillqvist  <tml@iki.fi>
18084
18085         * gdk/win32/gdkprivate.h: New font private structures, related to
18086         fontsets.
18087
18088         * gdk/win32/gdkfont.c: New functions gdk_font_list_new() and
18089         gdk_font_list_free(). On X11, will just be wrappers to
18090         XListFonts() and XFreeFontNames(). On Win32, the code previously
18091         in gtkfontsel.c is now here.
18092
18093         New function gdk_font_xlfd_create(). On X11 will get the FONT
18094         property of the font (for GDK_FONT_FONTs), or call
18095         XBaseFontNameListOfFontSet (for GDK_FONT_FONTSETs), on Win32
18096         builds a XLFD style name from the font information in the LOGFONT
18097         struct(s).
18098
18099         New function gdk_font_xlfd_free(), which correspondingly frees the
18100         string returned by gdk_font_xlfd_create().
18101
18102         Implement fontsets on Win32. Add a function that iterates over a
18103         wide char string and calls a callback function for each substring
18104         of wide chars from the same Unicode subrange (and thus probably
18105         available in the same real font).
18106
18107         Improve the XLFD emulation a bit.
18108
18109         * gdk/win32/gdkim.c (gdk_nmbstowchar_ts): Small bugfix.
18110
18111         * gdk/win32/gdkevents.c: Workaround for suspected bug on Win2k
18112         Beta3, WM_IME_CHAR messages don't seem to contain the composed
18113         multi-byte char as with the Active IMM on Win9x. Oh well, handle
18114         WM_IME_COMPOSITION with GCS_RESULTSTR instead, use
18115         ImmGetCompositionStringW() to get the composed Unicode chars.
18116
18117         * gdk/win32/gdkgc.c
18118         * gdk/win32/gdkdraw.c: Changes needed because of the font private
18119         struct changes.
18120
18121         * gdk/win32/gdk.def: Add the new functions.
18122
18123 1999-11-04  Tor Lillqvist  <tml@iki.fi>
18124
18125         * config.h.win32: Don't define HAVE_DIMM_H if MSC, as you have to
18126         get the Platform SDK to get <dimm.h>.
18127
18128         * gdk/win32/gdkevents.c: More event handling fixes and
18129         simplification. Never generate motion events with is_hint true. We
18130         used to do that on bogus grounds earlier. Windows sends
18131         WM_MOUSEMOVE messages on button events even if the mouse hasn't
18132         moved, ignore these.
18133
18134         * gdk/win32/gdkfont.c: Load all fonts as (pretended) fontsets.
18135
18136         * gdk/win32/gdkglobals.c
18137         * gdk/win32/gdkprivate.h: Define a typedef for the pointer to
18138         the TrackMouseEvent function, and use it.
18139
18140         * gdk/win32/gdkwindow.c: Terminate widechar string with a zero
18141         char before calling WideCharToMultiByte in order to get a string
18142         for the window title.
18143
18144         * gdk/win32/gdkdnd.c: Some more random hacking, ifdeffed out.
18145
18146         * gdk/win32/gdk.def: Remove obsolete functions.
18147
18148         * gdk/win32/makefile.{cygwin,msc}: Remove gdkcompat.{o,obj}. Add
18149         /nodefaultlib and /defaultlib switches.
18150
18151         * gtk/gtkrc.c: s/gwin_getlocale/g_win32_getlocale/.
18152
18153 1999-10-31  Tor Lillqvist  <tml@iki.fi>
18154
18155         * gdk/gdkkeysyms.h: Add new keysyms from X11R6.4 (including
18156         EuroSign).
18157
18158         * gdk/gdktypes.h: Add note about wchar_t not necessarily being the
18159         same type as GdkWChar, especially on Win32.
18160
18161         * gdk/win32/*.c: Change gdk_root_parent to be a pointer.
18162
18163         * gdk/win32/*.c: Assume all strings are UTF-8. Convert to Unicode
18164         before passing to Windows GDI for drawing etc. Convert to the
18165         system default codepage before passing to Windows as window
18166         titles.
18167
18168         * gdk/win32/gdkprivate.h: Add more fields to GdkWindowPrivate to
18169         support changing input locale on the fly.
18170
18171         * gdk/win32/gdkevent.c: Support input language (keyboard locale)
18172         on-the-fly changes. Convert incoming characters from the current
18173         codepage to Unicode (and then to a UTF-8 multi-byte string) based
18174         on the current input language. Use keysym<->Unicode mapping tables
18175         and functions borrowed from xterm sources.
18176
18177         Support IMEs (Input Method Editors) for CJK languages. On non-CJK
18178         editions of Win9x, use the ActiveX-based Active IMM (Input Method
18179         Manager) if available. IMEs and the Active IMM are available under
18180         the disguise of Chinese, Korean and Japanese support for IE and
18181         Outlook Express from "Windows Update" for Win98. On Win2k, the CJK
18182         support is present in all editions (as long as you install it).
18183
18184         Call DispatchMessage from gdk_events_queue() (and thus
18185         gdk_WindowProc()), instead of duplicating the code in
18186         gdk_WindowProc().
18187
18188         Reworked the grab handling and propagation code, factored out
18189         duplicated code snippets into separate functions. Other cleanups,
18190         too.
18191
18192         * gdk/win32/surrogate-dimm.h: Provide just the bits we need from
18193         the <dimm.h> header describing the Active IMM.
18194
18195         * gdk/win32/gdkfont.c: Pretend to support fontsets, but so far
18196         just do the same as for "single" fonts.
18197
18198         * gdk/win32/gdk.c: Call CoInitialize() (COM initialisation) from
18199         gdk_init_check, and CoUninitialize() from gdk_exit_func. Handle
18200         the new keysyms from gdkkeysyms.h.
18201
18202         * gtk/gtkfontsel.c (Win32): Load the font for the preview as a
18203         fontset, so that gtkentry uses wide characters.
18204
18205         * gtk/gtkrc.c (Win32): Get the locale with gwin_getlocale(). Call
18206         GTk+'s system directory "gtk+", not "gtk".
18207
18208 Sat Oct 30 13:17:18 BST 1999 Tony Gale <gale@gtk.org>
18209
18210         * docs/gtkfaq.sgml: FAQ update
18211
18212 1999-10-21  Tor Lillqvist  <tml@iki.fi>
18213
18214         * gdk/win32/gdkprivate.h: Add more font private data.
18215
18216         * gdk/win32/gdkfont.c
18217         * gdk/win32/gdkdraw.c: Revamped handling of multi-byte charset
18218         fonts and strings. Now works much better. You still have to
18219         have a correct font selected, though. No fontset emulation yet.
18220
18221 1999-10-19  Tor Lillqvist  <tml@iki.fi>
18222
18223         * gtk/maketypes.awk: Use G_OS_WIN32.
18224
18225         * gtk/gtk.def: Add some missing entry points. Also some non-public
18226         ones, but PyGTK porter claims to need them.
18227
18228         * gtk/makefile.{cygwin,msc}: Drop some unneeded headers from the
18229         built-in type generation.
18230
18231 1999-10-14  Tor Lillqvist  <tml@iki.fi>
18232
18233         * gdk/win32/gdkdraw.c (gdk_draw_text_wc): Don't use TextOutW for
18234         GDK_FONT_FONT fonts (which is all we have for now, we don't
18235         emulate fontsets). The X11 version uses plain XDrawString in that
18236         case, too. The string passed to gdk_draw_text_wc seems to be in
18237         fact (at least, when used by gtkentry and gtktext) either in a
18238         single-byte charset, or a DBCS. Not Unicode.
18239
18240         This fixes the problem in gtkfontsel, where even if you had
18241         selected a font with a non-Latin1 charset (windows-greek, for
18242         instance), the preview still used Latin-1 glyphs.
18243
18244         * gdk/win32/gdkfont.c (gdk_text_width_wc): Similar change. Don't
18245         use GetTextExtentPoint32W, use GetTextExtentPoint32A.
18246         (gdk_font_load): Recognize the demibold etc weights, even if we
18247         don't have the corresponding constants in the headers.
18248         (gdk_font_hash_insert): Use same hash mechanism as in the X11
18249         version. Should save font resources a bit, when we don't have
18250         multiple HFONTs for the same font.
18251
18252         * gdk/win32/gdkprivate.h: Add the names field as in the X11
18253         version.
18254
18255 1999-10-11  ERDI Gergo  <cactus@cactus.rulez.org>
18256
18257         * gdk/gdk.c (gdk_beep): Modified the XBell call to use the default
18258         X values
18259
18260 1999-10-09  ERDI Gergo  <cactus@cactus.rulez.org>
18261
18262         * gtk/gtktoolbar.h, gtk/gtktoolbar.c: Added horizontal icon/text
18263         layout support (as mentioned on
18264         http://www.jcinteractive.com/gnome-ui/software/widgets/)
18265
18266 Wed Oct  6 12:46:17 PDT 1999 Manish Singh <yosh@gimp.org>
18267
18268         * gtk/fnmatch.c
18269         * gtk/gtkfilesel.c: s/G_HAVE_CYGWIN/G_WITH_CYGWIN/
18270
18271 1999-10-05  Jesus Bravo Alvarez  <jba@pobox.com>
18272
18273         * configure.in (ALL_LINGUAS): Added Galician (gl)
18274
18275 1999-10-05  Tor Lillqvist  <tml@iki.fi>
18276
18277         * gdk/win32/*.[ch]: Corresponding changes as in X11 backend.
18278
18279         * gdk/win32/gdkcompat.c: New file, actually provide an
18280         implementation for the deprecated functions. (Just temporarily.)
18281
18282         * gtk/gtkfilesel.c: Fix an #ifdef syntax botch.
18283
18284         * gtk/makefile.{cygwin,msc}: Update gdk_headers.
18285
18286         * gdk/win32/gdk.def gtk/gtk.def: Updates.
18287
18288 1999-10-05  Kjartan Maraas  <kmaraas@online.no>
18289
18290         * configure.in: Added "uk" to ALL_LINGUAS.
18291         
18292 Mon Oct  4 11:57:11 PDT 1999 Manish Singh <yosh@gimp.org>
18293
18294         * configure.in: correct checking for BeOS check
18295
18296         * gdk/gdktypes.h
18297         * gtk/fnmatch.c
18298         * gtk/gtkfilesel.c
18299         * gtk/gtkitemfactory.c
18300         * gtk/gtkmain.[ch]
18301         * gtk/gtkrc.c: use G_OS_WIN32 and G_HAVE_CYGWIN #defines
18302
18303 Mon Oct  4 16:16:53 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
18304
18305         * gtk/gtkrc.{bg,iso88591[345]}: add gtkrc files for some new charset
18306         encodings: iso-8859-13 (for Lithuanian), iso-8859-14 (used by celtic
18307         languages), iso-8859-15 (used in Estonia) and microsoft-cp1251 (used
18308         by Bulgarian). 
18309
18310 Sun Oct  3 18:13:44 1999  Owen Taylor  <otaylor@redhat.com>
18311
18312         * gtk/gtkwidget.c (gtk_reset_shapes_recurse): 
18313         Fix a reference to window_private->destroyed.   
18314
18315         * gtk/gtkplug.c (gtk_plug_realize): Fix up a direct
18316         (ugly) setting of an internal GdkWindow member to use
18317         a _slightly_ cleaner macro.
18318
18319         * gdk/gdkprivate.h: Split GdkWindowPrivate into
18320         GdkDrawablePrivate and GdkWindowPrivate.
18321         Add extra macros for accessing GDK_DRAWABLE_ components.
18322
18323         * *.[ch]: Massive adjustments for the above, use the
18324         new macros in a lot of places.
18325
18326 Sun Oct  3 15:16:24 1999  Owen Taylor  <otaylor@redhat.com>
18327
18328         * gdk/gdktypes.h: Make GdkDrawable the base type,
18329         not GdkWindow.
18330
18331 Sun Oct  3 15:08:44 1999  Owen Taylor  <otaylor@redhat.com>
18332
18333         * gdk/gdkdraw.c (gdk_drawable_get_data): Added new function.
18334
18335 Sun Oct  3 14:26:15 1999  Owen Taylor  <otaylor@redhat.com>
18336
18337         * gdk/gxid* gdk/x11/gxid*: Move files into x11 subdirectory.
18338
18339 Sun Oct  3 14:16:23 1999  Owen Taylor  <otaylor@redhat.com>
18340
18341         * gdk/gdkdrawable.h: Include gdk/gdkdrawable.h with
18342         gdk/ prefix. (Pointed out by chak@is.tsukuba.ac.jp)
18343
18344         * configure.in gdk/Makefile.am x11/: create x-specific subdirectory.
18345
18346         * docs/gtk-config.1: Now autogenerated.
18347         * docs/Changes-1.4.txt: started
18348         
18349 1999-10-03  Tor Lillqvist  <tml@iki.fi>
18350
18351         * gdk/gdkimage.h gdk/gdkpixmap.h: Change GDK_WINDOWING_WIN32 usage
18352         to #ifdef also here.
18353
18354         * gdk/win32/*.h gdk/win32/*.c: Make corresponding changes as those
18355         Owen did to the X11 backend.
18356
18357         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Fix it again, don't use
18358         ScrollWindowEx when blitting inside a window, it can't be correct
18359         in the general case.
18360
18361         * gdk/win32/gdkevents.c: Don't handle WM_SIZING, handling
18362         WM_GETMINMAXINFO is easier.
18363
18364         * gdk/win32/gdkimage.c (gdk_image_new): Create new image with
18365         depth equal to the bitspixel value, not the visual's depth.
18366
18367         * gdk/win32/gdkvisual.c (gdk_visual_init): Set the visual's depth
18368         to 24 even if the bitspixel value is 32.
18369
18370         * gdk/gdkrgb.c (gdk_rgb_select_conv): After the above change, no
18371         need to check for depth==32 when bpp==32, depth will always be 24.
18372
18373 Fri Oct  1 18:03:36 1999  Owen Taylor  <otaylor@redhat.com>
18374
18375         * docs/Changes-1.4.txt: Started
18376         
18377         * gtk/Makefile.am (gdk_headers): Include all the new headers.
18378
18379         * gdk/*.h gdk/*.c: Split gdk.h into lots of itty-bitty little pieces.
18380         
18381         * gdk/gdkprivate.h gdk/gdkcc.c: Moved GdkColorContext private
18382         into C file.
18383         
18384         * gdkinput.h gdkinputprivate.h - renamed the internal gdkinput
18385         header to gdkinputprivate.h.
18386
18387         * gdk/gdk.h gdk/gdk.c: Removed gdk_time* functions which have been
18388         unused since before 1.2.
18389
18390 1999-09-30  Tor Lillqvist  <tml@iki.fi>
18391
18392         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): On Win32,
18393         expand possible hex escapes in the font family (put there by
18394         logfont_to_xlfd if the font name isn't a legal XLFD font family,
18395         mainly if it contains slashes). (gtk_font_selection_create_xlfd):
18396         On Win32, add hex escapes here, too.
18397
18398 Wed Sep 29 19:55:35 1999  Owen Taylor  <otaylor@redhat.com>
18399
18400         * */*.[ch]: Changed from #if GDK_WINDOWING == GDK_WINDOWING_X11
18401         to #ifdef GDK_WINDOWING_X11.
18402
18403 [ Merges from gtk-1-2 ]
18404
18405 Wed Sep  8 07:13:29 1999  Tim Janik  <timj@gtk.org>
18406
18407         * configure.in: fixed "GNU Make" check to pass with new make version
18408         3.77.95.
18409
18410 Fri Sep  3 16:04:41 1999  Tim Janik  <timj@gtk.org>
18411
18412         * gtk-config.in (--version): don't echo @GTK_VERSION@, but
18413         @GTK_MAJOR_VERSION@.@GTK_MINOR_VERSION@.@GTK_MICRO_VERSION@, so the
18414         AM_PATH_GTK() macros don't get confused by the -pre1.
18415
18416 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
18417
18418         * configure.in (REBUILD): Change check for perl5
18419           to check explicitely for v >= 5.002. (5.001
18420           does not work with our scripts.)
18421
18422 Wed Aug 25 15:45:46 1999  Tim Janik  <timj@gtk.org>
18423
18424         * configure.in: evaluate $PERL for the perl version check. added
18425         --disable-rebuilds to give the user an option to completely disable
18426         any source autogeneration rules.
18427
18428 Mon Aug 23 23:16:14 1999  Tim Janik  <timj@gtk.org>
18429
18430         * configure.in: evaluate $ac_make when checking for GNU Make.
18431
18432 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
18433
18434         * docs/Makefile.am: added generation.txt.
18435
18436         * Makefile.am: require automake 1.4, build README from README.in and
18437         INSTALL from INSTALL.in in dist-hook.
18438         
18439         * README.in:
18440         * INSTALL.in: new files to autogenerate README and INSTALL from.
18441
18442         * configure.in: figure whether we have GNU Make
18443
18444         * docs/generation.txt: minor additions/corrections.
18445
18446 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
18447
18448         * docs/gtkfaq.sgml: FAQ Update
18449
18450 July 30, 1999 Elliot Lee <sopwith@redhat.com>
18451         
18452         * configure.in: Fix autoconf warnings about cross compilation by
18453         trying to provide sane defaults for AC_TRY_RUN.
18454
18455 Fri Jul 16 22:20:21 PDT 1999 Manish Singh <yosh@gimp.org>
18456
18457         * ltconfig
18458         * ltmain.sh: upgrade to libtool 1.3.3
18459
18460 Thu Jul  8 11:30:18 1999  Owen Taylor  <otaylor@redhat.com>
18461
18462         * INSTALL: Indicate that the --with-glib= configure
18463         time flag is unsupported.
18464
18465 Mon Jul  5 20:36:03 1999  Owen Taylor  <otaylor@redhat.com>
18466
18467         * docs/generation.txt: Added a file that gives
18468         documenation about the autogeneration process for
18469         various autogenerated files.
18470         
18471 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
18472
18473         * configure.in (LIBS): Look for libgmodule in the
18474         right location.
18475
18476 Thu Jun 17 13:57:31 1999  Owen Taylor  <otaylor@redhat.com>
18477
18478         * docs/gtk_tut.sgml: Removed references to
18479         code examples in my directory on gtk.org as
18480         they should all be in the tutorial now.
18481
18482         * docs/gtk_tut.sgml: Added sources for dial-test
18483         and scribble-xinput programs that were previously
18484         missing.
18485
18486 Fri Jun  4 00:08:59 1999  Owen Taylor  <otaylor@redhat.com>
18487
18488         * TODO: Added entry about menu keyboard navigation, removed
18489         some finished items.
18490
18491 Mon May 31 00:11:24 1999  Owen Taylor  <otaylor@redhat.com>
18492
18493         * acinclude.m4: Standardize on func_dgettext
18494         not func_gettext, so that the checks for dgettext
18495         actually are paid attention to.
18496
18497 Wed May  5 10:47:54 1999  Owen Taylor  <otaylor@redhat.com>
18498
18499         * configure.in (LIBS): Add $INTLLIBS into $LIBS
18500         directly, rather than repeating the checks for
18501         gettext.
18502
18503         * INSTALL: Added information about gettext and
18504         NLS support.
18505
18506         * acinclude.m4 (LIBM): Check for dgettext, not
18507         just gettext. This should hopefully fix things wrt
18508         systems with old versions of GNU gettext installed.
18509
18510 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
18511
18512         * configure.in (LIBS): Look for libgmodule in the
18513         right location.
18514
18515 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
18516
18517         * autogen.sh: add --enable-maintainer-mode
18518
18519         * configure.in: set ACLOCAL="$ACLOCAL $ACLOCAL_FLAGS"
18520
18521 Wed Mar 24 23:03:49 CST 1999 Shawn T. Amundson <amundson@gtk.org>
18522
18523         * docs/gtk-config.1.in:
18524           docs/Makefile.am:
18525           configure.in: gtk-config is now generated.
18526
18527         * docs/gtk-config.1: Removed, now generated.
18528
18529 Thu Sep 23 17:59:59 1999  Tim Janik  <timj@gtk.org>
18530
18531         * gdk/gdkevents.c (gdk_event_translate): grr, even if Gdk doesn't
18532         handle CreateNotify itself, still put out a debuging message for
18533         --gdk-debug=events. made the ReparentNotify debugging message more
18534         verbose.
18535         wrap xcoords translation for ConfigureEvents into an error trap,
18536         a destroy event may already be pending, and in that case, the
18537         actuall coordinate values are not at all critical.
18538
18539 Sat Sep 18 22:24:15 1999  Owen Taylor  <otaylor@redhat.com>
18540
18541         * gdk/gdkcc.c: Stop leaking the color_hash all over
18542         the place. Simplify and improve the logic.
18543
18544 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
18545
18546         * gdk/gdk.h, gdk/gdkcolor.c: make return types (gint or gboolean)
18547         for prototypes and function implementations consistent (reported
18548         by Tomas Ogren).
18549
18550 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
18551
18552         * gdk/gdkevents.c (gdk_event_translate): tell if expose events have
18553         send_event set in debugging output.
18554         (gdk_compress_exposures): default initialize the event so we don't
18555         operate on bogus values (namely send_event).
18556
18557 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
18558
18559         * gdk/gdkwindow.c: When we receive an unexpected
18560         destroy notify on one of our windows, don't just
18561         warn about it, also mark our windows as destroyed.
18562
18563 Sun Sep  5 08:10:53 1999  Owen Taylor  <otaylor@redhat.com>
18564
18565         * gdk/gdkfont.c (gdk_font_hash_insert): Add
18566           name => font and name => fontset hashes. The 
18567           name => fontset hash is a _big_ win since we
18568           weren't previously caching fontsets at all and loading
18569           fontsets is expensive. The name => font hash
18570           is less of a win, but it does save us from doing
18571           repeated XQueryFont calls on the same font.
18572
18573         * gdk/gdkprivate.h (struct _GdkFontPrivate): Add a names
18574           list so we can remove font/fontset from hash.
18575
18576 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
18577
18578         * gdk/gdkproperty.c (gdk_atom_intern): Remove useless
18579           and slightly confusing test. [ XInternAtom (,,TRUE)
18580           will never return None ].
18581
18582 Sat Sep  4 08:39:26 1999  Owen Taylor  <otaylor@redhat.com>
18583
18584         * gdk/gdkwindow.c (gdk_window_set_geometry_hints)
18585           gdk/gdkwindow.c (gdk_window_set_hints):
18586
18587         Don't omit setting the properties if flags == 0 -
18588         there may be an existing set of properties there
18589         already. (Very old bug. Would it be better to
18590         delete the property instead?)
18591
18592         * gdk/gdkselection.c (gdk_selection_property_get): Fix 
18593           spelling error in comment.
18594
18595 Wed Sep  1 14:05:30 1999  Owen Taylor  <otaylor@redhat.com>
18596
18597         * gdk/gdkimage.c (gdk_image_new): Use gdk_error_trap_push()
18598           to avoid stomping over gdk_error_warnings.
18599
18600         * gdk/gdkimage.c (gdk_image_new): compute image->bpp
18601           as (bits_per_pixel + 7) / 8. This gives the same
18602           result as before for multiples of 8, but actually
18603           a "reasonable" value for 1bit or 4bit displays.
18604
18605 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
18606
18607         * gdk/Makefile.am: minor cleanups, strip spaces on build rules for
18608         GNU Make.
18609
18610 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
18611
18612         * gdk/gdkevents.c (gdk_event_translate): give a debugging note when
18613         discarding configure events.
18614
18615 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
18616
18617         * gdk/gdkpixmap.c (gdk_pixmap_unref): g_return_if_fail() the
18618         refcount is greater than zero.
18619
18620         * gdk/gdkwindow.c (gdk_window_unref): Likewise.
18621
18622         * gdk/gdkfont.c (gdk_font_unref): Likewise.
18623
18624         * gdk/gdkgc.c (gdk_gc_unref): Likewise.
18625
18626         * gdk/gdkdnd.c (gdk_drag_context_unref): Likewise.
18627
18628 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
18629
18630         * gdk/gdkproperty.c (gdk_property_get): Fix assumption
18631         that format 32 => sizeof(item) == 4. It really is
18632         sizeof(long).
18633
18634 Tue Jun 29 23:02:42 1999  Owen Taylor  <otaylor@redhat.com>
18635
18636         * gdk/gdk.c (gdk_x_error / gdk_x_io_error): Don't
18637         core dump at all on X IO errors, only core dump
18638         if --enable-debug for X errors.
18639
18640 Thu Jun 24 17:06:23 1999  Tim Janik  <timj@gtk.org>
18641
18642         * gdk/gdkevents.c (gdk_event_translate): removed old ""Got event for
18643         unknown window:" message. disabled ConfigureNotify discarding code,
18644         because it led to events being processed out of order.
18645
18646 Thu Jun 24 12:22:02 1999  Tim Janik  <timj@gtk.org>
18647
18648         * gdk/gdkglobals.c: preinitialize gdk_error_code to 0.
18649
18650         * gdk/gdkevents.c (gdk_event_send_client_message_to_all_recurse): since
18651         we export this function, supress error warnings and don't reset the
18652         error code in the first half of this function.
18653
18654         * gdk/gdk.c (gdk_x_error): set gdk_error_code to the actuall X error
18655         code (instead of just -1) so gdk_error_trap_pop() reveals something
18656         actually informative about the error that happened.
18657
18658         * gdk/*.c:
18659         don't rely on gdk_error_code being -1 if an error occoured, but just
18660         gdk_error_code != 0.
18661
18662 Thu Jun 24 11:50:07 1999  Tim Janik  <timj@gtk.org>
18663
18664         * gdk/gdkevents.c (gdk_event_apply_filters): advance the filter list
18665         pointer *before* invoking the filter function, so we at least don't
18666         crash if a filter is removed that is currently executed. window filters
18667         *really* need to be made truely reentrant at some point.
18668
18669 Mon Jun 14 11:10:15 1999  Tim Janik  <timj@gtk.org>
18670
18671         * gdk/gdkevents.c (gdk_event_translate): print the atom name in the
18672         PropertyNotify debug messages.
18673
18674 Wed May  5 22:51:06 1999  Owen Taylor  <otaylor@redhat.com>
18675         
18676         Patch from Sung-Hyun Nam <namsh@lgic.co.kr>
18677         
18678         * gdk/gdkim.c: Fix cut-and-paste errors for 
18679         x/y and PreeditAttributes/StatusAttributes.
18680
18681 Wed May  5 22:24:21 1999  Owen Taylor  <otaylor@redhat.com>
18682
18683         * gdk/gdkwindow.c (gdk_window_set_geometry_hints): Change
18684         G_MAXINT to 2^16 to alleviate overflow problems in
18685         various window managers.
18686
18687 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
18688
18689         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
18690         for fontsets.
18691
18692 Wed May  5 12:42:01 1999  Owen Taylor  <otaylor@redhat.com>
18693
18694         * gdk/gdkwindow.c (gdk_window_set_geometry_hints):
18695         Initialize size_hints.x and size_hints.y because kwm
18696         brokenly pays attention to them.
18697         (Bug #1181 -  Lars Heete <hel@admin.de>)
18698
18699 Wed May  5 11:38:56 1999  Owen Taylor  <otaylor@redhat.com>
18700
18701         * gdk/gdkrgb.c (gdk_rgb_choose_visual): Free the 
18702         return value of gdk_list_visuals(). 
18703         (Bug #1193 - Morten Welinder <terra@diku.dk>)
18704
18705 Tue May  4 11:12:56 PDT 1999 Manish Singh <yosh@gimp.org>
18706
18707         * gdk/gdkim.c (gdk_im_real_open): cast the return value of
18708         XSetIMValues to (void *) when comparing to NULL, to workaround
18709         the problem of some compilers barfing since older X headers don't
18710         have the prototype for it.
18711
18712 Mon Apr 19 10:11:12 1999  Owen Taylor  <otaylor@redhat.com>
18713
18714         * gdk/gdkcolor.c (gdk_colormap_new): Fix memory leak
18715         for pseudocolor where colormap->colors was double
18716         allocated.
18717
18718         * gdk/gdkcolor.c (gdk_colormap_alloc1): Store the
18719         color value in the hash table with the pixel filled
18720         in so when we do later hash table lookups, the color
18721         value is correct.
18722         
18723 Sun May  2 15:29:45 PDT 1999 Manish Singh <yosh@gimp.org>
18724
18725         * gdk/gdkdraw.c (gdk_draw_lines): check private->destroyed before
18726         making the call
18727
18728 Tue Apr 27 11:17:35 1999  Owen Taylor  <otaylor@redhat.com>
18729
18730         * gdk/gdkdnd.c (xdnd_set_{targets,actions}): Fix leak
18731         pointed out by Morten Welinder <terra@diku.dk>.
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 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
18739
18740         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
18741           default filter from the list
18742
18743 Fri Apr 16 20:41:43 PDT 1999 Manish Singh <yosh@gimp.org>
18744
18745         * gdk/gdk.c: #include "gdkkeysyms.h" for gdk_XConvertCase #defines
18746
18747         * gtk/gtkfontsel.c (gtk_font_selection_create_xlfd): use
18748         g_strdup_printf instead of calcing the length separately
18749
18750 Tue Apr 13 02:49:33 1999  Owen Taylor  <otaylor@redhat.com>
18751
18752         * gdk/gdkwindow.c: removed some silly #ifdef HAVE_CONFIG
18753         that we don't do in many other places. (Fixing duplicate 
18754         #include of config.h)
18755
18756         * gdk/gdkevents.c: include gdkinput.h _after_ config.h.
18757         Otherwise, #ifndef XINPUT_NONE check in the latter
18758         doesn't work. (Bug #546)
18759
18760 Sun Apr 11 14:38:03 1999  Tim Janik  <timj@gtk.org>
18761
18762         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): check for color
18763         "None" case insensitive.
18764
18765 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
18766
18767         * gdk/gdkselection.c: 
18768         Add error traps so if the other end of the connection
18769         dies, we survive.
18770
18771 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
18772
18773         * gdk/gdkdnd.c (gdk_drag_motion): Separate out the
18774         dest_xid field into two fields - one for the window
18775         to send in messages, one to indicate the last looked
18776         up window for caching purposes. This is needed, so
18777         that Leave messages get the correct window.
18778
18779 Mon Apr  5 13:21:30 1999  Owen Taylor  <otaylor@redhat.com>
18780
18781         * gdk/gdkevents.c (gdk_event_check, gdk_event_prepare):
18782         Fix warning created by people mucking around
18783         with the gsource API.
18784
18785         * gdk/gdkevents.c (gdk_io_invoke, gdk_input_add_full):
18786         Change mapping between GIOCondition and GdkInputCondition
18787         to match the way the Linux kernel does it. This should
18788         fix problems where closed pipes were no longer signalling
18789         GDK_INPUT_READ on systems with a native poll().
18790
18791 Mon Apr  5 17:11:57 1999  Owen Taylor  <otaylor@redhat.com>
18792
18793         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): Check 
18794         explicitly for the string "None" - it is in the XPM
18795         spec and some servers treat unknown colors in odd ways
18796         (like asking the user!)
18797
18798 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
18799
18800         * gdk/gdkevents.c: made "->" into a "." of previous change so
18801         it compiles
18802
18803 Thu Apr  1 18:41:25 1999  Owen Taylor  <otaylor@redhat.com>
18804
18805         * gdk/gdkevents.c (gdk_compress_exposures): Set the
18806         window field of the event structure before calling
18807         user filters.
18808
18809 1999-03-31  Federico Mena Quintero  <federico@nuclecu.unam.mx>
18810
18811         * gdk/gdk.c (gdk_init_check): Use False as the last argument to
18812         XInternAtom() here.  This is a particularly Old And Nasty(tm) bug.
18813
18814 Mon Mar 29 17:31:52 1999  Owen Taylor  <otaylor@redhat.com>
18815
18816         * gdk/gdkim.c (gdk_mbstowcs): Free the value of the
18817         intermediate text property - prevents major memory
18818         leak when gdk_use_mb.
18819         gtk-d3august-990311-0: Bj|rn Augustsson <d3august@dtek.chalmers.se>
18820
18821 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
18822
18823         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
18824         gtk-a-higuti-990322-[0-3]
18825
18826         * gdk/gdkfont.c (gdk_text_extents_wc): Make  work when
18827         sizeof(wchar_t) != sizeof (GdkWChar)
18828
18829         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
18830         that was causing -DX_LOCALE not to work.
18831
18832         * gtk/gtkrc.c (gtk_rc_init):
18833         X_LOCALE will never have LC_MESSAGES defined
18834
18835         * gdk/gdk.c (gdk_init_check):
18836         Remove --xim-preedit and --xim-status from argv properly.
18837
18838         * gdk/gdkim.c (gdk_ic_real_new): Add a gdk_flush() so
18839         that the client window is present on the X server
18840         before we pass it to the input method.
18841
18842 Tue Mar  9 10:46:49 1999  Owen Taylor  <otaylor@redhat.com>
18843
18844         * gdk/gdkdnd.c (motif_find_drag_window): Fix bug where
18845         if --display is specified on the command line, than
18846         the drag window will not be created on that display.
18847         
18848 Tue Mar  9 10:38:24 1999  Owen Taylor  <otaylor@redhat.com>
18849
18850         * gdk/gdkproperty.c (gdk_atom_intern): Fixed bug where
18851         lookups with only_if_exists == TRUE were inserting
18852         bogus values into the atom cache.
18853
18854 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
18855
18856         * gdk/gdkselection.c (gdk_selection_property_get): first XFree(t),
18857         then reset it to NULL.
18858
18859         * gdk/gdkcolor.c:
18860         (gdk_colors_free): 
18861         (gdk_colormap_free_colors): use colormap->colors[in_pixels[i]] as the
18862         key for g_hash_table_remove() in both functions, this prevents us
18863         from accessing possibly uninitialized portions of a GdkColor structure
18864         where we are only interested in its pixel value.
18865
18866 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
18867
18868         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
18869         font hash table, if we have a GdkFontPrivate entry for this font
18870         already, simply increment its reference count, provided by Olaf Dietsche
18871         <olaf.dietsche+list.gtk@netcologne.de>.
18872
18873 1999-09-21  Tor Lillqvist  <tml@iki.fi>
18874
18875         * gdk/win32/gdk.c (gdk_exit_func): Delete the gdk_DC when exiting,
18876         just to be sure.
18877
18878         * gdk/win32/gdkvisual.c (gdk_visual_init): Remove a couple of
18879         unused variables, leftovers from the X11 version.
18880
18881         * gdk/win32/rc/*.cur: Better cursors provided by Bernd Herd.
18882
18883         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): Only
18884         downcase fields on X11.
18885
18886 Mon Sep 20 13:17:39 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
18887         
18888         * configure.in,po/pt_BR.po: added Portuguese Brazilian file from
18889         Alex Sandro Queiroz e Silva <asandro@lcg.dc.ufc.br>
18890
18891 1999-09-17  Tor Lillqvist  <tml@iki.fi>
18892
18893         * gdk/win32/gdk.def: Add gdk_threads_mutex.
18894
18895         * gtk/makefile.msc: Correct path to libintl.
18896
18897         Thanks to Tomi Ollila and Bernd Herd: Fix some inconsistencies in
18898         use of gint vs. int, and gint vs. gboolean in headers and
18899         definitions. Use GtkType for the *_get_type functions. Note that
18900         these changes preserve binary compatibility.
18901
18902         * gdk/gdk.c
18903         * gdk/win32/gdk.c
18904         * gdk/gdk.h: Fix inconsistencies: gint vs int.
18905
18906         * gtk/gtkmain.c
18907         * gtk/gtkclist.c
18908         * gtk/gtkmenufactory.c
18909         * gtk/gtknotebook.c
18910         * gtk/gtkwidget.c: Fix inconsistencies, also gint
18911         vs. gboolean.
18912
18913         * gtk/gtkcolorsel.[ch]
18914         * gtk/gtkcombo.[ch]
18915         * gtk/gtkdrawingarea.[ch]
18916         * gtk/gtkgamma.[ch]
18917         * gtk/gtkhandlebox.[ch]
18918         * gtk/gtkhpaned.[ch]
18919         * gtk/gtkhruler.[ch]
18920         * gtk/gtkplug.[ch]
18921         * gtk/gtkpreview.[ch]
18922         * gtk/gtkruler.[ch]
18923         * gtk/gtksocket.[ch]
18924         * gtk/gtkstatusbar.[ch]
18925         * gtk/gtktoolbar.[ch]
18926         * gtk/gtkvbbox.[ch]
18927         * gtk/gtkvpaned.[ch]
18928         * gtk/gtkvruler.[ch]: Always use type GtkType for the *_get_type
18929         functions.
18930
18931         * gtk/gtkgamma.h: Fix bug, missing () in call of
18932         gtk_gamma_curve_get_type() in GTK_GAMMA_CURVE_CLASS. 
18933
18934 1999-09-14  Tor Lillqvist  <tml@iki.fi>
18935
18936         * gdk/gdkcolor.c (gdk_colormap_new)
18937         * gdk/win32/gdkcolor.c (gdk_colormap_new): Fix memory leak:
18938         colormap->colors was allocated twice.
18939
18940         * gdk/win32/gdk.c: Remove some unused stuff.
18941
18942         * gdk/win32/gdkcolor.c (gdk_colormap_sync): Initialize all of the
18943         colormap.
18944
18945         * gtk/gtkfontsel.c (gtk_font_selection_dialog_get_type)
18946         * gtk/gtklabel.h (gtk_label_get_type)
18947         * gtk/gtktipsquery.c (gtk_tips_query_get_type)
18948         * gtk/gtktypeutils.h (gtk_type_name): : Use GtkType
18949         in a couple of places, not guint.
18950
18951 Fri Sep 10 21:31:00 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
18952
18953         * configure.in,po/et.po: added Estonian language file
18954
18955 Wed Sep  1 14:36:12 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
18956
18957         * configure.in,po/da.po: added Danish file
18958
18959 Sun Aug 29 13:38:59 BST 1999 Tony Gale <gale@gtk.org>
18960
18961         * docs/gtkfaq.sgml: Minor FAQ Update
18962
18963 Sat Aug 28 14:34:37 BST 1999 Tony Gale <gale@gtk.org>
18964
18965         * docs/gtkfaq.sgml: FAQ update
18966
18967 1999-08-27  Tor Lillqvist  <tml@iki.fi>
18968
18969         Win32: Philippe Colantoni <colanton@aris.ss.uci.edu> suggests a
18970         way to get window contents continually refreshed while resizing. I
18971         didn't like the effects myself, so it's not on by default.
18972
18973         * gdk/win32/gdkprivate.h: New flag variable
18974         gdk_event_func_from_window_proc, FALSE by default.
18975
18976         * gdk/win32/gdk.c (gdk_init_check): Set above flag if the
18977         environment variable GDK_EVENT_FUNC_FROM_WINDOW_PROC is set, or we
18978         are passed --gdk-event-func-from-window-proc.
18979
18980         * gdk/win32/gdkevents.c (gdk_WindowProc): If above flag is set,
18981         and we have am event_func, call it instead of enqueing the event.
18982
18983 1999-08-23  Tor Lillqvist  <tml@iki.fi>
18984
18985         * gdk/win32/gdkevents.c (gdk_event_translate): Fix from Simon
18986         Kelley: Set expose_count in GdkEventExposes correctly.
18987
18988         * gdk/win32/gdkwindow.c: Remove dead code (#ifdef
18989         MULTIPLE_WINDOW_CLASSES).
18990
18991         * gdk/win32/gdkdraw.c (gdk_draw_line): Workaround from Hans Breuer
18992         for bug in NT, apparently NT *does* draw the end pixel, too, in
18993         LineTo with a one-pixel pen, so we don't have to do it ourselves.
18994
18995 1999-08-21  Tor Lillqvist  <tml@iki.fi>
18996
18997         Improvements by Hans Breuer: 
18998
18999         * gdk/win32/gdkwindow.c (RegisterGdkClass): New function
19000
19001         * gdk/win32/gdkwindow.c (gdk_window_new): Use it. Don't set the
19002         CS_?REDRAW flags as they cause lots of (late) redraws when "show
19003         window contents while dragging" is turned on. Allocate at least
19004         one unique class for every GdkWindowType. If support for single
19005         window-specific icons is ever needed (eg. Dialog specific), every
19006         such window should get its own class.
19007
19008 1999-08-19  Tor Lillqvist  <tml@iki.fi>
19009
19010         * gdk/win32/gdkgc.c (gdk_gc_new_with_values): Fix a cut&paste
19011         error that caused crashes.
19012
19013 1999-08-17  Tor Lillqvist  <tml@iki.fi>
19014
19015         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): When blitting inside one
19016         window, use ScrollWindowEx, and call UpdateWindow. This prevents
19017         bugs when for instance part of the window was outside the
19018         display. Thanks to Philippe Colantoni for finding and fixing this.
19019
19020 1999-08-16  Tor Lillqvist  <tml@iki.fi>
19021
19022         * gdk/win32/gdkdraw.c (gdk_draw_arc): Fix start and end radial
19023         endpoint calculations which were totally wrong. (A little RTFMing
19024         helps a lot ;-)
19025
19026         * gtk/makefile.{cygwin,msc}: Use libintl extracted from glibc
19027         from a separate directory, not from gettext, because of licensing
19028         issues (we want to use the LGPL version).
19029
19030         * README.win32: Mention the intl from glibc vs from gettext issue.
19031
19032 1999-08-13  Tor Lillqvist  <tml@iki.fi>
19033
19034         * gdk/win32/gdkevents.c (gdk_event_translate): Fix a couple of bugs
19035         in the key event handling: Now AltGr chars work again. Also,
19036         now Alt-digits are passed up as well as Control-digits.
19037         Pass keypad plus and minus as normal plus and minus.
19038
19039 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
19040
19041         * docs/gtkfaq.sgml: FAQ Update
19042
19043 1999-07-25  Tor Lillqvist  <tml@iki.fi>
19044
19045         * README.win32
19046         * config.h.win32: Add HAVE_WINTAB. Undefine it if bulding without
19047         the Wintab SDK.
19048
19049         * gdk/win32/gdkinput.c: Hack some more. Still doesn't quite work
19050         OK, but getting closer. Guard against bogus tilt data from Wacom
19051         ArtPad II with the 3.40 driver. Add ifdefs for HAVE_WINTAB to
19052         enable easier building without Wintab.
19053
19054         * gdk/win32/gdkinput.h
19055         * gdk/win32/gdkevents.c 
19056         * gdk/win32/gdkwindow.c: Minor changes related related to above.
19057         
19058         * gdk/win32/gdkvisual.c: Simplify a lot, remove leftovers from X11
19059         code. As we have just one visual on Win32, no sense to have it in a
19060         table, and no need for the hash table.
19061
19062         * gdk/win32/rc/cursor*.cur: Edit some of the cursors a bit to look
19063         better on white background.
19064
19065 1999-07-21  Tor Lillqvist  <tml@iki.fi>
19066
19067         * README.win32: Update gcc build instructions. Mention gettext is
19068         GPL.
19069
19070         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Get correct
19071         supported cursor size with GetSystemMetrics.
19072
19073         * gdk/win32/gdkfont.c
19074         * gtk/gtkfontsel.c: Guard against some font weight and charset
19075         symbols being undefined (in mingw32 headers).
19076
19077         * gdk/win32/makefile.cygwin
19078         * gtk/makefile.cygwin
19079         * gtk/gtkthemes.c: No longer need to have differently named
19080         gcc-built DLLs when using gcc-2.95 and -fnative-struct.
19081
19082 hu Jul 15 13:33:15 BST 1999 Tony Gale <gale@gtk.org>
19083
19084         * docs/gtkfaq.sgml: Long awaited FAQ update.
19085
19086 1999-07-15  Tor Lillqvist  <tml@iki.fi>
19087
19088         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Implement
19089         it. Obscure bit manipulation needed.
19090
19091         * gdk/win32/gdkevents.c: Logging.
19092         
19093         * gtk/gtkthemes.c (gtk_theme_engine_get): (Win32) Use new DLL naming
19094         style (file name include compiler name) for theme engines.
19095
19096 1999-07-13  Tor Lillqvist  <tml@iki.fi>
19097
19098         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Less logging verbiage.
19099
19100         * gdk/win32/gdkevents.c: Fix long-standing bug in key
19101         events. The key.string wasn't zero-terminated, still we strdup'ed
19102         it in gdk_event_copy(). Synthesize crossing events for button
19103         events before possible propagation.
19104
19105         * gdk/win32/gdkwindow.c: Log gdk_window_set_title.
19106
19107         * gdk/win32/makefile.cygwin
19108         * gtk/makefile.cygwin: Use new DLL naming style for the
19109         GCC-compiled ones.
19110
19111         * gdk/win32/makefile.msc
19112         * gtk/makefile.msc: Cosmetics mostly.
19113
19114         * gtk/gtk.def: Add missing entry points.
19115
19116         * gtk/gtksocket.c: Add dummy gtk_socket_get_type() for Win32.
19117
19118 1999-07-09  Tor Lillqvist  <tml@iki.fi>
19119
19120         * gdk/win32/gdkdraw.c (gdk_draw_arc): Don't draw anything if width
19121         or height is zero. Don't print a warning if Pie or Arc fails, they
19122         always fail (?) for very narrow ellipses.
19123
19124         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Call InvalidateRgn for
19125         the part or the destination window corresponding to source area
19126         outside of the source drawable's boundary.
19127
19128         * gdk/win32/gdkdraw.c (gdk_draw_lines, gdk_draw_polygon): Don't do
19129         anything if less than two points.
19130
19131         * gdk/win32/gdkselection.c (gdk_selection_owner_get): Always
19132         return NULL. Gtk cut-and-paste inside a single program works
19133         better this way. (It always gets the clipboard contents from
19134         Windows, not from its own copy, which is cleared anyway. I can't
19135         say I fully understand what happens... Emulating the X selection
19136         and property stuff is a bit of a mess.)
19137
19138         * gdk/win32/gdkevents.c
19139         * gdk/win32/gdkproperty.c: A bit more verbose logging.
19140
19141         * gdk/win32/gdkregion.c: Fix some memory leaks (temporary regions
19142         that never got deleted). Revamp gdk_region_shrink.
19143
19144         * gdk/win32/gdkregion.c: Fix memory leak, delete temporary regions
19145         after use.
19146
19147         * gtk/gtk.def: Add some missing entry points.
19148
19149         * gtk/gtkrc.c: Strip trailing directory separator from pixmap path
19150         component.
19151
19152 1999-07-04  Tor Lillqvist  <tml@iki.fi>
19153
19154         * gdk/win32/gdkevents.c (gdk_event_translate): Handle
19155         Control-digits specially.
19156
19157 1999-07-03  Tor Lillqvist  <tml@iki.fi>
19158
19159         * gtk/makefile.{cygwin,msc}: New pthreads version. Use gettext.
19160
19161 1999-06-28  Tor Lillqvist  <tml@iki.fi>
19162
19163         * gdk/win32/gdkimage.c (gdk_image_get): bpl was set wrong for
19164         bitmaps, should be multiple of 4. (Thanks to Hans Breuer for
19165         finding this.)
19166
19167 1999-06-01  Jose H Mercado  <jmercado@mit.edu>
19168
19169         * gtk+.spec.in: Corrected some typos in files section.
19170         
19171 1999-06-15  Tor Lillqvist  <tml@iki.fi>
19172
19173         * README.win32: Mention using GNU gettext.
19174         * config.h.win32: Enable NLS stuff.
19175         * gtk/makefile.msc: Use GNU gettext.
19176         * gdk/win32/gdkdnd.c: Minor header reorg.
19177         * gdk/win32/{gdkevents,gdkwindow}.c: No semantic changes, mainly
19178         cosmetics.
19179         * gtk/gtkrc.c (Win32): Make get_gtk_sysconf_directory() public.
19180         * gtk/gtkmain.c (Win32): Use it in bindtextdomain() call.
19181
19182 Wed Jun  2 11:44:25 PDT 1999 Manish Singh <yosh@gimp.org>
19183
19184         * acinclude.m4
19185         * config.guess
19186         * config.status
19187         * ltconfig
19188         * ltmain.sh: upgrade to libtool 1.3.2 (BeOS changes merged)
19189
19190 1999-05-30  Tor Lillqvist  <tml@iki.fi>
19191
19192         * gdk/win32/gdkwindow.c: AdjustWindowRectEx2 renamed to
19193         SafeAdjustWindowRectEx. Don't override all calls to
19194         AdjustWindowRectEx by it, but use it only in two places: When
19195         creating a new top-level window and when moving a top-level
19196         window.
19197
19198         Use screen coordinate rectangle, not client rectangle, in
19199         gdk_window_move. Thus SafeAdjustWindowRectEx will do its job only
19200         when we try to place a window so that the decoration (mainly,
19201         title bar) isn't visible.
19202
19203         These changes fix the bug that showed up for instance as the
19204         GIMP's saved top-level windows moving right and down (by an amount
19205         equal to the window decoration) for each session. This bug showed
19206         up also in testgtk's "Saved Position".
19207
19208         gdk_window_resize also redone a bit.
19209
19210 1999-05-25  Tor Lillqvist  <tml@iki.fi>
19211
19212         * gtk/testgtkrc: Add (commented out) Windows-style theme
19213         include line.
19214
19215         * gdk/win32/gdk.def,gtk/gtk.def: Add some missing entry points.
19216
19217 1999-05-18  Tor Lillqvist  <tml@iki.fi>
19218
19219         * gdk/win32/makefile.{cygwin,msc}: Copy our gdkprivate.h and
19220         gdkx.h to a gdk subdirectory, so that applications can include
19221         these with <gdk/*.h> without trouble.
19222
19223         * gdk/win32/gdkimage.c (gdk_image_new_with_depth): Code simplified.
19224         (gdk_image_destroy): Plug resource leak, some GdkImages didn't
19225         have their bitmap destroyed.
19226
19227         * gdk/win32/gdk.def: Add gdk_root_parent.
19228
19229 Wed May 12 03:00:56 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
19230
19231         * configure.in
19232           gtk-config.in
19233           ltconfig
19234           ltmain.sh     
19235           gtk/Makefile.am: changes to compile nicely (with xlib) 
19236           on BeOS
19237
19238 Sat May  1 15:04:42 PDT 1999 Manish Singh <yosh@gimp.org>
19239
19240         * acinclude.m4
19241         * config.guess
19242         * config.sub
19243         * ltconfig
19244         * ltmain.sh: upgrade to libtool 1.3
19245
19246 Fri Apr 30 13:38:16 1999  Lars Hamann  <lars@gtk.org>
19247
19248         * gtk/gtkclist.c:
19249         * gtk/gtkctree.c: merges from gtk-1-2
19250
19251 1999-04-25  Tor Lillqvist  <tml@iki.fi>
19252
19253         Support added for building using a GNU toolchain on Win32,
19254         gcc -mno-cygwin (egcs-1.1.2) on cygwin-b20.1.
19255
19256         * gdk/win32/makefile.cygwin gtk/makefile.cygwin: New files.
19257         * config.h.win32: Changes for gcc.
19258         * gdk/gdkrectangle.c: Include gdk.h as <gdk/gdk.h>.
19259         * gdk/gdkcolor.c: config.h.win32 already defines strcasecmp.
19260         * gdk/win32/gdkconfig.h: Only the MS compiler has wctype.h.
19261         * gdk/win32/gdkdnd.c: Protect (unused) OLE2 stuff better.
19262         Protect shl stuff unavaiilable with mingw32 headers.
19263         * gdk/win32/gdkevents.c: Fix typo.
19264         * gdk/win32/gdkglobals.c: Use GDKVAR here also for gcc.
19265         * gdk/win32/gdkim.c: Use OEM code page for multibyte chars. (?)
19266         * gdk/win32/gdkinput.c: Use __try __except only with the MS compiler.
19267         * gdk/win32/gdkprivate.h: Make up for some stuff missing from
19268         the mingw32 headers.
19269         * gdk/win32/makefile.msc: Use latest Wintab kit and glib.
19270         * gtk/gtkfilesel.c: Include <glib.h> early, to get stat->_stat
19271         definition on Win32. Test for NATIVE_WIN32, not _MSC_VER.
19272         * gtk/gtkfontsel.c: Protect CHARSET redefinition on Win32.
19273         Test for NATIVE_WIN32, not _MSC_VER.
19274         * gtk/gtkmain.c: No use warning about developer version on Win32,
19275         there aren't any non-developer versions anyhow.
19276         * gtk/gtkrc.c: Test for NATIVE_WIN32, not _MSC_VER.
19277         * gtk/makefile.msc: Use pthread from another directory. Minor other
19278         changes. 
19279
19280 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
19281
19282         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
19283           default filter from the list
19284
19285 Mon Mar  8 12:52:53 1999  Owen Taylor  <otaylor@redhat.com>
19286
19287         * gtk/gtkwidget.c (gtk_widget_grab_default): Add a warning
19288          when gtk_widget_grab_default() is called for a widget that
19289          is not within a GtkWindow.
19290
19291 Sat Apr 10 13:52:54 BST 1999  Tony Gale <gale@gtk.org>
19292
19293         * docs/gtk_tut.sgml, examples/clist.c: use a
19294           scrolled window in the clist example. Minor
19295           tutorial fixes.
19296
19297 Fri Apr  2 09:19:20 BST 1999  Tony Gale <gale@gtk.org>
19298
19299         * docs/gtk_tut.sgml: Style check from David King
19300           <dking@youvegotmail.net>
19301
19302 1999-03-30  Pavel Machek  <pavel@artax.karlin.mff.cuni.cz>
19303
19304         * gtk/gtkfontsel.c (gtk_font_selection_get_fonts): Make code
19305         compile with unknown value of GDK_WINDOWING
19306
19307 1999-03-28  Raja R Harinath  <harinath@cs.umn.edu>
19308
19309         * gdk/Makefile.am (gdkconfig.h): Make sure `gdkconfig.h' exists
19310         after the rule is fired.
19311         (install-exec-local): Install gdkconfig.h only if the contents are
19312         different from the currently installed gdkconfig.h.
19313
19314 1999-03-26  Raja R Harinath  <harinath@cs.umn.edu>
19315
19316         * gdk/Makefile.am (configexecincludedir): Rename from 
19317         configincludedir so that gdkconfig.h will be installed 
19318         as part of `make install-exec'. 
19319
19320 Fri Mar 19 16:50:33 PST 1999 Manish Singh <yosh@gimp.org>
19321
19322         * acinclude.m4
19323         * config.guess
19324         * config.sub
19325         * ltconfig
19326         * ltmain.sh: upgrade to libtool 1.2f
19327
19328         * autogen.sh: libtool is not required to autogen gtk+
19329
19330         * acconfig.h: remove WITH_SYMBOL_UNDERSCORE (not explictly
19331         needed)
19332
19333 1999-03-18  Tor Lillqvist  <tml@iki.fi>
19334
19335         * gdk/gdktypes.h: Merge in Win32 version: Define macro GDKVAR for
19336         declaring gdk variables exported/imported from the DLL. New image
19337         type enum, GDK_IMAGE_SHARED_PIXMAP, for gdk_imlib. New drag and
19338         drop protocol enums, GDK_DRAG_PROTO_WIN32_DROPFILES and
19339         GDK_DRAG_PROTO_OLE2.
19340
19341         * gdk/gdk.h: Merge in Win32 version: Two new functions,
19342         gdk_pixmap_create_on_shared_image and gdk_image_bitmap_new. So far
19343         declared only for the Win32 version, but could be in the X11
19344         version as well. (Needed for a Xlib-less gdk_imlib.)
19345         gdk_color_hash should have only one parameter. Declare
19346         gdk_threads_mutex with GDKVAR.
19347         
19348         * gdk/gdkcolor.c (gdk_color_hash): A hash function should have
19349         just one parameter.
19350
19351         * gdk/gdkimage.c (gdk_image_get): Initialize bpp correctly. Bytes
19352         per pixel, not bits.
19353
19354         * gdk/gdkrgb.c: Mingle includes somewhat. (gdk_rgb_select_conv):
19355         Fetch bpp (which means bits-per-pixel here) from another place on
19356         Win32. Accept also depth==32 (which we might get on Win32) with
19357         bpp==32.
19358
19359         * gtk/{gtkclist,gtkctree,gtkdnd,gtkditable,gtkfontsel,
19360         gtkhandlebox,gtklayout,gtkmain,gtkplug,gtkpreview,gtkrc,
19361         gtkselection,gtksocket,gtkstyle,gtkwidget,gtkwindow}.c:
19362         Include gdx.h from "gdkx.h", not "gdk/gdkx.h", as gdkx.h will be
19363         in the backend-dependent directory, not in the common gdk
19364         directory.
19365
19366         * gtk/testgtk.c: Ditto. Also, don't use ../gdk path to gdk
19367         headers.
19368
19369 Wed Mar 17 05:06:49 1999  Tim Janik  <timj@gtk.org>
19370
19371         * gtk/gtkmain.c (gtk_init_check): tell people that they don't really
19372         want to use the Gtk+ devel version (which is true, and yes - even i am
19373         currently working with the 1.2.x branch). so everyone reading this, you
19374         probably want to issue
19375         cvs checkout -r glib-1-2 glib
19376         and
19377         cvs checkout -r gtk-1-2 gtk+
19378         as your next two comands.
19379
19380 Wed Mar 17 02:49:32 1999  Tim Janik  <timj@gtk.org>
19381
19382         * configure.in: build gtkcompat.h from gtkcompat.h.in instead of
19383         gtkfeatures.h from gtkfeatures.h.in, require GLib 1.3.0.
19384
19385         * gtk/gtkcompat.h.in: combined gtkcompat.h and gtkfeatures.in in this
19386         file. strongly deprecated the GTK_HAVE_* macros, we provide
19387         GTK_CHECK_VERSION() for people that need to check for certain
19388         Gtk+ versions.
19389
19390         * gtk/gtkcompat.h: removed this from CVS.
19391         * gtk/gtkfeatures.h.in: removed this from CVS, gtkfeatures.h was a bad
19392         idea right from the start, it just didn't seem like that back then.
19393
19394 Wed Mar 17 01:46:28 1999  Tim Janik  <timj@gtk.org>
19395
19396         * merges from gtk-1-2:
19397
19398 Tue Mar 16 17:43:33 1999  Tim Janik  <timj@gtk.org>
19399
19400         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc_string): ensure the
19401         item factory class has been created.
19402         (gtk_item_factory_parse_rc): likewise.
19403
19404         * gtk/gtkmenu.c:
19405         keep proper references for old_active_menu_item.
19406         (gtk_menu_reparent): unset the usize of the new parent,
19407         so the menu can sanely be size requested and we don't get nasty screen
19408         artefacts upon next reparentation.
19409         (gtk_menu_motion_notify): set send_event to TRUE if we synthesize an
19410         enter notify. only synthesize enter notifies if the pointer really is
19411         inside the event window.
19412         (gtk_menu_popdown): use gtk_menu_shell_deselect().
19413         (gtk_menu_popup): move the background setting stuff into
19414         gtk_menu_tearoff_bg_copy() so it can be called from other places as well.
19415
19416         * gtk/gtkmenushell.c (gtk_menu_shell_button_press): use
19417         gtk_menu_shell_select_item() to select the new item.
19418         (gtk_menu_shell_deselect): export this function, so gtkmenu.c can
19419         do the right thing for deselection as well.
19420
19421 Sat Mar 15 20:10:33 1999  Tim Janik  <timj@gtk.org>
19422
19423         * gtk/gtkwidget.[hc]:
19424         (gtk_widget_accelerators_locked): return whether a widget's accelerators
19425         are locked.
19426
19427         * gtk/gtkmenu.c (gtk_menu_key_press): don't remove or install new or
19428         existing accelerators if the widget's accelerators are locked.
19429
19430 Sat Mar 14 19:44:05 1999  Tim Janik  <timj@gtk.org>
19431
19432         * gtk/gtkitemfactory.[hc]: allow managing of foreign menu items.
19433
19434         * gtk/gtkmenu.c: truely forward key press and key release events to
19435         the menu widget from the toplevel or tearoff window. we can't simply
19436         connect to that, we need to stop further processing of the events as
19437         well.
19438
19439 Sat Mar 13 13:14:17 1999  Tim Janik  <timj@gtk.org>
19440
19441         * gtk/gtkmenu.c:
19442         (gtk_menu_key_press): pass event->keyval, event->state to
19443         gtk_accelerator_valid, instead of event->keyval twice.
19444         refuse to install single letter accelerators for menus that use
19445         single letter shortcuts.
19446
19447         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): use
19448         gtk_menu_ensure_uline_accel_group().
19449
19450         * gtk/gtkmenu.[hc]: added gtk_menu_ensure_uline_accel_group()
19451         which will always return an uline accel group, made
19452         gtk_menu_get_uline_accel_group() return NULL if the group isn't
19453         yet created.
19454
19455 Mon Mar 15 01:03:27 1999  Lars Hamann  <lars@gtk.org>
19456
19457         * gtk/gtkclist.h (struct _GtkCListColumn): added button_passive flag.
19458
19459         * gtk/gtkclist.c (gtk_clist_column_title_passive):
19460         Leave button sensitive, trap  button_press, button_release,
19461         motion_notify, enter_notify and leave_notify events instead.
19462         (gtk_clist_column_title_active): disconnect event handler.
19463         (gtk_clist_drag_data_get): fixed memory leak. Reported by
19464         Guillaume Laurent <glaurent@worldnet.fr>
19465
19466 Wed Mar 10 23:49:55 1999  Lars Hamann  <lars@gtk.org>
19467
19468         * gtk/gtklayout.c (gtk_layout_adjustment_changed): fixed a few
19469         width/height mixups.
19470
19471         * gtk/gtkctree.c (tree_delete): emit an tree_unselect_row signal
19472         if needed.
19473
19474 Wed Mar 10 00:11:32 1999  Tim Janik  <timj@gtk.org>
19475
19476         * gtk/testgtk.c (create_item_factory): unref the item factory after
19477         window's destruction.
19478
19479         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): keep a reference
19480         count on the menu shell around the menu item's activation, since the
19481         signal emission may cause menu shell destruction.
19482
19483         * gtk/gtkitemfactory.c:
19484         the previous code leaked one accel group per menu. we use
19485         gtk_menu_get_uline_accel_group() now to fix that, and with that
19486         also create the underline accelerator group of the menus only if
19487         required (i.e. an underline accelerator has been specified).
19488         (gtk_item_factory_construct):
19489         (gtk_item_factory_create_item): removed code that would create an
19490         extra accel group for the menu (and leak references).
19491         (gtk_item_factory_create_item): adapted the underline accelerator
19492         installation code to properly feature gtk_menu_get_uline_accel_group().
19493
19494         * gtk/gtkmenu.[hc]: added gtk_menu_get_accel_group() to retrive
19495         menu->accel_group, this may return NULL if the accelerator group
19496         hasn't been set yet.
19497         added gtk_menu_get_uline_accel_group() to retrive the underline
19498         accelerator group of the menu, this will be created on demand
19499         and proper care is taken about its reference count.
19500
19501         * gtk/gtkitemfactory.h:
19502         * gtk/gtkitemfactory.c:
19503         dumped the approach of keeping a widgets by action list on the
19504         factory since the factory<->widget destroy negotiation didn't work
19505         and would be hard to get going at all. instead we keep a list of
19506         GtkItemFactoryItem items on the factory (GtkItemFactoryItems are
19507         persistant throughout a program's life time).
19508         also, i removed the static const gchar *key_* variables, and made
19509         them inline strings (they weren't actually used anyways).
19510         (gtk_item_factory_add_item): update ifactory->items.
19511         (gtk_item_factory_destroy): destroy ifactory->items (and remove
19512         the item factory pointer from the remaining ifactory widgets).
19513         (gtk_item_factory_get_widget_by_action): walk the GtkItemFactoryItem
19514         list to find the widget.
19515         (gtk_item_factory_get_item): new function that works around
19516         gtk_item_factory_get_widget() limitations, this function will only
19517         return menu items, even for <Branch> entries.
19518
19519 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
19520
19521         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
19522         font hash table, if we have a GdkFontPrivate entry for this font
19523         already, simply increment its reference count, provided by Olaf Dietsche
19524         <olaf.dietsche+list.gtk@netcologne.de>.
19525
19526         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
19527         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
19528
19529 Sun Mar  7 06:13:29 1999  Tim Janik  <timj@gtk.org>
19530
19531         * gtk/gtkcontainer.c:
19532         (gtk_container_add_with_args):
19533         (gtk_container_addv):
19534         (gtk_container_add): before adding a child to a conatiner, make sure
19535         it is (default) constructed, this is neccessary because under certain
19536         circumstances the child will get relized and mapped immediatedly, in
19537         which case it has to be constructed already.
19538
19539 Mon Mar  1 17:58:21 1999  Tim Janik  <timj@gtk.org>
19540
19541         * gtk/gtksignal.c (gtk_signal_connect_by_type): count object_signal
19542         values > 1 as TRUE also.
19543
19544 1999-03-16  Tor Lillqvist  <tml@iki.fi>
19545
19546         * README.win32: New file.
19547                 
19548         * configure.in: Check for lstat.
19549
19550         * config.h.win32: Add non-definition of HAVE_LSTAT, just for
19551         completeness.
19552
19553         * gtk/gtkrc.c: If don't HAVE_LSTAT, use stat.
19554
19555         * gtk/gtk.def: Removed CRs.
19556
19557         * gtk/makefile.msc: Correct include path to Win32 GDK version (in
19558         ..\gdk\win32).
19559
19560         * gdk/win32/makefile.msc: Correct upwards relative paths.
19561         
19562 Mon Mar 15 03:38:34 1999  George Lebl  <jirka@5z.com>
19563
19564         * gtk/gtkdnd.c: (gtk_drag_highlight) swap the
19565           gtk_drag_highlight_expose and gtk_drag_highlight_paint since
19566           it was connecting a void function to expose_event and the int
19567           returning function to the draw signal
19568
19569 1999-03-14  Jeff Garzik  <jgarzik@pobox.com>
19570
19571         * configure.in:
19572         Use correct path to libgmodule.la when ref'ing uninstalled copy
19573         of glib.  (Already in stable branch, Bug #417)
19574
19575 1999-03-15  Tor Lillqvist  <tml@iki.fi>
19576
19577         Win32 merge and general portability stuff:
19578                 
19579         * acconfig.h,configure.in: Check for <sys/time.h>.
19580
19581         * gdk/win32: New directory (actually, been there for a while).
19582         
19583         * gtk/fnmatch.c: Include <glib.h> for G_DIR_SEPARATOR, WIN32 and
19584         NATIVE_WIN32, and use these. Always case fold on Win32. No
19585         backslashed escapes on native Win32.
19586
19587         * gtk/{gtk.def,makefile.msc}: New files.
19588
19589         * gtk/Makefile.am: Add above new files.
19590         
19591         * gtk/{gtkaccelgroup,gtkbindings}.c: Include <string.h>
19592         instead of <strings.h>.
19593
19594         * gtk/{gtkcalendar,gtkitemfactory,gtkpreview,gtkrc}.c: Include
19595         config.h. Protect inclusion of <sys/param.h>, <sys/time.h>, and
19596         <unistd.h> appropriately.
19597
19598         * gtk/gtkdnd.c: Merge in Win32 version (which doesn't do much).
19599         Use ABS() (from <glib.h>) instead of abs().
19600         
19601         * gtk/gtkfilesel.c: Moved Win32-specific includes after inclusion
19602         of gtk (and thus glib) headers, so that WIN32 will be
19603         defined. With MS C, include <direct.h> for mkdir prototype.
19604
19605         * gtk/gtkitemfactory.c (gtk_item_factory_callback_marshal): Add
19606         some casts, needed by MS C.
19607
19608         * gtk/{gtklayout,gtkplug}.c: Merge in Win32 version (which isn't
19609         implemented).
19610
19611         * gtk/gtkmain.c: Include gdk/gdkx.h for GDK_WINDOWING. Include
19612         <X11/Xlocale.h> only on X11 platform, otherwise <locale.h>.  Use
19613         G_SEARCHPATH_SEPARATOR_S and g_module_build_path.
19614
19615         * gtk/gtkmain.h: Mark variables for export/import on Win32.
19616                 
19617         * gtk/gtkrange.c (gtk_range_motion_notify): Set mods also in case
19618         the event is not a hint, or its window is not the slider. Needed
19619         on Win32, at least.
19620
19621         * gtk/gtkrc.c: Include config.h and gdk/gdkx.h. Use <locale.h>
19622         unless on X11. Skip \r chars, too. Use G_DIR_SEPARATOR and
19623         G_SEARCHPATH_SEPARATOR(_S). Use g_path_is_absolute. On Win32, use
19624         a subdirectory of the Windows directory as gtk system
19625         configuration directory.
19626
19627         * gtk/gtkselection.c: No chunks on Win32.
19628
19629         * gtk/gtksocket.c: Not implemented on Win32.
19630
19631         * gtk/gtkthemes.c (gtk_theme_engine_get): Use g_module_build_path.
19632
19633         * gtk/makeenums.h: Include gdkprivate.h after gdk.h.
19634
19635         * gtk/maketypes.awk: Declare variables with a macro that expands to
19636         necessary export/import magic in the case of Win32.
19637                 
19638         * gtk/testrgb.c: Use dynamically allocated buffer. Use GTimers.
19639
19640 1999-03-13  Raja R Harinath  <harinath@cs.umn.edu>
19641
19642         * configure.in (gdk_wc): Move widechar tests from `glib' to here,
19643         since those were meant only for gdki18n.h.  
19644         * gdk/gdki18n.h: Include gdkconfig.h and use GDK_* instead of G_*
19645         for widechar tests.
19646         * gtk/Makefile.am (INCLUDES): Add -I../gdk for gdkconfig.h.
19647
19648 1999-03-13  Tor Lillqvist  <tml@iki.fi>
19649
19650         * configure.in acconfig.h: Check for dirent.h and pwd.h. Generate
19651         gdk/gdkconfig.h using similar mechanism as GLib's glibconfig.h.
19652
19653         * gtk-config.in: Add @libdir/gtk+/include (where gdkconfig.h is
19654         installed) to CFLAGS.
19655
19656         * gdk/Makefile.am: Add rules for gdkconfig.h.
19657
19658         * gdk/gdktypes.h: Include gdkconfig.h. Define macros for windowing
19659         APIs.
19660
19661         * gdk/gdkfontsel.c: Don't include Xlib.h, it gets included via
19662         gdkx.h anyway when compiling for X11.
19663         (gtk_font_selection_create_xlfd): Use g_strdup_printf. (In
19664         general): Merge in Win32 version.
19665         
19666         * gtk/gtkfilesel.c: Use g_get_current_dir(). Merge in Win32
19667         version: Use G_DIR_SEPARATOR, g_path_is_absolute, no tilde
19668         expansion (if we don't have HAVE_PWD_H), allow for drive
19669         letters. UNC paths (\\server\share\...) are not handled yet.  Also,
19670         included code from Craig Setera's port to Win32 (the one that uses
19671         X11, and the cygwin dll), even if it probably will be abandoned.
19672
19673         * gtk/gtkfilesel.c: Don't append a * to the pattern to complete if
19674         the user entered one herself.  This way one can complete *.h and
19675         don't get matches on any .help files, for instance.
19676         
19677 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
19678
19679         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
19680         font hash table, if we have a GdkFontPrivate entry for this font
19681         already, simply increment its reference count, provided by Olaf Dietsche
19682         <olaf.dietsche+list.gtk@netcologne.de>.
19683
19684         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
19685         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
19686
19687 1999-03-09  Federico Mena Quintero  <federico@nuclecu.unam.mx>
19688
19689         * gtk/gtkstyle.c (gtk_default_draw_handle): Significantly reduced
19690         the number of calls to gdk_draw_point() (and thus to X) by
19691         clipping the points by hand.
19692
19693         * gtk/gtkhandlebox.c (draw_textured_frame): Actually make use of
19694         the clip parameter.
19695         (gtk_handle_box_paint): Only paint the handle if the expose area
19696         intersects it.
19697
19698 Sun Mar  7 18:46:37 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
19699
19700         * gtk/gtkmain.c (add_dll_suffix): Add this function (OS/2 ver.)
19701
19702 Sun Mar  7 11:43:34 1999  ape@spacetec.no  (Asbjorn Pettersen)
19703
19704         * gtk/gtkthemes.c (gtk_theme_engine_get): Add OS/2 changes.
19705         Added function gen_8_3_dll_name(gchar *name, gchar *fullname).
19706
19707 Fri Mar  5 09:12:24 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
19708
19709         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc): Open file in
19710          textmode (O_TEXT) for OS/2 version.
19711
19712 Sun Feb 28 16:46:02 1999  Stefan Jeske  <stefan@gtk.org>
19713
19714         * gtk/gtkspinbutton.[c,h] gtk/testgtk.c: Added two new signals to 
19715         GtkSpinButton, "input" and "output", to make the output more flexible.
19716         The user has to provide a mapping between adjustment->value and the
19717         output string (and vice versa, if the spin button is editable). 
19718         See testgtk for examples.
19719
19720 Sat Feb 27 01:18:47 1999  Tim Janik  <timj@gtk.org>
19721
19722         * ChangeLog: moved old ChangeLog to ChangeLog.pre-1-2, and started
19723         new one.
19724         
19725         * configure.in: set gtk+ version to 1.3.0.